飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 6435|回复: 8

[求助] IDA反编译问题

[复制链接]

该用户从未签到

发表于 2016-2-23 11:16:50 | 显示全部楼层 |阅读模式
跟踪一款股票外挂:
.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整型呀?
PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-2-26 11:14
  • 签到天数: 459 天

    [LV.9]以坛为家II

    发表于 2016-2-23 11:31:58 | 显示全部楼层
    股票你也敢玩外挂    你赢了
    PYG19周年生日快乐!

    该用户从未签到

     楼主| 发表于 2016-2-23 11:41:51 | 显示全部楼层
    不是他玩我,是我玩他。分析他的代码,我自己开发。
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2016-6-16 14:07
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    发表于 2016-2-23 11:53:54 | 显示全部楼层
    x86 下一切皆 DWORD (int)
    PYG19周年生日快乐!
  • TA的每日心情
    无聊
    20 小时前
  • 签到天数: 2464 天

    [LV.Master]伴坛终老

    发表于 2016-2-24 22:17:01 | 显示全部楼层
    都是汇编语言,看不懂啊
    PYG19周年生日快乐!
  • TA的每日心情
    擦汗
    2023-12-2 22:56
  • 签到天数: 160 天

    [LV.7]常住居民III

    发表于 2016-2-26 02:04:54 | 显示全部楼层
    DWORD/int/char* 都是 4 字节长度。
    PYG19周年生日快乐!
  • TA的每日心情
    郁闷
    2022-3-2 11:17
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    发表于 2017-12-14 13:17:48 | 显示全部楼层
    版主的回答是正确的.
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2020-4-15 08:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2019-6-19 12:47:14 | 显示全部楼层

    版主的回答是正确的.
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表