lqiulu 发表于 2007-12-12 10:43:58

光盘刻录大师 v3.0.2.104破解

【文章标题】: 光盘刻录大师 v3.0.2.104破解
【文章作者】: lqiulu[游弋]
【作者邮箱】: [email protected]
【作者主页】:
【作者QQ号】: 530204294
【软件名称】: 光盘刻录大师 v3.0.2.104
【软件大小】: 13.9m
【下载地址】: http://www.pepsky.com/cns/index.asp
【加壳方式】: 无
【保护方式】: 注册码,NAG
【编写语言】: delphi7
【使用工具】: peid,ODICE
【操作平台】: WINXP
【软件介绍】: 刻录数据CD/DVD、擦除光盘、光盘与光驱信息、复制光
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
此软件有NAG提示注册。


主程序破解:通过F12暂停,堆栈查找的办法查到


调用堆栈
地址       堆栈       程序过程 / 参数                     调用来自                      结构

0012FB7C   77D19418   包含 ntdll.KiFastSystemCallRet      USER32.77D19416               0012FBAC
0012FB80   004681DA   <JMP.&user32.WaitMessage>             PepSky.004681D5               0012FBAC
0012FBB0   00467690   ? PepSky.004680A8                     PepSky.0046768B               0012FBAC
0012FBD4   00463E58   PepSky.00467674                     PepSky.00463E53               0012FC30

点击PepSky.00463E53处来到

00463E4E|> /A1 B8254C00   /MOV EAX,DWORD PTR DS:
00463E53|. |E8 1C380000   |CALL PepSky.00467674            //调用这里
00463E58|. |A1 B8254C00   |MOV EAX,DWORD PTR DS:
00463E5D|. |80B8 A4000000>|CMP BYTE PTR DS:,0
00463E64|. |74 0F         |JE SHORT PepSky.00463E75
00463E66|. |8B45 FC       |MOV EAX,DWORD PTR SS:
00463E69|. |C780 94020000>|MOV DWORD PTR DS:,2
00463E73|. |EB 14         |JMP SHORT PepSky.00463E89
00463E75|> |8B45 FC       |MOV EAX,DWORD PTR SS:
00463E78|. |83B8 94020000>|CMP DWORD PTR DS:,0
00463E7F|. |74 08         |JE SHORT PepSky.00463E89
00463E81|. |8B45 FC       |MOV EAX,DWORD PTR SS:
00463E84|. |E8 B3FCFFFF   |CALL PepSky.00463B3C
00463E89|> |8B45 FC       |MOV EAX,DWORD PTR SS:
00463E8C|. |8B80 94020000 |MOV EAX,DWORD PTR DS:
00463E92|. |85C0          |TEST EAX,EAX
00463E94|.^\74 B8         \JE SHORT PepSky.00463E4E

向上段首下断

00463CCC/.55            PUSH EBP               ;(初始 cpu 选择)此处F2下断
00463CCD|.8BEC          MOV EBP,ESP
00463CCF|.83C4 E0       ADD ESP,-20
00463CD2|.53            PUSH EBX
00463CD3|.56            PUSH ESI
00463CD4|.33D2          XOR EDX,EDX
00463CD6|.8955 E0       MOV DWORD PTR SS:,EDX
00463CD9|.8945 FC       MOV DWORD PTR SS:,EAX
00463CDC|.33C0          XOR EAX,EAX
00463CDE|.55            PUSH EBP
00463CDF|.68 BE3F4600   PUSH PepSky.00463FBE
00463CE4|.64:FF30       PUSH DWORD PTR FS:
00463CE7|.64:8920       MOV DWORD PTR FS:,ESP
00463CEA|.E8 2550FEFF   CALL PepSky.00448D14
00463CEF|.8B45 FC       MOV EAX,DWORD PTR SS:


重新运行断下,查找字符串

发现:

       <光盘刻录大师 3.0>

       软件试用期为15天,你已经试用了a%天,还可使用b%天。
在软件试用期内对软件功能有如下限制:                //这就是NAG提示的东西

      下面还有:
      光盘刻录大师 3.0 (试用版)
      光盘刻录大师 3.0

双击 <光盘刻录大师 3.0> 来到   004AE028|.BA DCE54A00   MOV EDX,PepSky.004AE5DC    ;



004ADFB4/$55            PUSH EBP
004ADFB5|.8BEC          MOV EBP,ESP
004ADFB7|.83C4 F4       ADD ESP,-0C
004ADFBA|.53            PUSH EBX
004ADFBB|.56            PUSH ESI
004ADFBC|.57            PUSH EDI
004ADFBD|.33DB          XOR EBX,EBX
004ADFBF|.895D FC       MOV DWORD PTR SS:,EBX
004ADFC2|.8BF1          MOV ESI,ECX                      //这里看到是ECX给关键的ESI赋值,且前面ecx的值没有变。
004ADFC4|.8955 F4       MOV DWORD PTR SS:,EDX
004ADFC7|.8945 F8       MOV DWORD PTR SS:,EAX
004ADFCA|.33C0          XOR EAX,EAX
004ADFCC|.55            PUSH EBP
004ADFCD|.68 A0E54A00   PUSH PepSky.004AE5A0
004ADFD2|.64:FF30       PUSH DWORD PTR FS:
004ADFD5|.64:8920       MOV DWORD PTR FS:,ESP
004ADFD8|.803D 99754D00>CMP BYTE PTR DS:,1
004ADFDF|.0F84 A5050000 JE PepSky.004AE58A
004ADFE5|.A1 7CE34B00   MOV EAX,DWORD PTR DS:
004ADFEA|.8B00          MOV EAX,DWORD PTR DS:

