(原始内容存档于2018-06-21). Capstone.js
港口 顶岩 javaScript/WASM的分解框架. 电源 标记。 。 。 .
所需经费: JavaScript 环境 网络大会 财务报告和审定财务报表 大点 支助.
注释: 顶岩 是一种轻量级的多结构分解框架,最初由阮安奎恩开发并被BSD许可放出. 关于贡献者和许可条款的更多信息可见于文件 CREDITS.TXT 财务报告和审定财务报表 LICENSE.TXT 会 议 日 程 和 议 程 顶点石 此寄存器中的子模块 .
安装
要将 Capstone.js 添加到您的网页应用程序中,请包括:
<script src="capstone.js"></script>
或与国家预防机制指挥部安装:
npm install @alexaltea/capstone-js
使用量
// Input: Machine code bytes and offset where they are located
var buffer = [0x55, 0x31, 0xD2, 0x89, 0xE5, 0x8B, 0x45, 0x08];
var offset = 0x10000;
MCapstone().then((cs) => {
// Initialize the decoder
var d = new cs.Capstone(cs.ARCH_X86, cs.MODE_32);
// Output: Array of cs.Instruction objects
var instructions = d.disasm(buffer, offset);
// Display results
instructions.forEach((instr) => {
console.log("0x%s:\t%s\t%s",
instr.address.toString(16),
instr.mnemonic,
instr.op_str
);
});
// Delete decoder
d.close();
});
大楼
要建造 Capstone.js 图书馆:
-
克隆此寄存器包括其子模块:
git clone --recursive https://github.com/AlexAltea/capstone.js -
安装最新的 Py 3.x, (中文(简体) ), 计算 编辑 标记 SDK。遵循相应的指示,确保所有环境变量的配置正确.
-
运行构建脚本 :
python3 build.py
建造的文物将保存到 dist。 。 。 .
[TIP] 传出架构名以产生一个更小的,单一的建筑包(例如.
python3 build.py x86),或python3 build.py --release来构建每一个变体.