寻找一种方法来确定 IDA 中加载的二进制文件是小端还是大端(例如,我是否打开了 MIPSLE 或 MIPSBE 二进制文件)。我想避免只在可执行文件上运行“文件”,因为我可能没有可执行文件的副本。
确定在 IDA 中打开的文件的字节序
逆向工程
艾达
2021-06-23 00:59:03
1个回答
找到了解决办法。它有点隐藏,但它是:idaapi.cvar.inf.mf
这在 Big 上返回 true,在 Little endian 上返回 false。
idaapi.py 使用它:
def as_unicode(s):
"""
Convenience function to convert a string into appropriate unicode format
"""
# use UTF16 big/little endian, depending on the environment?
return unicode(s).encode("UTF-16" + ("BE" if _idaapi.cvar.inf.mf else "LE"))