.。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
004AE00C|.A1 6CA04100   MOV EAX,DWORD PTR DS:
004AE011|.E8 725BF5FF   CALL PepSky.00403B88
004AE016|.8BF8          MOV EDI,EAX
004AE018|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE01B|.BA B8E54A00   MOV EDX,PepSky.004AE5B8                  ;<pepsky burning studio 3.0>
004AE020|.E8 2B6BF5FF   CALL PepSky.00404B50
004AE025|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE028|.BA DCE54A00   MOV EDX,PepSky.004AE5DC                  ;<光盘刻录大师 3.0>//来到这里,往上看
004AE02D|.E8 1E6BF5FF   CALL PepSky.00404B50
004AE032|.833D 90754D00>CMP DWORD PTR DS:,1             //这里是关键   DS:地址内存数据不为1就跳过NAG到004AE0CC。
004AE039|.0F85 8D000000 JNZ PepSky.004AE0CC
004AE03F|.85F6          TEST ESI,ESI                            // DS:地址内存数据为1时,就查ESI是否有值,有值就跳过NAG。
004AE041|.0F85 85000000 JNZ PepSky.004AE0CC
004AE047|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE04A|.BA DCE54A00   MOV EDX,PepSky.004AE5DC                  ;<光盘刻录大师 3.0>
004AE04F|.E8 FC6AF5FF   CALL PepSky.00404B50
004AE054|.BA F8E54A00   MOV EDX,PepSky.004AE5F8                  ;软件试用期为15天,你已经试用了a%天,还可使用b%天。在软件试用期内对软件功能有如下限制:
004AE059|.8BC3          MOV EAX,EBX
004AE05B|.8B08          MOV ECX,DWORD PTR DS:
004AE05D|.FF51 38       CALL DWORD PTR DS:
004AE060|.BA 58E64A00   MOV EDX,PepSky.004AE658                  ;    1: 光盘复制 -- 最多可复制2张光盘。
004AE065|.8BC3          MOV EAX,EBX
004AE067|.8B08          MOV ECX,DWORD PTR DS:
004AE069|.FF51 38       CALL DWORD PTR DS:
004AE06C|.BA 88E64A00   MOV EDX,PepSky.004AE688                  ;    2: 音乐cd转换为音乐文件 -- 仅仅能转换前4首歌曲。
004AE071|.8BC3          MOV EAX,EBX
004AE073|.8B08          MOV ECX,DWORD PTR DS:
004AE075|.FF51 38       CALL DWORD PTR DS:
004AE078|.BA C4E64A00   MOV EDX,PepSky.004AE6C4                  ;    3: 刻录音乐cd -- 最多可刻录2张光盘。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

