Welcome to the Retargetable Decompiler's Home Page

RetDec is an open-source machine-code decompiler based on LLVM.

The decompiler is not limited to any particular target architecture, operating system, or executable file format.

Supported file formats

ELF, PE, Mach-O, COFF, AR (archive), Intel HEX,
and raw machine code.

Supported architectures

Intel x86, ARM, MIPS, PIC32, and PowerPC.
(32b only)

Features
  • Static analysis of executable files with detailed information.
  • Compiler and packer detection.
  • Loading and instruction decoding.
  • Signature-based removal of statically linked library code.
  • Extraction and utilization of debugging information (DWARF, PDB).
  • Reconstruction of instruction idioms.
  • Detection and reconstruction of C++ class hierarchies (RTTI, vtables).
  • Demangling of symbols from C++ binaries (GCC, MSVC, Borland).
  • Reconstruction of functions, types, and high-level constructs.
  • Integrated disassembler.
  • Output in two high-level languages: C and a Python-like language.
  • Generation of call graphs, control-flow graphs, and various statistics.
Our GitHub repositories
More information

RECon 2018 talk (slides)

Botconf 2017 talk (slides and video)

github.com/avast-tl/retdec/wiki (in progress)