// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/tools/gt_hop.c
// Function: gt_hop_runner
static int gt_hop_runner(GT_UNUSED int argc, GT_UNUSED const char **argv,
    GT_UNUSED int parsed_args, void *tool_arguments, GtError *err)
{
  GtHopArguments *arguments = tool_arguments;
  GtEncseq *encseq;
  GtEncseqLoader *el;
  GtLogger *v_logger;
  int had_err = 0;

  gt_error_check(err);
  gt_assert(arguments);
  v_logger = gt_logger_new(arguments->verbose, GT_LOGGER_DEFLT_PREFIX, stdout);
  gt_logger_log(v_logger, "Correction parameters:");
  gt_logger_log(v_logger, "hmin = "GT_WU"", arguments->hmin);
  gt_logger_log(v_logger, "read-hmin = "GT_WU"", arguments->read_hmin);
  gt_logger_log(v_logger, "altmax = %.2f", arguments->altmax);
  gt_logger_log(v_logger, "cogmin = %.2f", arguments->cogmin);
  gt_logger_log(v_logger, "mapqmin = "GT_WU"", arguments->mapqmin);
  gt_logger_log(v_logger, "qmax = "GT_WU"", arguments->qmax);
  gt_logger_log(v_logger, "covmin = "GT_WU"", arguments->covmin);
  if (arguments->clenmax == ULONG_MAX)
    gt_logger_log(v_logger, "clenmax = unlimited");
  else
    gt_logger_log(v_logger, "clenmax = "GT_WU"", arguments->clenmax);
  gt_logger_log(v_logger, "allow-multiple = %s", arguments->allow_multiple
      ? "yes" : "no");
  if (gt_str_length(arguments->annotation) > 0)
    gt_logger_log(v_logger, "restrict to %s feature in annotation %s",
        gt_str_get(arguments->atype), gt_str_get(arguments->annotation));
  gt_assert(gt_str_length(arguments->encseqinput) > 0);
  el = gt_encseq_loader_new();
  encseq = gt_encseq_loader_load(el, gt_str_get(arguments->encseqinput), err);
  if (encseq == NULL)
  {
    had_err = -1;
  }
  if (!had_err)
  {
    GtHpolProcessor *hpp;
    GtSeqposClassifier *spc = NULL;
    GtSamfileIterator *sfi = NULL;
    GtSamfileEncseqMapping *sem = NULL;
    GtAlignedSegmentsPile *asp = NULL;
    GtFile *outfile = NULL;
    GtAlphabet *dna = gt_alphabet_new_dna();
    GtSeqIterator **readset_iters = NULL;
    GtStrArray **infiles = NULL;
    GtFile **outfiles = NULL;
    GtUword nfiles = 0, i;
    hpp = gt_hpol_processor_new(encseq, arguments->hmin);
    if (gt_str_length(arguments->map) > 0)
    {
      if (!arguments->map_is_sam)
        sfi = gt_samfile_iterator_new_bam(gt_str_get(arguments->map), dna, err);
      else
        sfi = gt_samfile_iterator_new_sam(gt_str_get(arguments->map), dna,
            NULL, err);
      if (sfi == NULL)
        had_err = -1;
      sem = gt_samfile_encseq_mapping_new(sfi, encseq, err);
      if (sem == NULL)
        had_err = -1;
      if (!had_err)
      {
        asp = gt_aligned_segments_pile_new(sfi, sem);
        if (!arguments->chk)
          gt_hpol_processor_enable_segments_hlen_adjustment(hpp, asp,
              arguments->read_hmin, arguments->qmax, arguments->altmax,
              arguments->cogmin, arguments->mapqmin, arguments->covmin,
              arguments->allow_partial, arguments->allow_multiple,
              arguments->clenmax);
        else
          gt_hpol_processor_enable_aligned_segments_refregionscheck(hpp, asp);
        if (arguments->stats || arguments->state_of_truth)
          gt_hpol_processor_enable_statistics_output(hpp,
              arguments->state_of_truth, NULL);
        if (!had_err && gt_str_length(arguments->outfilename) > 0)
        {
          outfile = gt_file_new(gt_str_get(arguments->outfilename), "w", err);
          if (outfile == NULL)
            had_err = -1;
          else
            gt_hpol_processor_enable_direct_segments_output(hpp, outfile);
        }
        else if (!had_err)
        {
          nfiles = gt_str_array_size(arguments->readset);
          if (!had_err && nfiles > 0)
          {
            GtStr *outfn = gt_str_new();
            infiles = gt_calloc((size_t)nfiles, sizeof (*infiles));
            outfiles = gt_calloc((size_t)nfiles, sizeof (*outfiles));
            readset_iters = gt_malloc(sizeof (*readset_iters) * nfiles);
            for (i = 0; i < nfiles && !had_err; i++)
            {
              char *bn;
              gt_str_set(outfn, gt_str_get(arguments->outprefix));
              infiles[i] = gt_str_array_new();
              gt_str_array_add_cstr(infiles[i],
                  gt_str_array_get(arguments->readset, i));
              bn = gt_basename(gt_str_array_get(arguments->readset, i));
              gt_str_append_cstr(outfn, bn);
              outfiles[i] = gt_file_new(gt_str_get(outfn), "w", err);
              if (outfiles[i] == NULL)
                had_err = -1;
              readset_iters[i] =
                gt_seq_iterator_fastq_new(infiles[i], err);
              if (readset_iters[i] == NULL)
                had_err = -1;
              gt_seq_iterator_fastq_relax_check_of_quality_description(
                  (GtSeqIteratorFastQ*)readset_iters[i]);
              gt_free(bn);
            }
            if (!had_err)
              gt_hpol_processor_enable_sorted_segments_output(hpp, nfiles,
                  readset_iters, outfiles);
            gt_str_delete(outfn);
          }
        }
      }
    }
    if (!had_err && gt_str_length(arguments->annotation) > 0)
    {
      spc = gt_seqpos_classifier_new(gt_str_get(arguments->annotation),
          gt_str_get(arguments->atype));
      gt_hpol_processor_restrict_to_feature_type(hpp, spc);
    }
    if (!had_err)
      had_err = gt_hpol_processor_run(hpp, v_logger, err);
    gt_aligned_segments_pile_delete(asp);
    gt_samfile_iterator_delete(sfi);
    gt_samfile_encseq_mapping_delete(sem);
    gt_seqpos_classifier_delete(spc);
    gt_file_delete(outfile);
    gt_hpol_processor_delete(hpp);
    for (i = 0; i < nfiles; i++)
    {
      gt_assert(infiles != NULL);
      gt_assert(readset_iters != NULL);
      gt_assert(outfiles != NULL);
      gt_str_array_delete(infiles[i]);
      gt_seq_iterator_delete(readset_iters[i]);
      gt_file_delete(outfiles[i]);
    }
    gt_free(infiles);
    gt_free(outfiles);
    gt_free(readset_iters);
    gt_alphabet_delete(dna);
  }
  gt_logger_delete(v_logger);
  gt_encseq_delete(encseq);
  gt_encseq_loader_delete(el);
  return had_err;
}

