Я работаю над небольшим скриптом IDAPython.
Сам скрипт работает 100% времени на таких строках:
qword_FFFFFFF006F1E6C0 DCQ 0xFFFFFFF007758C18
Как это выглядитв адрес 0xFFFF..
видит, есть ли там функция, и, если есть, переименовывает qword с именем функции + информация о сегменте.
Теперь, иногда, разборка выглядит так:
off_FFFFFFF006F1E690 DCQ OSDictionary::withCapacity(uint)
, и, конечно, здесь сценарий ломается (ожидает адрес, ему дается имя ..).
Что я хотел бы сделать, это получить адрес второго операнда (OSDictionary::with...
) и выполните скрипт как обычно.
К сожалению, я понятия не имею, как это сделать, чтобы получить адрес, который я использую:
disas = GetDisasm(addr).split(" ")
fun_addr = disas[1]
....