Флаги
И не страшно, а, скорее, ужасно. Лично для меня.
Если я пишу на GAS, и компилирую - я вижу код, вообще отличный от того, что я на писал на ассемблере. И так с NASM+Линковщик. Генерируется фиг пойми что.
Но это, естественно, можно убрать, если O3, -fno-stack-protector, -nostartfiles, -ffreestanding
И с большей вероятностью ещё и сломается исполняемый файл))
С FASM генерируется ровно то, что ты пишешь
Ну и не нужно заморачиваться о флагах - одна команда - fasm source.asm