004AE0CC|> \833D 90754D00>CMP DWORD PTR DS:,2            //这里是关键   DS:地址内存数据再与2比较,不是就跳过NAG到004AE122。
004AE0D3|.75 4D         JNZ SHORT PepSky.004AE122
004AE0D5|.85F6          TEST ESI,ESI                           // DS:地址内存数据为2时,就查ESI是否有值,有值就跳过NAG。
004AE0D7|.75 49         JNZ SHORT PepSky.004AE122
004AE0D9|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE0DC|.BA 64E84A00   MOV EDX,PepSky.004AE864                  ;<光盘复制专家 3.0>
004AE0E1|.E8 6A6AF5FF   CALL PepSky.00404B50
004AE0E6|.BA F8E54A00   MOV EDX,PepSky.004AE5F8                  ;软件试用期为15天,你已经试用了a%天,还可使用b%天。在软件试用期内对软件功能有如下限制:
004AE0EB|.8BC3          MOV EAX,EBX
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
004AE122|> \833D 90754D00>CMP DWORD PTR DS:,3               //这里是关键   DS:地址内存数据再与3比较
004AE129|.75 4D         JNZ SHORT PepSky.004AE178
004AE12B|.85F6          TEST ESI,ESI                              // DS:地址内存数据为3时,就查ESI是否有值,有值就跳过NAG。
004AE12D|.75 49         JNZ SHORT PepSky.004AE178
004AE12F|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE132|.BA F8E84A00   MOV EDX,PepSky.004AE8F8                  ;<音乐转换专家 3.0>
004AE137|.E8 146AF5FF   CALL PepSky.00404B50
004AE13C|.BA F8E54A00   MOV EDX,PepSky.004AE5F8                  ;软件试用期为15天,你已经试用了a%天,还可使用b%天。在软件试用期内对软件功能有如下限制:
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
004AE178|> \833D 90754D00>CMP DWORD PTR DS:,4             //这里是关键   DS:地址内存数据再与4比较
004AE17F|.75 41         JNZ SHORT PepSky.004AE1C2
004AE181|.85F6          TEST ESI,ESI
004AE183|.75 3D         JNZ SHORT PepSky.004AE1C2
004AE185|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE188|.BA B4E94A00   MOV EDX,PepSky.004AE9B4                  ;<虚拟光碟 3.0>
004AE18D|.E8 BE69F5FF   CALL PepSky.00404B50
004AE192|.BA F8E54A00   MOV EDX,PepSky.004AE5F8                  ;软件试用期为15天,你已经试用了a%天,还可使用b%天。在软件试用期内对软件功能有如下限制:
004AE1A3|.8BC3          MOV EAX,EBX
004AE1A5|.8B08          MOV ECX,DWORD PTR DS:
004AE1A7|.FF51 38       CALL DWORD PTR DS:
004AE1AA|.BA 04EA4A00   MOV EDX,PepSky.004AEA04                  ;    2: 虚拟光碟 -- 过期后将不允许加载加密游戏光盘生成的镜像文件。
004AE1AF|.8BC3          MOV EAX,EBX
004AE1B1|.8B08          MOV ECX,DWORD PTR DS:
004AE1B3|.FF51 38       CALL DWORD PTR DS:
004AE1B6|.BA 24E84A00   MOV EDX,PepSky.004AE824                  ;如果你想解除以上试用期与功能限制,请购买注册本软件。
004AE1BB|.8BC3          MOV EAX,EBX
004AE1BD|.8B08          MOV ECX,DWORD PTR DS:
004AE1BF|.FF51 38       CALL DWORD PTR DS:
.。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
004AE1C2|>83FE 01       CMP ESI,1                              //到这后开始来比较ESI的值与1比
004AE1C5|.75 31         JNZ SHORT PepSky.004AE1F8
004AE1C7|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE1CA|.BA 4CEA4A00   MOV EDX,PepSky.004AEA4C                  ;<复制光盘 3.0>
004AE1CF|.E8 7C69F5FF   CALL PepSky.00404B50
004AE1D4|.BA 64EA4A00   MOV EDX,PepSky.004AEA64                  ;1: 软件试用期为15天,你已经试用了a%天,还可使用b%天。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
004AE1F8|> \83FE 02       CMP ESI,2                           //ESI的值与2比
004AE1FB|.75 31         JNZ SHORT PepSky.004AE22E
004AE1FD|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE200|.BA 08EB4A00   MOV EDX,PepSky.004AEB08                  ;<音乐文件刻录为音乐cd 3.0>
004AE205|.E8 4669F5FF   CALL PepSky.00404B50
004AE20A|.BA 64EA4A00   MOV EDX,PepSky.004AEA64                  ;1: 软件试用期为15天,你已经试用了a%天,还可使用b%天。
004AE20F|.8BC3          MOV EAX,EBX
004AE211|.8B08          MOV ECX,DWORD PTR DS:
004AE213|.FF51 38       CALL DWORD PTR DS:
004AE216|.BA 2CEB4A00   MOV EDX,PepSky.004AEB2C                  ;2: 在软件试用期内刻录音乐cd功能最多可刻录2张光盘。你已经刻录了c%张光盘,还可刻录d%张光盘。
004AE21B|.8BC3          MOV EAX,EBX
004AE21D|.8B08          MOV ECX,DWORD PTR DS:
004AE21F|.FF51 38       CALL DWORD PTR DS:
004AE222|.BA 24E84A00   MOV EDX,PepSky.004AE824                  ;如果你想解除以上试用期与功能限制,请购买注册本软件。
004AE227|.8BC3          MOV EAX,EBX
004AE229|.8B08          MOV ECX,DWORD PTR DS:
004AE22B|.FF51 38       CALL DWORD PTR DS:
004AE22E|>83FE 03       CMP ESI,3                           //ESI的值与3比
004AE231|.75 31         JNZ SHORT PepSky.004AE264
004AE233|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE236|.BA 90EB4A00   MOV EDX,PepSky.004AEB90                  ;<音乐cd转音乐文件 3.0>
004AE23B|.E8 1069F5FF   CALL PepSky.00404B50
004AE240|.BA 64EA4A00   MOV EDX,PepSky.004AEA64                  ;1: 软件试用期为15天,你已经试用了a%天,还可使用b%天。
004AE245|.8BC3          MOV EAX,EBX
004AE247|.8B08          MOV ECX,DWORD PTR DS:
004AE249|.FF51 38       CALL DWORD PTR DS:
004AE24C|.BA B0EB4A00   MOV EDX,PepSky.004AEBB0                  ;2: 在软件试用期内音乐cd转音乐文件功能只能转换音乐cd的前4首乐曲。
004AE251|.8BC3          MOV EAX,EBX
004AE253|.8B08          MOV ECX,DWORD PTR DS:
004AE255|.FF51 38       CALL DWORD PTR DS:
004AE258|.BA 24E84A00   MOV EDX,PepSky.004AE824                  ;如果你想解除以上试用期与功能限制,请购买注册本软件。
004AE25D|.8BC3          MOV EAX,EBX
004AE25F|.8B08          MOV ECX,DWORD PTR DS:
004AE261|.FF51 38       CALL DWORD PTR DS:
004AE264|>83FE 04       CMP ESI,4                            //ESI的值与4比
004AE267|.75 31         JNZ SHORT PepSky.004AE29A
004AE269|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE26C|.BA FCEB4A00   MOV EDX,PepSky.004AEBFC                  ;<音乐文件格式转换 3.0>
004AE271|.E8 DA68F5FF   CALL PepSky.00404B50
004AE276|.BA 64EA4A00   MOV EDX,PepSky.004AEA64                  ;1: 软件试用期为15天,你已经试用了a%天,还可使用b%天。
004AE27B|.8BC3          MOV EAX,EBX
004AE27D|.8B08          MOV ECX,DWORD PTR DS:
004AE27F|.FF51 38       CALL DWORD PTR DS:
004AE282|.BA 1CEC4A00   MOV EDX,PepSky.004AEC1C                  ;2: 在软件试用期内音乐文件转换功能最多可转换20首音乐文件。你已经转换了c%首,还可转换d%首。
004AE287|.8BC3          MOV EAX,EBX
004AE289|.8B08          MOV ECX,DWORD PTR DS:
004AE28B|.FF51 38       CALL DWORD PTR DS:
004AE28E|.BA 24E84A00   MOV EDX,PepSky.004AE824                  ;如果你想解除以上试用期与功能限制,请购买注册本软件。
004AE293|.8BC3          MOV EAX,EBX
004AE295|.8B08          MOV ECX,DWORD PTR DS:
004AE297|.FF51 38       CALL DWORD PTR DS:
004AE29A|>83FE 05       CMP ESI,5                              //ESI的值与5比
004AE29D|.75 31         JNZ SHORT PepSky.004AE2D0
004AE29F|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE2A2|.BA 80EC4A00   MOV EDX,PepSky.004AEC80                  ;<还原刻录光盘映像文件 3.0>
004AE2A7|.E8 A468F5FF   CALL PepSky.00404B50
004AE2AC|.BA 64EA4A00   MOV EDX,PepSky.004AEA64                  ;1: 软件试用期为15天,你已经试用了a%天,还可使用b%天。
004AE2B1|.8BC3          MOV EAX,EBX
004AE2B3|.8B08          MOV ECX,DWORD PTR DS:
004AE2B5|.FF51 38       CALL DWORD PTR DS:
004AE2B8|.BA A4EC4A00   MOV EDX,PepSky.004AECA4                  ;2: 在软件试用期内刻录光盘影像文件功能最多可刻录2张光盘。你已经刻录了c%张光盘,还可刻录d%张光盘。
004AE2BD|.8BC3          MOV EAX,EBX
004AE2BF|.8B08          MOV ECX,DWORD PTR DS:
004AE2C1|.FF51 38       CALL DWORD PTR DS:
004AE2C4|.BA 24E84A00   MOV EDX,PepSky.004AE824                  ;如果你想解除以上试用期与功能限制,请购买注册本软件。
004AE2C9|.8BC3          MOV EAX,EBX
004AE2CB|.8B08          MOV ECX,DWORD PTR DS:
004AE2CD|.FF51 38       CALL DWORD PTR DS:
004AE2D0|>83FE 06       CMP ESI,6                              //ESI的值与6比
004AE2D3|.75 31         JNZ SHORT PepSky.004AE306
004AE2D5|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE2D8|.BA 10ED4A00   MOV EDX,PepSky.004AED10                  ;<dvd影碟转为影音文件 3.0>
004AE2DD|.E8 6E68F5FF   CALL PepSky.00404B50
004AE2E2|.BA 64EA4A00   MOV EDX,PepSky.004AEA64                  ;1: 软件试用期为15天,你已经试用了a%天,还可使用b%天。
004AE2E7|.8BC3          MOV EAX,EBX
004AE2E9|.8B08          MOV ECX,DWORD PTR DS:
004AE2EB|.FF51 38       CALL DWORD PTR DS:
004AE2EE|.BA 34ED4A00   MOV EDX,PepSky.004AED34                  ;2: 在软件试用期内dvd影碟转影音文件功能最多可转换2张光盘。你已经转换了c%张光盘,还可转换d%张光盘。
004AE2F3|.8BC3          MOV EAX,EBX
004AE2F5|.8B08          MOV ECX,DWORD PTR DS:
004AE2F7|.FF51 38       CALL DWORD PTR DS:
004AE2FA|.BA 24E84A00   MOV EDX,PepSky.004AE824                  ;如果你想解除以上试用期与功能限制,请购买注册本软件。
004AE2FF|.8BC3          MOV EAX,EBX
004AE301|.8B08          MOV ECX,DWORD PTR DS:
004AE303|.FF51 38       CALL DWORD PTR DS:
004AE306|>83FE 07       CMP ESI,7                                 //ESI的值与7比
004AE309|.75 31         JNZ SHORT PepSky.004AE33C
004AE30B|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE30E|.BA A0ED4A00   MOV EDX,PepSky.004AEDA0                  ;<dvd9影碟转刻为dvd5影碟 3.0>
004AE313|.E8 3868F5FF   CALL PepSky.00404B50
004AE318|.BA 64EA4A00   MOV EDX,PepSky.004AEA64                  ;1: 软件试用期为15天,你已经试用了a%天,还可使用b%天。
004AE31D|.8BC3          MOV EAX,EBX
004AE31F|.8B08          MOV ECX,DWORD PTR DS:
004AE321|.FF51 38       CALL DWORD PTR DS:
004AE324|.BA C8ED4A00   MOV EDX,PepSky.004AEDC8                  ;2: 在软件试用期内dvd9转刻为dvd5功能最多可转换2张光盘。你已经转换了c%张光盘,还可转换d%张光盘。
004AE329|.8BC3          MOV EAX,EBX
004AE32B|.8B08          MOV ECX,DWORD PTR DS:
004AE32D|.FF51 38       CALL DWORD PTR DS:
004AE330|.BA 24E84A00   MOV EDX,PepSky.004AE824                  ;如果你想解除以上试用期与功能限制,请购买注册本软件。
004AE335|.8BC3          MOV EAX,EBX
004AE337|.8B08          MOV ECX,DWORD PTR DS:
004AE339|.FF51 38       CALL DWORD PTR DS:
004AE33C|>83FE 10       CMP ESI,10                                  //ESI的值与10比
004AE33F|.75 31         JNZ SHORT PepSky.004AE372
004AE341|.8D45 FC       LEA EAX,DWORD PTR SS:
004AE344|.BA B4E94A00   MOV EDX,PepSky.004AE9B4                  ;<虚拟光碟 3.0>
004AE349|.E8 0268F5FF   CALL PepSky.00404B50
004AE34E|.BA 64EA4A00   MOV EDX,PepSky.004AEA64                  ;1: 软件试用期为15天,你已经试用了a%天,还可使用b%天。
004AE353|.8BC3          MOV EAX,EBX
004AE355|.8B08          MOV ECX,DWORD PTR DS:
004AE357|.FF51 38       CALL DWORD PTR DS:
004AE35A|.BA 30EE4A00   MOV EDX,PepSky.004AEE30                  ;2: 在软件试用期内虚拟光碟功能无任何限制,过期后将无法加载加密游戏光盘生成的镜像文件。
004AE35F|.8BC3          MOV EAX,EBX
004AE361|.8B08          MOV ECX,DWORD PTR DS:
004AE363|.FF51 38       CALL DWORD PTR DS:
004AE366|.BA 24E84A00   MOV EDX,PepSky.004AE824                  ;如果你想解除以上试用期与功能限制,请购买注册本软件。
004AE36B|.8BC3          MOV EAX,EBX
004AE36D|.8B08          MOV ECX,DWORD PTR DS:
004AE36F|.FF51 38       CALL DWORD PTR DS:
004AE372|>33C0          XOR EAX,EAX
004AE374|.833D 90754D00>CMP DWORD PTR DS:,1             // 又用 DS:地址内存数据再与1比较,不是就跳过NAG。
004AE37B|.75 7E         JNZ SHORT PepSky.004AE3FB      
004AE37D|.85F6          TEST ESI,ESI                            // DS:地址内存数据为1时,就查ESI是否有值,有值就跳过NAG。
004AE37F|.75 7A         JNZ SHORT PepSky.004AE3FB
004AE381|.BA 90EE4A00   MOV EDX,PepSky.004AEE90                  ;软件试用期为15天,你试用的软件已过试用期。软件将继续运行,但将禁用如下功能:
004AE386|.8BC7          MOV EAX,EDI

