// File: /workspace/github_cpp_makefile_star2_O1/Konano[P]UselessDatabase/Index.cpp
// Function: Index::queryRecords(enumOp, Anys&, int)
std::vector<uint> Index::queryRecords(enumOp op, Anys& data, int now_index){
    BtreeNode* now = Index::convert_buf_to_BtreeNode(now_index);

    std::vector<uint> ans;
    std::vector<uint> temp;

    int i;
    for (i = 0; i < now->record_cnt; i++) {
        bool flag = false;
        switch(op){
            case OP_EQ:{
                if(now->record[i].key == data){
                    ans.push_back(now->record[i].record_id);
                    temp.push_back(i);
                }
                else if(now->record[i].key > data){
                    flag = true;
                }
                break;
            }
            case OP_NEQ:{
                if(now->record[i].key != data){
                    ans.push_back(now->record[i].record_id);
                    temp.push_back(i);
                }
                break;
            }
            case OP_LE:{
                if(now->record[i].key <= data){
                    ans.push_back(now->record[i].record_id);
                    temp.push_back(i);
                }
                else if(now->record[i].key > data){
                    flag = true;
                }
                break;
            }
            case OP_GE:{
                if(now->record[i].key >= data){
                    ans.push_back(now->record[i].record_id);
                    temp.push_back(i);
                }
                break;
            }
            case OP_LS:{
                if(now->record[i].key < data){
                    ans.push_back(now->record[i].record_id);
                    temp.push_back(i);
                }
                else if(now->record[i].key >= data){
                    flag = true;
                }
                break;
            }
            case OP_GT:{
                if(now->record[i].key > data){
                    ans.push_back(now->record[i].record_id);
                    temp.push_back(i);
                }
                break;
            }
            case OP_NL:{
                bool ok = true;
                for(uint j = 0;j < now->record[i].key.size();j ++){
                    if(!now->record[i].key[j].isNull()){
                        ok = false;
                        break;
                    }
                }
                if(ok){
                    ans.push_back(now->record[i].record_id);
                    temp.push_back(i);
                }
                break;
            }
            case OP_NNL:{
                bool ok = false;
                for(uint j = 0;j < now->record[i].key.size();j ++){
                    if(!now->record[i].key[j].isNull()){
                        ok = true;
                        break;
                    }
                }
                if(ok){
                    ans.push_back(now->record[i].record_id);
                    temp.push_back(i);
                }
                break;
            }
            case OP_IN:{
                //UnReachable
                break;
            }
        }
        if(flag)break;
    }

    switch(op){
        case OP_EQ:{
            for(uint i = 0;i < temp.size();i ++){
                if(now->child[temp[i]] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i]]);
                    for (auto it: temp)ans.push_back(it);
                }
                if(i == temp.size() - 1 && now->child[temp[i] + 1] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i] + 1]);
                    for (auto it: temp)ans.push_back(it);
                }
            }
            break;
        }
        case OP_NEQ:{
            for(uint i = 0;i < temp.size();i ++){
                if(now->child[temp[i]] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i]]);
                    for (auto it: temp)ans.push_back(it);
                }
                if(i == temp.size() - 1 && now->child[temp[i] + 1] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i] + 1]);
                    for (auto it: temp)ans.push_back(it);
                }
                if(i < temp.size() - 1 && temp[i] != temp[i + 1] - 1 && now->child[temp[i] + 1] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i] + 1]);
                    for (auto it: temp)ans.push_back(it);
                }
            }
            break;
        }
        case OP_LE:{
            for(uint i = 0;i < temp.size();i ++){
                if(now->child[temp[i]] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i]]);
                    for (auto it: temp)ans.push_back(it);
                }
                if(i == temp.size() - 1 && now->child[temp[i] + 1] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i] + 1]);
                    for (auto it: temp)ans.push_back(it);
                }
            }
            break;
        }
        case OP_GE:{
            for(uint i = 0;i < temp.size();i ++){
                if(now->child[temp[i]] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i]]);
                    for (auto it: temp)ans.push_back(it);
                }
                if(i == temp.size() - 1 && now->child[temp[i] + 1] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i] + 1]);
                    for (auto it: temp)ans.push_back(it);
                }
            }
            break;
        }
        case OP_LS:{
            for(uint i = 0;i < temp.size();i ++){
                if(now->child[temp[i]] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i]]);
                    for (auto it: temp)ans.push_back(it);
                }
                if(i == temp.size() - 1 && now->child[temp[i] + 1] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i] + 1]);
                    for (auto it: temp)ans.push_back(it);
                }
            }
            break;
        }
        case OP_GT:{
            for(uint i = 0;i < temp.size();i ++){
                if(now->child[temp[i]] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i]]);
                    for (auto it: temp)ans.push_back(it);
                }
                if(i == temp.size() - 1 && now->child[temp[i] + 1] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i] + 1]);
                    for (auto it: temp)ans.push_back(it);
                }
            }
            break;
        }
        case OP_NL:{
            for(uint i = 0;i < temp.size();i ++){
                if(now->child[temp[i]] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i]]);
                    for (auto it: temp)ans.push_back(it);
                }
                if(i == temp.size() - 1 && now->child[temp[i] + 1] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i] + 1]);
                    for (auto it: temp)ans.push_back(it);
                }
            }
            break;
        }
        case OP_NNL:{
            for(uint i = 0;i < temp.size();i ++){
                if(now->child[temp[i]] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i]]);
                    for (auto it: temp)ans.push_back(it);
                }
                if(i == temp.size() - 1 && now->child[temp[i] + 1] != -1){
                    std::vector<uint> temp =  queryRecords(op,data,now->child[temp[i] + 1]);
                    for (auto it: temp)ans.push_back(it);
                }
            }
            break;
        }
        case OP_IN:{
            //UnReachable
            break;
        }
    }

    return ans;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rcx, 0x40(%rsp)
