// File: /workspace/github_cpp_makefile_star2_O3/rfotino[P]consolite-compiler/src/parser.cpp
// Function: Parser::Parser(Tokenizer*)
Parser::Parser(Tokenizer *t) : _tokenizer(t), _bytePos(0) {
  // Add builtin "void COLOR(uint16 color)" function.
  _functions.push_back(
    std::make_shared<FunctionToken>(
      FunctionToken(
        TypeToken("void"),
        "COLOR",
        {
          std::make_shared<ParamToken>(
            ParamToken(TypeToken("uint16"), "color")
          )
        }
      )
    )
  );
  // Add builtin "void PIXEL(uint16 x, uint16 y)" function.
  _functions.push_back(
    std::make_shared<FunctionToken>(
      FunctionToken(
        TypeToken("void"),
        "PIXEL",
        {
          std::make_shared<ParamToken>(
            ParamToken(TypeToken("uint16"), "x")
          ),
          std::make_shared<ParamToken>(
            ParamToken(TypeToken("uint16"), "y")
          )
        }
      )
    )
  );
  // Add builtin "void TIMERST()" function.
  _functions.push_back(
    std::make_shared<FunctionToken>(
      FunctionToken(
        TypeToken("void"),
        "TIMERST",
        { }
      )
    )
  );
  // Add builtin "uint16 TIME()" function.
  _functions.push_back(
    std::make_shared<FunctionToken>(
      FunctionToken(
        TypeToken("uint16"),
        "TIME",
        { }
      )
    )
  );
  // Add builtin "uint16 INPUT(uint16 input_id)" function.
  _functions.push_back(
    std::make_shared<FunctionToken>(
      FunctionToken(
        TypeToken("uint16"),
        "INPUT",
        {
          std::make_shared<ParamToken>(
            ParamToken(TypeToken("uint16"), "input_id")
          )
        }
      )
    )
  );
  // Add builtin "uint16 RND()" function.
  _functions.push_back(
    std::make_shared<FunctionToken>(
      FunctionToken(
        TypeToken("uint16"),
        "RND",
        { }
      )
    )
  );
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x458, %rsp            # imm = 0x458
movq %rdi, %rbx
movq %rsi, (%rdi)
leaq 0x20(%rdi), %rax
movq %rax, 0x108(%rsp)
leaq 0x38(%rdi), %r15
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdi)
movups %xmm0, 0x18(%rdi)
movups %xmm0, 0x28(%rdi)
movq %r15, %rdi
callq 0x74b0
leaq 0x248(%rbx), %rax
movq %rax, 0x2a0(%rsp)
movq %rax, 0x238(%rbx)
movq $0x0, 0x240(%rbx)
movb $0x0, 0x248(%rbx)
leaq 0x288(%rbx), %rax
movq %rax, 0x258(%rbx)
movq $0x1, 0x260(%rbx)
xorps %xmm0, %xmm0
movups %xmm0, 0x268(%rbx)
movl $0x3f800000, 0x278(%rbx) # imm = 0x3F800000
movups %xmm0, 0x280(%rbx)
movw $0x0, 0x290(%rbx)
leaq 0xa0(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x2cede(%rip), %rsi     # 0x35040
leaq 0x2cedb(%rip), %rdx     # 0x35044
leaq 0x90(%rsp), %rdi
movq %r15, 0x2e8(%rsp)
callq 0xbdee
leaq 0x218(%rsp), %rdi
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
leaq 0x3dbbc(%rip), %rbp     # 0x45d50
movq %rbp, -0x10(%rdi)
leaq 0x228(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x90(%rsp), %rsi
movq 0x98(%rsp), %rdx
addq %rsi, %rdx
callq 0xbd58
movb $0x0, 0x238(%rsp)
movw $0x0, 0x23a(%rsp)
leaq 0xe0(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x2ce64(%rip), %rsi     # 0x35045
leaq 0x2ce62(%rip), %rdx     # 0x3504a
leaq 0xd0(%rsp), %rdi
callq 0xbdee
leaq 0x58(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x2ce46(%rip), %rsi     # 0x3504b
leaq 0x2ce45(%rip), %rdx     # 0x35051
leaq 0x48(%rsp), %rdi
callq 0xbdee
leaq 0x20(%rsp), %rdi
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
movq %rbp, -0x10(%rdi)
leaq 0x30(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x48(%rsp), %rsi
movq 0x50(%rsp), %rdx
addq %rsi, %rdx
callq 0xbd58
movb $0x0, 0x40(%rsp)
movw $0x0, 0x42(%rsp)
leaq 0x80(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x2cdf2(%rip), %rsi     # 0x35052
leaq 0x2cdf0(%rip), %rdx     # 0x35057
leaq 0x70(%rsp), %rdi
callq 0xbdee
leaq 0x3db08(%rip), %rax     # 0x45d80
leaq 0x160(%rsp), %rdi
movq %rax, -0x10(%rdi)
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
leaq 0x10(%rsp), %rsi
leaq 0x70(%rsp), %rdx
callq 0xb71a
leaq 0x3daf7(%rip), %rax     # 0x45d98
movq %rax, 0x150(%rsp)
movl $0xa8, %edi
callq 0x72b0
movq %rax, %r15
movabsq $0x100000001, %rax      # imm = 0x100000001
movq %rax, 0x8(%r15)
leaq 0x3dbf5(%rip), %rax     # 0x45ec0
movq %rax, (%r15)
movq %r15, %r12
addq $0x10, %r12
leaq 0x2a8(%rsp), %rdi
leaq 0x150(%rsp), %rdx
movq %r12, %rsi
callq 0xbee6
leaq 0x1e8(%rsp), %rsi
movq %r15, 0x8(%rsi)
movq %r12, (%rsi)
leaq 0x130(%rsp), %rdi
leaq 0x2c8(%rsp), %rcx
movl $0x1, %edx
callq 0xb17a
leaq 0x318(%rsp), %rdi
leaq 0x208(%rsp), %rsi
leaq 0xd0(%rsp), %rdx
leaq 0x130(%rsp), %rcx
movq 0x108(%rsp), %r15
callq 0xb1c2
leaq 0x110(%rsp), %rdi
leaq 0x2a8(%rsp), %rsi
leaq 0x318(%rsp), %rdx
callq 0xc0f2
leaq 0x110(%rsp), %rsi
movq %r15, %rdi
callq 0xc576
movq 0x118(%rsp), %rdi
testq %rdi, %rdi
je 0x8382
callq 0x8036
leaq 0x318(%rsp), %rdi
callq 0xb338
leaq 0x130(%rsp), %r15
movq %r15, %rdi
callq 0xb3fe
movq 0x1f0(%rsp), %rdi
testq %rdi, %rdi
je 0x83b1
callq 0x8036
leaq 0x1d0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x83d2
movq 0x1d0(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x1a8(%rsp), %rax
movq %rbp, -0x20(%rax)
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x83f7
movq 0x1a8(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x170(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x8418
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x843a
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x10(%rsp)
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x845b
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0x8477
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0xd0(%rsp), %rdi
cmpq %r13, %rdi
je 0x8494
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x208(%rsp)
movq 0x218(%rsp), %rdi
leaq 0x228(%rsp), %rax
cmpq %rax, %rdi
je 0x84c1
movq 0x228(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x90(%rsp), %rdi
cmpq %r14, %rdi
je 0x84de
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
movq %rax, (%rdi)
leaq 0x2cb4e(%rip), %rsi     # 0x35040
leaq 0x2cb4b(%rip), %rdx     # 0x35044
callq 0xbdee
leaq 0x20(%rsp), %rdi
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
movq %rbp, -0x10(%rdi)
leaq 0x30(%rsp), %rax
movq %rax, (%rdi)
movq 0x48(%rsp), %rsi
movq 0x50(%rsp), %rdx
addq %rsi, %rdx
callq 0xbd58
movb $0x0, 0x40(%rsp)
movw $0x0, 0x42(%rsp)
leaq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
movq %rax, (%rdi)
leaq 0x2cb0d(%rip), %rsi     # 0x35058
leaq 0x2cb0b(%rip), %rdx     # 0x3505d
callq 0xbdee
leaq 0x120(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x2cae1(%rip), %rsi     # 0x3504b
leaq 0x2cae0(%rip), %rdx     # 0x35051
leaq 0x110(%rsp), %rdi
callq 0xbdee
leaq 0xa0(%rsp), %rdi
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
movq %rbp, -0x10(%rdi)
leaq 0xb0(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0x110(%rsp), %rsi
movq 0x118(%rsp), %rdx
addq %rsi, %rdx
callq 0xbd58
movb $0x0, 0xc0(%rsp)
movw $0x0, 0xc2(%rsp)
leaq 0x1f8(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0x2f053(%rip), %rsi     # 0x3762d
leaq 0x2f04d(%rip), %rdx     # 0x3762e
leaq 0x1e8(%rsp), %rdi
callq 0xbdee
leaq 0x160(%rsp), %rdi
leaq 0x3d783(%rip), %rax     # 0x45d80
movq %rax, -0x10(%rdi)
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
leaq 0x90(%rsp), %rsi
leaq 0x1e8(%rsp), %rdx
callq 0xb71a
leaq 0x3d774(%rip), %rax     # 0x45d98
movq %rax, 0x150(%rsp)
movl $0xa8, %edi
callq 0x72b0
movq %rax, %r15
movabsq $0x100000001, %rax      # imm = 0x100000001
movq %rax, 0x8(%r15)
leaq 0x3d872(%rip), %rax     # 0x45ec0
movq %rax, (%r15)
movq %r15, %r12
addq $0x10, %r12
leaq 0x208(%rsp), %rdi
leaq 0x150(%rsp), %rdx
movq %r12, %rsi
callq 0xbee6
movq %r15, 0x138(%rsp)
movq %r12, 0x130(%rsp)
leaq 0x2b8(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x2c9b8(%rip), %rsi     # 0x3504b
leaq 0x2c9b7(%rip), %rdx     # 0x35051
leaq 0x2a8(%rsp), %rdi
callq 0xbdee
leaq 0xe0(%rsp), %rdi
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
movq %rbp, -0x10(%rdi)
leaq 0xf0(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq 0x2a8(%rsp), %rsi
movq 0x2b0(%rsp), %rdx
addq %rsi, %rdx
callq 0xbd58
movb $0x0, 0x100(%rsp)
movw $0x0, 0x102(%rsp)
leaq 0x2d8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x2c95b(%rip), %rsi     # 0x3505e
leaq 0x2c955(%rip), %rdx     # 0x3505f
leaq 0x2c8(%rsp), %rdi
callq 0xbdee
leaq 0x218(%rsp), %rdi
leaq 0x3d65a(%rip), %rax     # 0x45d80
movq %rax, -0x10(%rdi)
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
leaq 0xd0(%rsp), %rsi
leaq 0x2c8(%rsp), %rdx
callq 0xb71a
leaq 0x3d64b(%rip), %rax     # 0x45d98
movq %rax, 0x208(%rsp)
movl $0xa8, %edi
callq 0x72b0
movq %rax, %r14
movabsq $0x100000001, %rax      # imm = 0x100000001
movq %rax, 0x8(%r14)
leaq 0x3d749(%rip), %rax     # 0x45ec0
movq %rax, (%r14)
movq %r14, %r12
addq $0x10, %r12
leaq 0xf(%rsp), %rdi
leaq 0x208(%rsp), %rdx
movq %r12, %rsi
callq 0xbee6
leaq 0x130(%rsp), %rsi
movq %r14, 0x18(%rsi)
movq %r12, 0x10(%rsi)
leaq 0x300(%rsp), %rdi
leaq 0x6f(%rsp), %rcx
movl $0x2, %edx
callq 0xb17a
leaq 0x318(%rsp), %rdi
leaq 0x10(%rsp), %rsi
leaq 0x70(%rsp), %rdx
leaq 0x300(%rsp), %rcx
movq 0x108(%rsp), %r12
callq 0xb1c2
leaq 0x2f0(%rsp), %rdi
leaq 0xf(%rsp), %rsi
leaq 0x318(%rsp), %rdx
callq 0xc0f2
leaq 0x2f0(%rsp), %rsi
movq %r12, %rdi
callq 0xc576
movq 0x2f8(%rsp), %rdi
testq %rdi, %rdi
je 0x8820
callq 0x8036
leaq 0x318(%rsp), %rdi
callq 0xb338
leaq 0x300(%rsp), %rdi
callq 0xb3fe
movl $0x20, %r14d
movq 0x128(%rsp,%r14), %rdi
testq %rdi, %rdi
je 0x8852
callq 0x8036
addq $-0x10, %r14
jne 0x8840
leaq 0x288(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x8879
movq 0x288(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x260(%rsp), %rax
leaq 0x3d4c8(%rip), %rcx     # 0x45d50
movq %rcx, -0x20(%rax)
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
leaq 0x218(%rsp), %r14
je 0x88ad
movq 0x260(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x218(%rsp), %rdi
leaq 0x228(%rsp), %rax
cmpq %rax, %rdi
je 0x88d2
movq 0x228(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x2c8(%rsp), %rdi
cmpq %r13, %rdi
je 0x88ef
movq 0x2d8(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x3d45a(%rip), %rax     # 0x45d50
movq %rax, 0xd0(%rsp)
movq 0xe0(%rsp), %rdi
cmpq %rbp, %rdi
leaq 0x20(%rsp), %r13
je 0x8920
movq 0xf0(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x2a8(%rsp), %rdi
cmpq %r15, %rdi
je 0x893d
movq 0x2b8(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x1c0(%rsp), %rdi
leaq 0x1d0(%rsp), %rax
cmpq %rax, %rdi
leaq 0x3d3f9(%rip), %rbp     # 0x45d50
je 0x8969
movq 0x1d0(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x188(%rsp)
movq 0x198(%rsp), %rdi
leaq 0x1a8(%rsp), %rax
cmpq %rax, %rdi
je 0x8996
movq 0x1a8(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x160(%rsp), %rdi
leaq 0x170(%rsp), %rax
cmpq %rax, %rdi
je 0x89bb
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x1e8(%rsp), %rdi
leaq 0x1f8(%rsp), %rax
cmpq %rax, %rdi
je 0x89e0
movq 0x1f8(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x90(%rsp)
movq 0xa0(%rsp), %rdi
leaq 0xb0(%rsp), %rax
cmpq %rax, %rdi
je 0x8a0d
movq 0xb0(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x110(%rsp), %rdi
leaq 0x120(%rsp), %rax
cmpq %rax, %rdi
je 0x8a32
movq 0x120(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x8a54
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x10(%rsp)
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x8a75
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0x8a91
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x208(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x2c59d(%rip), %rsi     # 0x35040
leaq 0x2c59a(%rip), %rdx     # 0x35044
callq 0xbdee
leaq 0x160(%rsp), %rdi
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
movq %rbp, -0x10(%rdi)
leaq 0x170(%rsp), %rax
movq %rax, (%rdi)
movq 0x208(%rsp), %rsi
movq 0x210(%rsp), %rdx
addq %rsi, %rdx
callq 0xbd58
movb $0x0, 0x180(%rsp)
movw $0x0, 0x182(%rsp)
leaq 0x10(%rsp), %rdi
movq %r13, (%rdi)
leaq 0x2c55a(%rip), %rsi     # 0x35060
leaq 0x2c55a(%rip), %rdx     # 0x35067
callq 0xbdee
xorps %xmm0, %xmm0
leaq 0x90(%rsp), %rcx
movaps %xmm0, (%rcx)
movq $0x0, 0x10(%rcx)
leaq 0x318(%rsp), %rdi
leaq 0x150(%rsp), %rsi
leaq 0x10(%rsp), %rdx
callq 0xb1c2
leaq 0xd0(%rsp), %rdi
leaq 0x48(%rsp), %rsi
leaq 0x318(%rsp), %rdx
callq 0xc0f2
leaq 0xd0(%rsp), %rsi
movq %r12, %rdi
callq 0xc576
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0x8b7e
callq 0x8036
leaq 0x318(%rsp), %rdi
callq 0xb338
leaq 0x90(%rsp), %rdi
callq 0xb3fe
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
je 0x8baf
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x150(%rsp)
movq 0x160(%rsp), %rdi
leaq 0x170(%rsp), %rax
cmpq %rax, %rdi
je 0x8bdc
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x208(%rsp), %rdi
cmpq %r14, %rdi
je 0x8bf9
movq 0x218(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x208(%rsp), %rdi
movq %r14, (%rdi)
leaq 0x2c440(%rip), %rsi     # 0x3504b
leaq 0x2c43f(%rip), %rdx     # 0x35051
callq 0xbdee
leaq 0x160(%rsp), %rdi
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
movq %rbp, -0x10(%rdi)
leaq 0x170(%rsp), %rax
movq %rax, (%rdi)
movq 0x208(%rsp), %rsi
movq 0x210(%rsp), %rdx
addq %rsi, %rdx
callq 0xbd58
movb $0x0, 0x180(%rsp)
movw $0x0, 0x182(%rsp)
leaq 0x10(%rsp), %rdi
movq %r13, (%rdi)
leaq 0x2c3fa(%rip), %rsi     # 0x35068
leaq 0x2c3f7(%rip), %rdx     # 0x3506c
callq 0xbdee
xorps %xmm0, %xmm0
leaq 0x90(%rsp), %rcx
movaps %xmm0, (%rcx)
movq $0x0, 0x10(%rcx)
leaq 0x318(%rsp), %rdi
leaq 0x150(%rsp), %rsi
leaq 0x10(%rsp), %rdx
callq 0xb1c2
leaq 0xd0(%rsp), %rdi
leaq 0x48(%rsp), %rsi
leaq 0x318(%rsp), %rdx
callq 0xc0f2
leaq 0xd0(%rsp), %rsi
movq %r12, %rdi
callq 0xc576
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0x8ce6
callq 0x8036
leaq 0x318(%rsp), %rdi
callq 0xb338
leaq 0x90(%rsp), %rdi
callq 0xb3fe
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
je 0x8d17
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x150(%rsp)
movq 0x160(%rsp), %rdi
leaq 0x170(%rsp), %rax
cmpq %rax, %rdi
je 0x8d44
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x208(%rsp), %rdi
cmpq %r14, %rdi
je 0x8d61
movq 0x218(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
movq %rax, (%rdi)
leaq 0x2c2d0(%rip), %rsi     # 0x3504b
leaq 0x2c2cf(%rip), %rdx     # 0x35051
callq 0xbdee
leaq 0x218(%rsp), %r15
movl $0xffffffff, -0x8(%r15) # imm = 0xFFFFFFFF
movq %rbp, -0x10(%r15)
leaq 0x228(%rsp), %rax
movq %rax, (%r15)
movq 0x90(%rsp), %rsi
movq 0x98(%rsp), %rdx
addq %rsi, %rdx
movq %r15, %rdi
callq 0xbd58
movb $0x0, 0x238(%rsp)
movw $0x0, 0x23a(%rsp)
leaq 0xd0(%rsp), %rdi
leaq 0xe0(%rsp), %rax
movq %rax, (%rdi)
leaq 0x2c280(%rip), %rsi     # 0x3506d
leaq 0x2c27e(%rip), %rdx     # 0x35072
callq 0xbdee
leaq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
movq %rax, (%rdi)
leaq 0x2c23e(%rip), %rsi     # 0x3504b
leaq 0x2c23d(%rip), %rdx     # 0x35051
callq 0xbdee
leaq 0x20(%rsp), %r13
movl $0xffffffff, -0x8(%r13) # imm = 0xFFFFFFFF
movq %rbp, -0x10(%r13)
leaq 0x30(%rsp), %rax
movq %rax, (%r13)
movq 0x48(%rsp), %rsi
movq 0x50(%rsp), %rdx
addq %rsi, %rdx
movq %r13, %rdi
callq 0xbd58
movb $0x0, 0x40(%rsp)
movw $0x0, 0x42(%rsp)
leaq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
movq %rax, (%rdi)
leaq 0x2c208(%rip), %rsi     # 0x35073
leaq 0x2c209(%rip), %rdx     # 0x3507b
callq 0xbdee
leaq 0x160(%rsp), %rdi
leaq 0x3cefa(%rip), %rax     # 0x45d80
movq %rax, -0x10(%rdi)
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
leaq 0x10(%rsp), %rsi
leaq 0x70(%rsp), %rdx
callq 0xb71a
leaq 0x3cef1(%rip), %rax     # 0x45d98
movq %rax, 0x150(%rsp)
movl $0xa8, %edi
callq 0x72b0
movq %rax, %r12
movabsq $0x100000001, %rax      # imm = 0x100000001
movq %rax, 0x8(%r12)
leaq 0x3cfee(%rip), %rax     # 0x45ec0
movq %rax, (%r12)
movq %r12, %r14
addq $0x10, %r14
leaq 0x2a8(%rsp), %rdi
leaq 0x150(%rsp), %rdx
movq %r14, %rsi
callq 0xbee6
leaq 0x1e8(%rsp), %rsi
movq %r12, 0x8(%rsi)
movq %r14, (%rsi)
leaq 0x130(%rsp), %rdi
leaq 0x2c8(%rsp), %rcx
movl $0x1, %edx
callq 0xb17a
leaq 0x318(%rsp), %rdi
leaq 0x208(%rsp), %rsi
leaq 0xd0(%rsp), %rdx
leaq 0x130(%rsp), %rcx
movq 0x108(%rsp), %r14
callq 0xb1c2
leaq 0x110(%rsp), %rdi
leaq 0x2a8(%rsp), %rsi
leaq 0x318(%rsp), %rdx
callq 0xc0f2
leaq 0x110(%rsp), %rsi
movq %r14, %rdi
callq 0xc576
movq 0x118(%rsp), %rdi
testq %rdi, %rdi
je 0x8f8a
callq 0x8036
leaq 0x318(%rsp), %rdi
callq 0xb338
leaq 0x130(%rsp), %rdi
callq 0xb3fe
movq 0x1f0(%rsp), %rdi
testq %rdi, %rdi
je 0x8fb6
callq 0x8036
movq 0x1c0(%rsp), %rdi
leaq 0x1d0(%rsp), %rax
cmpq %rax, %rdi
je 0x8fdb
movq 0x1d0(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x188(%rsp)
movq 0x198(%rsp), %rdi
leaq 0x1a8(%rsp), %rax
cmpq %rax, %rdi
je 0x9008
movq 0x1a8(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x160(%rsp), %rdi
leaq 0x170(%rsp), %rax
cmpq %rax, %rdi
je 0x902d
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x904f
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x10(%rsp)
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x9070
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0x908c
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0xd0(%rsp), %rdi
leaq 0xe0(%rsp), %rax
cmpq %rax, %rdi
je 0x90b1
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x208(%rsp)
movq 0x218(%rsp), %rdi
leaq 0x228(%rsp), %rax
cmpq %rax, %rdi
je 0x90de
movq 0x228(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x9103
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x208(%rsp), %rdi
movq %r15, (%rdi)
leaq 0x2bf36(%rip), %rsi     # 0x3504b
leaq 0x2bf35(%rip), %rdx     # 0x35051
callq 0xbdee
leaq 0x160(%rsp), %rdi
movl $0xffffffff, -0x8(%rdi) # imm = 0xFFFFFFFF
movq %rbp, -0x10(%rdi)
leaq 0x170(%rsp), %rax
movq %rax, (%rdi)
movq 0x208(%rsp), %rsi
movq 0x210(%rsp), %rdx
addq %rsi, %rdx
callq 0xbd58
movb $0x0, 0x180(%rsp)
movw $0x0, 0x182(%rsp)
leaq 0x10(%rsp), %rdi
movq %r13, (%rdi)
leaq 0x2bf04(%rip), %rsi     # 0x3507c
leaq 0x2bf00(%rip), %rdx     # 0x3507f
callq 0xbdee
xorps %xmm0, %xmm0
leaq 0x90(%rsp), %rcx
movaps %xmm0, (%rcx)
movq $0x0, 0x10(%rcx)
leaq 0x318(%rsp), %rdi
leaq 0x150(%rsp), %rsi
leaq 0x10(%rsp), %rdx
callq 0xb1c2
leaq 0xd0(%rsp), %rdi
leaq 0x48(%rsp), %rsi
leaq 0x318(%rsp), %rdx
callq 0xc0f2
leaq 0xd0(%rsp), %rsi
movq %r14, %rdi
callq 0xc576
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0x91f0
callq 0x8036
leaq 0x318(%rsp), %rdi
callq 0xb338
leaq 0x90(%rsp), %rdi
callq 0xb3fe
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
je 0x9221
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x150(%rsp)
movq 0x160(%rsp), %rdi
leaq 0x170(%rsp), %rax
cmpq %rax, %rdi
je 0x924e
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x208(%rsp), %rdi
cmpq %r15, %rdi
je 0x926b
movq 0x218(%rsp), %rsi
incq %rsi
callq 0x72c0
addq $0x458, %rsp            # imm = 0x458
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, (%rsp)
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0x9299
callq 0x8036
jmp 0x9299
movq %rax, (%rsp)
leaq 0x318(%rsp), %rdi
callq 0xb338
jmp 0x92ac
movq %rax, (%rsp)
leaq 0x90(%rsp), %rdi
callq 0xb3fe
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
je 0x92d6
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x92d6
movq %rax, (%rsp)
leaq 0x3ca73(%rip), %rax     # 0x45d50
movq %rax, 0x150(%rsp)
movq 0x160(%rsp), %rdi
leaq 0x170(%rsp), %rax
cmpq %rax, %rdi
je 0x9310
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x9310
movq %rax, (%rsp)
movq 0x208(%rsp), %rdi
cmpq %r15, %rdi
jne 0x955b
jmp 0x993e
jmp 0x99af
movq %rax, (%rsp)
movq 0x118(%rsp), %rdi
testq %rdi, %rdi
je 0x9347
callq 0x8036
jmp 0x9347
movq %rax, (%rsp)
leaq 0x318(%rsp), %rdi
callq 0xb338
jmp 0x935a
movq %rax, (%rsp)
leaq 0x130(%rsp), %rdi
callq 0xb3fe
jmp 0x936d
movq %rax, (%rsp)
movq 0x1f0(%rsp), %rdi
testq %rdi, %rdi
je 0x9385
callq 0x8036
jmp 0x9385
movq %rax, (%rsp)
leaq 0x150(%rsp), %rdi
callq 0xb44c
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x93c0
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x93c0
movq %rax, (%rsp)
jmp 0x9392
movq %rax, (%rsp)
leaq 0x3c989(%rip), %rax     # 0x45d50
movq %rax, 0x10(%rsp)
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x93ee
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x93ee
movq %rax, (%rsp)
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0x9410
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x9410
movq %rax, (%rsp)
movq 0xd0(%rsp), %rdi
leaq 0xe0(%rsp), %rax
cmpq %rax, %rdi
je 0x9435
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x3c914(%rip), %rax     # 0x45d50
movq %rax, 0x208(%rsp)
movq 0x218(%rsp), %rdi
leaq 0x228(%rsp), %rax
cmpq %rax, %rdi
je 0x9469
movq 0x228(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
jne 0x992e
jmp 0x993e
movq %rax, (%rsp)
jmp 0x9435
movq %rax, (%rsp)
jmp 0x9469
jmp 0x99af
jmp 0x94aa
jmp 0x94c2
jmp 0x94d5
jmp 0x9504
jmp 0x953e
jmp 0x99af
movq %rax, (%rsp)
movq 0xd8(%rsp), %rdi
testq %rdi, %rdi
je 0x94c6
callq 0x8036
jmp 0x94c6
movq %rax, (%rsp)
leaq 0x318(%rsp), %rdi
callq 0xb338
jmp 0x94d9
movq %rax, (%rsp)
leaq 0x90(%rsp), %rdi
callq 0xb3fe
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9508
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x9508
movq %rax, (%rsp)
leaq 0x3c841(%rip), %rax     # 0x45d50
movq %rax, 0x150(%rsp)
movq 0x160(%rsp), %rdi
leaq 0x170(%rsp), %rax
cmpq %rax, %rdi
je 0x9542
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x9542
movq %rax, (%rsp)
movq 0x208(%rsp), %rdi
leaq 0x218(%rsp), %rax
cmpq %rax, %rdi
je 0x993e
movq 0x218(%rsp), %rsi
jmp 0x9936
jmp 0x99af
movq %rax, (%rsp)
movq 0x2f8(%rsp), %rdi
testq %rdi, %rdi
je 0x9589
callq 0x8036
jmp 0x9589
movq %rax, (%rsp)
leaq 0x318(%rsp), %rdi
callq 0xb338
jmp 0x959c
movq %rax, (%rsp)
leaq 0x300(%rsp), %rdi
callq 0xb3fe
jmp 0x95af
movq %rax, (%rsp)
movl $0x20, %r14d
movq 0x128(%rsp,%r14), %rdi
testq %rdi, %rdi
je 0x95c7
callq 0x8036
addq $-0x10, %r14
jne 0x95b5
movb $0x1, %r14b
jmp 0x95d9
movq %rax, (%rsp)
xorl %r14d, %r14d
leaq 0x208(%rsp), %rdi
callq 0xb44c
movq 0x2c8(%rsp), %rdi
cmpq %r13, %rdi
je 0x9615
movq 0x2d8(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x9615
movq %rax, (%rsp)
xorl %r14d, %r14d
jmp 0x95e6
movq %rax, (%rsp)
xorl %r14d, %r14d
leaq 0x3c734(%rip), %rax     # 0x45d50
movq %rax, 0xd0(%rsp)
movq 0xe0(%rsp), %rdi
cmpq %rbp, %rdi
je 0x964a
movq 0xf0(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x964a
movq %rax, (%rsp)
xorl %r14d, %r14d
movq 0x2a8(%rsp), %rdi
cmpq %r15, %rdi
je 0x9670
movq 0x2b8(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x9670
movq %rax, (%rsp)
xorl %r14d, %r14d
leaq 0x140(%rsp), %r15
leaq 0x150(%rsp), %rdi
callq 0xb44c
movq 0x1e8(%rsp), %rdi
leaq 0x1f8(%rsp), %rax
cmpq %rax, %rdi
je 0x96aa
movq 0x1f8(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x3c69f(%rip), %rax     # 0x45d50
movq %rax, 0x90(%rsp)
movq 0xa0(%rsp), %rdi
leaq 0xb0(%rsp), %rax
cmpq %rax, %rdi
je 0x96de
movq 0xb0(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x110(%rsp), %rdi
leaq 0x120(%rsp), %rax
cmpq %rax, %rdi
je 0x9703
movq 0x120(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x130(%rsp), %r12
cmpq %r15, %r12
sete %al
orb %al, %r14b
jne 0x972d
movq -0x8(%r15), %rdi
testq %rdi, %rdi
je 0x9724
callq 0x8036
addq $-0x10, %r15
cmpq %r12, %r15
jne 0x9716
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x974f
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x3c5fa(%rip), %rax     # 0x45d50
movq %rax, 0x10(%rsp)
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x9777
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0x993e
movq 0x58(%rsp), %rsi
jmp 0x9936
movq %rax, (%rsp)
leaq 0x130(%rsp), %r15
xorl %r14d, %r14d
jmp 0x9678
movq %rax, (%rsp)
leaq 0x130(%rsp), %r15
xorl %r14d, %r14d
jmp 0x9685
movq %rax, (%rsp)
leaq 0x130(%rsp), %r15
xorl %r14d, %r14d
jmp 0x96aa
movq %rax, (%rsp)
xorl %r14d, %r14d
jmp 0x96de
movq %rax, (%rsp)
jmp 0x972d
movq %rax, (%rsp)
jmp 0x974f
movq %rax, (%rsp)
jmp 0x9777
jmp 0x99af
movq %rax, (%rsp)
movq 0x118(%rsp), %rdi
testq %rdi, %rdi
je 0x9815
callq 0x8036
jmp 0x9815
movq %rax, (%rsp)
leaq 0x318(%rsp), %rdi
callq 0xb338
jmp 0x9828
movq %rax, (%rsp)
leaq 0x130(%rsp), %rdi
callq 0xb3fe
jmp 0x983b
movq %rax, (%rsp)
movq 0x1f0(%rsp), %rdi
testq %rdi, %rdi
je 0x9853
callq 0x8036
jmp 0x9853
movq %rax, (%rsp)
leaq 0x150(%rsp), %rdi
callq 0xb44c
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x988e
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x988e
movq %rax, (%rsp)
jmp 0x9860
movq %rax, (%rsp)
movq %rbp, 0x10(%rsp)
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x98b5
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x98b5
movq %rax, (%rsp)
movq 0x48(%rsp), %rdi
leaq 0x58(%rsp), %rax
cmpq %rax, %rdi
je 0x98d7
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x72c0
jmp 0x98d7
movq %rax, (%rsp)
movq 0xd0(%rsp), %rdi
cmpq %r13, %rdi
je 0x98f4
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x72c0
movq %rbp, 0x208(%rsp)
movq 0x218(%rsp), %rdi
leaq 0x228(%rsp), %rax
cmpq %rax, %rdi
je 0x9921
movq 0x228(%rsp), %rsi
incq %rsi
callq 0x72c0
movq 0x90(%rsp), %rdi
cmpq %r14, %rdi
je 0x993e
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x72c0
leaq 0x258(%rbx), %rdi
callq 0x7f8e
movq 0x238(%rbx), %rdi
cmpq 0x2a0(%rsp), %rdi
je 0x996e
movq 0x2a0(%rsp), %rax
movq (%rax), %rsi
incq %rsi
callq 0x72c0
movq 0x2e8(%rsp), %rdi
callq 0x7420
addq $0x8, %rbx
movq 0x108(%rsp), %rdi
callq 0x7ef2
movq %rbx, %rdi
callq 0x7f40
movq (%rsp), %rdi
callq 0x74f0
movq %rax, (%rsp)
jmp 0x98f4
movq %rax, (%rsp)
jmp 0x9921
movq %rax, (%rsp)
jmp 0x993e
movq %rax, (%rsp)
jmp 0x997b
nop