// File: /workspace/github_cpp_makefile_star2_O3/lvandeve[P]lodepng/pngdetail.cpp
// Function: showHeaderInfo(Data&, Options const&)
void showHeaderInfo(Data& data, const Options& options) {
  data.loadInspect();
  if(data.error) return;
  std::cout << (options.use_hex ? std::hex: std::dec);

  const LodePNGInfo& info = data.state.info_png;
  const LodePNGColorMode& color = info.color;
  if(options.show_header) {
    std::cout << "Filesize: " << data.buffer.size() << " (" << data.buffer.size() / 1024 << "K)" << std::endl;
    if(data.is_icc) {
      std::cout << "Not a PNG but an ICC profile, use -i or -I for more info." << std::endl;
    } else if(data.is_exif) {
      std::cout << "Not a PNG but an EXIF file, use -e for more info." << std::endl;
    } else {
      std::cout << "Width: " << data.w << std::endl;
      std::cout << "Height: " << data.h << std::endl;
      if(options.verbose) {
        double bpp = data.buffer.size() / (double)(data.w * data.h);
        std::cout << "Compressed bpp: " << bpp << std::endl;
      }
      std::cout << "Interlace method: " << info.interlace_method << std::endl;
      if(options.verbose) {
        std::cout << "Compression method: " << info.compression_method << std::endl;
        std::cout << "Filter method: " << info.filter_method << std::endl;
      }
      std::cout << "Color type: " << colorTypeString(color.colortype) << std::endl;
      std::cout << "Bit depth: " << color.bitdepth << std::endl;
      if(options.verbose) {
        std::cout << "Bits per pixel: " << lodepng_get_bpp(&color) << std::endl;
        std::cout << "Channels per pixel: " << lodepng_get_channels(&color) << std::endl;
        std::cout << "Is greyscale type: " << lodepng_is_greyscale_type(&color) << std::endl;
        std::cout << "Can have alpha: " << lodepng_can_have_alpha(&color) << std::endl;
        std::cout << "Has color key: " << color.key_defined << std::endl;
      }
    }
  }
  if(options.show_png_info && data.is_png) {
    if (color.colortype == LCT_PALETTE) {
      std::cout << "Palette size: " << color.palettesize << std::endl;
    }
    if(color.key_defined) {
      std::cout << "Color key rgb: " << color.key_r
                << ", " << color.key_g
                << ", " << color.key_b << std::endl;
    }
    if(info.background_defined) {
      if(color.colortype == LCT_PALETTE) {
        std::cout << "Background index: " << info.background_r << std::endl;
      } else {
        std::cout << "Background rgb: " << info.background_r
                  << ", " << info.background_g
                  << ", " << info.background_b << std::endl;
      }
    }
    if(info.gama_defined) {
      std::cout << "gAMA defined: " << info.gama_gamma << " (" << (info.gama_gamma / 100000.0)
                << ", " << (100000.0 / info.gama_gamma) << ")" << std::endl;
    }
    if(info.chrm_defined) {
      std::cout << "cHRM defined: w: " << (info.chrm_white_x / 100000.0) << " " << (info.chrm_white_y / 100000.0)
                << ", r: " << (info.chrm_red_x / 100000.0) << " " << (info.chrm_red_y / 100000.0)
                << ", g: " << (info.chrm_green_x / 100000.0) << " " << (info.chrm_green_y / 100000.0)
                << ", b: " << (info.chrm_blue_x / 100000.0) << " " << (info.chrm_blue_y / 100000.0)
                << std::endl;
    }
    if(info.srgb_defined) {
      std::cout << "sRGB defined: rendering intent: " << info.srgb_intent << std::endl;
    }
    if(info.iccp_defined) {
      std::cout << "ICC profile defined (" << info.iccp_profile_size << " bytes): name: " << info.iccp_name << std::endl;
      if(options.verbose && !options.show_icc_details && !options.show_icc_hex) {
        std::cout << "Use -i or -I to show ICC profile details or hex" << std::endl;
      }
    }
    if(info.exif_defined) {
      std::cout << "EXIF metadata defined (" << info.exif_size << " bytes)" << std::endl;
      if(options.verbose && !options.show_exif && !options.show_exif_hex) {
        std::cout << "Use -e or -E to show EXIF details or hex" << std::endl;
      }
    }
  }
  if(info.iccp_defined && options.show_icc_details) {
    if(!options.show_header) {
      std::cout << "ICC profile details (" << info.iccp_profile_size << " bytes), PNG name: " << info.iccp_name << std::endl;
    }
    printICCDetails(info.iccp_profile, info.iccp_profile_size, "  ");
    std::cout << "end of ICC profile" << std::endl;
  }
  if(info.iccp_defined && options.show_icc_hex) {
    showHex(info.iccp_profile, info.iccp_profile_size, options);
  }
  if(info.exif_defined && options.show_exif_hex) {
    showHex(info.exif, info.exif_size, options);
  }

  if(options.show_png_info && data.is_png) {
    if(options.verbose) std::cout << "Physics defined: " << info.phys_defined << std::endl;
    if(info.phys_defined) {
      std::cout << "Physics: X: " << info.phys_x << ", Y: " << info.phys_y << ", unit: " << info.phys_unit << std::endl;
    }
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rsi, %r14
movq %rdi, %rbx
callq 0x1df4c
cmpl $0x0, 0x2d8(%rbx)
jne 0x1b7da
leaq 0x390c(%rip), %rax      # 0x1e1e9
leaq 0x3915(%rip), %rcx      # 0x1e1f9
cmpb $0x0, 0x24(%r14)
cmovneq %rax, %rcx
movq 0x106dc(%rip), %r15     # 0x2afd0
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
callq *%rcx
leaq 0x138(%rbx), %r12
cmpb $0x1, 0x3(%r14)
jne 0x1aa07
movq 0x106b7(%rip), %r13     # 0x2afd0
leaq 0x944d(%rip), %rsi      # 0x23d6d
movl $0xa, %edx
movq %r13, %rdi
callq 0x2290
movq 0x28(%rbx), %rsi
subq 0x20(%rbx), %rsi
movq %r13, %rdi
callq 0x2160
movq %rax, %rbp
leaq 0x9966(%rip), %rsi      # 0x242ad
movl $0x2, %edx
movq %rax, %rdi
callq 0x2290
movq 0x28(%rbx), %rsi
subq 0x20(%rbx), %rsi
shrq $0xa, %rsi
movq %rbp, %rdi
callq 0x2160
movq %rax, %rbp
leaq 0x9406(%rip), %rsi      # 0x23d78
movl $0x2, %edx
movq %rax, %rdi
callq 0x2290
movq (%rbp), %rax
movq -0x18(%rax), %rdi
addq %rbp, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %rbp, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpb $0x1, 0x2de(%rbx)
jne 0x1a9be
leaq 0x96c9(%rip), %rsi      # 0x24080
movl $0x39, %edx
jmp 0x1a9d7
cmpb $0x1, 0x2df(%rbx)
jne 0x1ab60
leaq 0x96e8(%rip), %rsi      # 0x240ba
movl $0x31, %edx
movq %r13, %rdi
callq 0x2290
movq (%r13), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r13, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpb $0x1, 0xa(%r14)
jne 0x1b527
cmpb $0x1, 0x2dd(%rbx)
jne 0x1b527
cmpl $0x3, (%r12)
jne 0x1aa7a
movq 0x105a3(%rip), %r12     # 0x2afd0
leaq 0x90b3(%rip), %rsi      # 0x23ae7
movl $0xe, %edx
movq %r12, %rdi
callq 0x2290
movq 0x148(%rbx), %rsi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpl $0x0, 0x150(%rbx)
je 0x1ab23
movq 0x10542(%rip), %r12     # 0x2afd0
leaq 0x9725(%rip), %rsi      # 0x241ba
movl $0xf, %edx
movq %r12, %rdi
callq 0x2290
movl 0x154(%rbx), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
leaq 0x93e6(%rip), %r13      # 0x23ea0
movl $0x2, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2290
movl 0x158(%rbx), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
movl $0x2, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2290
movl 0x15c(%rbx), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpl $0x0, 0x160(%rbx)
je 0x1b07d
cmpl $0x3, 0x138(%rbx)
jne 0x1afdc
leaq 0x164(%rbx), %r13
leaq 0x967f(%rip), %rsi      # 0x241ca
movl $0x12, %edx
movq %r15, %rdi
callq 0x2290
movq %r15, %r12
jmp 0x1b047
movq 0x10469(%rip), %r13     # 0x2afd0
leaq 0x957e(%rip), %rsi      # 0x240ec
movl $0x7, %edx
movq %r13, %rdi
callq 0x2290
movl 0x50(%rbx), %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %rbp
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbp, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %rbp, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
leaq 0x953d(%rip), %rsi      # 0x240f4
movl $0x8, %edx
movq %r13, %rdi
callq 0x2290
movl 0x54(%rbx), %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r13, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpb $0x1, (%r14)
jne 0x1ac98
movq 0x28(%rbx), %rax
subq 0x20(%rbx), %rax
movq %rax, %xmm0
punpckldq 0x8598(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x85a0(%rip), %xmm0     # 0x231c0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
movl 0x54(%rbx), %eax
imull 0x50(%rbx), %eax
addsd %xmm0, %xmm1
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
divsd %xmm0, %xmm1
movapd %xmm1, 0x20(%rsp)
movq 0x10384(%rip), %r13     # 0x2afd0
leaq 0x94aa(%rip), %rsi      # 0x240fd
movl $0x10, %edx
movq %r13, %rdi
callq 0x2290
movq %r13, %rdi
movapd 0x20(%rsp), %xmm0
callq 0x2330
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r13, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
movq 0x10331(%rip), %r13     # 0x2afd0
leaq 0x9468(%rip), %rsi      # 0x2410e
movl $0x12, %edx
movq %r13, %rdi
callq 0x2290
movl 0x130(%rbx), %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r13, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpb $0x1, (%r14)
jne 0x1ad94
movq 0x102d4(%rip), %r13     # 0x2afd0
leaq 0x941e(%rip), %rsi      # 0x24121
movl $0x14, %edx
movq %r13, %rdi
callq 0x2290
movl 0x128(%rbx), %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %rbp
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbp, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %rbp, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
leaq 0x93e7(%rip), %rsi      # 0x24136
movl $0xf, %edx
movq %r13, %rdi
callq 0x2290
movl 0x12c(%rbx), %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r13, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
movq 0x10235(%rip), %r13     # 0x2afd0
leaq 0x93a4(%rip), %rsi      # 0x24146
movl $0xc, %edx
movq %r13, %rdi
callq 0x2290
movl (%r12), %esi
movq %rsp, %rbp
movq %rbp, %rdi
callq 0x162b4
movq (%rbp), %rsi
movq 0x8(%rbp), %rdx
movq %r13, %rdi
callq 0x2290
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r13, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1ae0b
callq 0x2210
movq 0x101be(%rip), %r13     # 0x2afd0
leaq 0x933a(%rip), %rsi      # 0x24153
movl $0xb, %edx
movq %r13, %rdi
callq 0x2290
movl 0x13c(%rbx), %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r13, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpb $0x1, (%r14)
jne 0x1aa07
movq 0x10161(%rip), %r13     # 0x2afd0
leaq 0x92e9(%rip), %rsi      # 0x2415f
movl $0x10, %edx
movq %r13, %rdi
callq 0x2290
movq %r12, %rdi
callq 0x598a
movl %eax, %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %rbp
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbp, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %rbp, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
leaq 0x92aa(%rip), %rsi      # 0x24170
movl $0x14, %edx
movq %r13, %rdi
callq 0x2290
movq %r12, %rdi
callq 0x599c
movl %eax, %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %rbp
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbp, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %rbp, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
leaq 0x926f(%rip), %rsi      # 0x24185
movl $0x13, %edx
movq %r13, %rdi
callq 0x2290
movq %r12, %rdi
callq 0x59d8
movl %eax, %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %rbp
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbp, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %rbp, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
leaq 0x9233(%rip), %rsi      # 0x24199
movl $0x10, %edx
movq %r13, %rdi
callq 0x2290
movq %r12, %rdi
callq 0x5a1d
movl %eax, %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %rbp
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbp, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %rbp, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
leaq 0x91f4(%rip), %rsi      # 0x241aa
movl $0xf, %edx
movq %r13, %rdi
callq 0x2290
movl 0x150(%rbx), %esi
movq %r13, %rdi
callq 0x2160
movq %rax, %r13
movq (%rax), %rax
jmp 0x1a9e3
movq 0xffed(%rip), %r12      # 0x2afd0
leaq 0x91f3(%rip), %rsi      # 0x241dd
movl $0x10, %edx
movq %r12, %rdi
callq 0x2290
movl 0x164(%rbx), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
leaq 0x8e91(%rip), %r13      # 0x23ea0
movl $0x2, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2290
movl 0x168(%rbx), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
movl $0x2, %edx
movq %rax, %rdi
movq %r13, %rsi
callq 0x2290
leaq 0x16c(%rbx), %r13
movl (%r13), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpl $0x0, 0x1f0(%rbx)
je 0x1b15a
movq 0xff3f(%rip), %r12      # 0x2afd0
leaq 0x9156(%rip), %rsi      # 0x241ee
movl $0xe, %edx
movq %r12, %rdi
callq 0x2290
movl 0x1f4(%rbx), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
leaq 0x91f0(%rip), %rsi      # 0x242ad
movl $0x2, %edx
movq %rax, %rdi
callq 0x2290
movl 0x1f4(%rbx), %eax
cvtsi2sd %rax, %xmm0
divsd 0x80a3(%rip), %xmm0     # 0x23180
movq %r12, %rdi
callq 0x2330
movq %rax, %r12
leaq 0x8db1(%rip), %rsi      # 0x23ea0
movl $0x2, %edx
movq %rax, %rdi
callq 0x2290
movl 0x1f4(%rbx), %eax
cvtsi2sd %rax, %xmm1
movsd 0x8071(%rip), %xmm0     # 0x23180
divsd %xmm1, %xmm0
movq %r12, %rdi
callq 0x2330
movq %rax, %r12
leaq 0x7fb1(%rip), %rsi      # 0x230d6
movl $0x1, %edx
movq %rax, %rdi
callq 0x2290
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpl $0x0, 0x1f8(%rbx)
je 0x1b334
movq 0xfe62(%rip), %r12      # 0x2afd0
leaq 0x9088(%rip), %rsi      # 0x241fd
movl $0x11, %edx
movq %r12, %rdi
callq 0x2290
movl 0x1fc(%rbx), %eax
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
divsd 0x7fe8(%rip), %xmm0     # 0x23180
movq %r12, %rdi
callq 0x2330
movq %rax, %r13
leaq 0x9162(%rip), %r12      # 0x2430c
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x2290
movl 0x200(%rbx), %eax
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
divsd 0x7fb0(%rip), %xmm0     # 0x23180
movq %r13, %rdi
callq 0x2330
movq %rax, %r13
leaq 0x902d(%rip), %rsi      # 0x2420f
movl $0x5, %edx
movq %rax, %rdi
callq 0x2290
movl 0x204(%rbx), %eax
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
divsd 0x7f7b(%rip), %xmm0     # 0x23180
movq %r13, %rdi
callq 0x2330
movq %rax, %r13
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x2290
movl 0x208(%rbx), %eax
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
divsd 0x7f4a(%rip), %xmm0     # 0x23180
movq %r13, %rdi
callq 0x2330
movq %rax, %r13
leaq 0x8fcd(%rip), %rsi      # 0x24215
movl $0x5, %edx
movq %rax, %rdi
callq 0x2290
movl 0x20c(%rbx), %eax
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
divsd 0x7f15(%rip), %xmm0     # 0x23180
movq %r13, %rdi
callq 0x2330
movq %rax, %r13
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x2290
movl 0x210(%rbx), %eax
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
divsd 0x7ee4(%rip), %xmm0     # 0x23180
movq %r13, %rdi
callq 0x2330
movq %rax, %r13
leaq 0x8f6d(%rip), %rsi      # 0x2421b
movl $0x5, %edx
movq %rax, %rdi
callq 0x2290
movl 0x214(%rbx), %eax
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
divsd 0x7eaf(%rip), %xmm0     # 0x23180
movq %r13, %rdi
callq 0x2330
movq %rax, %r13
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0x2290
movl 0x218(%rbx), %eax
xorps %xmm0, %xmm0
cvtsi2sd %rax, %xmm0
divsd 0x7e7e(%rip), %xmm0     # 0x23180
movq %r13, %rdi
callq 0x2330
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpl $0x0, 0x21c(%rbx)
je 0x1b390
movq 0xfc8c(%rip), %r12      # 0x2afd0
leaq 0x8ed6(%rip), %rsi      # 0x24221
movl $0x20, %edx
movq %r12, %rdi
callq 0x2290
movl 0x220(%rbx), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpl $0x0, 0x224(%rbx)
je 0x1b47b
movq 0xfc2c(%rip), %r12      # 0x2afd0
leaq 0x8e97(%rip), %rsi      # 0x24242
movl $0x15, %edx
movq %r12, %rdi
callq 0x2290
movl 0x238(%rbx), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
leaq 0x8e88(%rip), %rsi      # 0x24258
movl $0xf, %edx
movq %rax, %rdi
callq 0x2290
movq 0x228(%rbx), %r13
testq %r13, %r13
je 0x1b401
movq %r13, %rdi
callq 0x20e0
movq %r12, %rdi
movq %r13, %rsi
movq %rax, %rdx
callq 0x2290
jmp 0x1b41c
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %r12, %rdi
addq %rax, %rdi
movl 0x20(%r12,%rax), %esi
orl $0x1, %esi
callq 0x2380
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpb $0x1, (%r14)
jne 0x1b47b
cmpb $0x0, 0x5(%r14)
jne 0x1b47b
cmpb $0x0, 0x6(%r14)
jne 0x1b47b
movq 0xfb71(%rip), %r12      # 0x2afd0
leaq 0x8e02(%rip), %rsi      # 0x24268
movl $0x2f, %edx
movq %r12, %rdi
callq 0x2290
movq %r12, %rdi
callq 0x2100
cmpl $0x0, 0x1b0(%rbx)
je 0x1b527
movq 0xfb41(%rip), %r12      # 0x2afd0
leaq 0x8e02(%rip), %rsi      # 0x24298
movl $0x17, %edx
movq %r12, %rdi
callq 0x2290
movl 0x1c0(%rbx), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
leaq 0x8df5(%rip), %rsi      # 0x242b0
movl $0x7, %edx
movq %rax, %rdi
callq 0x2290
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpb $0x1, (%r14)
jne 0x1b527
cmpb $0x0, 0x7(%r14)
jne 0x1b527
cmpb $0x0, 0x8(%r14)
jne 0x1b527
movq 0xfac5(%rip), %r12      # 0x2afd0
leaq 0x8da6(%rip), %rsi      # 0x242b8
movl $0x28, %edx
movq %r12, %rdi
callq 0x2290
movq %r12, %rdi
callq 0x2100
cmpl $0x0, 0x224(%rbx)
je 0x1b69a
cmpb $0x1, 0x5(%r14)
jne 0x1b67e
cmpb $0x0, 0x3(%r14)
jne 0x1b5f1
movq 0xfa7f(%rip), %r12      # 0x2afd0
leaq 0x8d89(%rip), %rsi      # 0x242e1
movl $0x15, %edx
movq %r12, %rdi
callq 0x2290
movl 0x238(%rbx), %esi
movq %r12, %rdi
callq 0x2160
movq %rax, %r12
leaq 0x8d7a(%rip), %rsi      # 0x242f7
movl $0x13, %edx
movq %rax, %rdi
callq 0x2290
movq 0x228(%rbx), %r13
testq %r13, %r13
je 0x1b5ae
movq %r13, %rdi
callq 0x20e0
movq %r12, %rdi
movq %r13, %rsi
movq %rax, %rdx
callq 0x2290
jmp 0x1b5c9
movq (%r12), %rax
movq -0x18(%rax), %rax
movq %r12, %rdi
addq %rax, %rdi
movl 0x20(%r12,%rax), %esi
orl $0x1, %esi
callq 0x2380
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
movq 0x230(%rbx), %r12
movl 0x238(%rbx), %r13d
leaq 0x10(%rsp), %rbp
movq %rbp, -0x10(%rbp)
leaq 0x8cfc(%rip), %rsi      # 0x2430b
leaq 0x8cf7(%rip), %rdx      # 0x2430d
movq %rsp, %rdi
callq 0x14ece
movq %rsp, %rdx
movq %r12, %rdi
movq %r13, %rsi
callq 0x1914d
movq (%rsp), %rdi
cmpq %rbp, %rdi
je 0x1b63a
callq 0x2210
leaq 0x8ccd(%rip), %rsi      # 0x2430e
movl $0x12, %edx
movq %r15, %rdi
callq 0x2290
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r15, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpl $0x0, 0x224(%rbx)
je 0x1b69a
cmpb $0x1, 0x6(%r14)
jne 0x1b69a
movq 0x230(%rbx), %rdi
movl 0x238(%rbx), %esi
movq %r14, %rdx
callq 0x1a7b3
cmpl $0x0, 0x1b0(%rbx)
je 0x1b6bf
cmpb $0x1, 0x8(%r14)
jne 0x1b6bf
movq 0x1b8(%rbx), %rdi
movl 0x1c0(%rbx), %esi
movq %r14, %rdx
callq 0x1a7b3
cmpb $0x1, 0xa(%r14)
jne 0x1b7da
cmpb $0x1, 0x2dd(%rbx)
jne 0x1b7da
cmpb $0x1, (%r14)
jne 0x1b730
movq 0xf8ec(%rip), %r14      # 0x2afd0
leaq 0x8c36(%rip), %rsi      # 0x24321
movl $0x11, %edx
movq %r14, %rdi
callq 0x2290
movl 0x1e0(%rbx), %esi
movq %r14, %rdi
callq 0x2160
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %r14, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
cmpl $0x0, 0x1e0(%rbx)
je 0x1b7da
movq 0xf88c(%rip), %r14      # 0x2afd0
leaq 0x8be8(%rip), %rsi      # 0x24333
movl $0xc, %edx
movq %r14, %rdi
callq 0x2290
movl 0x1e4(%rbx), %esi
movq %r14, %rdi
callq 0x2160
movq %rax, %r14
leaq 0x8bd0(%rip), %rsi      # 0x24340
movl $0x5, %edx
movq %rax, %rdi
callq 0x2290
movl 0x1e8(%rbx), %esi
movq %r14, %rdi
callq 0x2160
movq %rax, %r14
leaq 0x8bb1(%rip), %rsi      # 0x24346
movl $0x8, %edx
movq %rax, %rdi
callq 0x2290
movl 0x1ec(%rbx), %esi
movq %r14, %rdi
callq 0x2160
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2220
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x2170
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %rbp, %rdi
jne 0x1b80d
jmp 0x1b812
movq %rax, %rbx
jmp 0x1b812
movq %rax, %rbx
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1b812
callq 0x2210
movq %rbx, %rdi
callq 0x23a0