A lightweight multi-architecture disassembly framework for binary analysis and reverse engineering.
Capstone is a disassembly framework that converts machine code into human-readable assembly instructions across numerous CPU architectures. It solves the problem of needing a unified, high-performance tool for binary analysis, reverse engineering, and security research. The framework provides detailed instruction semantics and is designed for easy integration into various applications.
Security researchers, reverse engineers, malware analysts, and developers working on low-level systems, firmware, or binary instrumentation tools.
Developers choose Capstone for its extensive architecture support, clean API, and detailed instruction decomposition, making it a versatile and efficient alternative to architecture-specific disassemblers. Its BSD license and community-driven bindings facilitate integration into both open-source and commercial projects.
Capstone disassembly/disassembler framework for ARM, ARM64 (ARMv8), Alpha, BPF, Ethereum VM, HPPA, LoongArch, M68K, M680X, Mips, MOS65XX, PPC, RISC-V(rv32G/rv64G), SH, Sparc, SystemZ, TMS320C64X, TriCore, Webassembly, XCore and X86.
Supports over 20 architectures including ARM, X86, MIPS, and RISC-V, enabling cross-platform binary analysis without switching tools, as highlighted in the README's extensive list.
Provides implicit registers read/written and decomposer-like information, crucial for accurate reverse engineering and malware analysis, addressing the need for detailed semantics in security tasks.
Offers a lightweight and intuitive API that simplifies integration into various projects, aligning with the project's philosophy of prioritizing ease of use for developers.
Runs on all major operating systems and has bindings for Python, Java, Go, Rust, and many others, facilitating wide adoption and reducing integration barriers.
Built in C with a custom build process; compiling from source can be challenging, and the reliance on BUILDING.md indicates potential hurdles for non-expert users.
Focused solely on disassembly, lacking capabilities for assembling code or providing symbolic analysis, which limits its use in complete toolchains requiring bidirectional workflows.
Requires understanding of CPU architectures and disassembly techniques, making it less accessible for developers new to reverse engineering, despite the clean API.
Ghidra is a software reverse engineering (SRE) framework
An open-source user mode debugger for Windows. Optimized for reverse engineering and malware analysis.
.NET debugger and assembly editor
UNIX-like reverse engineering framework and command-line toolset
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.