В IDA View мы можем вызвать вот такое замечательное окошко, которое позволяет задать смещение, относительно которого будут вычисляться поля структуры:
Об этом можно почитать в блоге:
http://www.hexblog.com/?p=63
Проблема в том, что в режиме псевдокода эти смещения нагло игнорируются:
v7 = buff + 0x20C;
А Structure offset (T) не позволяет указать дельту, чтобы отсчитывать смещение не от начала структуры.
Как вызвать нужное окошко с расширенным функционалом или иным образом задать дельту для смущения в режиме псевдокода?
"Хаос всегда побеждает порядок, поскольку лучше организован." (с) Терри Пратчетт
почти никак
такой функционал будет только в ida 7.2
https://www.hex-rays.com/products/ida/support/idadoc/1695.shtml
но можете поиграться с более ограниченным функционалом CONTAINING_RECORD который у вас наверняка доступен
https://www.hex-rays.com/products/decompiler/manual/tricks.shtml#03
либо ваш любимый вариант
написать свой плагин
R>почти никак
R>такой функционал будет только в ida 7.2
R>https://www.hex-rays.com/products/ida/support/idadoc/1695.shtml
Понял, очень грустно.
R>но можете поиграться с более ограниченным функционалом CONTAINING_RECORD который у вас наверняка доступен
R>https://www.hex-rays.com/products/decompiler/manual/tricks.shtml#03
Да, про этот вариант уже прочитал вот тут:
http://www.hexblog.com/?p=544
Но ломать ради одного кусочка кода нормальные структуры очень не хочется.
R>либо ваш любимый вариант
R>написать свой плагин
Похоже на план!
Спасибо большое за ответ!
"Хаос всегда побеждает порядок, поскольку лучше организован." (с) Терри Пратчетт