朱朱你堕落了 发表于 2024-4-11 21:25

这行汇编怎么写?

本帖最后由 朱朱你堕落了 于 2024-4-12 00:21 编辑

又百度了一下,提问的问题简直有点弱智。

solly 发表于 2024-4-11 21:25

push ebp
Sub Dword ptr , 0x64
这样就不用其它寄存器

QvQsuipian 发表于 2024-4-11 21:41

这样?
__declspec(naked) void __stdcall Asm_Code()
{
    __asm
    {
      pushad               ; 保存所有通用寄存器
      pushfd               ; 保存标志寄存器
      lea eax, ; 将ebp寄存器减去0x64的结果加载到eax中
      push eax             ; 将计算得到的地址压入堆栈
      CALL PatchFun       ; 调用PatchFun函数
      popfd               ; 恢复标志寄存器
      popad               ; 恢复所有通用寄存器
      //...
      ret               ; 返回
    }
}

HackYike 发表于 2024-4-11 22:02

只见过push 寄存器、内存单元和立即数的,也许是就这么规定的,除非自己提前算出结果,但这似乎更南辕北辙了
页: [1]
查看完整版本: 这行汇编怎么写?