// File: /workspace/github_cpp_makefile_star2_O3/hzeller[P]jcxxgen/schema-compiler.cc
// Function: LoadObjectTypes(char const*)
std::unique_ptr<ObjectTypeVector> LoadObjectTypes(const char *filename) {
  std::unique_ptr<ObjectTypeVector> result(new ObjectTypeVector());

  if (!ParseObjectTypesFromFile(filename, result.get())) return nullptr;
  if (!ValidateTypes(result.get())) return nullptr;
  return result;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x388, %rsp            # imm = 0x388
movq %rsi, %r14
movq %rdi, -0x160(%rbp)
movl $0x18, %edi
callq 0x4280
movq %rax, %r15
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
movq $0x0, 0x10(%rax)
movq %rax, -0x60(%rbp)
movb 0x1ae19(%rip), %al      # 0x1f6e8
testb %al, %al
je 0x5de8
movb 0x1ae33(%rip), %al      # 0x1f710
testb %al, %al
je 0x5e3f
movb 0x1ae4d(%rip), %al      # 0x1f738
testb %al, %al
je 0x5e96
movq $0x0, -0x58(%rbp)
leaq -0x3a8(%rbp), %rdi
movq %r14, %rsi
movl $0x8, %edx
callq 0x44c0
movq -0x3a8(%rbp), %rax
movq -0x18(%rax), %rcx
cmpl $0x0, -0x388(%rbp,%rcx)
je 0x4967
movq 0x1a6bd(%rip), %rbx     # 0x1efe8
leaq 0x11c7b(%rip), %rsi     # 0x165ad
movl $0xb, %edx
movq %rbx, %rdi
callq 0x4300
testq %r14, %r14
je 0x5192
movq %r14, %rdi
callq 0x4140
movq 0x1a691(%rip), %rdi     # 0x1efe8
movq %r14, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x51a9
leaq -0x78(%rbp), %rcx
movq %rcx, -0x10(%rcx)
movq $0x0, -0x8(%rcx)
movb $0x0, (%rcx)
xorps %xmm0, %xmm0
movaps %xmm0, -0xa0(%rbp)
movaps %xmm0, -0xb0(%rbp)
movq -0x18(%rax), %rax
movb $0x1, %bl
testb $0x2, -0x388(%rbp,%rax)
jne 0x52f7
movq %r15, -0xb8(%rbp)
leaq (%rax,%rbp), %rdi
addq $-0x3a8, %rdi           # imm = 0xFC58
movl $0x1, %r12d
leaq -0x150(%rbp), %rbx
movq %r14, -0x30(%rbp)
movl $0xa, %esi
callq 0x4270
movsbl %al, %edx
leaq -0x3a8(%rbp), %rdi
leaq -0x88(%rbp), %rsi
callq 0x44d0
movq -0x88(%rbp), %rdi
movq -0x80(%rbp), %rsi
addq %rdi, %rsi
xorps %xmm0, %xmm0
movaps %xmm0, -0x140(%rbp)
movaps %xmm0, -0x150(%rbp)
movq %rbx, %r15
movq %rbx, %rdx
leaq 0x1acba(%rip), %rcx     # 0x1f6c8
xorl %r8d, %r8d
callq 0x124ec
movl %eax, %ebx
movq -0x150(%rbp), %rdi
testq %rdi, %rdi
je 0x4a33
movq -0x140(%rbp), %rsi
subq %rdi, %rsi
callq 0x4290
testb %bl, %bl
movq %r15, %rbx
jne 0x5168
movq -0x88(%rbp), %rdi
movq -0x80(%rbp), %rsi
addq %rdi, %rsi
leaq -0xb0(%rbp), %rdx
leaq 0x1ac96(%rip), %rcx     # 0x1f6f0
xorl %r8d, %r8d
callq 0x1467b
testb %al, %al
je 0x4aaf
movl $0x78, %edi
callq 0x4280
movq %rax, %r13
movq -0xb0(%rbp), %rax
movq -0xa8(%rbp), %rcx
subq %rax, %rcx
je 0x4b1e
movq %rcx, %rdx
sarq $0x3, %rdx
movabsq $-0x5555555555555555, %rsi # imm = 0xAAAAAAAAAAAAAAAB
imulq %rsi, %rdx
addq $-0x5, %rdx
cmpq $-0x3, %rdx
ja 0x4b1e
addq $0x18, %rax
jmp 0x4b25
cmpq $0x0, -0x58(%rbp)
je 0x51d2
movq -0x88(%rbp), %rdi
movq -0x80(%rbp), %rsi
addq %rdi, %rsi
leaq -0xb0(%rbp), %rdx
leaq 0x1ac42(%rip), %rcx     # 0x1f718
xorl %r8d, %r8d
callq 0x1467b
testb %al, %al
je 0x51f3
movq -0xb0(%rbp), %rdi
movq -0xa8(%rbp), %rax
subq %rdi, %rax
je 0x4b66
movq %rax, %rcx
sarq $0x3, %rcx
movabsq $-0x5555555555555555, %rdx # imm = 0xAAAAAAAAAAAAAAAB
imulq %rdx, %rcx
addq $-0x5, %rcx
cmpq $-0x3, %rcx
ja 0x4b66
addq $0x18, %rdi
jmp 0x4b6d
addq %rcx, %rax
addq $-0x48, %rax
cmpb $0x1, 0x10(%rax)
jne 0x4bc7
movq (%rax), %rsi
movq 0x8(%rax), %rdx
leaq -0x140(%rbp), %rax
movq %rax, -0x150(%rbp)
movq %rbx, %rdi
callq 0x148f8
movq -0xb8(%rbp), %r15
movq -0x150(%rbp), %rsi
movq -0x148(%rbp), %rdx
jmp 0x4bf0
addq %rax, %rdi
addq $-0x48, %rdi
leaq 0x11a82(%rip), %rsi     # 0x165f6
callq 0x14aba
testl %eax, %eax
je 0x4cc8
movq -0xb0(%rbp), %rax
movq -0xa8(%rbp), %rdx
movq %rdx, %rcx
subq %rax, %rcx
je 0x4c6f
movq %rcx, %rsi
sarq $0x3, %rsi
movabsq $-0x5555555555555555, %rdi # imm = 0xAAAAAAAAAAAAAAAB
imulq %rdi, %rsi
addq $-0x5, %rsi
cmpq $-0x3, %rsi
ja 0x4c6f
leaq 0x18(%rax), %r8
jmp 0x4c77
leaq -0x140(%rbp), %rsi
movq %rsi, -0x150(%rbp)
movq $0x0, -0x148(%rbp)
movb $0x0, -0x140(%rbp)
xorl %edx, %edx
movq -0xb8(%rbp), %r15
movq %r14, (%r13)
movl %r12d, 0x8(%r13)
leaq 0x10(%r13), %rdi
movq %r13, %rax
addq $0x20, %rax
movq %rax, 0x10(%r13)
addq %rsi, %rdx
callq 0xc7f0
xorps %xmm0, %xmm0
movups %xmm0, 0x60(%r13)
movups %xmm0, 0x50(%r13)
movups %xmm0, 0x40(%r13)
movups %xmm0, 0x30(%r13)
movq $0x0, 0x70(%r13)
movq %r13, -0x58(%rbp)
movq -0x150(%rbp), %rdi
leaq -0x140(%rbp), %rax
cmpq %rax, %rdi
je 0x4c54
movq -0x140(%rbp), %rsi
incq %rsi
callq 0x4290
movq 0x8(%r15), %rsi
cmpq 0x10(%r15), %rsi
je 0x4cb7
movq -0x58(%rbp), %rax
movq %rax, (%rsi)
addq $0x8, 0x8(%r15)
jmp 0x5168
leaq (%rax,%rcx), %r8
addq $-0x48, %r8
leaq -0x50(%rbp), %rdi
leaq -0x1a0(%rbp), %rbx
movq -0x58(%rbp), %r13
cmpb $0x1, 0x10(%r8)
jne 0x4d0b
movq (%r8), %rsi
movq 0x8(%r8), %rdx
leaq -0x40(%rbp), %rax
movq %rax, -0x50(%rbp)
callq 0x148f8
movq -0xb0(%rbp), %rax
movq -0xa8(%rbp), %rdx
movq %rdx, %rcx
subq %rax, %rcx
jmp 0x4d1f
movq %r15, %rdi
leaq -0x58(%rbp), %rdx
callq 0x1497a
jmp 0x5168
movq -0xb0(%rbp), %rax
movq -0xa8(%rbp), %rcx
subq %rax, %rcx
je 0x50e7
movq %rcx, %rdx
sarq $0x3, %rdx
movabsq $-0x5555555555555555, %rsi # imm = 0xAAAAAAAAAAAAAAAB
imulq %rsi, %rdx
addq $-0x7, %rdx
cmpq $-0x5, %rdx
ja 0x50e7
addq $0x48, %rax
jmp 0x50ee
leaq -0x40(%rbp), %rsi
movq %rsi, -0x50(%rbp)
movq $0x0, -0x48(%rbp)
movb $0x0, -0x40(%rbp)
cmpq %rdx, %rax
je 0x4d49
movq %rcx, %rdx
sarq $0x3, %rdx
movabsq $-0x5555555555555555, %rsi # imm = 0xAAAAAAAAAAAAAAAB
imulq %rsi, %rdx
addq $-0x6, %rdx
cmpq $-0x4, %rdx
ja 0x4d49
addq $0x30, %rax
jmp 0x4d50
addq %rcx, %rax
addq $-0x48, %rax
cmpb $0x1, 0x10(%rax)
jne 0x4d75
movq (%rax), %rsi
movq 0x8(%rax), %rdx
leaq -0x190(%rbp), %rax
movq %rax, -0x1a0(%rbp)
movq %rbx, %rdi
callq 0x148f8
jmp 0x4d95
leaq -0x190(%rbp), %rax
movq %rax, -0x1a0(%rbp)
movq $0x0, -0x198(%rbp)
movb $0x0, -0x190(%rbp)
movq %rbx, %rdi
movl $0x3f, %esi
xorl %edx, %edx
callq 0x4380
movq %rax, %r14
movq -0xb0(%rbp), %rax
movq -0xa8(%rbp), %rcx
subq %rax, %rcx
je 0x4ddf
movq %rcx, %rdx
sarq $0x3, %rdx
movabsq $-0x5555555555555555, %rsi # imm = 0xAAAAAAAAAAAAAAAB
imulq %rsi, %rdx
addq $-0x6, %rdx
cmpq $-0x4, %rdx
ja 0x4ddf
addq $0x30, %rax
jmp 0x4de6
addq %rcx, %rax
addq $-0x48, %rax
leaq -0x180(%rbp), %rbx
cmpb $0x1, 0x10(%rax)
jne 0x4e12
movq (%rax), %rsi
movq 0x8(%rax), %rdx
leaq -0x170(%rbp), %rax
movq %rax, -0x180(%rbp)
movq %rbx, %rdi
callq 0x148f8
jmp 0x4e32
leaq -0x170(%rbp), %rax
movq %rax, -0x180(%rbp)
movq $0x0, -0x178(%rbp)
movb $0x0, -0x170(%rbp)
movq %rbx, %rdi
movl $0x2b, %esi
xorl %edx, %edx
callq 0x4380
movq %rax, %rbx
movq -0x30(%rbp), %rax
movq %rax, -0x150(%rbp)
movl %r12d, -0x148(%rbp)
movq %r13, -0x140(%rbp)
leaq -0x128(%rbp), %rax
movq %rax, -0x138(%rbp)
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
addq %rsi, %rdx
leaq -0x138(%rbp), %rdi
callq 0xc7f0
cmpq $-0x1, %r14
setne -0x118(%rbp)
cmpq $-0x1, %rbx
setne -0x117(%rbp)
leaq -0x100(%rbp), %rax
movq %rax, -0x110(%rbp)
xorl %ecx, %ecx
movq %rcx, -0x108(%rbp)
movb %cl, -0x100(%rbp)
leaq -0xe0(%rbp), %rax
movq %rax, -0xf0(%rbp)
movq %rcx, -0xe8(%rbp)
movb %cl, -0xe0(%rbp)
movq %rcx, -0xd0(%rbp)
movq -0x180(%rbp), %rdi
leaq -0x170(%rbp), %rax
cmpq %rax, %rdi
je 0x4ef9
movq -0x170(%rbp), %rsi
incq %rsi
callq 0x4290
movq -0x1a0(%rbp), %rdi
leaq -0x190(%rbp), %rax
cmpq %rax, %rdi
movq -0x30(%rbp), %r14
je 0x4f1f
movq -0x190(%rbp), %rsi
incq %rsi
callq 0x4290
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x4f38
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x4290
movq -0xb0(%rbp), %rax
movq -0xa8(%rbp), %rcx
subq %rax, %rcx
je 0x4f70
movq %rcx, %rdx
sarq $0x3, %rdx
movabsq $-0x5555555555555555, %rsi # imm = 0xAAAAAAAAAAAAAAAB
imulq %rsi, %rdx
addq $-0x7, %rdx
cmpq $-0x5, %rdx
ja 0x4f70
addq $0x48, %rax
jmp 0x4f77
addq %rcx, %rax
addq $-0x48, %rax
leaq -0x40(%rbp), %rcx
cmpb $0x1, 0x10(%rax)
jne 0x4f9d
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %rcx, -0x50(%rbp)
movq %rcx, %rbx
leaq -0x50(%rbp), %r13
movq %r13, %rdi
callq 0x148f8
jmp 0x4fb4
movq %rcx, -0x50(%rbp)
movq $0x0, -0x48(%rbp)
movb $0x0, -0x40(%rbp)
movq %rcx, %rbx
leaq -0x50(%rbp), %r13
leaq -0xf0(%rbp), %rdi
movq %r13, %rsi
callq 0x4340
movq -0x50(%rbp), %rdi
cmpq %rbx, %rdi
je 0x4fd8
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x4290
movq -0xb0(%rbp), %rax
movq -0xa8(%rbp), %rcx
subq %rax, %rcx
je 0x5010
movq %rcx, %rdx
sarq $0x3, %rdx
movabsq $-0x5555555555555555, %rsi # imm = 0xAAAAAAAAAAAAAAAB
imulq %rsi, %rdx
addq $-0x9, %rdx
cmpq $-0x7, %rdx
ja 0x5010
addq $0x78, %rax
jmp 0x5017
addq %rcx, %rax
addq $-0x48, %rax
leaq -0x40(%rbp), %rcx
cmpb $0x1, 0x10(%rax)
jne 0x5039
movq (%rax), %rsi
movq 0x8(%rax), %rdx
movq %rcx, -0x50(%rbp)
movq %rcx, %rbx
movq %r13, %rdi
callq 0x148f8
jmp 0x504c
movq %rcx, -0x50(%rbp)
movq $0x0, -0x48(%rbp)
movb $0x0, -0x40(%rbp)
movq %rcx, %rbx
leaq -0x110(%rbp), %rdi
movq %r13, %rsi
callq 0x4340
movq -0x50(%rbp), %rdi
cmpq %rbx, %rdi
je 0x5070
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x4290
movq -0x58(%rbp), %rdi
addq $0x48, %rdi
movq %r15, %rbx
movq %r15, %rsi
callq 0x6b28
movq -0xf0(%rbp), %rdi
leaq -0xe0(%rbp), %rax
cmpq %rax, %rdi
je 0x50a5
movq -0xe0(%rbp), %rsi
incq %rsi
callq 0x4290
movq -0x110(%rbp), %rdi
leaq -0x100(%rbp), %rax
cmpq %rax, %rdi
je 0x50c7
movq -0x100(%rbp), %rsi
incq %rsi
callq 0x4290
movq -0x138(%rbp), %rdi
leaq -0x128(%rbp), %rax
cmpq %rax, %rdi
je 0x5168
movq -0x128(%rbp), %rsi
jmp 0x5160
addq %rcx, %rax
addq $-0x48, %rax
movq -0x58(%rbp), %r13
cmpb $0x1, 0x10(%rax)
jne 0x5117
movq (%rax), %rsi
movq 0x8(%rax), %rdx
leaq -0x140(%rbp), %rax
movq %rax, -0x150(%rbp)
movq %rbx, %rdi
callq 0x148f8
jmp 0x5137
leaq -0x140(%rbp), %rax
movq %rax, -0x150(%rbp)
movq $0x0, -0x148(%rbp)
movb $0x0, -0x140(%rbp)
addq $0x30, %r13
movq %r13, %rdi
movq %rbx, %rsi
callq 0x14b3e
movq -0x150(%rbp), %rdi
leaq -0x140(%rbp), %rax
cmpq %rax, %rdi
je 0x5168
movq -0x140(%rbp), %rsi
incq %rsi
callq 0x4290
movq -0x3a8(%rbp), %rax
movq -0x18(%rax), %rax
leaq (%rax,%rbp), %rdi
addq $-0x3a8, %rdi           # imm = 0xFC58
incl %r12d
testb $0x2, 0x20(%rdi)
je 0x49c2
movb $0x1, %bl
jmp 0x52f7
movq (%rbx), %rax
movq -0x18(%rax), %rax
leaq (%rbx,%rax), %rdi
movl 0x20(%rbx,%rax), %esi
orl $0x1, %esi
callq 0x4450
movq 0x19e38(%rip), %rdi     # 0x1efe8
leaq 0x10fa3(%rip), %rsi     # 0x1615a
movl $0x1, %edx
callq 0x4300
leaq -0x3a8(%rbp), %rdi
callq 0x4090
jmp 0x5bc3
testq %r14, %r14
je 0x521b
movq %r14, %rdi
callq 0x4140
movq 0x19e02(%rip), %rdi     # 0x1efe8
movq %r14, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x5239
testq %r14, %r14
je 0x5285
movq %r14, %rdi
callq 0x4140
movq 0x19ddd(%rip), %rdi     # 0x1efe8
movq %r14, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x52a3
movq 0x19dc6(%rip), %rax     # 0x1efe8
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
leaq (%rax,%rcx), %rdi
movl 0x20(%rax,%rcx), %esi
orl $0x1, %esi
callq 0x4450
movq 0x19da8(%rip), %rdi     # 0x1efe8
leaq 0x10f20(%rip), %rsi     # 0x16167
movl $0x1, %edx
callq 0x4300
movq 0x19d90(%rip), %rdi     # 0x1efe8
movl %r12d, %esi
callq 0x4470
movq %rax, %rbx
leaq 0x11d45(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
movl $0x19, %edx
leaq 0x11336(%rip), %rsi     # 0x165b9
jmp 0x52ed
movq 0x19d5c(%rip), %rax     # 0x1efe8
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
leaq (%rax,%rcx), %rdi
movl 0x20(%rax,%rcx), %esi
orl $0x1, %esi
callq 0x4450
movq 0x19d3e(%rip), %rdi     # 0x1efe8
leaq 0x10eb6(%rip), %rsi     # 0x16167
movl $0x1, %edx
callq 0x4300
movq 0x19d26(%rip), %rdi     # 0x1efe8
movl %r12d, %esi
callq 0x4470
movq %rax, %rbx
leaq 0x11cdb(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
movl $0x22, %edx
leaq 0x112e6(%rip), %rsi     # 0x165d3
movq %rbx, %rdi
callq 0x4300
xorl %ebx, %ebx
movq -0xb0(%rbp), %rdi
testq %rdi, %rdi
je 0x5312
movq -0xa0(%rbp), %rsi
subq %rdi, %rsi
callq 0x4290
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x532e
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4290
leaq -0x3a8(%rbp), %rdi
callq 0x4090
testb %bl, %bl
je 0x5bc3
movq -0x60(%rbp), %rax
movq (%rax), %r14
movq 0x8(%rax), %rbx
leaq -0x378(%rbp), %rax
movq %rax, -0x30(%rax)
movq $0x1, -0x28(%rax)
xorps %xmm0, %xmm0
movups %xmm0, -0x20(%rax)
movl $0x3f800000, -0x10(%rax) # imm = 0x3F800000
movups %xmm0, -0x8(%rax)
cmpq %rbx, %r14
je 0x5695
leaq -0x140(%rbp), %rcx
leaq -0x150(%rbp), %r13
movq %rbx, -0xc0(%rbp)
movq (%r14), %rax
movq %rcx, -0x150(%rbp)
movq 0x10(%rax), %rsi
movq 0x18(%rax), %rdx
addq %rsi, %rdx
movq %r13, %rdi
callq 0xc7f0
movq (%r14), %rax
movq %rax, -0x130(%rbp)
leaq -0x3a8(%rbp), %rdi
movq %r13, %r15
movq %r13, %rsi
callq 0x151aa
movq %rax, %r12
movl %edx, %r13d
movq -0x150(%rbp), %rdi
leaq -0x140(%rbp), %rax
cmpq %rax, %rdi
je 0x53f1
movq -0x140(%rbp), %rsi
incq %rsi
callq 0x4290
testb $0x1, %r13b
je 0x5c21
movq (%r14), %rax
movq 0x30(%rax), %r12
movq 0x38(%rax), %rbx
cmpq %rbx, %r12
je 0x545c
leaq -0x3a8(%rbp), %rdi
movq %r12, %rsi
callq 0x15626
movq (%r14), %r13
testq %rax, %rax
je 0x56b4
addq $0x28, %rax
movq 0x68(%r13), %rsi
cmpq 0x70(%r13), %rsi
je 0x5441
movq (%rax), %rax
movq %rax, (%rsi)
addq $0x8, 0x68(%r13)
jmp 0x5450
addq $0x60, %r13
movq %r13, %rdi
movq %rax, %rdx
callq 0x1566a
addq $0x20, %r12
cmpq %rbx, %r12
jne 0x540b
movq (%r14), %rax
movq 0x48(%rax), %r13
movq 0x50(%rax), %rbx
cmpq %rbx, %r13
je 0x5500
addq $0x60, %r13
leaq 0x10d12(%rip), %r12     # 0x1618a
movq %r13, %rdi
movq %r12, %rsi
callq 0x40b0
testl %eax, %eax
je 0x54e0
movq %r13, %rdi
leaq 0x10cea(%rip), %rsi     # 0x1617b
callq 0x40b0
testl %eax, %eax
je 0x54e0
movq %r13, %rdi
leaq 0x10cde(%rip), %rsi     # 0x16182
callq 0x40b0
testl %eax, %eax
je 0x54e0
movq %r13, %rdi
leaq 0x10ce9(%rip), %rsi     # 0x161a0
callq 0x40b0
testl %eax, %eax
je 0x54e0
leaq -0x3a8(%rbp), %rdi
movq %r13, %rsi
callq 0x15626
testq %rax, %rax
je 0x5bfc
movq 0x28(%rax), %rax
movq %rax, 0x20(%r13)
leaq 0x88(%r13), %rax
addq $0x28, %r13
cmpq %rbx, %r13
movq %rax, %r13
jne 0x5478
movq (%r14), %rax
movq 0x48(%rax), %rbx
movq 0x50(%rax), %r13
jmp 0x5503
movq %r13, %rbx
leaq -0x120(%rbp), %rcx
movq %rcx, -0x150(%rbp)
movq $0x1, -0x148(%rbp)
xorps %xmm0, %xmm0
leaq -0x140(%rbp), %rcx
movups %xmm0, (%rcx)
movl $0x3f800000, -0x130(%rbp) # imm = 0x3F800000
movups %xmm0, 0x18(%rcx)
cmpq %r13, %rbx
movq %r14, -0x30(%rbp)
je 0x55b3
leaq -0x78(%rbp), %rax
movq %rax, -0x88(%rbp)
movq 0x18(%rbx), %rsi
movq 0x20(%rbx), %rdx
addq %rsi, %rdx
leaq -0x88(%rbp), %r14
movq %r14, %rdi
callq 0xc7f0
movq %rbx, -0x68(%rbp)
movq %r15, %rdi
movq %r14, %rsi
callq 0x157aa
movq %rax, %r12
movl %edx, %r14d
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x5596
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4290
testb $0x1, %r14b
je 0x5728
addq $0x88, %rbx
cmpq %r13, %rbx
jne 0x5540
movq -0x30(%rbp), %r14
movq (%r14), %rax
movq 0x60(%rax), %rcx
movq 0x68(%rax), %rax
movq %rax, -0x158(%rbp)
cmpq %rax, %rcx
movq %r15, %r13
je 0x5672
movq %rcx, -0xb8(%rbp)
movq (%rcx), %rax
movq 0x48(%rax), %r12
movq 0x50(%rax), %rbx
cmpq %rbx, %r12
je 0x565a
leaq -0x78(%rbp), %rax
movq %rax, -0x88(%rbp)
movq 0x18(%r12), %rsi
movq 0x20(%r12), %rdx
addq %rsi, %rdx
leaq -0x88(%rbp), %r14
movq %r14, %rdi
callq 0xc7f0
movq %r12, -0x68(%rbp)
movq %r13, %rdi
movq %r14, %rsi
callq 0x157aa
movq %rax, %r13
movl %edx, %r14d
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x563d
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4290
testb $0x1, %r14b
je 0x56e0
addq $0x88, %r12
cmpq %rbx, %r12
movq -0x30(%rbp), %r14
movq %r15, %r13
jne 0x55e5
movq -0xb8(%rbp), %rcx
addq $0x8, %rcx
cmpq -0x158(%rbp), %rcx
jne 0x55ce
movq %r13, %rdi
callq 0x15be8
addq $0x8, %r14
movq -0xc0(%rbp), %rbx
cmpq %rbx, %r14
leaq -0x140(%rbp), %rcx
jne 0x5390
leaq -0x3a8(%rbp), %rdi
callq 0x15c6a
movq -0x60(%rbp), %rax
movq -0x160(%rbp), %rcx
movq %rax, (%rcx)
jmp 0x5be3
movq (%r13), %rbx
testq %rbx, %rbx
je 0x5753
movq %rbx, %rdi
callq 0x4140
movq 0x19918(%rip), %rdi     # 0x1efe8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x5771
movq 0x28(%r13), %rax
movq 0x10(%rax), %rax
movq %rax, -0x158(%rbp)
movq -0x30(%rbp), %rax
movq (%rax), %rax
movq %rax, -0xc0(%rbp)
movq (%rax), %r14
testq %r14, %r14
je 0x57ee
movq %r14, %rdi
callq 0x4140
movq 0x198d0(%rip), %rdi     # 0x1efe8
movq %r14, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x580c
movq (%rbx), %r14
testq %r14, %r14
je 0x5a5d
movq %r14, %rdi
callq 0x4140
movq 0x198a5(%rip), %rdi     # 0x1efe8
movq %r14, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x5a7b
movq 0x1988e(%rip), %rax     # 0x1efe8
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
leaq (%rax,%rcx), %rdi
movl 0x20(%rax,%rcx), %esi
orl $0x1, %esi
callq 0x4450
movq 0x19870(%rip), %rdi     # 0x1efe8
leaq 0x109e8(%rip), %rsi     # 0x16167
movl $0x1, %edx
callq 0x4300
movl 0x8(%r13), %esi
movq 0x19854(%rip), %rdi     # 0x1efe8
callq 0x4470
movq %rax, %rbx
leaq 0x1180c(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
leaq 0x11742(%rip), %rsi     # 0x16ef9
movl $0x13, %edx
movq %rbx, %rdi
callq 0x4300
movq (%r12), %rsi
movq 0x8(%r12), %rdx
movq %rbx, %rdi
callq 0x4300
leaq 0x1097e(%rip), %rsi     # 0x1615a
movl $0x1, %edx
movq %rax, %rdi
callq 0x4300
jmp 0x5bb7
movq 0x197f3(%rip), %rax     # 0x1efe8
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
leaq (%rax,%rcx), %rdi
movl 0x20(%rax,%rcx), %esi
orl $0x1, %esi
callq 0x4450
movq 0x197d5(%rip), %rdi     # 0x1efe8
leaq 0x1094d(%rip), %rsi     # 0x16167
movl $0x1, %edx
callq 0x4300
movq -0xc0(%rbp), %rax
movl 0x8(%rax), %esi
movq 0x197b3(%rip), %rdi     # 0x1efe8
callq 0x4470
movq %rax, %r14
leaq 0x1176b(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
movq -0x30(%rbp), %rax
movq (%rax), %rax
movq 0x10(%rax), %rsi
movq 0x18(%rax), %rdx
movq %r14, %rdi
callq 0x4300
movq %rax, %rbx
leaq 0x116f3(%rip), %rsi     # 0x16f65
movl $0x19, %edx
movq %rax, %rdi
callq 0x4300
movq 0x18(%r12), %rsi
movq 0x20(%r12), %rdx
movq %rbx, %rdi
callq 0x4300
movq %rax, %rbx
leaq 0x10c6c(%rip), %rsi     # 0x16507
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
movq 0x28(%r13), %r15
movq (%r15), %r14
testq %r14, %r14
je 0x58cc
movq %r14, %rdi
callq 0x4140
movq %rbx, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x58e5
movq (%rbx), %rax
movq -0x18(%rax), %rax
movq %rbx, %rdi
addq %rax, %rdi
movl 0x20(%rbx,%rax), %esi
orl $0x1, %esi
callq 0x4450
leaq 0x1087b(%rip), %rsi     # 0x16167
movl $0x1, %edx
movq %rbx, %rdi
callq 0x4300
movl 0x8(%r15), %esi
movq %rbx, %rdi
callq 0x4470
movq %rax, %rbx
leaq 0x116a0(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
leaq 0x1165c(%rip), %rsi     # 0x16f7f
movl $0xf, %edx
movq %rbx, %rdi
callq 0x4300
xorl %eax, %eax
movq -0xc0(%rbp), %rcx
cmpq %rcx, -0x158(%rbp)
setne %al
leaq 0x10811(%rip), %rcx     # 0x1615b
leaq 0x1163e(%rip), %rsi     # 0x16f8f
cmoveq %rcx, %rsi
leaq (%rax,%rax,4), %rdx
movq %rbx, %rdi
callq 0x4300
leaq 0x115be(%rip), %rsi     # 0x16f26
movl $0x7, %edx
movq %rbx, %rdi
callq 0x4300
movq 0x28(%r13), %rax
movq 0x10(%rax), %rax
movq 0x10(%rax), %rsi
movq 0x18(%rax), %rdx
movq %rbx, %rdi
callq 0x4300
movq %rax, %rbx
leaq 0x10b70(%rip), %rsi     # 0x16507
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
movq (%r12), %r14
testq %r14, %r14
je 0x59c5
movq %r14, %rdi
callq 0x4140
movq %rbx, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x59de
movq (%rbx), %rax
movq -0x18(%rax), %rax
movq %rbx, %rdi
addq %rax, %rdi
movl 0x20(%rbx,%rax), %esi
orl $0x1, %esi
callq 0x4450
leaq 0x10782(%rip), %rsi     # 0x16167
movl $0x1, %edx
movq %rbx, %rdi
callq 0x4300
movl 0x8(%r12), %esi
movq %rbx, %rdi
callq 0x4470
movq %rax, %rbx
leaq 0x115a6(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
leaq 0x11578(%rip), %rsi     # 0x16f95
movl $0x19, %edx
movq %rbx, %rdi
callq 0x4300
movq -0xb8(%rbp), %rax
movq (%rax), %rax
movq 0x10(%rax), %rsi
movq 0x18(%rax), %rdx
movq %rbx, %rdi
callq 0x4300
leaq 0x10abc(%rip), %rsi     # 0x16507
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
jmp 0x5bab
movq 0x19584(%rip), %rax     # 0x1efe8
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
leaq (%rax,%rcx), %rdi
movl 0x20(%rax,%rcx), %esi
orl $0x1, %esi
callq 0x4450
movq 0x19566(%rip), %rdi     # 0x1efe8
leaq 0x106de(%rip), %rsi     # 0x16167
movl $0x1, %edx
callq 0x4300
movl 0x8(%rbx), %esi
movq 0x1954b(%rip), %rdi     # 0x1efe8
callq 0x4470
movq %rax, %r14
leaq 0x11503(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
leaq 0x11463(%rip), %rsi     # 0x16f23
movl $0xa, %edx
movq %r14, %rdi
callq 0x4300
movq -0x30(%rbp), %rax
movq (%rax), %rax
movq 0x10(%rax), %rsi
movq 0x18(%rax), %rdx
movq %r14, %rdi
callq 0x4300
movq %rax, %r14
leaq 0x11440(%rip), %rsi     # 0x16f2e
movl $0x16, %edx
movq %rax, %rdi
callq 0x4300
movq 0x18(%rbx), %rsi
movq 0x20(%rbx), %rdx
movq %r14, %rdi
callq 0x4300
movq %rax, %rbx
leaq 0x11430(%rip), %rsi     # 0x16f45
movl $0xf, %edx
movq %rax, %rdi
callq 0x4300
movq 0x28(%r12), %r15
movq (%r15), %r14
testq %r14, %r14
je 0x5b47
movq %r14, %rdi
callq 0x4140
movq %rbx, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x5b60
movq (%rbx), %rax
movq -0x18(%rax), %rax
movq %rbx, %rdi
addq %rax, %rdi
movl 0x20(%rbx,%rax), %esi
orl $0x1, %esi
callq 0x4450
leaq 0x10600(%rip), %rsi     # 0x16167
movl $0x1, %edx
movq %rbx, %rdi
callq 0x4300
movl 0x8(%r15), %esi
movq %rbx, %rdi
callq 0x4470
movq %rax, %rbx
leaq 0x11425(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
leaq 0x113b7(%rip), %rsi     # 0x16f55
movl $0xf, %edx
movq %rbx, %rdi
callq 0x4300
leaq -0x150(%rbp), %rdi
callq 0x15be8
leaq -0x3a8(%rbp), %rdi
callq 0x15c6a
movq -0x160(%rbp), %rax
movq $0x0, (%rax)
movq -0x60(%rbp), %rsi
testq %rsi, %rsi
je 0x5be3
leaq -0x60(%rbp), %rdi
callq 0x15cec
movq -0x160(%rbp), %rax
addq $0x388, %rsp            # imm = 0x388
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq -0x60(%r13), %rbx
testq %rbx, %rbx
je 0x5c4f
movq %rbx, %rdi
callq 0x4140
movq 0x193d4(%rip), %rdi     # 0x1efe8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x5c6d
movq (%r14), %r14
movq (%r14), %rbx
testq %rbx, %rbx
je 0x5ce9
movq %rbx, %rdi
callq 0x4140
movq 0x193a9(%rip), %rdi     # 0x1efe8
movq %rbx, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x5d07
movq 0x19392(%rip), %rax     # 0x1efe8
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
leaq (%rax,%rcx), %rdi
movl 0x20(%rax,%rcx), %esi
orl $0x1, %esi
callq 0x4450
movq 0x19374(%rip), %rdi     # 0x1efe8
leaq 0x104ec(%rip), %rsi     # 0x16167
movl $0x1, %edx
callq 0x4300
movl -0x58(%r13), %esi
movq 0x19358(%rip), %rdi     # 0x1efe8
callq 0x4470
movq %rax, %rbx
leaq 0x11310(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
leaq 0x1125a(%rip), %rsi     # 0x16f0d
movl $0x15, %edx
movq %rbx, %rdi
callq 0x4300
movq (%r13), %rsi
movq 0x8(%r13), %rdx
movq %rbx, %rdi
callq 0x4300
leaq 0x10830(%rip), %rsi     # 0x16507
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
jmp 0x5bb7
movq 0x192f8(%rip), %rax     # 0x1efe8
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
leaq (%rax,%rcx), %rdi
movl 0x20(%rax,%rcx), %esi
orl $0x1, %esi
callq 0x4450
movq 0x192da(%rip), %rdi     # 0x1efe8
leaq 0x10452(%rip), %rsi     # 0x16167
movl $0x1, %edx
callq 0x4300
movl 0x8(%r14), %esi
movq 0x192be(%rip), %rdi     # 0x1efe8
callq 0x4470
movq %rax, %rbx
leaq 0x11276(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
leaq 0x11187(%rip), %rsi     # 0x16ed4
movl $0x24, %edx
movq %rbx, %rdi
callq 0x4300
movq 0x28(%r12), %r15
movq (%r15), %r14
testq %r14, %r14
je 0x5d7f
movq %r14, %rdi
callq 0x4140
movq %rbx, %rdi
movq %r14, %rsi
movq %rax, %rdx
callq 0x4300
jmp 0x5d98
movq (%rbx), %rax
movq -0x18(%rax), %rax
movq %rbx, %rdi
addq %rax, %rdi
movl 0x20(%rbx,%rax), %esi
orl $0x1, %esi
callq 0x4450
leaq 0x103c8(%rip), %rsi     # 0x16167
movl $0x1, %edx
movq %rbx, %rdi
callq 0x4300
movl 0x8(%r15), %esi
movq %rbx, %rdi
callq 0x4470
movq %rax, %rbx
leaq 0x111ed(%rip), %rsi     # 0x16faf
movl $0x2, %edx
movq %rax, %rdi
callq 0x4300
leaq 0x10384(%rip), %rsi     # 0x1615a
movl $0x1, %edx
movq %rbx, %rdi
callq 0x4300
jmp 0x5bb7
leaq 0x198f9(%rip), %rdi     # 0x1f6e8
callq 0x44a0
testl %eax, %eax
je 0x48d7
leaq 0x198c5(%rip), %rdi     # 0x1f6c8
leaq 0x10742(%rip), %rsi     # 0x1654c
movl $0x10, %edx
callq 0x6a92
leaq 0xce3(%rip), %rdi       # 0x6afe
leaq 0x198a6(%rip), %rsi     # 0x1f6c8
leaq 0x1947f(%rip), %rdx     # 0x1f2a8
callq 0x4250
leaq 0x198b3(%rip), %rdi     # 0x1f6e8
callq 0x41d0
jmp 0x48d7
leaq 0x198ca(%rip), %rdi     # 0x1f710
callq 0x44a0
testl %eax, %eax
je 0x48e5
leaq 0x19896(%rip), %rdi     # 0x1f6f0
leaq 0x106f8(%rip), %rsi     # 0x16559
movl $0x10, %edx
callq 0x6a92
leaq 0xc8c(%rip), %rdi       # 0x6afe
leaq 0x19877(%rip), %rsi     # 0x1f6f0
leaq 0x19428(%rip), %rdx     # 0x1f2a8
callq 0x4250
leaq 0x19884(%rip), %rdi     # 0x1f710
callq 0x41d0
jmp 0x48e5
leaq 0x1989b(%rip), %rdi     # 0x1f738
callq 0x44a0
testl %eax, %eax
je 0x48f3
leaq 0x19867(%rip), %rdi     # 0x1f718
leaq 0x106b3(%rip), %rsi     # 0x1656b
movl $0x10, %edx
callq 0x6a92
leaq 0xc35(%rip), %rdi       # 0x6afe
leaq 0x19848(%rip), %rsi     # 0x1f718
leaq 0x193d1(%rip), %rdx     # 0x1f2a8
callq 0x4250
leaq 0x19855(%rip), %rdi     # 0x1f738
callq 0x41d0
jmp 0x48f3
movq %rax, %rbx
leaq 0x19841(%rip), %rdi     # 0x1f738
jmp 0x5f0f
movq %rax, %rbx
leaq 0x1980d(%rip), %rdi     # 0x1f710
jmp 0x5f0f
movq %rax, %rbx
leaq 0x197d9(%rip), %rdi     # 0x1f6e8
callq 0x41c0
jmp 0x611e
jmp 0x60a2
jmp 0x60a2
movq %rax, %rbx
movq -0x150(%rbp), %rdi
leaq -0x140(%rbp), %rax
cmpq %rax, %rdi
je 0x60a5
movq -0x140(%rbp), %rsi
incq %rsi
callq 0x4290
jmp 0x60a5
jmp 0x60a2
jmp 0x60d8
jmp 0x60a2
jmp 0x5fbb
jmp 0x5fbb
movq %rax, %rbx
jmp 0x5ff4
movq %rax, %rbx
jmp 0x6016
jmp 0x60d8
jmp 0x60a2
jmp 0x60d8
movq %rax, %rbx
movq -0x150(%rbp), %rdi
leaq -0x140(%rbp), %rax
cmpq %rax, %rdi
je 0x60db
movq -0x140(%rbp), %rsi
jmp 0x602b
jmp 0x6070
jmp 0x60a2
movq %rax, %rbx
jmp 0x6066
movq %rax, %rbx
leaq -0x150(%rbp), %rdi
callq 0x6b64
jmp 0x60db
movq %rax, %rbx
movq -0x180(%rbp), %rdi
leaq -0x170(%rbp), %rax
cmpq %rax, %rdi
je 0x5ff4
movq -0x170(%rbp), %rsi
incq %rsi
callq 0x4290
movq -0x1a0(%rbp), %rdi
leaq -0x190(%rbp), %rax
cmpq %rax, %rdi
je 0x6016
movq -0x190(%rbp), %rsi
incq %rsi
callq 0x4290
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x60db
movq -0x40(%rbp), %rsi
incq %rsi
jmp 0x60d1
jmp 0x6070
jmp 0x6075
jmp 0x6070
movq %rax, %rbx
jmp 0x611e
movq %rax, %rbx
movq -0x150(%rbp), %rdi
leaq -0x140(%rbp), %rax
cmpq %rax, %rdi
je 0x6066
movq -0x140(%rbp), %rsi
incq %rsi
callq 0x4290
movl $0x78, %esi
movq %r13, %rdi
jmp 0x60d1
movq %rax, %rbx
jmp 0x6094
movq %rax, %rbx
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x6094
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4290
leaq -0x150(%rbp), %rdi
callq 0x15be8
jmp 0x60a5
movq %rax, %rbx
leaq -0x3a8(%rbp), %rdi
callq 0x15c6a
jmp 0x611e
movq %rax, %rbx
jmp 0x6112
movq %rax, %rbx
movq -0x150(%rbp), %rdi
testq %rdi, %rdi
je 0x60db
movq -0x140(%rbp), %rsi
subq %rdi, %rsi
callq 0x4290
jmp 0x60db
movq %rax, %rbx
movq -0xb0(%rbp), %rdi
testq %rdi, %rdi
je 0x60f6
movq -0xa0(%rbp), %rsi
subq %rdi, %rsi
callq 0x4290
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x6112
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4290
leaq -0x3a8(%rbp), %rdi
callq 0x4090
movq -0x60(%rbp), %rsi
testq %rsi, %rsi
je 0x6130
leaq -0x60(%rbp), %rdi
callq 0x15cec
movq %rbx, %rdi
callq 0x4480