.。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
这一段主要就是通过 DS:地址内存数据再与1、2、3、4比较来判断 <光盘刻录大师 3.0>、<光盘复制专家 3.0>、<音乐转换专家 3.0>、<虚拟光碟 3.0>四个组件是否弹出
NAG注册提示。
通过ESI的值是否是1、2、3、4、5、6、7、10,来判断其它几个组件是否弹出NAG注册提示。

所以我们就把DS:地址内存数据改成一个不是1、2、3、4的其它的任意数就可以跳过,实现去NAG的目的。把ESI的数据赋值非1、2、3、4、5、6、7、10的数据就可以实现
其它几个组件调用时的NAG。
通过以上分析:得到结论,本程序有两个关键点,一个是关键内存地址,另一个是ESI的值。
好的,我们就从这两点入手开始破解。
首先是关键地址:
在内存窗口查找地址,下内存写入断点,看哪里修改了这个内存地址的数据。发现

004BAE06      C700 09000000 MOV DWORD PTR DS:,1 //这里给关键地址赋值,并且赋值后没有发生变化,这就是关键点,我们把1改成一个非1、2、3、4的任何数据都行。

修改后第一个问题就解决了。

再看第二个ESI值的问题

004ADFC2|.8BF1          MOV ESI,ECX          //这里看到是ECX给关键的ESI赋值,且前面ecx的值没有变。所以到段首查看。

