// File: killwing[P]underscore/test.cpp
// Function: test_toArray()
void
test_toArray() {
    Tracer::suit_ = "toArray";

    {
        Tracer t("C-style array");
        int data[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        auto result = _::toArray(data);
        vector<int> expect { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        assert(result == expect);
    }

    {
        Tracer t("array");
        array<int, 10> data = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
        auto result = _::toArray<list>(data);
        list<int> expect { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
        assert(result == expect);
    }

    {
        Tracer t("string");
        string data("hello world!");
        auto result = _::toArray<list>(data);
        list<char> expect { 'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd', '!' };
        assert(result == expect);
    }

    {
        Tracer t("vector");
        vector<int> data = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        auto result = _::toArray(data);
        vector<int> expect { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        assert(result == expect);
    }

    {
        Tracer t("deque");
        deque<int> data = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        auto result = _::toArray<deque>(data);
        deque<int> expect { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        assert(result == expect);
    }

    {
        Tracer t("list");
        list<int> data = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        auto result = _::toArray(data);
        vector<int> expect { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        assert(result == expect);
    }

    {
        Tracer t("forward_list");
        forward_list<int> data = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        auto result = _::toArray<list>(data);
        list<int> expect { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        assert(result == expect);
    }

    {
        Tracer t("set");
        set<int> data = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        auto result = _::toArray<forward_list>(data);
        forward_list<int> expect { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        assert(result == expect);
    }

    {
        Tracer t("multiset");
        multiset<int> data = { 1, 1, 3, 3, 5, 5, 7, 7 };
        auto result = _::toArray<multiset>(data);
        multiset<int> expect { 1, 1, 3, 3, 5, 5, 7, 7 };
        assert(result == expect);
    }

    {
        Tracer t("unordered_set");
        unordered_set<int> data = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        auto result = _::toArray<set>(data);
        set<int> expect { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
        assert(result == expect);
    }

    {
        Tracer t("unordered_multiset");
        unordered_multiset<int> data = { 1, 1, 3, 3, 5, 5, 7, 7 };
        auto result = _::toArray<multiset>(data);
        multiset<int> expect { 1, 1, 3, 3, 5, 5, 7, 7 };
        assert(result == expect);
    }

    
    {
        Tracer t("map");
        map<int, string> data { {1, "a"}, {2, "b"}, {3, "c"}, {4, "d"}, {10, "x"}, {20, "y"}, {30, "z"} };
        auto result = _::toArray(data);
        vector<pair<const int, string>> expect { {1, "a"}, {2, "b"}, {3, "c"}, {4, "d"}, {10, "x"}, {20, "y"}, {30, "z"} };
        assert(result == expect);
    }

    {
        Tracer t("multimap");
        multimap<int, string> data { {2, "a"}, {2, "b"}, {4, "c"}, {4, "d"}, {10, "x"}, {10, "y"} };
        auto result = _::toArray(data);
        vector<pair<const int, string>> expect { {2, "a"}, {2, "b"}, {4, "c"}, {4, "d"}, {10, "x"}, {10, "y"} };
        assert(result == expect);
    }

    {
        Tracer t("unordered_map");
        unordered_map<int, string> data { {1, "a"}, {2, "b"}, {3, "c"}, {4, "d"}, {10, "x"}, {20, "y"}, {30, "z"} };
        auto result = _::toArray<list>(data);
        list<pair<const int, string>> expect { {30, "z"}, {20, "y"}, {10, "x"}, {4, "d"}, {3, "c"}, {2, "b"}, {1, "a"} };
        assert(result == expect);
    }

    {
        Tracer t("unordered_multimap");
        unordered_multimap<int, string> data { {2, "a"}, {2, "b"}, {4, "c"}, {4, "d"}, {10, "x"}, {10, "y"} };
        auto result = _::toArray<list>(data);
        list<pair<const int, string>> expect { {10, "x"}, {10, "y"}, {4, "c"}, {4, "d"}, {2, "a"}, {2, "b"} };
        assert(result == expect);
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1d80, %rsp           # imm = 0x1D80
leaq 0x83416(%rip), %rdi     # 0xc0278
leaq 0x53684(%rip), %rsi     # 0x904ed
callq 0x3380
leaq -0x49(%rbp), %rdi
movq %rdi, -0x19b0(%rbp)
callq 0x3450
movq -0x19b0(%rbp), %rdx
leaq 0x531e5(%rip), %rsi     # 0x90071
leaq -0x48(%rbp), %rdi
callq 0x52000
jmp 0x3ce97
leaq -0x28(%rbp), %rdi
leaq -0x48(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3ceab
leaq -0x48(%rbp), %rdi
callq 0x34a8
leaq -0x49(%rbp), %rdi
callq 0x32d0
movaps 0x52d1c(%rip), %xmm0    # 0x8fbe0
movaps %xmm0, -0x70(%rbp)
movaps 0x52d01(%rip), %xmm0    # 0x8fbd0
movaps %xmm0, -0x80(%rbp)
movl $0x9, -0x60(%rbp)
leaq -0x98(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x57f90
jmp 0x3ceec
movups 0x52d11(%rip), %xmm0    # 0x8fc04
movaps %xmm0, -0xe0(%rbp)
movups 0x52cf3(%rip), %xmm0    # 0x8fbf4
movaps %xmm0, -0xf0(%rbp)
movl $0x9, -0xd0(%rbp)
leaq -0xf0(%rbp), %rax
movq %rax, -0xc0(%rbp)
movq $0x9, -0xb8(%rbp)
leaq -0xf1(%rbp), %rdi
movq %rdi, -0x19b8(%rbp)
callq 0x522f0
movq -0x19b8(%rbp), %rcx
movq -0xc0(%rbp), %rsi
movq -0xb8(%rbp), %rdx
leaq -0xb0(%rbp), %rdi
callq 0x52310
jmp 0x3cf61
leaq -0xf1(%rbp), %rdi
callq 0x52390
leaq -0x98(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x523b0
movb %al, -0x19b9(%rbp)
jmp 0x3cf88
movb -0x19b9(%rbp), %al
testb $0x1, %al
jne 0x3cf94
jmp 0x3cf99
jmp 0x3d034
leaq 0x53158(%rip), %rdi     # 0x900f8
leaq 0x530ed(%rip), %rsi     # 0x90094
movl $0x99f, %edx            # imm = 0x99F
leaq 0x53542(%rip), %rcx     # 0x904f5
callq 0x3170
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3cfdb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x34a8
leaq -0x49(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3d1cb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xf1(%rbp), %rdi
callq 0x52390
jmp 0x3d1bf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xb0(%rbp), %rdi
callq 0x52430
jmp 0x3d1bf
leaq -0xb0(%rbp), %rdi
callq 0x52430
leaq -0x98(%rbp), %rdi
callq 0x52430
leaq -0x28(%rbp), %rdi
callq 0x52180
leaq -0x141(%rbp), %rdi
movq %rdi, -0x19c8(%rbp)
callq 0x3450
movq -0x19c8(%rbp), %rdx
leaq 0x53003(%rip), %rsi     # 0x90079
leaq -0x140(%rbp), %rdi
callq 0x52000
jmp 0x3d084
leaq -0x120(%rbp), %rdi
leaq -0x140(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3d09e
leaq -0x140(%rbp), %rdi
callq 0x34a8
leaq -0x141(%rbp), %rdi
callq 0x32d0
movups 0x52b6b(%rip), %xmm0    # 0x8fc28
movaps %xmm0, -0x160(%rbp)
movups 0x52b4d(%rip), %xmm0    # 0x8fc18
movaps %xmm0, -0x170(%rbp)
movq $0x9, -0x150(%rbp)
leaq -0x188(%rbp), %rdi
leaq -0x170(%rbp), %rsi
callq 0x58020
jmp 0x3d0f2
movups 0x52b57(%rip), %xmm0    # 0x8fc50
movaps %xmm0, -0x1d0(%rbp)
movups 0x52b39(%rip), %xmm0    # 0x8fc40
movaps %xmm0, -0x1e0(%rbp)
movq $0x9, -0x1c0(%rbp)
leaq -0x1e0(%rbp), %rax
movq %rax, -0x1b0(%rbp)
movq $0xa, -0x1a8(%rbp)
leaq -0x1e1(%rbp), %rdi
movq %rdi, -0x19d0(%rbp)
callq 0x522f0
movq -0x19d0(%rbp), %rcx
movq -0x1b0(%rbp), %rsi
movq -0x1a8(%rbp), %rdx
leaq -0x1a0(%rbp), %rdi
callq 0x52610
jmp 0x3d168
leaq -0x1e1(%rbp), %rdi
callq 0x52390
leaq -0x188(%rbp), %rdi
leaq -0x1a0(%rbp), %rsi
callq 0x526c0
movb %al, -0x19d1(%rbp)
jmp 0x3d18f
movb -0x19d1(%rbp), %al
testb $0x1, %al
jne 0x3d19b
jmp 0x3d1a0
jmp 0x3d25b
leaq 0x52f51(%rip), %rdi     # 0x900f8
leaq 0x52ee6(%rip), %rsi     # 0x90094
movl $0x9a7, %edx            # imm = 0x9A7
leaq 0x5333b(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x98(%rbp), %rdi
callq 0x52430
leaq -0x28(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3d1ff
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x140(%rbp), %rdi
callq 0x34a8
leaq -0x141(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3d436
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1e1(%rbp), %rdi
callq 0x52390
jmp 0x3d42a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1a0(%rbp), %rdi
callq 0x527f0
jmp 0x3d42a
leaq -0x1a0(%rbp), %rdi
callq 0x527f0
leaq -0x188(%rbp), %rdi
callq 0x527f0
leaq -0x120(%rbp), %rdi
callq 0x52180
leaq -0x231(%rbp), %rdi
movq %rdi, -0x19e0(%rbp)
callq 0x3450
movq -0x19e0(%rbp), %rdx
leaq 0x52e1d(%rip), %rsi     # 0x900bd
leaq -0x230(%rbp), %rdi
callq 0x52000
jmp 0x3d2ae
leaq -0x210(%rbp), %rdi
leaq -0x230(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3d2c8
leaq -0x230(%rbp), %rdi
callq 0x34a8
leaq -0x231(%rbp), %rdi
callq 0x32d0
leaq -0x259(%rbp), %rdi
movq %rdi, -0x19e8(%rbp)
callq 0x3450
movq -0x19e8(%rbp), %rdx
leaq 0x52dc3(%rip), %rsi     # 0x900c4
leaq -0x258(%rbp), %rdi
callq 0x52000
jmp 0x3d30f
leaq -0x259(%rbp), %rdi
callq 0x32d0
leaq -0x278(%rbp), %rdi
leaq -0x258(%rbp), %rsi
callq 0x580b0
jmp 0x3d330
movb $0x68, -0x2ac(%rbp)
movb $0x65, -0x2ab(%rbp)
movb $0x6c, -0x2aa(%rbp)
movb $0x6c, -0x2a9(%rbp)
movb $0x6f, -0x2a8(%rbp)
movb $0x20, -0x2a7(%rbp)
movb $0x77, -0x2a6(%rbp)
movb $0x6f, -0x2a5(%rbp)
movb $0x72, -0x2a4(%rbp)
movb $0x6c, -0x2a3(%rbp)
movb $0x64, -0x2a2(%rbp)
movb $0x21, -0x2a1(%rbp)
leaq -0x2ac(%rbp), %rax
movq %rax, -0x2a0(%rbp)
movq $0xc, -0x298(%rbp)
leaq -0x2ad(%rbp), %rdi
movq %rdi, -0x19f0(%rbp)
callq 0x3450
movq -0x19f0(%rbp), %rcx
movq -0x2a0(%rbp), %rsi
movq -0x298(%rbp), %rdx
leaq -0x290(%rbp), %rdi
callq 0x58140
jmp 0x3d3d3
leaq -0x2ad(%rbp), %rdi
callq 0x32d0
leaq -0x278(%rbp), %rdi
leaq -0x290(%rbp), %rsi
callq 0x581e0
movb %al, -0x19f1(%rbp)
jmp 0x3d3fa
movb -0x19f1(%rbp), %al
testb $0x1, %al
jne 0x3d406
jmp 0x3d40b
jmp 0x3d4e6
leaq 0x52ce6(%rip), %rdi     # 0x900f8
leaq 0x52c7b(%rip), %rsi     # 0x90094
movl $0x9af, %edx            # imm = 0x9AF
leaq 0x530d0(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x188(%rbp), %rdi
callq 0x527f0
leaq -0x120(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3d46d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x230(%rbp), %rdi
callq 0x34a8
leaq -0x231(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x259(%rbp), %rdi
callq 0x32d0
jmp 0x3d6f1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3d6e5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x2ad(%rbp), %rdi
callq 0x32d0
jmp 0x3d6d9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x290(%rbp), %rdi
callq 0x58310
jmp 0x3d6d9
leaq -0x290(%rbp), %rdi
callq 0x58310
leaq -0x278(%rbp), %rdi
callq 0x58310
leaq -0x258(%rbp), %rdi
callq 0x34a8
leaq -0x210(%rbp), %rdi
callq 0x52180
leaq -0x2f9(%rbp), %rdi
movq %rdi, -0x1a00(%rbp)
callq 0x3450
movq -0x1a00(%rbp), %rdx
leaq 0x52ba7(%rip), %rsi     # 0x900de
leaq -0x2f8(%rbp), %rdi
callq 0x52000
jmp 0x3d545
leaq -0x2d8(%rbp), %rdi
leaq -0x2f8(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3d55f
leaq -0x2f8(%rbp), %rdi
callq 0x34a8
leaq -0x2f9(%rbp), %rdi
callq 0x32d0
movups 0x526fa(%rip), %xmm0    # 0x8fc78
movaps %xmm0, -0x340(%rbp)
movups 0x526dc(%rip), %xmm0    # 0x8fc68
movaps %xmm0, -0x350(%rbp)
movl $0x9, -0x330(%rbp)
leaq -0x350(%rbp), %rax
movq %rax, -0x328(%rbp)
movq $0x9, -0x320(%rbp)
leaq -0x351(%rbp), %rdi
movq %rdi, -0x1a08(%rbp)
callq 0x522f0
movq -0x1a08(%rbp), %rcx
movq -0x328(%rbp), %rsi
movq -0x320(%rbp), %rdx
leaq -0x318(%rbp), %rdi
callq 0x52310
jmp 0x3d5ec
leaq -0x351(%rbp), %rdi
callq 0x52390
leaq -0x370(%rbp), %rdi
leaq -0x318(%rbp), %rsi
callq 0x58330
jmp 0x3d60d
movups 0x52688(%rip), %xmm0    # 0x8fc9c
movaps %xmm0, -0x3b0(%rbp)
movups 0x5266a(%rip), %xmm0    # 0x8fc8c
movaps %xmm0, -0x3c0(%rbp)
movl $0x9, -0x3a0(%rbp)
leaq -0x3c0(%rbp), %rax
movq %rax, -0x398(%rbp)
movq $0x9, -0x390(%rbp)
leaq -0x3c1(%rbp), %rdi
movq %rdi, -0x1a10(%rbp)
callq 0x522f0
movq -0x1a10(%rbp), %rcx
movq -0x398(%rbp), %rsi
movq -0x390(%rbp), %rdx
leaq -0x388(%rbp), %rdi
callq 0x52310
jmp 0x3d682
leaq -0x3c1(%rbp), %rdi
callq 0x52390
leaq -0x370(%rbp), %rdi
leaq -0x388(%rbp), %rsi
callq 0x523b0
movb %al, -0x1a11(%rbp)
jmp 0x3d6a9
movb -0x1a11(%rbp), %al
testb $0x1, %al
jne 0x3d6b5
jmp 0x3d6ba
jmp 0x3d7a1
leaq 0x52a37(%rip), %rdi     # 0x900f8
leaq 0x529cc(%rip), %rsi     # 0x90094
movl $0x9b7, %edx            # imm = 0x9B7
leaq 0x52e21(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x278(%rbp), %rdi
callq 0x58310
leaq -0x258(%rbp), %rdi
callq 0x34a8
leaq -0x210(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3d728
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x2f8(%rbp), %rdi
callq 0x34a8
leaq -0x2f9(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x351(%rbp), %rdi
callq 0x52390
jmp 0x3d9ac
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3d9a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x3c1(%rbp), %rdi
callq 0x52390
jmp 0x3d994
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x388(%rbp), %rdi
callq 0x52430
jmp 0x3d994
leaq -0x388(%rbp), %rdi
callq 0x52430
leaq -0x370(%rbp), %rdi
callq 0x52430
leaq -0x318(%rbp), %rdi
callq 0x52430
leaq -0x2d8(%rbp), %rdi
callq 0x52180
leaq -0x411(%rbp), %rdi
movq %rdi, -0x1a20(%rbp)
callq 0x3450
movq -0x1a20(%rbp), %rdx
leaq 0x528f3(%rip), %rsi     # 0x900e5
leaq -0x410(%rbp), %rdi
callq 0x52000
jmp 0x3d800
leaq -0x3f0(%rbp), %rdi
leaq -0x410(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3d81a
leaq -0x410(%rbp), %rdi
callq 0x34a8
leaq -0x411(%rbp), %rdi
callq 0x32d0
movups 0x52487(%rip), %xmm0    # 0x8fcc0
movaps %xmm0, -0x490(%rbp)
movups 0x52469(%rip), %xmm0    # 0x8fcb0
movaps %xmm0, -0x4a0(%rbp)
movl $0x9, -0x480(%rbp)
leaq -0x4a0(%rbp), %rax
movq %rax, -0x478(%rbp)
movq $0x9, -0x470(%rbp)
leaq -0x4a1(%rbp), %rdi
movq %rdi, -0x1a28(%rbp)
callq 0x522f0
movq -0x1a28(%rbp), %rcx
movq -0x478(%rbp), %rsi
movq -0x470(%rbp), %rdx
leaq -0x468(%rbp), %rdi
callq 0x52490
jmp 0x3d8a7
leaq -0x4a1(%rbp), %rdi
callq 0x52390
leaq -0x4f8(%rbp), %rdi
leaq -0x468(%rbp), %rsi
callq 0x583c0
jmp 0x3d8c8
movups 0x52415(%rip), %xmm0    # 0x8fce4
movaps %xmm0, -0x570(%rbp)
movups 0x523f7(%rip), %xmm0    # 0x8fcd4
movaps %xmm0, -0x580(%rbp)
movl $0x9, -0x560(%rbp)
leaq -0x580(%rbp), %rax
movq %rax, -0x558(%rbp)
movq $0x9, -0x550(%rbp)
leaq -0x581(%rbp), %rdi
movq %rdi, -0x1a30(%rbp)
callq 0x522f0
movq -0x1a30(%rbp), %rcx
movq -0x558(%rbp), %rsi
movq -0x550(%rbp), %rdx
leaq -0x548(%rbp), %rdi
callq 0x52490
jmp 0x3d93d
leaq -0x581(%rbp), %rdi
callq 0x52390
leaq -0x4f8(%rbp), %rdi
leaq -0x548(%rbp), %rsi
callq 0x52510
movb %al, -0x1a31(%rbp)
jmp 0x3d964
movb -0x1a31(%rbp), %al
testb $0x1, %al
jne 0x3d970
jmp 0x3d975
jmp 0x3da5c
leaq 0x5277c(%rip), %rdi     # 0x900f8
leaq 0x52711(%rip), %rsi     # 0x90094
movl $0x9bf, %edx            # imm = 0x9BF
leaq 0x52b66(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x370(%rbp), %rdi
callq 0x52430
leaq -0x318(%rbp), %rdi
callq 0x52430
leaq -0x2d8(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3d9e3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x34a8
leaq -0x411(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x4a1(%rbp), %rdi
callq 0x52390
jmp 0x3dc67
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3dc5b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x581(%rbp), %rdi
callq 0x52390
jmp 0x3dc4f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x548(%rbp), %rdi
callq 0x525a0
jmp 0x3dc4f
leaq -0x548(%rbp), %rdi
callq 0x525a0
leaq -0x4f8(%rbp), %rdi
callq 0x525a0
leaq -0x468(%rbp), %rdi
callq 0x525a0
leaq -0x3f0(%rbp), %rdi
callq 0x52180
leaq -0x5d1(%rbp), %rdi
movq %rdi, -0x1a40(%rbp)
callq 0x3450
movq -0x1a40(%rbp), %rdx
leaq 0x52646(%rip), %rsi     # 0x900f3
leaq -0x5d0(%rbp), %rdi
callq 0x52000
jmp 0x3dabb
leaq -0x5b0(%rbp), %rdi
leaq -0x5d0(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3dad5
leaq -0x5d0(%rbp), %rdi
callq 0x34a8
leaq -0x5d1(%rbp), %rdi
callq 0x32d0
movups 0x52214(%rip), %xmm0    # 0x8fd08
movaps %xmm0, -0x620(%rbp)
movups 0x521f6(%rip), %xmm0    # 0x8fcf8
movaps %xmm0, -0x630(%rbp)
movl $0x9, -0x610(%rbp)
leaq -0x630(%rbp), %rax
movq %rax, -0x600(%rbp)
movq $0x9, -0x5f8(%rbp)
leaq -0x631(%rbp), %rdi
movq %rdi, -0x1a48(%rbp)
callq 0x522f0
movq -0x1a48(%rbp), %rcx
movq -0x600(%rbp), %rsi
movq -0x5f8(%rbp), %rdx
leaq -0x5f0(%rbp), %rdi
callq 0x52610
jmp 0x3db62
leaq -0x631(%rbp), %rdi
callq 0x52390
leaq -0x650(%rbp), %rdi
leaq -0x5f0(%rbp), %rsi
callq 0x58470
jmp 0x3db83
movups 0x521a2(%rip), %xmm0    # 0x8fd2c
movaps %xmm0, -0x690(%rbp)
movups 0x52184(%rip), %xmm0    # 0x8fd1c
movaps %xmm0, -0x6a0(%rbp)
movl $0x9, -0x680(%rbp)
leaq -0x6a0(%rbp), %rax
movq %rax, -0x678(%rbp)
movq $0x9, -0x670(%rbp)
leaq -0x6a1(%rbp), %rdi
movq %rdi, -0x1a50(%rbp)
callq 0x522f0
movq -0x1a50(%rbp), %rcx
movq -0x678(%rbp), %rsi
movq -0x670(%rbp), %rdx
leaq -0x668(%rbp), %rdi
callq 0x52310
jmp 0x3dbf8
leaq -0x6a1(%rbp), %rdi
callq 0x52390
leaq -0x650(%rbp), %rdi
leaq -0x668(%rbp), %rsi
callq 0x523b0
movb %al, -0x1a51(%rbp)
jmp 0x3dc1f
movb -0x1a51(%rbp), %al
testb $0x1, %al
jne 0x3dc2b
jmp 0x3dc30
jmp 0x3dd17
leaq 0x524c1(%rip), %rdi     # 0x900f8
leaq 0x52456(%rip), %rsi     # 0x90094
movl $0x9c7, %edx            # imm = 0x9C7
leaq 0x528ab(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x4f8(%rbp), %rdi
callq 0x525a0
leaq -0x468(%rbp), %rdi
callq 0x525a0
leaq -0x3f0(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3dc9e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x5d0(%rbp), %rdi
callq 0x34a8
leaq -0x5d1(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x631(%rbp), %rdi
callq 0x52390
jmp 0x3df22
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3df16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x6a1(%rbp), %rdi
callq 0x52390
jmp 0x3df0a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x668(%rbp), %rdi
callq 0x52430
jmp 0x3df0a
leaq -0x668(%rbp), %rdi
callq 0x52430
leaq -0x650(%rbp), %rdi
callq 0x52430
leaq -0x5f0(%rbp), %rdi
callq 0x527f0
leaq -0x5b0(%rbp), %rdi
callq 0x52180
leaq -0x6f1(%rbp), %rdi
movq %rdi, -0x1a60(%rbp)
callq 0x3450
movq -0x1a60(%rbp), %rdx
leaq 0x52383(%rip), %rsi     # 0x900eb
leaq -0x6f0(%rbp), %rdi
callq 0x52000
jmp 0x3dd76
leaq -0x6d0(%rbp), %rdi
leaq -0x6f0(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3dd90
leaq -0x6f0(%rbp), %rdi
callq 0x34a8
leaq -0x6f1(%rbp), %rdi
callq 0x32d0
movups 0x51fa1(%rip), %xmm0    # 0x8fd50
movaps %xmm0, -0x730(%rbp)
movups 0x51f83(%rip), %xmm0    # 0x8fd40
movaps %xmm0, -0x740(%rbp)
movl $0x9, -0x720(%rbp)
leaq -0x740(%rbp), %rax
movq %rax, -0x710(%rbp)
movq $0x9, -0x708(%rbp)
leaq -0x741(%rbp), %rdi
movq %rdi, -0x1a68(%rbp)
callq 0x522f0
movq -0x1a68(%rbp), %rcx
movq -0x710(%rbp), %rsi
movq -0x708(%rbp), %rdx
leaq -0x700(%rbp), %rdi
callq 0x52810
jmp 0x3de1d
leaq -0x741(%rbp), %rdi
callq 0x52390
leaq -0x760(%rbp), %rdi
leaq -0x700(%rbp), %rsi
callq 0x58500
jmp 0x3de3e
movups 0x51f2f(%rip), %xmm0    # 0x8fd74
movaps %xmm0, -0x7a0(%rbp)
movups 0x51f11(%rip), %xmm0    # 0x8fd64
movaps %xmm0, -0x7b0(%rbp)
movl $0x9, -0x790(%rbp)
leaq -0x7b0(%rbp), %rax
movq %rax, -0x788(%rbp)
movq $0x9, -0x780(%rbp)
leaq -0x7b1(%rbp), %rdi
movq %rdi, -0x1a70(%rbp)
callq 0x522f0
movq -0x1a70(%rbp), %rcx
movq -0x788(%rbp), %rsi
movq -0x780(%rbp), %rdx
leaq -0x778(%rbp), %rdi
callq 0x52610
jmp 0x3deb3
leaq -0x7b1(%rbp), %rdi
callq 0x52390
leaq -0x760(%rbp), %rdi
leaq -0x778(%rbp), %rsi
callq 0x526c0
movb %al, -0x1a71(%rbp)
jmp 0x3deda
movb -0x1a71(%rbp), %al
testb $0x1, %al
jne 0x3dee6
jmp 0x3deeb
jmp 0x3dfd2
leaq 0x52206(%rip), %rdi     # 0x900f8
leaq 0x5219b(%rip), %rsi     # 0x90094
movl $0x9cf, %edx            # imm = 0x9CF
leaq 0x525f0(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x650(%rbp), %rdi
callq 0x52430
leaq -0x5f0(%rbp), %rdi
callq 0x527f0
leaq -0x5b0(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3df59
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x6f0(%rbp), %rdi
callq 0x34a8
leaq -0x6f1(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x741(%rbp), %rdi
callq 0x52390
jmp 0x3e1e4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3e1d8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x7b1(%rbp), %rdi
callq 0x52390
jmp 0x3e1cc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x778(%rbp), %rdi
callq 0x527f0
jmp 0x3e1cc
leaq -0x778(%rbp), %rdi
callq 0x527f0
leaq -0x760(%rbp), %rdi
callq 0x527f0
leaq -0x700(%rbp), %rdi
callq 0x529e0
leaq -0x6d0(%rbp), %rdi
callq 0x52180
leaq -0x801(%rbp), %rdi
movq %rdi, -0x1a80(%rbp)
callq 0x3450
movq -0x1a80(%rbp), %rdx
leaq 0x520f0(%rip), %rsi     # 0x90113
leaq -0x800(%rbp), %rdi
callq 0x52000
jmp 0x3e031
leaq -0x7e0(%rbp), %rdi
leaq -0x800(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3e04b
leaq -0x800(%rbp), %rdi
callq 0x34a8
leaq -0x801(%rbp), %rdi
callq 0x32d0
movups 0x51d2e(%rip), %xmm0    # 0x8fd98
movaps %xmm0, -0x860(%rbp)
movups 0x51d10(%rip), %xmm0    # 0x8fd88
movaps %xmm0, -0x870(%rbp)
movl $0x9, -0x850(%rbp)
leaq -0x870(%rbp), %rax
movq %rax, -0x848(%rbp)
movq $0x9, -0x840(%rbp)
leaq -0x872(%rbp), %rdi
movq %rdi, -0x1a88(%rbp)
callq 0x522f0
movq -0x1a88(%rbp), %r8
movq -0x848(%rbp), %rsi
movq -0x840(%rbp), %rdx
leaq -0x838(%rbp), %rdi
leaq -0x871(%rbp), %rcx
callq 0x52a00
jmp 0x3e0df
leaq -0x872(%rbp), %rdi
callq 0x52390
leaq -0x880(%rbp), %rdi
leaq -0x838(%rbp), %rsi
callq 0x58590
jmp 0x3e100
movups 0x51cb5(%rip), %xmm0    # 0x8fdbc
movaps %xmm0, -0x8b0(%rbp)
movups 0x51c97(%rip), %xmm0    # 0x8fdac
movaps %xmm0, -0x8c0(%rbp)
movl $0x9, -0x8a0(%rbp)
leaq -0x8c0(%rbp), %rax
movq %rax, -0x898(%rbp)
movq $0x9, -0x890(%rbp)
leaq -0x8c1(%rbp), %rdi
movq %rdi, -0x1a90(%rbp)
callq 0x522f0
movq -0x1a90(%rbp), %rcx
movq -0x898(%rbp), %rsi
movq -0x890(%rbp), %rdx
leaq -0x888(%rbp), %rdi
callq 0x52810
jmp 0x3e175
leaq -0x8c1(%rbp), %rdi
callq 0x52390
leaq -0x880(%rbp), %rdi
leaq -0x888(%rbp), %rsi
callq 0x528c0
movb %al, -0x1a91(%rbp)
jmp 0x3e19c
movb -0x1a91(%rbp), %al
testb $0x1, %al
jne 0x3e1a8
jmp 0x3e1ad
jmp 0x3e294
leaq 0x51f44(%rip), %rdi     # 0x900f8
leaq 0x51ed9(%rip), %rsi     # 0x90094
movl $0x9d7, %edx            # imm = 0x9D7
leaq 0x5232e(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x760(%rbp), %rdi
callq 0x527f0
leaq -0x700(%rbp), %rdi
callq 0x529e0
leaq -0x6d0(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3e21b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x800(%rbp), %rdi
callq 0x34a8
leaq -0x801(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x872(%rbp), %rdi
callq 0x52390
jmp 0x3e499
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3e48d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x8c1(%rbp), %rdi
callq 0x52390
jmp 0x3e481
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x888(%rbp), %rdi
callq 0x529e0
jmp 0x3e481
leaq -0x888(%rbp), %rdi
callq 0x529e0
leaq -0x880(%rbp), %rdi
callq 0x529e0
leaq -0x838(%rbp), %rdi
callq 0x52af0
leaq -0x7e0(%rbp), %rdi
callq 0x52180
leaq -0x911(%rbp), %rdi
movq %rdi, -0x1aa0(%rbp)
callq 0x3450
movq -0x1aa0(%rbp), %rdx
leaq 0x51e3c(%rip), %rsi     # 0x90121
leaq -0x910(%rbp), %rdi
callq 0x52000
jmp 0x3e2f3
leaq -0x8f0(%rbp), %rdi
leaq -0x910(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3e30d
leaq -0x910(%rbp), %rdi
callq 0x34a8
leaq -0x911(%rbp), %rdi
callq 0x32d0
movups 0x51ab4(%rip), %xmm0    # 0x8fde0
movaps %xmm0, -0x970(%rbp)
movups 0x51a96(%rip), %xmm0    # 0x8fdd0
movaps %xmm0, -0x980(%rbp)
leaq -0x980(%rbp), %rax
movq %rax, -0x958(%rbp)
movq $0x8, -0x950(%rbp)
leaq -0x982(%rbp), %rdi
movq %rdi, -0x1aa8(%rbp)
callq 0x522f0
movq -0x1aa8(%rbp), %r8
movq -0x958(%rbp), %rsi
movq -0x950(%rbp), %rdx
leaq -0x948(%rbp), %rdi
leaq -0x981(%rbp), %rcx
callq 0x52b10
jmp 0x3e397
leaq -0x982(%rbp), %rdi
callq 0x52390
leaq -0x9b8(%rbp), %rdi
leaq -0x948(%rbp), %rsi
callq 0x58620
jmp 0x3e3b8
movups 0x51a41(%rip), %xmm0    # 0x8fe00
movaps %xmm0, -0xa10(%rbp)
movups 0x51a23(%rip), %xmm0    # 0x8fdf0
movaps %xmm0, -0xa20(%rbp)
leaq -0xa20(%rbp), %rax
movq %rax, -0x9f8(%rbp)
movq $0x8, -0x9f0(%rbp)
leaq -0xa22(%rbp), %rdi
movq %rdi, -0x1ab0(%rbp)
callq 0x522f0
movq -0x1ab0(%rbp), %r8
movq -0x9f8(%rbp), %rsi
movq -0x9f0(%rbp), %rdx
leaq -0x9e8(%rbp), %rdi
leaq -0xa21(%rbp), %rcx
callq 0x52b10
jmp 0x3e42a
leaq -0xa22(%rbp), %rdi
callq 0x52390
leaq -0x9b8(%rbp), %rdi
leaq -0x9e8(%rbp), %rsi
callq 0x53e40
movb %al, -0x1ab1(%rbp)
jmp 0x3e451
movb -0x1ab1(%rbp), %al
testb $0x1, %al
jne 0x3e45d
jmp 0x3e462
jmp 0x3e549
leaq 0x51c8f(%rip), %rdi     # 0x900f8
leaq 0x51c24(%rip), %rsi     # 0x90094
movl $0x9df, %edx            # imm = 0x9DF
leaq 0x52079(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x880(%rbp), %rdi
callq 0x529e0
leaq -0x838(%rbp), %rdi
callq 0x52af0
leaq -0x7e0(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3e4d0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x910(%rbp), %rdi
callq 0x34a8
leaq -0x911(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x982(%rbp), %rdi
callq 0x52390
jmp 0x3e773
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3e767
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xa22(%rbp), %rdi
callq 0x52390
jmp 0x3e75b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x9e8(%rbp), %rdi
callq 0x52be0
jmp 0x3e75b
leaq -0x9e8(%rbp), %rdi
callq 0x52be0
leaq -0x9b8(%rbp), %rdi
callq 0x52be0
leaq -0x948(%rbp), %rdi
callq 0x52be0
leaq -0x8f0(%rbp), %rdi
callq 0x52180
leaq -0xa71(%rbp), %rdi
movq %rdi, -0x1ac0(%rbp)
callq 0x3450
movq -0x1ac0(%rbp), %rdx
leaq 0x51b6f(%rip), %rsi     # 0x90109
leaq -0xa70(%rbp), %rdi
callq 0x52000
jmp 0x3e5a8
leaq -0xa50(%rbp), %rdi
leaq -0xa70(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3e5c2
leaq -0xa70(%rbp), %rdi
callq 0x34a8
leaq -0xa71(%rbp), %rdi
callq 0x32d0
movups 0x5183f(%rip), %xmm0    # 0x8fe20
movaps %xmm0, -0xae0(%rbp)
movups 0x51821(%rip), %xmm0    # 0x8fe10
movaps %xmm0, -0xaf0(%rbp)
movl $0x9, -0xad0(%rbp)
leaq -0xaf0(%rbp), %rax
movq %rax, -0xac0(%rbp)
movq $0x9, -0xab8(%rbp)
leaq -0xaf3(%rbp), %rdi
movq %rdi, -0x1ac8(%rbp)
callq 0x522f0
movq -0x1ac8(%rbp), %rcx
movq -0xac0(%rbp), %rsi
movq -0xab8(%rbp), %rdx
movq %rsp, %rax
movq %rcx, (%rax)
xorl %eax, %eax
movl %eax, %ecx
leaq -0xab0(%rbp), %rdi
leaq -0xaf1(%rbp), %r8
leaq -0xaf2(%rbp), %r9
callq 0x52c00
jmp 0x3e667
leaq -0xaf3(%rbp), %rdi
callq 0x52390
leaq -0xb28(%rbp), %rdi
leaq -0xab0(%rbp), %rsi
callq 0x58670
jmp 0x3e688
movups 0x517b5(%rip), %xmm0    # 0x8fe44
movaps %xmm0, -0xb80(%rbp)
movups 0x51797(%rip), %xmm0    # 0x8fe34
movaps %xmm0, -0xb90(%rbp)
movl $0x9, -0xb70(%rbp)
leaq -0xb90(%rbp), %rax
movq %rax, -0xb68(%rbp)
movq $0x9, -0xb60(%rbp)
leaq -0xb92(%rbp), %rdi
movq %rdi, -0x1ad0(%rbp)
callq 0x522f0
movq -0x1ad0(%rbp), %r8
movq -0xb68(%rbp), %rsi
movq -0xb60(%rbp), %rdx
leaq -0xb58(%rbp), %rdi
leaq -0xb91(%rbp), %rcx
callq 0x52a00
jmp 0x3e704
leaq -0xb92(%rbp), %rdi
callq 0x52390
leaq -0xb28(%rbp), %rdi
leaq -0xb58(%rbp), %rsi
callq 0x53e10
movb %al, -0x1ad1(%rbp)
jmp 0x3e72b
movb -0x1ad1(%rbp), %al
testb $0x1, %al
jne 0x3e737
jmp 0x3e73c
jmp 0x3e823
leaq 0x519b5(%rip), %rdi     # 0x900f8
leaq 0x5194a(%rip), %rsi     # 0x90094
movl $0x9e7, %edx            # imm = 0x9E7
leaq 0x51d9f(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x9b8(%rbp), %rdi
callq 0x52be0
leaq -0x948(%rbp), %rdi
callq 0x52be0
leaq -0x8f0(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3e7aa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xa70(%rbp), %rdi
callq 0x34a8
leaq -0xa71(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xaf3(%rbp), %rdi
callq 0x52390
jmp 0x3ea39
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3ea2d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xb92(%rbp), %rdi
callq 0x52390
jmp 0x3ea21
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xb58(%rbp), %rdi
callq 0x52af0
jmp 0x3ea21
leaq -0xb58(%rbp), %rdi
callq 0x52af0
leaq -0xb28(%rbp), %rdi
callq 0x52af0
leaq -0xab0(%rbp), %rdi
callq 0x52c60
leaq -0xa50(%rbp), %rdi
callq 0x52180
leaq -0xbe1(%rbp), %rdi
movq %rdi, -0x1ae0(%rbp)
callq 0x3450
movq -0x1ae0(%rbp), %rdx
leaq 0x518a3(%rip), %rsi     # 0x90117
leaq -0xbe0(%rbp), %rdi
callq 0x52000
jmp 0x3e882
leaq -0xbc0(%rbp), %rdi
leaq -0xbe0(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3e89c
leaq -0xbe0(%rbp), %rdi
callq 0x34a8
leaq -0xbe1(%rbp), %rdi
callq 0x32d0
movups 0x515ad(%rip), %xmm0    # 0x8fe68
movaps %xmm0, -0xc40(%rbp)
movups 0x5158f(%rip), %xmm0    # 0x8fe58
movaps %xmm0, -0xc50(%rbp)
leaq -0xc50(%rbp), %rax
movq %rax, -0xc30(%rbp)
movq $0x8, -0xc28(%rbp)
leaq -0xc53(%rbp), %rdi
movq %rdi, -0x1ae8(%rbp)
callq 0x522f0
movq -0x1ae8(%rbp), %rcx
movq -0xc30(%rbp), %rsi
movq -0xc28(%rbp), %rdx
movq %rsp, %rax
movq %rcx, (%rax)
xorl %eax, %eax
movl %eax, %ecx
leaq -0xc20(%rbp), %rdi
leaq -0xc51(%rbp), %r8
leaq -0xc52(%rbp), %r9
callq 0x52c80
jmp 0x3e937
leaq -0xc53(%rbp), %rdi
callq 0x52390
leaq -0xc88(%rbp), %rdi
leaq -0xc20(%rbp), %rsi
callq 0x586c0
jmp 0x3e958
movups 0x51529(%rip), %xmm0    # 0x8fe88
movaps %xmm0, -0xce0(%rbp)
movups 0x5150b(%rip), %xmm0    # 0x8fe78
movaps %xmm0, -0xcf0(%rbp)
leaq -0xcf0(%rbp), %rax
movq %rax, -0xcc8(%rbp)
movq $0x8, -0xcc0(%rbp)
leaq -0xcf2(%rbp), %rdi
movq %rdi, -0x1af0(%rbp)
callq 0x522f0
movq -0x1af0(%rbp), %r8
movq -0xcc8(%rbp), %rsi
movq -0xcc0(%rbp), %rdx
leaq -0xcb8(%rbp), %rdi
leaq -0xcf1(%rbp), %rcx
callq 0x52b10
jmp 0x3e9ca
leaq -0xcf2(%rbp), %rdi
callq 0x52390
leaq -0xc88(%rbp), %rdi
leaq -0xcb8(%rbp), %rsi
callq 0x53e40
movb %al, -0x1af1(%rbp)
jmp 0x3e9f1
movb -0x1af1(%rbp), %al
testb $0x1, %al
jne 0x3e9fd
jmp 0x3ea02
jmp 0x3eae9
leaq 0x516ef(%rip), %rdi     # 0x900f8
leaq 0x51684(%rip), %rsi     # 0x90094
movl $0x9ef, %edx            # imm = 0x9EF
leaq 0x51ad9(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0xb28(%rbp), %rdi
callq 0x52af0
leaq -0xab0(%rbp), %rdi
callq 0x52c60
leaq -0xa50(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3ea70
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xbe0(%rbp), %rdi
callq 0x34a8
leaq -0xbe1(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xc53(%rbp), %rdi
callq 0x52390
jmp 0x3efbd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3efb1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xcf2(%rbp), %rdi
callq 0x52390
jmp 0x3efa5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xcb8(%rbp), %rdi
callq 0x52be0
jmp 0x3efa5
leaq -0xcb8(%rbp), %rdi
callq 0x52be0
leaq -0xc88(%rbp), %rdi
callq 0x52be0
leaq -0xc20(%rbp), %rdi
callq 0x52ce0
leaq -0xbc0(%rbp), %rdi
callq 0x52180
leaq -0xd41(%rbp), %rdi
movq %rdi, -0x1b00(%rbp)
callq 0x3450
movq -0x1b00(%rbp), %rdx
leaq 0x5160c(%rip), %rsi     # 0x90146
leaq -0xd40(%rbp), %rdi
callq 0x52000
jmp 0x3eb48
leaq -0xd20(%rbp), %rdi
leaq -0xd40(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3eb62
leaq -0xd40(%rbp), %rdi
callq 0x34a8
leaq -0xd41(%rbp), %rdi
callq 0x32d0
leaq -0xea0(%rbp), %rdi
movq %rdi, -0xea8(%rbp)
movl $0x1, -0xeac(%rbp)
leaq 0x51592(%rip), %rdx     # 0x9012b
leaq -0xeac(%rbp), %rsi
callq 0x52d00
jmp 0x3eba7
leaq -0xe78(%rbp), %rdi
movq %rdi, -0xea8(%rbp)
movl $0x2, -0xeb0(%rbp)
leaq 0x51568(%rip), %rdx     # 0x9012e
leaq -0xeb0(%rbp), %rsi
callq 0x52d00
jmp 0x3ebd4
leaq -0xe50(%rbp), %rdi
movq %rdi, -0xea8(%rbp)
movl $0x3, -0xeb4(%rbp)
leaq 0x5153e(%rip), %rdx     # 0x90131
leaq -0xeb4(%rbp), %rsi
callq 0x52d00
jmp 0x3ec01
leaq -0xe28(%rbp), %rdi
movq %rdi, -0xea8(%rbp)
movl $0x4, -0xeb8(%rbp)
leaq 0x51887(%rip), %rdx     # 0x904a7
leaq -0xeb8(%rbp), %rsi
callq 0x52d00
jmp 0x3ec2e
leaq -0xe00(%rbp), %rdi
movq %rdi, -0xea8(%rbp)
movl $0xa, -0xebc(%rbp)
leaq 0x5173f(%rip), %rdx     # 0x9038c
leaq -0xebc(%rbp), %rsi
callq 0x52d00
jmp 0x3ec5b
leaq -0xdd8(%rbp), %rdi
movq %rdi, -0xea8(%rbp)
movl $0x14, -0xec0(%rbp)
leaq 0x51800(%rip), %rdx     # 0x9047a
leaq -0xec0(%rbp), %rsi
callq 0x52d00
jmp 0x3ec88
leaq -0xdb0(%rbp), %rdi
movq %rdi, -0xea8(%rbp)
movl $0x1e, -0xec4(%rbp)
leaq 0x51518(%rip), %rdx     # 0x901bf
leaq -0xec4(%rbp), %rsi
callq 0x52d00
jmp 0x3ecb5
leaq -0xea0(%rbp), %rax
movq %rax, -0xd88(%rbp)
movq $0x7, -0xd80(%rbp)
leaq -0xec6(%rbp), %rdi
movq %rdi, -0x1b08(%rbp)
callq 0x52da0
movq -0x1b08(%rbp), %r8
movq -0xd88(%rbp), %rsi
movq -0xd80(%rbp), %rdx
leaq -0xd78(%rbp), %rdi
leaq -0xec5(%rbp), %rcx
callq 0x52dc0
jmp 0x3ed0b
leaq -0xec6(%rbp), %rdi
callq 0x52e90
leaq -0xea0(%rbp), %rax
movq %rax, -0x1b18(%rbp)
addq $0x118, %rax            # imm = 0x118
movq %rax, -0x1b10(%rbp)
movq -0x1b10(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1b20(%rbp)
callq 0x52d80
movq -0x1b18(%rbp), %rcx
movq -0x1b20(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1b10(%rbp)
jne 0x3ed32
leaq -0xee0(%rbp), %rdi
leaq -0xd78(%rbp), %rsi
callq 0x58710
jmp 0x3ed78
leaq -0x1020(%rbp), %rdi
movq %rdi, -0x1028(%rbp)
movl $0x1, -0x102c(%rbp)
leaq 0x51394(%rip), %rdx     # 0x9012b
leaq -0x102c(%rbp), %rsi
callq 0x52d00
jmp 0x3eda5
leaq -0xff8(%rbp), %rdi
movq %rdi, -0x1028(%rbp)
movl $0x2, -0x1030(%rbp)
leaq 0x5136a(%rip), %rdx     # 0x9012e
leaq -0x1030(%rbp), %rsi
callq 0x52d00
jmp 0x3edd2
leaq -0xfd0(%rbp), %rdi
movq %rdi, -0x1028(%rbp)
movl $0x3, -0x1034(%rbp)
leaq 0x51340(%rip), %rdx     # 0x90131
leaq -0x1034(%rbp), %rsi
callq 0x52d00
jmp 0x3edff
leaq -0xfa8(%rbp), %rdi
movq %rdi, -0x1028(%rbp)
movl $0x4, -0x1038(%rbp)
leaq 0x51689(%rip), %rdx     # 0x904a7
leaq -0x1038(%rbp), %rsi
callq 0x52d00
jmp 0x3ee2c
leaq -0xf80(%rbp), %rdi
movq %rdi, -0x1028(%rbp)
movl $0xa, -0x103c(%rbp)
leaq 0x51541(%rip), %rdx     # 0x9038c
leaq -0x103c(%rbp), %rsi
callq 0x52d00
jmp 0x3ee59
leaq -0xf58(%rbp), %rdi
movq %rdi, -0x1028(%rbp)
movl $0x14, -0x1040(%rbp)
leaq 0x51602(%rip), %rdx     # 0x9047a
leaq -0x1040(%rbp), %rsi
callq 0x52d00
jmp 0x3ee86
leaq -0xf30(%rbp), %rdi
movq %rdi, -0x1028(%rbp)
movl $0x1e, -0x1044(%rbp)
leaq 0x5131a(%rip), %rdx     # 0x901bf
leaq -0x1044(%rbp), %rsi
callq 0x52d00
jmp 0x3eeb3
leaq -0x1020(%rbp), %rax
movq %rax, -0xf08(%rbp)
movq $0x7, -0xf00(%rbp)
leaq -0x1045(%rbp), %rdi
movq %rdi, -0x1b28(%rbp)
callq 0x52da0
movq -0x1b28(%rbp), %rcx
movq -0xf08(%rbp), %rsi
movq -0xf00(%rbp), %rdx
leaq -0xef8(%rbp), %rdi
callq 0x587a0
jmp 0x3ef02
leaq -0x1045(%rbp), %rdi
callq 0x52e90
leaq -0x1020(%rbp), %rax
movq %rax, -0x1b38(%rbp)
addq $0x118, %rax            # imm = 0x118
movq %rax, -0x1b30(%rbp)
movq -0x1b30(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1b40(%rbp)
callq 0x52d80
movq -0x1b38(%rbp), %rcx
movq -0x1b40(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1b30(%rbp)
jne 0x3ef29
leaq -0xee0(%rbp), %rdi
leaq -0xef8(%rbp), %rsi
callq 0x58820
movb %al, -0x1b41(%rbp)
jmp 0x3ef75
movb -0x1b41(%rbp), %al
testb $0x1, %al
jne 0x3ef81
jmp 0x3ef86
jmp 0x3f1bd
leaq 0x5116b(%rip), %rdi     # 0x900f8
leaq 0x51100(%rip), %rsi     # 0x90094
movl $0x9f8, %edx            # imm = 0x9F8
leaq 0x51555(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0xc88(%rbp), %rdi
callq 0x52be0
leaq -0xc20(%rbp), %rdi
callq 0x52ce0
leaq -0xbc0(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3eff4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xd40(%rbp), %rdi
callq 0x34a8
leaq -0xd41(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
movq -0xea8(%rbp), %rax
leaq -0xea0(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x1b50(%rbp)
je 0x3f05c
movq -0x1b50(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1b58(%rbp)
callq 0x52d80
movq -0x1b58(%rbp), %rax
leaq -0xea0(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x1b50(%rbp)
jne 0x3f02b
jmp 0x3f637
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xec6(%rbp), %rdi
callq 0x52e90
leaq -0xea0(%rbp), %rax
movq %rax, -0x1b68(%rbp)
addq $0x118, %rax            # imm = 0x118
movq %rax, -0x1b60(%rbp)
movq -0x1b60(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1b70(%rbp)
callq 0x52d80
movq -0x1b68(%rbp), %rcx
movq -0x1b70(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1b60(%rbp)
jne 0x3f094
jmp 0x3f637
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3f62b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
movq -0x1028(%rbp), %rax
leaq -0x1020(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x1b78(%rbp)
je 0x3f132
movq -0x1b78(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1b80(%rbp)
callq 0x52d80
movq -0x1b80(%rbp), %rax
leaq -0x1020(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x1b78(%rbp)
jne 0x3f101
jmp 0x3f61f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1045(%rbp), %rdi
callq 0x52e90
leaq -0x1020(%rbp), %rax
movq %rax, -0x1b90(%rbp)
addq $0x118, %rax            # imm = 0x118
movq %rax, -0x1b88(%rbp)
movq -0x1b88(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1b98(%rbp)
callq 0x52d80
movq -0x1b90(%rbp), %rcx
movq -0x1b98(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1b88(%rbp)
jne 0x3f16a
jmp 0x3f61f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xef8(%rbp), %rdi
callq 0x588a0
jmp 0x3f61f
leaq -0xef8(%rbp), %rdi
callq 0x588a0
leaq -0xee0(%rbp), %rdi
callq 0x588a0
leaq -0xd78(%rbp), %rdi
callq 0x52f60
leaq -0xd20(%rbp), %rdi
callq 0x52180
leaq -0x1091(%rbp), %rdi
movq %rdi, -0x1ba0(%rbp)
callq 0x3450
movq -0x1ba0(%rbp), %rdx
leaq 0x50f46(%rip), %rsi     # 0x90154
leaq -0x1090(%rbp), %rdi
callq 0x52000
jmp 0x3f21c
leaq -0x1070(%rbp), %rdi
leaq -0x1090(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3f236
leaq -0x1090(%rbp), %rdi
callq 0x34a8
leaq -0x1091(%rbp), %rdi
callq 0x32d0
leaq -0x11c8(%rbp), %rdi
movq %rdi, -0x11d0(%rbp)
movl $0x2, -0x11d4(%rbp)
leaq 0x50ebe(%rip), %rdx     # 0x9012b
leaq -0x11d4(%rbp), %rsi
callq 0x52d00
jmp 0x3f27b
leaq -0x11a0(%rbp), %rdi
movq %rdi, -0x11d0(%rbp)
movl $0x2, -0x11d8(%rbp)
leaq 0x50e94(%rip), %rdx     # 0x9012e
leaq -0x11d8(%rbp), %rsi
callq 0x52d00
jmp 0x3f2a8
leaq -0x1178(%rbp), %rdi
movq %rdi, -0x11d0(%rbp)
movl $0x4, -0x11dc(%rbp)
leaq 0x50e6a(%rip), %rdx     # 0x90131
leaq -0x11dc(%rbp), %rsi
callq 0x52d00
jmp 0x3f2d5
leaq -0x1150(%rbp), %rdi
movq %rdi, -0x11d0(%rbp)
movl $0x4, -0x11e0(%rbp)
leaq 0x511b3(%rip), %rdx     # 0x904a7
leaq -0x11e0(%rbp), %rsi
callq 0x52d00
jmp 0x3f302
leaq -0x1128(%rbp), %rdi
movq %rdi, -0x11d0(%rbp)
movl $0xa, -0x11e4(%rbp)
leaq 0x5106b(%rip), %rdx     # 0x9038c
leaq -0x11e4(%rbp), %rsi
callq 0x52d00
jmp 0x3f32f
leaq -0x1100(%rbp), %rdi
movq %rdi, -0x11d0(%rbp)
movl $0xa, -0x11e8(%rbp)
leaq 0x5112c(%rip), %rdx     # 0x9047a
leaq -0x11e8(%rbp), %rsi
callq 0x52d00
jmp 0x3f35c
leaq -0x11c8(%rbp), %rax
movq %rax, -0x10d8(%rbp)
movq $0x6, -0x10d0(%rbp)
leaq -0x11ea(%rbp), %rdi
movq %rdi, -0x1ba8(%rbp)
callq 0x52da0
movq -0x1ba8(%rbp), %r8
movq -0x10d8(%rbp), %rsi
movq -0x10d0(%rbp), %rdx
leaq -0x10c8(%rbp), %rdi
leaq -0x11e9(%rbp), %rcx
callq 0x52f80
jmp 0x3f3b2
leaq -0x11ea(%rbp), %rdi
callq 0x52e90
leaq -0x11c8(%rbp), %rax
movq %rax, -0x1bb8(%rbp)
addq $0xf0, %rax
movq %rax, -0x1bb0(%rbp)
movq -0x1bb0(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1bc0(%rbp)
callq 0x52d80
movq -0x1bb8(%rbp), %rcx
movq -0x1bc0(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1bb0(%rbp)
jne 0x3f3d9
leaq -0x1208(%rbp), %rdi
leaq -0x10c8(%rbp), %rsi
callq 0x58900
jmp 0x3f41f
leaq -0x1320(%rbp), %rdi
movq %rdi, -0x1328(%rbp)
movl $0x2, -0x132c(%rbp)
leaq 0x50ced(%rip), %rdx     # 0x9012b
leaq -0x132c(%rbp), %rsi
callq 0x52d00
jmp 0x3f44c
leaq -0x12f8(%rbp), %rdi
movq %rdi, -0x1328(%rbp)
movl $0x2, -0x1330(%rbp)
leaq 0x50cc3(%rip), %rdx     # 0x9012e
leaq -0x1330(%rbp), %rsi
callq 0x52d00
jmp 0x3f479
leaq -0x12d0(%rbp), %rdi
movq %rdi, -0x1328(%rbp)
movl $0x4, -0x1334(%rbp)
leaq 0x50c99(%rip), %rdx     # 0x90131
leaq -0x1334(%rbp), %rsi
callq 0x52d00
jmp 0x3f4a6
leaq -0x12a8(%rbp), %rdi
movq %rdi, -0x1328(%rbp)
movl $0x4, -0x1338(%rbp)
leaq 0x50fe2(%rip), %rdx     # 0x904a7
leaq -0x1338(%rbp), %rsi
callq 0x52d00
jmp 0x3f4d3
leaq -0x1280(%rbp), %rdi
movq %rdi, -0x1328(%rbp)
movl $0xa, -0x133c(%rbp)
leaq 0x50e9a(%rip), %rdx     # 0x9038c
leaq -0x133c(%rbp), %rsi
callq 0x52d00
jmp 0x3f500
leaq -0x1258(%rbp), %rdi
movq %rdi, -0x1328(%rbp)
movl $0xa, -0x1340(%rbp)
leaq 0x50f5b(%rip), %rdx     # 0x9047a
leaq -0x1340(%rbp), %rsi
callq 0x52d00
jmp 0x3f52d
leaq -0x1320(%rbp), %rax
movq %rax, -0x1230(%rbp)
movq $0x6, -0x1228(%rbp)
leaq -0x1341(%rbp), %rdi
movq %rdi, -0x1bc8(%rbp)
callq 0x52da0
movq -0x1bc8(%rbp), %rcx
movq -0x1230(%rbp), %rsi
movq -0x1228(%rbp), %rdx
leaq -0x1220(%rbp), %rdi
callq 0x587a0
jmp 0x3f57c
leaq -0x1341(%rbp), %rdi
callq 0x52e90
leaq -0x1320(%rbp), %rax
movq %rax, -0x1bd8(%rbp)
addq $0xf0, %rax
movq %rax, -0x1bd0(%rbp)
movq -0x1bd0(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1be0(%rbp)
callq 0x52d80
movq -0x1bd8(%rbp), %rcx
movq -0x1be0(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1bd0(%rbp)
jne 0x3f5a3
leaq -0x1208(%rbp), %rdi
leaq -0x1220(%rbp), %rsi
callq 0x58820
movb %al, -0x1be1(%rbp)
jmp 0x3f5ef
movb -0x1be1(%rbp), %al
testb $0x1, %al
jne 0x3f5fb
jmp 0x3f600
jmp 0x3f837
leaq 0x50af1(%rip), %rdi     # 0x900f8
leaq 0x50a86(%rip), %rsi     # 0x90094
movl $0xa00, %edx            # imm = 0xA00
leaq 0x50edb(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0xee0(%rbp), %rdi
callq 0x588a0
leaq -0xd78(%rbp), %rdi
callq 0x52f60
leaq -0xd20(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3f66e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1090(%rbp), %rdi
callq 0x34a8
leaq -0x1091(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
movq -0x11d0(%rbp), %rax
leaq -0x11c8(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x1bf0(%rbp)
je 0x3f6d6
movq -0x1bf0(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1bf8(%rbp)
callq 0x52d80
movq -0x1bf8(%rbp), %rax
leaq -0x11c8(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x1bf0(%rbp)
jne 0x3f6a5
jmp 0x3fd1c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x11ea(%rbp), %rdi
callq 0x52e90
leaq -0x11c8(%rbp), %rax
movq %rax, -0x1c08(%rbp)
addq $0xf0, %rax
movq %rax, -0x1c00(%rbp)
movq -0x1c00(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1c10(%rbp)
callq 0x52d80
movq -0x1c08(%rbp), %rcx
movq -0x1c10(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1c00(%rbp)
jne 0x3f70e
jmp 0x3fd1c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3fd10
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
movq -0x1328(%rbp), %rax
leaq -0x1320(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x1c18(%rbp)
je 0x3f7ac
movq -0x1c18(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1c20(%rbp)
callq 0x52d80
movq -0x1c20(%rbp), %rax
leaq -0x1320(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x1c18(%rbp)
jne 0x3f77b
jmp 0x3fd04
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1341(%rbp), %rdi
callq 0x52e90
leaq -0x1320(%rbp), %rax
movq %rax, -0x1c30(%rbp)
addq $0xf0, %rax
movq %rax, -0x1c28(%rbp)
movq -0x1c28(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1c38(%rbp)
callq 0x52d80
movq -0x1c30(%rbp), %rcx
movq -0x1c38(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1c28(%rbp)
jne 0x3f7e4
jmp 0x3fd04
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1220(%rbp), %rdi
callq 0x588a0
jmp 0x3fd04
leaq -0x1220(%rbp), %rdi
callq 0x588a0
leaq -0x1208(%rbp), %rdi
callq 0x588a0
leaq -0x10c8(%rbp), %rdi
callq 0x53080
leaq -0x1070(%rbp), %rdi
callq 0x52180
leaq -0x1391(%rbp), %rdi
movq %rdi, -0x1c40(%rbp)
callq 0x3450
movq -0x1c40(%rbp), %rdx
leaq 0x508b4(%rip), %rsi     # 0x9013c
leaq -0x1390(%rbp), %rdi
callq 0x52000
jmp 0x3f896
leaq -0x1370(%rbp), %rdi
leaq -0x1390(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3f8b0
leaq -0x1390(%rbp), %rdi
callq 0x34a8
leaq -0x1391(%rbp), %rdi
callq 0x32d0
leaq -0x14f8(%rbp), %rdi
movq %rdi, -0x1500(%rbp)
movl $0x1, -0x1504(%rbp)
leaq 0x50844(%rip), %rdx     # 0x9012b
leaq -0x1504(%rbp), %rsi
callq 0x52d00
jmp 0x3f8f5
leaq -0x14d0(%rbp), %rdi
movq %rdi, -0x1500(%rbp)
movl $0x2, -0x1508(%rbp)
leaq 0x5081a(%rip), %rdx     # 0x9012e
leaq -0x1508(%rbp), %rsi
callq 0x52d00
jmp 0x3f922
leaq -0x14a8(%rbp), %rdi
movq %rdi, -0x1500(%rbp)
movl $0x3, -0x150c(%rbp)
leaq 0x507f0(%rip), %rdx     # 0x90131
leaq -0x150c(%rbp), %rsi
callq 0x52d00
jmp 0x3f94f
leaq -0x1480(%rbp), %rdi
movq %rdi, -0x1500(%rbp)
movl $0x4, -0x1510(%rbp)
leaq 0x50b39(%rip), %rdx     # 0x904a7
leaq -0x1510(%rbp), %rsi
callq 0x52d00
jmp 0x3f97c
leaq -0x1458(%rbp), %rdi
movq %rdi, -0x1500(%rbp)
movl $0xa, -0x1514(%rbp)
leaq 0x509f1(%rip), %rdx     # 0x9038c
leaq -0x1514(%rbp), %rsi
callq 0x52d00
jmp 0x3f9a9
leaq -0x1430(%rbp), %rdi
movq %rdi, -0x1500(%rbp)
movl $0x14, -0x1518(%rbp)
leaq 0x50ab2(%rip), %rdx     # 0x9047a
leaq -0x1518(%rbp), %rsi
callq 0x52d00
jmp 0x3f9d6
leaq -0x1408(%rbp), %rdi
movq %rdi, -0x1500(%rbp)
movl $0x1e, -0x151c(%rbp)
leaq 0x507ca(%rip), %rdx     # 0x901bf
leaq -0x151c(%rbp), %rsi
callq 0x52d00
jmp 0x3fa03
leaq -0x14f8(%rbp), %rax
movq %rax, -0x13e0(%rbp)
movq $0x7, -0x13d8(%rbp)
leaq -0x151f(%rbp), %rdi
movq %rdi, -0x1c48(%rbp)
callq 0x52da0
movq -0x1c48(%rbp), %rcx
movq -0x13e0(%rbp), %rsi
movq -0x13d8(%rbp), %rdx
movq %rsp, %rax
movq %rcx, (%rax)
xorl %eax, %eax
movl %eax, %ecx
leaq -0x13d0(%rbp), %rdi
leaq -0x151d(%rbp), %r8
leaq -0x151e(%rbp), %r9
callq 0x530a0
jmp 0x3fa6a
leaq -0x151f(%rbp), %rdi
callq 0x52e90
leaq -0x14f8(%rbp), %rax
movq %rax, -0x1c58(%rbp)
addq $0x118, %rax            # imm = 0x118
movq %rax, -0x1c50(%rbp)
movq -0x1c50(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1c60(%rbp)
callq 0x52d80
movq -0x1c58(%rbp), %rcx
movq -0x1c60(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1c50(%rbp)
jne 0x3fa91
leaq -0x1538(%rbp), %rdi
leaq -0x13d0(%rbp), %rsi
callq 0x58990
jmp 0x3fad7
leaq -0x1678(%rbp), %rdi
movq %rdi, -0x1680(%rbp)
movl $0x1e, -0x1684(%rbp)
leaq 0x506c9(%rip), %rdx     # 0x901bf
leaq -0x1684(%rbp), %rsi
callq 0x52d00
jmp 0x3fb04
leaq -0x1650(%rbp), %rdi
movq %rdi, -0x1680(%rbp)
movl $0x14, -0x1688(%rbp)
leaq 0x50957(%rip), %rdx     # 0x9047a
leaq -0x1688(%rbp), %rsi
callq 0x52d00
jmp 0x3fb31
leaq -0x1628(%rbp), %rdi
movq %rdi, -0x1680(%rbp)
movl $0xa, -0x168c(%rbp)
leaq 0x5083c(%rip), %rdx     # 0x9038c
leaq -0x168c(%rbp), %rsi
callq 0x52d00
jmp 0x3fb5e
leaq -0x1600(%rbp), %rdi
movq %rdi, -0x1680(%rbp)
movl $0x4, -0x1690(%rbp)
leaq 0x5092a(%rip), %rdx     # 0x904a7
leaq -0x1690(%rbp), %rsi
callq 0x52d00
jmp 0x3fb8b
leaq -0x15d8(%rbp), %rdi
movq %rdi, -0x1680(%rbp)
movl $0x3, -0x1694(%rbp)
leaq 0x50587(%rip), %rdx     # 0x90131
leaq -0x1694(%rbp), %rsi
callq 0x52d00
jmp 0x3fbb8
leaq -0x15b0(%rbp), %rdi
movq %rdi, -0x1680(%rbp)
movl $0x2, -0x1698(%rbp)
leaq 0x50557(%rip), %rdx     # 0x9012e
leaq -0x1698(%rbp), %rsi
callq 0x52d00
jmp 0x3fbe5
leaq -0x1588(%rbp), %rdi
movq %rdi, -0x1680(%rbp)
movl $0x1, -0x169c(%rbp)
leaq 0x50527(%rip), %rdx     # 0x9012b
leaq -0x169c(%rbp), %rsi
callq 0x52d00
jmp 0x3fc12
leaq -0x1678(%rbp), %rax
movq %rax, -0x1560(%rbp)
movq $0x7, -0x1558(%rbp)
leaq -0x169d(%rbp), %rdi
movq %rdi, -0x1c68(%rbp)
callq 0x52da0
movq -0x1c68(%rbp), %rcx
movq -0x1560(%rbp), %rsi
movq -0x1558(%rbp), %rdx
leaq -0x1550(%rbp), %rdi
callq 0x58a20
jmp 0x3fc61
leaq -0x169d(%rbp), %rdi
callq 0x52e90
leaq -0x1678(%rbp), %rax
movq %rax, -0x1c78(%rbp)
addq $0x118, %rax            # imm = 0x118
movq %rax, -0x1c70(%rbp)
movq -0x1c70(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1c80(%rbp)
callq 0x52d80
movq -0x1c78(%rbp), %rcx
movq -0x1c80(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1c70(%rbp)
jne 0x3fc88
leaq -0x1538(%rbp), %rdi
leaq -0x1550(%rbp), %rsi
callq 0x58ac0
movb %al, -0x1c81(%rbp)
jmp 0x3fcd4
movb -0x1c81(%rbp), %al
testb $0x1, %al
jne 0x3fce0
jmp 0x3fce5
jmp 0x3ff1c
leaq 0x5040c(%rip), %rdi     # 0x900f8
leaq 0x503a1(%rip), %rsi     # 0x90094
movl $0xa08, %edx            # imm = 0xA08
leaq 0x507f6(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x1208(%rbp), %rdi
callq 0x588a0
leaq -0x10c8(%rbp), %rdi
callq 0x53080
leaq -0x1070(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3fd53
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1390(%rbp), %rdi
callq 0x34a8
leaq -0x1391(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
movq -0x1500(%rbp), %rax
leaq -0x14f8(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x1c90(%rbp)
je 0x3fdbb
movq -0x1c90(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1c98(%rbp)
callq 0x52d80
movq -0x1c98(%rbp), %rax
leaq -0x14f8(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x1c90(%rbp)
jne 0x3fd8a
jmp 0x403a7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x151f(%rbp), %rdi
callq 0x52e90
leaq -0x14f8(%rbp), %rax
movq %rax, -0x1ca8(%rbp)
addq $0x118, %rax            # imm = 0x118
movq %rax, -0x1ca0(%rbp)
movq -0x1ca0(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1cb0(%rbp)
callq 0x52d80
movq -0x1ca8(%rbp), %rcx
movq -0x1cb0(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1ca0(%rbp)
jne 0x3fdf3
jmp 0x403a7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x4039b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
movq -0x1680(%rbp), %rax
leaq -0x1678(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x1cb8(%rbp)
je 0x3fe91
movq -0x1cb8(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1cc0(%rbp)
callq 0x52d80
movq -0x1cc0(%rbp), %rax
leaq -0x1678(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x1cb8(%rbp)
jne 0x3fe60
jmp 0x4038f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x169d(%rbp), %rdi
callq 0x52e90
leaq -0x1678(%rbp), %rax
movq %rax, -0x1cd0(%rbp)
addq $0x118, %rax            # imm = 0x118
movq %rax, -0x1cc8(%rbp)
movq -0x1cc8(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1cd8(%rbp)
callq 0x52d80
movq -0x1cd0(%rbp), %rcx
movq -0x1cd8(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1cc8(%rbp)
jne 0x3fec9
jmp 0x4038f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1550(%rbp), %rdi
callq 0x58bf0
jmp 0x4038f
leaq -0x1550(%rbp), %rdi
callq 0x58bf0
leaq -0x1538(%rbp), %rdi
callq 0x58bf0
leaq -0x13d0(%rbp), %rdi
callq 0x53130
leaq -0x1370(%rbp), %rdi
callq 0x52180
leaq -0x16e9(%rbp), %rdi
movq %rdi, -0x1ce0(%rbp)
callq 0x3450
movq -0x1ce0(%rbp), %rdx
leaq 0x501dd(%rip), %rsi     # 0x9014a
leaq -0x16e8(%rbp), %rdi
callq 0x52000
jmp 0x3ff7b
leaq -0x16c8(%rbp), %rdi
leaq -0x16e8(%rbp), %rsi
movl $0x1, %edx
callq 0x520b0
jmp 0x3ff95
leaq -0x16e8(%rbp), %rdi
callq 0x34a8
leaq -0x16e9(%rbp), %rdi
callq 0x32d0
leaq -0x1828(%rbp), %rdi
movq %rdi, -0x1830(%rbp)
movl $0x2, -0x1834(%rbp)
leaq 0x5015f(%rip), %rdx     # 0x9012b
leaq -0x1834(%rbp), %rsi
callq 0x52d00
jmp 0x3ffda
leaq -0x1800(%rbp), %rdi
movq %rdi, -0x1830(%rbp)
movl $0x2, -0x1838(%rbp)
leaq 0x50135(%rip), %rdx     # 0x9012e
leaq -0x1838(%rbp), %rsi
callq 0x52d00
jmp 0x40007
leaq -0x17d8(%rbp), %rdi
movq %rdi, -0x1830(%rbp)
movl $0x4, -0x183c(%rbp)
leaq 0x5010b(%rip), %rdx     # 0x90131
leaq -0x183c(%rbp), %rsi
callq 0x52d00
jmp 0x40034
leaq -0x17b0(%rbp), %rdi
movq %rdi, -0x1830(%rbp)
movl $0x4, -0x1840(%rbp)
leaq 0x50454(%rip), %rdx     # 0x904a7
leaq -0x1840(%rbp), %rsi
callq 0x52d00
jmp 0x40061
leaq -0x1788(%rbp), %rdi
movq %rdi, -0x1830(%rbp)
movl $0xa, -0x1844(%rbp)
leaq 0x5030c(%rip), %rdx     # 0x9038c
leaq -0x1844(%rbp), %rsi
callq 0x52d00
jmp 0x4008e
leaq -0x1760(%rbp), %rdi
movq %rdi, -0x1830(%rbp)
movl $0xa, -0x1848(%rbp)
leaq 0x503cd(%rip), %rdx     # 0x9047a
leaq -0x1848(%rbp), %rsi
callq 0x52d00
jmp 0x400bb
leaq -0x1828(%rbp), %rax
movq %rax, -0x1738(%rbp)
movq $0x6, -0x1730(%rbp)
leaq -0x184b(%rbp), %rdi
movq %rdi, -0x1ce8(%rbp)
callq 0x52da0
movq -0x1ce8(%rbp), %rcx
movq -0x1738(%rbp), %rsi
movq -0x1730(%rbp), %rdx
movq %rsp, %rax
movq %rcx, (%rax)
xorl %eax, %eax
movl %eax, %ecx
leaq -0x1728(%rbp), %rdi
leaq -0x1849(%rbp), %r8
leaq -0x184a(%rbp), %r9
callq 0x53150
jmp 0x40122
leaq -0x184b(%rbp), %rdi
callq 0x52e90
leaq -0x1828(%rbp), %rax
movq %rax, -0x1cf8(%rbp)
addq $0xf0, %rax
movq %rax, -0x1cf0(%rbp)
movq -0x1cf0(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1d00(%rbp)
callq 0x52d80
movq -0x1cf8(%rbp), %rcx
movq -0x1d00(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1cf0(%rbp)
jne 0x40149
leaq -0x1868(%rbp), %rdi
leaq -0x1728(%rbp), %rsi
callq 0x58c10
jmp 0x4018f
leaq -0x1980(%rbp), %rdi
movq %rdi, -0x1988(%rbp)
movl $0xa, -0x198c(%rbp)
leaq 0x501de(%rip), %rdx     # 0x9038c
leaq -0x198c(%rbp), %rsi
callq 0x52d00
jmp 0x401bc
leaq -0x1958(%rbp), %rdi
movq %rdi, -0x1988(%rbp)
movl $0xa, -0x1990(%rbp)
leaq 0x5029f(%rip), %rdx     # 0x9047a
leaq -0x1990(%rbp), %rsi
callq 0x52d00
jmp 0x401e9
leaq -0x1930(%rbp), %rdi
movq %rdi, -0x1988(%rbp)
movl $0x4, -0x1994(%rbp)
leaq 0x4ff29(%rip), %rdx     # 0x90131
leaq -0x1994(%rbp), %rsi
callq 0x52d00
jmp 0x40216
leaq -0x1908(%rbp), %rdi
movq %rdi, -0x1988(%rbp)
movl $0x4, -0x1998(%rbp)
leaq 0x50272(%rip), %rdx     # 0x904a7
leaq -0x1998(%rbp), %rsi
callq 0x52d00
jmp 0x40243
leaq -0x18e0(%rbp), %rdi
movq %rdi, -0x1988(%rbp)
movl $0x2, -0x199c(%rbp)
leaq 0x4fec9(%rip), %rdx     # 0x9012b
leaq -0x199c(%rbp), %rsi
callq 0x52d00
jmp 0x40270
leaq -0x18b8(%rbp), %rdi
movq %rdi, -0x1988(%rbp)
movl $0x2, -0x19a0(%rbp)
leaq 0x4fe9f(%rip), %rdx     # 0x9012e
leaq -0x19a0(%rbp), %rsi
callq 0x52d00
jmp 0x4029d
leaq -0x1980(%rbp), %rax
movq %rax, -0x1890(%rbp)
movq $0x6, -0x1888(%rbp)
leaq -0x19a1(%rbp), %rdi
movq %rdi, -0x1d08(%rbp)
callq 0x52da0
movq -0x1d08(%rbp), %rcx
movq -0x1890(%rbp), %rsi
movq -0x1888(%rbp), %rdx
leaq -0x1880(%rbp), %rdi
callq 0x58a20
jmp 0x402ec
leaq -0x19a1(%rbp), %rdi
callq 0x52e90
leaq -0x1980(%rbp), %rax
movq %rax, -0x1d18(%rbp)
addq $0xf0, %rax
movq %rax, -0x1d10(%rbp)
movq -0x1d10(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1d20(%rbp)
callq 0x52d80
movq -0x1d18(%rbp), %rcx
movq -0x1d20(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1d10(%rbp)
jne 0x40313
leaq -0x1868(%rbp), %rdi
leaq -0x1880(%rbp), %rsi
callq 0x58ac0
movb %al, -0x1d21(%rbp)
jmp 0x4035f
movb -0x1d21(%rbp), %al
testb $0x1, %al
jne 0x4036b
jmp 0x40370
jmp 0x405a1
leaq 0x4fd81(%rip), %rdi     # 0x900f8
leaq 0x4fd16(%rip), %rsi     # 0x90094
movl $0xa10, %edx            # imm = 0xA10
leaq 0x5016b(%rip), %rcx     # 0x904f5
callq 0x3170
leaq -0x1538(%rbp), %rdi
callq 0x58bf0
leaq -0x13d0(%rbp), %rdi
callq 0x53130
leaq -0x1370(%rbp), %rdi
callq 0x52180
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x403de
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x16e8(%rbp), %rdi
callq 0x34a8
leaq -0x16e9(%rbp), %rdi
callq 0x32d0
jmp 0x405fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
movq -0x1830(%rbp), %rax
leaq -0x1828(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x1d30(%rbp)
je 0x40446
movq -0x1d30(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1d38(%rbp)
callq 0x52d80
movq -0x1d38(%rbp), %rax
leaq -0x1828(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x1d30(%rbp)
jne 0x40415
jmp 0x405f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x184b(%rbp), %rdi
callq 0x52e90
leaq -0x1828(%rbp), %rax
movq %rax, -0x1d48(%rbp)
addq $0xf0, %rax
movq %rax, -0x1d40(%rbp)
movq -0x1d40(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1d50(%rbp)
callq 0x52d80
movq -0x1d48(%rbp), %rcx
movq -0x1d50(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1d40(%rbp)
jne 0x4047e
jmp 0x405f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x405e6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
movq -0x1988(%rbp), %rax
leaq -0x1980(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x1d58(%rbp)
je 0x4051c
movq -0x1d58(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1d60(%rbp)
callq 0x52d80
movq -0x1d60(%rbp), %rax
leaq -0x1980(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x1d58(%rbp)
jne 0x404eb
jmp 0x405da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x19a1(%rbp), %rdi
callq 0x52e90
leaq -0x1980(%rbp), %rax
movq %rax, -0x1d70(%rbp)
addq $0xf0, %rax
movq %rax, -0x1d68(%rbp)
movq -0x1d68(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x1d78(%rbp)
callq 0x52d80
movq -0x1d70(%rbp), %rcx
movq -0x1d78(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x1d68(%rbp)
jne 0x40554
jmp 0x405da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1880(%rbp), %rdi
callq 0x58bf0
jmp 0x405da
leaq -0x1880(%rbp), %rdi
callq 0x58bf0
leaq -0x1868(%rbp), %rdi
callq 0x58bf0
leaq -0x1728(%rbp), %rdi
callq 0x531e0
leaq -0x16c8(%rbp), %rdi
callq 0x52180
addq $0x1d80, %rsp           # imm = 0x1D80
popq %rbp
retq
leaq -0x1868(%rbp), %rdi
callq 0x58bf0
leaq -0x1728(%rbp), %rdi
callq 0x531e0
leaq -0x16c8(%rbp), %rdi
callq 0x52180
movq -0x58(%rbp), %rdi
callq 0x3440
nopw (%rax,%rax)