zoukankan      html  css  js  c++  java
  • 逆向学习-IDApython(三)

    操作数

      idc.GetOpType(ea,n)获取操作数类型。ea是地址,n是索引。

      o_void

        如果指令没有任何操作数,它将返回 0。

      o_reg

        如果操作数是寄存器,则返回这种类型,它的值为 1

      o_mem

        如果操作数是直接寻址的内存,那么返回这种类型,它的值是 2,这种类型对寻找 DATA的引用非常有帮助。

      o_phrase

        如果操作数是利用基址寄存器和变址寄存器的寻址操作的话,那么返回该类型,值为 3

      o_displ

        如果操作数是利用寄存器和位移的寻址操作的话,返回该类型,值为 4

      o_imm

        如果操作数是一个确定的数值的话,那么返回类型,值为 5

      o_far

        这种返回类型在 x86 和 x86_64 的逆向中不常见。它用来判断直接访问远端地址的操作数,值为 6

      o_near

        这种返回类型在 x86 和 x86_64 的逆向中不常见。它用来判断直接访问近端地址的操作数,值为 7

    交叉引用(Xrefs)

      能够定位 data 段和 code 段的交叉引用是非常重要的,交叉引用的重要性在于它能够提供某个确定的数据或者某个函数被调用的位置。

    补丁

       idc.PatchByte(ea, value)   

      idc.PatchWord(ea, value)

      idc.PatchDword(ea, value)

    访问原始数据

      idc.Byte(ea)i

      dc.Word(ea)

      idc.Dword(ea)

      idc.Qword(ea)

      idc.GetFloat(ea)

      idc.GetDouble(ea)

  • 相关阅读:
    「模拟赛20180306」回忆树 memory LCA+KMP+AC自动机+树状数组
    python写一个通讯录
    Git学习笔记
    交换排序
    用Windows自带的方法创建WiFi
    MySQL之触发器
    插入排序
    range和arange的区别
    Spring前后端跨域请求设置
    三、图的定义及遍历
  • 原文地址:https://www.cnblogs.com/whitehawk/p/10810281.html
Copyright © 2011-2022 走看看