Похоже, что 0xFFFFFFFF был вставлен вместо 0xFF для инструкции по тестированию, возможно, с ошибкой?
85 = test r / m32, а 78 - это байт для параметров [eax + disp8], edi, с последующим disp8, который должен быть просто 0xFF (-1), но как 32-разрядное целое число со знаком это 0xFFFFFFFF .
Итак, я предполагаю, что у вас есть 85 78 FF FF FF FF, где должно быть 85 B8 FF FF FF FF для 32-битного смещения или 85 78 FF для 8-битного смещения? Если это так, то следующий байт в коде должен быть 0xFF ...
Конечно, как уже предлагалось, это могут быть просто данные, и не забывайте, что данные могут храниться в PE-файлах, и нет строгой гарантии какой-либо конкретной структуры. Вы можете вставить код или определенные пользователем данные в некоторые поля заголовков MZ или PE, если агрессивно оптимизируете, чтобы уменьшить размер .exe.
РЕДАКТИРОВАТЬ: согласно комментариям ниже, я бы также рекомендовал использовать исполняемый файл, в котором вы уже точно знаете, каким должен быть ожидаемый дизассемблированный код.