// File: /workspace/github_cpp_makefile_star2_O2/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 %r14
pushq %rbx
subq $0x98, %rsp
movq %rdi, %rbx
movl (%rsi), %eax
cmpq $0x7e, %rax
ja 0x47db
movq %rsi, %r14
leaq 0xaa0a(%rip), %rcx      # 0xf1d0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0xb73c(%rip), %rsi      # 0xff12
jmp 0x5026
leaq 0xb5d0(%rip), %rsi      # 0xfdb2
jmp 0x5026
leaq 0xb6b8(%rip), %rsi      # 0xfea6
jmp 0x5026
leaq 0xb541(%rip), %rsi      # 0xfd3b
jmp 0x5026
leaq 0xb6a1(%rip), %rsi      # 0xfea7
jmp 0x5026
leaq 0xb9e2(%rip), %rsi      # 0x101f4
jmp 0x5026
leaq 0xb62e(%rip), %rsi      # 0xfe4c
jmp 0x5026
leaq 0xb5c5(%rip), %rsi      # 0xfdef
jmp 0x5026
leaq 0xb5eb(%rip), %rsi      # 0xfe21
jmp 0x5026
leaq 0xb6be(%rip), %rsi      # 0xff00
jmp 0x5026
leaq 0xb58c(%rip), %rsi      # 0xfdda
jmp 0x5026
leaq 0xb63b(%rip), %rsi      # 0xfe95
jmp 0x5026
leaq 0xb666(%rip), %rsi      # 0xfecc
jmp 0x5026
leaq 0xbe03(%rip), %rsi      # 0x10675
jmp 0x5026
leaq 0xb537(%rip), %rsi      # 0xfdb5
jmp 0x5026
leaq 0xb547(%rip), %rsi      # 0xfdd1
jmp 0x5026
leaq 0xb599(%rip), %rsi      # 0xfe2f
jmp 0x5026
leaq 0xb4a1(%rip), %rsi      # 0xfd43
jmp 0x5026
leaq 0xb561(%rip), %rsi      # 0xfe0f
jmp 0x5026
leaq 0xb457(%rip), %rsi      # 0xfd11
jmp 0x5026
leaq 0xb622(%rip), %rsi      # 0xfee8
jmp 0x5026
leaq 0xb593(%rip), %rsi      # 0xfe65
jmp 0x5026
leaq 0xb568(%rip), %rsi      # 0xfe46
jmp 0x5026
leaq 0xb573(%rip), %rsi      # 0xfe5d
jmp 0x5026
leaq 0xb4a0(%rip), %rsi      # 0xfd96
jmp 0x5026
leaq 0xb4dc(%rip), %rsi      # 0xfdde
jmp 0x5026
leaq 0xb4aa(%rip), %rsi      # 0xfdb8
jmp 0x5026
leaq 0xb3cc(%rip), %rsi      # 0xfce6
jmp 0x5026
leaq 0xb44c(%rip), %rsi      # 0xfd72
jmp 0x5026
leaq 0xb50f(%rip), %rsi      # 0xfe41
jmp 0x5026
leaq 0xb3fa(%rip), %rsi      # 0xfd38
jmp 0x5026
leaq 0xb488(%rip), %rsi      # 0xfdd2
jmp 0x5026
leaq 0xb472(%rip), %rsi      # 0xfdc8
jmp 0x5026
leaq 0xb381(%rip), %rsi      # 0xfce3
jmp 0x5026
leaq 0xb41c(%rip), %rsi      # 0xfd8a
jmp 0x5026
leaq 0xb434(%rip), %rsi      # 0xfdae
jmp 0x5026
leaq 0xb33d(%rip), %rsi      # 0xfcc3
jmp 0x5026
leaq 0xb34e(%rip), %rsi      # 0xfce0
jmp 0x5026
leaq 0xb319(%rip), %rsi      # 0xfcb7
jmp 0x5026
leaq 0xb3f4(%rip), %rsi      # 0xfd9e
jmp 0x5026
leaq 0xb362(%rip), %rsi      # 0xfd18
jmp 0x5026
leaq 0xb2f6(%rip), %rsi      # 0xfcb8
jmp 0x5026
leaq 0xb30f(%rip), %rsi      # 0xfcdd
jmp 0x5026
leaq 0xb372(%rip), %rsi      # 0xfd4c
jmp 0x5026
leaq 0xb498(%rip), %rsi      # 0xfe7e
jmp 0x5026
leaq 0xb383(%rip), %rsi      # 0xfd75
jmp 0x5026
leaq 0xb3ea(%rip), %rsi      # 0xfde8
jmp 0x5026
addq $0x20, %r14
movq %r14, %rdi
callq 0xb38c
fstpt (%rsp)
leaq 0x10(%rsp), %r14
movq %r14, %rdi
callq 0x4762
leaq 0xb209(%rip), %rdx      # 0xfc2f
movq %rbx, %rdi
movq %r14, %rsi
callq 0xb244
jmp 0x4de5
leaq 0xb462(%rip), %rsi      # 0xfe9f
jmp 0x5026
leaq 0xb399(%rip), %rsi      # 0xfde2
jmp 0x5026
leaq 0xb307(%rip), %rsi      # 0xfd5c
jmp 0x5026
leaq 0xb1bf(%rip), %rsi      # 0xfc20
leaq 0x30(%rsp), %rdi
leaq 0x58(%rsp), %rdx
callq 0xb1b8
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xb263
leaq 0xb1a1(%rip), %rdx      # 0xfc2e
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb244
jmp 0x4e2c
leaq 0xb24e(%rip), %rsi      # 0xfcf4
jmp 0x5026
leaq 0xb2cb(%rip), %rsi      # 0xfd7d
jmp 0x5026
leaq 0xb2c6(%rip), %rsi      # 0xfd84
jmp 0x5026
leaq 0xb162(%rip), %rsi      # 0xfc2c
leaq 0x58(%rsp), %rdi
leaq 0x57(%rsp), %rdx
callq 0xb1b8
movq 0x40(%r14), %rsi
leaq 0x1376c(%rip), %rdi     # 0x18250
callq 0x268c
leaq 0x30(%rsp), %rdi
leaq 0x58(%rsp), %rsi
movq %rax, %rdx
callq 0xb263
leaq 0xb12a(%rip), %rsi      # 0xfc2c
leaq 0x78(%rsp), %rdi
leaq 0x56(%rsp), %rdx
callq 0xb1b8
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
leaq 0x78(%rsp), %rdx
callq 0xb282
leaq 0xb103(%rip), %rdx      # 0xfc2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb244
leaq 0x10(%rsp), %rdi
callq 0x2408
leaq 0x78(%rsp), %rdi
callq 0x2408
leaq 0x30(%rsp), %rdi
callq 0x2408
leaq 0x58(%rsp), %rdi
jmp 0x4e3b
leaq 0xb0fd(%rip), %rsi      # 0xfc65
leaq 0x30(%rsp), %rdi
leaq 0x58(%rsp), %rdx
callq 0xb1b8
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xb263
leaq 0xb09b(%rip), %rdx      # 0xfc2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb244
jmp 0x4e2c
leaq 0xb113(%rip), %rsi      # 0xfcc0
jmp 0x5026
leaq 0xb102(%rip), %rsi      # 0xfcbb
jmp 0x5026
leaq 0xb03a(%rip), %rsi      # 0xfbff
leaq 0x30(%rsp), %rdi
leaq 0x58(%rsp), %rdx
callq 0xb1b8
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xb263
leaq 0xb03e(%rip), %rdx      # 0xfc2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb244
jmp 0x4e2c
leaq 0xb0a3(%rip), %rsi      # 0xfcad
jmp 0x5026
leaq 0xb2a1(%rip), %rsi      # 0xfeb7
jmp 0x5026
leaq 0xb18d(%rip), %rsi      # 0xfdaf
jmp 0x5026
leaq 0xafd9(%rip), %rsi      # 0xfc07
jmp 0x5026
leaq 0xb011(%rip), %rsi      # 0xfc4b
leaq 0x30(%rsp), %rdi
leaq 0x58(%rsp), %rdx
callq 0xb1b8
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xb263
leaq 0xafc9(%rip), %rdx      # 0xfc2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb244
jmp 0x4e2c
leaq 0xb1a8(%rip), %rsi      # 0xfe27
jmp 0x5026
leaq 0xb23e(%rip), %rsi      # 0xfec9
jmp 0x5026
leaq 0xb114(%rip), %rsi      # 0xfdab
jmp 0x5026
leaq 0xaff2(%rip), %rsi      # 0xfc95
jmp 0x5026
leaq 0xb187(%rip), %rsi      # 0xfe36
jmp 0x5026
leaq 0xb043(%rip), %rsi      # 0xfcfe
jmp 0x5026
leaq 0xb105(%rip), %rsi      # 0xfdcc
jmp 0x5026
leaq 0xafde(%rip), %rsi      # 0xfcb1
jmp 0x5026
leaq 0xb09f(%rip), %rsi      # 0xfd7e
jmp 0x5026
leaq 0xaf53(%rip), %rsi      # 0xfc3e
leaq 0x30(%rsp), %rdi
leaq 0x78(%rsp), %rdx
callq 0xb1b8
movq 0x8(%r14), %rsi
leaq 0x58(%rsp), %rdi
callq 0xb2e9
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
leaq 0x58(%rsp), %rdx
callq 0xb282
leaq 0xaf0c(%rip), %rdx      # 0xfc2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb244
leaq 0x10(%rsp), %rdi
callq 0x2408
leaq 0x58(%rsp), %rdi
jmp 0x4e31
leaq 0xb042(%rip), %rsi      # 0xfd8d
jmp 0x5026
leaq 0xb02a(%rip), %rsi      # 0xfd81
jmp 0x5026
leaq 0xaf0d(%rip), %rsi      # 0xfc70
jmp 0x5026
leaq 0xaf3f(%rip), %rsi      # 0xfcae
jmp 0x5026
leaq 0xaeb6(%rip), %rsi      # 0xfc31
leaq 0x30(%rsp), %rdi
leaq 0x58(%rsp), %rdx
callq 0xb1b8
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xb263
leaq 0xae88(%rip), %rdx      # 0xfc2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb244
jmp 0x4e2c
leaq 0xaee1(%rip), %rsi      # 0xfc9e
jmp 0x5026
movq 0x8(%r14), %rsi
leaq 0x10(%rsp), %r14
movq %r14, %rdi
callq 0xb32b
leaq 0xae55(%rip), %rdx      # 0xfc2f
movq %rbx, %rdi
movq %r14, %rsi
callq 0xb244
leaq 0x10(%rsp), %rdi
jmp 0x4e3b
leaq 0xae67(%rip), %rsi      # 0xfc5a
leaq 0x30(%rsp), %rdi
leaq 0x58(%rsp), %rdx
callq 0xb1b8
addq $0x48, %r14
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0xb263
leaq 0xae10(%rip), %rdx      # 0xfc2f
leaq 0x10(%rsp), %rsi
movq %rbx, %rdi
callq 0xb244
leaq 0x10(%rsp), %rdi
callq 0x2408
leaq 0x30(%rsp), %rdi
callq 0x2408
jmp 0x5033
leaq 0xae8b(%rip), %rsi      # 0xfcd7
jmp 0x5026
leaq 0xae82(%rip), %rsi      # 0xfcda
jmp 0x5026
leaq 0xaebe(%rip), %rsi      # 0xfd22
jmp 0x5026
leaq 0xb097(%rip), %rsi      # 0xff07
jmp 0x5026
leaq 0xaf79(%rip), %rsi      # 0xfdf5
jmp 0x5026
leaq 0xadf1(%rip), %rsi      # 0xfc79
jmp 0x5026
leaq 0xaf68(%rip), %rsi      # 0xfdfc
jmp 0x5026
leaq 0xafcd(%rip), %rsi      # 0xfe6d
jmp 0x5026
leaq 0xafe3(%rip), %rsi      # 0xfe8f
jmp 0x5026
leaq 0xafcf(%rip), %rsi      # 0xfe87
jmp 0x5026
leaq 0xafc1(%rip), %rsi      # 0xfe85
jmp 0x5026
leaq 0xae1c(%rip), %rsi      # 0xfcec
jmp 0x5026
leaq 0xadcb(%rip), %rsi      # 0xfca7
jmp 0x5026
leaq 0xae89(%rip), %rsi      # 0xfd71
jmp 0x5026
leaq 0xae14(%rip), %rsi      # 0xfd08
jmp 0x5026
leaq 0xae79(%rip), %rsi      # 0xfd79
jmp 0x5026
leaq 0xad7c(%rip), %rsi      # 0xfc88
jmp 0x5026
leaq 0xadaf(%rip), %rsi      # 0xfcc7
jmp 0x5026
leaq 0xadb0(%rip), %rsi      # 0xfcd4
jmp 0x5026
leaq 0xaf45(%rip), %rsi      # 0xfe75
jmp 0x5026
leaq 0xadad(%rip), %rsi      # 0xfce9
jmp 0x5026
leaq 0xad76(%rip), %rsi      # 0xfcbe
jmp 0x5026
leaq 0xad70(%rip), %rsi      # 0xfcc4
jmp 0x5026
leaq 0xaef6(%rip), %rsi      # 0xfe56
jmp 0x5026
leaq 0xae50(%rip), %rsi      # 0xfdbc
jmp 0x5026
leaq 0xae55(%rip), %rsi      # 0xfdcd
jmp 0x5026
leaq 0xaf26(%rip), %rsi      # 0xfeaa
jmp 0x5026
leaq 0xadde(%rip), %rsi      # 0xfd6e
jmp 0x5026
leaq 0xad90(%rip), %rsi      # 0xfd2c
jmp 0x5026
leaq 0xae18(%rip), %rsi      # 0xfdc0
jmp 0x5026
leaq 0xae55(%rip), %rsi      # 0xfe06
jmp 0x5026
leaq 0xae0a(%rip), %rsi      # 0xfdc4
jmp 0x5026
leaq 0xaf34(%rip), %rsi      # 0xfef7
jmp 0x5026
leaq 0xad9f(%rip), %rsi      # 0xfd6b
jmp 0x5026
leaq 0xaf1b(%rip), %rsi      # 0xfef0
jmp 0x5026
leaq 0xadf8(%rip), %rsi      # 0xfdd6
jmp 0x5026
leaq 0xaef9(%rip), %rsi      # 0xfee0
jmp 0x5026
leaq 0xadba(%rip), %rsi      # 0xfdaa
jmp 0x5026
leaq 0xae42(%rip), %rsi      # 0xfe3b
jmp 0x5026
leaq 0xaed7(%rip), %rsi      # 0xfed9
jmp 0x5026
leaq 0xae10(%rip), %rsi      # 0xfe1b
jmp 0x5026
leaq 0xadff(%rip), %rsi      # 0xfe13
jmp 0x5026
leaq 0xaea6(%rip), %rsi      # 0xfec3
jmp 0x5026
leaq 0xaeaa(%rip), %rsi      # 0xfed0
leaq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0xb1b8
movq %rbx, %rax
addq $0x98, %rsp
popq %rbx
popq %r14
retq
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x2408
jmp 0x5053
movq %rax, %rbx
leaq 0x78(%rsp), %rdi
callq 0x2408
jmp 0x5071
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x2408
jmp 0x5084
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
callq 0x2408
jmp 0x50d8
jmp 0x5091
jmp 0x5091
movq %rax, %rbx
leaq 0x58(%rsp), %rdi
jmp 0x5099
jmp 0x5091
jmp 0x5091
jmp 0x5091
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x2408
jmp 0x50af
jmp 0x50ac
jmp 0x50ac
jmp 0x50ac
jmp 0x50ac
jmp 0x50ac
jmp 0x50ac
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
jmp 0x50dd
jmp 0x50c6
jmp 0x50cb
jmp 0x50c6
jmp 0x50c6
jmp 0x50c6
jmp 0x50c6
jmp 0x50c6
jmp 0x50c6
movq %rax, %rbx
jmp 0x50e2
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
jmp 0x50dd
movq %rax, %rbx
leaq 0x58(%rsp), %rdi
callq 0x2408
movq %rbx, %rdi
callq 0x2370