局部调用来自 004B5CD6, 004B75ED, 004B7ED1, 004B7EEE, 004B8B7D,这个段有这些调用。

第一处
004B5CCF   .33C9          XOR ECX,ECX            //这里ecx清零了最后值为0,非1、2、3、4,不用动
004B5CD1   .BA 01000000   MOV EDX,1
004B5CD6   .E8 D982FFFF   CALL PepSky.004ADFB4   //这里调用,
第二处
004B75E8   .BA 01000000   MOV EDX,1
004B75ED   .E8 C269FFFF   CALL PepSky.004ADFB4   //与第一处相同
第三处
004B7ECD|.33C9          XOR ECX,ECX            //这里ecx清零了最后值为0,非1、2、3、4,不用动
004B7ECF|.33D2          XOR EDX,EDX
004B7ED1|.E8 DE60FFFF   CALL PepSky.004ADFB4
第四处
004B7EE7|.33C9          XOR ECX,ECX
004B7EE9|.BA 01000000   MOV EDX,1
004B7EEE|.E8 C160FFFF   CALL PepSky.004ADFB4
第五处
004B8B76   .33C9          XOR ECX,ECX
004B8B78   .BA 01000000   MOV EDX,1
004B8B7D   .E8 3254FFFF   CALL PepSky.004ADFB4

