ollydbg插件:MyInfo--备份和恢复 标签/注释/int3断点信息
标签/注释:
支持中文。
支持非代码段的标签/注释的备份和恢复。
支持删除当前模块非代码段的注释。
文件格式: L/C address name 如:
L 40227F a label 这是一个标签
C 40227F a commnet 这是一个注释
int3断点:
支持备份“条件记录断点”的信息和该断点处的注释:
支持删除所有断点。(dll中的断点在重启后会恢复,必须删除对应的udd文件。od的bug?)
文件格式:
B "fn" A/R address E/D passcount comment S condition S expression S explanation S plugin_cmd N
B:表示断点。
fn为文件名。
A/R 表示后面的地址是绝对/相对地址
E/D 激活/禁止该断点
passcount 忽略次数,一般断点都是0
comment 断点处的注释
S 分隔符,为避免与后面的“条件”中的字符冲突,取一个不可见字符'\x1e'。
condition 断点中断条件
expression 表达式
explanation 说明
plugcmd 传给插件的命令 (这几个请参考 shift + F4 弹出的条件记录断点对话框。)
N 前面的S分隔符,再加上换行符,即 "\x1e\n"
(要注意,分隔符S与condition/expression/explanation/explanation这几个之间只能有一个分隔符,
这个字符可以是任意字符(最好设为空格),在读取时这个字符会被忽略。
如在下面最后一个例子,之后的第一个字符(空格)会被忽略。
同样passcount与comment之间、explanation与N之间也只能有一个分隔符。
其它的几个之间,可以用几个空格或制表符隔开。)
例子:
B "abc.exe" A 00402253 E
B "abc.exe" A 00402253 E 0
B "abc.dll" R 0000108A D 0
B "test.exe" A 00402265 E 0 This is a comment.
B "test.exe" A 00402265 E 0 This is a comment.
B "test.exe" A 0040227F E 0 a comment eax == 0
程序有个小bug: 没考虑到vc 6 的 _snprintf 与 C99的snprintf行为不一致,但由于临时数组分得足够大,对程序运行正确性没影响。
作者: flyinghearts
出处: http://www.cnblogs.com/flyinghearts/
本文采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。