能力值:
( LV4,RANK:50 )
|
-
-
2 楼
00401406 > \E8 3AFFFFFF call 00401345 ;计算用户名 0040140B . E8 78FDFFFF call 00401188 ;计算注册码 跟进查看到下面的代码 00401410 . 6A 00 push 0 ; /pThreadId = NULL 00401412 . 6A 00 push 0 ; |CreationFlags = 0 00401414 . 6A 00 push 0 ; |pThreadParm = NULL 00401416 . 68 00104000 push 00401000 ; |ThreadFunction = CM.00401000 0040141B . 6A 00 push 0 ; |StackSize = 0 0040141D . 6A 00 push 0 ; |pSecurity = NULL 0040141F . E8 E8020000 call <jmp.&kernel32.CreateThread> ; \CreateThread 00401424 . A3 2E304000 mov dword ptr [40302E], eax 00401429 . 6A 00 push 0 ; /pThreadId = NULL 0040142B . 6A 00 push 0 ; |CreationFlags = 0 0040142D . 6A 00 push 0 ; |pThreadParm = NULL 0040142F . 68 C4104000 push 004010C4 ; |ThreadFunction = CM.004010C4 00401434 . 6A 00 push 0 ; |StackSize = 0 00401436 . 6A 00 push 0 ; |pSecurity = NULL 00401438 . E8 CF020000 call <jmp.&kernel32.CreateThread> ; \CreateThread 0040143D . A3 32304000 mov dword ptr [403032], eax 00401442 . 6A FF push -1 ; /Timeout = INFINITE 00401444 . FF35 2E304000 push dword ptr [40302E] ; |hObject = NULL 0040144A . E8 D5020000 call <jmp.&kernel32.WaitForSingleOb>; \WaitForSingleObject 0040144F . 6A FF push -1 ; /Timeout = INFINITE 00401451 . FF35 32304000 push dword ptr [403032] ; |hObject = NULL 00401457 . E8 C8020000 call <jmp.&kernel32.WaitForSingleOb>; \WaitForSingleObject 0040145C . A1 4B304000 mov eax, dword ptr [40304B] 00401461 . 8B0D 4F304000 mov ecx, dword ptr [40304F] 00401467 . 8B15 53304000 mov edx, dword ptr [403053] 0040146D . A3 36304000 mov dword ptr [403036], eax 00401472 . 890D 3A304000 mov dword ptr [40303A], ecx 00401478 . 8915 3E304000 mov dword ptr [40303E], edx 0040147E . A1 57304000 mov eax, dword ptr [403057] 00401483 . A3 42304000 mov dword ptr [403042], eax 00401488 . A1 4B304000 mov eax, dword ptr [40304B] 0040148D . 66:8B0D 4F304>mov cx, word ptr [40304F] 00401494 . 0BC0 or eax, eax 00401496 75 25 jnz short 004014BD ;nop 00401498 66:0BC9 or cx, cx 0040149B 75 07 jnz short 004014A4 ;nop两个跳转nop后爆破。。。。。 0040149D . E8 7EFEFFFF call 00401320
计算注册码
00401188 /$ 53 push ebx 00401189 |. 57 push edi 0040118A |. 56 push esi 0040118B |. B9 00000000 mov ecx, 0 00401190 |. EB 2C jmp short 004011BE 00401192 |> 80B9 4B304000>/cmp byte ptr [ecx+40304B], 3A 00401199 |. 73 09 |jnb short 004011A4 0040119B |. 80A9 4B304000>|sub byte ptr [ecx+40304B], 30 004011A2 |. EB 19 |jmp short 004011BD 004011A4 |> 80B9 4B304000>|cmp byte ptr [ecx+40304B], 5D 004011AB |. 73 09 |jnb short 004011B6 004011AD |. 80A9 4B304000>|sub byte ptr [ecx+40304B], 37 004011B4 |. EB 07 |jmp short 004011BD 004011B6 |> 80A9 4B304000>|sub byte ptr [ecx+40304B], 3B 004011BD |> 41 |inc ecx 004011BE |> 83F9 14 cmp ecx, 14 004011C1 |.^ 72 CF \jb short 00401192 004011C3 |. B8 00000000 mov eax, 0 004011C8 |. 0205 4B304000 add al, byte ptr [40304B] 004011CE |. C1E0 06 shl eax, 6 004011D1 |. 0205 4C304000 add al, byte ptr [40304C] 004011D7 |. C1E0 06 shl eax, 6 004011DA |. 0205 4D304000 add al, byte ptr [40304D] 004011E0 |. C1E0 06 shl eax, 6 004011E3 |. 0205 4E304000 add al, byte ptr [40304E] 004011E9 |. A2 AF304000 mov byte ptr [4030AF], al 004011EE |. 8825 AE304000 mov byte ptr [4030AE], ah 004011F4 |. C1E8 10 shr eax, 10 004011F7 |. A2 AD304000 mov byte ptr [4030AD], al 004011FC |. B8 00000000 mov eax, 0 00401201 |. 0205 4F304000 add al, byte ptr [40304F] 00401207 |. C1E0 06 shl eax, 6 0040120A |. 0205 50304000 add al, byte ptr [403050] 00401210 |. C1E0 06 shl eax, 6 00401213 |. 0205 51304000 add al, byte ptr [403051] 00401219 |. C1E0 06 shl eax, 6 0040121C |. 0205 52304000 add al, byte ptr [403052] 00401222 |. A2 B2304000 mov byte ptr [4030B2], al 00401227 |. 8825 B1304000 mov byte ptr [4030B1], ah 0040122D |. C1E8 10 shr eax, 10 00401230 |. A2 B0304000 mov byte ptr [4030B0], al 00401235 |. B8 00000000 mov eax, 0 0040123A |. 0205 53304000 add al, byte ptr [403053] 00401240 |. C1E0 06 shl eax, 6 00401243 |. 0205 54304000 add al, byte ptr [403054] 00401249 |. C1E0 06 shl eax, 6 0040124C |. 0205 55304000 add al, byte ptr [403055] 00401252 |. C1E0 06 shl eax, 6 00401255 |. 0205 56304000 add al, byte ptr [403056] 0040125B |. A2 B5304000 mov byte ptr [4030B5], al 00401260 |. 8825 B4304000 mov byte ptr [4030B4], ah 00401266 |. C1E8 10 shr eax, 10 00401269 |. A2 B3304000 mov byte ptr [4030B3], al 0040126E |. B8 00000000 mov eax, 0 00401273 |. 0205 57304000 add al, byte ptr [403057] 00401279 |. C1E0 06 shl eax, 6 0040127C |. 0205 58304000 add al, byte ptr [403058] 00401282 |. C1E0 06 shl eax, 6 00401285 |. 0205 59304000 add al, byte ptr [403059] 0040128B |. C1E0 06 shl eax, 6 0040128E |. 0205 5A304000 add al, byte ptr [40305A] 00401294 |. A2 B8304000 mov byte ptr [4030B8], al 00401299 |. 8825 B7304000 mov byte ptr [4030B7], ah 0040129F |. C1E8 10 shr eax, 10 004012A2 |. A2 B6304000 mov byte ptr [4030B6], al 004012A7 |. B8 00000000 mov eax, 0 004012AC |. 0205 5B304000 add al, byte ptr [40305B] 004012B2 |. C1E0 06 shl eax, 6 004012B5 |. 0205 5C304000 add al, byte ptr [40305C] 004012BB |. C1E0 06 shl eax, 6 004012BE |. 0205 5D304000 add al, byte ptr [40305D] 004012C4 |. C1E0 06 shl eax, 6 004012C7 |. 0205 5E304000 add al, byte ptr [40305E] 004012CD |. A2 BB304000 mov byte ptr [4030BB], al 004012D2 |. 8825 BA304000 mov byte ptr [4030BA], ah 004012D8 |. C1E8 10 shr eax, 10 004012DB |. A2 B9304000 mov byte ptr [4030B9], al 004012E0 |. B9 00000000 mov ecx, 0 004012E5 |. EB 0D jmp short 004012F4 004012E7 |> 8A81 AD304000 /mov al, byte ptr [ecx+4030AD] ;转移注册码,循环出注册码 004012ED |. 8881 4B304000 |mov byte ptr [ecx+40304B], al 004012F3 |. 41 |inc ecx 004012F4 |> 83F9 10 cmp ecx, 10 004012F7 |.^ 72 EE \jb short 004012E7 004012F9 |. C605 5A304000>mov byte ptr [40305A], 0 00401300 |. C605 5B304000>mov byte ptr [40305B], 0 00401307 |. C605 5C304000>mov byte ptr [40305C], 0 0040130E |. C605 5D304000>mov byte ptr [40305D], 0 00401315 |. C605 5E304000>mov byte ptr [40305E], 0 0040131C |. 5E pop esi 0040131D |. 5F pop edi 0040131E |. 5B pop ebx 0040131F \. C3 retn
得出的asc 应该就是注册码
4D 20 C4 14 61 C8 24 34 D0 4D 34 D0 4D 34 D0
|
能力值:
( LV4,RANK:40 )
|
-
-
5 楼
keheng用静态分析的吧。爆的地方对。但有点小手脚,爆了是乱码。
算序列号的地方不对。那个函数是序列号初始化而已。把字符串数据转成内存数据(字符串以外的)。类似base64.
|
能力值:
( LV4,RANK:40 )
|
-
-
6 楼
我试了好几次都不行。请教一下如何设置啊?
我用跟踪了一下。好像08给程序加的入口函数。就是main函数之前初始化的那段代码调用的是msvcr90.dll的函数.但是我把msvcr90.dll拷贝到目标机器还是不行。可能msvcr90.dll的初始化代码要net支持.好象是.
|
能力值:
( LV4,RANK:40 )
|
-
-
8 楼
vs2008?
怎么设置啊。我建的一个空项目 一个空main.出来的exe拿到没装net的xp机器上就运行不了.vista可以(自带net).
我换一个版问吧。跑题了。呵呵
|
能力值:
( LV15,RANK:670 )
|
-
-
9 楼
菜单上 项目 -> xx属性 -> 配置属性 -> c/c++ -> 代码生成 -> 运行时库 选 多线程(/MT)或者 多线程调试(/MTd)这样就可以脱离VS 2008的运行库了
|
能力值:
(RANK:130 )
|
-
-
12 楼
不好意思,今天才看见,就用9楼的方法就行了。如果用了mfc还需要将mfc改为静态链接。
|
能力值:
( LV3,RANK:20 )
|
-
-
17 楼
绕来绕去的..好像断在getdlgtext上会无限wait ..
|