Capstone disassembly/disassembler framework: Core (Arm, Arm64, BPF, EVM, M68K, M680X, MOS65xx, Mips, PPC, RISCV, Sparc, SystemZ, TMS320C64x, Web Assembly, X86, X86_64, XCore) + bindings. (bloaty 依赖)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Nguyen Anh Quynh 58086346bc java/python/ocaml: update after latest changes in x86.h 10 years ago
arch x86: get rid of redundant X86_INS_LOCK/REP/RENE. issue reported by Pancake 10 years ago
bindings java/python/ocaml: update after latest changes in x86.h 10 years ago
contrib vsnprintf fix 11 years ago
docs docs: add a link to online doc of cs_disasm_iter() 10 years ago
include x86: add prefix constants X86_PREFIX_*. suggested by Pancake 10 years ago
msvc changed ImportLibrary name from capstone_dll to 'capstone_dll.lib' 10 years ago
packages package: update Macports & Homebrew 10 years ago
suite Remove CS_MODE_N64 10 years ago
tests Add '4*cri+cond' to operand list 10 years ago
xcode Removed xcuserdata files 10 years ago
.gitignore Merge branch 'next' of https://github.com/aquynh/capstone into next 10 years ago
CMakeLists.txt CMake: fix option CAPSTONE_X86_ATT_DISABLE. bug reported by Yegor Derevenets 10 years ago
COMPILE.TXT link COMPILE.TXT to xcode/README.md 10 years ago
COMPILE_CMAKE.TXT correct COMPILE_CMAKE.TXT after the last change to names of CMake options 10 years ago
COMPILE_MSVC.TXT added CAPSTONE_X86_ATT_DISABLE_NO to VS projects, readmes 10 years ago
CREDITS.TXT update CREDITS.TXT 10 years ago
ChangeLog update Changelog for 2.1.2 11 years ago
HACK.TXT update HACK.TXT 11 years ago
LEB128.h Disassembler -> Disassembly 11 years ago
LICENSE.TXT a a newline to LICENSE.TXT 11 years ago
LICENSE_LLVM.TXT initial import 11 years ago
MCDisassembler.h Disassembler -> Disassembly 11 years ago
MCFixedLenDisassembler.h Disassembler -> Disassembly 11 years ago
MCInst.c x86: provide size for X86_OP_IMM operand. thank Gabriel Quadros for some suggestions 11 years ago
MCInst.h x86: provide size for X86_OP_IMM operand. thank Gabriel Quadros for some suggestions 11 years ago
MCInstrDesc.c Disassembler -> Disassembly 11 years ago
MCInstrDesc.h arm: update core. this added a new instruction UDF. also updated Python+Java bindings accordingly 10 years ago
MCRegisterInfo.c Disassembler -> Disassembly. also delete an orphaned file 11 years ago
MCRegisterInfo.h avoid using stdbool.h to support compilers without C99 support 11 years ago
Makefile Makefile: simplify generate-pkgcfg by using INCDIR. reviewed by Pancake 10 years ago
MathExtras.h arm64: update core. this added a lot more details to cs_arm64_op struct 10 years ago
README update README 11 years ago
RELEASE_NOTES update RELEASE_NOTES 10 years ago
SStream.c some simple optimizations for speed. this improves performance about 5% 10 years ago
SStream.h arm64: update core. this added a lot more details to cs_arm64_op struct 10 years ago
TODO TODO: Ocaml binding is working now (though still incomplete) 10 years ago
config.mk renamed CAPSTONE_NO_ATT to CAPSTONE_X86_ATT_DISABLE, added options to makefile, cmake, compile.txt 10 years ago
cs.c clean cs_disasm_iter() 10 years ago
cs_priv.h modify API cs_disasm_iter() and add new API cs_malloc(). also adds sample code test_iter.c 10 years ago
functions.mk Makefile: put common functions into functions.mk 11 years ago
inttypes.h Workaround missing <inttypes.h> on MSVC 2010 10 years ago
make.sh on OSX, 'make uninstall' should clean files under /usr/local rather than /usr 10 years ago
pkgconfig.mk bump API & package version to 3.0 10 years ago
utils.c fix more MSVC warnings 10 years ago
utils.h fix more MSVC warnings 10 years ago

README

Capstone is a disassembly framework with the target of becoming the ultimate
disasm engine for binary analysis and reversing in the security community.

Created by Nguyen Anh Quynh, then developed and maintained by a small community,
Capstone offers some unparalleled features:

- Support multiple hardware architectures: ARM, ARM64 (ARMv8), Mips, PPC, Sparc,
SystemZ, XCore and X86.

- Having clean/simple/lightweight/intuitive architecture-neutral API.

- Provide details on disassembled instruction (called “decomposer” by others).

- Provide semantics of the disassembled instruction, such as list of implicit
registers read & written.

- Implemented in pure C language, with lightweight wrappers for C++, C#, Go,
Java, NodeJS, Ocaml, Python, Ruby & Vala ready (available in main code,
or provided externally by the community).

- Native support for all popular platforms: Windows, Mac OSX, iOS, Android,
Linux, *BSD, Solaris, etc.

- Thread-safe by design.

- Special support for embedding into firmware or OS kernel.

- Distributed under the open source BSD license.

Further information is available at http://www.capstone-engine.org


[Compile]

See COMPILE.TXT file for how to compile and install Capstone.


[Hack]

See HACK.TXT file for the structuture of the source code.


[License]

This project is released under the BSD license. If you redistribute the binary
or source code of Capstone, please attach file LICENSE.TXT with your products.