List of the best reverse engineering tools

High Res CTFramework logo
The reverse engineering tools list is part of our CTF Tools collection, where we curate essential tools for each category of ethical hacking/pentesting and CTF challenges. It took us significant time and effort to create this collection, so If you find our content helpful, consider following us on Linkedin or Twitter, or share your suggestions to help us improve!

⭐ Means the best tools in its section.

Disassemblers, Decompilers, and Binary Analysis Frameworks


Tool NameTool Description

IDA Pro🌟

A commercial disassembler and debugger supporting multiple processor architectures.

Hex-Rays Decompiler (IDA Plugin)

A powerful decompiler extension for IDA Pro that helps convert assembly code into a more human-readable C-like pseudocode.

Ghidra⭐

An open-source reverse engineering tool developed by the NSA. Offers disassembly, decompilation, and collaboration features for multi-user teams.

Radare2 (r2)

A free and open-source reverse engineering framework with command-line and graphical interfaces (Cutter). Includes disassembly, debugging, and binary patching capabilities.

Binary Ninja

A commercial tool that provides an interactive disassembler and an advanced analysis platform. Known for its clean UI and scriptability with Python.

Cutter

A cross-platform GUI frontend for Radare2. Aims to be user-friendly while still offering the power of the Radare2 engine underneath.

JEB Decompiler

A commercial reverse engineering platform often used for analyzing Android applications (APK) and other binary formats. Provides both disassembly and decompilation capabilities.

Snowman Decompiler

A free, open-source C/C++ decompiler that can work in conjunction with other tools to produce readable pseudocode for small or moderately complex binaries.

Kaitai Struct

Not strictly a disassembler, but a declarative language to describe binary data structures for easier parsing and analysis of file formats.

Hopper Disassembler

A macOS and Linux disassembler and debugger. Known for a simpler interface compared to IDA Pro and decent decompilation support.

Debuggers


Tool NameDescription

x64dbg

An open-source Windows debugger designed to be user-friendly. Provides plugins, scriptability, and an active community.

WinDbg

Microsoft’s official Windows debugger. Very powerful for kernel- and user-mode debugging, though it has a steep learning curve.

OllyDbg

A classic 32-bit debugger for Windows with a strong focus on binary code analysis. Although not updated frequently, it remains popular for malware analysis.

GDB (GNU Debugger)

A command-line debugger primarily used on Linux and other UNIX-like systems. Extensible with scripts (e.g., GEF, PEDA) to enhance reverse engineering features.

LLDB

The LLVM project’s debugger. A modern, high-performance debugger for macOS and Linux. Can also be extended with Python scripts.

EDB (Evan’s Debugger)

A graphical debugger for Linux similar to OllyDbg, featuring an easy-to-use interface and basic analysis features.

Hex Editors and Binary Editors


Tool NameDescription

HxD

 

A fast hex editor for Windows. Useful for low-level data inspection, memory edits, and verifying file headers.

Bless

A GUI-based hex editor for Linux with basic editing, searching, and highlighting capabilities.

010 Editor

A commercial hex editor that supports templates for complex file formats, scripting, and advanced analysis of binary data.

Hex Fiend

A popular hex editor for macOS, featuring large file handling and advanced searching.

Scriptable Analysis and Symbolic Execution Tools


Tool NameDescription

Angr

A Python-based platform for binary analysis that includes symbolic execution, CFG (control flow graph) generation, and vulnerability discovery.

Miasm

A reverse engineering framework written in Python that provides disassembly, intermediate representation, and symbolic execution features.

GEF (GDB Enhanced Features)

A plugin for GDB that enhances the debugging experience with additional commands and visualizations.

PEDA (Python Exploit Development Assistance for GDB)

Another popular GDB plugin that automates common exploit development tasks.

Binary Analysis Platform (BAP)

An open-source platform designed for static analysis of binaries. It performs disassembly, CFG generation, and dataflow analysis.

Firmware and Embedded Device Tools


Tool NameDescription

binwalk

A tool for analyzing and extracting firmware images. It can identify compressed files, file systems, and known signatures within firmware.

Firmadyne

A framework for emulating Linux-based embedded firmware images, allowing dynamic analysis in a sandbox environment.

QEMU

A generic and open-source machine emulator. Often used in reverse engineering to run and debug firmware or OS images for various architectures.

Firmware-Mod-Kit (FMK)

A toolkit for customizing and re-building Linux-based firmware images, useful for analyzing or modifying embedded devices. 

Android and Mobile Reverse Engineering


Tool NameDescription

APKtool⭐

A tool for reverse engineering Android apps. Decompiles resources, manifests, and smali code for easier inspection.

Dex2jar

Converts Android .dex files to .class files, making it possible to view the code in Java decompilers.

JD-GUI

A standalone Java decompiler that can help inspect .jar and .class files, used in conjunction with dex2jar for Android analysis.

Frida

A dynamic instrumentation toolkit for Windows, macOS, Linux, iOS, and Android. Allows injecting scripts to trace API calls and modify behavior at runtime. 

Objection

Built on Frida, focuses on runtime exploration and modification of mobile applications (Android and iOS) without needing root or jailbreak.

Network and Protocol Analysis


Tool NameDescription

Wireshark⭐

The de facto standard for network protocol analysis. Not a “reverse engineering” tool in the traditional sense, but vital for understanding proprietary or unknown protocols.

Scapy

A Python library for packet manipulation and creation, helpful when reverse-engineering custom protocols or network interactions.

Other Specialized Tools


Tool NameDescription

Strings

Searches for readable text in binary files. Frequently used in initial triage to spot clues about function names, error messages, or embedded URLs.

Volatility

A memory forensics framework. While not a disassembler, it’s often used to analyze memory dumps (including partial disassembly and detection of hidden code).

PEiD

A classic (though somewhat dated) tool for detecting packers and cryptors in Windows executables, often helpful in malware analysis.

Detect It Easy (DIE)

A modern alternative to PEiD that identifies packers, compilers, and signatures in binaries across multiple platforms. 

capa (by FireEye/Mandiant)

Analyzes the capabilities of a program by matching known patterns against disassemblies, aiding malware and exploit analysis. 

HIEW (Hackers’ View)

A simple but powerful console-mode tool for Windows, offering disassembly, hex editing, and limited debugging.