Tooling

Reverse Engineering — Ghidra, IDA, Binary Ninja

Disassemblers, decompilers, debuggers — for binaries, drivers, firmware.

Reverse engineering is the bridge from "binary blob" to "I understand what this does." The 2024–26 landscape: Ghidra's decompiler closed the gap with IDA, Binary Ninja added a free Cloud tier, and Frida is the dominant dynamic-instrumentation toolkit. For binary fuzzing see Binary Fuzzing. For exploit development see CTF Tools (pwntools). For malware-specific RE see Malware Analysis.

Disassemblers / decompilers

  • ★ ★ Ghidra (NSA) — full reverse-engineering platform; disassembler + decompiler + scripting + collaborative server. Java GUI; supports x86/x64, ARM, MIPS, PowerPC, RISC-V, AVR, SuperH … Free / OSS — the surprise gift from NSA in 2019 that has aged into a serious IDA competitor.
  • IDA Free (Hex-Rays) — the legacy reference disassembler; Free version (x64 only, no decompiler), IDA Home / Pro paid ($365–$2,000+/yr) for the full Hex-Rays decompiler.
  • Binary Ninja (Vector 35) — modern UX; scripting-first. Personal license $300 one-time, Cloud free tier for browser-based RE since 2023.
  • Hopper Disassembler — Mac-native; paid ($99 personal).
  • Cutter — Qt GUI on top of Rizin (radare2 fork); fully free; the FOSS IDA-alike. Modernised significantly 2023–26.
  • radare2 / rizin — CLI / scripting; rizin is the sustainable fork. Steep curve, bottomless capability.
  • JEB Pro (PNF Software) — paid; the best Android decompiler / dex decompiler.
  • angr — Python symbolic execution framework; binary auto-analysis.
  • BinDiff (Zynamics / Google) — patch-diff / similarity. Free.
  • Diaphora — IDA / Ghidra plugin for binary diffing.

Decompiler-only / online

  • Decompiler Explorer (decompiler.uk) — paste a binary, see Ghidra / IDA / Snowman / RetDec output side-by-side. Free.
  • dogbolt.org — same idea; multi-decompiler comparison.
  • RetDec (Avast) — open-source decompiler.
  • Snowman — older C++ decompiler.

Debuggers

  • GDB + ★ GEF / pwndbg / PEDA — the Linux exploit-dev debugger trio of plugins. Free.
  • x64dbg (Win) — modern x64/x86 Windows debugger; FOSS replacement for OllyDbg. Free.
  • WinDbg / WinDbg Preview (Microsoft) — kernel + user; for Windows internals and dump analysis.
  • OllyDbg 1.10 — legacy; still used for malware reversing.
  • Immunity Debugger — old.
  • LLDB — Apple / clang's debugger.
  • Frida + frida-gdb — bridge dynamic instrumentation to gdb sessions.

Dynamic instrumentation / hooking

  • ★ ★ Frida — JS-driven dynamic instrumentation; hook functions, patch in-memory, dump/replace data; runs on Win / macOS / Linux / Android / iOS. Free. The dominant tool for app-runtime RE in 2026.
  • objection (SensePost) — Frida wrapper; mobile-app shortcuts (cert pinning bypass, root-detect bypass, keychain dump). Free.
  • DynamoRIO / Pin — instruction-level instrumentation (Intel).
  • Hopper / IDAPython / JEB Python — host-native scripting.

Android / Java

  • jadx — Android dex → Java decompiler; the default. Free.
  • apktool — repack / rebuild APKs.
  • dex2jar — older.
  • bytecode-viewer — multi-decompiler view.
  • Procyon / CFR / Fernflower — pure-Java decompilers.
  • smali / baksmali — Dalvik assembler / disassembler.
  • MobSF — see Mobile Pentesting.

iOS / Mach-O

  • Hopper / IDA / Ghidra — disassemble Mach-O; Hopper is comfiest on Mac.
  • class-dump / class-dump-z — Objective-C class headers.
  • frida-ios-dump — pull decrypted IPA.
  • Ghidra macOS toolchain extension — Apple Silicon / arm64e support improved 2024–26.

Binary inspection / triage

  • strings, rabin2, binwalk, die (Detect It Easy), PEStudio, PE-bear, ExifTool — quick triage.
  • capa (Mandiant) — capability detection rules; "this binary creates registry persistence." Free.
  • FLOSS (Mandiant) — extract obfuscated strings.
  • YARA — pattern-matching; see Detection (Sigma / YARA / ATT&CK).

Firmware / embedded

  • binwalk — extract embedded filesystems / kernels from firmware images. Free. See also Steganography (binwalk).
  • firmware-mod-kit / unblob — modern unpackers; unblob is Onekey's Rust replacement and is much better than binwalk's extractor for 2024+ work.
  • EMBA / FACT — automated firmware analysis frameworks.
  • Ghidra SVD-Loader — load ARM Cortex peripheral defs.
  • See also Hardware Hacking (Flipper).

Pick this if…

  • Default free disassembler + decompiler: Ghidra.
  • Hex-Rays decompile is non-negotiable: IDA Pro (paid).
  • Modern UX, scripting: Binary Ninja.
  • FOSS Qt GUI on radare-family: Cutter / rizin.
  • Windows live debug: x64dbg.
  • Linux exploit debug: GDB + GEF.
  • Android app teardown: jadx + apktool + Frida + objection.
  • Runtime hooking, all platforms: Frida.
  • Firmware unpacking: unblob > binwalk for 2024+ formats.

On this page