IDA Pro iconIDA Pro 6.0.101130

An interactive, programmable, extendible, multi-processor disassembler
IDA Pro is a programmable, interactive, multi-processor disassembler combined with a local and remote debugger and augmented by a complete plugin programming environment.

IDA Pro is in many ways unique. Its interactivity allows you to improve disassemblies in real time. Its multi-processor support is unmatched. Yet, two of our technologies are truly unique, have never been implemented under any form in any real-life disassemblers and, more importantly, are incredible time savers.

IDA Pro is a disassembler.

As a disassembler, IDA Pro explores binary programs, for which source code isn't always available, to create maps of their execution. The real interest of a disassembler is that it shows the instructions that are actually executed by the processor in a symbolic representation called assembly language. If the friendly screen saver you have just installed is spying on your e-banking session or logging your e-mails, a disassembler can reveal it. However, assembly language is hard to make sense of.

That's why advanced techniques have been implemented into IDA Pro to make that code more readable, in some cases, quite close to the original source code that produced the binary program. The map of the program's code then be postprocessed for further investigations. Some people have used it as the root of a genomic classification of viruses. (digital genome mapping advanced malware analysis)

IDA Pro is a debugger.

But, in real life, things aren't always simple. Hostile code usually does not cooperate with the analyst. Viruses, worms and trojans are often armoured and obfuscated. More powerful tools are required.

The debugger in IDA Pro complements the static analysis capabilities of the disassembler: by allowing to single step through the code being investigated, the debugger often bypasses the obfuscation and helps obtain
data that the more powerful static disassembler will be able to process in depth. IDA Pro can be used as a local and as a remote debugger on the 80x86 (typically Windows/Linux) and the ARM plaform (typically Windows CE PDAs). Remote debuggers are very useful when one wants to safely dissect potentially harmful programs.

IDA Pro is interactive.

Because no computer can currently beat the human brain when it comes to exploring the unknown, IDA Pro is fully interactive. In sharp contrast with its predecessors, IDA always allows the human analyst to override its decisions or to provide hints. Interactivity culminates in a built-in programming language and an open plugin architecture.

IDA Pro is programmable

IDA Pro contains a complete development environment that consists of a very powerful macro-like language that can be used to automate simple to medium complexity tasks. For more advanced tasks, our open plugin architecture puts no limits on what external developers can do to enhance IDA Pro's functionality. One could, for example, extend IDA Pro with a MP3 player and make malware sing. However, we suspect our governmental customers are involved in more serious projects.

Main features:

  • disassembler modules for a large number of processors. Our free SDK even allows you to roll your own custom disassembler.
  • full interactivity and extendability
  • direct, through keyboard interaction.
  • through an internal programming language.
  • through external plugins (unlimited power: our debuggers are plugins).
  • as close as possible to the high level source code
  • flirt technology (fast library identification and recognition technology).
  • type system and parameter tracking and identification
  • code graphing

last updated on:
January 21st, 2011, 11:55 GMT
price:
$819.00
 
developed by:
Hex-Rays SA
license type:
Shareware 
category:
ROOT \ Programming \ Disassemblers

In a hurry? Add it to your Download Basket!

user rating 3

UNRATED
4.3/5
 

0/5

10 Screenshots
IDA ProIDA ProIDA ProIDA ProIDA ProIDA ProIDA ProIDA ProIDA ProIDA Pro
What's New in This Release:
  • 6812: support an alternative memory layout for paged segments which allows to use short offsets inside the segment
  • ARM: added a switch pattern that uses BX to jump to case labels
  • ARM: display the optional operand of the MRC/MCR instructions, as preferred by the ARM documentation
  • ARM: support another variation of GCC Thumb-2 switches
read full changelog

Add your review! 2 USER REVIEWS SO FAR

SUBMIT