Wenn ich eine Binärdatei mit IDA analysiert, ich die folgende Funktion sah:Argumente an eine Funktion in IDA weitergegeben Pro
Function::Function(void *, unsigned int, void *, unsigned int)
So, wie Sie sehen können, IDA zeigt, dass wir vier Argumente haben. Aber darunter, in der Übersichtsansicht, zeigt IDA, dass wir 5 Argumente haben. Im Folgenden können Sie die Zusammenfassung Ansicht von IDA sehen, wo in der Regel der Argumente und lokale Variablen gezeigt (in diesem Fall haben wir keine lokalen var.):
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
Also, ich frage: Warum ist das so passiert? Ist das ein Fehler von IDA? Oder ist arg_10 eine globale Variable und nicht ein Argument, das an diese Funktion übergeben wird?
Meine Annahme ist, dass IDA den Typ des 5. Arguments nicht auflösen kann, so dass es in der Funktionsdeklaration ausgelassen wird.