1.text 2.global __cp_begin 3.hidden __cp_begin 4.global __cp_end 5.hidden __cp_end 6.global __cp_cancel 7.hidden __cp_cancel 8.hidden __cancel 9.global __syscall_cp_asm 10.hidden __syscall_cp_asm 11.type __syscall_cp_asm,@function 12__syscall_cp_asm: 13 mov 4(%esp),%ecx 14 pushl %ebx 15 pushl %esi 16 pushl %edi 17 pushl %ebp 18__cp_begin: 19 movl (%ecx),%eax 20 testl %eax,%eax 21 jnz __cp_cancel 22 movl 24(%esp),%eax 23 movl 28(%esp),%ebx 24 movl 32(%esp),%ecx 25 movl 36(%esp),%edx 26 movl 40(%esp),%esi 27 movl 44(%esp),%edi 28 movl 48(%esp),%ebp 29 int $128 30__cp_end: 31 popl %ebp 32 popl %edi 33 popl %esi 34 popl %ebx 35 ret 36__cp_cancel: 37 popl %ebp 38 popl %edi 39 popl %esi 40 popl %ebx 41 jmp __cancel 42