首页
社区
课程
招聘
[求助]翻译一段汇编代码为C
发表于: 2007-4-3 10:26 10752

[求助]翻译一段汇编代码为C

2007-4-3 10:26
10752
哪位大哥不忙的话麻烦翻译一下。

* Referenced by a CALL at Addresses:
|:0040D2F4   , :0046A9C7   , :004C50F1   
|
:00477800 83EC08                  sub esp, 00000008
:00477803 53                      push ebx
:00477804 56                      push esi
:00477805 57                      push edi
:00477806 8B7C2424                mov edi, dword ptr [esp+24]
:0047780A 8BC7                    mov eax, edi
:0047780C 2507000080              and eax, 80000007
:00477811 7905                    jns 00477818
:00477813 48                      dec eax
:00477814 83C8F8                  or eax, FFFFFFF8
:00477817 40                      inc eax

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00477811(C)
|
:00477818 8B54241C                mov edx, dword ptr [esp+1C]
:0047781C 8BF7                    mov esi, edi
:0047781E 7421                    je 00477841
:00477820 2BF0                    sub esi, eax
:00477822 33C0                    xor eax, eax
:00477824 83C608                  add esi, 00000008
:00477827 8BCE                    mov ecx, esi
:00477829 89742410                mov dword ptr [esp+10], esi
:0047782D 2BCF                    sub ecx, edi
:0047782F 03FA                    add edi, edx
:00477831 8BD9                    mov ebx, ecx
:00477833 C1E902                  shr ecx, 02
:00477836 F3                      repz
:00477837 AB                      stosd
:00477838 8BCB                    mov ecx, ebx
:0047783A 83E103                  and ecx, 00000003
:0047783D F3                      repz
:0047783E AA                      stosb
:0047783F EB04                    jmp 00477845

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0047781E(C)
|
:00477841 89742410                mov dword ptr [esp+10], esi

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0047783F(U)
|
:00477845 8BC6                    mov eax, esi
:00477847 C1F803                  sar eax, 03
:0047784A 85C0                    test eax, eax
:0047784C 0F8E97060000            jle 00477EE9
:00477852 8B5C2420                mov ebx, dword ptr [esp+20]
:00477856 55                      push ebp
:00477857 89442410                mov dword ptr [esp+10], eax

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00477ED7(C)
|
:0047785B 8B4A04                  mov ecx, dword ptr [edx+04]
:0047785E 8B33                    mov esi, dword ptr [ebx]
:00477860 8BC1                    mov eax, ecx
:00477862 8BF9                    mov edi, ecx
:00477864 C1E805                  shr eax, 05
:00477867 C1E704                  shl edi, 04
:0047786A 33C7                    xor eax, edi
:0047786C 8B3A                    mov edi, dword ptr [edx]
:0047786E 03C1                    add eax, ecx
:00477870 8B530C                  mov edx, dword ptr [ebx+0C]
:00477873 33C6                    xor eax, esi
:00477875 81C2B979379E            add edx, 9E3779B9
:0047787B 03C7                    add eax, edi
:0047787D 8BF8                    mov edi, eax
:0047787F 8BE8                    mov ebp, eax
:00477881 C1EF05                  shr edi, 05
:00477884 C1E504                  shl ebp, 04
:00477887 33FD                    xor edi, ebp
:00477889 03F8                    add edi, eax
:0047788B 33FA                    xor edi, edx
:0047788D 8B5304                  mov edx, dword ptr [ebx+04]
:00477890 03CF                    add ecx, edi
:00477892 8BF9                    mov edi, ecx
:00477894 8BE9                    mov ebp, ecx
:00477896 C1EF05                  shr edi, 05
:00477899 C1E504                  shl ebp, 04
:0047789C 33FD                    xor edi, ebp
:0047789E 8DAAB979379E            lea ebp, dword ptr [edx+9E3779B9]
:004778A4 03F9                    add edi, ecx
:004778A6 33FD                    xor edi, ebp
:004778A8 03C7                    add eax, edi
:004778AA 8B7B08                  mov edi, dword ptr [ebx+08]
:004778AD 8BE8                    mov ebp, eax
:004778AF 8BD8                    mov ebx, eax
:004778B1 C1ED05                  shr ebp, 05
:004778B4 C1E304                  shl ebx, 04
:004778B7 33EB                    xor ebp, ebx
:004778B9 8D9F72F36E3C            lea ebx, dword ptr [edi+3C6EF372]
:004778BF 03E8                    add ebp, eax
:004778C1 33EB                    xor ebp, ebx
:004778C3 03CD                    add ecx, ebp
:004778C5 8BE9                    mov ebp, ecx
:004778C7 8BD9                    mov ebx, ecx
:004778C9 C1ED05                  shr ebp, 05
:004778CC C1E304                  shl ebx, 04
:004778CF 33EB                    xor ebp, ebx
:004778D1 8D9F72F36E3C            lea ebx, dword ptr [edi+3C6EF372]
:004778D7 03E9                    add ebp, ecx
:004778D9 33EB                    xor ebp, ebx
:004778DB 03C5                    add eax, ebp
:004778DD 8BD8                    mov ebx, eax
:004778DF 8BE8                    mov ebp, eax
:004778E1 C1EB05                  shr ebx, 05
:004778E4 C1E504                  shl ebp, 04
:004778E7 33DD                    xor ebx, ebp
:004778E9 8DAA2B6DA6DA            lea ebp, dword ptr [edx+DAA66D2B]
:004778EF 03D8                    add ebx, eax
:004778F1 33DD                    xor ebx, ebp
:004778F3 03CB                    add ecx, ebx
:004778F5 8BE9                    mov ebp, ecx
:004778F7 8BD9                    mov ebx, ecx
:004778F9 C1ED05                  shr ebp, 05
:004778FC C1E304                  shl ebx, 04
:004778FF 33EB                    xor ebp, ebx
:00477901 8B5C2424                mov ebx, dword ptr [esp+24]
:00477905 03E9                    add ebp, ecx
:00477907 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:0047790A 81C32B6DA6DA            add ebx, DAA66D2B
:00477910 33EB                    xor ebp, ebx
:00477912 03C5                    add eax, ebp
:00477914 8BE8                    mov ebp, eax
:00477916 8BD8                    mov ebx, eax
:00477918 C1ED05                  shr ebp, 05
:0047791B C1E304                  shl ebx, 04
:0047791E 33EB                    xor ebp, ebx
:00477920 8D9EE4E6DD78            lea ebx, dword ptr [esi+78DDE6E4]
:00477926 03E8                    add ebp, eax
:00477928 33EB                    xor ebp, ebx
:0047792A 03CD                    add ecx, ebp
:0047792C 8BE9                    mov ebp, ecx
:0047792E C1ED05                  shr ebp, 05
:00477931 8BD9                    mov ebx, ecx
:00477933 C1E304                  shl ebx, 04
:00477936 33EB                    xor ebp, ebx
:00477938 8D9EE4E6DD78            lea ebx, dword ptr [esi+78DDE6E4]
:0047793E 03E9                    add ebp, ecx
:00477940 33EB                    xor ebp, ebx
:00477942 03C5                    add eax, ebp
:00477944 8BD8                    mov ebx, eax
:00477946 8BE8                    mov ebp, eax
:00477948 C1EB05                  shr ebx, 05
:0047794B C1E504                  shl ebp, 04
:0047794E 33DD                    xor ebx, ebp
:00477950 8DAE9D601517            lea ebp, dword ptr [esi+1715609D]
:00477956 03D8                    add ebx, eax
:00477958 33DD                    xor ebx, ebp
:0047795A 03CB                    add ecx, ebx
:0047795C 8BD9                    mov ebx, ecx
:0047795E 8BE9                    mov ebp, ecx
:00477960 C1EB05                  shr ebx, 05
:00477963 C1E504                  shl ebp, 04
:00477966 33DD                    xor ebx, ebp
:00477968 8DAA9D601517            lea ebp, dword ptr [edx+1715609D]
:0047796E 03D9                    add ebx, ecx
:00477970 33DD                    xor ebx, ebp
:00477972 03C3                    add eax, ebx
:00477974 8BE8                    mov ebp, eax
:00477976 8BD8                    mov ebx, eax
:00477978 C1ED05                  shr ebp, 05
:0047797B C1E304                  shl ebx, 04
:0047797E 33EB                    xor ebp, ebx
:00477980 8B5C2424                mov ebx, dword ptr [esp+24]
:00477984 03E8                    add ebp, eax
:00477986 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:00477989 81C356DA4CB5            add ebx, B54CDA56
:0047798F 33EB                    xor ebp, ebx
:00477991 03CD                    add ecx, ebp
:00477993 8BD9                    mov ebx, ecx
:00477995 8BE9                    mov ebp, ecx
:00477997 C1EB05                  shr ebx, 05
:0047799A C1E504                  shl ebp, 04
:0047799D 33DD                    xor ebx, ebp
:0047799F 8DAF56DA4CB5            lea ebp, dword ptr [edi+B54CDA56]
:004779A5 03D9                    add ebx, ecx
:004779A7 33DD                    xor ebx, ebp
:004779A9 03C3                    add eax, ebx
:004779AB 8BD8                    mov ebx, eax
:004779AD 8BE8                    mov ebp, eax
:004779AF C1EB05                  shr ebx, 05
:004779B2 C1E504                  shl ebp, 04
:004779B5 33DD                    xor ebx, ebp
:004779B7 8DAF0F548453            lea ebp, dword ptr [edi+5384540F]
:004779BD 03D8                    add ebx, eax
:004779BF 33DD                    xor ebx, ebp
:004779C1 03CB                    add ecx, ebx
:004779C3 8BE9                    mov ebp, ecx
:004779C5 8BD9                    mov ebx, ecx
:004779C7 C1ED05                  shr ebp, 05
:004779CA C1E304                  shl ebx, 04
:004779CD 33EB                    xor ebp, ebx
:004779CF 8B5C2424                mov ebx, dword ptr [esp+24]
:004779D3 03E9                    add ebp, ecx
:004779D5 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:004779D8 81C30F548453            add ebx, 5384540F
:004779DE 33EB                    xor ebp, ebx
:004779E0 03C5                    add eax, ebp
:004779E2 8BD8                    mov ebx, eax
:004779E4 8BE8                    mov ebp, eax
:004779E6 C1EB05                  shr ebx, 05
:004779E9 C1E504                  shl ebp, 04
:004779EC 33DD                    xor ebx, ebp
:004779EE 8DAAC8CDBBF1            lea ebp, dword ptr [edx+F1BBCDC8]
:004779F4 03D8                    add ebx, eax
:004779F6 33DD                    xor ebx, ebp
:004779F8 03CB                    add ecx, ebx
:004779FA 8BD9                    mov ebx, ecx
:004779FC 8BE9                    mov ebp, ecx
:004779FE C1EB05                  shr ebx, 05
:00477A01 C1E504                  shl ebp, 04
:00477A04 33DD                    xor ebx, ebp
:00477A06 8DAEC8CDBBF1            lea ebp, dword ptr [esi+F1BBCDC8]
:00477A0C 03D9                    add ebx, ecx
:00477A0E 33DD                    xor ebx, ebp
:00477A10 03C3                    add eax, ebx
:00477A12 8BD8                    mov ebx, eax
:00477A14 8BE8                    mov ebp, eax
:00477A16 C1EB05                  shr ebx, 05
:00477A19 C1E504                  shl ebp, 04
:00477A1C 33DD                    xor ebx, ebp
:00477A1E 8DAE8147F38F            lea ebp, dword ptr [esi+8FF34781]
:00477A24 03D8                    add ebx, eax
:00477A26 33DD                    xor ebx, ebp
:00477A28 03CB                    add ecx, ebx
:00477A2A 8BD9                    mov ebx, ecx
:00477A2C 8BE9                    mov ebp, ecx
:00477A2E C1EB05                  shr ebx, 05
:00477A31 C1E504                  shl ebp, 04
:00477A34 33DD                    xor ebx, ebp
:00477A36 8DAA8147F38F            lea ebp, dword ptr [edx+8FF34781]
:00477A3C 03D9                    add ebx, ecx
:00477A3E 33DD                    xor ebx, ebp
:00477A40 03C3                    add eax, ebx
:00477A42 8BD8                    mov ebx, eax
:00477A44 8BE8                    mov ebp, eax
:00477A46 C1EB05                  shr ebx, 05
:00477A49 C1E504                  shl ebp, 04
:00477A4C 33DD                    xor ebx, ebp
:00477A4E 8DAE3AC12A2E            lea ebp, dword ptr [esi+2E2AC13A]
:00477A54 03D8                    add ebx, eax
:00477A56 33DD                    xor ebx, ebp
:00477A58 03CB                    add ecx, ebx
:00477A5A 8BD9                    mov ebx, ecx
:00477A5C 8BE9                    mov ebp, ecx
:00477A5E C1EB05                  shr ebx, 05
:00477A61 C1E504                  shl ebp, 04
:00477A64 33DD                    xor ebx, ebp
:00477A66 8DAF3AC12A2E            lea ebp, dword ptr [edi+2E2AC13A]
:00477A6C 03D9                    add ebx, ecx
:00477A6E 33DD                    xor ebx, ebp
:00477A70 03C3                    add eax, ebx
:00477A72 8B5C2424                mov ebx, dword ptr [esp+24]
:00477A76 8BE8                    mov ebp, eax
:00477A78 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:00477A7B 81C3F33A62CC            add ebx, CC623AF3
:00477A81 895C2428                mov dword ptr [esp+28], ebx
:00477A85 8BD8                    mov ebx, eax
:00477A87 C1EB05                  shr ebx, 05
:00477A8A C1E504                  shl ebp, 04
:00477A8D 33DD                    xor ebx, ebp
:00477A8F 8B6C2428                mov ebp, dword ptr [esp+28]
:00477A93 03D8                    add ebx, eax
:00477A95 33DD                    xor ebx, ebp
:00477A97 03CB                    add ecx, ebx
:00477A99 8BD9                    mov ebx, ecx
:00477A9B 8BE9                    mov ebp, ecx
:00477A9D C1EB05                  shr ebx, 05
:00477AA0 C1E504                  shl ebp, 04
:00477AA3 33DD                    xor ebx, ebp
:00477AA5 8B6C2428                mov ebp, dword ptr [esp+28]
:00477AA9 03D9                    add ebx, ecx
:00477AAB 33DD                    xor ebx, ebp
:00477AAD 03C3                    add eax, ebx
:00477AAF 8BD8                    mov ebx, eax
:00477AB1 8BE8                    mov ebp, eax
:00477AB3 C1EB05                  shr ebx, 05
:00477AB6 C1E504                  shl ebp, 04
:00477AB9 33DD                    xor ebx, ebp
:00477ABB 8DAFACB4996A            lea ebp, dword ptr [edi+6A99B4AC]
:00477AC1 03D8                    add ebx, eax
:00477AC3 33DD                    xor ebx, ebp
:00477AC5 03CB                    add ecx, ebx
:00477AC7 8BD9                    mov ebx, ecx
:00477AC9 8BE9                    mov ebp, ecx
:00477ACB C1EB05                  shr ebx, 05
:00477ACE C1E504                  shl ebp, 04
:00477AD1 33DD                    xor ebx, ebp
:00477AD3 8DAEACB4996A            lea ebp, dword ptr [esi+6A99B4AC]
:00477AD9 03D9                    add ebx, ecx
:00477ADB 33DD                    xor ebx, ebp
:00477ADD 03C3                    add eax, ebx
:00477ADF 8BE8                    mov ebp, eax
:00477AE1 8BD8                    mov ebx, eax
:00477AE3 C1ED05                  shr ebp, 05
:00477AE6 C1E304                  shl ebx, 04
:00477AE9 33EB                    xor ebp, ebx
:00477AEB 8D9A652ED108            lea ebx, dword ptr [edx+08D12E65]
:00477AF1 03E8                    add ebp, eax
:00477AF3 33EB                    xor ebp, ebx
:00477AF5 03CD                    add ecx, ebp
:00477AF7 8BE9                    mov ebp, ecx
:00477AF9 8BD9                    mov ebx, ecx
:00477AFB C1E304                  shl ebx, 04
:00477AFE C1ED05                  shr ebp, 05
:00477B01 33EB                    xor ebp, ebx
:00477B03 8D9A652ED108            lea ebx, dword ptr [edx+08D12E65]
:00477B09 03E9                    add ebp, ecx
:00477B0B 33EB                    xor ebp, ebx
:00477B0D 03C5                    add eax, ebp
:00477B0F 8BD8                    mov ebx, eax
:00477B11 8BE8                    mov ebp, eax
:00477B13 C1EB05                  shr ebx, 05
:00477B16 C1E504                  shl ebp, 04
:00477B19 33DD                    xor ebx, ebp
:00477B1B 8DAA1EA808A7            lea ebp, dword ptr [edx+A708A81E]
:00477B21 03D8                    add ebx, eax
:00477B23 33DD                    xor ebx, ebp
:00477B25 03CB                    add ecx, ebx
:00477B27 8BD9                    mov ebx, ecx
:00477B29 8BE9                    mov ebp, ecx
:00477B2B C1EB05                  shr ebx, 05
:00477B2E C1E504                  shl ebp, 04
:00477B31 33DD                    xor ebx, ebp
:00477B33 8DAF1EA808A7            lea ebp, dword ptr [edi+A708A81E]
:00477B39 03D9                    add ebx, ecx
:00477B3B 33DD                    xor ebx, ebp
:00477B3D 03C3                    add eax, ebx
:00477B3F 8BD8                    mov ebx, eax
:00477B41 8BE8                    mov ebp, eax
:00477B43 C1EB05                  shr ebx, 05
:00477B46 C1E504                  shl ebp, 04
:00477B49 33DD                    xor ebx, ebp
:00477B4B 8DAED7214045            lea ebp, dword ptr [esi+454021D7]
:00477B51 03D8                    add ebx, eax
:00477B53 33DD                    xor ebx, ebp
:00477B55 03CB                    add ecx, ebx
:00477B57 8BE9                    mov ebp, ecx
:00477B59 8BD9                    mov ebx, ecx
:00477B5B C1ED05                  shr ebp, 05
:00477B5E C1E304                  shl ebx, 04
:00477B61 33EB                    xor ebp, ebx
:00477B63 8B5C2424                mov ebx, dword ptr [esp+24]
:00477B67 03E9                    add ebp, ecx
:00477B69 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:00477B6C 81C3D7214045            add ebx, 454021D7
:00477B72 33EB                    xor ebp, ebx
:00477B74 03C5                    add eax, ebp
:00477B76 8BE8                    mov ebp, eax
:00477B78 8BD8                    mov ebx, eax
:00477B7A C1ED05                  shr ebp, 05
:00477B7D C1E304                  shl ebx, 04
:00477B80 33EB                    xor ebp, ebx
:00477B82 8B5C2424                mov ebx, dword ptr [esp+24]
:00477B86 03E8                    add ebp, eax
:00477B88 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:00477B8B 81C3909B77E3            add ebx, E3779B90
:00477B91 33EB                    xor ebp, ebx
:00477B93 03CD                    add ecx, ebp
:00477B95 8BD9                    mov ebx, ecx
:00477B97 8BE9                    mov ebp, ecx
:00477B99 C1EB05                  shr ebx, 05
:00477B9C C1E504                  shl ebp, 04
:00477B9F 33DD                    xor ebx, ebp
:00477BA1 8DAE909B77E3            lea ebp, dword ptr [esi+E3779B90]
:00477BA7 03D9                    add ebx, ecx
:00477BA9 33DD                    xor ebx, ebp
:00477BAB 03C3                    add eax, ebx
:00477BAD 8BD8                    mov ebx, eax
:00477BAF 8BE8                    mov ebp, eax
:00477BB1 C1EB05                  shr ebx, 05
:00477BB4 C1E504                  shl ebp, 04
:00477BB7 33DD                    xor ebx, ebp
:00477BB9 8DAF4915AF81            lea ebp, dword ptr [edi+81AF1549]
:00477BBF 03D8                    add ebx, eax
:00477BC1 33DD                    xor ebx, ebp
:00477BC3 03CB                    add ecx, ebx
:00477BC5 8BD9                    mov ebx, ecx
:00477BC7 8BE9                    mov ebp, ecx
:00477BC9 C1EB05                  shr ebx, 05
:00477BCC C1E504                  shl ebp, 04
:00477BCF 33DD                    xor ebx, ebp
:00477BD1 8DAA4915AF81            lea ebp, dword ptr [edx+81AF1549]
:00477BD7 03D9                    add ebx, ecx
:00477BD9 33DD                    xor ebx, ebp
:00477BDB 03C3                    add eax, ebx
:00477BDD 8BD8                    mov ebx, eax
:00477BDF 8BE8                    mov ebp, eax
:00477BE1 C1EB05                  shr ebx, 05
:00477BE4 C1E504                  shl ebp, 04
:00477BE7 33DD                    xor ebx, ebp
:00477BE9 8DAA028FE61F            lea ebp, dword ptr [edx+1FE68F02]
:00477BEF 03D8                    add ebx, eax
:00477BF1 33DD                    xor ebx, ebp
:00477BF3 03CB                    add ecx, ebx
:00477BF5 8BD9                    mov ebx, ecx
:00477BF7 8BE9                    mov ebp, ecx
:00477BF9 C1EB05                  shr ebx, 05
:00477BFC C1E504                  shl ebp, 04
:00477BFF 33DD                    xor ebx, ebp
:00477C01 8DAF028FE61F            lea ebp, dword ptr [edi+1FE68F02]
:00477C07 03D9                    add ebx, ecx
:00477C09 33DD                    xor ebx, ebp
:00477C0B 03C3                    add eax, ebx
:00477C0D 8BD8                    mov ebx, eax
:00477C0F 8BE8                    mov ebp, eax
:00477C11 C1EB05                  shr ebx, 05
:00477C14 C1E504                  shl ebp, 04
:00477C17 33DD                    xor ebx, ebp
:00477C19 8DAABB081EBE            lea ebp, dword ptr [edx+BE1E08BB]
:00477C1F 03D8                    add ebx, eax
:00477C21 33DD                    xor ebx, ebp
:00477C23 03CB                    add ecx, ebx
:00477C25 8BE9                    mov ebp, ecx
:00477C27 8BD9                    mov ebx, ecx
:00477C29 C1ED05                  shr ebp, 05
:00477C2C C1E304                  shl ebx, 04
:00477C2F 33EB                    xor ebp, ebx
:00477C31 8B5C2424                mov ebx, dword ptr [esp+24]
:00477C35 03E9                    add ebp, ecx
:00477C37 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:00477C3A 81C3BB081EBE            add ebx, BE1E08BB
:00477C40 33EB                    xor ebp, ebx
:00477C42 03C5                    add eax, ebp
:00477C44 8BE8                    mov ebp, eax
:00477C46 8BD8                    mov ebx, eax
:00477C48 C1ED05                  shr ebp, 05
:00477C4B C1E304                  shl ebx, 04
:00477C4E 33EB                    xor ebp, ebx
:00477C50 8D9E7482555C            lea ebx, dword ptr [esi+5C558274]
:00477C56 03E8                    add ebp, eax
:00477C58 33EB                    xor ebp, ebx
:00477C5A 03CD                    add ecx, ebp
:00477C5C 8BE9                    mov ebp, ecx
:00477C5E 8BD9                    mov ebx, ecx
:00477C60 C1ED05                  shr ebp, 05
:00477C63 C1E304                  shl ebx, 04
:00477C66 33EB                    xor ebp, ebx
:00477C68 8D9E7482555C            lea ebx, dword ptr [esi+5C558274]
:00477C6E 03E9                    add ebp, ecx
:00477C70 33EB                    xor ebp, ebx
:00477C72 03C5                    add eax, ebp
:00477C74 8BE8                    mov ebp, eax
:00477C76 8BD8                    mov ebx, eax
:00477C78 C1ED05                  shr ebp, 05
:00477C7B C1E304                  shl ebx, 04
:00477C7E 33EB                    xor ebp, ebx
:00477C80 8B5C2424                mov ebx, dword ptr [esp+24]
:00477C84 03E8                    add ebp, eax
:00477C86 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:00477C89 81C32DFC8CFA            add ebx, FA8CFC2D
:00477C8F 33EB                    xor ebp, ebx
:00477C91 03CD                    add ecx, ebp
:00477C93 8BD9                    mov ebx, ecx
:00477C95 8BE9                    mov ebp, ecx
:00477C97 C1EB05                  shr ebx, 05
:00477C9A C1E504                  shl ebp, 04
:00477C9D 33DD                    xor ebx, ebp
:00477C9F 8DAA2DFC8CFA            lea ebp, dword ptr [edx+FA8CFC2D]
:00477CA5 03D9                    add ebx, ecx
:00477CA7 33DD                    xor ebx, ebp
:00477CA9 03C3                    add eax, ebx
:00477CAB 8BE8                    mov ebp, eax
:00477CAD 8BD8                    mov ebx, eax
:00477CAF C1E304                  shl ebx, 04
:00477CB2 C1ED05                  shr ebp, 05
:00477CB5 33EB                    xor ebp, ebx
:00477CB7 8D9FE675C498            lea ebx, dword ptr [edi+98C475E6]
:00477CBD 03E8                    add ebp, eax
:00477CBF 33EB                    xor ebp, ebx
:00477CC1 03CD                    add ecx, ebp
:00477CC3 8BE9                    mov ebp, ecx
:00477CC5 8BD9                    mov ebx, ecx
:00477CC7 C1E304                  shl ebx, 04
:00477CCA C1ED05                  shr ebp, 05
:00477CCD 33EB                    xor ebp, ebx
:00477CCF 8D9FE675C498            lea ebx, dword ptr [edi+98C475E6]
:00477CD5 03E9                    add ebp, ecx
:00477CD7 33EB                    xor ebp, ebx
:00477CD9 03C5                    add eax, ebp
:00477CDB 8BD8                    mov ebx, eax
:00477CDD 8BE8                    mov ebp, eax
:00477CDF C1EB05                  shr ebx, 05
:00477CE2 C1E504                  shl ebp, 04
:00477CE5 33DD                    xor ebx, ebp
:00477CE7 8DAA9FEFFB36            lea ebp, dword ptr [edx+36FBEF9F]
:00477CED 03D8                    add ebx, eax
:00477CEF 33DD                    xor ebx, ebp
:00477CF1 03CB                    add ecx, ebx
:00477CF3 8BE9                    mov ebp, ecx
:00477CF5 8BD9                    mov ebx, ecx
:00477CF7 C1ED05                  shr ebp, 05
:00477CFA C1E304                  shl ebx, 04
:00477CFD 33EB                    xor ebp, ebx
:00477CFF 8B5C2424                mov ebx, dword ptr [esp+24]
:00477D03 03E9                    add ebp, ecx
:00477D05 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:00477D08 81C39FEFFB36            add ebx, 36FBEF9F
:00477D0E 33EB                    xor ebp, ebx
:00477D10 03C5                    add eax, ebp
:00477D12 8BD8                    mov ebx, eax
:00477D14 8BE8                    mov ebp, eax
:00477D16 C1EB05                  shr ebx, 05
:00477D19 C1E504                  shl ebp, 04
:00477D1C 33DD                    xor ebx, ebp
:00477D1E 8DAA586933D5            lea ebp, dword ptr [edx+D5336958]
:00477D24 03D8                    add ebx, eax
:00477D26 33DD                    xor ebx, ebp
:00477D28 03CB                    add ecx, ebx
:00477D2A 8BD9                    mov ebx, ecx
:00477D2C 8BE9                    mov ebp, ecx
:00477D2E C1EB05                  shr ebx, 05
:00477D31 C1E504                  shl ebp, 04
:00477D34 33DD                    xor ebx, ebp
:00477D36 8DAE586933D5            lea ebp, dword ptr [esi+D5336958]
:00477D3C 03D9                    add ebx, ecx
:00477D3E 33DD                    xor ebx, ebp
:00477D40 03C3                    add eax, ebx
:00477D42 8BD8                    mov ebx, eax
:00477D44 8BE8                    mov ebp, eax
:00477D46 C1EB05                  shr ebx, 05
:00477D49 C1E504                  shl ebp, 04
:00477D4C 33DD                    xor ebx, ebp
:00477D4E 8DAE11E36A73            lea ebp, dword ptr [esi+736AE311]
:00477D54 03D8                    add ebx, eax
:00477D56 33DD                    xor ebx, ebp
:00477D58 03CB                    add ecx, ebx
:00477D5A 8BD9                    mov ebx, ecx
:00477D5C 8BE9                    mov ebp, ecx
:00477D5E C1EB05                  shr ebx, 05
:00477D61 C1E504                  shl ebp, 04
:00477D64 33DD                    xor ebx, ebp
:00477D66 8DAA11E36A73            lea ebp, dword ptr [edx+736AE311]
:00477D6C 03D9                    add ebx, ecx
:00477D6E 33DD                    xor ebx, ebp
:00477D70 03C3                    add eax, ebx
:00477D72 8BE8                    mov ebp, eax
:00477D74 C1ED05                  shr ebp, 05
:00477D77 8BD8                    mov ebx, eax
:00477D79 81C2F5C948EC            add edx, EC48C9F5
:00477D7F C1E304                  shl ebx, 04
:00477D82 33EB                    xor ebp, ebx
:00477D84 8B5C2424                mov ebx, dword ptr [esp+24]
:00477D88 03E8                    add ebp, eax
:00477D8A 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:00477D8D 81C3CA5CA211            add ebx, 11A25CCA
:00477D93 33EB                    xor ebp, ebx
:00477D95 03CD                    add ecx, ebp
:00477D97 8BD9                    mov ebx, ecx
:00477D99 8BE9                    mov ebp, ecx
:00477D9B C1EB05                  shr ebx, 05
:00477D9E C1E504                  shl ebp, 04
:00477DA1 33DD                    xor ebx, ebp
:00477DA3 8DAFCA5CA211            lea ebp, dword ptr [edi+11A25CCA]
:00477DA9 03D9                    add ebx, ecx
:00477DAB 33DD                    xor ebx, ebp
:00477DAD 03C3                    add eax, ebx
:00477DAF 8BD8                    mov ebx, eax
:00477DB1 8BE8                    mov ebp, eax
:00477DB3 C1EB05                  shr ebx, 05
:00477DB6 C1E504                  shl ebp, 04
:00477DB9 33DD                    xor ebx, ebp
:00477DBB 8DAF83D6D9AF            lea ebp, dword ptr [edi+AFD9D683]
:00477DC1 03D8                    add ebx, eax
:00477DC3 33DD                    xor ebx, ebp
:00477DC5 03CB                    add ecx, ebx
:00477DC7 8BE9                    mov ebp, ecx
:00477DC9 8BD9                    mov ebx, ecx
:00477DCB C1ED05                  shr ebp, 05
:00477DCE C1E304                  shl ebx, 04
:00477DD1 33EB                    xor ebp, ebx
:00477DD3 8B5C2424                mov ebx, dword ptr [esp+24]
:00477DD7 03E9                    add ebp, ecx
:00477DD9 8B5B0C                  mov ebx, dword ptr [ebx+0C]
:00477DDC 81C383D6D9AF            add ebx, AFD9D683
:00477DE2 33EB                    xor ebp, ebx
:00477DE4 03C5                    add eax, ebp
:00477DE6 8BD8                    mov ebx, eax
:00477DE8 8BE8                    mov ebp, eax
:00477DEA C1EB05                  shr ebx, 05
:00477DED C1E504                  shl ebp, 04
:00477DF0 33DD                    xor ebx, ebp
:00477DF2 8DAF3C50114E            lea ebp, dword ptr [edi+4E11503C]
:00477DF8 03D8                    add ebx, eax
:00477DFA 33DD                    xor ebx, ebp
:00477DFC 03CB                    add ecx, ebx
:00477DFE 8BD9                    mov ebx, ecx
:00477E00 8BE9                    mov ebp, ecx
:00477E02 C1EB05                  shr ebx, 05
:00477E05 C1E504                  shl ebp, 04
:00477E08 33DD                    xor ebx, ebp
:00477E0A 8DAE3C50114E            lea ebp, dword ptr [esi+4E11503C]
:00477E10 03D9                    add ebx, ecx
:00477E12 81C6AE43808A            add esi, 8A8043AE
:00477E18 33DD                    xor ebx, ebp
:00477E1A 03C3                    add eax, ebx
:00477E1C 8BD8                    mov ebx, eax
:00477E1E 8BE8                    mov ebp, eax
:00477E20 C1EB05                  shr ebx, 05
:00477E23 C1E504                  shl ebp, 04
:00477E26 33DD                    xor ebx, ebp
:00477E28 03D8                    add ebx, eax
:00477E2A 33DA                    xor ebx, edx
:00477E2C 03CB                    add ecx, ebx
:00477E2E 8BD9                    mov ebx, ecx
:00477E30 8BE9                    mov ebp, ecx
:00477E32 C1EB05                  shr ebx, 05
:00477E35 C1E504                  shl ebp, 04
:00477E38 33DD                    xor ebx, ebp
:00477E3A 03D9                    add ebx, ecx
:00477E3C 33DA                    xor ebx, edx
:00477E3E 03C3                    add eax, ebx
:00477E40 8BD0                    mov edx, eax
:00477E42 8BD8                    mov ebx, eax
:00477E44 C1EA05                  shr edx, 05
:00477E47 C1E304                  shl ebx, 04
:00477E4A 33D3                    xor edx, ebx
:00477E4C 03D0                    add edx, eax
:00477E4E 33D6                    xor edx, esi
:00477E50 03CA                    add ecx, edx
:00477E52 8B5C2424                mov ebx, dword ptr [esp+24]
:00477E56 8BD1                    mov edx, ecx
:00477E58 8BF1                    mov esi, ecx
:00477E5A C1EA05                  shr edx, 05
:00477E5D C1E604                  shl esi, 04
:00477E60 33D6                    xor edx, esi
:00477E62 8DB7AE43808A            lea esi, dword ptr [edi+8A8043AE]
:00477E68 03D1                    add edx, ecx
:00477E6A 81C72037EFC6            add edi, C6EF3720
:00477E70 33D6                    xor edx, esi
:00477E72 03C2                    add eax, edx
:00477E74 8B530C                  mov edx, dword ptr [ebx+0C]
:00477E77 8BF0                    mov esi, eax
:00477E79 8BE8                    mov ebp, eax
:00477E7B C1EE05                  shr esi, 05
:00477E7E C1E504                  shl ebp, 04
:00477E81 33F5                    xor esi, ebp
:00477E83 81C267BDB728            add edx, 28B7BD67
:00477E89 03F0                    add esi, eax
:00477E8B 33F2                    xor esi, edx
:00477E8D 03CE                    add ecx, esi
:00477E8F 8BF1                    mov esi, ecx
:00477E91 8BE9                    mov ebp, ecx
:00477E93 C1EE05                  shr esi, 05
:00477E96 C1E504                  shl ebp, 04
:00477E99 33F5                    xor esi, ebp
:00477E9B 03F1                    add esi, ecx
:00477E9D 33F2                    xor esi, edx
:00477E9F 03C6                    add eax, esi
:00477EA1 8BD0                    mov edx, eax
:00477EA3 8BF0                    mov esi, eax
:00477EA5 C1EA05                  shr edx, 05
:00477EA8 C1E604                  shl esi, 04
:00477EAB 33D6                    xor edx, esi
:00477EAD 03D0                    add edx, eax
:00477EAF 33D7                    xor edx, edi
:00477EB1 03CA                    add ecx, edx
:00477EB3 8B54241C                mov edx, dword ptr [esp+1C]
:00477EB7 8902                    mov dword ptr [edx], eax
:00477EB9 8B442410                mov eax, dword ptr [esp+10]
:00477EBD 894A04                  mov dword ptr [edx+04], ecx
:00477EC0 83C208                  add edx, 00000008
:00477EC3 8954241C                mov dword ptr [esp+1C], edx
:00477EC7 8B542420                mov edx, dword ptr [esp+20]
:00477ECB 83C208                  add edx, 00000008
:00477ECE 48                      dec eax
:00477ECF 89542420                mov dword ptr [esp+20], edx
:00477ED3 89442410                mov dword ptr [esp+10], eax
:00477ED7 0F857EF9FFFF            jne 0047785B
:00477EDD 8B442414                mov eax, dword ptr [esp+14]
:00477EE1 5D                      pop ebp
:00477EE2 5F                      pop edi
:00477EE3 5E                      pop esi
:00477EE4 5B                      pop ebx
:00477EE5 83C408                  add esp, 00000008
:00477EE8 C3                      ret

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (19)
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
2
ExTea算法。
2007-4-3 10:37
0
雪    币: 223
活跃值: (70)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
3
:00477875 81C2B979379E            add edx, 9E3779B9
www.google.com ->9E3779B9
2007-4-3 11:56
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
搜到这两份。感觉不像啊

