1 .section .rodata.str1.1,"aMS",@progbits,1 2.LC0: 3 .string "PASS" 4 .text 5 .globl check 6 .type check, @function 7check: 8 subl $12, %esp 9 call *get_func1@GOT 10#ifdef CHECK_PLT 11 movl $func1, %edx 12#else 13 movl func1@GOT, %edx 14#endif 15 cmpl %edx, %eax 16 jne .L3 17 cmpl %edx, func1_p 18 jne .L3 19 call *func1@GOT 20 cmpl $1, %eax 21 jne .L3 22 call *call_func1@GOT 23 cmpl $1, %eax 24 jne .L3 25 call *get_func2@GOT 26 cmpl %eax, func2_p 27 jne .L3 28 call *call_func2@GOT 29 cmpl $2, %eax 30 jne .L3 31 subl $12, %esp 32 pushl $.LC0 33 call *puts@GOT 34 addl $28, %esp 35 ret 36.L3: 37 call *abort@GOT 38 .size check, .-check 39 .section .note.GNU-stack,"",@progbits 40