示例:main_program_text
# 示例:main_program_text
main_program: file format elf64-x86-64
Disassembly of section .init:
00000000000005e8 <_init>:
5e8: 48 83 ec 08 sub $0x8,%rsp
5ec: 48 8b 05 f5 09 20 00 mov 0x2009f5(%rip),%rax # 200fe8 <__gmon_start__>
5f3: 48 85 c0 test %rax,%rax
5f6: 74 02 je 5fa <_init+0x12>
5f8: ff d0 callq *%rax
5fa: 48 83 c4 08 add $0x8,%rsp
5fe: c3 retq
Disassembly of section .plt:
0000000000000600 <.plt>:
600: ff 35 b2 09 20 00 pushq 0x2009b2(%rip) # 200fb8 <_GLOBAL_OFFSET_TABLE_+0x8>
606: ff 25 b4 09 20 00 jmpq *0x2009b4(%rip) # 200fc0 <_GLOBAL_OFFSET_TABLE_+0x10>
60c: 0f 1f 40 00 nopl 0x0(%rax)
0000000000000610 <add@plt>:
610: ff 25 b2 09 20 00 jmpq *0x2009b2(%rip) # 200fc8 <add>
616: 68 00 00 00 00 pushq $0x0
61b: e9 e0 ff ff ff jmpq 600 <.plt>
0000000000000620 :
620: ff 25 aa 09 20 00 jmpq *0x2009aa(%rip) # 200fd0
626: 68 01 00 00 00 pushq $0x1
62b: e9 d0 ff ff ff jmpq 600 <.plt>
Disassembly of section .plt.got:
0000000000000630 <__cxa_finalize@plt>:
630: ff 25 c2 09 20 00 jmpq *0x2009c2(%rip) # 200ff8 <__cxa_finalize@GLIBC_2.2.5>
636: 66 90 xchg %ax,%ax
Disassembly of section .text:
0000000000000640 <_start>:
640: 31 ed xor %ebp,%ebp
642: 49 89 d1 mov %rdx,%r9
645: 5e pop %rsi
646: 48 89 e2 mov %rsp,%rdx
649: 48 83 e4 f0 and $0xfffffffffffffff0,%rsp
64d: 50 push %rax
64e: 54 push %rsp
64f: 4c 8d 05 aa 01 00 00 lea 0x1aa(%rip),%r8 # 800 <__libc_csu_fini>
656: 48 8d 0d 33 01 00 00 lea 0x133(%rip),%rcx # 790 <__libc_csu_init>
65d: 48 8d 3d e6 00 00 00 lea 0xe6(%rip),%rdi # 74a <main>
664: ff 15 76 09 20 00 callq *0x200976(%rip) # 200fe0 <__libc_start_main@GLIBC_2.2.5>
66a: f4 hlt
66b: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
0000000000000670 <deregister_tm_clones>:
670: 48 8d 3d 99 09 20 00 lea 0x200999(%rip),%rdi # 201010 <__TMC_END__>
677: 55 push %rbp
678: 48 8d 05 91 09 20 00 lea 0x200991(%rip),%rax # 201010 <__TMC_END__>
67f: 48 39 f8 cmp %rdi,%rax
682: 48 89 e5 mov %rsp,%rbp
685: 74 19 je 6a0 <deregister_tm_clones+0x30>
687: 48 8b 05 4a 09 20 00 mov 0x20094a(%rip),%rax # 200fd8 <_ITM_deregisterTMCloneTable>
68e: 48 85 c0 test %rax,%rax
691: 74 0d je 6a0 <deregister_tm_clones+0x30>
693: 5d pop %rbp
694: ff e0 jmpq *%rax
696: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1)
69d: 00 00 00
6a0: 5d pop %rbp
6a1: c3 retq
6a2: 0f 1f 40 00 nopl 0x0(%rax)
6a6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1)
6ad: 00 00 00
00000000000006b0 <register_tm_clones>:
6b0: 48 8d 3d 59 09 20 00 lea 0x200959(%rip),%rdi # 201010 <__TMC_END__>
6b7: 48 8d 35 52 09 20 00 lea 0x200952(%rip),%rsi # 201010 <__TMC_END__>
6be: 55 push %rbp
6bf: 48 29 fe sub %rdi,%rsi
6c2: 48 89 e5 mov %rsp,%rbp
6c5: 48 c1 fe 03 sar $0x3,%rsi
6c9: 48 89 f0 mov %rsi,%rax
6cc: 48 c1 e8 3f shr $0x3f,%rax
6d0: 48 01 c6 add %rax,%rsi
6d3: 48 d1 fe sar %rsi
6d6: 74 18 je 6f0 <register_tm_clones+0x40>
6d8: 48 8b 05 11 09 20 00 mov 0x200911(%rip),%rax # 200ff0 <_ITM_registerTMCloneTable>
6df: 48 85 c0 test %rax,%rax
6e2: 74 0c je 6f0 <register_tm_clones+0x40>
6e4: 5d pop %rbp
6e5: ff e0 jmpq *%rax
6e7: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1)
6ee: 00 00
6f0: 5d pop %rbp
6f1: c3 retq
6f2: 0f 1f 40 00 nopl 0x0(%rax)
6f6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1)
6fd: 00 00 00
0000000000000700 <__do_global_dtors_aux>:
700: 80 3d 09 09 20 00 00 cmpb $0x0,0x200909(%rip) # 201010 <__TMC_END__>
707: 75 2f jne 738 <__do_global_dtors_aux+0x38>
709: 48 83 3d e7 08 20 00 cmpq $0x0,0x2008e7(%rip) # 200ff8 <__cxa_finalize@GLIBC_2.2.5>
710: 00
711: 55 push %rbp
712: 48 89 e5 mov %rsp,%rbp
715: 74 0c je 723 <__do_global_dtors_aux+0x23>
717: 48 8b 3d ea 08 20 00 mov 0x2008ea(%rip),%rdi # 201008 <__dso_handle>
71e: e8 0d ff ff ff callq 630 <__cxa_finalize@plt>
723: e8 48 ff ff ff callq 670 <deregister_tm_clones>
728: c6 05 e1 08 20 00 01 movb $0x1,0x2008e1(%rip) # 201010 <__TMC_END__>
72f: 5d pop %rbp
730: c3 retq
731: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
738: f3 c3 repz retq
73a: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
0000000000000740 <frame_dummy>:
740: 55 push %rbp
741: 48 89 e5 mov %rsp,%rbp
744: 5d pop %rbp
745: e9 66 ff ff ff jmpq 6b0 <register_tm_clones>
000000000000074a <main>:
74a: 55 push %rbp
74b: 48 89 e5 mov %rsp,%rbp
74e: 48 83 ec 10 sub $0x10,%rsp
752: be 05 00 00 00 mov $0x5,%esi
757: bf 03 00 00 00 mov $0x3,%edi
75c: e8 af fe ff ff callq 610 <add@plt>
761: 89 45 fc mov %eax,-0x4(%rbp)
764: 8b 45 fc mov -0x4(%rbp),%eax
767: 89 c6 mov %eax,%esi
769: 48 8d 3d a4 00 00 00 lea 0xa4(%rip),%rdi # 814 <_IO_stdin_used+0x4>
770: b8 00 00 00 00 mov $0x0,%eax
775: e8 a6 fe ff ff callq 620
77a: b8 00 00 00 00 mov $0x0,%eax
77f: c9 leaveq
780: c3 retq
781: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1)
788: 00 00 00
78b: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
0000000000000790 <__libc_csu_init>:
790: 41 57 push %r15
792: 41 56 push %r14
794: 49 89 d7 mov %rdx,%r15
797: 41 55 push %r13
799: 41 54 push %r12
79b: 4c 8d 25 fe 05 20 00 lea 0x2005fe(%rip),%r12 # 200da0 <__frame_dummy_init_array_entry>
7a2: 55 push %rbp
7a3: 48 8d 2d fe 05 20 00 lea 0x2005fe(%rip),%rbp # 200da8 <__init_array_end>
7aa: 53 push %rbx
7ab: 41 89 fd mov %edi,%r13d
7ae: 49 89 f6 mov %rsi,%r14
7b1: 4c 29 e5 sub %r12,%rbp
7b4: 48 83 ec 08 sub $0x8,%rsp
7b8: 48 c1 fd 03 sar $0x3,%rbp
7bc: e8 27 fe ff ff callq 5e8 <_init>
7c1: 48 85 ed test %rbp,%rbp
7c4: 74 20 je 7e6 <__libc_csu_init+0x56>
7c6: 31 db xor %ebx,%ebx
7c8: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1)
7cf: 00
7d0: 4c 89 fa mov %r15,%rdx
7d3: 4c 89 f6 mov %r14,%rsi
7d6: 44 89 ef mov %r13d,%edi
7d9: 41 ff 14 dc callq *(%r12,%rbx,8)
7dd: 48 83 c3 01 add $0x1,%rbx
7e1: 48 39 dd cmp %rbx,%rbp
7e4: 75 ea jne 7d0 <__libc_csu_init+0x40>
7e6: 48 83 c4 08 add $0x8,%rsp
7ea: 5b pop %rbx
7eb: 5d pop %rbp
7ec: 41 5c pop %r12
7ee: 41 5d pop %r13
7f0: 41 5e pop %r14
7f2: 41 5f pop %r15
7f4: c3 retq
7f5: 90 nop
7f6: 66 2e 0f 1f 84 00 00 nopw %cs:0x0(%rax,%rax,1)
7fd: 00 00 00
0000000000000800 <__libc_csu_fini>:
800: f3 c3 repz retq
Disassembly of section .fini:
0000000000000804 <_fini>:
804: 48 83 ec 08 sub $0x8,%rsp
808: 48 83 c4 08 add $0x8,%rsp
80c: c3 retq