// File: /workspace/github_cpp_makefile_star2_O2/Konano[P]UselessDatabase/main.cpp
// Function: import_data_csv()
void import_data_csv() {
    assert(cleanDatabase("orderdb") == 0);

    Database *db = new Database("orderdb", true);
    Table* table;

    // id = 0
    table = db->createTable("part", 9, new Type[9]{
        Type("P_PARTKEY", INT), 
        Type("P_NAME", VARCHAR, 55), 
        Type("P_MFGR", CHAR, 25),
        Type("P_BRAND", CHAR, 10), 
        Type("P_TYPE", VARCHAR, 25), 
        Type("P_SIZE", INT), 
        Type("P_CONTAINER", CHAR, 10), 
        Type("P_RETAILPRICE", DECIMAL), 
        Type("P_COMMENT", VARCHAR, 23),
    });
    assert(table->createPrimaryKey(new PrimaryKey(table, 1, new int[1]{0})) == 0);
    import_data(table, "data/part.csv", ',');

    // id = 1
    table = db->createTable("region", 3, new Type[3]{
        Type("R_REGIONKEY", INT), 
        Type("R_NAME", CHAR, 25), 
        Type("R_COMMENT", VARCHAR, 152),
    });
    assert(table->createPrimaryKey(new PrimaryKey(table, 1, new int[1]{0})) == 0);
    import_data(table, "data/region.csv", ',');

    // id = 2
    table = db->createTable("nation", 4, new Type[4]{
        Type("N_NATIONKEY", INT), 
        Type("N_NAME", CHAR, 25), 
        Type("N_REGIONKEY", INT, 0, NULL, false),
        Type("N_COMMENT", VARCHAR, 152),
    });
    assert(table->createPrimaryKey(new PrimaryKey(table, 1, new int[1]{0})) == 0);
    assert(table->createForeignKey(new ForeignKey(table, 1, new int[1]{2}), db->table[1]->p_key) == 0);
    import_data(table, "data/nation.csv", ',');

    // id = 3
    table = db->createTable("supplier", 7, new Type[7]{
        Type("S_SUPPKEY", INT), 
        Type("S_NAME", CHAR, 25), 
        Type("S_ADDRESS", VARCHAR, 40),
        Type("S_NATIONKEY", INT, 0, NULL, false),
        Type("S_PHONE", CHAR, 15),
        Type("S_ACCTBAL", DECIMAL),
        Type("S_COMMENT", VARCHAR, 101),
    });
    assert(table->createPrimaryKey(new PrimaryKey(table, 1, new int[1]{0})) == 0);
    assert(table->createForeignKey(new ForeignKey(table, 1, new int[1]{3}), db->table[2]->p_key) == 0);
    import_data(table, "data/supplier.csv", ',');
    import_data(table, "data/region.csv", ',');

    // id = 4
    table = db->createTable("customer", 8, new Type[8]{
        Type("C_CUSTKEY", INT), 
        Type("C_NAME", CHAR, 25), 
        Type("C_ADDRESS", VARCHAR, 40),
        Type("C_NATIONKEY", INT, 0, NULL, false),
        Type("C_PHONE", CHAR, 15),
        Type("C_ACCTBAL", DECIMAL),
        Type("C_MKTSEGMENT", CHAR, 10),
        Type("C_COMMENT", VARCHAR, 117),
    });
    assert(table->createPrimaryKey(new PrimaryKey(table, 1, new int[1]{0})) == 0);
    assert(table->createForeignKey(new ForeignKey(table, 1, new int[1]{3}), db->table[2]->p_key) == 0);
    import_data(table, "data/customer.csv", ',');

    // id = 5
    table = db->createTable("partsupp", 5, new Type[5]{
        Type("PS_PARTKEY", INT, 0, NULL, false), 
        Type("PS_SUPPKEY", INT, 0, NULL, false), 
        Type("PS_AVAILQTY", INT),
        Type("PS_SUPPLYCOST", DECIMAL), 
        Type("PS_COMMENT", VARCHAR, 199),
    });
    assert(table->createPrimaryKey(new PrimaryKey(table, 2, new int[2]{0, 1})) == 0);
    assert(table->createForeignKey(new ForeignKey(table, 1, new int[1]{0}), db->table[0]->p_key) == 0);
    assert(table->createForeignKey(new ForeignKey(table, 1, new int[1]{1}), db->table[3]->p_key) == 0);
    import_data(table, "data/partsupp.csv", ',');
    import_data(table, "data/customer.csv", ',');

    // id = 6
    table = db->createTable("orders", 9, new Type[9]{
        Type("O_ORDERKEY", INT), 
        Type("O_CUSTKEY", INT, 0, NULL, false), 
        Type("O_ORDERSTATUS", CHAR, 1),
        Type("O_TOTALPRICE", DECIMAL), 
        Type("O_ORDERDATE", DATE),
        Type("O_ORDERPRIORITY", CHAR, 15),
        Type("O_CLERK", CHAR, 15),
        Type("O_SHIPPRIORITY", INT),
        Type("O_COMMENT", VARCHAR, 79),
    });
    assert(table->createPrimaryKey(new PrimaryKey(table, 1, new int[1]{0})) == 0);
    assert(table->createForeignKey(new ForeignKey(table, 1, new int[1]{1}), db->table[4]->p_key) == 0);
    import_data(table, "data/orders.csv", ',');

    // id = 7
    table = db->createTable("lineitem", 16, new Type[16]{
        Type("L_ORDERKEY", INT, 0, NULL, false), 
        Type("L_PARTKEY", INT, 0, NULL, false), 
        Type("L_SUPPKEY", INT, 0, NULL, false),
        Type("L_LINENUMBER", INT), 
        Type("L_QUANTITY", DECIMAL),
        Type("L_EXTENDEDPRICE", DECIMAL),
        Type("L_DISCOUNT", DECIMAL),
        Type("L_TAX", DECIMAL),
        Type("L_RETURNFLAG", CHAR, 1),
        Type("L_LINESTATUS", CHAR, 1),
        Type("L_SHIPDATE", DATE),
        Type("L_COMMITDATE", DATE),
        Type("L_RECEIPTDATE", DATE),
        Type("L_SHIPINSTRUCT", CHAR, 25),
        Type("L_SHIPMODE", CHAR, 10),
        Type("L_COMMENT", VARCHAR, 44),
    });
    assert(table->createPrimaryKey(new PrimaryKey(table, 2, new int[2]{0, 3})) == 0);
    assert(table->createForeignKey(new ForeignKey(table, 1, new int[1]{0}), db->table[6]->p_key) == 0);
    assert(table->createForeignKey(new ForeignKey(table, 2, new int[2]{1, 2}), db->table[5]->p_key) == 0);
    import_data(table, "data/lineitem.csv", ',');

    delete db;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x200, %rsp            # imm = 0x200
leaq 0x1326c(%rip), %rdi     # 0x3825b
callq 0x7c38
testl %eax, %eax
jne 0x264a9
movl $0x9050, %edi           # imm = 0x9050
callq 0x53e0
movq %rax, %rbx
leaq 0x1324b(%rip), %rsi     # 0x3825b
pushq $0x1
popq %rdx
movq %rax, %rdi
callq 0x61ca
movl $0x200, %edi            # imm = 0x200
callq 0x5040
movq %rax, %r15
movq $0x9, (%rax)
leaq 0x8(%rax), %r14
leaq 0x1e8(%rsp), %r8
andq $0x0, (%r8)
leaq 0x13260(%rip), %rsi     # 0x382a6
pushq $0x1
popq %r9
movq %r14, %rdi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x40(%r15), %rdi
leaq 0x1e0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x13243(%rip), %rsi     # 0x382b0
pushq $0x2
popq %rdx
pushq $0x37
popq %rcx
pushq $0x1
popq %r9
callq 0x8e1a
leaq 0x78(%r15), %rdi
leaq 0x1d8(%rsp), %r8
andq $0x0, (%r8)
leaq 0x13224(%rip), %rsi     # 0x382b7
pushq $0x19
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0xb0(%r15), %rdi
leaq 0x1d0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x13203(%rip), %rsi     # 0x382be
pushq $0xa
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0xe8(%r15), %rdi
leaq 0x1c8(%rsp), %r8
andq $0x0, (%r8)
leaq 0x131e3(%rip), %rsi     # 0x382c6
pushq $0x2
popq %rdx
pushq $0x19
popq %rcx
pushq $0x1
popq %r9
callq 0x8e1a
leaq 0x120(%r15), %rdi
leaq 0x1c0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x131c1(%rip), %rsi     # 0x382cd
pushq $0x1
popq %r9
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x158(%r15), %rdi
leaq 0x1b8(%rsp), %r8
andq $0x0, (%r8)
leaq 0x131a1(%rip), %rsi     # 0x382d4
pushq $0xa
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0x190(%r15), %rdi
leaq 0x1b0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x13185(%rip), %rsi     # 0x382e0
pushq $0x4
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x1c8(%r15), %rdi
leaq 0x1a8(%rsp), %r8
andq $0x0, (%r8)
movb $0x1, %bpl
leaq 0x13168(%rip), %rsi     # 0x382ee
pushq $0x2
popq %rdx
pushq $0x17
popq %rcx
pushq $0x1
popq %r9
callq 0x8e1a
xorl %ebp, %ebp
leaq 0x13103(%rip), %rsi     # 0x382a1
pushq $0x9
popq %rdx
movq %rbx, %rdi
movq %r14, %rcx
callq 0x64d2
movq %rax, %r14
movq 0x1a8(%rsp), %rdi
testq %rdi, %rdi
je 0x251c2
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1b0(%rsp), %rdi
testq %rdi, %rdi
je 0x251d5
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1b8(%rsp), %rdi
testq %rdi, %rdi
je 0x251e8
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1c0(%rsp), %rdi
testq %rdi, %rdi
je 0x251fb
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1c8(%rsp), %rdi
testq %rdi, %rdi
je 0x2520e
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1d0(%rsp), %rdi
testq %rdi, %rdi
je 0x25221
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1d8(%rsp), %rdi
testq %rdi, %rdi
je 0x25234
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1e0(%rsp), %rdi
testq %rdi, %rdi
je 0x25247
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1e8(%rsp), %rdi
testq %rdi, %rdi
je 0x2525a
movq (%rdi), %rax
callq *0x8(%rax)
pushq $0x68
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
andl $0x0, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x27288
movq %r14, %rdi
movq %r15, %rsi
callq 0x1da4e
testl %eax, %eax
jne 0x264c8
leaq 0x136b4(%rip), %rsi     # 0x3894f
pushq $0x2c
popq %rdx
movq %r14, %rdi
callq 0x22b88
movl $0xb0, %edi
callq 0x5040
movq %rax, %r15
movq $0x3, (%rax)
leaq 0x8(%rax), %r14
leaq 0x1a0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x13082(%rip), %rsi     # 0x38353
pushq $0x1
popq %r9
movq %r14, %rdi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x40(%r15), %rdi
leaq 0x198(%rsp), %r8
andq $0x0, (%r8)
leaq 0x13067(%rip), %rsi     # 0x3835f
pushq $0x19
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0x78(%r15), %rdi
leaq 0x190(%rsp), %r8
andq $0x0, (%r8)
movb $0x1, %bpl
leaq 0x13046(%rip), %rsi     # 0x38366
pushq $0x2
popq %rdx
pushq $0x1
popq %r9
movl $0x98, %ecx
callq 0x8e1a
xorl %ebp, %ebp
leaq 0x13012(%rip), %rsi     # 0x3834c
pushq $0x3
popq %rdx
movq %rbx, %rdi
movq %r14, %rcx
callq 0x64d2
movq %rax, %r14
movq 0x190(%rsp), %rdi
testq %rdi, %rdi
je 0x2535e
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x198(%rsp), %rdi
testq %rdi, %rdi
je 0x25371
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1a0(%rsp), %rdi
testq %rdi, %rdi
je 0x25384
movq (%rdi), %rax
callq *0x8(%rax)
pushq $0x68
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
andl $0x0, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x27288
movq %r14, %rdi
movq %r15, %rsi
callq 0x1da4e
testl %eax, %eax
jne 0x264e7
leaq 0x13598(%rip), %rsi     # 0x3895d
pushq $0x2c
popq %rdx
movq %r14, %rdi
callq 0x22b88
movl $0xe8, %edi
callq 0x5040
movq %rax, %r15
movq $0x4, (%rax)
leaq 0x8(%rax), %r14
leaq 0x188(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12f8c(%rip), %rsi     # 0x38387
pushq $0x1
popq %r9
movq %r14, %rdi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x40(%r15), %rdi
leaq 0x180(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12f71(%rip), %rsi     # 0x38393
pushq $0x19
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
movq %rsp, %rsi
andq $0x0, (%rsi)
leaq 0x48(%rsp), %rdi
callq 0x272aa
leaq 0x78(%r15), %rdi
leaq 0x12f4e(%rip), %rsi     # 0x3839a
leaq 0x48(%rsp), %r8
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x8e1a
leaq 0xb0(%r15), %rdi
leaq 0x178(%rsp), %r8
andq $0x0, (%r8)
movb $0x1, %bpl
leaq 0x12f2c(%rip), %rsi     # 0x383a6
pushq $0x2
popq %rdx
pushq $0x1
popq %r9
movl $0x98, %ecx
callq 0x8e1a
xorl %ebp, %ebp
leaq 0x12eec(%rip), %rsi     # 0x38380
pushq $0x4
popq %rdx
movq %rbx, %rdi
movq %r14, %rcx
callq 0x64d2
movq %rax, %r14
movq 0x178(%rsp), %rdi
testq %rdi, %rdi
je 0x254b8
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x48(%rsp), %rdi
testq %rdi, %rdi
je 0x254c8
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x180(%rsp), %rdi
testq %rdi, %rdi
je 0x254db
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x188(%rsp), %rdi
testq %rdi, %rdi
je 0x254ee
movq (%rdi), %rax
callq *0x8(%rax)
pushq $0x68
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
andl $0x0, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x27288
movq %r14, %rdi
movq %r15, %rsi
callq 0x1da4e
testl %eax, %eax
jne 0x26506
pushq $0x58
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
movl $0x2, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x272d8
movq 0x28(%rbx), %rax
movq 0x758(%rax), %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x1df80
testl %eax, %eax
jne 0x26525
leaq 0x133f6(%rip), %rsi     # 0x3896d
pushq $0x2c
popq %rdx
movq %r14, %rdi
callq 0x22b88
movl $0x190, %edi            # imm = 0x190
callq 0x5040
movq %rax, %r15
movq $0x7, (%rax)
leaq 0x8(%rax), %r14
leaq 0x170(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12f93(%rip), %rsi     # 0x38540
pushq $0x1
popq %r9
movq %r14, %rdi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x40(%r15), %rdi
leaq 0x168(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12e50(%rip), %rsi     # 0x38424
pushq $0x19
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0x78(%r15), %rdi
leaq 0x160(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12e32(%rip), %rsi     # 0x3842b
pushq $0x2
popq %rdx
pushq $0x28
popq %rcx
pushq $0x1
popq %r9
callq 0x8e1a
movq %rsp, %rsi
andq $0x0, (%rsi)
leaq 0x40(%rsp), %rdi
callq 0x272aa
leaq 0xb0(%r15), %rdi
leaq 0x12e0e(%rip), %rsi     # 0x38435
leaq 0x40(%rsp), %r8
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x8e1a
leaq 0xe8(%r15), %rdi
leaq 0x158(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12def(%rip), %rsi     # 0x38441
pushq $0xf
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0x120(%r15), %rdi
leaq 0x150(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12dcf(%rip), %rsi     # 0x38449
pushq $0x4
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x158(%r15), %rdi
leaq 0x148(%rsp), %r8
andq $0x0, (%r8)
movb $0x1, %bpl
leaq 0x12ec0(%rip), %rsi     # 0x38565
pushq $0x2
popq %rdx
pushq $0x65
popq %rcx
pushq $0x1
popq %r9
callq 0x8e1a
xorl %ebp, %ebp
leaq 0x12d5e(%rip), %rsi     # 0x3841b
pushq $0x7
popq %rdx
movq %rbx, %rdi
movq %r14, %rcx
callq 0x64d2
movq %rax, %r14
movq 0x148(%rsp), %rdi
testq %rdi, %rdi
je 0x256e1
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x150(%rsp), %rdi
testq %rdi, %rdi
je 0x256f4
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0x25707
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x40(%rsp), %rdi
testq %rdi, %rdi
je 0x25717
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x160(%rsp), %rdi
testq %rdi, %rdi
je 0x2572a
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x168(%rsp), %rdi
testq %rdi, %rdi
je 0x2573d
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x170(%rsp), %rdi
testq %rdi, %rdi
je 0x25750
movq (%rdi), %rax
callq *0x8(%rax)
pushq $0x68
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
andl $0x0, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x27288
movq %r14, %rdi
movq %r15, %rsi
callq 0x1da4e
testl %eax, %eax
jne 0x26544
pushq $0x58
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
movl $0x3, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x272d8
movq 0x30(%rbx), %rax
movq 0x758(%rax), %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x1df80
testl %eax, %eax
jne 0x26563
leaq 0x131a4(%rip), %rsi     # 0x3897d
pushq $0x2c
popq %rbp
movq %r14, %rdi
movl %ebp, %edx
callq 0x22b88
leaq 0x13170(%rip), %rsi     # 0x3895d
movq %r14, %rdi
movl %ebp, %edx
callq 0x22b88
movl $0x1c8, %edi            # imm = 0x1C8
callq 0x5040
movq %rax, %r15
movq $0x8, (%rax)
leaq 0x8(%rax), %r14
leaq 0x140(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12ca7(%rip), %rsi     # 0x384c9
pushq $0x1
popq %r9
movq %r14, %rdi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x40(%r15), %rdi
leaq 0x138(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12c8a(%rip), %rsi     # 0x384d3
pushq $0x19
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0x78(%r15), %rdi
leaq 0x130(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12c6c(%rip), %rsi     # 0x384da
pushq $0x2
popq %rdx
pushq $0x28
popq %rcx
pushq $0x1
popq %r9
callq 0x8e1a
movq %rsp, %rsi
andq $0x0, (%rsi)
leaq 0x38(%rsp), %rdi
callq 0x272aa
leaq 0xb0(%r15), %rdi
leaq 0x12c48(%rip), %rsi     # 0x384e4
leaq 0x38(%rsp), %r8
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x8e1a
leaq 0xe8(%r15), %rdi
leaq 0x128(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12c29(%rip), %rsi     # 0x384f0
pushq $0xf
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0x120(%r15), %rdi
leaq 0x120(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12c09(%rip), %rsi     # 0x384f8
pushq $0x4
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x158(%r15), %rdi
leaq 0x118(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12beb(%rip), %rsi     # 0x38502
pushq $0xa
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0x190(%r15), %rdi
leaq 0x110(%rsp), %r8
andq $0x0, (%r8)
movb $0x1, %bpl
leaq 0x12bcd(%rip), %rsi     # 0x3850f
pushq $0x2
popq %rdx
pushq $0x75
popq %rcx
pushq $0x1
popq %r9
callq 0x8e1a
xorl %ebp, %ebp
leaq 0x12b66(%rip), %rsi     # 0x384c0
pushq $0x8
popq %rdx
movq %rbx, %rdi
movq %r14, %rcx
callq 0x64d2
movq %rax, %r14
movq 0x110(%rsp), %rdi
testq %rdi, %rdi
je 0x2597e
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x118(%rsp), %rdi
testq %rdi, %rdi
je 0x25991
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x120(%rsp), %rdi
testq %rdi, %rdi
je 0x259a4
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x128(%rsp), %rdi
testq %rdi, %rdi
je 0x259b7
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x38(%rsp), %rdi
testq %rdi, %rdi
je 0x259c7
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x130(%rsp), %rdi
testq %rdi, %rdi
je 0x259da
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x138(%rsp), %rdi
testq %rdi, %rdi
je 0x259ed
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x140(%rsp), %rdi
testq %rdi, %rdi
je 0x25a00
movq (%rdi), %rax
callq *0x8(%rax)
pushq $0x68
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
andl $0x0, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x27288
movq %r14, %rdi
movq %r15, %rsi
callq 0x1da4e
testl %eax, %eax
jne 0x26582
pushq $0x58
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
movl $0x3, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x272d8
movq 0x30(%rbx), %rax
movq 0x758(%rax), %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x1df80
testl %eax, %eax
jne 0x265a1
leaq 0x12f06(%rip), %rsi     # 0x3898f
pushq $0x2c
popq %rdx
movq %r14, %rdi
callq 0x22b88
movl $0x120, %edi            # imm = 0x120
callq 0x5040
movq %rax, %r15
movq $0x5, (%rax)
movq %rsp, %rsi
andq $0x0, (%rsi)
leaq 0x30(%rsp), %rdi
callq 0x272aa
leaq 0x8(%r15), %r14
leaq 0x12a70(%rip), %rsi     # 0x38534
leaq 0x30(%rsp), %r8
movq %r14, %rdi
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x8e1a
leaq 0x1f0(%rsp), %rsi
andq $0x0, (%rsi)
leaq 0x28(%rsp), %rdi
callq 0x272aa
leaq 0x40(%r15), %rdi
leaq 0x12a46(%rip), %rsi     # 0x3853f
leaq 0x28(%rsp), %r8
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x8e1a
leaq 0x78(%r15), %rdi
leaq 0x108(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12a29(%rip), %rsi     # 0x3854a
pushq $0x1
popq %r9
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x8e1a
leaq 0xb0(%r15), %rdi
leaq 0x100(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12a0e(%rip), %rsi     # 0x38556
pushq $0x4
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
movq %r15, %rdi
addq $0xe8, %rdi
leaq 0xf8(%rsp), %r8
andq $0x0, (%r8)
movb $0x1, %bpl
leaq 0x129ee(%rip), %rsi     # 0x38564
pushq $0x2
popq %rdx
pushq $0x1
popq %r9
movl $0xc7, %ecx
callq 0x8e1a
xorl %ebp, %ebp
leaq 0x1299b(%rip), %rsi     # 0x3852b
pushq $0x5
popq %rdx
movq %rbx, %rdi
movq %r14, %rcx
callq 0x64d2
movq %rax, %r14
movq 0xf8(%rsp), %rdi
testq %rdi, %rdi
je 0x25bb4
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x100(%rsp), %rdi
testq %rdi, %rdi
je 0x25bc7
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x108(%rsp), %rdi
testq %rdi, %rdi
je 0x25bda
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x28(%rsp), %rdi
testq %rdi, %rdi
je 0x25bea
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x30(%rsp), %rdi
testq %rdi, %rdi
je 0x25bfa
movq (%rdi), %rax
callq *0x8(%rax)
pushq $0x68
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x8
popq %r12
movq %r12, %rdi
callq 0x5040
movabsq $0x100000000, %rcx      # imm = 0x100000000
movq %rcx, (%rax)
pushq $0x2
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x27288
movq %r14, %rdi
movq %r15, %rsi
callq 0x1da4e
testl %eax, %eax
jne 0x265c0
pushq $0x58
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
andl $0x0, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x272d8
movq 0x20(%rbx), %rax
movq 0x758(%rax), %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x1df80
testl %eax, %eax
jne 0x265df
pushq $0x58
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
movl $0x1, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x272d8
movq 0x38(%rbx), %rax
movq 0x758(%rax), %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x1df80
testl %eax, %eax
jne 0x265fe
leaq 0x12ccb(%rip), %rsi     # 0x389a1
pushq $0x2c
popq %rbp
movq %r14, %rdi
movl %ebp, %edx
callq 0x22b88
leaq 0x12ca5(%rip), %rsi     # 0x3898f
movq %r14, %rdi
movl %ebp, %edx
callq 0x22b88
movl $0x200, %edi            # imm = 0x200
callq 0x5040
movq %rax, %r15
movq $0x9, (%rax)
leaq 0x8(%rax), %r14
leaq 0xf0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12968(%rip), %rsi     # 0x38687
pushq $0x1
popq %r9
movq %r14, %rdi
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x8e1a
movq %rsp, %rsi
andq $0x0, (%rsi)
leaq 0x20(%rsp), %rdi
callq 0x272aa
leaq 0x40(%r15), %rdi
leaq 0x12947(%rip), %rsi     # 0x38692
leaq 0x20(%rsp), %r8
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x8e1a
leaq 0x78(%r15), %rdi
leaq 0xe8(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12929(%rip), %rsi     # 0x3869c
pushq $0x1
popq %rcx
movl %ecx, %edx
movl %ecx, %r9d
callq 0x8e1a
leaq 0xb0(%r15), %rdi
leaq 0xe0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12910(%rip), %rsi     # 0x386aa
pushq $0x4
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0xe8(%r15), %rdi
leaq 0xd8(%rsp), %r8
andq $0x0, (%r8)
leaq 0x128f5(%rip), %rsi     # 0x386b7
pushq $0x3
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x120(%r15), %rdi
leaq 0xd0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x128d9(%rip), %rsi     # 0x386c3
pushq $0xf
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0x158(%r15), %rdi
leaq 0xc8(%rsp), %r8
andq $0x0, (%r8)
leaq 0x128c1(%rip), %rsi     # 0x386d3
pushq $0xf
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0x190(%r15), %rdi
leaq 0xc0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x128a1(%rip), %rsi     # 0x386db
pushq $0x1
popq %r9
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x1c8(%r15), %rdi
leaq 0xb8(%rsp), %r8
andq $0x0, (%r8)
movb $0x1, %bpl
leaq 0x12886(%rip), %rsi     # 0x386ea
pushq $0x2
popq %rdx
pushq $0x4f
popq %rcx
pushq $0x1
popq %r9
callq 0x8e1a
xorl %ebp, %ebp
leaq 0x12804(%rip), %rsi     # 0x38680
pushq $0x9
popq %rdx
movq %rbx, %rdi
movq %r14, %rcx
callq 0x64d2
movq %rax, %r14
movq 0xb8(%rsp), %rdi
testq %rdi, %rdi
je 0x25ea0
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xc0(%rsp), %rdi
testq %rdi, %rdi
je 0x25eb3
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xc8(%rsp), %rdi
testq %rdi, %rdi
je 0x25ec6
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xd0(%rsp), %rdi
testq %rdi, %rdi
je 0x25ed9
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0x25eec
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xe0(%rsp), %rdi
testq %rdi, %rdi
je 0x25eff
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xe8(%rsp), %rdi
testq %rdi, %rdi
je 0x25f12
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x25f22
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xf0(%rsp), %rdi
testq %rdi, %rdi
je 0x25f35
movq (%rdi), %rax
callq *0x8(%rax)
pushq $0x68
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
andl $0x0, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x27288
movq %r14, %rdi
movq %r15, %rsi
callq 0x1da4e
testl %eax, %eax
jne 0x2661d
pushq $0x58
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
movl $0x1, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x272d8
movq 0x40(%rbx), %rax
movq 0x758(%rax), %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x1df80
testl %eax, %eax
jne 0x2663c
leaq 0x129f5(%rip), %rsi     # 0x389b3
pushq $0x2c
popq %rdx
movq %r14, %rdi
callq 0x22b88
movl $0x388, %edi            # imm = 0x388
callq 0x5040
movq %rax, %r15
movq $0x10, (%rax)
movq %rsp, %rsi
andq $0x0, (%rsi)
leaq 0x18(%rsp), %rdi
callq 0x272aa
leaq 0x8(%r15), %r14
leaq 0x1276f(%rip), %rsi     # 0x38768
leaq 0x18(%rsp), %r8
movq %r14, %rdi
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x8e1a
leaq 0x1f0(%rsp), %rsi
andq $0x0, (%rsi)
leaq 0x10(%rsp), %rdi
callq 0x272aa
leaq 0x40(%r15), %rdi
leaq 0x12745(%rip), %rsi     # 0x38773
leaq 0x10(%rsp), %r8
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x8e1a
leaq 0x1f8(%rsp), %rsi
andq $0x0, (%rsi)
leaq 0x8(%rsp), %rdi
callq 0x272aa
leaq 0x78(%r15), %rdi
leaq 0x1271d(%rip), %rsi     # 0x3877d
leaq 0x8(%rsp), %r8
xorl %edx, %edx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x8e1a
leaq 0xb0(%r15), %rdi
leaq 0xb0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x126fc(%rip), %rsi     # 0x38787
pushq $0x1
popq %r9
xorl %edx, %edx
xorl %ecx, %ecx
callq 0x8e1a
leaq 0xe8(%r15), %rdi
leaq 0xa8(%rsp), %r8
andq $0x0, (%r8)
leaq 0x126e2(%rip), %rsi     # 0x38794
pushq $0x4
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x120(%r15), %rdi
leaq 0xa0(%rsp), %r8
andq $0x0, (%r8)
leaq 0x126c5(%rip), %rsi     # 0x3879f
pushq $0x4
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x158(%r15), %rdi
leaq 0x98(%rsp), %r8
andq $0x0, (%r8)
leaq 0x126ad(%rip), %rsi     # 0x387af
pushq $0x4
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x190(%r15), %rdi
leaq 0x90(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12690(%rip), %rsi     # 0x387ba
pushq $0x4
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x1c8(%r15), %rdi
leaq 0x88(%rsp), %r8
andq $0x0, (%r8)
leaq 0x1266e(%rip), %rsi     # 0x387c0
pushq $0x1
popq %rcx
movl %ecx, %edx
movl %ecx, %r9d
callq 0x8e1a
leaq 0x200(%r15), %rdi
leaq 0x80(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12654(%rip), %rsi     # 0x387cd
pushq $0x1
popq %rcx
movl %ecx, %edx
movl %ecx, %r9d
callq 0x8e1a
leaq 0x238(%r15), %rdi
leaq 0x78(%rsp), %r8
andq $0x0, (%r8)
leaq 0x1263d(%rip), %rsi     # 0x387da
pushq $0x3
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x270(%r15), %rdi
leaq 0x70(%rsp), %r8
andq $0x0, (%r8)
leaq 0x12623(%rip), %rsi     # 0x387e5
pushq $0x3
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x2a8(%r15), %rdi
leaq 0x68(%rsp), %r8
andq $0x0, (%r8)
leaq 0x1260b(%rip), %rsi     # 0x387f2
pushq $0x3
popq %rdx
pushq $0x1
popq %r9
xorl %ecx, %ecx
callq 0x8e1a
leaq 0x2e0(%r15), %rdi
leaq 0x60(%rsp), %r8
andq $0x0, (%r8)
leaq 0x125f4(%rip), %rsi     # 0x38800
pushq $0x19
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
leaq 0x318(%r15), %rdi
leaq 0x58(%rsp), %r8
andq $0x0, (%r8)
leaq 0x125de(%rip), %rsi     # 0x3880f
pushq $0xa
popq %rcx
pushq $0x1
popq %rdx
movl %edx, %r9d
callq 0x8e1a
movq %r15, %rdi
addq $0x350, %rdi            # imm = 0x350
leaq 0x50(%rsp), %r8
andq $0x0, (%r8)
movb $0x1, %bpl
leaq 0x125be(%rip), %rsi     # 0x3881a
pushq $0x2
popq %rdx
pushq $0x2c
popq %rcx
pushq $0x1
popq %r9
callq 0x8e1a
xorl %ebp, %ebp
leaq 0x124eb(%rip), %rsi     # 0x3875f
pushq $0x10
popq %rdx
movq %rbx, %rdi
movq %r14, %rcx
callq 0x64d2
movq %rax, %r14
movq 0x50(%rsp), %rdi
testq %rdi, %rdi
je 0x26295
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x58(%rsp), %rdi
testq %rdi, %rdi
je 0x262a5
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0x262b5
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x68(%rsp), %rdi
testq %rdi, %rdi
je 0x262c5
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x70(%rsp), %rdi
testq %rdi, %rdi
je 0x262d5
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x78(%rsp), %rdi
testq %rdi, %rdi
je 0x262e5
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x262f8
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x88(%rsp), %rdi
testq %rdi, %rdi
je 0x2630b
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x90(%rsp), %rdi
testq %rdi, %rdi
je 0x2631e
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x98(%rsp), %rdi
testq %rdi, %rdi
je 0x26331
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xa0(%rsp), %rdi
testq %rdi, %rdi
je 0x26344
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xa8(%rsp), %rdi
testq %rdi, %rdi
je 0x26357
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xb0(%rsp), %rdi
testq %rdi, %rdi
je 0x2636a
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x2637a
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x2638a
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x18(%rsp), %rdi
testq %rdi, %rdi
je 0x2639a
movq (%rdi), %rax
callq *0x8(%rax)
pushq $0x68
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x8
popq %rdi
callq 0x5040
movabsq $0x300000000, %rcx      # imm = 0x300000000
movq %rcx, (%rax)
pushq $0x2
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x27288
movq %r14, %rdi
movq %r15, %rsi
callq 0x1da4e
testl %eax, %eax
jne 0x2665b
pushq $0x58
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x4
popq %rdi
callq 0x5040
andl $0x0, (%rax)
pushq $0x1
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x272d8
movq 0x50(%rbx), %rax
movq 0x758(%rax), %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x1df80
testl %eax, %eax
jne 0x2667a
pushq $0x58
popq %rdi
callq 0x53e0
movq %rax, %r15
pushq $0x8
popq %rdi
callq 0x5040
movabsq $0x200000001, %rcx      # imm = 0x200000001
movq %rcx, (%rax)
pushq $0x2
popq %rdx
movq %r15, %rdi
movq %r14, %rsi
movq %rax, %rcx
callq 0x272d8
movq 0x48(%rbx), %rax
movq 0x758(%rax), %rdx
movq %r14, %rdi
movq %r15, %rsi
callq 0x1df80
testl %eax, %eax
jne 0x26699
leaq 0x1254a(%rip), %rsi     # 0x389c3
pushq $0x2c
popq %rdx
movq %r14, %rdi
callq 0x22b88
movq %rbx, %rdi
callq 0x6416
movl $0x9050, %esi           # imm = 0x9050
movq %rbx, %rdi
callq 0x53f0
addq $0x200, %rsp            # imm = 0x200
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
leaq 0x11db3(%rip), %rdi     # 0x38263
leaq 0x11dca(%rip), %rsi     # 0x38281
leaq 0x1247a(%rip), %rcx     # 0x38938
movl $0x1d5, %edx            # imm = 0x1D5
callq 0x52c0
leaq 0x11e29(%rip), %rdi     # 0x382f8
leaq 0x11dab(%rip), %rsi     # 0x38281
leaq 0x1245b(%rip), %rcx     # 0x38938
movl $0x1e6, %edx            # imm = 0x1E6
callq 0x52c0
leaq 0x11e0a(%rip), %rdi     # 0x382f8
leaq 0x11d8c(%rip), %rsi     # 0x38281
leaq 0x1243c(%rip), %rcx     # 0x38938
movl $0x1ef, %edx            # imm = 0x1EF
callq 0x52c0
leaq 0x11deb(%rip), %rdi     # 0x382f8
leaq 0x11d6d(%rip), %rsi     # 0x38281
leaq 0x1241d(%rip), %rcx     # 0x38938
movl $0x1f9, %edx            # imm = 0x1F9
callq 0x52c0
leaq 0x11e84(%rip), %rdi     # 0x383b0
leaq 0x11d4e(%rip), %rsi     # 0x38281
leaq 0x123fe(%rip), %rcx     # 0x38938
movl $0x1fa, %edx            # imm = 0x1FA
callq 0x52c0
leaq 0x11dad(%rip), %rdi     # 0x382f8
leaq 0x11d2f(%rip), %rsi     # 0x38281
leaq 0x123df(%rip), %rcx     # 0x38938
movl $0x207, %edx            # imm = 0x207
callq 0x52c0
leaq 0x11ee9(%rip), %rdi     # 0x38453
leaq 0x11d10(%rip), %rsi     # 0x38281
leaq 0x123c0(%rip), %rcx     # 0x38938
movl $0x208, %edx            # imm = 0x208
callq 0x52c0
leaq 0x11d6f(%rip), %rdi     # 0x382f8
leaq 0x11cf1(%rip), %rsi     # 0x38281
leaq 0x123a1(%rip), %rcx     # 0x38938
movl $0x217, %edx            # imm = 0x217
callq 0x52c0
leaq 0x11eab(%rip), %rdi     # 0x38453
leaq 0x11cd2(%rip), %rsi     # 0x38281
leaq 0x12382(%rip), %rcx     # 0x38938
movl $0x218, %edx            # imm = 0x218
callq 0x52c0
leaq 0x11fa8(%rip), %rdi     # 0x3856f
leaq 0x11cb3(%rip), %rsi     # 0x38281
leaq 0x12363(%rip), %rcx     # 0x38938
movl $0x223, %edx            # imm = 0x223
callq 0x52c0
leaq 0x11fd2(%rip), %rdi     # 0x385b8
leaq 0x11c94(%rip), %rsi     # 0x38281
leaq 0x12344(%rip), %rcx     # 0x38938
movl $0x224, %edx            # imm = 0x224
callq 0x52c0
leaq 0x1200e(%rip), %rdi     # 0x38613
leaq 0x11c75(%rip), %rsi     # 0x38281
leaq 0x12325(%rip), %rcx     # 0x38938
movl $0x225, %edx            # imm = 0x225
callq 0x52c0
leaq 0x11cd4(%rip), %rdi     # 0x382f8
leaq 0x11c56(%rip), %rsi     # 0x38281
leaq 0x12306(%rip), %rcx     # 0x38938
movl $0x235, %edx            # imm = 0x235
callq 0x52c0
leaq 0x120b1(%rip), %rdi     # 0x386f4
leaq 0x11c37(%rip), %rsi     # 0x38281
leaq 0x122e7(%rip), %rcx     # 0x38938
movl $0x236, %edx            # imm = 0x236
callq 0x52c0
leaq 0x121c2(%rip), %rdi     # 0x38824
leaq 0x11c18(%rip), %rsi     # 0x38281
leaq 0x122c8(%rip), %rcx     # 0x38938
movl $0x24c, %edx            # imm = 0x24C
callq 0x52c0
leaq 0x121ec(%rip), %rdi     # 0x3886d
leaq 0x11bf9(%rip), %rsi     # 0x38281
leaq 0x122a9(%rip), %rcx     # 0x38938
movl $0x24d, %edx            # imm = 0x24D
callq 0x52c0
leaq 0x12228(%rip), %rdi     # 0x388c8
leaq 0x11bda(%rip), %rsi     # 0x38281
leaq 0x1228a(%rip), %rcx     # 0x38938
movl $0x24e, %edx            # imm = 0x24E
callq 0x52c0
movq %rax, %r14
movb $0x1, %bpl
movl $0x318, %ebx            # imm = 0x318
jmp 0x26a7c
movq %rax, %r14
movb $0x1, %bpl
movl $0x2e0, %ebx            # imm = 0x2E0
jmp 0x26a8c
movq %rax, %r14
movb $0x1, %bpl
movl $0x2a8, %ebx            # imm = 0x2A8
jmp 0x26a9c
movq %rax, %r14
movb $0x1, %bpl
movl $0x270, %ebx            # imm = 0x270
jmp 0x26aac
movq %rax, %r14
movb $0x1, %bpl
movl $0x238, %ebx            # imm = 0x238
jmp 0x26abc
movq %rax, %r14
movb $0x1, %bpl
movl $0x200, %ebx            # imm = 0x200
jmp 0x26acc
movq %rax, %r14
movb $0x1, %bpl
movl $0x1c8, %ebx            # imm = 0x1C8
jmp 0x26adf
movq %rax, %r14
movb $0x1, %bpl
movl $0x190, %ebx            # imm = 0x190
jmp 0x26af2
movq %rax, %r14
movb $0x1, %bpl
movl $0x158, %ebx            # imm = 0x158
jmp 0x26b05
movq %rax, %r14
movb $0x1, %bpl
movl $0x120, %ebx            # imm = 0x120
jmp 0x26b18
movq %rax, %r14
movb $0x1, %bpl
movl $0xe8, %ebx
jmp 0x26b2b
movq %rax, %r14
movb $0x1, %bpl
movl $0xb0, %ebx
jmp 0x26b3e
movq %rax, %r14
movb $0x1, %bpl
pushq $0x78
popq %rbx
jmp 0x26b51
movq %rax, %r14
movb $0x1, %bpl
pushq $0x78
jmp 0x26798
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
popq %rbx
jmp 0x26b61
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
jmp 0x267b0
movq %rax, %r14
movb $0x1, %bpl
pushq $0x8
popq %rbx
jmp 0x26b71
movq %rax, %r14
jmp 0x26bb1
movq %rax, %r14
movb $0x1, %bpl
movl $0x190, %r12d           # imm = 0x190
jmp 0x26be1
movq %rax, %r14
movb $0x1, %bpl
movl $0x158, %r12d           # imm = 0x158
jmp 0x26bf4
movq %rax, %r14
movb $0x1, %bpl
movl $0x120, %r12d           # imm = 0x120
jmp 0x26c07
movq %rax, %r14
movb $0x1, %bpl
movl $0xe8, %r12d
jmp 0x26c1a
movq %rax, %r14
movb $0x1, %bpl
movl $0xb0, %r12d
jmp 0x26c2d
movq %rax, %r14
movb $0x1, %bpl
pushq $0x78
popq %r12
jmp 0x26c40
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
popq %r12
jmp 0x26c53
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
popq %r12
jmp 0x26c63
movq %rax, %r14
movb $0x1, %bpl
jmp 0x26c63
movq %rax, %r14
movb $0x1, %bpl
movl $0xb0, %ebx
jmp 0x26cd0
movq %rax, %r14
movb $0x1, %bpl
pushq $0x78
popq %rbx
jmp 0x26ce3
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
popq %rbx
jmp 0x26cf6
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
jmp 0x26889
movq %rax, %r14
movb $0x1, %bpl
pushq $0x8
popq %rbx
jmp 0x26d06
movq %rax, %r14
jmp 0x26d47
movq %rax, %r14
movb $0x1, %bpl
movl $0x158, %ebx            # imm = 0x158
jmp 0x26d76
movq %rax, %r14
movb $0x1, %bpl
movl $0x120, %ebx            # imm = 0x120
jmp 0x26d89
movq %rax, %r14
movb $0x1, %bpl
movl $0xe8, %ebx
jmp 0x26d9c
movq %rax, %r14
movb $0x1, %bpl
movl $0xb0, %ebx
jmp 0x26daf
movq %rax, %r14
movb $0x1, %bpl
movl $0xb0, %ebx
jmp 0x26dbf
movq %rax, %r14
movb $0x1, %bpl
pushq $0x78
popq %rbx
jmp 0x26dbf
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
popq %rbx
jmp 0x26dd2
movq %rax, %r14
movb $0x1, %bpl
pushq $0x8
popq %rbx
jmp 0x26de5
movq %rax, %r14
movb $0x1, %bpl
movl $0x120, %ebx            # imm = 0x120
jmp 0x26e57
movq %rax, %r14
movb $0x1, %bpl
movl $0xe8, %ebx
jmp 0x26e6a
movq %rax, %r14
movb $0x1, %bpl
movl $0xb0, %ebx
jmp 0x26e7d
movq %rax, %r14
movb $0x1, %bpl
movl $0xb0, %ebx
jmp 0x26e8d
movq %rax, %r14
movb $0x1, %bpl
pushq $0x78
popq %rbx
jmp 0x26e8d
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
popq %rbx
jmp 0x26ea0
movq %rax, %r14
movb $0x1, %bpl
pushq $0x8
popq %rbx
jmp 0x26eb3
movq %rax, %r14
movb $0x1, %bpl
pushq $0x78
popq %rbx
jmp 0x26f2a
movq %rax, %r14
movb $0x1, %bpl
pushq $0x78
jmp 0x2699b
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
popq %rbx
jmp 0x26f3a
movq %rax, %r14
movb $0x1, %bpl
pushq $0x8
popq %rbx
jmp 0x26f4d
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
popq %rbx
jmp 0x26fb6
movq %rax, %r14
movb $0x1, %bpl
pushq $0x8
popq %rbx
jmp 0x26fc9
movq %rax, %r14
movb $0x1, %bpl
movl $0x190, %ebx            # imm = 0x190
jmp 0x27045
movq %rax, %r14
movb $0x1, %bpl
movl $0x158, %ebx            # imm = 0x158
jmp 0x27058
movq %rax, %r14
movb $0x1, %bpl
movl $0x120, %ebx            # imm = 0x120
jmp 0x2706b
movq %rax, %r14
movb $0x1, %bpl
movl $0xe8, %ebx
jmp 0x2707e
movq %rax, %r14
movb $0x1, %bpl
movl $0xb0, %ebx
jmp 0x27091
movq %rax, %r14
movb $0x1, %bpl
pushq $0x78
popq %rbx
jmp 0x270a4
movq %rax, %r14
movb $0x1, %bpl
pushq $0x40
popq %rbx
jmp 0x270b7
movq %rax, %r14
movb $0x1, %bpl
pushq $0x8
popq %rbx
jmp 0x270ca
movq %rax, %r14
movl $0x9050, %esi           # imm = 0x9050
movq %rbx, %rdi
jmp 0x27020
jmp 0x26f00
jmp 0x26f00
jmp 0x27017
movq %rax, %r14
movq 0x50(%rsp), %rdi
movl $0x350, %ebx            # imm = 0x350
testq %rdi, %rdi
je 0x26a7c
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x58(%rsp), %rdi
testq %rdi, %rdi
je 0x26a8c
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x60(%rsp), %rdi
testq %rdi, %rdi
je 0x26a9c
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x68(%rsp), %rdi
testq %rdi, %rdi
je 0x26aac
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x70(%rsp), %rdi
testq %rdi, %rdi
je 0x26abc
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x78(%rsp), %rdi
testq %rdi, %rdi
je 0x26acc
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x26adf
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x88(%rsp), %rdi
testq %rdi, %rdi
je 0x26af2
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x90(%rsp), %rdi
testq %rdi, %rdi
je 0x26b05
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x98(%rsp), %rdi
testq %rdi, %rdi
je 0x26b18
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xa0(%rsp), %rdi
testq %rdi, %rdi
je 0x26b2b
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xa8(%rsp), %rdi
testq %rdi, %rdi
je 0x26b3e
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xb0(%rsp), %rdi
testq %rdi, %rdi
je 0x26b51
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x26b61
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x26b71
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x18(%rsp), %rdi
testq %rdi, %rdi
je 0x26b81
movq (%rdi), %rax
callq *0x8(%rax)
cmpq $0x8, %rbx
setne %al
andb %bpl, %al
cmpb $0x1, %al
jne 0x26ba8
addq $-0x8, %rbx
movq (%r15,%rbx), %rdi
testq %rdi, %rdi
je 0x26ba2
movq (%rdi), %rax
callq *0x8(%rax)
addq $-0x38, %rbx
jne 0x26b93
testb %bpl, %bpl
je 0x27116
movl $0x388, %esi            # imm = 0x388
jmp 0x2710e
jmp 0x26f00
jmp 0x27017
movq %rax, %r14
movq 0xb8(%rsp), %rdi
movl $0x1c8, %r12d           # imm = 0x1C8
testq %rdi, %rdi
je 0x26be1
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xc0(%rsp), %rdi
testq %rdi, %rdi
je 0x26bf4
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xc8(%rsp), %rdi
testq %rdi, %rdi
je 0x26c07
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xd0(%rsp), %rdi
testq %rdi, %rdi
je 0x26c1a
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0x26c2d
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xe0(%rsp), %rdi
testq %rdi, %rdi
je 0x26c40
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xe8(%rsp), %rdi
testq %rdi, %rdi
je 0x26c53
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x26c63
movq (%rdi), %rax
callq *0x8(%rax)
movq 0xf0(%rsp), %rdi
testq %rdi, %rdi
je 0x26c76
movq (%rdi), %rax
callq *0x8(%rax)
cmpq $0x8, %r12
setne %al
andb %bpl, %al
cmpb $0x1, %al
jne 0x27104
addq $-0x8, %r12
movq (%r15,%r12), %rdi
testq %rdi, %rdi
je 0x26c9b
movq (%rdi), %rax
callq *0x8(%rax)
addq $-0x38, %r12
jne 0x26c8c
jmp 0x27104
jmp 0x26f00
jmp 0x26f00
jmp 0x27017
movq %rax, %r14
movq 0xf8(%rsp), %rdi
movl $0xe8, %ebx
testq %rdi, %rdi
je 0x26cd0
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x100(%rsp), %rdi
testq %rdi, %rdi
je 0x26ce3
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x108(%rsp), %rdi
testq %rdi, %rdi
je 0x26cf6
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x28(%rsp), %rdi
testq %rdi, %rdi
je 0x26d06
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x30(%rsp), %rdi
testq %rdi, %rdi
je 0x26d16
movq (%rdi), %rax
callq *0x8(%rax)
cmpl $0x8, %ebx
sete %al
movl %ebp, %ecx
xorb $0x1, %cl
orb %al, %cl
jne 0x26d3e
addq $-0x8, %rbx
movq (%r15,%rbx), %rdi
testq %rdi, %rdi
je 0x26d38
movq (%rdi), %rax
callq *0x8(%rax)
addq $-0x38, %rbx
jne 0x26d29
testb %bpl, %bpl
je 0x27116
movl $0x120, %esi            # imm = 0x120
jmp 0x2710e
jmp 0x26f00
jmp 0x27017
movq %rax, %r14
movq 0x110(%rsp), %rdi
movl $0x190, %ebx            # imm = 0x190
testq %rdi, %rdi
je 0x26d76
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x118(%rsp), %rdi
testq %rdi, %rdi
je 0x26d89
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x120(%rsp), %rdi
testq %rdi, %rdi
je 0x26d9c
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x128(%rsp), %rdi
testq %rdi, %rdi
je 0x26daf
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x38(%rsp), %rdi
testq %rdi, %rdi
je 0x26dbf
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x130(%rsp), %rdi
testq %rdi, %rdi
je 0x26dd2
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x138(%rsp), %rdi
testq %rdi, %rdi
je 0x26de5
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x140(%rsp), %rdi
testq %rdi, %rdi
je 0x26df8
movq (%rdi), %rax
callq *0x8(%rax)
cmpq $0x8, %rbx
setne %al
andb %bpl, %al
cmpb $0x1, %al
jne 0x26e1f
addq $-0x8, %rbx
movq (%r15,%rbx), %rdi
testq %rdi, %rdi
je 0x26e19
movq (%rdi), %rax
callq *0x8(%rax)
addq $-0x38, %rbx
jne 0x26e0a
testb %bpl, %bpl
je 0x27116
movl $0x1c8, %esi            # imm = 0x1C8
jmp 0x2710e
jmp 0x26f00
jmp 0x27017
movq %rax, %r14
movq 0x148(%rsp), %rdi
movl $0x158, %ebx            # imm = 0x158
testq %rdi, %rdi
je 0x26e57
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x150(%rsp), %rdi
testq %rdi, %rdi
je 0x26e6a
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0x26e7d
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x40(%rsp), %rdi
testq %rdi, %rdi
je 0x26e8d
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x160(%rsp), %rdi
testq %rdi, %rdi
je 0x26ea0
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x168(%rsp), %rdi
testq %rdi, %rdi
je 0x26eb3
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x170(%rsp), %rdi
testq %rdi, %rdi
je 0x26ec6
movq (%rdi), %rax
callq *0x8(%rax)
cmpq $0x8, %rbx
setne %al
andb %bpl, %al
cmpb $0x1, %al
jne 0x26eed
addq $-0x8, %rbx
movq (%r15,%rbx), %rdi
testq %rdi, %rdi
je 0x26ee7
movq (%rdi), %rax
callq *0x8(%rax)
addq $-0x38, %rbx
jne 0x26ed8
testb %bpl, %bpl
je 0x27116
movl $0x190, %esi            # imm = 0x190
jmp 0x2710e
movq %rax, %r14
pushq $0x58
jmp 0x2701c
jmp 0x27017
movq %rax, %r14
movq 0x178(%rsp), %rdi
movl $0xb0, %ebx
testq %rdi, %rdi
je 0x26f2a
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x48(%rsp), %rdi
testq %rdi, %rdi
je 0x26f3a
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x180(%rsp), %rdi
testq %rdi, %rdi
je 0x26f4d
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x188(%rsp), %rdi
testq %rdi, %rdi
je 0x26f60
movq (%rdi), %rax
callq *0x8(%rax)
cmpl $0x8, %ebx
sete %al
movl %ebp, %ecx
xorb $0x1, %cl
orb %al, %cl
jne 0x26f88
addq $-0x8, %rbx
movq (%r15,%rbx), %rdi
testq %rdi, %rdi
je 0x26f82
movq (%rdi), %rax
callq *0x8(%rax)
addq $-0x38, %rbx
jne 0x26f73
testb %bpl, %bpl
je 0x27116
movl $0xe8, %esi
jmp 0x2710e
jmp 0x27017
movq %rax, %r14
movq 0x190(%rsp), %rdi
pushq $0x78
popq %rbx
testq %rdi, %rdi
je 0x26fb6
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x198(%rsp), %rdi
testq %rdi, %rdi
je 0x26fc9
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1a0(%rsp), %rdi
testq %rdi, %rdi
je 0x26fdc
movq (%rdi), %rax
callq *0x8(%rax)
cmpl $0x8, %ebx
sete %al
movl %ebp, %ecx
xorb $0x1, %cl
orb %al, %cl
jne 0x27004
addq $-0x8, %rbx
movq (%r15,%rbx), %rdi
testq %rdi, %rdi
je 0x26ffe
movq (%rdi), %rax
callq *0x8(%rax)
addq $-0x38, %rbx
jne 0x26fef
testb %bpl, %bpl
je 0x27116
movl $0xb0, %esi
jmp 0x2710e
movq %rax, %r14
pushq $0x68
popq %rsi
movq %r15, %rdi
callq 0x53f0
jmp 0x27116
movq %rax, %r14
movq 0x1a8(%rsp), %rdi
movl $0x1c8, %ebx            # imm = 0x1C8
testq %rdi, %rdi
je 0x27045
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1b0(%rsp), %rdi
testq %rdi, %rdi
je 0x27058
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1b8(%rsp), %rdi
testq %rdi, %rdi
je 0x2706b
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1c0(%rsp), %rdi
testq %rdi, %rdi
je 0x2707e
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1c8(%rsp), %rdi
testq %rdi, %rdi
je 0x27091
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1d0(%rsp), %rdi
testq %rdi, %rdi
je 0x270a4
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1d8(%rsp), %rdi
testq %rdi, %rdi
je 0x270b7
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1e0(%rsp), %rdi
testq %rdi, %rdi
je 0x270ca
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x1e8(%rsp), %rdi
testq %rdi, %rdi
je 0x270dd
movq (%rdi), %rax
callq *0x8(%rax)
cmpq $0x8, %rbx
setne %al
andb %bpl, %al
cmpb $0x1, %al
jne 0x27104
addq $-0x8, %rbx
movq (%r15,%rbx), %rdi
testq %rdi, %rdi
je 0x270fe
movq (%rdi), %rax
callq *0x8(%rax)
addq $-0x38, %rbx
jne 0x270ef
testb %bpl, %bpl
je 0x27116
movl $0x200, %esi            # imm = 0x200
movq %r15, %rdi
callq 0x57c0
movq %r14, %rdi
callq 0x56f0