// File: /workspace/github_c_makefile_star2_O3/genometools[P]genometools/src/match/randomcodes.c
// Function: storerandomcodes_getencseqkmers_twobitencoding
int storerandomcodes_getencseqkmers_twobitencoding(const GtEncseq *encseq,
    unsigned int bucketkeysize,
    unsigned int numofparts,
    GtUword maximumspace,
    unsigned int sortingdepth,
    unsigned int skipshorter,
    bool usefirstcodes,
    unsigned int sampling_factor,
    bool withsuftabcheck,
    bool onlyaccumulation,
    bool onlyallrandomcodes,
    GT_UNUSED
    unsigned int addbscache_depth,
    GtUword phase2extra,
    GT_UNUSED bool radixsmall,      /* set to true */
    GT_UNUSED unsigned int radixparts, /* set to 2U */
    GtRandomcodesintervalprocess
    itvprocess,
    GtRandomcodesintervalprocess_end
    itvprocess_end,
    void *itvprocessdatatab,
    GtLogger *logger,
    GtTimer *timer,
    GtError *err)
{
  GtRandomcodesinfo 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_rc *suftabparts_rc = 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)skipshorter)
  {
    return 0;
  }
  if (gt_randomcodes_init(&fci,
                         encseq,
                         withsuftabcheck,
                         skipshorter,
                         err) != 0)
  {
    haserr = true;
  }
  if (!haserr)
  {
    sfxmrlist = gt_Sfxmappedrangelist_new();
    if (gt_randomcodes_collectcodes(&fci,
                               usefirstcodes,
                               sampling_factor,
                               encseq,
                               readmode,
                               bucketkeysize,
                               (size_t)maximumspace,
                               logger,
                               timer,
                               err) != 0)
    {
      haserr = true;
    }
  }
  if (!haserr)
  {
    if (fci.differentcodes > 0 && onlyallrandomcodes)
    {
      run_allcodes_distribution(fci.allrandomcodes, fci.differentcodes);
      gt_free(fci.allrandomcodes);
      fci.allrandomcodes = NULL;
      gt_randomcodes_countocc_delete(fci.fcsl, &fci.tab);
      gt_firstcodes_spacelog_delete(fci.fcsl);
      gt_seqnumrelpos_delete(fci.buf.snrp);
      gt_Sfxmappedrangelist_delete(sfxmrlist);
      return 0;
    }
    fci.flushcount = 0;
    fci.codebuffer_total = 0;
    gt_randomcodes_fillbinsearchcache(&fci, addbscache_depth);
    if (gt_randomcodes_allocspace(&fci,
                                 numofparts,
                                 maximumspace,
                                 phase2extra,
                                 err) != 0)
    {
      haserr = true;
    }
  }
  fci.buf.nextfree = 0;
  if (!haserr)
  {
    gt_randomcodes_accumulatecounts_run(&fci,
                                       encseq,
                                       bucketkeysize,
                                       skipshorter,
                                       logger,
                                       timer);
    maxbucketsize = gt_randomcodes_partialsums(fci.fcsl, &fci.tab,
        fci.total_count);
    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_randomcodes_map_sections(&fci, sfxmrlist);
    if (numofparts == 0 || maximumspace > 0)
    {
      int retval = gt_randomcodes_auto_parts(&fci,
                                            sfxmrlist,
                                            numofparts,
                                            &maximumspace,
                                            maxbucketsize,
                                            sortingdepth,
                                            totallength,
                                            maxseqlength,
                                            fci.total_count,
                                            phase2extra,
                                            err);
      if (retval < 0)
      {
        haserr = true;
      } else
      {
        numofparts = (unsigned int) retval;
      }
    }
  }
  if (!haserr)
  {
    gt_assert(numofparts > 0);
    suftabparts_rc = gt_suftabparts_rc_new(numofparts,
                                     NULL,
                                     &fci.tab,
                                     sfxmrlist,
                                     fci.total_count,
                                     0,
                                     logger);
    gt_assert(suftabparts_rc != NULL);
    gt_suftabparts_rc_showallrecords(suftabparts_rc, true);
    gt_Sfxmappedrangelist_delete(sfxmrlist);
    sfxmrlist = NULL;
    gt_randomcodes_samples_delete(fci.fcsl, &fci.tab);
    gt_assert(fci.buf.nextfree == 0);
    gt_assert(fci.mappedleftborder != NULL);
    gt_Sfxmappedrange_usetmp(fci.mappedleftborder,
        gt_randomcodes_outfilenameleftborder(&fci.tab),
        (void **)
        gt_randomcodes_leftborder_address(&fci.tab),
        gt_randomcodes_leftborder_entries(&fci.tab),
        true);
    if (gt_suftabparts_rc_numofparts(suftabparts_rc) > 1U)
    {
      gt_assert(fci.allrandomcodes != NULL);
      gt_assert(fci.mappedallrandomcodes != NULL);
      gt_Sfxmappedrange_storetmp_ulong(fci.mappedallrandomcodes,
          &fci.allrandomcodes, false);
      GT_FCI_SUBTRACTSPLITSPACE(fci.fcsl, "allrandomcodes");
      gt_assert(fci.allrandomcodes == NULL);
    } else
    {
      gt_Sfxmappedrange_delete(fci.mappedallrandomcodes);
      fci.mappedallrandomcodes = NULL;
    }
    largest_width = gt_suftabparts_rc_largest_width(suftabparts_rc);
    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_randomcodes_insertsuffixes_flush;
    srswtab = gt_malloc(sizeof (*srswtab) * threads);
    for (threadcount = 0; threadcount < threads; threadcount++)
    {
      srswtab[threadcount]
        = gt_shortreadsort_new(maxbucketsize, maxseqlength - bucketkeysize,
                               readmode, true, false);
    }
    GT_FCI_ADDWORKSPACE(fci.fcsl, "shortreadsort",
                        threads * gt_shortreadsort_size(true, maxbucketsize,
                                                  maxseqlength-bucketkeysize));
    gt_randomcodes_allocsize_for_insertion(&fci,
                                          maximumspace,
                                          suftabparts_rc,
                                          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_rc_numofparts(suftabparts_rc); part++)
    {
      if (gt_randomcodes_process_part(&fci,
                                     encseq,
                                     readmode,
                                     bucketkeysize,
                                     sortingdepth,
                                     skipshorter,
                                     suftabparts_rc,
                                     part,
                                     maximumspace,
                                     threads,
                                     fci.total_count,
                                     withsuftabcheck,
                                     srswtab,
                                     itvprocess,
                                     itvprocess_end,
                                     itvprocessdatatab,
                                     logger,
                                     timer,
                                     err) != 0)
      {
        haserr = true;
      }
    }
  }
  gt_log_log("suftabentries=" GT_WU "", suftabentries);
  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.total_inserted);
  }
  if (!haserr)
  {
    if (!onlyaccumulation)
    {
      gt_assert(fci.flushcount > 0);
      gt_logger_log(logger,
                    "total inserted=" GT_WU " (%.3f%% of all suffixes), "
                    "%u rounds (avg length " GT_WU ")", fci.total_inserted,
                    100.0 * (double) fci.total_inserted/totallength,
                    fci.flushcount, fci.codebuffer_total/fci.flushcount);
      gt_assert(fci.total_inserted == fci.total_count);
    } else
    {
      gt_randomcodes_delete_before_end(&fci);
    }
  }
  if (srswtab != NULL)
  {
    for (threadcount=0; threadcount<threads; threadcount++)
    {
      gt_shortreadsort_delete(srswtab[threadcount]);
    }
    gt_free(srswtab);
  }
  if (haserr)
  {
    gt_randomcodes_delete_before_end(&fci);
    gt_free(fci.allrandomcodes);
    fci.allrandomcodes = NULL;
    gt_Sfxmappedrangelist_delete(sfxmrlist);
    fci.buf.spaceGtUword = NULL;
    gt_radixsort_delete(fci.radixsort_code);
  }
  gt_suftabparts_rc_delete(suftabparts_rc);
  gt_randomcodes_countocc_delete(fci.fcsl, &fci.tab);
  gt_randomcodes_tab_delete(fci.fcsl, &fci.tab);
  if (fci.spmsuftab != NULL)
  {
    gt_spmsuftab_delete(fci.spmsuftab);
    GT_FCI_SUBTRACTWORKSPACE(fci.fcsl, "suftab");
    fci.spmsuftab = NULL;
  }
  if (fci.mappedallrandomcodes == NULL && fci.allrandomcodes != NULL)
  {
    gt_free(fci.allrandomcodes);
    fci.allrandomcodes = NULL;
    GT_FCI_SUBTRACTSPLITSPACE(fci.fcsl, "allrandomcodes");
  }
  gt_Sfxmappedrange_delete(fci.mappedleftborder);
  gt_Sfxmappedrange_delete(fci.mappedallrandomcodes);
  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);
  return haserr ? -1 : 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x4d8, %rsp            # imm = 0x4D8
