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.
Go to file
2014-06-04 22:51:51 +07:00
arch x86: avoid malloc/free MCOperand with new API of MCInst: MCInst_addOperand0, MCInst_CreateReg0, MCInst_CreateImm0 2014-06-04 22:51:51 +07:00
bindings Merge branch 'feature/x86-groups' of https://github.com/parasyte/capstone into test 2014-06-04 13:35:12 +07:00
contrib vsnprintf fix 2014-06-02 21:48:30 +08:00
docs update docs to add link to SKIPDATA mode 2014-04-11 01:32:48 +08:00
include Merge branch 'feature/x86-groups' of https://github.com/parasyte/capstone into test 2014-06-04 13:35:12 +07:00
msvc msvc: rename test_arm.vcxproj to test_xcore.vcxproj 2014-05-27 23:57:52 +08:00
packages packages: update Macport package 2014-04-07 09:25:44 -07:00
suite suite: update x86odd.py 2014-04-24 22:50:54 +08:00
tests add XCore architecture 2014-05-26 23:02:48 +08:00
.gitignore python: support XCore 2014-05-26 23:47:45 +08:00
ChangeLog update Changelog for 2.1.2 2014-04-01 16:28:55 +08:00
CMakeLists.txt cmake: use USE_SYS_DYN_MEM instead of USE_DEFAULT_ALLOC for consistency 2014-05-28 22:14:55 +08:00
COMPILE_CMAKE.TXT Update COMPILE_CMAKE.TXT 2014-05-30 00:37:30 +08:00
COMPILE_MSVC.TXT add COMPILE_CMAKE.TXT & update COMPILE.TXT 2014-05-28 22:39:23 +08:00
COMPILE.TXT add COMPILE_CMAKE.TXT & update COMPILE.TXT 2014-05-28 22:39:23 +08:00
config.mk enable disabled archs 2014-05-26 23:24:11 +08:00
CREDITS.TXT update CREDITS.TXT 2014-05-31 12:12:18 +08:00
cs_priv.h x86: add immediate operand (1) for SHL/SHR/ROR/ROL/SAR/SAL in detail mode & Intel syntax 2014-05-19 16:46:31 +08:00
cs.c msvc: fix some Nmake warnings 2014-05-28 14:33:32 +08:00
functions.mk Makefile: put common functions into functions.mk 2014-05-01 22:53:52 +08:00
HACK.TXT update HACK.TXT 2014-05-31 12:09:16 +08:00
LEB128.h Disassembler -> Disassembly 2014-04-29 11:21:04 +08:00
LICENSE_LLVM.TXT initial import 2013-11-27 12:11:31 +08:00
LICENSE.TXT a a newline to LICENSE.TXT 2014-02-20 17:08:28 +08:00
make.sh Disassembler -> Disassembly 2014-04-29 11:21:04 +08:00
Makefile add XCore architecture 2014-05-26 23:02:48 +08:00
MathExtras.h first changes to get a successfully compiled version of capstone on VS2012 2014-05-08 23:44:49 +01:00
MCDisassembler.h Disassembler -> Disassembly 2014-04-29 11:21:04 +08:00
MCFixedLenDisassembler.h Disassembler -> Disassembly 2014-04-29 11:21:04 +08:00
MCInst.c x86: avoid malloc/free MCOperand with new API of MCInst: MCInst_addOperand0, MCInst_CreateReg0, MCInst_CreateImm0 2014-06-04 22:51:51 +07:00
MCInst.h x86: avoid malloc/free MCOperand with new API of MCInst: MCInst_addOperand0, MCInst_CreateReg0, MCInst_CreateImm0 2014-06-04 22:51:51 +07:00
MCInstrDesc.c Disassembler -> Disassembly 2014-04-29 11:21:04 +08:00
MCInstrDesc.h avoid using stdbool.h to support compilers without C99 support 2014-05-15 21:40:24 +08:00
MCRegisterInfo.c Disassembler -> Disassembly. also delete an orphaned file 2014-05-08 22:54:58 +08:00
MCRegisterInfo.h avoid using stdbool.h to support compilers without C99 support 2014-05-15 21:40:24 +08:00
pkgconfig.mk revert pkgconfig.mk 2014-03-31 20:47:35 +08:00
README upate README to mention bindings/README 2014-06-03 17:39:42 +07:00
RELEASE_NOTES RELEASE_NOTES: update for 2.1.2 2014-03-30 22:37:58 +08:00
SStream.c avoid using vsnprintf when possible for SStream_concat() to improve performance. based on the idea of Dang Hoang Vu. 2014-06-04 18:31:02 +08:00
SStream.h avoid using vsnprintf when possible for SStream_concat() to improve performance. based on the idea of Dang Hoang Vu. 2014-06-04 18:31:02 +08:00
TODO update TODO 2014-05-27 16:17:26 +08:00
utils.c remove more dead code 2014-05-28 12:57:59 +08:00
utils.h remove more dead code 2014-05-28 12:57:59 +08:00

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 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, Ocaml, Python, Ruby & Vala ready (either available in main code,
  or provided externally by community).

- Native support for Windows & *nix platforms (with OSX, Linux, *BSD & Solaris
  have been confirmed).

- 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


[Status]

- Capstone can only compile to Windows via Cygwin, or cross-compile using
MingW. Visual Studio support will be done in the future.

- X86 engine cannot handle many malware tricks yet. Please report all the raw
binary code that Capstone cannot disassemble, or does that wrongly, so we can
fix that in the next version

- This package only contains Java & Python bindings. For more bindings created
and maintained by the community, see bindings/README.


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