movl %edx, %ebp
movq %rdi, %rbx
movq %rsi, 0x48(%rsp)
movq %rsi, %rdi
movl %r8d, %esi
callq 0x19bd2
movq %rax, %r12
xorps %xmm0, %xmm0
movups %xmm0, (%rbx)
xorl %eax, %eax
movq %rax, 0x10(%rbx)
movq %rax, 0x30(%rsp)
movaps %xmm0, 0x20(%rsp)
cmpl $0x0, 0x1c(%r12)
movl %ebp, %r13d
jle 0x1bf8d
movq %r12, %rax
addq $0x50, %rax
movq %rax, 0x50(%rsp)
xorl %r15d, %r15d
cmpl $0x7, %ebp
ja 0x1bf6b
leaq 0x25d2f(%rip), %rcx     # 0x4183c
movslq (%rcx,%r13,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x50(%rsp), %rax
movq (%rax), %rax
movq %r15, %r14
shlq $0x5, %r14
leaq (%rax,%r14), %rdi
addq $0x8, %rdi
movq 0x40(%rsp), %rsi
callq 0x9abe
testb %al, %al
je 0x1bbe3
movq 0x50(%rsp), %rax
movq (%rax), %rax
movl (%rax,%r14), %eax
movl %eax, (%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1bec6
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1bed1
movq 0x50(%r12), %rax
movq %r15, %r14
shlq $0x5, %r14
leaq (%rax,%r14), %rdi
addq $0x8, %rdi
movq 0x40(%rsp), %rsi
callq 0x9b3e
testb %al, %al
je 0x1bd8e
movq 0x50(%r12), %rax
movl (%rax,%r14), %eax
movl %eax, (%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1be33
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1be3e
movq 0x50(%rsp), %rax
movq (%rax), %rax
movq %r15, %r14
shlq $0x5, %r14
leaq (%rax,%r14), %rdi
addq $0x8, %rdi
movq 0x40(%rsp), %rsi
callq 0x9be2
testb %al, %al
je 0x1bdb4
movq 0x50(%rsp), %rax
movq (%rax), %rax
movq %r15, %rcx
shlq $0x5, %rcx
leaq (%rax,%rcx), %rdi
addq $0x8, %rdi
movq 0x40(%rsp), %rsi
callq 0x9be2
jmp 0x1bda7
movq 0x50(%r12), %rax
movq %r15, %r14
shlq $0x5, %r14
leaq (%rax,%r14), %rdi
addq $0x8, %rdi
movq 0x40(%rsp), %rsi
callq 0x9b3e
testb %al, %al
jne 0x1bf6b
movq 0x50(%r12), %rax
movl (%rax,%r14), %eax
movl %eax, (%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1be95
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1bea0
movq 0x50(%r12), %rax
movq %r15, %rsi
shlq $0x5, %rsi
movq 0x8(%rax,%rsi), %rcx
movq 0x10(%rax,%rsi), %rdx
subq %rcx, %rdx
shrq $0x3, %rdx
testl %edx, %edx
je 0x1bf6b
addq %rsi, %rax
xorl %esi, %esi
cmpq $0x0, (%rcx,%rsi,8)
jne 0x1bde0
incq %rsi
cmpl %esi, %edx
jne 0x1bc82
jmp 0x1bf6b
movq 0x50(%r12), %rax
movq %r15, %r14
shlq $0x5, %r14
leaq (%rax,%r14), %rdi
addq $0x8, %rdi
movq 0x40(%rsp), %rsi
callq 0x9abe
testb %al, %al
jne 0x1bf6b
movq 0x50(%r12), %rax
movl (%rax,%r14), %eax
movl %eax, (%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1bef0
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1befb
movq 0x50(%r12), %rax
movq %r15, %r14
shlq $0x5, %r14
leaq (%rax,%r14), %rdi
addq $0x8, %rdi
movq 0x40(%rsp), %rsi
callq 0x9be2
testb %al, %al
je 0x1bf6b
movq 0x50(%r12), %rax
movl (%rax,%r14), %eax
movl %eax, (%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1bf1a
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1bf25
movq 0x50(%r12), %rax
movq %r15, %rcx
shlq $0x5, %rcx
movq 0x8(%rax,%rcx), %rdx
movq 0x10(%rax,%rcx), %rsi
subq %rdx, %rsi
shrq $0x3, %rsi
testl %esi, %esi
je 0x1bd6c
xorl %edi, %edi
cmpq $0x0, (%rdx,%rdi,8)
jne 0x1bf6b
incq %rdi
cmpl %edi, %esi
jne 0x1bd5a
addq %rcx, %rax
movl (%rax), %eax
movl %eax, (%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1be02
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1be0d
movq 0x50(%r12), %rax
leaq (%rax,%r14), %rdi
addq $0x8, %rdi
movq 0x40(%rsp), %rsi
callq 0x9b3e
xorb $0x1, %al
testb %al, %al
je 0x1bf6b
jmp 0x1bf8d
movq 0x50(%rsp), %rax
movq (%rax), %rax
movl (%rax,%r14), %eax
movl %eax, (%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1be64
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1be6f
movl (%rax), %eax
movl %eax, (%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1bf44
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1bf4f
movq %rbx, %rdi
movq %rsp, %rdx
callq 0x1d178
movl %r15d, (%rsp)
movq 0x28(%rsp), %rsi
cmpq 0x30(%rsp), %rsi
jne 0x1bf5f
leaq 0x20(%rsp), %rdi
movq %rsp, %rdx
callq 0x1d178
jmp 0x1bf6b
movq %rbx, %rdi
movq %rsp, %rdx
callq 0x1d178
movl %r15d, (%rsp)
movq 0x28(%rsp), %rsi
cmpq 0x30(%rsp), %rsi
jne 0x1bf5f
leaq 0x20(%rsp), %rdi
movq %rsp, %rdx
callq 0x1d178
jmp 0x1bf6b
movq %rbx, %rdi
movq %rsp, %rdx
callq 0x1d178
movl %r15d, (%rsp)
movq 0x28(%rsp), %rsi
cmpq 0x30(%rsp), %rsi
jne 0x1bf5f
leaq 0x20(%rsp), %rdi
movq %rsp, %rdx
callq 0x1d178
jmp 0x1bf6b
movq %rbx, %rdi
movq %rsp, %rdx
callq 0x1d178
movl %r15d, (%rsp)
movq 0x28(%rsp), %rsi
cmpq 0x30(%rsp), %rsi
jne 0x1bf5f
leaq 0x20(%rsp), %rdi
movq %rsp, %rdx
callq 0x1d178
jmp 0x1bf6b
movq %rbx, %rdi
movq %rsp, %rdx
callq 0x1d178
movl %r15d, (%rsp)
movq 0x28(%rsp), %rsi
cmpq 0x30(%rsp), %rsi
jne 0x1bf5f
leaq 0x20(%rsp), %rdi
movq %rsp, %rdx
callq 0x1d178
jmp 0x1bf6b
movq %rbx, %rdi
movq %rsp, %rdx
callq 0x1d178
movl %r15d, (%rsp)
movq 0x28(%rsp), %rsi
cmpq 0x30(%rsp), %rsi
jne 0x1bf5f
leaq 0x20(%rsp), %rdi
movq %rsp, %rdx
callq 0x1d178
jmp 0x1bf6b
movq %rbx, %rdi
movq %rsp, %rdx
callq 0x1d178
movl %r15d, (%rsp)
movq 0x28(%rsp), %rsi
cmpq 0x30(%rsp), %rsi
jne 0x1bf5f
leaq 0x20(%rsp), %rdi
movq %rsp, %rdx
callq 0x1d178
jmp 0x1bf6b
movq %rbx, %rdi
movq %rsp, %rdx
callq 0x1d178
movl %r15d, (%rsp)
movq 0x28(%rsp), %rsi
cmpq 0x30(%rsp), %rsi
je 0x1bf7e
movl %r15d, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x28(%rsp)
incq %r15
movslq 0x1c(%r12), %rax
cmpq %rax, %r15
jl 0x1bafd
jmp 0x1bf8d
leaq 0x20(%rsp), %rdi
movq %rsp, %rdx
callq 0x1d178
jmp 0x1bf6b
cmpl $0x7, %ebp
ja 0x1cb69
leaq 0x258bf(%rip), %rax     # 0x4185c
movslq (%rax,%r13,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movq 0x20(%rsp), %rax
cmpq %rax, 0x28(%rsp)
je 0x1cb69
xorl %r14d, %r14d
leaq 0x1c(%rsp), %rbp
movl (%rax,%r14,4), %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c03f
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
xorl %edx, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c029
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c018
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c023
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1bff6
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c03f
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
decq %rcx
cmpq %r14, %rcx
jne 0x1c0e1
movl (%rax,%r14,4), %ecx
incl %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c0e1
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
incl %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
xorl %edx, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c0cb
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c0ba
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c0c5
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c098
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c0e1
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
incl %r14d
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
cmpq %r14, %rcx
ja 0x1bfbe
jmp 0x1cb69
movq 0x20(%rsp), %rax
cmpq %rax, 0x28(%rsp)
je 0x1cb69
xorl %r14d, %r14d
leaq 0x1c(%rsp), %rbp
movl (%rax,%r14,4), %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c19f
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x4, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c189
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c178
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c183
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c156
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c19f
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
decq %rcx
cmpq %r14, %rcx
jne 0x1c244
movl (%rax,%r14,4), %ecx
incl %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c244
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
incl %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x4, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c22e
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c21d
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c228
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c1fb
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c244
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
incl %r14d
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
cmpq %r14, %rcx
ja 0x1c11b
jmp 0x1cb69
movq 0x20(%rsp), %rax
cmpq %rax, 0x28(%rsp)
je 0x1cb69
xorl %r14d, %r14d
leaq 0x1c(%rsp), %rbp
movl (%rax,%r14,4), %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c302
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x2, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c2ec
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c2db
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c2e6
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c2b9
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c302
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
decq %rcx
cmpq %r14, %rcx
jne 0x1c3a7
movl (%rax,%r14,4), %ecx
incl %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c3a7
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
incl %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x2, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c391
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c380
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c38b
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c35e
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c3a7
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
incl %r14d
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
cmpq %r14, %rcx
ja 0x1c27e
jmp 0x1cb69
movq 0x20(%rsp), %rax
cmpq %rax, 0x28(%rsp)
je 0x1cb69
xorl %r14d, %r14d
leaq 0x1c(%rsp), %rbp
movl (%rax,%r14,4), %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c465
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x3, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c44f
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c43e
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c449
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c41c
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c465
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
decq %rcx
cmpq %r14, %rcx
jne 0x1c50a
movl (%rax,%r14,4), %ecx
incl %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c50a
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
incl %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x3, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c4f4
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c4e3
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c4ee
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c4c1
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c50a
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
incl %r14d
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
cmpq %r14, %rcx
ja 0x1c3e1
jmp 0x1cb69
movq 0x20(%rsp), %rax
cmpq %rax, 0x28(%rsp)
je 0x1cb69
xorl %r14d, %r14d
leaq 0x1c(%rsp), %rbp
movl (%rax,%r14,4), %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c5c8
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x7, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c5b2
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c5a1
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c5ac
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c57f
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c5c8
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
decq %rcx
cmpq %r14, %rcx
jne 0x1c66d
movl (%rax,%r14,4), %ecx
incl %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c66d
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
incl %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x7, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c657
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c646
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c651
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c624
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c66d
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
incl %r14d
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
cmpq %r14, %rcx
ja 0x1c544
jmp 0x1cb69
movq 0x20(%rsp), %rax
cmpq %rax, 0x28(%rsp)
je 0x1cb69
xorl %r14d, %r14d
leaq 0x1c(%rsp), %rbp
movl (%rax,%r14,4), %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c72b
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x1, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c715
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c704
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c70f
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c6e2
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c72b
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
decq %rcx
cmpq %r14, %rcx
jne 0x1c7d0
movl (%rax,%r14,4), %ecx
incl %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c7d0
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
incl %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x1, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c7ba
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c7a9
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c7b4
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c787
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c7d0
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
decq %rcx
cmpq %r14, %rcx
jbe 0x1c886
movl (%rax,%r14,4), %ecx
leal 0x1(%r14), %edx
movl (%rax,%rdx,4), %eax
decl %eax
cmpl %eax, %ecx
je 0x1c886
incl %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c886
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
incl %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x1, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c870
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c85f
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c86a
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c83d
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c886
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
incl %r14d
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
cmpq %r14, %rcx
ja 0x1c6a7
jmp 0x1cb69
movq 0x20(%rsp), %rax
cmpq %rax, 0x28(%rsp)
je 0x1cb69
xorl %r14d, %r14d
leaq 0x1c(%rsp), %rbp
movl (%rax,%r14,4), %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c944
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x5, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c92e
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c91d
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c928
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c8fb
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c944
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
decq %rcx
cmpq %r14, %rcx
jne 0x1c9e9
movl (%rax,%r14,4), %ecx
incl %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1c9e9
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
incl %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x5, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1c9d3
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1c9c2
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1c9cd
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1c9a0
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1c9e9
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
incl %r14d
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
cmpq %r14, %rcx
ja 0x1c8c0
jmp 0x1cb69
movq 0x20(%rsp), %rax
cmpq %rax, 0x28(%rsp)
je 0x1cb69
xorl %r14d, %r14d
leaq 0x1c(%rsp), %rbp
movl (%rax,%r14,4), %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1caa7
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x6, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1ca91
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1ca80
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1ca8b
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1ca5e
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1caa7
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
decq %rcx
cmpq %r14, %rcx
jne 0x1cb4c
movl (%rax,%r14,4), %ecx
incl %ecx
movq 0x20(%r12), %rax
cmpl $-0x1, (%rax,%rcx,4)
je 0x1cb4c
movq (%rsp), %rcx
movl (%rcx,%r14,4), %ecx
incl %ecx
movl (%rax,%rcx,4), %r8d
movq %rsp, %rdi
movq 0x48(%rsp), %rsi
movl $0x6, %edx
movq 0x40(%rsp), %rcx
callq 0x1ba9e
movq (%rsp), %r15
movq 0x8(%rsp), %r13
cmpq %r13, %r15
je 0x1cb36
movl (%r15), %eax
movl %eax, 0x1c(%rsp)
movq 0x8(%rbx), %rsi
cmpq 0x10(%rbx), %rsi
je 0x1cb25
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0x8(%rbx)
jmp 0x1cb30
movq %rbx, %rdi
movq %rbp, %rdx
callq 0x1d780
addq $0x4, %r15
jmp 0x1cb03
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1cb4c
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
incl %r14d
movq 0x20(%rsp), %rax
movq 0x28(%rsp), %rcx
subq %rax, %rcx
sarq $0x2, %rcx
cmpq %r14, %rcx
ja 0x1ca23
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x1cb80
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq %rbx, %rax
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cc0f
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
jmp 0x1cbf4
movq %rax, %r14
movq (%rsp), %rdi
testq %rdi, %rdi
je 0x1cc12
movq 0x10(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
jmp 0x1cc12
movq %rax, %r14
movq 0x20(%rsp), %rdi
testq %rdi, %rdi
je 0x1cc29
movq 0x30(%rsp), %rsi
subq %rdi, %rsi
callq 0x53a0
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x1cc3d
movq 0x10(%rbx), %rsi
subq %rdi, %rsi
callq 0x53a0
movq %r14, %rdi
callq 0x56e0
nop