// File: /workspace/github_c_makefile_star2_O0/genometools[P]genometools/src/match/randomcodes.c
// Function: gt_randomcodes_process_part
static int gt_randomcodes_process_part(GtRandomcodesinfo *fci,
                                      const GtEncseq *encseq,
                                      GtReadmode readmode,
                                      unsigned int bucketkeysize,
                                      unsigned int sortingdepth,
                                      unsigned int skipshorter,
                                      const GtSuftabparts_rc *suftabparts_rc,
                                      unsigned int part,
                                      GtUword maximumspace,
#ifndef GT_THREADS_ENABLED
                                      GT_UNUSED
#endif
                                      unsigned int threads,
                                      GtUword suftabentries,
                                      bool withsuftabcheck,
                                      GtShortreadsortworkinfo **srswtab,
                                      GtRandomcodesintervalprocess itvprocess,
                                      GtRandomcodesintervalprocess_end
                                        itvprocess_end,
                                      void *itvprocessdatatab,
                                      GtLogger *logger,
                                      GtTimer *timer,
                                      GtError *err)
{
  GtUword spaceforbucketprocessing = 0;
  void *mapptr;
  bool haserr = false;

  if (timer != NULL)
  {
    gt_timer_show_progress(timer, "to insert suffixes into buckets", stdout);
  }
  fci->widthofpart = gt_suftabparts_rc_widthofpart(part, suftabparts_rc);
  gt_logger_log(logger, "compute part %u (%.2f%% of all kmers)", part,
               (double) 100.0 * fci->widthofpart/suftabentries);
  fci->currentminindex = gt_suftabparts_rc_minindex(part, suftabparts_rc);
  fci->currentmaxindex = gt_suftabparts_rc_maxindex(part, suftabparts_rc);
  if (fci->mappedallrandomcodes != NULL)
  {
    fci->allrandomcodes
      = (GtUword *)
        gt_Sfxmappedrange_map(fci->mappedallrandomcodes,
                              fci->currentminindex,
                              fci->currentmaxindex);
    GT_FCI_ADDSPLITSPACE(fci->fcsl, "allrandomcodes",
                         (size_t) gt_Sfxmappedrange_size_mapped(
                                        fci->mappedallrandomcodes,
                                        fci->currentminindex,
                                        fci->currentmaxindex));
  }
  gt_assert(fci->allrandomcodes != NULL);
  gt_assert(fci->mappedleftborder != NULL);
  mapptr = gt_Sfxmappedrange_map(fci->mappedleftborder,
                                 fci->currentminindex,
                                 fci->currentmaxindex);
  gt_randomcodes_leftborder_remap(&fci->tab, (uint32_t *) mapptr);
  GT_FCI_ADDSPLITSPACE(fci->fcsl, "leftborder",
                       (size_t) gt_Sfxmappedrange_size_mapped(
                                               fci->mappedleftborder,
                                               fci->currentminindex,
                                               fci->currentmaxindex));
  gt_logger_log(logger, "maximum space for part %u: %.2f MB",
                part, GT_MEGABYTES(gt_firstcodes_spacelog_total(fci->fcsl)));
  fci->buf.currentmincode = gt_randomcodes_idx2mincode(fci,
      fci->currentminindex);
  fci->buf.currentmaxcode = gt_randomcodes_idx2maxcode(fci,
      fci->currentmaxindex);
  gt_spmsuftab_partoffset(fci->spmsuftab,
                          gt_suftabparts_rc_offset(part, suftabparts_rc));
  gt_randomcodes_insert_runkmerscan(encseq,
                                   bucketkeysize,
                                   skipshorter,
                                   &fci->buf);
  gt_randomcodes_insertsuffixes_flush(fci);
  if (part == gt_suftabparts_rc_numofparts(suftabparts_rc) - 1)
  {
    gt_randomcodes_delete_before_end(fci);
  }
  if (timer != NULL)
  {
    gt_timer_show_progress(timer, "to sort buckets of suffixes", stdout);
  }
  if (maximumspace > 0)
  {
    if ((GtUword) gt_firstcodes_spacelog_total(fci->fcsl)
        < maximumspace)
    {
      spaceforbucketprocessing = maximumspace -
                                 (GtUword)
                                 gt_firstcodes_spacelog_total(fci->fcsl);
      gt_log_log("space left for sortremaining: %.2f",
                 GT_MEGABYTES(spaceforbucketprocessing));
    }
  }
#ifdef GT_THREADS_ENABLED
  if (threads > 1U)
  {
    if (gt_randomcodes_thread_sortremaining(
          srswtab,
          encseq,
          readmode,
          fci->spmsuftab,
          fci->buf.snrp,
          &fci->tab,
          fci->allrandomcodes,
          fci->currentminindex,
          fci->currentmaxindex,
          gt_suftabparts_rc_widthofpart(part, suftabparts_rc),
          gt_suftabparts_rc_sumofwidth(part, suftabparts_rc),
          sortingdepth,
          bucketkeysize,
          itvprocess,
          itvprocess_end,
          itvprocessdatatab,
          withsuftabcheck,
          threads,
          logger,
          NULL) != 0)
    {
      haserr = true;
    }
  } else
#endif
  {
    if (gt_randomcodes_sortremaining(srswtab[0],
          encseq,
          readmode,
          fci->spmsuftab,
          fci->buf.snrp,
          &fci->tab,
          fci->allrandomcodes,
          fci->currentminindex,
          fci->currentmaxindex,
          gt_suftabparts_rc_sumofwidth(part, suftabparts_rc),
          sortingdepth,
          bucketkeysize,
          itvprocess,
          itvprocess_end,
          itvprocessdatatab == NULL
          ? NULL
          : ((void **) itvprocessdatatab)[0],
          withsuftabcheck,
          err) != 0)
    {
      haserr = true;
    }
  }
  if (fci->mappedallrandomcodes != NULL)
  {
    gt_Sfxmappedrange_unmap(fci->mappedallrandomcodes);
    GT_FCI_SUBTRACTSPLITSPACE(fci->fcsl, "allrandomcodes");
  }
  if (fci->mappedleftborder != NULL)
  {
    gt_Sfxmappedrange_unmap(fci->mappedleftborder);
    GT_FCI_SUBTRACTSPLITSPACE(fci->fcsl, "leftborder");
  }
  return haserr ? -1 : 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x1b8, %rsp            # imm = 0x1B8
movq 0x250(%rsp), %rax
movq 0x248(%rsp), %rax
movq 0x240(%rsp), %rax
movq 0x238(%rsp), %rax
movq 0x230(%rsp), %rax
movq 0x228(%rsp), %rax
movq 0x220(%rsp), %rax
movb 0x218(%rsp), %al
movq 0x210(%rsp), %r10
movl 0x208(%rsp), %r10d
movq 0x200(%rsp), %r10
movl 0x1f8(%rsp), %r10d
movq 0x1f0(%rsp), %r10
movq %rdi, 0x1b0(%rsp)
movq %rsi, 0x1a8(%rsp)
movl %edx, 0x1a4(%rsp)
movl %ecx, 0x1a0(%rsp)
movl %r8d, 0x19c(%rsp)
movl %r9d, 0x198(%rsp)
andb $0x1, %al
movb %al, 0x197(%rsp)
movq $0x0, 0x188(%rsp)
movb $0x0, 0x17f(%rsp)
cmpq $0x0, 0x248(%rsp)
je 0x26f86c
movq 0x248(%rsp), %rdi
movq 0x3cc6db(%rip), %rax    # 0x63bf38
movq (%rax), %rdx
leaq 0x309186(%rip), %rsi    # 0x5789ed
callq 0x121930
movl 0x1f8(%rsp), %edi
movq 0x1f0(%rsp), %rsi
callq 0x4da570
movq %rax, %rcx
movq 0x1b0(%rsp), %rax
movq %rcx, 0x40(%rax)
movq 0x240(%rsp), %rdi
movl 0x1f8(%rsp), %edx
movq 0x1b0(%rsp), %rax
movq 0x40(%rax), %xmm0
movaps 0x2a907e(%rip), %xmm3   # 0x518930
punpckldq %xmm3, %xmm0    # xmm0 = xmm0[0],xmm3[0],xmm0[1],xmm3[1]
movapd 0x2a9082(%rip), %xmm2   # 0x518940
subpd %xmm2, %xmm0
movaps %xmm0, %xmm1
unpckhpd %xmm0, %xmm0            # xmm0 = xmm0[1,1]
addsd %xmm1, %xmm0
movsd 0x2aaf63(%rip), %xmm1   # 0x51a838
mulsd %xmm1, %xmm0
movq 0x210(%rsp), %xmm1
punpckldq %xmm3, %xmm1    # xmm1 = xmm1[0],xmm3[0],xmm1[1],xmm3[1]
subpd %xmm2, %xmm1
movaps %xmm1, %xmm2
unpckhpd %xmm1, %xmm1            # xmm1 = xmm1[1,1]
addsd %xmm2, %xmm1
divsd %xmm1, %xmm0
leaq 0x30f9cf(%rip), %rsi    # 0x57f2cf
movb $0x1, %al
callq 0xe7cd0
movl 0x1f8(%rsp), %edi
movq 0x1f0(%rsp), %rsi
callq 0x4d9580
movq %rax, %rcx
movq 0x1b0(%rsp), %rax
movq %rcx, 0x28(%rax)
movl 0x1f8(%rsp), %edi
movq 0x1f0(%rsp), %rsi
callq 0x4d95b0
movq %rax, %rcx
movq 0x1b0(%rsp), %rax
movq %rcx, 0x30(%rax)
movq 0x1b0(%rsp), %rax
cmpq $0x0, 0x98(%rax)
je 0x26fa10
movq 0x1b0(%rsp), %rax
movq 0x98(%rax), %rdi
movq 0x1b0(%rsp), %rax
movq 0x28(%rax), %rsi
movq 0x1b0(%rsp), %rax
movq 0x30(%rax), %rdx
callq 0x2cc4d0
movq %rax, %rcx
movq 0x1b0(%rsp), %rax
movq %rcx, 0xa0(%rax)
movq 0x1b0(%rsp), %rax
movq 0xa8(%rax), %rax
movq %rax, 0x170(%rsp)
movq 0x1b0(%rsp), %rax
movq 0x98(%rax), %rdi
movq 0x1b0(%rsp), %rax
movq 0x28(%rax), %rsi
movq 0x1b0(%rsp), %rax
movq 0x30(%rax), %rdx
callq 0x2cc310
movq 0x170(%rsp), %rdi
movl $0x55d, %esi            # imm = 0x55D
leaq 0x30f0dd(%rip), %rdx    # 0x57ead5
movl $0x1, %ecx
leaq 0x2b9780(%rip), %r8     # 0x529184
xorl %r9d, %r9d
movq %rax, (%rsp)
callq 0x4bea60
jmp 0x26fa12
movq 0x1b0(%rsp), %rax
cmpq $0x0, 0xa0(%rax)
jne 0x26fa5c
movq 0x3cc575(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x2a65de(%rip), %rsi    # 0x516013
leaq 0x30f350(%rip), %rdx    # 0x57ed8c
leaq 0x30f8b2(%rip), %rcx    # 0x57f2f5
leaq 0x30f08b(%rip), %r8     # 0x57ead5
movl $0x55f, %r9d            # imm = 0x55F
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x26fa5e
jmp 0x26fa60
movq 0x1b0(%rsp), %rax
cmpq $0x0, 0x90(%rax)
jne 0x26faaa
movq 0x3cc527(%rip), %rax    # 0x63bfa0
movq (%rax), %rdi
leaq 0x2a6590(%rip), %rsi    # 0x516013
leaq 0x308d6f(%rip), %rdx    # 0x5787f9
leaq 0x30f864(%rip), %rcx    # 0x57f2f5
leaq 0x30f03d(%rip), %r8     # 0x57ead5
movl $0x560, %r9d            # imm = 0x560
movb $0x0, %al
callq 0x199f0
callq 0x19370
jmp 0x26faac
movq 0x1b0(%rsp), %rax
movq 0x90(%rax), %rdi
movq 0x28(%rax), %rsi
movq 0x30(%rax), %rdx
callq 0x2cc4d0
movq %rax, 0x180(%rsp)
movq 0x1b0(%rsp), %rdi
addq $0x110, %rdi            # imm = 0x110
movq 0x180(%rsp), %rsi
callq 0x4dc0e0
movq 0x1b0(%rsp), %rax
movq 0xa8(%rax), %rcx
movq %rcx, 0x148(%rsp)
movq 0x90(%rax), %rdi
movq 0x28(%rax), %rsi
movq 0x30(%rax), %rdx
callq 0x2cc310
movq 0x148(%rsp), %rdi
movq %rax, %rcx
movq %rsp, %rax
movq %rcx, (%rax)
leaq 0x30efa6(%rip), %rdx    # 0x57ead5
leaq 0x2d11ce(%rip), %r8     # 0x540d04
movl $0x569, %esi            # imm = 0x569
movl $0x1, %ecx
xorl %r9d, %r9d
callq 0x4bea60
movq 0x240(%rsp), %rax
movq %rax, 0x150(%rsp)
movl 0x1f8(%rsp), %eax
movl %eax, 0x15c(%rsp)
movq 0x1b0(%rsp), %rax
movq 0xa8(%rax), %rdi
callq 0x4be8b0
movq 0x150(%rsp), %rdi
movl 0x15c(%rsp), %edx
movq %rax, %xmm0
movaps 0x2a8d9b(%rip), %xmm1   # 0x518930
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x2a8d9f(%rip), %xmm1   # 0x518940
subpd %xmm1, %xmm0
movaps %xmm0, %xmm1
unpckhpd %xmm0, %xmm0            # xmm0 = xmm0[1,1]
addsd %xmm1, %xmm0
movsd 0x2a8d68(%rip), %xmm1   # 0x518920
divsd %xmm1, %xmm0
leaq 0x308e90(%rip), %rsi    # 0x578a53
movb $0x1, %al
callq 0xe7cd0
movq 0x1b0(%rsp), %rdi
movq 0x1b0(%rsp), %rax
movq 0x28(%rax), %rsi
callq 0x2739a0
movq %rax, %rcx
movq 0x1b0(%rsp), %rax
movq %rcx, 0xb0(%rax)
movq 0x1b0(%rsp), %rdi
movq 0x1b0(%rsp), %rax
movq 0x30(%rax), %rsi
callq 0x273a30
movq %rax, %rcx
movq 0x1b0(%rsp), %rax
movq %rcx, 0xb8(%rax)
movq 0x1b0(%rsp), %rax
movq 0x88(%rax), %rax
movq %rax, 0x160(%rsp)
movl 0x1f8(%rsp), %edi
movq 0x1f0(%rsp), %rsi
callq 0x4da470
movq 0x160(%rsp), %rdi
movq %rax, %rsi
callq 0x2eed80
movq 0x1a8(%rsp), %rdi
movl 0x1a0(%rsp), %esi
movl 0x198(%rsp), %edx
movq 0x1b0(%rsp), %rcx
addq $0xb0, %rcx
callq 0x4d5ea0
movq 0x1b0(%rsp), %rdi
callq 0x26f4c0
movl 0x1f8(%rsp), %eax
movl %eax, 0x16c(%rsp)
movq 0x1f0(%rsp), %rdi
callq 0x4da690
movl %eax, %ecx
movl 0x16c(%rsp), %eax
subl $0x1, %ecx
cmpl %ecx, %eax
jne 0x26fcca
movq 0x1b0(%rsp), %rdi
callq 0x270280
cmpq $0x0, 0x248(%rsp)
je 0x26fcf3
movq 0x248(%rsp), %rdi
movq 0x3cc254(%rip), %rax    # 0x63bf38
movq (%rax), %rdx
leaq 0x308d88(%rip), %rsi    # 0x578a76
callq 0x121930
cmpq $0x0, 0x200(%rsp)
jbe 0x26fda1
movq 0x1b0(%rsp), %rax
movq 0xa8(%rax), %rdi
callq 0x4be8b0
cmpq 0x200(%rsp), %rax
jae 0x26fd9f
movq 0x200(%rsp), %rax
movq %rax, 0x140(%rsp)
movq 0x1b0(%rsp), %rax
movq 0xa8(%rax), %rdi
callq 0x4be8b0
movq %rax, %rcx
movq 0x140(%rsp), %rax
subq %rcx, %rax
movq %rax, 0x188(%rsp)
movaps 0x2a8bcf(%rip), %xmm1   # 0x518930
movq 0x188(%rsp), %xmm0
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x2a8bca(%rip), %xmm1   # 0x518940
subpd %xmm1, %xmm0
movaps %xmm0, %xmm1
unpckhpd %xmm0, %xmm0            # xmm0 = xmm0[1,1]
addsd %xmm1, %xmm0
movsd 0x2a8b93(%rip), %xmm1   # 0x518920
divsd %xmm1, %xmm0
leaq 0x308cfa(%rip), %rdi    # 0x578a92
movb $0x1, %al
callq 0xe7740
jmp 0x26fda1
cmpl $0x1, 0x208(%rsp)
jbe 0x26ff9a
movq 0x220(%rsp), %rax
movq %rax, 0xe8(%rsp)
movq 0x1a8(%rsp), %rax
movq %rax, 0xf0(%rsp)
movl 0x1a4(%rsp), %eax
movl %eax, 0xfc(%rsp)
movq 0x1b0(%rsp), %rax
movq 0x88(%rax), %rax
movq %rax, 0x100(%rsp)
movq 0x1b0(%rsp), %rax
movq 0xf8(%rax), %rax
movq %rax, 0x108(%rsp)
movq 0x1b0(%rsp), %rax
addq $0x110, %rax            # imm = 0x110
movq %rax, 0x110(%rsp)
movq 0x1b0(%rsp), %rax
movq 0xa0(%rax), %rax
movq %rax, 0x118(%rsp)
movq 0x1b0(%rsp), %rax
movq 0x28(%rax), %rax
movq %rax, 0x120(%rsp)
movq 0x1b0(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0x128(%rsp)
movl 0x1f8(%rsp), %edi
movq 0x1f0(%rsp), %rsi
callq 0x4da570
movq %rax, 0x130(%rsp)
movl 0x1f8(%rsp), %edi
movq 0x1f0(%rsp), %rsi
callq 0x4da4f0
movq 0xe8(%rsp), %rdi
movq 0xf0(%rsp), %rsi
movl 0xfc(%rsp), %edx
movq 0x100(%rsp), %rcx
movq 0x108(%rsp), %r8
movq 0x110(%rsp), %r9
movq %rax, %r13
movl 0x19c(%rsp), %r12d
movl 0x1a0(%rsp), %ebp
movq 0x228(%rsp), %r15
movq 0x230(%rsp), %r14
movq 0x238(%rsp), %rbx
movb 0x197(%rsp), %r11b
movl 0x208(%rsp), %r10d
movq 0x240(%rsp), %rax
movq %rax, 0x138(%rsp)
xorl %eax, %eax
movq 0x118(%rsp), %rax
andb $0x1, %r11b
movq %rax, (%rsp)
movq 0x120(%rsp), %rax
movq %rax, 0x8(%rsp)
movq 0x128(%rsp), %rax
movq %rax, 0x10(%rsp)
movq 0x130(%rsp), %rax
movq %rax, 0x18(%rsp)
movq 0x138(%rsp), %rax
movq %r13, 0x20(%rsp)
movl %r12d, 0x28(%rsp)
movl %ebp, 0x30(%rsp)
movq %r15, 0x38(%rsp)
movq %r14, 0x40(%rsp)
movq %rbx, 0x48(%rsp)
movzbl %r11b, %r11d
movl %r11d, 0x50(%rsp)
movl %r10d, 0x58(%rsp)
movq %rax, 0x60(%rsp)
movq $0x0, 0x68(%rsp)
callq 0x273ae0
cmpl $0x0, %eax
je 0x26ff95
movb $0x1, 0x17f(%rsp)
jmp 0x27019e
movq 0x220(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x80(%rsp)
movq 0x1a8(%rsp), %rax
movq %rax, 0x88(%rsp)
movl 0x1a4(%rsp), %eax
movl %eax, 0x94(%rsp)
movq 0x1b0(%rsp), %rax
movq 0x88(%rax), %rax
movq %rax, 0x98(%rsp)
movq 0x1b0(%rsp), %rax
movq 0xf8(%rax), %rax
movq %rax, 0xa0(%rsp)
movq 0x1b0(%rsp), %rax
addq $0x110, %rax            # imm = 0x110
movq %rax, 0xa8(%rsp)
movq 0x1b0(%rsp), %rax
movq 0xa0(%rax), %rax
movq %rax, 0xb0(%rsp)
movq 0x1b0(%rsp), %rax
movq 0x28(%rax), %rax
movq %rax, 0xb8(%rsp)
movq 0x1b0(%rsp), %rax
movq 0x30(%rax), %rax
movq %rax, 0xc0(%rsp)
movl 0x1f8(%rsp), %edi
movq 0x1f0(%rsp), %rsi
callq 0x4da4f0
movq %rax, 0xc8(%rsp)
movl 0x19c(%rsp), %eax
movl %eax, 0xd0(%rsp)
movl 0x1a0(%rsp), %eax
movl %eax, 0xd4(%rsp)
movq 0x228(%rsp), %rax
movq %rax, 0xd8(%rsp)
movq 0x230(%rsp), %rax
movq %rax, 0xe0(%rsp)
cmpq $0x0, 0x238(%rsp)
jne 0x2700ba
xorl %eax, %eax
movq %rax, 0x78(%rsp)
jmp 0x2700ca
movq 0x238(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x78(%rsp)
movq 0xd8(%rsp), %r14
movl 0xd4(%rsp), %ebp
movl 0xd0(%rsp), %r15d
movq 0xc8(%rsp), %r12
movq 0xc0(%rsp), %r13
movq 0xb0(%rsp), %rbx
movq 0xa8(%rsp), %r9
movq 0xa0(%rsp), %r8
movq 0x98(%rsp), %rcx
movl 0x94(%rsp), %edx
movq 0x88(%rsp), %rsi
movq 0x80(%rsp), %rdi
movq 0x78(%rsp), %r11
movb 0x197(%rsp), %r10b
movq 0x250(%rsp), %rax
andb $0x1, %r10b
movq %rbx, (%rsp)
movq 0xb8(%rsp), %rbx
movq %rbx, 0x8(%rsp)
movq 0xe0(%rsp), %rbx
movq %r13, 0x10(%rsp)
movq %r12, 0x18(%rsp)
movl %r15d, 0x20(%rsp)
movl %ebp, 0x28(%rsp)
movq %r14, 0x30(%rsp)
movq %rbx, 0x38(%rsp)
movq %r11, 0x40(%rsp)
movzbl %r10b, %r10d
movl %r10d, 0x48(%rsp)
movq %rax, 0x50(%rsp)
callq 0x274190
cmpl $0x0, %eax
je 0x27019c
movb $0x1, 0x17f(%rsp)
jmp 0x27019e
movq 0x1b0(%rsp), %rax
cmpq $0x0, 0x98(%rax)
je 0x2701fb
movq 0x1b0(%rsp), %rax
movq 0x98(%rax), %rdi
callq 0x2cc460
movq 0x1b0(%rsp), %rax
movq 0xa8(%rax), %rdi
movl $0x5c3, %esi            # imm = 0x5C3
leaq 0x30e8f6(%rip), %rdx    # 0x57ead5
xorl %r9d, %r9d
leaq 0x2b8f9b(%rip), %r8     # 0x529184
xorl %eax, %eax
movl %r9d, %ecx
movq $0x0, (%rsp)
callq 0x4bea60
movq 0x1b0(%rsp), %rax
cmpq $0x0, 0x90(%rax)
je 0x270258
movq 0x1b0(%rsp), %rax
movq 0x90(%rax), %rdi
callq 0x2cc460
movq 0x1b0(%rsp), %rax
movq 0xa8(%rax), %rdi
movl $0x5c8, %esi            # imm = 0x5C8
leaq 0x30e899(%rip), %rdx    # 0x57ead5
xorl %r9d, %r9d
leaq 0x2d0abe(%rip), %r8     # 0x540d04
xorl %eax, %eax
movl %r9d, %ecx
movq $0x0, (%rsp)
callq 0x4bea60
movb 0x17f(%rsp), %dl
xorl %eax, %eax
movl $0xffffffff, %ecx       # imm = 0xFFFFFFFF
testb $0x1, %dl
cmovnel %ecx, %eax
addq $0x1b8, %rsp            # imm = 0x1B8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
nop