也就是说ESI的值在主程序没起作用。修改第一个关键地址的值后就OK了。



各个分程序的爆破

该软件对七个子程序加了密,并有校验不让单独运行。

①CDDVDCopy

OD载入运行后发展直接退出。我们单步运行发现,


004C7DD0 >/$55            PUSH EBP
004C7DD1|.8BEC          MOV EBP,ESP
004C7DD3|.83C4 E8       ADD ESP,-18
004C7DD6|.53            PUSH EBX
004C7DD7|.33C0          XOR EAX,EAX
004C7DD9|.8945 E8       MOV DWORD PTR SS:,EAX
004C7DDC|.8945 EC       MOV DWORD PTR SS:,EAX
004C7DDF|.B8 845E4C00   MOV EAX,CDDVDCop.004C5E84
004C7DE4|.E8 A3F1F3FF   CALL CDDVDCop.00406F8C
004C7DE9|.8B1D 18B24C00 MOV EBX,DWORD PTR DS:            ;CDDVDCop.004CF5B8
004C7DEF|.33C0          XOR EAX,EAX
004C7DF1|.55            PUSH EBP
004C7DF2|.68 047F4C00   PUSH CDDVDCop.004C7F04
004C7DF7|.64:FF30       PUSH DWORD PTR FS:
004C7DFA|.64:8920       MOV DWORD PTR FS:,ESP
004C7DFD|.A1 08B14C00   MOV EAX,DWORD PTR DS:
004C7E02|.C700 FFFFFFFF MOV DWORD PTR DS:,-1
004C7E08|.A1 D8B34C00   MOV EAX,DWORD PTR DS:
004C7E0D|.BA 1C7F4C00   MOV EDX,CDDVDCop.004C7F1C                ;ASCII "cn"
004C7E12|.E8 11CDF3FF   CALL CDDVDCop.00404B28
004C7E17|.A1 C8B04C00   MOV EAX,DWORD PTR DS:
004C7E1C|.C700 01000000 MOV DWORD PTR DS:,1
004C7E22|.A1 7CB24C00   MOV EAX,DWORD PTR DS:
004C7E27|.BA 287F4C00   MOV EDX,CDDVDCop.004C7F28                ;ASCII "30"
004C7E2C|.E8 F7CCF3FF   CALL CDDVDCop.00404B28
004C7E31|.A1 0CAF4C00   MOV EAX,DWORD PTR DS:
004C7E36|.C600 00       MOV BYTE PTR DS:,0
004C7E39|.8D55 EC       LEA EDX,DWORD PTR SS:
004C7E3C|.B8 01000000   MOV EAX,1
004C7E41|.E8 66B3F3FF   CALL CDDVDCop.004031AC
004C7E46|.8B45 EC       MOV EAX,DWORD PTR SS:
004C7E49|.BA 347F4C00   MOV EDX,CDDVDCop.004C7F34                ;ASCII "Pepsky"
004C7E4E|.E8 91D0F3FF   CALL CDDVDCop.00404EE4
004C7E53|.0F85 90000000 JNZ CDDVDCop.004C7EE9                     //这里跳过了程序要运行的步骤。不能让它跳,NOP掉后解决不能单独启动的问题。
004C7E59|.8D55 E8       LEA EDX,DWORD PTR SS:
004C7E5C|.B8 02000000   MOV EAX,2
004C7E61|.E8 46B3F3FF   CALL CDDVDCop.004031AC
004C7E66|.8B45 E8       MOV EAX,DWORD PTR SS:
004C7E69|.E8 2E00FFFF   CALL CDDVDCop.004B7E9C
004C7E6E|.B8 01000000   MOV EAX,1
004C7E73|.E8 400DFDFF   CALL CDDVDCop.00498BB8
004C7E78|.E8 E308FDFF   CALL CDDVDCop.00498760
004C7E7D|.B8 447F4C00   MOV EAX,CDDVDCop.004C7F44                ;ASCII "Windows 2000/2003(32bit)/2003(64bit)/XP(32bit)/XP(64bit)/Vista(32bit)/Vista(64bit)"
004C7E82|.E8 8909FDFF   CALL CDDVDCop.00498810
004C7E87|.A1 08B34C00   MOV EAX,DWORD PTR DS:
004C7E8C|.C600 01       MOV BYTE PTR DS:,1
004C7E8F|.8B03          MOV EAX,DWORD PTR DS:
004C7E91|.E8 8A3DFAFF   CALL CDDVDCop.0046BC20
004C7E96|.8B0D E8B04C00 MOV ECX,DWORD PTR DS:            ;CDDVDCop.004E469C
004C7E9C|.8B03          MOV EAX,DWORD PTR DS:
004C7E9E|.8B15 E8154C00 MOV EDX,DWORD PTR DS:            ;CDDVDCop.004C1634
004C7EA4|.E8 8F3DFAFF   CALL CDDVDCop.0046BC38
004C7EA9|.8B0D 58B24C00 MOV ECX,DWORD PTR DS:            ;CDDVDCop.004E4694
004C7EAF|.8B03          MOV EAX,DWORD PTR DS:
004C7EB1|.8B15 A8F64B00 MOV EDX,DWORD PTR DS:            ;CDDVDCop.004BF6F4
004C7EB7|.E8 7C3DFAFF   CALL CDDVDCop.0046BC38
004C7EBC|.8B0D ECB04C00 MOV ECX,DWORD PTR DS:            ;CDDVDCop.004E45A0
004C7EC2|.8B03          MOV EAX,DWORD PTR DS:
004C7EC4|.8B15 5C6F4B00 MOV EDX,DWORD PTR DS:            ;CDDVDCop.004B6FA8
004C7ECA|.E8 693DFAFF   CALL CDDVDCop.0046BC38
004C7ECF|.8B0D 74AF4C00 MOV ECX,DWORD PTR DS:            ;CDDVDCop.004E45AC
004C7ED5|.8B03          MOV EAX,DWORD PTR DS:
004C7ED7|.8B15 887A4B00 MOV EDX,DWORD PTR DS:            ;CDDVDCop.004B7AD4
004C7EDD|.E8 563DFAFF   CALL CDDVDCop.0046BC38
004C7EE2|.8B03          MOV EAX,DWORD PTR DS:
004C7EE4|.E8 CF3DFAFF   CALL CDDVDCop.0046BCB8
004C7EE9|>33C0          XOR EAX,EAX
004C7EEB|.5A            POP EDX
004C7EEC|.59            POP ECX
004C7EED|.59            POP ECX
004C7EEE|.64:8910       MOV DWORD PTR FS:,EDX
004C7EF1|.68 0B7F4C00   PUSH CDDVDCop.004C7F0B
004C7EF6|>8D45 E8       LEA EAX,DWORD PTR SS:
004C7EF9|.BA 02000000   MOV EDX,2
004C7EFE|.E8 F5CBF3FF   CALL CDDVDCop.00404AF8
004C7F03\.C3            RETN

