DevOps

Reko – general-purpose machine code decompiler

Reko is a general-purpose decompiler that translates machine code binaries into a higher-level representation.

Its design separates the frontend, decompilation engine and output components, allowing the software to be used interactively, from the command line, or embedded within other .NET applications.

During analysis, Reko loads executable metadata, discovers executable regions and cross-references, constructs control-flow information and converts machine instructions into an architecture-independent intermediate representation. Users can supplement information lost during compilation by supplying types, names and comments.

This is free and open source software.

Key Features

  • Identifies supported executable formats from headers and other file information.
  • Extracts memory areas, image segments, entry points, symbols and metadata.
  • Translates machine instructions into a machine-independent register transfer language.
  • Constructs control-flow graphs from jumps, calls and other branches.
  • Uses recursive scanning to locate reachable executable code.
  • Offers heuristic scanning for code missed by recursive analysis.
  • Groups instructions into basic blocks and identifies procedures.
  • Lets users supply additional type information to improve results.
  • Supports user-defined procedure names and comments.
  • Reads project files containing supplementary information about binaries.
  • Provides a command-line frontend suitable for Linux.
  • Includes graphical frontend development using Avalonia.
  • Exposes its reverse-engineering object model through a .NET API.
  • Supports scripting for applying names, comments and analysis information.
  • Covers a wide variety of processor architectures and executable formats.

Website: github.com/uxmal/reko
Support:
Developer: John Källén
License: GNU General Public License v2.0

Reko is written in C#. Learn C# with our recommended free books and free tutorials.


Related Software

Binary Analysis Tools
GhidraSoftware reverse engineering framework
Radare2Portable reversing framework
CutterGraphical reverse engineering platform
CapstoneLightweight multi-architecture disassembly framework
Detect it EasyFile inspection utility
ImHexAnalyze binary data
MiasmReverse engineering framework for analysing and emulating binaries
RekoGeneral-purpose decompiler for machine-code binaries
capaCommand line malware analysis tool
binwalkSearch a given binary image for embedded files
FLOSSFLARE Obfuscated String Solver
unblobExtraction suite for working with unknown binary blobs
RizinUNIX-like reverse engineering framework
REDasmCross-platform disassembler with an extensible graphical interface
PharosFramework for automated static analysis of binary programs
LIEFWork with executable and binary formats
RetDecRetargetable machine-code decompiler
knifeStatic binary triage, disassembly and vulnerability analysis toolkit

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted