Challenge

The inner workings of non-malicious software are sometimes worth investigating. Analysts need to have a clear understanding of the software used daily (operating systems, drivers, third-party applications, etc). Normally the internal details of commercial software are not documented, but there are legitimate reasons to examine them.

Approach

IDA supports all major architectures used in desktop, mobile, and embedded devices. It can be used to disassemble binaries with or without debug info. Using built-in features like FLIRT and Lumina, well-known or library functions can be identified. Third-party addons like BinDiff or Diaphora allow finding differences between binary versions to identify changes, fixes, or even backdoors.