bufdemo: file format elf64-x86-64 Disassembly of section .init: 00000000004004a8 <_init>: 4004a8: 48 83 ec 08 sub $0x8,%rsp 4004ac: e8 9b 00 00 00 callq 40054c 4004b1: e8 9a 01 00 00 callq 400650 4004b6: e8 25 03 00 00 callq 4007e0 <__do_global_ctors_aux> 4004bb: 48 83 c4 08 add $0x8,%rsp 4004bf: c3 retq Disassembly of section .plt: 00000000004004c0 : 4004c0: ff 35 82 06 20 00 pushq 0x200682(%rip) # 600b48 <_GLOBAL_OFFSET_TABLE_+0x8> 4004c6: ff 25 84 06 20 00 jmpq *0x200684(%rip) # 600b50 <_GLOBAL_OFFSET_TABLE_+0x10> 4004cc: 0f 1f 40 00 nopl 0x0(%rax) 00000000004004d0 : 4004d0: ff 25 82 06 20 00 jmpq *0x200682(%rip) # 600b58 <_GLOBAL_OFFSET_TABLE_+0x18> 4004d6: 68 00 00 00 00 pushq $0x0 4004db: e9 e0 ff ff ff jmpq 4004c0 <_init+0x18> 00000000004004e0 : 4004e0: ff 25 7a 06 20 00 jmpq *0x20067a(%rip) # 600b60 <_GLOBAL_OFFSET_TABLE_+0x20> 4004e6: 68 01 00 00 00 pushq $0x1 4004eb: e9 d0 ff ff ff jmpq 4004c0 <_init+0x18> 00000000004004f0 : 4004f0: ff 25 72 06 20 00 jmpq *0x200672(%rip) # 600b68 <_GLOBAL_OFFSET_TABLE_+0x28> 4004f6: 68 02 00 00 00 pushq $0x2 4004fb: e9 c0 ff ff ff jmpq 4004c0 <_init+0x18> 0000000000400500 <__libc_start_main@plt>: 400500: ff 25 6a 06 20 00 jmpq *0x20066a(%rip) # 600b70 <_GLOBAL_OFFSET_TABLE_+0x30> 400506: 68 03 00 00 00 pushq $0x3 40050b: e9 b0 ff ff ff jmpq 4004c0 <_init+0x18> 0000000000400510 <_IO_getc@plt>: 400510: ff 25 62 06 20 00 jmpq *0x200662(%rip) # 600b78 <_GLOBAL_OFFSET_TABLE_+0x38> 400516: 68 04 00 00 00 pushq $0x4 40051b: e9 a0 ff ff ff jmpq 4004c0 <_init+0x18> Disassembly of section .text: 0000000000400520 <_start>: 400520: 31 ed xor %ebp,%ebp 400522: 49 89 d1 mov %rdx,%r9 400525: 5e pop %rsi 400526: 48 89 e2 mov %rsp,%rdx 400529: 48 83 e4 f0 and $0xfffffffffffffff0,%rsp 40052d: 50 push %rax 40052e: 54 push %rsp 40052f: 49 c7 c0 40 07 40 00 mov $0x400740,%r8 400536: 48 c7 c1 50 07 40 00 mov $0x400750,%rcx 40053d: 48 c7 c7 13 07 40 00 mov $0x400713,%rdi 400544: e8 b7 ff ff ff callq 400500 <__libc_start_main@plt> 400549: f4 hlt 40054a: 90 nop 40054b: 90 nop 000000000040054c : 40054c: 48 83 ec 08 sub $0x8,%rsp 400550: 48 8b 05 e1 05 20 00 mov 0x2005e1(%rip),%rax # 600b38 <_DYNAMIC+0x190> 400557: 48 85 c0 test %rax,%rax 40055a: 74 02 je 40055e 40055c: ff d0 callq *%rax 40055e: 48 83 c4 08 add $0x8,%rsp 400562: c3 retq 400563: 90 nop 400564: 90 nop 400565: 90 nop 400566: 90 nop 400567: 90 nop 400568: 90 nop 400569: 90 nop 40056a: 90 nop 40056b: 90 nop 40056c: 90 nop 40056d: 90 nop 40056e: 90 nop 40056f: 90 nop 0000000000400570 : 400570: b8 97 0b 60 00 mov $0x600b97,%eax 400575: 55 push %rbp 400576: 48 2d 90 0b 60 00 sub $0x600b90,%rax 40057c: 48 83 f8 0e cmp $0xe,%rax 400580: 48 89 e5 mov %rsp,%rbp 400583: 77 02 ja 400587 400585: 5d pop %rbp 400586: c3 retq 400587: b8 00 00 00 00 mov $0x0,%eax 40058c: 48 85 c0 test %rax,%rax 40058f: 74 f4 je 400585 400591: 5d pop %rbp 400592: bf 90 0b 60 00 mov $0x600b90,%edi 400597: ff e0 jmpq *%rax 400599: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) 00000000004005a0 : 4005a0: b8 90 0b 60 00 mov $0x600b90,%eax 4005a5: 55 push %rbp 4005a6: 48 2d 90 0b 60 00 sub $0x600b90,%rax 4005ac: 48 c1 f8 03 sar $0x3,%rax 4005b0: 48 89 e5 mov %rsp,%rbp 4005b3: 48 89 c2 mov %rax,%rdx 4005b6: 48 c1 ea 3f shr $0x3f,%rdx 4005ba: 48 01 d0 add %rdx,%rax 4005bd: 48 d1 f8 sar %rax 4005c0: 75 02 jne 4005c4 4005c2: 5d pop %rbp 4005c3: c3 retq 4005c4: ba 00 00 00 00 mov $0x0,%edx 4005c9: 48 85 d2 test %rdx,%rdx 4005cc: 74 f4 je 4005c2 4005ce: 5d pop %rbp 4005cf: 48 89 c6 mov %rax,%rsi 4005d2: bf 90 0b 60 00 mov $0x600b90,%edi 4005d7: ff e2 jmpq *%rdx 4005d9: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) 00000000004005e0 <__do_global_dtors_aux>: 4005e0: 80 3d b1 05 20 00 00 cmpb $0x0,0x2005b1(%rip) # 600b98 4005e7: 75 5f jne 400648 <__do_global_dtors_aux+0x68> 4005e9: 55 push %rbp 4005ea: 48 89 e5 mov %rsp,%rbp 4005ed: 53 push %rbx 4005ee: bb 98 09 60 00 mov $0x600998,%ebx 4005f3: 48 81 eb 90 09 60 00 sub $0x600990,%rbx 4005fa: 48 83 ec 08 sub $0x8,%rsp 4005fe: 48 8b 05 9b 05 20 00 mov 0x20059b(%rip),%rax # 600ba0 400605: 48 c1 fb 03 sar $0x3,%rbx 400609: 48 83 eb 01 sub $0x1,%rbx 40060d: 48 39 d8 cmp %rbx,%rax 400610: 73 24 jae 400636 <__do_global_dtors_aux+0x56> 400612: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1) 400618: 48 83 c0 01 add $0x1,%rax 40061c: 48 89 05 7d 05 20 00 mov %rax,0x20057d(%rip) # 600ba0 400623: ff 14 c5 90 09 60 00 callq *0x600990(,%rax,8) 40062a: 48 8b 05 6f 05 20 00 mov 0x20056f(%rip),%rax # 600ba0 400631: 48 39 d8 cmp %rbx,%rax 400634: 72 e2 jb 400618 <__do_global_dtors_aux+0x38> 400636: e8 35 ff ff ff callq 400570 40063b: c6 05 56 05 20 00 01 movb $0x1,0x200556(%rip) # 600b98 400642: 48 83 c4 08 add $0x8,%rsp 400646: 5b pop %rbx 400647: 5d pop %rbp 400648: c3 retq 400649: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) 0000000000400650 : 400650: 48 83 3d 48 03 20 00 cmpq $0x0,0x200348(%rip) # 6009a0 <__JCR_END__> 400657: 00 400658: 74 1e je 400678 40065a: b8 00 00 00 00 mov $0x0,%eax 40065f: 48 85 c0 test %rax,%rax 400662: 74 14 je 400678 400664: 55 push %rbp 400665: bf a0 09 60 00 mov $0x6009a0,%edi 40066a: 48 89 e5 mov %rsp,%rbp 40066d: ff d0 callq *%rax 40066f: 5d pop %rbp 400670: e9 2b ff ff ff jmpq 4005a0 400675: 0f 1f 00 nopl (%rax) 400678: e9 23 ff ff ff jmpq 4005a0 40067d: 90 nop 40067e: 90 nop 40067f: 90 nop 0000000000400680 : 400680: 55 push %rbp 400681: 53 push %rbx 400682: 48 83 ec 08 sub $0x8,%rsp 400686: 48 89 fd mov %rdi,%rbp 400689: 48 8b 3d 00 05 20 00 mov 0x200500(%rip),%rdi # 600b90 <__bss_start> 400690: e8 7b fe ff ff callq 400510 <_IO_getc@plt> 400695: 48 89 e9 mov %rbp,%rcx 400698: eb 15 jmp 4006af 40069a: 48 8d 59 01 lea 0x1(%rcx),%rbx 40069e: 88 01 mov %al,(%rcx) 4006a0: 48 8b 3d e9 04 20 00 mov 0x2004e9(%rip),%rdi # 600b90 <__bss_start> 4006a7: e8 64 fe ff ff callq 400510 <_IO_getc@plt> 4006ac: 48 89 d9 mov %rbx,%rcx 4006af: 83 f8 ff cmp $0xffffffffffffffff,%eax 4006b2: 41 0f 95 c0 setne %r8b 4006b6: 83 f8 0a cmp $0xa,%eax 4006b9: 40 0f 95 c6 setne %sil 4006bd: 41 84 f0 test %sil,%r8b 4006c0: 75 d8 jne 40069a 4006c2: c6 01 00 movb $0x0,(%rcx) 4006c5: 48 89 e8 mov %rbp,%rax 4006c8: 48 83 c4 08 add $0x8,%rsp 4006cc: 5b pop %rbx 4006cd: 5d pop %rbp 4006ce: c3 retq 00000000004006cf : 4006cf: 48 83 ec 18 sub $0x18,%rsp 4006d3: 48 89 e7 mov %rsp,%rdi 4006d6: e8 a5 ff ff ff callq 400680 4006db: 48 89 e7 mov %rsp,%rdi 4006de: e8 fd fd ff ff callq 4004e0 4006e3: 48 83 c4 18 add $0x18,%rsp 4006e7: c3 retq 00000000004006e8 : 4006e8: 48 83 ec 08 sub $0x8,%rsp 4006ec: b8 00 00 00 00 mov $0x0,%eax 4006f1: e8 d9 ff ff ff callq 4006cf 4006f6: 48 83 c4 08 add $0x8,%rsp 4006fa: c3 retq 00000000004006fb : 4006fb: 48 83 ec 08 sub $0x8,%rsp 4006ff: bf 2c 08 40 00 mov $0x40082c,%edi 400704: e8 d7 fd ff ff callq 4004e0 400709: bf 00 00 00 00 mov $0x0,%edi 40070e: e8 dd fd ff ff callq 4004f0 0000000000400713
: 400713: 48 83 ec 08 sub $0x8,%rsp 400717: bf 3f 08 40 00 mov $0x40083f,%edi 40071c: b8 00 00 00 00 mov $0x0,%eax 400721: e8 aa fd ff ff callq 4004d0 400726: b8 00 00 00 00 mov $0x0,%eax 40072b: e8 b8 ff ff ff callq 4006e8 400730: b8 00 00 00 00 mov $0x0,%eax 400735: 48 83 c4 08 add $0x8,%rsp 400739: c3 retq 40073a: 90 nop 40073b: 90 nop 40073c: 90 nop 40073d: 90 nop 40073e: 90 nop 40073f: 90 nop 0000000000400740 <__libc_csu_fini>: 400740: f3 c3 repz retq 400742: 66 66 66 66 66 2e 0f data32 data32 data32 data32 nopw %cs:0x0(%rax,%rax,1) 400749: 1f 84 00 00 00 00 00 0000000000400750 <__libc_csu_init>: 400750: 48 89 6c 24 d8 mov %rbp,-0x28(%rsp) 400755: 4c 89 64 24 e0 mov %r12,-0x20(%rsp) 40075a: 48 8d 2d 1b 02 20 00 lea 0x20021b(%rip),%rbp # 60097c <__init_array_end> 400761: 4c 8d 25 14 02 20 00 lea 0x200214(%rip),%r12 # 60097c <__init_array_end> 400768: 4c 89 6c 24 e8 mov %r13,-0x18(%rsp) 40076d: 4c 89 74 24 f0 mov %r14,-0x10(%rsp) 400772: 4c 89 7c 24 f8 mov %r15,-0x8(%rsp) 400777: 48 89 5c 24 d0 mov %rbx,-0x30(%rsp) 40077c: 48 83 ec 38 sub $0x38,%rsp 400780: 4c 29 e5 sub %r12,%rbp 400783: 41 89 fd mov %edi,%r13d 400786: 49 89 f6 mov %rsi,%r14 400789: 48 c1 fd 03 sar $0x3,%rbp 40078d: 49 89 d7 mov %rdx,%r15 400790: e8 13 fd ff ff callq 4004a8 <_init> 400795: 48 85 ed test %rbp,%rbp 400798: 74 1c je 4007b6 <__libc_csu_init+0x66> 40079a: 31 db xor %ebx,%ebx 40079c: 0f 1f 40 00 nopl 0x0(%rax) 4007a0: 4c 89 fa mov %r15,%rdx 4007a3: 4c 89 f6 mov %r14,%rsi 4007a6: 44 89 ef mov %r13d,%edi 4007a9: 41 ff 14 dc callq *(%r12,%rbx,8) 4007ad: 48 83 c3 01 add $0x1,%rbx 4007b1: 48 39 eb cmp %rbp,%rbx 4007b4: 72 ea jb 4007a0 <__libc_csu_init+0x50> 4007b6: 48 8b 5c 24 08 mov 0x8(%rsp),%rbx 4007bb: 48 8b 6c 24 10 mov 0x10(%rsp),%rbp 4007c0: 4c 8b 64 24 18 mov 0x18(%rsp),%r12 4007c5: 4c 8b 6c 24 20 mov 0x20(%rsp),%r13 4007ca: 4c 8b 74 24 28 mov 0x28(%rsp),%r14 4007cf: 4c 8b 7c 24 30 mov 0x30(%rsp),%r15 4007d4: 48 83 c4 38 add $0x38,%rsp 4007d8: c3 retq 4007d9: 90 nop 4007da: 90 nop 4007db: 90 nop 4007dc: 90 nop 4007dd: 90 nop 4007de: 90 nop 4007df: 90 nop 00000000004007e0 <__do_global_ctors_aux>: 4007e0: 55 push %rbp 4007e1: 48 89 e5 mov %rsp,%rbp 4007e4: 53 push %rbx 4007e5: bb 80 09 60 00 mov $0x600980,%ebx 4007ea: 48 83 ec 08 sub $0x8,%rsp 4007ee: 48 8b 05 8b 01 20 00 mov 0x20018b(%rip),%rax # 600980 <__CTOR_LIST__> 4007f5: 48 83 f8 ff cmp $0xffffffffffffffff,%rax 4007f9: 74 14 je 40080f <__do_global_ctors_aux+0x2f> 4007fb: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 400800: 48 83 eb 08 sub $0x8,%rbx 400804: ff d0 callq *%rax 400806: 48 8b 03 mov (%rbx),%rax 400809: 48 83 f8 ff cmp $0xffffffffffffffff,%rax 40080d: 75 f1 jne 400800 <__do_global_ctors_aux+0x20> 40080f: 48 83 c4 08 add $0x8,%rsp 400813: 5b pop %rbx 400814: 5d pop %rbp 400815: c3 retq 400816: 90 nop 400817: 90 nop Disassembly of section .fini: 0000000000400818 <_fini>: 400818: 48 83 ec 08 sub $0x8,%rsp 40081c: e8 bf fd ff ff callq 4005e0 <__do_global_dtors_aux> 400821: 48 83 c4 08 add $0x8,%rsp 400825: c3 retq