// File: /workspace/github_cpp_makefile_star2_O3/joncampbell123[P]haxcc/haxpp.cpp
// Function: to_string[abi:cxx11](token const&)
string to_string(const token &t) {
    switch (t.tval) {
        case token::MACRO:
            return string("[macro]") + t.sval + " ";
        case token::PREPROC:
            return "[preprocessordirective] ";
        case token::MACROSUBST:
            return string("[macrosubst]\"") + t.sval + "\" ";
        case token::IDENTIFIER:
            return string("[identifier]") + t.sval + " ";
        case token::MACROPARAM:
            return string("[macroparam]") + to_string(t.i.u) + " ";
        case token::INTEGER:
            return to_string(t.i.s) + " ";
        case token::FLOAT:
            return a_better_float_to_string(t.f.get_double()) + " ";
        case token::STRING:
            return string("\"") + string_store.get_char(t.s.strref) + string("\"") + " ";
        case token::FUNCTIONCALL:
            return string("[functioncall]") + t.sval + " ";;
        case token::TYPECAST:
            return string("[typecast]") + t.sval + " ";;
        case token::TYPESPEC:
            return string("[typespec]") + t.sval + " ";;
        case token::MINUS:
            return "- ";
        case token::PLUS:
            return "+ ";
        case token::NEGATE:
            return "[negate]";
        case token::DEREFERENCE:
            return "[dereference] ";
        case token::ADDRESSOF:
            return "[addressof] ";
        case token::DECREMENT:
            return "-- ";
        case token::INCREMENT:
            return "++ ";
        case token::PREDECREMENT:
            return "--[pre] ";
        case token::PREINCREMENT:
            return "++[pre] ";
        case token::POSTDECREMENT:
            return "[post]-- ";
        case token::POSTINCREMENT:
            return "[post]++ ";
        case token::COMMA:
            return ", ";
        case token::PERIOD:
            return ". ";
        case token::DOTDOTDOT:
            return "... ";
        case token::PTRARROW:
            return "-> ";
        case token::STRUCTREF:
            return "[structref] ";
        case token::COMPLEMENT:
            return " ~";
        case token::NOT:
            return " !";
        case token::AMPERSAND:
            return "& ";
        case token::STAR:
            return "* ";
        case token::OPEN_PARENS:
            return "( ";
        case token::CLOSE_PARENS:
            return ") ";
        case token::OPEN_SBRACKET:
            return "[ ";
        case token::CLOSE_SBRACKET:
            return "] ";
        case token::OPEN_CBRACKET:
            return "{ ";
        case token::CLOSE_CBRACKET:
            return "} ";
        case token::SIZEOF:
            return "sizeof ";
        case token::ALIGNAS:
            return "_Alignas ";
        case token::ALIGNOF:
            return "_Alignof ";
        case token::ATOMIC:
            return "_Atomic ";
        case token::BOOL_KW:
            return "_Bool ";
        case token::COMPLEX:
            return "_Complex ";
        case token::GENERIC:
            return "_Generic ";
        case token::IMAGINARY:
            return "_Imaginary ";
        case token::NORETURN:
            return "_Noreturn ";
        case token::PRAGMA:
            return "_Pragma ";
        case token::STATIC_ASSERT:
            return "_Static_assert ";
        case token::THREAD_LOCAL:
            return "_Thread_local ";
        case token::DIVISION:
            return "/ ";
        case token::MODULUS:
            return "% ";
        case token::LESS_THAN:
            return "< ";
        case token::GREATER_THAN:
            return "> ";
        case token::LESS_THAN_OR_EQUAL:
            return "<= ";
        case token::GREATER_THAN_OR_EQUAL:
            return ">= ";
        case token::LEFT_SHIFT:
            return "<< ";
        case token::RIGHT_SHIFT:
            return ">> ";
        case token::EQUALS:
            return "== ";
        case token::NOT_EQUALS:
            return "!= ";
        case token::ASSIGNMENT:
            return "= ";
        case token::CARET:
            return "^ ";
        case token::PIPE:
            return "| ";
        case token::BINARY_AND:
            return "[b-and] ";
        case token::BINARY_XOR:
            return "[b-xor] ";
        case token::BINARY_OR:
            return "[b-or] ";
        case token::MULTIPLY:
            return "[multiply] ";
        case token::LOGICAL_AND:
            return "&& ";
        case token::LOGICAL_OR:
            return "|| ";
        case token::QUESTIONMARK:
            return "? ";
        case token::COLON:
            return ": ";
        case token::PLUS_EQUALS:
            return "+= ";
        case token::MINUS_EQUALS:
            return "-= ";
        case token::MULTIPLY_EQUALS:
            return "*= ";
        case token::DIVIDE_EQUALS:
            return "/= ";
        case token::MODULUS_EQUALS:
            return "%= ";
        case token::LEFT_SHIFT_EQUALS:
            return "<<= ";
        case token::RIGHT_SHIFT_EQUALS:
            return ">>= ";
        case token::AND_EQUALS:
            return "&= ";
        case token::XOR_EQUALS:
            return "^= ";
        case token::OR_EQUALS:
            return "|= ";
        case token::AUTO:
            return "auto ";
        case token::BREAK:
            return "break ";
        case token::CASE:
            return "case ";
        case token::CHAR:
            return "char ";
        case token::CONST:
            return "const ";
        case token::CONTINUE:
            return "continue ";
        case token::DEFAULT:
            return "default ";
        case token::DO:
            return "do ";
        case token::DOUBLE:
            return "double ";
        case token::ELSE:
            return "else ";
        case token::ENUM:
            return "enum ";
        case token::EXTERN:
            return "extern ";
        case token::FLOAT_KW:
            return "float ";
        case token::FOR:
            return "for ";
        case token::GOTO:
            return "goto ";
        case token::IF:
            return "if ";
        case token::INT:
            return "int ";
        case token::LONG:
            return "long ";
        case token::REGISTER:
            return "register ";
        case token::RETURN:
            return "return ";
        case token::SHORT:
            return "short ";
        case token::SIGNED:
            return "signed ";
        case token::STATIC:
            return "static ";
        case token::STRUCT:
            return "struct ";
        case token::SWITCH:
            return "switch ";
        case token::TYPEDEF:
            return "typedef ";
        case token::UNION:
            return "union ";
        case token::UNSIGNED:
            return "unsigned ";
        case token::VOID:
            return "void ";
        case token::VOLATILE:
            return "volatile ";
        case token::WHILE:
            return "while ";
        case token::STRINGIFY:
            return "# ";
        case token::TOKEN_PASTE:
            return "## ";
        case token::VA_ARGS:
            return "__VA_ARGS__ ";
        case token::VA_OPT:
            return "__VA_OPT__ ";
        case token::ELIF:
            return "elif ";
        case token::ENDIF:
            return "endif ";
        case token::DEFINED:
            return "defined ";
        case token::IFDEF:
            return "ifdef ";
        case token::IFNDEF:
            return "ifndef ";
        case token::DEFINE:
            return "define ";
        case token::UNDEF:
            return "undef ";
        case token::INCLUDE:
            return "include ";
        case token::LINE:
            return "line ";
        case token::ERROR:
            return "error ";
        case token::TERNARY:
            return "[ternary] ";
        case token::NONE:
            return "[none] ";
        default:
            break;
    };

    return "? ";
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x90, %rsp
movq %rdi, %rbx
movl (%rsi), %eax
cmpq $0x7e, %rax
ja 0x5143
movq %rsi, %r14
leaq 0xe0b0(%rip), %rcx      # 0x131d0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xeddb(%rip), %rsi      # 0x13f12
leaq 0xeddb(%rip), %rdx      # 0x13f19
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xec61(%rip), %rsi      # 0x13db2
leaq 0xec5c(%rip), %rdx      # 0x13db4
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xed3b(%rip), %rsi      # 0x13ea6
leaq 0xed37(%rip), %rdx      # 0x13ea9
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xebb6(%rip), %rsi      # 0x13d3b
leaq 0xebb6(%rip), %rdx      # 0x13d42
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xed08(%rip), %rsi      # 0x13ea7
leaq 0xed03(%rip), %rdx      # 0x13ea9
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xf03b(%rip), %rsi      # 0x141f4
leaq 0xf039(%rip), %rdx      # 0x141f9
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xec79(%rip), %rsi      # 0x13e4c
leaq 0xec7b(%rip), %rdx      # 0x13e55
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xec02(%rip), %rsi      # 0x13def
leaq 0xec00(%rip), %rdx      # 0x13df4
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xec1a(%rip), %rsi      # 0x13e21
leaq 0xec18(%rip), %rdx      # 0x13e26
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xecdf(%rip), %rsi      # 0x13f00
leaq 0xecde(%rip), %rdx      # 0x13f06
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xeb9f(%rip), %rsi      # 0x13dda
leaq 0xeb9b(%rip), %rdx      # 0x13ddd
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xec40(%rip), %rsi      # 0x13e95
leaq 0xec42(%rip), %rdx      # 0x13e9e
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xec5d(%rip), %rsi      # 0x13ecc
leaq 0xec59(%rip), %rdx      # 0x13ecf
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xf3ec(%rip), %rsi      # 0x14675
leaq 0xf3ea(%rip), %rdx      # 0x1467a
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xeb12(%rip), %rsi      # 0x13db5
leaq 0xeb0d(%rip), %rdx      # 0x13db7
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xeb14(%rip), %rsi      # 0x13dd1
leaq 0xeb11(%rip), %rdx      # 0x13dd5
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xeb58(%rip), %rsi      # 0x13e2f
leaq 0xeb57(%rip), %rdx      # 0x13e35
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xea52(%rip), %rsi      # 0x13d43
leaq 0xea53(%rip), %rdx      # 0x13d4b
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xeb04(%rip), %rsi      # 0x13e0f
leaq 0xeb00(%rip), %rdx      # 0x13e12
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe9ec(%rip), %rsi      # 0x13d11
leaq 0xe9eb(%rip), %rdx      # 0x13d17
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xeba9(%rip), %rsi      # 0x13ee8
leaq 0xeba9(%rip), %rdx      # 0x13eef
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xeb0c(%rip), %rsi      # 0x13e65
leaq 0xeb0c(%rip), %rdx      # 0x13e6c
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xead3(%rip), %rsi      # 0x13e46
leaq 0xead1(%rip), %rdx      # 0x13e4b
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xead0(%rip), %rsi      # 0x13e5d
leaq 0xead0(%rip), %rdx      # 0x13e64
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe9ef(%rip), %rsi      # 0x13d96
leaq 0xe9ef(%rip), %rdx      # 0x13d9d
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xea1d(%rip), %rsi      # 0x13dde
leaq 0xea19(%rip), %rdx      # 0x13de1
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe9dd(%rip), %rsi      # 0x13db8
leaq 0xe9d9(%rip), %rdx      # 0x13dbb
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe8f1(%rip), %rsi      # 0x13ce6
leaq 0xe8ec(%rip), %rdx      # 0x13ce8
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe963(%rip), %rsi      # 0x13d72
leaq 0xe95e(%rip), %rdx      # 0x13d74
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xea18(%rip), %rsi      # 0x13e41
leaq 0xea15(%rip), %rdx      # 0x13e45
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe8f5(%rip), %rsi      # 0x13d38
leaq 0xe8f8(%rip), %rdx      # 0x13d42
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe975(%rip), %rsi      # 0x13dd2
leaq 0xe971(%rip), %rdx      # 0x13dd5
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe951(%rip), %rsi      # 0x13dc8
leaq 0xe94d(%rip), %rdx      # 0x13dcb
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe852(%rip), %rsi      # 0x13ce3
leaq 0xe84d(%rip), %rdx      # 0x13ce5
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe8df(%rip), %rsi      # 0x13d8a
leaq 0xe8da(%rip), %rdx      # 0x13d8c
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe8e9(%rip), %rsi      # 0x13dae
leaq 0xe8e5(%rip), %rdx      # 0x13db1
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe7e4(%rip), %rsi      # 0x13cc3
leaq 0xe7e0(%rip), %rdx      # 0x13cc6
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe7e7(%rip), %rsi      # 0x13ce0
leaq 0xe7e2(%rip), %rdx      # 0x13ce2
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe7a4(%rip), %rsi      # 0x13cb7
leaq 0xe7a0(%rip), %rdx      # 0x13cba
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe871(%rip), %rsi      # 0x13d9e
leaq 0xe875(%rip), %rdx      # 0x13da9
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe7d1(%rip), %rsi      # 0x13d18
leaq 0xe7d3(%rip), %rdx      # 0x13d21
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe757(%rip), %rsi      # 0x13cb8
leaq 0xe752(%rip), %rdx      # 0x13cba
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe762(%rip), %rsi      # 0x13cdd
leaq 0xe75d(%rip), %rdx      # 0x13cdf
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe7b7(%rip), %rsi      # 0x13d4c
leaq 0xe7bf(%rip), %rdx      # 0x13d5b
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe8cf(%rip), %rsi      # 0x13e7e
leaq 0xe8ce(%rip), %rdx      # 0x13e84
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe7ac(%rip), %rsi      # 0x13d75
leaq 0xe7a8(%rip), %rdx      # 0x13d78
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe805(%rip), %rsi      # 0x13de8
leaq 0xe804(%rip), %rdx      # 0x13dee
jmp 0x610a
fldt 0x20(%r14)
movl 0x30(%r14), %edi
fstpt (%rsp)
callq 0x2240
fstpt (%rsp)
leaq 0x10(%rsp), %r14
movq %r14, %rdi
callq 0x50a6
leaq 0xe619(%rip), %rdx      # 0x13c2f
movq %rbx, %rdi
movq %r14, %rsi
callq 0xedca
jmp 0x5c07
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe86b(%rip), %rsi      # 0x13e9f
leaq 0xe86a(%rip), %rdx      # 0x13ea5
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe794(%rip), %rsi      # 0x13de2
leaq 0xe792(%rip), %rdx      # 0x13de7
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe6f4(%rip), %rsi      # 0x13d5c
leaq 0xe6fb(%rip), %rdx      # 0x13d6a
jmp 0x610a
leaq 0x40(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xe59c(%rip), %rsi      # 0x13c20
leaq 0xe5a2(%rip), %rdx      # 0x13c2d
leaq 0x30(%rsp), %rdi
callq 0x10b2e
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xee1d
leaq 0xe57c(%rip), %rdx      # 0x13c2e
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xedca
jmp 0x5c6b
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe622(%rip), %rsi      # 0x13cf4
leaq 0xe624(%rip), %rdx      # 0x13cfd
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe691(%rip), %rsi      # 0x13d7d
leaq 0xe68d(%rip), %rdx      # 0x13d80
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe67e(%rip), %rsi      # 0x13d84
leaq 0xe67f(%rip), %rdx      # 0x13d8c
jmp 0x610a
leaq 0x60(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xe50a(%rip), %rsi      # 0x13c2c
leaq 0xe504(%rip), %rdx      # 0x13c2d
leaq 0x50(%rsp), %rdi
callq 0x10b2e
movq 0x40(%r14), %rsi
leaq 0x14b02(%rip), %rdi     # 0x1a240
movq %rdi, %rdx
xorl %ecx, %ecx
callq 0xeae2
leaq 0x30(%rsp), %rdi
leaq 0x50(%rsp), %rsi
movq %rax, %rdx
callq 0xee1d
leaq 0x80(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0xe4bf(%rip), %rsi      # 0x13c2c
leaq 0xe4b9(%rip), %rdx      # 0x13c2d
leaq 0x70(%rsp), %rdi
callq 0x10b2e
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
leaq 0x70(%rsp), %rdx
callq 0xee77
leaq 0xe496(%rip), %rdx      # 0x13c2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xedca
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x57c1
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x21d0
movq 0x70(%rsp), %rdi
cmpq %r14, %rdi
je 0x57db
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x21d0
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x57f6
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x21d0
movq 0x50(%rsp), %rdi
cmpq %r15, %rdi
je 0x6112
movq 0x60(%rsp), %rsi
jmp 0x5c99
leaq 0x40(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xe447(%rip), %rsi      # 0x13c65
leaq 0xe44a(%rip), %rdx      # 0x13c6f
leaq 0x30(%rsp), %rdi
callq 0x10b2e
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xee1d
leaq 0xe3e3(%rip), %rdx      # 0x13c2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xedca
jmp 0x5c6b
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe454(%rip), %rsi      # 0x13cc0
leaq 0xe44f(%rip), %rdx      # 0x13cc2
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe435(%rip), %rsi      # 0x13cbb
leaq 0xe430(%rip), %rdx      # 0x13cbd
jmp 0x610a
leaq 0x40(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xe35d(%rip), %rsi      # 0x13bff
leaq 0xe35d(%rip), %rdx      # 0x13c06
leaq 0x30(%rsp), %rdi
callq 0x10b2e
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xee1d
leaq 0xe35f(%rip), %rdx      # 0x13c2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xedca
jmp 0x5c6b
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe3bd(%rip), %rsi      # 0x13cad
leaq 0xe3b9(%rip), %rdx      # 0x13cb0
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe5ad(%rip), %rsi      # 0x13eb7
leaq 0xe5b1(%rip), %rdx      # 0x13ec2
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe48b(%rip), %rsi      # 0x13daf
leaq 0xe486(%rip), %rdx      # 0x13db1
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe2c9(%rip), %rsi      # 0x13c07
leaq 0xe2da(%rip), %rdx      # 0x13c1f
jmp 0x610a
leaq 0x40(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xe2f1(%rip), %rsi      # 0x13c4b
leaq 0xe2f8(%rip), %rdx      # 0x13c59
leaq 0x30(%rsp), %rdi
callq 0x10b2e
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xee1d
leaq 0xe2a7(%rip), %rdx      # 0x13c2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xedca
jmp 0x5c6b
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe47f(%rip), %rsi      # 0x13e27
leaq 0xe47f(%rip), %rdx      # 0x13e2e
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe507(%rip), %rsi      # 0x13ec9
leaq 0xe506(%rip), %rdx      # 0x13ecf
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe3cf(%rip), %rsi      # 0x13dab
leaq 0xe3ca(%rip), %rdx      # 0x13dad
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe29f(%rip), %rsi      # 0x13c95
leaq 0xe2a0(%rip), %rdx      # 0x13c9d
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe426(%rip), %rsi      # 0x13e36
leaq 0xe423(%rip), %rdx      # 0x13e3a
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe2d4(%rip), %rsi      # 0x13cfe
leaq 0xe2d6(%rip), %rdx      # 0x13d07
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe388(%rip), %rsi      # 0x13dcc
leaq 0xe385(%rip), %rdx      # 0x13dd0
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe253(%rip), %rsi      # 0x13cb1
leaq 0xe255(%rip), %rdx      # 0x13cba
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe306(%rip), %rsi      # 0x13d7e
leaq 0xe301(%rip), %rdx      # 0x13d80
jmp 0x610a
leaq 0x40(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xe1aa(%rip), %rsi      # 0x13c3e
leaq 0xe1af(%rip), %rdx      # 0x13c4a
leaq 0x30(%rsp), %rdi
callq 0x10b2e
movq 0x8(%r14), %rsi
leaq 0x50(%rsp), %rdi
callq 0xef1f
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
leaq 0x50(%rsp), %rdx
callq 0xee77
leaq 0xe161(%rip), %rdx      # 0x13c2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xedca
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x5af6
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x21d0
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x5c86
movq 0x60(%rsp), %rsi
jmp 0x5c7e
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe26d(%rip), %rsi      # 0x13d8d
leaq 0xe26e(%rip), %rdx      # 0x13d95
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe247(%rip), %rsi      # 0x13d81
leaq 0xe242(%rip), %rdx      # 0x13d83
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe11c(%rip), %rsi      # 0x13c70
leaq 0xe11d(%rip), %rdx      # 0x13c78
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe140(%rip), %rsi      # 0x13cae
leaq 0xe13b(%rip), %rdx      # 0x13cb0
jmp 0x610a
leaq 0x40(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xe0a7(%rip), %rsi      # 0x13c31
leaq 0xe0ac(%rip), %rdx      # 0x13c3d
leaq 0x30(%rsp), %rdi
callq 0x10b2e
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xee1d
leaq 0xe077(%rip), %rdx      # 0x13c2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xedca
jmp 0x5c6b
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe0c6(%rip), %rsi      # 0x13c9e
leaq 0xe0c7(%rip), %rdx      # 0x13ca6
jmp 0x610a
movq 0x8(%r14), %rsi
leaq 0x10(%rsp), %r14
movq %r14, %rdi
callq 0xefaf
leaq 0xe033(%rip), %rdx      # 0x13c2f
movq %rbx, %rdi
movq %r14, %rsi
callq 0xedca
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6112
movq 0x20(%rsp), %rsi
jmp 0x5c99
leaq 0x40(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xe02a(%rip), %rsi      # 0x13c5a
leaq 0xe02d(%rip), %rdx      # 0x13c64
leaq 0x30(%rsp), %rdi
callq 0x10b2e
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xee1d
leaq 0xdfd1(%rip), %rdx      # 0x13c2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xedca
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x5c86
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x21d0
movq 0x30(%rsp), %rdi
cmpq %r15, %rdi
je 0x6112
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x21d0
jmp 0x6112
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe023(%rip), %rsi      # 0x13cd7
leaq 0xe01e(%rip), %rdx      # 0x13cd9
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe00c(%rip), %rsi      # 0x13cda
leaq 0xe007(%rip), %rdx      # 0x13cdc
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe03a(%rip), %rsi      # 0x13d22
leaq 0xe03c(%rip), %rdx      # 0x13d2b
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe205(%rip), %rsi      # 0x13f07
leaq 0xe208(%rip), %rdx      # 0x13f11
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe0d9(%rip), %rsi      # 0x13df5
leaq 0xe0d8(%rip), %rdx      # 0x13dfb
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdf43(%rip), %rsi      # 0x13c79
leaq 0xdf4a(%rip), %rdx      # 0x13c87
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe0ac(%rip), %rsi      # 0x13dfc
leaq 0xe0ae(%rip), %rdx      # 0x13e05
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe103(%rip), %rsi      # 0x13e6d
leaq 0xe103(%rip), %rdx      # 0x13e74
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe10b(%rip), %rsi      # 0x13e8f
leaq 0xe109(%rip), %rdx      # 0x13e94
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe0e9(%rip), %rsi      # 0x13e87
leaq 0xe0e9(%rip), %rdx      # 0x13e8e
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xe0cd(%rip), %rsi      # 0x13e85
leaq 0xe0cf(%rip), %rdx      # 0x13e8e
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdf1a(%rip), %rsi      # 0x13cec
leaq 0xdf1a(%rip), %rdx      # 0x13cf3
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdebb(%rip), %rsi      # 0x13ca7
leaq 0xdebd(%rip), %rdx      # 0x13cb0
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdf6b(%rip), %rsi      # 0x13d71
leaq 0xdf67(%rip), %rdx      # 0x13d74
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdee8(%rip), %rsi      # 0x13d08
leaq 0xdee9(%rip), %rdx      # 0x13d10
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdf3f(%rip), %rsi      # 0x13d79
leaq 0xdf3b(%rip), %rdx      # 0x13d7c
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xde34(%rip), %rsi      # 0x13c88
leaq 0xde39(%rip), %rdx      # 0x13c94
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xde59(%rip), %rsi      # 0x13cc7
leaq 0xde5e(%rip), %rdx      # 0x13cd3
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xde4c(%rip), %rsi      # 0x13cd4
leaq 0xde47(%rip), %rdx      # 0x13cd6
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdfd3(%rip), %rsi      # 0x13e75
leaq 0xdfd4(%rip), %rdx      # 0x13e7d
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xde2d(%rip), %rsi      # 0x13ce9
leaq 0xde28(%rip), %rdx      # 0x13ceb
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdde8(%rip), %rsi      # 0x13cbe
leaq 0xdde5(%rip), %rdx      # 0x13cc2
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xddd4(%rip), %rsi      # 0x13cc4
leaq 0xddcf(%rip), %rdx      # 0x13cc6
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdf4c(%rip), %rsi      # 0x13e56
leaq 0xdf4b(%rip), %rdx      # 0x13e5c
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xde98(%rip), %rsi      # 0x13dbc
leaq 0xde94(%rip), %rdx      # 0x13dbf
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xde8f(%rip), %rsi      # 0x13dcd
leaq 0xde8b(%rip), %rdx      # 0x13dd0
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdf52(%rip), %rsi      # 0x13eaa
leaq 0xdf57(%rip), %rdx      # 0x13eb6
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xddfc(%rip), %rsi      # 0x13d6e
leaq 0xddf7(%rip), %rdx      # 0x13d70
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdda0(%rip), %rsi      # 0x13d2c
leaq 0xdda4(%rip), %rdx      # 0x13d37
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xde1a(%rip), %rsi      # 0x13dc0
leaq 0xde16(%rip), %rdx      # 0x13dc3
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xde46(%rip), %rsi      # 0x13e06
leaq 0xde47(%rip), %rdx      # 0x13e0e
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xddea(%rip), %rsi      # 0x13dc4
leaq 0xdde6(%rip), %rdx      # 0x13dc7
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdf03(%rip), %rsi      # 0x13ef7
leaq 0xdf04(%rip), %rdx      # 0x13eff
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdd5d(%rip), %rsi      # 0x13d6b
leaq 0xdd58(%rip), %rdx      # 0x13d6d
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdec8(%rip), %rsi      # 0x13ef0
leaq 0xdec7(%rip), %rdx      # 0x13ef6
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdd94(%rip), %rsi      # 0x13dd6
leaq 0xdd90(%rip), %rdx      # 0x13dd9
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xde84(%rip), %rsi      # 0x13ee0
leaq 0xde84(%rip), %rdx      # 0x13ee7
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdd34(%rip), %rsi      # 0x13daa
leaq 0xdd30(%rip), %rdx      # 0x13dad
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xddab(%rip), %rsi      # 0x13e3b
leaq 0xdda9(%rip), %rdx      # 0x13e40
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xde32(%rip), %rsi      # 0x13ed9
leaq 0xde31(%rip), %rdx      # 0x13edf
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdd5d(%rip), %rsi      # 0x13e1b
leaq 0xdd5b(%rip), %rdx      # 0x13e20
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xdd3e(%rip), %rsi      # 0x13e13
leaq 0xdd3e(%rip), %rdx      # 0x13e1a
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xddd7(%rip), %rsi      # 0x13ec3
leaq 0xddd5(%rip), %rdx      # 0x13ec8
jmp 0x610a
leaq 0x10(%rbx), %rax
movq %rax, (%rbx)
leaq 0xddcd(%rip), %rsi      # 0x13ed0
leaq 0xddce(%rip), %rdx      # 0x13ed8
movq %rbx, %rdi
callq 0x10b2e
movq %rbx, %rax
addq $0x90, %rsp
popq %rbx
popq %r14
popq %r15
retq
movq %rax, %rbx
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6145
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x21d0
jmp 0x6145
movq %rax, %rbx
movq 0x70(%rsp), %rdi
cmpq %r14, %rdi
je 0x6184
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x21d0
jmp 0x6184
movq %rax, %rbx
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x61af
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x21d0
jmp 0x61af
movq %rax, %rbx
leaq 0x40(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x623a
movq 0x40(%rsp), %rsi
incq %rsi
callq 0x21d0
jmp 0x623a
jmp 0x61ca
jmp 0x61ca
movq %rax, %rbx
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x61f9
movq 0x60(%rsp), %rsi
jmp 0x61e0
jmp 0x61ca
jmp 0x61ca
jmp 0x61ca
movq %rax, %rbx
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x61f9
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x21d0
jmp 0x61f9
jmp 0x61f6
jmp 0x61f6
jmp 0x61f6
jmp 0x61f6
jmp 0x61f6
jmp 0x61f6
movq %rax, %rbx
movq 0x30(%rsp), %rdi
cmpq %r15, %rdi
je 0x6251
movq 0x40(%rsp), %rsi
jmp 0x6249
jmp 0x621a
jmp 0x621f
jmp 0x621a
jmp 0x621a
jmp 0x621a
jmp 0x621a
jmp 0x621a
jmp 0x621a
movq %rax, %rbx
jmp 0x6251
movq %rax, %rbx
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6251
movq 0x20(%rsp), %rsi
jmp 0x6249
movq %rax, %rbx
movq 0x50(%rsp), %rdi
cmpq %r15, %rdi
je 0x6251
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x21d0
movq %rbx, %rdi
callq 0x2360