yuanren 发表于 2008-2-27 21:49:07

新手写破文请大家指教

【破文标题】新手写破文请大家指教
【破文作者】yuanren
【作者主页】
【破解工具】PEiD/ od/AspackDie 1.41
【破解平台】xp2
【软件名称】中华灯谜 V2007 Build 06.15
【软件大小】710 KB
【原版下载】http://www.skycn.com/soft/6062.html
【保护方式】注册码
〖中华灯谜〗软件是目前国产最好的灯谜软件,软件受到数十家刊物的特别撰文推荐。

    软件中集成的灯谜类别齐全,灯谜条数可能是一个足以令你目瞪口呆的数字。

    软件支持灯谜的模糊搜索、各方式排序、随时添加、修改、删除等,使用简单,功能强大。

    软件支持批量导入功能,随时添加更加方便。

    软件绿色、环保、可完全卸载,随时升级。
   
    未注册版,不显视答案

【破解过程】新手第一次写破文,高手们勿笑,

第一步:PEID查壳,ASPack 2.12 -> 。AspackDie解决 脱壳文件自动保存为unpacked。

尝试运行程序,弹出注册窗口,输入假码,提示:注册码错误,请重新输入!好的就从这里下手。

第二步:OD载入脱壳文件,查字符串,"注册码错误,请重新输入"!

双击来到这里:0054D32F|>B8 68D45400   MOV EAX,aaa.0054D468;注册码错误,请重新输入!

向上找到段开始处:0054D16C/.55   PUSH EBP。F2下断,F9运行。在注册窗口输入假码,点确定

断在这里0054D16C/.55   PUSH EBP。F8向下走将看到以下:

