1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
004014B0 . 64:A1 0000000>mov eax,dword ptr fs:[0]
004014B6 . 6A FF push -0x1
004014B8 . 68 701B4000 push CoSH_2.00401B70 ; 溉%@
004014BD . 50 push eax
004014BE . 64:8925 00000>mov dword ptr fs:[0],esp
004014C5 . 83EC 08 sub esp,0x8
004014C8 . 53 push ebx
004014C9 . 55 push ebp
004014CA . 56 push esi
004014CB . 8BF1 mov esi,ecx
004014CD . 57 push edi
004014CE . 8DBE A0000000 lea edi,dword ptr ds:[esi+0xA0]
004014D4 . 8BCF mov ecx,edi
004014D6 . E8 6F030000 call <jmp.&MFC42.#CWnd::GetWindowTextLengthA_3876>
004014DB . 8B1D FC214000 mov ebx,dword ptr ds:[<&USER32.PostQuitMessage>] ; user32.PostQuitMessage
004014E1 . 83F8 05 cmp eax,0x5 ; eax输入的Name的长度 > 5
004014E4 . 7E 50 jle short CoSH_2.00401536
004014E6 . 8D6E 60 lea ebp,dword ptr ds:[esi+0x60]
004014E9 . 8BCD mov ecx,ebp
004014EB . E8 5A030000 call <jmp.&MFC42.#CWnd::GetWindowTextLengthA_3876>
004014F0 . 83F8 05 cmp eax,0x5 ; 输入的Serial的长度 > 5
004014F3 . 7E 41 jle short CoSH_2.00401536
004014F5 . 8D86 E0000000 lea eax,dword ptr ds:[esi+0xE0]
004014FB . 8BCF mov ecx,edi
004014FD . 50 push eax
004014FE . E8 41030000 call <jmp.&MFC42.#CWnd::GetWindowTextA_3874> ; 获取文本字符
00401503 . 8DBE E4000000 lea edi,dword ptr ds:[esi+0xE4]
00401509 . 8BCD mov ecx,ebp
0040150B . 57 push edi
0040150C . E8 33030000 call <jmp.&MFC42.#CWnd::GetWindowTextA_3874> ; 获取文本字符
00401511 . 8B07 mov eax,dword ptr ds:[edi] ; 序列号:"678900"
00401513 . 8038 36 cmp byte ptr ds:[eax],0x36 ; 6
00401516 . 75 1E jnz short CoSH_2.00401536
00401518 . 8078 01 32 cmp byte ptr ds:[eax+0x1],0x32 ; 2
0040151C . 75 18 jnz short CoSH_2.00401536
0040151E . 8078 02 38 cmp byte ptr ds:[eax+0x2],0x38 ; 8
00401522 . 75 12 jnz short CoSH_2.00401536
00401524 . 8078 03 37 cmp byte ptr ds:[eax+0x3],0x37 ; 7
00401528 . 75 0C jnz short CoSH_2.00401536
0040152A . 8078 04 2D cmp byte ptr ds:[eax+0x4],0x2D ; -
0040152E . 75 06 jnz short CoSH_2.00401536
00401530 . 8078 05 41 cmp byte ptr ds:[eax+0x5],0x41 ; A
00401534 . 74 17 je short CoSH_2.0040154D ; 成功流程跳转
00401536 > 6A 00 push 0x0
00401538 . 68 64304000 push CoSH_2.00403064 ; ERROR
0040153D . 68 38304000 push CoSH_2.00403038 ; One of the Details you entered was wrong
00401542 . 8BCE mov ecx,esi
00401544 . E8 F5020000 call <jmp.&MFC42.#CWnd::MessageBoxA_4224> ; 错误提示框
00401549 . 6A 00 push 0x0
0040154B . FFD3 call ebx
0040154D > 8D8E E0000000 lea ecx,dword ptr ds:[esi+0xE0]
00401553 . 8D5424 14 lea edx,dword ptr ss:[esp+0x14]
00401557 . 51 push ecx
00401558 . 68 2C304000 push CoSH_2.0040302C ; Well done,
0040155D . 52 push edx ; ntdll.KiFastSystemCallRet
0040155E . E8 D5020000 call <jmp.&MFC42.#operator+_926>
00401563 . 68 3C314000 push CoSH_2.0040313C
00401568 . 50 push eax
00401569 . 8D4424 18 lea eax,dword ptr ss:[esp+0x18]
0040156D . C74424 28 000>mov dword ptr ss:[esp+0x28],0x0
00401575 . 50 push eax
00401576 . E8 B7020000 call <jmp.&MFC42.#operator+_924>
0040157B . 8B00 mov eax,dword ptr ds:[eax]
0040157D . 6A 00 push 0x0
0040157F . 68 20304000 push CoSH_2.00403020 ; YOU DID IT
00401584 . 50 push eax
00401585 . 8BCE mov ecx,esi
00401587 . C64424 2C 01 mov byte ptr ss:[esp+0x2C],0x1
0040158C . E8 AD020000 call <jmp.&MFC42.#CWnd::MessageBoxA_4224>
00401591 . 8D4C24 10 lea ecx,dword ptr ss:[esp+0x10]
00401595 . C64424 20 00 mov byte ptr ss:[esp+0x20],0x0
|