汇编模块总览 - Overview
本分类做什么
仅 3 个接口:汇编文本 ↔ 机器码 互转,以及 AsmCall 在受控环境下执行一小段机器码。适用于需要 精确寄存器/栈 或与插件支持的 调用约定 打交道的场景;错误使用极易崩溃。
一、三接口职责对照
| 接口 | 输入 | 输出 | 典型用途 |
|---|---|---|---|
| Assemble | 汇编 文本 | 机器码字节(或句柄,见详情页) | 生成 shellcode、补丁、内联 Hook 片段 |
| Disassemble | 机器码 | 反汇编文本 | 逆向确认现有字节序列 |
| AsmCall | 机器码/汇编 + 调用模式 等 | 执行结果(寄存器/返回值见详情页) | 远程线程不便时的 短片段调用 |
二、AsmCall 与「远程线程」类接口的差异
| 对比项 | AsmCall | CreateRemoteThread(系统分类) |
|---|---|---|
| 粒度 | 指令级、由插件解释执行模式 | 线程级、在目标进程创建线程 |
| 典型场景 | 短汇编、特定调用约定测试 | 在目标进程跑 完整函数 或 shellcode |
选型:几行汇编、需插件内置 模式 0~6 等 → AsmCall;需要标准线程入口 → CreateRemoteThread。
三、架构与约定
- x86 / x64 必须一致;跨架构需插件明确支持(见 AsmCall 文档)。
- 栈平衡、非易失寄存器保存、调用约定(fastcall/stdcall 等) 需自行保证。
四、相关分类
五、注意
- 生产环境慎用;调试时 先 Assemble → 人工核对 → 再在隔离进程试 AsmCall。
