Доброго времени суток, мне необходимо исследовать, почему падает загрузчик семерки если перед ним исполняется мой код. Точнее я уже не уверен что это за код падает. В ходе загрузки ОС передает управление по адресу 0с70, где используя отладочные регистры я его перехватываю. Выполняю мой код, восстанавливаю все регистры и запускаю загрузчик. И через некоторое время машина перезагружается. Начал используя аппаратный отладчик исследовать что происходит. На экран выводится сообщение "BlInitializeLibrary failed 0xC0000001" и после этого идет перезагрузка. Долго трассировал и нашел функцию которая возвращает этот код ошибки, и проанализировав память понял что эта функция принадлежит какому-то PE-файлу. У него корректный заголовок, в памяти он лежит по секциям и соответственно встал вопрос его исследования. Соответственно встал вопрос что это за файл? Вроде он выводит меню выбора операционной системы, типа семерка или предшевствувающая версия и ближе к концу есть большой набор строк в юникоде, примерно со смещения 66000H. Или его можно как то обратно собрать и подсунуть IDA? Или есть способ IDA скормить такой разложенный по секциям файл? Также конечно очень интересно почему функция возвращает ошибку. В приложение поместил дамп этого файла. Интересующая ветка идет следующим образом: 401000 -> 41e9a2 -> 41f242 -> 42b437 -> 4295d7 -> 42c96a. Это адреса функций и последняя из них возвращает ошибку. Мне необходимо узнать, что же ей не нравиться. Соответственно подводя резюме моим словам интересуют следующие вопросы: 1. Это дамп какого файла и где он лежит на диске? 2. Как его грамотно подсунуть IDA? 3. Что не нравиться функции по адресу 42c96a? Заранее спасибо. Файл что то не крепится, залью на файлообменник. http://zalil.ru/32032159
acckiitvar Что за виртуалка? без твои писюлек нормально грузится(Так как похоже на инвалид инстал или железо )
>Соответственно встал вопрос что это за файл? Вроде он выводит меню выбора операционной системы, типа семерка или предшевствувающая версия и ближе к концу есть большой набор строк в юникоде, примерно со смещения 66000H. Или его можно как то обратно собрать и подсунуть IDA? Или есть способ IDA скормить такой разложенный по секциям файл? Судя по всему, это небольшой PE файл, который находится в файле bootmgr (он лежит в корне системного раздела Windows). Можно извлечь его Hex-редактором и скормить IDA. Размер, правда, я не знаю, но можно вычислить по количеству, файловому размеру и файловому выравниванию секций.
Да, именно, вопрос что ей не нравиться в моих писюльках? На ХП все работает норм, а на семерке косяк. Виртуалка? Одни реальные машины