仍然采用主程序破解的办法。

在关键段首下断,查找字符串。与主程序破解相同。
不过这次多了“最多可复制2张光盘;你已经复制了a%张,还可复制b%张。 如果需要解除试用版限制,请购买注册我们的软件。”
这是另一个子程序的注册检验。

发现了与主程序相同的算法。

004B9430/$55            PUSH EBP
004B9431|.8BEC          MOV EBP,ESP
004B9433|.83C4 F4       ADD ESP,-0C
004B9436|.53            PUSH EBX
004B9437|.56            PUSH ESI
004B9438|.57            PUSH EDI
004B9439|.33DB          XOR EBX,EBX
004B943B|.895D FC       MOV DWORD PTR SS:,EBX
004B943E|.8BF1          MOV ESI,ECX
004B9440|.8955 F4       MOV DWORD PTR SS:,EDX
004B9443|.8945 F8       MOV DWORD PTR SS:,EAX
004B9446|.33C0          XOR EAX,EAX
004B9448|.55            PUSH EBP
004B9449|.68 1C9A4B00   PUSH CDDVDCop.004B9A1C
004B944E|.64:FF30       PUSH DWORD PTR FS:
004B9451|.64:8920       MOV DWORD PTR FS:,ESP
004B9454|.803D BD454E00>CMP BYTE PTR DS:,1
004B945B|.0F84 A5050000 JE CDDVDCop.004B9A06
004B9461|.A1 08B44C00   MOV EAX,DWORD PTR DS:
004B9466|.8B00          MOV EAX,DWORD PTR DS:
004B9468|.66:BA F5FF    MOV DX,0FFF5
004B946C|.E8 3703FBFF   CALL CDDVDCop.004697A8
004B9471|.C605 BD454E00>MOV BYTE PTR DS:,1
004B9478|.B2 01         MOV DL,1
004B947A|.A1 C0A74100   MOV EAX,DWORD PTR DS:
004B947F|.E8 20A7F4FF   CALL CDDVDCop.00403BA4
004B9484|.8BD8          MOV EBX,EAX
004B9486|.B2 01         MOV DL,1
004B9488|.A1 C0A74100   MOV EAX,DWORD PTR DS:
004B948D|.E8 12A7F4FF   CALL CDDVDCop.00403BA4
004B9492|.8BF8          MOV EDI,EAX
004B9494|.8D45 FC       LEA EAX,DWORD PTR SS:
004B9497|.BA 349A4B00   MOV EDX,CDDVDCop.004B9A34                ;<pepsky burning studio 3.0>
004B949C|.E8 CBB6F4FF   CALL CDDVDCop.00404B6C
004B94A1|.8D45 FC       LEA EAX,DWORD PTR SS:
004B94A4|.BA 589A4B00   MOV EDX,CDDVDCop.004B9A58                ;<光盘刻录大师 3.0>
004B94A9|.E8 BEB6F4FF   CALL CDDVDCop.00404B6C
004B94AE|.833D B4454E00>CMP DWORD PTR DS:,1                //关键地址DS:
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

