当前位置: 代码迷 >> 汇编语言 >> 一段汇编代码怎么写
  详细解决方案

一段汇编代码怎么写

热度:3651   发布时间:2013-02-26 00:00:00.0
求助一段汇编代码如何写
我想用OD在程序里添加一段函数.
****
push ***(源程序的数值)
push ***(源程序的数值)
push ***(源程序的数值)
push 0C(之前push的个数*4)[自己添加的]
call 转移堆栈数据(自己添加的,不知怎么写)
call 原函数(调用的DLL函数)
call 修复堆栈(自己添加的,已完成)
****
请问那个转移堆栈数据的函数该怎么写,才能把堆栈中push的0C放到之前push的3个数之前去,而且不改变除ESP寄存器之外的值?

------解决方案--------------------------------------------------------
push ebp
mov ebp, esp
push [ebp+8]
push [ebp+12]
push [ebp+16]
push [ebp+20]
pop [ebp+20]
pop [ebp+8]
pop [ebp+12]
pop [ebp+16]
pop ebp
ret
  相关解决方案