OllyDbg - это потрясающий инструмент, который разбирает EXE-файл на читаемые инструкции и позволяет выполнять инструкции по одному. Он также сообщает, какие функции API использует программа и, если возможно, аргументы, которые она предоставляет (при условии, что аргументы находятся в стеке).
Вообще говоря, инструкции процессора имеют переменную длину, некоторые - один байт, другие - два, некоторые - три, некоторые - четыре и т. Д. Это в основном зависит от типа данных, которые ожидает инструкция. Некоторые инструкции являются обобщенными, например, «mov», который сообщает CPU о перемещении данных из регистра CPU в место в памяти или наоборот. В действительности существует много разных команд mov, для обработки 8-битных, 16-битных, 32-битных данных, для перемещения данных из разных регистров и т. Д.
Вы можете взять учебное пособие по языку ассемблера для компьютера доктора Пола Картера , которое представляет собой бесплатную книгу начального уровня, в которой рассказывается о сборке и работе процессора Intel 386. Большинство из них применимо даже к современным потребительским процессорам Intel.
Формат EXE является специфическим для Windows. Точка входа (то есть первая исполняемая инструкция) обычно находится в том же месте в файле EXE. Все это сложно объяснить сразу, но предоставленные мною ресурсы должны помочь вылечить хотя бы часть вашего любопытства! :)