.text .align 4,0x90 .globl _foo _foo: pushl %ebp movl %esp, %ebp pushl %edi pushl %esi subl $8, %esp movl 8(%ebp), %edi movl $0, -16(%ebp) movl $0, -12(%ebp) .align 4,0x90 L2: movzbl -12(%ebp), %ecx movl $63, %esi movl (%edi), %edx leal 1(%ecx), %eax andl %ecx, %esi andl $-4096, %edx andl $63, %eax sall $6, %eax orl %esi, %edx orl %eax, %edx leal 2(%ecx), %eax addl $3, %ecx andl $63, %eax andl $-16773121, %edx sall $12, %eax andl $63, %ecx sall $18, %ecx orl %eax, %edx orl %ecx, %edx movl %edx, (%edi) movzbl -16(%ebp), %ecx addl $4, %edi movl 12(%ebp), %eax addl $3, -16(%ebp) shrl %cl, %eax andl $7, %eax addl %eax, -12(%ebp) movl 8(%ebp), %eax addl $32, %eax cmpl %eax, %edi jne L2 addl $8, %esp popl %esi popl %edi leave ret .subsections_via_symbols