Catch_me if you can!
Ух, лишь взглянув на мэйн уже в дрожжь бросает, куча всяческих преобразований, которые не охото обращать
Немного изучив бинарь, видим что флаг получается в результате последовательного ксора с 8 байтами строки из 32 байт, ну ок.
так же немного поизучав находим функцию где инициализируется значение dword_6012B4:
значит значения dword не будут совпадать в случае, если процесс не отлаживается и иначе.
глянем в гдб чему же равен флаг после ксор (пока на всякие getenv не смотрим):
О круто, часть флага уже виднеется, значит чтобы собрать флаг нужно, пользоваться отладчиком, ок, но как собрать оставшуюся часть, ведь мы не знаем еще 4 байта?
Теперь вернемся к проверке переменных окружения, уж больно подозрительной кажется проверка переменной "CTF", находим ее значение, чтобы условие выполнилось поксорить 0xfeebfeeb со значением v3 не особо сложно, узнав значение v3 в отладчике, пробуем подставить нужное значение и в CTF и в ASIS открываем гдб, брякаемся на уже знакомый адрес и что же видим?