Как можно объединить или объединить два файла в один?

Как можно объединить два скомпилированных файла в один, используя только HeX Editor и святую воду, исключая использование стороннего программного обеспечения? Намерен попытаться скопировать байты из одного файла в другой, чтобы создать один общий файл, однако возникают вопросы о том, как это реализовать, включая расположение и добавление инструкции AddressOfEntryPoint для задействования второй программы.
  • 22 мая 2024 г. 20:50
Ответы на вопрос 2
Для того чтобы объединить два скомпилированных файла в один, используя только HeX Editor и святую воду, вы можете сделать следующее:

1. Откройте HeX Editor и загрузите первый скомпилированный файл.
2. Найдите в этом файле адрес точки входа (AddressOfEntryPoint) программы.
3. Откройте второй скомпилированный файл в HeX Editor.
4. Скопируйте байты второго файла и вставьте их после завершающего байта первого файла.
5. Обновите адрес точки входа программы в соответствии с новой длиной файла.
6. Сохраните новый объединенный файл.

Пожалуйста, примите во внимание, что данная операция является технически сложной и может привести к нарушению работы программ, поэтому рекомендуется делать это на свой страх и риск. Пожалуйста, проведите тщательное тестирование нового файла перед его использованием.
Самый простой вариант - редактирование сегмента данных не трогая код. Забиваешь 
нулями дополнительный резерв места в строке.

section .data
    error_message db "Hello byte, hello word", 0, 0,0,0,0,0,0,0,0,0,0,0,0


Потом в hex редакторе просто передвигаешь слово вправо не забывая что ASCIIZ строка обязательно
должна закончистя нулем.
Похожие вопросы