这次关键地址变为了,呵呵,ESI的值还是跟主程序一样的方法。

。。。。。。。。。。。。。。。。。。。。。。。。。。。
子程序注册检测

通过上面的修改我们可以看到程序显示为正式版了,但在复制的时候有“最多可复制2张光盘;你已经复制了a%张,还可复制b%张。 如果需要解除试用版限制,请购买注册我们的软件。”
提示,不爽,呵呵,

004C46BA|.8338 00       CMP DWORD PTR DS:,0               //关键地址与0比较,改了后就OKY了
004C46BD|.0F85 0A010000 JNZ CDDVDCop.004C47CD                  //这个跳可以跳过提示。让其实现。
004C46C3|.A1 C8AF4C00   MOV EAX,DWORD PTR DS:
004C46C8|.8338 02       CMP DWORD PTR DS:,2
004C46CB|.7F 0A         JG SHORT CDDVDCop.004C46D7
004C46CD|.A1 C8AF4C00   MOV EAX,DWORD PTR DS:
004C46D2|.8338 00       CMP DWORD PTR DS:,0
004C46D5|.7D 09         JGE SHORT CDDVDCop.004C46E0
004C46D7|>A1 C8AF4C00   MOV EAX,DWORD PTR DS:
004C46DC|.33D2          XOR EDX,EDX
004C46DE|.8910          MOV DWORD PTR DS:,EDX
004C46E0|>A1 C8AF4C00   MOV EAX,DWORD PTR DS:
004C46E5|.BA 02000000   MOV EDX,2
004C46EA|.2B10          SUB EDX,DWORD PTR DS:
004C46EC|.8955 DC       MOV DWORD PTR SS:,EDX
004C46EF|.8D45 F8       LEA EAX,DWORD PTR SS:
004C46F2|.BA FC524C00   MOV EDX,CDDVDCop.004C52FC         ;最多可复制2张光盘;你已经复制了a%张,还可复制b%张。 如果需要解除试用版限制,
                                                                     请购买注册我们的软件。
004C46F7|.E8 7004F4FF   CALL CDDVDCop.00404B6C


通过上面修改后就完美的爆破了。


该软件的其它几个组件跟这子程序的算法是相同的,就不详述了,大家在下面自己练习一下吧。




--------------------------------------------------------------------------------
【经验总结】
该软件通过关键内存地址--标志位及其数值的不同进行注册验证。但相对来讲加密比较简单,还没有加猛壳,破解相对容易
些,希望软件开发者加强。
本人还是菜鸟,算法不懂。发一篇菜文进行交流,高手就不必看了。

--------------------------------------------------------------------------------
【版权声明】: 转载请注明作者并保持文章的完整, 谢谢!

                                                       2007年12月12日 10:54:49

[ 本帖最后由 lqiulu 于 2007-12-12 10:46 编辑 ]

backboy 发表于 2007-12-16 11:22:30

呵呵,好详细,用心了的!

lyhong 发表于 2007-12-16 14:16:21

硬是看不懂如何用堆栈查找的办法查到下面地方的
主程序破解:通过F12暂停,堆栈查找的办法查到


调用堆栈
地址       堆栈       程序过程 / 参数                     调用来自                      结构

0012FB7C   77D19418   包含 ntdll.KiFastSystemCallRet      USER32.77D19416               0012FBAC
0012FB80   004681DA   <JMP.&user32.WaitMessage>             PepSky.004681D5               0012FBAC
0012FBB0   00467690   ? PepSky.004680A8                     PepSky.0046768B               0012FBAC
0012FBD4   00463E58   PepSky.00467674                     PepSky.00463E53               0012FC30

sevenwang 发表于 2007-12-16 16:31:12

我是新手看不懂,真晕呀

gdwz2008 发表于 2007-12-17 17:03:14

我朋友花了30元来注册这个软件谢谢楼主的分享破解过程   学习下

jonen 发表于 2007-12-18 14:11:18

支持...
学习啦!!
30元不用花啦...
哈..

xhq789 发表于 2007-12-18 14:43:36

额 看不懂的样子

雨辰 发表于 2007-12-19 01:57:15

学习了,确实不错。。
页: [1]
查看完整版本: 光盘刻录大师 v3.0.2.104破解