| 
注册时间2005-5-4
阅读权限30
最后登录1970-1-1UID1420 龙战于野 
 
 该用户从未签到 | 
 
| 跟踪一款股票外挂: .text:100066F0                         ; char __stdcall Tdx_Init(int TradeServerIp, __int16 TradeServerPort, int TradeClientVersion, char *ErrInfo)
 .text:100066F0                                         public Tdx_Init
 .text:100066F0                         Tdx_Init        proc near               ; DATA XREF: .rdata:off_1000FE08o
 .text:100066F0
 .text:100066F0                         var_20          = byte ptr -20h
 .text:100066F0                         var_18          = byte ptr -18h
 .text:100066F0                         var_14          = byte ptr -14h
 .text:100066F0                         var_E           = byte ptr -0Eh
 .text:100066F0                         var_D           = byte ptr -0Dh
 .text:100066F0                         var_C           = dword ptr -0Ch
 .text:100066F0                         var_4           = dword ptr -4
 .text:100066F0                         TradeServerIp   = dword ptr  8
 .text:100066F0                         TradeServerPort = dword ptr  0Ch
 .text:100066F0                         TradeClientVersion= dword ptr  10h
 .text:100066F0                         ErrInfo         = dword ptr  14h
 .text:100066F0
 .text:100066F0 55                                      push    ebp
 .text:100066F1 8B EC                                   mov     ebp, esp
 .text:100066F3 6A FF                                   push    0FFFFFFFFh
 .text:100066F5 68 5A B3 00 10                          push    offset sub_1000B35A
 .text:100066FA 64 A1 00 00 00 00                       mov     eax, large fs:0
 .text:10006700 50                                      push    eax
 .text:10006701 83 EC 14                                sub     esp, 14h
 .text:10006704 A1 9C 00 01 10                          mov     eax, ___security_cookie
 .text:10006709 33 C5                                   xor     eax, ebp
 .text:1000670B 50                                      push    eax
 .text:1000670C 8D 45 F4                                lea     eax, [ebp+var_C]
 .text:1000670F 64 A3 00 00 00 00                       mov     large fs:0, eax
 
 
 反编译效果:
 char __stdcall Tdx_Init(int TradeServerIp, __int16 TradeServerPort, int TradeClientVersion, char *ErrInfo)
 {
 int v4; // ST10_4@1
 const char *v5; // ST0C_4@1
 int v6; // eax@1
 char v8; // [sp+4h] [bp-20h]@1
 char v9; // [sp+Ch] [bp-18h]@1
 char v10; // [sp+10h] [bp-14h]@1
 char v11; // [sp+16h] [bp-Eh]@1
 char v12; // [sp+17h] [bp-Dh]@1
 int v13; // [sp+20h] [bp-4h]@1
 
 sub_10001000();
 v4 = sub_10009F73();
 AFX_MAINTAIN_STATE2::AFX_MAINTAIN_STATE2(&v8);
 v13 = 0;
 sub_10001060(&unk_100108B4);
 LOBYTE(v13) = 1;
 ((void (__thiscall *)(char *))ATL::CStringT<char_StrTraitMFC_DLL<char_ATL::ChTraitsCRT<char>>>::CStringT<char_StrTraitMFC_DLL<char_ATL::ChTraitsCRT<char>>>)(&v10);
 LOBYTE(v13) = 2;
 v12 = sub_10005690(TradeServerIp, TradeServerPort, TradeClientVersion, &v10);
 v5 = (const char *)ATL::CSimpleStringT<char_1>::operator char_const__(&v10);
 v6 = ATL::CSimpleStringT<char_1>::GetLength(&v10);
 strcpy_s(ErrInfo, v6 + 1, v5);
 v11 = v12;
 LOBYTE(v13) = 1;
 ATL::CStringT<char_StrTraitMFC_DLL<char_ATL::ChTraitsCRT<char>>>::_CStringT<char_StrTraitMFC_DLL<char_ATL::ChTraitsCRT<char>>>(&v10);
 LOBYTE(v13) = 0;
 sub_10001090(&v9);
 v13 = -1;
 AFX_MAINTAIN_STATE2::_AFX_MAINTAIN_STATE2(v4);
 return v11;
 }
 
 
 这儿char __stdcall Tdx_Init(int TradeServerIp, __int16 TradeServerPort, int TradeClientVersion, char *ErrInfo)
 参数1,3明明都是char*,为啥反编译出来参数类型是int整型呀?
 
 | 
 |