// Assembly:
subq $0x118, %rsp            # imm = 0x118
movl %edi, 0x114(%rsp)
movq %rsi, 0x108(%rsp)
movl %edx, 0x104(%rsp)
movq %rcx, 0xf8(%rsp)
movq %r8, 0xf0(%rsp)
movq 0xf8(%rsp), %rax
movq %rax, 0xe8(%rsp)
movl $0x0, 0xcc(%rsp)
cmpq $0x0, 0xf0(%rsp)
je 0x3d3ce
movq 0xf0(%rsp), %rdi
callq 0xd8a60
testb $0x1, %al
jne 0x3d396
jmp 0x3d3ce
movq 0x5fec03(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x4d8c6c(%rip), %rsi    # 0x516013
leaq 0x4d8e11(%rip), %rdx    # 0x5161bf
leaq 0x4e2c02(%rip), %rcx    # 0x51ffb7
leaq 0x4e1f19(%rip), %r8     # 0x51f2d5
movl $0x189, %r9d            # imm = 0x189
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x3d3d0
jmp 0x3d3d2
cmpq $0x0, 0xe8(%rsp)
jne 0x3d415
movq 0x5febbc(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x4d8c25(%rip), %rsi    # 0x516013
leaq 0x53d76a(%rip), %rdx    # 0x57ab5f
leaq 0x4e2bbb(%rip), %rcx    # 0x51ffb7
leaq 0x4e1ed2(%rip), %r8     # 0x51f2d5
movl $0x18a, %r9d            # imm = 0x18A
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x3d417
movq 0xe8(%rsp), %rax
movb 0x60(%rax), %al
movq 0x5feb0f(%rip), %rcx    # 0x63bf38
movq (%rcx), %rdx
leaq 0x4da4b9(%rip), %rsi    # 0x5178ec
andb $0x1, %al
movzbl %al, %edi
callq 0xe7870
movq %rax, 0xd0(%rsp)
movq 0xd0(%rsp), %rdi
leaq 0x4e2b71(%rip), %rsi    # 0x51ffc5
movb $0x0, %al
callq 0xe7cd0
movq 0xd0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movq 0x30(%rax), %rdx
leaq 0x4e2b6b(%rip), %rsi    # 0x51ffe1
movb $0x0, %al
callq 0xe7cd0
movq 0xd0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movq 0x40(%rax), %rdx
leaq 0x4e2b44(%rip), %rsi    # 0x51ffdc
movb $0x0, %al
callq 0xe7cd0
movq 0xd0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movsd 0x70(%rax), %xmm0
leaq 0x4e2b31(%rip), %rsi    # 0x51ffec
movb $0x1, %al
callq 0xe7cd0
movq 0xd0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movsd 0x78(%rax), %xmm0
leaq 0x4e2b1c(%rip), %rsi    # 0x51fffa
movb $0x1, %al
callq 0xe7cd0
movq 0xd0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movq 0x50(%rax), %rdx
leaq 0x4e2b08(%rip), %rsi    # 0x520008
movb $0x0, %al
callq 0xe7cd0
movq 0xd0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movq 0x58(%rax), %rdx
leaq 0x4e2af4(%rip), %rsi    # 0x520016
movb $0x0, %al
callq 0xe7cd0
movq 0xd0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movq 0x48(%rax), %rdx
leaq 0x4e2add(%rip), %rsi    # 0x520021
movb $0x0, %al
callq 0xe7cd0
movq 0xe8(%rsp), %rax
cmpq $-0x1, 0x38(%rax)
jne 0x3d572
movq 0xd0(%rsp), %rdi
leaq 0x4e2ac5(%rip), %rsi    # 0x52002e
movb $0x0, %al
callq 0xe7cd0
jmp 0x3d594
movq 0xd0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movq 0x38(%rax), %rdx
leaq 0x4e2ab5(%rip), %rsi    # 0x520042
movb $0x0, %al
callq 0xe7cd0
movq 0xd0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movb 0x65(%rax), %cl
leaq 0x55760d(%rip), %rdx    # 0x594bbb
leaq 0x51c1d8(%rip), %rax    # 0x55978d
testb $0x1, %cl
cmovneq %rax, %rdx
leaq 0x4e2a8d(%rip), %rsi    # 0x520050
movb $0x0, %al
callq 0xe7cd0
movq 0xe8(%rsp), %rax
movq 0x8(%rax), %rdi
callq 0x11dfa0
cmpq $0x0, %rax
jbe 0x3d630
movq 0xd0(%rsp), %rax
movq %rax, 0x48(%rsp)
movq 0xe8(%rsp), %rax
movq 0x20(%rax), %rdi
callq 0x11dee0
movq %rax, 0x50(%rsp)
movq 0xe8(%rsp), %rax
movq 0x8(%rax), %rdi
callq 0x11dee0
movq 0x48(%rsp), %rdi
movq 0x50(%rsp), %rdx
movq %rax, %rcx
leaq 0x4e2a3b(%rip), %rsi    # 0x520064
movb $0x0, %al
callq 0xe7cd0
jmp 0x3d632
movq 0xe8(%rsp), %rax
movq (%rax), %rdi
callq 0x11dfa0
cmpq $0x0, %rax
ja 0x3d680
movq 0x5fe951(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x4d89ba(%rip), %rsi    # 0x516013
leaq 0x4e2a2c(%rip), %rdx    # 0x52008c
leaq 0x4e2950(%rip), %rcx    # 0x51ffb7
leaq 0x4e1c67(%rip), %r8     # 0x51f2d5
movl $0x19d, %r9d            # imm = 0x19D
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x3d682
callq 0xb7a40
movq %rax, 0xd8(%rsp)
movq 0xd8(%rsp), %rax
movq %rax, 0x40(%rsp)
movq 0xe8(%rsp), %rax
movq (%rax), %rdi
callq 0x11dee0
movq 0x40(%rsp), %rdi
movq %rax, %rsi
movq 0xf0(%rsp), %rdx
callq 0xb7aa0
movq %rax, 0xe0(%rsp)
cmpq $0x0, 0xe0(%rsp)
jne 0x3d6df
movl $0xffffffff, 0xcc(%rsp) # imm = 0xFFFFFFFF
cmpl $0x0, 0xcc(%rsp)
jne 0x3df4c
movq $0x0, 0xb8(%rsp)
movq $0x0, 0xb0(%rsp)
movq $0x0, 0xa8(%rsp)
movq $0x0, 0xa0(%rsp)
movq $0x0, 0x98(%rsp)
callq 0x7e4b0
movq %rax, 0x90(%rsp)
movq $0x0, 0x88(%rsp)
movq $0x0, 0x80(%rsp)
movq $0x0, 0x78(%rsp)
movq $0x0, 0x70(%rsp)
movq 0xe0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movq 0x30(%rax), %rsi
callq 0x18d830
movq %rax, 0xc0(%rsp)
movq 0xe8(%rsp), %rax
movq 0x10(%rax), %rdi
callq 0x11dfa0
cmpq $0x0, %rax
jbe 0x3dccc
movq 0xe8(%rsp), %rax
testb $0x1, 0x61(%rax)
jne 0x3d7dd
movq 0xe8(%rsp), %rax
movq 0x10(%rax), %rdi
callq 0x11dee0
movq %rax, %rdi
movq 0x90(%rsp), %rsi
movq 0xf0(%rsp), %rdx
callq 0x1cf9b0
movq %rax, 0xb0(%rsp)
jmp 0x3d812
movq 0xe8(%rsp), %rax
movq 0x10(%rax), %rdi
callq 0x11dee0
movq %rax, %rdi
movq 0x90(%rsp), %rsi
movq 0xf0(%rsp), %rcx
xorl %eax, %eax
movl %eax, %edx
callq 0x1cf9f0
movq %rax, 0xb0(%rsp)
cmpq $0x0, 0xb0(%rsp)
jne 0x3d828
movl $0xffffffff, 0xcc(%rsp) # imm = 0xFFFFFFFF
movq 0xb0(%rsp), %rdi
movq 0xe0(%rsp), %rsi
movq 0xf0(%rsp), %rdx
callq 0x1cf2c0
movq %rax, 0xa8(%rsp)
cmpq $0x0, 0xa8(%rsp)
jne 0x3d863
movl $0xffffffff, 0xcc(%rsp) # imm = 0xFFFFFFFF
cmpl $0x0, 0xcc(%rsp)
jne 0x3dcca
movq 0xb0(%rsp), %rdi
movq 0xa8(%rsp), %rsi
callq 0x1292c0
movq %rax, 0xa0(%rsp)
movq 0xe8(%rsp), %rax
testb $0x1, 0x62(%rax)
jne 0x3d943
movq 0xc0(%rsp), %rdi
movq 0xa0(%rsp), %rsi
movq 0xe8(%rsp), %rax
movq 0x40(%rax), %rdx
movq 0xe8(%rsp), %rax
movq 0x58(%rax), %rcx
movq 0xe8(%rsp), %rax
movsd 0x70(%rax), %xmm0
movq 0xe8(%rsp), %rax
movsd 0x78(%rax), %xmm1
movq 0xe8(%rsp), %rax
movq 0x50(%rax), %r8
movq 0xe8(%rsp), %rax
movq 0x48(%rax), %r9
movq 0xe8(%rsp), %rax
movb 0x64(%rax), %r11b
movq 0xe8(%rsp), %rax
movb 0x65(%rax), %r10b
movq 0xe8(%rsp), %rax
movq 0x38(%rax), %rax
andb $0x1, %r11b
andb $0x1, %r10b
movzbl %r11b, %r11d
movl %r11d, (%rsp)
movzbl %r10b, %r10d
movl %r10d, 0x8(%rsp)
movq %rax, 0x10(%rsp)
callq 0x18df90
jmp 0x3d958
movq 0xc0(%rsp), %rdi
movq 0xa0(%rsp), %rsi
callq 0x18db70
movq 0xe8(%rsp), %rax
testb $0x1, 0x63(%rax)
jne 0x3d974
movq 0xe8(%rsp), %rax
testb $0x1, 0x6a(%rax)
je 0x3d995
movq 0xc0(%rsp), %rdi
movq 0xe8(%rsp), %rax
movb 0x6a(%rax), %al
xorl %ecx, %ecx
movl %ecx, %edx
andb $0x1, %al
movzbl %al, %esi
callq 0x18e750
cmpl $0x0, 0xcc(%rsp)
jne 0x3da18
movq 0xe8(%rsp), %rax
movq 0x18(%rax), %rdi
callq 0x11dfa0
cmpq $0x0, %rax
jbe 0x3da18
movq 0xe8(%rsp), %rax
movq 0x18(%rax), %rdi
callq 0x11dee0
movq %rax, %rdi
movq 0xf0(%rsp), %rdx
leaq 0x5284ec(%rip), %rsi    # 0x565ec5
callq 0xdd320
movq %rax, 0x98(%rsp)
cmpq $0x0, 0x98(%rsp)
jne 0x3d9fe
movl $0xffffffff, 0xcc(%rsp) # imm = 0xFFFFFFFF
jmp 0x3da13
movq 0xc0(%rsp), %rdi
movq 0x98(%rsp), %rsi
callq 0x18e600
jmp 0x3dcc8
cmpl $0x0, 0xcc(%rsp)
jne 0x3dcc6
movq 0xe8(%rsp), %rax
movq 0x80(%rax), %rdi
callq 0x11fcc0
movq %rax, 0x70(%rsp)
cmpl $0x0, 0xcc(%rsp)
jne 0x3dcc4
cmpq $0x0, 0x70(%rsp)
jbe 0x3dcc4
callq 0x11d4a0
movq %rax, 0x60(%rsp)
movq 0x70(%rsp), %rdi
movl $0x8, %esi
leaq 0x4e1861(%rip), %rdx    # 0x51f2d5
movl $0x1da, %ecx            # imm = 0x1DA
callq 0xe83c0
movq %rax, 0x80(%rsp)
movq 0x70(%rsp), %rdi
movl $0x8, %esi
leaq 0x4e183e(%rip), %rdx    # 0x51f2d5
movl $0x1db, %ecx            # imm = 0x1DB
callq 0xe83c0
movq %rax, 0x78(%rsp)
movq 0x70(%rsp), %rdi
shlq $0x3, %rdi
leaq 0x4e181f(%rip), %rsi    # 0x51f2d5
movl $0x1dc, %edx            # imm = 0x1DC
callq 0xe80f0
movq %rax, 0x88(%rsp)
movq $0x0, 0x68(%rsp)
movq 0x68(%rsp), %rcx
xorl %eax, %eax
cmpq 0x70(%rsp), %rcx
movb %al, 0x3f(%rsp)
jae 0x3daf4
cmpl $0x0, 0xcc(%rsp)
setne %al
xorb $-0x1, %al
movb %al, 0x3f(%rsp)
movb 0x3f(%rsp), %al
testb $0x1, %al
jne 0x3db01
jmp 0x3dc91
movq 0x60(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0xe8(%rsp), %rax
movq 0x28(%rax), %rdi
callq 0x11dee0
movq 0x28(%rsp), %rdi
movq %rax, %rsi
callq 0x11d650
callq 0x11f5c0
movq %rax, %rdx
movq 0x80(%rsp), %rax
movq 0x68(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x80(%rsp), %rax
movq 0x68(%rsp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, 0x30(%rsp)
movq 0xe8(%rsp), %rax
movq 0x80(%rax), %rdi
movq 0x68(%rsp), %rsi
callq 0x11f8c0
movq 0x30(%rsp), %rdi
movq %rax, %rsi
callq 0x11f720
movq 0xe8(%rsp), %rax
movq 0x80(%rax), %rdi
movq 0x68(%rsp), %rsi
callq 0x11f8c0
movq %rax, %rdi
callq 0x83ee0
movq %rax, 0x58(%rsp)
movq 0x60(%rsp), %rdi
movq 0x58(%rsp), %rsi
callq 0x11d550
movq 0x60(%rsp), %rdi
callq 0x11dee0
movq %rax, %rdi
movq 0xf0(%rsp), %rdx
leaq 0x5282f6(%rip), %rsi    # 0x565ec5
callq 0xdd320
movq %rax, %rdx
movq 0x78(%rsp), %rax
movq 0x68(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x78(%rsp), %rax
movq 0x68(%rsp), %rcx
cmpq $0x0, (%rax,%rcx,8)
jne 0x3dc01
movl $0xffffffff, 0xcc(%rsp) # imm = 0xFFFFFFFF
movq 0x80(%rsp), %rax
movq 0x68(%rsp), %rcx
movq (%rax,%rcx,8), %rdi
movq 0xf0(%rsp), %rsi
callq 0x1126d0
movq %rax, %rdx
movq 0x88(%rsp), %rax
movq 0x68(%rsp), %rcx
movq %rdx, (%rax,%rcx,8)
movq 0x88(%rsp), %rax
movq 0x68(%rsp), %rcx
cmpq $0x0, (%rax,%rcx,8)
jne 0x3dc52
movl $0xffffffff, 0xcc(%rsp) # imm = 0xFFFFFFFF
movq 0x88(%rsp), %rax
movq 0x68(%rsp), %rcx
movq (%rax,%rcx,8), %rdi
callq 0x112680
movq 0x58(%rsp), %rdi
leaq 0x4e1661(%rip), %rsi    # 0x51f2d5
movl $0x1ef, %edx            # imm = 0x1EF
callq 0xe88c0
movq 0x68(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x68(%rsp)
jmp 0x3dad1
cmpl $0x0, 0xcc(%rsp)
jne 0x3dcba
movq 0xc0(%rsp), %rdi
movq 0x70(%rsp), %rsi
movq 0x88(%rsp), %rdx
movq 0x78(%rsp), %rcx
callq 0x18e680
movq 0x60(%rsp), %rdi
callq 0x11f560
jmp 0x3dcc6
jmp 0x3dcc8
jmp 0x3dcca
jmp 0x3dccc
cmpl $0x0, 0xcc(%rsp)
jne 0x3dd3e
movq 0xe8(%rsp), %rax
movq 0x8(%rax), %rdi
callq 0x11dfa0
cmpq $0x0, %rax
jbe 0x3dd3e
movq 0xe8(%rsp), %rax
movq 0x8(%rax), %rdi
callq 0x11dee0
movq %rax, 0x20(%rsp)
movq 0xe8(%rsp), %rax
movq 0x20(%rax), %rdi
callq 0x11dee0
movq 0x20(%rsp), %rdi
movq %rax, %rsi
callq 0x1d5ac0
movq %rax, 0xb8(%rsp)
movq 0xc0(%rsp), %rdi
movq 0xb8(%rsp), %rsi
callq 0x18dac0
cmpl $0x0, 0xcc(%rsp)
jne 0x3dd6c
movq 0xc0(%rsp), %rdi
movq 0xd0(%rsp), %rsi
movq 0xf0(%rsp), %rdx
callq 0x18ea00
movl %eax, 0xcc(%rsp)
movq 0xa0(%rsp), %rdi
callq 0x129dd0
movq 0xb0(%rsp), %rdi
callq 0x1cf910
movq 0xa8(%rsp), %rdi
callq 0x1cf670
movq 0xb8(%rsp), %rdi
callq 0x1d6140
movq 0x98(%rsp), %rdi
callq 0xde430
movq 0xc0(%rsp), %rdi
callq 0x18f990
movq $0x0, 0x68(%rsp)
movq 0x68(%rsp), %rax
cmpq 0x70(%rsp), %rax
jae 0x3def7
jmp 0x3ddd5
cmpq $0x0, 0x80(%rsp)
jne 0x3de18
movq 0x5fe1b9(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x4d8222(%rip), %rsi    # 0x516013
leaq 0x4e22be(%rip), %rdx    # 0x5200b6
leaq 0x4e21b8(%rip), %rcx    # 0x51ffb7
leaq 0x4e14cf(%rip), %r8     # 0x51f2d5
movl $0x209, %r9d            # imm = 0x209
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x3de1a
jmp 0x3de1c
cmpq $0x0, 0x88(%rsp)
jne 0x3de5f
movq 0x5fe172(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x4d81db(%rip), %rsi    # 0x516013
leaq 0x4e2287(%rip), %rdx    # 0x5200c6
leaq 0x4e2171(%rip), %rcx    # 0x51ffb7
leaq 0x4e1488(%rip), %r8     # 0x51f2d5
movl $0x20a, %r9d            # imm = 0x20A
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x3de61
jmp 0x3de63
cmpq $0x0, 0x78(%rsp)
jne 0x3dea3
movq 0x5fe12e(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x4d8197(%rip), %rsi    # 0x516013
leaq 0x4e2259(%rip), %rdx    # 0x5200dc
leaq 0x4e212d(%rip), %rcx    # 0x51ffb7
leaq 0x4e1444(%rip), %r8     # 0x51f2d5
movl $0x20b, %r9d            # imm = 0x20B
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x3dea5
movq 0x80(%rsp), %rax
movq 0x68(%rsp), %rcx
movq (%rax,%rcx,8), %rdi
callq 0x11fd20
movq 0x88(%rsp), %rax
movq 0x68(%rsp), %rcx
movq (%rax,%rcx,8), %rdi
callq 0x111c10
movq 0x78(%rsp), %rax
movq 0x68(%rsp), %rcx
movq (%rax,%rcx,8), %rdi
callq 0xde430
movq 0x68(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x68(%rsp)
jmp 0x3ddc3
movq 0x80(%rsp), %rdi
leaq 0x4e13cf(%rip), %rsi    # 0x51f2d5
movl $0x210, %edx            # imm = 0x210
callq 0xe88c0
movq 0x78(%rsp), %rdi
leaq 0x4e13b9(%rip), %rsi    # 0x51f2d5
movl $0x211, %edx            # imm = 0x211
callq 0xe88c0
movq 0x88(%rsp), %rdi
leaq 0x4e13a0(%rip), %rsi    # 0x51f2d5
movl $0x212, %edx            # imm = 0x212
callq 0xe88c0
movq 0x90(%rsp), %rdi
callq 0x7e3d0
movq 0xd0(%rsp), %rdi
callq 0xe7ed0
movq 0xe0(%rsp), %rdi
callq 0xae070
movq 0xd8(%rsp), %rdi
callq 0xb7e50
movl 0xcc(%rsp), %eax
addq $0x118, %rsp            # imm = 0x118
retq
nopw %cs:(%rax,%rax)
nopl (%rax)