I try to use IDA to debug Android application. As always, I perform static analysis first and rename registers, memory locations, jumps, etc, to make assembly code more readable.

However, as soon as I attach IDA as debugger to device, it losses any data that I entered during static analysis; it for any reason changes functions borders (so, it reanalyzes the application after rebase, and it does it in a buggy way), and it resets any renames, so I debug code in its initial form where nothing has readable name.

Even more, database becomes corrupted, and after I stopped the debugger, I also can not see any renames I did, and the only way to see them again is to restore database from backup.

Does anyone know workaround for this IDA bug? For example, it is possible to force IDA not to reanalyze library during debugging and use database with existing function borders and names?

  • I don't know about Android, but at least when debugging an executable I had to rebase it manually with Visual Studio so that it didn't rebase it every time. Hopefully there's something similar for what you need.
    – eric.m
    Commented Aug 2, 2019 at 7:58


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.