Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Вопрос Ida pro switch

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
6 Июн 2024
Сообщения
268
Реакции
15
Щас ревершу дллку с обычным Control Flow Flattening реализуемым через свитч

1764098298606.png


проблема в том что после декомпиляции показывает такую картину

1764098373411.png


то есть свитча тут не видно, хотя он должен быть, и ошибок по типу bad sp value нету, я пробовал самостоятельно модифицировать свитч через Other->Specify Switch Idiom
и менял там Input Register например с правильного (rax) на любой другой, и после этого видел такую картину

1764098541432.png


то есть оно уже видит нормально свитч, но использует в нём неправильное значение в виде jpt_661C94B6.
Я бы хотел как-то нормально сдекомпилировать что-бы получить правильный результат
 
Последнее редактирование:
hi, u can create a var like state = rax, delete the bogus switch on jpt_661C94B6, then reapply SSI using state as the input

if it fails, try an ida plugin like deflat or unflatten.

Пожалуйста, авторизуйтесь для просмотра ссылки.
Это бессмысленно, т.к. все ломается на этапе MMAT_PREOPTIMIZED, из простого jtbl оно превращается в пару блоков в никуда
 
Назад
Сверху Снизу