1 .text 2 .globl foo 3 .p2align 4 4foo: 5 movl %eax, %gs:0x1 6 pushl %ebp 7 pushl %ebp 8 pushl %ebp 9 pushl %ebp 10 movl %esp, %ebp 11 movl %edi, -8(%ebp) 12 movl %esi, -12(%ebp) 13 movl %esi, -12(%ebp) 14 movl %esi, -12(%ebp) 15 movl %esi, -12(%ebp) 16 movl %esi, -12(%ebp) 17 cmp %eax, %ebp 18 jo label2 19 movl %esi, -12(%ebx) 20 movl %esi, -12(%ebp) 21 movl %edi, -8(%ebp) 22 movl %esi, -12(%ebp) 23 movl %esi, -12(%ebp) 24 movl %esi, -12(%ebp) 25 movl %esi, -12(%ebp) 26 movl %esi, -12(%ebp) 27 popl %ebp 28 popl %ebp 29 popl %ebp 30 je label2 31 popl %ebp 32 je label2 33 movl %eax, -4(%esp) 34 movl %esi, -12(%ebp) 35 movl %edi, -8(%ebp) 36 movl %esi, -12(%ebp) 37 movl %esi, -12(%ebp) 38 movl %esi, -12(%ebp) 39 movl %esi, -12(%ebp) 40 movl %esi, -12(%ebp) 41 popl %ebp 42 jmp label3 43 jmp label3 44 jmp label3 45 movl %eax, -4(%ebp) 46 movl %esi, -12(%ebp) 47 movl %edi, -8(%ebp) 48 popl %ebp 49 popl %ebp 50 inc %eax 51 jc label2 52 movl %eax, -4(%ebp) 53 movl %esi, -12(%ebp) 54 movl %edi, -8(%ebp) 55 movl %esi, -12(%ebp) 56 and %eax, %ebx 57 jl label3 58label2: 59 movl -12(%ebp), %eax 60 movl %eax, -4(%ebp) 61label3: 62 movl %esi, -1200(%ebp) 63 movl %esi, -1200(%ebp) 64 movl %esi, -1200(%ebp) 65 movl %esi, -1200(%ebp) 66 movl %esi, 12(%ebp) 67 jmp bar 68 movl %esi, -1200(%ebp) 69 movl %esi, -1200(%ebp) 70 movl %esi, -1200(%ebp) 71 movl %esi, -1200(%ebp) 72 movl %esi, (%ebp) 73 je label3 74 je label3 75