objdump -d t1 > t1.disasm.txt t1: file format elf64-x86-64 Disassembly of section .init: 0000000000000760 <_init>: 760: 48 83 ec 08 sub $0x8,%rsp 764: 48 8b 05 7d 18 20 00 mov 0x20187d(%rip),%rax # 201fe8 <__gmon_start__> 76b: 48 85 c0 test %rax,%rax 76e: 74 02 je 772 <_init+0x12> 770: ff d0 callq *%rax 772: 48 83 c4 08 add $0x8,%rsp 776: c3 retq Disassembly of section .plt: 0000000000000780 <.plt>: 780: ff 35 fa 17 20 00 pushq 0x2017fa(%rip) # 201f80 <_GLOBAL_OFFSET_TABLE_+0x8> 786: ff 25 fc 17 20 00 jmpq *0x2017fc(%rip) # 201f88 <_GLOBAL_OFFSET_TABLE_+0x10> 78c: 0f 1f 40 00 nopl 0x0(%rax) 0000000000000790 : 790: ff 25 fa 17 20 00 jmpq *0x2017fa(%rip) # 201f90 796: 68 00 00 00 00 pushq $0x0 79b: e9 e0 ff ff ff jmpq 780 <.plt> 00000000000007a0 <__stack_chk_fail@plt>: 7a0: ff 25 f2 17 20 00 jmpq *0x2017f2(%rip) # 201f98 <__stack_chk_fail@GLIBC_2.4> 7a6: 68 01 00 00 00 pushq $0x1 7ab: e9 d0 ff ff ff jmpq 780 <.plt> 00000000000007b0 : 7b0: ff 25 ea 17 20 00 jmpq *0x2017ea(%rip) # 201fa0 7b6: 68 02 00 00 00 pushq $0x2 7bb: e9 c0 ff ff ff jmpq 780 <.plt> 00000000000007c0 : 7c0: ff 25 e2 17 20 00 jmpq *0x2017e2(%rip) # 201fa8 7c6: 68 03 00 00 00 pushq $0x3 7cb: e9 b0 ff ff ff jmpq 780 <.plt> 00000000000007d0 <__assert_fail@plt>: 7d0: ff 25 da 17 20 00 jmpq *0x2017da(%rip) # 201fb0 <__assert_fail@GLIBC_2.2.5> 7d6: 68 04 00 00 00 pushq $0x4 7db: e9 a0 ff ff ff jmpq 780 <.plt> 00000000000007e0 : 7e0: ff 25 d2 17 20 00 jmpq *0x2017d2(%rip) # 201fb8 7e6: 68 05 00 00 00 pushq $0x5 7eb: e9 90 ff ff ff jmpq 780 <.plt> 00000000000007f0 : 7f0: ff 25 ca 17 20 00 jmpq *0x2017ca(%rip) # 201fc0 7f6: 68 06 00 00 00 pushq $0x6 7fb: e9 80 ff ff ff jmpq 780 <.plt> 0000000000000800 : 800: ff 25 c2 17 20 00 jmpq *0x2017c2(%rip) # 201fc8 806: 68 07 00 00 00 pushq $0x7 80b: e9 70 ff ff ff jmpq 780 <.plt> 0000000000000810 : 810: ff 25 ba 17 20 00 jmpq *0x2017ba(%rip) # 201fd0 816: 68 08 00 00 00 pushq $0x8 81b: e9 60 ff ff ff jmpq 780 <.plt> Disassembly of section .plt.got: 0000000000000820 <__cxa_finalize@plt>: 820: ff 25 d2 17 20 00 jmpq *0x2017d2(%rip) # 201ff8 <__cxa_finalize@GLIBC_2.2.5> 826: 66 90 xchg %ax,%ax Disassembly of section .text: 0000000000000830 <_start>: 830: 31 ed xor %ebp,%ebp 832: 49 89 d1 mov %rdx,%r9 835: 5e pop %rsi 836: 48 89 e2 mov %rsp,%rdx 839: 48 83 e4 f0 and $0xfffffffffffffff0,%rsp 83d: 50 push %rax 83e: 54 push %rsp 83f: 4c 8d 05 8a 04 00 00 lea 0x48a(%rip),%r8 # cd0 <__libc_csu_fini> 846: 48 8d 0d 13 04 00 00 lea 0x413(%rip),%rcx # c60 <__libc_csu_init> 84d: 48 8d 3d 4e 02 00 00 lea 0x24e(%rip),%rdi # aa2
854: ff 15 86 17 20 00 callq *0x201786(%rip) # 201fe0 <__libc_start_main@GLIBC_2.2.5> 85a: f4 hlt 85b: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 0000000000000860 : 860: 48 8d 3d a9 17 20 00 lea 0x2017a9(%rip),%rdi # 202010 <__TMC_END__> 867: 55 push %rbp 868: 48 8d 05 a1 17 20 00 lea 0x2017a1(%rip),%rax # 202010 <__TMC_END__> 86f: 48 39 f8 cmp %rdi,%rax 872: 48 89 e5 mov %rsp,%rbp 875: 74 19 je 890 877: 48 8b 05 5a 17 20 00 mov 0x20175a(%rip),%rax # 201fd8 <_ITM_deregisterTMCloneTable> 87e: 48 85 c0 test %rax,%rax 881: 74 0d je 890 883: 5d pop %rbp 884: ff e0 jmpq *%rax 886: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) 88d: 00 00 00 890: 5d pop %rbp 891: c3 retq 892: 0f 1f 40 00 nopl 0x0(%rax) 896: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) 89d: 00 00 00 00000000000008a0 : 8a0: 48 8d 3d 69 17 20 00 lea 0x201769(%rip),%rdi # 202010 <__TMC_END__> 8a7: 48 8d 35 62 17 20 00 lea 0x201762(%rip),%rsi # 202010 <__TMC_END__> 8ae: 55 push %rbp 8af: 48 29 fe sub %rdi,%rsi 8b2: 48 89 e5 mov %rsp,%rbp 8b5: 48 c1 fe 03 sar $0x3,%rsi 8b9: 48 89 f0 mov %rsi,%rax 8bc: 48 c1 e8 3f shr $0x3f,%rax 8c0: 48 01 c6 add %rax,%rsi 8c3: 48 d1 fe sar %rsi 8c6: 74 18 je 8e0 8c8: 48 8b 05 21 17 20 00 mov 0x201721(%rip),%rax # 201ff0 <_ITM_registerTMCloneTable> 8cf: 48 85 c0 test %rax,%rax 8d2: 74 0c je 8e0 8d4: 5d pop %rbp 8d5: ff e0 jmpq *%rax 8d7: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1) 8de: 00 00 8e0: 5d pop %rbp 8e1: c3 retq 8e2: 0f 1f 40 00 nopl 0x0(%rax) 8e6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) 8ed: 00 00 00 00000000000008f0 <__do_global_dtors_aux>: 8f0: 80 3d 31 17 20 00 00 cmpb $0x0,0x201731(%rip) # 202028 8f7: 75 2f jne 928 <__do_global_dtors_aux+0x38> 8f9: 48 83 3d f7 16 20 00 cmpq $0x0,0x2016f7(%rip) # 201ff8 <__cxa_finalize@GLIBC_2.2.5> 900: 00 901: 55 push %rbp 902: 48 89 e5 mov %rsp,%rbp 905: 74 0c je 913 <__do_global_dtors_aux+0x23> 907: 48 8b 3d fa 16 20 00 mov 0x2016fa(%rip),%rdi # 202008 <__dso_handle> 90e: e8 0d ff ff ff callq 820 <__cxa_finalize@plt> 913: e8 48 ff ff ff callq 860 918: c6 05 09 17 20 00 01 movb $0x1,0x201709(%rip) # 202028 91f: 5d pop %rbp 920: c3 retq 921: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) 928: f3 c3 repz retq 92a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) 0000000000000930 : 930: 55 push %rbp 931: 48 89 e5 mov %rsp,%rbp 934: 5d pop %rbp 935: e9 66 ff ff ff jmpq 8a0 000000000000093a : 93a: 55 push %rbp 93b: 48 89 e5 mov %rsp,%rbp 93e: 48 83 ec 30 sub $0x30,%rsp 942: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax 949: 00 00 94b: 48 89 45 f8 mov %rax,-0x8(%rbp) 94f: 31 c0 xor %eax,%eax 951: 48 8d 45 e0 lea -0x20(%rbp),%rax 955: be 00 00 00 00 mov $0x0,%esi 95a: 48 89 c7 mov %rax,%rdi 95d: e8 5e fe ff ff callq 7c0 962: 89 45 dc mov %eax,-0x24(%rbp) 965: 83 7d dc 00 cmpl $0x0,-0x24(%rbp) 969: 74 1f je 98a 96b: 48 8d 0d f6 04 00 00 lea 0x4f6(%rip),%rcx # e68 <__PRETTY_FUNCTION__.3426> 972: ba 0b 00 00 00 mov $0xb,%edx 977: 48 8d 35 6a 03 00 00 lea 0x36a(%rip),%rsi # ce8 <_IO_stdin_used+0x8> 97e: 48 8d 3d 77 03 00 00 lea 0x377(%rip),%rdi # cfc <_IO_stdin_used+0x1c> 985: e8 46 fe ff ff callq 7d0 <__assert_fail@plt> 98a: 48 8b 45 e0 mov -0x20(%rbp),%rax 98e: f2 48 0f 2a c8 cvtsi2sd %rax,%xmm1 993: 48 8b 45 e8 mov -0x18(%rbp),%rax 997: f2 48 0f 2a c0 cvtsi2sd %rax,%xmm0 99c: f2 0f 10 15 d4 04 00 movsd 0x4d4(%rip),%xmm2 # e78 <__PRETTY_FUNCTION__.3479+0x8> 9a3: 00 9a4: f2 0f 5e c2 divsd %xmm2,%xmm0 9a8: f2 0f 58 c1 addsd %xmm1,%xmm0 9ac: 48 8b 45 f8 mov -0x8(%rbp),%rax 9b0: 64 48 33 04 25 28 00 xor %fs:0x28,%rax 9b7: 00 00 9b9: 74 05 je 9c0 9bb: e8 e0 fd ff ff callq 7a0 <__stack_chk_fail@plt> 9c0: c9 leaveq 9c1: c3 retq 00000000000009c2 : 9c2: 55 push %rbp 9c3: 48 89 e5 mov %rsp,%rbp 9c6: 48 83 ec 20 sub $0x20,%rsp 9ca: 89 7d ec mov %edi,-0x14(%rbp) 9cd: b8 00 00 00 00 mov $0x0,%eax 9d2: e8 63 ff ff ff callq 93a 9d7: 66 48 0f 7e c0 movq %xmm0,%rax 9dc: 48 89 45 f8 mov %rax,-0x8(%rbp) 9e0: 90 nop 9e1: b8 00 00 00 00 mov $0x0,%eax 9e6: e8 4f ff ff ff callq 93a 9eb: 66 0f 28 c8 movapd %xmm0,%xmm1 9ef: f2 0f 5c 4d f8 subsd -0x8(%rbp),%xmm1 9f4: f2 0f 2a 45 ec cvtsi2sdl -0x14(%rbp),%xmm0 9f9: 66 0f 2e c1 ucomisd %xmm1,%xmm0 9fd: 77 e2 ja 9e1 9ff: 90 nop a00: c9 leaveq a01: c3 retq 0000000000000a02 : a02: 55 push %rbp a03: 48 89 e5 mov %rsp,%rbp a06: 48 83 ec 30 sub $0x30,%rsp a0a: 48 89 7d d8 mov %rdi,-0x28(%rbp) a0e: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax a15: 00 00 a17: 48 89 45 f8 mov %rax,-0x8(%rbp) a1b: 31 c0 xor %eax,%eax a1d: 48 8b 45 d8 mov -0x28(%rbp),%rax a21: 48 89 45 f0 mov %rax,-0x10(%rbp) a25: 48 8d 55 ec lea -0x14(%rbp),%rdx a29: 48 8b 45 f0 mov -0x10(%rbp),%rax a2d: 48 89 c6 mov %rax,%rsi a30: 48 8d 3d cd 02 00 00 lea 0x2cd(%rip),%rdi # d04 <_IO_stdin_used+0x24> a37: b8 00 00 00 00 mov $0x0,%eax a3c: e8 6f fd ff ff callq 7b0 a41: c7 45 ec 00 00 00 00 movl $0x0,-0x14(%rbp) a48: eb 18 jmp a62 a4a: 8b 05 dc 15 20 00 mov 0x2015dc(%rip),%eax # 20202c a50: 83 c0 01 add $0x1,%eax a53: 89 05 d3 15 20 00 mov %eax,0x2015d3(%rip) # 20202c a59: 8b 45 ec mov -0x14(%rbp),%eax a5c: 83 c0 01 add $0x1,%eax a5f: 89 45 ec mov %eax,-0x14(%rbp) a62: 8b 55 ec mov -0x14(%rbp),%edx a65: 8b 05 c5 15 20 00 mov 0x2015c5(%rip),%eax # 202030 a6b: 39 c2 cmp %eax,%edx a6d: 7c db jl a4a a6f: 48 8b 45 f0 mov -0x10(%rbp),%rax a73: 48 89 c6 mov %rax,%rsi a76: 48 8d 3d a2 02 00 00 lea 0x2a2(%rip),%rdi # d1f <_IO_stdin_used+0x3f> a7d: b8 00 00 00 00 mov $0x0,%eax a82: e8 29 fd ff ff callq 7b0 a87: b8 00 00 00 00 mov $0x0,%eax a8c: 48 8b 4d f8 mov -0x8(%rbp),%rcx a90: 64 48 33 0c 25 28 00 xor %fs:0x28,%rcx a97: 00 00 a99: 74 05 je aa0 a9b: e8 00 fd ff ff callq 7a0 <__stack_chk_fail@plt> aa0: c9 leaveq aa1: c3 retq 0000000000000aa2
: aa2: 55 push %rbp aa3: 48 89 e5 mov %rsp,%rbp aa6: 48 83 ec 30 sub $0x30,%rsp aaa: 89 7d dc mov %edi,-0x24(%rbp) aad: 48 89 75 d0 mov %rsi,-0x30(%rbp) ab1: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax ab8: 00 00 aba: 48 89 45 f8 mov %rax,-0x8(%rbp) abe: 31 c0 xor %eax,%eax ac0: 83 7d dc 02 cmpl $0x2,-0x24(%rbp) ac4: 74 2a je af0 ac6: 48 8b 05 53 15 20 00 mov 0x201553(%rip),%rax # 202020 acd: 48 89 c1 mov %rax,%rcx ad0: ba 1e 00 00 00 mov $0x1e,%edx ad5: be 01 00 00 00 mov $0x1,%esi ada: 48 8d 3d 4f 02 00 00 lea 0x24f(%rip),%rdi # d30 <_IO_stdin_used+0x50> ae1: e8 2a fd ff ff callq 810 ae6: bf 01 00 00 00 mov $0x1,%edi aeb: e8 10 fd ff ff callq 800 af0: 48 8b 45 d0 mov -0x30(%rbp),%rax af4: 48 83 c0 08 add $0x8,%rax af8: 48 8b 00 mov (%rax),%rax afb: 48 89 c7 mov %rax,%rdi afe: e8 ed fc ff ff callq 7f0 b03: 89 05 27 15 20 00 mov %eax,0x201527(%rip) # 202030 b09: 8b 05 1d 15 20 00 mov 0x20151d(%rip),%eax # 20202c b0f: 48 8d 15 16 15 20 00 lea 0x201516(%rip),%rdx # 20202c b16: 89 c6 mov %eax,%esi b18: 48 8d 3d 31 02 00 00 lea 0x231(%rip),%rdi # d50 <_IO_stdin_used+0x70> b1f: b8 00 00 00 00 mov $0x0,%eax b24: e8 87 fc ff ff callq 7b0 b29: 48 8d 45 e8 lea -0x18(%rbp),%rax b2d: 48 8d 0d 3d 02 00 00 lea 0x23d(%rip),%rcx # d71 <_IO_stdin_used+0x91> b34: 48 8d 15 c7 fe ff ff lea -0x139(%rip),%rdx # a02 b3b: be 00 00 00 00 mov $0x0,%esi b40: 48 89 c7 mov %rax,%rdi b43: e8 48 fc ff ff callq 790 b48: 85 c0 test %eax,%eax b4a: 74 1f je b6b b4c: 48 8d 0d 1d 03 00 00 lea 0x31d(%rip),%rcx # e70 <__PRETTY_FUNCTION__.3479> b53: ba 20 00 00 00 mov $0x20,%edx b58: 48 8d 35 14 02 00 00 lea 0x214(%rip),%rsi # d73 <_IO_stdin_used+0x93> b5f: 48 8d 3d 12 02 00 00 lea 0x212(%rip),%rdi # d78 <_IO_stdin_used+0x98> b66: e8 65 fc ff ff callq 7d0 <__assert_fail@plt> b6b: 48 8d 45 f0 lea -0x10(%rbp),%rax b6f: 48 8d 0d 37 02 00 00 lea 0x237(%rip),%rcx # dad <_IO_stdin_used+0xcd> b76: 48 8d 15 85 fe ff ff lea -0x17b(%rip),%rdx # a02 b7d: be 00 00 00 00 mov $0x0,%esi b82: 48 89 c7 mov %rax,%rdi b85: e8 06 fc ff ff callq 790 b8a: 85 c0 test %eax,%eax b8c: 74 1f je bad b8e: 48 8d 0d db 02 00 00 lea 0x2db(%rip),%rcx # e70 <__PRETTY_FUNCTION__.3479> b95: ba 21 00 00 00 mov $0x21,%edx b9a: 48 8d 35 d2 01 00 00 lea 0x1d2(%rip),%rsi # d73 <_IO_stdin_used+0x93> ba1: 48 8d 3d 08 02 00 00 lea 0x208(%rip),%rdi # db0 <_IO_stdin_used+0xd0> ba8: e8 23 fc ff ff callq 7d0 <__assert_fail@plt> bad: 48 8b 45 e8 mov -0x18(%rbp),%rax bb1: be 00 00 00 00 mov $0x0,%esi bb6: 48 89 c7 mov %rax,%rdi bb9: e8 22 fc ff ff callq 7e0 bbe: 85 c0 test %eax,%eax bc0: 74 1f je be1 bc2: 48 8d 0d a7 02 00 00 lea 0x2a7(%rip),%rcx # e70 <__PRETTY_FUNCTION__.3479> bc9: ba 23 00 00 00 mov $0x23,%edx bce: 48 8d 35 9e 01 00 00 lea 0x19e(%rip),%rsi # d73 <_IO_stdin_used+0x93> bd5: 48 8d 3d 0c 02 00 00 lea 0x20c(%rip),%rdi # de8 <_IO_stdin_used+0x108> bdc: e8 ef fb ff ff callq 7d0 <__assert_fail@plt> be1: 48 8b 45 f0 mov -0x10(%rbp),%rax be5: be 00 00 00 00 mov $0x0,%esi bea: 48 89 c7 mov %rax,%rdi bed: e8 ee fb ff ff callq 7e0 bf2: 85 c0 test %eax,%eax bf4: 74 1f je c15 bf6: 48 8d 0d 73 02 00 00 lea 0x273(%rip),%rcx # e70 <__PRETTY_FUNCTION__.3479> bfd: ba 24 00 00 00 mov $0x24,%edx c02: 48 8d 35 6a 01 00 00 lea 0x16a(%rip),%rsi # d73 <_IO_stdin_used+0x93> c09: 48 8d 3d 00 02 00 00 lea 0x200(%rip),%rdi # e10 <_IO_stdin_used+0x130> c10: e8 bb fb ff ff callq 7d0 <__assert_fail@plt> c15: 8b 05 15 14 20 00 mov 0x201415(%rip),%eax # 202030 c1b: 8d 14 00 lea (%rax,%rax,1),%edx c1e: 8b 05 08 14 20 00 mov 0x201408(%rip),%eax # 20202c c24: 89 c6 mov %eax,%esi c26: 48 8d 3d 0b 02 00 00 lea 0x20b(%rip),%rdi # e38 <_IO_stdin_used+0x158> c2d: b8 00 00 00 00 mov $0x0,%eax c32: e8 79 fb ff ff callq 7b0 c37: b8 00 00 00 00 mov $0x0,%eax c3c: 48 8b 4d f8 mov -0x8(%rbp),%rcx c40: 64 48 33 0c 25 28 00 xor %fs:0x28,%rcx c47: 00 00 c49: 74 05 je c50 c4b: e8 50 fb ff ff callq 7a0 <__stack_chk_fail@plt> c50: c9 leaveq c51: c3 retq c52: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) c59: 00 00 00 c5c: 0f 1f 40 00 nopl 0x0(%rax) 0000000000000c60 <__libc_csu_init>: c60: 41 57 push %r15 c62: 41 56 push %r14 c64: 49 89 d7 mov %rdx,%r15 c67: 41 55 push %r13 c69: 41 54 push %r12 c6b: 4c 8d 25 f6 10 20 00 lea 0x2010f6(%rip),%r12 # 201d68 <__frame_dummy_init_array_entry> c72: 55 push %rbp c73: 48 8d 2d f6 10 20 00 lea 0x2010f6(%rip),%rbp # 201d70 <__init_array_end> c7a: 53 push %rbx c7b: 41 89 fd mov %edi,%r13d c7e: 49 89 f6 mov %rsi,%r14 c81: 4c 29 e5 sub %r12,%rbp c84: 48 83 ec 08 sub $0x8,%rsp c88: 48 c1 fd 03 sar $0x3,%rbp c8c: e8 cf fa ff ff callq 760 <_init> c91: 48 85 ed test %rbp,%rbp c94: 74 20 je cb6 <__libc_csu_init+0x56> c96: 31 db xor %ebx,%ebx c98: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) c9f: 00 ca0: 4c 89 fa mov %r15,%rdx ca3: 4c 89 f6 mov %r14,%rsi ca6: 44 89 ef mov %r13d,%edi ca9: 41 ff 14 dc callq *(%r12,%rbx,8) cad: 48 83 c3 01 add $0x1,%rbx cb1: 48 39 dd cmp %rbx,%rbp cb4: 75 ea jne ca0 <__libc_csu_init+0x40> cb6: 48 83 c4 08 add $0x8,%rsp cba: 5b pop %rbx cbb: 5d pop %rbp cbc: 41 5c pop %r12 cbe: 41 5d pop %r13 cc0: 41 5e pop %r14 cc2: 41 5f pop %r15 cc4: c3 retq cc5: 90 nop cc6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1) ccd: 00 00 00 0000000000000cd0 <__libc_csu_fini>: cd0: f3 c3 repz retq Disassembly of section .fini: 0000000000000cd4 <_fini>: cd4: 48 83 ec 08 sub $0x8,%rsp cd8: 48 83 c4 08 add $0x8,%rsp cdc: c3 retq