// File: lvandeve[P]lodepng/lodepng_unittest.cpp
// Function: testSbitChunk(unsigned int, unsigned int, unsigned int, unsigned int, std::vector<unsigned char, std::allocator<unsigned char>> const&, unsigned int, unsigned int, LodePNGColorMode const&, LodePNGColorMode const&, bool, bool)
void testSbitChunk(unsigned r, unsigned g, unsigned b, unsigned a,
                   const std::vector<unsigned char>& pixels,
                   unsigned w, unsigned h,
                   const LodePNGColorMode& mode_raw,
                   const LodePNGColorMode& mode_png,
                   bool auto_convert,
                   bool expect_encoder_error = false) {
  unsigned error;

  lodepng::State state;
  LodePNGInfo& info = state.info_png;
  lodepng_color_mode_copy(&info.color, &mode_png);
  lodepng_color_mode_copy(&state.info_raw, &mode_raw);
  state.encoder.auto_convert = auto_convert;
  if(mode_raw.colortype == LCT_PALETTE) {
    for(size_t i = 0; i < 256; i++) {
      // TODO: consider allowing to set only 1 of these palettes in lodepng in the case
      // where both info_raw and info_png have the palette color type
      lodepng_palette_add(&state.info_raw, i, i, i, 255);
      lodepng_palette_add(&info.color, i, i, i, 255);
    }
  }

  info.sbit_defined = 1;
  info.sbit_r = r;
  info.sbit_g = g;
  info.sbit_b = b;
  info.sbit_a = a;

  std::vector<unsigned char> png;
  error = lodepng::encode(png, pixels, w, h, state);
  if(expect_encoder_error) {
    ASSERT_NOT_EQUALS(0, error);
    return;
  }
  ASSERT_NO_PNG_ERROR(error);

  lodepng::State state2;
  LodePNGInfo& info2 = state2.info_png;
  unsigned w2, h2;
  std::vector<unsigned char> image2;
  error = lodepng::decode(image2, w2, h2, state2, &png[0], png.size());
  ASSERT_NO_PNG_ERROR(error);

  LodePNGColorType type = mode_png.colortype;

  ASSERT_EQUALS(w, w2);
  ASSERT_EQUALS(h, h2);
  ASSERT_EQUALS(1, info2.sbit_defined);
  ASSERT_EQUALS(r, info2.sbit_r);
  if(type == LCT_RGB || type == LCT_RGBA || type == LCT_PALETTE) {
    ASSERT_EQUALS(g, info2.sbit_g);
    ASSERT_EQUALS(b, info2.sbit_b);
  }
  if(type == LCT_GREY_ALPHA || type == LCT_RGBA) {
    ASSERT_EQUALS(a, info2.sbit_a);
  }

  // compare pixels in a 16-bit color model
  LodePNGColorMode mode_compare; lodepng_color_mode_init(&mode_compare); mode_compare.bitdepth = 16; mode_compare.colortype = LCT_RGBA;
  LodePNGColorMode mode_decoded; lodepng_color_mode_init(&mode_decoded); mode_decoded.bitdepth = 8; mode_decoded.colortype = LCT_RGBA;
  std::vector<unsigned char> image3(w * h * 8);
  error = lodepng_convert(image3.data(), image2.data(), &mode_compare, &mode_decoded, w, h);
  std::vector<unsigned char> image4(w * h * 8);
  error = lodepng_convert(image4.data(), pixels.data(), &mode_compare, &state.info_raw, w, h);
  ASSERT_NO_PNG_ERROR(error);
  ASSERT_EQUALS(image4.size(), image3.size());
  for(size_t i = 0; i < image3.size(); i++) {
    ASSERT_EQUALS((int)image4[i], (int)image3[i]);
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1530, %rsp           # imm = 0x1530
movl %ecx, -0x11f8(%rbp)
movl %edx, %eax
movl -0x11f8(%rbp), %edx
movl %eax, -0x11f4(%rbp)
movl %esi, %eax
movl -0x11f4(%rbp), %esi
movl %eax, -0x11f0(%rbp)
movl %edi, %r10d
movl -0x11f0(%rbp), %edi
movb 0x30(%rbp), %al
movb 0x28(%rbp), %cl
movq 0x20(%rbp), %r11
movq 0x18(%rbp), %r11
movl 0x10(%rbp), %r11d
movl %r10d, -0x4(%rbp)
movl %edi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl %edx, -0x10(%rbp)
movq %r8, -0x18(%rbp)
movl %r9d, -0x1c(%rbp)
andb $0x1, %cl
movb %cl, -0x1d(%rbp)
andb $0x1, %al
movb %al, -0x1e(%rbp)
leaq -0x2a8(%rbp), %rdi
callq 0x11ad0
leaq -0x1d8(%rbp), %rax
movq %rax, -0x2b0(%rbp)
movq -0x2b0(%rbp), %rdi
addq $0x10, %rdi
movq 0x20(%rbp), %rsi
callq 0x5780
jmp 0x7c9c8
leaq -0x200(%rbp), %rdi
movq 0x18(%rbp), %rsi
callq 0x5780
jmp 0x7c9da
movb -0x1d(%rbp), %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, -0x228(%rbp)
movq 0x18(%rbp), %rax
cmpl $0x3, (%rax)
jne 0x7ca7e
movq $0x0, -0x2c8(%rbp)
cmpq $0x100, -0x2c8(%rbp) # imm = 0x100
jae 0x7ca7c
leaq -0x200(%rbp), %rdi
movzbl -0x2c8(%rbp), %ecx
movl $0xff, %r8d
movl %ecx, %esi
movl %ecx, %edx
callq 0x58b0
jmp 0x7ca2c
movq -0x2b0(%rbp), %rdi
addq $0x10, %rdi
movzbl -0x2c8(%rbp), %ecx
movl $0xff, %r8d
movl %ecx, %esi
movl %ecx, %edx
callq 0x58b0
jmp 0x7ca4f
jmp 0x7ca51
movq -0x2c8(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x2c8(%rbp)
jmp 0x7ca00
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fb98
jmp 0x7ca7e
movq -0x2b0(%rbp), %rax
movl $0x1, 0x160(%rax)
movl -0x4(%rbp), %ecx
movq -0x2b0(%rbp), %rax
movl %ecx, 0x164(%rax)
movl -0x8(%rbp), %ecx
movq -0x2b0(%rbp), %rax
movl %ecx, 0x168(%rax)
movl -0xc(%rbp), %ecx
movq -0x2b0(%rbp), %rax
movl %ecx, 0x16c(%rax)
movl -0x10(%rbp), %ecx
movq -0x2b0(%rbp), %rax
movl %ecx, 0x170(%rax)
leaq -0x2e0(%rbp), %rdi
callq 0x1a4a0
jmp 0x7cadd
movq -0x18(%rbp), %rsi
movl -0x1c(%rbp), %edx
movl 0x10(%rbp), %ecx
leaq -0x2e0(%rbp), %rdi
leaq -0x2a8(%rbp), %r8
callq 0x12170
movl %eax, -0x11fc(%rbp)
jmp 0x7cb02
movl -0x11fc(%rbp), %eax
movl %eax, -0x24(%rbp)
testb $0x1, -0x1e(%rbp)
je 0x7ce6c
xorl %eax, %eax
cmpl -0x24(%rbp), %eax
jne 0x7ce5d
leaq -0x381(%rbp), %rdi
movq %rdi, -0x1208(%rbp)
callq 0x3440
movq -0x1208(%rbp), %rdx
leaq 0x365d4(%rip), %rsi     # 0xb3115
leaq -0x380(%rbp), %rdi
callq 0x3340
jmp 0x7cb4f
leaq 0x3983d(%rip), %rdx     # 0xb6393
leaq -0x360(%rbp), %rdi
leaq -0x380(%rbp), %rsi
callq 0xaa1b0
jmp 0x7cb6b
leaq 0x39b71(%rip), %rdx     # 0xb66e3
leaq -0x340(%rbp), %rdi
leaq -0x360(%rbp), %rsi
callq 0xaa1b0
jmp 0x7cb87
leaq 0x364e7(%rip), %rdx     # 0xb3075
leaq -0x320(%rbp), %rdi
leaq -0x340(%rbp), %rsi
callq 0xaa1b0
jmp 0x7cba3
leaq 0x37661(%rip), %rdx     # 0xb420b
leaq -0x300(%rbp), %rdi
leaq -0x320(%rbp), %rsi
callq 0xaa1b0
jmp 0x7cbbf
movq 0x7b412(%rip), %rdi     # 0xf7fd8
leaq -0x300(%rbp), %rsi
callq 0x3200
jmp 0x7cbd4
leaq -0x300(%rbp), %rdi
callq 0x34a8
jmp 0x7cbe2
leaq -0x320(%rbp), %rdi
callq 0x34a8
jmp 0x7cbf0
leaq -0x340(%rbp), %rdi
callq 0x34a8
jmp 0x7cbfe
leaq -0x360(%rbp), %rdi
callq 0x34a8
jmp 0x7cc0c
leaq -0x380(%rbp), %rdi
callq 0x34a8
jmp 0x7cc1a
leaq -0x381(%rbp), %rdi
callq 0x3290
movq 0x7b3ab(%rip), %rdi     # 0xf7fd8
leaq 0x375f3(%rip), %rsi     # 0xb4227
callq 0x3230
movq %rax, -0x1210(%rbp)
jmp 0x7cc42
movl $0x0, -0x3ac(%rbp)
leaq -0x3a8(%rbp), %rdi
leaq -0x3ac(%rbp), %rsi
callq 0xaaa20
jmp 0x7cc61
movq -0x1210(%rbp), %rdi
leaq -0x3a8(%rbp), %rsi
callq 0x3200
movq %rax, -0x1218(%rbp)
jmp 0x7cc7d
movq -0x1218(%rbp), %rdi
leaq 0x364ea(%rip), %rsi     # 0xb3175
callq 0x3230
movq %rax, -0x1220(%rbp)
jmp 0x7cc99
leaq -0x3d0(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0xaa7f0
jmp 0x7ccab
movq -0x1220(%rbp), %rdi
leaq -0x3d0(%rbp), %rsi
callq 0x3200
movq %rax, -0x1228(%rbp)
jmp 0x7ccc7
movq -0x1228(%rbp), %rdi
leaq 0x36387(%rip), %rsi     # 0xb305c
callq 0x3230
movq %rax, -0x1230(%rbp)
jmp 0x7cce3
movq -0x1230(%rbp), %rdi
movq 0x7b2cf(%rip), %rsi     # 0xf7fc0
callq 0x3280
jmp 0x7ccf8
leaq -0x3d0(%rbp), %rdi
callq 0x34a8
jmp 0x7cd06
leaq -0x3a8(%rbp), %rdi
callq 0x34a8
jmp 0x7cd14
callq 0x28bd0
jmp 0x7cd1b
jmp 0x7ce5d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fb88
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7ce03
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7cdf3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7cde3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7cdd3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7cdc3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x300(%rbp), %rdi
callq 0x34a8
jmp 0x7cdc1
jmp 0x7cdc3
leaq -0x320(%rbp), %rdi
callq 0x34a8
jmp 0x7cdd1
jmp 0x7cdd3
leaq -0x340(%rbp), %rdi
callq 0x34a8
jmp 0x7cde1
jmp 0x7cde3
leaq -0x360(%rbp), %rdi
callq 0x34a8
jmp 0x7cdf1
jmp 0x7cdf3
leaq -0x380(%rbp), %rdi
callq 0x34a8
jmp 0x7ce01
jmp 0x7ce03
leaq -0x381(%rbp), %rdi
callq 0x3290
jmp 0x7fb88
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7ce4a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x3d0(%rbp), %rdi
callq 0x34a8
jmp 0x7ce48
jmp 0x7ce4a
leaq -0x3a8(%rbp), %rdi
callq 0x34a8
jmp 0x7ce58
jmp 0x7fb88
movl $0x1, -0x3d4(%rbp)
jmp 0x7fb25
movl -0x24(%rbp), %eax
movl %eax, -0x123c(%rbp)
leaq -0x439(%rbp), %rdi
movq %rdi, -0x1238(%rbp)
callq 0x3440
movq -0x1238(%rbp), %rdx
leaq 0x3627f(%rip), %rsi     # 0xb3115
leaq -0x438(%rbp), %rdi
callq 0x3340
jmp 0x7cea4
leaq 0x394ed(%rip), %rdx     # 0xb6398
leaq -0x418(%rbp), %rdi
leaq -0x438(%rbp), %rsi
callq 0xaa1b0
jmp 0x7cec0
leaq -0x481(%rbp), %rdi
movq %rdi, -0x1248(%rbp)
callq 0x3440
movq -0x1248(%rbp), %rdx
movb $0x0, -0x483(%rbp)
movb $0x0, -0x4aa(%rbp)
movb $0x0, -0x4ab(%rbp)
leaq 0x3760e(%rip), %rsi     # 0xb4504
leaq -0x480(%rbp), %rdi
callq 0x3340
jmp 0x7cf04
leaq -0x480(%rbp), %rdi
callq 0x33f0
movb %al, -0x1249(%rbp)
jmp 0x7cf18
movb -0x1249(%rbp), %al
testb $0x1, %al
jne 0x7cf24
jmp 0x7cf5c
leaq -0x482(%rbp), %rdi
movq %rdi, -0x1258(%rbp)
callq 0x3440
movq -0x1258(%rbp), %rdx
movb $0x1, -0x483(%rbp)
leaq 0x375b8(%rip), %rsi     # 0xb4504
leaq -0x460(%rbp), %rdi
callq 0x3340
jmp 0x7cf5a
jmp 0x7cfb7
leaq -0x4a9(%rbp), %rdi
movq %rdi, -0x1260(%rbp)
callq 0x3440
movq -0x1260(%rbp), %rdx
movb $0x1, -0x4aa(%rbp)
leaq 0x37580(%rip), %rsi     # 0xb4504
leaq -0x4a8(%rbp), %rdi
callq 0x3340
jmp 0x7cf92
movb $0x1, -0x4ab(%rbp)
leaq 0x39743(%rip), %rsi     # 0xb66e3
leaq -0x460(%rbp), %rdi
leaq -0x4a8(%rbp), %rdx
callq 0xaa6d0
jmp 0x7cfb5
jmp 0x7cfb7
leaq -0x3f8(%rbp), %rdi
leaq -0x418(%rbp), %rsi
leaq -0x460(%rbp), %rdx
callq 0xaa240
jmp 0x7cfd3
movl -0x123c(%rbp), %edi
leaq -0x3f8(%rbp), %rsi
callq 0x28d30
jmp 0x7cfe7
leaq -0x3f8(%rbp), %rdi
callq 0x34a8
jmp 0x7cff5
leaq -0x460(%rbp), %rdi
callq 0x34a8
jmp 0x7d003
testb $0x1, -0x4ab(%rbp)
jne 0x7d00e
jmp 0x7d01e
leaq -0x4a8(%rbp), %rdi
callq 0x34a8
jmp 0x7d01c
jmp 0x7d01e
testb $0x1, -0x4aa(%rbp)
jne 0x7d029
jmp 0x7d035
leaq -0x4a9(%rbp), %rdi
callq 0x3290
testb $0x1, -0x483(%rbp)
jne 0x7d040
jmp 0x7d04c
leaq -0x482(%rbp), %rdi
callq 0x3290
leaq -0x480(%rbp), %rdi
callq 0x34a8
jmp 0x7d05a
leaq -0x481(%rbp), %rdi
callq 0x3290
leaq -0x418(%rbp), %rdi
callq 0x34a8
jmp 0x7d074
leaq -0x438(%rbp), %rdi
callq 0x34a8
jmp 0x7d082
leaq -0x439(%rbp), %rdi
callq 0x3290
leaq -0x730(%rbp), %rdi
callq 0x11ad0
jmp 0x7d09c
leaq -0x660(%rbp), %rax
movq %rax, -0x738(%rbp)
leaq -0x758(%rbp), %rdi
callq 0x1a4a0
jmp 0x7d0b8
xorl %eax, %eax
movl %eax, %esi
leaq -0x2e0(%rbp), %rdi
callq 0x1a5f0
movq %rax, -0x1268(%rbp)
jmp 0x7d0d1
leaq -0x2e0(%rbp), %rdi
callq 0x1a400
movq %rax, -0x1270(%rbp)
jmp 0x7d0e6
movq -0x1270(%rbp), %r9
movq -0x1268(%rbp), %r8
leaq -0x758(%rbp), %rdi
leaq -0x73c(%rbp), %rsi
leaq -0x740(%rbp), %rdx
leaq -0x730(%rbp), %rcx
callq 0x11d70
movl %eax, -0x1274(%rbp)
jmp 0x7d11d
movl -0x1274(%rbp), %eax
movl %eax, -0x24(%rbp)
movl -0x24(%rbp), %eax
movl %eax, -0x1284(%rbp)
leaq -0x7b9(%rbp), %rdi
movq %rdi, -0x1280(%rbp)
callq 0x3440
movq -0x1280(%rbp), %rdx
leaq 0x35fc5(%rip), %rsi     # 0xb3115
leaq -0x7b8(%rbp), %rdi
callq 0x3340
jmp 0x7d15e
leaq 0x39238(%rip), %rdx     # 0xb639d
leaq -0x798(%rbp), %rdi
leaq -0x7b8(%rbp), %rsi
callq 0xaa1b0
jmp 0x7d17a
leaq -0x801(%rbp), %rdi
movq %rdi, -0x1290(%rbp)
callq 0x3440
movq -0x1290(%rbp), %rdx
movb $0x0, -0x803(%rbp)
movb $0x0, -0x82a(%rbp)
movb $0x0, -0x82b(%rbp)
leaq 0x37354(%rip), %rsi     # 0xb4504
leaq -0x800(%rbp), %rdi
callq 0x3340
jmp 0x7d1be
leaq -0x800(%rbp), %rdi
callq 0x33f0
movb %al, -0x1291(%rbp)
jmp 0x7d1d2
movb -0x1291(%rbp), %al
testb $0x1, %al
jne 0x7d1de
jmp 0x7d216
leaq -0x802(%rbp), %rdi
movq %rdi, -0x12a0(%rbp)
callq 0x3440
movq -0x12a0(%rbp), %rdx
movb $0x1, -0x803(%rbp)
leaq 0x372fe(%rip), %rsi     # 0xb4504
leaq -0x7e0(%rbp), %rdi
callq 0x3340
jmp 0x7d214
jmp 0x7d271
leaq -0x829(%rbp), %rdi
movq %rdi, -0x12a8(%rbp)
callq 0x3440
movq -0x12a8(%rbp), %rdx
movb $0x1, -0x82a(%rbp)
leaq 0x372c6(%rip), %rsi     # 0xb4504
leaq -0x828(%rbp), %rdi
callq 0x3340
jmp 0x7d24c
movb $0x1, -0x82b(%rbp)
leaq 0x39489(%rip), %rsi     # 0xb66e3
leaq -0x7e0(%rbp), %rdi
leaq -0x828(%rbp), %rdx
callq 0xaa6d0
jmp 0x7d26f
jmp 0x7d271
leaq -0x778(%rbp), %rdi
leaq -0x798(%rbp), %rsi
leaq -0x7e0(%rbp), %rdx
callq 0xaa240
jmp 0x7d28d
movl -0x1284(%rbp), %edi
leaq -0x778(%rbp), %rsi
callq 0x28d30
jmp 0x7d2a1
leaq -0x778(%rbp), %rdi
callq 0x34a8
jmp 0x7d2af
leaq -0x7e0(%rbp), %rdi
callq 0x34a8
jmp 0x7d2bd
testb $0x1, -0x82b(%rbp)
jne 0x7d2c8
jmp 0x7d2d8
leaq -0x828(%rbp), %rdi
callq 0x34a8
jmp 0x7d2d6
jmp 0x7d2d8
testb $0x1, -0x82a(%rbp)
jne 0x7d2e3
jmp 0x7d2ef
leaq -0x829(%rbp), %rdi
callq 0x3290
testb $0x1, -0x803(%rbp)
jne 0x7d2fa
jmp 0x7d306
leaq -0x802(%rbp), %rdi
callq 0x3290
leaq -0x800(%rbp), %rdi
callq 0x34a8
jmp 0x7d314
leaq -0x801(%rbp), %rdi
callq 0x3290
leaq -0x798(%rbp), %rdi
callq 0x34a8
jmp 0x7d32e
leaq -0x7b8(%rbp), %rdi
callq 0x34a8
jmp 0x7d33c
leaq -0x7b9(%rbp), %rdi
callq 0x3290
movq 0x20(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x830(%rbp)
movl -0x1c(%rbp), %eax
cmpl -0x73c(%rbp), %eax
je 0x7d9a7
leaq -0x8d1(%rbp), %rdi
movq %rdi, -0x12b0(%rbp)
callq 0x3440
movq -0x12b0(%rbp), %rdx
leaq 0x35d91(%rip), %rsi     # 0xb3115
leaq -0x8d0(%rbp), %rdi
callq 0x3340
jmp 0x7d392
leaq 0x39009(%rip), %rdx     # 0xb63a2
leaq -0x8b0(%rbp), %rdi
leaq -0x8d0(%rbp), %rsi
callq 0xaa1b0
jmp 0x7d3ae
leaq 0x3932e(%rip), %rdx     # 0xb66e3
leaq -0x890(%rbp), %rdi
leaq -0x8b0(%rbp), %rsi
callq 0xaa1b0
jmp 0x7d3ca
leaq 0x38e58(%rip), %rdx     # 0xb6229
leaq -0x870(%rbp), %rdi
leaq -0x890(%rbp), %rsi
callq 0xaa1b0
jmp 0x7d3e6
leaq 0x35d70(%rip), %rdx     # 0xb315d
leaq -0x850(%rbp), %rdi
leaq -0x870(%rbp), %rsi
callq 0xaa1b0
jmp 0x7d402
movq 0x7abcf(%rip), %rdi     # 0xf7fd8
leaq -0x850(%rbp), %rsi
callq 0x3200
jmp 0x7d417
leaq -0x850(%rbp), %rdi
callq 0x34a8
jmp 0x7d425
leaq -0x870(%rbp), %rdi
callq 0x34a8
jmp 0x7d433
leaq -0x890(%rbp), %rdi
callq 0x34a8
jmp 0x7d441
leaq -0x8b0(%rbp), %rdi
callq 0x34a8
jmp 0x7d44f
leaq -0x8d0(%rbp), %rdi
callq 0x34a8
jmp 0x7d45d
leaq -0x8d1(%rbp), %rdi
callq 0x3290
movq 0x7ab68(%rip), %rdi     # 0xf7fd8
leaq 0x5e9d4(%rip), %rsi     # 0xdbe4b
callq 0x3230
movq %rax, -0x12b8(%rbp)
jmp 0x7d485
leaq -0x8f8(%rbp), %rdi
leaq -0x1c(%rbp), %rsi
callq 0xaa7f0
jmp 0x7d497
movq -0x12b8(%rbp), %rdi
leaq -0x8f8(%rbp), %rsi
callq 0x3200
movq %rax, -0x12c0(%rbp)
jmp 0x7d4b3
movq -0x12c0(%rbp), %rdi
leaq 0x35cb4(%rip), %rsi     # 0xb3175
callq 0x3230
movq %rax, -0x12c8(%rbp)
jmp 0x7d4cf
leaq -0x918(%rbp), %rdi
leaq -0x73c(%rbp), %rsi
callq 0xaa7f0
jmp 0x7d4e4
movq -0x12c8(%rbp), %rdi
leaq -0x918(%rbp), %rsi
callq 0x3200
movq %rax, -0x12d0(%rbp)
jmp 0x7d500
movq -0x12d0(%rbp), %rdi
leaq 0x35b4e(%rip), %rsi     # 0xb305c
callq 0x3230
movq %rax, -0x12d8(%rbp)
jmp 0x7d51c
movq -0x12d8(%rbp), %rdi
movq 0x7aa96(%rip), %rsi     # 0xf7fc0
callq 0x3280
jmp 0x7d531
leaq -0x918(%rbp), %rdi
callq 0x34a8
jmp 0x7d53f
leaq -0x8f8(%rbp), %rdi
callq 0x34a8
jmp 0x7d54d
callq 0x28bd0
jmp 0x7d554
jmp 0x7d9a7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d6c5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d6b5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d699
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d689
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d670
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d657
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d63a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d62a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x3f8(%rbp), %rdi
callq 0x34a8
jmp 0x7d628
jmp 0x7d62a
leaq -0x460(%rbp), %rdi
callq 0x34a8
jmp 0x7d638
jmp 0x7d63a
testb $0x1, -0x4ab(%rbp)
jne 0x7d645
jmp 0x7d655
leaq -0x4a8(%rbp), %rdi
callq 0x34a8
jmp 0x7d653
jmp 0x7d655
jmp 0x7d657
testb $0x1, -0x4aa(%rbp)
jne 0x7d662
jmp 0x7d66e
leaq -0x4a9(%rbp), %rdi
callq 0x3290
jmp 0x7d670
testb $0x1, -0x483(%rbp)
jne 0x7d67b
jmp 0x7d687
leaq -0x482(%rbp), %rdi
callq 0x3290
jmp 0x7d689
leaq -0x480(%rbp), %rdi
callq 0x34a8
jmp 0x7d697
jmp 0x7d699
leaq -0x481(%rbp), %rdi
callq 0x3290
leaq -0x418(%rbp), %rdi
callq 0x34a8
jmp 0x7d6b3
jmp 0x7d6b5
leaq -0x438(%rbp), %rdi
callq 0x34a8
jmp 0x7d6c3
jmp 0x7d6c5
leaq -0x439(%rbp), %rdi
callq 0x3290
jmp 0x7fb88
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fb78
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fb68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d870
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d860
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d844
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d834
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d81b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d802
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d7e5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d7d5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x778(%rbp), %rdi
callq 0x34a8
jmp 0x7d7d3
jmp 0x7d7d5
leaq -0x7e0(%rbp), %rdi
callq 0x34a8
jmp 0x7d7e3
jmp 0x7d7e5
testb $0x1, -0x82b(%rbp)
jne 0x7d7f0
jmp 0x7d800
leaq -0x828(%rbp), %rdi
callq 0x34a8
jmp 0x7d7fe
jmp 0x7d800
jmp 0x7d802
testb $0x1, -0x82a(%rbp)
jne 0x7d80d
jmp 0x7d819
leaq -0x829(%rbp), %rdi
callq 0x3290
jmp 0x7d81b
testb $0x1, -0x803(%rbp)
jne 0x7d826
jmp 0x7d832
leaq -0x802(%rbp), %rdi
callq 0x3290
jmp 0x7d834
leaq -0x800(%rbp), %rdi
callq 0x34a8
jmp 0x7d842
jmp 0x7d844
leaq -0x801(%rbp), %rdi
callq 0x3290
leaq -0x798(%rbp), %rdi
callq 0x34a8
jmp 0x7d85e
jmp 0x7d860
leaq -0x7b8(%rbp), %rdi
callq 0x34a8
jmp 0x7d86e
jmp 0x7d870
leaq -0x7b9(%rbp), %rdi
callq 0x3290
jmp 0x7fb68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d94d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d93d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d92d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d91d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d90d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x850(%rbp), %rdi
callq 0x34a8
jmp 0x7d90b
jmp 0x7d90d
leaq -0x870(%rbp), %rdi
callq 0x34a8
jmp 0x7d91b
jmp 0x7d91d
leaq -0x890(%rbp), %rdi
callq 0x34a8
jmp 0x7d92b
jmp 0x7d92d
leaq -0x8b0(%rbp), %rdi
callq 0x34a8
jmp 0x7d93b
jmp 0x7d93d
leaq -0x8d0(%rbp), %rdi
callq 0x34a8
jmp 0x7d94b
jmp 0x7d94d
leaq -0x8d1(%rbp), %rdi
callq 0x3290
jmp 0x7fb68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7d994
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x918(%rbp), %rdi
callq 0x34a8
jmp 0x7d992
jmp 0x7d994
leaq -0x8f8(%rbp), %rdi
callq 0x34a8
jmp 0x7d9a2
jmp 0x7fb68
movl 0x10(%rbp), %eax
cmpl -0x740(%rbp), %eax
je 0x7dcd2
leaq -0x9b9(%rbp), %rdi
movq %rdi, -0x12e0(%rbp)
callq 0x3440
movq -0x12e0(%rbp), %rdx
leaq 0x3573e(%rip), %rsi     # 0xb3115
leaq -0x9b8(%rbp), %rdi
callq 0x3340
jmp 0x7d9e5
leaq 0x389bb(%rip), %rdx     # 0xb63a7
leaq -0x998(%rbp), %rdi
leaq -0x9b8(%rbp), %rsi
callq 0xaa1b0
jmp 0x7da01
leaq 0x38cdb(%rip), %rdx     # 0xb66e3
leaq -0x978(%rbp), %rdi
leaq -0x998(%rbp), %rsi
callq 0xaa1b0
jmp 0x7da1d
leaq 0x3880d(%rip), %rdx     # 0xb6231
leaq -0x958(%rbp), %rdi
leaq -0x978(%rbp), %rsi
callq 0xaa1b0
jmp 0x7da39
leaq 0x3571d(%rip), %rdx     # 0xb315d
leaq -0x938(%rbp), %rdi
leaq -0x958(%rbp), %rsi
callq 0xaa1b0
jmp 0x7da55
movq 0x7a57c(%rip), %rdi     # 0xf7fd8
leaq -0x938(%rbp), %rsi
callq 0x3200
jmp 0x7da6a
leaq -0x938(%rbp), %rdi
callq 0x34a8
jmp 0x7da78
leaq -0x958(%rbp), %rdi
callq 0x34a8
jmp 0x7da86
leaq -0x978(%rbp), %rdi
callq 0x34a8
jmp 0x7da94
leaq -0x998(%rbp), %rdi
callq 0x34a8
jmp 0x7daa2
leaq -0x9b8(%rbp), %rdi
callq 0x34a8
jmp 0x7dab0
leaq -0x9b9(%rbp), %rdi
callq 0x3290
movq 0x7a515(%rip), %rdi     # 0xf7fd8
leaq 0x5e381(%rip), %rsi     # 0xdbe4b
callq 0x3230
movq %rax, -0x12e8(%rbp)
jmp 0x7dad8
leaq -0x9e0(%rbp), %rdi
leaq 0x10(%rbp), %rsi
callq 0xaa7f0
jmp 0x7daea
movq -0x12e8(%rbp), %rdi
leaq -0x9e0(%rbp), %rsi
callq 0x3200
movq %rax, -0x12f0(%rbp)
jmp 0x7db06
movq -0x12f0(%rbp), %rdi
leaq 0x35661(%rip), %rsi     # 0xb3175
callq 0x3230
movq %rax, -0x12f8(%rbp)
jmp 0x7db22
leaq -0xa00(%rbp), %rdi
leaq -0x740(%rbp), %rsi
callq 0xaa7f0
jmp 0x7db37
movq -0x12f8(%rbp), %rdi
leaq -0xa00(%rbp), %rsi
callq 0x3200
movq %rax, -0x1300(%rbp)
jmp 0x7db53
movq -0x1300(%rbp), %rdi
leaq 0x354fb(%rip), %rsi     # 0xb305c
callq 0x3230
movq %rax, -0x1308(%rbp)
jmp 0x7db6f
movq -0x1308(%rbp), %rdi
movq 0x7a443(%rip), %rsi     # 0xf7fc0
callq 0x3280
jmp 0x7db84
leaq -0xa00(%rbp), %rdi
callq 0x34a8
jmp 0x7db92
leaq -0x9e0(%rbp), %rdi
callq 0x34a8
jmp 0x7dba0
callq 0x28bd0
jmp 0x7dba7
jmp 0x7dcd2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7dc78
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7dc68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7dc58
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7dc48
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7dc38
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x938(%rbp), %rdi
callq 0x34a8
jmp 0x7dc36
jmp 0x7dc38
leaq -0x958(%rbp), %rdi
callq 0x34a8
jmp 0x7dc46
jmp 0x7dc48
leaq -0x978(%rbp), %rdi
callq 0x34a8
jmp 0x7dc56
jmp 0x7dc58
leaq -0x998(%rbp), %rdi
callq 0x34a8
jmp 0x7dc66
jmp 0x7dc68
leaq -0x9b8(%rbp), %rdi
callq 0x34a8
jmp 0x7dc76
jmp 0x7dc78
leaq -0x9b9(%rbp), %rdi
callq 0x3290
jmp 0x7fb68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7dcbf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xa00(%rbp), %rdi
callq 0x34a8
jmp 0x7dcbd
jmp 0x7dcbf
leaq -0x9e0(%rbp), %rdi
callq 0x34a8
jmp 0x7dccd
jmp 0x7fb68
movq -0x738(%rbp), %rcx
movl $0x1, %eax
cmpl 0x160(%rcx), %eax
je 0x7e01a
leaq -0xaa1(%rbp), %rdi
movq %rdi, -0x1310(%rbp)
callq 0x3440
movq -0x1310(%rbp), %rdx
leaq 0x3540a(%rip), %rsi     # 0xb3115
leaq -0xaa0(%rbp), %rdi
callq 0x3340
jmp 0x7dd19
leaq 0x3868c(%rip), %rdx     # 0xb63ac
leaq -0xa80(%rbp), %rdi
leaq -0xaa0(%rbp), %rsi
callq 0xaa1b0
jmp 0x7dd35
leaq 0x389a7(%rip), %rdx     # 0xb66e3
leaq -0xa60(%rbp), %rdi
leaq -0xa80(%rbp), %rsi
callq 0xaa1b0
jmp 0x7dd51
leaq 0x38659(%rip), %rdx     # 0xb63b1
leaq -0xa40(%rbp), %rdi
leaq -0xa60(%rbp), %rsi
callq 0xaa1b0
jmp 0x7dd6d
leaq 0x353e9(%rip), %rdx     # 0xb315d
leaq -0xa20(%rbp), %rdi
leaq -0xa40(%rbp), %rsi
callq 0xaa1b0
jmp 0x7dd89
movq 0x7a248(%rip), %rdi     # 0xf7fd8
leaq -0xa20(%rbp), %rsi
callq 0x3200
jmp 0x7dd9e
leaq -0xa20(%rbp), %rdi
callq 0x34a8
jmp 0x7ddac
leaq -0xa40(%rbp), %rdi
callq 0x34a8
jmp 0x7ddba
leaq -0xa60(%rbp), %rdi
callq 0x34a8
jmp 0x7ddc8
leaq -0xa80(%rbp), %rdi
callq 0x34a8
jmp 0x7ddd6
leaq -0xaa0(%rbp), %rdi
callq 0x34a8
jmp 0x7dde4
leaq -0xaa1(%rbp), %rdi
callq 0x3290
movq 0x7a1e1(%rip), %rdi     # 0xf7fd8
leaq 0x5e04d(%rip), %rsi     # 0xdbe4b
callq 0x3230
movq %rax, -0x1318(%rbp)
jmp 0x7de0c
movl $0x1, -0xacc(%rbp)
leaq -0xac8(%rbp), %rdi
leaq -0xacc(%rbp), %rsi
callq 0xaaa20
jmp 0x7de2b
movq -0x1318(%rbp), %rdi
leaq -0xac8(%rbp), %rsi
callq 0x3200
movq %rax, -0x1320(%rbp)
jmp 0x7de47
movq -0x1320(%rbp), %rdi
leaq 0x35320(%rip), %rsi     # 0xb3175
callq 0x3230
movq %rax, -0x1328(%rbp)
jmp 0x7de63
movq -0x738(%rbp), %rsi
addq $0x160, %rsi            # imm = 0x160
leaq -0xaf0(%rbp), %rdi
callq 0xaa7f0
jmp 0x7de7f
movq -0x1328(%rbp), %rdi
leaq -0xaf0(%rbp), %rsi
callq 0x3200
movq %rax, -0x1330(%rbp)
jmp 0x7de9b
movq -0x1330(%rbp), %rdi
leaq 0x351b3(%rip), %rsi     # 0xb305c
callq 0x3230
movq %rax, -0x1338(%rbp)
jmp 0x7deb7
movq -0x1338(%rbp), %rdi
movq 0x7a0fb(%rip), %rsi     # 0xf7fc0
callq 0x3280
jmp 0x7decc
leaq -0xaf0(%rbp), %rdi
callq 0x34a8
jmp 0x7deda
leaq -0xac8(%rbp), %rdi
callq 0x34a8
jmp 0x7dee8
callq 0x28bd0
jmp 0x7deef
jmp 0x7e01a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7dfc0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7dfb0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7dfa0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7df90
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7df80
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xa20(%rbp), %rdi
callq 0x34a8
jmp 0x7df7e
jmp 0x7df80
leaq -0xa40(%rbp), %rdi
callq 0x34a8
jmp 0x7df8e
jmp 0x7df90
leaq -0xa60(%rbp), %rdi
callq 0x34a8
jmp 0x7df9e
jmp 0x7dfa0
leaq -0xa80(%rbp), %rdi
callq 0x34a8
jmp 0x7dfae
jmp 0x7dfb0
leaq -0xaa0(%rbp), %rdi
callq 0x34a8
jmp 0x7dfbe
jmp 0x7dfc0
leaq -0xaa1(%rbp), %rdi
callq 0x3290
jmp 0x7fb68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e007
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xaf0(%rbp), %rdi
callq 0x34a8
jmp 0x7e005
jmp 0x7e007
leaq -0xac8(%rbp), %rdi
callq 0x34a8
jmp 0x7e015
jmp 0x7fb68
movl -0x4(%rbp), %eax
movq -0x738(%rbp), %rcx
cmpl 0x164(%rcx), %eax
je 0x7e353
leaq -0xb91(%rbp), %rdi
movq %rdi, -0x1340(%rbp)
callq 0x3440
movq -0x1340(%rbp), %rdx
leaq 0x350c4(%rip), %rsi     # 0xb3115
leaq -0xb90(%rbp), %rdi
callq 0x3340
jmp 0x7e05f
leaq 0x3835e(%rip), %rdx     # 0xb63c4
leaq -0xb70(%rbp), %rdi
leaq -0xb90(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e07b
leaq 0x38661(%rip), %rdx     # 0xb66e3
leaq -0xb50(%rbp), %rdi
leaq -0xb70(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e097
leaq 0x3832b(%rip), %rdx     # 0xb63c9
leaq -0xb30(%rbp), %rdi
leaq -0xb50(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e0b3
leaq 0x350a3(%rip), %rdx     # 0xb315d
leaq -0xb10(%rbp), %rdi
leaq -0xb30(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e0cf
movq 0x79f02(%rip), %rdi     # 0xf7fd8
leaq -0xb10(%rbp), %rsi
callq 0x3200
jmp 0x7e0e4
leaq -0xb10(%rbp), %rdi
callq 0x34a8
jmp 0x7e0f2
leaq -0xb30(%rbp), %rdi
callq 0x34a8
jmp 0x7e100
leaq -0xb50(%rbp), %rdi
callq 0x34a8
jmp 0x7e10e
leaq -0xb70(%rbp), %rdi
callq 0x34a8
jmp 0x7e11c
leaq -0xb90(%rbp), %rdi
callq 0x34a8
jmp 0x7e12a
leaq -0xb91(%rbp), %rdi
callq 0x3290
movq 0x79e9b(%rip), %rdi     # 0xf7fd8
leaq 0x5dd07(%rip), %rsi     # 0xdbe4b
callq 0x3230
movq %rax, -0x1348(%rbp)
jmp 0x7e152
leaq -0xbb8(%rbp), %rdi
leaq -0x4(%rbp), %rsi
callq 0xaa7f0
jmp 0x7e164
movq -0x1348(%rbp), %rdi
leaq -0xbb8(%rbp), %rsi
callq 0x3200
movq %rax, -0x1350(%rbp)
jmp 0x7e180
movq -0x1350(%rbp), %rdi
leaq 0x34fe7(%rip), %rsi     # 0xb3175
callq 0x3230
movq %rax, -0x1358(%rbp)
jmp 0x7e19c
movq -0x738(%rbp), %rsi
addq $0x164, %rsi            # imm = 0x164
leaq -0xbd8(%rbp), %rdi
callq 0xaa7f0
jmp 0x7e1b8
movq -0x1358(%rbp), %rdi
leaq -0xbd8(%rbp), %rsi
callq 0x3200
movq %rax, -0x1360(%rbp)
jmp 0x7e1d4
movq -0x1360(%rbp), %rdi
leaq 0x34e7a(%rip), %rsi     # 0xb305c
callq 0x3230
movq %rax, -0x1368(%rbp)
jmp 0x7e1f0
movq -0x1368(%rbp), %rdi
movq 0x79dc2(%rip), %rsi     # 0xf7fc0
callq 0x3280
jmp 0x7e205
leaq -0xbd8(%rbp), %rdi
callq 0x34a8
jmp 0x7e213
leaq -0xbb8(%rbp), %rdi
callq 0x34a8
jmp 0x7e221
callq 0x28bd0
jmp 0x7e228
jmp 0x7e353
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e2f9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e2e9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e2d9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e2c9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e2b9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xb10(%rbp), %rdi
callq 0x34a8
jmp 0x7e2b7
jmp 0x7e2b9
leaq -0xb30(%rbp), %rdi
callq 0x34a8
jmp 0x7e2c7
jmp 0x7e2c9
leaq -0xb50(%rbp), %rdi
callq 0x34a8
jmp 0x7e2d7
jmp 0x7e2d9
leaq -0xb70(%rbp), %rdi
callq 0x34a8
jmp 0x7e2e7
jmp 0x7e2e9
leaq -0xb90(%rbp), %rdi
callq 0x34a8
jmp 0x7e2f7
jmp 0x7e2f9
leaq -0xb91(%rbp), %rdi
callq 0x3290
jmp 0x7fb68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e340
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xbd8(%rbp), %rdi
callq 0x34a8
jmp 0x7e33e
jmp 0x7e340
leaq -0xbb8(%rbp), %rdi
callq 0x34a8
jmp 0x7e34e
jmp 0x7fb68
cmpl $0x2, -0x830(%rbp)
je 0x7e372
cmpl $0x6, -0x830(%rbp)
je 0x7e372
cmpl $0x3, -0x830(%rbp)
jne 0x7e9e6
movl -0x8(%rbp), %eax
movq -0x738(%rbp), %rcx
cmpl 0x168(%rcx), %eax
je 0x7e6ab
leaq -0xc79(%rbp), %rdi
movq %rdi, -0x1370(%rbp)
callq 0x3440
movq -0x1370(%rbp), %rdx
leaq 0x34d6c(%rip), %rsi     # 0xb3115
leaq -0xc78(%rbp), %rdi
callq 0x3340
jmp 0x7e3b7
leaq 0x38018(%rip), %rdx     # 0xb63d6
leaq -0xc58(%rbp), %rdi
leaq -0xc78(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e3d3
leaq 0x38309(%rip), %rdx     # 0xb66e3
leaq -0xc38(%rbp), %rdi
leaq -0xc58(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e3ef
leaq 0x37fe5(%rip), %rdx     # 0xb63db
leaq -0xc18(%rbp), %rdi
leaq -0xc38(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e40b
leaq 0x34d4b(%rip), %rdx     # 0xb315d
leaq -0xbf8(%rbp), %rdi
leaq -0xc18(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e427
movq 0x79baa(%rip), %rdi     # 0xf7fd8
leaq -0xbf8(%rbp), %rsi
callq 0x3200
jmp 0x7e43c
leaq -0xbf8(%rbp), %rdi
callq 0x34a8
jmp 0x7e44a
leaq -0xc18(%rbp), %rdi
callq 0x34a8
jmp 0x7e458
leaq -0xc38(%rbp), %rdi
callq 0x34a8
jmp 0x7e466
leaq -0xc58(%rbp), %rdi
callq 0x34a8
jmp 0x7e474
leaq -0xc78(%rbp), %rdi
callq 0x34a8
jmp 0x7e482
leaq -0xc79(%rbp), %rdi
callq 0x3290
movq 0x79b43(%rip), %rdi     # 0xf7fd8
leaq 0x5d9af(%rip), %rsi     # 0xdbe4b
callq 0x3230
movq %rax, -0x1378(%rbp)
jmp 0x7e4aa
leaq -0xca0(%rbp), %rdi
leaq -0x8(%rbp), %rsi
callq 0xaa7f0
jmp 0x7e4bc
movq -0x1378(%rbp), %rdi
leaq -0xca0(%rbp), %rsi
callq 0x3200
movq %rax, -0x1380(%rbp)
jmp 0x7e4d8
movq -0x1380(%rbp), %rdi
leaq 0x34c8f(%rip), %rsi     # 0xb3175
callq 0x3230
movq %rax, -0x1388(%rbp)
jmp 0x7e4f4
movq -0x738(%rbp), %rsi
addq $0x168, %rsi            # imm = 0x168
leaq -0xcc0(%rbp), %rdi
callq 0xaa7f0
jmp 0x7e510
movq -0x1388(%rbp), %rdi
leaq -0xcc0(%rbp), %rsi
callq 0x3200
movq %rax, -0x1390(%rbp)
jmp 0x7e52c
movq -0x1390(%rbp), %rdi
leaq 0x34b22(%rip), %rsi     # 0xb305c
callq 0x3230
movq %rax, -0x1398(%rbp)
jmp 0x7e548
movq -0x1398(%rbp), %rdi
movq 0x79a6a(%rip), %rsi     # 0xf7fc0
callq 0x3280
jmp 0x7e55d
leaq -0xcc0(%rbp), %rdi
callq 0x34a8
jmp 0x7e56b
leaq -0xca0(%rbp), %rdi
callq 0x34a8
jmp 0x7e579
callq 0x28bd0
jmp 0x7e580
jmp 0x7e6ab
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e651
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e641
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e631
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e621
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e611
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xbf8(%rbp), %rdi
callq 0x34a8
jmp 0x7e60f
jmp 0x7e611
leaq -0xc18(%rbp), %rdi
callq 0x34a8
jmp 0x7e61f
jmp 0x7e621
leaq -0xc38(%rbp), %rdi
callq 0x34a8
jmp 0x7e62f
jmp 0x7e631
leaq -0xc58(%rbp), %rdi
callq 0x34a8
jmp 0x7e63f
jmp 0x7e641
leaq -0xc78(%rbp), %rdi
callq 0x34a8
jmp 0x7e64f
jmp 0x7e651
leaq -0xc79(%rbp), %rdi
callq 0x3290
jmp 0x7fb68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e698
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xcc0(%rbp), %rdi
callq 0x34a8
jmp 0x7e696
jmp 0x7e698
leaq -0xca0(%rbp), %rdi
callq 0x34a8
jmp 0x7e6a6
jmp 0x7fb68
movl -0xc(%rbp), %eax
movq -0x738(%rbp), %rcx
cmpl 0x16c(%rcx), %eax
je 0x7e9e4
leaq -0xd61(%rbp), %rdi
movq %rdi, -0x13a0(%rbp)
callq 0x3440
movq -0x13a0(%rbp), %rdx
leaq 0x34a33(%rip), %rsi     # 0xb3115
leaq -0xd60(%rbp), %rdi
callq 0x3340
jmp 0x7e6f0
leaq 0x37cf1(%rip), %rdx     # 0xb63e8
leaq -0xd40(%rbp), %rdi
leaq -0xd60(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e70c
leaq 0x37fd0(%rip), %rdx     # 0xb66e3
leaq -0xd20(%rbp), %rdi
leaq -0xd40(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e728
leaq 0x37cbe(%rip), %rdx     # 0xb63ed
leaq -0xd00(%rbp), %rdi
leaq -0xd20(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e744
leaq 0x34a12(%rip), %rdx     # 0xb315d
leaq -0xce0(%rbp), %rdi
leaq -0xd00(%rbp), %rsi
callq 0xaa1b0
jmp 0x7e760
movq 0x79871(%rip), %rdi     # 0xf7fd8
leaq -0xce0(%rbp), %rsi
callq 0x3200
jmp 0x7e775
leaq -0xce0(%rbp), %rdi
callq 0x34a8
jmp 0x7e783
leaq -0xd00(%rbp), %rdi
callq 0x34a8
jmp 0x7e791
leaq -0xd20(%rbp), %rdi
callq 0x34a8
jmp 0x7e79f
leaq -0xd40(%rbp), %rdi
callq 0x34a8
jmp 0x7e7ad
leaq -0xd60(%rbp), %rdi
callq 0x34a8
jmp 0x7e7bb
leaq -0xd61(%rbp), %rdi
callq 0x3290
movq 0x7980a(%rip), %rdi     # 0xf7fd8
leaq 0x5d676(%rip), %rsi     # 0xdbe4b
callq 0x3230
movq %rax, -0x13a8(%rbp)
jmp 0x7e7e3
leaq -0xd88(%rbp), %rdi
leaq -0xc(%rbp), %rsi
callq 0xaa7f0
jmp 0x7e7f5
movq -0x13a8(%rbp), %rdi
leaq -0xd88(%rbp), %rsi
callq 0x3200
movq %rax, -0x13b0(%rbp)
jmp 0x7e811
movq -0x13b0(%rbp), %rdi
leaq 0x34956(%rip), %rsi     # 0xb3175
callq 0x3230
movq %rax, -0x13b8(%rbp)
jmp 0x7e82d
movq -0x738(%rbp), %rsi
addq $0x16c, %rsi            # imm = 0x16C
leaq -0xda8(%rbp), %rdi
callq 0xaa7f0
jmp 0x7e849
movq -0x13b8(%rbp), %rdi
leaq -0xda8(%rbp), %rsi
callq 0x3200
movq %rax, -0x13c0(%rbp)
jmp 0x7e865
movq -0x13c0(%rbp), %rdi
leaq 0x347e9(%rip), %rsi     # 0xb305c
callq 0x3230
movq %rax, -0x13c8(%rbp)
jmp 0x7e881
movq -0x13c8(%rbp), %rdi
movq 0x79731(%rip), %rsi     # 0xf7fc0
callq 0x3280
jmp 0x7e896
leaq -0xda8(%rbp), %rdi
callq 0x34a8
jmp 0x7e8a4
leaq -0xd88(%rbp), %rdi
callq 0x34a8
jmp 0x7e8b2
callq 0x28bd0
jmp 0x7e8b9
jmp 0x7e9e4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e98a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e97a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e96a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e95a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e94a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xce0(%rbp), %rdi
callq 0x34a8
jmp 0x7e948
jmp 0x7e94a
leaq -0xd00(%rbp), %rdi
callq 0x34a8
jmp 0x7e958
jmp 0x7e95a
leaq -0xd20(%rbp), %rdi
callq 0x34a8
jmp 0x7e968
jmp 0x7e96a
leaq -0xd40(%rbp), %rdi
callq 0x34a8
jmp 0x7e978
jmp 0x7e97a
leaq -0xd60(%rbp), %rdi
callq 0x34a8
jmp 0x7e988
jmp 0x7e98a
leaq -0xd61(%rbp), %rdi
callq 0x3290
jmp 0x7fb68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7e9d1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xda8(%rbp), %rdi
callq 0x34a8
jmp 0x7e9cf
jmp 0x7e9d1
leaq -0xd88(%rbp), %rdi
callq 0x34a8
jmp 0x7e9df
jmp 0x7fb68
jmp 0x7e9e6
cmpl $0x4, -0x830(%rbp)
je 0x7e9fc
cmpl $0x6, -0x830(%rbp)
jne 0x7ed37
movl -0x10(%rbp), %eax
movq -0x738(%rbp), %rcx
cmpl 0x170(%rcx), %eax
je 0x7ed35
leaq -0xe49(%rbp), %rdi
movq %rdi, -0x13d0(%rbp)
callq 0x3440
movq -0x13d0(%rbp), %rdx
leaq 0x346e2(%rip), %rsi     # 0xb3115
leaq -0xe48(%rbp), %rdi
callq 0x3340
jmp 0x7ea41
leaq 0x379b2(%rip), %rdx     # 0xb63fa
leaq -0xe28(%rbp), %rdi
leaq -0xe48(%rbp), %rsi
callq 0xaa1b0
jmp 0x7ea5d
leaq 0x37c7f(%rip), %rdx     # 0xb66e3
leaq -0xe08(%rbp), %rdi
leaq -0xe28(%rbp), %rsi
callq 0xaa1b0
jmp 0x7ea79
leaq 0x3797f(%rip), %rdx     # 0xb63ff
leaq -0xde8(%rbp), %rdi
leaq -0xe08(%rbp), %rsi
callq 0xaa1b0
jmp 0x7ea95
leaq 0x346c1(%rip), %rdx     # 0xb315d
leaq -0xdc8(%rbp), %rdi
leaq -0xde8(%rbp), %rsi
callq 0xaa1b0
jmp 0x7eab1
movq 0x79520(%rip), %rdi     # 0xf7fd8
leaq -0xdc8(%rbp), %rsi
callq 0x3200
jmp 0x7eac6
leaq -0xdc8(%rbp), %rdi
callq 0x34a8
jmp 0x7ead4
leaq -0xde8(%rbp), %rdi
callq 0x34a8
jmp 0x7eae2
leaq -0xe08(%rbp), %rdi
callq 0x34a8
jmp 0x7eaf0
leaq -0xe28(%rbp), %rdi
callq 0x34a8
jmp 0x7eafe
leaq -0xe48(%rbp), %rdi
callq 0x34a8
jmp 0x7eb0c
leaq -0xe49(%rbp), %rdi
callq 0x3290
movq 0x794b9(%rip), %rdi     # 0xf7fd8
leaq 0x5d325(%rip), %rsi     # 0xdbe4b
callq 0x3230
movq %rax, -0x13d8(%rbp)
jmp 0x7eb34
leaq -0xe70(%rbp), %rdi
leaq -0x10(%rbp), %rsi
callq 0xaa7f0
jmp 0x7eb46
movq -0x13d8(%rbp), %rdi
leaq -0xe70(%rbp), %rsi
callq 0x3200
movq %rax, -0x13e0(%rbp)
jmp 0x7eb62
movq -0x13e0(%rbp), %rdi
leaq 0x34605(%rip), %rsi     # 0xb3175
callq 0x3230
movq %rax, -0x13e8(%rbp)
jmp 0x7eb7e
movq -0x738(%rbp), %rsi
addq $0x170, %rsi            # imm = 0x170
leaq -0xe90(%rbp), %rdi
callq 0xaa7f0
jmp 0x7eb9a
movq -0x13e8(%rbp), %rdi
leaq -0xe90(%rbp), %rsi
callq 0x3200
movq %rax, -0x13f0(%rbp)
jmp 0x7ebb6
movq -0x13f0(%rbp), %rdi
leaq 0x34498(%rip), %rsi     # 0xb305c
callq 0x3230
movq %rax, -0x13f8(%rbp)
jmp 0x7ebd2
movq -0x13f8(%rbp), %rdi
movq 0x793e0(%rip), %rsi     # 0xf7fc0
callq 0x3280
jmp 0x7ebe7
leaq -0xe90(%rbp), %rdi
callq 0x34a8
jmp 0x7ebf5
leaq -0xe70(%rbp), %rdi
callq 0x34a8
jmp 0x7ec03
callq 0x28bd0
jmp 0x7ec0a
jmp 0x7ed35
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7ecdb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7eccb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7ecbb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7ecab
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7ec9b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xdc8(%rbp), %rdi
callq 0x34a8
jmp 0x7ec99
jmp 0x7ec9b
leaq -0xde8(%rbp), %rdi
callq 0x34a8
jmp 0x7eca9
jmp 0x7ecab
leaq -0xe08(%rbp), %rdi
callq 0x34a8
jmp 0x7ecb9
jmp 0x7ecbb
leaq -0xe28(%rbp), %rdi
callq 0x34a8
jmp 0x7ecc9
jmp 0x7eccb
leaq -0xe48(%rbp), %rdi
callq 0x34a8
jmp 0x7ecd9
jmp 0x7ecdb
leaq -0xe49(%rbp), %rdi
callq 0x3290
jmp 0x7fb68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7ed22
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xe90(%rbp), %rdi
callq 0x34a8
jmp 0x7ed20
jmp 0x7ed22
leaq -0xe70(%rbp), %rdi
callq 0x34a8
jmp 0x7ed30
jmp 0x7fb68
jmp 0x7ed37
leaq -0xeb8(%rbp), %rdi
callq 0x56a0
jmp 0x7ed45
movl $0x10, -0xeb4(%rbp)
movl $0x6, -0xeb8(%rbp)
leaq -0xee0(%rbp), %rdi
callq 0x56a0
jmp 0x7ed67
movl $0x8, -0xedc(%rbp)
movl $0x6, -0xee0(%rbp)
movl -0x1c(%rbp), %eax
movl 0x10(%rbp), %ecx
imull %ecx, %eax
shll $0x3, %eax
movq %rax, -0x1408(%rbp)
movb $0x0, -0xef9(%rbp)
leaq -0xefa(%rbp), %rdi
movq %rdi, -0x1400(%rbp)
callq 0x1bfa0
movq -0x1408(%rbp), %rsi
movq -0x1400(%rbp), %rcx
leaq -0xef8(%rbp), %rdi
leaq -0xef9(%rbp), %rdx
callq 0xaab60
jmp 0x7edcb
leaq -0xefa(%rbp), %rdi
callq 0x1bff0
leaq -0xef8(%rbp), %rdi
callq 0xab120
movq %rax, -0x1410(%rbp)
jmp 0x7edec
leaq -0x758(%rbp), %rdi
callq 0xab120
movq %rax, -0x1418(%rbp)
jmp 0x7ee01
movq -0x1418(%rbp), %rsi
movq -0x1410(%rbp), %rdi
movl -0x1c(%rbp), %r8d
movl 0x10(%rbp), %r9d
leaq -0xeb8(%rbp), %rdx
leaq -0xee0(%rbp), %rcx
callq 0x6d60
movl %eax, -0x141c(%rbp)
jmp 0x7ee32
movl -0x141c(%rbp), %eax
movl %eax, -0x24(%rbp)
movl -0x1c(%rbp), %eax
movl 0x10(%rbp), %ecx
imull %ecx, %eax
shll $0x3, %eax
movq %rax, -0x1430(%rbp)
movb $0x0, -0xf19(%rbp)
leaq -0xf1a(%rbp), %rdi
movq %rdi, -0x1428(%rbp)
callq 0x1bfa0
movq -0x1430(%rbp), %rsi
movq -0x1428(%rbp), %rcx
leaq -0xf18(%rbp), %rdi
leaq -0xf19(%rbp), %rdx
callq 0xaab60
jmp 0x7ee8b
leaq -0xf1a(%rbp), %rdi
callq 0x1bff0
leaq -0xf18(%rbp), %rdi
callq 0xab120
movq %rax, -0x1438(%rbp)
jmp 0x7eeac
movq -0x18(%rbp), %rdi
callq 0xaa460
movq %rax, -0x1440(%rbp)
jmp 0x7eebe
movq -0x1440(%rbp), %rsi
movq -0x1438(%rbp), %rdi
leaq -0x200(%rbp), %rcx
movl -0x1c(%rbp), %r8d
movl 0x10(%rbp), %r9d
leaq -0xeb8(%rbp), %rdx
callq 0x6d60
movl %eax, -0x1444(%rbp)
jmp 0x7eeef
movl -0x1444(%rbp), %eax
movl %eax, -0x24(%rbp)
movl -0x24(%rbp), %eax
movl %eax, -0x1454(%rbp)
leaq -0xf81(%rbp), %rdi
movq %rdi, -0x1450(%rbp)
callq 0x3440
movq -0x1450(%rbp), %rdx
leaq 0x341f3(%rip), %rsi     # 0xb3115
leaq -0xf80(%rbp), %rdi
callq 0x3340
jmp 0x7ef30
leaq 0x374d5(%rip), %rdx     # 0xb640c
leaq -0xf60(%rbp), %rdi
leaq -0xf80(%rbp), %rsi
callq 0xaa1b0
jmp 0x7ef4c
leaq -0xfc9(%rbp), %rdi
movq %rdi, -0x1460(%rbp)
callq 0x3440
movq -0x1460(%rbp), %rdx
movb $0x0, -0xfcb(%rbp)
movb $0x0, -0xff2(%rbp)
movb $0x0, -0xff3(%rbp)
leaq 0x35582(%rip), %rsi     # 0xb4504
leaq -0xfc8(%rbp), %rdi
callq 0x3340
jmp 0x7ef90
leaq -0xfc8(%rbp), %rdi
callq 0x33f0
movb %al, -0x1461(%rbp)
jmp 0x7efa4
movb -0x1461(%rbp), %al
testb $0x1, %al
jne 0x7efb0
jmp 0x7efe8
leaq -0xfca(%rbp), %rdi
movq %rdi, -0x1470(%rbp)
callq 0x3440
movq -0x1470(%rbp), %rdx
movb $0x1, -0xfcb(%rbp)
leaq 0x3552c(%rip), %rsi     # 0xb4504
leaq -0xfa8(%rbp), %rdi
callq 0x3340
jmp 0x7efe6
jmp 0x7f043
leaq -0xff1(%rbp), %rdi
movq %rdi, -0x1478(%rbp)
callq 0x3440
movq -0x1478(%rbp), %rdx
movb $0x1, -0xff2(%rbp)
leaq 0x354f4(%rip), %rsi     # 0xb4504
leaq -0xff0(%rbp), %rdi
callq 0x3340
jmp 0x7f01e
movb $0x1, -0xff3(%rbp)
leaq 0x376b7(%rip), %rsi     # 0xb66e3
leaq -0xfa8(%rbp), %rdi
leaq -0xff0(%rbp), %rdx
callq 0xaa6d0
jmp 0x7f041
jmp 0x7f043
leaq -0xf40(%rbp), %rdi
leaq -0xf60(%rbp), %rsi
leaq -0xfa8(%rbp), %rdx
callq 0xaa240
jmp 0x7f05f
movl -0x1454(%rbp), %edi
leaq -0xf40(%rbp), %rsi
callq 0x28d30
jmp 0x7f073
leaq -0xf40(%rbp), %rdi
callq 0x34a8
jmp 0x7f081
leaq -0xfa8(%rbp), %rdi
callq 0x34a8
jmp 0x7f08f
testb $0x1, -0xff3(%rbp)
jne 0x7f09a
jmp 0x7f0aa
leaq -0xff0(%rbp), %rdi
callq 0x34a8
jmp 0x7f0a8
jmp 0x7f0aa
testb $0x1, -0xff2(%rbp)
jne 0x7f0b5
jmp 0x7f0c1
leaq -0xff1(%rbp), %rdi
callq 0x3290
testb $0x1, -0xfcb(%rbp)
jne 0x7f0cc
jmp 0x7f0d8
leaq -0xfca(%rbp), %rdi
callq 0x3290
leaq -0xfc8(%rbp), %rdi
callq 0x34a8
jmp 0x7f0e6
leaq -0xfc9(%rbp), %rdi
callq 0x3290
leaq -0xf60(%rbp), %rdi
callq 0x34a8
jmp 0x7f100
leaq -0xf80(%rbp), %rdi
callq 0x34a8
jmp 0x7f10e
leaq -0xf81(%rbp), %rdi
callq 0x3290
leaq -0xf18(%rbp), %rdi
callq 0x1a400
movq %rax, -0x1480(%rbp)
jmp 0x7f12f
leaq -0xef8(%rbp), %rdi
callq 0x1a400
movq %rax, -0x1488(%rbp)
jmp 0x7f144
movq -0x1480(%rbp), %rax
movq -0x1488(%rbp), %rcx
cmpq %rcx, %rax
je 0x7f6b1
leaq -0x1099(%rbp), %rdi
movq %rdi, -0x1490(%rbp)
callq 0x3440
movq -0x1490(%rbp), %rdx
leaq 0x33f99(%rip), %rsi     # 0xb3115
leaq -0x1098(%rbp), %rdi
callq 0x3340
jmp 0x7f18a
leaq 0x37280(%rip), %rdx     # 0xb6411
leaq -0x1078(%rbp), %rdi
leaq -0x1098(%rbp), %rsi
callq 0xaa1b0
jmp 0x7f1a6
leaq 0x37536(%rip), %rdx     # 0xb66e3
leaq -0x1058(%rbp), %rdi
leaq -0x1078(%rbp), %rsi
callq 0xaa1b0
jmp 0x7f1c2
leaq 0x370db(%rip), %rdx     # 0xb62a4
leaq -0x1038(%rbp), %rdi
leaq -0x1058(%rbp), %rsi
callq 0xaa1b0
jmp 0x7f1de
leaq 0x33f78(%rip), %rdx     # 0xb315d
leaq -0x1018(%rbp), %rdi
leaq -0x1038(%rbp), %rsi
callq 0xaa1b0
jmp 0x7f1fa
movq 0x78dd7(%rip), %rdi     # 0xf7fd8
leaq -0x1018(%rbp), %rsi
callq 0x3200
jmp 0x7f20f
leaq -0x1018(%rbp), %rdi
callq 0x34a8
jmp 0x7f21d
leaq -0x1038(%rbp), %rdi
callq 0x34a8
jmp 0x7f22b
leaq -0x1058(%rbp), %rdi
callq 0x34a8
jmp 0x7f239
leaq -0x1078(%rbp), %rdi
callq 0x34a8
jmp 0x7f247
leaq -0x1098(%rbp), %rdi
callq 0x34a8
jmp 0x7f255
leaq -0x1099(%rbp), %rdi
callq 0x3290
movq 0x78d70(%rip), %rdi     # 0xf7fd8
leaq 0x5cbdc(%rip), %rsi     # 0xdbe4b
callq 0x3230
movq %rax, -0x1498(%rbp)
jmp 0x7f27d
leaq -0xf18(%rbp), %rdi
callq 0x1a400
movq %rax, -0x14a0(%rbp)
jmp 0x7f292
movq -0x14a0(%rbp), %rax
movq %rax, -0x10c8(%rbp)
leaq -0x10c0(%rbp), %rdi
leaq -0x10c8(%rbp), %rsi
callq 0xaa610
jmp 0x7f2b5
movq -0x1498(%rbp), %rdi
leaq -0x10c0(%rbp), %rsi
callq 0x3200
movq %rax, -0x14a8(%rbp)
jmp 0x7f2d1
movq -0x14a8(%rbp), %rdi
leaq 0x33e96(%rip), %rsi     # 0xb3175
callq 0x3230
movq %rax, -0x14b0(%rbp)
jmp 0x7f2ed
leaq -0xef8(%rbp), %rdi
callq 0x1a400
movq %rax, -0x14b8(%rbp)
jmp 0x7f302
movq -0x14b8(%rbp), %rax
movq %rax, -0x10f0(%rbp)
leaq -0x10e8(%rbp), %rdi
leaq -0x10f0(%rbp), %rsi
callq 0xaa610
jmp 0x7f325
movq -0x14b0(%rbp), %rdi
leaq -0x10e8(%rbp), %rsi
callq 0x3200
movq %rax, -0x14c0(%rbp)
jmp 0x7f341
movq -0x14c0(%rbp), %rdi
leaq 0x33d0d(%rip), %rsi     # 0xb305c
callq 0x3230
movq %rax, -0x14c8(%rbp)
jmp 0x7f35d
movq -0x14c8(%rbp), %rdi
movq 0x78c55(%rip), %rsi     # 0xf7fc0
callq 0x3280
jmp 0x7f372
leaq -0x10e8(%rbp), %rdi
callq 0x34a8
jmp 0x7f380
leaq -0x10c0(%rbp), %rdi
callq 0x34a8
jmp 0x7f38e
callq 0x28bd0
jmp 0x7f395
jmp 0x7f6b1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xefa(%rbp), %rdi
callq 0x1bff0
jmp 0x7fb68
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fb58
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xf1a(%rbp), %rdi
callq 0x1bff0
jmp 0x7fb58
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fb48
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f57a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f56a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f54e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f53e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f525
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f50c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f4ef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f4df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0xf40(%rbp), %rdi
callq 0x34a8
jmp 0x7f4dd
jmp 0x7f4df
leaq -0xfa8(%rbp), %rdi
callq 0x34a8
jmp 0x7f4ed
jmp 0x7f4ef
testb $0x1, -0xff3(%rbp)
jne 0x7f4fa
jmp 0x7f50a
leaq -0xff0(%rbp), %rdi
callq 0x34a8
jmp 0x7f508
jmp 0x7f50a
jmp 0x7f50c
testb $0x1, -0xff2(%rbp)
jne 0x7f517
jmp 0x7f523
leaq -0xff1(%rbp), %rdi
callq 0x3290
jmp 0x7f525
testb $0x1, -0xfcb(%rbp)
jne 0x7f530
jmp 0x7f53c
leaq -0xfca(%rbp), %rdi
callq 0x3290
jmp 0x7f53e
leaq -0xfc8(%rbp), %rdi
callq 0x34a8
jmp 0x7f54c
jmp 0x7f54e
leaq -0xfc9(%rbp), %rdi
callq 0x3290
leaq -0xf60(%rbp), %rdi
callq 0x34a8
jmp 0x7f568
jmp 0x7f56a
leaq -0xf80(%rbp), %rdi
callq 0x34a8
jmp 0x7f578
jmp 0x7f57a
leaq -0xf81(%rbp), %rdi
callq 0x3290
jmp 0x7fb48
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f657
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f647
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f637
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f627
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f617
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x1018(%rbp), %rdi
callq 0x34a8
jmp 0x7f615
jmp 0x7f617
leaq -0x1038(%rbp), %rdi
callq 0x34a8
jmp 0x7f625
jmp 0x7f627
leaq -0x1058(%rbp), %rdi
callq 0x34a8
jmp 0x7f635
jmp 0x7f637
leaq -0x1078(%rbp), %rdi
callq 0x34a8
jmp 0x7f645
jmp 0x7f647
leaq -0x1098(%rbp), %rdi
callq 0x34a8
jmp 0x7f655
jmp 0x7f657
leaq -0x1099(%rbp), %rdi
callq 0x3290
jmp 0x7fb48
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7f69e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x10e8(%rbp), %rdi
callq 0x34a8
jmp 0x7f69c
jmp 0x7f69e
leaq -0x10c0(%rbp), %rdi
callq 0x34a8
jmp 0x7f6ac
jmp 0x7fb48
movq $0x0, -0x10f8(%rbp)
movq -0x10f8(%rbp), %rax
movq %rax, -0x14d8(%rbp)
leaq -0xef8(%rbp), %rdi
callq 0x1a400
movq %rax, -0x14d0(%rbp)
jmp 0x7f6df
movq -0x14d8(%rbp), %rax
movq -0x14d0(%rbp), %rcx
cmpq %rcx, %rax
jae 0x7fae3
movq -0x10f8(%rbp), %rsi
leaq -0xf18(%rbp), %rdi
callq 0x1a5f0
movq %rax, -0x14e0(%rbp)
jmp 0x7f712
movq -0x14e0(%rbp), %rax
movzbl (%rax), %eax
movl %eax, -0x14ec(%rbp)
movq -0x10f8(%rbp), %rsi
leaq -0xef8(%rbp), %rdi
callq 0x1a5f0
movq %rax, -0x14e8(%rbp)
jmp 0x7f73e
movl -0x14ec(%rbp), %eax
movq -0x14e8(%rbp), %rcx
movzbl (%rcx), %ecx
cmpl %ecx, %eax
je 0x7faca
leaq -0x1199(%rbp), %rdi
movq %rdi, -0x14f8(%rbp)
callq 0x3440
movq -0x14f8(%rbp), %rdx
leaq 0x3399e(%rip), %rsi     # 0xb3115
leaq -0x1198(%rbp), %rdi
callq 0x3340
jmp 0x7f785
leaq 0x36c8a(%rip), %rdx     # 0xb6416
leaq -0x1178(%rbp), %rdi
leaq -0x1198(%rbp), %rsi
callq 0xaa1b0
jmp 0x7f7a1
leaq 0x36f3b(%rip), %rdx     # 0xb66e3
leaq -0x1158(%rbp), %rdi
leaq -0x1178(%rbp), %rsi
callq 0xaa1b0
jmp 0x7f7bd
leaq 0x36c57(%rip), %rdx     # 0xb641b
leaq -0x1138(%rbp), %rdi
leaq -0x1158(%rbp), %rsi
callq 0xaa1b0
jmp 0x7f7d9
leaq 0x3397d(%rip), %rdx     # 0xb315d
leaq -0x1118(%rbp), %rdi
leaq -0x1138(%rbp), %rsi
callq 0xaa1b0
jmp 0x7f7f5
movq 0x787dc(%rip), %rdi     # 0xf7fd8
leaq -0x1118(%rbp), %rsi
callq 0x3200
jmp 0x7f80a
leaq -0x1118(%rbp), %rdi
callq 0x34a8
jmp 0x7f818
leaq -0x1138(%rbp), %rdi
callq 0x34a8
jmp 0x7f826
leaq -0x1158(%rbp), %rdi
callq 0x34a8
jmp 0x7f834
leaq -0x1178(%rbp), %rdi
callq 0x34a8
jmp 0x7f842
leaq -0x1198(%rbp), %rdi
callq 0x34a8
jmp 0x7f850
leaq -0x1199(%rbp), %rdi
callq 0x3290
movq 0x78775(%rip), %rdi     # 0xf7fd8
leaq 0x5c5e1(%rip), %rsi     # 0xdbe4b
callq 0x3230
movq %rax, -0x1500(%rbp)
jmp 0x7f878
movq -0x10f8(%rbp), %rsi
leaq -0xf18(%rbp), %rdi
callq 0x1a5f0
movq %rax, -0x1508(%rbp)
jmp 0x7f894
movq -0x1508(%rbp), %rax
movzbl (%rax), %eax
movl %eax, -0x11c4(%rbp)
leaq -0x11c0(%rbp), %rdi
leaq -0x11c4(%rbp), %rsi
callq 0xaaa20
jmp 0x7f8b9
movq -0x1500(%rbp), %rdi
leaq -0x11c0(%rbp), %rsi
callq 0x3200
movq %rax, -0x1510(%rbp)
jmp 0x7f8d5
movq -0x1510(%rbp), %rdi
leaq 0x33892(%rip), %rsi     # 0xb3175
callq 0x3230
movq %rax, -0x1518(%rbp)
jmp 0x7f8f1
movq -0x10f8(%rbp), %rsi
leaq -0xef8(%rbp), %rdi
callq 0x1a5f0
movq %rax, -0x1520(%rbp)
jmp 0x7f90d
movq -0x1520(%rbp), %rax
movzbl (%rax), %eax
movl %eax, -0x11ec(%rbp)
leaq -0x11e8(%rbp), %rdi
leaq -0x11ec(%rbp), %rsi
callq 0xaaa20
jmp 0x7f932
movq -0x1518(%rbp), %rdi
leaq -0x11e8(%rbp), %rsi
callq 0x3200
movq %rax, -0x1528(%rbp)
jmp 0x7f94e
movq -0x1528(%rbp), %rdi
leaq 0x33700(%rip), %rsi     # 0xb305c
callq 0x3230
movq %rax, -0x1530(%rbp)
jmp 0x7f96a
movq -0x1530(%rbp), %rdi
movq 0x78648(%rip), %rsi     # 0xf7fc0
callq 0x3280
jmp 0x7f97f
leaq -0x11e8(%rbp), %rdi
callq 0x34a8
jmp 0x7f98d
leaq -0x11c0(%rbp), %rdi
callq 0x34a8
jmp 0x7f99b
callq 0x28bd0
jmp 0x7f9a2
jmp 0x7faca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fa73
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fa63
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fa53
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fa43
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7fa33
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x1118(%rbp), %rdi
callq 0x34a8
jmp 0x7fa31
jmp 0x7fa33
leaq -0x1138(%rbp), %rdi
callq 0x34a8
jmp 0x7fa41
jmp 0x7fa43
leaq -0x1158(%rbp), %rdi
callq 0x34a8
jmp 0x7fa51
jmp 0x7fa53
leaq -0x1178(%rbp), %rdi
callq 0x34a8
jmp 0x7fa61
jmp 0x7fa63
leaq -0x1198(%rbp), %rdi
callq 0x34a8
jmp 0x7fa71
jmp 0x7fa73
leaq -0x1199(%rbp), %rdi
callq 0x3290
jmp 0x7fb48
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
jmp 0x7faba
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x2b8(%rbp)
movl %eax, -0x2bc(%rbp)
leaq -0x11e8(%rbp), %rdi
callq 0x34a8
jmp 0x7fab8
jmp 0x7faba
leaq -0x11c0(%rbp), %rdi
callq 0x34a8
jmp 0x7fac8
jmp 0x7fb48
jmp 0x7facc
movq -0x10f8(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x10f8(%rbp)
jmp 0x7f6bc
leaq -0xf18(%rbp), %rdi
callq 0x1a4c0
jmp 0x7faf1
leaq -0xef8(%rbp), %rdi
callq 0x1a4c0
jmp 0x7faff
leaq -0x758(%rbp), %rdi
callq 0x1a4c0
jmp 0x7fb0d
leaq -0x730(%rbp), %rdi
callq 0x11b20
jmp 0x7fb1b
movl $0x0, -0x3d4(%rbp)
leaq -0x2e0(%rbp), %rdi
callq 0x1a4c0
jmp 0x7fb33
leaq -0x2a8(%rbp), %rdi
callq 0x11b20
addq $0x1530, %rsp           # imm = 0x1530
popq %rbp
retq
leaq -0xf18(%rbp), %rdi
callq 0x1a4c0
jmp 0x7fb56
jmp 0x7fb58
leaq -0xef8(%rbp), %rdi
callq 0x1a4c0
jmp 0x7fb66
jmp 0x7fb68
leaq -0x758(%rbp), %rdi
callq 0x1a4c0
jmp 0x7fb76
jmp 0x7fb78
leaq -0x730(%rbp), %rdi
callq 0x11b20
jmp 0x7fb86
jmp 0x7fb88
leaq -0x2e0(%rbp), %rdi
callq 0x1a4c0
jmp 0x7fb96
jmp 0x7fb98
leaq -0x2a8(%rbp), %rdi
callq 0x11b20
jmp 0x7fba6
jmp 0x7fba8
movq -0x2b8(%rbp), %rdi
callq 0x3430
movq %rax, %rdi
callq 0x1a490
nopl (%rax)