Skip to main content

Software in Reverse Engineering

12 tools
Pricing
Platform
ToolPricing
angr

Python framework for multi-architecture binary analysis, combining symbolic execution with static and dynamic methods for security auditing.

Open Source
Binary Ninja

Interactive disassembler, decompiler, and debugger with C++, Python, and Rust APIs and a free cloud tier.

Free / Commercial
BinDiff

Binary comparison tool that visualizes function-level differences between two builds of a program.

Open Source
Cutter

Free reverse engineering platform powered by Rizin, providing a modern Qt interface for binary decompilation and graph views.

Open Source
Diaphora

Open source program diffing tool that compares binary function sets to find patched vulnerabilities.

Free / Commercial
dnSpyEx

Unofficial continuation of dnSpy, a .NET debugger and assembly editor for inspection, modification, and debugging of managed code without source files.

Open Source
GDB

GNU Project source-level debugger for inspecting process memory, breakpoints, and program execution in C, C++, Rust, and Go.

Open Source
Ghidra

Software reverse engineering suite developed by the NSA, offering disassembly, decompilation, and scriptable binary analysis.

Open Source
IDA Pro

Disassembler, decompiler, and debugger from Hex-Rays with disassembly support for more than 60 processor families.

Free / Commercial
radare2

Command-line reverse engineering framework providing scriptable disassembly, binary patching, and cross-platform analysis.

Open Source
Rizin

UNIX-friendly reverse engineering framework and disassembler focused on stability, scriptability, and deep binary forensics.

Open Source
x64dbg

Free x64 and x32 debugger for Windows binaries, featuring assembly viewing, memory editing, and plugin extensibility.

Free

About Reverse Engineering

Reverse engineering tools disassemble, decompile, and debug compiled binaries to understand their behavior when source code is unavailable. The category includes disassemblers like Ghidra, radare2, and Cutter that convert machine code into human-readable assembly, decompilers that attempt to reconstruct higher-level source code from binaries, and debuggers like GDB, pwndbg, and x64dbg that let analysts step through execution, inspect memory, and set breakpoints. These tools are used for malware analysis, where analysts reverse engineer malicious binaries to understand their capabilities, communication protocols, and persistence mechanisms. Firmware auditing is another application, since IoT and embedded device firmware is often distributed without source code, requiring binary analysis to find vulnerabilities. Patch diffing compares two versions of a binary to identify what changed in a security update, which can reveal the vulnerability being patched. The category overlaps with binary exploitation, since exploit development requires understanding binary internals. Tools like angr and Rizin provide programmatic analysis APIs for automated binary inspection, while Ghidra offers a plugin architecture for custom analysis scripts. Ghidra, radare2, Rizin, and GDB support many CPU architectures, including x86, ARM, MIPS, and RISC-V, since malware and firmware target diverse hardware.

Covered Topics

Multi-Architecture DisassemblyDecompilation & Source RecoveryDynamic Debugging & TracingFirmware AuditingBinary Diffing & Patch Analysis

In This Catalog

  • This category lists 12 tools: 8 open source, 3 free / commercial, and 1 free.
  • By platform, 10 run on Linux, 12 on Windows, and 10 on macOS.
  • The most common license among the open-source tools is Apache-2.0 and GPL-3.0-or-later (2 tools each).

Frequently Asked Questions

What is Reverse Engineering?→

Software analysis tools used for malware triage, binary inspection, firmware auditing, and patch diffing across multiple CPU architectures.

What topics does the Reverse Engineering category cover?→

Multi-Architecture Disassembly, Decompilation & Source Recovery, Dynamic Debugging & Tracing, Firmware Auditing, Binary Diffing & Patch Analysis

Which Reverse Engineering tools are open source?→

8 of the 12 tools in this category are open source: angr, BinDiff, Cutter, dnSpyEx, GDB, Ghidra, radare2, and Rizin.

Related