// File: /workspace/github_cpp_makefile_star2_O2/Manuel123cool[P]smiley/read_variable.cpp
// Function: Variable::testIfBoolVar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void Variable::testIfBoolVar(std::string code)
{    
    if (code.length() <= 0)
        return;

    bool isInString{ MyRegex::testString(code, ":b) ") };
    if (!isInString) 
        return;

    std::string identifier{ getIdentifier(code) };

    std::string value1;
    bool start{ false };
    int whiteSpaceCount{ 0 };
    for(const auto &c : code) 
    {    
        if (c == ' ')
             ++whiteSpaceCount;

        if (whiteSpaceCount == 3)
            break;

        if (start)
            value1 += c;    

        if (whiteSpaceCount == 2)
            start = true;
    } 

    if (value1 == "true" || value1 == "false")
    {
        TypeValue typeValue;
        typeValue.identifier = identifier; 
        typeValue.type = BOOL; 
        typeValue.value = value1;
        setVariable(typeValue.identifier, typeValue.value, typeValue.type);
        return;
    }

    std::string stringValue;
    bool firstValueIsString{ false };
    if (value1.at(0) == '"')
    {
        firstValueIsString = true;
        for (int i{ 1 }; i < value1.length() - 1; ++i)
        {
           stringValue += value1.at(i); 
        } 
        value1 = stringValue;
    }

    std::string operatorStr;
    bool start1{ false };
    int whiteSpaceCount1{ 0 };
    for(const auto &c : code) 
    {    
        if (c == ' ')
             ++whiteSpaceCount1;

        if (whiteSpaceCount1 == 4)
            break;

        if (start1)
            operatorStr += c;    

        if (whiteSpaceCount1 == 3)
            start1 = true;
    } 

    std::string value2;
    bool start2{ false };
    int whiteSpaceCount2{ 0 };
    for(const auto &c : code) 
    {    
        if (c == ' ')
             ++whiteSpaceCount2;

        if (start2)
            value2 += c;    

        if (whiteSpaceCount2 == 4)
            start2 = true;
    } 
    std::string stringValue2;
    bool secondValueIsString{ false };
    if (value2.at(0) == '"')
    {
        secondValueIsString = true;
        for (int i{ 1 }; i < value2.length() - 1; ++i)
        {
           stringValue += value2.at(i); 
        } 
        value2 = stringValue;
    }

    char firstChar[value1.length() + 1];
    char secondChar[value2.length() + 1];

    std::strcpy(firstChar, value1.c_str());    
    std::strcpy(secondChar, value2.c_str());    
    
    bool firstIsNum{ false };
    bool secondIsNum{ false };

    if (static_cast<int>(firstChar[0]) <= 57 && static_cast<int>(firstChar[0]) >= 48)
        firstIsNum = true;
         
    if (static_cast<int>(secondChar[0]) <= 57 && static_cast<int>(secondChar[0]) >= 48)
        secondIsNum = true;
 
    TypeValue typeValue;
    typeValue.identifier = identifier; 
    typeValue.type = BOOL; 

    float number1{ 0 };
    float number2{ 0 };

    if (firstIsNum)
        number1 = std::stof(value1);
    
    if (secondIsNum)
        number2 = std::stof(value2);
    
    if (getTypeByIdent(value1) == FLOAT) 
    {
        number1 = std::stof(getValueVar(value1));
        firstIsNum = true;
    }

    if (getTypeByIdent(value2) == FLOAT) 
    {
        number2 = std::stof(getValueVar(value2));
        secondIsNum = true;
    }

    if (operatorStr == "==")
    {
        if (firstIsNum && secondIsNum)
        {
            if (number1 == number2)
            {
                typeValue.value = "true"; 
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }                      
            else
            {
                typeValue.value = "false";
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }            
        }
        if (getTypeByIdent(value1) == INT || getTypeByIdent(value2) == INT) 
        {
            int numberInt1;
            int numberInt2;
            if (getTypeByIdent(value1) == INT && getTypeByIdent(value2) == INT) 
            {
                numberInt1 = std::stoi(getValueVar(value1));
                numberInt2 = std::stoi(getValueVar(value2));
            }
            else if (getTypeByIdent(value1) == INT)
            {
                numberInt1 = std::stoi(getValueVar(value1));
                numberInt2 = static_cast<int>(number2);
            }
            else if (getTypeByIdent(value2) == INT)
            {
                numberInt2 = static_cast<int>(number1);
                numberInt2 = std::stoi(getValueVar(value2));
            }
            if (numberInt1 == numberInt2)
            {
                typeValue.value = "true"; 
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }                      
            else
            {
                typeValue.value = "false";
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }            
        } 
        if (getTypeByIdent(value1) == STRING || getTypeByIdent(value2) == STRING)
        {
            std::string firstString;
            std::string secondString;

            if (firstValueIsString)
                firstString = value1;
            else
                firstString = getValueVar(value1); 

            if (secondValueIsString)
                secondString = value2;
            else
                secondString = getValueVar(value2); 
 
            if (firstString == secondString)
            {
                typeValue.value = "true"; 
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }                      
            else
            {
                typeValue.value = "false";
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }            
        } 
    }

    if (operatorStr == "!=")
    {
        if (firstIsNum && secondIsNum)
        {
            if (number1 != number2)
            {
                typeValue.value = "true"; 
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }                      
            else
            {
                typeValue.value = "false";
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }            
        }
        if (getTypeByIdent(value1) == INT || getTypeByIdent(value2) == INT) 
        {
            int numberInt1;
            int numberInt2;
            if (getTypeByIdent(value1) == INT && getTypeByIdent(value2) == INT) 
            {
                numberInt1 = std::stoi(getValueVar(value1));
                numberInt2 = std::stoi(getValueVar(value2));
            }
            else if (getTypeByIdent(value1) == INT)
            {
                numberInt1 = std::stoi(getValueVar(value1));
                numberInt2 = static_cast<int>(number2);
            }
            else if (getTypeByIdent(value2) == INT)
            {
                numberInt2 = static_cast<int>(number1);
                numberInt2 = std::stoi(getValueVar(value2));
            }
            if (numberInt1 != numberInt2)
            {
                typeValue.value = "true"; 
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }                      
            else
            {
                typeValue.value = "false";
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }            
        } 
        if (getTypeByIdent(value1) == STRING || getTypeByIdent(value2) == STRING)
        {
            std::string firstString;
            std::string secondString;

            if (firstValueIsString)
                firstString = value1;
            else
                firstString = getValueVar(value1); 

            if (secondValueIsString)
                secondString = value2;
            else
                secondString = getValueVar(value2); 
 
            if (firstString != secondString)
            {
                typeValue.value = "true"; 
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }                      
            else
            {
                typeValue.value = "false";
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }            
        } 
 
    }

    if (operatorStr == "<")
    {
        if (firstIsNum && secondIsNum)
        {
            if (number1 < number2)
            {
                typeValue.value = "true"; 
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }                      
            else
            {
                typeValue.value = "false";
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }            
        }
        if (getTypeByIdent(value1) == INT || getTypeByIdent(value2) == INT) 
        {
            int numberInt1;
            int numberInt2;
            if (getTypeByIdent(value1) == INT && getTypeByIdent(value2) == INT) 
            {
                numberInt1 = std::stoi(getValueVar(value1));
                numberInt2 = std::stoi(getValueVar(value2));
            }
            else if (getTypeByIdent(value1) == INT)
            {
                numberInt1 = std::stoi(getValueVar(value1));
                numberInt2 = static_cast<int>(number2);
            }
            else if (getTypeByIdent(value2) == INT)
            {
                numberInt2 = static_cast<int>(number1);
                numberInt2 = std::stoi(getValueVar(value2));
            }
            if (numberInt1 < numberInt2)
            {
                typeValue.value = "true"; 
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }                      
            else
            {
                typeValue.value = "false";
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }            
        } 
    }

    if (operatorStr == ">")
    {
        if (firstIsNum && secondIsNum)
        {
            if (number1 > number2)
            {
                typeValue.value = "true"; 
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }                      
            else
            {
                typeValue.value = "false";
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }            
        }
        if (getTypeByIdent(value1) == INT || getTypeByIdent(value2) == INT) 
        {
            int numberInt1;
            int numberInt2;
            if (getTypeByIdent(value1) == INT && getTypeByIdent(value2) == INT) 
            {
                numberInt1 = std::stoi(getValueVar(value1));
                numberInt2 = std::stoi(getValueVar(value2));
            }
            else if (getTypeByIdent(value1) == INT)
            {
                numberInt1 = std::stoi(getValueVar(value1));
                numberInt2 = static_cast<int>(number2);
            }
            else if (getTypeByIdent(value2) == INT)
            {
                numberInt2 = static_cast<int>(number1);
                numberInt2 = std::stoi(getValueVar(value2));
            }
            if (numberInt1 > numberInt2)
            {
                typeValue.value = "true"; 
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }                      
            else
            {
                typeValue.value = "false";
                setVariable(typeValue.identifier, typeValue.value, typeValue.type);
                return;
            }            
        } 
    }
    std::cerr << "Bool: syntax or whatever mistake" << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xdb8, %rsp            # imm = 0xDB8
cmpq $0x0, 0x8(%rsi)
je 0x4fc3
movq %rsi, %r15
movq %rdi, %r14
leaq -0xca0(%rbp), %rdi
callq 0x21e0
leaq 0x6da4(%rip), %rsi      # 0xa0b6
leaq -0xc80(%rbp), %rdi
leaq -0xc0(%rbp), %rdx
callq 0x57ec
leaq -0xca0(%rbp), %rdi
leaq -0xc80(%rbp), %rsi
callq 0x5ddc
movl %eax, %ebx
leaq -0xc80(%rbp), %rdi
callq 0x20c0
leaq -0xca0(%rbp), %rdi
callq 0x20c0
testb %bl, %bl
je 0x4fc3
movq %r14, -0xf8(%rbp)
leaq -0xde0(%rbp), %rbx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x21e0
leaq -0xc60(%rbp), %rdi
movq %rdi, -0xf0(%rbp)
movq %rbx, %rdx
callq 0x2de0
leaq -0xde0(%rbp), %rdi
callq 0x20c0
leaq -0x68(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
movq (%r15), %rbx
movq %r15, -0x58(%rbp)
movq 0x8(%r15), %r13
xorl %r14d, %r14d
xorl %r15d, %r15d
xorl %r12d, %r12d
cmpq %r14, %r13
je 0x33f3
movb (%rbx,%r14), %al
xorl %ecx, %ecx
cmpb $0x20, %al
sete %cl
addl %ecx, %r15d
cmpl $0x3, %r15d
je 0x33f3
testb $0x1, %r12b
je 0x33e4
movsbl %al, %esi
leaq -0x78(%rbp), %rdi
callq 0x2140
cmpl $0x2, %r15d
sete %al
orb %al, %r12b
incq %r14
jmp 0x33b9
leaq 0x6cc1(%rip), %rsi      # 0xa0bb
leaq -0x78(%rbp), %rdi
callq 0x58aa
testb %al, %al
jne 0x341f
leaq 0x6cb2(%rip), %rsi      # 0xa0c0
leaq -0x78(%rbp), %rdi
callq 0x58aa
testb %al, %al
je 0x34e0
leaq -0xa8(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
xorl %ecx, %ecx
movb %cl, (%rax)
leaq -0x98(%rbp), %rbx
leaq -0x88(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb %cl, (%rax)
leaq -0xc60(%rbp), %rsi
movq %rbx, %rdi
callq 0x20f0
movq -0xf8(%rbp), %r14
leaq -0xb8(%rbp), %r15
movl $0x3, -0x8(%r15)
leaq -0x78(%rbp), %rsi
movq %r15, %rdi
callq 0x20f0
leaq -0xc40(%rbp), %rdi
movq %rbx, %rsi
callq 0x21e0
leaq -0xc20(%rbp), %rdi
movq %r15, %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0xc40(%rbp), %rsi
leaq -0xc20(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0xc20(%rbp), %rdi
callq 0x20c0
leaq -0xc40(%rbp), %rdi
callq 0x20c0
leaq -0xc0(%rbp), %rdi
callq 0x5872
jmp 0x4fae
leaq -0x170(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
leaq -0x78(%rbp), %rdi
xorl %esi, %esi
callq 0x2290
movq -0x58(%rbp), %r15
movb (%rax), %r14b
cmpb $0x22, %r14b
jne 0x3551
pushq $0x1
popq %r12
leaq -0x78(%rbp), %r13
leaq -0x180(%rbp), %rbx
movq -0x70(%rbp), %rax
decq %rax
cmpq %r12, %rax
jbe 0x3541
movq %r13, %rdi
movq %r12, %rsi
callq 0x2290
movsbl (%rax), %esi
movq %rbx, %rdi
callq 0x2140
incq %r12
jmp 0x351a
leaq -0x78(%rbp), %rdi
leaq -0x180(%rbp), %rsi
callq 0x20f0
movb %r14b, -0x2a(%rbp)
leaq -0x150(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
movq (%r15), %r12
movq 0x8(%r15), %r14
xorl %r13d, %r13d
xorl %r15d, %r15d
xorl %ebx, %ebx
cmpq %r13, %r14
je 0x35b1
movb (%r12,%r13), %al
xorl %ecx, %ecx
cmpb $0x20, %al
sete %cl
addl %ecx, %ebx
cmpl $0x4, %ebx
je 0x35b1
testb $0x1, %r15b
je 0x35a3
movsbl %al, %esi
leaq -0x160(%rbp), %rdi
callq 0x2140
cmpl $0x3, %ebx
sete %al
orb %al, %r15b
incq %r13
jmp 0x3577
leaq -0xd0(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
movq -0x58(%rbp), %rax
movq (%rax), %rcx
movq %rcx, -0xe8(%rbp)
movq 0x8(%rax), %rax
movq %rax, -0x58(%rbp)
xorl %r13d, %r13d
xorl %r15d, %r15d
xorl %r12d, %r12d
cmpq %r13, -0x58(%rbp)
je 0x3626
movq -0xe8(%rbp), %rax
movb (%rax,%r13), %al
xorl %ebx, %ebx
cmpb $0x20, %al
sete %r14b
testb $0x1, %r15b
je 0x3611
movsbl %al, %esi
leaq -0xe0(%rbp), %rdi
callq 0x2140
movb %r14b, %bl
addl %ebx, %r12d
cmpl $0x4, %r12d
sete %al
orb %al, %r15b
incq %r13
jmp 0x35e3
leaq -0xcb0(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
leaq -0xe0(%rbp), %rdi
xorl %esi, %esi
callq 0x2290
movb (%rax), %bl
cmpb $0x22, %bl
jne 0x369d
leaq -0xe0(%rbp), %r15
leaq -0x180(%rbp), %r13
pushq $0x1
popq %r14
movq -0xd8(%rbp), %rax
decq %rax
cmpq %r14, %rax
jbe 0x368a
movq %r15, %rdi
movq %r14, %rsi
callq 0x2290
movsbl (%rax), %esi
movq %r13, %rdi
callq 0x2140
incq %r14
jmp 0x3660
leaq -0xe0(%rbp), %rdi
leaq -0x180(%rbp), %rsi
callq 0x20f0
movb %bl, -0x29(%rbp)
movq %rsp, -0x120(%rbp)
movq -0x70(%rbp), %r14
movq %rsp, %r15
addq $0x10, %r14
andq $-0x10, %r14
movq %r15, %rdi
subq %r14, %rdi
movq %rdi, %rsp
negq %r14
movq -0xd8(%rbp), %r12
movq %rsp, %r13
addq $0x10, %r12
andq $-0x10, %r12
movq %r13, %rbx
subq %r12, %rbx
movq %rbx, %rsp
negq %r12
movq -0x78(%rbp), %rsi
callq 0x2170
movq -0xe0(%rbp), %rsi
movq %rbx, %rdi
callq 0x2170
movb (%r15,%r14), %r14b
addb $-0x30, %r14b
cmpb $0xa, %r14b
setb %r15b
movb (%r13,%r12), %bl
addb $-0x30, %bl
cmpb $0xa, %bl
setb %r12b
leaq -0xa8(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
xorl %ecx, %ecx
movb %cl, (%rax)
leaq -0x98(%rbp), %rdi
leaq -0x88(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb %cl, (%rax)
leaq -0xc60(%rbp), %rsi
callq 0x20f0
movl $0x3, -0xc0(%rbp)
xorps %xmm0, %xmm0
movss %xmm0, -0x58(%rbp)
movss %xmm0, -0xe8(%rbp)
cmpb $0x9, %r14b
movq -0xf8(%rbp), %r14
ja 0x378a
leaq -0x78(%rbp), %rdi
xorl %esi, %esi
callq 0x58b7
movss %xmm0, -0xe8(%rbp)
cmpb $0x9, %bl
ja 0x37a2
leaq -0xe0(%rbp), %rdi
xorl %esi, %esi
callq 0x58b7
movss %xmm0, -0x58(%rbp)
leaq -0xc00(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0xc00(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0xc00(%rbp), %rdi
callq 0x20c0
cmpl $0x2, %ebx
jne 0x3822
leaq -0xbe0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0xbe0(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
xorl %esi, %esi
callq 0x58b7
movss %xmm0, -0xe8(%rbp)
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0xbe0(%rbp), %rdi
callq 0x20c0
movb $0x1, %r15b
leaq -0xbc0(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0xbc0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0xbc0(%rbp), %rdi
callq 0x20c0
cmpl $0x2, %ebx
jne 0x38a5
leaq -0xba0(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0xba0(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
xorl %esi, %esi
callq 0x58b7
movss %xmm0, -0x58(%rbp)
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0xba0(%rbp), %rdi
callq 0x20c0
movb $0x1, %r12b
leaq 0x681a(%rip), %rsi      # 0xa0c6
leaq -0x160(%rbp), %rdi
callq 0x58aa
testb %al, %al
je 0x3c73
movl %r15d, %eax
andb %r12b, %al
cmpb $0x1, %al
jne 0x3953
movss -0xe8(%rbp), %xmm0
ucomiss -0x58(%rbp), %xmm0
jne 0x39f7
jp 0x39f7
leaq 0x67ce(%rip), %rsi      # 0xa0bb
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0xb80(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0xb60(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0xb80(%rbp), %rsi
leaq -0xb60(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0xb60(%rbp), %rdi
callq 0x20c0
leaq -0xb80(%rbp), %rdi
jmp 0x4f66
leaq -0x2c0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x2c0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
testl %eax, %eax
je 0x3a64
leaq -0xb00(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0xb00(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0xb00(%rbp), %rdi
callq 0x20c0
leaq -0x2c0(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x3a70
leaq -0x280(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x280(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
cmpl $0x1, %eax
jne 0x3bf3
leaq -0x280(%rbp), %rdi
callq 0x20c0
jmp 0x3c34
leaq 0x66c2(%rip), %rsi      # 0xa0c0
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0xb40(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0xb20(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0xb40(%rbp), %rsi
leaq -0xb20(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0xb20(%rbp), %rdi
callq 0x20c0
leaq -0xb40(%rbp), %rdi
jmp 0x4f66
leaq -0x2c0(%rbp), %rdi
callq 0x20c0
leaq -0x2a0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x2a0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
testl %eax, %eax
je 0x3aa1
leaq -0x2a0(%rbp), %rdi
callq 0x20c0
jmp 0x3ae5
leaq -0xae0(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0xae0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0xae0(%rbp), %rdi
callq 0x20c0
leaq -0x2a0(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x44b1
leaq -0xa80(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0xa80(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0xa80(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x3ba0
leaq -0xa40(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0xa40(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0xa40(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
jne 0x454a
leaq -0xa20(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0xa20(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0xa20(%rbp), %rdi
callq 0x20c0
jmp 0x454a
leaq -0xa60(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0xa60(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %r13d
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0xa60(%rbp), %rdi
callq 0x20c0
cvttss2si -0x58(%rbp), %ebx
jmp 0x4545
leaq -0x980(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x980(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x980(%rbp), %rdi
callq 0x20c0
leaq -0x280(%rbp), %rdi
callq 0x20c0
cmpl $0x1, %ebx
jne 0x3c73
leaq -0x40(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
xorl %ecx, %ecx
leaq -0x108(%rbp), %rdx
andq $0x0, -0x8(%rdx)
movb %cl, (%rax)
movq %rdx, -0x10(%rdx)
movb %cl, (%rdx)
cmpb $0x22, -0x2a(%rbp)
jne 0x3e72
leaq -0x50(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x20f0
jmp 0x3ebf
leaq 0x644f(%rip), %rsi      # 0xa0c9
leaq -0x160(%rbp), %rdi
callq 0x58aa
testb %al, %al
je 0x41c3
movl %r15d, %eax
andb %r12b, %al
cmpb $0x1, %al
jne 0x3d1d
movss -0xe8(%rbp), %xmm0
ucomiss -0x58(%rbp), %xmm0
jne 0x3cb0
jnp 0x3dc1
leaq 0x6404(%rip), %rsi      # 0xa0bb
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x920(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x900(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x920(%rbp), %rsi
leaq -0x900(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x900(%rbp), %rdi
callq 0x20c0
leaq -0x920(%rbp), %rdi
jmp 0x4f66
leaq -0x260(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x260(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
testl %eax, %eax
je 0x3e2e
leaq -0x8a0(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x8a0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x8a0(%rbp), %rdi
callq 0x20c0
leaq -0x260(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x3e3a
leaq -0x220(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x220(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
cmpl $0x1, %eax
jne 0x4143
leaq -0x220(%rbp), %rdi
callq 0x20c0
jmp 0x4184
leaq 0x62f8(%rip), %rsi      # 0xa0c0
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x8e0(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x8c0(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x8e0(%rbp), %rsi
leaq -0x8c0(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x8c0(%rbp), %rdi
callq 0x20c0
leaq -0x8e0(%rbp), %rdi
jmp 0x4f66
leaq -0x260(%rbp), %rdi
callq 0x20c0
leaq -0x240(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x240(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
testl %eax, %eax
je 0x3ff1
leaq -0x240(%rbp), %rdi
callq 0x20c0
jmp 0x4035
leaq -0x960(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x140(%rbp), %rdi
leaq -0x960(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
leaq -0x140(%rbp), %rbx
movq %rbx, %rsi
callq 0x21c0
movq %rbx, %rdi
callq 0x20c0
leaq -0x960(%rbp), %rdi
callq 0x20c0
cmpb $0x22, -0x29(%rbp)
jne 0x3eda
leaq -0x118(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x20f0
jmp 0x3f2d
leaq -0x940(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x140(%rbp), %rdi
leaq -0x940(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x118(%rbp), %rdi
leaq -0x140(%rbp), %rbx
movq %rbx, %rsi
callq 0x21c0
movq %rbx, %rdi
callq 0x20c0
leaq -0x940(%rbp), %rdi
callq 0x20c0
leaq -0x50(%rbp), %rdi
leaq -0x118(%rbp), %rsi
callq 0x27e7
testb %al, %al
je 0x3f99
leaq 0x6173(%rip), %rsi      # 0xa0bb
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0xdc0(%rbp), %r13
movq %r13, %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0xda0(%rbp), %r15
movq %r15, %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
movq %r14, %rdi
movq %r13, %rsi
movq %r15, %rdx
callq 0x3026
jmp 0x4808
leaq 0x6120(%rip), %rsi      # 0xa0c0
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0xd80(%rbp), %r13
movq %r13, %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0xd60(%rbp), %r15
movq %r15, %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
movq %r14, %rdi
movq %r13, %rsi
movq %r15, %rdx
callq 0x3026
jmp 0x4808
leaq -0x880(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x880(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x880(%rbp), %rdi
callq 0x20c0
leaq -0x240(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x49c3
leaq -0x820(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x820(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x820(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x40f0
leaq -0x7e0(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x7e0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x7e0(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
jne 0x4a5c
leaq -0x7c0(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x7c0(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x7c0(%rbp), %rdi
callq 0x20c0
jmp 0x4a5c
leaq -0x800(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x800(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %r13d
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x800(%rbp), %rdi
callq 0x20c0
cvttss2si -0x58(%rbp), %ebx
jmp 0x4a57
leaq -0x720(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x720(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x720(%rbp), %rdi
callq 0x20c0
leaq -0x220(%rbp), %rdi
callq 0x20c0
cmpl $0x1, %ebx
jne 0x41c3
leaq -0x40(%rbp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
xorl %ecx, %ecx
leaq -0x108(%rbp), %rdx
andq $0x0, -0x8(%rdx)
movb %cl, (%rax)
movq %rdx, -0x10(%rdx)
movb %cl, (%rdx)
cmpb $0x22, -0x2a(%rbp)
jne 0x4691
leaq -0x50(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x20f0
jmp 0x46de
leaq 0x6130(%rip), %rsi      # 0xa2fa
leaq -0x160(%rbp), %rdi
callq 0x58aa
testb %al, %al
je 0x42d2
movl %r15d, %eax
andb %r12b, %al
cmpb $0x1, %al
jne 0x4267
movss -0x58(%rbp), %xmm0
ucomiss -0xe8(%rbp), %xmm0
jbe 0x4400
leaq 0x5eba(%rip), %rsi      # 0xa0bb
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x6c0(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x6a0(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x6c0(%rbp), %rsi
leaq -0x6a0(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x6a0(%rbp), %rdi
callq 0x20c0
leaq -0x6c0(%rbp), %rdi
jmp 0x4f66
leaq -0x200(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x200(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
testl %eax, %eax
je 0x446d
leaq -0x640(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x640(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x640(%rbp), %rdi
callq 0x20c0
leaq -0x200(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x4479
leaq 0x6024(%rip), %rsi      # 0xa2fd
leaq -0x160(%rbp), %rdi
callq 0x58aa
testb %al, %al
je 0x43e0
andb %r12b, %r15b
cmpb $0x1, %r15b
jne 0x4375
movss -0xe8(%rbp), %xmm0
ucomiss -0x58(%rbp), %xmm0
jbe 0x4624
leaq 0x5dac(%rip), %rsi      # 0xa0bb
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x4c0(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x4a0(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x4c0(%rbp), %rsi
leaq -0x4a0(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x4a0(%rbp), %rdi
callq 0x20c0
leaq -0x4c0(%rbp), %rdi
jmp 0x4f66
leaq -0x1c0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x1c0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
testl %eax, %eax
je 0x492c
leaq -0x440(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x440(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x440(%rbp), %rdi
callq 0x20c0
leaq -0x1c0(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x4938
movq 0x9c09(%rip), %rdi      # 0xdff0
leaq 0x5cde(%rip), %rsi      # 0xa0cc
callq 0x2180
movq %rax, %rdi
callq 0x20d0
jmp 0x4f6b
leaq 0x5cb9(%rip), %rsi      # 0xa0c0
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x680(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x660(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x680(%rbp), %rsi
leaq -0x660(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x660(%rbp), %rdi
callq 0x20c0
leaq -0x680(%rbp), %rdi
jmp 0x4f66
leaq -0x200(%rbp), %rdi
callq 0x20c0
leaq -0x1e0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x1e0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
testl %eax, %eax
je 0x482d
leaq -0x1e0(%rbp), %rdi
callq 0x20c0
jmp 0x4871
leaq -0xac0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0xac0(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %r13d
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0xac0(%rbp), %rdi
callq 0x20c0
leaq -0xaa0(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0xaa0(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %ebx
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0xaa0(%rbp), %rdi
callq 0x20c0
cmpl %ebx, %r13d
jne 0x45b7
leaq 0x5b6a(%rip), %rsi      # 0xa0bb
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0xa00(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x9e0(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0xa00(%rbp), %rsi
leaq -0x9e0(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x9e0(%rbp), %rdi
callq 0x20c0
leaq -0xa00(%rbp), %rdi
jmp 0x4f66
leaq 0x5b02(%rip), %rsi      # 0xa0c0
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x9c0(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x9a0(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x9c0(%rbp), %rsi
leaq -0x9a0(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x9a0(%rbp), %rdi
callq 0x20c0
leaq -0x9c0(%rbp), %rdi
jmp 0x4f66
leaq 0x5a95(%rip), %rsi      # 0xa0c0
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x480(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x460(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x480(%rbp), %rsi
leaq -0x460(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x460(%rbp), %rdi
callq 0x20c0
leaq -0x480(%rbp), %rdi
jmp 0x4f66
leaq -0x700(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x140(%rbp), %rdi
leaq -0x700(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
leaq -0x140(%rbp), %rbx
movq %rbx, %rsi
callq 0x21c0
movq %rbx, %rdi
callq 0x20c0
leaq -0x700(%rbp), %rdi
callq 0x20c0
cmpb $0x22, -0x29(%rbp)
jne 0x46f9
leaq -0x118(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x20f0
jmp 0x474c
leaq -0x6e0(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x140(%rbp), %rdi
leaq -0x6e0(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x118(%rbp), %rdi
leaq -0x140(%rbp), %rbx
movq %rbx, %rsi
callq 0x21c0
movq %rbx, %rdi
callq 0x20c0
leaq -0x6e0(%rbp), %rdi
callq 0x20c0
leaq -0x50(%rbp), %rdi
leaq -0x118(%rbp), %rsi
callq 0x270e
testb %al, %al
je 0x47b5
leaq 0x5954(%rip), %rsi      # 0xa0bb
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0xd40(%rbp), %r13
movq %r13, %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0xd20(%rbp), %r15
movq %r15, %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
movq %r14, %rdi
movq %r13, %rsi
movq %r15, %rdx
callq 0x3026
jmp 0x4808
leaq 0x5904(%rip), %rsi      # 0xa0c0
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0xd00(%rbp), %r13
movq %r13, %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0xce0(%rbp), %r15
movq %r15, %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
movq %r14, %rdi
movq %r13, %rsi
movq %r15, %rdx
callq 0x3026
movq %r15, %rdi
callq 0x20c0
movq %r13, %rdi
callq 0x20c0
leaq -0x118(%rbp), %rdi
callq 0x20c0
leaq -0x50(%rbp), %rdi
jmp 0x4f66
leaq -0x620(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x620(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x620(%rbp), %rdi
callq 0x20c0
leaq -0x1e0(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x4c88
leaq -0x5c0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x5c0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x5c0(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x4970
leaq -0x580(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x580(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x580(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
jne 0x4d21
leaq -0x560(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x560(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x560(%rbp), %rdi
callq 0x20c0
jmp 0x4d8e
leaq -0x1c0(%rbp), %rdi
callq 0x20c0
leaq -0x1a0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x1a0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
testl %eax, %eax
je 0x4b36
leaq -0x1a0(%rbp), %rdi
callq 0x20c0
jmp 0x4b7a
leaq -0x5a0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x5a0(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %r13d
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x5a0(%rbp), %rdi
callq 0x20c0
cvttss2si -0x58(%rbp), %ebx
jmp 0x4d1c
leaq -0x860(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x860(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %r13d
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x860(%rbp), %rdi
callq 0x20c0
leaq -0x840(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x840(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %ebx
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x840(%rbp), %rdi
callq 0x20c0
cmpl %ebx, %r13d
jne 0x4ac9
leaq 0x565d(%rip), %rsi      # 0xa0c0
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x760(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x740(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x760(%rbp), %rsi
leaq -0x740(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x740(%rbp), %rdi
callq 0x20c0
leaq -0x760(%rbp), %rdi
jmp 0x4f66
leaq 0x55eb(%rip), %rsi      # 0xa0bb
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x7a0(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x780(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x7a0(%rbp), %rsi
leaq -0x780(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x780(%rbp), %rdi
callq 0x20c0
leaq -0x7a0(%rbp), %rdi
jmp 0x4f66
leaq -0x420(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x420(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x420(%rbp), %rdi
callq 0x20c0
leaq -0x1a0(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x4dfb
leaq -0x3c0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x3c0(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x3c0(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
je 0x4c35
leaq -0x380(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x380(%rbp), %rsi
movq %r14, %rdi
callq 0x3278
movl %eax, %ebx
leaq -0x380(%rbp), %rdi
callq 0x20c0
testl %ebx, %ebx
jne 0x4e94
leaq -0x360(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x360(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x360(%rbp), %rdi
callq 0x20c0
jmp 0x4efe
leaq -0x3a0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x3a0(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %r13d
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x3a0(%rbp), %rdi
callq 0x20c0
cvttss2si -0x58(%rbp), %ebx
jmp 0x4e8f
leaq -0x600(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x600(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %r13d
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x600(%rbp), %rdi
callq 0x20c0
leaq -0x5e0(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x5e0(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %ebx
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x5e0(%rbp), %rdi
callq 0x20c0
cmpl %ebx, %r13d
jge 0x4d8e
leaq 0x5393(%rip), %rsi      # 0xa0bb
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x540(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x520(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x540(%rbp), %rsi
leaq -0x520(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x520(%rbp), %rdi
callq 0x20c0
leaq -0x540(%rbp), %rdi
jmp 0x4f66
leaq 0x532b(%rip), %rsi      # 0xa0c0
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x500(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x4e0(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x500(%rbp), %rsi
leaq -0x4e0(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x4e0(%rbp), %rdi
callq 0x20c0
leaq -0x500(%rbp), %rdi
jmp 0x4f66
leaq -0x400(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x400(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %r13d
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x400(%rbp), %rdi
callq 0x20c0
leaq -0x3e0(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x21e0
leaq -0x50(%rbp), %rdi
leaq -0x3e0(%rbp), %rdx
movq %r14, %rsi
callq 0x310e
leaq -0x50(%rbp), %rdi
pushq $0xa
popq %rdx
xorl %esi, %esi
callq 0x58d0
movl %eax, %ebx
leaq -0x50(%rbp), %rdi
callq 0x20c0
leaq -0x3e0(%rbp), %rdi
callq 0x20c0
cmpl %ebx, %r13d
jle 0x4efe
leaq 0x5220(%rip), %rsi      # 0xa0bb
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x340(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x320(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x340(%rbp), %rsi
leaq -0x320(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x320(%rbp), %rdi
callq 0x20c0
leaq -0x340(%rbp), %rdi
jmp 0x4f66
leaq 0x51bb(%rip), %rsi      # 0xa0c0
leaq -0xb8(%rbp), %rdi
callq 0x2280
leaq -0x300(%rbp), %rdi
leaq -0x98(%rbp), %rsi
callq 0x21e0
leaq -0x2e0(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x21e0
movl -0xc0(%rbp), %ecx
leaq -0x300(%rbp), %rsi
leaq -0x2e0(%rbp), %rdx
movq %r14, %rdi
callq 0x3026
leaq -0x2e0(%rbp), %rdi
callq 0x20c0
leaq -0x300(%rbp), %rdi
callq 0x20c0
leaq -0xc0(%rbp), %rdi
callq 0x5872
movq -0x120(%rbp), %rsp
leaq -0xcc0(%rbp), %rdi
callq 0x20c0
leaq -0xe0(%rbp), %rdi
callq 0x20c0
leaq -0x160(%rbp), %rdi
callq 0x20c0
leaq -0x180(%rbp), %rdi
callq 0x20c0
leaq -0x78(%rbp), %rdi
callq 0x20c0
leaq -0xc60(%rbp), %rdi
callq 0x20c0
leaq -0x28(%rbp), %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x4fe3
movq %rax, %r14
leaq -0x3e0(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x5005
movq %rax, %r14
leaq -0x400(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x5027
movq %rax, %r14
leaq -0x360(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x5049
movq %rax, %r14
leaq -0x5e0(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x506b
movq %rax, %r14
leaq -0x600(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x508d
movq %rax, %r14
leaq -0x3a0(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x50af
movq %rax, %r14
leaq -0x560(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x420(%rbp), %rdi
callq 0x20c0
jmp 0x53ec
movq %rax, %r14
leaq -0x2e0(%rbp), %rdi
callq 0x20c0
jmp 0x50e8
movq %rax, %r14
leaq -0x300(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x5105
movq %rax, %r14
leaq -0x840(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x5127
movq %rax, %r14
leaq -0x860(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x380(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x5158
movq %rax, %r14
leaq -0x5a0(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x320(%rbp), %rdi
callq 0x20c0
jmp 0x517d
movq %rax, %r14
leaq -0x340(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x620(%rbp), %rdi
callq 0x20c0
jmp 0x551b
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x51ae
movq %rax, %r14
leaq -0x7c0(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x4e0(%rbp), %rdi
callq 0x20c0
jmp 0x51d3
movq %rax, %r14
leaq -0x500(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x780(%rbp), %rdi
callq 0x20c0
jmp 0x51f3
movq %rax, %r14
leaq -0x7a0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0xce0(%rbp), %rdi
callq 0x20c0
jmp 0x5224
movq %rax, %r14
leaq -0xd20(%rbp), %rdi
callq 0x20c0
jmp 0x5233
movq %rax, %r14
leaq -0xd00(%rbp), %rdi
jmp 0x547c
movq %rax, %r14
leaq -0xd40(%rbp), %rdi
jmp 0x547c
movq %rax, %r14
leaq -0x6e0(%rbp), %rdi
jmp 0x547c
jmp 0x568e
movq %rax, %r14
leaq -0x700(%rbp), %rdi
jmp 0x547c
jmp 0x568e
movq %rax, %r14
leaq -0x460(%rbp), %rdi
callq 0x20c0
jmp 0x528c
movq %rax, %r14
leaq -0x4a0(%rbp), %rdi
callq 0x20c0
jmp 0x529b
movq %rax, %r14
leaq -0x480(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x4c0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x52b8
movq %rax, %r14
leaq -0xaa0(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x52da
movq %rax, %r14
leaq -0xac0(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x3c0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x580(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x520(%rbp), %rdi
callq 0x20c0
jmp 0x531d
movq %rax, %r14
leaq -0x540(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x720(%rbp), %rdi
callq 0x20c0
jmp 0x5568
movq %rax, %r14
leaq -0x440(%rbp), %rdi
callq 0x20c0
jmp 0x554a
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x5362
movq %rax, %r14
leaq -0x800(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x880(%rbp), %rdi
callq 0x20c0
jmp 0x55da
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x5398
movq %rax, %r14
leaq -0xa20(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x660(%rbp), %rdi
callq 0x20c0
jmp 0x53ce
movq %rax, %r14
leaq -0x6a0(%rbp), %rdi
callq 0x20c0
jmp 0x53dd
movq %rax, %r14
leaq -0x680(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x6c0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x1a0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x9a0(%rbp), %rdi
callq 0x20c0
jmp 0x540c
movq %rax, %r14
leaq -0x9c0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x5c0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0xd60(%rbp), %rdi
callq 0x20c0
jmp 0x544c
movq %rax, %r14
leaq -0xda0(%rbp), %rdi
callq 0x20c0
jmp 0x5458
movq %rax, %r14
leaq -0xd80(%rbp), %rdi
jmp 0x547c
movq %rax, %r14
leaq -0xdc0(%rbp), %rdi
jmp 0x547c
movq %rax, %r14
leaq -0x940(%rbp), %rdi
jmp 0x547c
jmp 0x568e
movq %rax, %r14
leaq -0x960(%rbp), %rdi
callq 0x20c0
jmp 0x5691
jmp 0x568e
movq %rax, %r14
leaq -0x7e0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x640(%rbp), %rdi
callq 0x20c0
jmp 0x55ee
movq %rax, %r14
leaq -0x980(%rbp), %rdi
callq 0x20c0
jmp 0x5631
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x54d3
movq %rax, %r14
leaq -0xa60(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x8c0(%rbp), %rdi
callq 0x20c0
jmp 0x54f8
movq %rax, %r14
leaq -0x8e0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0xae0(%rbp), %rdi
callq 0x20c0
jmp 0x5676
movq %rax, %r14
leaq -0x1e0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x740(%rbp), %rdi
callq 0x20c0
jmp 0x553b
movq %rax, %r14
leaq -0x760(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x1c0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x820(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x220(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0xa40(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x8a0(%rbp), %rdi
callq 0x20c0
jmp 0x5685
movq %rax, %r14
leaq -0x900(%rbp), %rdi
callq 0x20c0
jmp 0x55ab
movq %rax, %r14
leaq -0x920(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0xb20(%rbp), %rdi
callq 0x20c0
jmp 0x55cb
movq %rax, %r14
leaq -0xb40(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x240(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x200(%rbp), %rdi
jmp 0x5704
jmp 0x568e
movq %rax, %r14
leaq -0x9e0(%rbp), %rdi
callq 0x20c0
jmp 0x5613
movq %rax, %r14
leaq -0xa00(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0xa80(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x280(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0xb00(%rbp), %rdi
callq 0x20c0
jmp 0x56ab
movq %rax, %r14
leaq -0xb60(%rbp), %rdi
callq 0x20c0
jmp 0x5662
movq %rax, %r14
leaq -0xb80(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x2a0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x260(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x118(%rbp), %rdi
callq 0x20c0
leaq -0x50(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x2c0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x56c5
movq %rax, %r14
leaq -0xba0(%rbp), %rdi
jmp 0x5704
jmp 0x5748
movq %rax, %r14
leaq -0x50(%rbp), %rdi
callq 0x20c0
jmp 0x56e1
movq %rax, %r14
leaq -0xbe0(%rbp), %rdi
jmp 0x5704
jmp 0x5748
jmp 0x5748
movq %rax, %r14
leaq -0xbc0(%rbp), %rdi
jmp 0x5704
movq %rax, %r14
leaq -0xc00(%rbp), %rdi
callq 0x20c0
jmp 0x574b
jmp 0x5748
jmp 0x5796
jmp 0x57bf
movq %rax, %r14
leaq -0xc20(%rbp), %rdi
callq 0x20c0
jmp 0x572b
movq %rax, %r14
leaq -0xc40(%rbp), %rdi
callq 0x20c0
jmp 0x577e
movq %rax, %r14
movq %rbx, -0xf0(%rbp)
jmp 0x57d7
movq %rax, %r14
leaq -0xc0(%rbp), %rdi
callq 0x5872
jmp 0x5799
movq %rax, %r14
jmp 0x57b1
movq %rax, %r14
leaq -0xc80(%rbp), %rdi
callq 0x20c0
jmp 0x5772
movq %rax, %r14
leaq -0xca0(%rbp), %rdi
jmp 0x57de
movq %rax, %r14
leaq -0xc0(%rbp), %rdi
callq 0x5872
jmp 0x57ce
movq %rax, %r14
jmp 0x57a5
movq %rax, %r14
jmp 0x57ce
movq %rax, %r14
leaq -0xcc0(%rbp), %rdi
callq 0x20c0
leaq -0xe0(%rbp), %rdi
callq 0x20c0
leaq -0x160(%rbp), %rdi
callq 0x20c0
jmp 0x57c2
movq %rax, %r14
leaq -0x180(%rbp), %rdi
callq 0x20c0
leaq -0x78(%rbp), %rdi
callq 0x20c0
movq -0xf0(%rbp), %rdi
callq 0x20c0
movq %r14, %rdi
callq 0x2250
nop