I'm writing a script to find out how many functions were recognized after applying a FLIRT signature library, I'm using idapython I would like to know if I can apply the signatures by the script.
1 Answer
You can apply FLIRT signatures using plan_to_apply_idasgn
function from ida_funcs
module.
From the official API documentation:
def plan_to_apply_idasgn(*args) ‑> int
Add a signature file to the list of planned signature files.
plan_to_apply_idasgn(fname) -> int
fname: file name. should not contain directory part. (C++: const char *)
return: 0 if failed, otherwise number of planned (and applied) signatures
If you have an older version of IDA (before 7.4
), you can use idc.ApplySig
function (see link and link).