// File: /workspace/github_c_makefile_star2_O2/genometools[P]genometools/src/match/firstcodes.c
// Function: storefirstcodes_getencseqkmers_twobitencoding
int storefirstcodes_getencseqkmers_twobitencoding(const GtEncseq *encseq,
                                                  unsigned int kmersize,
                                                  unsigned int numofparts,
                                                  GtUword maximumspace,
                                                  unsigned int minmatchlength,
                                                  bool withsuftabcheck,
                                                  bool onlyaccumulation,
                                                  bool onlyallfirstcodes,
                                                  GT_UNUSED
                                                  unsigned int addbscache_depth,
                                                  GtUword phase2extra,
                    GT_UNUSED bool radixsmall,      /* set to true */
                    GT_UNUSED unsigned int radixparts, /* set to 2U */
                                                  GtFirstcodesintervalprocess
                                                    itvprocess,
                                                 GtFirstcodesintervalprocess_end
                                                     itvprocess_end,
                                                  void *itvprocessdatatab,
                                                  GtLogger *logger,
                                                  GtError *err)
{
  GtTimer *timer = NULL;
  GtFirstcodesinfo fci;
  size_t suftab_size = 0;
  unsigned int part, threadcount;
  GtUword maxbucketsize, suftabentries = 0, largest_width,
                totallength = gt_encseq_total_length(encseq),
                maxseqlength = gt_encseq_max_seq_length(encseq);
  GtSfxmappedrangelist *sfxmrlist = NULL;
  GtSuftabparts *suftabparts = NULL;
  GtShortreadsortworkinfo **srswtab = NULL;
  const GtReadmode readmode = GT_READMODE_FORWARD;
  bool haserr = false;
#ifdef GT_THREADS_ENABLED
  const unsigned int threads = gt_jobs;
#else
  const unsigned int threads = 1U;
#endif

  if (maxseqlength < (GtUword) minmatchlength)
  {
    return 0;
  }
  if (gt_firstcodes_init(&fci,
                         encseq,
                         kmersize,
                         withsuftabcheck,
                         minmatchlength,
                         err) != 0)
  {
    haserr = true;
  }
  if (!haserr)
  {
    sfxmrlist = gt_Sfxmappedrangelist_new();
    if (gt_showtime_enabled())
    {
      timer = gt_timer_new_with_progress_description("to collect initial "
                                                     "prefixes");
      gt_timer_start(timer);
    }
    gt_firstcodes_collectcodes(&fci,
                               encseq,
                               readmode,
                               kmersize,
                               minmatchlength,
                               addbscache_depth,
                               onlyallfirstcodes,
                               logger,
                               timer);
    if (fci.differentcodes > 0 && onlyallfirstcodes)
    {
      gt_free(fci.allfirstcodes);
      fci.allfirstcodes = NULL;
      gt_marksubstring_delete(fci.buf.markprefix,true);
      gt_marksubstring_delete(fci.buf.marksuffix,true);
      gt_firstcodes_countocc_delete(fci.fcsl,&fci.tab);
      gt_firstcodes_binsearchcache_delete(fci.binsearchcache,fci.fcsl);
      gt_firstcodes_spacelog_delete(fci.fcsl);
      gt_seqnumrelpos_delete(fci.buf.snrp);
      gt_Sfxmappedrangelist_delete(sfxmrlist);
      fci.binsearchcache = NULL;
      if (timer != NULL)
      {
        gt_timer_delete(timer);
      }
      return 0;
    }
    fci.flushcount = 0;
    fci.codebuffer_total = 0;
    if (gt_firstcodes_allocspace(&fci,
                                 numofparts,
                                 maximumspace,
                                 phase2extra,
                                 err) != 0)
    {
      haserr = true;
    }
  }
  fci.buf.nextfree = 0;
  if (!haserr)
  {
    gt_firstcodes_accumulatecounts_run(&fci,
                                       encseq,
                                       kmersize,
                                       minmatchlength,
                                       logger,
                                       timer);
    suftabentries = fci.firstcodehits + fci.numofsequences;
    if (timer != NULL)
    {
      gt_timer_show_progress(timer,"to compute partial sums",stdout);
    }
    maxbucketsize = gt_firstcodes_partialsums(fci.fcsl,&fci.tab,
                                              fci.allfirstcodes,suftabentries);
    gt_firstcodes_restore_from_differences(&fci);
    gt_logger_log(logger,"maximum space after computing partial sums: %.2f MB",
                  GT_MEGABYTES(gt_firstcodes_spacelog_total(fci.fcsl)));
    gt_logger_log(logger,"maxbucketsize="GT_WU"",maxbucketsize);
    gt_firstcodes_map_sections(&fci,sfxmrlist);
    if (numofparts == 0 || maximumspace > 0)
    {
      int retval = gt_firstcodes_auto_parts(&fci,
                                            sfxmrlist,
                                            numofparts,
                                            &maximumspace,
                                            maxbucketsize,
                                            kmersize,
                                            totallength,
                                            maxseqlength,
                                            suftabentries,
                                            phase2extra,
                                            err);
      if (retval < 0)
      {
        haserr = true;
      } else
      {
        numofparts = (unsigned int) retval;
      }
    }
  }
  if (!haserr)
  {
    gt_assert(numofparts > 0);
    suftabparts = gt_suftabparts_new(numofparts,
                                     NULL,
                                     (GtCodetype) 1,
                                     (GtCodetype) 0,
                                     &fci.tab,
                                     sfxmrlist,
                                     suftabentries,
                                     0,
                                     logger);
    gt_assert(suftabparts != NULL);
    gt_suftabparts_showallrecords(suftabparts,true);
    gt_assert(fci.allfirstcodes[fci.differentcodes - 1] ==
              gt_firstcodes_idx2code(&fci,
                                     gt_suftabparts_maxindex_last(suftabparts))
             );
    gt_Sfxmappedrangelist_delete(sfxmrlist);
    sfxmrlist = NULL;
    gt_firstcodes_samples_delete(fci.fcsl,&fci.tab);
    gt_assert(fci.buf.nextfree == 0);
    gt_firstcodes_handle_tmp(&fci,suftabparts);
    largest_width = gt_suftabparts_largest_width(suftabparts);
    fci.spmsuftab = gt_spmsuftab_new(largest_width,
                                     totallength,
                                     fci.bitsforposref,
                                     logger);
    suftab_size = gt_spmsuftab_requiredspace(largest_width,totallength,
                                             fci.bitsforposref);
    GT_FCI_ADDWORKSPACE(fci.fcsl,"suftab",suftab_size);
    fci.buf.flush_function = gt_firstcodes_insertsuffixes_flush;
    srswtab = gt_malloc(sizeof (*srswtab) * threads);
    for (threadcount = 0; threadcount < threads; threadcount++)
    {
      srswtab[threadcount]
        = gt_shortreadsort_new(maxbucketsize,maxseqlength - kmersize,
                               readmode,true,false);
    }
    GT_FCI_ADDWORKSPACE(fci.fcsl,"shortreadsort",
                        threads * gt_shortreadsort_size(true,maxbucketsize,
                                                        maxseqlength-kmersize));
    gt_firstcodes_allocsize_for_insertion(&fci,
                                          maximumspace,
                                          suftabparts,
                                          phase2extra);
    if (!onlyaccumulation)
    {
      fci.radixsort_codepos = gt_radixsort_new_ulongpair(fci.buf.allocated);
      GT_FCI_ADDWORKSPACE(fci.fcsl,"radixsort_codepos",
                          gt_radixsort_size(fci.radixsort_codepos));
      fci.buf.spaceGtUwordPair
        = gt_radixsort_space_ulongpair(fci.radixsort_codepos);
    }
    fci.codebuffer_total = 0;
    fci.flushcount = 0;
    for (part = 0; !haserr && !onlyaccumulation &&
                   part < gt_suftabparts_numofparts(suftabparts); part++)
    {
      if (gt_firstcodes_process_part(&fci,
                                     encseq,
                                     readmode,
                                     kmersize,
                                     minmatchlength,
                                     suftabparts,
                                     part,
                                     maximumspace,
                                     threads,
                                     suftabentries,
                                     withsuftabcheck,
                                     srswtab,
                                     itvprocess,
                                     itvprocess_end,
                                     itvprocessdatatab,
                                     logger,
                                     timer,
                                     err) != 0)
      {
        haserr = true;
      }
    }
  }
  if (timer != NULL)
  {
    gt_timer_show_progress(timer, "cleaning up",stdout);
  }
  if (!haserr)
  {
    GT_FCI_SUBTRACTWORKSPACE(fci.fcsl,"shortreadsort");
  }
  if (!haserr && !onlyaccumulation && srswtab != NULL)
  {
    GtUword sumofstoredvalues = 0;

    for (threadcount=0; threadcount<threads; threadcount++)
    {
      sumofstoredvalues +=
        gt_shortreadsort_sumofstoredvalues(srswtab[threadcount]);
    }
    gt_logger_log(logger,"average short read depth is %.2f",
                      (double) sumofstoredvalues/fci.firstcodeposhits);
  }
  if (!haserr)
  {
    if (!onlyaccumulation)
    {
      gt_assert(fci.flushcount > 0);
      gt_logger_log(logger,"firstcodeposhits="GT_WU" (%.3f%% of all suffixes), "
                           "%u rounds (avg length "GT_WU")",
                           fci.firstcodeposhits,
                           100.0 * (double) fci.firstcodeposhits/totallength,
                           fci.flushcount,
                           fci.codebuffer_total/fci.flushcount);
      gt_assert(fci.firstcodeposhits == suftabentries);
    } else
    {
      gt_firstcode_delete_before_end(&fci);
    }
  }
  if (srswtab != NULL)
  {
    for (threadcount=0; threadcount<threads; threadcount++)
    {
      gt_shortreadsort_delete(srswtab[threadcount]);
    }
    gt_free(srswtab);
  }
  if (haserr)
  {
    gt_firstcode_delete_before_end(&fci);
    gt_free(fci.allfirstcodes);
    fci.allfirstcodes = NULL;
    gt_Sfxmappedrangelist_delete(sfxmrlist);
    fci.buf.spaceGtUword = NULL;
    gt_radixsort_delete(fci.radixsort_code);
  }
  gt_suftabparts_delete(suftabparts);
  gt_firstcodes_countocc_delete(fci.fcsl,&fci.tab);
  gt_firstcodes_tab_delete(fci.fcsl,&fci.tab);
  if (fci.spmsuftab != NULL)
  {
    gt_spmsuftab_delete(fci.spmsuftab);
    GT_FCI_SUBTRACTWORKSPACE(fci.fcsl,"suftab");
    fci.spmsuftab = NULL;
  }
  gt_Sfxmappedrange_delete(fci.mappedleftborder);
  if (fci.mappedallfirstcodes == NULL && fci.allfirstcodes != NULL)
  {
    GT_FCI_SUBTRACTSPLITSPACE(fci.fcsl,"allfirstcodes");
  }
  gt_Sfxmappedrange_delete(fci.mappedallfirstcodes);
  gt_seqnumrelpos_delete(fci.buf.snrp);
  gt_firstcodes_spacelog_stop_diff(fci.fcsl);
  GT_FCI_SUBTRACTWORKSPACE(fci.fcsl,"encseq");
  gt_firstcodes_spacelog_delete(fci.fcsl);
  if (timer != NULL)
  {
    gt_timer_show_progress_final(timer, stdout);
    gt_timer_delete(timer);
  }
  return haserr ? -1 : 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x2e8, %rsp            # imm = 0x2E8
movl %r9d, 0xac(%rsp)
movl %r8d, %ebp
movq %rcx, %r15
movl %edx, 0xb0(%rsp)
movl %esi, %r13d
movq %rdi, %r14
callq 0x7055e
movq %rax, %rbx
movq %r14, %rdi
callq 0x755c5
movl %ebp, 0xa8(%rsp)
movl %ebp, %r12d
xorl %ebp, %ebp
movq %rax, 0x98(%rsp)
cmpq %r12, %rax
jb 0x15809b
leaq 0x2e1508(%rip), %rax    # 0x438dc8
movl (%rax), %eax
movq %rax, 0x88(%rsp)
movq %r14, %rdi
callq 0x755c5
movq %r14, %rdi
movq %rax, %r14
movq %rdi, 0x80(%rsp)
callq 0x7055e
movq %rax, %xmm1
punpckldq 0x18ffee(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x18fff6(%rip), %xmm1   # 0x2e78f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
callq 0x175e0
addsd 0x19e545(%rip), %xmm0   # 0x2f5e58
callq 0x17cc0
cvttsd2si %xmm0, %rax
pushq $0x8
popq %rsi
cmpl $0x8, %eax
jb 0x157937
addl $-0x8, %eax
cmpl $0x9, %eax
cmovael %eax, %esi
movl %esi, 0x12c(%rsp)
jmp 0x157951
movl %r13d, %eax
shrl %eax
cmpl $0x8, %eax
cmovbl %eax, %esi
movl %esi, 0x12c(%rsp)
movl %esi, %edx
cmpl $0x4, %r13d
jb 0x157954
leal -0x1(%rsi), %edx
movl %edx, 0x128(%rsp)
leal (%rdx,%rsi), %eax
cmpl %r13d, %eax
movq %r15, 0x78(%rsp)
movl %r13d, 0x6c(%rsp)
movq %rbx, 0x288(%rsp)
jbe 0x1579a5
movl %edx, %eax
movl %r13d, %edx
shrl %edx
testb $0x1, %al
jne 0x157992
movl %edx, 0x12c(%rsp)
movl %edx, 0x128(%rsp)
movl %edx, %esi
jmp 0x1579a5
movl %edx, 0x128(%rsp)
movl %r13d, %esi
subl %edx, %esi
movl %esi, 0x12c(%rsp)
leaq 0x1ee5f8(%rip), %rdi    # 0x345fa4
xorl %r15d, %r15d
xorl %eax, %eax
callq 0x92a82
movq %r14, %rax
subq %r12, %rax
cmovaeq %rax, %r15
movq %r15, %rdi
callq 0x9580f
movl %eax, %r12d
movl %eax, %edi
movq 0x80(%rsp), %rbx
movq %rbx, %rsi
callq 0x191c3c
movq %rax, %r13
movq %rax, 0x1c8(%rsp)
movb $0x0, 0x1d8(%rsp)
xorpd %xmm0, %xmm0
movupd %xmm0, 0x1a0(%rsp)
movq %rbx, %rdi
callq 0x705a1
movq %rax, 0xe8(%rsp)
testq %rax, %rax
je 0x159974
movq %rax, %r15
leaq -0x1(%rax), %rdi
callq 0x9580f
movl %eax, %ebp
leal (%r12,%rbp), %ebx
cmpl $0x41, %ebx
jb 0x157a60
movq %r13, %rdi
callq 0x191c72
andq $0x0, 0x1c8(%rsp)
leaq 0x1ee5b0(%rip), %rsi    # 0x345ff5
movq 0x370(%rsp), %rdi
movq %r15, %rdx
movq %r14, %rcx
movl %ebp, %r8d
movl %r12d, %r9d
xorl %eax, %eax
callq 0x89dbb
callq 0x2b6010
movq %rax, %r14
movq %rax, 0x178(%rsp)
andq $0x0, 0x118(%rsp)
xorpd %xmm0, %xmm0
movupd %xmm0, 0x138(%rsp)
movupd %xmm0, 0x148(%rsp)
movupd %xmm0, 0x158(%rsp)
movupd %xmm0, 0x1b8(%rsp)
movq 0x80(%rsp), %rdi
callq 0x81d0c
movq %rax, (%rsp)
leaq 0x1ee2fb(%rip), %rdx    # 0x345db4
leaq 0x1cfb32(%rip), %r8     # 0x3275f2
pushq $0x1
popq %rcx
movq %r14, %rdi
movl $0x2e6, %esi            # imm = 0x2E6
movl %ecx, %r9d
callq 0x2b613a
cmpb $0x0, 0xac(%rsp)
je 0x157ae5
movq %r14, %rdi
callq 0x2b603c
cmpl $0x40, %ebx
jbe 0x157aef
xorl %r12d, %r12d
jmp 0x157b2e
shlq $0x3, %r15
leaq 0x1ee2ba(%rip), %r13    # 0x345db4
movq %r15, %rdi
movq %r13, %rsi
movl $0x2ef, %edx            # imm = 0x2EF
callq 0x93160
movq %rax, %r12
movq %r15, (%rsp)
leaq 0x192d35(%rip), %r8     # 0x2ea84d
pushq $0x1
popq %rcx
movq %r14, %rdi
movl $0x2f0, %esi            # imm = 0x2F0
movq %r13, %rdx
xorl %r9d, %r9d
callq 0x2b613a
movl 0x6c(%rsp), %r13d
cmpl $0x41, %ebx
setae %al
movl %eax, 0x58(%rsp)
leaq 0x1e0(%rsp), %r15
movq %r12, -0x78(%r15)
movq %r15, %rdi
callq 0x2b771e
andq $0x0, -0x100(%r15)
xorpd %xmm0, %xmm0
movapd %xmm0, -0x110(%r15)
movl %ebx, -0xb0(%r15)
cmpl $0x40, %ebx
jbe 0x157d1b
andq $0x0, 0x190(%rsp)
movb $0x1, %r14b
xorl %r13d, %r13d
xorl %r12d, %r12d
movq $0x0, 0x60(%rsp)
leaq 0xd0(%rsp), %rbx
movq %rbx, %rdi
callq 0x15a073
movq 0x98(%rbx), %rdi
leaq 0x1ee205(%rip), %rsi    # 0x345db4
movl $0x5f5, %edx            # imm = 0x5F5
callq 0x936f9
andq $0x0, 0x98(%rbx)
movq %r12, %rdi
callq 0x1a06b0
andq $0x0, 0xf0(%rbx)
movq 0x68(%rbx), %rdi
callq 0xa0545
pushq $-0x1
popq %rbp
movq 0x60(%rsp), %rdi
callq 0x1a11bd
movq 0x178(%rsp), %rdi
movq %r15, %rsi
callq 0x2b767c
movq 0x178(%rsp), %rdi
movq %r15, %rsi
callq 0x2b76dc
movq 0x148(%rsp), %rdi
testq %rdi, %rdi
je 0x157c4d
callq 0x1b261a
movq 0x178(%rsp), %rdi
andq $0x0, (%rsp)
leaq 0x1ee187(%rip), %rdx    # 0x345db4
leaq 0x22a710(%rip), %r8     # 0x382344
pushq $0x1
popq %r9
movl $0x601, %esi            # imm = 0x601
xorl %ecx, %ecx
callq 0x2b613a
andq $0x0, 0x148(%rsp)
movq 0x150(%rsp), %rdi
callq 0x1a04c6
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
jne 0x157ca4
cmpq $0x0, 0x168(%rsp)
je 0x157ca4
movq 0x178(%rsp), %rdi
andq $0x0, (%rsp)
leaq 0x1ee12e(%rip), %rdx    # 0x345db4
leaq 0x192bc0(%rip), %r8     # 0x2ea84d
movl $0x607, %esi            # imm = 0x607
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x2b613a
movq 0x158(%rsp), %rdi
callq 0x1a04c6
movq 0x1c8(%rsp), %rdi
callq 0x191c72
movq 0x178(%rsp), %rdi
callq 0x2b604a
movq 0x178(%rsp), %rdi
andq $0x0, (%rsp)
leaq 0x1ee0dd(%rip), %rdx    # 0x345db4
leaq 0x1cf914(%rip), %r8     # 0x3275f2
pushq $0x1
popq %r9
movl $0x60c, %esi            # imm = 0x60C
xorl %ecx, %ecx
callq 0x2b613a
movq 0x178(%rsp), %rdi
callq 0x2b60eb
testb %r14b, %r14b
jne 0x15809b
movq 0x2e01a5(%rip), %rax    # 0x437eb0
movq (%rax), %rsi
movq %r13, %rdi
callq 0xafb49
jmp 0x158093
callq 0x1a0534
movq %rax, %r12
callq 0xaaf34
testb %al, %al
je 0x157d45
leaq 0x1ee065(%rip), %rdi    # 0x345d98
callq 0xaf4a5
movq %rax, %r15
movq %rax, %rdi
callq 0xaf4d6
jmp 0x157d48
xorl %r15d, %r15d
xorpd %xmm0, %xmm0
movupd %xmm0, 0x8(%rsp)
leaq 0xd0(%rsp), %r14
movq %r14, (%rsp)
leaq 0x2478(%rip), %r9       # 0x15a1dd
pushq $0x1
popq %r8
movq 0x80(%rsp), %rdi
xorl %esi, %esi
movl %r13d, %edx
movl 0xa8(%rsp), %ecx
callq 0x1a9b46
movq 0x10(%r14), %rdx
movq %rdx, 0x18(%r14)
leaq 0x1ee2b9(%rip), %rsi    # 0x34604a
movq 0x368(%rsp), %rdi
xorl %eax, %eax
callq 0x92e71
testq %r15, %r15
je 0x157de7
movq 0x2e0104(%rip), %rbx    # 0x437eb0
movq (%rbx), %rdx
leaq 0x1ee2b1(%rip), %rsi    # 0x346067
movq %r15, %rdi
callq 0xaf86f
movq 0xe8(%rsp), %rsi
movq 0x168(%rsp), %rdi
callq 0xa07dd
movq (%rbx), %rdx
leaq 0x1ee2a3(%rip), %rsi    # 0x346080
movq %r15, %rdi
callq 0xaf86f
jmp 0x157dfc
movq 0xe8(%rsp), %rsi
movq 0x168(%rsp), %rdi
callq 0xa07dd
movq %r12, 0x90(%rsp)
movq %r15, 0xa0(%rsp)
movq 0x80(%rsp), %rdi
callq 0x75487
cmpl $0x4, %eax
jne 0x159a04
movl 0x12c(%rsp), %ecx
pushq $0x4
popq %rbp
movl %ebp, %edi
movl %r13d, %esi
xorl %edx, %edx
callq 0x166734
movq %rax, 0x1a0(%rsp)
movq %rax, %rdi
callq 0x1668fc
addl $0x6, %eax
movl %eax, 0x124(%rsp)
movl %r13d, %ebx
movq 0x178(%rsp), %r13
movq 0x1a0(%rsp), %rdi
callq 0x166905
movq %rax, (%rsp)
leaq 0x1edf3f(%rip), %r12    # 0x345db4
leaq 0x1ee245(%rip), %r8     # 0x3460c1
pushq $0x1
popq %r15
movq %r13, %rdi
movl $0x324, %esi            # imm = 0x324
movq %r12, %rdx
movl %r15d, %ecx
xorl %r9d, %r9d
callq 0x2b613a
movl 0x128(%rsp), %ecx
movl %ebp, %edi
movl %ebx, %esi
movl %r15d, %edx
callq 0x166734
movq %rax, 0x1a8(%rsp)
movq 0x178(%rsp), %r13
movq %rax, %rdi
callq 0x166905
movq %rax, (%rsp)
leaq 0x1ee200(%rip), %r8     # 0x3460cc
movq %r13, %rdi
movl $0x328, %esi            # imm = 0x328
movq %r12, %rdx
movl %r15d, %ecx
movl %r15d, %r9d
callq 0x2b613a
movq 0x168(%rsp), %rdi
testq %rdi, %rdi
je 0x159a35
movl 0x330(%rsp), %eax
movb 0x328(%rsp), %bl
leaq 0x118(%rsp), %r15
movq (%rdi), %rcx
movq %rcx, 0x58(%r15)
movq -0x30(%r15), %rcx
movq 0x60(%r15), %rsi
movq 0x88(%r15), %r8
movq 0x90(%r15), %r9
movq 0x368(%rsp), %rdx
movq %rdx, 0x18(%rsp)
movzbl %bl, %edx
movl %edx, 0x10(%rsp)
movl %eax, 0x8(%rsp)
movq %r15, (%rsp)
leaq 0x1e0(%rsp), %rdx
callq 0x2b6550
movq %rax, -0x10(%r15)
testq %rax, %rax
movq 0x90(%rsp), %r12
je 0x157fd8
cmpq 0xe8(%rsp), %rax
movq 0xa0(%rsp), %r13
jae 0x157fe0
movq 0x168(%rsp), %rdi
shlq $0x3, %rax
leaq 0x1ede2f(%rip), %r15    # 0x345db4
movq %rax, %rsi
movq %r15, %rdx
movl $0x339, %ecx            # imm = 0x339
callq 0x93472
movq %rax, 0x168(%rsp)
movq 0x108(%rsp), %rax
movq 0x178(%rsp), %rdi
shlq $0x3, %rax
movq %rax, (%rsp)
leaq 0x192891(%rip), %r8     # 0x2ea84d
movl $0x33c, %esi            # imm = 0x33C
movq %r15, %rdx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x2b613a
movq 0x108(%rsp), %rax
jmp 0x157fe0
movq 0xa0(%rsp), %r13
testq %rax, %rax
sete %cl
xorb $0x1, %bl
orb %cl, %bl
leaq 0x1e0(%rsp), %r15
jne 0x1580af
movq 0x168(%rsp), %rdi
leaq 0x1eddac(%rip), %rsi    # 0x345db4
movl $0x52d, %edx            # imm = 0x52D
callq 0x936f9
andq $0x0, 0x168(%rsp)
movq 0x1a0(%rsp), %rdi
pushq $0x1
popq %rbx
movl %ebx, %esi
callq 0x166831
movq 0x1a8(%rsp), %rdi
movl %ebx, %esi
callq 0x166831
movq 0x178(%rsp), %rdi
movq %r15, %rsi
callq 0x2b767c
movq 0x118(%rsp), %rdi
movq 0x178(%rsp), %rsi
callq 0x2b370a
movq 0x178(%rsp), %rdi
callq 0x2b60eb
movq 0x1c8(%rsp), %rdi
callq 0x191c72
movq %r12, %rdi
callq 0x1a06b0
andq $0x0, 0x118(%rsp)
xorl %ebp, %ebp
testq %r13, %r13
je 0x15809b
movq %r13, %rdi
callq 0xafc5b
movl %ebp, %eax
addq $0x2e8, %rsp            # imm = 0x2E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x338(%rsp), %rbp
andl $0x0, 0x120(%rsp)
andq $0x0, 0xf0(%rsp)
movq 0x78(%rsp), %rbx
testq %rbx, %rbx
je 0x158125
movq 0x178(%rsp), %rdi
callq 0x2b604f
movq %rax, %r15
addq %rbp, %r15
movq 0x178(%rsp), %rdi
callq 0x2b604f
cmpq %rbx, %r15
jae 0x158140
addq %rbp, %rax
movq %rbx, %rdi
subq %rax, %rdi
callq 0xa077e
movq 0x108(%rsp), %rdi
shrq $0x4, %rdi
cmpq %rdi, %rax
cmovaq %rax, %rdi
movq %rdi, 0x198(%rsp)
jmp 0x158221
pushq $0x5
popq %rbx
cmpl $0x0, 0xb0(%rsp)
je 0x1581fc
xorl %edx, %edx
divq %rbx
jmp 0x158216
movq %rax, %xmm1
movq 0x18f793(%rip), %xmm2   # 0x2e78e0
punpckldq %xmm2, %xmm1    # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0x18f797(%rip), %xmm3   # 0x2e78f0
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
movsd 0x18f78f(%rip), %xmm4   # 0x2e7900
mulsd %xmm4, %xmm0
movq %rbp, %xmm5
punpckldq %xmm2, %xmm5    # xmm5 = xmm5[0],xmm2[0],xmm5[1],xmm2[1]
subpd %xmm3, %xmm5
movapd %xmm5, %xmm1
unpckhpd %xmm5, %xmm1            # xmm1 = xmm1[1],xmm5[1]
addsd %xmm5, %xmm1
mulsd %xmm4, %xmm1
movq %rbx, %xmm5
punpckldq %xmm2, %xmm5    # xmm5 = xmm5[0],xmm2[0],xmm5[1],xmm2[1]
subpd %xmm3, %xmm5
movapd %xmm5, %xmm2
unpckhpd %xmm5, %xmm2            # xmm2 = xmm2[1],xmm5[1]
addsd %xmm5, %xmm2
mulsd %xmm4, %xmm2
leaq 0x1edfb6(%rip), %rsi    # 0x34616c
movq 0x370(%rsp), %rdi
movb $0x3, %al
callq 0x89dbb
andq $0x0, 0x190(%rsp)
movb $0x1, %bpl
movq $0x0, 0xb8(%rsp)
movq $0x0, 0x60(%rsp)
movq $0x0, 0x70(%rsp)
leaq 0x1e0(%rsp), %r15
jmp 0x1596a3
movq 0x178(%rsp), %rdi
callq 0x2b604f
xorl %edx, %edx
divq %rbx
movq %rax, %rdi
callq 0xa077e
movq %rax, %rdi
movq %rax, 0x198(%rsp)
cmpq $0xf, %rdi
ja 0x158236
movq $0x10, 0x198(%rsp)
pushq $0x10
popq %rdi
andq $0x0, 0x190(%rsp)
testq %r13, %r13
je 0x15826e
movq 0x2dfc65(%rip), %rax    # 0x437eb0
movq (%rax), %rdx
leaq 0x1edf78(%rip), %rsi    # 0x3461cd
movq %r13, %rdi
callq 0xaf86f
movq 0x198(%rsp), %rdi
testq %rdi, %rdi
je 0x159a66
leaq 0x180(%rsp), %r15
callq 0xa0297
movq %rax, -0x48(%r15)
movq %rax, %rdi
callq 0xa0eb3
movq %rax, 0x40(%r15)
movq -0x48(%r15), %rdi
movq -0x8(%r15), %r12
callq 0xa053d
movq %rax, (%rsp)
leaq 0x1edb11(%rip), %rdx    # 0x345db4
leaq 0x1edf72(%rip), %r8     # 0x34621c
pushq $0x1
popq %rcx
movq %r12, %rdi
movl $0x37f, %esi            # imm = 0x37F
movl %ecx, %r9d
callq 0x2b613a
movq %r14, 0x50(%r15)
leaq 0x1f79(%rip), %rax      # 0x15a241
movq %rax, 0x30(%r15)
movq -0x8(%r15), %rdi
callq 0x2b604f
movq %rax, %xmm1
punpckldq 0x18f5fe(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x18f606(%rip), %xmm1   # 0x2e78f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x18f602(%rip), %xmm0   # 0x2e7900
leaq 0x1edf26(%rip), %rsi    # 0x34622b
movq 0x368(%rsp), %r12
movq %r12, %rdi
movb $0x1, %al
callq 0x92e71
movq 0x80(%rsp), %rbx
movq %rbx, %rdi
movl 0x6c(%rsp), %esi
movl 0xa8(%rsp), %edx
movq %r15, %rcx
callq 0x2b1178
movq %r14, %rdi
callq 0x15a241
movq -0x90(%r15), %r14
movq %r14, %xmm0
punpckldq 0x18f58f(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x18f597(%rip), %xmm0   # 0x2e78f0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
mulsd 0x191473(%rip), %xmm1   # 0x2e97e0
movapd %xmm1, 0x270(%rsp)
movq %rbx, %rdi
callq 0x7055e
movq %rax, %xmm0
punpckldq 0x18f555(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x18f55d(%rip), %xmm0   # 0x2e78f0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
movapd 0x270(%rsp), %xmm0
divsd %xmm1, %xmm0
leaq 0x1edea6(%rip), %rsi    # 0x346259
movq %r12, %rdi
movq %r14, %rdx
movb $0x1, %al
callq 0x92e71
movq -0xb0(%r15), %r14
testq %r14, %r14
leaq 0x1e0(%rsp), %rbx
je 0x15848b
cmpl $0x0, 0x120(%rsp)
je 0x159a97
movq %r14, %xmm0
movq 0x18f4ed(%rip), %xmm1   # 0x2e78e0
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x18f4f1(%rip), %xmm1   # 0x2e78f0
subpd %xmm1, %xmm0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
mulsd 0x1913c9(%rip), %xmm1   # 0x2e97e0
movapd %xmm1, 0x270(%rsp)
movq 0x80(%rsp), %rdi
callq 0x7055e
movq %rax, %xmm0
punpckldq 0x18f4a6(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x18f4ae(%rip), %xmm0   # 0x2e78f0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
movapd 0x270(%rsp), %xmm0
divsd %xmm1, %xmm0
movl 0x120(%rsp), %ecx
movq 0xf0(%rsp), %rax
xorl %edx, %edx
divq %rcx
leaq 0x1ede25(%rip), %rsi    # 0x34629b
movq 0x368(%rsp), %rdi
movq %r14, %rdx
movq %rax, %r8
movb $0x1, %al
callq 0x92e71
movq 0x138(%rsp), %rdi
callq 0xa0545
andq $0x0, 0x138(%rsp)
movq 0x178(%rsp), %rdi
andq $0x0, (%rsp)
leaq 0x1ed8ff(%rip), %rdx    # 0x345db4
leaq 0x1edd60(%rip), %r8     # 0x34621c
pushq $0x1
popq %r9
movl $0x397, %esi            # imm = 0x397
xorl %ecx, %ecx
callq 0x2b613a
movq 0xe8(%rsp), %rbp
addq 0xd0(%rsp), %rbp
testq %r13, %r13
je 0x1584fa
movq 0x2df9c8(%rip), %rax    # 0x437eb0
movq (%rax), %rdx
leaq 0x1ed8d9(%rip), %rsi    # 0x345dcb
movq %r13, %rdi
callq 0xaf86f
leaq 0x168(%rsp), %r13
pushq $-0x1
popq %r12
movq (%r13), %rdx
movq 0x10(%r13), %rdi
movq %rbx, %rsi
movq %rbp, %rcx
callq 0x2b6d68
movq %rax, %r14
movq (%r13), %rax
movq 0x8(%r13), %rcx
movq %rcx, (%rax)
pushq $0x1
popq %rcx
cmpq 0x108(%rsp), %rcx
jae 0x15854e
movq 0x238(%rsp), %rdx
andq (%rax,%rcx,8), %rdx
addq -0x8(%rax,%rcx,8), %rdx
movq %rdx, (%rax,%rcx,8)
incq %rcx
jmp 0x15852a
leaq 0xd0(%rsp), %r15
movq 0xa8(%r15), %rdi
callq 0x2b604f
movq %rax, %xmm1
punpckldq 0x18f371(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x18f379(%rip), %xmm1   # 0x2e78f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x18f375(%rip), %xmm0   # 0x2e7900
leaq 0x1ed851(%rip), %rsi    # 0x345de3
movq 0x368(%rsp), %rbx
movq %rbx, %rdi
movb $0x1, %al
callq 0x92e71
leaq 0x1ed86c(%rip), %rsi    # 0x345e17
movq %rbx, %rdi
movq %r14, %rdx
xorl %eax, %eax
callq 0x92e71
movq 0xd0(%r15), %rdi
callq 0x166900
leaq 0x1edaf6(%rip), %rdi    # 0x3460c1
leaq 0x1d5f(%rip), %rcx      # 0x15a331
movq %rax, %rsi
xorl %edx, %edx
movq %r15, %r8
callq 0x19fc15
movq %rax, 0x90(%r15)
movq 0x90(%rsp), %rbx
movq %rbx, %rdi
movq %rax, %rsi
callq 0x1a0556
movq 0x38(%r15), %rsi
testq %rsi, %rsi
je 0x15865b
leaq 0x192244(%rip), %rdi    # 0x2ea84d
pushq $0x1
popq %rdx
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x19fc15
movq %rax, 0x158(%rsp)
movq %rbx, %rdi
movq %rax, %rsi
callq 0x1a0556
movq 0x108(%rsp), %rsi
incq %rsi
leaq 0x1b6c97(%rip), %rdi    # 0x30f2d2
pushq $0x2
popq %rdx
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x19fc15
movq %rax, 0x150(%rsp)
movq %rbx, %rdi
movq %rax, %rsi
callq 0x1a0556
movl 0xb0(%rsp), %edi
testl %edi, %edi
setne %al
cmpq $0x0, 0x78(%rsp)
sete %cl
movl 0x6c(%rsp), %edx
movq %rdx, 0xc0(%rsp)
testb %cl, %al
movq %rbp, 0xb8(%rsp)
jne 0x1586c9
testl %edi, %edi
je 0x1586e3
cmpq $0x0, 0x78(%rsp)
jne 0x15872c
movq 0x2df8c9(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18c96a(%rip), %rsi    # 0x2e5013
leaq 0x1edc99(%rip), %rdx    # 0x346349
leaq 0x1edca4(%rip), %rcx    # 0x34635b
leaq 0x1ed6f6(%rip), %r8     # 0x345db4
movl $0x3ce, %r9d            # imm = 0x3CE
jmp 0x15993a
movq $0x0, 0x78(%rsp)
leaq 0x1e0(%rsp), %r15
movl 0x58(%rsp), %ebp
jmp 0x1587f8
cmpq $0x0, 0x78(%rsp)
jne 0x15872c
movq 0x178(%rsp), %rdi
callq 0x2b605b
movq %rax, %r15
movq 0x98(%rsp), %rdx
subq 0xc0(%rsp), %rdx
pushq $0x1
popq %rdi
movq %r14, %rsi
callq 0x1a7788
addq 0x338(%rsp), %r15
addq %r15, %rax
addq $0x4000, %rax           # imm = 0x4000
movq %rax, 0x78(%rsp)
movq 0x150(%rsp), %r15
testq %r15, %r15
je 0x15875c
leaq 0x1e0(%rsp), %rbx
movq %rbx, %rdi
callq 0x2b749c
leaq -0x1(%rax), %rdx
movq %r15, %rdi
xorl %esi, %esi
callq 0x19fff3
movq %rax, %r15
jmp 0x158767
xorl %r15d, %r15d
leaq 0x1e0(%rsp), %rbx
movq 0x178(%rsp), %rdi
callq 0x2b604f
addq 0x338(%rsp), %r15
addq %rax, %r15
movl 0x130(%rsp), %eax
andl $0x0, 0x18(%rsp)
movq 0x370(%rsp), %rcx
movq %rcx, 0x20(%rsp)
andq $0x0, 0x8(%rsp)
movq %rbp, 0x10(%rsp)
movl %eax, (%rsp)
movq %r15, %rdi
movq 0x78(%rsp), %rsi
xorl %edx, %edx
movq %rbx, %rcx
movq 0x90(%rsp), %r8
movq 0x288(%rsp), %r9
callq 0x1a13bc
testl %eax, %eax
movq %rbx, %r15
js 0x1587d8
movl %eax, %r12d
je 0x159c1f
testl %r12d, %r12d
movl 0x58(%rsp), %eax
movl $0x0, %ebp
movb %al, %bpl
pushq $0x1
popq %rax
cmovsl %eax, %ebp
movl 0xb0(%rsp), %edi
cmovnsl %r12d, %edi
testb %bpl, %bpl
movq 0x90(%rsp), %r12
je 0x158824
movq $0x0, 0x60(%rsp)
movq $0x0, 0x70(%rsp)
movq 0xa0(%rsp), %r13
jmp 0x1596a3
movl %ebp, 0x58(%rsp)
testl %edi, %edi
je 0x159ac8
movq 0x368(%rsp), %rax
movq %rax, 0x10(%rsp)
andq $0x0, 0x8(%rsp)
movq 0xb8(%rsp), %rax
movq %rax, (%rsp)
pushq $0x1
popq %rdx
xorl %esi, %esi
xorl %ecx, %ecx
movq %r15, %r8
movq %r12, %r9
callq 0x1a0aa6
testq %rax, %rax
je 0x159af9
movq %rax, %r15
pushq $0x1
popq %rsi
movq %rax, %rdi
callq 0x1a06ec
leaq 0xd0(%rsp), %rbx
movq 0x38(%rbx), %rax
movq 0x98(%rbx), %rcx
movq %r15, %rdi
movq -0x8(%rcx,%rax,8), %r15
movq %rdi, 0x60(%rsp)
callq 0x1a11f8
movq %rbx, %rdi
movq %rax, %rsi
callq 0x159d14
cmpq %rax, %r15
jne 0x159b2a
movq %r12, %rdi
callq 0x1a06b0
movq 0x178(%rsp), %rdi
leaq 0x1e0(%rsp), %r15
movq %r15, %rsi
callq 0x2b761f
cmpq $0x0, 0x190(%rsp)
jne 0x159b5b
movq 0x150(%rsp), %rbx
testq %rbx, %rbx
je 0x159b8c
movq %r15, %rdi
callq 0x2b774d
movq %r15, %rbp
movq %rax, %r15
movq %rbp, %rdi
callq 0x2b7743
movq %rax, %r12
movq %rbp, %rdi
callq 0x2b749c
pushq $0x1
popq %r8
movq %rbx, %rdi
movq %r15, %rsi
movq %r12, %rdx
movq %rax, %rcx
callq 0x19ff17
movq 0x60(%rsp), %r15
movq %r15, %rdi
callq 0x1a137a
cmpl $0x2, %eax
jb 0x158a2e
cmpq $0x0, 0x168(%rsp)
movq 0x98(%rsp), %rbp
je 0x159c50
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
movq 0xb8(%rsp), %r12
je 0x159c81
movq %r13, %rsi
xorl %edx, %edx
callq 0x19fd17
movq 0x178(%rsp), %rdi
andq $0x0, (%rsp)
leaq 0x1ed429(%rip), %rdx    # 0x345db4
leaq 0x191ebb(%rip), %r8     # 0x2ea84d
movl $0x402, %esi            # imm = 0x402
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x2b613a
cmpq $0x0, 0x168(%rsp)
jne 0x159cb2
movq 0x1a0(%rsp), %rdi
xorl %esi, %esi
callq 0x166909
movq 0x160(%rsp), %rbx
testq %rbx, %rbx
movq 0xa0(%rsp), %r13
je 0x159ce3
movq 0x1a0(%rsp), %rdi
callq 0x16697e
movq %rbx, %rdi
movq %rax, %rsi
xorl %edx, %edx
callq 0x19fecf
movq 0x178(%rsp), %rdi
andq $0x0, (%rsp)
leaq 0x1ed3ae(%rip), %rdx    # 0x345db4
leaq 0x1ed6b4(%rip), %r8     # 0x3460c1
movl $0x40a, %esi            # imm = 0x40A
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x2b613a
movq 0x1a0(%rsp), %rdi
pushq $0x1
popq %rsi
callq 0x166909
jmp 0x158a72
movq 0x158(%rsp), %rdi
callq 0x1a04c6
andq $0x0, 0x158(%rsp)
movq 0x160(%rsp), %rdi
callq 0x1a04c6
andq $0x0, 0x160(%rsp)
movq 0xa0(%rsp), %r13
movq 0xb8(%rsp), %r12
movq 0x98(%rsp), %rbp
movq %r15, %rdi
callq 0x1a12f4
movq %rax, %rbx
movl 0x130(%rsp), %edx
movq %rax, %rdi
movq 0x288(%rsp), %r15
movq %r15, %rsi
movq 0x368(%rsp), %rcx
callq 0x1b2520
movq %rax, 0x148(%rsp)
movl 0x130(%rsp), %edx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x1b25ee
movq 0x178(%rsp), %rdi
movq %rax, (%rsp)
leaq 0x1ed2e8(%rip), %r15    # 0x345db4
leaq 0x229871(%rip), %r8     # 0x382344
pushq $0x1
popq %rbx
movl $0x591, %esi            # imm = 0x591
movq %r15, %rdx
movl %ebx, %ecx
movl %ebx, %r9d
callq 0x2b613a
leaq 0x127b(%rip), %rax      # 0x159d6a
movq %rax, 0x1b0(%rsp)
movq 0x88(%rsp), %rax
leaq (,%rax,8), %rdi
movq %rdi, 0x2a0(%rsp)
movq %r15, %rsi
movl $0x593, %edx            # imm = 0x593
callq 0x93160
movq %rax, 0x70(%rsp)
subq 0xc0(%rsp), %rbp
xorl %r15d, %r15d
cmpq %r15, 0x88(%rsp)
je 0x158b56
movq %r14, %rdi
movq %rbp, %rsi
xorl %edx, %edx
movl %ebx, %ecx
xorl %r8d, %r8d
callq 0x1a784e
movq 0x70(%rsp), %rcx
movq %rax, (%rcx,%r15,8)
incq %r15
jmp 0x158b2c
movq 0x178(%rsp), %rbx
pushq $0x1
popq %r15
movl %r15d, %edi
movq %r14, %rsi
movq %rbp, %rdx
callq 0x1a7788
movq 0x88(%rsp), %r14
imulq %r14, %rax
movq %rax, (%rsp)
leaq 0x1ed22d(%rip), %rdx    # 0x345db4
leaq 0x1efff5(%rip), %r8     # 0x348b83
movq %rbx, %rdi
movl $0x59c, %esi            # imm = 0x59C
movl %r15d, %ecx
movl %r15d, %r9d
callq 0x2b613a
movq 0x78(%rsp), %r15
testq %r15, %r15
je 0x158bf5
movq 0x178(%rsp), %rdi
callq 0x2b6057
movq %rax, %rbx
movq 0x60(%rsp), %rdi
callq 0x1a1337
movq 0x338(%rsp), %rcx
addq %rax, %rcx
addq %rbx, %rcx
movq %r15, %rdi
subq %rcx, %rdi
leaq 0x1e0(%rsp), %r15
jbe 0x158c12
callq 0xa0786
movq %rax, %rdi
movq %rax, 0x198(%rsp)
jmp 0x158c26
movq 0x198(%rsp), %rdi
shrq %rdi
movq %rdi, 0x198(%rsp)
leaq 0x1e0(%rsp), %r15
jmp 0x158c5e
movq 0x198(%rsp), %rdi
shrq $0x2, %rdi
movq %rdi, 0x198(%rsp)
movq 0xe8(%rsp), %rcx
addq 0xf0(%rsp), %rcx
movq %rcx, %rax
xorl %edx, %edx
divq %rdi
cmpq $0x191, %rax            # imm = 0x191
jb 0x158c5e
movl $0x190, %esi            # imm = 0x190
movq %rcx, %rax
xorl %edx, %edx
divq %rsi
movq %rax, %rdi
movq %rax, 0x198(%rsp)
cmpb $0x0, 0x320(%rsp)
jne 0x158cbf
callq 0xa04d9
movq %rax, 0x140(%rsp)
movq 0x178(%rsp), %rbx
movq %rax, %rdi
callq 0xa053d
movq %rax, (%rsp)
leaq 0x1ed124(%rip), %rdx    # 0x345db4
leaq 0x1ed24b(%rip), %r8     # 0x345ee2
pushq $0x1
popq %rcx
movq %rbx, %rdi
movl $0x5a5, %esi            # imm = 0x5A5
movl %ecx, %r9d
callq 0x2b613a
movq 0x140(%rsp), %rdi
callq 0xa0efd
movq %rax, 0x1b8(%rsp)
leaq 0x180(%rsp), %rax
andq $0x0, -0x90(%rax)
andl $0x0, -0x60(%rax)
movq %r12, %xmm0
punpckldq 0x18ec00(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x18ec08(%rip), %xmm0   # 0x2e78f0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
movapd %xmm1, 0x2d0(%rsp)
leal -0x1(%r14), %ebx
imulq $0x88, %r14, %rax
movq %rax, 0x290(%rsp)
xorl %r12d, %r12d
movl $0x0, 0x5c(%rsp)
movl 0x58(%rsp), %ebp
movq %rbx, 0x270(%rsp)
testb $0x1, %bpl
jne 0x1596a3
cmpb $0x0, 0x320(%rsp)
jne 0x1596a3
movl %ebp, 0x58(%rsp)
movq 0x60(%rsp), %rdi
callq 0x1a137a
cmpl %eax, 0x5c(%rsp)
jae 0x15969f
testq %r13, %r13
je 0x158d75
movq 0x2df14d(%rip), %rax    # 0x437eb0
movq (%rax), %rdx
movq %r13, %rdi
leaq 0x1ed835(%rip), %rsi    # 0x3465a5
callq 0xaf86f
movl 0x5c(%rsp), %ebp
movl %ebp, %edi
movq 0x60(%rsp), %rbx
movq %rbx, %rsi
callq 0x1a129e
movq %rax, 0x110(%rsp)
movq %rax, %xmm1
punpckldq 0x18eb43(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x18eb4b(%rip), %xmm1   # 0x2e78f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x190a27(%rip), %xmm0   # 0x2e97e0
divsd 0x2d0(%rsp), %xmm0
movq 0x368(%rsp), %rdi
leaq 0x1ed7f4(%rip), %rsi    # 0x3465c5
movl %ebp, %edx
movb $0x1, %al
callq 0x92e71
movl %ebp, %edi
movq %rbx, %rsi
callq 0x1a0914
movq %rax, 0xf8(%rsp)
movl %ebp, %edi
movq %rbx, %rsi
callq 0x1a096b
movq %rax, 0x100(%rsp)
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0x158e6d
movq 0xf8(%rsp), %rsi
movq %rax, %rdx
callq 0x1a010c
movq %rax, 0x168(%rsp)
movq 0x178(%rsp), %rbx
movq 0x158(%rsp), %rdi
movq 0xf8(%rsp), %rsi
movq 0x100(%rsp), %rdx
callq 0x19fff3
movq %rax, (%rsp)
movq %rbx, %rdi
movl $0x465, %esi            # imm = 0x465
leaq 0x1ecf59(%rip), %rdx    # 0x345db4
pushq $0x1
popq %rcx
leaq 0x1919e8(%rip), %r8     # 0x2ea84d
xorl %r9d, %r9d
callq 0x2b613a
movq 0x150(%rsp), %rdi
testq %rdi, %rdi
je 0x159946
movq %r13, %r15
movq 0xf8(%rsp), %rsi
movq 0x100(%rsp), %rdx
callq 0x1a010c
leaq 0x1e0(%rsp), %rdi
movq %rax, %rsi
callq 0x2b7748
movq 0x178(%rsp), %rbx
movq 0x150(%rsp), %rdi
movq 0xf8(%rsp), %rsi
movq 0x100(%rsp), %rdx
callq 0x19fff3
movq %rax, (%rsp)
movq %rbx, %rdi
movl $0x470, %esi            # imm = 0x470
leaq 0x1eced6(%rip), %r13    # 0x345db4
movq %r13, %rdx
pushq $0x1
popq %rbp
movl %ebp, %ecx
leaq 0x1b63e5(%rip), %r8     # 0x30f2d2
xorl %r9d, %r9d
callq 0x2b613a
movq 0x160(%rsp), %rdi
testq %rdi, %rdi
je 0x158f6c
movq 0xf8(%rsp), %rsi
movq 0x100(%rsp), %rdx
callq 0x1a010c
movq 0x1a0(%rsp), %rdi
movq %rax, %rsi
callq 0x166983
movq 0x178(%rsp), %rbx
movq 0x160(%rsp), %rdi
movq 0xf8(%rsp), %rsi
movq 0x100(%rsp), %rdx
callq 0x19fff3
movq %rax, (%rsp)
movq %rbx, %rdi
movl $0x47c, %esi            # imm = 0x47C
movq %r13, %rdx
movl %ebp, %ecx
leaq 0x1ed15d(%rip), %r8     # 0x3460c1
xorl %r9d, %r9d
callq 0x2b613a
movq 0x178(%rsp), %rdi
callq 0x2b604f
movq %rax, %xmm1
punpckldq 0x18e95a(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x18e962(%rip), %xmm1   # 0x2e78f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x18e95e(%rip), %xmm0   # 0x2e7900
movq 0x368(%rsp), %rdi
leaq 0x1ed65a(%rip), %rsi    # 0x34660b
movl 0x5c(%rsp), %ebp
movl %ebp, %edx
movb $0x1, %al
callq 0x92e71
movq 0xf8(%rsp), %rsi
leaq 0xd0(%rsp), %r13
movq %r13, %rdi
callq 0x159d14
movq %rax, 0x180(%rsp)
movq 0x100(%rsp), %rsi
movq %r13, %rdi
callq 0x159d14
movq %rax, 0x188(%rsp)
movq 0x148(%rsp), %rbx
movl %ebp, %edi
movq 0x60(%rsp), %rsi
callq 0x1a1247
movq %rbx, %rdi
movq %rax, %rsi
callq 0x1b2644
movq 0x80(%rsp), %rdi
movl 0x6c(%rsp), %esi
movl 0xa8(%rsp), %edx
leaq 0x180(%rsp), %rcx
callq 0x2b3a48
movq %r13, %rdi
callq 0x159d6a
movq 0x160(%rsp), %rdi
testq %rdi, %rdi
je 0x159079
callq 0x1a00b8
movq 0x178(%rsp), %rdi
andq $0x0, (%rsp)
movl $0x48c, %esi            # imm = 0x48C
leaq 0x1ecd4c(%rip), %rdx    # 0x345db4
xorl %ecx, %ecx
leaq 0x1ed050(%rip), %r8     # 0x3460c1
xorl %r9d, %r9d
callq 0x2b613a
movq 0x158(%rsp), %rdi
testq %rdi, %rdi
je 0x1590b5
callq 0x1a00b8
movq 0x178(%rsp), %rdi
andq $0x0, (%rsp)
movl $0x491, %esi            # imm = 0x491
leaq 0x1ecd10(%rip), %rdx    # 0x345db4
xorl %ecx, %ecx
leaq 0x1917a0(%rip), %r8     # 0x2ea84d
xorl %r9d, %r9d
callq 0x2b613a
movq 0x60(%rsp), %rdi
callq 0x1a137a
decl %eax
cmpl 0x5c(%rsp), %eax
jne 0x1590d4
leaq 0xd0(%rsp), %rdi
callq 0x15a073
testq %r15, %r15
je 0x1590f2
movq 0x2dedd0(%rip), %rax    # 0x437eb0
movq (%rax), %rdx
movq %r15, %rdi
leaq 0x1ed541(%rip), %rsi    # 0x34662e
callq 0xaf86f
movq 0x78(%rsp), %rbx
testq %rbx, %rbx
je 0x15915f
movq 0x178(%rsp), %rdi
callq 0x2b604f
cmpq %rbx, %rax
jae 0x15915f
movq 0x178(%rsp), %rdi
callq 0x2b604f
subq %rax, %rbx
movq %rbx, 0xc8(%rsp)
movq %rbx, %xmm1
punpckldq 0x18e7ad(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x18e7b5(%rip), %xmm1   # 0x2e78f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x18e7b1(%rip), %xmm0   # 0x2e7900
leaq 0x1ed4f4(%rip), %rdi    # 0x34664a
movb $0x1, %al
callq 0x92a82
jmp 0x15916b
movq $0x0, 0xc8(%rsp)
cmpl $0x2, %r14d
jb 0x159322
movq 0x148(%rsp), %rax
movq %rax, 0x2b8(%rsp)
movq 0x1c8(%rsp), %rax
movq %rax, 0x2b0(%rsp)
movq 0xf8(%rsp), %r15
movq 0x100(%rsp), %rax
movq %rax, 0x98(%rsp)
movl 0x5c(%rsp), %ebp
movl %ebp, %edi
movq 0x60(%rsp), %rbx
movq %rbx, %rsi
callq 0x1a129e
movq %rax, %r13
movl %ebp, %edi
movq %rbx, %rsi
callq 0x1a08b9
movq %rax, 0x2a8(%rsp)
cmpq 0x98(%rsp), %r15
jae 0x1599a2
movq %r13, 0x2c8(%rsp)
movq %r13, %rax
xorl %edx, %edx
divq %r14
movq %rdx, 0xb0(%rsp)
movq %rax, 0x2c0(%rsp)
movq 0x2a0(%rsp), %rdi
leaq 0x1ecba2(%rip), %rsi    # 0x345db4
movl $0x1af, %edx            # imm = 0x1AF
callq 0x93160
movq %rax, %rbx
leaq 0x1e0(%rsp), %rdi
movq %r15, 0x298(%rsp)
movq %r15, %rsi
callq 0x2b74eb
movq %rax, %r13
xorl %r15d, %r15d
movq 0x270(%rsp), %rax
movq %rbx, 0x90(%rsp)
cmpq %r14, %r15
je 0x159371
addq 0x2c0(%rsp), %r13
movq 0xb0(%rsp), %rcx
subl $0x1, %ecx
cmovbl %r12d, %ecx
movq %rcx, 0xb0(%rsp)
sbbq $-0x1, %r13
cmpq %rax, %r15
jne 0x15928f
movq 0x98(%rsp), %rcx
movq %rcx, (%rbx,%rax,8)
jmp 0x15931a
movq 0x298(%rsp), %r14
testq %r15, %r15
je 0x1592a4
movq -0x8(%rbx,%r15,8), %r14
incq %r14
movq 0x98(%rsp), %r12
movq %r12, %rbx
leaq 0x1(%r14), %rax
cmpq %rbx, %rax
jae 0x1592ea
leaq (%r14,%rbx), %rbp
shrq %rbp
leaq 0x1e0(%rsp), %rdi
movq %rbp, %rsi
callq 0x2b74eb
cmpq %r13, %rax
je 0x1592e7
ja 0x1592de
incq %rbp
movq %rbp, %r14
jmp 0x1592af
leaq -0x1(%rbp), %rbx
movq %rbp, %r12
jmp 0x1592af
movq %rbp, %r12
movq 0x90(%rsp), %rbx
movq %r12, (%rbx,%r15,8)
cmpq 0x98(%rsp), %r12
movq 0x88(%rsp), %r14
movl $0x0, %r12d
movq 0x270(%rsp), %rax
ja 0x15990e
incq %r15
jmp 0x15924d
movq 0x70(%rsp), %rax
movq (%rax), %r15
movq 0x148(%rsp), %rbx
movq 0x1c8(%rsp), %r14
movq 0xf8(%rsp), %r12
movq 0x100(%rsp), %r13
movl 0x5c(%rsp), %edi
movq 0x60(%rsp), %rsi
callq 0x1a08b9
movq 0x360(%rsp), %rcx
testq %rcx, %rcx
je 0x1595aa
movq (%rcx), %rcx
jmp 0x1595ac
movq 0x290(%rsp), %rdi
leaq 0x1eca34(%rip), %rsi    # 0x345db4
movl $0x218, %edx            # imm = 0x218
callq 0x93160
movq %rax, %r13
xorl %ebx, %ebx
movq %rax, %r14
xorl %r15d, %r15d
xorl %r12d, %r12d
cmpq %rbx, 0x88(%rsp)
movq 0x2c8(%rsp), %rax
je 0x15951b
movq 0x70(%rsp), %rax
movq (%rax,%rbx,8), %rax
movq %rax, (%r13)
movq 0x80(%rsp), %rax
movq %rax, 0x8(%r13)
movq 0x2b8(%rsp), %rax
movq %rax, 0x18(%r13)
movq 0x2b0(%rsp), %rax
movq %rax, 0x20(%r13)
leaq 0x1e0(%rsp), %rax
movq %rax, 0x28(%r13)
movq 0x298(%rsp), %rsi
testq %rbx, %rbx
movq 0x90(%rsp), %rax
je 0x159408
movq -0x8(%rax,%rbx,8), %rsi
incq %rsi
movq %rsi, 0x38(%r13)
movq (%rax,%rbx,8), %rax
andl $0x0, 0x10(%r13)
movq %rax, 0x40(%r13)
movl 0xac(%rsp), %eax
movb %al, 0x58(%r13)
movq 0xc8(%rsp), %rax
movq %rax, 0x50(%r13)
movq 0xc0(%rsp), %rax
movq %rax, 0x30(%r13)
movq 0x350(%rsp), %rax
movq %rax, 0x60(%r13)
movq 0x358(%rsp), %rax
movq %rax, 0x68(%r13)
movq 0x360(%rsp), %rax
testq %rax, %rax
je 0x159467
movq (%rax,%rbx,8), %rax
jmp 0x159469
xorl %eax, %eax
movq %rax, 0x70(%r13)
andq $0x0, 0x78(%r13)
leaq 0x1e0(%rsp), %rdi
callq 0x2b74eb
movq %rax, %rbp
movq 0x2a8(%rsp), %rax
cmpq 0x270(%rsp), %rbx
jae 0x1594a8
movq 0x40(%r13), %rsi
incq %rsi
leaq 0x1e0(%rsp), %rdi
callq 0x2b74eb
movq %rax, 0x48(%r13)
movq %rax, %rdx
subq %rbp, %rdx
jbe 0x1598e0
movq 0x38(%r13), %rcx
movq 0x40(%r13), %r8
movq %rdx, 0x8(%rsp)
movq %rax, (%rsp)
movq 0x368(%rsp), %rdi
leaq 0x1ed1d6(%rip), %rsi    # 0x3466ae
movl %ebx, %edx
movq %rbp, %r9
xorl %eax, %eax
callq 0x92e71
subq %rbp, %r15
addq 0x48(%r13), %r15
leaq 0x1351(%rip), %rdi      # 0x15a843
movq %r13, %rsi
xorl %edx, %edx
callq 0xaeee8
movq %rax, 0x80(%r13)
testq %rax, %rax
sete %al
orb %al, %r12b
incq %rbx
addq $0x88, %r13
jmp 0x159398
cmpq %rax, %r15
sete %al
orb %r12b, %al
testb $0x1, %al
je 0x1599d3
xorl %ebx, %ebx
movq 0xa0(%rsp), %r13
leaq 0x1e0(%rsp), %r15
cmpq %rbx, 0x290(%rsp)
je 0x159571
testb $0x1, %r12b
jne 0x15955b
movq 0x80(%r14,%rbx), %rdi
callq 0xaefdb
movq 0x80(%r14,%rbx), %rdi
callq 0xaf45e
addq $0x88, %rbx
jmp 0x15953e
movq %r14, %rdi
leaq 0x1ec839(%rip), %rbx    # 0x345db4
movq %rbx, %rsi
movl $0x255, %edx            # imm = 0x255
callq 0x936f9
movq 0x90(%rsp), %rdi
movq %rbx, %rsi
movl $0x256, %edx            # imm = 0x256
callq 0x936f9
movq 0x88(%rsp), %r14
jmp 0x159645
xorl %ecx, %ecx
movzbl 0xac(%rsp), %edx
movl %edx, 0x40(%rsp)
movq %rcx, 0x38(%rsp)
movq 0xc8(%rsp), %rcx
movq %rcx, 0x18(%rsp)
movq %rax, 0x10(%rsp)
movq %r13, 0x8(%rsp)
movq 0x370(%rsp), %rax
movq %rax, 0x48(%rsp)
movq 0x358(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x350(%rsp), %rax
movq %rax, 0x28(%rsp)
movq 0xc0(%rsp), %rax
movq %rax, 0x20(%rsp)
movq %r12, (%rsp)
movq %r15, %rdi
movq 0x80(%rsp), %rsi
xorl %edx, %edx
movq %rbx, %rcx
movq %r14, %r8
leaq 0x1e0(%rsp), %r15
movq %r15, %r9
callq 0x15a3b5
testl %eax, %eax
setne %r12b
movq 0x88(%rsp), %r14
movq 0xa0(%rsp), %r13
movq 0x150(%rsp), %rdi
testq %rdi, %rdi
je 0x159681
callq 0x1a00b8
movq 0x178(%rsp), %rdi
andq $0x0, (%rsp)
movl $0x4e0, %esi            # imm = 0x4E0
leaq 0x1ec744(%rip), %rdx    # 0x345db4
xorl %ecx, %ecx
leaq 0x1b5c59(%rip), %r8     # 0x30f2d2
xorl %r9d, %r9d
callq 0x2b613a
movl 0x58(%rsp), %ebp
movzbl %bpl, %ebp
testb $0x1, %r12b
pushq $0x1
popq %rax
cmovnel %eax, %ebp
incl 0x5c(%rsp)
xorl %r12d, %r12d
jmp 0x158d27
movl 0x58(%rsp), %ebp
testq %r13, %r13
sete %r14b
je 0x1596c7
movq 0x2de7fd(%rip), %rax    # 0x437eb0
movq (%rax), %rdx
leaq 0x1ec837(%rip), %rsi    # 0x345ef4
movq %r13, %rdi
callq 0xaf86f
jmp 0x1596ca
xorl %r13d, %r13d
movb $0x1, %bl
testb $0x1, %bpl
jne 0x159871
movq 0x178(%rsp), %rdi
andq $0x0, (%rsp)
leaq 0x1ec6ca(%rip), %rdx    # 0x345db4
leaq 0x1ef492(%rip), %r8     # 0x348b83
pushq $0x1
popq %r9
movl $0x5cb, %esi            # imm = 0x5CB
xorl %ecx, %ecx
callq 0x2b613a
cmpb $0x0, 0x320(%rsp)
jne 0x1597a8
cmpq $0x0, 0x70(%rsp)
je 0x1597a8
xorl %ebx, %ebx
xorl %r15d, %r15d
cmpq %rbx, 0x88(%rsp)
je 0x159740
movq 0x70(%rsp), %rax
movq (%rax,%rbx,8), %rdi
callq 0x1a7a67
addq %rax, %r15
incq %rbx
jmp 0x159720
movq %r15, %xmm1
movq 0x18e193(%rip), %xmm2   # 0x2e78e0
punpckldq %xmm2, %xmm1    # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0x18e197(%rip), %xmm3   # 0x2e78f0
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
movq 0xd8(%rsp), %xmm1
punpckldq %xmm2, %xmm1    # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
subpd %xmm3, %xmm1
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
leaq 0x1ec76f(%rip), %rsi    # 0x345f00
movq 0x368(%rsp), %rdi
movb $0x1, %al
callq 0x92e71
leaq 0x1e0(%rsp), %r15
cmpb $0x0, 0x320(%rsp)
je 0x1597c6
leaq 0xd0(%rsp), %rdi
callq 0x15a073
movl %ebp, %ebx
jmp 0x159871
movl 0x120(%rsp), %ecx
testq %rcx, %rcx
je 0x159bbd
movq 0xd8(%rsp), %r8
movq %r8, %xmm1
movq 0x18e0f5(%rip), %xmm2   # 0x2e78e0
punpckldq %xmm2, %xmm1    # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0x18e0f9(%rip), %xmm3   # 0x2e78f0
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x18ffd1(%rip), %xmm0   # 0x2e97e0
movq 0xf0(%rsp), %rax
movq 0x288(%rsp), %xmm1
punpckldq %xmm2, %xmm1    # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
subpd %xmm3, %xmm1
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
xorl %edx, %edx
divq %rcx
leaq 0x1ec6f0(%rip), %rsi    # 0x345f34
movq 0x368(%rsp), %rdi
movq %r8, %rdx
movq %rax, %r8
movb $0x1, %al
callq 0x92e71
movl %ebp, %ebx
movq 0xb8(%rsp), %rax
cmpq %rax, 0xd8(%rsp)
jne 0x159bee
cmpq $0x0, 0x70(%rsp)
je 0x1598c1
xorl %r15d, %r15d
cmpq %r15, 0x88(%rsp)
je 0x159899
movq 0x70(%rsp), %rax
movq (%rax,%r15,8), %rdi
callq 0x1a7a6c
incq %r15
jmp 0x15987c
leaq 0x1ec514(%rip), %rsi    # 0x345db4
movq 0x70(%rsp), %rdi
movl $0x5f0, %edx            # imm = 0x5F0
callq 0x936f9
testb $0x1, %bl
je 0x1598d1
leaq 0x1e0(%rsp), %r15
jmp 0x157b91
testb $0x1, %bl
jne 0x157b91
xorl %ebp, %ebp
jmp 0x157bdd
xorl %ebp, %ebp
leaq 0x1e0(%rsp), %r15
jmp 0x157bdd
movq 0x2de681(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b722(%rip), %rsi    # 0x2e5013
leaq 0x1ecd98(%rip), %rdx    # 0x346690
leaq 0x1ecd6e(%rip), %rcx    # 0x34666d
leaq 0x1ec4ae(%rip), %r8     # 0x345db4
movl $0x23b, %r9d            # imm = 0x23B
jmp 0x15993a
movq 0x2de653(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b6f4(%rip), %rsi    # 0x2e5013
leaq 0x1ece1f(%rip), %rdx    # 0x346745
leaq 0x1ece02(%rip), %rcx    # 0x34672f
leaq 0x1ec480(%rip), %r8     # 0x345db4
movl $0x1c5, %r9d            # imm = 0x1C5
xorl %eax, %eax
callq 0x17a50
callq 0x17390
movq 0x2de61b(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b6bc(%rip), %rsi    # 0x2e5013
leaq 0x1eca53(%rip), %rdx    # 0x3463b1
leaq 0x1ecc8b(%rip), %rcx    # 0x3465f0
leaq 0x1ec448(%rip), %r8     # 0x345db4
movl $0x467, %r9d            # imm = 0x467
jmp 0x15993a
movq 0x2de5ed(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b68e(%rip), %rsi    # 0x2e5013
leaq 0x1ec63e(%rip), %rdx    # 0x345fca
leaq 0x1ec64f(%rip), %rcx    # 0x345fe2
leaq 0x1ec41a(%rip), %r8     # 0x345db4
movl $0x2d0, %r9d            # imm = 0x2D0
jmp 0x15993a
movq 0x2de5bf(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b660(%rip), %rsi    # 0x2e5013
leaq 0x1ecd45(%rip), %rdx    # 0x3466ff
leaq 0x1ecd6e(%rip), %rcx    # 0x34672f
leaq 0x1ec3ec(%rip), %r8     # 0x345db4
movl $0x1ad, %r9d            # imm = 0x1AD
jmp 0x15993a
movq 0x2de58e(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b62f(%rip), %rsi    # 0x2e5013
leaq 0x1eccf7(%rip), %rdx    # 0x3466e2
leaq 0x1ecc7b(%rip), %rcx    # 0x34666d
leaq 0x1ec3bb(%rip), %r8     # 0x345db4
movl $0x24c, %r9d            # imm = 0x24C
jmp 0x15993a
movq 0x2de55d(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b5fe(%rip), %rsi    # 0x2e5013
leaq 0x1ec679(%rip), %rdx    # 0x346095
leaq 0x1ec683(%rip), %rcx    # 0x3460a6
leaq 0x1ec38a(%rip), %r8     # 0x345db4
movl $0x31e, %r9d            # imm = 0x31E
jmp 0x15993a
movq 0x2de52c(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b5cd(%rip), %rsi    # 0x2e5013
leaq 0x1ec68a(%rip), %rdx    # 0x3460d7
leaq 0x1ec652(%rip), %rcx    # 0x3460a6
leaq 0x1ec359(%rip), %r8     # 0x345db4
movl $0x329, %r9d            # imm = 0x329
jmp 0x15993a
movq 0x2de4fb(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b59c(%rip), %rsi    # 0x2e5013
leaq 0x1ec764(%rip), %rdx    # 0x3461e2
leaq 0x1ec774(%rip), %rcx    # 0x3461f9
leaq 0x1ec328(%rip), %r8     # 0x345db4
movl $0x37b, %r9d            # imm = 0x37B
jmp 0x15993a
movq 0x2de4ca(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b56b(%rip), %rsi    # 0x2e5013
leaq 0x1ec7d8(%rip), %rdx    # 0x346287
leaq 0x1ec743(%rip), %rcx    # 0x3461f9
leaq 0x1ec2f7(%rip), %r8     # 0x345db4
movl $0x38c, %r9d            # imm = 0x38C
jmp 0x15993a
movq 0x2de499(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b53a(%rip), %rsi    # 0x2e5013
leaq 0x22b2ef(%rip), %rdx    # 0x384dcf
leaq 0x1ec342(%rip), %rcx    # 0x345e29
leaq 0x1ec2c6(%rip), %r8     # 0x345db4
movl $0x575, %r9d            # imm = 0x575
jmp 0x15993a
movq 0x2de468(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b509(%rip), %rsi    # 0x2e5013
leaq 0x200f9c(%rip), %rdx    # 0x35aaad
leaq 0x1ec311(%rip), %rcx    # 0x345e29
leaq 0x1ec295(%rip), %r8     # 0x345db4
movl $0x57f, %r9d            # imm = 0x57F
jmp 0x15993a
movq 0x2de437(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b4d8(%rip), %rsi    # 0x2e5013
leaq 0x1ec315(%rip), %rdx    # 0x345e57
leaq 0x1ec2e0(%rip), %rcx    # 0x345e29
leaq 0x1ec264(%rip), %r8     # 0x345db4
movl $0x584, %r9d            # imm = 0x584
jmp 0x15993a
movq 0x2de406(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b4a7(%rip), %rsi    # 0x2e5013
leaq 0x1ec359(%rip), %rdx    # 0x345ecc
leaq 0x1ec2af(%rip), %rcx    # 0x345e29
leaq 0x1ec233(%rip), %r8     # 0x345db4
movl $0x588, %r9d            # imm = 0x588
jmp 0x15993a
movq 0x2de3d5(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b476(%rip), %rsi    # 0x2e5013
leaq 0x1ec80d(%rip), %rdx    # 0x3463b1
leaq 0x1ec824(%rip), %rcx    # 0x3463cf
leaq 0x1ec202(%rip), %r8     # 0x345db4
movl $0x3f4, %r9d            # imm = 0x3F4
jmp 0x15993a
movq 0x2de3a4(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b445(%rip), %rsi    # 0x2e5013
leaq 0x1ec34c(%rip), %rdx    # 0x345f21
leaq 0x1ec24d(%rip), %rcx    # 0x345e29
leaq 0x1ec1d1(%rip), %r8     # 0x345db4
movl $0x5dd, %r9d            # imm = 0x5DD
jmp 0x15993a
movq 0x2de373(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b414(%rip), %rsi    # 0x2e5013
leaq 0x1ec378(%rip), %rdx    # 0x345f7e
leaq 0x1ec21c(%rip), %rcx    # 0x345e29
leaq 0x1ec1a0(%rip), %r8     # 0x345db4
movl $0x5e4, %r9d            # imm = 0x5E4
jmp 0x15993a
movq 0x2de342(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b3e3(%rip), %rsi    # 0x2e5013
leaq 0x1ec73d(%rip), %rdx    # 0x346374
leaq 0x1ec71d(%rip), %rcx    # 0x34635b
leaq 0x1ec16f(%rip), %r8     # 0x345db4
movl $0x3ec, %r9d            # imm = 0x3EC
jmp 0x15993a
movq 0x2de311(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b3b2(%rip), %rsi    # 0x2e5013
leaq 0x1ec46f(%rip), %rdx    # 0x3460d7
leaq 0x1ec760(%rip), %rcx    # 0x3463cf
leaq 0x1ec13e(%rip), %r8     # 0x345db4
movl $0x3fd, %r9d            # imm = 0x3FD
jmp 0x15993a
movq 0x2de2e0(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b381(%rip), %rsi    # 0x2e5013
leaq 0x1ec74f(%rip), %rdx    # 0x3463e8
leaq 0x1ec72f(%rip), %rcx    # 0x3463cf
leaq 0x1ec10d(%rip), %r8     # 0x345db4
movl $0x3fe, %r9d            # imm = 0x3FE
jmp 0x15993a
movq 0x2de2af(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b350(%rip), %rsi    # 0x2e5013
leaq 0x1ec73f(%rip), %rdx    # 0x346409
leaq 0x1ec6fe(%rip), %rcx    # 0x3463cf
leaq 0x1ec0dc(%rip), %r8     # 0x345db4
movl $0x403, %r9d            # imm = 0x403
jmp 0x15993a
movq 0x2de27e(%rip), %rax    # 0x437f68
movq (%rax), %rdi
leaq 0x18b31f(%rip), %rsi    # 0x2e5013
leaq 0x1ec729(%rip), %rdx    # 0x346424
leaq 0x1ec6cd(%rip), %rcx    # 0x3463cf
leaq 0x1ec0ab(%rip), %r8     # 0x345db4
movl $0x405, %r9d            # imm = 0x405
jmp 0x15993a