When assembling the following with nasm:
BITS 64
push 32767
I get 68 ff 7f 00 00
this is interesting to me, since this is the 32b encoding (push dword) – any ideas why it doesn’t resort to the 16b encoding (which would be shorter, and use less stack memory)?
I’ve tried various combinations of immediates, but it just seemingly never uses the 16b encoding.