0054D16C/.55            PUSH EBP
0054D16D|.8BEC          MOV EBP,ESP
0054D16F|.B9 16000000   MOV ECX,16
0054D174|>6A 00         /PUSH 0
0054D176|.6A 00         |PUSH 0
0054D178|.49            |DEC ECX
0054D179|.^ 75 F9         \JNZ SHORT aaa.0054D174
0054D17B|.51            PUSH ECX
0054D17C|.53            PUSH EBX
0054D17D|.56            PUSH ESI
0054D17E|.8BD8          MOV EBX,EAX
0054D180|.33C0          XOR EAX,EAX
0054D182|.55            PUSH EBP
0054D183|.68 BED35400   PUSH aaa.0054D3BE
0054D188|.64:FF30       PUSH DWORD PTR FS:
0054D18B|.64:8920       MOV DWORD PTR FS:,ESP
0054D18E|.68 80000000   PUSH 80                                  ; /BufSize = 80 (128.)
0054D193|.8D85 7BFFFFFF LEA EAX,DWORD PTR SS:            ; |
0054D199|.50            PUSH EAX                                 ; |Buffer
0054D19A|.E8 45A1EBFF   CALL <JMP.&kernel32.GetSystemDirectoryA> ; \GetSystemDirectoryA
0054D19F|.8D45 FC       LEA EAX,DWORD PTR SS:
0054D1A2|.8D95 7BFFFFFF LEA EDX,DWORD PTR SS:
0054D1A8|.B9 81000000   MOV ECX,81
0054D1AD|.E8 667AEBFF   CALL aaa.00404C18
0054D1B2|.8D95 74FFFFFF LEA EDX,DWORD PTR SS:
0054D1B8|.8B83 60040000 MOV EAX,DWORD PTR DS:
0054D1BE|.E8 D5A9EFFF   CALL aaa.00447B98
0054D1C3|.83BD 74FFFFFF>CMP DWORD PTR SS:,0    》》》 这里比较是否有注册码
0054D1CA|.74 1A         JE SHORT aaa.0054D1E6
0054D1CC|.8D95 70FFFFFF LEA EDX,DWORD PTR SS:
0054D1D2|.8B83 5C040000 MOV EAX,DWORD PTR DS:
0054D1D8|.E8 BBA9EFFF   CALL aaa.00447B98
0054D1DD|.83BD 70FFFFFF>CMP DWORD PTR SS:,0       》》》这里比较是否有定单号
0054D1E4|.75 0F         JNZ SHORT aaa.0054D1F5
0054D1E6|>B8 D4D35400   MOV EAX,aaa.0054D3D4                     ;注册信息没有填写齐全
0054D1EB|.E8 9C3BEFFF   CALL aaa.00440D8C
0054D1F0|.E9 51010000   JMP aaa.0054D346
0054D1F5|>8D95 6CFFFFFF LEA EDX,DWORD PTR SS:
0054D1FB|.8B83 60040000 MOV EAX,DWORD PTR DS:
0054D201|.E8 92A9EFFF   CALL aaa.00447B98
0054D206|.8B85 6CFFFFFF MOV EAX,DWORD PTR SS:
0054D20C|.50            PUSH EAX
0054D20D|.8D95 64FFFFFF LEA EDX,DWORD PTR SS:
0054D213|.8B83 5C040000 MOV EAX,DWORD PTR DS:
0054D219|.E8 7AA9EFFF   CALL aaa.00447B98
0054D21E|.8B85 64FFFFFF MOV EAX,DWORD PTR SS:
0054D224|.E8 EBC3EBFF   CALL aaa.00409614
0054D229|.B9 44000000   MOV ECX,44
0054D22E|.99            CDQ
0054D22F|.F7F9          IDIV ECX
0054D231|.8BC2          MOV EAX,EDX
0054D233|.8D95 68FFFFFF LEA EDX,DWORD PTR SS:
0054D239|.E8 72C3EBFF   CALL aaa.004095B0
0054D23E|.8D85 68FFFFFF LEA EAX,DWORD PTR SS:
0054D244|.50            PUSH EAX
0054D245|.8D95 58FFFFFF LEA EDX,DWORD PTR SS:
0054D24B|.8B83 5C040000 MOV EAX,DWORD PTR DS:
0054D251|.E8 42A9EFFF   CALL aaa.00447B98
0054D256|.8B85 58FFFFFF MOV EAX,DWORD PTR SS:
0054D25C|.E8 B3C3EBFF   CALL aaa.00409614
0054D261|.8D95 5CFFFFFF LEA EDX,DWORD PTR SS:
0054D267|.E8 30DBFFFF   CALL aaa.0054AD9C
0054D26C|.8B85 5CFFFFFF MOV EAX,DWORD PTR SS:
0054D272|.E8 9DC3EBFF   CALL aaa.00409614
0054D277|.8D95 60FFFFFF LEA EDX,DWORD PTR SS:
0054D27D|.E8 FADBFFFF   CALL aaa.0054AE7C
0054D282|.8B95 60FFFFFF MOV EDX,DWORD PTR SS:
0054D288|.58            POP EAX
0054D289|.E8 E279EBFF   CALL aaa.00404C70                  》》》》这里应是计算出真码
0054D28E|.8B95 68FFFFFF MOV EDX,DWORD PTR SS:
0054D294|.58            POP EAX
0054D295|.E8 127BEBFF   CALL aaa.00404DAC                》》》》这里比较注册码
0054D29A|.0F85 8F000000 JNZ aaa.0054D32F               》》》》》》这里是关件跳转
0054D2A0|.B8 F4D35400   MOV EAX,aaa.0054D3F4               ;注册成功,谢谢你的注册!
0054D2A5|.E8 E23AEFFF   CALL aaa.00440D8C
0054D2AA|.BA 18D45400   MOV EDX,aaa.0054D418                     ;本软件已注册
0054D2AF|.8B83 58040000 MOV EAX,DWORD PTR DS:
0054D2B5|.E8 0EA9EFFF   CALL aaa.00447BC8
0054D2BA|.8D85 54FFFFFF LEA EAX,DWORD PTR SS:
0054D2C0|.B9 30D45400   MOV ECX,aaa.0054D430                     ;\C0n.dll
0054D2C5|.8B55 FC       MOV EDX,DWORD PTR SS:
0054D2C8|.E8 E779EBFF   CALL aaa.00404CB4
0054D2CD|.8B8D 54FFFFFF MOV ECX,DWORD PTR SS:
0054D2D3|.B2 01         MOV DL,1
0054D2D5|.A1 44E24600   MOV EAX,DWORD PTR DS:
0054D2DA|.E8 1510F2FF   CALL aaa.0046E2F4
0054D2DF|.8BF0          MOV ESI,EAX
0054D2E1|.8D95 50FFFFFF LEA EDX,DWORD PTR SS:
0054D2E7|.8B83 5C040000 MOV EAX,DWORD PTR DS:
0054D2ED|.E8 A6A8EFFF   CALL aaa.00447B98
0054D2F2|.8B85 50FFFFFF MOV EAX,DWORD PTR SS:
0054D2F8|.50            PUSH EAX
0054D2F9|.B9 44D45400   MOV ECX,aaa.0054D444                     ;sepop
0054D2FE|.BA 54D45400   MOV EDX,aaa.0054D454                     ;syssetup
0054D303|.8BC6          MOV EAX,ESI
0054D305|.8B18          MOV EBX,DWORD PTR DS:
0054D307|.FF53 04       CALL DWORD PTR DS:
0054D30A|.8D85 4CFFFFFF LEA EAX,DWORD PTR SS:
0054D310|.B9 30D45400   MOV ECX,aaa.0054D430                     ;\C0n.dll
0054D315|.8B55 FC       MOV EDX,DWORD PTR SS:
0054D318|.E8 9779EBFF   CALL aaa.00404CB4
0054D31D|.8B85 4CFFFFFF MOV EAX,DWORD PTR SS:
0054D323|.BA 02000000   MOV EDX,2
0054D328|.E8 13C6EBFF   CALL aaa.00409940
0054D32D|.EB 17         JMP SHORT aaa.0054D346
0054D32F|> \B8 68D45400   MOV EAX,aaa.0054D468               ;注册码错误,请重新输入!
0054D334|.E8 533AEFFF   CALL aaa.00440D8C
0054D339|.33D2          XOR EDX,EDX
0054D33B|.8B83 60040000 MOV EAX,DWORD PTR DS:
0054D341|.E8 82A8EFFF   CALL aaa.00447BC8

