【文章标题】: MagicDVDRipper简单破解
【文章作者】: bithaha
【软件名称】: MagicDVDRipper
【下载地址】: 华军软件
【加壳方式】: 无
【编写语言】: Borland C++
【软件介绍】: 比较适合新手找自信
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
明天闪人了,临走之前捏个软柿子
OD载入程序,输入用户名和注册码:bithaha 1234567891234567891,下万能断点
断后ALT+F9返回到用户代码,然后就是一连串的retn(Borland的程序都这样).
来到下列地方:
0041EFA4 . 8A03 MOV AL,BYTE PTR DS:[EBX] ; EBX=用户名+i(i=0;i<长度;i++)
0041EFA6 . 03F0 ADD ESI,EAX ; ascii码相加
0041EFA8 . 47 INC EDI
0041EFA9 . 43 INC EBX
0041EFAA > 8B55 B4 MOV EDX,DWORD PTR SS:[EBP-4C]
0041EFAD . 52 PUSH EDX
0041EFAE . E8 79BC0E00 CALL MagicDVD.0050AC2C
0041EFB3 . 59 POP ECX
0041EFB4 . 3BF8 CMP EDI,EAX
0041EFB6 .^ 72 EA JB SHORT MagicDVD.0041EFA2
0041EFB8 . 81E6 FFFF0080 AND ESI,8000FFFF ; ESI=用户名的ascii码相加
0041EFBE . 79 08 JNS SHORT MagicDVD.0041EFC8
0041EFC0 . 4E DEC ESI
0041EFC1 . 81CE 0000FFFF OR ESI,FFFF0000
0041EFC7 . 46 INC ESI
0041EFC8 > 56 PUSH ESI ; /Arg3
0041EFC9 . 68 A4D85300 PUSH MagicDVD.0053D8A4 ; |Arg2 = 0053D8A4 ASCII "%04X"
0041EFCE . 8D4D AC LEA ECX,DWORD PTR SS:[EBP-54] ; |
0041EFD1 . 51 PUSH ECX ; |Arg1
0041EFD2 . E8 11F70E00 CALL MagicDVD.0050E6E8 ; \转换成‘esi"的字符串,用户名为bithaha的
时候此处字符串为‘02D1’
0041F05D > /0FBE03 MOVSX EAX,BYTE PTR DS:[EBX] ;
0041F060 . |83F8 6F CMP EAX,6F
0041F063 . |74 05 JE SHORT MagicDVD.0041F06A
0041F065 . |83F8 4F CMP EAX,4F
0041F068 . |75 03 JNZ SHORT MagicDVD.0041F06D
0041F06A > |C603 30 MOV BYTE PTR DS:[EBX],30 ;把注册码中的o和O用0代替
0041F06D > |47 INC EDI
0041F06E . |43 INC EBX
0041F06F > |56 PUSH ESI
0041F070 . |E8 B7BB0E00 CALL MagicDVD.0050AC2C
0041F075 . |59 POP ECX
0041F076 . |3BF8 CMP EDI,EAX
0041F078 .^\72 E3 JB SHORT MagicDVD.0041F05D
0041F0AD . 8A4E 05 MOV CL,BYTE PTR DS:[ESI+5]
0041F0B0 . 3A4D AC CMP CL,BYTE PTR SS:[EBP-54] ;字符串第一位与注册码第6位比较
0041F0B3 . 75 26 JNZ SHORT MagicDVD.0041F0DB
0041F0B5 . 8A46 04 MOV AL,BYTE PTR DS:[ESI+4]
0041F0B8 . 3A45 AD CMP AL,BYTE PTR SS:[EBP-53] ;第二位与第5位比较
0041F0BB . 75 1E JNZ SHORT MagicDVD.0041F0DB
0041F0BD . 8A56 12 MOV DL,BYTE PTR DS:[ESI+12]
0041F0C0 . 3A55 AE CMP DL,BYTE PTR SS:[EBP-52] ;第三位与第13位比较
0041F0C3 . 75 16 JNZ SHORT MagicDVD.0041F0DB
0041F0C5 . 8A0E MOV CL,BYTE PTR DS:[ESI]
0041F0C7 . 3A4D AF CMP CL,BYTE PTR SS:[EBP-51] ;第四位与第1位比较
0041F0CA . 75 0F JNZ SHORT MagicDVD.0041F0DB
0041F0CC . 8B45 B8 MOV EAX,DWORD PTR SS:[EBP-48]
0041F0CF . C780 4C020000>MOV DWORD PTR DS:[EAX+24C],1
0041F0D9 . EB 3E JMP SHORT MagicDVD.0041F119 ;全部相同,注册成功
综上所述,注册码可以是:12342078912345678D
0041F0DB > 66:C745 CC 44>MOV WORD PTR SS:[EBP-34],44
0041F0E1 . BA AAD85300 MOV EDX,MagicDVD.0053D8AA ; ASCII "Register Code is not correct!
Please copy and paste your user name and register code."
0041F0E6 . 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
0041F0E9 . E8 1AAA0F00 CALL MagicDVD.00519B08
简单的有点过头了!
--------------------------------------------------------------------------------
【版权声明】: 本文原创于看雪技术论坛, 转载请注明作者并保持文章的完整, 谢谢!
2008年02月02日 3:24:51
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!