def Entries(): """ Returns a list of entry points @return: List of tuples (index, ordinal, ea, name) """ n = idaapi.get_entry_qty() for i in xrange(0, n): ordinal = idaapi.get_entry_ordinal(i) ea = idaapi.get_entry(ordinal) name = idaapi.get_entry_name(ordinal) yield (i, ordinal, ea, name)
def find_entrypoint(self): ordinal = 0 number_entry = idaapi.get_entry_qty() print("Number of Entry point: " + str(number_entry)) ordinal = idaapi.get_entry_ordinal(number_entry - 1) print("Entry ordinals: " + str(ordinal)) self.entryaddress = idaapi.get_entry(ordinal) self.entryname = idaapi.get_entry_name(ordinal) print("Entry : " + self.entryname + " " + str(self.entryaddress))
def addEntry(name, ea, ordinal=None): '''addEntry(name, ea, index?) -> adds an entry point to the database''' return idaapi.add_entry( idaapi.get_entry_qty() if ordinal is None else ordinal, ea, name, 0)
import idaapi import idc import types import os idt = GetIdbPath() idt = idt.replace('.idb', '.idt') idt = idt.replace('.i64', '.idt') dll = GetInputFile() f = open(idt, 'wb') f.write("0 Name = %s\n" % (dll)) for i in xrange(idaapi.get_entry_qty()): fn = idaapi.getn_func(i) a = fn.startEA if a != BADADDR: eo = GetEntryOrdinal(i) nm = GetFunctionName(GetEntryPoint(eo)) if nm != '': f.write("%d Name=%s\n" % (eo, nm)) f.close()
def addEntry(name, ea, ordinal=None): '''addEntry(name, ea, index?) -> adds an entry point to the database''' return idaapi.add_entry(idaapi.get_entry_qty() if ordinal is None else ordinal, ea, name, 0)