void encipher( unsigned long * const v, const unsigned long * const k )
{
    register unsigned long y = v[0], z = v[1], sum = 0, delta = 0x9E3779B9,
        a = k[0], b = k[1], c = k[2], d = k[3], n = 32;
    while ( n-- > 0 )
    {
        sum += delta;
        y += ( z << 4 ) + a ^ z + sum ^ ( z >> 5 ) + b;
        z += ( y << 4 ) + c ^ y + sum ^ ( y >> 5 ) + d;
    }
    v[0] = y;
    v[1] = z;
}

void decipher( unsigned long * const v, const unsigned long * const k )
{
    register unsigned long y = v[0], z = v[1], sum = 0xC6EF3720, delta = 0x9E3779B9,
        a = k[0], b = k[1], c = k[2], d = k[3], n = 32;
    // sum = delta << 5, in general sum = delta * n
    while ( n-- > 0 )
    {
        z -= ( y << 4 ) + c ^ y + sum ^ ( y >> 5 ) + d;
        y -= ( z << 4 ) + a ^ z + sum ^ ( z >> 5 ) + b;
        sum -= delta;
    }
    v[0] = y;
    v[1] = z;
}
2007-4-3 13:39
0
雪    币: 383
活跃值: (41)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
5
真厉害!我是什么也看不出
2007-4-3 14:04
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
哪位朋友帮帮忙呢?
如果没时间翻译。可否整理一下C形式的参数调用也行。即参数的传入传出就可以了。直接内嵌汇编!
2007-4-3 15:02
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
7
如果大大们可以整理出各种常用加密的算法特征,给我等小鸟学习学习就好了
2007-4-3 15:28
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
a = k[0], b = k[1], c = k[2], d = k[3],

