首页
社区
课程
招聘
[旧帖] [求助]绘图软件,找注册码(讨论出结果,小弟会制作动画分享) 0.00雪花
发表于: 2008-7-25 12:07 7806

[旧帖] [求助]绘图软件,找注册码(讨论出结果,小弟会制作动画分享) 0.00雪花

2008-7-25 12:07
7806
小弟是个菜鸟,在学习如何找注册码。

这个软件是一个绘图软件,其实我已经在网上找到注册码了。

但是小弟想多学习,所以试着找出注册码。

若大家讨论出结果,小弟会制作动画,分享在这里,回馈大家的教导

并且给一些刚学找注册码的新手当作参考的资料。


此软件无加壳

Borland Delphi 4.0 - 5.0所写

OD载入,下bp MessageBoxA断(此软件会跳注册错误的注册框)

全速运行,按下一步,



按下同意



到了输入注册码的地方~

随意输入aaaaaaaaaaaaaaaaaaaaaa按下一步

od断了。

77D50702 >  8BFF            mov     edi, edi    ←断点下在这
77D50704    55              push    ebp
77D50705    8BEC            mov     ebp, esp
77D50707    833D BC14D777 0>cmp     dword ptr [77D714BC], 0
77D5070E    74 24           je      short 77D50734
77D50710    64:A1 18000000  mov     eax, dword ptr fs:[18]
77D50716    6A 00           push    0
77D50718    FF70 24         push    dword ptr [eax+24]
77D5071B    68 241BD777     push    77D71B24
77D50720    FF15 C412D177   call    dword ptr [<&KERNEL32.Interlocke>; kernel32.InterlockedCompareExchange
77D50726    85C0            test    eax, eax
77D50728    75 0A           jnz     short 77D50734
77D5072A    C705 201BD777 0>mov     dword ptr [77D71B20], 1
77D50734    6A 00           push    0
77D50736    FF75 14         push    dword ptr [ebp+14]
77D50739    FF75 10         push    dword ptr [ebp+10]
77D5073C    FF75 0C         push    dword ptr [ebp+C]
77D5073F    FF75 08         push    dword ptr [ebp+8]
77D50742    E8 2D000000     call    MessageBoxExA

取消断点,按下ALT+F9,回到软件按下错误提示的确定。

在回到od,找到端首,下断。

之后我就不会了....看了许多动画

还是不懂...

0059851C  /$  55            push    ebp                    ←端首(下断)
0059851D  |.  8BEC          mov     ebp, esp
0059851F  |.  83C4 E8       add     esp, -18
00598522  |.  53            push    ebx
00598523  |.  56            push    esi
00598524  |.  57            push    edi
00598525  |.  33DB          xor     ebx, ebx
00598527  |.  895D E8       mov     dword ptr [ebp-18], ebx
0059852A  |.  895D FC       mov     dword ptr [ebp-4], ebx
0059852D  |.  8BF1          mov     esi, ecx
0059852F  |.  8BDA          mov     ebx, edx
00598531  |.  8BF8          mov     edi, eax
00598533  |.  33C0          xor     eax, eax
00598535  |.  55            push    ebp
00598536  |.  68 E2855900   push    005985E2
0059853B  |.  64:FF30       push    dword ptr fs:[eax]
0059853E  |.  64:8920       mov     dword ptr fs:[eax], esp
00598541  |.  85DB          test    ebx, ebx
00598543  |.  75 07         jnz     short 0059854C
00598545  |.  E8 DEE5E6FF   call    <jmp.&user32.GetActiveWindow>    ; [GetActiveWindow
0059854A  |.  8BD8          mov     ebx, eax
0059854C  |>  85DB          test    ebx, ebx
0059854E  |.  75 18         jnz     short 00598568
00598550  |.  A1 949A6200   mov     eax, dword ptr [629A94]
00598555  |.  8338 00       cmp     dword ptr [eax], 0
00598558  |.  74 0E         je      short 00598568
0059855A  |.  A1 949A6200   mov     eax, dword ptr [629A94]
0059855F  |.  8B00          mov     eax, dword ptr [eax]
00598561  |.  E8 32AAEAFF   call    00442F98
00598566  |.  8BD8          mov     ebx, eax
00598568  |>  85DB          test    ebx, ebx
0059856A  |.  75 07         jnz     short 00598573
0059856C  |.  E8 17E6E6FF   call    <jmp.&user32.GetDesktopWindow>   ; [GetDesktopWindow
00598571  |.  8BD8          mov     ebx, eax
00598573  |>  85F6          test    esi, esi
00598575  |.  75 43         jnz     short 005985BA
00598577  |.  8D45 FC       lea     eax, dword ptr [ebp-4]
0059857A  |.  50            push    eax
0059857B  |.  8D55 E8       lea     edx, dword ptr [ebp-18]
0059857E  |.  A1 9CA46200   mov     eax, dword ptr [62A49C]
00598583  |.  E8 D8CEE6FF   call    00405460
00598588  |.  8B45 E8       mov     eax, dword ptr [ebp-18]          ; |
0059858B  |.  8945 EC       mov     dword ptr [ebp-14], eax          ; |
0059858E  |.  C645 F0 0B    mov     byte ptr [ebp-10], 0B            ; |
00598592  |.  A1 08976200   mov     eax, dword ptr [629708]          ; |
00598597  |.  8945 F4       mov     dword ptr [ebp-C], eax           ; |
0059859A  |.  C645 F8 0B    mov     byte ptr [ebp-8], 0B             ; |
0059859E  |.  8D55 EC       lea     edx, dword ptr [ebp-14]          ; |
005985A1  |.  B9 01000000   mov     ecx, 1                           ; |
005985A6  |.  B8 F8855900   mov     eax, 005985F8                    ; |ASCII "%s (%s)"
005985AB  |.  E8 6C0AE7FF   call    0040901C                         ; \oC45P.0040901C
005985B0  |.  8B45 FC       mov     eax, dword ptr [ebp-4]
005985B3  |.  E8 FCB9E6FF   call    00403FB4
005985B8  |.  8BF0          mov     esi, eax
005985BA  |>  6A 30         push    30                               ; /Style = MB_OK|MB_ICONEXCLAMATION|MB_APPLMODAL
005985BC  |.  56            push    esi                              ; |Title
005985BD  |.  57            push    edi                              ; |Text
005985BE  |.  53            push    ebx                              ; |hOwner
005985BF  |.  E8 BCE7E6FF   call    <jmp.&user32.MessageBoxA>        ; \MessageBoxA    ←错误提示

这是软件的下载网址→http://www.namipan.com/d/OC.rar/31cbcd4e7039bafa895140ed950b94e28979284cb2834400

先谢谢各位了。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (23)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
学习一下,等待楼下回答
2008-7-25 12:09
0
雪    币: 2362
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
绘图为什么用日本软件?
2008-7-25 12:16
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
你真以为你所谓的段首就是段首,放弃吧,这不是你现在可以对付的
2008-7-25 12:34
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
5
给你推
上去一点
2008-7-25 12:41
0
雪    币: 231
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
只有那段文章是日本的,可能原始软件是日本开发的。

又是日本的软件,更想突破他!!
2008-7-25 13:07
0
雪    币: 231
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
是喔...要放弃阿?

只是想多学习点...
2008-7-25 13:08
0
雪    币: 207
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8
麻烦 ,偶搞不定

判断在CALL内完成,
如果KEY对的话 返回MessageboxA 的參數才正确,
否则ID不对,不能跳出对话框。
2008-7-25 14:01
0
雪    币: 213
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
0059851C  /$  55            push    ebp                    ←端首(下断)
晕,这个只是弹出信息框调用地方哦!追码不在这个地方
2008-7-25 15:49
0
雪    币: 215
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
日语的,看不懂,麻烦……
2008-7-25 16:05
0
雪    币: 213
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
去注册框方法,不知有没有爆破成功,全日文看不懂
004DF541   .  807D FF 00    cmp     byte ptr [ebp-1], 0
004DF545      EB 3F         je     short 004DF586这个是关键跳转,改为JMP跳过注册框
004DF547   .  33C0          xor     eax, eax
004DF549   .  55            push    ebp
004DF54A   .  68 7FF54D00   push    004DF57F
004DF54F   .  64:FF30       push    dword ptr fs:[eax]
004DF552   .  64:8920       mov     dword ptr fs:[eax], esp
004DF555   .  8B45 F8       mov     eax, dword ptr [ebp-8]
004DF558   .  8B10          mov     edx, dword ptr [eax]
004DF55A   .  FF92 D8000000 call    dword ptr [edx+D8]   来到这个CALL就弹出注册框
004DF560   .  48            dec     eax
004DF561   .  0F9445 FF     sete    byte ptr [ebp-1]
004DF565   .  33C0          xor     eax, eax
2008-7-25 16:19
0
雪    币: 436
活跃值: (47)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
是日文版的啊。
多破解几个,扰乱他们的市场。
2008-7-25 17:23
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
13
小日本的东西,贴一下,大家连续,提示的最清晰了,还搞不定看自己

0048945D    8D40 00         lea     eax, dword ptr [eax]
00489460    53              push    ebx
00489461    56              push    esi
00489462    8BF0            mov     esi, eax
00489464    56              push    esi
00489465    E8 D4130000     call    0048A83E                         ; 开始了每段检测
0048946A    59              pop     ecx
0048946B    8BD8            mov     ebx, eax
0048946D    83FB FF         cmp     ebx, -1
00489470    74 20           je      short 00489492
00489472    8BC3            mov     eax, ebx
00489474    E8 1F000000     call    00489498
00489479    84C0            test    al, al
0048947B    74 07           je      short 00489484                   ; 这里不能跳
0048947D    56              push    esi
0048947E    E8 ED0C0000     call    0048A170
00489483    59              pop     ecx
00489484    56              push    esi
00489485    E8 F6120000     call    0048A780
0048948A    59              pop     ecx
0048948B    84C0            test    al, al
0048948D    75 03           jnz     short 00489492
0048948F    83CB FF         or      ebx, FFFFFFFF
00489492    8BC3            mov     eax, ebx
00489494    5E              pop     esi
00489495    5B              pop     ebx
00489496    C3              retn

___________________________________________________- call 0048a83e

0048A83E    8B4C24 04       mov     ecx, dword ptr [esp+4]     ; 把整段注册码地址送给 ECX
0048A842    B2 53           mov     dl, 53
0048A844    8A41 01         mov     al, byte ptr [ecx+1]       ; ECX+1 指向第二位注册码
0048A847    3C 34           cmp     al, 34
0048A849    75 0B           jnz     short 0048A856
0048A84B    3851 03         cmp     byte ptr [ecx+3], dl
0048A84E    75 06           jnz     short 0048A856
0048A850    B8 0D000000     mov     eax, 0D                    ;留言每处相等后送入 EAX 的值
0048A855    C3              retn
0048A856    3C 50           cmp     al, 50
0048A858    75 0C           jnz     short 0048A866
0048A85A    8079 03 34      cmp     byte ptr [ecx+3], 34
0048A85E    75 06           jnz     short 0048A866
0048A860    B8 0E000000     mov     eax, 0E
0048A865    C3              retn
0048A866    3C 45           cmp     al, 45
0048A868    75 0B           jnz     short 0048A875
0048A86A    3851 03         cmp     byte ptr [ecx+3], dl
0048A86D    75 06           jnz     short 0048A875
0048A86F    B8 0F000000     mov     eax, 0F
0048A874    C3              retn
0048A875    3C 50           cmp     al, 50
0048A877    75 0C           jnz     short 0048A885
0048A879    8079 03 45      cmp     byte ptr [ecx+3], 45
0048A87D    75 06           jnz     short 0048A885
0048A87F    B8 10000000     mov     eax, 10
0048A884    C3              retn
0048A885    3C 47           cmp     al, 47
0048A887    75 1C           jnz     short 0048A8A5
0048A889    8079 03 34      cmp     byte ptr [ecx+3], 34
0048A88D    75 06           jnz     short 0048A895
0048A88F    B8 11000000     mov     eax, 11
0048A894    C3              retn
0048A895    3C 47           cmp     al, 47
0048A897    75 0C           jnz     short 0048A8A5
0048A899    8079 03 50      cmp     byte ptr [ecx+3], 50
0048A89D    75 06           jnz     short 0048A8A5
0048A89F    B8 12000000     mov     eax, 12
0048A8A4    C3              retn

—————————————————————————————  CALL 00489498

00489498    83E8 0E         sub     eax, 0E                ; 刚才取出的那个送入 EAX 的值就是这里用处了
0048949B    74 0A           je      short 004894A7
0048949D    83E8 02         sub     eax, 2
004894A0    74 05           je      short 004894A7
004894A2    83E8 02         sub     eax, 2
004894A5    75 03           jnz     short 004894AA
004894A7    B0 01           mov     al, 1
004894A9    C3              retn

___________________________________________________________call 0048A170

0048A170    53              push    ebx
0048A171    56              push    esi
0048A172    57              push    edi
0048A173    8B7C24 10       mov     edi, dword ptr [esp+10]
0048A177    BE 04000000     mov     esi, 4
0048A17C    8D4F 0E         lea     ecx, dword ptr [edi+E]
0048A17F    8D57 15         lea     edx, dword ptr [edi+15]
0048A182    8A1A            mov     bl, byte ptr [edx]
0048A184    8A01            mov     al, byte ptr [ecx]
0048A186    8819            mov     byte ptr [ecx], bl
0048A188    8802            mov     byte ptr [edx], al          // 把这段注册码前后倒转了
0048A18A    41              inc     ecx
0048A18B    4A              dec     edx
0048A18C    4E              dec     esi
0048A18D  ^ 75 F3           jnz     short 0048A182
0048A18F    8BC7            mov     eax, edi                  
0048A191    5F              pop     edi
0048A192    5E              pop     esi
0048A193    5B              pop     ebx
0048A194    C3              retn
_______________________________________________________ CALL 0048A180

0048A780    56              push    esi
0048A781    8B7424 08       mov     esi, dword ptr [esp+8]
0048A785    B0 2D           mov     al, 2D            
0048A787    3846 08         cmp     byte ptr [esi+8], al       ;检查第 9 位是不是 -
0048A78A    75 54           jnz     short 0048A7E0
0048A78C    3846 0D         cmp     byte ptr [esi+D], al       ;检查第 14 位是不是 -
0048A78F    75 4F           jnz     short 0048A7E0
0048A791    0FBE06          movsx   eax, byte ptr [esi]
0048A794    50              push    eax                        ; 压入没字节
0048A795    E8 91FAFFFF     call    0048A22B
×××××××××××××××××××××××××××××××××

0048A22B    8B4424 04       mov     eax, dword ptr [esp+4]
0048A22F    83F8 41         cmp     eax, 41                    ; 必需是字母
0048A232    7C 12           jl      short 0048A246
0048A234    83F8 5A         cmp     eax, 5A                    ; 字符必需是大写
0048A237    7F 0D           jg      short 0048A246
0048A239    83F8 49         cmp     eax, 49                    ; 不能是 I
0048A23C    74 08           je      short 0048A246
0048A23E    83F8 4F         cmp     eax, 4F                    ; 不能是大写字母 O
0048A241    74 03           je      short 0048A246
0048A243    B0 01           mov     al, 1
0048A245    C3              retn
0048A246    32C0            xor     al, al                     ; 凡是和上面不同的就把你的 al 杀了
0048A248    C3              retn

×××××××××××××××××××××××××××××××××××
0048A79A    83C4 04         add     esp, 4
0048A79D    84C0            test    al, al
0048A79F    74 3F           je      short 0048A7E0
0048A7A1    0FBE4E 0E       movsx   ecx, byte ptr [esi+E]      ; 第三段
0048A7A5    51              push    ecx
0048A7A6    E8 80FAFFFF     call    0048A22B                  // 如果用 IDA 这里就可以给一个名字了,同上
0048A7AB    83C4 04         add     esp, 4
0048A7AE    84C0            test    al, al
0048A7B0    74 2E           je      short 0048A7E0
0048A7B2    0FBE56 13       movsx   edx, byte ptr [esi+13]     ; 最后倒数第三个
0048A7B6    52              push    edx
0048A7B7    E8 6FFAFFFF     call    0048A22B
0048A7BC    83C4 04         add     esp, 4
0048A7BF    84C0            test    al, al
0048A7C1    74 1D           je      short 0048A7E0
0048A7C3    56              push    esi
0048A7C4    E8 1B000000     call    0048A7E4
0048A7C9    0FBE4E 04       movsx   ecx, byte ptr [esi+4]
0048A7CD    25 FF000000     and     eax, 0FF
0048A7D2    83C4 04         add     esp, 4
0048A7D5    33D2            xor     edx, edx
0048A7D7    3BC8            cmp     ecx, eax
0048A7D9    0F94C2          sete    dl
0048A7DC    8AC2            mov     al, dl
0048A7DE    5E              pop     esi
0048A7DF    C3              retn

真的提不起劲写下去 ,当心的是   

0048A907    E8 2D000000     call    0048A939  进入比较的数值必须是  0X1C0

晕,搞我的注册码不难,但要说清楚是什么给大家看,感觉很长很长,没耐心了,大家按着上面

的地址跟下去,如果还搞不懂不要说我了
2008-7-25 18:50
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
14
补充一下,段首在这里

004E043C    55              push    ebp                              ; 这才是段首
004E043D    8BEC            mov     ebp, esp
004E043F    83C4 DC         add     esp, -24
004E0442    53              push    ebx
004E0443    56              push    esi
004E0444    57              push    edi
004E0445    33D2            xor     edx, edx
004E0447    8955 DC         mov     dword ptr [ebp-24], edx
004E044A    8955 E0         mov     dword ptr [ebp-20], edx
004E044D    8BD8            mov     ebx, eax
004E044F    33C0            xor     eax, eax
004E0451    55              push    ebp
004E0452    68 7C054E00     push    004E057C
004E0457    64:FF30         push    dword ptr fs:[eax]
004E045A    64:8920         mov     dword ptr fs:[eax], esp
004E045D    8D75 E4         lea     esi, dword ptr [ebp-1C]
004E0460    B9 18000000     mov     ecx, 18
004E0465    33D2            xor     edx, edx
004E0467    8BC6            mov     eax, esi
004E0469    E8 1ED8F7FF     call    0045DC8C
004E046E    8D55 E0         lea     edx, dword ptr [ebp-20]
004E0471    8B83 10030000   mov     eax, dword ptr [ebx+310]
004E0477    E8 24C9F5FF     call    0043CDA0                         ; 读出了假码
004E047C    8B45 E0         mov     eax, dword ptr [ebp-20]
004E047F    E8 6C39F2FF     call    00403DF0
004E0484    BA 16000000     mov     edx, 16
004E0489    E8 9ADFF3FF     call    0041E428
004E048E    50              push    eax
004E048F    8D55 DC         lea     edx, dword ptr [ebp-24]
004E0492    8B83 10030000   mov     eax, dword ptr [ebx+310]
004E0498    E8 03C9F5FF     call    0043CDA0                       
004E049D    8B45 DC         mov     eax, dword ptr [ebp-24]
004E04A0    E8 0F3BF2FF     call    00403FB4
004E04A5    8BD0            mov     edx, eax
004E04A7    8BC6            mov     eax, esi
004E04A9    59              pop     ecx
004E04AA    E8 35D8F7FF     call    0045DCE4
004E04AF    8BC6            mov     eax, esi
004E04B1    E8 AA8FFAFF     call    00489460  // 大虾们说的关键 CALL ,就是进入我上面运算的 CALL
004E04B6    8BF8            mov     edi, eax
004E04B8    B3 01           mov     bl, 1
004E04BA    8BC7            mov     eax, edi
004E04BC    83C0 F3         add     eax, -0D
004E04BF    83F8 06         cmp     eax, 6
004E04C2    77 22           ja      short 004E04E6                   ; 这里跳了,RP 问题
004E04C4    8A80 D1044E00   mov     al, byte ptr [eax+4E04D1]
004E04CA    FF2485 D8044E00 jmp     dword ptr [eax*4+4E04D8]
2008-7-25 19:01
0
雪    币: 231
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
小弟想学习一下,可否请高手指点

这个段首,您是如何判断的?

跟我自己以为的段首,差了十万八千里...

麻烦您了。
2008-7-25 19:15
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
16
ctrl+f          call xxxxxxxx          xxxxx 你以为的那个段首地址,看看有那里调用了这个地方
2008-7-25 20:08
0
雪    币: 231
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
请问,注册码在哪可以看到呢?

我是菜鸟,一直麻烦您,真的很感谢。
2008-7-25 23:20
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
18
太晚了,刚才那些只是刚下的时候的的粗略分析,破解它绝对不是问题,

我自己也有事要做,明天有空再写吧

还有这种注册检验是没法看到注册码的 (传说中的非明码 ),就是那种关系等式下推的比较

合付条件就注册成功
2008-7-26 00:10
0
雪    币: 231
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
您先忙~感谢您抽空来教导。

第一次学找注册码,就碰到这种难度的软件...

看来要多加努力了。
2008-7-26 00:54
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
小日本的软件,爆破它!!!
2008-7-26 09:43
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
21
好了,就这样吧,太繁琐了,这种注册分析累,没劲全部贴出了,这里给出很凌乱的思路
不保准你看不看的懂,光看精简后的分析就这么长,再把汇编代码一贴的话,   大家看起来更乱,我自己也在写一个小游戏,调试等功夫都累死我了,不更新了,有基础的人看见应该可以写穷举注册机了
                    下面是比较固定的值
     A  - A  -
                    

APD4DA2H-KAHC-UEB74NKC    标准注册码
     
——————————————————————————————

00489465  |.  E8 D4130000   call    0048A83E     这个 CALL 是检测 1_2 个字符

1_2 比较如果等于 4                 0xD
            等于 P          就赋予 0xE     如果出来后的 AL - 0XE ==0 就给 AL =1
            等于 E                 0xF
                 G                 0x11
_______________________________________________

0048947E  |.  E8 ED0C0000   call    0048A170

这个 CALL 是把注册码最后一段的字符 逆向了

————————————————————————————

检测第 9  14 个字符是不是 -

检测以下的字符必须是 大写字母 ,不能是  I  和  O

       1_1   J   8    
       3_8   Y   0x16 
       3_3   E   4

把上面这 3 个字符送入函数,和字典 ABCDEFGHJKLMNPQRSTUVWXYZL 比较第几个相等
就提取相等的当前循环累加 值 ,譬如 1_1 J 等于  8

 temp=( 3_8+3_3+1_1 )% 0x17

 if(temp==0x18)
 al=0x5A
 else
 al=code[temp]       // 以 temp 作为指针取出一个字节送入 al

 if(al==code[1_5])
 or      ebx, FFFFFFFF  // 死了
 else
 go go go

 004E04BC   .  83C0 F3      add     eax, -0D     // 刚才取出的值 - 0XD 后不能大于 6                
 004E04BF   .  83F8 06       cmp     eax, 6       // 不然有你好看

______________________________________________________________________

第二节开始  

2_2 如果大于 2 并小于 9       al = al-0x32 (al 为当前值 )

上面不等的话 那么这个字符 只能在 A--I   (0x41 - 0x49) 之间,适合的话 就 al=al-0x39

1_6  同样 只能在 A--I   (0x41 - 0x49) 之间,适合的话 就 al=al-0x39

1_6 - 0x39 =a       a<<=4;  
2_2 - 0x39 =b

a=a+b;
t=a;     // 这两个数相加后必须是 0x8A

a%=0x1D;
if(a==0x20)
al=0x5A;

al=p[a];   // a 作为指针 取出 ABCDEFGHJKLMNPQRSTUVWXYZL 中对应的字母

if(al==code[3_6])   // 没逆向前

t+=0x138;       t 必须等于 0x1C0 

else

回家
_________________________________________ 上面问题解决了

2_3 - 0x39(0x39) = a      a 出来后的结果下面还有左移 4 次后相加 b 后 % 0x13 后
                                                                        EDX==0 

3_4 - 0x32(0x39) = b      b 可以随意                       孩子你成功了,恭喜

2_3+3_4 = c and 0x8000000F and 0xF = D

if (d==code[1-8])

if(((a<<4)+b) % 0x13==0)

                                      GoodJopj
上传的附件:
2008-7-26 12:54
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
22
膜拜 Orz
2008-7-26 13:19
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
我做下学习学习
2008-7-26 13:25
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
yingyue老师真是高手
2008-7-26 13:25
0
游客
登录 | 注册 方可回帖
返回
//