0042BF5D 83C4 10 add esp, 10 ; 断下
0042BF60 8945 FC mov dword ptr [ebp-4], eax
0042BF63 68 6D934000 push 0040936D ; 子程序(机器码)压栈
0042BF68 FF75 FC push dword ptr [ebp-4] ;注册码压栈
0042BF6B E8 34FFFFFF call 0042BEA4 ;关键CALL 里面找不到注册码 郁闷
0042BF70 83C4 08 add esp, 8
0042BF73 83F8 00 cmp eax, 0
0042BF76 B8 00000000 mov eax, 0
0042BF7B 0F94C0 sete al
0042BF7E 8945 F8 mov dword ptr [ebp-8], eax
0042BF81 8B5D FC mov ebx, dword ptr [ebp-4]
0042BF84 85DB test ebx, ebx
0042BF86 74 09 je short 0042BF91
0042BF88 53 push ebx
0042BF89 E8 31030100 call 0043C2BF
0042BF8E 83C4 04 add esp, 4
0042BF91 837D F8 00 cmp dword ptr [ebp-8], 0
0042BF95 0F85 C2000000 jnz 0042C05D
0042BF9B 6A FF push -1
0042BF9D 6A 08 push 8
0042BF9F 68 07000116 push 16010007
0042BFA4 68 01000152 push 52010001
0042BFA9 E8 35030100 call 0043C2E3
0042BFAE 83C4 10 add esp, 10
0042BFB1 8945 F4 mov dword ptr [ebp-C], eax
0042BFB4 68 04000080 push 80000004
0042BFB9 6A 00 push 0
0042BFBB 8B45 F4 mov eax, dword ptr [ebp-C]
0042BFBE 85C0 test eax, eax
0042BFC0 75 05 jnz short 0042BFC7
0042BFC2 B8 6D934000 mov eax, 0040936D
0042BFC7 50 push eax
0042BFC8 68 01000000 push 1
0042BFCD BB 30010000 mov ebx, 130
0042BFD2 E8 00030100 call 0043C2D7
0042BFD7 83C4 10 add esp, 10
0042BFDA 8945 F0 mov dword ptr [ebp-10], eax
0042BFDD 8B5D F4 mov ebx, dword ptr [ebp-C]
0042BFE0 85DB test ebx, ebx
0042BFE2 74 09 je short 0042BFED
0042BFE4 53 push ebx
0042BFE5 E8 D5020100 call 0043C2BF
0042BFEA 83C4 04 add esp, 4
0042BFED 817D F0 0401000>cmp dword ptr [ebp-10], 104
0042BFF4 0F8F 63000000 jg 0042C05D
0042BFFA 6A FF push -1
0042BFFC 6A 08 push 8
0042BFFE 68 07000116 push 16010007
0042C003 68 01000152 push 52010001
0042C008 E8 D6020100 call 0043C2E3
0042C00D 83C4 10 add esp, 10
0042C010 8945 E8 mov dword ptr [ebp-18], eax
0042C013 68 04000080 push 80000004
0042C018 6A 00 push 0
0042C01A 8B45 E8 mov eax, dword ptr [ebp-18]
0042C01D 85C0 test eax, eax
0042C01F 75 05 jnz short 0042C026
0042C021 B8 6D934000 mov eax, 0040936D
0042C026 50 push eax
0042C027 68 01000000 push 1
0042C02C BB 30010000 mov ebx, 130
0042C031 E8 A1020100 call 0043C2D7
0042C036 83C4 10 add esp, 10
0042C039 8945 E4 mov dword ptr [ebp-1C], eax
0042C03C 8B5D E8 mov ebx, dword ptr [ebp-18]
0042C03F 85DB test ebx, ebx
0042C041 74 09 je short 0042C04C
0042C043 53 push ebx
0042C044 E8 76020100 call 0043C2BF
0042C049 83C4 04 add esp, 4
0042C04C 817D E4 F000000>cmp dword ptr [ebp-1C], 0F0
0042C053 0F8C 04000000 jl 0042C05D
0042C059 33C0 xor eax, eax
0042C05B EB 05 jmp short 0042C062
0042C05D B8 01000000 mov eax, 1
0042C062 85C0 test eax, eax
0042C064 EB 5E jmp short 0042C0C4 ; je 改 jmp
0042C066 90 nop
0042C067 90 nop
0042C068 90 nop
0042C069 90 nop
0042C06A 6A 00 push 0
0042C06C 6A 00 push 0
0042C06E 6A 00 push 0
0042C070 68 01030080 push 80000301
0042C075 6A 00 push 0
0042C077 68 00000000 push 0
0042C07C 68 04000080 push 80000004
0042C081 6A 00 push 0
0042C083 68 1E964000 push 0040961E
0042C088 68 03000000 push 3
0042C08D BB 00030000 mov ebx, 300
0042C092 E8 40020100 call 0043C2D7 ; 注册失败信息
0042C097 83C4 28 add esp, 28
0042C09A 8945 F8 mov dword ptr [ebp-8], eax
0042C09D 837D F8 00 cmp dword ptr [ebp-8], 0
0042C0A1 0F85 1D000000 jnz 0042C0C4
0042C0A7 6A 00 push 0
0042C0A9 68 6D934000 push 0040936D
0042C0AE 6A FF push -1
0042C0B0 6A 08 push 8
0042C0B2 68 07000116 push 16010007
0042C0B7 68 01000152 push 52010001
0042C0BC E8 28020100 call 0043C2E9
0042C0C1 83C4 18 add esp, 18
0042C0C4 6A FF push -1
0042C0C6 6A 08 push 8
0042C0C8 68 01010116 push 16010101
0042C0CD 68 01000152 push 52010001
0042C0D2 E8 0C020100 call 0043C2E3
0042C0D7 83C4 10 add esp, 10
0042C0DA 8945 FC mov dword ptr [ebp-4], eax ; 第一次出现序列号
0042C0DD 68 04000080 push 80000004
0042C0E2 6A 00 push 0
0042C0E4 8B45 FC mov eax, dword ptr [ebp-4]
0042C0E7 85C0 test eax, eax
0042C0E9 75 05 jnz short 0042C0F0
0042C0EB B8 6D934000 mov eax, 0040936D
0042C0F0 50 push eax
0042C0F1 68 01000000 push 1
0042C0F6 BB 98010000 mov ebx, 198
0042C0FB E8 D7010100 call 0043C2D7
0042C100 83C4 10 add esp, 10
0042C103 8945 F8 mov dword ptr [ebp-8], eax
0042C106 8B5D FC mov ebx, dword ptr [ebp-4]
0042C109 85DB test ebx, ebx
0042C10B 74 09 je short 0042C116
0042C10D 53 push ebx
0042C10E E8 AC010100 call 0043C2BF
0042C113 83C4 04 add esp, 4
0042C116 6A FF push -1
0042C118 6A 08 push 8
0042C11A 68 07000116 push 16010007
0042C11F 68 01000152 push 52010001
0042C124 E8 BA010100 call 0043C2E3
0042C129 83C4 10 add esp, 10
0042C12C 8945 F4 mov dword ptr [ebp-C], eax
0042C12F 68 04000080 push 80000004
0042C134 6A 00 push 0
0042C136 A1 F4700002 mov eax, dword ptr [20070F4]
0042C13B 85C0 test eax, eax ; ASCII 一长串貌似加密信息
0042C13D 75 05 jnz short 0042C144
0042C13F B8 6D934000 mov eax, 0040936D
0042C144 50 push eax
0042C145 68 04000080 push 80000004
0042C14A 6A 00 push 0
0042C14C A1 F0700002 mov eax, dword ptr [20070F0]
0042C151 85C0 test eax, eax
0042C153 75 05 jnz short 0042C15A
0042C155 B8 6D934000 mov eax, 0040936D
0042C15A 50 push eax
0042C15B 68 04000080 push 80000004
0042C160 6A 00 push 0
0042C162 8B45 F4 mov eax, dword ptr [ebp-C]
0042C165 85C0 test eax, eax
0042C167 75 05 jnz short 0042C16E
0042C169 B8 6D934000 mov eax, 0040936D
0042C16E 50 push eax
0042C16F 68 05000080 push 80000005
0042C174 6A 00 push 0
0042C176 8B45 F8 mov eax, dword ptr [ebp-8]
0042C179 85C0 test eax, eax
0042C17B 75 05 jnz short 0042C182
0042C17D B8 3E964000 mov eax, 0040963E
0042C182 50 push eax
0042C183 68 04000000 push 4
0042C188 BB 18000000 mov ebx, 18
0042C18D B8 01000000 mov eax, 1
0042C192 E8 58010100 call 0043C2EF
0042C197 83C4 34 add esp, 34
0042C19A 8945 F0 mov dword ptr [ebp-10], eax
0042C19D 8B5D F8 mov ebx, dword ptr [ebp-8]
0042C1A0 85DB test ebx, ebx
0042C1A2 74 09 je short 0042C1AD
0042C1A4 53 push ebx
0042C1A5 E8 15010100 call 0043C2BF
0042C1AA 83C4 04 add esp, 4
0042C1AD 8B5D F4 mov ebx, dword ptr [ebp-C]
0042C1B0 85DB test ebx, ebx
0042C1B2 74 09 je short 0042C1BD
0042C1B4 53 push ebx
0042C1B5 E8 05010100 call 0043C2BF
0042C1BA 83C4 04 add esp, 4
0042C1BD 837D F0 01 cmp dword ptr [ebp-10], 1
0042C1C1 0F84 12010000 je 0042C2D9 ; jnz 改 je
0042C1C7 6A FF push -1
0042C1C9 6A 08 push 8
0042C1CB 68 07000116 push 16010007
0042C1D0 68 01000152 push 52010001
0042C1D5 E8 09010100 call 0043C2E3
0042C1DA 83C4 10 add esp, 10
0042C1DD 8945 FC mov dword ptr [ebp-4], eax
0042C1E0 68 04000080 push 80000004
0042C1E5 6A 00 push 0
0042C1E7 8B45 FC mov eax, dword ptr [ebp-4]
0042C1EA 85C0 test eax, eax
0042C1EC 75 05 jnz short 0042C1F3
0042C1EE B8 6D934000 mov eax, 0040936D
0042C1F3 50 push eax
0042C1F4 68 01000000 push 1
0042C1F9 BB 98010000 mov ebx, 198
0042C1FE E8 D4000100 call 0043C2D7
0042C203 83C4 10 add esp, 10
0042C206 8945 F8 mov dword ptr [ebp-8], eax
0042C209 8B5D FC mov ebx, dword ptr [ebp-4]
0042C20C 85DB test ebx, ebx
0042C20E 74 09 je short 0042C219
0042C210 53 push ebx
0042C211 E8 A9000100 call 0043C2BF
0042C216 83C4 04 add esp, 4
0042C219 68 05000080 push 80000005
0042C21E 6A 00 push 0
0042C220 8B45 F8 mov eax, dword ptr [ebp-8]
0042C223 85C0 test eax, eax
0042C225 75 05 jnz short 0042C22C
0042C227 B8 3E964000 mov eax, 0040963E
0042C22C 50 push eax
0042C22D 68 04000080 push 80000004
0042C232 6A 00 push 0
0042C234 68 46964000 push 00409646 ; ASCII "SOFTWARE\Carnival"
0042C239 68 01030080 push 80000301
0042C23E 6A 00 push 0
0042C240 68 03000000 push 3
0042C245 68 03000000 push 3
0042C24A BB A4060000 mov ebx, 6A4
0042C24F E8 83000100 call 0043C2D7
0042C254 83C4 28 add esp, 28
0042C257 8B5D F8 mov ebx, dword ptr [ebp-8]
0042C25A 85DB test ebx, ebx
0042C25C 74 09 je short 0042C267
0042C25E 53 push ebx
0042C25F E8 5B000100 call 0043C2BF
0042C264 83C4 04 add esp, 4
0042C267 6A 00 push 0
0042C269 68 02000000 push 2
0042C26E 6A FF push -1
0042C270 6A 12 push 12
0042C272 68 00000106 push 6010000
0042C277 68 01000152 push 52010001
0042C27C E8 68000100 call 0043C2E9
0042C281 83C4 18 add esp, 18
0042C284 6A 00 push 0
0042C286 68 00000000 push 0
0042C28B 6A FF push -1
0042C28D 6A 05 push 5
0042C28F 68 00000106 push 6010000
0042C294 68 01000152 push 52010001
0042C299 E8 4B000100 call 0043C2E9
0042C29E 83C4 18 add esp, 18
0042C2A1 68 02000080 push 80000002
0042C2A6 6A 00 push 0
0042C2A8 68 01000000 push 1
0042C2AD 6A 00 push 0
0042C2AF 6A 00 push 0
0042C2B1 6A 00 push 0
0042C2B3 68 01000100 push 10001
0042C2B8 68 14010106 push 6010114
0042C2BD 68 15010152 push 52010115
0042C2C2 68 03000000 push 3
0042C2C7 BB 20030000 mov ebx, 320
0042C2CC E8 06000100 call 0043C2D7
0042C2D1 83C4 28 add esp, 28
0042C2D4 E9 0F000000 jmp 0042C2E8
0042C2D9 E8 D5000000 call 0042C3B3
0042C2DE 6A 00 push 0
0042C2E0 E8 C2FF0000 call 0043C2A7
0042C2E5 83C4 04 add esp, 4
0042C2E8 8BE5 mov esp, ebp
0042C2EA 5D pop ebp
42c27c有个CALL是CALL出主程序 但是一用程序功能程序就自己关了
估计是又检测了一次注册码
以上是代码 请高手指点
实在找不到加密的地方
最看不懂的地方 就是好多时候2个相同的寄存器对比不相等跳了
http://astevena.gbaopan.com/files/5a932f362e8e4483afe39b7aa6dd8d33.gbp
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)