// File: /workspace/github_cpp_makefile_star2_O2/Shaviaditya[P]CReact-Esoteric-Language/transpiler1.cpp
// Function: Parser(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void Parser(std::string getData)
{
    getData = SpaceDebug(getData);
    if (getData[0] == '<')
    {
        if (getData[getData.length() - 1] == '>' && getData[getData.length() - 2] == '/')
        {
            if (getData.find('f') != std::string::npos && getData[getData.find('f') + 1] == 'x')
            {
                getData = getData.substr(1, getData.length() - 3);
                getData = SpaceDebug(getData);
                std::string ins_string = getData.substr(3, getData.length() - 3) + ";";
                setParserData.push_back(ins_string);
            }
            else if (getData.find('t') != std::string::npos && getData.substr(getData.find('t'), 5) == "throw")
            {
                getData = getData.substr(1, getData.length() - 3);
                getData = SpaceDebug(getData);
                std::string ins_string = "return " + getData.substr(6, getData.length() - 6) + ";";
                setParserData.push_back(ins_string);
            }
            else if (getData[getData.length() - 3] == '/')
            {
                getData = getData.substr(1, getData.length() - 4);
                getData = SpaceDebug(getData) + " ";
                std::vector<std::string> tmp;
                std::string stf = "";

                for (int i = 0; i < getData.length(); i++)
                {
                    if (getData[i] != ' ' && getData[i] != ',')
                    {
                        stf = stf + getData[i];
                    }
                    else
                    {
                        if (stf.length() != 0)
                            tmp.push_back(stf);
                        stf = "";
                    }
                }
                if (tmp[0] == "take")
                {
                    std::string tmpStr = "";
                    setParserData.push_back(dataMapper.find(tmp[0])->second);
                    for (int it = 1; it < tmp.size(); it++)
                    {
                        tmpStr += ((tmpStr == "") ? "" : " ") + tmp[it];
                    }
                    setParserData.push_back(tmpStr);
                }
            }
            else
            {
                /*This defines that we are only working with statements that have a self-closing tag to work with
                    Examples : <in val = 1/> or <in var1 = 3, var2 = 4/>
                */
                getData = getData.substr(1, getData.length() - 3);
                getData = SpaceDebug(getData);
                setParserData.push_back(dataMapper.find(getData.substr(0, 2))->second + getData.substr(2, getData.length() - 2) + ";");
                IOparser(getData + ",");
            }
        }
        else if (getData.find('f') != std::string::npos && getData[getData.find('f') + 1] == 'x')
        {
            getData = getData.substr(1, getData.length() - 2);
            getData = SpaceDebug(getData);
            std::string string_builder = "";
            for (int i = 0; i < getData.length(); i++)
            {
                if (getData[i] == '(' || getData[i] == ')' || getData[i] == ',')
                {
                    string_builder = string_builder + ' ' + getData[i] + ' ';
                }
                else
                {
                    string_builder += getData[i];
                }
            }
            getData = string_builder;
            string_builder = "";
            std::string stf="";
            for(int i=0;i<getData.length();i++){
                if(getData[i]!=' '){
                    string_builder+=getData[i];
                } else {
                    if(string_builder=="in" || string_builder=="ch"){
                        stf+=dataMapper.find(string_builder)->second + ' ';
                    } else if(string_builder=="void"){
                        stf+=string_builder+' ';
                    } else {
                        stf+=string_builder;
                    }
                    string_builder="";
                }
            }
            functionHeader.push_back(stf.substr(2,stf.length()-2)+";");
            stf += "{";
            setParserData.push_back(stf.substr(2,stf.length()-2));
        }
        else if (getData[1] == '%')
        {

            std::vector<std::string> tmp;
            std::string stf = "";
            for (int i = 2; i < getData.length() - 1; i++)
            {
                if (getData[i] != '%')
                {
                    stf = stf + getData[i];
                }
                else
                {
                    break;
                }
            }
            stf = stf + ';';
            setParserData.push_back(stf);
        }
        else if (getData[1] != '/')
        {
            std::string getTag = stripBraces(getData);
            getTag = SpaceDebug(getTag);
            if (dataMapper.find(getTag) != dataMapper.end())
            {
                if (getTag == "log" && getData.substr(getData.length() - 5, 4) == "/log")
                {
                    setParserData.push_back(dataMapper.find(getTag)->second);
                    setParserData.push_back(getData.substr(getData.find('>') + 1, getData.substr(getData.find('>') + 1, getData.length() - (getData.find('>') + 1)).find('<')));
                    setParserData.push_back(";");
                }
                else
                {
                    setParserData.push_back(dataMapper.find(getTag)->second);
                }
            }
        }
        else
        {
            if (getData.substr(2, 3) == "log")
                setParserData.push_back(dataMapper.find("/log")->second);
            else
                setParserData.push_back(dataMapper.find("/")->second);
        }
    }
    else
    {
        if (setParserData[setParserData.size() - 1] == "printf()")
            setParserData.push_back(getData);
        else
            setParserData[setParserData.size() - 1] += (" " + getData);
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x1b8, %rsp            # imm = 0x1B8
movq %rdi, %r12
leaq -0x1c0(%rbp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x2220
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq 0x33ae
leaq -0x48(%rbp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x1c0(%rbp), %rdi
callq 0x20e0
movq (%r12), %rax
cmpb $0x3c, (%rax)
jne 0x3805
movq 0x8(%r12), %rcx
cmpb $0x3e, -0x1(%rax,%rcx)
movq %r12, -0x98(%rbp)
jne 0x3838
cmpb $0x2f, -0x2(%rax,%rcx)
jne 0x3838
pushq $0x66
popq %rsi
movq %r12, %rdi
xorl %edx, %edx
callq 0x2200
cmpq $-0x1, %rax
je 0x3c9a
pushq $0x66
popq %rsi
movq %r12, %rdi
xorl %edx, %edx
callq 0x2200
movq (%r12), %rcx
cmpb $0x78, 0x1(%rcx,%rax)
jne 0x3c9a
movq 0x8(%r12), %rcx
addq $-0x3, %rcx
pushq $0x1
popq %rdx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21b0
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x1a0(%rbp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x2220
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq 0x33ae
leaq -0x48(%rbp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x1a0(%rbp), %rdi
callq 0x20e0
movq 0x8(%r12), %rcx
addq $-0x3, %rcx
leaq -0x68(%rbp), %rbx
pushq $0x3
popq %rdx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21b0
leaq 0x287e(%rip), %rdx      # 0x6059
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq 0x517a
leaq -0x68(%rbp), %rdi
callq 0x20e0
leaq 0x5a19(%rip), %rdi      # 0x9210
leaq -0x48(%rbp), %rsi
callq 0x5090
jmp 0x418c
movq 0x5a0c(%rip), %rdi      # 0x9218
addq $-0x20, %rdi
leaq 0x2834(%rip), %rsi      # 0x604b
callq 0x50cb
testb %al, %al
je 0x39a0
leaq 0x59e5(%rip), %rdi      # 0x9210
movq %r12, %rsi
callq 0x5090
jmp 0x4195
pushq $0x66
popq %rsi
movq %r12, %rdi
xorl %edx, %edx
callq 0x2200
cmpq $-0x1, %rax
je 0x39ca
pushq $0x66
popq %rsi
movq %r12, %rdi
xorl %edx, %edx
callq 0x2200
movq (%r12), %rcx
cmpb $0x78, 0x1(%rcx,%rax)
jne 0x39ce
movq 0x8(%r12), %rcx
addq $-0x2, %rcx
pushq $0x1
popq %rdx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21b0
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x100(%rbp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x2220
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq 0x33ae
leaq -0x48(%rbp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x100(%rbp), %rdi
callq 0x20e0
leaq 0x27c7(%rip), %rsi      # 0x60a4
leaq -0x48(%rbp), %rdi
leaq -0x68(%rbp), %rdx
callq 0x5054
xorl %r12d, %r12d
leaq -0x48(%rbp), %r14
leaq -0xc0(%rbp), %r15
leaq -0x90(%rbp), %r13
leaq -0x68(%rbp), %rbx
movq -0x98(%rbp), %rdi
cmpq %r12, 0x8(%rdi)
jbe 0x3a5a
movq (%rdi), %rax
movzbl (%rax,%r12), %eax
cmpq $0x2c, %rax
ja 0x398d
movabsq $0x130000000000, %rcx   # imm = 0x130000000000
btq %rax, %rcx
jae 0x398d
movq %r15, %rdi
movq %r14, %rsi
pushq $0x20
popq %rdx
callq 0x52f2
movq -0x98(%rbp), %rax
movq (%rax), %rax
movsbl (%rax,%r12), %edx
movq %r13, %rdi
movq %r15, %rsi
callq 0x51a3
movq %rbx, %rdi
movq %r13, %rsi
pushq $0x20
popq %rdx
callq 0x51a3
movq %r14, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
movq %r13, %rdi
callq 0x20e0
movq %r15, %rdi
callq 0x20e0
jmp 0x3998
movsbl %al, %esi
movq %r14, %rdi
callq 0x2150
incq %r12
jmp 0x3903
leaq 0x26f5(%rip), %rsi      # 0x609c
movq %rbx, %rdi
movq %r12, %rdx
callq 0x50db
movq 0x585f(%rip), %rdi      # 0x9218
addq $-0x20, %rdi
movq %rbx, %rsi
callq 0x22e0
jmp 0x418c
movq (%r12), %rcx
movzbl 0x1(%rcx), %eax
cmpl $0x2f, %eax
je 0x3c2a
cmpl $0x25, %eax
jne 0x3dcc
xorps %xmm0, %xmm0
movaps %xmm0, -0x90(%rbp)
andq $0x0, -0x80(%rbp)
leaq 0x26aa(%rip), %rsi      # 0x60a4
leaq -0x48(%rbp), %rdi
leaq -0x68(%rbp), %rdx
callq 0x5054
pushq $0x2
popq %r15
leaq -0x68(%rbp), %rbx
leaq -0x48(%rbp), %r14
movq 0x8(%r12), %rax
decq %rax
cmpq %r15, %rax
jbe 0x3f9f
movq (%r12), %rax
movb (%rax,%r15), %al
cmpb $0x25, %al
je 0x3f9f
movsbl %al, %edx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x52f2
movq %r14, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
incq %r15
jmp 0x3a13
leaq -0x48(%rbp), %rsi
callq 0x2100
leaq 0x263a(%rip), %rsi      # 0x60a4
leaq -0x48(%rbp), %rdi
callq 0x22d0
leaq 0x262a(%rip), %rsi      # 0x60a4
leaq -0x68(%rbp), %rdi
leaq -0x90(%rbp), %rdx
callq 0x5054
xorl %ebx, %ebx
leaq -0x48(%rbp), %r15
leaq -0x90(%rbp), %r13
leaq -0x68(%rbp), %r12
leaq 0x2602(%rip), %r14      # 0x60a4
movq -0x98(%rbp), %rax
cmpq %rbx, 0x8(%rax)
jbe 0x3b72
movq (%rax), %rax
movb (%rax,%rbx), %al
cmpb $0x20, %al
jne 0x3b24
movq %r15, %rdi
leaq 0x2573(%rip), %rsi      # 0x603a
callq 0x50cb
testb %al, %al
jne 0x3ae3
movq %r15, %rdi
leaq 0x2589(%rip), %rsi      # 0x6063
callq 0x50cb
testb %al, %al
je 0x3b37
leaq 0x56b6(%rip), %rdi      # 0x91a0
movq %r15, %rsi
callq 0x5c82
addq $0x28, %rax
movq %r13, %rdi
movq %rax, %rsi
pushq $0x20
popq %rdx
callq 0x52f2
movq %r12, %rdi
movq %r13, %rsi
callq 0x22e0
movq %r13, %rdi
callq 0x20e0
movq %r15, %rdi
movq %r14, %rsi
callq 0x22d0
jmp 0x3b2f
movsbl %al, %esi
movq %r15, %rdi
callq 0x2150
incq %rbx
jmp 0x3aa2
movq %r15, %rdi
leaq 0x255d(%rip), %rsi      # 0x609e
callq 0x50cb
testb %al, %al
je 0x3b65
movq %r13, %rdi
movq %r15, %rsi
pushq $0x20
popq %rdx
callq 0x52f2
movq %r12, %rdi
movq %r13, %rsi
callq 0x22e0
jmp 0x3b0f
movq %r12, %rdi
movq %r15, %rsi
callq 0x22e0
jmp 0x3b17
leaq -0x68(%rbp), %rsi
movq 0x8(%rsi), %rcx
addq $-0x2, %rcx
leaq -0xc0(%rbp), %rdi
pushq $0x2
popq %rdx
callq 0x21b0
leaq 0x24c5(%rip), %rdx      # 0x6059
leaq -0x90(%rbp), %rdi
leaq -0xc0(%rbp), %rsi
callq 0x517a
leaq 0x567a(%rip), %rdi      # 0x9228
leaq -0x90(%rbp), %rsi
callq 0x5dc0
leaq -0x90(%rbp), %rdi
callq 0x20e0
leaq -0xc0(%rbp), %rdi
callq 0x20e0
leaq 0x24af(%rip), %rsi      # 0x6088
leaq -0x68(%rbp), %rdi
callq 0x22c0
leaq -0x68(%rbp), %rsi
movq 0x8(%rsi), %rcx
addq $-0x2, %rcx
leaq -0x90(%rbp), %rdi
pushq $0x2
popq %rdx
callq 0x21b0
leaq 0x560c(%rip), %rdi      # 0x9210
leaq -0x90(%rbp), %rsi
callq 0x5dc0
leaq -0x90(%rbp), %rdi
callq 0x20e0
leaq -0x68(%rbp), %rdi
callq 0x20e0
jmp 0x418c
pushq $0x2
popq %rdx
pushq $0x3
popq %rcx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21b0
leaq 0x2413(%rip), %rsi      # 0x6055
movq %rbx, %rdi
callq 0x50cb
movl %eax, %r14d
movq %rbx, %rdi
callq 0x20e0
testb %r14b, %r14b
je 0x412d
leaq 0x23ef(%rip), %rsi      # 0x6054
leaq -0x48(%rbp), %rdi
leaq -0x68(%rbp), %rdx
callq 0x5054
leaq 0x5527(%rip), %rdi      # 0x91a0
leaq -0x48(%rbp), %rsi
callq 0x5c82
addq $0x28, %rax
leaq 0x5583(%rip), %rdi      # 0x9210
movq %rax, %rsi
callq 0x5090
jmp 0x418c
pushq $0x74
popq %rsi
movq %r12, %rdi
xorl %edx, %edx
callq 0x2200
cmpq $-0x1, %rax
je 0x3fee
pushq $0x74
popq %rsi
movq %r12, %rdi
xorl %edx, %edx
callq 0x2200
pushq $0x5
popq %rcx
movq %rbx, %rdi
movq %r12, %rsi
movq %rax, %rdx
callq 0x21b0
leaq 0x23ba(%rip), %rsi      # 0x6090
movq %rbx, %rdi
callq 0x50cb
movl %eax, %r14d
movq %rbx, %rdi
callq 0x20e0
testb %r14b, %r14b
je 0x3fee
movq 0x8(%r12), %rcx
addq $-0x3, %rcx
pushq $0x1
popq %rdx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21b0
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x180(%rbp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x2220
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq 0x33ae
leaq -0x48(%rbp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x180(%rbp), %rdi
callq 0x20e0
movq 0x8(%r12), %rcx
addq $-0x6, %rcx
leaq -0x90(%rbp), %rbx
pushq $0x6
popq %rdx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21b0
leaq 0x2314(%rip), %rsi      # 0x6096
leaq -0x68(%rbp), %rdi
movq %rbx, %rdx
callq 0x52c4
leaq 0x22c4(%rip), %rdx      # 0x6059
leaq -0x48(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x517a
leaq -0x68(%rbp), %rdi
callq 0x20e0
leaq -0x90(%rbp), %rdi
callq 0x20e0
leaq 0x5452(%rip), %rdi      # 0x9210
leaq -0x48(%rbp), %rsi
callq 0x5090
jmp 0x418c
leaq -0x1e0(%rbp), %r14
movq %r14, %rdi
movq %r12, %rsi
callq 0x2220
leaq -0x48(%rbp), %rdi
movq %r14, %rsi
callq 0x2784
leaq -0x1e0(%rbp), %rdi
callq 0x20e0
leaq -0xe0(%rbp), %rdi
leaq -0x48(%rbp), %r14
movq %r14, %rsi
callq 0x2220
leaq -0x68(%rbp), %rdi
leaq -0xe0(%rbp), %rsi
callq 0x33ae
leaq -0x68(%rbp), %rbx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0xe0(%rbp), %rdi
callq 0x20e0
leaq 0x535d(%rip), %rdi      # 0x91a0
movq %r14, %rsi
callq 0x5c82
testq %rax, %rax
je 0x418c
leaq 0x21fa(%rip), %rsi      # 0x6055
movq %r14, %rdi
callq 0x50cb
testb %al, %al
je 0x4166
movq 0x8(%r12), %rdx
addq $-0x5, %rdx
leaq -0x68(%rbp), %rdi
pushq $0x4
popq %rcx
movq %r12, %rsi
callq 0x21b0
leaq 0x21ca(%rip), %rsi      # 0x6054
movq %rbx, %rdi
callq 0x50cb
movl %eax, %r14d
movq %rbx, %rdi
callq 0x20e0
testb %r14b, %r14b
je 0x4166
leaq 0x52f3(%rip), %rdi      # 0x91a0
leaq -0x48(%rbp), %r14
movq %r14, %rsi
callq 0x5c82
addq $0x28, %rax
leaq 0x534c(%rip), %rdi      # 0x9210
movq %rax, %rsi
callq 0x5090
pushq $0x3e
popq %r15
movq %r12, %rdi
movl %r15d, %esi
xorl %edx, %edx
callq 0x2200
movq %rax, %rbx
movq %r12, %rdi
movl %r15d, %esi
xorl %edx, %edx
callq 0x2200
incq %rax
movq %rax, -0x98(%rbp)
movq 0x8(%r12), %r13
movq %r12, %rdi
movl %r15d, %esi
xorl %edx, %edx
callq 0x2200
notq %rax
addq %rax, %r13
leaq -0x90(%rbp), %rdi
movq %r12, %rsi
movq -0x98(%rbp), %rdx
movq %r13, %rcx
callq 0x21b0
incq %rbx
leaq -0x90(%rbp), %rdi
pushq $0x3c
popq %rsi
xorl %edx, %edx
callq 0x2200
leaq -0x68(%rbp), %rdi
movq %r12, %rsi
movq %rbx, %rdx
movq %rax, %rcx
callq 0x21b0
leaq 0x52bb(%rip), %rdi      # 0x9210
leaq -0x68(%rbp), %rsi
callq 0x5dc0
leaq -0x68(%rbp), %rdi
callq 0x20e0
leaq -0x90(%rbp), %rdi
callq 0x20e0
leaq 0x20df(%rip), %rsi      # 0x6059
leaq -0x68(%rbp), %rdi
leaq -0x90(%rbp), %rdx
callq 0x5054
leaq 0x527f(%rip), %rdi      # 0x9210
leaq -0x68(%rbp), %rsi
callq 0x5dc0
jmp 0x3c1c
leaq -0x68(%rbp), %rdi
leaq -0x48(%rbp), %rsi
pushq $0x3b
popq %rdx
callq 0x52f2
leaq -0x48(%rbp), %rbx
leaq -0x68(%rbp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x21e0
movq %r14, %rdi
callq 0x20e0
leaq 0x523f(%rip), %rdi      # 0x9210
movq %rbx, %rsi
callq 0x5090
leaq -0x48(%rbp), %rdi
callq 0x20e0
leaq -0x90(%rbp), %rdi
jmp 0x43d3
movq (%r12), %rax
movq 0x8(%r12), %rcx
cmpb $0x2f, -0x3(%rax,%rcx)
jne 0x41a7
addq $-0x4, %rcx
pushq $0x1
popq %r14
movq %rbx, %rdi
movq %r12, %rsi
movq %r14, %rdx
callq 0x21b0
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x160(%rbp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x2220
leaq -0x68(%rbp), %rdi
movq %rbx, %rsi
callq 0x33ae
leaq 0x204c(%rip), %rdx      # 0x609c
leaq -0x48(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x517a
leaq -0x48(%rbp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x68(%rbp), %rdi
callq 0x20e0
leaq -0x160(%rbp), %rdi
callq 0x20e0
xorps %xmm0, %xmm0
movaps %xmm0, -0xc0(%rbp)
andq $0x0, -0xb0(%rbp)
leaq 0x2002(%rip), %rsi      # 0x60a4
leaq -0x48(%rbp), %rdi
leaq -0x68(%rbp), %rdx
callq 0x5054
xorl %r13d, %r13d
leaq 0x1feb(%rip), %rbx      # 0x60a4
leaq -0x48(%rbp), %r12
leaq -0x68(%rbp), %r15
movq -0x98(%rbp), %rax
cmpq %r13, 0x8(%rax)
jbe 0x42e3
movq (%rax), %rax
movzbl (%rax,%r13), %eax
cmpl $0x20, %eax
je 0x40e4
cmpl $0x2c, %eax
jne 0x4107
cmpq $0x0, -0x40(%rbp)
je 0x40fa
leaq -0xc0(%rbp), %rdi
movq %r12, %rsi
callq 0x5090
movq %r12, %rdi
movq %rbx, %rsi
callq 0x22d0
jmp 0x4128
movsbl %al, %edx
movq %r15, %rdi
movq %r12, %rsi
callq 0x52f2
movq %r12, %rdi
movq %r15, %rsi
callq 0x21e0
movq %r15, %rdi
callq 0x20e0
incq %r13
jmp 0x40c1
leaq 0x1f27(%rip), %rsi      # 0x605b
leaq -0x48(%rbp), %rdi
leaq -0x68(%rbp), %rdx
callq 0x5054
leaq 0x5058(%rip), %rdi      # 0x91a0
leaq -0x48(%rbp), %rsi
callq 0x5c82
addq $0x28, %rax
leaq 0x50b4(%rip), %rdi      # 0x9210
movq %rax, %rsi
callq 0x5090
jmp 0x418c
leaq 0x5033(%rip), %rdi      # 0x91a0
leaq -0x48(%rbp), %r14
movq %r14, %rsi
callq 0x5c82
addq $0x28, %rax
leaq 0x508c(%rip), %rdi      # 0x9210
movq %rax, %rsi
callq 0x5090
leaq -0x48(%rbp), %rdi
callq 0x20e0
addq $0x1b8, %rsp            # imm = 0x1B8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
addq $-0x3, %rcx
pushq $0x1
popq %rdx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x21b0
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x140(%rbp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x2220
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq 0x33ae
leaq -0x48(%rbp), %rbx
movq %r12, %rdi
movq %rbx, %rsi
callq 0x21e0
movq %rbx, %rdi
callq 0x20e0
leaq -0x140(%rbp), %rdi
callq 0x20e0
leaq -0x90(%rbp), %rbx
pushq $0x2
popq %rcx
movq %rbx, %rdi
movq %r12, %rsi
xorl %edx, %edx
callq 0x21b0
leaq 0x4f75(%rip), %rdi      # 0x91a0
movq %rbx, %rsi
callq 0x5c82
movq %rax, %rbx
movq 0x8(%r12), %rcx
addq $-0x2, %rcx
leaq -0xc0(%rbp), %rdi
pushq $0x2
popq %rdx
movq %r12, %rsi
callq 0x21b0
addq $0x28, %rbx
leaq -0x68(%rbp), %rdi
leaq -0xc0(%rbp), %rdx
movq %rbx, %rsi
callq 0x532d
leaq 0x1dea(%rip), %rdx      # 0x6059
leaq -0x48(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x517a
leaq 0x4f8d(%rip), %rdi      # 0x9210
leaq -0x48(%rbp), %rsi
callq 0x5dc0
leaq -0x48(%rbp), %rdi
callq 0x20e0
leaq -0x68(%rbp), %rdi
callq 0x20e0
leaq -0xc0(%rbp), %rdi
callq 0x20e0
leaq -0x90(%rbp), %rdi
callq 0x20e0
leaq 0x1dcd(%rip), %rdx      # 0x608a
leaq -0x120(%rbp), %rbx
movq %rbx, %rdi
movq %r12, %rsi
callq 0x51da
movq %rbx, %rdi
callq 0x34b1
leaq -0x120(%rbp), %rdi
jmp 0x4190
movq -0xc0(%rbp), %rdi
leaq 0x1d80(%rip), %rsi      # 0x6071
callq 0x50cb
testb %al, %al
je 0x43c3
leaq 0x1d9f(%rip), %rbx      # 0x60a4
leaq -0x68(%rbp), %rdi
leaq -0x90(%rbp), %rdx
movq %rbx, %rsi
callq 0x5054
movq -0xc0(%rbp), %rsi
leaq 0x4e7a(%rip), %rdi      # 0x91a0
callq 0x5c82
addq $0x28, %rax
leaq 0x4eda(%rip), %rdi      # 0x9210
movq %rax, %rsi
callq 0x5090
pushq $0x20
popq %r13
leaq -0x68(%rbp), %r15
leaq -0x90(%rbp), %r12
movq -0xb8(%rbp), %rax
subq -0xc0(%rbp), %rax
sarq $0x5, %rax
cmpq %r14, %rax
jbe 0x43aa
movq %r15, %rdi
movq %rbx, %rsi
callq 0x50cb
testb %al, %al
leaq 0x1d24(%rip), %rsi      # 0x609c
cmovneq %rbx, %rsi
movq -0xc0(%rbp), %rdx
addq %r13, %rdx
movq %r12, %rdi
callq 0x50db
movq %r15, %rdi
movq %r12, %rsi
callq 0x22e0
movq %r12, %rdi
callq 0x20e0
incq %r14
addq $0x20, %r13
jmp 0x434d
leaq 0x4e5f(%rip), %rdi      # 0x9210
leaq -0x68(%rbp), %rsi
callq 0x5090
leaq -0x68(%rbp), %rdi
callq 0x20e0
leaq -0x48(%rbp), %rdi
callq 0x20e0
leaq -0xc0(%rbp), %rdi
callq 0x4d4c
jmp 0x4195
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
jmp 0x4505
jmp 0x4518
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
callq 0x20e0
jmp 0x43ff
movq %rax, %rbx
leaq -0x90(%rbp), %rdi
jmp 0x4505
jmp 0x4518
jmp 0x4599
jmp 0x45a9
jmp 0x4518
jmp 0x4518
jmp 0x45f7
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
jmp 0x447d
jmp 0x448e
movq %rax, %rbx
leaq -0x180(%rbp), %rdi
jmp 0x4629
jmp 0x4599
movq %rax, %rbx
leaq -0x120(%rbp), %rdi
jmp 0x4629
movq %rax, %rbx
leaq -0x48(%rbp), %rdi
callq 0x20e0
jmp 0x4468
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
callq 0x20e0
jmp 0x4476
movq %rax, %rbx
leaq -0xc0(%rbp), %rdi
callq 0x20e0
jmp 0x4491
jmp 0x448e
movq %rax, %rbx
jmp 0x45b5
movq %rax, %rbx
leaq -0x90(%rbp), %rdi
jmp 0x4629
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
callq 0x20e0
jmp 0x44bd
movq %rax, %rbx
leaq -0x140(%rbp), %rdi
jmp 0x4629
movq %rax, %rbx
leaq -0x160(%rbp), %rdi
jmp 0x4629
jmp 0x45f7
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
jmp 0x4629
movq %rax, %rbx
leaq -0x1a0(%rbp), %rdi
jmp 0x4629
jmp 0x4564
jmp 0x4564
jmp 0x4518
jmp 0x45ca
jmp 0x45ca
jmp 0x4518
movq %rax, %rbx
leaq -0xe0(%rbp), %rdi
callq 0x20e0
jmp 0x451b
jmp 0x45f7
jmp 0x45f7
jmp 0x4518
movq %rax, %rbx
movq %r14, %rdi
jmp 0x4629
movq %rax, %rbx
jmp 0x45d6
jmp 0x45e4
jmp 0x4619
jmp 0x4619
movq %rax, %rbx
leaq -0x90(%rbp), %rdi
callq 0x20e0
jmp 0x454e
movq %rax, %rbx
leaq -0xc0(%rbp), %rdi
jmp 0x45ee
jmp 0x4619
jmp 0x45f7
movq %rax, %rbx
jmp 0x462e
movq %rax, %rbx
leaq -0x100(%rbp), %rdi
jmp 0x4629
jmp 0x4619
jmp 0x45e4
jmp 0x45f7
jmp 0x45f7
jmp 0x45a9
movq %rax, %rbx
leaq -0x90(%rbp), %rdi
callq 0x20e0
jmp 0x459c
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
callq 0x20e0
jmp 0x45ac
jmp 0x45f7
movq %rax, %rbx
leaq -0x48(%rbp), %rdi
callq 0x20e0
leaq -0xc0(%rbp), %rdi
jmp 0x45dd
movq %rax, %rbx
leaq -0x1c0(%rbp), %rdi
jmp 0x4629
movq %rax, %rbx
leaq -0x48(%rbp), %rdi
callq 0x20e0
leaq -0x90(%rbp), %rdi
callq 0x4d4c
jmp 0x462e
movq %rax, %rbx
leaq -0x90(%rbp), %rdi
callq 0x20e0
jmp 0x461c
jmp 0x4619
movq %rax, %rbx
jmp 0x4625
movq %rax, %rbx
leaq -0x90(%rbp), %rdi
callq 0x20e0
jmp 0x4610
movq %rax, %rbx
leaq -0xc0(%rbp), %rdi
jmp 0x4620
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
callq 0x20e0
leaq -0x48(%rbp), %rdi
callq 0x20e0
movq %rbx, %rdi
callq 0x2290