哪里对应这这四个数呀。大概看的差不多了。就是不知道这四个数在哪。
2007-4-3 16:47
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
感觉这一句比较像。0047785E 8B33         mov esi, dword ptr [ebx]
        ntkey[0] = 0x2F914650;
        ntkey[1] = 0x6A9F4695;
        ntkey[2] = 0x7ED316E2;
        ntkey[3] = 0x5483907A;

读内存取得这四个数。但是加密后和程序加密的结果还是不同!!!!!
2007-4-3 17:34
0
雪    币: 200
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
怎么这么象武林KEY生成的函数.
2007-4-4 00:02
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
怎么还不允许我发言啊
2007-4-4 09:37
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
朋友们帮帮忙啦。。。。。
2007-4-4 15:21
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
高手们帮帮忙好不~~~~

我想学汇编找不到学的地方啊
2007-4-8 00:00
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
帮帮忙了。。。。
2007-4-16 23:46
0
雪    币: 8204
活跃值: (3898)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
差点迷糊的认为像MD5了,仔细看
:00477D46 C1EB05                  shr ebx, 05
:00477D49 C1E504                  shl ebp, 04

:00477D79 81C2F5C948EC            add edx, EC48C9F5

TEA 算法

但是似乎不是标准的 TEA算法,更新变种了吧~
2007-4-17 11:32
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
我现在还是看不懂,,不知什么时间能构看懂
2007-4-17 13:09
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
老大们不忙了帮忙搞一定
2007-4-24 16:10
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
学习中............................
2007-4-26 16:42
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
思考中。。。。。。。。。。。。
2007-4-26 17:52
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
建议你用IDA反汇编,分析,逆向.
就你这样贴一段代码出来,翻译不方便.
2007-4-26 17:55
0
游客
登录 | 注册 方可回帖
返回
//