我是intel-pin的新手,我正在尝试对二进制文件进行一点宽度分析 我尝试分析每个汇编指令中用于操作数的确切位数 例如,如果已经存储了无符号整数15,则足够4位 要做到这一点,我需要获得操作数的副本。有没有什么方法可以使用intel-pin api来做到这一点。
答案 0 :(得分:3)
关于内存操作数,您可以使用INS_IsMemoryRead和INS_IsMemoryWrite来查看指令是否访问内存,然后根据内存操作数的数量对其进行检测(可能有多个指令因为某些指令隐式访问内存)。查看IARG_MEMORYREAD_EA和朋友,以获取分析函数中的内存读取和写入值。
要查看实际寄存器中的值,可以使用IARG_REG_VALUE。