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 e07bc91349 ppc: fix a stupid mistake on printing operands of MR instruction 10 years ago
arch ppc: fix a stupid mistake on printing operands of MR instruction 10 years ago
bindings ocaml/java: support CS_MODE_V8 for Arm 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 arm: support new mode CS_MODE_V8 for Armv8 A32 encodings 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 suite: normalize PPC's branch instructions having immediate operand 10 years ago
tests mips: properly handle Mips32R6 mode. bug reported by Jay Oster 10 years ago
xcode Changed framework install path to @rpath, other changes to project file 10 years ago
.gitignore Merge branch 'next' of https://github.com/aquynh/capstone into next 10 years ago
CMakeLists.txt * Fixed bug in Thumb2 pop caused by me incorrectly assuming that 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 Fix utf8-art 10 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: print out immediate as positive number for logic arithmetic operations: AND, OR, XOR. only works for x86 Intel syntax so far. issue reported by Pancake 10 years ago
MCInst.h x86: print out immediate as positive number for logic arithmetic operations: AND, OR, XOR. only works for x86 Intel syntax so far. issue reported by Pancake 10 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: check target should also run test_iter 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 10 years ago
RELEASE_NOTES update RELEASE_NOTES 10 years ago
SStream.c arm64: print shifter in decimal mode. this is to be consistent with ARM engine 10 years ago
SStream.h arm64: print shifter in decimal mode. this is to be consistent with ARM engine 10 years ago
TODO update TODO 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 x86: print out immediate as positive number for logic arithmetic operations: AND, OR, XOR. only works for x86 Intel syntax so far. issue reported by Pancake 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 * Fixed bug in Thumb2 pop caused by me incorrectly assuming that 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 (including X86_64).

- 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.

- High performance & suitable for malware analysis (capable of handling various
X86 malware tricks).

- 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.


[Documentation]

See docs/README for how to customize & program your own tools with 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.