Skip to content

Instantly share code, notes, and snippets.

@usagi
Created December 23, 2012 07:53
Show Gist options
  • Select an option

  • Save usagi/4362524 to your computer and use it in GitHub Desktop.

Select an option

Save usagi/4362524 to your computer and use it in GitHub Desktop.
master_fixed_cxx.O1: file format elf64-x86-64
Disassembly of section .init:
0000000000400b30 <_init>:
400b30: 48 83 ec 08 sub $0x8,%rsp
400b34: e8 63 01 00 00 callq 400c9c <call_gmon_start>
400b39: 48 83 c4 08 add $0x8,%rsp
400b3d: c3 retq
Disassembly of section .plt:
0000000000400b40 <_ZSt20__throw_length_errorPKc@plt-0x10>:
400b40: ff 35 aa 14 20 00 pushq 0x2014aa(%rip) # 601ff0 <_GLOBAL_OFFSET_TABLE_+0x8>
400b46: ff 25 ac 14 20 00 jmpq *0x2014ac(%rip) # 601ff8 <_GLOBAL_OFFSET_TABLE_+0x10>
400b4c: 0f 1f 40 00 nopl 0x0(%rax)
0000000000400b50 <_ZSt20__throw_length_errorPKc@plt>:
400b50: ff 25 aa 14 20 00 jmpq *0x2014aa(%rip) # 602000 <_GLOBAL_OFFSET_TABLE_+0x18>
400b56: 68 00 00 00 00 pushq $0x0
400b5b: e9 e0 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400b60 <_ZSt16__throw_bad_castv@plt>:
400b60: ff 25 a2 14 20 00 jmpq *0x2014a2(%rip) # 602008 <_GLOBAL_OFFSET_TABLE_+0x20>
400b66: 68 01 00 00 00 pushq $0x1
400b6b: e9 d0 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400b70 <_ZdlPv@plt>:
400b70: ff 25 9a 14 20 00 jmpq *0x20149a(%rip) # 602010 <_GLOBAL_OFFSET_TABLE_+0x28>
400b76: 68 02 00 00 00 pushq $0x2
400b7b: e9 c0 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400b80 <_ZNKSt5ctypeIcE13_M_widen_initEv@plt>:
400b80: ff 25 92 14 20 00 jmpq *0x201492(%rip) # 602018 <_GLOBAL_OFFSET_TABLE_+0x30>
400b86: 68 03 00 00 00 pushq $0x3
400b8b: e9 b0 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400b90 <_ZNSt8ios_base4InitC1Ev@plt>:
400b90: ff 25 8a 14 20 00 jmpq *0x20148a(%rip) # 602020 <_GLOBAL_OFFSET_TABLE_+0x38>
400b96: 68 04 00 00 00 pushq $0x4
400b9b: e9 a0 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400ba0 <__libc_start_main@plt>:
400ba0: ff 25 82 14 20 00 jmpq *0x201482(%rip) # 602028 <_GLOBAL_OFFSET_TABLE_+0x40>
400ba6: 68 05 00 00 00 pushq $0x5
400bab: e9 90 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400bb0 <__cxa_atexit@plt>:
400bb0: ff 25 7a 14 20 00 jmpq *0x20147a(%rip) # 602030 <_GLOBAL_OFFSET_TABLE_+0x48>
400bb6: 68 06 00 00 00 pushq $0x6
400bbb: e9 80 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400bc0 <_ZNSt8ios_base4InitD1Ev@plt>:
400bc0: ff 25 72 14 20 00 jmpq *0x201472(%rip) # 602038 <_GLOBAL_OFFSET_TABLE_+0x50>
400bc6: 68 07 00 00 00 pushq $0x7
400bcb: e9 70 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400bd0 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>:
400bd0: ff 25 6a 14 20 00 jmpq *0x20146a(%rip) # 602040 <_GLOBAL_OFFSET_TABLE_+0x58>
400bd6: 68 08 00 00 00 pushq $0x8
400bdb: e9 60 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400be0 <_ZNSt6chrono12system_clock3nowEv@plt>:
400be0: ff 25 62 14 20 00 jmpq *0x201462(%rip) # 602048 <_GLOBAL_OFFSET_TABLE_+0x60>
400be6: 68 09 00 00 00 pushq $0x9
400beb: e9 50 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400bf0 <_ZNSo9_M_insertIyEERSoT_@plt>:
400bf0: ff 25 5a 14 20 00 jmpq *0x20145a(%rip) # 602050 <_GLOBAL_OFFSET_TABLE_+0x68>
400bf6: 68 0a 00 00 00 pushq $0xa
400bfb: e9 40 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400c00 <_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l@plt>:
400c00: ff 25 52 14 20 00 jmpq *0x201452(%rip) # 602058 <_GLOBAL_OFFSET_TABLE_+0x70>
400c06: 68 0b 00 00 00 pushq $0xb
400c0b: e9 30 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400c10 <_ZNSo5flushEv@plt>:
400c10: ff 25 4a 14 20 00 jmpq *0x20144a(%rip) # 602060 <_GLOBAL_OFFSET_TABLE_+0x78>
400c16: 68 0c 00 00 00 pushq $0xc
400c1b: e9 20 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400c20 <_ZNSo9_M_insertIdEERSoT_@plt>:
400c20: ff 25 42 14 20 00 jmpq *0x201442(%rip) # 602068 <_GLOBAL_OFFSET_TABLE_+0x80>
400c26: 68 0d 00 00 00 pushq $0xd
400c2b: e9 10 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400c30 <_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@plt>:
400c30: ff 25 3a 14 20 00 jmpq *0x20143a(%rip) # 602070 <_GLOBAL_OFFSET_TABLE_+0x88>
400c36: 68 0e 00 00 00 pushq $0xe
400c3b: e9 00 ff ff ff jmpq 400b40 <_init+0x10>
0000000000400c40 <__gxx_personality_v0@plt>:
400c40: ff 25 32 14 20 00 jmpq *0x201432(%rip) # 602078 <_GLOBAL_OFFSET_TABLE_+0x90>
400c46: 68 0f 00 00 00 pushq $0xf
400c4b: e9 f0 fe ff ff jmpq 400b40 <_init+0x10>
0000000000400c50 <_Znwm@plt>:
400c50: ff 25 2a 14 20 00 jmpq *0x20142a(%rip) # 602080 <_GLOBAL_OFFSET_TABLE_+0x98>
400c56: 68 10 00 00 00 pushq $0x10
400c5b: e9 e0 fe ff ff jmpq 400b40 <_init+0x10>
0000000000400c60 <_Unwind_Resume@plt>:
400c60: ff 25 22 14 20 00 jmpq *0x201422(%rip) # 602088 <_GLOBAL_OFFSET_TABLE_+0xa0>
400c66: 68 11 00 00 00 pushq $0x11
400c6b: e9 d0 fe ff ff jmpq 400b40 <_init+0x10>
Disassembly of section .text:
0000000000400c70 <_start>:
400c70: 31 ed xor %ebp,%ebp
400c72: 49 89 d1 mov %rdx,%r9
400c75: 5e pop %rsi
400c76: 48 89 e2 mov %rsp,%rdx
400c79: 48 83 e4 f0 and $0xfffffffffffffff0,%rsp
400c7d: 50 push %rax
400c7e: 54 push %rsp
400c7f: 49 c7 c0 a0 11 40 00 mov $0x4011a0,%r8
400c86: 48 c7 c1 10 11 40 00 mov $0x401110,%rcx
400c8d: 48 c7 c7 95 0d 40 00 mov $0x400d95,%rdi
400c94: e8 07 ff ff ff callq 400ba0 <__libc_start_main@plt>
400c99: f4 hlt
400c9a: 90 nop
400c9b: 90 nop
0000000000400c9c <call_gmon_start>:
400c9c: 48 83 ec 08 sub $0x8,%rsp
400ca0: 48 8b 05 39 13 20 00 mov 0x201339(%rip),%rax # 601fe0 <_DYNAMIC+0x210>
400ca7: 48 85 c0 test %rax,%rax
400caa: 74 02 je 400cae <call_gmon_start+0x12>
400cac: ff d0 callq *%rax
400cae: 48 83 c4 08 add $0x8,%rsp
400cb2: c3 retq
400cb3: 90 nop
400cb4: 90 nop
400cb5: 90 nop
400cb6: 90 nop
400cb7: 90 nop
400cb8: 90 nop
400cb9: 90 nop
400cba: 90 nop
400cbb: 90 nop
400cbc: 90 nop
400cbd: 90 nop
400cbe: 90 nop
400cbf: 90 nop
0000000000400cc0 <deregister_tm_clones>:
400cc0: b8 a7 20 60 00 mov $0x6020a7,%eax
400cc5: 55 push %rbp
400cc6: 48 2d a0 20 60 00 sub $0x6020a0,%rax
400ccc: 48 83 f8 0e cmp $0xe,%rax
400cd0: 48 89 e5 mov %rsp,%rbp
400cd3: 77 02 ja 400cd7 <deregister_tm_clones+0x17>
400cd5: 5d pop %rbp
400cd6: c3 retq
400cd7: b8 00 00 00 00 mov $0x0,%eax
400cdc: 48 85 c0 test %rax,%rax
400cdf: 74 f4 je 400cd5 <deregister_tm_clones+0x15>
400ce1: 5d pop %rbp
400ce2: bf a0 20 60 00 mov $0x6020a0,%edi
400ce7: ff e0 jmpq *%rax
400ce9: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
0000000000400cf0 <register_tm_clones>:
400cf0: b8 a0 20 60 00 mov $0x6020a0,%eax
400cf5: 55 push %rbp
400cf6: 48 2d a0 20 60 00 sub $0x6020a0,%rax
400cfc: 48 c1 f8 03 sar $0x3,%rax
400d00: 48 89 e5 mov %rsp,%rbp
400d03: 48 89 c2 mov %rax,%rdx
400d06: 48 c1 ea 3f shr $0x3f,%rdx
400d0a: 48 01 d0 add %rdx,%rax
400d0d: 48 89 c6 mov %rax,%rsi
400d10: 48 d1 fe sar %rsi
400d13: 75 02 jne 400d17 <register_tm_clones+0x27>
400d15: 5d pop %rbp
400d16: c3 retq
400d17: ba 00 00 00 00 mov $0x0,%edx
400d1c: 48 85 d2 test %rdx,%rdx
400d1f: 74 f4 je 400d15 <register_tm_clones+0x25>
400d21: 5d pop %rbp
400d22: bf a0 20 60 00 mov $0x6020a0,%edi
400d27: ff e2 jmpq *%rdx
400d29: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
0000000000400d30 <__do_global_dtors_aux>:
400d30: 80 3d 79 14 20 00 00 cmpb $0x0,0x201479(%rip) # 6021b0 <completed.6098>
400d37: 75 11 jne 400d4a <__do_global_dtors_aux+0x1a>
400d39: 55 push %rbp
400d3a: 48 89 e5 mov %rsp,%rbp
400d3d: e8 7e ff ff ff callq 400cc0 <deregister_tm_clones>
400d42: 5d pop %rbp
400d43: c6 05 66 14 20 00 01 movb $0x1,0x201466(%rip) # 6021b0 <completed.6098>
400d4a: f3 c3 repz retq
400d4c: 0f 1f 40 00 nopl 0x0(%rax)
0000000000400d50 <frame_dummy>:
400d50: 48 83 3d 70 10 20 00 cmpq $0x0,0x201070(%rip) # 601dc8 <__JCR_END__>
400d57: 00
400d58: 74 1b je 400d75 <frame_dummy+0x25>
400d5a: b8 00 00 00 00 mov $0x0,%eax
400d5f: 48 85 c0 test %rax,%rax
400d62: 74 11 je 400d75 <frame_dummy+0x25>
400d64: 55 push %rbp
400d65: bf c8 1d 60 00 mov $0x601dc8,%edi
400d6a: 48 89 e5 mov %rsp,%rbp
400d6d: ff d0 callq *%rax
400d6f: 5d pop %rbp
400d70: e9 7b ff ff ff jmpq 400cf0 <register_tm_clones>
400d75: e9 76 ff ff ff jmpq 400cf0 <register_tm_clones>
400d7a: 90 nop
400d7b: 90 nop
0000000000400d7c <_Z31test_bitmap_color_transform_cppRSt6vectorI7pixel_tILi16EESaIS1_EE>:
400d7c: 48 83 ec 18 sub $0x18,%rsp
400d80: 48 8b 77 08 mov 0x8(%rdi),%rsi
400d84: 48 8b 3f mov (%rdi),%rdi
400d87: c6 04 24 00 movb $0x0,(%rsp)
400d8b: e8 0f 02 00 00 callq 400f9f <_ZSt8for_eachIN9__gnu_cxx17__normal_iteratorIP7pixel_tILi16EESt6vectorIS3_SaIS3_EEEE10transcolorET0_T_SB_SA_>
400d90: 48 83 c4 18 add $0x18,%rsp
400d94: c3 retq
0000000000400d95 <main>:
400d95: 41 55 push %r13
400d97: 41 54 push %r12
400d99: 55 push %rbp
400d9a: 53 push %rbx
400d9b: 48 83 ec 38 sub $0x38,%rsp
400d9f: 48 c7 44 24 10 00 00 movq $0x0,0x10(%rsp)
400da6: 00 00
400da8: 48 c7 44 24 18 00 00 movq $0x0,0x18(%rsp)
400daf: 00 00
400db1: 48 c7 44 24 20 00 00 movq $0x0,0x20(%rsp)
400db8: 00 00
400dba: be 00 a4 1f 00 mov $0x1fa400,%esi
400dbf: 48 8d 7c 24 10 lea 0x10(%rsp),%rdi
400dc4: e8 0d 02 00 00 callq 400fd6 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm>
400dc9: be d6 11 40 00 mov $0x4011d6,%esi
400dce: bf a0 20 60 00 mov $0x6020a0,%edi
400dd3: e8 f8 fd ff ff callq 400bd0 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>
400dd8: bd e8 03 00 00 mov $0x3e8,%ebp
400ddd: 41 bc 00 00 00 00 mov $0x0,%r12d
400de3: e8 f8 fd ff ff callq 400be0 <_ZNSt6chrono12system_clock3nowEv@plt>
400de8: 48 89 c3 mov %rax,%rbx
400deb: 48 8d 7c 24 10 lea 0x10(%rsp),%rdi
400df0: e8 87 ff ff ff callq 400d7c <_Z31test_bitmap_color_transform_cppRSt6vectorI7pixel_tILi16EESaIS1_EE>
400df5: e8 e6 fd ff ff callq 400be0 <_ZNSt6chrono12system_clock3nowEv@plt>
400dfa: 48 29 d8 sub %rbx,%rax
400dfd: 49 01 c4 add %rax,%r12
400e00: ba 07 00 00 00 mov $0x7,%edx
400e05: be dd 11 40 00 mov $0x4011dd,%esi
400e0a: bf a0 20 60 00 mov $0x6020a0,%edi
400e0f: e8 ec fd ff ff callq 400c00 <_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l@plt>
400e14: 48 8b 05 85 12 20 00 mov 0x201285(%rip),%rax # 6020a0 <__bss_start>
400e1b: 48 8b 50 e8 mov -0x18(%rax),%rdx
400e1f: 8b 8a b8 20 60 00 mov 0x6020b8(%rdx),%ecx
400e25: 83 e1 b5 and $0xffffffb5,%ecx
400e28: 83 c9 08 or $0x8,%ecx
400e2b: 89 8a b8 20 60 00 mov %ecx,0x6020b8(%rdx)
400e31: 48 8b 50 e8 mov -0x18(%rax),%rdx
400e35: 48 c7 82 b0 20 60 00 movq $0x8,0x6020b0(%rdx)
400e3c: 08 00 00 00
400e40: 48 8b 58 e8 mov -0x18(%rax),%rbx
400e44: 48 81 c3 a0 20 60 00 add $0x6020a0,%rbx
400e4b: 80 bb e1 00 00 00 00 cmpb $0x0,0xe1(%rbx)
400e52: 75 43 jne 400e97 <main+0x102>
400e54: 4c 8b ab f0 00 00 00 mov 0xf0(%rbx),%r13
400e5b: 4d 85 ed test %r13,%r13
400e5e: 75 05 jne 400e65 <main+0xd0>
400e60: e8 fb fc ff ff callq 400b60 <_ZSt16__throw_bad_castv@plt>
400e65: 41 80 7d 38 00 cmpb $0x0,0x38(%r13)
400e6a: 74 07 je 400e73 <main+0xde>
400e6c: 41 0f b6 45 59 movzbl 0x59(%r13),%eax
400e71: eb 17 jmp 400e8a <main+0xf5>
400e73: 4c 89 ef mov %r13,%rdi
400e76: e8 05 fd ff ff callq 400b80 <_ZNKSt5ctypeIcE13_M_widen_initEv@plt>
400e7b: 49 8b 45 00 mov 0x0(%r13),%rax
400e7f: be 20 00 00 00 mov $0x20,%esi
400e84: 4c 89 ef mov %r13,%rdi
400e87: ff 50 30 callq *0x30(%rax)
400e8a: 88 83 e0 00 00 00 mov %al,0xe0(%rbx)
400e90: c6 83 e1 00 00 00 01 movb $0x1,0xe1(%rbx)
400e97: c6 83 e0 00 00 00 30 movb $0x30,0xe0(%rbx)
400e9e: 48 89 ee mov %rbp,%rsi
400ea1: bf a0 20 60 00 mov $0x6020a0,%edi
400ea6: e8 45 fd ff ff callq 400bf0 <_ZNSo9_M_insertIyEERSoT_@plt>
400eab: 48 89 c7 mov %rax,%rdi
400eae: e8 5d fd ff ff callq 400c10 <_ZNSo5flushEv@plt>
400eb3: 48 83 ed 01 sub $0x1,%rbp
400eb7: 0f 85 26 ff ff ff jne 400de3 <main+0x4e>
400ebd: be e5 11 40 00 mov $0x4011e5,%esi
400ec2: bf a0 20 60 00 mov $0x6020a0,%edi
400ec7: e8 04 fd ff ff callq 400bd0 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>
400ecc: 48 89 c7 mov %rax,%rdi
400ecf: e8 5c fd ff ff callq 400c30 <_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@plt>
400ed4: f2 49 0f 2a c4 cvtsi2sd %r12,%xmm0
400ed9: f2 0f 5e 05 1f 03 00 divsd 0x31f(%rip),%xmm0 # 401200 <_IO_stdin_used+0x48>
400ee0: 00
400ee1: f2 0f 5e 05 1f 03 00 divsd 0x31f(%rip),%xmm0 # 401208 <_IO_stdin_used+0x50>
400ee8: 00
400ee9: f2 0f 11 44 24 08 movsd %xmm0,0x8(%rsp)
400eef: be f5 11 40 00 mov $0x4011f5,%esi
400ef4: bf a0 20 60 00 mov $0x6020a0,%edi
400ef9: e8 d2 fc ff ff callq 400bd0 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>
400efe: 48 8b 10 mov (%rax),%rdx
400f01: 48 8b 52 e8 mov -0x18(%rdx),%rdx
400f05: 48 01 c2 add %rax,%rdx
400f08: 8b 4a 18 mov 0x18(%rdx),%ecx
400f0b: 81 e1 fb fe ff ff and $0xfffffefb,%ecx
400f11: 80 cd 01 or $0x1,%ch
400f14: 89 4a 18 mov %ecx,0x18(%rdx)
400f17: 48 8b 10 mov (%rax),%rdx
400f1a: 48 8b 52 e8 mov -0x18(%rdx),%rdx
400f1e: 48 c7 44 10 08 03 00 movq $0x3,0x8(%rax,%rdx,1)
400f25: 00 00
400f27: f2 0f 10 44 24 08 movsd 0x8(%rsp),%xmm0
400f2d: 48 89 c7 mov %rax,%rdi
400f30: e8 eb fc ff ff callq 400c20 <_ZNSo9_M_insertIdEERSoT_@plt>
400f35: 48 89 c7 mov %rax,%rdi
400f38: e8 f3 fc ff ff callq 400c30 <_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@plt>
400f3d: 48 8b 7c 24 10 mov 0x10(%rsp),%rdi
400f42: 48 85 ff test %rdi,%rdi
400f45: 74 21 je 400f68 <main+0x1d3>
400f47: e8 24 fc ff ff callq 400b70 <_ZdlPv@plt>
400f4c: eb 1a jmp 400f68 <main+0x1d3>
400f4e: 48 89 c3 mov %rax,%rbx
400f51: 48 8b 7c 24 10 mov 0x10(%rsp),%rdi
400f56: 48 85 ff test %rdi,%rdi
400f59: 74 05 je 400f60 <main+0x1cb>
400f5b: e8 10 fc ff ff callq 400b70 <_ZdlPv@plt>
400f60: 48 89 df mov %rbx,%rdi
400f63: e8 f8 fc ff ff callq 400c60 <_Unwind_Resume@plt>
400f68: b8 00 00 00 00 mov $0x0,%eax
400f6d: 48 83 c4 38 add $0x38,%rsp
400f71: 5b pop %rbx
400f72: 5d pop %rbp
400f73: 41 5c pop %r12
400f75: 41 5d pop %r13
400f77: c3 retq
0000000000400f78 <_GLOBAL__sub_I__Z31test_bitmap_color_transform_cppRSt6vectorI7pixel_tILi16EESaIS1_EE>:
400f78: 48 83 ec 08 sub $0x8,%rsp
400f7c: bf b4 21 60 00 mov $0x6021b4,%edi
400f81: e8 0a fc ff ff callq 400b90 <_ZNSt8ios_base4InitC1Ev@plt>
400f86: ba 98 20 60 00 mov $0x602098,%edx
400f8b: be b4 21 60 00 mov $0x6021b4,%esi
400f90: bf c0 0b 40 00 mov $0x400bc0,%edi
400f95: e8 16 fc ff ff callq 400bb0 <__cxa_atexit@plt>
400f9a: 48 83 c4 08 add $0x8,%rsp
400f9e: c3 retq
0000000000400f9f <_ZSt8for_eachIN9__gnu_cxx17__normal_iteratorIP7pixel_tILi16EESt6vectorIS3_SaIS3_EEEE10transcolorET0_T_SB_SA_>:
400f9f: 48 39 f7 cmp %rsi,%rdi
400fa2: 74 2c je 400fd0 <_ZSt8for_eachIN9__gnu_cxx17__normal_iteratorIP7pixel_tILi16EESt6vectorIS3_SaIS3_EEEE10transcolorET0_T_SB_SA_+0x31>
400fa4: 0f b7 07 movzwl (%rdi),%eax
400fa7: 89 c1 mov %eax,%ecx
400fa9: c1 e1 05 shl $0x5,%ecx
400fac: 81 e1 00 f8 00 00 and $0xf800,%ecx
400fb2: 89 c2 mov %eax,%edx
400fb4: c1 e2 06 shl $0x6,%edx
400fb7: 81 e2 c0 07 00 00 and $0x7c0,%edx
400fbd: 09 ca or %ecx,%edx
400fbf: c1 e8 0b shr $0xb,%eax
400fc2: 09 d0 or %edx,%eax
400fc4: 66 89 07 mov %ax,(%rdi)
400fc7: 48 83 c7 02 add $0x2,%rdi
400fcb: 48 39 fe cmp %rdi,%rsi
400fce: 75 d4 jne 400fa4 <_ZSt8for_eachIN9__gnu_cxx17__normal_iteratorIP7pixel_tILi16EESt6vectorIS3_SaIS3_EEEE10transcolorET0_T_SB_SA_+0x5>
400fd0: b8 00 00 00 00 mov $0x0,%eax
400fd5: c3 retq
0000000000400fd6 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm>:
400fd6: 41 55 push %r13
400fd8: 41 54 push %r12
400fda: 55 push %rbp
400fdb: 53 push %rbx
400fdc: 48 83 ec 08 sub $0x8,%rsp
400fe0: 48 89 f3 mov %rsi,%rbx
400fe3: 48 85 f6 test %rsi,%rsi
400fe6: 0f 84 12 01 00 00 je 4010fe <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x128>
400fec: 48 89 fd mov %rdi,%rbp
400fef: 48 8b 47 08 mov 0x8(%rdi),%rax
400ff3: 48 8b 57 10 mov 0x10(%rdi),%rdx
400ff7: 48 29 c2 sub %rax,%rdx
400ffa: 48 d1 fa sar %rdx
400ffd: 48 39 d6 cmp %rdx,%rsi
401000: 77 23 ja 401025 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x4f>
401002: 48 89 f2 mov %rsi,%rdx
401005: 48 85 c0 test %rax,%rax
401008: 74 05 je 40100f <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x39>
40100a: 66 c7 00 00 00 movw $0x0,(%rax)
40100f: 48 83 c0 02 add $0x2,%rax
401013: 48 83 ea 01 sub $0x1,%rdx
401017: 75 ec jne 401005 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x2f>
401019: 48 01 db add %rbx,%rbx
40101c: 48 01 5d 08 add %rbx,0x8(%rbp)
401020: e9 d9 00 00 00 jmpq 4010fe <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x128>
401025: 48 2b 07 sub (%rdi),%rax
401028: 48 d1 f8 sar %rax
40102b: 48 ba ff ff ff ff ff movabs $0x7fffffffffffffff,%rdx
401032: ff ff 7f
401035: 48 29 c2 sub %rax,%rdx
401038: 48 39 d6 cmp %rdx,%rsi
40103b: 76 0a jbe 401047 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x71>
40103d: bf bc 11 40 00 mov $0x4011bc,%edi
401042: e8 09 fb ff ff callq 400b50 <_ZSt20__throw_length_errorPKc@plt>
401047: 48 39 f0 cmp %rsi,%rax
40104a: 48 89 f2 mov %rsi,%rdx
40104d: 48 0f 43 d0 cmovae %rax,%rdx
401051: 49 bd ff ff ff ff ff movabs $0x7fffffffffffffff,%r13
401058: ff ff 7f
40105b: 48 01 d0 add %rdx,%rax
40105e: 72 12 jb 401072 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x9c>
401060: 4c 39 e8 cmp %r13,%rax
401063: 4c 0f 46 e8 cmovbe %rax,%r13
401067: 41 bc 00 00 00 00 mov $0x0,%r12d
40106d: 4d 85 ed test %r13,%r13
401070: 74 0d je 40107f <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0xa9>
401072: 4b 8d 7c 2d 00 lea 0x0(%r13,%r13,1),%rdi
401077: e8 d4 fb ff ff callq 400c50 <_Znwm@plt>
40107c: 49 89 c4 mov %rax,%r12
40107f: 48 8b 75 08 mov 0x8(%rbp),%rsi
401083: 48 8b 7d 00 mov 0x0(%rbp),%rdi
401087: 48 39 fe cmp %rdi,%rsi
40108a: 74 67 je 4010f3 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x11d>
40108c: 48 89 f8 mov %rdi,%rax
40108f: 4c 89 e2 mov %r12,%rdx
401092: 48 85 d2 test %rdx,%rdx
401095: 74 06 je 40109d <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0xc7>
401097: 0f b7 08 movzwl (%rax),%ecx
40109a: 66 89 0a mov %cx,(%rdx)
40109d: 48 83 c0 02 add $0x2,%rax
4010a1: 48 83 c2 02 add $0x2,%rdx
4010a5: 48 39 c6 cmp %rax,%rsi
4010a8: 75 e8 jne 401092 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0xbc>
4010aa: 48 83 c7 02 add $0x2,%rdi
4010ae: 48 29 fe sub %rdi,%rsi
4010b1: 48 d1 ee shr %rsi
4010b4: 49 8d 4c 74 02 lea 0x2(%r12,%rsi,2),%rcx
4010b9: eb 3b jmp 4010f6 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x120>
4010bb: 48 85 d2 test %rdx,%rdx
4010be: 74 05 je 4010c5 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0xef>
4010c0: 66 c7 02 00 00 movw $0x0,(%rdx)
4010c5: 48 83 c2 02 add $0x2,%rdx
4010c9: 48 83 e8 01 sub $0x1,%rax
4010cd: 75 ec jne 4010bb <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0xe5>
4010cf: 48 8d 1c 59 lea (%rcx,%rbx,2),%rbx
4010d3: 48 8b 7d 00 mov 0x0(%rbp),%rdi
4010d7: 48 85 ff test %rdi,%rdi
4010da: 74 05 je 4010e1 <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x10b>
4010dc: e8 8f fa ff ff callq 400b70 <_ZdlPv@plt>
4010e1: 4c 89 65 00 mov %r12,0x0(%rbp)
4010e5: 48 89 5d 08 mov %rbx,0x8(%rbp)
4010e9: 4b 8d 04 6c lea (%r12,%r13,2),%rax
4010ed: 48 89 45 10 mov %rax,0x10(%rbp)
4010f1: eb 0b jmp 4010fe <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0x128>
4010f3: 4c 89 e1 mov %r12,%rcx
4010f6: 48 89 d8 mov %rbx,%rax
4010f9: 48 89 ca mov %rcx,%rdx
4010fc: eb bd jmp 4010bb <_ZNSt6vectorI7pixel_tILi16EESaIS1_EE17_M_default_appendEm+0xe5>
4010fe: 48 83 c4 08 add $0x8,%rsp
401102: 5b pop %rbx
401103: 5d pop %rbp
401104: 41 5c pop %r12
401106: 41 5d pop %r13
401108: c3 retq
401109: 90 nop
40110a: 90 nop
40110b: 90 nop
40110c: 90 nop
40110d: 90 nop
40110e: 90 nop
40110f: 90 nop
0000000000401110 <__libc_csu_init>:
401110: 48 89 6c 24 d8 mov %rbp,-0x28(%rsp)
401115: 4c 89 64 24 e0 mov %r12,-0x20(%rsp)
40111a: 48 8d 2d 9f 0c 20 00 lea 0x200c9f(%rip),%rbp # 601dc0 <__init_array_end>
401121: 4c 8d 25 88 0c 20 00 lea 0x200c88(%rip),%r12 # 601db0 <__frame_dummy_init_array_entry>
401128: 48 89 5c 24 d0 mov %rbx,-0x30(%rsp)
40112d: 4c 89 6c 24 e8 mov %r13,-0x18(%rsp)
401132: 4c 89 74 24 f0 mov %r14,-0x10(%rsp)
401137: 4c 89 7c 24 f8 mov %r15,-0x8(%rsp)
40113c: 48 83 ec 38 sub $0x38,%rsp
401140: 4c 29 e5 sub %r12,%rbp
401143: 41 89 ff mov %edi,%r15d
401146: 49 89 f6 mov %rsi,%r14
401149: 48 c1 fd 03 sar $0x3,%rbp
40114d: 49 89 d5 mov %rdx,%r13
401150: 31 db xor %ebx,%ebx
401152: e8 d9 f9 ff ff callq 400b30 <_init>
401157: 48 85 ed test %rbp,%rbp
40115a: 74 1a je 401176 <__libc_csu_init+0x66>
40115c: 0f 1f 40 00 nopl 0x0(%rax)
401160: 4c 89 ea mov %r13,%rdx
401163: 4c 89 f6 mov %r14,%rsi
401166: 44 89 ff mov %r15d,%edi
401169: 41 ff 14 dc callq *(%r12,%rbx,8)
40116d: 48 83 c3 01 add $0x1,%rbx
401171: 48 39 eb cmp %rbp,%rbx
401174: 75 ea jne 401160 <__libc_csu_init+0x50>
401176: 48 8b 5c 24 08 mov 0x8(%rsp),%rbx
40117b: 48 8b 6c 24 10 mov 0x10(%rsp),%rbp
401180: 4c 8b 64 24 18 mov 0x18(%rsp),%r12
401185: 4c 8b 6c 24 20 mov 0x20(%rsp),%r13
40118a: 4c 8b 74 24 28 mov 0x28(%rsp),%r14
40118f: 4c 8b 7c 24 30 mov 0x30(%rsp),%r15
401194: 48 83 c4 38 add $0x38,%rsp
401198: c3 retq
401199: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
00000000004011a0 <__libc_csu_fini>:
4011a0: f3 c3 repz retq
4011a2: 90 nop
4011a3: 90 nop
Disassembly of section .fini:
00000000004011a4 <_fini>:
4011a4: 55 push %rbp
4011a5: 48 83 ec 08 sub $0x8,%rsp
4011a9: e8 06 00 00 00 callq 4011b4 <_real_fini>
4011ae: 48 83 c4 08 add $0x8,%rsp
4011b2: 5d pop %rbp
4011b3: c3 retq
00000000004011b4 <_real_fini>:
4011b4: c3 retq
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment