ebp ------- 基地址
esp ------- 堆栈指针
edi ------- 目的地址
eax ------- 通用寄存器
ptr ------- 指针 PUSH EBP
MOV EBP,ESP
此代码只要用于函数的入口,先把EBP保留起来,然后把当前的堆栈指针
赋值给基地址,接下去要访问堆栈中的数据,就采用
[ebp+08]
[ebp+0c]这种形式来访问传入的参数。
esp ------- 堆栈指针
edi ------- 目的地址
eax ------- 通用寄存器
ptr ------- 指针 PUSH EBP
MOV EBP,ESP
此代码只要用于函数的入口,先把EBP保留起来,然后把当前的堆栈指针
赋值给基地址,接下去要访问堆栈中的数据,就采用
[ebp+08]
[ebp+0c]这种形式来访问传入的参数。
mov ebp,esp // Procedure Prologue - often not needed
xor edi,edi
push edi
mov byte ptr [ebp-04h],63h // Write 'c' of cmd
mov byte ptr [ebp-03h],6Dh // Write 'm' of cmd
mov byte ptr [ebp-02h],64h // Write 'd' of cmd
push edi
mov byte ptr [ebp-08h],03h
lea eax,[ebp-04h]
push eax
mov eax, 0x77E9B50E
call eax 可是上面这段代码我还是看部大懂!