main: irmovl 0x200,%esp rrmovl %esp,%ebp mrmovl p,%eax pushl %eax irmovl u,%eax pushl %eax call map halt map: pushl %ebp rrmovl %esp,%ebp mrmovl 12(%ebp),%ecx andl %ecx,%ecx jle L3 pushl %ebx mrmovl 8(%ebp),%ebx L1: mrmovl (%ebx),%edx pushl %ecx pushl %edx call f popl %edx popl %ecx rmmovl %eax,(%ebx) irmovl 1,%edx subl %edx,%ecx je L2 irmovl 4,%edx addl %edx,%ebx jmp L1 L2: popl %ebx L3: rrmovl %ebp,%esp popl %ebp ret f: mrmovl 4(%esp),%eax rrmovl %eax,%ecx addl %ecx,%ecx addl %ecx,%ecx addl %ecx,%eax ret .pos 0x100 p: .long 5 u: .long 3 .long 4 .long 8 .long 14 .long 42