人事信息综合管理系统 Ver3.2 (完全版本)的破解过程
破解:zyw[BCG]
软件简介:软件以中组部《干部履历表》为蓝本,软件实行注册使用,对注册用户提供无限制升级服务。主程序的升级不会影响数据的安全。该软件可以稳定运行于Windows9X、Me、Windows2000
、Windows XP
下载地址:http://my8995.myetang.com/down/pdhs.exe 3760kb
注册价格:50 元/套目标:找出注册码
破解工具:language2000 ,UnFoxAll ,Ultraedit ,
目标:找出成为合法的注册用户的注册码
++++++++++++++++++++++++++++++++++++++++++++++++++++++
安装完毕后想用language2000查看一下,在打开时看主文件是一个狐狸头,language2000报是vc++程序,用UnFoxAll 2.00版反编译成功,有一个rs_zhuce.sct文件,用Ultraedit打开源程序:
......
Caption = "开始注册"
MousePointer = 99
MouseIcon = hand-m.cur
Name = "Command2"
PROCEDURE Click
text_sn=thisform.text1.value+thisform.text2.value+thisform.text3.value+thisform.text4.value
if len(alltrim(text_sn))=16.and.int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))<=14
sn_sub=int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))
if sn_sub<>0
sn=substr(text_sn,sn_sub,1)
else
sn=substr(text_sn,15,1)&&如果取值为0,第15位是Z
endif
do case
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=0.and.sn='Z'.and.substr(text_sn,16,1)='0'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=1.and.sn='A'.and.substr(text_sn,16,1)='1'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=2.and.sn='B'.and.substr(text_sn,16,1)='2'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=3.and.sn='C'.and.substr(text_sn,16,1)='3'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=4.and.sn='D'.and.substr(text_sn,16,1)='4'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=5.and.sn='E'.and.substr(text_sn,16,1)='5'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=6.and.sn='F'.and.substr(text_sn,16,1)='6'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=7.and.sn='G'.and.substr(text_sn,16,1)='7'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=8.and.sn='H'.and.substr(text_sn,16,1)='8'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=9.and.sn='I'.and.substr(text_sn,16,1)='9'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=10.and.sn='J'.and.substr(text_sn,16,1)='0'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=11.and.sn='K'.and.substr(text_sn,16,1)='1'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=12.and.sn='L'.and.substr(text_sn,16,1)='2'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=13.and.sn='M'.and.substr(text_sn,16,1)='3'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=14.and.sn='N'.and.substr(text_sn,16,1)='4'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
OTHERWISE
=messagebox('注册序号不正确,无法完成注册,请索取正确的注册号',0+16,'提示')
endcase
else
=messagebox('注册序号不正确或不完整,无法完成注册,请索取正确的注册号',0+16,'提示')
endif
thisform.release
......
程序根据安装序号(随机出)对应注册码,本机安装序号是:20020112120831
分析:1 看安装序号soft_sn第13,14位相加为几? 本机的是:3+1=4
2 到条件是4的case看
case int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))=4.and.sn='D'.and.substr(text_sn,16,1)='4'
=messagebox('注册成功。祝贺您成为合法的注册用户,您将获得无限制的免费升级服务。',0+64,'提示')
select rs_user
replace sp with .t.
sp_time=.t.
成功条件:注册码中有字符"D" (sn="D") and 注册码第16位=4
向上看
text_sn=thisform.text1.value+thisform.text2.value+thisform.text3.value+thisform.text4.value
以上一句是:注册码值的算法
if len(alltrim(text_sn))=16.and.int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))<=14
以上一句是:注册码位位都要输入 and ????(不知什么用)
sn_sub=int(val(substr(soft_sn,13,1)))+int(val(substr(soft_sn,14,1)))
以上一句是:sn_sub=安装序号的第13,14位相加取整 本机的是:3+1=4
if sn_sub<>0
sn=substr(text_sn,sn_sub,1)
以上二句是:sn值的算法 本机的sn是"D" 则sn=substr(test_sn,4,1)="D"
推断出注册码值可能是:000D-0000-0000-0004 ?
输入该码,成功注册!!! 朋友可对号入座(case),便能注册^_^
总结一下: Name :zyw[BCG]
安装序号:20020112120831
注册码 :000D-0000-0000-0004
文章纯粹研究该软件的注册过程,已很久无发布信息了,看了一下论坛有很多的新朋友,真是可喜可贺!
最后,恭祝大家新年快乐!万事胜意!今天“大寒”,广州市很冷******
破解人: zywicbc
Beginner's Cracking
Group
2001.01.12 18:30
- 标 题:人事信息综合管理系统 Ver3.2 (完全版本)的破解过程 (7千字)
- 作 者:zyw[BCG]
- 时 间:2002-1-20 19:11:49
- 链 接:http://bbs.pediy.com