• To be transfered


    bomb: file format elf64-x86-64


    Disassembly of section .init:

    0000000000400b38 <_init>:
    400b38: 48 83 ec 08 sub $0x8,%rsp
    400b3c: e8 1b 02 00 00 callq 400d5c <call_gmon_start>
    400b41: e8 aa 02 00 00 callq 400df0 <frame_dummy>
    400b46: e8 65 1b 00 00 callq 4026b0 <__do_global_ctors_aux>
    400b4b: 48 83 c4 08 add $0x8,%rsp
    400b4f: c3 retq

    Disassembly of section .plt:

    0000000000400b50 <getenv@plt-0x10>:
    400b50: ff 35 9a 34 20 00 pushq 0x20349a(%rip) # 603ff0 <_GLOBAL_OFFSET_TABLE_+0x8>
    400b56: ff 25 9c 34 20 00 jmpq *0x20349c(%rip) # 603ff8 <_GLOBAL_OFFSET_TABLE_+0x10>
    400b5c: 0f 1f 40 00 nopl 0x0(%rax)

    0000000000400b60 <getenv@plt>:
    400b60: ff 25 9a 34 20 00 jmpq *0x20349a(%rip) # 604000 <_GLOBAL_OFFSET_TABLE_+0x18>
    400b66: 68 00 00 00 00 pushq $0x0
    400b6b: e9 e0 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400b70 <strcasecmp@plt>:
    400b70: ff 25 92 34 20 00 jmpq *0x203492(%rip) # 604008 <_GLOBAL_OFFSET_TABLE_+0x20>
    400b76: 68 01 00 00 00 pushq $0x1
    400b7b: e9 d0 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400b80 <__errno_location@plt>:
    400b80: ff 25 8a 34 20 00 jmpq *0x20348a(%rip) # 604010 <_GLOBAL_OFFSET_TABLE_+0x28>
    400b86: 68 02 00 00 00 pushq $0x2
    400b8b: e9 c0 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400b90 <strcpy@plt>:
    400b90: ff 25 82 34 20 00 jmpq *0x203482(%rip) # 604018 <_GLOBAL_OFFSET_TABLE_+0x30>
    400b96: 68 03 00 00 00 pushq $0x3
    400b9b: e9 b0 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400ba0 <puts@plt>:
    400ba0: ff 25 7a 34 20 00 jmpq *0x20347a(%rip) # 604020 <_GLOBAL_OFFSET_TABLE_+0x38>
    400ba6: 68 04 00 00 00 pushq $0x4
    400bab: e9 a0 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400bb0 <write@plt>:
    400bb0: ff 25 72 34 20 00 jmpq *0x203472(%rip) # 604028 <_GLOBAL_OFFSET_TABLE_+0x40>
    400bb6: 68 05 00 00 00 pushq $0x5
    400bbb: e9 90 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400bc0 <__stack_chk_fail@plt>:
    400bc0: ff 25 6a 34 20 00 jmpq *0x20346a(%rip) # 604030 <_GLOBAL_OFFSET_TABLE_+0x48>
    400bc6: 68 06 00 00 00 pushq $0x6
    400bcb: e9 80 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400bd0 <alarm@plt>:
    400bd0: ff 25 62 34 20 00 jmpq *0x203462(%rip) # 604038 <_GLOBAL_OFFSET_TABLE_+0x50>
    400bd6: 68 07 00 00 00 pushq $0x7
    400bdb: e9 70 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400be0 <close@plt>:
    400be0: ff 25 5a 34 20 00 jmpq *0x20345a(%rip) # 604040 <_GLOBAL_OFFSET_TABLE_+0x58>
    400be6: 68 08 00 00 00 pushq $0x8
    400beb: e9 60 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400bf0 <read@plt>:
    400bf0: ff 25 52 34 20 00 jmpq *0x203452(%rip) # 604048 <_GLOBAL_OFFSET_TABLE_+0x60>
    400bf6: 68 09 00 00 00 pushq $0x9
    400bfb: e9 50 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400c00 <__libc_start_main@plt>:
    400c00: ff 25 4a 34 20 00 jmpq *0x20344a(%rip) # 604050 <_GLOBAL_OFFSET_TABLE_+0x68>
    400c06: 68 0a 00 00 00 pushq $0xa
    400c0b: e9 40 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400c10 <fgets@plt>:
    400c10: ff 25 42 34 20 00 jmpq *0x203442(%rip) # 604058 <_GLOBAL_OFFSET_TABLE_+0x70>
    400c16: 68 0b 00 00 00 pushq $0xb
    400c1b: e9 30 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400c20 <signal@plt>:
    400c20: ff 25 3a 34 20 00 jmpq *0x20343a(%rip) # 604060 <_GLOBAL_OFFSET_TABLE_+0x78>
    400c26: 68 0c 00 00 00 pushq $0xc
    400c2b: e9 20 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400c30 <gethostbyname@plt>:
    400c30: ff 25 32 34 20 00 jmpq *0x203432(%rip) # 604068 <_GLOBAL_OFFSET_TABLE_+0x80>
    400c36: 68 0d 00 00 00 pushq $0xd
    400c3b: e9 10 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400c40 <__memmove_chk@plt>:
    400c40: ff 25 2a 34 20 00 jmpq *0x20342a(%rip) # 604070 <_GLOBAL_OFFSET_TABLE_+0x88>
    400c46: 68 0e 00 00 00 pushq $0xe
    400c4b: e9 00 ff ff ff jmpq 400b50 <_init+0x18>

    0000000000400c50 <__memcpy_chk@plt>:
    400c50: ff 25 22 34 20 00 jmpq *0x203422(%rip) # 604078 <_GLOBAL_OFFSET_TABLE_+0x90>
    400c56: 68 0f 00 00 00 pushq $0xf
    400c5b: e9 f0 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400c60 <strtol@plt>:
    400c60: ff 25 1a 34 20 00 jmpq *0x20341a(%rip) # 604080 <_GLOBAL_OFFSET_TABLE_+0x98>
    400c66: 68 10 00 00 00 pushq $0x10
    400c6b: e9 e0 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400c70 <fflush@plt>:
    400c70: ff 25 12 34 20 00 jmpq *0x203412(%rip) # 604088 <_GLOBAL_OFFSET_TABLE_+0xa0>
    400c76: 68 11 00 00 00 pushq $0x11
    400c7b: e9 d0 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400c80 <__isoc99_sscanf@plt>:
    400c80: ff 25 0a 34 20 00 jmpq *0x20340a(%rip) # 604090 <_GLOBAL_OFFSET_TABLE_+0xa8>
    400c86: 68 12 00 00 00 pushq $0x12
    400c8b: e9 c0 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400c90 <__printf_chk@plt>:
    400c90: ff 25 02 34 20 00 jmpq *0x203402(%rip) # 604098 <_GLOBAL_OFFSET_TABLE_+0xb0>
    400c96: 68 13 00 00 00 pushq $0x13
    400c9b: e9 b0 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400ca0 <fopen@plt>:
    400ca0: ff 25 fa 33 20 00 jmpq *0x2033fa(%rip) # 6040a0 <_GLOBAL_OFFSET_TABLE_+0xb8>
    400ca6: 68 14 00 00 00 pushq $0x14
    400cab: e9 a0 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400cb0 <gethostname@plt>:
    400cb0: ff 25 f2 33 20 00 jmpq *0x2033f2(%rip) # 6040a8 <_GLOBAL_OFFSET_TABLE_+0xc0>
    400cb6: 68 15 00 00 00 pushq $0x15
    400cbb: e9 90 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400cc0 <exit@plt>:
    400cc0: ff 25 ea 33 20 00 jmpq *0x2033ea(%rip) # 6040b0 <_GLOBAL_OFFSET_TABLE_+0xc8>
    400cc6: 68 16 00 00 00 pushq $0x16
    400ccb: e9 80 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400cd0 <connect@plt>:
    400cd0: ff 25 e2 33 20 00 jmpq *0x2033e2(%rip) # 6040b8 <_GLOBAL_OFFSET_TABLE_+0xd0>
    400cd6: 68 17 00 00 00 pushq $0x17
    400cdb: e9 70 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400ce0 <__fprintf_chk@plt>:
    400ce0: ff 25 da 33 20 00 jmpq *0x2033da(%rip) # 6040c0 <_GLOBAL_OFFSET_TABLE_+0xd8>
    400ce6: 68 18 00 00 00 pushq $0x18
    400ceb: e9 60 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400cf0 <sleep@plt>:
    400cf0: ff 25 d2 33 20 00 jmpq *0x2033d2(%rip) # 6040c8 <_GLOBAL_OFFSET_TABLE_+0xe0>
    400cf6: 68 19 00 00 00 pushq $0x19
    400cfb: e9 50 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400d00 <__ctype_b_loc@plt>:
    400d00: ff 25 ca 33 20 00 jmpq *0x2033ca(%rip) # 6040d0 <_GLOBAL_OFFSET_TABLE_+0xe8>
    400d06: 68 1a 00 00 00 pushq $0x1a
    400d0b: e9 40 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400d10 <__sprintf_chk@plt>:
    400d10: ff 25 c2 33 20 00 jmpq *0x2033c2(%rip) # 6040d8 <_GLOBAL_OFFSET_TABLE_+0xf0>
    400d16: 68 1b 00 00 00 pushq $0x1b
    400d1b: e9 30 fe ff ff jmpq 400b50 <_init+0x18>

    0000000000400d20 <socket@plt>:
    400d20: ff 25 ba 33 20 00 jmpq *0x2033ba(%rip) # 6040e0 <_GLOBAL_OFFSET_TABLE_+0xf8>
    400d26: 68 1c 00 00 00 pushq $0x1c
    400d2b: e9 20 fe ff ff jmpq 400b50 <_init+0x18>

    Disassembly of section .text:

    0000000000400d30 <_start>:
    400d30: 31 ed xor %ebp,%ebp
    400d32: 49 89 d1 mov %rdx,%r9
    400d35: 5e pop %rsi
    400d36: 48 89 e2 mov %rsp,%rdx
    400d39: 48 83 e4 f0 and $0xfffffffffffffff0,%rsp
    400d3d: 50 push %rax
    400d3e: 54 push %rsp
    400d3f: 49 c7 c0 a0 26 40 00 mov $0x4026a0,%r8
    400d46: 48 c7 c1 10 26 40 00 mov $0x402610,%rcx
    400d4d: 48 c7 c7 14 0e 40 00 mov $0x400e14,%rdi
    400d54: e8 a7 fe ff ff callq 400c00 <__libc_start_main@plt>
    400d59: f4 hlt
    400d5a: 90 nop
    400d5b: 90 nop

    0000000000400d5c <call_gmon_start>:
    400d5c: 48 83 ec 08 sub $0x8,%rsp
    400d60: 48 8b 05 79 32 20 00 mov 0x203279(%rip),%rax # 603fe0 <_DYNAMIC+0x190>
    400d67: 48 85 c0 test %rax,%rax
    400d6a: 74 02 je 400d6e <call_gmon_start+0x12>
    400d6c: ff d0 callq *%rax
    400d6e: 48 83 c4 08 add $0x8,%rsp
    400d72: c3 retq
    400d73: 90 nop
    400d74: 90 nop
    400d75: 90 nop
    400d76: 90 nop
    400d77: 90 nop
    400d78: 90 nop
    400d79: 90 nop
    400d7a: 90 nop
    400d7b: 90 nop
    400d7c: 90 nop
    400d7d: 90 nop
    400d7e: 90 nop
    400d7f: 90 nop

    0000000000400d80 <__do_global_dtors_aux>:
    400d80: 55 push %rbp
    400d81: 48 89 e5 mov %rsp,%rbp
    400d84: 53 push %rbx
    400d85: 48 83 ec 08 sub $0x8,%rsp
    400d89: 80 3d 88 48 20 00 00 cmpb $0x0,0x204888(%rip) # 605618 <completed.6531>
    400d90: 75 4b jne 400ddd <__do_global_dtors_aux+0x5d>
    400d92: bb 40 3e 60 00 mov $0x603e40,%ebx
    400d97: 48 8b 05 82 48 20 00 mov 0x204882(%rip),%rax # 605620 <dtor_idx.6533>
    400d9e: 48 81 eb 38 3e 60 00 sub $0x603e38,%rbx
    400da5: 48 c1 fb 03 sar $0x3,%rbx
    400da9: 48 83 eb 01 sub $0x1,%rbx
    400dad: 48 39 d8 cmp %rbx,%rax
    400db0: 73 24 jae 400dd6 <__do_global_dtors_aux+0x56>
    400db2: 66 0f 1f 44 00 00 nopw 0x0(%rax,%rax,1)
    400db8: 48 83 c0 01 add $0x1,%rax
    400dbc: 48 89 05 5d 48 20 00 mov %rax,0x20485d(%rip) # 605620 <dtor_idx.6533>
    400dc3: ff 14 c5 38 3e 60 00 callq *0x603e38(,%rax,8)
    400dca: 48 8b 05 4f 48 20 00 mov 0x20484f(%rip),%rax # 605620 <dtor_idx.6533>
    400dd1: 48 39 d8 cmp %rbx,%rax
    400dd4: 72 e2 jb 400db8 <__do_global_dtors_aux+0x38>
    400dd6: c6 05 3b 48 20 00 01 movb $0x1,0x20483b(%rip) # 605618 <completed.6531>
    400ddd: 48 83 c4 08 add $0x8,%rsp
    400de1: 5b pop %rbx
    400de2: 5d pop %rbp
    400de3: c3 retq
    400de4: 66 66 66 2e 0f 1f 84 data32 data32 nopw %cs:0x0(%rax,%rax,1)
    400deb: 00 00 00 00 00

    0000000000400df0 <frame_dummy>:
    400df0: 48 83 3d 50 30 20 00 cmpq $0x0,0x203050(%rip) # 603e48 <__JCR_END__>
    400df7: 00
    400df8: 55 push %rbp
    400df9: 48 89 e5 mov %rsp,%rbp
    400dfc: 74 12 je 400e10 <frame_dummy+0x20>
    400dfe: b8 00 00 00 00 mov $0x0,%eax
    400e03: 48 85 c0 test %rax,%rax
    400e06: 74 08 je 400e10 <frame_dummy+0x20>
    400e08: 5d pop %rbp
    400e09: bf 48 3e 60 00 mov $0x603e48,%edi
    400e0e: ff e0 jmpq *%rax
    400e10: 5d pop %rbp
    400e11: c3 retq
    400e12: 90 nop
    400e13: 90 nop

    0000000000400e14 <main>:
    400e14: 53 push %rbx
    400e15: 48 89 f3 mov %rsi,%rbx
    400e18: 83 ff 01 cmp $0x1,%edi
    400e1b: 75 10 jne 400e2d <main+0x19>
    400e1d: 48 8b 05 e4 47 20 00 mov 0x2047e4(%rip),%rax # 605608 <stdin@@GLIBC_2.2.5>
    400e24: 48 89 05 05 48 20 00 mov %rax,0x204805(%rip) # 605630 <infile>
    400e2b: eb 60 jmp 400e8d <main+0x79>
    400e2d: 83 ff 02 cmp $0x2,%edi
    400e30: 75 3a jne 400e6c <main+0x58>
    400e32: 48 8b 7e 08 mov 0x8(%rsi),%rdi
    400e36: be 04 27 40 00 mov $0x402704,%esi
    400e3b: e8 60 fe ff ff callq 400ca0 <fopen@plt>
    400e40: 48 89 05 e9 47 20 00 mov %rax,0x2047e9(%rip) # 605630 <infile>
    400e47: 48 85 c0 test %rax,%rax
    400e4a: 75 41 jne 400e8d <main+0x79>
    400e4c: 48 8b 4b 08 mov 0x8(%rbx),%rcx
    400e50: 48 8b 13 mov (%rbx),%rdx
    400e53: be 06 27 40 00 mov $0x402706,%esi
    400e58: bf 01 00 00 00 mov $0x1,%edi
    400e5d: e8 2e fe ff ff callq 400c90 <__printf_chk@plt>
    400e62: bf 08 00 00 00 mov $0x8,%edi
    400e67: e8 54 fe ff ff callq 400cc0 <exit@plt>
    400e6c: 48 8b 16 mov (%rsi),%rdx
    400e6f: be 23 27 40 00 mov $0x402723,%esi
    400e74: bf 01 00 00 00 mov $0x1,%edi
    400e79: b8 00 00 00 00 mov $0x0,%eax
    400e7e: e8 0d fe ff ff callq 400c90 <__printf_chk@plt>
    400e83: bf 08 00 00 00 mov $0x8,%edi
    400e88: e8 33 fe ff ff callq 400cc0 <exit@plt>
    400e8d: e8 a3 05 00 00 callq 401435 <initialize_bomb>
    400e92: bf 88 27 40 00 mov $0x402788,%edi
    400e97: e8 04 fd ff ff callq 400ba0 <puts@plt>
    400e9c: bf c8 27 40 00 mov $0x4027c8,%edi
    400ea1: e8 fa fc ff ff callq 400ba0 <puts@plt>
    400ea6: e8 44 08 00 00 callq 4016ef <read_line>
    400eab: 48 89 c7 mov %rax,%rdi
    400eae: e8 9d 00 00 00 callq 400f50 <phase_1>
    400eb3: e8 a4 09 00 00 callq 40185c <phase_defused>
    400eb8: bf f8 27 40 00 mov $0x4027f8,%edi
    400ebd: e8 de fc ff ff callq 400ba0 <puts@plt>
    400ec2: e8 28 08 00 00 callq 4016ef <read_line>
    400ec7: 48 89 c7 mov %rax,%rdi
    400eca: e8 9d 00 00 00 callq 400f6c <phase_2>
    400ecf: e8 88 09 00 00 callq 40185c <phase_defused>
    400ed4: bf 3d 27 40 00 mov $0x40273d,%edi
    400ed9: e8 c2 fc ff ff callq 400ba0 <puts@plt>
    400ede: e8 0c 08 00 00 callq 4016ef <read_line>
    400ee3: 48 89 c7 mov %rax,%rdi
    400ee6: e8 c5 00 00 00 callq 400fb0 <phase_3>
    400eeb: e8 6c 09 00 00 callq 40185c <phase_defused>
    400ef0: bf 5b 27 40 00 mov $0x40275b,%edi
    400ef5: e8 a6 fc ff ff callq 400ba0 <puts@plt>
    400efa: e8 f0 07 00 00 callq 4016ef <read_line>
    400eff: 48 89 c7 mov %rax,%rdi
    400f02: e8 9c 01 00 00 callq 4010a3 <phase_4>
    400f07: e8 50 09 00 00 callq 40185c <phase_defused>
    400f0c: bf 28 28 40 00 mov $0x402828,%edi
    400f11: e8 8a fc ff ff callq 400ba0 <puts@plt>
    400f16: e8 d4 07 00 00 callq 4016ef <read_line>
    400f1b: 48 89 c7 mov %rax,%rdi
    400f1e: e8 dd 01 00 00 callq 401100 <phase_5>
    400f23: e8 34 09 00 00 callq 40185c <phase_defused>
    400f28: bf 6a 27 40 00 mov $0x40276a,%edi
    400f2d: e8 6e fc ff ff callq 400ba0 <puts@plt>
    400f32: e8 b8 07 00 00 callq 4016ef <read_line>
    400f37: 48 89 c7 mov %rax,%rdi
    400f3a: e8 2e 02 00 00 callq 40116d <phase_6>
    400f3f: e8 18 09 00 00 callq 40185c <phase_defused>
    400f44: b8 00 00 00 00 mov $0x0,%eax
    400f49: 5b pop %rbx
    400f4a: c3 retq
    400f4b: 90 nop
    400f4c: 90 nop
    400f4d: 90 nop
    400f4e: 90 nop
    400f4f: 90 nop

    //test string in edi

    0000000000400f50 <phase_1>:
    400f50: 48 83 ec 08 sub $0x8,%rsp //init stack size of 8
    400f54: be 50 28 40 00 mov $0x402850,%esi //esi = 4204624
    400f59: e8 59 04 00 00 callq 4013b7 <strings_not_equal>
    400f5e: 85 c0 test %eax,%eax
    400f60: 74 05 je 400f67 <phase_1+0x17> //if strings_not_equal(420462,para) != 0, then explode
    400f62: e8 52 07 00 00 callq 4016b9 <explode_bomb>
    400f67: 48 83 c4 08 add $0x8,%rsp //restore stack pointer
    400f6b: c3 retq S //return

    /*a bunch of integers should be read in...*/
    //answer:"0 1 3 6 10 15" or "1 2 4 7 11 16" or ....
    0000000000400f6c <phase_2>:
    400f6c: 55 push %rbp
    400f6d: 53 push %rbx //save callee-saved registers
    400f6e: 48 83 ec 28 sub $0x28,%rsp //init stack size of 28
    400f72: 48 89 e6 mov %rsp,%rsi //M[%rsp]~M[%rsp+0x24] is used for read in 6 numbers
    400f75: e8 a0 08 00 00 callq 40181a <read_six_numbers> //
    400f7a: 83 3c 24 00 cmpl $0x0,(%rsp) //first rsp >= 0, else bomb!
    400f7e: 79 05 jns 400f85 <phase_2+0x19> //
    400f80: e8 34 07 00 00 callq 4016b9 <explode_bomb> //
    400f85: 48 8d 5c 24 04 lea 0x4(%rsp),%rbx //%rbx = &secondInteger
    400f8a: bd 01 00 00 00 mov $0x1,%ebp

    #while
    400f8f: 89 e8 mov %ebp,%eax
    400f91: 03 43 fc add -0x4(%rbx),%eax //%eax = %ebp + *(&current - 4) = %ebp + previous
    400f94: 39 03 cmp %eax,(%rbx)
    400f96: 74 05 je 400f9d <phase_2+0x31> //%ebp + previous == second integer, else explode
    400f98: e8 1c 07 00 00 callq 4016b9 <explode_bomb>
    400f9d: 83 c5 01 add $0x1,%ebp //%ebp ++;
    400fa0: 48 83 c3 04 add $0x4,%rbx //%rbx = &thirdInteger
    400fa4: 83 fd 06 cmp $0x6,%ebp //
    400fa7: 75 e6 jne 400f8f <phase_2+0x23>

    for(int i=1, int* currentDigit = firstDigit + 4; i!=6; i ++, currentDigit +=4)
    {
    if(*current != i + *previous) explode();
    }

    400fa9: 48 83 c4 28 add $0x28,%rsp //deallocate stack space
    400fad: 5b pop %rbx
    400fae: 5d pop %rbp //restore callee-saved registers
    400faf: c3 retq


    0000000000400fb0 <phase_3>:

    //Read in two values from input string, store them at 0x8(%rsp) and 0xc(%rsp) specificly.

    400fb0: 48 83 ec 18 sub $0x18,%rsp
    400fb4: 48 8d 4c 24 0c lea 0xc(%rsp),%rcx #arg4 = rsp + 12;
    400fb9: 48 8d 54 24 08 lea 0x8(%rsp),%rdx #arg3 = rsp + 8;
    400fbe: be da 2b 40 00 mov $0x402bda,%esi #arg2 = "XXXXXXX" (#arg1 = input string)
    400fc3: b8 00 00 00 00 mov $0x0,%eax
    400fc8: e8 b3 fc ff ff callq 400c80 <__isoc99_sscanf@plt> #read in two values
    400fcd: 83 f8 01 cmp $0x1,%eax
    400fd0: 7f 05 jg 400fd7 <phase_3+0x27>
    400fd2: e8 e2 06 00 00 callq 4016b9 <explode_bomb>


    400fd7: 83 7c 24 08 07 cmpl $0x7,0x8(%rsp) if(digit1 > 7) explode!
    400fdc: 77 66 ja 401044 <phase_3+0x94>
    400fde: 8b 44 24 08 mov 0x8(%rsp),%eax % eax = digit1
    400fe2: ff 24 c5 a0 28 40 00 jmpq *0x4028a0(,%rax,8) % 0x4028a0 + (8*digit1)
    400fe9: b8 00 00 00 00 mov $0x0,%eax

    400fee: eb 05 jmp 400ff5 <phase_3+0x45>
    400ff0: b8 d4 01 00 00 mov $0x1d4,%eax
    400ff5: 2d 3d 02 00 00 sub $0x23d,%eax %eax-=0x23d
    400ffa: eb 05 jmp 401001 <phase_3+0x51>
    400ffc: b8 00 00 00 00 mov $0x0,%eax
    401001: 05 95 03 00 00 add $0x395,%eax %eax+=0x395
    401006: eb 05 jmp 40100d <phase_3+0x5d>
    401008: b8 00 00 00 00 mov $0x0,%eax
    40100d: 2d 54 01 00 00 sub $0x154,%eax %eax-=0x154
    401012: eb 05 jmp 401019 <phase_3+0x69>
    401014: b8 00 00 00 00 mov $0x0,%eax
    401019: 05 54 01 00 00 add $0x154,%eax %eax+=0x154
    40101e: eb 05 jmp 401025 <phase_3+0x75>
    401020: b8 00 00 00 00 mov $0x0,%eax
    401025: 2d 54 01 00 00 sub $0x154,%eax %eax-=0x154
    40102a: eb 05 jmp 401031 <phase_3+0x81>
    40102c: b8 00 00 00 00 mov $0x0,%eax
    401031: 05 54 01 00 00 add $0x154,%eax %eax+=0x154
    401036: eb 05 jmp 40103d <phase_3+0x8d>
    401038: b8 00 00 00 00 mov $0x0,%eax
    40103d: 2d 54 01 00 00 sub $0x154,%eax %eax-=0x154
    401042: eb 0a jmp 40104e <phase_3+0x9e>

    401044: e8 70 06 00 00 callq 4016b9 <explode_bomb>
    401049: b8 00 00 00 00 mov $0x0,%eax

    40104e: 83 7c 24 08 05 cmpl $0x5,0x8(%rsp) if digit1 > 5, explode!
    401053: 7f 06 jg 40105b <phase_3+0xab>
    401055: 3b 44 24 0c cmp 0xc(%rsp),%eax if %eax!=digit2, explode!
    401059: 74 05 je 401060 <phase_3+0xb0>
    40105b: e8 59 06 00 00 callq 4016b9 <explode_bomb>

    401060: 48 83 c4 18 add $0x18,%rsp //de-allocate stack
    401064: c3 retq


    0000000000401065 <func4>:
    401065: 48 83 ec 08 sub $0x8,%rsp //stack size: 8
    401069: 89 d0 mov %edx,%eax
    40106b: 29 f0 sub %esi,%eax //%eax = arg3 - arg2
    40106d: 89 c1 mov %eax,%ecx //%ecx = %eax
    40106f: c1 e9 1f shr $0x1f,%ecx
    401072: 01 c8 add %ecx,%eax //if(%eax<0) %eax += 1
    401074: d1 f8 sar %eax
    401076: 8d 0c 30 lea (%rax,%rsi,1),%ecx //%ecx = eax + arg2
    401079: 39 f9 cmp %edi,%ecx //ecx<=arg1 else bomb!
    40107b: 7e 0c jle 401089 <func4+0x24>
    40107d: 8d 51 ff lea -0x1(%rcx),%edx
    401080: e8 e0 ff ff ff callq 401065 <func4>
    401085: 01 c0 add %eax,%eax
    401087: eb 15 jmp 40109e <func4+0x39>
    401089: b8 00 00 00 00 mov $0x0,%eax
    40108e: 39 f9 cmp %edi,%ecx
    401090: 7d 0c jge 40109e <func4+0x39>
    401092: 8d 71 01 lea 0x1(%rcx),%esi
    401095: e8 cb ff ff ff callq 401065 <func4>
    40109a: 8d 44 00 01 lea 0x1(%rax,%rax,1),%eax
    40109e: 48 83 c4 08 add $0x8,%rsp
    4010a2: c3 retq

    func4(var arg1, var arg2, var arg3)
    {

    }


    00000000004010a3 <phase_4>:
    4010a3: 48 83 ec 18 sub $0x18,%rsp
    4010a7: 48 8d 4c 24 0c lea 0xc(%rsp),%rcx
    4010ac: 48 8d 54 24 08 lea 0x8(%rsp),%rdx
    4010b1: be da 2b 40 00 mov $0x402bda,%esi
    4010b6: b8 00 00 00 00 mov $0x0,%eax
    4010bb: e8 c0 fb ff ff callq 400c80 <__isoc99_sscanf@plt>
    4010c0: 83 f8 02 cmp $0x2,%eax
    4010c3: 75 0d jne 4010d2 <phase_4+0x2f>
    4010c5: 8b 44 24 08 mov 0x8(%rsp),%eax
    4010c9: 85 c0 test %eax,%eax
    4010cb: 78 05 js 4010d2 <phase_4+0x2f>
    4010cd: 83 f8 0e cmp $0xe,%eax
    4010d0: 7e 05 jle 4010d7 <phase_4+0x34>
    4010d2: e8 e2 05 00 00 callq 4016b9 <explode_bomb>
    4010d7: ba 0e 00 00 00 mov $0xe,%edx
    4010dc: be 00 00 00 00 mov $0x0,%esi
    4010e1: 8b 7c 24 08 mov 0x8(%rsp),%edi
    4010e5: e8 7b ff ff ff callq 401065 <func4>
    4010ea: 83 f8 02 cmp $0x2,%eax
    4010ed: 75 07 jne 4010f6 <phase_4+0x53>
    4010ef: 83 7c 24 0c 02 cmpl $0x2,0xc(%rsp)
    4010f4: 74 05 je 4010fb <phase_4+0x58>
    4010f6: e8 be 05 00 00 callq 4016b9 <explode_bomb>
    4010fb: 48 83 c4 18 add $0x18,%rsp
    4010ff: c3 retq

    0000000000401100 <phase_5>:

    //read in the two valus and store them in 0x8(%rsp) and 0xc(%rsp) respectively.
    401100: 48 83 ec 18 sub $0x18,%rsp
    401104: 48 8d 4c 24 0c lea 0xc(%rsp),%rcx
    401109: 48 8d 54 24 08 lea 0x8(%rsp),%rdx
    40110e: be da 2b 40 00 mov $0x402bda,%esi
    401113: b8 00 00 00 00 mov $0x0,%eax
    401118: e8 63 fb ff ff callq 400c80 <__isoc99_sscanf@plt>
    40111d: 83 f8 01 cmp $0x1,%eax
    401120: 7f 05 jg 401127 <phase_5+0x27>
    401122: e8 92 05 00 00 callq 4016b9 <explode_bomb>


    //
    401127: 8b 44 24 08 mov 0x8(%rsp),%eax
    40112b: 83 e0 0f and $0xf,%eax eax = eax&(0x1111) .... low 4 bites of value1


    40112e: 89 44 24 08 mov %eax,0x8(%rsp) value1 = low 4 btis of value1 (rather than 4 bytes)

    401132: 83 f8 0f cmp $0xf,%eax
    401135: 74 2c je 401163 <phase_5+0x63> //if the low 4 bits of value1 equals to 1111, explode!

    401137: b9 00 00 00 00 mov $0x0,%ecx %ecx = 0
    40113c: ba 00 00 00 00 mov $0x0,%edx %edx = 0

    401141: 83 c2 01 add $0x1,%edx %edx ++;
    401144: 48 98 cltq
    401146: 8b 04 85 e0 28 40 00 mov 0x4028e0(,%rax,4),%eax %eax = rax<<2;
    40114d: 01 c1 add %eax,%ecx %ecx += %eax;
    40114f: 83 f8 0f cmp $0xf,%eax
    401152: 75 ed jne 401141 <phase_5+0x41>

    401154: 89 44 24 08 mov %eax,0x8(%rsp)
    401158: 83 fa 0f cmp $0xf,%edx
    40115b: 75 06 jne 401163 <phase_5+0x63>
    40115d: 3b 4c 24 0c cmp 0xc(%rsp),%ecx
    401161: 74 05 je 401168 <phase_5+0x68>

    401163: e8 51 05 00 00 callq 4016b9 <explode_bomb>

    401168: 48 83 c4 18 add $0x18,%rsp //de-allocate the stack
    40116c: c3 retq

    000000000040116d <phase_6>:
    40116d: 41 56 push %r14
    40116f: 41 55 push %r13
    401171: 41 54 push %r12
    401173: 55 push %rbp
    401174: 53 push %rbx
    401175: 48 83 ec 50 sub $0x50,%rsp
    401179: 48 8d 74 24 30 lea 0x30(%rsp),%rsi
    40117e: e8 97 06 00 00 callq 40181a <read_six_numbers>
    401183: 4c 8d 64 24 30 lea 0x30(%rsp),%r12
    401188: 4d 89 e5 mov %r12,%r13
    40118b: 41 be 00 00 00 00 mov $0x0,%r14d
    401191: 4c 89 ed mov %r13,%rbp
    401194: 41 8b 45 00 mov 0x0(%r13),%eax
    401198: 83 e8 01 sub $0x1,%eax
    40119b: 83 f8 05 cmp $0x5,%eax
    40119e: 76 05 jbe 4011a5 <phase_6+0x38>
    4011a0: e8 14 05 00 00 callq 4016b9 <explode_bomb>
    4011a5: 41 83 c6 01 add $0x1,%r14d
    4011a9: 41 83 fe 06 cmp $0x6,%r14d
    4011ad: 74 22 je 4011d1 <phase_6+0x64>
    4011af: 44 89 f3 mov %r14d,%ebx
    4011b2: 48 63 c3 movslq %ebx,%rax
    4011b5: 8b 54 84 30 mov 0x30(%rsp,%rax,4),%edx
    4011b9: 39 55 00 cmp %edx,0x0(%rbp)
    4011bc: 75 05 jne 4011c3 <phase_6+0x56>
    4011be: e8 f6 04 00 00 callq 4016b9 <explode_bomb>
    4011c3: 83 c3 01 add $0x1,%ebx
    4011c6: 83 fb 05 cmp $0x5,%ebx
    4011c9: 7e e7 jle 4011b2 <phase_6+0x45>
    4011cb: 49 83 c5 04 add $0x4,%r13
    4011cf: eb c0 jmp 401191 <phase_6+0x24>
    4011d1: 48 8d 4c 24 48 lea 0x48(%rsp),%rcx
    4011d6: ba 07 00 00 00 mov $0x7,%edx
    4011db: 89 d0 mov %edx,%eax
    4011dd: 41 2b 04 24 sub (%r12),%eax
    4011e1: 41 89 04 24 mov %eax,(%r12)
    4011e5: 49 83 c4 04 add $0x4,%r12
    4011e9: 49 39 cc cmp %rcx,%r12
    4011ec: 75 ed jne 4011db <phase_6+0x6e>
    4011ee: be 00 00 00 00 mov $0x0,%esi
    4011f3: eb 19 jmp 40120e <phase_6+0xa1>
    4011f5: 48 8b 52 08 mov 0x8(%rdx),%rdx
    4011f9: 83 c0 01 add $0x1,%eax
    4011fc: 39 c8 cmp %ecx,%eax
    4011fe: 75 f5 jne 4011f5 <phase_6+0x88>
    401200: 48 89 14 74 mov %rdx,(%rsp,%rsi,2)
    401204: 48 83 c6 04 add $0x4,%rsi
    401208: 48 83 fe 18 cmp $0x18,%rsi
    40120c: 74 15 je 401223 <phase_6+0xb6>
    40120e: 8b 4c 34 30 mov 0x30(%rsp,%rsi,1),%ecx
    401212: b8 01 00 00 00 mov $0x1,%eax
    401217: ba 00 43 60 00 mov $0x604300,%edx
    40121c: 83 f9 01 cmp $0x1,%ecx
    40121f: 7f d4 jg 4011f5 <phase_6+0x88>
    401221: eb dd jmp 401200 <phase_6+0x93>
    401223: 48 8b 1c 24 mov (%rsp),%rbx
    401227: 48 8b 44 24 08 mov 0x8(%rsp),%rax
    40122c: 48 89 43 08 mov %rax,0x8(%rbx)
    401230: 48 8b 54 24 10 mov 0x10(%rsp),%rdx
    401235: 48 89 50 08 mov %rdx,0x8(%rax)
    401239: 48 8b 44 24 18 mov 0x18(%rsp),%rax
    40123e: 48 89 42 08 mov %rax,0x8(%rdx)
    401242: 48 8b 54 24 20 mov 0x20(%rsp),%rdx
    401247: 48 89 50 08 mov %rdx,0x8(%rax)
    40124b: 48 8b 44 24 28 mov 0x28(%rsp),%rax
    401250: 48 89 42 08 mov %rax,0x8(%rdx)
    401254: 48 c7 40 08 00 00 00 movq $0x0,0x8(%rax)
    40125b: 00
    40125c: bd 05 00 00 00 mov $0x5,%ebp
    401261: 48 8b 43 08 mov 0x8(%rbx),%rax
    401265: 8b 10 mov (%rax),%edx
    401267: 39 13 cmp %edx,(%rbx)
    401269: 7d 05 jge 401270 <phase_6+0x103>
    40126b: e8 49 04 00 00 callq 4016b9 <explode_bomb>
    401270: 48 8b 5b 08 mov 0x8(%rbx),%rbx
    401274: 83 ed 01 sub $0x1,%ebp
    401277: 75 e8 jne 401261 <phase_6+0xf4>
    401279: 48 83 c4 50 add $0x50,%rsp
    40127d: 5b pop %rbx
    40127e: 5d pop %rbp
    40127f: 41 5c pop %r12
    401281: 41 5d pop %r13
    401283: 41 5e pop %r14
    401285: c3 retq

    0000000000401286 <fun7>:
    401286: 48 83 ec 08 sub $0x8,%rsp
    40128a: 48 85 ff test %rdi,%rdi
    40128d: 74 2b je 4012ba <fun7+0x34>
    40128f: 8b 17 mov (%rdi),%edx
    401291: 39 f2 cmp %esi,%edx
    401293: 7e 0d jle 4012a2 <fun7+0x1c>
    401295: 48 8b 7f 08 mov 0x8(%rdi),%rdi
    401299: e8 e8 ff ff ff callq 401286 <fun7>
    40129e: 01 c0 add %eax,%eax
    4012a0: eb 1d jmp 4012bf <fun7+0x39>
    4012a2: b8 00 00 00 00 mov $0x0,%eax
    4012a7: 39 f2 cmp %esi,%edx
    4012a9: 74 14 je 4012bf <fun7+0x39>
    4012ab: 48 8b 7f 10 mov 0x10(%rdi),%rdi
    4012af: e8 d2 ff ff ff callq 401286 <fun7>
    4012b4: 8d 44 00 01 lea 0x1(%rax,%rax,1),%eax
    4012b8: eb 05 jmp 4012bf <fun7+0x39>
    4012ba: b8 ff ff ff ff mov $0xffffffff,%eax
    4012bf: 48 83 c4 08 add $0x8,%rsp
    4012c3: c3 retq

    00000000004012c4 <secret_phase>:
    4012c4: 53 push %rbx
    4012c5: e8 25 04 00 00 callq 4016ef <read_line>
    4012ca: ba 0a 00 00 00 mov $0xa,%edx
    4012cf: be 00 00 00 00 mov $0x0,%esi
    4012d4: 48 89 c7 mov %rax,%rdi
    4012d7: e8 84 f9 ff ff callq 400c60 <strtol@plt>
    4012dc: 89 c3 mov %eax,%ebx
    4012de: 8d 43 ff lea -0x1(%rbx),%eax
    4012e1: 3d e8 03 00 00 cmp $0x3e8,%eax
    4012e6: 76 05 jbe 4012ed <secret_phase+0x29>
    4012e8: e8 cc 03 00 00 callq 4016b9 <explode_bomb>
    4012ed: 89 de mov %ebx,%esi
    4012ef: bf 20 41 60 00 mov $0x604120,%edi
    4012f4: e8 8d ff ff ff callq 401286 <fun7>
    4012f9: 83 f8 04 cmp $0x4,%eax
    4012fc: 74 05 je 401303 <secret_phase+0x3f>
    4012fe: e8 b6 03 00 00 callq 4016b9 <explode_bomb>
    401303: bf 78 28 40 00 mov $0x402878,%edi
    401308: e8 93 f8 ff ff callq 400ba0 <puts@plt>
    40130d: e8 4a 05 00 00 callq 40185c <phase_defused>
    401312: 5b pop %rbx
    401313: c3 retq
    401314: 90 nop
    401315: 90 nop
    401316: 90 nop
    401317: 90 nop
    401318: 90 nop
    401319: 90 nop
    40131a: 90 nop
    40131b: 90 nop
    40131c: 90 nop
    40131d: 90 nop
    40131e: 90 nop
    40131f: 90 nop

    0000000000401320 <sig_handler>:
    401320: 48 83 ec 08 sub $0x8,%rsp
    401324: bf 20 29 40 00 mov $0x402920,%edi
    401329: e8 72 f8 ff ff callq 400ba0 <puts@plt>
    40132e: bf 03 00 00 00 mov $0x3,%edi
    401333: e8 b8 f9 ff ff callq 400cf0 <sleep@plt>
    401338: be 0f 2b 40 00 mov $0x402b0f,%esi
    40133d: bf 01 00 00 00 mov $0x1,%edi
    401342: b8 00 00 00 00 mov $0x0,%eax
    401347: e8 44 f9 ff ff callq 400c90 <__printf_chk@plt>
    40134c: 48 8b 3d ad 42 20 00 mov 0x2042ad(%rip),%rdi # 605600 <__bss_start>
    401353: e8 18 f9 ff ff callq 400c70 <fflush@plt>
    401358: bf 01 00 00 00 mov $0x1,%edi
    40135d: e8 8e f9 ff ff callq 400cf0 <sleep@plt>
    401362: bf 17 2b 40 00 mov $0x402b17,%edi
    401367: e8 34 f8 ff ff callq 400ba0 <puts@plt>
    40136c: bf 10 00 00 00 mov $0x10,%edi
    401371: e8 4a f9 ff ff callq 400cc0 <exit@plt>

    0000000000401376 <invalid_phase>:
    401376: 48 83 ec 08 sub $0x8,%rsp
    40137a: 48 89 fa mov %rdi,%rdx
    40137d: be 1f 2b 40 00 mov $0x402b1f,%esi
    401382: bf 01 00 00 00 mov $0x1,%edi
    401387: b8 00 00 00 00 mov $0x0,%eax
    40138c: e8 ff f8 ff ff callq 400c90 <__printf_chk@plt>
    401391: bf 08 00 00 00 mov $0x8,%edi
    401396: e8 25 f9 ff ff callq 400cc0 <exit@plt>

    000000000040139b <string_length>:
    40139b: b8 00 00 00 00 mov $0x0,%eax
    4013a0: 80 3f 00 cmpb $0x0,(%rdi)
    4013a3: 74 10 je 4013b5 <string_length+0x1a>
    4013a5: 48 89 fa mov %rdi,%rdx
    4013a8: 48 83 c2 01 add $0x1,%rdx
    4013ac: 89 d0 mov %edx,%eax
    4013ae: 29 f8 sub %edi,%eax
    4013b0: 80 3a 00 cmpb $0x0,(%rdx)
    4013b3: 75 f3 jne 4013a8 <string_length+0xd>
    4013b5: f3 c3 repz retq

    00000000004013b7 <strings_not_equal>:
    4013b7: 48 89 5c 24 e8 mov %rbx,-0x18(%rsp)
    4013bc: 48 89 6c 24 f0 mov %rbp,-0x10(%rsp)
    4013c1: 4c 89 64 24 f8 mov %r12,-0x8(%rsp)
    4013c6: 48 83 ec 18 sub $0x18,%rsp
    4013ca: 48 89 fb mov %rdi,%rbx
    4013cd: 48 89 f5 mov %rsi,%rbp
    4013d0: e8 c6 ff ff ff callq 40139b <string_length>
    4013d5: 41 89 c4 mov %eax,%r12d
    4013d8: 48 89 ef mov %rbp,%rdi
    4013db: e8 bb ff ff ff callq 40139b <string_length>
    4013e0: ba 01 00 00 00 mov $0x1,%edx
    4013e5: 41 39 c4 cmp %eax,%r12d
    4013e8: 75 36 jne 401420 <strings_not_equal+0x69>
    4013ea: 0f b6 03 movzbl (%rbx),%eax
    4013ed: b2 00 mov $0x0,%dl
    4013ef: 84 c0 test %al,%al
    4013f1: 74 2d je 401420 <strings_not_equal+0x69>
    4013f3: b2 01 mov $0x1,%dl
    4013f5: 3a 45 00 cmp 0x0(%rbp),%al
    4013f8: 75 26 jne 401420 <strings_not_equal+0x69>
    4013fa: b8 00 00 00 00 mov $0x0,%eax
    4013ff: eb 0a jmp 40140b <strings_not_equal+0x54>
    401401: 48 83 c0 01 add $0x1,%rax
    401405: 3a 54 05 00 cmp 0x0(%rbp,%rax,1),%dl
    401409: 75 10 jne 40141b <strings_not_equal+0x64>
    40140b: 0f b6 54 03 01 movzbl 0x1(%rbx,%rax,1),%edx
    401410: 84 d2 test %dl,%dl
    401412: 75 ed jne 401401 <strings_not_equal+0x4a>
    401414: ba 00 00 00 00 mov $0x0,%edx
    401419: eb 05 jmp 401420 <strings_not_equal+0x69>
    40141b: ba 01 00 00 00 mov $0x1,%edx
    401420: 89 d0 mov %edx,%eax
    401422: 48 8b 1c 24 mov (%rsp),%rbx
    401426: 48 8b 6c 24 08 mov 0x8(%rsp),%rbp
    40142b: 4c 8b 64 24 10 mov 0x10(%rsp),%r12
    401430: 48 83 c4 18 add $0x18,%rsp
    401434: c3 retq

    0000000000401435 <initialize_bomb>:
    401435: 53 push %rbx
    401436: 48 81 ec 50 20 00 00 sub $0x2050,%rsp
    40143d: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax
    401444: 00 00
    401446: 48 89 84 24 48 20 00 mov %rax,0x2048(%rsp)
    40144d: 00
    40144e: 31 c0 xor %eax,%eax
    401450: be 20 13 40 00 mov $0x401320,%esi
    401455: bf 02 00 00 00 mov $0x2,%edi
    40145a: e8 c1 f7 ff ff callq 400c20 <signal@plt>
    40145f: be 40 00 00 00 mov $0x40,%esi
    401464: 48 8d bc 24 00 20 00 lea 0x2000(%rsp),%rdi
    40146b: 00
    40146c: e8 3f f8 ff ff callq 400cb0 <gethostname@plt>
    401471: 85 c0 test %eax,%eax
    401473: 75 13 jne 401488 <initialize_bomb+0x53>
    401475: 48 8b 3d 04 3f 20 00 mov 0x203f04(%rip),%rdi # 605380 <host_table>
    40147c: bb 88 53 60 00 mov $0x605388,%ebx
    401481: 48 85 ff test %rdi,%rdi
    401484: 75 16 jne 40149c <initialize_bomb+0x67>
    401486: eb 61 jmp 4014e9 <initialize_bomb+0xb4>
    401488: bf 58 29 40 00 mov $0x402958,%edi
    40148d: e8 0e f7 ff ff callq 400ba0 <puts@plt>
    401492: bf 08 00 00 00 mov $0x8,%edi
    401497: e8 24 f8 ff ff callq 400cc0 <exit@plt>
    40149c: 48 8d b4 24 00 20 00 lea 0x2000(%rsp),%rsi
    4014a3: 00
    4014a4: e8 c7 f6 ff ff callq 400b70 <strcasecmp@plt>
    4014a9: 85 c0 test %eax,%eax
    4014ab: 74 0f je 4014bc <initialize_bomb+0x87>
    4014ad: 48 83 c3 08 add $0x8,%rbx
    4014b1: 48 8b 7b f8 mov -0x8(%rbx),%rdi
    4014b5: 48 85 ff test %rdi,%rdi
    4014b8: 75 e2 jne 40149c <initialize_bomb+0x67>
    4014ba: eb 2d jmp 4014e9 <initialize_bomb+0xb4>
    4014bc: 48 89 e7 mov %rsp,%rdi
    4014bf: e8 de 0e 00 00 callq 4023a2 <init_driver>
    4014c4: 85 c0 test %eax,%eax
    4014c6: 79 35 jns 4014fd <initialize_bomb+0xc8>
    4014c8: 48 89 e2 mov %rsp,%rdx
    4014cb: be 30 2b 40 00 mov $0x402b30,%esi
    4014d0: bf 01 00 00 00 mov $0x1,%edi
    4014d5: b8 00 00 00 00 mov $0x0,%eax
    4014da: e8 b1 f7 ff ff callq 400c90 <__printf_chk@plt>
    4014df: bf 08 00 00 00 mov $0x8,%edi
    4014e4: e8 d7 f7 ff ff callq 400cc0 <exit@plt>
    4014e9: bf 90 29 40 00 mov $0x402990,%edi
    4014ee: e8 ad f6 ff ff callq 400ba0 <puts@plt>
    4014f3: bf 08 00 00 00 mov $0x8,%edi
    4014f8: e8 c3 f7 ff ff callq 400cc0 <exit@plt>
    4014fd: 48 8b 84 24 48 20 00 mov 0x2048(%rsp),%rax
    401504: 00
    401505: 64 48 33 04 25 28 00 xor %fs:0x28,%rax
    40150c: 00 00
    40150e: 74 05 je 401515 <initialize_bomb+0xe0>
    401510: e8 ab f6 ff ff callq 400bc0 <__stack_chk_fail@plt>
    401515: 48 81 c4 50 20 00 00 add $0x2050,%rsp
    40151c: 5b pop %rbx
    40151d: c3 retq

    000000000040151e <initialize_bomb_solve>:
    40151e: f3 c3 repz retq

    0000000000401520 <blank_line>:
    401520: 55 push %rbp
    401521: 53 push %rbx
    401522: 48 83 ec 08 sub $0x8,%rsp
    401526: 48 89 fd mov %rdi,%rbp
    401529: eb 17 jmp 401542 <blank_line+0x22>
    40152b: e8 d0 f7 ff ff callq 400d00 <__ctype_b_loc@plt>
    401530: 48 83 c5 01 add $0x1,%rbp
    401534: 48 0f be db movsbq %bl,%rbx
    401538: 48 8b 00 mov (%rax),%rax
    40153b: f6 44 58 01 20 testb $0x20,0x1(%rax,%rbx,2)
    401540: 74 0f je 401551 <blank_line+0x31>
    401542: 0f b6 5d 00 movzbl 0x0(%rbp),%ebx
    401546: 84 db test %bl,%bl
    401548: 75 e1 jne 40152b <blank_line+0xb>
    40154a: b8 01 00 00 00 mov $0x1,%eax
    40154f: eb 05 jmp 401556 <blank_line+0x36>
    401551: b8 00 00 00 00 mov $0x0,%eax
    401556: 48 83 c4 08 add $0x8,%rsp
    40155a: 5b pop %rbx
    40155b: 5d pop %rbp
    40155c: c3 retq

    000000000040155d <skip>:
    40155d: 53 push %rbx
    40155e: 48 63 05 c3 40 20 00 movslq 0x2040c3(%rip),%rax # 605628 <num_input_strings>
    401565: 48 8d 3c 80 lea (%rax,%rax,4),%rdi
    401569: 48 c1 e7 04 shl $0x4,%rdi
    40156d: 48 81 c7 40 56 60 00 add $0x605640,%rdi
    401574: 48 8b 15 b5 40 20 00 mov 0x2040b5(%rip),%rdx # 605630 <infile>
    40157b: be 50 00 00 00 mov $0x50,%esi
    401580: e8 8b f6 ff ff callq 400c10 <fgets@plt>
    401585: 48 89 c3 mov %rax,%rbx
    401588: 48 85 c0 test %rax,%rax
    40158b: 74 0c je 401599 <skip+0x3c>
    40158d: 48 89 c7 mov %rax,%rdi
    401590: e8 8b ff ff ff callq 401520 <blank_line>
    401595: 85 c0 test %eax,%eax
    401597: 75 c5 jne 40155e <skip+0x1>
    401599: 48 89 d8 mov %rbx,%rax
    40159c: 5b pop %rbx
    40159d: c3 retq

    000000000040159e <send_msg>:
    40159e: 48 81 ec 38 40 00 00 sub $0x4038,%rsp
    4015a5: 41 89 f8 mov %edi,%r8d
    4015a8: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax
    4015af: 00 00
    4015b1: 48 89 84 24 28 40 00 mov %rax,0x4028(%rsp)
    4015b8: 00
    4015b9: 31 c0 xor %eax,%eax
    4015bb: 8b 15 67 40 20 00 mov 0x204067(%rip),%edx # 605628 <num_input_strings>
    4015c1: 48 63 c2 movslq %edx,%rax
    4015c4: 48 8d 74 80 fb lea -0x5(%rax,%rax,4),%rsi
    4015c9: 48 c1 e6 04 shl $0x4,%rsi
    4015cd: 48 81 c6 40 56 60 00 add $0x605640,%rsi
    4015d4: 48 89 f7 mov %rsi,%rdi
    4015d7: b8 00 00 00 00 mov $0x0,%eax
    4015dc: 48 c7 c1 ff ff ff ff mov $0xffffffffffffffff,%rcx
    4015e3: f2 ae repnz scas %es:(%rdi),%al
    4015e5: 48 f7 d1 not %rcx
    4015e8: 48 83 c1 63 add $0x63,%rcx
    4015ec: 48 81 f9 00 20 00 00 cmp $0x2000,%rcx
    4015f3: 76 19 jbe 40160e <send_msg+0x70>
    4015f5: be c8 29 40 00 mov $0x4029c8,%esi
    4015fa: bf 01 00 00 00 mov $0x1,%edi
    4015ff: e8 8c f6 ff ff callq 400c90 <__printf_chk@plt>
    401604: bf 08 00 00 00 mov $0x8,%edi
    401609: e8 b2 f6 ff ff callq 400cc0 <exit@plt>
    40160e: 45 85 c0 test %r8d,%r8d
    401611: b8 4a 2b 40 00 mov $0x402b4a,%eax
    401616: b9 52 2b 40 00 mov $0x402b52,%ecx
    40161b: 48 0f 44 c1 cmove %rcx,%rax
    40161f: 48 89 74 24 10 mov %rsi,0x10(%rsp)
    401624: 89 54 24 08 mov %edx,0x8(%rsp)
    401628: 48 89 04 24 mov %rax,(%rsp)
    40162c: 41 b9 60 4b 60 00 mov $0x604b60,%r9d
    401632: 44 8b 05 27 3d 20 00 mov 0x203d27(%rip),%r8d # 605360 <bomb_id>
    401639: b9 5b 2b 40 00 mov $0x402b5b,%ecx
    40163e: ba 00 20 00 00 mov $0x2000,%edx
    401643: be 01 00 00 00 mov $0x1,%esi
    401648: 48 8d 7c 24 20 lea 0x20(%rsp),%rdi
    40164d: b8 00 00 00 00 mov $0x0,%eax
    401652: e8 b9 f6 ff ff callq 400d10 <__sprintf_chk@plt>
    401657: 4c 8d 8c 24 20 20 00 lea 0x2020(%rsp),%r9
    40165e: 00
    40165f: 41 b8 00 00 00 00 mov $0x0,%r8d
    401665: 48 8d 4c 24 20 lea 0x20(%rsp),%rcx
    40166a: ba 60 43 60 00 mov $0x604360,%edx
    40166f: be 60 47 60 00 mov $0x604760,%esi
    401674: bf 60 4f 60 00 mov $0x604f60,%edi
    401679: e8 17 0f 00 00 callq 402595 <driver_post>
    40167e: 85 c0 test %eax,%eax
    401680: 79 17 jns 401699 <send_msg+0xfb>
    401682: 48 8d bc 24 20 20 00 lea 0x2020(%rsp),%rdi
    401689: 00
    40168a: e8 11 f5 ff ff callq 400ba0 <puts@plt>
    40168f: bf 00 00 00 00 mov $0x0,%edi
    401694: e8 27 f6 ff ff callq 400cc0 <exit@plt>
    401699: 48 8b 84 24 28 40 00 mov 0x4028(%rsp),%rax
    4016a0: 00
    4016a1: 64 48 33 04 25 28 00 xor %fs:0x28,%rax
    4016a8: 00 00
    4016aa: 74 05 je 4016b1 <send_msg+0x113>
    4016ac: e8 0f f5 ff ff callq 400bc0 <__stack_chk_fail@plt>
    4016b1: 48 81 c4 38 40 00 00 add $0x4038,%rsp
    4016b8: c3 retq

    00000000004016b9 <explode_bomb>:
    4016b9: 48 83 ec 08 sub $0x8,%rsp
    4016bd: bf 6a 2b 40 00 mov $0x402b6a,%edi
    4016c2: e8 d9 f4 ff ff callq 400ba0 <puts@plt>
    4016c7: bf 73 2b 40 00 mov $0x402b73,%edi
    4016cc: e8 cf f4 ff ff callq 400ba0 <puts@plt>
    4016d1: bf 00 00 00 00 mov $0x0,%edi
    4016d6: e8 c3 fe ff ff callq 40159e <send_msg>
    4016db: bf f0 29 40 00 mov $0x4029f0,%edi
    4016e0: e8 bb f4 ff ff callq 400ba0 <puts@plt>
    4016e5: bf 08 00 00 00 mov $0x8,%edi
    4016ea: e8 d1 f5 ff ff callq 400cc0 <exit@plt>

    00000000004016ef <read_line>:
    4016ef: 48 83 ec 08 sub $0x8,%rsp
    4016f3: b8 00 00 00 00 mov $0x0,%eax
    4016f8: e8 60 fe ff ff callq 40155d <skip>
    4016fd: 48 85 c0 test %rax,%rax
    401700: 75 6e jne 401770 <read_line+0x81>
    401702: 48 8b 05 ff 3e 20 00 mov 0x203eff(%rip),%rax # 605608 <stdin@@GLIBC_2.2.5>
    401709: 48 39 05 20 3f 20 00 cmp %rax,0x203f20(%rip) # 605630 <infile>
    401710: 75 14 jne 401726 <read_line+0x37>
    401712: bf 8a 2b 40 00 mov $0x402b8a,%edi
    401717: e8 84 f4 ff ff callq 400ba0 <puts@plt>
    40171c: bf 08 00 00 00 mov $0x8,%edi
    401721: e8 9a f5 ff ff callq 400cc0 <exit@plt>
    401726: bf a8 2b 40 00 mov $0x402ba8,%edi
    40172b: e8 30 f4 ff ff callq 400b60 <getenv@plt>
    401730: 48 85 c0 test %rax,%rax
    401733: 74 0a je 40173f <read_line+0x50>
    401735: bf 00 00 00 00 mov $0x0,%edi
    40173a: e8 81 f5 ff ff callq 400cc0 <exit@plt>
    40173f: 48 8b 05 c2 3e 20 00 mov 0x203ec2(%rip),%rax # 605608 <stdin@@GLIBC_2.2.5>
    401746: 48 89 05 e3 3e 20 00 mov %rax,0x203ee3(%rip) # 605630 <infile>
    40174d: b8 00 00 00 00 mov $0x0,%eax
    401752: e8 06 fe ff ff callq 40155d <skip>
    401757: 48 85 c0 test %rax,%rax
    40175a: 75 14 jne 401770 <read_line+0x81>
    40175c: bf 8a 2b 40 00 mov $0x402b8a,%edi
    401761: e8 3a f4 ff ff callq 400ba0 <puts@plt>
    401766: bf 00 00 00 00 mov $0x0,%edi
    40176b: e8 50 f5 ff ff callq 400cc0 <exit@plt>
    401770: 8b 15 b2 3e 20 00 mov 0x203eb2(%rip),%edx # 605628 <num_input_strings>
    401776: 48 63 c2 movslq %edx,%rax
    401779: 48 8d 34 80 lea (%rax,%rax,4),%rsi
    40177d: 48 c1 e6 04 shl $0x4,%rsi
    401781: 48 81 c6 40 56 60 00 add $0x605640,%rsi
    401788: 48 89 f7 mov %rsi,%rdi
    40178b: b8 00 00 00 00 mov $0x0,%eax
    401790: 48 c7 c1 ff ff ff ff mov $0xffffffffffffffff,%rcx
    401797: f2 ae repnz scas %es:(%rdi),%al
    401799: 48 f7 d1 not %rcx
    40179c: 83 e9 01 sub $0x1,%ecx
    40179f: 83 f9 4e cmp $0x4e,%ecx
    4017a2: 7e 4c jle 4017f0 <read_line+0x101>
    4017a4: bf b3 2b 40 00 mov $0x402bb3,%edi
    4017a9: e8 f2 f3 ff ff callq 400ba0 <puts@plt>
    4017ae: 8b 05 74 3e 20 00 mov 0x203e74(%rip),%eax # 605628 <num_input_strings>
    4017b4: 8d 50 01 lea 0x1(%rax),%edx
    4017b7: 89 15 6b 3e 20 00 mov %edx,0x203e6b(%rip) # 605628 <num_input_strings>
    4017bd: 48 98 cltq
    4017bf: 48 6b c0 50 imul $0x50,%rax,%rax
    4017c3: c7 80 40 56 60 00 2a movl $0x742a2a2a,0x605640(%rax)
    4017ca: 2a 2a 74
    4017cd: c7 80 44 56 60 00 72 movl $0x636e7572,0x605644(%rax)
    4017d4: 75 6e 63
    4017d7: c7 80 48 56 60 00 61 movl $0x64657461,0x605648(%rax)
    4017de: 74 65 64
    4017e1: c7 80 4c 56 60 00 2a movl $0x2a2a2a,0x60564c(%rax)
    4017e8: 2a 2a 00
    4017eb: e8 c9 fe ff ff callq 4016b9 <explode_bomb>
    4017f0: 83 e9 01 sub $0x1,%ecx
    4017f3: 48 63 c9 movslq %ecx,%rcx
    4017f6: 48 63 c2 movslq %edx,%rax
    4017f9: 48 8d 04 80 lea (%rax,%rax,4),%rax
    4017fd: 48 c1 e0 04 shl $0x4,%rax
    401801: c6 84 01 40 56 60 00 movb $0x0,0x605640(%rcx,%rax,1)
    401808: 00
    401809: 83 c2 01 add $0x1,%edx
    40180c: 89 15 16 3e 20 00 mov %edx,0x203e16(%rip) # 605628 <num_input_strings>
    401812: 48 89 f0 mov %rsi,%rax
    401815: 48 83 c4 08 add $0x8,%rsp
    401819: c3 retq

    000000000040181a <read_six_numbers>: (char* rawstr, int *result)
    40181a: 48 83 ec 18 sub $0x18,%rsp
    40181e: 48 89 f2 mov %rsi,%rdx //R[%rdx] (#arg3)= result
    401821: 48 8d 4e 04 lea 0x4(%rsi),%rcx //R[%rcx] (#arg4)= result + 4;
    401825: 48 8d 46 14 lea 0x14(%rsi),%rax
    401829: 48 89 44 24 08 mov %rax,0x8(%rsp) //M[%rsp+8] = result + 4*5; //#arg7
    40182e: 48 8d 46 10 lea 0x10(%rsi),%rax
    401832: 48 89 04 24 mov %rax,(%rsp) //M[%rsp] = result + 4*4; //#arg8
    401836: 4c 8d 4e 0c lea 0xc(%rsi),%r9 // arg#6: result+4*3
    40183a: 4c 8d 46 08 lea 0x8(%rsi),%r8 // arg#5: result+4*2
    40183e: be ce 2b 40 00 mov $0x402bce,%esi //"%d %d %d %d %d %d" //formating//arg#2
    401843: b8 00 00 00 00 mov $0x0,%eax
    401848: e8 33 f4 ff ff callq 400c80 <__isoc99_sscanf@plt>
    40184d: 83 f8 05 cmp $0x5,%eax
    401850: 7f 05 jg 401857 <read_six_numbers+0x3d>
    401852: e8 62 fe ff ff callq 4016b9 <explode_bomb>
    401857: 48 83 c4 18 add $0x18,%rsp
    40185b: c3 retq

    000000000040185c <phase_defused>:
    40185c: 48 83 ec 78 sub $0x78,%rsp
    401860: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax
    401867: 00 00
    401869: 48 89 44 24 68 mov %rax,0x68(%rsp)
    40186e: 31 c0 xor %eax,%eax
    401870: bf 01 00 00 00 mov $0x1,%edi
    401875: e8 24 fd ff ff callq 40159e <send_msg>
    40187a: 83 3d a7 3d 20 00 06 cmpl $0x6,0x203da7(%rip) # 605628 <num_input_strings>
    401881: 75 6d jne 4018f0 <phase_defused+0x94>
    401883: 4c 8d 44 24 10 lea 0x10(%rsp),%r8
    401888: 48 8d 4c 24 0c lea 0xc(%rsp),%rcx
    40188d: 48 8d 54 24 08 lea 0x8(%rsp),%rdx
    401892: be e0 2b 40 00 mov $0x402be0,%esi
    401897: bf 30 57 60 00 mov $0x605730,%edi
    40189c: b8 00 00 00 00 mov $0x0,%eax
    4018a1: e8 da f3 ff ff callq 400c80 <__isoc99_sscanf@plt>
    4018a6: 83 f8 03 cmp $0x3,%eax
    4018a9: 75 31 jne 4018dc <phase_defused+0x80>
    4018ab: be e9 2b 40 00 mov $0x402be9,%esi
    4018b0: 48 8d 7c 24 10 lea 0x10(%rsp),%rdi
    4018b5: e8 fd fa ff ff callq 4013b7 <strings_not_equal>
    4018ba: 85 c0 test %eax,%eax
    4018bc: 75 1e jne 4018dc <phase_defused+0x80>
    4018be: bf 18 2a 40 00 mov $0x402a18,%edi
    4018c3: e8 d8 f2 ff ff callq 400ba0 <puts@plt>
    4018c8: bf 40 2a 40 00 mov $0x402a40,%edi
    4018cd: e8 ce f2 ff ff callq 400ba0 <puts@plt>
    4018d2: b8 00 00 00 00 mov $0x0,%eax
    4018d7: e8 e8 f9 ff ff callq 4012c4 <secret_phase>
    4018dc: bf 78 2a 40 00 mov $0x402a78,%edi
    4018e1: e8 ba f2 ff ff callq 400ba0 <puts@plt>
    4018e6: bf a8 2a 40 00 mov $0x402aa8,%edi
    4018eb: e8 b0 f2 ff ff callq 400ba0 <puts@plt>
    4018f0: 48 8b 44 24 68 mov 0x68(%rsp),%rax
    4018f5: 64 48 33 04 25 28 00 xor %fs:0x28,%rax
    4018fc: 00 00
    4018fe: 74 05 je 401905 <phase_defused+0xa9>
    401900: e8 bb f2 ff ff callq 400bc0 <__stack_chk_fail@plt>
    401905: 48 83 c4 78 add $0x78,%rsp
    401909: c3 retq
    40190a: 90 nop
    40190b: 90 nop
    40190c: 90 nop
    40190d: 90 nop
    40190e: 90 nop
    40190f: 90 nop

    0000000000401910 <rio_readlineb>:
    401910: 41 57 push %r15
    401912: 41 56 push %r14
    401914: 41 55 push %r13
    401916: 41 54 push %r12
    401918: 55 push %rbp
    401919: 53 push %rbx
    40191a: 48 83 ec 28 sub $0x28,%rsp
    40191e: 48 89 fd mov %rdi,%rbp
    401921: 48 89 54 24 08 mov %rdx,0x8(%rsp)
    401926: 49 89 f7 mov %rsi,%r15
    401929: 41 be 01 00 00 00 mov $0x1,%r14d
    40192f: 4c 8d 6f 10 lea 0x10(%rdi),%r13
    401933: 48 83 fa 01 cmp $0x1,%rdx
    401937: 77 38 ja 401971 <rio_readlineb+0x61>
    401939: e9 a7 00 00 00 jmpq 4019e5 <rio_readlineb+0xd5>
    40193e: ba 00 20 00 00 mov $0x2000,%edx
    401943: 4c 89 ee mov %r13,%rsi
    401946: 8b 7d 00 mov 0x0(%rbp),%edi
    401949: e8 a2 f2 ff ff callq 400bf0 <read@plt>
    40194e: 89 45 04 mov %eax,0x4(%rbp)
    401951: 85 c0 test %eax,%eax
    401953: 79 10 jns 401965 <rio_readlineb+0x55>
    401955: e8 26 f2 ff ff callq 400b80 <__errno_location@plt>
    40195a: 83 38 04 cmpl $0x4,(%rax)
    40195d: 74 12 je 401971 <rio_readlineb+0x61>
    40195f: 90 nop
    401960: e9 99 00 00 00 jmpq 4019fe <rio_readlineb+0xee>
    401965: 85 c0 test %eax,%eax
    401967: 0f 84 9a 00 00 00 je 401a07 <rio_readlineb+0xf7>
    40196d: 4c 89 6d 08 mov %r13,0x8(%rbp)
    401971: 44 8b 65 04 mov 0x4(%rbp),%r12d
    401975: 45 85 e4 test %r12d,%r12d
    401978: 7e c4 jle 40193e <rio_readlineb+0x2e>
    40197a: 45 85 e4 test %r12d,%r12d
    40197d: 0f 85 8e 00 00 00 jne 401a11 <rio_readlineb+0x101>
    401983: 49 63 dc movslq %r12d,%rbx
    401986: 48 8b 75 08 mov 0x8(%rbp),%rsi
    40198a: b9 01 00 00 00 mov $0x1,%ecx
    40198f: 48 89 da mov %rbx,%rdx
    401992: 48 8d 7c 24 1f lea 0x1f(%rsp),%rdi
    401997: e8 b4 f2 ff ff callq 400c50 <__memcpy_chk@plt>
    40199c: 48 01 5d 08 add %rbx,0x8(%rbp)
    4019a0: 44 29 65 04 sub %r12d,0x4(%rbp)
    4019a4: 44 89 e0 mov %r12d,%eax
    4019a7: 41 83 fc 01 cmp $0x1,%r12d
    4019ab: 75 12 jne 4019bf <rio_readlineb+0xaf>
    4019ad: 0f b6 44 24 1f movzbl 0x1f(%rsp),%eax
    4019b2: 41 88 07 mov %al,(%r15)
    4019b5: 49 83 c7 01 add $0x1,%r15
    4019b9: 3c 0a cmp $0xa,%al
    4019bb: 75 1d jne 4019da <rio_readlineb+0xca>
    4019bd: eb 26 jmp 4019e5 <rio_readlineb+0xd5>
    4019bf: 4c 89 f2 mov %r14,%rdx
    4019c2: 48 c7 c1 ff ff ff ff mov $0xffffffffffffffff,%rcx
    4019c9: 85 c0 test %eax,%eax
    4019cb: 75 1f jne 4019ec <rio_readlineb+0xdc>
    4019cd: b9 00 00 00 00 mov $0x0,%ecx
    4019d2: 48 83 fa 01 cmp $0x1,%rdx
    4019d6: 75 0d jne 4019e5 <rio_readlineb+0xd5>
    4019d8: eb 12 jmp 4019ec <rio_readlineb+0xdc>
    4019da: 49 83 c6 01 add $0x1,%r14
    4019de: 4c 3b 74 24 08 cmp 0x8(%rsp),%r14
    4019e3: 75 8c jne 401971 <rio_readlineb+0x61>
    4019e5: 41 c6 07 00 movb $0x0,(%r15)
    4019e9: 4c 89 f1 mov %r14,%rcx
    4019ec: 48 89 c8 mov %rcx,%rax
    4019ef: 48 83 c4 28 add $0x28,%rsp
    4019f3: 5b pop %rbx
    4019f4: 5d pop %rbp
    4019f5: 41 5c pop %r12
    4019f7: 41 5d pop %r13
    4019f9: 41 5e pop %r14
    4019fb: 41 5f pop %r15
    4019fd: c3 retq
    4019fe: 48 c7 c0 ff ff ff ff mov $0xffffffffffffffff,%rax
    401a05: eb 05 jmp 401a0c <rio_readlineb+0xfc>
    401a07: b8 00 00 00 00 mov $0x0,%eax
    401a0c: 4c 89 f2 mov %r14,%rdx
    401a0f: eb b1 jmp 4019c2 <rio_readlineb+0xb2>
    401a11: 48 8b 45 08 mov 0x8(%rbp),%rax
    401a15: 0f b6 00 movzbl (%rax),%eax
    401a18: 88 44 24 1f mov %al,0x1f(%rsp)
    401a1c: 48 83 45 08 01 addq $0x1,0x8(%rbp)
    401a21: 83 6d 04 01 subl $0x1,0x4(%rbp)
    401a25: eb 86 jmp 4019ad <rio_readlineb+0x9d>

    0000000000401a27 <sigalrm_handler>:
    401a27: 48 83 ec 08 sub $0x8,%rsp
    401a2b: b9 00 00 00 00 mov $0x0,%ecx
    401a30: ba 28 2d 40 00 mov $0x402d28,%edx
    401a35: be 01 00 00 00 mov $0x1,%esi
    401a3a: 48 8b 3d cf 3b 20 00 mov 0x203bcf(%rip),%rdi # 605610 <stderr@@GLIBC_2.2.5>
    401a41: b8 00 00 00 00 mov $0x0,%eax
    401a46: e8 95 f2 ff ff callq 400ce0 <__fprintf_chk@plt>
    401a4b: bf 01 00 00 00 mov $0x1,%edi
    401a50: e8 6b f2 ff ff callq 400cc0 <exit@plt>

    0000000000401a55 <submitr>:
    401a55: 41 57 push %r15
    401a57: 41 56 push %r14
    401a59: 41 55 push %r13
    401a5b: 41 54 push %r12
    401a5d: 55 push %rbp
    401a5e: 53 push %rbx
    401a5f: 48 81 ec 88 a0 00 00 sub $0xa088,%rsp
    401a66: 49 89 ff mov %rdi,%r15
    401a69: 89 f5 mov %esi,%ebp
    401a6b: 48 89 54 24 28 mov %rdx,0x28(%rsp)
    401a70: 48 89 4c 24 30 mov %rcx,0x30(%rsp)
    401a75: 4c 89 44 24 38 mov %r8,0x38(%rsp)
    401a7a: 4c 89 cb mov %r9,%rbx
    401a7d: 4c 8b b4 24 c0 a0 00 mov 0xa0c0(%rsp),%r14
    401a84: 00
    401a85: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax
    401a8c: 00 00
    401a8e: 48 89 84 24 78 a0 00 mov %rax,0xa078(%rsp)
    401a95: 00
    401a96: 31 c0 xor %eax,%eax
    401a98: c7 44 24 4c 00 00 00 movl $0x0,0x4c(%rsp)
    401a9f: 00
    401aa0: ba 00 00 00 00 mov $0x0,%edx
    401aa5: be 01 00 00 00 mov $0x1,%esi
    401aaa: bf 02 00 00 00 mov $0x2,%edi
    401aaf: e8 6c f2 ff ff callq 400d20 <socket@plt>
    401ab4: 41 89 c5 mov %eax,%r13d
    401ab7: 85 c0 test %eax,%eax
    401ab9: 79 58 jns 401b13 <submitr+0xbe>
    401abb: 41 c7 06 45 72 72 6f movl $0x6f727245,(%r14)
    401ac2: 41 c7 46 04 72 3a 20 movl $0x43203a72,0x4(%r14)
    401ac9: 43
    401aca: 41 c7 46 08 6c 69 65 movl $0x6e65696c,0x8(%r14)
    401ad1: 6e
    401ad2: 41 c7 46 0c 74 20 75 movl $0x6e752074,0xc(%r14)
    401ad9: 6e
    401ada: 41 c7 46 10 61 62 6c movl $0x656c6261,0x10(%r14)
    401ae1: 65
    401ae2: 41 c7 46 14 20 74 6f movl $0x206f7420,0x14(%r14)
    401ae9: 20
    401aea: 41 c7 46 18 63 72 65 movl $0x61657263,0x18(%r14)
    401af1: 61
    401af2: 41 c7 46 1c 74 65 20 movl $0x73206574,0x1c(%r14)
    401af9: 73
    401afa: 41 c7 46 20 6f 63 6b movl $0x656b636f,0x20(%r14)
    401b01: 65
    401b02: 66 41 c7 46 24 74 00 movw $0x74,0x24(%r14)
    401b09: b8 ff ff ff ff mov $0xffffffff,%eax
    401b0e: e9 bc 07 00 00 jmpq 4022cf <submitr+0x87a>
    401b13: 4c 89 ff mov %r15,%rdi
    401b16: e8 15 f1 ff ff callq 400c30 <gethostbyname@plt>
    401b1b: 48 85 c0 test %rax,%rax
    401b1e: 0f 85 85 00 00 00 jne 401ba9 <submitr+0x154>
    401b24: 41 c7 06 45 72 72 6f movl $0x6f727245,(%r14)
    401b2b: 41 c7 46 04 72 3a 20 movl $0x44203a72,0x4(%r14)
    401b32: 44
    401b33: 41 c7 46 08 4e 53 20 movl $0x6920534e,0x8(%r14)
    401b3a: 69
    401b3b: 41 c7 46 0c 73 20 75 movl $0x6e752073,0xc(%r14)
    401b42: 6e
    401b43: 41 c7 46 10 61 62 6c movl $0x656c6261,0x10(%r14)
    401b4a: 65
    401b4b: 41 c7 46 14 20 74 6f movl $0x206f7420,0x14(%r14)
    401b52: 20
    401b53: 41 c7 46 18 72 65 73 movl $0x6f736572,0x18(%r14)
    401b5a: 6f
    401b5b: 41 c7 46 1c 6c 76 65 movl $0x2065766c,0x1c(%r14)
    401b62: 20
    401b63: 41 c7 46 20 41 75 74 movl $0x6f747541,0x20(%r14)
    401b6a: 6f
    401b6b: 41 c7 46 24 6c 61 62 movl $0x2062616c,0x24(%r14)
    401b72: 20
    401b73: 41 c7 46 28 73 65 72 movl $0x76726573,0x28(%r14)
    401b7a: 76
    401b7b: 41 c7 46 2c 65 72 20 movl $0x61207265,0x2c(%r14)
    401b82: 61
    401b83: 41 c7 46 30 64 64 72 movl $0x65726464,0x30(%r14)
    401b8a: 65
    401b8b: 66 41 c7 46 34 73 73 movw $0x7373,0x34(%r14)
    401b92: 41 c6 46 36 00 movb $0x0,0x36(%r14)
    401b97: 44 89 ef mov %r13d,%edi
    401b9a: e8 41 f0 ff ff callq 400be0 <close@plt>
    401b9f: b8 ff ff ff ff mov $0xffffffff,%eax
    401ba4: e9 26 07 00 00 jmpq 4022cf <submitr+0x87a>
    401ba9: 48 c7 84 24 60 a0 00 movq $0x0,0xa060(%rsp)
    401bb0: 00 00 00 00 00
    401bb5: 48 c7 84 24 68 a0 00 movq $0x0,0xa068(%rsp)
    401bbc: 00 00 00 00 00
    401bc1: 66 c7 84 24 60 a0 00 movw $0x2,0xa060(%rsp)
    401bc8: 00 02 00
    401bcb: 48 63 50 14 movslq 0x14(%rax),%rdx
    401bcf: 48 8b 40 18 mov 0x18(%rax),%rax
    401bd3: 48 8d bc 24 64 a0 00 lea 0xa064(%rsp),%rdi
    401bda: 00
    401bdb: b9 0c 00 00 00 mov $0xc,%ecx
    401be0: 48 8b 30 mov (%rax),%rsi
    401be3: e8 58 f0 ff ff callq 400c40 <__memmove_chk@plt>
    401be8: 66 c1 cd 08 ror $0x8,%bp
    401bec: 66 89 ac 24 62 a0 00 mov %bp,0xa062(%rsp)
    401bf3: 00
    401bf4: ba 10 00 00 00 mov $0x10,%edx
    401bf9: 48 8d b4 24 60 a0 00 lea 0xa060(%rsp),%rsi
    401c00: 00
    401c01: 44 89 ef mov %r13d,%edi
    401c04: e8 c7 f0 ff ff callq 400cd0 <connect@plt>
    401c09: 85 c0 test %eax,%eax
    401c0b: 79 75 jns 401c82 <submitr+0x22d>
    401c0d: 41 c7 06 45 72 72 6f movl $0x6f727245,(%r14)
    401c14: 41 c7 46 04 72 3a 20 movl $0x55203a72,0x4(%r14)
    401c1b: 55
    401c1c: 41 c7 46 08 6e 61 62 movl $0x6c62616e,0x8(%r14)
    401c23: 6c
    401c24: 41 c7 46 0c 65 20 74 movl $0x6f742065,0xc(%r14)
    401c2b: 6f
    401c2c: 41 c7 46 10 20 63 6f movl $0x6e6f6320,0x10(%r14)
    401c33: 6e
    401c34: 41 c7 46 14 6e 65 63 movl $0x7463656e,0x14(%r14)
    401c3b: 74
    401c3c: 41 c7 46 18 20 74 6f movl $0x206f7420,0x18(%r14)
    401c43: 20
    401c44: 41 c7 46 1c 74 68 65 movl $0x20656874,0x1c(%r14)
    401c4b: 20
    401c4c: 41 c7 46 20 41 75 74 movl $0x6f747541,0x20(%r14)
    401c53: 6f
    401c54: 41 c7 46 24 6c 61 62 movl $0x2062616c,0x24(%r14)
    401c5b: 20
    401c5c: 41 c7 46 28 73 65 72 movl $0x76726573,0x28(%r14)
    401c63: 76
    401c64: 66 41 c7 46 2c 65 72 movw $0x7265,0x2c(%r14)
    401c6b: 41 c6 46 2e 00 movb $0x0,0x2e(%r14)
    401c70: 44 89 ef mov %r13d,%edi
    401c73: e8 68 ef ff ff callq 400be0 <close@plt>
    401c78: b8 ff ff ff ff mov $0xffffffff,%eax
    401c7d: e9 4d 06 00 00 jmpq 4022cf <submitr+0x87a>
    401c82: 48 c7 c2 ff ff ff ff mov $0xffffffffffffffff,%rdx
    401c89: 48 89 df mov %rbx,%rdi
    401c8c: b8 00 00 00 00 mov $0x0,%eax
    401c91: 48 89 d1 mov %rdx,%rcx
    401c94: f2 ae repnz scas %es:(%rdi),%al
    401c96: 48 89 ce mov %rcx,%rsi
    401c99: 48 f7 d6 not %rsi
    401c9c: 48 8b 7c 24 28 mov 0x28(%rsp),%rdi
    401ca1: 48 89 d1 mov %rdx,%rcx
    401ca4: f2 ae repnz scas %es:(%rdi),%al
    401ca6: 49 89 c8 mov %rcx,%r8
    401ca9: 48 8b 7c 24 30 mov 0x30(%rsp),%rdi
    401cae: 48 89 d1 mov %rdx,%rcx
    401cb1: f2 ae repnz scas %es:(%rdi),%al
    401cb3: 49 89 c9 mov %rcx,%r9
    401cb6: 49 f7 d1 not %r9
    401cb9: 48 8b 7c 24 38 mov 0x38(%rsp),%rdi
    401cbe: 48 89 d1 mov %rdx,%rcx
    401cc1: f2 ae repnz scas %es:(%rdi),%al
    401cc3: 4d 29 c1 sub %r8,%r9
    401cc6: 49 29 c9 sub %rcx,%r9
    401cc9: 48 8d 44 76 fd lea -0x3(%rsi,%rsi,2),%rax
    401cce: 49 8d 44 01 7b lea 0x7b(%r9,%rax,1),%rax
    401cd3: 48 3d 00 20 00 00 cmp $0x2000,%rax
    401cd9: 0f 86 81 00 00 00 jbe 401d60 <submitr+0x30b>
    401cdf: 41 c7 06 45 72 72 6f movl $0x6f727245,(%r14)
    401ce6: 41 c7 46 04 72 3a 20 movl $0x52203a72,0x4(%r14)
    401ced: 52
    401cee: 41 c7 46 08 65 73 75 movl $0x6c757365,0x8(%r14)
    401cf5: 6c
    401cf6: 41 c7 46 0c 74 20 73 movl $0x74732074,0xc(%r14)
    401cfd: 74
    401cfe: 41 c7 46 10 72 69 6e movl $0x676e6972,0x10(%r14)
    401d05: 67
    401d06: 41 c7 46 14 20 74 6f movl $0x6f6f7420,0x14(%r14)
    401d0d: 6f
    401d0e: 41 c7 46 18 20 6c 61 movl $0x72616c20,0x18(%r14)
    401d15: 72
    401d16: 41 c7 46 1c 67 65 2e movl $0x202e6567,0x1c(%r14)
    401d1d: 20
    401d1e: 41 c7 46 20 49 6e 63 movl $0x72636e49,0x20(%r14)
    401d25: 72
    401d26: 41 c7 46 24 65 61 73 movl $0x65736165,0x24(%r14)
    401d2d: 65
    401d2e: 41 c7 46 28 20 53 55 movl $0x42555320,0x28(%r14)
    401d35: 42
    401d36: 41 c7 46 2c 4d 49 54 movl $0x5254494d,0x2c(%r14)
    401d3d: 52
    401d3e: 41 c7 46 30 5f 4d 41 movl $0x58414d5f,0x30(%r14)
    401d45: 58
    401d46: 41 c7 46 34 42 55 46 movl $0x465542,0x34(%r14)
    401d4d: 00
    401d4e: 44 89 ef mov %r13d,%edi
    401d51: e8 8a ee ff ff callq 400be0 <close@plt>
    401d56: b8 ff ff ff ff mov $0xffffffff,%eax
    401d5b: e9 6f 05 00 00 jmpq 4022cf <submitr+0x87a>
    401d60: 48 8d 94 24 60 40 00 lea 0x4060(%rsp),%rdx
    401d67: 00
    401d68: b9 00 04 00 00 mov $0x400,%ecx
    401d6d: b8 00 00 00 00 mov $0x0,%eax
    401d72: 48 89 d7 mov %rdx,%rdi
    401d75: f3 48 ab rep stos %rax,%es:(%rdi)
    401d78: 48 89 df mov %rbx,%rdi
    401d7b: 48 c7 c1 ff ff ff ff mov $0xffffffffffffffff,%rcx
    401d82: f2 ae repnz scas %es:(%rdi),%al
    401d84: 48 f7 d1 not %rcx
    401d87: 48 83 e9 01 sub $0x1,%rcx
    401d8b: 85 c9 test %ecx,%ecx
    401d8d: 0f 84 55 05 00 00 je 4022e8 <submitr+0x893>
    401d93: 83 e9 01 sub $0x1,%ecx
    401d96: 4c 8d 64 0b 01 lea 0x1(%rbx,%rcx,1),%r12
    401d9b: 48 89 d5 mov %rdx,%rbp
    401d9e: 44 0f b6 03 movzbl (%rbx),%r8d
    401da2: 41 80 f8 2a cmp $0x2a,%r8b
    401da6: 74 2a je 401dd2 <submitr+0x37d>
    401da8: 41 80 f8 2d cmp $0x2d,%r8b
    401dac: 74 24 je 401dd2 <submitr+0x37d>
    401dae: 41 80 f8 2e cmp $0x2e,%r8b
    401db2: 74 1e je 401dd2 <submitr+0x37d>
    401db4: 41 80 f8 5f cmp $0x5f,%r8b
    401db8: 74 18 je 401dd2 <submitr+0x37d>
    401dba: 41 8d 40 d0 lea -0x30(%r8),%eax
    401dbe: 3c 09 cmp $0x9,%al
    401dc0: 76 10 jbe 401dd2 <submitr+0x37d>
    401dc2: 41 8d 40 bf lea -0x41(%r8),%eax
    401dc6: 3c 19 cmp $0x19,%al
    401dc8: 76 08 jbe 401dd2 <submitr+0x37d>
    401dca: 41 8d 40 9f lea -0x61(%r8),%eax
    401dce: 3c 19 cmp $0x19,%al
    401dd0: 77 0a ja 401ddc <submitr+0x387>
    401dd2: 44 88 45 00 mov %r8b,0x0(%rbp)
    401dd6: 48 83 c5 01 add $0x1,%rbp
    401dda: eb 68 jmp 401e44 <submitr+0x3ef>
    401ddc: 41 80 f8 20 cmp $0x20,%r8b
    401de0: 75 0a jne 401dec <submitr+0x397>
    401de2: c6 45 00 2b movb $0x2b,0x0(%rbp)
    401de6: 48 83 c5 01 add $0x1,%rbp
    401dea: eb 58 jmp 401e44 <submitr+0x3ef>
    401dec: 41 8d 40 e0 lea -0x20(%r8),%eax
    401df0: 3c 5f cmp $0x5f,%al
    401df2: 76 06 jbe 401dfa <submitr+0x3a5>
    401df4: 41 80 f8 09 cmp $0x9,%r8b
    401df8: 75 5c jne 401e56 <submitr+0x401>
    401dfa: 45 0f b6 c0 movzbl %r8b,%r8d
    401dfe: b9 e0 2d 40 00 mov $0x402de0,%ecx
    401e03: ba 08 00 00 00 mov $0x8,%edx
    401e08: be 01 00 00 00 mov $0x1,%esi
    401e0d: 48 8d bc 24 70 a0 00 lea 0xa070(%rsp),%rdi
    401e14: 00
    401e15: b8 00 00 00 00 mov $0x0,%eax
    401e1a: e8 f1 ee ff ff callq 400d10 <__sprintf_chk@plt>
    401e1f: 0f b6 84 24 70 a0 00 movzbl 0xa070(%rsp),%eax
    401e26: 00
    401e27: 88 45 00 mov %al,0x0(%rbp)
    401e2a: 0f b6 84 24 71 a0 00 movzbl 0xa071(%rsp),%eax
    401e31: 00
    401e32: 88 45 01 mov %al,0x1(%rbp)
    401e35: 0f b6 84 24 72 a0 00 movzbl 0xa072(%rsp),%eax
    401e3c: 00
    401e3d: 88 45 02 mov %al,0x2(%rbp)
    401e40: 48 83 c5 03 add $0x3,%rbp
    401e44: 48 83 c3 01 add $0x1,%rbx
    401e48: 4c 39 e3 cmp %r12,%rbx
    401e4b: 0f 85 4d ff ff ff jne 401d9e <submitr+0x349>
    401e51: e9 92 04 00 00 jmpq 4022e8 <submitr+0x893>
    401e56: 41 c7 06 45 72 72 6f movl $0x6f727245,(%r14)
    401e5d: 41 c7 46 04 72 3a 20 movl $0x52203a72,0x4(%r14)
    401e64: 52
    401e65: 41 c7 46 08 65 73 75 movl $0x6c757365,0x8(%r14)
    401e6c: 6c
    401e6d: 41 c7 46 0c 74 20 73 movl $0x74732074,0xc(%r14)
    401e74: 74
    401e75: 41 c7 46 10 72 69 6e movl $0x676e6972,0x10(%r14)
    401e7c: 67
    401e7d: 41 c7 46 14 20 63 6f movl $0x6e6f6320,0x14(%r14)
    401e84: 6e
    401e85: 41 c7 46 18 74 61 69 movl $0x6e696174,0x18(%r14)
    401e8c: 6e
    401e8d: 41 c7 46 1c 73 20 61 movl $0x6e612073,0x1c(%r14)
    401e94: 6e
    401e95: 41 c7 46 20 20 69 6c movl $0x6c6c6920,0x20(%r14)
    401e9c: 6c
    401e9d: 41 c7 46 24 65 67 61 movl $0x6c616765,0x24(%r14)
    401ea4: 6c
    401ea5: 41 c7 46 28 20 6f 72 movl $0x20726f20,0x28(%r14)
    401eac: 20
    401ead: 41 c7 46 2c 75 6e 70 movl $0x72706e75,0x2c(%r14)
    401eb4: 72
    401eb5: 41 c7 46 30 69 6e 74 movl $0x61746e69,0x30(%r14)
    401ebc: 61
    401ebd: 41 c7 46 34 62 6c 65 movl $0x20656c62,0x34(%r14)
    401ec4: 20
    401ec5: 41 c7 46 38 63 68 61 movl $0x72616863,0x38(%r14)
    401ecc: 72
    401ecd: 41 c7 46 3c 61 63 74 movl $0x65746361,0x3c(%r14)
    401ed4: 65
    401ed5: 66 41 c7 46 40 72 2e movw $0x2e72,0x40(%r14)
    401edc: 41 c6 46 42 00 movb $0x0,0x42(%r14)
    401ee1: 44 89 ef mov %r13d,%edi
    401ee4: e8 f7 ec ff ff callq 400be0 <close@plt>
    401ee9: b8 ff ff ff ff mov $0xffffffff,%eax
    401eee: e9 dc 03 00 00 jmpq 4022cf <submitr+0x87a>
    401ef3: 48 89 da mov %rbx,%rdx
    401ef6: 48 89 ee mov %rbp,%rsi
    401ef9: 44 89 ef mov %r13d,%edi
    401efc: e8 af ec ff ff callq 400bb0 <write@plt>
    401f01: 48 85 c0 test %rax,%rax
    401f04: 7f 11 jg 401f17 <submitr+0x4c2>
    401f06: e8 75 ec ff ff callq 400b80 <__errno_location@plt>
    401f0b: 83 38 04 cmpl $0x4,(%rax)
    401f0e: 66 90 xchg %ax,%ax
    401f10: 75 12 jne 401f24 <submitr+0x4cf>
    401f12: b8 00 00 00 00 mov $0x0,%eax
    401f17: 48 01 c5 add %rax,%rbp
    401f1a: 48 29 c3 sub %rax,%rbx
    401f1d: 75 d4 jne 401ef3 <submitr+0x49e>
    401f1f: 4d 85 e4 test %r12,%r12
    401f22: 79 79 jns 401f9d <submitr+0x548>
    401f24: 41 c7 06 45 72 72 6f movl $0x6f727245,(%r14)
    401f2b: 41 c7 46 04 72 3a 20 movl $0x43203a72,0x4(%r14)
    401f32: 43
    401f33: 41 c7 46 08 6c 69 65 movl $0x6e65696c,0x8(%r14)
    401f3a: 6e
    401f3b: 41 c7 46 0c 74 20 75 movl $0x6e752074,0xc(%r14)
    401f42: 6e
    401f43: 41 c7 46 10 61 62 6c movl $0x656c6261,0x10(%r14)
    401f4a: 65
    401f4b: 41 c7 46 14 20 74 6f movl $0x206f7420,0x14(%r14)
    401f52: 20
    401f53: 41 c7 46 18 77 72 69 movl $0x74697277,0x18(%r14)
    401f5a: 74
    401f5b: 41 c7 46 1c 65 20 74 movl $0x6f742065,0x1c(%r14)
    401f62: 6f
    401f63: 41 c7 46 20 20 74 68 movl $0x65687420,0x20(%r14)
    401f6a: 65
    401f6b: 41 c7 46 24 20 41 75 movl $0x74754120,0x24(%r14)
    401f72: 74
    401f73: 41 c7 46 28 6f 6c 61 movl $0x62616c6f,0x28(%r14)
    401f7a: 62
    401f7b: 41 c7 46 2c 20 73 65 movl $0x72657320,0x2c(%r14)
    401f82: 72
    401f83: 41 c7 46 30 76 65 72 movl $0x726576,0x30(%r14)
    401f8a: 00
    401f8b: 44 89 ef mov %r13d,%edi
    401f8e: e8 4d ec ff ff callq 400be0 <close@plt>
    401f93: b8 ff ff ff ff mov $0xffffffff,%eax
    401f98: e9 32 03 00 00 jmpq 4022cf <submitr+0x87a>
    401f9d: 44 89 6c 24 50 mov %r13d,0x50(%rsp)
    401fa2: c7 44 24 54 00 00 00 movl $0x0,0x54(%rsp)
    401fa9: 00
    401faa: 48 8d 44 24 60 lea 0x60(%rsp),%rax
    401faf: 48 89 44 24 58 mov %rax,0x58(%rsp)
    401fb4: ba 00 20 00 00 mov $0x2000,%edx
    401fb9: 48 8d b4 24 60 20 00 lea 0x2060(%rsp),%rsi
    401fc0: 00
    401fc1: 48 8d 7c 24 50 lea 0x50(%rsp),%rdi
    401fc6: e8 45 f9 ff ff callq 401910 <rio_readlineb>
    401fcb: 48 85 c0 test %rax,%rax
    401fce: 0f 8f 90 00 00 00 jg 402064 <submitr+0x60f>
    401fd4: 41 c7 06 45 72 72 6f movl $0x6f727245,(%r14)
    401fdb: 41 c7 46 04 72 3a 20 movl $0x43203a72,0x4(%r14)
    401fe2: 43
    401fe3: 41 c7 46 08 6c 69 65 movl $0x6e65696c,0x8(%r14)
    401fea: 6e
    401feb: 41 c7 46 0c 74 20 75 movl $0x6e752074,0xc(%r14)
    401ff2: 6e
    401ff3: 41 c7 46 10 61 62 6c movl $0x656c6261,0x10(%r14)
    401ffa: 65
    401ffb: 41 c7 46 14 20 74 6f movl $0x206f7420,0x14(%r14)
    402002: 20
    402003: 41 c7 46 18 72 65 61 movl $0x64616572,0x18(%r14)
    40200a: 64
    40200b: 41 c7 46 1c 20 66 69 movl $0x72696620,0x1c(%r14)
    402012: 72
    402013: 41 c7 46 20 73 74 20 movl $0x68207473,0x20(%r14)
    40201a: 68
    40201b: 41 c7 46 24 65 61 64 movl $0x65646165,0x24(%r14)
    402022: 65
    402023: 41 c7 46 28 72 20 66 movl $0x72662072,0x28(%r14)
    40202a: 72
    40202b: 41 c7 46 2c 6f 6d 20 movl $0x41206d6f,0x2c(%r14)
    402032: 41
    402033: 41 c7 46 30 75 74 6f movl $0x6c6f7475,0x30(%r14)
    40203a: 6c
    40203b: 41 c7 46 34 61 62 20 movl $0x73206261,0x34(%r14)
    402042: 73
    402043: 41 c7 46 38 65 72 76 movl $0x65767265,0x38(%r14)
    40204a: 65
    40204b: 66 41 c7 46 3c 72 00 movw $0x72,0x3c(%r14)
    402052: 44 89 ef mov %r13d,%edi
    402055: e8 86 eb ff ff callq 400be0 <close@plt>
    40205a: b8 ff ff ff ff mov $0xffffffff,%eax
    40205f: e9 6b 02 00 00 jmpq 4022cf <submitr+0x87a>
    402064: 4c 8d 84 24 60 80 00 lea 0x8060(%rsp),%r8
    40206b: 00
    40206c: 48 8d 4c 24 4c lea 0x4c(%rsp),%rcx
    402071: 48 8d 94 24 60 60 00 lea 0x6060(%rsp),%rdx
    402078: 00
    402079: be e7 2d 40 00 mov $0x402de7,%esi
    40207e: 48 8d bc 24 60 20 00 lea 0x2060(%rsp),%rdi
    402085: 00
    402086: b8 00 00 00 00 mov $0x0,%eax
    40208b: e8 f0 eb ff ff callq 400c80 <__isoc99_sscanf@plt>
    402090: e9 a6 00 00 00 jmpq 40213b <submitr+0x6e6>
    402095: ba 00 20 00 00 mov $0x2000,%edx
    40209a: 48 8d b4 24 60 20 00 lea 0x2060(%rsp),%rsi
    4020a1: 00
    4020a2: 48 8d 7c 24 50 lea 0x50(%rsp),%rdi
    4020a7: e8 64 f8 ff ff callq 401910 <rio_readlineb>
    4020ac: 48 85 c0 test %rax,%rax
    4020af: 0f 8f 86 00 00 00 jg 40213b <submitr+0x6e6>
    4020b5: 41 c7 06 45 72 72 6f movl $0x6f727245,(%r14)
    4020bc: 41 c7 46 04 72 3a 20 movl $0x43203a72,0x4(%r14)
    4020c3: 43
    4020c4: 41 c7 46 08 6c 69 65 movl $0x6e65696c,0x8(%r14)
    4020cb: 6e
    4020cc: 41 c7 46 0c 74 20 75 movl $0x6e752074,0xc(%r14)
    4020d3: 6e
    4020d4: 41 c7 46 10 61 62 6c movl $0x656c6261,0x10(%r14)
    4020db: 65
    4020dc: 41 c7 46 14 20 74 6f movl $0x206f7420,0x14(%r14)
    4020e3: 20
    4020e4: 41 c7 46 18 72 65 61 movl $0x64616572,0x18(%r14)
    4020eb: 64
    4020ec: 41 c7 46 1c 20 68 65 movl $0x61656820,0x1c(%r14)
    4020f3: 61
    4020f4: 41 c7 46 20 64 65 72 movl $0x73726564,0x20(%r14)
    4020fb: 73
    4020fc: 41 c7 46 24 20 66 72 movl $0x6f726620,0x24(%r14)
    402103: 6f
    402104: 41 c7 46 28 6d 20 41 movl $0x7541206d,0x28(%r14)
    40210b: 75
    40210c: 41 c7 46 2c 74 6f 6c movl $0x616c6f74,0x2c(%r14)
    402113: 61
    402114: 41 c7 46 30 62 20 73 movl $0x65732062,0x30(%r14)
    40211b: 65
    40211c: 41 c7 46 34 72 76 65 movl $0x72657672,0x34(%r14)
    402123: 72
    402124: 41 c6 46 38 00 movb $0x0,0x38(%r14)
    402129: 44 89 ef mov %r13d,%edi
    40212c: e8 af ea ff ff callq 400be0 <close@plt>
    402131: b8 ff ff ff ff mov $0xffffffff,%eax
    402136: e9 94 01 00 00 jmpq 4022cf <submitr+0x87a>
    40213b: 80 bc 24 60 20 00 00 cmpb $0xd,0x2060(%rsp)
    402142: 0d
    402143: 0f 85 4c ff ff ff jne 402095 <submitr+0x640>
    402149: 80 bc 24 61 20 00 00 cmpb $0xa,0x2061(%rsp)
    402150: 0a
    402151: 0f 85 3e ff ff ff jne 402095 <submitr+0x640>
    402157: 80 bc 24 62 20 00 00 cmpb $0x0,0x2062(%rsp)
    40215e: 00
    40215f: 0f 85 30 ff ff ff jne 402095 <submitr+0x640>
    402165: ba 00 20 00 00 mov $0x2000,%edx
    40216a: 48 8d b4 24 60 20 00 lea 0x2060(%rsp),%rsi
    402171: 00
    402172: 48 8d 7c 24 50 lea 0x50(%rsp),%rdi
    402177: e8 94 f7 ff ff callq 401910 <rio_readlineb>
    40217c: 48 85 c0 test %rax,%rax
    40217f: 0f 8f 91 00 00 00 jg 402216 <submitr+0x7c1>
    402185: 41 c7 06 45 72 72 6f movl $0x6f727245,(%r14)
    40218c: 41 c7 46 04 72 3a 20 movl $0x43203a72,0x4(%r14)
    402193: 43
    402194: 41 c7 46 08 6c 69 65 movl $0x6e65696c,0x8(%r14)
    40219b: 6e
    40219c: 41 c7 46 0c 74 20 75 movl $0x6e752074,0xc(%r14)
    4021a3: 6e
    4021a4: 41 c7 46 10 61 62 6c movl $0x656c6261,0x10(%r14)
    4021ab: 65
    4021ac: 41 c7 46 14 20 74 6f movl $0x206f7420,0x14(%r14)
    4021b3: 20
    4021b4: 41 c7 46 18 72 65 61 movl $0x64616572,0x18(%r14)
    4021bb: 64
    4021bc: 41 c7 46 1c 20 73 74 movl $0x61747320,0x1c(%r14)
    4021c3: 61
    4021c4: 41 c7 46 20 74 75 73 movl $0x20737574,0x20(%r14)
    4021cb: 20
    4021cc: 41 c7 46 24 6d 65 73 movl $0x7373656d,0x24(%r14)
    4021d3: 73
    4021d4: 41 c7 46 28 61 67 65 movl $0x20656761,0x28(%r14)
    4021db: 20
    4021dc: 41 c7 46 2c 66 72 6f movl $0x6d6f7266,0x2c(%r14)
    4021e3: 6d
    4021e4: 41 c7 46 30 20 41 75 movl $0x74754120,0x30(%r14)
    4021eb: 74
    4021ec: 41 c7 46 34 6f 6c 61 movl $0x62616c6f,0x34(%r14)
    4021f3: 62
    4021f4: 41 c7 46 38 20 73 65 movl $0x72657320,0x38(%r14)
    4021fb: 72
    4021fc: 41 c7 46 3c 76 65 72 movl $0x726576,0x3c(%r14)
    402203: 00
    402204: 44 89 ef mov %r13d,%edi
    402207: e8 d4 e9 ff ff callq 400be0 <close@plt>
    40220c: b8 ff ff ff ff mov $0xffffffff,%eax
    402211: e9 b9 00 00 00 jmpq 4022cf <submitr+0x87a>
    402216: 44 8b 44 24 4c mov 0x4c(%rsp),%r8d
    40221b: 41 81 f8 c8 00 00 00 cmp $0xc8,%r8d
    402222: 74 35 je 402259 <submitr+0x804>
    402224: 4c 8d 8c 24 60 80 00 lea 0x8060(%rsp),%r9
    40222b: 00
    40222c: b9 50 2d 40 00 mov $0x402d50,%ecx
    402231: 48 c7 c2 ff ff ff ff mov $0xffffffffffffffff,%rdx
    402238: be 01 00 00 00 mov $0x1,%esi
    40223d: 4c 89 f7 mov %r14,%rdi
    402240: b8 00 00 00 00 mov $0x0,%eax
    402245: e8 c6 ea ff ff callq 400d10 <__sprintf_chk@plt>
    40224a: 44 89 ef mov %r13d,%edi
    40224d: e8 8e e9 ff ff callq 400be0 <close@plt>
    402252: b8 ff ff ff ff mov $0xffffffff,%eax
    402257: eb 76 jmp 4022cf <submitr+0x87a>
    402259: 48 8d b4 24 60 20 00 lea 0x2060(%rsp),%rsi
    402260: 00
    402261: 4c 89 f7 mov %r14,%rdi
    402264: e8 27 e9 ff ff callq 400b90 <strcpy@plt>
    402269: 44 89 ef mov %r13d,%edi
    40226c: e8 6f e9 ff ff callq 400be0 <close@plt>
    402271: 41 0f b6 16 movzbl (%r14),%edx
    402275: 83 ea 4f sub $0x4f,%edx
    402278: 75 15 jne 40228f <submitr+0x83a>
    40227a: 41 80 7e 01 4b cmpb $0x4b,0x1(%r14)
    40227f: 75 0e jne 40228f <submitr+0x83a>
    402281: 41 80 7e 02 0a cmpb $0xa,0x2(%r14)
    402286: 75 07 jne 40228f <submitr+0x83a>
    402288: 41 80 7e 03 00 cmpb $0x0,0x3(%r14)
    40228d: 74 3b je 4022ca <submitr+0x875>
    40228f: bf f8 2d 40 00 mov $0x402df8,%edi
    402294: b9 05 00 00 00 mov $0x5,%ecx
    402299: 4c 89 f6 mov %r14,%rsi
    40229c: f3 a6 repz cmpsb %es:(%rdi),%ds:(%rsi)
    40229e: 40 0f 97 c6 seta %sil
    4022a2: 0f 92 c1 setb %cl
    4022a5: b8 00 00 00 00 mov $0x0,%eax
    4022aa: 40 38 ce cmp %cl,%sil
    4022ad: 74 20 je 4022cf <submitr+0x87a>
    4022af: b8 ff ff ff ff mov $0xffffffff,%eax
    4022b4: 85 d2 test %edx,%edx
    4022b6: 75 17 jne 4022cf <submitr+0x87a>
    4022b8: 41 80 7e 01 4b cmpb $0x4b,0x1(%r14)
    4022bd: 75 10 jne 4022cf <submitr+0x87a>
    4022bf: 41 80 7e 02 01 cmpb $0x1,0x2(%r14)
    4022c4: 19 c0 sbb %eax,%eax
    4022c6: f7 d0 not %eax
    4022c8: eb 05 jmp 4022cf <submitr+0x87a>
    4022ca: b8 00 00 00 00 mov $0x0,%eax
    4022cf: 48 8b 94 24 78 a0 00 mov 0xa078(%rsp),%rdx
    4022d6: 00
    4022d7: 64 48 33 14 25 28 00 xor %fs:0x28,%rdx
    4022de: 00 00
    4022e0: 0f 84 83 00 00 00 je 402369 <submitr+0x914>
    4022e6: eb 7c jmp 402364 <submitr+0x90f>
    4022e8: 4c 89 7c 24 10 mov %r15,0x10(%rsp)
    4022ed: 48 8d 84 24 60 40 00 lea 0x4060(%rsp),%rax
    4022f4: 00
    4022f5: 48 89 44 24 08 mov %rax,0x8(%rsp)
    4022fa: 48 8b 4c 24 30 mov 0x30(%rsp),%rcx
    4022ff: 48 89 0c 24 mov %rcx,(%rsp)
    402303: 4c 8b 4c 24 38 mov 0x38(%rsp),%r9
    402308: 4c 8b 44 24 28 mov 0x28(%rsp),%r8
    40230d: b9 80 2d 40 00 mov $0x402d80,%ecx
    402312: ba 00 20 00 00 mov $0x2000,%edx
    402317: be 01 00 00 00 mov $0x1,%esi
    40231c: 48 8d bc 24 60 20 00 lea 0x2060(%rsp),%rdi
    402323: 00
    402324: b8 00 00 00 00 mov $0x0,%eax
    402329: e8 e2 e9 ff ff callq 400d10 <__sprintf_chk@plt>
    40232e: 48 8d bc 24 60 20 00 lea 0x2060(%rsp),%rdi
    402335: 00
    402336: b8 00 00 00 00 mov $0x0,%eax
    40233b: 48 c7 c1 ff ff ff ff mov $0xffffffffffffffff,%rcx
    402342: f2 ae repnz scas %es:(%rdi),%al
    402344: 48 f7 d1 not %rcx
    402347: 4c 8d 61 ff lea -0x1(%rcx),%r12
    40234b: 4c 89 e3 mov %r12,%rbx
    40234e: 48 8d ac 24 60 20 00 lea 0x2060(%rsp),%rbp
    402355: 00
    402356: 4d 85 e4 test %r12,%r12
    402359: 0f 85 94 fb ff ff jne 401ef3 <submitr+0x49e>
    40235f: e9 39 fc ff ff jmpq 401f9d <submitr+0x548>
    402364: e8 57 e8 ff ff callq 400bc0 <__stack_chk_fail@plt>
    402369: 48 81 c4 88 a0 00 00 add $0xa088,%rsp
    402370: 5b pop %rbx
    402371: 5d pop %rbp
    402372: 41 5c pop %r12
    402374: 41 5d pop %r13
    402376: 41 5e pop %r14
    402378: 41 5f pop %r15
    40237a: c3 retq

    000000000040237b <init_timeout>:
    40237b: 53 push %rbx
    40237c: 89 fb mov %edi,%ebx
    40237e: 85 ff test %edi,%edi
    402380: 74 1e je 4023a0 <init_timeout+0x25>
    402382: be 27 1a 40 00 mov $0x401a27,%esi
    402387: bf 0e 00 00 00 mov $0xe,%edi
    40238c: e8 8f e8 ff ff callq 400c20 <signal@plt>
    402391: 85 db test %ebx,%ebx
    402393: bf 00 00 00 00 mov $0x0,%edi
    402398: 0f 49 fb cmovns %ebx,%edi
    40239b: e8 30 e8 ff ff callq 400bd0 <alarm@plt>
    4023a0: 5b pop %rbx
    4023a1: c3 retq

    00000000004023a2 <init_driver>:
    4023a2: 55 push %rbp
    4023a3: 53 push %rbx
    4023a4: 48 83 ec 28 sub $0x28,%rsp
    4023a8: 48 89 fd mov %rdi,%rbp
    4023ab: 64 48 8b 04 25 28 00 mov %fs:0x28,%rax
    4023b2: 00 00
    4023b4: 48 89 44 24 18 mov %rax,0x18(%rsp)
    4023b9: 31 c0 xor %eax,%eax
    4023bb: be 01 00 00 00 mov $0x1,%esi
    4023c0: bf 0d 00 00 00 mov $0xd,%edi
    4023c5: e8 56 e8 ff ff callq 400c20 <signal@plt>
    4023ca: be 01 00 00 00 mov $0x1,%esi
    4023cf: bf 1d 00 00 00 mov $0x1d,%edi
    4023d4: e8 47 e8 ff ff callq 400c20 <signal@plt>
    4023d9: be 01 00 00 00 mov $0x1,%esi
    4023de: bf 1d 00 00 00 mov $0x1d,%edi
    4023e3: e8 38 e8 ff ff callq 400c20 <signal@plt>
    4023e8: ba 00 00 00 00 mov $0x0,%edx
    4023ed: be 01 00 00 00 mov $0x1,%esi
    4023f2: bf 02 00 00 00 mov $0x2,%edi
    4023f7: e8 24 e9 ff ff callq 400d20 <socket@plt>
    4023fc: 89 c3 mov %eax,%ebx
    4023fe: 85 c0 test %eax,%eax
    402400: 79 4f jns 402451 <init_driver+0xaf>
    402402: c7 45 00 45 72 72 6f movl $0x6f727245,0x0(%rbp)
    402409: c7 45 04 72 3a 20 43 movl $0x43203a72,0x4(%rbp)
    402410: c7 45 08 6c 69 65 6e movl $0x6e65696c,0x8(%rbp)
    402417: c7 45 0c 74 20 75 6e movl $0x6e752074,0xc(%rbp)
    40241e: c7 45 10 61 62 6c 65 movl $0x656c6261,0x10(%rbp)
    402425: c7 45 14 20 74 6f 20 movl $0x206f7420,0x14(%rbp)
    40242c: c7 45 18 63 72 65 61 movl $0x61657263,0x18(%rbp)
    402433: c7 45 1c 74 65 20 73 movl $0x73206574,0x1c(%rbp)
    40243a: c7 45 20 6f 63 6b 65 movl $0x656b636f,0x20(%rbp)
    402441: 66 c7 45 24 74 00 movw $0x74,0x24(%rbp)
    402447: b8 ff ff ff ff mov $0xffffffff,%eax
    40244c: e9 28 01 00 00 jmpq 402579 <init_driver+0x1d7>
    402451: bf 0b 2c 40 00 mov $0x402c0b,%edi
    402456: e8 d5 e7 ff ff callq 400c30 <gethostbyname@plt>
    40245b: 48 85 c0 test %rax,%rax
    40245e: 75 68 jne 4024c8 <init_driver+0x126>
    402460: c7 45 00 45 72 72 6f movl $0x6f727245,0x0(%rbp)
    402467: c7 45 04 72 3a 20 44 movl $0x44203a72,0x4(%rbp)
    40246e: c7 45 08 4e 53 20 69 movl $0x6920534e,0x8(%rbp)
    402475: c7 45 0c 73 20 75 6e movl $0x6e752073,0xc(%rbp)
    40247c: c7 45 10 61 62 6c 65 movl $0x656c6261,0x10(%rbp)
    402483: c7 45 14 20 74 6f 20 movl $0x206f7420,0x14(%rbp)
    40248a: c7 45 18 72 65 73 6f movl $0x6f736572,0x18(%rbp)
    402491: c7 45 1c 6c 76 65 20 movl $0x2065766c,0x1c(%rbp)
    402498: c7 45 20 73 65 72 76 movl $0x76726573,0x20(%rbp)
    40249f: c7 45 24 65 72 20 61 movl $0x61207265,0x24(%rbp)
    4024a6: c7 45 28 64 64 72 65 movl $0x65726464,0x28(%rbp)
    4024ad: 66 c7 45 2c 73 73 movw $0x7373,0x2c(%rbp)
    4024b3: c6 45 2e 00 movb $0x0,0x2e(%rbp)
    4024b7: 89 df mov %ebx,%edi
    4024b9: e8 22 e7 ff ff callq 400be0 <close@plt>
    4024be: b8 ff ff ff ff mov $0xffffffff,%eax
    4024c3: e9 b1 00 00 00 jmpq 402579 <init_driver+0x1d7>
    4024c8: 48 c7 04 24 00 00 00 movq $0x0,(%rsp)
    4024cf: 00
    4024d0: 48 c7 44 24 08 00 00 movq $0x0,0x8(%rsp)
    4024d7: 00 00
    4024d9: 66 c7 04 24 02 00 movw $0x2,(%rsp)
    4024df: 48 63 50 14 movslq 0x14(%rax),%rdx
    4024e3: 48 8b 40 18 mov 0x18(%rax),%rax
    4024e7: 48 8d 7c 24 04 lea 0x4(%rsp),%rdi
    4024ec: b9 0c 00 00 00 mov $0xc,%ecx
    4024f1: 48 8b 30 mov (%rax),%rsi
    4024f4: e8 47 e7 ff ff callq 400c40 <__memmove_chk@plt>
    4024f9: 66 c7 44 24 02 00 50 movw $0x5000,0x2(%rsp)
    402500: ba 10 00 00 00 mov $0x10,%edx
    402505: 48 89 e6 mov %rsp,%rsi
    402508: 89 df mov %ebx,%edi
    40250a: e8 c1 e7 ff ff callq 400cd0 <connect@plt>
    40250f: 85 c0 test %eax,%eax
    402511: 79 50 jns 402563 <init_driver+0x1c1>
    402513: c7 45 00 45 72 72 6f movl $0x6f727245,0x0(%rbp)
    40251a: c7 45 04 72 3a 20 55 movl $0x55203a72,0x4(%rbp)
    402521: c7 45 08 6e 61 62 6c movl $0x6c62616e,0x8(%rbp)
    402528: c7 45 0c 65 20 74 6f movl $0x6f742065,0xc(%rbp)
    40252f: c7 45 10 20 63 6f 6e movl $0x6e6f6320,0x10(%rbp)
    402536: c7 45 14 6e 65 63 74 movl $0x7463656e,0x14(%rbp)
    40253d: c7 45 18 20 74 6f 20 movl $0x206f7420,0x18(%rbp)
    402544: c7 45 1c 73 65 72 76 movl $0x76726573,0x1c(%rbp)
    40254b: 66 c7 45 20 65 72 movw $0x7265,0x20(%rbp)
    402551: c6 45 22 00 movb $0x0,0x22(%rbp)
    402555: 89 df mov %ebx,%edi
    402557: e8 84 e6 ff ff callq 400be0 <close@plt>
    40255c: b8 ff ff ff ff mov $0xffffffff,%eax
    402561: eb 16 jmp 402579 <init_driver+0x1d7>
    402563: 89 df mov %ebx,%edi
    402565: e8 76 e6 ff ff callq 400be0 <close@plt>
    40256a: 66 c7 45 00 4f 4b movw $0x4b4f,0x0(%rbp)
    402570: c6 45 02 00 movb $0x0,0x2(%rbp)
    402574: b8 00 00 00 00 mov $0x0,%eax
    402579: 48 8b 54 24 18 mov 0x18(%rsp),%rdx
    40257e: 64 48 33 14 25 28 00 xor %fs:0x28,%rdx
    402585: 00 00
    402587: 74 05 je 40258e <init_driver+0x1ec>
    402589: e8 32 e6 ff ff callq 400bc0 <__stack_chk_fail@plt>
    40258e: 48 83 c4 28 add $0x28,%rsp
    402592: 5b pop %rbx
    402593: 5d pop %rbp
    402594: c3 retq

    0000000000402595 <driver_post>:
    402595: 53 push %rbx
    402596: 48 83 ec 10 sub $0x10,%rsp
    40259a: 4c 89 cb mov %r9,%rbx
    40259d: 45 85 c0 test %r8d,%r8d
    4025a0: 74 27 je 4025c9 <driver_post+0x34>
    4025a2: 48 89 ca mov %rcx,%rdx
    4025a5: be fd 2d 40 00 mov $0x402dfd,%esi
    4025aa: bf 01 00 00 00 mov $0x1,%edi
    4025af: b8 00 00 00 00 mov $0x0,%eax
    4025b4: e8 d7 e6 ff ff callq 400c90 <__printf_chk@plt>
    4025b9: 66 c7 03 4f 4b movw $0x4b4f,(%rbx)
    4025be: c6 43 02 00 movb $0x0,0x2(%rbx)
    4025c2: b8 00 00 00 00 mov $0x0,%eax
    4025c7: eb 39 jmp 402602 <driver_post+0x6d>
    4025c9: 48 85 ff test %rdi,%rdi
    4025cc: 74 26 je 4025f4 <driver_post+0x5f>
    4025ce: 80 3f 00 cmpb $0x0,(%rdi)
    4025d1: 74 21 je 4025f4 <driver_post+0x5f>
    4025d3: 4c 89 0c 24 mov %r9,(%rsp)
    4025d7: 49 89 c9 mov %rcx,%r9
    4025da: 49 89 d0 mov %rdx,%r8
    4025dd: 48 89 f9 mov %rdi,%rcx
    4025e0: 48 89 f2 mov %rsi,%rdx
    4025e3: be 50 00 00 00 mov $0x50,%esi
    4025e8: bf 0b 2c 40 00 mov $0x402c0b,%edi
    4025ed: e8 63 f4 ff ff callq 401a55 <submitr>
    4025f2: eb 0e jmp 402602 <driver_post+0x6d>
    4025f4: 66 c7 03 4f 4b movw $0x4b4f,(%rbx)
    4025f9: c6 43 02 00 movb $0x0,0x2(%rbx)
    4025fd: b8 00 00 00 00 mov $0x0,%eax
    402602: 48 83 c4 10 add $0x10,%rsp
    402606: 5b pop %rbx
    402607: c3 retq
    402608: 90 nop
    402609: 90 nop
    40260a: 90 nop
    40260b: 90 nop
    40260c: 90 nop
    40260d: 90 nop
    40260e: 90 nop
    40260f: 90 nop

    0000000000402610 <__libc_csu_init>:
    402610: 48 89 6c 24 d8 mov %rbp,-0x28(%rsp)
    402615: 4c 89 64 24 e0 mov %r12,-0x20(%rsp)
    40261a: 48 8d 2d 03 18 20 00 lea 0x201803(%rip),%rbp # 603e24 <__init_array_end>
    402621: 4c 8d 25 fc 17 20 00 lea 0x2017fc(%rip),%r12 # 603e24 <__init_array_end>
    402628: 4c 89 6c 24 e8 mov %r13,-0x18(%rsp)
    40262d: 4c 89 74 24 f0 mov %r14,-0x10(%rsp)
    402632: 4c 89 7c 24 f8 mov %r15,-0x8(%rsp)
    402637: 48 89 5c 24 d0 mov %rbx,-0x30(%rsp)
    40263c: 48 83 ec 38 sub $0x38,%rsp
    402640: 4c 29 e5 sub %r12,%rbp
    402643: 41 89 fd mov %edi,%r13d
    402646: 49 89 f6 mov %rsi,%r14
    402649: 48 c1 fd 03 sar $0x3,%rbp
    40264d: 49 89 d7 mov %rdx,%r15
    402650: e8 e3 e4 ff ff callq 400b38 <_init>
    402655: 48 85 ed test %rbp,%rbp
    402658: 74 1c je 402676 <__libc_csu_init+0x66>
    40265a: 31 db xor %ebx,%ebx
    40265c: 0f 1f 40 00 nopl 0x0(%rax)
    402660: 4c 89 fa mov %r15,%rdx
    402663: 4c 89 f6 mov %r14,%rsi
    402666: 44 89 ef mov %r13d,%edi
    402669: 41 ff 14 dc callq *(%r12,%rbx,8)
    40266d: 48 83 c3 01 add $0x1,%rbx
    402671: 48 39 eb cmp %rbp,%rbx
    402674: 75 ea jne 402660 <__libc_csu_init+0x50>
    402676: 48 8b 5c 24 08 mov 0x8(%rsp),%rbx
    40267b: 48 8b 6c 24 10 mov 0x10(%rsp),%rbp
    402680: 4c 8b 64 24 18 mov 0x18(%rsp),%r12
    402685: 4c 8b 6c 24 20 mov 0x20(%rsp),%r13
    40268a: 4c 8b 74 24 28 mov 0x28(%rsp),%r14
    40268f: 4c 8b 7c 24 30 mov 0x30(%rsp),%r15
    402694: 48 83 c4 38 add $0x38,%rsp
    402698: c3 retq
    402699: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)

    00000000004026a0 <__libc_csu_fini>:
    4026a0: f3 c3 repz retq
    4026a2: 90 nop
    4026a3: 90 nop
    4026a4: 90 nop
    4026a5: 90 nop
    4026a6: 90 nop
    4026a7: 90 nop
    4026a8: 90 nop
    4026a9: 90 nop
    4026aa: 90 nop
    4026ab: 90 nop
    4026ac: 90 nop
    4026ad: 90 nop
    4026ae: 90 nop
    4026af: 90 nop

    00000000004026b0 <__do_global_ctors_aux>:
    4026b0: 55 push %rbp
    4026b1: 48 89 e5 mov %rsp,%rbp
    4026b4: 53 push %rbx
    4026b5: 48 83 ec 08 sub $0x8,%rsp
    4026b9: 48 8b 05 68 17 20 00 mov 0x201768(%rip),%rax # 603e28 <__CTOR_LIST__>
    4026c0: 48 83 f8 ff cmp $0xffffffffffffffff,%rax
    4026c4: 74 19 je 4026df <__do_global_ctors_aux+0x2f>
    4026c6: bb 28 3e 60 00 mov $0x603e28,%ebx
    4026cb: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
    4026d0: 48 83 eb 08 sub $0x8,%rbx
    4026d4: ff d0 callq *%rax
    4026d6: 48 8b 03 mov (%rbx),%rax
    4026d9: 48 83 f8 ff cmp $0xffffffffffffffff,%rax
    4026dd: 75 f1 jne 4026d0 <__do_global_ctors_aux+0x20>
    4026df: 48 83 c4 08 add $0x8,%rsp
    4026e3: 5b pop %rbx
    4026e4: 5d pop %rbp
    4026e5: c3 retq
    4026e6: 90 nop
    4026e7: 90 nop

    Disassembly of section .fini:

    00000000004026e8 <_fini>:
    4026e8: 48 83 ec 08 sub $0x8,%rsp
    4026ec: e8 8f e6 ff ff callq 400d80 <__do_global_dtors_aux>
    4026f1: 48 83 c4 08 add $0x8,%rsp
    4026f5: c3 retq

  • 相关阅读:
    浅析 Java 中的 final 关键字
    谷歌Java编程风格指南
    分布式事务之两阶段提交协议(2PC)and 使用事件和消息队列实现分布式事务
    零和博弈与木桶定律
    Executors类创建四种常见线程池
    软件设计的原则&101个设计模式-2011年04月25日 陈皓
    编程中的命名设计那点事-陈皓
    从面向对象的设计模式看软件设计- 2013年02月01日 陈皓
    SQL语句
    分布式事务
  • 原文地址:https://www.cnblogs.com/RylynnMao/p/4561658.html
Copyright © 2020-2023  润新知