Python bindings for the Hexrays Decompiler
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Python bindings for the Hexrays Decompiler

Author: EiNSTeiN_

Note: this plugin has been merged into IDAPython.

Get the latest version here:

What is this?

This is an IDA Pro plugin which provides python bindings around the Hexrays Decompiler SDK API.

This project largely reuse the foundation provided by IDAPython (build scripts, swig rules, etc).


For latest release, see IDAPython:



Quick start

Load any database where the decompiler is available (x86 or ARM assembly), and go to IDA's interactive interpreter (in the output window).

Some examples of how to use this plugin:

# import the module in the interpreter context
import hexrays
# decompile function at 0x402010
c = hexrays.decompile(0x402010)
# print decompiled text
print str(c)
# access local variable names
print [str( for v in c.lvars]


The code wraps the current API and provides a more pythonic approach to the API. For example, most list-like structures are iterable, most map-like structures are indexable like dictionaries, strings are str()-able, etc.

How to compile

Follow the steps in the BUILDING file.


Because this plugin has its foundation in the IDAPython code base, the original license was kept.