Zerui18 / ida_scripts

A set of helper scripts made for IDA Pro >= 7.5 (while debugging).

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

iga_scripts

This is a collection of IDA (V7) Python scripts, which hope to make IDAPython much more user-friendly and enjoyable :D.

Features

This is just an overview, please check the documentations below for the full set of features.

  • memory
    • Pointer
      • RW bytes, int, pointer, string
      • Hex dump
      • Arithmetics ( + - == )
  • struc
    • Types (the type defs, not instances)
      • StrucT
        • Find by name
        • Get id, name, members, size
        • Subscript access for member MemberT
        • Get StrucI instance from Pointer
        • Create struct
        • Add & delete member
        • Add member, automatically managing gaps
      • MemberT
        • Get id, name, type, offset, size
    • Instance (instances with memory addresses)
      • StrucI
        • Get members
        • Subscript access for member value
  • func
    • Func
      • Find by name, ea
      • Property getters
      • Decompile to yield CFunc
    • CFunc
      • Get psuedocode
      • Get body represented as a networkx.DiGraph (really just a tree)
        • Each node is a CItem
    • CItem
      • Property accessors
        • Customised convenient accessors such as
          • Getting the struct / member being accessed
          • Getting the number
      • DFS search for node with lambda condition
      • Subtree query for more complex searches
  • module
    • Module
      • Enumerate all modules
      • Find module by name
  • misc
    • Find local variable in function frame (not working rn.)
    • Find global symbol by name
  • All classes are pretty-printed when evaluated!

WIP

  • Modifying structs, automatically managing members and adjusting offsets.
  • More automation?

Usage

In IDA Pro, select File > Script File and choose the load.py script.

Documentation

Documentation is auto-generated by PyDoc.

About

A set of helper scripts made for IDA Pro >= 7.5 (while debugging).


Languages

Language:Python 100.0%