NewMessageBoxACode[0]=0xe9;
//jmp
MyMessageBoxA的相对地址的指令
_asm
{
[COLOR=
"Red"
]lea eax,MyMessageBoxA
//
注意这个 MyMessageBoxA[
/COLOR
]
mov ebx,pfMessageBoxA
sub eax,ebx
sub eax,5
mov dword ptr [NewMessageBoxACode+1],eax
}
dwIdNew=GetCurrentProcessId();
得到所属进程的ID
dwIdOld=dwIdNew;
HookOn();
开始拦截
return
(
true
);
]FARPROC myaddr=(FARPROC)MyMessageBoxA;
我们新增的一句 按道理这个地址应该是一样的啊,没错吧?[
]lea eax[
],[COLOR=
]myaddr[
][COLOR=
这样写就出错了。得到的NewMessageBoxACode就不一样了 [
[注意]看雪招聘,专注安全领域的专业人才平台!