• Stars
    star
    390
  • Rank 110,242 (Top 3 %)
  • Language
    Python
  • License
    MIT License
  • Created over 7 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

IDA script for highlighting and decoding ARM system instructions

Decoding ARM system instructions

This script will give you the list of ARM system instructions used in your IDA database. This is useful for locating specific low-level pieces of code (setting up the MMU, caches, fault handlers, etc.).

One hassle of reverse engineering low-level ARM code is that IDA Pro does not decode the internal registers accessed by co-processor instructions (MCR/MRC and MSR/MRS on AArch64).

After applying the script, the system registers accessed will be automatically commented in the database, as defined in the official ARM reference manuals.

AArch32 decoding AArch64 decoding

The script will also try to automatically detect the accessed fields for some registers:

Field decoding

Usage

Alt-F7 in IDA Pro, then run the script on your open database.

Compatibility

Should work with ARMv7 and ARMv8 processors.