DOS时代的TT打字软件简单逆向

这两天孩子考完中考,在家无所事事,就让他练练键盘指法,我只记得自己上大学时候练过2周的TT软件,特别好用,然后找了下,现在DOS的程序只能在DOSBOX下跑了,下载以后跑了起来,很熟悉的界面和speak音效有没有?
TT界面截图
但是,发现一个严重的问题,就是网上下载的版本都是所有的学生都练习过了,而且也没有办法新加学生,因为就总共就8个学生可以添加。
学生满了截图
然后尝试修改TT.HIS文件,总是进度不能保存要不就是文件损坏错误。
后来无意中发现TT还有指导员模式,只要在命令行后面带上正确的密码参数就可以进,这里不知道密码,所以提示不正确:
密码错误
然后,我尝试用IDA来分析代码,发现TT程序里有反调试和SMC,现在的windows下不能调试,只能用DOSBOX+debug来怼,费了九牛二虎之力,找到了一个函数。值得注意的是:MASM5版自带了个debug32,命令和debug兼容,还多了些功能,比如寄存器变化展示、断点管理等。
在这里插入图片描述
用debug的批量执行:p d37;t;p 63;t;p 12;t;p=2ca
到这里就是一个函数
1ca5:02cd call 5bca
5bca的函数里有这样一段:
详细代码
运行到5C3D这里会弹出之前截图的错误并退出,因此修改5C18这里的分支,继续运行5C1A,就会判断密码正确了。
在这里插入图片描述
这里因为前面调试,把颜色弄没了。不过可以看到菜单不一样了,可以修改教师密码:
在这里插入图片描述
还可以看到原来的密码是HELLO,哈哈,这下就可以为所欲为了。
删掉其他的所有记录,就可以新增学生了。
在这里插入图片描述

对了,这里还有一个地方要注意,由于千年虫的影响,这个软件不能设置时间超过2000年,也就是只能设置199x年的时间,否则后续写文件会出错。
耗费了我几个小时,孩子假期里终于可以愉快的练打字了。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值