movl %r9d, %ebp
movl %r8d, 0xdc(%rsp)
movq %rcx, %r15
movl %edx, %r12d
movq %rsi, 0x88(%rsp)
movq %rdi, %r13
callq 0xe7b9c
movq %rax, %rbx
movq %r13, %rdi
callq 0xebd5d
movq %rax, %rcx
movl %ebp, %r14d
xorl %eax, %eax
cmpq %r14, %rcx
jb 0x1bfe65
movl %r12d, 0xc8(%rsp)
movq %rcx, 0xe0(%rsp)
movl %ebp, 0xec(%rsp)
movq %r15, 0x80(%rsp)
movq %rbx, 0xf8(%rsp)
leaq 0x2fcc77(%rip), %rax    # 0x4b9e18
movl (%rax), %ebp
movq %r13, %rdi
callq 0xebd5d
movq %rax, %rbx
xorl %edi, %edi
subq %r14, %rax
cmovaeq %rax, %rdi
callq 0x105e91
movl %eax, %r14d
movl %eax, %edi
movq %r13, %rsi
callq 0x1e2bc4
movq %rax, %r12
movq %rax, 0x1f8(%rsp)
xorpd %xmm0, %xmm0
movupd %xmm0, 0x1d0(%rsp)
movb $0x1, 0x208(%rsp)
movq %r13, 0xb8(%rsp)
movq %r13, %rdi
callq 0xe7bac
testq %rax, %rax
je 0x1c12e3
movq %rax, %r15
leaq -0x1(%rax), %rdi
callq 0x105e91
movl %eax, %r13d
leal (%r14,%r13), %eax
movl %eax, 0xb0(%rsp)
cmpl $0x41, %eax
setae %al
movl %eax, 0xc4(%rsp)
jb 0x1bd261
movq %r12, %rdi
callq 0x1e2c02
movq $0x0, 0x1f8(%rsp)
leaq 0x1e8a2f(%rip), %rsi    # 0x3a5c75
movq 0x580(%rsp), %rdi
movq %r15, %rdx
movq %rbx, %rcx
movl %r13d, %r8d
movl %r14d, %r9d
xorl %eax, %eax
callq 0xfcb67
callq 0x316800
movq %rax, %rbx
movq %rax, 0x1a8(%rsp)
xorpd %xmm0, %xmm0
movupd %xmm0, 0x178(%rsp)
movupd %xmm0, 0x188(%rsp)
movq $0x0, 0x198(%rsp)
movupd %xmm0, 0x1e8(%rsp)
movq 0xb8(%rsp), %rdi
callq 0xf64eb
movq %rax, (%rsp)
leaq 0x1eedd9(%rip), %rdx    # 0x3ac08d
leaq 0x1c9f42(%rip), %r8     # 0x3871fd
movq %rbx, %rdi
movl $0x39c, %esi            # imm = 0x39C
movl $0x1, %ecx
movl $0x1, %r9d
callq 0x316945
cmpb $0x0, 0x520(%rsp)
je 0x1bd2e5
movq %rbx, %rdi
callq 0x316833
movq 0x578(%rsp), %r12
movb 0x528(%rsp), %r13b
xorl %ebx, %ebx
leaq 0x210(%rsp), %r14
movq %rbx, -0x70(%r14)
movq %r14, %rdi
callq 0x324b4a
movq %rbx, -0x100(%r14)
xorpd %xmm0, %xmm0
movapd %xmm0, -0x110(%r14)
movl 0xb0(%rsp), %eax
movl %eax, -0x9c(%r14)
movq $0x0, 0xa8(%rsp)
movq %rbx, -0xc8(%r14)
movupd %xmm0, -0xb8(%r14)
cmpl $0x40, %eax
ja 0x1bf81a
movq %rbp, 0xd0(%rsp)
movb 0x510(%rsp), %bpl
callq 0x1ef47b
movq %rax, 0xa8(%rsp)
movq 0xb8(%rsp), %r15
movq %r15, %rdi
callq 0xe7b9c
movq %rax, %rbx
movq %r15, %rdi
callq 0xe7bac
movq %rax, %r15
movq 0x88(%rsp), %rax
movl %eax, %ecx
movq %rcx, 0xf0(%rsp)
leal (%rax,%rax), %ecx
negb %cl
movq $-0x1, %rdx
shrq %cl, %rdx
movq %rdx, 0x60(%rsp)
testb %bpl, %bpl
movq %rbx, 0x90(%rsp)
jne 0x1bd448
incl %eax
movq %r15, %r12
imulq %rax, %r12
decq %r12
leaq 0x1eef54(%rip), %rdi    # 0x3ac32b
movq %rbx, %rsi
xorl %eax, %eax
callq 0x103d72
leaq 0x1eef55(%rip), %rdi    # 0x3ac33d
movq %r15, %rsi
xorl %eax, %eax
callq 0x103d72
movq %rbx, %r15
subq %r12, %r15
jbe 0x1bd40d
leaq 0x1eef4f(%rip), %rdi    # 0x3ac350
movq %r15, %rsi
xorl %eax, %eax
callq 0x103d72
jmp 0x1bd42b
movq 0xb8(%rsp), %rdi
callq 0xebd4a
movq %rbx, %r15
cmpq 0xf0(%rsp), %rax
ja 0x1c1315
movl 0x518(%rsp), %ecx
movq %r15, %rax
xorl %edx, %edx
divq %rcx
cmpq $0x3, %rax
movl $0x2, %r15d
cmovaeq %rax, %r15
leaq 0x1(%r15), %rax
movq %rax, 0x118(%rsp)
leaq 0x8(,%r15,8), %r12
movq 0x80(%rsp), %r15
testq %r15, %r15
je 0x1bd531
movq 0x1a8(%rsp), %rdi
callq 0x316846
addq %r12, %rax
cmpq %r15, %rax
jbe 0x1bd531
movq 0x1a8(%rsp), %rdi
callq 0x316846
leaq 0x1eed6c(%rip), %rsi    # 0x3ac206
movq 0xd0(%rsp), %rbp
movq %rax, %xmm1
movq 0x18a431(%rip), %xmm2   # 0x3478e0
punpckldq %xmm2, %xmm1    # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0x18a435(%rip), %xmm3   # 0x3478f0
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
movsd 0x18a42d(%rip), %xmm4   # 0x347900
mulsd %xmm4, %xmm0
movq %r12, %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 0x80(%rsp), %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
movq 0x580(%rsp), %rdi
movb $0x3, %al
callq 0xfcb67
movq 0x578(%rsp), %r12
jmp 0x1bf81a
leaq 0x1eeb55(%rip), %r15    # 0x3ac08d
movq %r12, %rdi
movq %r15, %rsi
movl $0x414, %edx            # imm = 0x414
callq 0x104226
movq %rax, 0x1a0(%rsp)
movq 0x1a8(%rsp), %rdi
movq %r12, (%rsp)
leaq 0x19ab26(%rip), %r8     # 0x358089
movl $0x415, %esi            # imm = 0x415
movq %r15, %rdx
movl $0x1, %ecx
xorl %r9d, %r9d
callq 0x316945
testb %bpl, %bpl
je 0x1bd5f3
movq 0x578(%rsp), %r12
testq %r12, %r12
movq 0x88(%rsp), %rbx
je 0x1bd5ab
movq 0x2fb93f(%rip), %rax    # 0x4b8ed8
movq (%rax), %rdx
leaq 0x1eecd2(%rip), %rsi    # 0x3ac275
movq %r12, %rdi
callq 0x11cc90
xorpd %xmm0, %xmm0
movupd %xmm0, 0x8(%rsp)
leaq 0x100(%rsp), %rax
movq %rax, (%rsp)
leaq 0x404b(%rip), %r9       # 0x1c1613
movq 0xb8(%rsp), %rdi
xorl %esi, %esi
movl %ebx, %edx
movl %ebx, %ecx
movl $0x1, %r8d
callq 0x1f73f9
movq 0xd0(%rsp), %rbp
movq 0x60(%rsp), %r10
jmp 0x1bf6da
movq 0xb8(%rsp), %r13
movq %r13, %rdi
callq 0xed62d
movq %rax, %rbp
movq %r13, %rdi
callq 0xf6567
movq 0x90(%rsp), %rbx
movq %rbx, %r15
movl %eax, %ecx
shrq %cl, %r15
movq 0x578(%rsp), %r12
testq %r12, %r12
movq 0x88(%rsp), %r14
je 0x1bd6a4
movq 0x2fb89e(%rip), %r12    # 0x4b8ed8
movq (%r12), %rdx
leaq 0x1eec47(%rip), %rsi    # 0x3ac28c
movq 0x578(%rsp), %rdi
callq 0x11cc90
movq 0x118(%rsp), %rsi
movq 0x1a0(%rsp), %rdi
decq %rsi
movq 0x578(%rsp), %rax
movq %rax, (%rsp)
movq %r13, %rdx
movq %rbx, %rcx
movl 0x518(%rsp), %r8d
movl %r14d, %r9d
callq 0x1c1646
movq (%r12), %rdx
movq 0x578(%rsp), %r12
leaq 0x1eec11(%rip), %rsi    # 0x3ac2ab
movq %r12, %rdi
callq 0x11cc90
jmp 0x1bd6d5
movq 0x118(%rsp), %rsi
movq 0x1a0(%rsp), %rdi
decq %rsi
movq $0x0, (%rsp)
movq %r13, %rdx
movq %rbx, %rcx
movl 0x518(%rsp), %r8d
movl %r14d, %r9d
callq 0x1c1646
cmpq $0x1, 0x118(%rsp)
movq 0x60(%rsp), %r10
jne 0x1bd6ec
xorl %eax, %eax
jmp 0x1bf6c2
movl $0x20, %r8d
subl %r14d, %r8d
leal (%r8,%r8), %ecx
movq $-0x1, %rdi
shrq %cl, %rdi
movq 0x1a0(%rsp), %r11
xorl %ebx, %ebx
movq 0x90(%rsp), %r9
movq %r8, 0x68(%rsp)
movq %rdi, 0x58(%rsp)
movq (%r11,%rbx,8), %rdx
movq %rdx, %rsi
notq %rsi
addq %r9, %rsi
cmpq %r15, %rdx
cmovbeq %rdx, %rsi
movl %esi, %ecx
andl $0x1f, %ecx
shrq $0x5, %rsi
movl %r8d, %eax
subl %ecx, %eax
jae 0x1bd75b
addl %r14d, %ecx
addl %ecx, %ecx
addb $-0x40, %cl
movq (%rbp,%rsi,8), %r13
movq 0x8(%rbp,%rsi,8), %rax
shldq %cl, %rax, %r13
jmp 0x1bd767
movq (%rbp,%rsi,8), %r13
addl %eax, %eax
movl %eax, %ecx
shrq %cl, %r13
movq %r13, %rax
andq %rdi, %rax
movq %rax, (%r11,%rbx,8)
cmpq %r15, %rdx
jbe 0x1bf6ab
leal -0x2(%r14), %ecx
cmpl $0x1e, %ecx
ja 0x1c1324
leaq 0x1ee83e(%rip), %rdx    # 0x3abfcc
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
shrl $0x2, %eax
andl $0x3, %eax
andl $0x3, %r13d
leal (%rax,%r13,4), %eax
jmp 0x1bf6a4
movq %rax, %rcx
shlq $0x38, %r13
movabsq $0x300000000000000, %rdx # imm = 0x300000000000000
andq %rdx, %r13
movq %rax, %rdx
movq %rax, %rsi
movq %rax, %rdi
shlq $0x30, %rdi
movabsq $0x30000000000000, %r8  # imm = 0x30000000000000
andq %r8, %rdi
movq %rax, %r8
shrq $0x2c, %r8
andl $0xc0, %r8d
orq %rdi, %r8
movq %rax, %rdi
shlq $0x2c, %rdi
movabsq $0xc000000000000, %r9   # imm = 0xC000000000000
andq %r9, %rdi
orq %r8, %rdi
movq %rax, %r8
shrq $0x28, %r8
andl $0x300, %r8d            # imm = 0x300
orq %rdi, %r8
movq %rax, %rdi
shlq $0x28, %rdi
movabsq $0x3000000000000, %r9   # imm = 0x3000000000000
andq %r9, %rdi
orq %r8, %rdi
movq %rax, %r8
shrq $0x24, %r8
andl $0xc00, %r8d            # imm = 0xC00
movq %rax, %r9
shlq $0x24, %r9
movabsq $0xc00000000000, %r10   # imm = 0xC00000000000
andq %r10, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x20, %r8
andl $0x3000, %r8d           # imm = 0x3000
orq %r9, %r8
movq %rax, %r9
shlq $0x20, %r9
movabsq $0x300000000000, %r10   # imm = 0x300000000000
andq %r10, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x1c, %r8
andl $0xc000, %r8d           # imm = 0xC000
orq %r9, %r8
movq %rax, %r10
shlq $0x1c, %r10
movabsq $0xc0000000000, %r9     # imm = 0xC0000000000
andq %r9, %r10
orq %r8, %r10
movq %rax, %r8
shrq $0x18, %r8
andl $0x30000, %r8d          # imm = 0x30000
movq %rax, %r9
shlq $0x18, %r9
movabsq $0x30000000000, %r14    # imm = 0x30000000000
andq %r14, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x14, %r8
andl $0xc0000, %r8d          # imm = 0xC0000
orq %r9, %r8
movq %rax, %r9
shlq $0x14, %r9
movabsq $0xc000000000, %r14     # imm = 0xC000000000
andq %r14, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x10, %r8
andl $0x300000, %r8d         # imm = 0x300000
orq %r9, %r8
movq %rax, %r9
shlq $0x10, %r9
movabsq $0x3000000000, %r14     # imm = 0x3000000000
andq %r14, %r9
orq %r8, %r9
movq %rax, %r12
shrq $0xc, %r12
andl $0xc00000, %r12d        # imm = 0xC00000
orq %r9, %r12
movq %rax, %r8
shlq $0xc, %r8
movabsq $0xc00000000, %r9       # imm = 0xC00000000
andq %r9, %r8
movq %rax, %r9
shrq $0x8, %r9
andl $0x3000000, %r9d        # imm = 0x3000000
orq %r8, %r9
movq %rax, %r8
shlq $0x8, %r8
movabsq $0x300000000, %r14      # imm = 0x300000000
andq %r14, %r8
orq %r9, %r8
movl %eax, %r14d
shrl $0x4, %r14d
andl $0xc000000, %r14d       # imm = 0xC000000
orq %r8, %r14
movl %eax, %r9d
shll $0x4, %r9d
andl $0xc0000000, %r9d       # imm = 0xC0000000
orq %r14, %r9
movq 0x88(%rsp), %r14
movq %rax, %r8
andl $0x30000000, %eax       # imm = 0x30000000
orq %r13, %rax
shrq $0x38, %rcx
andl $0x3, %ecx
orq %rcx, %rax
shrq $0x34, %rdx
andl $0xc, %edx
orq %rdx, %rax
shlq $0x34, %rsi
movabsq $0xc0000000000000, %rcx # imm = 0xC0000000000000
andq %rcx, %rsi
orq %rsi, %rax
shrq $0x30, %r8
jmp 0x1bf46e
movq %rax, %rcx
shrq $0x22, %rcx
andl $0x3, %ecx
shlq $0x22, %r13
movabsq $0xc00000000, %rdx      # imm = 0xC00000000
andq %rdx, %r13
orq %rcx, %r13
movq %rax, %rcx
shrq $0x1e, %rcx
andl $0xc, %ecx
orq %r13, %rcx
movq %rax, %rsi
shlq $0x1e, %rsi
movabsq $0x300000000, %rdx      # imm = 0x300000000
andq %rdx, %rsi
orq %rcx, %rsi
movl %eax, %edx
shrl $0x1a, %edx
andl $-0x10, %edx
orq %rsi, %rdx
movl %eax, %ecx
andl $-0x10, %ecx
shll $0x1a, %ecx
movl %eax, %esi
shrl $0x16, %esi
andl $0xc0, %esi
orq %rcx, %rsi
movl %eax, %ecx
shll $0x16, %ecx
andl $0x30000000, %ecx       # imm = 0x30000000
orq %rsi, %rcx
movl %eax, %esi
shrl $0x12, %esi
andl $0x300, %esi            # imm = 0x300
orq %rcx, %rsi
movl %eax, %ecx
shll $0x12, %ecx
andl $0xc000000, %ecx        # imm = 0xC000000
orq %rsi, %rcx
orq %rdx, %rcx
movl %eax, %edx
shrl $0xe, %edx
andl $0xc00, %edx            # imm = 0xC00
movl %eax, %esi
shll $0xe, %esi
andl $0x3000000, %esi        # imm = 0x3000000
orq %rdx, %rsi
movl %eax, %edx
shrl $0xa, %edx
andl $0x3000, %edx           # imm = 0x3000
orq %rsi, %rdx
movl %eax, %esi
shll $0xa, %esi
andl $0xc00000, %esi         # imm = 0xC00000
orq %rdx, %rsi
movl %eax, %edx
shrl $0x6, %edx
andl $0xc000, %edx           # imm = 0xC000
orq %rsi, %rdx
movl %eax, %esi
shll $0x6, %esi
andl $0x300000, %esi         # imm = 0x300000
orq %rdx, %rsi
orq %rcx, %rsi
movl %eax, %ecx
shrl $0x2, %ecx
andl $0x30000, %ecx          # imm = 0x30000
shll $0x2, %eax
andl $0xc0000, %eax          # imm = 0xC0000
orq %rcx, %rax
jmp 0x1be225
bswapl %eax
movl %eax, %ecx
shrl $0x4, %ecx
andl $0xf0f0f0f, %ecx        # imm = 0xF0F0F0F
shll $0x4, %eax
andl $0xf0f0f0f0, %eax       # imm = 0xF0F0F0F0
orl %ecx, %eax
movl %eax, %ecx
shrl $0x2, %ecx
andl $0x33333333, %ecx       # imm = 0x33333333
andl $0xf3333333, %eax       # imm = 0xF3333333
jmp 0x1be880
movl %eax, %ecx
shrl $0x18, %ecx
andl $0x3, %ecx
andl $0x3, %r13d
shll $0x18, %r13d
movl %eax, %edx
shrl $0x14, %edx
andl $0xc, %edx
movl %eax, %esi
andl $0xc, %esi
shll $0x14, %esi
movl %eax, %edi
shrl $0x10, %edi
andl $0x30, %edi
movl %eax, %r8d
andl $0x30, %r8d
shll $0x10, %r8d
movl %eax, %r9d
shrl $0xc, %r9d
andl $0xc0, %r9d
orq %r8, %r9
movl %eax, %r8d
shll $0xc, %r8d
andl $0xc0000, %r8d          # imm = 0xC0000
orq %r9, %r8
movl %eax, %r9d
shrl $0x8, %r9d
andl $0x300, %r9d            # imm = 0x300
orq %r8, %r9
movl %eax, %r8d
shll $0x8, %r8d
andl $0x30000, %r8d          # imm = 0x30000
orq %r9, %r8
movl %eax, %r9d
shrl $0x4, %r9d
andl $0xc00, %r9d            # imm = 0xC00
movl %eax, %r10d
shll $0x4, %r10d
andl $0xc000, %r10d          # imm = 0xC000
orq %r9, %r10
movq 0x90(%rsp), %r9
andl $0x3000, %eax           # imm = 0x3000
orq %r13, %rax
orq %rcx, %rax
orq %rdx, %rax
orq %rsi, %rax
orq %rdi, %rax
movq 0x58(%rsp), %rdi
orq %r8, %rax
movq 0x68(%rsp), %r8
orq %r10, %rax
movq 0x60(%rsp), %r10
jmp 0x1bf6a4
movl %eax, %ecx
shrl $0xa, %ecx
andl $0x3, %ecx
andl $0x3, %r13d
shll $0xa, %r13d
orl %ecx, %r13d
movl %eax, %ecx
shrl $0x6, %ecx
andl $0xc, %ecx
orl %r13d, %ecx
movl %eax, %edx
andl $0xc, %edx
shll $0x6, %edx
orl %ecx, %edx
movl %eax, %ecx
shrl $0x2, %ecx
andl $0x30, %ecx
orl %edx, %ecx
andl $0x30, %eax
jmp 0x1be880
movl %eax, %ecx
shrl $0x1a, %ecx
shll $0x1a, %r13d
orl %ecx, %r13d
andl $0xc000003, %r13d       # imm = 0xC000003
movl %eax, %ecx
shrl $0x16, %ecx
andl $0xc, %ecx
orl %r13d, %ecx
movl %eax, %edx
andl $0xc, %edx
shll $0x16, %edx
orl %ecx, %edx
movl %eax, %ecx
shrl $0x12, %ecx
andl $0x30, %ecx
orl %edx, %ecx
movl %eax, %edx
andl $0x30, %edx
shll $0x12, %edx
orl %ecx, %edx
movl %eax, %esi
shrl $0xe, %esi
andl $0xc0, %esi
orl %edx, %esi
movl %eax, %ecx
shll $0xe, %ecx
andl $0x300000, %ecx         # imm = 0x300000
orl %esi, %ecx
movl %eax, %edx
shrl $0xa, %edx
andl $0x300, %edx            # imm = 0x300
movl %eax, %esi
shll $0xa, %esi
andl $0xc0000, %esi          # imm = 0xC0000
orl %edx, %esi
movl %eax, %edx
shrl $0x6, %edx
andl $0xc00, %edx            # imm = 0xC00
orl %esi, %edx
movl %eax, %esi
shll $0x6, %esi
andl $0x30000, %esi          # imm = 0x30000
orl %edx, %esi
movl %eax, %edx
shrl $0x2, %edx
andl $0x3000, %edx           # imm = 0x3000
orl %esi, %edx
shll $0x2, %eax
andl $0xc000, %eax           # imm = 0xC000
orl %edx, %eax
orl %ecx, %eax
jmp 0x1bf6a4
movl %eax, %ecx
shrl $0x14, %ecx
andl $0x3, %ecx
andl $0x3, %r13d
shll $0x14, %r13d
movl %eax, %edx
shrl $0x10, %edx
andl $0xc, %edx
movl %eax, %esi
andl $0xc, %esi
shll $0x10, %esi
movl %eax, %edi
shrl $0xc, %edi
andl $0x30, %edi
movl %eax, %r8d
andl $0x30, %r8d
shll $0xc, %r8d
movl %eax, %r9d
shrl $0x8, %r9d
andl $0xc0, %r9d
orq %r8, %r9
movl %eax, %r8d
shll $0x8, %r8d
andl $0xc000, %r8d           # imm = 0xC000
orq %r9, %r8
movl %eax, %r9d
shrl $0x4, %r9d
andl $0x300, %r9d            # imm = 0x300
orq %r8, %r9
movl %eax, %r8d
shll $0x4, %r8d
andl $0x3000, %r8d           # imm = 0x3000
orq %r9, %r8
movq 0x90(%rsp), %r9
andl $0xc00, %eax            # imm = 0xC00
jmp 0x1be5a7
movq %rax, %rcx
shlq $0x34, %r13
movabsq $0x30000000000000, %rdx # imm = 0x30000000000000
andq %rdx, %r13
movq %rax, %rdx
movq %rax, %rsi
movq %rax, %rdi
shlq $0x2c, %rdi
movabsq $0x3000000000000, %r8   # imm = 0x3000000000000
andq %r8, %rdi
movq %rax, %r8
shrq $0x28, %r8
andl $0xc0, %r8d
orq %rdi, %r8
movq %rax, %rdi
shlq $0x28, %rdi
movabsq $0xc00000000000, %r9    # imm = 0xC00000000000
andq %r9, %rdi
orq %r8, %rdi
movq %rax, %r8
shrq $0x24, %r8
andl $0x300, %r8d            # imm = 0x300
orq %rdi, %r8
movq %rax, %rdi
shlq $0x24, %rdi
movabsq $0x300000000000, %r9    # imm = 0x300000000000
andq %r9, %rdi
orq %r8, %rdi
movq %rax, %r8
shrq $0x20, %r8
andl $0xc00, %r8d            # imm = 0xC00
movq %rax, %r9
shlq $0x20, %r9
movabsq $0xc0000000000, %r10    # imm = 0xC0000000000
andq %r10, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x1c, %r8
andl $0x3000, %r8d           # imm = 0x3000
orq %r9, %r8
movq %rax, %r9
shlq $0x1c, %r9
movabsq $0x30000000000, %r10    # imm = 0x30000000000
andq %r10, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x18, %r8
andl $0xc000, %r8d           # imm = 0xC000
orq %r9, %r8
movq %rax, %r10
shlq $0x18, %r10
movabsq $0xc000000000, %r9      # imm = 0xC000000000
andq %r9, %r10
orq %r8, %r10
movq %rax, %r8
shrq $0x14, %r8
andl $0x30000, %r8d          # imm = 0x30000
movq %rax, %r9
shlq $0x14, %r9
movabsq $0x3000000000, %r14     # imm = 0x3000000000
andq %r14, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x10, %r8
andl $0xc0000, %r8d          # imm = 0xC0000
orq %r9, %r8
movq %rax, %r9
shlq $0x10, %r9
movabsq $0xc00000000, %r14      # imm = 0xC00000000
andq %r14, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0xc, %r8
andl $0x300000, %r8d         # imm = 0x300000
orq %r9, %r8
movq %rax, %r9
shlq $0xc, %r9
movabsq $0x300000000, %r14      # imm = 0x300000000
andq %r14, %r9
orq %r8, %r9
movl %eax, %r12d
shrl $0x8, %r12d
andl $0xc00000, %r12d        # imm = 0xC00000
orq %r9, %r12
movl %eax, %r8d
shll $0x8, %r8d
andl $0xc0000000, %r8d       # imm = 0xC0000000
movl %eax, %r14d
shrl $0x4, %r14d
andl $0x3000000, %r14d       # imm = 0x3000000
orq %r8, %r14
movl %eax, %r9d
shll $0x4, %r9d
andl $0x30000000, %r9d       # imm = 0x30000000
orq %r14, %r9
movq 0x88(%rsp), %r14
movq %rax, %r8
andl $0xc000000, %eax        # imm = 0xC000000
orq %r13, %rax
shrq $0x34, %rcx
andl $0x3, %ecx
orq %rcx, %rax
shrq $0x30, %rdx
andl $0xc, %edx
orq %rdx, %rax
shlq $0x30, %rsi
movabsq $0xc000000000000, %rcx  # imm = 0xC000000000000
andq %rcx, %rsi
orq %rsi, %rax
shrq $0x2c, %r8
jmp 0x1bf46e
movq %rax, %rcx
shrq $0x32, %rcx
andl $0x3, %ecx
shlq $0x32, %r13
movabsq $0xc000000000000, %rdx  # imm = 0xC000000000000
andq %rdx, %r13
orq %rcx, %r13
movq %rax, %rcx
shrq $0x2e, %rcx
andl $0xc, %ecx
orq %r13, %rcx
movq %rax, %rdx
shlq $0x2e, %rdx
movabsq $0x3000000000000, %rsi  # imm = 0x3000000000000
andq %rsi, %rdx
orq %rcx, %rdx
movq %rax, %rcx
shrq $0x2a, %rcx
andl $0x30, %ecx
orq %rdx, %rcx
movq %rax, %rdx
shlq $0x2a, %rdx
movabsq $0xc00000000000, %rsi   # imm = 0xC00000000000
andq %rsi, %rdx
movq %rax, %rsi
shrq $0x26, %rsi
andl $0xc0, %esi
orq %rdx, %rsi
movq %rax, %rdx
shlq $0x26, %rdx
movabsq $0x300000000000, %rdi   # imm = 0x300000000000
andq %rdi, %rdx
orq %rsi, %rdx
movq %rax, %rsi
shrq $0x22, %rsi
andl $0x300, %esi            # imm = 0x300
orq %rdx, %rsi
movq %rax, %rdx
shlq $0x22, %rdx
movabsq $0xc0000000000, %rdi    # imm = 0xC0000000000
andq %rdi, %rdx
orq %rsi, %rdx
orq %rcx, %rdx
movq %rax, %rcx
shrq $0x1e, %rcx
andl $0xc00, %ecx            # imm = 0xC00
movq %rax, %rsi
shlq $0x1e, %rsi
movabsq $0x30000000000, %rdi    # imm = 0x30000000000
andq %rdi, %rsi
orq %rcx, %rsi
movq %rax, %rcx
shrq $0x1a, %rcx
andl $0x3000, %ecx           # imm = 0x3000
orq %rsi, %rcx
movq %rax, %rsi
shlq $0x1a, %rsi
movabsq $0xc000000000, %rdi     # imm = 0xC000000000
andq %rdi, %rsi
orq %rcx, %rsi
movq %rax, %rdi
shrq $0x16, %rdi
andl $0xc000, %edi           # imm = 0xC000
orq %rsi, %rdi
movq %rax, %rcx
shlq $0x16, %rcx
movabsq $0x3000000000, %rsi     # imm = 0x3000000000
andq %rsi, %rcx
orq %rdi, %rcx
orq %rdx, %rcx
movq %rax, %rdx
shrq $0x12, %rdx
andl $0x30000, %edx          # imm = 0x30000
movq %rax, %rsi
shlq $0x12, %rsi
movabsq $0xc00000000, %rdi      # imm = 0xC00000000
andq %rdi, %rsi
movq 0x58(%rsp), %rdi
orq %rdx, %rsi
movq %rax, %rdx
shrq $0xe, %rdx
andl $0xc0000, %edx          # imm = 0xC0000
orq %rsi, %rdx
movq %rax, %rsi
shlq $0xe, %rsi
movabsq $0x300000000, %r13      # imm = 0x300000000
andq %r13, %rsi
orq %rdx, %rsi
movl %eax, %edx
shrl $0xa, %edx
andl $0x300000, %edx         # imm = 0x300000
orq %rsi, %rdx
movl %eax, %esi
shll $0xa, %esi
andl $0xc0000000, %esi       # imm = 0xC0000000
orq %rdx, %rsi
movl %eax, %edx
shrl $0x6, %edx
andl $0xc00000, %edx         # imm = 0xC00000
orq %rsi, %rdx
orq %rcx, %rdx
movl %eax, %ecx
shll $0x6, %ecx
andl $0x30000000, %ecx       # imm = 0x30000000
movl %eax, %esi
shrl $0x2, %esi
andl $0x3000000, %esi        # imm = 0x3000000
orq %rcx, %rsi
shll $0x2, %eax
andl $0xc000000, %eax        # imm = 0xC000000
jmp 0x1bf69e
movl %eax, %ecx
shrl $0x4, %ecx
andl $0xf, %ecx
shll $0x4, %eax
movzbl %al, %eax
orl %ecx, %eax
movl %eax, %ecx
shrl $0x2, %ecx
andl $-0xd, %ecx
andl $0x33, %eax
jmp 0x1be880
movq %rax, %rcx
shrq $0x20, %rcx
andl $0x3, %ecx
shlq $0x20, %r13
movabsq $0x300000000, %rdx      # imm = 0x300000000
andq %rdx, %r13
movl %eax, %edx
shrl $0x1e, %edx
movl %eax, %esi
andl $-0x4, %esi
shll $0x1c, %esi
movl %eax, %edi
shrl $0x18, %edi
andl $0x30, %edi
movl %eax, %r8d
andl $0x30, %r8d
shll $0x18, %r8d
movl %eax, %r9d
shrl $0x14, %r9d
andl $0xc0, %r9d
orq %r8, %r9
movl %eax, %r8d
shll $0x14, %r8d
andl $0xc000000, %r8d        # imm = 0xC000000
orq %r9, %r8
movl %eax, %r9d
shrl $0x10, %r9d
andl $0x300, %r9d            # imm = 0x300
orq %r8, %r9
movl %eax, %r10d
shll $0x10, %r10d
andl $0x3000000, %r10d       # imm = 0x3000000
orq %r9, %r10
movl %eax, %r8d
shrl $0xc, %r8d
andl $0xc00, %r8d            # imm = 0xC00
movl %eax, %r9d
shll $0xc, %r9d
andl $0xc00000, %r9d         # imm = 0xC00000
orq %r8, %r9
movl %eax, %r8d
shrl $0x8, %r8d
andl $0x3000, %r8d           # imm = 0x3000
orq %r9, %r8
movl %eax, %r9d
shll $0x8, %r9d
andl $0x300000, %r9d         # imm = 0x300000
orq %r8, %r9
movl %eax, %r8d
shrl $0x4, %r8d
andl $0xc000, %r8d           # imm = 0xC000
orq %r9, %r8
movl %eax, %r9d
shll $0x4, %r9d
andl $0xc0000, %r9d          # imm = 0xC0000
orq %r8, %r9
movq 0x68(%rsp), %r8
andl $0x30000, %eax          # imm = 0x30000
orq %r13, %rax
orq %rcx, %rax
leaq (%rax,%rdx,4), %rax
jmp 0x1be83e
movl %eax, %ecx
shrl $0x8, %ecx
andl $0x3, %ecx
andl $0x3, %r13d
shll $0x8, %r13d
movl %eax, %edx
shrl $0x4, %edx
andl $0xc, %edx
movl %eax, %esi
andl $0xc, %esi
shll $0x4, %esi
andl $0x30, %eax
orq %r13, %rax
orq %rcx, %rax
orq %rdx, %rax
orq %rsi, %rax
jmp 0x1bf6a4
movl %eax, %ecx
shrl $0x10, %ecx
andl $0x3, %ecx
andl $0x3, %r13d
shll $0x10, %r13d
movl %eax, %edx
shrl $0xc, %edx
andl $0xc, %edx
movl %eax, %esi
andl $0xc, %esi
shll $0xc, %esi
movl %eax, %edi
shrl $0x8, %edi
andl $0x30, %edi
movl %eax, %r8d
andl $0x30, %r8d
shll $0x8, %r8d
movl %eax, %r9d
shrl $0x4, %r9d
andl $0xc0, %r9d
orq %r8, %r9
movl %eax, %r8d
shll $0x4, %r8d
andl $0xc00, %r8d            # imm = 0xC00
orq %r9, %r8
movq 0x90(%rsp), %r9
andl $0x300, %eax            # imm = 0x300
jmp 0x1be5a7
movl %eax, %ecx
shrl $0x4, %ecx
andl $0x3, %ecx
shll $0x4, %r13d
andl $0x30, %r13d
andl $0xc, %eax
orq %r13, %rax
jmp 0x1bf22b
movq %rax, %rcx
shrq $0x24, %rcx
andl $0x3, %ecx
shlq $0x24, %r13
movabsq $0x3000000000, %rdx     # imm = 0x3000000000
andq %rdx, %r13
movq %rax, %rdx
shrq $0x20, %rdx
andl $0xc, %edx
movq %rax, %rsi
shlq $0x20, %rsi
movabsq $0xc00000000, %rdi      # imm = 0xC00000000
andq %rdi, %rsi
movq %rax, %rdi
shrq $0x1c, %rdi
andl $0x30, %edi
movq %rax, %r8
shlq $0x1c, %r8
movabsq $0x300000000, %r9       # imm = 0x300000000
andq %r9, %r8
movl %eax, %r9d
shrl $0x18, %r9d
andl $-0x40, %r9d
orq %r8, %r9
movl %eax, %r8d
andl $-0x40, %r8d
shll $0x18, %r8d
orq %r9, %r8
movl %eax, %r9d
shrl $0x14, %r9d
andl $0x300, %r9d            # imm = 0x300
orq %r8, %r9
movl %eax, %r10d
shll $0x14, %r10d
andl $0x30000000, %r10d      # imm = 0x30000000
orq %r9, %r10
movl %eax, %r8d
shrl $0x10, %r8d
andl $0xc00, %r8d            # imm = 0xC00
movl %eax, %r9d
shll $0x10, %r9d
andl $0xc000000, %r9d        # imm = 0xC000000
orq %r8, %r9
movl %eax, %r8d
shrl $0xc, %r8d
andl $0x3000, %r8d           # imm = 0x3000
orq %r9, %r8
movl %eax, %r9d
shll $0xc, %r9d
andl $0x3000000, %r9d        # imm = 0x3000000
orq %r8, %r9
movl %eax, %r12d
shrl $0x8, %r12d
andl $0xc000, %r12d          # imm = 0xC000
orq %r9, %r12
movl %eax, %r8d
shll $0x8, %r8d
andl $0xc00000, %r8d         # imm = 0xC00000
orq %r12, %r8
movl %eax, %r9d
shrl $0x4, %r9d
andl $0x30000, %r9d          # imm = 0x30000
movl %eax, %r12d
shll $0x4, %r12d
andl $0x300000, %r12d        # imm = 0x300000
orq %r9, %r12
movq 0x90(%rsp), %r9
andl $0xc0000, %eax          # imm = 0xC0000
orq %r13, %rax
orq %rcx, %rax
orq %rdx, %rax
orq %rsi, %rax
orq %rdi, %rax
movq 0x58(%rsp), %rdi
orq %r10, %rax
movq 0x60(%rsp), %r10
orq %r8, %rax
movq 0x68(%rsp), %r8
orq %r12, %rax
movq 0x578(%rsp), %r12
jmp 0x1bf6a4
movq %rax, %rcx
shrq $0x2a, %rcx
andl $0x3, %ecx
shlq $0x2a, %r13
movabsq $0xc0000000000, %rdx    # imm = 0xC0000000000
andq %rdx, %r13
orq %rcx, %r13
movq %rax, %rcx
shrq $0x26, %rcx
andl $0xc, %ecx
orq %r13, %rcx
movq %rax, %rsi
shlq $0x26, %rsi
movabsq $0x30000000000, %rdx    # imm = 0x30000000000
andq %rdx, %rsi
orq %rcx, %rsi
movq %rax, %rdx
shrq $0x22, %rdx
andl $0x30, %edx
orq %rsi, %rdx
movq %rax, %rcx
shlq $0x22, %rcx
movabsq $0xc000000000, %rsi     # imm = 0xC000000000
andq %rsi, %rcx
movq %rax, %rsi
shrq $0x1e, %rsi
andl $0xc0, %esi
orq %rcx, %rsi
movq %rax, %rcx
shlq $0x1e, %rcx
movabsq $0x3000000000, %rdi     # imm = 0x3000000000
andq %rdi, %rcx
orq %rsi, %rcx
movq %rax, %rsi
shrq $0x1a, %rsi
andl $0x300, %esi            # imm = 0x300
orq %rcx, %rsi
movq %rax, %rcx
shlq $0x1a, %rcx
movabsq $0xc00000000, %rdi      # imm = 0xC00000000
andq %rdi, %rcx
orq %rsi, %rcx
orq %rdx, %rcx
movq %rax, %rdx
shrq $0x16, %rdx
andl $0xc00, %edx            # imm = 0xC00
movq %rax, %rsi
shlq $0x16, %rsi
movabsq $0x300000000, %rdi      # imm = 0x300000000
andq %rdi, %rsi
orq %rdx, %rsi
movl %eax, %edx
shrl $0x12, %edx
andl $0x3000, %edx           # imm = 0x3000
orq %rsi, %rdx
movl %eax, %esi
shll $0x12, %esi
andl $0xc0000000, %esi       # imm = 0xC0000000
orq %rdx, %rsi
movl %eax, %edi
shrl $0xe, %edi
andl $0xc000, %edi           # imm = 0xC000
orq %rsi, %rdi
movl %eax, %edx
shll $0xe, %edx
andl $0x30000000, %edx       # imm = 0x30000000
orq %rdi, %rdx
movq 0x58(%rsp), %rdi
orq %rcx, %rdx
movl %eax, %ecx
shrl $0xa, %ecx
andl $0x30000, %ecx          # imm = 0x30000
movl %eax, %esi
shll $0xa, %esi
andl $0xc000000, %esi        # imm = 0xC000000
orq %rcx, %rsi
movl %eax, %ecx
shrl $0x6, %ecx
andl $0xc0000, %ecx          # imm = 0xC0000
orq %rsi, %rcx
movl %eax, %esi
shll $0x6, %esi
andl $0x3000000, %esi        # imm = 0x3000000
orq %rcx, %rsi
movl %eax, %ecx
shrl $0x2, %ecx
andl $0x300000, %ecx         # imm = 0x300000
orq %rsi, %rcx
shll $0x2, %eax
andl $0xc00000, %eax         # imm = 0xC00000
jmp 0x1be9b9
movl %eax, %ecx
shrl $0xc, %ecx
andl $0x3, %ecx
andl $0x3, %r13d
shll $0xc, %r13d
movl %eax, %edx
shrl $0x8, %edx
andl $0xc, %edx
movl %eax, %esi
andl $0xc, %esi
shll $0x8, %esi
movl %eax, %edi
shrl $0x4, %edi
andl $0x30, %edi
movl %eax, %r8d
andl $0x30, %r8d
shll $0x4, %r8d
andl $0xc0, %eax
orq %r13, %rax
orq %rcx, %rax
orq %rdx, %rax
orq %rsi, %rax
orq %rdi, %rax
movq 0x58(%rsp), %rdi
jmp 0x1beff0
movq %rax, %rcx
shlq $0x2c, %r13
movabsq $0x300000000000, %rdx   # imm = 0x300000000000
andq %rdx, %r13
movq %rax, %rdx
movq %rax, %rsi
movq %rax, %rdi
shlq $0x24, %rdi
movabsq $0x30000000000, %r8     # imm = 0x30000000000
andq %r8, %rdi
movq %rax, %r8
shrq $0x20, %r8
andl $0xc0, %r8d
orq %rdi, %r8
movq %rax, %rdi
shlq $0x20, %rdi
movabsq $0xc000000000, %r9      # imm = 0xC000000000
andq %r9, %rdi
orq %r8, %rdi
movq %rax, %r8
shrq $0x1c, %r8
andl $0x300, %r8d            # imm = 0x300
orq %rdi, %r8
movq %rax, %rdi
shlq $0x1c, %rdi
movabsq $0x3000000000, %r9      # imm = 0x3000000000
andq %r9, %rdi
orq %r8, %rdi
movq %rax, %r8
shrq $0x18, %r8
andl $0xc00, %r8d            # imm = 0xC00
movq %rax, %r9
shlq $0x18, %r9
movabsq $0xc00000000, %r10      # imm = 0xC00000000
andq %r10, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x14, %r8
andl $0x3000, %r8d           # imm = 0x3000
orq %r9, %r8
movq %rax, %r9
shlq $0x14, %r9
movabsq $0x300000000, %r10      # imm = 0x300000000
andq %r10, %r9
orq %r8, %r9
movl %eax, %r8d
shrl $0x10, %r8d
andl $0xc000, %r8d           # imm = 0xC000
orq %r9, %r8
movl %eax, %r10d
shll $0x10, %r10d
andl $0xc0000000, %r10d      # imm = 0xC0000000
orq %r8, %r10
movl %eax, %r8d
shrl $0xc, %r8d
andl $0x30000, %r8d          # imm = 0x30000
movl %eax, %r9d
shll $0xc, %r9d
andl $0x30000000, %r9d       # imm = 0x30000000
orq %r8, %r9
movl %eax, %r8d
shrl $0x8, %r8d
andl $0xc0000, %r8d          # imm = 0xC0000
orq %r9, %r8
movl %eax, %r9d
shll $0x8, %r9d
andl $0xc000000, %r9d        # imm = 0xC000000
orq %r8, %r9
movl %eax, %r12d
shrl $0x4, %r12d
andl $0x300000, %r12d        # imm = 0x300000
orq %r9, %r12
movl %eax, %r8d
shll $0x4, %r8d
andl $0x3000000, %r8d        # imm = 0x3000000
orq %r12, %r8
movq 0x578(%rsp), %r12
movq %rax, %r9
andl $0xc00000, %eax         # imm = 0xC00000
orq %r13, %rax
shrq $0x2c, %rcx
andl $0x3, %ecx
orq %rcx, %rax
shrq $0x28, %rdx
andl $0xc, %edx
orq %rdx, %rax
shlq $0x28, %rsi
movabsq $0xc0000000000, %rcx    # imm = 0xC0000000000
andq %rcx, %rsi
orq %rsi, %rax
shrq $0x24, %r9
andl $0x30, %r9d
orq %r9, %rax
movq 0x90(%rsp), %r9
orq %rdi, %rax
movq 0x58(%rsp), %rdi
orq %r10, %rax
movq 0x60(%rsp), %r10
jmp 0x1beff0
movl %eax, %ecx
shrl $0x1c, %ecx
andl $0x3, %ecx
andl $0x3, %r13d
shll $0x1c, %r13d
movl %eax, %edx
shrl $0x18, %edx
andl $0xc, %edx
movl %eax, %esi
andl $0xc, %esi
shll $0x18, %esi
movl %eax, %edi
shrl $0x14, %edi
andl $0x30, %edi
movl %eax, %r8d
andl $0x30, %r8d
shll $0x14, %r8d
movl %eax, %r9d
shrl $0x10, %r9d
andl $0xc0, %r9d
orq %r8, %r9
movl %eax, %r8d
shll $0x10, %r8d
andl $0xc00000, %r8d         # imm = 0xC00000
orq %r9, %r8
movl %eax, %r9d
shrl $0xc, %r9d
andl $0x300, %r9d            # imm = 0x300
orq %r8, %r9
movl %eax, %r10d
shll $0xc, %r10d
andl $0x300000, %r10d        # imm = 0x300000
orq %r9, %r10
movl %eax, %r8d
shrl $0x8, %r8d
andl $0xc00, %r8d            # imm = 0xC00
movl %eax, %r9d
shll $0x8, %r9d
andl $0xc0000, %r9d          # imm = 0xC0000
orq %r8, %r9
movl %eax, %r8d
shrl $0x4, %r8d
andl $0x3000, %r8d           # imm = 0x3000
orq %r9, %r8
movl %eax, %r9d
shll $0x4, %r9d
andl $0x30000, %r9d          # imm = 0x30000
orq %r8, %r9
movq 0x68(%rsp), %r8
andl $0xc000, %eax           # imm = 0xC000
orq %r13, %rax
orq %rcx, %rax
orq %rdx, %rax
orq %rsi, %rax
orq %rdi, %rax
movq 0x58(%rsp), %rdi
orq %r10, %rax
movq 0x60(%rsp), %r10
jmp 0x1bf495
rolw $0x8, %ax
movzwl %ax, %eax
movl %eax, %ecx
shrl $0x4, %ecx
andl $0xf0f, %ecx            # imm = 0xF0F
shll $0x4, %eax
andl $0xf0f0, %eax           # imm = 0xF0F0
orl %ecx, %eax
movl %eax, %ecx
shrl $0x2, %ecx
movl $0x3333, %edx           # imm = 0x3333
andl %edx, %ecx
andl %edx, %eax
leal (%rcx,%rax,4), %eax
jmp 0x1bf6a4
movq %rax, %rcx
shrq $0x26, %rcx
andl $0x3, %ecx
shlq $0x26, %r13
movabsq $0xc000000000, %rdx     # imm = 0xC000000000
andq %rdx, %r13
orq %rcx, %r13
movq %rax, %rcx
shrq $0x22, %rcx
andl $0xc, %ecx
orq %r13, %rcx
movq %rax, %rsi
shlq $0x22, %rsi
movabsq $0x3000000000, %rdx     # imm = 0x3000000000
andq %rdx, %rsi
orq %rcx, %rsi
movq %rax, %rdx
shrq $0x1e, %rdx
andl $0x30, %edx
orq %rsi, %rdx
movq %rax, %rcx
shlq $0x1e, %rcx
movabsq $0xc00000000, %rsi      # imm = 0xC00000000
andq %rsi, %rcx
movq %rax, %rsi
shrq $0x1a, %rsi
andl $0xc0, %esi
orq %rcx, %rsi
movq %rax, %rcx
shlq $0x1a, %rcx
movabsq $0x300000000, %rdi      # imm = 0x300000000
andq %rdi, %rcx
orq %rsi, %rcx
movl %eax, %esi
shrl $0x16, %esi
andl $0x300, %esi            # imm = 0x300
orq %rcx, %rsi
movl %eax, %ecx
shll $0x16, %ecx
andl $0xc0000000, %ecx       # imm = 0xC0000000
orq %rsi, %rcx
orq %rdx, %rcx
movl %eax, %edx
shrl $0x12, %edx
andl $0xc00, %edx            # imm = 0xC00
movl %eax, %esi
shll $0x12, %esi
andl $0x30000000, %esi       # imm = 0x30000000
orq %rdx, %rsi
movl %eax, %edx
shrl $0xe, %edx
andl $0x3000, %edx           # imm = 0x3000
orq %rsi, %rdx
movl %eax, %esi
shll $0xe, %esi
andl $0xc000000, %esi        # imm = 0xC000000
orq %rdx, %rsi
movl %eax, %edi
shrl $0xa, %edi
andl $0xc000, %edi           # imm = 0xC000
orq %rsi, %rdi
movl %eax, %edx
shll $0xa, %edx
andl $0x3000000, %edx        # imm = 0x3000000
orq %rdi, %rdx
movq 0x58(%rsp), %rdi
orq %rcx, %rdx
movl %eax, %ecx
shrl $0x6, %ecx
andl $0x30000, %ecx          # imm = 0x30000
movl %eax, %esi
shll $0x6, %esi
andl $0xc00000, %esi         # imm = 0xC00000
orq %rcx, %rsi
movl %eax, %ecx
shrl $0x2, %ecx
andl $0xc0000, %ecx          # imm = 0xC0000
orq %rsi, %rcx
shll $0x2, %eax
andl $0x300000, %eax         # imm = 0x300000
orq %rcx, %rax
jmp 0x1bf6a1
movl %eax, %ecx
shrl $0x16, %ecx
shll $0x16, %r13d
orl %ecx, %r13d
andl $0xc00003, %r13d        # imm = 0xC00003
movl %eax, %ecx
shrl $0x12, %ecx
andl $0xc, %ecx
orl %r13d, %ecx
movl %eax, %edx
andl $0xc, %edx
shll $0x12, %edx
orl %ecx, %edx
movl %eax, %ecx
shrl $0xe, %ecx
andl $0x30, %ecx
orl %edx, %ecx
movl %eax, %edx
andl $0x30, %edx
shll $0xe, %edx
orl %ecx, %edx
movl %eax, %ecx
shrl $0xa, %ecx
andl $0xc0, %ecx
orl %edx, %ecx
movl %eax, %edx
shll $0xa, %edx
andl $0x30000, %edx          # imm = 0x30000
orl %ecx, %edx
movl %eax, %ecx
shrl $0x6, %ecx
andl $0x300, %ecx            # imm = 0x300
movl %eax, %esi
shll $0x6, %esi
andl $0xc000, %esi           # imm = 0xC000
orl %ecx, %esi
movl %eax, %ecx
shrl $0x2, %ecx
andl $0xc00, %ecx            # imm = 0xC00
orl %esi, %ecx
shll $0x2, %eax
andl $0x3000, %eax           # imm = 0x3000
jmp 0x1beaaf
movl %eax, %ecx
shrl $0x12, %ecx
shll $0x12, %r13d
orl %ecx, %r13d
andl $0xc0003, %r13d         # imm = 0xC0003
movl %eax, %ecx
shrl $0xe, %ecx
andl $0xc, %ecx
orl %r13d, %ecx
movl %eax, %edx
andl $0xc, %edx
shll $0xe, %edx
orl %ecx, %edx
movl %eax, %ecx
shrl $0xa, %ecx
andl $0x30, %ecx
orl %edx, %ecx
movl %eax, %edx
andl $0x30, %edx
shll $0xa, %edx
orl %ecx, %edx
movl %eax, %ecx
shrl $0x6, %ecx
andl $0xc0, %ecx
orl %edx, %ecx
movl %eax, %edx
shll $0x6, %edx
andl $0x3000, %edx           # imm = 0x3000
orl %ecx, %edx
movl %eax, %ecx
shrl $0x2, %ecx
andl $0x300, %ecx            # imm = 0x300
shll $0x2, %eax
andl $0xc00, %eax            # imm = 0xC00
orl %ecx, %eax
orl %edx, %eax
jmp 0x1bf6a4
bswapq %rax
movq %rax, %rcx
shrq $0x4, %rcx
movabsq $0xf0f0f0f0f0f0f0f, %rdx # imm = 0xF0F0F0F0F0F0F0F
andq %rcx, %rdx
shlq $0x4, %rax
movabsq $-0xf0f0f0f0f0f0f10, %rcx # imm = 0xF0F0F0F0F0F0F0F0
andq %rax, %rcx
orq %rdx, %rcx
movabsq $-0xccccccccccccccd, %rax # imm = 0xF333333333333333
andq %rcx, %rax
shrq $0x2, %rcx
movabsq $0x3333333333333333, %rdx # imm = 0x3333333333333333
andq %rcx, %rdx
leaq (%rdx,%rax,4), %rax
jmp 0x1bf6a4
movq %rax, %rcx
shrq $0x2e, %rcx
andl $0x3, %ecx
shlq $0x2e, %r13
movabsq $0xc00000000000, %rdx   # imm = 0xC00000000000
andq %rdx, %r13
orq %rcx, %r13
movq %rax, %rcx
shrq $0x2a, %rcx
andl $0xc, %ecx
orq %r13, %rcx
movq %rax, %rdx
shlq $0x2a, %rdx
movabsq $0x300000000000, %rsi   # imm = 0x300000000000
andq %rsi, %rdx
orq %rcx, %rdx
movq %rax, %rcx
shrq $0x26, %rcx
andl $0x30, %ecx
orq %rdx, %rcx
movq %rax, %rdx
shlq $0x26, %rdx
movabsq $0xc0000000000, %rsi    # imm = 0xC0000000000
andq %rsi, %rdx
movq %rax, %rsi
shrq $0x22, %rsi
andl $0xc0, %esi
orq %rdx, %rsi
movq %rax, %rdx
shlq $0x22, %rdx
movabsq $0x30000000000, %rdi    # imm = 0x30000000000
andq %rdi, %rdx
orq %rsi, %rdx
movq %rax, %rsi
shrq $0x1e, %rsi
andl $0x300, %esi            # imm = 0x300
orq %rdx, %rsi
movq %rax, %rdx
shlq $0x1e, %rdx
movabsq $0xc000000000, %rdi     # imm = 0xC000000000
andq %rdi, %rdx
orq %rsi, %rdx
orq %rcx, %rdx
movq %rax, %rcx
shrq $0x1a, %rcx
andl $0xc00, %ecx            # imm = 0xC00
movq %rax, %rsi
shlq $0x1a, %rsi
movabsq $0x3000000000, %rdi     # imm = 0x3000000000
andq %rdi, %rsi
orq %rcx, %rsi
movq %rax, %rcx
shrq $0x16, %rcx
andl $0x3000, %ecx           # imm = 0x3000
orq %rsi, %rcx
movq %rax, %rsi
shlq $0x16, %rsi
movabsq $0xc00000000, %rdi      # imm = 0xC00000000
andq %rdi, %rsi
orq %rcx, %rsi
movq %rax, %rdi
shrq $0x12, %rdi
andl $0xc000, %edi           # imm = 0xC000
orq %rsi, %rdi
movq %rax, %rcx
shlq $0x12, %rcx
movabsq $0x300000000, %rsi      # imm = 0x300000000
andq %rsi, %rcx
orq %rdi, %rcx
movq 0x58(%rsp), %rdi
orq %rdx, %rcx
movl %eax, %edx
shrl $0xe, %edx
andl $0x30000, %edx          # imm = 0x30000
movl %eax, %esi
shll $0xe, %esi
andl $0xc0000000, %esi       # imm = 0xC0000000
orq %rdx, %rsi
movl %eax, %edx
shrl $0xa, %edx
andl $0xc0000, %edx          # imm = 0xC0000
orq %rsi, %rdx
movl %eax, %esi
shll $0xa, %esi
andl $0x30000000, %esi       # imm = 0x30000000
orq %rdx, %rsi
movl %eax, %edx
shrl $0x6, %edx
andl $0x300000, %edx         # imm = 0x300000
orq %rsi, %rdx
movl %eax, %esi
shll $0x6, %esi
andl $0xc000000, %esi        # imm = 0xC000000
orq %rdx, %rsi
movl %eax, %edx
shrl $0x2, %edx
andl $0xc00000, %edx         # imm = 0xC00000
orq %rsi, %rdx
orq %rcx, %rdx
shll $0x2, %eax
andl $0x3000000, %eax        # imm = 0x3000000
jmp 0x1bf6a1
movq %rax, %rcx
shrq $0x28, %rcx
andl $0x3, %ecx
shlq $0x28, %r13
movabsq $0x30000000000, %rdx    # imm = 0x30000000000
andq %rdx, %r13
movq %rax, %rdx
shrq $0x24, %rdx
andl $0xc, %edx
movq %rax, %rsi
shlq $0x24, %rsi
movabsq $0xc000000000, %rdi     # imm = 0xC000000000
andq %rdi, %rsi
movq %rax, %rdi
shrq $0x20, %rdi
andl $0x30, %edi
movq %rax, %r8
shlq $0x20, %r8
movabsq $0x3000000000, %r9      # imm = 0x3000000000
andq %r9, %r8
movq %rax, %r9
shrq $0x1c, %r9
andl $0xc0, %r9d
orq %r8, %r9
movq %rax, %r8
shlq $0x1c, %r8
movabsq $0xc00000000, %r10      # imm = 0xC00000000
andq %r10, %r8
orq %r9, %r8
movq %rax, %r9
shrq $0x18, %r9
andl $0x300, %r9d            # imm = 0x300
orq %r8, %r9
movq %rax, %r10
shlq $0x18, %r10
movabsq $0x300000000, %r8       # imm = 0x300000000
andq %r8, %r10
orq %r9, %r10
movl %eax, %r8d
shrl $0x14, %r8d
andl $0xc00, %r8d            # imm = 0xC00
movl %eax, %r9d
shll $0x14, %r9d
andl $0xc0000000, %r9d       # imm = 0xC0000000
orq %r8, %r9
movl %eax, %r8d
shrl $0x10, %r8d
andl $0x3000, %r8d           # imm = 0x3000
orq %r9, %r8
movl %eax, %r9d
shll $0x10, %r9d
andl $0x30000000, %r9d       # imm = 0x30000000
orq %r8, %r9
movl %eax, %r8d
shrl $0xc, %r8d
andl $0xc000, %r8d           # imm = 0xC000
orq %r9, %r8
movl %eax, %r12d
shll $0xc, %r12d
andl $0xc000000, %r12d       # imm = 0xC000000
orq %r8, %r12
movl %eax, %r8d
shrl $0x8, %r8d
andl $0x30000, %r8d          # imm = 0x30000
movl %eax, %r9d
shll $0x8, %r9d
andl $0x3000000, %r9d        # imm = 0x3000000
orq %r8, %r9
movl %eax, %r8d
shrl $0x4, %r8d
andl $0xc0000, %r8d          # imm = 0xC0000
orq %r9, %r8
movl %eax, %r9d
shll $0x4, %r9d
andl $0xc00000, %r9d         # imm = 0xC00000
orq %r8, %r9
movq 0x68(%rsp), %r8
andl $0x300000, %eax         # imm = 0x300000
orq %r13, %rax
orq %rcx, %rax
orq %rdx, %rax
orq %rsi, %rax
jmp 0x1bf47a
movq %rax, %rcx
shlq $0x30, %r13
movabsq $0x3000000000000, %rdx  # imm = 0x3000000000000
andq %rdx, %r13
movq %rax, %rdx
movq %rax, %rsi
movq %rax, %rdi
movq %rax, %r8
shlq $0x28, %r8
movabsq $0x300000000000, %r9    # imm = 0x300000000000
andq %r9, %r8
movq %rax, %r9
shrq $0x24, %r9
andl $0xc0, %r9d
orq %r8, %r9
movq %rax, %r8
shlq $0x24, %r8
movabsq $0xc0000000000, %r10    # imm = 0xC0000000000
andq %r10, %r8
orq %r9, %r8
movq %rax, %r9
shrq $0x20, %r9
andl $0x300, %r9d            # imm = 0x300
orq %r8, %r9
movq %rax, %r10
shlq $0x20, %r10
movabsq $0x30000000000, %r8     # imm = 0x30000000000
andq %r8, %r10
orq %r9, %r10
movq %rax, %r8
shrq $0x1c, %r8
andl $0xc00, %r8d            # imm = 0xC00
movq %rax, %r9
shlq $0x1c, %r9
movabsq $0xc000000000, %r14     # imm = 0xC000000000
andq %r14, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x18, %r8
andl $0x3000, %r8d           # imm = 0x3000
orq %r9, %r8
movq %rax, %r9
shlq $0x18, %r9
movabsq $0x3000000000, %r14     # imm = 0x3000000000
andq %r14, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x14, %r8
andl $0xc000, %r8d           # imm = 0xC000
orq %r9, %r8
movq %rax, %r12
shlq $0x14, %r12
movabsq $0xc00000000, %r9       # imm = 0xC00000000
andq %r9, %r12
orq %r8, %r12
movq %rax, %r8
shrq $0x10, %r8
andl $0x30000, %r8d          # imm = 0x30000
movq %rax, %r9
shlq $0x10, %r9
movabsq $0x300000000, %r14      # imm = 0x300000000
andq %r14, %r9
orq %r8, %r9
movl %eax, %r8d
shrl $0xc, %r8d
andl $0xc0000, %r8d          # imm = 0xC0000
orq %r9, %r8
movl %eax, %r9d
shll $0xc, %r9d
andl $0xc0000000, %r9d       # imm = 0xC0000000
orq %r8, %r9
movl %eax, %r8d
shrl $0x8, %r8d
andl $0x300000, %r8d         # imm = 0x300000
orq %r9, %r8
movl %eax, %r14d
shll $0x8, %r14d
andl $0x30000000, %r14d      # imm = 0x30000000
orq %r8, %r14
movl %eax, %r9d
shrl $0x4, %r9d
andl $0xc00000, %r9d         # imm = 0xC00000
orq %r14, %r9
movq 0x88(%rsp), %r14
movl %eax, %r8d
andl $0x3000000, %eax        # imm = 0x3000000
orq %r13, %rax
shrq $0x30, %rcx
andl $0x3, %ecx
orq %rcx, %rax
shrq $0x2c, %rdx
andl $0xc, %edx
orq %rdx, %rax
shlq $0x2c, %rsi
movabsq $0xc00000000000, %rcx   # imm = 0xC00000000000
andq %rcx, %rsi
orq %rsi, %rax
shrq $0x28, %rdi
andl $0x30, %edi
orq %rdi, %rax
movq 0x58(%rsp), %rdi
orq %r10, %rax
movq 0x60(%rsp), %r10
orq %r12, %rax
movq 0x578(%rsp), %r12
orq %r9, %rax
movq 0x90(%rsp), %r9
shll $0x4, %r8d
andl $0xc000000, %r8d        # imm = 0xC000000
orq %r8, %rax
movq 0x68(%rsp), %r8
jmp 0x1bf6a4
movq %rax, %rcx
shrq $0x3a, %rcx
andl $0x3, %ecx
shlq $0x3a, %r13
movabsq $0xc00000000000000, %rdx # imm = 0xC00000000000000
andq %rdx, %r13
orq %rcx, %r13
movq %rax, %rcx
shrq $0x36, %rcx
andl $0xc, %ecx
orq %r13, %rcx
movq %rax, %rsi
shlq $0x36, %rsi
movabsq $0x300000000000000, %rdx # imm = 0x300000000000000
andq %rdx, %rsi
orq %rcx, %rsi
movq %rax, %rdx
shrq $0x32, %rdx
andl $0x30, %edx
orq %rsi, %rdx
movq %rax, %rcx
shlq $0x32, %rcx
movabsq $0xc0000000000000, %rsi # imm = 0xC0000000000000
andq %rsi, %rcx
movq %rax, %rsi
shrq $0x2e, %rsi
andl $0xc0, %esi
orq %rcx, %rsi
movq %rax, %rcx
shlq $0x2e, %rcx
movabsq $0x30000000000000, %rdi # imm = 0x30000000000000
andq %rdi, %rcx
orq %rsi, %rcx
movq %rax, %rsi
shrq $0x2a, %rsi
andl $0x300, %esi            # imm = 0x300
orq %rcx, %rsi
movq %rax, %rcx
shlq $0x2a, %rcx
movabsq $0xc000000000000, %rdi  # imm = 0xC000000000000
andq %rdi, %rcx
orq %rsi, %rcx
orq %rdx, %rcx
movq %rax, %rdx
shrq $0x26, %rdx
andl $0xc00, %edx            # imm = 0xC00
movq %rax, %rsi
shlq $0x26, %rsi
movabsq $0x3000000000000, %rdi  # imm = 0x3000000000000
andq %rdi, %rsi
orq %rdx, %rsi
movq %rax, %rdx
shrq $0x22, %rdx
andl $0x3000, %edx           # imm = 0x3000
orq %rsi, %rdx
movq %rax, %rsi
shlq $0x22, %rsi
movabsq $0xc00000000000, %rdi   # imm = 0xC00000000000
andq %rdi, %rsi
orq %rdx, %rsi
movq %rax, %rdi
shrq $0x1e, %rdi
andl $0xc000, %edi           # imm = 0xC000
orq %rsi, %rdi
movq %rax, %rdx
shlq $0x1e, %rdx
movabsq $0x300000000000, %rsi   # imm = 0x300000000000
andq %rsi, %rdx
orq %rdi, %rdx
orq %rcx, %rdx
movq %rax, %rcx
shrq $0x1a, %rcx
andl $0x30000, %ecx          # imm = 0x30000
movq %rax, %rsi
shlq $0x1a, %rsi
movabsq $0xc0000000000, %rdi    # imm = 0xC0000000000
andq %rdi, %rsi
orq %rcx, %rsi
movq %rax, %rcx
shrq $0x16, %rcx
andl $0xc0000, %ecx          # imm = 0xC0000
orq %rsi, %rcx
movq %rax, %rsi
shlq $0x16, %rsi
movabsq $0x30000000000, %rdi    # imm = 0x30000000000
andq %rdi, %rsi
orq %rcx, %rsi
movq %rax, %rcx
shrq $0x12, %rcx
andl $0x300000, %ecx         # imm = 0x300000
orq %rsi, %rcx
movq %rax, %rsi
shlq $0x12, %rsi
movabsq $0xc000000000, %rdi     # imm = 0xC000000000
andq %rdi, %rsi
orq %rcx, %rsi
movq %rax, %rcx
shrq $0xe, %rcx
andl $0xc00000, %ecx         # imm = 0xC00000
orq %rsi, %rcx
orq %rdx, %rcx
movq %rax, %rdx
shlq $0xe, %rdx
movabsq $0x3000000000, %rsi     # imm = 0x3000000000
andq %rsi, %rdx
movq %rax, %rsi
shrq $0xa, %rsi
andl $0x3000000, %esi        # imm = 0x3000000
orq %rdx, %rsi
movq %rax, %rdx
shlq $0xa, %rdx
movabsq $0xc00000000, %rdi      # imm = 0xC00000000
andq %rdi, %rdx
movq 0x58(%rsp), %rdi
orq %rsi, %rdx
movq %rax, %rsi
shrq $0x6, %rsi
andl $0xc000000, %esi        # imm = 0xC000000
orq %rdx, %rsi
movq %rax, %rdx
shlq $0x6, %rdx
movabsq $0x300000000, %r13      # imm = 0x300000000
andq %r13, %rdx
orq %rsi, %rdx
movl %eax, %esi
shrl $0x2, %esi
andl $0x30000000, %esi       # imm = 0x30000000
orq %rdx, %rsi
shll $0x2, %eax
andl $0xc0000000, %eax       # imm = 0xC0000000
orq %rsi, %rax
orq %rcx, %rax
jmp 0x1bf6a4
movq %rax, %rcx
andl $0x3, %r13d
shlq $0x3c, %r13
movq %rax, %rdx
movq %rax, %rsi
movq %rax, %rdi
shlq $0x34, %rdi
movabsq $0x300000000000000, %r8 # imm = 0x300000000000000
andq %r8, %rdi
movq %rax, %r8
shrq $0x30, %r8
andl $0xc0, %r8d
orq %rdi, %r8
movq %rax, %rdi
shlq $0x30, %rdi
movabsq $0xc0000000000000, %r9  # imm = 0xC0000000000000
andq %r9, %rdi
orq %r8, %rdi
movq %rax, %r8
shrq $0x2c, %r8
andl $0x300, %r8d            # imm = 0x300
orq %rdi, %r8
movq %rax, %rdi
shlq $0x2c, %rdi
movabsq $0x30000000000000, %r9  # imm = 0x30000000000000
andq %r9, %rdi
orq %r8, %rdi
movq %rax, %r8
shrq $0x28, %r8
andl $0xc00, %r8d            # imm = 0xC00
movq %rax, %r9
shlq $0x28, %r9
movabsq $0xc000000000000, %r10  # imm = 0xC000000000000
andq %r10, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x24, %r8
andl $0x3000, %r8d           # imm = 0x3000
orq %r9, %r8
movq %rax, %r9
shlq $0x24, %r9
movabsq $0x3000000000000, %r10  # imm = 0x3000000000000
andq %r10, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x20, %r8
andl $0xc000, %r8d           # imm = 0xC000
orq %r9, %r8
movq %rax, %r10
shlq $0x20, %r10
movabsq $0xc00000000000, %r9    # imm = 0xC00000000000
andq %r9, %r10
orq %r8, %r10
movq %rax, %r8
shrq $0x1c, %r8
andl $0x30000, %r8d          # imm = 0x30000
movq %rax, %r9
shlq $0x1c, %r9
movabsq $0x300000000000, %r14   # imm = 0x300000000000
andq %r14, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x18, %r8
andl $0xc0000, %r8d          # imm = 0xC0000
orq %r9, %r8
movq %rax, %r9
shlq $0x18, %r9
movabsq $0xc0000000000, %r14    # imm = 0xC0000000000
andq %r14, %r9
orq %r8, %r9
movq %rax, %r8
shrq $0x14, %r8
andl $0x300000, %r8d         # imm = 0x300000
orq %r9, %r8
movq %rax, %r9
shlq $0x14, %r9
movabsq $0x30000000000, %r14    # imm = 0x30000000000
andq %r14, %r9
orq %r8, %r9
movq %rax, %r12
shrq $0x10, %r12
andl $0xc00000, %r12d        # imm = 0xC00000
orq %r9, %r12
movq %rax, %r8
shlq $0x10, %r8
movabsq $0xc000000000, %r9      # imm = 0xC000000000
andq %r9, %r8
movq %rax, %r9
shrq $0xc, %r9
andl $0x3000000, %r9d        # imm = 0x3000000
orq %r8, %r9
movq %rax, %r8
shlq $0xc, %r8
movabsq $0x3000000000, %r14     # imm = 0x3000000000
andq %r14, %r8
orq %r9, %r8
movq %rax, %r9
shrq $0x8, %r9
andl $0xc000000, %r9d        # imm = 0xC000000
orq %r8, %r9
movq %rax, %r8
shlq $0x8, %r8
movabsq $0xc00000000, %r14      # imm = 0xC00000000
andq %r14, %r8
orq %r9, %r8
movq %rax, %r14
shrq $0x4, %r14
andl $0x30000000, %r14d      # imm = 0x30000000
orq %r8, %r14
movq %rax, %r9
shlq $0x4, %r9
movabsq $0x300000000, %r8       # imm = 0x300000000
andq %r8, %r9
orq %r14, %r9
movq 0x88(%rsp), %r14
movq %rax, %r8
andl $0xc0000000, %eax       # imm = 0xC0000000
orq %r13, %rax
shrq $0x3c, %rcx
andl $0x3, %ecx
orq %rcx, %rax
shrq $0x38, %rdx
andl $0xc, %edx
orq %rdx, %rax
shlq $0x38, %rsi
movabsq $0xc00000000000000, %rcx # imm = 0xC00000000000000
andq %rcx, %rsi
orq %rsi, %rax
shrq $0x34, %r8
andl $0x30, %r8d
orq %r8, %rax
movq 0x68(%rsp), %r8
orq %rdi, %rax
movq 0x58(%rsp), %rdi
orq %r10, %rax
movq 0x60(%rsp), %r10
orq %r12, %rax
movq 0x578(%rsp), %r12
orq %r9, %rax
movq 0x90(%rsp), %r9
jmp 0x1bf6a4
movq %rax, %rcx
shrq $0x36, %rcx
andl $0x3, %ecx
shlq $0x36, %r13
movabsq $0xc0000000000000, %rdx # imm = 0xC0000000000000
andq %rdx, %r13
orq %rcx, %r13
movq %rax, %rcx
shrq $0x32, %rcx
andl $0xc, %ecx
orq %r13, %rcx
movq %rax, %rdx
shlq $0x32, %rdx
movabsq $0x30000000000000, %rsi # imm = 0x30000000000000
andq %rsi, %rdx
orq %rcx, %rdx
movq %rax, %rcx
shrq $0x2e, %rcx
andl $0x30, %ecx
orq %rdx, %rcx
movq %rax, %rdx
shlq $0x2e, %rdx
movabsq $0xc000000000000, %rsi  # imm = 0xC000000000000
andq %rsi, %rdx
movq %rax, %rsi
shrq $0x2a, %rsi
andl $0xc0, %esi
orq %rdx, %rsi
movq %rax, %rdx
shlq $0x2a, %rdx
movabsq $0x3000000000000, %rdi  # imm = 0x3000000000000
andq %rdi, %rdx
orq %rsi, %rdx
movq %rax, %rsi
shrq $0x26, %rsi
andl $0x300, %esi            # imm = 0x300
orq %rdx, %rsi
movq %rax, %rdx
shlq $0x26, %rdx
movabsq $0xc00000000000, %rdi   # imm = 0xC00000000000
andq %rdi, %rdx
orq %rsi, %rdx
orq %rcx, %rdx
movq %rax, %rcx
shrq $0x22, %rcx
andl $0xc00, %ecx            # imm = 0xC00
movq %rax, %rsi
shlq $0x22, %rsi
movabsq $0x300000000000, %rdi   # imm = 0x300000000000
andq %rdi, %rsi
orq %rcx, %rsi
movq %rax, %rcx
shrq $0x1e, %rcx
andl $0x3000, %ecx           # imm = 0x3000
orq %rsi, %rcx
movq %rax, %rsi
shlq $0x1e, %rsi
movabsq $0xc0000000000, %rdi    # imm = 0xC0000000000
andq %rdi, %rsi
orq %rcx, %rsi
movq %rax, %rdi
shrq $0x1a, %rdi
andl $0xc000, %edi           # imm = 0xC000
orq %rsi, %rdi
movq %rax, %rcx
shlq $0x1a, %rcx
movabsq $0x30000000000, %rsi    # imm = 0x30000000000
andq %rsi, %rcx
orq %rdi, %rcx
orq %rdx, %rcx
movq %rax, %rdx
shrq $0x16, %rdx
andl $0x30000, %edx          # imm = 0x30000
movq %rax, %rsi
shlq $0x16, %rsi
movabsq $0xc000000000, %rdi     # imm = 0xC000000000
andq %rdi, %rsi
orq %rdx, %rsi
movq %rax, %rdx
shrq $0x12, %rdx
andl $0xc0000, %edx          # imm = 0xC0000
orq %rsi, %rdx
movq %rax, %rsi
shlq $0x12, %rsi
movabsq $0x3000000000, %rdi     # imm = 0x3000000000
andq %rdi, %rsi
orq %rdx, %rsi
movq %rax, %rdx
shrq $0xe, %rdx
andl $0x300000, %edx         # imm = 0x300000
orq %rsi, %rdx
movq %rax, %rsi
shlq $0xe, %rsi
movabsq $0xc00000000, %rdi      # imm = 0xC00000000
andq %rdi, %rsi
movq 0x58(%rsp), %rdi
orq %rdx, %rsi
movq %rax, %rdx
shrq $0xa, %rdx
andl $0xc00000, %edx         # imm = 0xC00000
orq %rsi, %rdx
orq %rcx, %rdx
movq %rax, %rcx
shlq $0xa, %rcx
movabsq $0x300000000, %rsi      # imm = 0x300000000
andq %rsi, %rcx
movl %eax, %esi
shrl $0x6, %esi
andl $0x3000000, %esi        # imm = 0x3000000
orq %rcx, %rsi
movl %eax, %ecx
shll $0x6, %ecx
andl $0xc0000000, %ecx       # imm = 0xC0000000
orq %rsi, %rcx
movl %eax, %esi
shrl $0x2, %esi
andl $0xc000000, %esi        # imm = 0xC000000
orq %rcx, %rsi
shll $0x2, %eax
andl $0x30000000, %eax       # imm = 0x30000000
orq %rsi, %rax
orq %rdx, %rax
xorq %r10, %rax
movq %rax, (%r11,%rbx,8)
incq %rbx
movq 0x118(%rsp), %rax
decq %rax
cmpq %rax, %rbx
jb 0x1bd71f
movq %rax, 0x110(%rsp)
movq 0xd0(%rsp), %rbp
movb 0x528(%rsp), %r13b
leaq 0x100(%rsp), %r14
movq %r14, %rdi
movl $0x1, %esi
movq %r10, %rcx
callq 0x1c1613
movq 0x10(%r14), %rdx
leaq 0x1ecbc6(%rip), %rsi    # 0x3ac2c3
movq 0x570(%rsp), %rdi
xorl %eax, %eax
callq 0x103fe1
testq %r12, %r12
je 0x1bf72a
movq 0x2f97c0(%rip), %rax    # 0x4b8ed8
movq (%rax), %rdx
leaq 0x1ecbbd(%rip), %rsi    # 0x3ac2df
movq %r12, %rdi
callq 0x11cc90
movq 0x118(%rsp), %rsi
movq 0x1a0(%rsp), %rdi
callq 0x10f85a
movq 0x1a0(%rsp), %rdi
testq %rdi, %rdi
je 0x1c12f2
movq 0x118(%rsp), %rdx
movq 0x88(%rsp), %rsi
movq 0x570(%rsp), %rcx
callq 0x3242e2
movq %rax, 0x138(%rsp)
testq %rax, %rax
je 0x1bf7ea
cmpq 0x118(%rsp), %rax
jae 0x1bf7ec
movq 0x1a0(%rsp), %rdi
shlq $0x3, %rax
leaq 0x1ec8f6(%rip), %rbx    # 0x3ac08d
movq %rax, %rsi
movq %rbx, %rdx
movl $0x452, %ecx            # imm = 0x452
callq 0x104461
movq %rax, 0x1a0(%rsp)
movq 0x138(%rsp), %rax
movq 0x1a8(%rsp), %rdi
shlq $0x3, %rax
movq %rax, (%rsp)
leaq 0x1988bb(%rip), %r8     # 0x358089
movl $0x455, %esi            # imm = 0x455
movq %rbx, %rdx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x316945
movq 0x138(%rsp), %rax
jmp 0x1bf7ec
xorl %eax, %eax
movq 0x1a8(%rsp), %rdi
leaq 0x210(%rsp), %rsi
movq %rax, %rdx
callq 0x3241b0
cmpl $0x40, 0xb0(%rsp)
jbe 0x1bf90a
leaq 0x210(%rsp), %r14
movq $0x0, 0x1c0(%rsp)
movb $0x1, %r15b
movq $0x0, 0x78(%rsp)
movq $0x0, 0x60(%rsp)
leaq 0x1ec930(%rip), %rdi    # 0x3ac172
xorl %esi, %esi
xorl %eax, %eax
callq 0x103d72
testq %r12, %r12
je 0x1bf869
movq 0x2f9681(%rip), %rax    # 0x4b8ed8
movq (%rax), %rdx
leaq 0x1e6313(%rip), %rsi    # 0x3a5b74
movq %r12, %rdi
callq 0x11cc90
testb $0x1, %r15b
movq 0x60(%rsp), %r12
jne 0x1bfc87
movq 0x1a8(%rsp), %rdi
movq $0x0, (%rsp)
leaq 0x1ec7fe(%rip), %rdx    # 0x3ac08d
leaq 0x1e8f5a(%rip), %r8     # 0x3a87f0
movl $0x6b9, %esi            # imm = 0x6B9
xorl %ecx, %ecx
movl $0x1, %r9d
callq 0x316945
testb %r13b, %r13b
jne 0x1bfbc7
testq %r12, %r12
je 0x1bfbc7
testq %rbp, %rbp
je 0x1bfb85
xorl %ebx, %ebx
xorl %r14d, %r14d
movq (%r12,%rbx,8), %rdi
callq 0x1f5428
addq %rax, %r14
incq %rbx
cmpq %rbx, %rbp
jne 0x1bf8c8
movq %r14, %xmm1
punpckldq 0x187ff7(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x187fff(%rip), %xmm1   # 0x3478f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
leaq 0x210(%rsp), %r14
jmp 0x1bfb89
movb 0x530(%rsp), %al
movq 0x138(%rsp), %r15
testq %r15, %r15
sete %cl
xorb $0x1, %al
orb %cl, %al
jne 0x1bf9a0
movq 0x1a0(%rsp), %r12
leaq 0x2d0(%rsp), %rdi
xorl %ebx, %ebx
movl $0x208, %edx            # imm = 0x208
xorl %esi, %esi
callq 0x173a0
cmpq $0x2, %r15
jb 0x1bfe77
decq %r15
xorl %r13d, %r13d
xorl %r14d, %r14d
xorl %ebx, %ebx
movq 0xa8(%rsp), %rbp
movq 0x8(%r12,%r13,8), %rdi
subq (%r12,%r13,8), %rdi
jbe 0x1c12de
cmpq %rbx, %rdi
cmovbq %rdi, %rbx
testq %r13, %r13
cmoveq %rdi, %rbx
cmpq %r14, %rdi
cmovaq %rdi, %r14
callq 0x105e91
movl %eax, %eax
incq 0x2d0(%rsp,%rax,8)
incq %r13
cmpq %r13, %r15
jne 0x1bf960
jmp 0x1bfe82
movl 0x538(%rsp), %r12d
movl $0x0, 0x170(%rsp)
xorl %ebx, %ebx
movq %r15, %xmm1
punpckldq 0x187f1e(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x187f26(%rip), %xmm1   # 0x3478f0
movq %rbx, 0x120(%rsp)
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
callq 0x17340
cvttsd2si %xmm0, %rax
leal (%rax,%r12), %ecx
movl %ecx, 0x168(%rsp)
leal (%rax,%r12), %ecx
incl %ecx
movl $0x1, %eax
shlq %cl, %rax
movq %rbx, 0x158(%rsp)
movq %rax, 0x160(%rsp)
movq 0x138(%rsp), %rdx
movq %rdx, %r15
shrq %cl, %r15
movq %r15, 0x150(%rsp)
cmpq %rdx, %rax
jae 0x1bfad6
movl $0x18, %ebx
shlq %cl, %rbx
leaq 0x1ec64e(%rip), %rsi    # 0x3ac08d
movq %rbx, %rdi
movl $0x77, %edx
callq 0x104226
movq %rax, 0x148(%rsp)
movq 0x160(%rsp), %rcx
testq %rcx, %rcx
je 0x1bfad6
movq 0x138(%rsp), %rdx
movq 0x150(%rsp), %rsi
movq 0x158(%rsp), %rdi
movq 0x1a0(%rsp), %r8
leaq (%rdi,%rdi,2), %r9
leaq (%rax,%r9,8), %rax
addq $0x10, %rax
incq %rdi
leaq (,%r15,8), %r9
leaq (,%rsi,8), %r10
cmpq %rdx, %r15
jae 0x1c12e8
leaq (%r8,%r9), %r11
movq %r11, -0x10(%rax)
movq %r15, (%rax)
movq (%r8,%r15,8), %r11
movq %rdi, 0x158(%rsp)
movq %r11, -0x8(%rax)
addq $0x18, %rax
incq %rdi
addq %rsi, %r15
addq %r10, %r9
decq %rcx
jne 0x1bfaa0
movq 0x540(%rsp), %r12
movl 0x168(%rsp), %esi
leaq 0x1eca52(%rip), %rdi    # 0x3ac53e
movq %rbx, %rdx
xorl %eax, %eax
callq 0x103d72
movq 0x1a8(%rsp), %rdi
movq %rbx, (%rsp)
leaq 0x1ec584(%rip), %rdx    # 0x3ac08d
leaq 0x1eca1f(%rip), %r8     # 0x3ac52f
movl $0x8a, %esi
movl $0x1, %ecx
movl $0x1, %r9d
callq 0x316945
movq 0x80(%rsp), %r15
testq %r15, %r15
je 0x1bff30
movq 0x1a8(%rsp), %rdi
callq 0x316846
movq %rax, %rbx
addq %r12, %rbx
movq 0x1a8(%rsp), %rdi
callq 0x316846
cmpq %r15, %rbx
jae 0x1bff5a
addq %r12, %rax
movq %r15, %rdi
subq %rax, %rdi
callq 0x10f82e
movq 0x138(%rsp), %rdx
shrq $0x4, %rdx
cmpq %rdx, %rax
cmovaq %rax, %rdx
jmp 0x1bff50
xorpd %xmm0, %xmm0
movsd 0x108(%rsp), %xmm1
unpcklps 0x187d47(%rip), %xmm1   # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x187d4f(%rip), %xmm1   # 0x3478f0
movapd %xmm1, %xmm2
unpckhpd %xmm1, %xmm2            # xmm2 = xmm2[1],xmm1[1]
addsd %xmm1, %xmm2
divsd %xmm2, %xmm0
leaq 0x1e5fc8(%rip), %rsi    # 0x3a5b80
movq 0x570(%rsp), %rdi
movb $0x1, %al
callq 0x103fe1
testb %r13b, %r13b
je 0x1bfbde
leaq 0x100(%rsp), %rdi
callq 0x1c155f
jmp 0x1bfc87
movl 0x170(%rsp), %ecx
testq %rcx, %rcx
je 0x1c12f7
movq 0x108(%rsp), %r8
movq %r8, %xmm1
movq 0x187cdd(%rip), %xmm2   # 0x3478e0
punpckldq %xmm2, %xmm1    # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0x187ce1(%rip), %xmm3   # 0x3478f0
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x189bb9(%rip), %xmm0   # 0x3497e0
movq 0x120(%rsp), %rax
movq 0xf8(%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 0x1ec528(%rip), %rsi    # 0x3ac184
movq 0x570(%rsp), %rdi
movq %r8, %rdx
movq %rax, %r8
movb $0x1, %al
callq 0x103fe1
movq 0x108(%rsp), %rax
cmpq 0x100(%rsp), %rax
jne 0x1c12fc
testq %r12, %r12
je 0x1bfcb8
testq %rbp, %rbp
je 0x1bfca4
xorl %ebx, %ebx
movq (%r12,%rbx,8), %rdi
callq 0x1f542d
incq %rbx
cmpq %rbx, %rbp
jne 0x1bfc93
leaq 0x1ec3e2(%rip), %rsi    # 0x3ac08d
movq %r12, %rdi
movl $0x6dd, %edx            # imm = 0x6DD
callq 0x1045eb
testb $0x1, %r15b
je 0x1bfd15
leaq 0x100(%rsp), %rbx
movq %rbx, %rdi
callq 0x1c155f
movq 0xa0(%rbx), %rdi
leaq 0x1ec3b1(%rip), %rsi    # 0x3ac08d
movl $0x6e2, %edx            # imm = 0x6E2
callq 0x1045eb
xorl %r14d, %r14d
movq %r14, 0xa0(%rbx)
movq 0xa8(%rsp), %rdi
callq 0x1ef5a6
movq %r14, 0xf0(%rbx)
leaq 0x210(%rsp), %r14
movq 0x78(%rbx), %rdi
callq 0x10f61d
movq 0x78(%rsp), %rdi
callq 0x323e6e
movq 0x1a8(%rsp), %rdi
movq %r14, %rsi
callq 0x324a92
movq 0x1a8(%rsp), %rdi
movq %r14, %rsi
callq 0x324aff
movq 0x188(%rsp), %rdi
testq %rdi, %rdi
je 0x1bfd87
callq 0x1febde
movq 0x1a8(%rsp), %rdi
xorl %ebx, %ebx
movq %rbx, (%rsp)
leaq 0x1ec327(%rip), %rdx    # 0x3ac08d
leaq 0x2221f8(%rip), %r8     # 0x3e1f65
movl $0x6ee, %esi            # imm = 0x6EE
xorl %ecx, %ecx
movl $0x1, %r9d
callq 0x316945
movq %rbx, 0x188(%rsp)
cmpq $0x0, 0x198(%rsp)
sete %al
movq 0x1a0(%rsp), %rdi
testq %rdi, %rdi
setne %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x1bfdeb
leaq 0x1ec2de(%rip), %rbx    # 0x3ac08d
movq %rbx, %rsi
movl $0x6f3, %edx            # imm = 0x6F3
callq 0x1045eb
xorl %eax, %eax
movq %rax, 0x1a0(%rsp)
movq 0x1a8(%rsp), %rdi
movq %rax, (%rsp)
leaq 0x1982b0(%rip), %r8     # 0x358089
movl $0x6f5, %esi            # imm = 0x6F5
movq %rbx, %rdx
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x316945
movq 0x190(%rsp), %rdi
callq 0x1ef400
movq 0x198(%rsp), %rdi
callq 0x1ef400
movq 0x1f8(%rsp), %rdi
callq 0x1e2c02
movq 0x1a8(%rsp), %rdi
callq 0x316841
movq 0x1a8(%rsp), %rdi
movq $0x0, (%rsp)
leaq 0x1ec257(%rip), %rdx    # 0x3ac08d
leaq 0x1c73c0(%rip), %r8     # 0x3871fd
movl $0x6fb, %esi            # imm = 0x6FB
xorl %ecx, %ecx
movl $0x1, %r9d
callq 0x316945
movq 0x1a8(%rsp), %rdi
callq 0x3168f6
movzbl %r15b, %eax
andl $0x1, %eax
negl %eax
addq $0x4d8, %rsp            # imm = 0x4D8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
xorl %r14d, %r14d
movq 0xa8(%rsp), %rbp
movq %r14, %rdi
callq 0x105e91
leaq 0x1ec62b(%rip), %rdi    # 0x3ac4bc
movq %rbx, %rsi
movq %r14, %rdx
movl %eax, %ecx
xorl %eax, %eax
callq 0x17070
leaq 0x1ec648(%rip), %rbx    # 0x3ac4ef
xorl %r14d, %r14d
movq 0x2d0(%rsp,%r14,8), %rdx
testq %rdx, %rdx
je 0x1bfec4
movq %rbx, %rdi
movq %r14, %rsi
xorl %eax, %eax
callq 0x17070
incq %r14
cmpq $0x41, %r14
jne 0x1bfeaa
movq 0x1a0(%rsp), %rdi
leaq 0x1ec1b1(%rip), %rsi    # 0x3ac08d
movl $0x619, %edx            # imm = 0x619
callq 0x1045eb
movq $0x0, 0x1a0(%rsp)
movq 0x1a8(%rsp), %rdi
leaq 0x210(%rsp), %rsi
callq 0x324a92
movq 0x1a8(%rsp), %rdi
callq 0x3168f6
movq 0x1f8(%rsp), %rdi
callq 0x1e2c02
movq %rbp, %rdi
callq 0x1ef5a6
xorl %eax, %eax
jmp 0x1bfe65
cmpl $0x0, 0xc8(%rsp)
je 0x1bff6e
movabsq $-0x3333333333333333, %rax # imm = 0xCCCCCCCCCCCCCCCD
mulq 0x138(%rsp)
shrq $0x2, %rdx
movq %rdx, 0x1c8(%rsp)
jmp 0x1bffa8
leaq 0x1e5e8b(%rip), %rsi    # 0x3a5dec
leaq 0x210(%rsp), %r14
jmp 0x1bd4a2
movq 0x1a8(%rsp), %rdi
callq 0x316846
movq %rax, %rdi
movabsq $0x2492492492492493, %rcx # imm = 0x2492492492492493
mulq %rcx
subq %rdx, %rdi
shrq %rdi
addq %rdx, %rdi
shrq $0x2, %rdi
callq 0x10f82e
movq %rax, %rdx
movq %rax, 0x1c8(%rsp)
cmpq $0xf, %rdx
ja 0x1bffba
movq $0x10, 0x1c8(%rsp)
movq $0x0, 0x1c0(%rsp)
cmpl $0x40, 0xb0(%rsp)
jbe 0x1bfff2
movq $0x0, 0x78(%rsp)
movb $0x1, %r15b
movq $0x0, 0x60(%rsp)
leaq 0x210(%rsp), %r14
jmp 0x1c12cc
movq 0x578(%rsp), %rdi
testq %rdi, %rdi
je 0x1c0015
movq 0x2f8ed2(%rip), %rax    # 0x4b8ed8
movq (%rax), %rdx
leaq 0x1e5e3d(%rip), %rsi    # 0x3a5e4d
callq 0x11cc90
movq 0x1c8(%rsp), %rdi
testq %rdi, %rdi
movq 0xb8(%rsp), %r13
je 0x1c132c
leaq 0x1b0(%rsp), %rbx
callq 0x10f3a1
movq %rax, -0x38(%rbx)
movq %rax, %rdi
callq 0x10fe5e
movq %rax, 0x40(%rbx)
movq -0x38(%rbx), %rdi
movq -0x8(%rbx), %r15
callq 0x10f615
movq %rax, (%rsp)
leaq 0x1ec02a(%rip), %rdx    # 0x3ac08d
leaq 0x1e5e32(%rip), %r8     # 0x3a5e9c
movq %r15, %rdi
movl $0x49a, %esi            # imm = 0x49A
movl $0x1, %ecx
movl $0x1, %r9d
callq 0x316945
movq %r14, 0x50(%rbx)
leaq 0x1712(%rip), %rax      # 0x1c179f
movq %rax, 0x30(%rbx)
movq -0x8(%rbx), %rdi
callq 0x316846
movq %rax, %xmm1
punpckldq 0x187839(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x187841(%rip), %xmm1   # 0x3478f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x18783d(%rip), %xmm0   # 0x347900
leaq 0x1e5de1(%rip), %rsi    # 0x3a5eab
movq 0x570(%rsp), %r15
movq %r15, %rdi
movb $0x1, %al
callq 0x103fe1
movq %r13, %rdi
movq 0x88(%rsp), %rsi
movl 0xec(%rsp), %edx
movq %rbx, %rcx
callq 0x311c98
movq %r14, %rdi
callq 0x1c179f
movq -0x90(%rbx), %r14
movq %r14, %xmm0
punpckldq 0x1877ce(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x1877d6(%rip), %xmm0   # 0x3478f0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
mulsd 0x1896b2(%rip), %xmm1   # 0x3497e0
movapd %xmm1, 0x90(%rsp)
movq %r13, %rdi
callq 0xe7b9c
movq %rax, %xmm0
punpckldq 0x187794(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x18779c(%rip), %xmm0   # 0x3478f0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
movapd 0x90(%rsp), %xmm0
divsd %xmm1, %xmm0
leaq 0x1e5d65(%rip), %rsi    # 0x3a5ed9
movq %r15, %rdi
movq %r14, %rdx
movb $0x1, %al
callq 0x103fe1
movq -0xb0(%rbx), %r14
cmpq -0x90(%rbx), %r14
jne 0x1c1331
testq %r14, %r14
je 0x1c024c
cmpl $0x0, 0x170(%rsp)
je 0x1c1345
movq %r14, %xmm0
movq 0x187727(%rip), %xmm1   # 0x3478e0
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x18772b(%rip), %xmm1   # 0x3478f0
subpd %xmm1, %xmm0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
mulsd 0x189603(%rip), %xmm1   # 0x3497e0
movapd %xmm1, 0x90(%rsp)
movq %r13, %rdi
callq 0xe7b9c
movq %rax, %xmm0
punpckldq 0x1876e5(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0x1876ed(%rip), %xmm0   # 0x3478f0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
movapd 0x90(%rsp), %xmm0
divsd %xmm1, %xmm0
movl 0x170(%rsp), %ecx
movq 0x120(%rsp), %rax
xorl %edx, %edx
divq %rcx
leaq 0x1ec37a(%rip), %rsi    # 0x3ac5b1
movq 0x570(%rsp), %rdi
movq %r14, %rdx
movq %rax, %r8
movb $0x1, %al
callq 0x103fe1
movq 0x178(%rsp), %rdi
callq 0x10f61d
xorl %eax, %eax
movq %rax, 0x178(%rsp)
movq 0x1a8(%rsp), %rdi
movq %rax, (%rsp)
leaq 0x1ebe17(%rip), %rdx    # 0x3ac08d
leaq 0x1e5c1f(%rip), %r8     # 0x3a5e9c
movl $0x4b4, %esi            # imm = 0x4B4
xorl %ecx, %ecx
movl $0x1, %r9d
callq 0x316945
movq 0x578(%rsp), %rdi
testq %rdi, %rdi
je 0x1c02b2
movq 0x2f8c35(%rip), %rax    # 0x4b8ed8
movq (%rax), %rdx
leaq 0x1e579e(%rip), %rsi    # 0x3a5a4b
callq 0x11cc90
movq 0x100(%rsp), %rdx
movq 0x1a8(%rsp), %rdi
leaq 0x210(%rsp), %r14
movq %r14, %rsi
callq 0x3243ab
movq %rax, %r13
movq 0x1a8(%rsp), %rdi
callq 0x316846
movq %rax, %xmm1
punpckldq 0x1875f1(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x1875f9(%rip), %xmm1   # 0x3478f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x1875f5(%rip), %xmm0   # 0x347900
leaq 0x1e5751(%rip), %rsi    # 0x3a5a63
movq 0x570(%rsp), %rbx
movq %rbx, %rdi
movb $0x1, %al
callq 0x103fe1
leaq 0x1e576c(%rip), %rsi    # 0x3a5a97
movq %rbx, %rdi
movq %r13, %rdx
xorl %eax, %eax
callq 0x103fe1
movq 0x138(%rsp), %rsi
testq %rsi, %rsi
je 0x1c03aa
leaq 0x197d3d(%rip), %rdi    # 0x358089
movl $0x1, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x1eee48
movq %rax, 0x198(%rsp)
movq 0xa8(%rsp), %rbx
movq %rbx, %rdi
movq %rax, %rsi
callq 0x1ef4a2
movq 0x138(%rsp), %rsi
incq %rsi
leaq 0x1aec32(%rip), %rdi    # 0x36efba
movl $0x2, %edx
xorl %ecx, %ecx
xorl %r8d, %r8d
callq 0x1eee48
movq %rax, 0x190(%rsp)
movq %rbx, %rdi
movq %rax, %rsi
callq 0x1ef4a2
movl 0xc8(%rsp), %edx
testl %edx, %edx
setne %al
cmpq $0x0, 0x80(%rsp)
sete %cl
testb %cl, %al
jne 0x1c03e2
movq 0x100(%rsp), %r14
testl %edx, %edx
je 0x1c03f3
cmpq $0x0, 0x80(%rsp)
jne 0x1c0443
callq 0x68584
movq $0x0, 0x80(%rsp)
jmp 0x1c051a
cmpq $0x0, 0x80(%rsp)
jne 0x1c0443
movq 0x1a8(%rsp), %rdi
callq 0x316852
movq %rax, %rbx
movl 0xdc(%rsp), %eax
testl %eax, %eax
movl %eax, %edx
cmoveq 0xe0(%rsp), %rdx
movl $0x1, %edi
movq %r13, %rsi
callq 0x1f5190
addq %r12, %rbx
addq %rbx, %rax
addq $0x4000, %rax           # imm = 0x4000
movq %rax, 0x80(%rsp)
movq 0x190(%rsp), %rbx
testq %rbx, %rbx
je 0x1c0473
leaq 0x210(%rsp), %r15
movq %r15, %rdi
callq 0x324932
leaq -0x1(%rax), %rdx
movq %rbx, %rdi
xorl %esi, %esi
callq 0x1ef0f6
movq %rax, %rbx
jmp 0x1c047d
xorl %ebx, %ebx
leaq 0x210(%rsp), %r15
movq 0x1a8(%rsp), %rdi
callq 0x316846
addq %r12, %rbx
addq %rax, %rbx
movl 0x174(%rsp), %eax
movq 0x580(%rsp), %rcx
movq %rcx, 0x20(%rsp)
movq %r14, 0x10(%rsp)
movl %eax, (%rsp)
movl $0x0, 0x18(%rsp)
movq $0x0, 0x8(%rsp)
movq %rbx, %rdi
movq 0x80(%rsp), %rsi
xorl %edx, %edx
movq %r15, %rcx
movq 0xa8(%rsp), %r8
movq 0xf8(%rsp), %r9
callq 0x323f61
movl %eax, 0xc8(%rsp)
testl %eax, %eax
movq %r15, %r14
js 0x1c12af
je 0x1c1354
cmpl $0x40, 0xb0(%rsp)
movl 0xc4(%rsp), %r15d
jbe 0x1c051a
movq $0x0, 0x78(%rsp)
jmp 0x1c12bb
movq 0x100(%rsp), %r8
movq 0x570(%rsp), %rax
movq %rax, (%rsp)
movl 0xc8(%rsp), %edi
xorl %esi, %esi
movq %r14, %rdx
movq 0xa8(%rsp), %rbx
movq %rbx, %rcx
xorl %r9d, %r9d
callq 0x323978
testq %rax, %rax
je 0x1c1336
movq %rax, %r15
movq %rax, %rdi
movl $0x1, %esi
callq 0x32377c
movq %rbx, %rdi
callq 0x1ef5a6
movq 0x1a8(%rsp), %rdi
movq %r14, %rsi
callq 0x324a31
cmpq $0x0, 0x1c0(%rsp)
jne 0x1c133b
movq %r15, 0x78(%rsp)
movq 0x190(%rsp), %rbx
testq %rbx, %rbx
je 0x1c1340
movq %r14, %rdi
callq 0x324b83
movq %r14, %rbp
movq %rax, %r14
movq %rbp, %rdi
callq 0x324b79
movq %rax, %r15
movq %rbp, %rdi
callq 0x324932
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
movq %rax, %rcx
movl $0x1, %r8d
callq 0x1ef045
movq 0x78(%rsp), %rdi
callq 0x323f52
cmpl $0x2, %eax
jb 0x1c0663
cmpq $0x0, 0x1a0(%rsp)
movq 0xd0(%rsp), %rbp
je 0x1c134a
movq 0x198(%rsp), %rdi
testq %rdi, %rdi
leaq 0x210(%rsp), %r14
je 0x1c134f
movq %r13, %r12
leaq 0x1a0(%rsp), %rbx
movq %rbx, %rsi
xorl %edx, %edx
callq 0x1eef1f
movq 0x8(%rbx), %rdi
movq $0x0, (%rsp)
leaq 0x1eba4b(%rip), %rdx    # 0x3ac08d
leaq 0x197a40(%rip), %r8     # 0x358089
movl $0x66f, %esi            # imm = 0x66F
xorl %ecx, %ecx
xorl %r9d, %r9d
callq 0x316945
cmpq $0x0, (%rbx)
je 0x1c068f
callq 0x685f6
movq %r13, %r12
movq 0x198(%rsp), %rdi
callq 0x1ef400
movq $0x0, 0x198(%rsp)
leaq 0x210(%rsp), %r14
movq 0xd0(%rsp), %rbp
movq 0x78(%rsp), %rdi
callq 0x323f32
movq %rax, %rbx
movl 0x174(%rsp), %edx
movq %rax, %rdi
movq 0xf8(%rsp), %r15
movq %r15, %rsi
movq 0x570(%rsp), %rcx
callq 0x1feacc
movq %rax, 0x188(%rsp)
movl 0x174(%rsp), %edx
movq %rbx, %rdi
movq %r15, %rsi
callq 0x1febb2
movq 0x1a8(%rsp), %rdi
movq %rax, (%rsp)
leaq 0x1eb9a2(%rip), %rbx    # 0x3ac08d
leaq 0x221873(%rip), %r8     # 0x3e1f65
movl $0x67d, %esi            # imm = 0x67D
movq %rbx, %rdx
movl $0x1, %ecx
movl $0x1, %r9d
callq 0x316945
leaq 0xc48(%rip), %rax       # 0x1c1359
movq %rax, 0x1e0(%rsp)
leaq (,%rbp,8), %rdi
movq %rdi, 0x2a8(%rsp)
movq %rbx, %rsi
movl $0x67f, %edx            # imm = 0x67F
callq 0x104226
movq %rax, %r13
movq 0xe0(%rsp), %rdx
subq 0xf0(%rsp), %rdx
testq %rbp, %rbp
je 0x1c0778
xorl %ebx, %ebx
movq %r12, %rdi
movq %rdx, %rsi
movq %rdx, %r15
xorl %edx, %edx
movl $0x1, %ecx
xorl %r8d, %r8d
callq 0x1f5256
movq %r15, %rdx
movq %rax, (%r13,%rbx,8)
incq %rbx
cmpq %rbx, %rbp
jne 0x1c0750
movq %r13, 0x60(%rsp)
movq 0x1a8(%rsp), %rbx
movl $0x1, %edi
movq %r12, %rsi
callq 0x1f5190
imulq %rbp, %rax
movq %rax, (%rsp)
leaq 0x1eb8ec(%rip), %rdx    # 0x3ac08d
leaq 0x1e8048(%rip), %r8     # 0x3a87f0
movq %rbx, %rdi
movl $0x688, %esi            # imm = 0x688
movl $0x1, %ecx
movl $0x1, %r9d
callq 0x316945
movq 0x80(%rsp), %r15
testq %r15, %r15
movq %r15, 0x80(%rsp)
je 0x1c081f
movq 0x1a8(%rsp), %rdi
callq 0x31684e
movq %rax, %rbx
movq 0x78(%rsp), %rdi
callq 0x323f42
movq 0x540(%rsp), %rcx
addq %rax, %rcx
addq %rbx, %rcx
movq %r15, %rdi
subq %rcx, %rdi
movb 0x528(%rsp), %r13b
jbe 0x1c0844
callq 0x10f836
movq %rax, %rdi
movq %rax, 0x1c8(%rsp)
jmp 0x1c0858
movq 0x1c8(%rsp), %rdi
shrq %rdi
movq %rdi, 0x1c8(%rsp)
movb 0x528(%rsp), %r13b
movq 0x578(%rsp), %r12
jmp 0x1c089f
movq 0x1c8(%rsp), %rdi
shrq $0x2, %rdi
movq %rdi, 0x1c8(%rsp)
movq 0x578(%rsp), %r12
movq 0x118(%rsp), %rcx
addq 0x120(%rsp), %rcx
movq %rcx, %rax
xorl %edx, %edx
divq %rdi
cmpq $0x191, %rax            # imm = 0x191
jb 0x1c089f
shrq $0x4, %rcx
movabsq $0xa3d70a3d70a3d71, %rdx # imm = 0xA3D70A3D70A3D71
movq %rcx, %rax
mulq %rdx
movq %rdx, %rdi
movq %rdx, 0x1c8(%rsp)
testb %r13b, %r13b
jne 0x1c0900
callq 0x10f5e0
movq %rax, 0x180(%rsp)
movq 0x1a8(%rsp), %rbx
movq %rax, %rdi
callq 0x10f615
movq %rax, (%rsp)
leaq 0x1eb7c1(%rip), %rdx    # 0x3ac08d
leaq 0x1e528f(%rip), %r8     # 0x3a5b62
movq %rbx, %rdi
movl $0x691, %esi            # imm = 0x691
movl $0x1, %ecx
movl $0x1, %r9d
callq 0x316945
movq 0x180(%rsp), %rdi
callq 0x10fe75
movq %rax, 0x1e8(%rsp)
leaq 0x1b0(%rsp), %rax
movq $0x0, -0x90(%rax)
movl $0x0, -0x40(%rax)
leal -0x1(%rbp), %eax
movq %rax, 0xa8(%rsp)
movq %rbp, %rax
shlq $0x7, %rax
leaq (%rax,%rbp,8), %rax
movq %rax, 0x58(%rsp)
xorl %r15d, %r15d
movl $0x0, 0x74(%rsp)
testb %r13b, %r13b
jne 0x1c129b
movq 0x78(%rsp), %rdi
callq 0x323f52
cmpl %eax, 0x74(%rsp)
jae 0x1c129e
movl %r15d, 0xc4(%rsp)
movq 0x100(%rsp), %rbx
testq %r12, %r12
je 0x1c098b
movq 0x2f855f(%rip), %rax    # 0x4b8ed8
movq (%rax), %rdx
movq %r12, %rdi
leaq 0x1e589f(%rip), %rsi    # 0x3a6225
callq 0x11cc90
movl 0x74(%rsp), %r13d
movl %r13d, %edi
movq 0x78(%rsp), %r15
movq %r15, %rsi
callq 0x323f0f
movq %rax, 0x140(%rsp)
movq %rax, %xmm1
movq 0x186f2b(%rip), %xmm2   # 0x3478e0
punpckldq %xmm2, %xmm1    # xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]
movapd 0x186f2f(%rip), %xmm3   # 0x3478f0
subpd %xmm3, %xmm1
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x188e07(%rip), %xmm0   # 0x3497e0
movq %rbx, %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
movq 0x570(%rsp), %rdi
leaq 0x1ebdfd(%rip), %rsi    # 0x3ac802
movl %r13d, %edx
movb $0x1, %al
callq 0x103fe1
movl %r13d, %edi
movq %r15, %rsi
callq 0x3238a4
movq %rax, 0x128(%rsp)
movl %r13d, %edi
movq %r15, %rsi
callq 0x3238b7
movq %rax, 0x130(%rsp)
movq 0x198(%rsp), %rdi
testq %rdi, %rdi
je 0x1c0aa6
movq 0x128(%rsp), %rsi
movq %rax, %rdx
callq 0x1ef1ac
movq %rax, 0x1a0(%rsp)
movq 0x1a8(%rsp), %rbx
movq 0x198(%rsp), %rdi
movq 0x128(%rsp), %rsi
movq 0x130(%rsp), %rdx
callq 0x1ef0f6
movq %rax, (%rsp)
movq %rbx, %rdi
movl $0x55d, %esi            # imm = 0x55D
leaq 0x1eb5fb(%rip), %rdx    # 0x3ac08d
movl $0x1, %ecx
leaq 0x1975eb(%rip), %r8     # 0x358089
xorl %r9d, %r9d
callq 0x316945
cmpq $0x0, 0x1a0(%rsp)
je 0x1c1301
movq 0x190(%rsp), %rdi
testq %rdi, %rdi
je 0x1c1310
movq 0x128(%rsp), %rsi
movq 0x130(%rsp), %rdx
callq 0x1ef1ac
movq %r14, %rdi
movq %rax, %rsi
callq 0x324b7e
movq 0x1a8(%rsp), %rbx
movq 0x190(%rsp), %rdi
movq 0x128(%rsp), %rsi
movq 0x130(%rsp), %rdx
callq 0x1ef0f6
movq %rax, (%rsp)
movq %rbx, %rdi
movl $0x569, %esi            # imm = 0x569
leaq 0x1eb56f(%rip), %rdx    # 0x3ac08d
movl $0x1, %ecx
leaq 0x1ae490(%rip), %r8     # 0x36efba
xorl %r9d, %r9d
callq 0x316945
movq 0x1a8(%rsp), %rdi
callq 0x316846
movq %rax, %xmm1
punpckldq 0x186d94(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x186d9c(%rip), %xmm1   # 0x3478f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x186d98(%rip), %xmm0   # 0x347900
movq 0x570(%rsp), %rdi
leaq 0x1e5714(%rip), %rsi    # 0x3a628b
movl 0x74(%rsp), %edx
movb $0x1, %al
callq 0x103fe1
movq 0x128(%rsp), %rcx
movq 0x138(%rsp), %rax
cmpq %rcx, %rax
jb 0x1c130b
testq %rcx, %rcx
je 0x1c0baf
movq 0x1a0(%rsp), %rdx
movq -0x8(%rdx,%rcx,8), %rcx
jmp 0x1c0bb1
xorl %ecx, %ecx
movq %rcx, 0x1b0(%rsp)
movq 0x130(%rsp), %rcx
cmpq %rcx, %rax
jb 0x1c1306
movq %r12, %r13
setne %al
shlq $0x3, %rcx
addq 0x1a0(%rsp), %rcx
movzbl %al, %eax
movq -0x8(%rcx,%rax,8), %rax
movq %rax, 0x1b8(%rsp)
movq 0x188(%rsp), %rbx
movl 0x74(%rsp), %r15d
movl %r15d, %edi
movq 0x78(%rsp), %r12
movq %r12, %rsi
callq 0x323ec9
movq %rbx, %rdi
movq %rax, %rsi
callq 0x1fec0a
movq 0xb8(%rsp), %rdi
movq 0x88(%rsp), %rsi
movl 0xec(%rsp), %edx
leaq 0x1b0(%rsp), %rcx
callq 0x3214f4
leaq 0x100(%rsp), %rdi
callq 0x1c1359
movq %r12, %rdi
callq 0x323f52
decl %eax
cmpl %r15d, %eax
jne 0x1c0c61
leaq 0x100(%rsp), %rdi
callq 0x1c155f
testq %r13, %r13
movq 0x60(%rsp), %rbx
je 0x1c0c84
movq 0x2f8266(%rip), %rax    # 0x4b8ed8
movq (%rax), %rdx
movq %r13, %rdi
leaq 0x1e562f(%rip), %rsi    # 0x3a62ae
callq 0x11cc90
movq 0x80(%rsp), %r15
testq %r15, %r15
je 0x1c0ced
movq 0x1a8(%rsp), %rdi
callq 0x316846
cmpq %r15, %rax
jae 0x1c0ced
movq 0x1a8(%rsp), %rdi
callq 0x316846
movq %r15, %rcx
subq %rax, %rcx
movq %rcx, %xmm1
punpckldq 0x186c1d(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x186c25(%rip), %xmm1   # 0x3478f0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
mulsd 0x186c21(%rip), %xmm0   # 0x347900
leaq 0x1e55e4(%rip), %rdi    # 0x3a62ca
movb $0x1, %al
callq 0x103d72
cmpl $0x2, %ebp
jb 0x1c1104
movq 0x188(%rsp), %rax
movq %rax, 0xf0(%rsp)
movq 0x1f8(%rsp), %rax
movq %rax, 0x2c8(%rsp)
movq 0x1a0(%rsp), %rax
movq %rax, 0x2c0(%rsp)
movq 0x128(%rsp), %rax
movq %rax, 0xc8(%rsp)
movq 0x130(%rsp), %r12
movl 0x74(%rsp), %r15d
movl %r15d, %edi
movq 0x78(%rsp), %rbx
movq %rbx, %rsi
callq 0x323f0f
movq %rax, %r13
movl %r15d, %edi
movq 0xc8(%rsp), %r15
movq %rbx, %rsi
callq 0x323eec
movq %rax, 0x2b8(%rsp)
movq %r12, 0x90(%rsp)
cmpq %r12, %r15
jae 0x1c131a
movq %r13, 0x2b0(%rsp)
movq %r13, %rax
xorl %edx, %edx
divq %rbp
movq %rdx, 0xb0(%rsp)
movq %rax, 0x68(%rsp)
movq 0x2a8(%rsp), %rdi
leaq 0x1eb2df(%rip), %rsi    # 0x3ac08d
movl $0x26d, %edx            # imm = 0x26D
callq 0x104226
movq %rax, %rbx
movq %r14, %rdi
movq %r15, %rsi
callq 0x32494e
movq %rax, %r13
xorl %r12d, %r12d
xorl %edx, %edx
movq %rbx, 0xe0(%rsp)
addq 0x68(%rsp), %r13
movq 0xb0(%rsp), %rax
subl $0x1, %eax
cmovbl %edx, %eax
movq %rax, 0xb0(%rsp)
sbbq $-0x1, %r13
movq 0xa8(%rsp), %rcx
movq %rcx, %rax
cmpq %rcx, %r12
je 0x1c0ea1
movq %r15, %r14
testq %r12, %r12
je 0x1c0e19
movq -0x8(%rbx,%r12,8), %r14
incq %r14
leaq 0x1(%r14), %rcx
movq %r12, %rax
cmpq 0x90(%rsp), %rcx
jae 0x1c0ea1
movq 0x90(%rsp), %rbp
movq %rbp, %r15
leaq (%r14,%rbp), %rbx
shrq %rbx
leaq 0x210(%rsp), %rdi
movq %rbx, %rsi
callq 0x32494e
cmpq %r13, %rax
je 0x1c0e6e
ja 0x1c0e5e
movq %rbx, %r14
incq %r14
movq %r15, %rbx
jmp 0x1c0e65
leaq -0x1(%rbx), %rbp
movq %rbx, %r15
leaq 0x1(%r14), %rax
cmpq %rbp, %rax
jb 0x1c0e35
movq 0xe0(%rsp), %rax
movq %rbx, (%rax,%r12,8)
cmpq 0x90(%rsp), %rbx
movq %rax, %rbx
movq 0xd0(%rsp), %rbp
movl $0x0, %edx
movq 0xc8(%rsp), %r15
jbe 0x1c0ead
jmp 0x1c12ed
movq 0x90(%rsp), %rcx
movq %rcx, (%rbx,%rax,8)
incq %r12
cmpq %rbp, %r12
jne 0x1c0dd6
movq 0x58(%rsp), %rdi
leaq 0x1eb1c8(%rip), %rsi    # 0x3ac08d
movl $0x2da, %edx            # imm = 0x2DA
callq 0x104226
movq %rax, %r13
xorl %r12d, %r12d
movq %rax, 0xb0(%rsp)
xorl %ebp, %ebp
xorl %r15d, %r15d
leaq 0x210(%rsp), %r14
movq 0x60(%rsp), %rax
movq (%rax,%r12,8), %rax
movq %rax, (%r13)
movq 0xb8(%rsp), %rax
movq %rax, 0x8(%r13)
movq 0xf0(%rsp), %rax
movq %rax, 0x18(%r13)
movq 0x2c8(%rsp), %rax
movq %rax, 0x20(%r13)
movq %r14, 0x28(%r13)
movq 0x2c0(%rsp), %rax
movq %rax, 0x30(%r13)
movq 0xc8(%rsp), %rsi
testq %r12, %r12
je 0x1c0f40
movq -0x8(%rbx,%r12,8), %rsi
incq %rsi
movq %rsi, 0x38(%r13)
movq (%rbx,%r12,8), %rax
movq %rax, 0x40(%r13)
movl $0x0, 0x10(%r13)
movb 0x520(%rsp), %al
movb %al, 0x58(%r13)
movl 0xdc(%rsp), %eax
movl %eax, 0x50(%r13)
movq 0x88(%rsp), %rax
movl %eax, 0x54(%r13)
movq 0x558(%rsp), %rax
movq %rax, 0x60(%r13)
movq 0x560(%rsp), %rax
movq %rax, 0x68(%r13)
movq 0x568(%rsp), %rax
testq %rax, %rax
je 0x1c0fa1
movq (%rax,%r12,8), %rax
jmp 0x1c0fa3
xorl %eax, %eax
movq %rax, 0x70(%r13)
movq $0x0, 0x78(%r13)
movq %r14, %rdi
callq 0x32494e
movq %rax, %rbx
movq 0x2b8(%rsp), %rax
cmpq 0xa8(%rsp), %r12
jae 0x1c0fdb
movq 0x40(%r13), %rsi
incq %rsi
movq %r14, %rdi
callq 0x32494e
movq %rax, 0x48(%r13)
movq %rax, %rdx
subq %rbx, %rdx
jbe 0x1c12d9
movq 0x38(%r13), %rcx
movq 0x40(%r13), %r8
movq %rdx, 0x8(%rsp)
movq %rax, (%rsp)
movq 0x570(%rsp), %rdi
leaq 0x1eb893(%rip), %rsi    # 0x3ac89e
movl %r12d, %edx
movq %rbx, %r9
xorl %eax, %eax
callq 0x103fe1
subq %rbx, %r15
addq 0x48(%r13), %r15
leaq 0xe6a(%rip), %rdi       # 0x1c1e90
movq %r13, %rsi
xorl %edx, %edx
callq 0x11c738
movq %rax, 0x80(%r13)
testq %rax, %rax
sete %al
orb %al, %bpl
incq %r12
addq $0x88, %r13
cmpq %r12, 0xd0(%rsp)
movq 0xe0(%rsp), %rbx
jne 0x1c0eea
cmpq 0x2b0(%rsp), %r15
sete %al
orb %bpl, %al
testb $0x1, %al
je 0x1c131f
xorl %ebx, %ebx
movb 0x528(%rsp), %r13b
movq 0x578(%rsp), %r12
movl 0xc4(%rsp), %r15d
testb $0x1, %bpl
jne 0x1c10ab
movq 0xb0(%rsp), %rax
movq 0x80(%rax,%rbx), %rdi
callq 0x11c7d7
movq 0xb0(%rsp), %rax
movq 0x80(%rax,%rbx), %rdi
callq 0x11c93d
addq $0x88, %rbx
cmpq %rbx, 0x58(%rsp)
jne 0x1c1090
movq 0xb0(%rsp), %rdi
leaq 0x1eafb0(%rip), %rbx    # 0x3ac08d
movq %rbx, %rsi
movl $0x315, %edx            # imm = 0x315
callq 0x1045eb
movq 0xe0(%rsp), %rdi
movq %rbx, %rsi
movl $0x316, %edx            # imm = 0x316
callq 0x1045eb
jmp 0x1c11f4
movq (%rbx), %r15
movq 0x188(%rsp), %rbx
movq 0x1f8(%rsp), %r14
movq 0x1a0(%rsp), %r12
movq 0x128(%rsp), %r13
movq 0x130(%rsp), %rbp
movl 0x74(%rsp), %edi
movq 0x78(%rsp), %rsi
callq 0x323eec
movq 0x568(%rsp), %rcx
testq %rcx, %rcx
je 0x1c114f
movq (%rcx), %rcx
jmp 0x1c1151
xorl %ecx, %ecx
movzbl 0x520(%rsp), %edx
movl %edx, 0x48(%rsp)
movq %rcx, 0x40(%rsp)
movq %rax, 0x18(%rsp)
movq %rbp, 0x10(%rsp)
movq %r13, 0x8(%rsp)
movq 0x580(%rsp), %rax
movq %rax, 0x50(%rsp)
movq 0x560(%rsp), %rax
movq %rax, 0x38(%rsp)
movq 0x558(%rsp), %rax
movq %rax, 0x30(%rsp)
movq 0x88(%rsp), %rax
movl %eax, 0x28(%rsp)
movl 0xdc(%rsp), %eax
movl %eax, 0x20(%rsp)
movq %r12, (%rsp)
movq %r15, %rdi
movq 0xb8(%rsp), %rsi
xorl %edx, %edx
movq %rbx, %rcx
movq %r14, %r8
leaq 0x210(%rsp), %r14
movq %r14, %r9
callq 0x1c19b7
testl %eax, %eax
setne %bpl
movb 0x528(%rsp), %r13b
movq 0x578(%rsp), %r12
movl 0xc4(%rsp), %r15d
movq 0x198(%rsp), %rdi
testq %rdi, %rdi
je 0x1c1233
callq 0x1ef188
movq 0x1a8(%rsp), %rdi
movq $0x0, (%rsp)
movl $0x5c3, %esi            # imm = 0x5C3
leaq 0x1eae6b(%rip), %rdx    # 0x3ac08d
xorl %ecx, %ecx
leaq 0x196e5e(%rip), %r8     # 0x358089
xorl %r9d, %r9d
callq 0x316945
movq 0x190(%rsp), %rdi
testq %rdi, %rdi
je 0x1c1272
callq 0x1ef188
movq 0x1a8(%rsp), %rdi
movq $0x0, (%rsp)
movl $0x5c8, %esi            # imm = 0x5C8
leaq 0x1eae2c(%rip), %rdx    # 0x3ac08d
xorl %ecx, %ecx
leaq 0x1add50(%rip), %r8     # 0x36efba
xorl %r9d, %r9d
callq 0x316945
movzbl %r15b, %r15d
testb $0x1, %bpl
movl $0x1, %eax
cmovnel %eax, %r15d
incl 0x74(%rsp)
testb $0x1, %r15b
movq 0xd0(%rsp), %rbp
je 0x1c0940
jmp 0x1c129e
xorl %r15d, %r15d
movq $0x0, 0xa8(%rsp)
jmp 0x1bf83b
movq $0x0, 0x78(%rsp)
movb $0x1, %r15b
movq $0x0, 0x60(%rsp)
movb 0x528(%rsp), %r13b
movq 0x578(%rsp), %r12
jmp 0x1bf83b
callq 0x686a1
callq 0x6894d
callq 0x68a31
callq 0x684db
callq 0x68668
callq 0x68986
callq 0x689f8
callq 0x689bf
callq 0x687be
callq 0x68713
callq 0x6874c
callq 0x68785
callq 0x6847f
callq 0x6862f
callq 0x686da
movl %r14d, %edi
callq 0x684b8
callq 0x68914
callq 0x68512
callq 0x688a2
callq 0x685bd
callq 0x68869
callq 0x6854b
callq 0x68830
callq 0x687f7
callq 0x688db