在我的Windbg脚本中,我定义了一个存储整数的pesudo寄存器。接下来,从我的脚本调用.writemem。 .writemem的第一个参数采用文件名。我希望文件名是伪寄存器的值。
这是我的Windbg脚本的简化版本不起作用(因为伪寄存器是整数,.writemem的第一个参数需要不同于整数的类型)。
r $ t0 = 0;
以下的$$代码序列可能会更改$ t0的值
.writemem $ t0 eip L100
答案 0 :(得分:1)
您可以使用伪寄存器的值创建别名字符串并使用它。例如:
0: kd> r @$t0 = 5+5
0: kd> aS /x ${/v:fileName} @$t0
0: kd> .writemem ${fileName}.txt @eip L100
Writing 100 bytes.
将创建一个名为“0xa.txt”的文件。
-Scott
答案 1 :(得分:0)
伪寄存器可与r?
一起使用,允许将类型分配给寄存器。
以下是将字符串分配给寄存器
的示例 r? @$t0 = (_UNICODE_STRING*) 0x0139df70+0x8
以下是使用此内容的write up。