_syscall1() dump: Dump of assembler code for function umask: 0x0000000000000030 : mov $0x5f,%eax 0x0000000000000035 : movslq %edi,%rdi 0x0000000000000038 : syscall 0x000000000000003a : cmp $0xffffffffffffff80,%rax 0x000000000000003e : jbe 0x51 0x0000000000000040 : neg %rax 0x0000000000000043 : mov %rax,0(%rip) # 0x4a 0x000000000000004a : mov $0xffffffffffffffff,%rax 0x0000000000000051 : retq 0x0000000000000052 : data16 0x0000000000000053 : data16 0x0000000000000054 : data16 0x0000000000000055 : nop 0x0000000000000056 : data16 0x0000000000000057 : data16 0x0000000000000058 : data16 0x0000000000000059 : nop 0x000000000000005a : data16 0x000000000000005b : data16 0x000000000000005c : nop 0x000000000000005d : data16 0x000000000000005e : data16 0x000000000000005f : nop INLINE_SYCALL() dump: Dump of assembler code for function wrapper_umask: 0x0000000000000000 : mov %edi,%edi 0x0000000000000002 : mov $0x5f,%rax 0x0000000000000009 : syscall 0x000000000000000b : cmp $0xfffffffffffff000,%rax 0x0000000000000011 : jbe 0x24 0x0000000000000013 : neg %rax 0x0000000000000016 : mov %rax,0(%rip) # 0x1d 0x000000000000001d : mov $0xffffffffffffffff,%rax 0x0000000000000024 : retq 0x0000000000000025 : data16 0x0000000000000026 : data16 0x0000000000000027 : data16 0x0000000000000028 : nop 0x0000000000000029 : data16 0x000000000000002a : data16 0x000000000000002b : data16 0x000000000000002c : nop 0x000000000000002d : data16 0x000000000000002e : data16 0x000000000000002f : nop Disassemble of umask() from a statically linked prog: #include #include #include int main() { umask(666); return 0; } Dump of assembler code for function umask: 0x0000000000406a20 : mov $0x5f,%rax 0x0000000000406a27 : syscall 0x0000000000406a29 : retq 0x0000000000406a2a : nop 0x0000000000406a2b : nop 0x0000000000406a2c : nop 0x0000000000406a2d : nop 0x0000000000406a2e : nop 0x0000000000406a2f : nop