- UID
- 16062
注册时间2006-6-19
阅读权限40
最后登录1970-1-1
独步武林
该用户从未签到
|
【文章标题】: 制作Conv_For_Bas的注册机
【文章作者】: JJDG
【软件名称】: Conv_For_Bas
【软件大小】: 1.50M
【下载地址】: 自己搜索下载
【编写语言】: VB
【使用工具】: PEID OD KEYMAKER1.73
【软件介绍】: 老外写的一个把fortran源程序转换为VB代码的程序!
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
这个软件也是在学习fortran的时候在网上发现的,注册费用为100US$!唉!没钱啊!破!
Peid查出来是VB写的,无壳!
运行软件,会弹出个消息框,显示“Trial Version - Professional use not allowed”,点确定按钮,弹出一个界面,填入user id:jjdg,Serial No:123456789,点ok,提示“Trial Version - Professional use not allowed”
点确定后,回到刚才的界面,user id不变,Serial No置为0,点击名为:Fortran 77/90 to VB Converter按钮,在弹出的界面显示:
Please, to help us, register your Software. It's only 100 US$! When you do it, you receive your User-id and Serial No within 24h by email.
若点击名为:Text Files/Source Code Transformation的按钮,则显示如下信息:
Trial Version Limited to 10 changes or analysis.
注册成功后则不再显示它们!
注意了:输入错误注册信息后,出现的提示与启动时的一模一样,想想看,为什么?对了,这个软件是在启动的时候就校验注册码,如果不正确就出现提示信息,否则就直接
进入程序,好了,可以动手了!
OD载入,alt+e,双击Msvbvm60.dll,ctrl+n,输入vbastrco,哈哈,还没有输完,就已经到了目标函数那里了!在vbastrcomp上面下断点!
F9运行程序,在注册对话框处输入jjdg和123456789,点OK,OD拦截成功,F8一路往下,来到
004543FD . 8BD0 MOV EDX,EAX
看看右边的寄存器窗口,内容如下:
EAX 0014D00C UNICODE "974195.0548" |<---真正的注册码哦!
在下面还有好几处也可以看到注册码,但是这些地方不能作注册机,因为,这是程序启动时对user id中的残留信息求注册码的地方,所以要做成能够响应即输即得的注册机
还需要往下面走,即程序启动后计算注册码的地方,F8继续,来到下面:
00454463 . 50 PUSH EAX ; 就是这里!
看看寄存器的内容:
EAX 0014D00C UNICODE "974195.0548"
ECX 00000006
EDX 0014D0A4 UNICODE "123456789"
打开keymaker1.73,按如下信息制作内存注册机,
中断地址:00454463
中断次数:2 (为什么是2呢?因为根据前面的分析,程序在启动的时候会校验注册码,所以第二次生成的注册码才是与我们输入的user id相对应的!)
中断指令:50
指令长度:1
内存方式:寄存器:EAX,选上宽字符串
生成即可!
测试一下,成功!
软件注册成功会产生如下键值,删除即可重新注册!
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\VB and VBA Program Settings\SWING_CV_FVB]
[HKEY_CURRENT_USER\Software\VB and VBA Program Settings\SWING_CV_FVB\access]
"usr"="jjdg"
"pwd"="974195.0548"
"f0"="module1.bas"
"p0"="*.for"
"u0"="c"
"d0"="C:\\"
注册机制作完毕!
2006年07月18日 13:52:41 |
|