Q
QFenghy
Unregistered / Unconfirmed
GUEST, unregistred user!
基址=0DAB0000大小=00056000 (352256.)入口=0DADD2BA ChatClie.<ModuleEntryPoint>名称=ChatClie文件版本=1, 0, 0, 10DAB5817 55 push ebp //注意这里的0dab5817 的‘5817’是ChatClient.dll的偏移 0DAB5818 8BEC mov ebp,esp0DAB581A 51 push ecx ;0DAB581B 894D FC mov dword ptr ss:[ebp-4],ecx0DAB581E 8B45 10 mov eax,dword ptr ss:[ebp+10]0DAB5821 50 push eax ;
说话内容0DAB5822 8B4D 0C mov ecx,dword ptr ss:[ebp+C]0DAB5825 51 push ecx ;
0DAB5826 8B55 08 mov edx,dword ptr ss:[ebp+8]0DAB5829 52 push edx ;
说话频道 01附近 02私 03队伍 04族 05世界 06家族 07神魔0DAB582A 8B4D FC mov ecx,dword ptr ss:[ebp-4] ;
0DAB582D 83C1 30 add ecx,30 0DAB5830 E8 40180000 call ChatClie.0DAB7075 0DAB5835 8BE5 mov esp,ebp0DAB5837 5D pop ebp0DAB5838 C2 0C00 retn 0C------delphi 代码var call_xx:integer;procedure TForm3.Button6Click(Sender: TObject);var pchar;
begin
p := AllocMem(8);
StrPCopy(p,'tttyyy');
asm pushad mov ecx, [$45A860]//这里可能不一样,自己去找 push ecx push p push $0d997ba8 push 1 add ecx,$30 mov eax,[$45A85C]//这里可能不一样,自己去找 add eax,$7075 mov call_xx,eax call call_xx popad end;
end;
为什么 是call [$45A85C]+$7075而不是 call 0DAB7075
说话内容0DAB5822 8B4D 0C mov ecx,dword ptr ss:[ebp+C]0DAB5825 51 push ecx ;
0DAB5826 8B55 08 mov edx,dword ptr ss:[ebp+8]0DAB5829 52 push edx ;
说话频道 01附近 02私 03队伍 04族 05世界 06家族 07神魔0DAB582A 8B4D FC mov ecx,dword ptr ss:[ebp-4] ;
0DAB582D 83C1 30 add ecx,30 0DAB5830 E8 40180000 call ChatClie.0DAB7075 0DAB5835 8BE5 mov esp,ebp0DAB5837 5D pop ebp0DAB5838 C2 0C00 retn 0C------delphi 代码var call_xx:integer;procedure TForm3.Button6Click(Sender: TObject);var pchar;
begin
p := AllocMem(8);
StrPCopy(p,'tttyyy');
asm pushad mov ecx, [$45A860]//这里可能不一样,自己去找 push ecx push p push $0d997ba8 push 1 add ecx,$30 mov eax,[$45A85C]//这里可能不一样,自己去找 add eax,$7075 mov call_xx,eax call call_xx popad end;
end;
为什么 是call [$45A85C]+$7075而不是 call 0DAB7075