// File: /workspace/github_cpp_makefile_star2_O2/joncampbell123[P]haxcc/haxpp.cpp
// Function: parse_tokens(std::vector<token, std::allocator<token>>&, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
void parse_tokens(token_string &tokens,const string::iterator lib,const string::iterator lie,const int32_t lineno,const string &source) {
    auto li = lib;

    (void)lineno;
    (void)source;

    bool macro_expand = true;
    bool is_pp = false;

    /* initial whitespace skip */
    parse_skip_whitespace(li,lie);
    if (li == lie) return;

    /* li != lie */
    if (*li == '#') {
        /* preprocessor handling */
        li++;
        parse_skip_whitespace(li,lie);
        /* expect identifier, or else */
        tokens.push_back(token::PREPROC);
        is_pp = true;

        {
            string ident = parse_identifier(li,lie); /* will throw exception otherwise */
            enum token::token_t tk;

            if ((tk=is_pp_keyword(ident)) != token::NONE) {
                tokens.push_back(tk);

                switch (tk) {
                    case token::IFDEF:
                    case token::IFNDEF:
                    case token::DEFINE:
                    case token::UNDEF:
                        parse_skip_whitespace(li,lie);
                        ident = parse_identifier(li,lie);
                        tokens.push_back(move(token(token::IDENTIFIER,ident)));
                        macro_expand = false;
                        break;
                    case token::ENDIF:
                    case token::ELSE:
                        macro_expand = false;
                        break;
                    default:
                        break;
                };

                if (tk == token::DEFINE) {
                    parse_tokens_define(tokens,li,lie,lineno,source);
                    return;
                }
            }
            else {
                throw invalid_argument(string("Invalid preprocessor directive ") + ident);
            }
        }

        parse_skip_whitespace(li,lie);
    }

    /* general parsing. expects code to skip whitespace after doing it's part */
    while (li != lie) {
        if (*li == '\"')
            tokens.push_back(move(parse_string(li,lie)));
        else if (*li == '\'')
            tokens.push_back(move(parse_sq_char(li,lie)));
        else if (strit_next_match_inc(li,lie,'.','.','.'))
            tokens.push_back(token::DOTDOTDOT);
        else if (strit_next_match_inc(li,lie,'.'))
            tokens.push_back(token::PERIOD);
        else if (strit_next_match_inc(li,lie,','))
            tokens.push_back(token::COMMA);
        else if (strit_next_match_inc(li,lie,'<','<','='))
            tokens.push_back(token::LEFT_SHIFT_EQUALS);
        else if (strit_next_match_inc(li,lie,'<','<'))
            tokens.push_back(token::LEFT_SHIFT);
        else if (strit_next_match_inc(li,lie,'<','='))
            tokens.push_back(token::LESS_THAN_OR_EQUAL);
        else if (strit_next_match_inc(li,lie,'<'))
            tokens.push_back(token::LESS_THAN);
        else if (strit_next_match_inc(li,lie,'>','>','='))
            tokens.push_back(token::RIGHT_SHIFT_EQUALS);
        else if (strit_next_match_inc(li,lie,'>','>'))
            tokens.push_back(token::RIGHT_SHIFT);
        else if (strit_next_match_inc(li,lie,'>','='))
            tokens.push_back(token::GREATER_THAN_OR_EQUAL);
        else if (strit_next_match_inc(li,lie,'>'))
            tokens.push_back(token::GREATER_THAN);
        else if (strit_next_match_inc(li,lie,'-','>'))
            tokens.push_back(token::PTRARROW);
        else if (strit_next_match_inc(li,lie,'-','-'))
            tokens.push_back(token::DECREMENT);
        else if (strit_next_match_inc(li,lie,'-','='))
            tokens.push_back(token::MINUS_EQUALS);
        else if (strit_next_match_inc(li,lie,'-'))
            tokens.push_back(token::MINUS);
        else if (strit_next_match_inc(li,lie,'+','+'))
            tokens.push_back(token::INCREMENT);
        else if (strit_next_match_inc(li,lie,'+','='))
            tokens.push_back(token::PLUS_EQUALS);
        else if (strit_next_match_inc(li,lie,'+'))
            tokens.push_back(token::PLUS);
        else if (strit_next_match_inc(li,lie,'=','='))
            tokens.push_back(token::EQUALS);
        else if (strit_next_match_inc(li,lie,'='))
            tokens.push_back(token::ASSIGNMENT);
        else if (strit_next_match_inc(li,lie,'~'))
            tokens.push_back(token::COMPLEMENT);
        else if (strit_next_match_inc(li,lie,'^','='))
            tokens.push_back(token::XOR_EQUALS);
        else if (strit_next_match_inc(li,lie,'^'))
            tokens.push_back(token::CARET);
        else if (strit_next_match_inc(li,lie,'?'))
            tokens.push_back(token::QUESTIONMARK);
        else if (strit_next_match_inc(li,lie,':'))
            tokens.push_back(token::COLON);
        else if (strit_next_match_inc(li,lie,'|','|'))
            tokens.push_back(token::LOGICAL_OR);
        else if (strit_next_match_inc(li,lie,'|','='))
            tokens.push_back(token::OR_EQUALS);
        else if (strit_next_match_inc(li,lie,'|'))
            tokens.push_back(token::PIPE);
        else if (strit_next_match_inc(li,lie,'!','='))
            tokens.push_back(token::NOT_EQUALS);
        else if (strit_next_match_inc(li,lie,'!'))
            tokens.push_back(token::NOT);
        else if (strit_next_match_inc(li,lie,'&','&'))
            tokens.push_back(token::LOGICAL_AND);
        else if (strit_next_match_inc(li,lie,'&','='))
            tokens.push_back(token::AND_EQUALS);
        else if (strit_next_match_inc(li,lie,'&'))
            tokens.push_back(token::AMPERSAND);
        else if (strit_next_match_inc(li,lie,'*','='))
            tokens.push_back(token::MULTIPLY_EQUALS);
        else if (strit_next_match_inc(li,lie,'*'))
            tokens.push_back(token::STAR);
        else if (strit_next_match_inc(li,lie,'/','='))
            tokens.push_back(token::DIVIDE_EQUALS);
        else if (strit_next_match_inc(li,lie,'/'))
            tokens.push_back(token::DIVISION);
        else if (strit_next_match_inc(li,lie,'%','='))
            tokens.push_back(token::MODULUS_EQUALS);
        else if (strit_next_match_inc(li,lie,'%'))
            tokens.push_back(token::MODULUS);
        else if (strit_next_match_inc(li,lie,'('))
            tokens.push_back(token::OPEN_PARENS);
        else if (strit_next_match_inc(li,lie,')'))
            tokens.push_back(token::CLOSE_PARENS);
        else if (strit_next_match_inc(li,lie,'['))
            tokens.push_back(token::OPEN_SBRACKET);
        else if (strit_next_match_inc(li,lie,']'))
            tokens.push_back(token::CLOSE_SBRACKET);
        else if (strit_next_match_inc(li,lie,'{'))
            tokens.push_back(token::OPEN_CBRACKET);
        else if (strit_next_match_inc(li,lie,'}'))
            tokens.push_back(token::CLOSE_CBRACKET);
        else if (strit_next_match_inc(li,lie,'#','#'))
            tokens.push_back(token::TOKEN_PASTE);
        else if (strit_next_match_inc(li,lie,'#'))
            tokens.push_back(token::STRINGIFY);
        else if (isdigit(*li))
            tokens.push_back(move(parse_number(li,lie)));
        else if (isidentifier_fc(*li)) {
            string ident = parse_identifier(li,lie); /* will throw exception otherwise */
            enum token::token_t tk;

            if (is_pp && (tk=is_pp_keyword(ident)) != token::NONE) {
                tokens.push_back(tk);

                if (tk == token::DEFINED) {
                    string macro;
                    int parens = 0;

                    /* macro name must be preserved, do not expand, so the test can be done properly.
                     * we allow defined x or defined(x) */
                    parse_skip_whitespace(li,lie);
                    while (strit_next_match_inc(li,lie,'(')) {
                        parens++;
                        parse_skip_whitespace(li,lie);
                    }

                    macro = parse_identifier(li,lie);
                    parse_skip_whitespace(li,lie);
                    tokens.push_back(move(token(token::IDENTIFIER,macro)));

                    while (parens > 0) {
                        if (!strit_next_match_inc(li,lie,')'))
                            throw invalid_argument("defined() with mismatched parameters");

                        parse_skip_whitespace(li,lie);
                        parens--;
                    }
                }
            }
            else if ((tk=is_keyword(ident)) != token::NONE)
                tokens.push_back(tk);
            else if (macro_expand && is_macro(ident))
                do_macro_expand(tokens,ident,li,lie,lineno,source);
            else
                tokens.push_back(move(token(token::IDENTIFIER,ident)));
        }
        else {
            throw invalid_argument(string("token parser unexpected char ") + *li);
        }

        parse_skip_whitespace(li,lie);
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x148, %rsp            # imm = 0x148
movq %r8, %r12
movl %ecx, 0xa4(%rsp)
movq %rdx, %rbx
movq %rdi, %r14
leaq 0x8(%rsp), %r15
movq %rsi, (%r15)
movq %r15, %rdi
movq %rdx, %rsi
callq 0x3055
movq (%r15), %rax
cmpq %rbx, %rax
je 0x5fbf
movb (%rax), %cl
movb $0x1, %r13b
movb %cl, 0x8e(%rsp)
cmpb $0x23, %cl
jne 0x5fee
incq %rax
leaq 0x8(%rsp), %rdi
movq %rax, (%rdi)
movq %rbx, %rsi
callq 0x3055
leaq 0x58(%rsp), %r15
movl $0x2, -0x48(%r15)
xorl %eax, %eax
movb %al, -0x44(%r15)
andq $0x0, -0x40(%r15)
movb $0x1, -0x38(%r15)
fldz
fstpt 0x30(%rsp)
andl $0x0, -0x18(%r15)
orq $-0x1, -0x8(%r15)
leaq 0x68(%rsp), %r13
movq %r13, -0x10(%r13)
andq $0x0, -0x8(%r13)
movb %al, (%r13)
leaq 0x10(%rsp), %rsi
movq %r14, %rdi
callq 0xd252
movq %r12, %rbp
movq %r15, %rdi
callq 0x2408
leaq 0xa8(%rsp), %r15
leaq 0x8(%rsp), %rsi
movq %r15, %rdi
movq %rbx, %rdx
callq 0x4681
movq %r15, %rdi
callq 0x3073
testl %eax, %eax
je 0x7616
movl %eax, %r15d
leaq 0x58(%rsp), %r12
movl %eax, -0x48(%r12)
xorl %eax, %eax
movb %al, -0x44(%r12)
andq $0x0, -0x40(%r12)
movb $0x1, -0x38(%r12)
fldz
fstpt 0x30(%rsp)
andl $0x0, -0x18(%r12)
orq $-0x1, -0x8(%r12)
movq %r13, (%r12)
andq $0x0, 0x8(%r12)
movb %al, 0x10(%r12)
leaq 0x10(%rsp), %rsi
movq %r14, %rdi
callq 0xd252
movq %r12, %rdi
callq 0x2408
leal -0x64(%r15), %eax
cmpl $0x4, %eax
jae 0x5f85
leaq 0x8(%rsp), %r12
movq %r12, %rdi
movq %rbx, %rsi
callq 0x3055
leaq 0x10(%rsp), %rdi
movq %r12, %rsi
movq %rbx, %rdx
callq 0x4681
leaq 0xa8(%rsp), %r12
leaq 0x10(%rsp), %r13
movq %r12, %rdi
movq %r13, %rsi
callq 0x2240
movq %r13, %rdi
callq 0x2408
leaq 0x128(%rsp), %rdi
movq %r12, %rsi
callq 0x2270
leaq 0x10(%rsp), %rdi
pushq $0x5
popq %rsi
leaq 0x128(%rsp), %rdx
callq 0x29a2
movq %rbp, %r12
leaq 0x10(%rsp), %rsi
movq %r14, %rdi
callq 0xd252
leaq 0x58(%rsp), %rdi
callq 0x2408
leaq 0x128(%rsp), %rdi
callq 0x2408
xorl %eax, %eax
jmp 0x5f99
xorl %r13d, %r13d
cmpl $0x5a, %r15d
je 0x5fd1
movb $0x1, %al
cmpl $0x62, %r15d
movq %rbp, %r12
je 0x5fd4
movl %eax, %r13d
cmpl $0x66, %r15d
jne 0x5fd4
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
movq %rbx, %rdx
callq 0x7916
leaq 0xa8(%rsp), %rdi
callq 0x2408
addq $0x148, %rsp            # imm = 0x148
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rbp, %r12
leaq 0xa8(%rsp), %rdi
callq 0x2408
leaq 0x8(%rsp), %rdi
movq %rbx, %rsi
callq 0x3055
movl %r13d, 0xa0(%rsp)
leaq 0x8(%rsp), %rbp
xorl %r13d, %r13d
leaq 0x10(%rsp), %r15
movq 0x8(%rsp), %rax
cmpq %rbx, %rax
je 0x5fbf
movzbl (%rax), %eax
movq %rbp, %rdi
movq %rbx, %rsi
cmpl $0x27, %eax
je 0x6076
cmpl $0x22, %eax
jne 0x60c8
callq 0x4559
movl $0xb, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
leaq 0x68(%rsp), %rcx
movq %rcx, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %rax, 0x50(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
callq 0x3aac
movl $0x9, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rcx
movq %rcx, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %rax, 0x18(%rsp)
movb %r13b, 0x20(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
pushq $0x2e
popq %rcx
movl %ecx, %edx
movl %ecx, %r8d
callq 0x3e6e
testb %al, %al
je 0x6127
movl $0x19, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq 0x8(%rsp), %rax
cmpq %rbx, %rax
je 0x61eb
cmpb $0x2e, (%rax)
jne 0x6190
incq %rax
movq %rax, 0x8(%rsp)
movl $0x18, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
cmpb $0x2c, (%rax)
jne 0x61eb
incq %rax
movq %rax, 0x8(%rsp)
movl $0x17, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rbp, %rdi
movq %rbx, %rsi
pushq $0x3c
popq %rcx
movl %ecx, %edx
pushq $0x3d
popq %r8
callq 0x3e6e
testb %al, %al
je 0x6251
movl $0x4c, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq 0x8(%rsp), %rax
cmpq %rbx, %rax
je 0x638c
cmpb $0x3c, (%rax)
jne 0x638c
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x62d6
cmpb $0x3c, (%rcx)
jne 0x62cd
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x38, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
cmpb $0x3c, (%rax)
jne 0x638c
cmpq %rbx, %rcx
je 0x6337
cmpb $0x3d, (%rcx)
jne 0x6337
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x36, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
cmpb $0x3c, (%rax)
jne 0x638c
movq %rcx, 0x8(%rsp)
movl $0x34, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rbp, %rdi
movq %rbx, %rsi
pushq $0x3e
popq %rcx
movl %ecx, %edx
pushq $0x3d
popq %r8
callq 0x3e6e
testb %al, %al
je 0x6407
movl $0x4d, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
leaq 0x58(%rsp), %rdi
callq 0x2408
movq %rbp, %rdi
movq %rbx, %rsi
callq 0x3055
jmp 0x6003
movq 0x8(%rsp), %rax
movsbl (%rax), %edi
cmpq %rbx, %rax
je 0x6531
movzbl %dil, %ecx
leal -0x21(%rcx), %edx
cmpl $0x1e, %edx
ja 0x64a1
leaq 0x8fcd(%rip), %rsi      # 0xf3f8
movslq (%rsi,%rdx,4), %rcx
addq %rsi, %rcx
jmpq *%rcx
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x7224
cmpb $0x3d, (%rcx)
jne 0x7224
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x3b, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leal -0x7b(%rcx), %edx
cmpl $0x3, %edx
jbe 0x66c6
cmpl $0x5b, %ecx
je 0x6e6e
cmpl $0x5d, %ecx
je 0x6dc2
cmpl $0x5e, %ecx
jne 0x6531
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x731d
cmpb $0x3d, (%rcx)
jne 0x731d
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x4f, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leal -0x30(%rdi), %eax
cmpl $0x9, %eax
ja 0x6557
movq %r15, %rdi
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x4302
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %r12, 0x90(%rsp)
callq 0x3658
testb %al, %al
je 0x7681
leaq 0xa8(%rsp), %r12
movq %r12, %rdi
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x4681
cmpb $0x23, 0x8e(%rsp)
jne 0x665f
movq %r12, %rdi
callq 0x3073
testl %eax, %eax
je 0x665f
movl %eax, 0x9c(%rsp)
movl %eax, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
movq 0x90(%rsp), %r12
leaq 0x58(%rsp), %rdi
callq 0x2408
cmpl $0x63, 0x9c(%rsp)
jne 0x6888
leaq 0xd8(%rsp), %rax
movq %rax, 0xc8(%rsp)
andq $0x0, 0xd0(%rsp)
movb $0x0, 0xd8(%rsp)
xorl %r12d, %r12d
movq %rbp, %rdi
movq %rbx, %rsi
callq 0x3055
movq 0x8(%rsp), %rax
cmpq %rbx, %rax
je 0x67c4
cmpb $0x28, (%rax)
jne 0x67c4
incq %rax
movq %rax, 0x8(%rsp)
incl %r12d
jmp 0x6630
movq %r12, %rdi
callq 0x31b6
testl %eax, %eax
je 0x672c
movl %eax, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
movq 0x90(%rsp), %r12
leaq 0x58(%rsp), %rdi
jmp 0x67ba
leaq 0x8da7(%rip), %rsi      # 0xf474
movslq (%rsi,%rdx,4), %rcx
addq %rsi, %rcx
jmpq *%rcx
incq %rax
movq %rax, 0x8(%rsp)
movl $0x24, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
cmpb $0x0, 0xa0(%rsp)
movq 0x90(%rsp), %r12
je 0x6775
leaq 0xa8(%rsp), %rdi
callq 0x3639
testb %al, %al
je 0x6775
movq %r14, %rdi
leaq 0xa8(%rsp), %rsi
movq %rbp, %rdx
movq %rbx, %rcx
movl 0xa4(%rsp), %r8d
movq %r12, %r9
callq 0x5463
jmp 0x6888
leaq 0xe8(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x2270
movq %r15, %rdi
pushq $0x5
popq %rsi
leaq 0xe8(%rsp), %rdx
callq 0x29a2
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
leaq 0x58(%rsp), %rdi
callq 0x2408
leaq 0xe8(%rsp), %rdi
callq 0x2408
jmp 0x6888
movq %r15, %rdi
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x4681
leaq 0xc8(%rsp), %rdi
movq %r15, %rsi
callq 0x2240
movq %r15, %rdi
callq 0x2408
movq %rbp, %rdi
movq %rbx, %rsi
callq 0x3055
leaq 0x108(%rsp), %rdi
leaq 0xc8(%rsp), %rsi
callq 0x2270
movq %r15, %rdi
pushq $0x5
popq %rsi
leaq 0x108(%rsp), %rdx
callq 0x29a2
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
leaq 0x58(%rsp), %rdi
callq 0x2408
leaq 0x108(%rsp), %rdi
callq 0x2408
testl %r12d, %r12d
jle 0x6873
movq 0x8(%rsp), %rax
cmpq %rbx, %rax
je 0x75e1
cmpb $0x29, (%rax)
jne 0x75e1
incq %rax
movq %rax, 0x8(%rsp)
movq %rbp, %rdi
movq %rbx, %rsi
callq 0x3055
decl %r12d
jmp 0x683f
leaq 0xc8(%rsp), %rdi
callq 0x2408
movq 0x90(%rsp), %r12
leaq 0xa8(%rsp), %rdi
jmp 0x63f2
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x6f87
cmpb $0x3e, (%rcx)
jne 0x6f87
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x39, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x6ff0
cmpb $0x3d, (%rcx)
jne 0x6ff0
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x4a, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
incq %rax
movq %rax, 0x8(%rsp)
movl $0x46, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
incq %rax
movq %rax, 0x8(%rsp)
movl $0x21, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x7043
cmpb $0x2b, (%rcx)
jne 0x7043
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0xf, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x70ac
cmpb $0x3d, (%rcx)
jne 0x70ac
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x4b, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x70ff
cmpb $0x26, (%rcx)
jne 0x70ff
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x43, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x7168
cmpb $0x3d, (%rcx)
jne 0x7168
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x3a, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
incq %rax
movq %rax, 0x8(%rsp)
movl $0x45, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x71bb
cmpb $0x3e, (%rcx)
jne 0x71bb
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x1a, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x7277
cmpb $0x23, (%rcx)
jne 0x7277
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x7b, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
incq %rax
movq %rax, 0x8(%rsp)
movl $0x20, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x72ca
cmpb $0x3d, (%rcx)
jne 0x72ca
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x49, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
incq %rax
movq %rax, 0x8(%rsp)
movl $0x23, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
incq %rax
movq %rax, 0x8(%rsp)
movl $0x25, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
incq %rax
movq %rax, 0x8(%rsp)
movl $0x22, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
incq %rax
movq %rax, 0x8(%rsp)
movl $0x1c, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
leaq 0x1(%rax), %rcx
cmpq %rbx, %rcx
je 0x7370
cmpb $0x7c, (%rcx)
jne 0x7370
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x44, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
cmpq %rbx, %rcx
je 0x73d9
cmpb $0x3d, (%rcx)
jne 0x73d9
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x37, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0x32, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
cmpq %rbx, %rcx
je 0x742c
cmpb $0x3d, (%rcx)
jne 0x742c
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x47, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0x33, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
cmpq %rbx, %rcx
je 0x747f
cmpb $0x3d, (%rcx)
jne 0x747f
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x4e, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0x3c, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
cmpq %rbx, %rcx
je 0x74d2
cmpb $0x2d, (%rcx)
jne 0x74d2
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0xe, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0x1d, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0x7a, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0x1f, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0x3d, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
cmpq %rbx, %rcx
je 0x753b
cmpb $0x3d, (%rcx)
jne 0x753b
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x50, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0x35, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0xd, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0x1e, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
cmpq %rbx, %rcx
je 0x758e
cmpb $0x3d, (%rcx)
jne 0x758e
addq $0x2, %rax
movq %rax, 0x8(%rsp)
movl $0x48, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0x3e, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
movq %rcx, 0x8(%rsp)
movl $0xc, 0x10(%rsp)
movb %r13b, 0x14(%rsp)
andq $0x0, 0x18(%rsp)
movb $0x1, 0x20(%rsp)
fldz
fstpt 0x30(%rsp)
andl $0x0, 0x40(%rsp)
orq $-0x1, 0x50(%rsp)
leaq 0x68(%rsp), %rax
movq %rax, 0x58(%rsp)
andq $0x0, 0x60(%rsp)
movb %r13b, 0x68(%rsp)
movq %r14, %rdi
movq %r15, %rsi
callq 0xd252
jmp 0x63ed
pushq $0x10
popq %rdi
callq 0x20e0
movq %rax, %r14
leaq 0x8bc4(%rip), %rsi      # 0x101b7
movq %rax, %rdi
callq 0x23a0
movq 0x109d6(%rip), %rsi     # 0x17fd8
movq 0x109b7(%rip), %rdx     # 0x17fc0
movq %r14, %rdi
callq 0x2340
jmp 0x76ea
pushq $0x10
popq %rdi
callq 0x20e0
movq %rax, %r14
leaq 0x8b6f(%rip), %rsi      # 0x10197
leaq 0xc8(%rsp), %rdi
leaq 0x8f(%rsp), %rdx
callq 0xb1b8
leaq 0x10(%rsp), %rdi
leaq 0xc8(%rsp), %rsi
leaq 0xa8(%rsp), %rdx
callq 0xb263
movb $0x1, %bpl
leaq 0x10(%rsp), %rsi
movq %r14, %rdi
callq 0x2360
xorl %ebp, %ebp
movq 0x10968(%rip), %rsi     # 0x17fd8
movq 0x10949(%rip), %rdx     # 0x17fc0
movq %r14, %rdi
callq 0x2340
jmp 0x76ea
pushq $0x10
popq %rdi
callq 0x20e0
movq %rax, %r14
leaq 0x8b49(%rip), %rsi      # 0x101dc
leaq 0xa8(%rsp), %rdi
leaq 0xc8(%rsp), %rdx
callq 0xb1b8
movq 0x8(%rsp), %rax
movsbl (%rax), %edx
leaq 0x10(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0xb200
movb $0x1, %bpl
leaq 0x10(%rsp), %rsi
movq %r14, %rdi
callq 0x2360
xorl %ebp, %ebp
movq 0x108fd(%rip), %rsi     # 0x17fd8
movq 0x108de(%rip), %rdx     # 0x17fc0
movq %r14, %rdi
callq 0x2340
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
movq %rax, %rbx
leaq 0x58(%rsp), %rdi
callq 0x2408
jmp 0x77bf
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x2408
jmp 0x78ce
jmp 0x78be
jmp 0x78be
movq %rax, %rbx
leaq 0x58(%rsp), %rdi
callq 0x2408
jmp 0x77f2
jmp 0x78b9
movq %rax, %rbx
leaq 0xe8(%rsp), %rdi
jmp 0x78e0
jmp 0x78b9
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x2408
jmp 0x7819
movq %rax, %rbx
movb $0x1, %bpl
leaq 0xa8(%rsp), %rdi
callq 0x2408
testb %bpl, %bpl
jne 0x7842
jmp 0x790e
jmp 0x7832
movq %rax, %rbx
leaq 0x58(%rsp), %rdi
jmp 0x78e0
movq %rax, %rbx
movq %r14, %rdi
callq 0x2160
jmp 0x790e
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x2408
jmp 0x7878
movq %rax, %rbx
movb $0x1, %bpl
leaq 0xc8(%rsp), %rdi
callq 0x2408
testb %bpl, %bpl
jne 0x7891
jmp 0x78e5
jmp 0x78b9
movq %rax, %rbx
movq %r14, %rdi
callq 0x2160
jmp 0x78e5
movq %rax, %rbx
leaq 0x58(%rsp), %rdi
callq 0x2408
jmp 0x78ad
movq %rax, %rbx
leaq 0x128(%rsp), %rdi
jmp 0x78e0
jmp 0x78b9
movq %rax, %rbx
jmp 0x78e5
movq %rax, %rbx
jmp 0x78ce
movq %rax, %rbx
movq %r14, %rdi
callq 0x2160
leaq 0xc8(%rsp), %rdi
jmp 0x78e0
jmp 0x7901
movq %rax, %rbx
movq %r12, %rdi
callq 0x2408
leaq 0xa8(%rsp), %rdi
jmp 0x7909
movq %rax, %rbx
movq %r15, %rdi
jmp 0x7909
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
jmp 0x7901
movq %rax, %rbx
leaq 0x58(%rsp), %rdi
callq 0x2408
movq %rbx, %rdi
callq 0x2370