set print asm-demangle
更改
callq 0x400a30 <_ZNSo3putEc@plt>
到
callq 0x400a30 <_std::ostream::put(char)@plt>
编辑:
我有radare2 0.9.6,它带有Ubuntu的突触包管理器。我从https://github.com/radare/radare2重新安装了它。现在,在输入
asm.demangle
之后,我看到Ve
变量,它被设置为true,但是名称仍然被修饰。#1 楼
检查e asm.demangle
,并根据需要将其设置为true或false。radar2版本是否使用的是最新版本?
您应该能够查看所有配置数据使用
e
。键入
e??
应该会向您显示配置变量的完整列表及其说明。您可以通过输出对所有具有模式脱模的var进行grep操作,[0x00001d52]> e??~demangle asm.demangle: Show demangled symbols in disasm bin.demangle: Import demangled symbols from RBin bin.lang: Language for bin.demangle [0x00001d52]>
在启动时需要告知Radare2加载脱模信息,因此可以进行设置
bin.demangle
到true
,然后重新打开文件: e bin.demangle = true
oo
最后但并非最不重要的是,您可以使用大小写错误的形式,以大小写的形式提供符号名称。命令
iD
:[0x7c810705]> iD cxx _ZNSo3putEc
std::ostream::put
[0x7c810705]>
顺便说一句,提示而不是在这里问一个问题并永远等待:
radare2是自我记录的,因此您可以从以下开始键入
?
以获取帮助,然后将?
附加到每个命令,例如a?
或pd?
等...
评论
对不起,但是如何?如果输入e asm.demangle = true,则会得到:未找到变量'asm.demangle'
–robert
15年12月18日在14:33