-
-
[讨论]手脱未知壳(已知Delphi程序)[未完成]
-
发表于:
2011-5-26 01:31
5637
-
[讨论]手脱未知壳(已知Delphi程序)[未完成]
知道某程序是Delphi写的
壳呢差不出来.也不能调戏
壳EP 是这样的
咋办呢
我就直接 运行程序 然后 PeTools 内存里抓出来
6.*MB
资源什么的显示正常
运行报错 乱七八糟的
恩
知道源程序是Delphi的就直接搜Delphi的 EP 代码
结果还真搜到了
直接修复 EP
新EP
运行后.还是不正常.
不过到了熟悉的地方了
执行第一个单元的 Init 是正常的
第2个就飞了.
但也能返回继续处理其它单元
执行到Controls_Init时出问题了
00475391 . 832D 848D6300>SUB DWORD PTR DS:[638D84],1
00475398 . /73 5E JNB SHORT 004753F8
JNB 后就退出了,Application 就在这地方创建的啊.
JNB 了肯定出问题啊.
可是 Jnb NOP 了F9 还是异常
我现在想知道
SysInt 的代码 是
832D 6806450001 sub dword ptr [$00450668],$01
C3 ret
和 Controls_Init 的 00475391 好象是一类诶
SysInt 是没 InitUnit的代码的 没Init代码的单元都 有 sub dword ptr [***],01
可能 ptr [***] 里是个标记吧.
确实是标记
是单元初始标记 为了保证只执行一次Init
保存在BSS 段
BSS 是什么玩意正在搜
看来肯定是要修复的了
而且要修复的应该不止 单元初始标记
漫漫跟吧
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课