盲人是怎么使用电脑的,盲人做电脑系统
北极光盲用计算机系统软件暴力破解
作者:Jimmycwz
目标:北极光盲用计算机系统软件(3个月试用版)
下载地址:破解时间:2003-2-2
破解工具:W32dasm黄金版,Hiew,Trw2000
作者主页:前言:由于老爸的眼睛有病变(视网膜色素变性),基本上看不到东西(只能感到光影),一个人呆在家无聊,想学学电脑,于是就上网下载了北极光盲用计算机系统软件给他用。软件做得还不错,基本上能让看不到屏幕的老爸可以听听网页、写写文章。只可惜两个多月个月过去了,正当老爸兴起之际,软件弹出“系统试用期已到。如果您需要继续使用,请购买本系统的正版软件。谢谢。”本该支持国产软件事业的,但自己还是位没收入的穷学生,没能力支付那昂贵的软件费用,只好把它破解好让老爸继续使用。
正题:由于软件安装在win2000系统,但Trw2000不支持。软件是 Ms Visual C++ 6.0 , 没加壳 ,本想只使用W32dasm来静态分析,可找来找去,找不着相关的错误讯息字串。想到其测试日期的程序可能在其他dll文件中,但单单在那个软件的目录底下就有二十多个dll文件。没办法,只好在win98下再安装软件一次,用Trw2000来跟踪了。
用bpx GetSystemTime设中断,启动“盲人编辑器”(不要用“屏幕朗读”来调试,因它要运行很多东西,按f10都要按上5分钟……)中断后,按F10走到如下位置:
0187:004034FA JNG 00403517
0187:004034FC PUSH EDI
0187:004034FD PUSH DWORD 004102A0
0187:00403502 PUSH DWORD 00410258
0187:00403507 PUSH EDI
0187:00403508 CALL `USER32!MessageBoxA`
0187:0040350E MOV EAX,[EBP-14] <------这里就弹出过期提示窗口
0187:00403511 PUSH EAX
0187:00403512 MOV ECX,[EAX]
0187:00403514 CALL NEAR [ECX+08]
0187:00403517 OR DWORD [EBP-04],BYTE -01
往上看:
0187:004034A8 PUSH EDI
0187:004034A9 CALL `USER32!MessageBoxA`
0187:004034AF JMP SHORT 00403517
0187:004034B1 CMP ESI,BYTE +50 <----如果用过80天,提示还剩几天试用
0187:004034B4 JL 004034F7 <----将这里JL改为JMP,再看看34f7那里做什么
0187:004034B6 CMP ESI,BYTE +5A <----如果用过90天,提示试用期到,系统出错
0187:004034B9 JG 004034FC <----由于上面已JMP,这里就不用理它啦
0187:004034BB PUSH BYTE +40
0187:004034BD LEA EAX,[EBP-54]
0187:004034C0 PUSH EDI
0187:004034C1 PUSH EAX
0187:004034C2 CALL 00404A00
0187:004034C7 ADD ESP,BYTE +0C
0187:004034CA PUSH DWORD 004102C8
0187:004034CF PUSH BYTE +5A
0187:004034D1 POP EAX
0187:004034D2 SUB EAX,ESI
0187:004034D4 PUSH EAX
0187:004034D5 PUSH DWORD 004102B4
0187:004034DA LEA EAX,[EBP-54]
0187:004034DD PUSH DWORD 004102AC
0187:004034E2 PUSH EAX
0187:004034E3 CALL 00404F0C
0187:004034E8 ADD ESP,BYTE +14
0187:004034EB LEA EAX,[EBP-54]
0187:004034EE PUSH EDI
0187:004034EF PUSH DWORD 004102A0
0187:004034F4 PUSH EAX
0187:004034F5 JMP SHORT 004034A8
0187:004034F7 CMP ESI,BYTE +5A <----又比较一次
0187:004034FA JNG 00403517 <----JNG当然要改JMP啦,否则还是会过期
0187:004034FC PUSH EDI
看看领空,在COMSERVER!,在C盘查找一下COMSERVER,发现有两个EXE文件,两个DLL文件,究竟是哪个呢?用W32dasm黄金版逐个看一下,只有Aurora\Dlls\ComServer.exe有相关信息存在。其实用W32dasm看一下上面的程序段,自然一目了然。接着自然就是要改啰,用Hiew,该不用多说了吧。
稍微给刚接触pj的人解释一下
0187:004034B1 CMP ESI,BYTE +50 <----如果用过80天,提示还剩几天试用
为什么是80天?
因为50是16进制,换成10进制是5*16+0=80
esi 就是你实际使用的天数
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。