jaaks 发表于 2023-3-5 11:54:38

问一个call崩溃的原因



.版本 2

asm_置代码 ()
asm_mov_eax_常数 (喊话内存地址)
asm_mov_esi_常数 (3)
asm_push_eax ()
asm_push_esi ()
asm_mov_ebx_常数 (call基址)
asm_call_ebx ()
代码 = asm_取代码 ()
asm_调用函数2 (进程句柄, 代码)


我是判断这种带有异常call保护的工具会补偿什么代码。前面加PUSHAD 结尾popad ret 这样在call测试工具和易语言测试也崩溃所以没必要加,call里面应该是自动平栈了

call后面加asp esp

揰掵佲 发表于 2023-3-5 11:57:54

不用加才怪调试工具自己加了

jaaks 发表于 2023-3-5 12:55:03

揰掵佲 发表于 2023-3-5 11:57
不用加才怪调试工具自己加了

试过了一样崩溃

揰掵佲 发表于 2023-3-5 13:01:24

jaaks 发表于 2023-3-5 12:55
试过了一样崩溃

没遇到过,很多东西需要综合分析.
call 调试工具成功,不代表,你写代码一定成功.

易语言调用x86的call pushad popad ret 都是需要的
具体可以参考 https://www.leybc.com/lesson-1187.html 这个课程

页: [1]
查看完整版本: 问一个call崩溃的原因