.lcomm var1 4 .global _start _start: # load the address of "var1" into register %eax movl $var1,%eax # eax = &var1 movb $0xcd,2(%eax) # *((char *)eax + 2) = 0xcd movl $0, %ebx movl $1, %eax int $0x80