鱼C论坛

 找回密码
 立即注册
查看: 3362|回复: 2

这个可以写出算法吗?

[复制链接]
发表于 2013-5-31 23:47:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
0048A8B9    55              push ebp
0048A8BA    8BEC            mov ebp,esp
0048A8BC    81EC 28000000   sub esp,0x28
0048A8C2    C745 FC 0000000>mov dword ptr ss:[ebp-0x4],0x0
0048A8C9    C745 F8 0000000>mov dword ptr ss:[ebp-0x8],0x0
0048A8D0    C745 F4 0000000>mov dword ptr ss:[ebp-0xC],0x0
0048A8D7    6A 00           push 0x0
0048A8D9    68 01000000     push 0x1
0048A8DE    6A FF           push -0x1
0048A8E0    6A 06           push 0x6
0048A8E2    68 1A000116     push 0x1601001A
0048A8E7    68 17000152     push 0x52010017
0048A8EC    E8 A4550000     call 轮回挂2_.0048FE95
0048A8F1    83C4 18         add esp,0x18
0048A8F4    6A FF           push -0x1
0048A8F6    6A 13           push 0x13
0048A8F8    68 1F000116     push 0x1601001F
0048A8FD    68 17000152     push 0x52010017
0048A902    E8 9A550000     call 轮回挂2_.0048FEA1
0048A907    83C4 10         add esp,0x10
0048A90A    68 01030080     push 0x80000301
0048A90F    6A 00           push 0x0
0048A911    50              push eax
0048A912    68 0E000100     push 0x1000E
0048A917    68 1F000116     push 0x1601001F
0048A91C    68 17000152     push 0x52010017
0048A921    68 02000000     push 0x2
0048A926    BB 10204900     mov ebx,轮回挂2_.00492010
0048A92B    E8 6B550000     call 轮回挂2_.0048FE9B
0048A930    83C4 1C         add esp,0x1C
0048A933    8945 EC         mov dword ptr ss:[ebp-0x14],eax
0048A936    8965 E8         mov dword ptr ss:[ebp-0x18],esp
0048A939    8D45 FC         lea eax,dword ptr ss:[ebp-0x4]
0048A93C    50              push eax
0048A93D    FF75 EC         push dword ptr ss:[ebp-0x14]
0048A940    B8 00000000     mov eax,0x0
0048A945    E8 63550000     call 轮回挂2_.0048FEAD
0048A94A    3965 E8         cmp dword ptr ss:[ebp-0x18],esp
0048A94D    74 0D           je short 轮回挂2_.0048A95C
0048A94F    68 06000000     push 0x6
0048A954    E8 4E550000     call 轮回挂2_.0048FEA7
0048A959    83C4 04         add esp,0x4
0048A95C    8965 F0         mov dword ptr ss:[ebp-0x10],esp
0048A95F    FF75 FC         push dword ptr ss:[ebp-0x4]
0048A962    68 00000000     push 0x0
0048A967    68 FF0F1F00     push 0x1F0FFF
0048A96C    B8 01000000     mov eax,0x1
0048A971    E8 37550000     call 轮回挂2_.0048FEAD
0048A976    3965 F0         cmp dword ptr ss:[ebp-0x10],esp
0048A979    74 0D           je short 轮回挂2_.0048A988
0048A97B    68 06000000     push 0x6
0048A980    E8 22550000     call 轮回挂2_.0048FEA7
0048A985    83C4 04         add esp,0x4
0048A988    8945 F8         mov dword ptr ss:[ebp-0x8],eax
0048A98B    6A FF           push -0x1
0048A98D    6A 08           push 0x8
0048A98F    68 1C000116     push 0x1601001C
0048A994    68 17000152     push 0x52010017
0048A999    E8 03550000     call 轮回挂2_.0048FEA1
0048A99E    83C4 10         add esp,0x10
0048A9A1    8945 F0         mov dword ptr ss:[ebp-0x10],eax
0048A9A4    8D45 F0         lea eax,dword ptr ss:[ebp-0x10]
0048A9A7    50              push eax
0048A9A8    E8 75020000     call 轮回挂2_.0048AC22
0048A9AD    8945 EC         mov dword ptr ss:[ebp-0x14],eax
0048A9B0    8B5D F0         mov ebx,dword ptr ss:[ebp-0x10]
0048A9B3    85DB            test ebx,ebx
0048A9B5    74 09           je short 轮回挂2_.0048A9C0
0048A9B7    53              push ebx
0048A9B8    E8 CC540000     call 轮回挂2_.0048FE89
0048A9BD    83C4 04         add esp,0x4
0048A9C0    6A 00           push 0x0
0048A9C2    6A 00           push 0x0
0048A9C4    6A 00           push 0x0
0048A9C6    68 01030080     push 0x80000301
0048A9CB    6A 00           push 0x0
0048A9CD    68 04000000     push 0x4
0048A9D2    68 05000080     push 0x80000005
0048A9D7    6A 00           push 0x0
0048A9D9    8B45 EC         mov eax,dword ptr ss:[ebp-0x14]
0048A9DC    85C0            test eax,eax
0048A9DE    75 05           jnz short 轮回挂2_.0048A9E5
0048A9E0    B8 EFE95100     mov eax,轮回挂2_.0051E9EF
0048A9E5    50              push eax
0048A9E6    68 03000000     push 0x3
0048A9EB    BB 50164900     mov ebx,轮回挂2_.00491650
0048A9F0    E8 A6540000     call 轮回挂2_.0048FE9B
0048A9F5    83C4 28         add esp,0x28
0048A9F8    8945 E0         mov dword ptr ss:[ebp-0x20],eax
0048A9FB    8955 E4         mov dword ptr ss:[ebp-0x1C],edx
0048A9FE    894D E8         mov dword ptr ss:[ebp-0x18],ecx
0048AA01    8B5D EC         mov ebx,dword ptr ss:[ebp-0x14]
0048AA04    85DB            test ebx,ebx
0048AA06    74 09           je short 轮回挂2_.0048AA11
0048AA08    53              push ebx
0048AA09    E8 7B540000     call 轮回挂2_.0048FE89
0048AA0E    83C4 04         add esp,0x4
0048AA11    6A 01           push 0x1
0048AA13    8D45 F4         lea eax,dword ptr ss:[ebp-0xC]
0048AA16    50              push eax
0048AA17    8B4D E8         mov ecx,dword ptr ss:[ebp-0x18]
0048AA1A    8B55 E4         mov edx,dword ptr ss:[ebp-0x1C]
0048AA1D    8B45 E0         mov eax,dword ptr ss:[ebp-0x20]
0048AA20    81F9 01010080   cmp ecx,0x80000101
0048AA26    75 09           jnz short 轮回挂2_.0048AA31
0048AA28    25 FF000000     and eax,0xFF
0048AA2D    33D2            xor edx,edx
0048AA2F    EB 4F           jmp short 轮回挂2_.0048AA80
0048AA31    81F9 01020080   cmp ecx,0x80000201
0048AA37    75 04           jnz short 轮回挂2_.0048AA3D
0048AA39    98              cwde
0048AA3A    99              cdq
0048AA3B    EB 43           jmp short 轮回挂2_.0048AA80
0048AA3D    81F9 01030080   cmp ecx,0x80000301
0048AA43    75 03           jnz short 轮回挂2_.0048AA48
0048AA45    99              cdq
0048AA46    EB 38           jmp short 轮回挂2_.0048AA80
0048AA48    81F9 01040080   cmp ecx,0x80000401
0048AA4E    74 30           je short 轮回挂2_.0048AA80
0048AA50    8945 D8         mov dword ptr ss:[ebp-0x28],eax
0048AA53    81F9 01050080   cmp ecx,0x80000501
0048AA59    74 15           je short 轮回挂2_.0048AA70
0048AA5B    81F9 01060080   cmp ecx,0x80000601
0048AA61    74 12           je short 轮回挂2_.0048AA75
0048AA63    68 02000000     push 0x2
0048AA68    E8 3A540000     call 轮回挂2_.0048FEA7
0048AA6D    83C4 04         add esp,0x4
0048AA70    D945 D8         fld dword ptr ss:[ebp-0x28]
0048AA73    EB 06           jmp short 轮回挂2_.0048AA7B
0048AA75    8955 DC         mov dword ptr ss:[ebp-0x24],edx
0048AA78    DD45 D8         fld qword ptr ss:[ebp-0x28]
0048AA7B    E8 FD68F7FF     call 轮回挂2_.0040137D
0048AA80    52              push edx
0048AA81    50              push eax
0048AA82    FF75 F8         push dword ptr ss:[ebp-0x8]
0048AA85    E8 B0040000     call 轮回挂2_.0048AF3A
0048AA8A    6A 00           push 0x0
0048AA8C    68 00000000     push 0x0
0048AA91    6A FF           push -0x1
0048AA93    6A 1D           push 0x1D
0048AA95    68 16000106     push 0x6010016
0048AA9A    68 17000152     push 0x52010017
0048AA9F    E8 F1530000     call 轮回挂2_.0048FE95
0048AAA4    83C4 18         add esp,0x18
0048AAA7    68 05000080     push 0x80000005
0048AAAC    6A 00           push 0x0
0048AAAE    8B45 F4         mov eax,dword ptr ss:[ebp-0xC]
0048AAB1    85C0            test eax,eax
0048AAB3    75 05           jnz short 轮回挂2_.0048AABA
0048AAB5    B8 EFE95100     mov eax,轮回挂2_.0051E9EF
0048AABA    50              push eax
0048AABB    68 01000000     push 0x1
0048AAC0    BB 401A4900     mov ebx,轮回挂2_.00491A40
0048AAC5    E8 D1530000     call 轮回挂2_.0048FE9B
0048AACA    83C4 10         add esp,0x10
0048AACD    8945 F0         mov dword ptr ss:[ebp-0x10],eax
0048AAD0    68 01060080     push 0x80000601
0048AAD5    68 F859E441     push 0x41E459F8
0048AADA    68 000000BA     push 0xBA000000
0048AADF    68 01000000     push 0x1
0048AAE4    BB 300D4900     mov ebx,轮回挂2_.00490D30
0048AAE9    E8 AD530000     call 轮回挂2_.0048FE9B
0048AAEE    83C4 10         add esp,0x10
0048AAF1    68 01030080     push 0x80000301
0048AAF6    6A 00           push 0x0
0048AAF8    50              push eax
0048AAF9    68 01000000     push 0x1
0048AAFE    BB 60144900     mov ebx,轮回挂2_.00491460
0048AB03    E8 93530000     call 轮回挂2_.0048FE9B
0048AB08    83C4 10         add esp,0x10
0048AB0B    8945 E8         mov dword ptr ss:[ebp-0x18],eax
0048AB0E    68 05000080     push 0x80000005
0048AB13    6A 00           push 0x0
0048AB15    8B45 E8         mov eax,dword ptr ss:[ebp-0x18]
0048AB18    85C0            test eax,eax
0048AB1A    75 05           jnz short 轮回挂2_.0048AB21
0048AB1C    B8 EFE95100     mov eax,轮回挂2_.0051E9EF
0048AB21    50              push eax
0048AB22    68 01000000     push 0x1
0048AB27    BB 401A4900     mov ebx,轮回挂2_.00491A40
0048AB2C    E8 6A530000     call 轮回挂2_.0048FE9B
0048AB31    83C4 10         add esp,0x10
0048AB34    8945 E4         mov dword ptr ss:[ebp-0x1C],eax
0048AB37    8B5D E8         mov ebx,dword ptr ss:[ebp-0x18]
0048AB3A    85DB            test ebx,ebx
0048AB3C    74 09           je short 轮回挂2_.0048AB47
0048AB3E    53              push ebx
0048AB3F    E8 45530000     call 轮回挂2_.0048FE89
0048AB44    83C4 04         add esp,0x4
0048AB47    68 04000080     push 0x80000004
0048AB4C    6A 00           push 0x0
0048AB4E    8B45 E4         mov eax,dword ptr ss:[ebp-0x1C]
0048AB51    85C0            test eax,eax
0048AB53    75 05           jnz short 轮回挂2_.0048AB5A
0048AB55    B8 1FEA5100     mov eax,轮回挂2_.0051EA1F
0048AB5A    50              push eax
0048AB5B    68 01030080     push 0x80000301
0048AB60    6A 00           push 0x0
0048AB62    68 00000000     push 0x0
0048AB67    68 04000080     push 0x80000004
0048AB6C    6A 00           push 0x0
0048AB6E    8B45 F0         mov eax,dword ptr ss:[ebp-0x10]
0048AB71    85C0            test eax,eax
0048AB73    75 05           jnz short 轮回挂2_.0048AB7A
0048AB75    B8 1FEA5100     mov eax,轮回挂2_.0051EA1F
0048AB7A    50              push eax
0048AB7B    68 03000000     push 0x3
0048AB80    BB C01C4900     mov ebx,轮回挂2_.00491CC0
0048AB85    E8 11530000     call 轮回挂2_.0048FE9B
0048AB8A    83C4 28         add esp,0x28
0048AB8D    8B5D F0         mov ebx,dword ptr ss:[ebp-0x10]
0048AB90    85DB            test ebx,ebx
0048AB92    74 09           je short 轮回挂2_.0048AB9D
0048AB94    53              push ebx
0048AB95    E8 EF520000     call 轮回挂2_.0048FE89
0048AB9A    83C4 04         add esp,0x4
0048AB9D    8B5D E4         mov ebx,dword ptr ss:[ebp-0x1C]
0048ABA0    85DB            test ebx,ebx
0048ABA2    74 09           je short 轮回挂2_.0048ABAD
0048ABA4    53              push ebx
0048ABA5    E8 DF520000     call 轮回挂2_.0048FE89
0048ABAA    83C4 04         add esp,0x4
0048ABAD    6A 00           push 0x0
0048ABAF    68 01000000     push 0x1
0048ABB4    6A FF           push -0x1
0048ABB6    6A 1D           push 0x1D
0048ABB8    68 16000106     push 0x6010016
0048ABBD    68 17000152     push 0x52010017
0048ABC2    E8 CE520000     call 轮回挂2_.0048FE95
0048ABC7    83C4 18         add esp,0x18
0048ABCA    6A 00           push 0x0
0048ABCC    68 01000000     push 0x1
0048ABD1    6A FF           push -0x1
0048ABD3    6A 05           push 0x5
0048ABD5    68 00000106     push 0x6010000
0048ABDA    68 01000152     push 0x52010001
0048ABDF    E8 B1520000     call 轮回挂2_.0048FE95
0048ABE4    83C4 18         add esp,0x18
0048ABE7    6A 00           push 0x0
0048ABE9    6A 00           push 0x0
0048ABEB    6A 00           push 0x0
0048ABED    68 01000100     push 0x10001
0048ABF2    68 16000106     push 0x6010016
0048ABF7    68 17000152     push 0x52010017
0048ABFC    68 02000000     push 0x2
0048AC01    BB 401E4900     mov ebx,轮回挂2_.00491E40
0048AC06    E8 90520000     call 轮回挂2_.0048FE9B
0048AC0B    83C4 1C         add esp,0x1C
0048AC0E    8B5D F4         mov ebx,dword ptr ss:[ebp-0xC]
0048AC11    85DB            test ebx,ebx
0048AC13    74 09           je short 轮回挂2_.0048AC1E
0048AC15    53              push ebx
0048AC16    E8 6E520000     call 轮回挂2_.0048FE89
0048AC1B    83C4 04         add esp,0x4
0048AC1E    8BE5            mov esp,ebp
0048AC20    5D              pop ebp
0048AC21    C3              retn

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-6-1 00:56:18 | 显示全部楼层
放到IDA里面,直接f5,出来的结果是这样的
  1. int __cdecl sub_48A8B9()
  2. {
  3.   int v0; // eax@3
  4.   unsigned int v1; // edx@5
  5.   _UNKNOWN *v2; // eax@7
  6.   double *v3; // ecx@9
  7.   __int64 v4; // qax@11
  8.   double v5; // st7@21
  9.   _UNKNOWN *v6; // eax@24
  10.   char v7; // al@26
  11.   double *v8; // eax@26
  12.   _UNKNOWN *v9; // eax@30
  13.   int result; // eax@36
  14.   double v11; // [sp+0h] [bp-28h]@1
  15.   unsigned __int64 v12; // [sp+8h] [bp-20h]@9
  16.   double *v13; // [sp+10h] [bp-18h]@1
  17.   void *v14; // [sp+14h] [bp-14h]@1
  18.   double *v15; // [sp+18h] [bp-10h]@3
  19.   void *v16; // [sp+1Ch] [bp-Ch]@1
  20.   int v17; // [sp+20h] [bp-8h]@1
  21.   int v18; // [sp+24h] [bp-4h]@1

  22.   v18 = 0;
  23.   v17 = 0;
  24.   v16 = 0;
  25.   sub_48FE95((HWND)0x52010017, 369164314, 6, -1, 1, 0);
  26.   sub_48FEA1(1375797271, 369164319, 19, -1);
  27.   v14 = (void *)sub_48FE9B(2, 23);
  28.   v13 = &v11;
  29.   sub_48FEAD(v14, &v18);
  30.   if ( v13 != &v11 )
  31.     sub_48FEA7(6);
  32.   v15 = &v11;
  33.   v0 = sub_48FEAD(2035711, 0);
  34.   if ( v15 != &v11 )
  35.     sub_48FEA7(6);
  36.   v17 = v0;
  37.   v15 = (double *)sub_48FEA1(1375797271, 369164316, 8, -1);
  38.   v14 = (void *)sub_48AC22(&v15);
  39.   if ( v15 )
  40.     sub_48FE89(v15);
  41.   LOBYTE(v2) = (_BYTE)v14;
  42.   if ( !v14 )
  43.     v2 = &unk_51E9EF;
  44.   v12 = __PAIR__(v1, sub_48FE9B(3, (char)v2));
  45.   v13 = v3;
  46.   if ( v14 )
  47.     sub_48FE89(v14);
  48.   v4 = v12;
  49.   if ( v13 == (double *)-2147483391 )
  50.   {
  51.     v4 = v12 & 0xFF;
  52.   }
  53.   else
  54.   {
  55.     if ( v13 == (double *)-2147483135 )
  56.     {
  57.       v4 = (signed __int16)v12;
  58.     }
  59.     else
  60.     {
  61.       if ( v13 == (double *)-2147482879 )
  62.       {
  63.         v4 = (signed int)v12;
  64.       }
  65.       else
  66.       {
  67.         if ( v13 != (double *)-2147482623 )
  68.         {
  69.           LODWORD(v11) = v12;
  70.           if ( v13 == (double *)-2147482367 )
  71.           {
  72.             v5 = (float)v11;
  73.           }
  74.           else
  75.           {
  76.             if ( v13 != (double *)-2147482111 )
  77.               sub_48FEA7(2);
  78.             HIDWORD(v11) = HIDWORD(v12);
  79.             v5 = v11;
  80.           }
  81.           LODWORD(v4) = sub_40137D(v13, HIDWORD(v12), v5);
  82.         }
  83.       }
  84.     }
  85.   }
  86.   sub_48AF3A(v17, v4, HIDWORD(v4), &v16, 1);
  87.   sub_48FE95((HWND)0x52010017, 100728854, 29, -1, 0, 0);
  88.   LOBYTE(v6) = (_BYTE)v16;
  89.   if ( !v16 )
  90.     v6 = &unk_51E9EF;
  91.   v15 = (double *)sub_48FE9B(1, (char)v6);
  92.   v7 = sub_48FE9B(1, 0);
  93.   v8 = (double *)sub_48FE9B(1, v7);
  94.   v13 = v8;
  95.   if ( !v8 )
  96.     v8 = (double *)&unk_51E9EF;
  97.   HIDWORD(v12) = sub_48FE9B(1, (char)v8);
  98.   if ( v13 )
  99.     sub_48FE89(v13);
  100.   LOBYTE(v9) = (_BYTE)v15;
  101.   if ( !v15 )
  102.     v9 = &unk_51EA1F;
  103.   sub_48FE9B(3, (char)v9);
  104.   if ( v15 )
  105.     sub_48FE89(v15);
  106.   if ( HIDWORD(v12) )
  107.     sub_48FE89(HIDWORD(v12));
  108.   sub_48FE95((HWND)0x52010017, 100728854, 29, -1, 1, 0);
  109.   sub_48FE95((HWND)0x52010001, 100728832, 5, -1, 1, 0);
  110.   result = sub_48FE9B(2, 23);
  111.   if ( v16 )
  112.     result = sub_48FE89(v16);
  113.   return result;
  114. }
复制代码


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-6-8 13:30:49 | 显示全部楼层
无回帖,不论坛,这才是人道。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-28 20:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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