当前位置: 技术问答>linux和unix
修改程序地址
来源: 互联网 发布时间:2014-12-03
本文导语: 现在有一个EXE的可执行程序,已知其中用到了0xd0000起始的一段地址, 现想将其改成0xcc000,没有源程序,只知道源程序中只在把该地址附给 一个指针变量时出现一次。 我想用反汇编的方式直接改,可是只能找到偏址...
现在有一个EXE的可执行程序,已知其中用到了0xd0000起始的一段地址,
现想将其改成0xcc000,没有源程序,只知道源程序中只在把该地址附给
一个指针变量时出现一次。
我想用反汇编的方式直接改,可是只能找到偏址,找不到段址,求高手赐教
很急的说
另外,源程序BC下的C++写的,在DOS下执行
再另外,还有一个VC的在WIN98下执行的程序需做类似处理
现想将其改成0xcc000,没有源程序,只知道源程序中只在把该地址附给
一个指针变量时出现一次。
我想用反汇编的方式直接改,可是只能找到偏址,找不到段址,求高手赐教
很急的说
另外,源程序BC下的C++写的,在DOS下执行
再另外,还有一个VC的在WIN98下执行的程序需做类似处理
|
我想到的几种办法:
(1) 用Soft-ICE跟踪,检测到对D000h段的读写就中断,然后再往前找。
(2) 用Borland Turbo Debugger打开EXE查找代码。
(3) 用反汇编程序查找MOV AX,D000之类的指令。
(4) 用TR跟踪,设置段寄存器改变的断点。
浅妄薄见,望与斟酌
(1) 用Soft-ICE跟踪,检测到对D000h段的读写就中断,然后再往前找。
(2) 用Borland Turbo Debugger打开EXE查找代码。
(3) 用反汇编程序查找MOV AX,D000之类的指令。
(4) 用TR跟踪,设置段寄存器改变的断点。
浅妄薄见,望与斟酌
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。