弄了个程序,先是顺利脱壳,然后发现一个需要注册的跳转,于是修改跳转,(按理说就成功了,可是)然后问题出来了:
1、程序运行不出错了,但是显示有问题,打开任何文件都是空白显示,而这个软件是bit显示的
2、有的菜单项不能用(调用子程序),点了之后鼠标忙一下,就没反应了(和问题3有关)
3、程序有很多子程序,我想如果破解不成就自己写个界面,调用它的子程序吧,竟然发现它不是以“子程序名+需查看的文件名”打开的,然后发现子程序很可能也做了版权保护。子程序的修改时间是完全一样的,包括秒,程序大小也是有规律的,好像最后填充了0,凑够16的整数倍。
4、好吧,既然爆破不行,我就从源头看算法吧,这时候发现反汇编一开始就调用两个call修改了堆栈,把堆栈改的乱七八糟,我看不下去了,来看看大家什么看法。
ps:貌似程序边运行边解码自己,因为有部分没有反汇编成功,用的od。用IDA反汇编的时候没成功反汇编的代码就少得多,好像是IDA模拟运行程序的时候解码了代码。
是脱壳没有脱干净吗?
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)