Perl scripting for the IDA disassembler

i created a plugin for ida (the interactive disassembler), which allows you to script ida in perl. the current api is identical to the ida idc scripting language. current features:

  • api identical to the IDC scripting language.
  • printing to STDOUT, is redirected to the ida message window
  • you can choose to create a new perl instance for every script you want to run, or to reuse the last interpreter. every database can have some ‘autorun’ code, which is executed everytime you start ida, for instance to add hotkeys specific to this database.
  • perl syntax errors are printed in the ida message window

todo:

  • create ‘import idc’ function, which can convert idc scripts to perl.
  • create better ui to manage scripts.
  • create method of interacting with IDA/IDAPerl from an externally running perl script
  • add support for the complete IDA api.
  • hook ida notification points
  • make scripts interruptable

see this page on my site, or this openrce forum