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-03-11 00:18:50 +08:00
arch arm: support asm syntax CS_OPT_SYNTAX_NOREGNAME to print out registers with numbers (ex: 'r11' rather than 'fp') 2014-03-11 00:18:50 +08:00
bindings API: bump to 2.2 after the addition of Sparc support 2014-03-10 20:49:46 +08:00
docs docs: update README 2014-03-02 00:15:04 +08:00
include arm: support asm syntax CS_OPT_SYNTAX_NOREGNAME to print out registers with numbers (ex: 'r11' rather than 'fp') 2014-03-11 00:18:50 +08:00
packages packages: update Brew formula to 2.1 by embedding patch inside 2014-03-05 14:25:32 +08:00
suite suite: add Sparc support 2014-03-10 15:44:48 +08:00
tests arm: support asm syntax CS_OPT_SYNTAX_NOREGNAME to print out registers with numbers (ex: 'r11' rather than 'fp') 2014-03-11 00:18:50 +08:00
.gitignore java: support Sparc 2014-03-10 15:03:16 +08:00
ChangeLog update ChangeLog 2014-03-05 00:09:49 +08:00
COMPILE.TXT core: add Sparc arch 2014-03-10 11:58:57 +08:00
config.mk core: add Sparc arch 2014-03-10 11:58:57 +08:00
CREDITS.TXT CREDITS.TXT 2013-12-05 10:08:03 +08:00
cs_priv.h arm: support asm syntax CS_OPT_SYNTAX_NOREGNAME to print out registers with numbers (ex: 'r11' rather than 'fp') 2014-03-11 00:18:50 +08:00
cs.c core: add Sparc arch 2014-03-10 11:58:57 +08:00
HACK.TXT add ChangeLog file, and rename some documentation files 2014-01-15 21:20:47 +08:00
LEB128.h initial import 2013-11-27 12:11:31 +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 simplify make.sh & enable 'uninstall' option 2014-01-28 11:14:55 +08:00
Makefile core: add Sparc arch 2014-03-10 11:58:57 +08:00
MathExtras.h core: fix warning bugs on unused vars introduced by the last commit 2014-03-07 13:50:13 +08:00
MCDisassembler.h rename some C header guards to be without _ as prefix to follow naming convention of C language. suggested by Markus Elfring 2014-01-02 13:15:07 +08:00
MCFixedLenDisassembler.h initial import 2013-11-27 12:11:31 +08:00
MCInst.c rename memory function pointer types to have cs_ prefix. also rename internal function pointers my_* to have cs_mem_ prefix - suggested by Pancake 2014-01-11 12:55:31 +08:00
MCInst.h core: add Sparc arch 2014-03-10 11:58:57 +08:00
MCInstrDesc.c initial import 2013-11-27 12:11:31 +08:00
MCInstrDesc.h initial import 2013-11-27 12:11:31 +08:00
MCRegisterInfo.c fix C coding style 2014-01-23 22:22:45 +08:00
MCRegisterInfo.h ARM: Fix bunch of issues 2013-12-11 17:35:27 +08:00
pkgconfig.mk API: bump to 2.2 after the addition of Sparc support 2014-03-10 20:49:46 +08:00
README core: add Sparc arch 2014-03-10 11:58:57 +08:00
RELEASE_NOTES minor fix for RELEASE_NOTES 2014-03-01 09:46:04 +08:00
SStream.c add diet compile option (CAPSTONE_DIET option in config.mk). This reduces binary size by around 40% 2014-02-22 23:26:27 +08:00
SStream.h initial import 2013-11-27 12:11:31 +08:00
SubtargetFeature.h initial import 2013-11-27 12:11:31 +08:00
TODO TODO: remove C# related info 2014-01-07 23:54:31 +08:00
utils.c remove now redundant insn_reverse_id() after alias handling simplifications 2014-02-18 17:58:47 +08:00
utils.h add diet compile option (CAPSTONE_DIET option in config.mk). This reduces binary size by around 40% 2014-02-22 23:26:27 +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
  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 C#, Go, Ocaml & Ruby,
refer to the corresponding git repositories.


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