// File: /workspace/github_c_makefile_star2_O3/genometools[P]genometools/src/match/sfx-diffcov.c
// Function: gt_differencecover_sortunsortedbucket
void gt_differencecover_sortunsortedbucket(GtSuffixsortspace *sssp,
                                           GtLcpvalues *sssplcpvalues,
                                           const GtDifferencecover *dcov,
                                           GtUword blisbl,
                                           GtUword width,
                                           GT_UNUSED GtUword depth)
{
  const GtUword bucketleftidx = gt_suffixsortspace_bucketleftidx_get(sssp);

  gt_assert(dcov != NULL &&
            depth >= (GtUword) dcov->vparam &&
            dcov->diff2pos != NULL &&
            width >= 2UL &&
            sssp != NULL &&
            blisbl >= bucketleftidx);
  /* blisbl = bucketleftindex + subbucketleft already contains
     bucketleftindex, therefore we cannot use
     gt_suffixsortspace_set or
     gt_suffixsortspace_get as these use the index
     bucketleftindex + subbucketleft + idx - partoffset
     = blisbl - partoffset + idx. Thus, instead we use the functions
     to directly access the suffix sortspace. */
  QSORTNAME(gt_inlinedarr_qsort_r) (sssp, sssplcpvalues, dcov, 6UL, false,
                                    blisbl - bucketleftidx, width);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x2b8, %rsp            # imm = 0x2B8
movq %r9, %r14
movq %r8, %rbx
movq %rcx, %r15
movq %rdx, %r13
movq %rsi, 0x40(%rsp)
movq %rdi, %r12
callq 0x1fcaf4
movq %r13, 0x8(%rsp)
testq %r13, %r13
je 0x1eaf3d
movq 0x8(%rsp), %rcx
movl (%rcx), %ecx
cmpq %r14, %rcx
ja 0x1eaf3d
testq %r12, %r12
je 0x1eaf3d
cmpq $0x2, %rbx
jb 0x1eaf3d
movq 0x8(%rsp), %rcx
cmpq $0x0, 0x38(%rcx)
je 0x1eaf3d
movq %r15, %r13
subq %rax, %r13
jb 0x1eaf3d
movl $0x20, %ecx
leaq 0xa8(%rsp), %rdx
movq %rcx, -0x10(%rdx)
movq %rcx, -0x8(%rdx)
movq %rcx, -0x28(%rdx)
movq %rdx, 0x200(%rdx)
xorl %ecx, %ecx
movq %rcx, 0x208(%rdx)
movq %rcx, (%rdx)
movq %rbx, 0x8(%rdx)
movq $0x1, -0x20(%rdx)
shlq $0x2, %r15
shlq $0x2, %rax
subq %rax, %r15
movq %r15, 0x68(%rsp)
movl $0x1, %eax
movq 0x2a8(%rsp), %rcx
decq %rax
movq %rax, 0x90(%rsp)
shlq $0x4, %rax
movq (%rcx,%rax), %rbx
movq 0x8(%rcx,%rax), %r14
cmpq $0x6, %r14
movq %rbx, 0x18(%rsp)
ja 0x1ea3c6
addq %rbx, %r14
leaq 0x1(%rbx), %r15
cmpq %r14, %r15
jae 0x1ead3f
movq 0x18(%rsp), %rax
movq %rax, (%rsp)
movq %r14, 0x28(%rsp)
cmpq 0x18(%rsp), %r15
jbe 0x1ea3ac
movq (%rsp), %rbx
leaq 0x1(%rbx), %rbp
movq %rbx, %rdi
movq %rbp, %rsi
movq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
movl %eax, %r14d
movq 0x40(%rsp), %r10
testq %r10, %r10
je 0x1ea354
cmpq %r15, %rbp
setb %al
testl %r14d, %r14d
setg %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0x1ea2d1
movq 0x8(%r10), %rax
testq %rax, %rax
je 0x1eaed4
movq 0x10(%r10), %rdi
movq 0x20(%r10), %rdx
leaq (%rbx,%r13), %r8
leaq (%rdx,%r8), %rcx
incq %rcx
cmpq %rdi, %rcx
jae 0x1eaed4
movq (%r10), %rsi
testq %rsi, %rsi
je 0x1ea299
movabsq $-0x8000000000000000, %r9 # imm = 0x8000000000000000
shrq %cl, %r9
shrq $0x6, %rcx
testq %r9, (%rsi,%rcx,8)
je 0x1eaee8
leaq (%rdx,%r8), %rcx
addq $0x2, %rcx
cmpq %rdi, %rcx
jae 0x1eaede
leaq (%rax,%rdx,4), %rdx
movq 0x68(%rsp), %r8
addq %r8, %rdx
movl 0x4(%rdx,%rbx,4), %edi
movabsq $-0x8000000000000000, %rdx # imm = 0x8000000000000000
shrq %cl, %rdx
shrq $0x6, %rcx
orq %rdx, (%rsi,%rcx,8)
movq 0x20(%r10), %rdx
jmp 0x1ea2ba
leaq (%rdx,%r8), %rcx
addq $0x2, %rcx
cmpq %rdi, %rcx
jae 0x1eaede
leaq (%rax,%rdx,4), %rcx
movq 0x68(%rsp), %r8
addq %r8, %rcx
movl 0x4(%rcx,%rbx,4), %edi
leaq (%rax,%rdx,4), %rax
addq %r8, %rax
movl %edi, 0x8(%rax,%rbx,4)
cmpl $0xff, %edi
jb 0x1ea2d1
incq 0x18(%r10)
leaq 0x48(%rsp), %rdi
movq 0x8(%rsp), %rsi
callq 0x1ec02f
movq 0x40(%rsp), %r8
movq 0x8(%r8), %rdx
testq %rdx, %rdx
je 0x1eaecf
movq 0x20(%r8), %rcx
leaq (%rbx,%r13), %rsi
addq %rsi, %rcx
incq %rcx
cmpq 0x10(%r8), %rcx
jae 0x1eaecf
movq (%r8), %rsi
testq %rsi, %rsi
je 0x1ea327
movabsq $-0x8000000000000000, %rdi # imm = 0x8000000000000000
shrq %cl, %rdi
shrq $0x6, %rcx
orq %rdi, (%rsi,%rcx,8)
movq %rax, %rcx
shrq $0x20, %rcx
movq 0x68(%rsp), %rsi
jne 0x1eaed9
movq 0x20(%r8), %rcx
leaq (%rdx,%rcx,4), %rcx
addq %rsi, %rcx
movl %eax, 0x4(%rcx,%rbx,4)
cmpq $0xff, %rax
jb 0x1ea354
incq 0x18(%r8)
testl %r14d, %r14d
jle 0x1ea3ac
movq %r12, %rdi
movq %r13, %rsi
movq %rbp, %rdx
callq 0x1fc965
movq %rax, %r14
movq %r12, %rdi
movq %r13, %rsi
movq %rbx, %rdx
callq 0x1fc965
movq %r12, %rdi
movq %r13, %rsi
movq %rbp, %rdx
movq %rax, %rcx
callq 0x1fc9e1
movq %r12, %rdi
movq %r13, %rsi
movq %rbx, %rdx
movq %r14, %rcx
callq 0x1fc9e1
leaq -0x1(%rbx), %rax
cmpq 0x18(%rsp), %rbx
movq %rax, %rbx
ja 0x1ea1ca
incq %r15
incq (%rsp)
movq 0x28(%rsp), %r14
cmpq %r14, %r15
jne 0x1ea1bb
jmp 0x1ead3f
movq %r14, %rbp
shrq %rbp
addq %rbx, %rbp
cmpq $0x7, %r14
je 0x1ea6c5
leaq (%r14,%rbx), %rax
decq %rax
movq %rax, (%rsp)
cmpq $0x29, %r14
movq %r14, 0x28(%rsp)
jb 0x1ea481
movq %r14, %rax
shrq $0x3, %rax
leaq (%rax,%rbx), %r14
movq %rax, 0x20(%rsp)
leaq (%rbx,%rax,2), %rax
movq %rax, 0x38(%rsp)
movq %rbx, %rdi
movq %r14, %rsi
movq 0x8(%rsp), %rbx
movq %rbx, %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
movl %eax, %r15d
movq %r14, 0x10(%rsp)
movq %r14, %rdi
movq 0x38(%rsp), %r14
movq %r14, %rsi
movq %rbx, %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %r15d, %r15d
js 0x1ea489
testl %eax, %eax
movq 0x18(%rsp), %rbx
jg 0x1ea4b8
movq %rbx, %rdi
movq %r14, %rsi
movq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %eax, %eax
cmovsq %rbx, %r14
jmp 0x1ea4b3
movq %rbx, %rdi
jmp 0x1ea62d
testl %eax, %eax
movq 0x18(%rsp), %rbx
js 0x1ea4b8
movq %rbx, %rdi
movq %r14, %rsi
movq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %eax, %eax
cmovnsq %rbx, %r14
movq %r14, 0x10(%rsp)
movq %rbp, %r14
movq 0x20(%rsp), %rax
subq %rax, %r14
jb 0x1eaf38
leaq (%rax,%rbp), %rbx
movq %r14, %rdi
movq %rbp, %rsi
movq 0x8(%rsp), %r15
movq %r15, %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
movl %eax, 0x38(%rsp)
movq %rbp, %rdi
movq %rbx, 0x30(%rsp)
movq %rbx, %rsi
movq %r15, %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
cmpl $0x0, 0x38(%rsp)
js 0x1ea544
testl %eax, %eax
movq (%rsp), %rbx
jg 0x1ea575
movq %r14, %rdi
movq 0x30(%rsp), %rbp
movq %rbp, %rsi
movq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %eax, %eax
cmovsq %r14, %rbp
jmp 0x1ea575
testl %eax, %eax
movq (%rsp), %rbx
js 0x1ea575
movq %r14, %rdi
movq 0x30(%rsp), %r15
movq %r15, %rsi
movq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %eax, %eax
cmovsq %r15, %r14
movq %r14, %rbp
movq 0x20(%rsp), %rcx
leaq (%rcx,%rcx), %rax
movq %rbx, %r14
subq %rax, %r14
jb 0x1eaf33
subq %rcx, %rbx
movq %r14, %rdi
movq %rbx, %rsi
movq 0x8(%rsp), %r15
movq %r15, %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
movl %eax, 0x20(%rsp)
movq %rbx, %rdi
movq (%rsp), %rsi
movq %r15, %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
cmpl $0x0, 0x20(%rsp)
js 0x1ea5fb
testl %eax, %eax
jg 0x1ea624
movq %r14, %rdi
movq (%rsp), %rbx
movq %rbx, %rsi
movq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %eax, %eax
cmovsq %r14, %rbx
jmp 0x1ea624
testl %eax, %eax
js 0x1ea624
movq %r14, %rdi
movq (%rsp), %rbx
movq %rbx, %rsi
movq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %eax, %eax
cmovnsq %r14, %rbx
movq %rbx, (%rsp)
movq 0x10(%rsp), %rdi
movq %rdi, 0x10(%rsp)
movq %rbp, %rsi
movq 0x8(%rsp), %r14
movq %r14, %rdx
leaq 0x48(%rsp), %r15
movq %r15, %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
movl %eax, %ebx
movq %rbp, %rdi
movq (%rsp), %rsi
movq %r14, %rdx
movq %r15, %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %ebx, %ebx
js 0x1ea68d
testl %eax, %eax
movq 0x28(%rsp), %r14
movq 0x18(%rsp), %rbx
jg 0x1ea6c5
movq 0x10(%rsp), %r15
movq %r15, %rdi
movq (%rsp), %rbp
movq %rbp, %rsi
jmp 0x1ea6aa
testl %eax, %eax
movq 0x28(%rsp), %r14
movq 0x18(%rsp), %rbx
js 0x1ea6c5
movq 0x10(%rsp), %rbp
movq %rbp, %rdi
movq (%rsp), %r15
movq %r15, %rsi
movq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %eax, %eax
cmovsq %r15, %rbp
cmpq %rbp, %rbx
je 0x1ea712
movq %r12, %rdi
movq %r13, %rsi
movq %rbx, %rdx
callq 0x1fc965
movq %rax, %rbx
movq %r12, %rdi
movq %r13, %rsi
movq %rbp, %rdx
callq 0x1fc965
movq %r12, %rdi
movq %r13, %rsi
movq 0x18(%rsp), %rdx
movq %rax, %rcx
callq 0x1fc9e1
movq %r12, %rdi
movq %r13, %rsi
movq %rbp, %rdx
movq %rbx, %rcx
movq 0x18(%rsp), %rbx
callq 0x1fc9e1
leaq 0x1(%rbx), %r15
leaq (%r14,%rbx), %rbp
decq %rbp
addq %rbx, %r14
movq %r14, 0x28(%rsp)
movq $0x0, 0x20(%rsp)
movq $0x0, 0x10(%rsp)
movq %rbp, %r14
movq %r15, 0x38(%rsp)
cmpq %r14, %r15
ja 0x1ea83b
movq %rbp, 0x30(%rsp)
movq %r15, %rdi
movq %rbx, %rsi
movq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %eax, %eax
jg 0x1ea813
movq 0x40(%rsp), %rax
je 0x1ea7a2
testq %rax, %rax
je 0x1ea805
leaq 0x48(%rsp), %rdi
movq 0x8(%rsp), %rsi
callq 0x1ec02f
movq 0x20(%rsp), %rcx
cmpq %rax, %rcx
cmovbeq %rax, %rcx
movq %rcx, 0x20(%rsp)
jmp 0x1ea805
movq 0x38(%rsp), %rbx
cmpq %rbx, %r15
je 0x1ea7f8
movq %r12, %rdi
movq %r13, %rsi
movq %rbx, %rdx
callq 0x1fc965
movq %r14, %rbp
movq %rax, %r14
movq %r12, %rdi
movq %r13, %rsi
movq %r15, %rdx
callq 0x1fc965
movq %r12, %rdi
movq %r13, %rsi
movq %rbx, %rdx
movq %rax, %rcx
callq 0x1fc9e1
movq %r12, %rdi
movq %r13, %rsi
movq %r15, %rdx
movq %r14, %rcx
movq %rbp, %r14
movq 0x30(%rsp), %rbp
callq 0x1fc9e1
incq %rbx
movq %rbx, 0x38(%rsp)
movq 0x18(%rsp), %rbx
incq %r15
cmpq %r14, %r15
jbe 0x1ea74d
jmp 0x1ea83b
cmpq $0x0, 0x40(%rsp)
je 0x1ea83b
leaq 0x48(%rsp), %rdi
movq 0x8(%rsp), %rsi
callq 0x1ec02f
movq 0x10(%rsp), %rcx
cmpq %rax, %rcx
cmovbeq %rax, %rcx
movq %rcx, 0x10(%rsp)
cmpq %r14, %r15
movq %r15, (%rsp)
ja 0x1ea990
movq %r14, %rdi
movq %rbx, %rsi
movq 0x8(%rsp), %rdx
leaq 0x48(%rsp), %rcx
movq %r13, %r8
movq %r12, %r9
callq 0x1ebf68
testl %eax, %eax
js 0x1ea909
movq 0x40(%rsp), %rax
je 0x1ea899
testq %rax, %rax
je 0x1ea8ef
leaq 0x48(%rsp), %rdi
movq 0x8(%rsp), %rsi
callq 0x1ec02f
movq 0x10(%rsp), %rcx
cmpq %rax, %rcx
cmovbeq %rax, %rcx
movq %rcx, 0x10(%rsp)
jmp 0x1ea8ef
cmpq %rbp, %r14
je 0x1ea8e3
movq %r12, %rdi
movq %r13, %rsi
movq %r14, %rdx
callq 0x1fc965
movq %rax, %r15
movq %r12, %rdi
movq %r13, %rsi
movq %rbp, %rdx
callq 0x1fc965
movq %r12, %rdi
movq %r13, %rsi
movq %r14, %rdx
movq %rax, %rcx
callq 0x1fc9e1
movq %r12, %rdi
movq %r13, %rsi
movq %rbp, %rdx
movq %r15, %rcx
movq (%rsp), %r15
callq 0x1fc9e1
testq %rbp, %rbp
je 0x1eaeed
decq %rbp
testq %r14, %r14
je 0x1eaee3
decq %r14
cmpq %r14, %r15
jbe 0x1ea848
jmp 0x1ea990
cmpq $0x0, 0x40(%rsp)
je 0x1ea931
leaq 0x48(%rsp), %rdi
movq 0x8(%rsp), %rsi
callq 0x1ec02f
movq 0x20(%rsp), %rcx
cmpq %rax, %rcx
cmovbeq %rax, %rcx
movq %rcx, 0x20(%rsp)
cmpq %r14, %r15
je 0x1ea97c
movq %r12, %rdi
movq %r13, %rsi
movq %r15, %rdx
callq 0x1fc965
movq %rax, %r15
movq %r12, %rdi
movq %r13, %rsi
movq %r14, %rdx
callq 0x1fc965
movq %r12, %rdi
movq %r13, %rsi
movq (%rsp), %rdx
movq %rax, %rcx
callq 0x1fc9e1
movq %r12, %rdi
movq %r13, %rsi
movq %r14, %rdx
movq %r15, %rcx
movq (%rsp), %r15
callq 0x1fc9e1
testq %r14, %r14
je 0x1eaf10
incq %r15
decq %r14
jmp 0x1ea73f
movq 0x38(%rsp), %rcx
movq %rcx, %r15
subq %rbx, %r15
jb 0x1eaf01
movq %r14, 0x60(%rsp)
movq %rbp, 0x30(%rsp)
movq (%rsp), %rax
movq %rax, %rdx
subq %rcx, %rdx
jb 0x1eaef2
cmpq %rdx, %r15
movq %rdx, 0x78(%rsp)
cmovaeq %rdx, %r15
cmpq %r15, %rax
jb 0x1eaf06
testq %r15, %r15
movq (%rsp), %rax
je 0x1eaa32
negq %r15
movq 0x18(%rsp), %r14
leaq (%rax,%r15), %rbp
movq %r12, %rdi
movq %r13, %rsi
movq %r14, %rdx
callq 0x1fc965
movq %rax, %rbx
movq %r12, %rdi
movq %r13, %rsi
movq %rbp, %rdx
callq 0x1fc965
movq %r12, %rdi
movq %r13, %rsi
movq %r14, %rdx
movq %rax, %rcx
callq 0x1fc9e1
movq %r12, %rdi
movq %r13, %rsi
movq %rbp, %rdx
movq %rbx, %rcx
callq 0x1fc9e1
movq (%rsp), %rax
incq %r14
incq %r15
jne 0x1ea9e1
movq 0x30(%rsp), %r15
movq %r15, %rax
subq 0x60(%rsp), %rax
jb 0x1eaef7
movq 0x28(%rsp), %rbx
cmpq %r15, %rbx
jbe 0x1eaf0b
notq %r15
addq %rbx, %r15
cmpq %r15, %rax
movq %rax, 0x70(%rsp)
cmovbq %rax, %r15
cmpq %r15, %rbx
jbe 0x1eaefc
testq %r15, %r15
je 0x1eaad1
negq %r15
movq (%rsp), %r14
movq 0x28(%rsp), %rax
leaq (%rax,%r15), %rbx
movq %r12, %rdi
movq %r13, %rsi
movq %r14, %rdx
callq 0x1fc965
movq %rax, %rbp
movq %r12, %rdi
movq %r13, %rsi
movq %rbx, %rdx
callq 0x1fc965
movq %r12, %rdi
movq %r13, %rsi
movq %r14, %rdx
movq %rax, %rcx
callq 0x1fc9e1
movq %r12, %rdi
movq %r13, %rsi
movq %rbx, %rdx
movq 0x28(%rsp), %rbx
movq %rbp, %rcx
callq 0x1fc9e1
incq %r14
incq %r15
jne 0x1eaa7a
movq 0x38(%rsp), %rax
cmpq %rax, (%rsp)
movq 0x18(%rsp), %r15
movq 0x10(%rsp), %rbp
movq 0x30(%rsp), %r9
movq 0x60(%rsp), %r10
movq 0x78(%rsp), %r14
je 0x1eacb0
movq 0x40(%rsp), %r8
testq %r8, %r8
je 0x1eab72
movq 0x8(%r8), %rax
testq %rax, %rax
je 0x1eaf15
leaq (%r14,%r15), %rdx
leaq (%rdx,%r13), %rcx
addq 0x20(%r8), %rcx
cmpq 0x10(%r8), %rcx
jae 0x1eaf15
movq (%r8), %rsi
testq %rsi, %rsi
movq 0x20(%rsp), %r11
je 0x1eab48
movabsq $-0x8000000000000000, %rdi # imm = 0x8000000000000000
shrq %cl, %rdi
shrq $0x6, %rcx
orq %rdi, (%rsi,%rcx,8)
movq %r11, %rcx
shrq $0x20, %rcx
jne 0x1eaf29
movq 0x20(%r8), %rcx
leaq (%rax,%rcx,4), %rax
leaq (%rax,%r13,4), %rax
movl %r11d, (%rax,%rdx,4)
cmpq $0xff, %r11
jb 0x1eab72
incq 0x18(%r8)
cmpq $0x1, %r14
je 0x1eacb0
movq 0x90(%rsp), %rax
movq 0x2a8(%rsp), %rdi
cmpq 0x80(%rsp), %rax
jne 0x1eac7d
movq 0xa0(%rsp), %rsi
addq %rax, %rsi
shlq $0x4, %rsi
cmpq 0x98(%rsp), %rax
movl $0x0, %eax
cmoveq %rax, %rdi
leaq 0x1cbd6f(%rip), %rdx    # 0x3b6930
movl $0x8ae, %ecx            # imm = 0x8AE
callq 0x104461
movq %rax, 0x2a8(%rsp)
movq 0x80(%rsp), %rdx
cmpq 0x98(%rsp), %rdx
jne 0x1eabf9
shlq $0x4, %rdx
movq %rax, %rdi
leaq 0xa8(%rsp), %rsi
callq 0x17660
cmpq $0x0, 0x2b0(%rsp)
setne %cl
movq 0xa0(%rsp), %rax
testq %rax, %rax
setne %dl
andb %cl, %dl
cmpb $0x1, %dl
jne 0x1eac51
xorl %ebx, %ebx
xorl %r14d, %r14d
movq 0x80(%rsp), %rdi
shlq $0x4, %rdi
addq 0x2a8(%rsp), %rdi
addq %rbx, %rdi
callq *0x2b0(%rsp)
incq %r14
movq 0xa0(%rsp), %rax
addq $0x10, %rbx
cmpq %rax, %r14
jb 0x1eac1f
addq %rax, 0x80(%rsp)
movq 0x2a8(%rsp), %rdi
movq 0x90(%rsp), %rax
movq 0x28(%rsp), %rbx
movq 0x30(%rsp), %r9
movq 0x60(%rsp), %r10
movq 0x78(%rsp), %r14
leaq 0x1(%rax), %rcx
movq %rcx, 0x90(%rsp)
shlq $0x4, %rax
movq %r15, (%rdi,%rax)
movq %r14, 0x8(%rdi,%rax)
movq 0x90(%rsp), %rax
cmpq %rax, 0x88(%rsp)
jae 0x1eacb0
movq %rax, 0x88(%rsp)
cmpq %r10, %r9
movq 0x70(%rsp), %r9
je 0x1ead3f
movq 0x40(%rsp), %r8
testq %r8, %r8
je 0x1ead39
movq %rbx, %rax
subq %r9, %rax
jb 0x1eaf24
movq 0x8(%r8), %rdx
testq %rdx, %rdx
je 0x1eaf1a
leaq (%rax,%r13), %rcx
addq 0x20(%r8), %rcx
cmpq 0x10(%r8), %rcx
jae 0x1eaf1a
movq (%r8), %rsi
testq %rsi, %rsi
je 0x1ead10
movabsq $-0x8000000000000000, %rdi # imm = 0x8000000000000000
shrq %cl, %rdi
shrq $0x6, %rcx
orq %rdi, (%rsi,%rcx,8)
movq %rbp, %rcx
shrq $0x20, %rcx
jne 0x1eaf1f
movq 0x20(%r8), %rcx
leaq (%rdx,%rcx,4), %rcx
leaq (%rcx,%r13,4), %rcx
movl %ebp, (%rcx,%rax,4)
cmpq $0xff, %rbp
jb 0x1ead39
incq 0x18(%r8)
cmpq $0x1, %r9
jne 0x1ead55
movq 0x90(%rsp), %rax
testq %rax, %rax
jne 0x1ea16e
jmp 0x1eae92
subq %r9, %rbx
jb 0x1eaf2e
movq 0x90(%rsp), %rax
movq 0x2a8(%rsp), %rdi
cmpq 0x80(%rsp), %rax
jne 0x1eae56
movq %rbx, %r15
movq 0xa0(%rsp), %rsi
addq %rax, %rsi
shlq $0x4, %rsi
cmpq 0x98(%rsp), %rax
movl $0x0, %eax
cmoveq %rax, %rdi
leaq 0x1cbb8a(%rip), %rdx    # 0x3b6930
movl $0x8c4, %ecx            # imm = 0x8C4
callq 0x104461
movq %rax, 0x2a8(%rsp)
movq 0x80(%rsp), %rdx
cmpq 0x98(%rsp), %rdx
jne 0x1eadde
shlq $0x4, %rdx
movq %rax, %rdi
leaq 0xa8(%rsp), %rsi
callq 0x17660
cmpq $0x0, 0x2b0(%rsp)
setne %cl
movq 0xa0(%rsp), %rax
testq %rax, %rax
setne %dl
andb %cl, %dl
cmpb $0x1, %dl
jne 0x1eae36
xorl %ebx, %ebx
xorl %r14d, %r14d
movq 0x80(%rsp), %rdi
shlq $0x4, %rdi
addq 0x2a8(%rsp), %rdi
addq %rbx, %rdi
callq *0x2b0(%rsp)
incq %r14
movq 0xa0(%rsp), %rax
addq $0x10, %rbx
cmpq %rax, %r14
jb 0x1eae04
addq %rax, 0x80(%rsp)
movq 0x2a8(%rsp), %rdi
movq 0x90(%rsp), %rax
movq %r15, %rbx
movq 0x70(%rsp), %r9
leaq 0x1(%rax), %rcx
movq %rcx, 0x90(%rsp)
shlq $0x4, %rax
movq %rbx, (%rdi,%rax)
movq %r9, 0x8(%rdi,%rax)
movq 0x90(%rsp), %rax
cmpq %rax, 0x88(%rsp)
jae 0x1ead47
movq %rax, 0x88(%rsp)
jmp 0x1ead47
movq 0x80(%rsp), %rax
cmpq 0x98(%rsp), %rax
jbe 0x1eaebd
movq 0x2a8(%rsp), %rdi
leaq 0x1cba7d(%rip), %rsi    # 0x3b6930
movl $0x8c8, %edx            # imm = 0x8C8
callq 0x1045eb
addq $0x2b8, %rsp            # imm = 0x2B8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
callq 0x7805c
callq 0x78093
callq 0x78025
callq 0x77fee
callq 0x77c68
callq 0x77fb7
callq 0x77ca1
callq 0x77f45
callq 0x77ed3
callq 0x77d4c
callq 0x77f7e
callq 0x77f0c
callq 0x77d13
callq 0x77cda
callq 0x77dbc
callq 0x77e2a
callq 0x77df3
callq 0x77e61
callq 0x77d85
callq 0x77e9a
callq 0x77bf6
callq 0x77c2f
callq 0x780ca