#自动查找函数头并尽可能的识别为函数 def make_function(opcodes, align=1): start_ea = ida_ida.inf_get_min_ea() while (start_ea >= 0): procea = idc.find_binary(start_ea, SEARCH_DOWN, opcodes) if (procea == idaapi.BADADDR): break start_ea = procea + 1 if (procea % 2) == align: flags = ida_bytes.get_flags(procea-align) if ida_bytes.is_unknown(flags): ida_auto.auto_make_proc(procea-align) msg("%s: %X\n" % (opcodes, procea-align)) func = ida_funcs.get_func(procea) if func != None: start_ea += ida_funcs.calc_func_size(func) make_function("07 21 00") make_function("07 61 00") make_function("07 61 10") make_function("07 e1 00") make_function("07 e1 10") make_function("07 e1 f3") make_function("07 e1 ff") make_function("07 e1 70") make_function("80 07 e1 10", 0) make_function("8c 07 61 10", 0) make_function("84 07 61 00", 0)
转载请注明转自: 听风 , 本文固定链接: IDA Scripts