// File: /workspace/github_cpp_makefile_star2_O2/lvandeve[P]lodepng/lodepng_unittest.cpp
// Function: testAutoColorModel(std::vector<unsigned char, std::allocator<unsigned char>> const&, unsigned int, LodePNGColorType, unsigned int, bool)
void testAutoColorModel(const std::vector<unsigned char>& colors, unsigned inbitdepth, LodePNGColorType colortype, unsigned bitdepth, bool key) {
  std::cout << "testAutoColorModel " << inbitdepth << " " << colortype << " " << bitdepth << " " << key << std::endl;
  size_t innum = colors.size() / 4 * inbitdepth / 8;
  size_t num = innum < 65536 ? 65536 : innum; // Make image bigger so the convert doesn't avoid palette due to small image.
  std::vector<unsigned char> colors2(num * 4 * (inbitdepth / 8));
  for(size_t i = 0; i < colors2.size(); i++) colors2[i] = colors[i % colors.size()];

  std::vector<unsigned char> png;
  lodepng::encode(png, colors2, num, 1, LCT_RGBA, inbitdepth);

  // now extract the color type it chose
  unsigned w, h;
  lodepng::State state;
  std::vector<unsigned char> decoded;
  lodepng::decode(decoded, w, h, state, png);
  ASSERT_EQUALS(num, w);
  ASSERT_EQUALS(1, h);
  ASSERT_EQUALS(colortype, state.info_png.color.colortype);
  ASSERT_EQUALS(bitdepth, state.info_png.color.bitdepth);
  ASSERT_EQUALS(key, state.info_png.color.key_defined);
  // also check that the PNG decoded correctly and has same colors as input
  if(inbitdepth == 8) { for(size_t i = 0; i < colors.size(); i++) ASSERT_EQUALS(colors[i], decoded[i]); }
  else { for(size_t i = 0; i < colors.size() / 2; i++) ASSERT_EQUALS(colors[i * 2], decoded[i]); }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x398, %rsp            # imm = 0x398
movl %r8d, %r15d
movl %ecx, %r12d
movl %edx, %ebp
movl %esi, %r13d
movq %rdi, %rbx
movl %edx, 0xbc(%rsp)
movl %ecx, 0xb8(%rsp)
movb %r15b, 0x7(%rsp)
movq 0x74128(%rip), %rdi     # 0xa2fd8
leaq 0x32ca7(%rip), %rsi     # 0x61b5e
callq 0x21f0
movl %r13d, %esi
movq %rsi, 0xd8(%rsp)
movq %rax, %rdi
callq 0x2140
leaq 0x326ef(%rip), %r14     # 0x615c5
movq %rax, %rdi
movq %r14, %rsi
callq 0x21f0
movq %rax, %rdi
movl %ebp, 0xb4(%rsp)
movl %ebp, %esi
movl %r13d, %ebp
callq 0x2360
movq %rax, %rdi
movq %r14, %rsi
callq 0x21f0
movl %r12d, 0xb0(%rsp)
movl %r12d, %esi
movq %rax, %rdi
callq 0x2140
movq %rax, %rdi
movq %r14, %rsi
callq 0x21f0
movq %rax, %rdi
movl %r15d, %esi
callq 0x2340
movq %rax, %rdi
callq 0x2100
movq 0x8(%rbx), %rax
subq (%rbx), %rax
shrq $0x2, %rax
imulq 0xd8(%rsp), %rax
shrq $0x3, %rax
cmpq $0x10001, %rax          # imm = 0x10001
movl $0x10000, %r13d         # imm = 0x10000
cmovaeq %rax, %r13
movq %r13, 0xf8(%rsp)
movl %ebp, %esi
shrl %esi
andl $-0x4, %esi
imulq %r13, %rsi
leaq 0x118(%rsp), %rdx
movb $0x0, (%rdx)
leaq 0xe0(%rsp), %rdi
leaq 0x8(%rsp), %rcx
callq 0x5ab3a
xorl %ecx, %ecx
movq 0xe0(%rsp), %rsi
movq 0xe8(%rsp), %rax
subq %rsi, %rax
cmpq %rax, %rcx
jae 0x2efc0
movq (%rbx), %rdi
movq 0x8(%rbx), %r8
subq %rdi, %r8
movq %rcx, %rax
xorl %edx, %edx
divq %r8
movb (%rdi,%rdx), %al
movb %al, (%rsi,%rcx)
incq %rcx
jmp 0x2ef8b
xorps %xmm0, %xmm0
leaq 0x100(%rsp), %rdi
movaps %xmm0, (%rdi)
andq $0x0, 0x10(%rdi)
leaq 0xe0(%rsp), %rsi
pushq $0x1
popq %rcx
pushq $0x6
popq %r8
movl %r13d, %edx
movl %ebp, %r9d
callq 0xbafa
leaq 0x118(%rsp), %rdi
callq 0xb84c
xorps %xmm0, %xmm0
leaq 0xc0(%rsp), %rdi
movaps %xmm0, (%rdi)
andq $0x0, 0x10(%rdi)
leaq 0xac(%rsp), %rsi
leaq 0xa8(%rsp), %rdx
leaq 0x118(%rsp), %rcx
leaq 0x100(%rsp), %r8
callq 0xb9ef
movl 0xac(%rsp), %eax
cmpq %rax, %r13
jne 0x2f3d7
cmpl $0x1, 0xa8(%rsp)
jne 0x2f527
movl 0xb4(%rsp), %eax
cmpl %eax, 0x1f8(%rsp)
jne 0x2f67a
movl 0xb0(%rsp), %eax
cmpl %eax, 0x1fc(%rsp)
jne 0x2f7ca
movzbl %r15b, %eax
cmpl %eax, 0x210(%rsp)
jne 0x2f91a
movq (%rbx), %rax
movq 0x8(%rbx), %rcx
cmpl $0x8, %ebp
jne 0x2f0bf
movq 0xc0(%rsp), %rdx
movq %rax, %rsi
subq %rcx, %rsi
xorl %r15d, %r15d
xorl %ecx, %ecx
cmpq %r15, %rsi
je 0x2f0ef
movb (%rax,%rcx), %dil
cmpb (%rdx,%rcx), %dil
jne 0x2f135
incq %rcx
decq %r15
jmp 0x2f0a8
subq %rax, %rcx
shrq %rcx
movq 0xc0(%rsp), %rdx
xorl %r12d, %r12d
xorl %r14d, %r14d
cmpq %r14, %rcx
je 0x2f0ef
movb (%rax,%r14,2), %sil
cmpb (%rdx,%r14), %sil
jne 0x2f286
incq %r14
addq $-0x2, %r12
jmp 0x2f0d3
leaq 0xc0(%rsp), %rdi
callq 0xea7c
leaq 0x118(%rsp), %rdi
callq 0xb874
leaq 0x100(%rsp), %rdi
callq 0xea7c
leaq 0xe0(%rsp), %rdi
callq 0xea7c
addq $0x398, %rsp            # imm = 0x398
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x310a1(%rip), %rsi     # 0x601dd
leaq 0x68(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x20c0
leaq 0x32a57(%rip), %rdx     # 0x61ba9
leaq 0x88(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x5a5df
leaq 0x3463a(%rip), %rdx     # 0x637a5
leaq 0x48(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x5a5df
leaq 0x32a2a(%rip), %rdx     # 0x61bae
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x5a5df
leaq 0x3108b(%rip), %rdx     # 0x60225
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x5a5df
movq 0x73e28(%rip), %rdi     # 0xa2fd8
leaq 0x8(%rsp), %rsi
callq 0x21d0
leaq 0x8(%rsp), %rdi
callq 0x2270
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x48(%rsp), %rdi
callq 0x2270
leaq 0x88(%rsp), %rdi
callq 0x2270
leaq 0x68(%rsp), %rdi
callq 0x2270
movq 0x73de2(%rip), %rdi     # 0xa2fd8
leaq 0x59d10(%rip), %rsi     # 0x88f0d
callq 0x21f0
movq %rax, %r14
movq (%rbx), %rsi
subq %r15, %rsi
leaq 0x8(%rsp), %rdi
callq 0x132a0
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
callq 0x21d0
leaq 0x31014(%rip), %rsi     # 0x6023d
movq %rax, %rdi
callq 0x21f0
movq %rax, %rbx
movq 0xc0(%rsp), %rsi
subq %r15, %rsi
leaq 0x28(%rsp), %rdi
callq 0x132a0
leaq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x30ec7(%rip), %rsi     # 0x60124
movq %rax, %rdi
callq 0x21f0
movq %rax, %rdi
callq 0x2100
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x8(%rsp), %rdi
callq 0x2270
callq 0x13280
leaq 0x30f50(%rip), %rsi     # 0x601dd
leaq 0x68(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x20c0
leaq 0x32916(%rip), %rdx     # 0x61bb9
leaq 0x88(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x5a5df
leaq 0x344e9(%rip), %rdx     # 0x637a5
leaq 0x48(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x5a5df
leaq 0x328d9(%rip), %rdx     # 0x61bae
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x5a5df
leaq 0x30f3a(%rip), %rdx     # 0x60225
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x5a5df
movq 0x73cd7(%rip), %rdi     # 0xa2fd8
leaq 0x8(%rsp), %rsi
callq 0x21d0
leaq 0x8(%rsp), %rdi
callq 0x2270
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x48(%rsp), %rdi
callq 0x2270
leaq 0x88(%rsp), %rdi
callq 0x2270
leaq 0x68(%rsp), %rdi
callq 0x2270
movq 0x73c91(%rip), %rdi     # 0xa2fd8
leaq 0x59bbf(%rip), %rsi     # 0x88f0d
callq 0x21f0
movq %rax, %r15
movq (%rbx), %rsi
subq %r12, %rsi
leaq 0x8(%rsp), %rdi
callq 0x132a0
leaq 0x8(%rsp), %rsi
movq %r15, %rdi
callq 0x21d0
leaq 0x30ec3(%rip), %rsi     # 0x6023d
movq %rax, %rdi
callq 0x21f0
movq %rax, %rbx
addq 0xc0(%rsp), %r14
leaq 0x28(%rsp), %rdi
movq %r14, %rsi
callq 0x132a0
leaq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x30d76(%rip), %rsi     # 0x60124
movq %rax, %rdi
callq 0x21f0
movq %rax, %rdi
callq 0x2100
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x8(%rsp), %rdi
callq 0x2270
callq 0x13280
leaq 0x30dff(%rip), %rsi     # 0x601dd
leaq 0x68(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x20c0
leaq 0x3277e(%rip), %rdx     # 0x61b72
leaq 0x88(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x5a5df
leaq 0x34398(%rip), %rdx     # 0x637a5
leaq 0x48(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x5a5df
leaq 0x30dfd(%rip), %rdx     # 0x60223
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x5a5df
leaq 0x30de9(%rip), %rdx     # 0x60225
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x5a5df
movq 0x73b86(%rip), %rdi     # 0xa2fd8
leaq 0x8(%rsp), %rsi
callq 0x21d0
leaq 0x8(%rsp), %rdi
callq 0x2270
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x48(%rsp), %rdi
callq 0x2270
leaq 0x88(%rsp), %rdi
callq 0x2270
leaq 0x68(%rsp), %rdi
callq 0x2270
movq 0x73b40(%rip), %rdi     # 0xa2fd8
leaq 0x59a6e(%rip), %rsi     # 0x88f0d
callq 0x21f0
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x5a86b
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x30d70(%rip), %rsi     # 0x6023d
movq %rax, %rdi
callq 0x21f0
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
leaq 0xac(%rsp), %rsi
callq 0x5a957
leaq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x30c26(%rip), %rsi     # 0x60124
movq %rax, %rdi
callq 0x21f0
movq %rax, %rdi
callq 0x2100
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fa62
leaq 0x30caf(%rip), %rsi     # 0x601dd
leaq 0x68(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x20c0
leaq 0x32633(%rip), %rdx     # 0x61b77
leaq 0x88(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x5a5df
leaq 0x34248(%rip), %rdx     # 0x637a5
leaq 0x48(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x5a5df
leaq 0x30cdd(%rip), %rdx     # 0x60253
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x5a5df
leaq 0x30c99(%rip), %rdx     # 0x60225
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x5a5df
movq 0x73a36(%rip), %rdi     # 0xa2fd8
leaq 0x8(%rsp), %rsi
callq 0x21d0
leaq 0x8(%rsp), %rdi
callq 0x2270
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x48(%rsp), %rdi
callq 0x2270
leaq 0x88(%rsp), %rdi
callq 0x2270
leaq 0x68(%rsp), %rdi
callq 0x2270
movq 0x739f0(%rip), %rdi     # 0xa2fd8
leaq 0x5991e(%rip), %rsi     # 0x88f0d
callq 0x21f0
movq %rax, %rbx
leaq 0x48(%rsp), %rsi
movl $0x1, (%rsi)
leaq 0x8(%rsp), %rdi
callq 0x5aaac
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x30c1d(%rip), %rsi     # 0x6023d
movq %rax, %rdi
callq 0x21f0
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x5a957
leaq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x30ad3(%rip), %rsi     # 0x60124
movq %rax, %rdi
callq 0x21f0
movq %rax, %rdi
callq 0x2100
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fa62
leaq 0x30b5c(%rip), %rsi     # 0x601dd
leaq 0x68(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x20c0
leaq 0x324e5(%rip), %rdx     # 0x61b7c
leaq 0x88(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x5a5df
leaq 0x340f5(%rip), %rdx     # 0x637a5
leaq 0x48(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x5a5df
leaq 0x31d37(%rip), %rdx     # 0x61400
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x5a5df
leaq 0x30b46(%rip), %rdx     # 0x60225
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x5a5df
movq 0x738e3(%rip), %rdi     # 0xa2fd8
leaq 0x8(%rsp), %rsi
callq 0x21d0
leaq 0x8(%rsp), %rdi
callq 0x2270
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x48(%rsp), %rdi
callq 0x2270
leaq 0x88(%rsp), %rdi
callq 0x2270
leaq 0x68(%rsp), %rdi
callq 0x2270
movq 0x7389d(%rip), %rdi     # 0xa2fd8
leaq 0x597cb(%rip), %rsi     # 0x88f0d
callq 0x21f0
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0xbc(%rsp), %rsi
callq 0x5aec4
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x30acd(%rip), %rsi     # 0x6023d
movq %rax, %rdi
callq 0x21f0
movq %rax, %rbx
leaq 0x1f8(%rsp), %rsi
leaq 0x28(%rsp), %rdi
callq 0x5aec4
leaq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x30983(%rip), %rsi     # 0x60124
movq %rax, %rdi
callq 0x21f0
movq %rax, %rdi
callq 0x2100
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fa62
leaq 0x30a0c(%rip), %rsi     # 0x601dd
leaq 0x68(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x20c0
leaq 0x3239a(%rip), %rdx     # 0x61b81
leaq 0x88(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x5a5df
leaq 0x33fa5(%rip), %rdx     # 0x637a5
leaq 0x48(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x5a5df
leaq 0x3236d(%rip), %rdx     # 0x61b86
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x5a5df
leaq 0x309f6(%rip), %rdx     # 0x60225
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x5a5df
movq 0x73793(%rip), %rdi     # 0xa2fd8
leaq 0x8(%rsp), %rsi
callq 0x21d0
leaq 0x8(%rsp), %rdi
callq 0x2270
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x48(%rsp), %rdi
callq 0x2270
leaq 0x88(%rsp), %rdi
callq 0x2270
leaq 0x68(%rsp), %rdi
callq 0x2270
movq 0x7374d(%rip), %rdi     # 0xa2fd8
leaq 0x5967b(%rip), %rsi     # 0x88f0d
callq 0x21f0
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0xb8(%rsp), %rsi
callq 0x5a957
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x3097d(%rip), %rsi     # 0x6023d
movq %rax, %rdi
callq 0x21f0
movq %rax, %rbx
leaq 0x1fc(%rsp), %rsi
leaq 0x28(%rsp), %rdi
callq 0x5a957
leaq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x30833(%rip), %rsi     # 0x60124
movq %rax, %rdi
callq 0x21f0
movq %rax, %rdi
callq 0x2100
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fa62
leaq 0x308bc(%rip), %rsi     # 0x601dd
leaq 0x68(%rsp), %rdi
leaq 0x6(%rsp), %rdx
callq 0x20c0
leaq 0x3226d(%rip), %rdx     # 0x61ba4
leaq 0x88(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x5a5df
leaq 0x33e55(%rip), %rdx     # 0x637a5
leaq 0x48(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x5a5df
leaq 0x31b17(%rip), %rdx     # 0x61480
leaq 0x28(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x5a5df
leaq 0x308a6(%rip), %rdx     # 0x60225
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x5a5df
movq 0x73643(%rip), %rdi     # 0xa2fd8
leaq 0x8(%rsp), %rsi
callq 0x21d0
leaq 0x8(%rsp), %rdi
callq 0x2270
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x48(%rsp), %rdi
callq 0x2270
leaq 0x88(%rsp), %rdi
callq 0x2270
leaq 0x68(%rsp), %rdi
callq 0x2270
movq 0x735fd(%rip), %rdi     # 0xa2fd8
leaq 0x5952b(%rip), %rsi     # 0x88f0d
callq 0x21f0
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0x7(%rsp), %rsi
callq 0x5ae55
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x30830(%rip), %rsi     # 0x6023d
movq %rax, %rdi
callq 0x21f0
movq %rax, %rbx
leaq 0x210(%rsp), %rsi
leaq 0x28(%rsp), %rdi
callq 0x5a957
leaq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0x21d0
leaq 0x306e6(%rip), %rsi     # 0x60124
movq %rax, %rdi
callq 0x21f0
movq %rax, %rdi
callq 0x2100
leaq 0x28(%rsp), %rdi
callq 0x2270
leaq 0x8(%rsp), %rdi
callq 0x2270
callq 0x13280
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fabf
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fad1
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fae3
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2faf5
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fb07
jmp 0x2fabc
jmp 0x2face
jmp 0x2fae0
jmp 0x2faf2
jmp 0x2fb04
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
jmp 0x2fdf1
jmp 0x2fdf1
jmp 0x2fdf1
jmp 0x2fdf1
jmp 0x2fdf1
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fb54
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fb66
jmp 0x2fb51
jmp 0x2fb63
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
jmp 0x2fdf1
jmp 0x2fdf1
jmp 0x2fdf1
jmp 0x2fdf1
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fbd7
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fbe6
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fbf5
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fc04
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fc13
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fc22
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fc31
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fc40
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fc4f
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fc5e
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x2270
jmp 0x2fc6d
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x2270
jmp 0x2fc7f
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x2270
jmp 0x2fc91
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x2270
jmp 0x2fca3
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x2270
jmp 0x2fcb5
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x2270
jmp 0x2fceb
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x2270
jmp 0x2fcfd
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x2270
jmp 0x2fd0f
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x2270
jmp 0x2fd21
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x2270
jmp 0x2fd33
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fd5e
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2270
jmp 0x2fd6d
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
jmp 0x2fdf1
jmp 0x2fdf1
jmp 0x2fdf1
jmp 0x2fdf1
jmp 0x2fdf1
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fd8d
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0x2270
jmp 0x2fd9c
movq %rax, %rbx
jmp 0x2fe1b
movq %rax, %rbx
jmp 0x2fe01
jmp 0x2fdcc
jmp 0x2fdf1
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x2270
jmp 0x2fdab
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x2270
jmp 0x2fdbd
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x2270
jmp 0x2fdd4
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x2270
jmp 0x2fde3
movq %rax, %rbx
jmp 0x2fe0e
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
callq 0x2270
jmp 0x2fdf4
jmp 0x2fdf1
movq %rax, %rbx
leaq 0xc0(%rsp), %rdi
callq 0xea7c
leaq 0x118(%rsp), %rdi
callq 0xb874
leaq 0x100(%rsp), %rdi
callq 0xea7c
leaq 0xe0(%rsp), %rdi
callq 0xea7c
movq %rbx, %rdi
callq 0x2380
movq %rax, %rdi
callq 0xe6cc