Capstone是一个支持多处理器架构、多平台的反编译框架。它有着简单、轻量级、架构中立的API以及线程安全的设计,为反编译指令提供了细节,等等。
Capstone的解码过程复杂,会对性能造成影响,内存消耗很大。不过,Capstone虽然解码速度不高,但是Bug很少。Capstone的流图和指令分析功能还不完善。
Capstone的接口使用烦琐,但功能强大。研究其源代码,会发现尽管很多接口都没有提供,但其中藏着宝贝。所以,如果想使用Capstone的高级功能,可以在熟读代码框架后自行实现接口,将内部功能暴露出来。
Capstone 4.0更新内容:
[ 核心 ]
添加了新的API:cs_regs_access()。
为cs_option()添加了新选项:
CS_OPT_MNEMONIC
CS_OPT_UNSIGNED
CS_OPT_SYNTAX_MASM
对于所有架构的更新和漏洞修复。
添加了四种新架构支持:EVM、M68K、M680X、TMS320C64x。
添加了新的组类型:
CS_GRP_PRIVILEGE、CS_GRP_BRANCH_RELATIVE。
添加了新的错误类型:
CS_ERR_X86_MASM。
[ X86 ]
在x86_xop_cc中添加了XOP代码条件类型。
在cs_x86_encoding中添加一些编码信息到cs_x86。
在cs_x86.{eflags, fpu_flags}中添加了寄存器标志更新。
将cs_x86.disp类型从int32_t改到int64_t。
添加了新的组:
X86_GRP_VM、X86_GRP_FPU。
添加了许多新指令(AVX)。
[ ARM64 ]
添加了ARM64_INS_NEGS、ARM64_INS_NGCS指令。
[ Mips ]
添加了CS_MODE_MIPS2模式。
[ PPC ]
将cs_ppc_op.imm类型从int32_t改到int64_t。
添加了新的组:
PPC_GRP_ICBT、PPC_GRP_P8ALTIVEC、PPC_GRP_P8VECTOR、PPC_GRP_QPX。
添加了许多新指令(包括QPX)。
[ Sparc ]
将cs_sparc_op.imm类型从int32_t改到int64_t。
[ Binding ]
添加了新的binding:PowerShell、VB6。
- End -
更多工具,免费下载,请前往看雪学院
https://tools.pediy.com/
往期热门资讯:
公众号ID:ikanxue
官方微博:看雪安全
商务合作:wsc@kanxue.com