好友
阅读权限10
听众
最后登录1970-1-1
|
飘渺之恋
发表于 2008-11-13 11:43
我要揭发你. 忽悠人.
0040D517 6A FF push -1 ; FFFFFFFF进栈
0040D519 6A 08 push 8 ; 0x8进栈
0040D51B 68 15000116 push 16010015 ; 0x16010015进栈
0040D520 68 01000152 push 52010001 ; 0x52010001进栈
0040D525 E8 220E0000 call 0040E34C
0040D52A 83C4 10 add esp, 10 ; 在栈中抛去空闲空间,大小为10字节(如EAX为双字,4字节)
0040D52D 8945 D4 mov dword ptr [ebp-2C], eax
0040D530 68 04000080 push 80000004 ; 0x80000004进栈
0040D535 6A 00 push 0 ; 0x0进栈
0040D537 8B45 D4 mov eax, dword ptr [ebp-2C]
0040D53A 85C0 test eax, eax ; ZF=0;//EAX=0x177CC8;EAX自身TEST运算时,EAX为0则ZF=1;否则ZF=0
0040D53C 75 05 jnz short 0040D543 ; 跳到0040D543 //ZF=0
0040D53E B8 09C24000 mov eax, 0040C209
0040D543 50 push eax ; 0x177CC8进栈;//EAX ("123456789")
0040D544 68 01000000 push 1 ; 0x1进栈
0040D549 BB 30010000 mov ebx, 130 ; EBX=0x130
0040D54E E8 F30D0000 call 0040E346
0040D553 83C4 10 add esp, 10 ; 在栈中抛去空闲空间,大小为10字节(如EAX为双字,4字节)
0040D556 8945 D0 mov dword ptr [ebp-30], eax
0040D559 8B5D D4 mov ebx, dword ptr [ebp-2C]
0040D55C 85DB test ebx, ebx ; ZF=0;//EBX=0x177CC8;EBX自身TEST运算时,EBX为0则ZF=1;否则ZF=0
0040D55E 74 09 je short 0040D569 ; 不跳 //ZF=0;只有相等时,才跳
0040D560 53 push ebx ; 0x177CC8进栈;//EBX ("123456789")
0040D561 E8 DA0D0000 call 0040E340
0040D566 83C4 04 add esp, 4 ; 在栈中抛去空闲空间,大小为4字节(如EAX为双字,4字节)
0040D569 837D D0 05 cmp dword ptr [ebp-30], 5
0040D56D 0F8D 0F000000 jge 0040D582 ; 不跳 //ZF=0;当比较结果是大于或等于时,才跳
0040D573 6A 00 push 0
0040D575 E8 AE0D0000 call 0040E328
0040D57A 83C4 04 add esp, 4
0040D57D E9 00000000 jmp 0040D582
0040D582 6A FF push -1 ; FFFFFFFF进栈
0040D584 6A 08 push 8 ; 0x8进栈
0040D586 68 13000116 push 16010013 ; 0x16010013进栈
0040D58B 68 01000152 push 52010001 ; 0x52010001进栈
0040D590 E8 B70D0000 call 0040E34C
0040D595 83C4 10 add esp, 10 ; 在栈中抛去空闲空间,大小为10字节(如EAX为双字,4字节)
0040D598 8945 D4 mov dword ptr [ebp-2C], eax
0040D59B 68 04000080 push 80000004 ; 0x80000004进栈
0040D5A0 6A 00 push 0 ; 0x0进栈
0040D5A2 8B45 D4 mov eax, dword ptr [ebp-2C]
0040D5A5 85C0 test eax, eax ; ZF=0;//EAX=0x1776D0;EAX自身TEST运算时,EAX为0则ZF=1;否则ZF=0
0040D5A7 75 05 jnz short 0040D5AE ; 跳到0040D5AE //ZF=0
0040D5A9 B8 09C24000 mov eax, 0040C209
0040D5AE 50 push eax ; 0x177CC8进栈;//EAX ("100994444285")
0040D5AF 68 01000000 push 1 ; 0x1进栈
0040D5B4 BB 98010000 mov ebx, 198 ; EBX=0x198
0040D5B9 E8 880D0000 call 0040E346
0040D5BE 83C4 10 add esp, 10 ; 在栈中抛去空闲空间,大小为10字节(如EAX为双字,4字节)
0040D5C1 8945 D0 mov dword ptr [ebp-30], eax
0040D5C4 8B5D D4 mov ebx, dword ptr [ebp-2C]
0040D5C7 85DB test ebx, ebx ; ZF=0;//EBX=0x1776D0;EBX自身TEST运算时,EBX为0则ZF=1;否则ZF=0
0040D5C9 74 09 je short 0040D5D4 ; 不跳 //ZF=0;只有相等时,才跳
0040D5CB 53 push ebx ; 0x1776D0进栈;//EBX ("100994444285")
0040D5CC E8 6F0D0000 call 0040E340
0040D5D1 83C4 04 add esp, 4 ; 在栈中抛去空闲空间,大小为4字节(如EAX为双字,4字节)
0040D5D4 68 05000080 push 80000005 ; 0x80000005进栈
0040D5D9 6A 00 push 0 ; 0x0进栈
0040D5DB 8B45 D0 mov eax, dword ptr [ebp-30]
0040D5DE 85C0 test eax, eax ; ZF=0;//EAX=0x1776F8;EAX自身TEST运算时,EAX为0则ZF=1;否则ZF=0
0040D5E0 75 05 jnz short 0040D5E7 ; 跳到0040D5E7 //ZF=0
0040D5E2 B8 0AC24000 mov eax, 0040C20A
0040D5E7 50 push eax ; 0x1776F8进栈;//EAX
0040D5E8 68 01000000 push 1 ; 0x1进栈
0040D5ED BB 08000000 mov ebx, 8 ; EBX=0x8
0040D5F2 B8 03000000 mov eax, 3 ; EAX=0x3
0040D5F7 E8 5C0D0000 call 0040E358
0040D5FC 83C4 10 add esp, 10 ; 在栈中抛去空闲空间,大小为10字节(如EAX为双字,4字节)
0040D5FF 8945 CC mov dword ptr [ebp-34], eax
0040D602 8B5D D0 mov ebx, dword ptr [ebp-30]
0040D605 85DB test ebx, ebx ; ZF=0;//EBX=0x1776F8;EBX自身TEST运算时,EBX为0则ZF=1;否则ZF=0
0040D607 74 09 je short 0040D612 ; 不跳 //ZF=0;只有相等时,才跳
0040D609 53 push ebx ; 0x1776F8进栈;//EBX
0040D60A E8 310D0000 call 0040E340
0040D60F 83C4 04 add esp, 4 ; 在栈中抛去空闲空间,大小为4字节(如EAX为双字,4字节)
0040D612 8B45 CC mov eax, dword ptr [ebp-34]
0040D615 50 push eax ; 0x178138进栈;//EAX ("2a8c384646a27bc1fd45ebb84350395f")
0040D616 8B5D F8 mov ebx, dword ptr [ebp-8]
0040D619 85DB test ebx, ebx ; ZF=1;//EBX=0;EBX自身TEST运算时,EBX为0则ZF=1;否则ZF=0
0040D61B 74 09 je short 0040D626 ; 跳到0040D626 //ZF=1,结果相等
0040D61D 53 push ebx
0040D61E E8 1D0D0000 call 0040E340
0040D623 83C4 04 add esp, 4
0040D626 58 pop eax ; EAX=0x178138;//出栈到EAX
0040D627 8945 F8 mov dword ptr [ebp-8], eax
0040D62A 68 04000080 push 80000004 ; 0x80000004进栈
0040D62F 6A 00 push 0 ; 0x0进栈
0040D631 8B45 F8 mov eax, dword ptr [ebp-8]
0040D634 85C0 test eax, eax ; ZF=0;//EAX=0x178138;EAX自身TEST运算时,EAX为0则ZF=1;否则ZF=0
0040D636 75 05 jnz short 0040D63D ; 跳到0040D63D //ZF=0
0040D638 B8 09C24000 mov eax, 0040C209
0040D63D 50 push eax ; 0x178138进栈;//EAX ("2a8c384646a27bc1fd45ebb84350395f")
0040D63E 68 01000000 push 1 ; 0x1进栈
0040D643 BB 30010000 mov ebx, 130 ; EBX=0x130
0040D648 E8 F90C0000 call 0040E346
0040D64D 83C4 10 add esp, 10 ; 在栈中抛去空闲空间,大小为10字节(如EAX为双字,4字节)
0040D650 8945 F4 mov dword ptr [ebp-C], eax
0040D653 68 010100A0 push A0000101 ; 0xA0000101进栈
0040D658 6A 00 push 0 ; 0x0进栈
0040D65A 68 12C24000 push 0040C212
0040D65F 68 01000000 push 1 ; 0x1进栈
0040D664 BB 68010000 mov ebx, 168 ; EBX=0x168
0040D669 E8 D80C0000 call 0040E346
0040D66E 83C4 10 add esp, 10 ; 在栈中抛去空闲空间,大小为10字节(如EAX为双字,4字节)
0040D671 8945 D4 mov dword ptr [ebp-2C], eax
0040D674 8B45 D4 mov eax, dword ptr [ebp-2C]
0040D677 50 push eax ; 0x1776D0进栈;//EAX
0040D678 8B5D F0 mov ebx, dword ptr [ebp-10]
0040D67B 85DB test ebx, ebx ; ZF=1;//EBX=0;EBX自身TEST运算时,EBX为0则ZF=1;否则ZF=0
0040D67D 74 09 je short 0040D688 ; 跳到0040D688 //ZF=1,结果相等
0040D67F 53 push ebx
0040D680 E8 BB0C0000 call 0040E340
0040D685 83C4 04 add esp, 4
0040D688 58 pop eax ; EAX=0x1776D0;//出栈到EAX
0040D689 8945 F0 mov dword ptr [ebp-10], eax
0040D68C 68 010100A0 push A0000101 ; 0xA0000101进栈
0040D691 6A 00 push 0 ; 0x0进栈
0040D693 68 24C24000 push 0040C224
0040D698 68 01000000 push 1 ; 0x1进栈
0040D69D BB 68010000 mov ebx, 168 ; EBX=0x168
0040D6A2 E8 9F0C0000 call 0040E346
0040D6A7 83C4 10 add esp, 10 ; 在栈中抛去空闲空间,大小为10字节(如EAX为双字,4字节)
0040D6AA 8945 D4 mov dword ptr [ebp-2C], eax
0040D6AD 8B45 D4 mov eax, dword ptr [ebp-2C]
0040D6B0 50 push eax ; 0x1776F8进栈;//EAX
0040D6B1 8B5D EC mov ebx, dword ptr [ebp-14]
0040D6B4 85DB test ebx, ebx ; ZF=1;//EBX=0;EBX自身TEST运算时,EBX为0则ZF=1;否则ZF=0
0040D6B6 74 09 je short 0040D6C1 ; 跳到0040D6C1 //ZF=1,结果相等
0040D6B8 53 push ebx
0040D6B9 E8 820C0000 call 0040E340
0040D6BE 83C4 04 add esp, 4
0040D6C1 58 pop eax ; EAX=0x1776F8;//出栈到EAX
0040D6C2 8945 EC mov dword ptr [ebp-14], eax
0040D6C5 8B45 F8 mov eax, dword ptr [ebp-8]
0040D6C8 85C0 test eax, eax ; ZF=0;//EAX=0x178138;EAX自身TEST运算时,EAX为0则ZF=1;否则ZF=0
0040D6CA 74 15 je short 0040D6E1 ; 不跳 //ZF=0;只有相等时,才跳
0040D6CC 50 push eax ; 0x177CC8进栈;//EAX ("2a8c384646a27bc1fd45ebb84350395f")
0040D6CD 8BD8 mov ebx, eax ; EBX=0x177CC8;//EBX=EAX ("2a8c384646a27bc1fd45ebb84350395f")
0040D6CF E8 BEFCFFFF call 0040D392
0040D6D4 40 inc eax ; EAX=0x21
0040D6D5 50 push eax ; 0x21进栈;//EAX
0040D6D6 E8 770C0000 call 0040E352
0040D6DB 59 pop ecx ; ECX=0x21;//出栈到ECX
0040D6DC 5E pop esi ; ESI=0x177CC8;//出栈到ESI
0040D6DD 8BF8 mov edi, eax ; EDI=0x177BF0;//EDI=EAX
0040D6DF F3:A4 rep movs byte ptr es:[edi], byte ptr>
0040D6E1 50 push eax ; 0x178138进栈;//EAX ("2a8c384646a27bc1fd45ebb84350395f")
0040D6E2 8B5D E8 mov ebx, dword ptr [ebp-18]
0040D6E5 85DB test ebx, ebx ; ZF=1;//EBX=0;EBX自身TEST运算时,EBX为0则ZF=1;否则ZF=0
0040D6E7 74 09 je short 0040D6F2 ; 跳到0040D6F2 //ZF=1,结果相等
0040D6E9 53 push ebx
0040D6EA E8 510C0000 call 0040E340
0040D6EF 83C4 04 add esp, 4
0040D6F2 58 pop eax ; EAX=0x178138;//出栈到EAX
0040D6F3 8945 E8 mov dword ptr [ebp-18], eax
0040D6F6 8B45 F4 mov eax, dword ptr [ebp-C]
0040D6F9 33C9 xor ecx, ecx ; ECX=0,CF=0;//自身xor运算结果为0,CF=0
0040D6FB 50 push eax ; 0x20进栈;//EAX
0040D6FC 8D45 E4 lea eax, dword ptr [ebp-1C]
0040D6FF 8BD8 mov ebx, eax ; EBX=0x12F69C;//EBX=EAX
0040D701 58 pop eax ; EAX=0x20;//出栈到EAX
0040D702 41 inc ecx ; ECX=0x1
0040D703 51 push ecx ; 0x1进栈;//ECX
0040D704 53 push ebx ; 0x12F69C进栈;//EBX
0040D705 890B mov dword ptr [ebx], ecx
0040D707 50 push eax ; 0x20进栈;//EAX
0040D708 3BC8 cmp ecx, eax ; ZF=0;//ECX=0x1,EAX=0x20
0040D70A 0F8F 79000000 jg 0040D789 ; 不跳 //ZF=1;当比较结果是大于时,才跳(必须跳,不让就在这循环了.)
来到这里
0040D789 83C4 0C add esp, 0C ; 在栈中抛去空闲空间,大小为0C字节(如EAX为双字,4字节)
0040D78C DD45 DC fld qword ptr [ebp-24] ; 语法错误
0040D78F DC0D 37C24000 fmul qword ptr [40C237] ; 语法错误
0040D795 DD5D D0 fstp qword ptr [ebp-30] ; FILD语法错误
0040D798 68 00000000 push 0 ; 0x0进栈
0040D79D BB C4060000 mov ebx, 6C4 ; EBX=0x6C4 F8继续.
到这里
0040D8F0 FF75 B4 push dword ptr [ebp-4C]
0040D8F3 E8 2CFBFFFF call 0040D424
0040D8F8 83C4 08 add esp, 8 ; 在栈中抛去空闲空间,大小为8字节(如EAX为双字,4字节)
0040D8FB 83F8 00 cmp eax, 0 ; ZF=0;//EAX=0xffffffff
0040D8FE B8 00000000 mov eax, 0 ; EAX=0x0
0040D903 0F94C0 sete al
0040D906 8945 B0 mov dword ptr [ebp-50], eax
0040D909 8B5D B4 mov ebx, dword ptr [ebp-4C]
0040D90C 85DB test ebx, ebx ; ZF=0;//EBX=0x178178;EBX自身TEST运算时,EBX为0则ZF=1;否则ZF=0
0040D90E 74 09 je short 0040D919 ; 不跳 //ZF=0;只有相等时,才跳
0040D910 53 push ebx ; 0x178178进栈;//EBX ("-632577069")
0040D911 E8 2A0A0000 call 0040E340
0040D916 83C4 04 add esp, 4 ; 在栈中抛去空闲空间,大小为4字节(如EAX为双字,4字节)
0040D919 837D B0 00 cmp dword ptr [ebp-50], 0
0040D91D 0F84 70000000 je 0040D993 ; 跳到0040D993 //ZF=1,结果相等( 不能跳,跳则失败)
0040D923 6A 00 push 0 ; 0x0进栈
0040D925 6A 00 push 0 ; 0x0进栈
0040D927 6A 00 push 0 ; 0x0进栈
0040D929 68 01030080 push 80000301 ; 0x80000301进栈
0040D92E 6A 00 push 0 ; 0x0进栈
0040D930 68 00000000 push 0 ; 0x0进栈
0040D935 68 04000080 push 80000004 ; 0x80000004进栈
0040D93A 6A 00 push 0 ; 0x0进栈
0040D93C 8B45 EC mov eax, dword ptr [ebp-14]
0040D93F 85C0 test eax, eax ; ZF=0;//EAX=0x177700;EAX自身TEST运算时,EAX为0则ZF=1;否则ZF=0
0040D941 75 05 jnz short 0040D948 ; 跳到0040D948 //ZF=0
0040D943 B8 09C24000 mov eax, 0040C209
0040D948 50 push eax ; 0x40C209进栈;//EAX
0040D949 68 03000000 push 3 ; 0x3进栈
0040D94E BB 00030000 mov ebx, 300 ; EBX=0x300
0040D953 E8 EE090000 call 0040E346 ; 注册成功.(这就是成功信息.)
0040D958 83C4 28 add esp, 28
0040D95B 68 02000080 push 80000002 ; 0x80000002进栈
0040D960 6A 00 push 0 ; 0x0进栈
0040D962 68 01000000 push 1 ; 0x1进栈
0040D967 6A 00 push 0 ; 0x0进栈
0040D969 6A 00 push 0 ; 0x0进栈
0040D96B 6A 00 push 0 ; 0x0进栈
0040D96D 68 01000100 push 10001 ; 0x10001进栈
0040D972 68 36000106 push 6010036 ; 0x6010036进栈
0040D977 68 37000152 push 52010037 ; 0x52010037进栈
0040D97C 68 03000000 push 3 ; 0x3进栈
0040D981 BB 20030000 mov ebx, 320 ; EBX=0x320
0040D986 E8 BB090000 call 0040E346
0040D98B 83C4 28 add esp, 28
0040D98E E9 38000000 jmp 0040D9CB
0040D993 6A 00 push 0 ; 0x0进栈
0040D995 6A 00 push 0 ; 0x0进栈
0040D997 6A 00 push 0 ; 0x0进栈
0040D999 68 01030080 push 80000301 ; 0x80000301进栈
0040D99E 6A 00 push 0 ; 0x0进栈
0040D9A0 68 00000000 push 0 ; 0x0进栈
0040D9A5 68 04000080 push 80000004 ; 0x80000004进栈
0040D9AA 6A 00 push 0 ; 0x0进栈
0040D9AC 8B45 F0 mov eax, dword ptr [ebp-10]
0040D9AF 85C0 test eax, eax ; ZF=0;//EAX=0x1776D0;EAX自身TEST运算时,EAX为0则ZF=1;否则ZF=0
0040D9B1 75 05 jnz short 0040D9B8 ; 跳到0040D9B8 //ZF=0
0040D9B3 B8 09C24000 mov eax, 0040C209
0040D9B8 50 push eax ; 0x1776D0进栈;//EAX
0040D9B9 68 03000000 push 3 ; 0x3进栈
0040D9BE BB 00030000 mov ebx, 300 ; EBX=0x300
0040D9C3 E8 7E090000 call 0040E346 ; //错误
0040D9C8 83C4 28 add esp, 28 |
|