0054D295|.E8 127BEBFF   CALL aaa.00404DAC    这里可以看见真假注册码,做注册机

我对算法看不懂,还望那位高手将算法写出让我这菜鸟学习学习

好,破解到此因我是新手又是第一次写破文。还望大家多指教指教

【破解总结】感谢PYG,提供了一个这么好的学习环境,希望PYG越办越好,也希望自己能随着PYG的发展
而提升自己!
------------------------------------------------------------------------
【版权声明】勿做商业用途, 在此感谢!

magic659117852 发表于 2008-2-27 22:23:29

/:001支持一下原创心得.....

wiliiwin 发表于 2008-2-27 23:25:43

很不错,支持LZ,再接再厉 哈哈

bbitt 发表于 2008-2-27 23:45:47

谢谢多少对我有点启发

天颖 发表于 2008-2-28 02:21:43

楼主  希望以后多写教程~!   哈~!

zhangqqshuo 发表于 2008-2-28 08:10:45

:loveliness: 真的很不错 努力

zhangqqshuo 发表于 2008-2-28 08:36:56

怎么提示 注册成功后 还是写着未注册呢??

rchedu 发表于 2008-2-28 09:41:48

呵 支持~!  以后多发点文章~!

ryhapple 发表于 2008-2-28 09:49:15

新手都会破解啊   我连新手都算不上了   郁闷

yuanren 发表于 2008-2-28 20:51:47

原帖由 zhangqqshuo 于 2008-2-28 08:36 发表 https://www.chinapyg.com/images/common/back.gif
怎么提示 注册成功后 还是写着未注册呢??
你可能看见的是刚打开软件的画面,你点注册按钮后可以看见 本软件已注册的提示.
页: [1] 2
查看完整版本: 新手写破文请大家指教