Ghidra: изменение порядка веток then/else в операторах ветвления

Проект Гидра (Ghidra) активно используется для анализа двоичного кода и декомпиляции в язык Си, который исследователь сможет прочитать и понять. Однако иногда при трансляции проекта компилятор меняет местами ветки then и else из соображений производительности, и восстановленный Гидрой исходный код уже отражает эту транспозицию веток. Это не всегда удобно для исследователя. В данной задаче требуется научить гидру переставлять местами ветки ветвления по запросу из IDE или еще каким-нибудь способом. Ожидается плагин/патч к Гидре. Важно, чтобы это не был отдельный пост-процессинг, а именно плагин или патч к Гидре.

Требования к студенту

Знакомство с asm и c++

Уровень

2 курс


Руководитель

еще не назначен


Консультант

Смирнов Кирилл Константинович


Источник

Кафедра системного программирования СПбГУ