// File: /workspace/github_c_makefile_star2_O2/genometools[P]genometools/src/external/bzip2-1.0.6/compress.c
// Function: BZ2_compressBlock
void BZ2_compressBlock ( EState* s, Bool is_last_block )
{
   if (s->nblock > 0) {

      BZ_FINALISE_CRC ( s->blockCRC );
      s->combinedCRC = (s->combinedCRC << 1) | (s->combinedCRC >> 31);
      s->combinedCRC ^= s->blockCRC;
      if (s->blockNo > 1) s->numZ = 0;

      if (s->verbosity >= 2)
         VPrintf4( "    block %d: crc = 0x%08x, "
                   "combined CRC = 0x%08x, size = %d\n",
                   s->blockNo, s->blockCRC, s->combinedCRC, s->nblock );

      BZ2_blockSort ( s );
   }

   s->zbits = (UChar*) (&((UChar*)s->arr2)[s->nblock]);

   /*-- If this is the first block, create the stream header. --*/
   if (s->blockNo == 1) {
      BZ2_bsInitWrite ( s );
      bsPutUChar ( s, BZ_HDR_B );
      bsPutUChar ( s, BZ_HDR_Z );
      bsPutUChar ( s, BZ_HDR_h );
      bsPutUChar ( s, (UChar)(BZ_HDR_0 + s->blockSize100k) );
   }

   if (s->nblock > 0) {

      bsPutUChar ( s, 0x31 ); bsPutUChar ( s, 0x41 );
      bsPutUChar ( s, 0x59 ); bsPutUChar ( s, 0x26 );
      bsPutUChar ( s, 0x53 ); bsPutUChar ( s, 0x59 );

      /*-- Now the block's CRC, so it is in a known place. --*/
      bsPutUInt32 ( s, s->blockCRC );

      /*-- 
         Now a single bit indicating (non-)randomisation. 
         As of version 0.9.5, we use a better sorting algorithm
         which makes randomisation unnecessary.  So always set
         the randomised bit to 'no'.  Of course, the decoder
         still needs to be able to handle randomised blocks
         so as to maintain backwards compatibility with
         older versions of bzip2.
      --*/
      bsW(s,1,0);

      bsW ( s, 24, s->origPtr );
      generateMTFValues ( s );
      sendMTFValues ( s );
   }


   /*-- If this is the last block, add the stream trailer. --*/
   if (is_last_block) {

      bsPutUChar ( s, 0x17 ); bsPutUChar ( s, 0x72 );
      bsPutUChar ( s, 0x45 ); bsPutUChar ( s, 0x38 );
      bsPutUChar ( s, 0x50 ); bsPutUChar ( s, 0x90 );
      bsPutUInt32 ( s, s->combinedCRC );
      if (s->verbosity >= 2)
         VPrintf1( "    final combined CRC = 0x%08x\n   ", s->combinedCRC );
      bsFinishWrite ( s );
   }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x188, %rsp            # imm = 0x188
movl %esi, %r15d
movq %rdi, %r13
movl 0x6c(%rdi), %r9d
testl %r9d, %r9d
jle 0x95bd4
movl 0x288(%r13), %ecx
movl 0x28c(%r13), %r8d
notl %ecx
movl %ecx, 0x288(%r13)
roll %r8d
xorl %ecx, %r8d
movl %r8d, 0x28c(%r13)
movl 0x294(%r13), %edx
cmpl $0x2, %edx
jl 0x95bba
andl $0x0, 0x74(%r13)
cmpl $0x2, 0x290(%r13)
jge 0x97365
movq %r13, %rdi
callq 0xc4d20
movl 0x6c(%r13), %r9d
movslq %r9d, %rax
addq 0x20(%r13), %rax
movq %rax, 0x50(%r13)
cmpl $0x1, 0x294(%r13)
jne 0x95c2a
andq $0x0, 0x280(%r13)
pushq $0x42
popq %rsi
movq %r13, %rdi
callq 0x97462
pushq $0x5a
popq %rsi
movq %r13, %rdi
callq 0x97462
pushq $0x68
popq %rsi
movq %r13, %rdi
callq 0x97462
movb 0x298(%r13), %al
addb $0x30, %al
movzbl %al, %esi
movq %r13, %rdi
callq 0x97462
movl 0x6c(%r13), %r9d
testl %r9d, %r9d
jle 0x97295
pushq $0x31
popq %rsi
movq %r13, %rdi
callq 0x97462
pushq $0x41
popq %rsi
movq %r13, %rdi
callq 0x97462
pushq $0x59
popq %rbp
movq %r13, %rdi
movl %ebp, %esi
callq 0x97462
pushq $0x26
popq %rsi
movq %r13, %rdi
callq 0x97462
pushq $0x53
popq %rsi
movq %r13, %rdi
callq 0x97462
movq %r13, %rdi
movl %ebp, %esi
callq 0x97462
movl 0x288(%r13), %esi
movq %r13, %rdi
callq 0x97469
pushq $0x1
popq %rsi
xorl %r14d, %r14d
movq %r13, %rdi
xorl %edx, %edx
callq 0x974c4
movl 0x30(%r13), %edx
pushq $0x18
popq %rsi
movq %r13, %rdi
callq 0x974c4
movq 0x38(%r13), %rcx
movq 0x40(%r13), %rdx
movq 0x48(%r13), %rax
movq %rax, 0x28(%rsp)
andl $0x0, 0x7c(%r13)
leaq 0x80(%r13), %rax
movq %rax, 0x50(%rsp)
movl $0x80, %eax
cmpq $0x180, %rax            # imm = 0x180
je 0x95cef
cmpb $0x0, (%r13,%rax)
je 0x95cea
movb %r14b, 0x100(%r13,%rax)
incl %r14d
movl %r14d, 0x7c(%r13)
incq %rax
jmp 0x95ccb
leal 0x1(%r14), %eax
cltq
testq %rax, %rax
pushq $-0x1
popq %rsi
movq %rsi, %rdi
cmovnsq %rax, %rdi
cmpq %rsi, %rdi
je 0x95d15
andl $0x0, 0x2a4(%r13,%rsi,4)
incq %rsi
jmp 0x95d02
xorl %esi, %esi
testl %r14d, %r14d
cmovlel %esi, %r14d
cmpq %rsi, %r14
je 0x95d30
movb %sil, 0x80(%rsp,%rsi)
incq %rsi
jmp 0x95d1e
xorl %r8d, %r8d
pushq $0x2
popq %r9
xorl %edi, %edi
xorl %esi, %esi
movslq 0x6c(%r13), %r10
movslq %edi, %rbx
cmpq %r10, %r8
jge 0x95e22
movl (%rcx,%r8,4), %r11d
leal -0x1(%r11), %r14d
sarl $0x1f, %r14d
andl %r10d, %r14d
leal (%r14,%r11), %r10d
decl %r10d
movslq %r10d, %r10
movzbl (%rdx,%r10), %r10d
movb 0x180(%r13,%r10), %r10b
movb 0x80(%rsp), %r11b
cmpb %r10b, %r11b
jne 0x95d85
incl %esi
jmp 0x95e1a
testl %esi, %esi
jle 0x95dca
decl %esi
leal 0x1(%rbx), %edi
movq 0x28(%rsp), %r14
leaq (%r14,%rbx,2), %rbx
testb $0x1, %sil
jne 0x95da8
incl 0x2a0(%r13)
xorl %ebp, %ebp
jmp 0x95db3
incl 0x2a4(%r13)
movw $0x1, %bp
movw %bp, (%rbx)
cmpl $0x2, %esi
jl 0x95dc8
addl $-0x2, %esi
shrl %esi
incl %edi
addq $0x2, %rbx
jmp 0x95d97
xorl %esi, %esi
movb 0x81(%rsp), %bl
movb %r11b, 0x81(%rsp)
movq %r9, %r11
cmpb %bl, %r10b
je 0x95df8
movb 0x80(%rsp,%r11), %bpl
movb %bl, 0x80(%rsp,%r11)
incq %r11
movl %ebp, %ebx
jmp 0x95ddc
movb %r10b, 0x80(%rsp)
movslq %edi, %rdi
movq 0x28(%rsp), %r10
movw %r11w, (%r10,%rdi,2)
incl %edi
movslq %r11d, %r10
incl 0x2a0(%r13,%r10,4)
incq %r8
jmp 0x95d3b
testl %esi, %esi
jle 0x95e65
decl %esi
leal 0x1(%rbx), %edi
movq 0x28(%rsp), %rcx
leaq (%rcx,%rbx,2), %rcx
testb $0x1, %sil
jne 0x95e45
incl 0x2a0(%r13)
xorl %edx, %edx
jmp 0x95e50
incl 0x2a4(%r13)
movw $0x1, %dx
movw %dx, (%rcx)
cmpl $0x2, %esi
jl 0x95e65
addl $-0x2, %esi
shrl %esi
incl %edi
addq $0x2, %rcx
jmp 0x95e34
movslq %edi, %rcx
movq 0x28(%rsp), %rdx
movw %ax, (%rdx,%rcx,2)
incl %ecx
incl 0x2a0(%r13,%rax,4)
movl %ecx, 0x29c(%r13)
andl $0x0, 0x40(%rsp)
andq $0x0, 0x38(%rsp)
cmpl $0x3, 0x290(%r13)
jge 0x97382
movslq 0x7c(%r13), %rbx
leal 0x2(%rbx), %edx
leaq 0x934c(%r13), %rcx
xorl %eax, %eax
testl %edx, %edx
movl $0x0, %esi
movl %edx, 0x58(%rsp)
cmovgl %edx, %esi
movq %rcx, 0x30(%rsp)
cmpq $0x6, %rax
je 0x95ee0
xorl %edx, %edx
cmpq %rdx, %rsi
je 0x95ed4
movb $0xf, (%rcx,%rdx)
incq %rdx
jmp 0x95ec6
incq %rax
addq $0x102, %rcx            # imm = 0x102
jmp 0x95ebe
movl 0x29c(%r13), %edi
testl %edi, %edi
movq %rsi, 0x18(%rsp)
jg 0x95f06
movl $0xbb9, %edi            # imm = 0xBB9
callq 0x77bd0
movq 0x18(%rsp), %rsi
movl 0x29c(%r13), %edi
xorl %ecx, %ecx
cmpl $0xc8, %edi
movl %r15d, 0x74(%rsp)
jge 0x95f19
pushq $0x2
jmp 0x95f33
cmpl $0x258, %edi            # imm = 0x258
jae 0x95f25
pushq $0x3
jmp 0x95f33
cmpl $0x4b0, %edi            # imm = 0x4B0
jae 0x9734d
pushq $0x4
popq %rax
movq $0x0, 0x48(%rsp)
movl %eax, %r14d
imulq $0x102, %r14, %rax      # imm = 0x102
movq %r13, (%rsp)
addq %rax, %r13
addq $0x924a, %r13           # imm = 0x924A
movabsq $0x100000000, %r9       # imm = 0x100000000
pushq $0xf
popq %r12
movq %r14, %r10
testq %r10, %r10
jle 0x960a2
movl %edi, %eax
cltd
idivl %r10d
leal -0x1(%rcx), %edx
movslq %edx, %r15
movq %r15, %r8
shlq $0x20, %r8
xorl %ebp, %ebp
cmpl %eax, %ebp
jge 0x95fa1
cmpq %rbx, %r15
jg 0x95fa1
movq (%rsp), %rdx
addl 0x2a4(%rdx,%r15,4), %ebp
incq %r15
addq %r9, %r8
jmp 0x95f84
cmpl %r15d, %ecx
jge 0x95fda
cmpq %r14, %r10
sete %al
cmpq $0x1, %r10
sete %dl
orb %al, %dl
jne 0x95fda
movl %r14d, %eax
subl %r10d, %eax
andl $0x80000001, %eax       # imm = 0x80000001
cmpl $0x1, %eax
jne 0x95fda
sarq $0x1e, %r8
movq (%rsp), %rax
subl 0x2a0(%rax,%r8), %ebp
decl %r15d
movq (%rsp), %rax
cmpl $0x3, 0x290(%rax)
jge 0x9602d
decq %r10
movslq %ecx, %rax
movslq %r15d, %rcx
xorl %edx, %edx
cmpq %rdx, %rsi
je 0x96019
cmpq %rcx, %rdx
movl $0x0, %esi
cmovgl %r12d, %esi
cmpq %rax, %rdx
cmovll %r12d, %esi
movb %sil, (%r13,%rdx)
movq 0x18(%rsp), %rsi
incq %rdx
jmp 0x95ff2
incl %r15d
subl %ebp, %edi
addq $-0x102, %r13           # imm = 0xFEFE
movl %r15d, %ecx
jmp 0x95f66
cvtsi2ss %ebp, %xmm0
movq 0x97f80(%rip), %rax     # 0x12dfb8
movl %edi, 0x8(%rsp)
movq (%rax), %rdi
movq (%rsp), %rax
cvtsi2ssl 0x29c(%rax), %xmm1
cvtss2sd %xmm0, %xmm0
mulsd 0x3e709(%rip), %xmm0    # 0xd4760
cvtss2sd %xmm1, %xmm1
divsd %xmm1, %xmm0
leaq 0x519c1(%rip), %rsi     # 0xe7a27
movl %r10d, %edx
movq %rcx, 0x20(%rsp)
movl %r15d, %r8d
movl %ebp, %r9d
movb $0x1, %al
movq %r10, 0x10(%rsp)
callq 0xb8c0
movq 0x10(%rsp), %r10
movabsq $0x100000000, %r9       # imm = 0x100000000
movq 0x20(%rsp), %rcx
movl 0x8(%rsp), %edi
movq 0x18(%rsp), %rsi
jmp 0x95fe7
movq (%rsp), %rbx
leaq 0xb188(%rbx), %rbp
leaq 0xc9b8(%rbx), %r12
leaq 0xc9c0(%rbx), %rax
movq %rax, 0x78(%rsp)
leaq 0x934c(%rbx), %rax
movq %rax, 0x8(%rsp)
movq %rax, 0x20(%rsp)
xorl %eax, %eax
cmpl $0x4, %eax
movq 0x28(%rsp), %r15
movq 0x48(%rsp), %r13
je 0x969e4
movq %rax, 0x10(%rsp)
xorl %eax, %eax
cmpq %rax, %r14
je 0x960ff
andl $0x0, 0x80(%rsp,%rax,4)
incq %rax
jmp 0x960ed
movq %rbp, %rax
xorl %ecx, %ecx
cmpq %r14, %rcx
je 0x96124
xorl %edx, %edx
cmpq %rdx, %rsi
je 0x96119
andl $0x0, (%rax,%rdx,4)
incq %rdx
jmp 0x9610b
incq %rcx
addq $0x408, %rax            # imm = 0x408
jmp 0x96104
testb %r13b, %r13b
je 0x9618a
movq 0x78(%rsp), %rax
xorl %ecx, %ecx
cmpq %rcx, %rsi
je 0x9618a
movzbl 0x944e(%rbx,%rcx), %edx
shll $0x10, %edx
movzbl 0x934c(%rbx,%rcx), %esi
orl %edx, %esi
movl %esi, -0x8(%rax)
movzbl 0x9652(%rbx,%rcx), %edx
shll $0x10, %edx
movzbl 0x9550(%rbx,%rcx), %esi
orl %edx, %esi
movl %esi, -0x4(%rax)
movzbl 0x9856(%rbx,%rcx), %edx
shll $0x10, %edx
movzbl 0x9754(%rbx,%rcx), %esi
orl %edx, %esi
movl %esi, (%rax)
movq 0x18(%rsp), %rsi
incq %rcx
addq $0x10, %rax
jmp 0x96130
movq $0x0, 0x20(%rsp)
xorl %eax, %eax
xorl %edx, %edx
movl 0x29c(%rbx), %esi
cmpl %esi, %edx
jge 0x96936
leal 0x31(%rdx), %edi
xorl %ecx, %ecx
cmpq %rcx, %r14
je 0x961ba
andw $0x0, 0x38(%rsp,%rcx,2)
incq %rcx
jmp 0x961aa
leal -0x1(%rsi), %ecx
cmpl %esi, %edi
cmovll %edi, %ecx
movl %ecx, %esi
subl %edx, %esi
cmpl $0x31, %esi
sete %dil
movslq %edx, %rdx
movslq %ecx, %rsi
andb %r13b, %dil
je 0x968fd
movzwl (%r15,%rdx,2), %r11d
shll $0x4, %r11d
movzwl 0x2(%r15,%rdx,2), %r8d
shll $0x4, %r8d
movl (%r12,%r8), %r10d
addl (%r12,%r11), %r10d
movl 0x4(%r12,%r8), %r9d
addl 0x4(%r12,%r11), %r9d
movl 0x8(%r12,%r8), %r8d
addl 0x8(%r12,%r11), %r8d
movzwl 0x4(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x6(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x8(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0xa(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0xc(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0xe(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x10(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x12(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x14(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x16(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x18(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x1a(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x1c(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x1e(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x20(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x22(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x24(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x26(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x28(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x2a(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x2c(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x2e(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x30(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x32(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x34(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x36(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x38(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x3a(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x3c(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x3e(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x40(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x42(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x44(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x46(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x48(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x4a(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x4c(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x4e(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x50(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x52(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x54(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x56(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x58(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x5a(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x5c(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x5e(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x60(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movzwl 0x62(%r15,%rdx,2), %r11d
shll $0x4, %r11d
addl (%r12,%r11), %r10d
addl 0x4(%r12,%r11), %r9d
addl 0x8(%r12,%r11), %r8d
movw %r10w, 0x38(%rsp)
shrl $0x10, %r10d
movw %r10w, 0x3a(%rsp)
movw %r9w, 0x3c(%rsp)
shrl $0x10, %r9d
movw %r9w, 0x3e(%rsp)
movw %r8w, 0x40(%rsp)
shrl $0x10, %r8d
movw %r8w, 0x42(%rsp)
movl $0x3b9ac9ff, %r8d       # imm = 0x3B9AC9FF
xorl %r9d, %r9d
pushq $-0x1
popq %r10
cmpq %r9, %r14
je 0x966e3
movzwl 0x38(%rsp,%r9,2), %r11d
cmpl %r11d, %r8d
cmovgel %r11d, %r8d
cmovgl %r9d, %r10d
incq %r9
jmp 0x966c8
movslq %r10d, %r9
incl 0x80(%rsp,%r9,4)
movq 0x20(%rsp), %r10
movb %r9b, 0x6a8(%rbx,%r10)
testb %dil, %dil
je 0x968e0
movzwl (%r15,%rdx,2), %edi
imulq $0x408, %r9, %rsi       # imm = 0x408
addq %rbp, %rsi
incl (%rsi,%rdi,4)
movzwl 0x2(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x4(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x6(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x8(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0xa(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0xc(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0xe(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x10(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x12(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x14(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x16(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x18(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x1a(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x1c(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x1e(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x20(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x22(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x24(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x26(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x28(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x2a(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x2c(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x2e(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x30(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x32(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x34(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x36(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x38(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x3a(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x3c(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x3e(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x40(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x42(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x44(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x46(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x48(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x4a(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x4c(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x4e(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x50(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x52(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x54(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x56(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x58(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x5a(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x5c(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x5e(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x60(%r15,%rdx,2), %edi
incl (%rsi,%rdi,4)
movzwl 0x62(%r15,%rdx,2), %edx
incl (%rsi,%rdx,4)
addl %r8d, %eax
incq 0x20(%rsp)
incl %ecx
movl %ecx, %edx
jmp 0x96197
cmpq %rsi, %rdx
jg 0x968cf
movzwl (%r15,%rdx,2), %edi
imulq $0x408, %r9, %r10       # imm = 0x408
addq %rbp, %r10
incl (%r10,%rdi,4)
incq %rdx
jmp 0x968e0
movq %rdx, %r8
cmpq %rsi, %r8
jg 0x966bb
movzwl (%r15,%r8,2), %r9d
addq 0x8(%rsp), %r9
xorl %r10d, %r10d
cmpq %r10, %r14
je 0x96931
movzbl (%r9), %r11d
addw %r11w, 0x38(%rsp,%r10,2)
incq %r10
addq $0x102, %r9             # imm = 0x102
jmp 0x96916
incq %r8
jmp 0x96900
cmpl $0x3, 0x290(%rbx)
jge 0x96987
movq %r14, %rbx
movq 0x30(%rsp), %r15
movq %rbp, %r13
subq $0x1, %rbx
jb 0x96972
movq %r15, %rdi
movq %r13, %rsi
movl 0x58(%rsp), %edx
pushq $0x11
popq %rcx
callq 0xc66e8
addq $0x408, %r13            # imm = 0x408
addq $0x102, %r15            # imm = 0x102
jmp 0x9694a
movq 0x10(%rsp), %rax
incl %eax
movq (%rsp), %rbx
movq 0x18(%rsp), %rsi
jmp 0x960d3
movq 0x9762a(%rip), %r15     # 0x12dfb8
movq (%r15), %rdi
movq 0x10(%rsp), %rcx
incl %ecx
cltd
pushq $0x8
popq %rsi
idivl %esi
leaq 0x510bd(%rip), %rsi     # 0xe7a62
movl %ecx, %edx
movl %eax, %ecx
xorl %eax, %eax
callq 0xb8c0
xorl %ebx, %ebx
movq (%r15), %rsi
cmpq %rbx, %r14
je 0x969d7
movl 0x80(%rsp,%rbx,4), %edx
movq %rsi, %rdi
leaq 0x510c0(%rip), %rsi     # 0xe7a8b
xorl %eax, %eax
callq 0xb8c0
incq %rbx
jmp 0x969b2
pushq $0xa
popq %rdi
callq 0xb7d0
jmp 0x9693f
cmpl $0x4653, 0x20(%rsp)     # imm = 0x4653
jl 0x969f8
movl $0xbbb, %edi            # imm = 0xBBB
callq 0x77bd0
xorl %eax, %eax
cmpq %rax, %r14
je 0x96a08
movb %al, 0x60(%rsp,%rax)
incq %rax
jmp 0x969fa
movb 0x60(%rsp), %cl
xorl %eax, %eax
movq 0x20(%rsp), %rdx
testl %edx, %edx
movl $0x0, %r8d
cmovgl %edx, %r8d
cmpq %r8, %rax
je 0x96a50
movb 0x6a8(%rbx,%rax), %dl
xorl %esi, %esi
cmpb %cl, %dl
je 0x96a41
movb 0x61(%rsp,%rsi), %dil
movb %cl, 0x61(%rsp,%rsi)
incq %rsi
movl %edi, %ecx
jmp 0x96a2d
movb %sil, 0x4cfa(%rbx,%rax)
incq %rax
movl %edx, %ecx
jmp 0x96a1f
movq %r8, 0x8(%rsp)
leaq 0x9958(%rbx), %rax
movq %rax, 0x10(%rsp)
xorl %r13d, %r13d
pushq $0x20
popq %rbx
movq 0x30(%rsp), %r12
cmpq %r14, %r13
movq 0x18(%rsp), %rdx
je 0x96aea
xorl %eax, %eax
xorl %ebp, %ebp
movl %ebx, %r15d
cmpq %rax, %rdx
je 0x96a98
movzbl (%r12,%rax), %ecx
cmpl %ecx, %ebp
cmovlel %ecx, %ebp
cmpl %ecx, %r15d
cmovgel %ecx, %r15d
incq %rax
jmp 0x96a7d
cmpl $0x12, %ebp
jb 0x96aa7
movl $0xbbc, %edi            # imm = 0xBBC
callq 0x77bd0
testl %r15d, %r15d
jg 0x96ab6
movl $0xbbd, %edi            # imm = 0xBBD
callq 0x77bd0
imulq $0x408, %r13, %rdi      # imm = 0x408
addq 0x10(%rsp), %rdi
imulq $0x102, %r13, %rsi      # imm = 0x102
addq 0x30(%rsp), %rsi
movl %r15d, %edx
movl %ebp, %ecx
movl 0x58(%rsp), %r8d
callq 0xc69f3
incq %r13
movl $0x102, %eax            # imm = 0x102
addq %rax, %r12
jmp 0x96a6c
xorl %eax, %eax
movq 0x50(%rsp), %rcx
movq (%rsp), %r13
cmpq $0x10, %rax
je 0x96b21
movb $0x0, 0x60(%rsp,%rax)
xorl %edx, %edx
cmpq $0x10, %rdx
je 0x96b18
cmpb $0x0, (%rcx,%rdx)
je 0x96b13
movb $0x1, 0x60(%rsp,%rax)
incq %rdx
jmp 0x96b02
incq %rax
addq $0x10, %rcx
jmp 0x96af5
movl 0x74(%r13), %r15d
xorl %ebx, %ebx
pushq $0x1
popq %rbp
cmpq $0x10, %rbx
je 0x96b49
xorl %edx, %edx
cmpb $0x0, 0x60(%rsp,%rbx)
setne %dl
movq %r13, %rdi
movl %ebp, %esi
callq 0x974c4
incq %rbx
jmp 0x96b2a
xorl %r12d, %r12d
pushq $0x1
popq %rbp
cmpq $0x10, %r12
je 0x96b8d
cmpb $0x0, 0x60(%rsp,%r12)
je 0x96b82
xorl %ebx, %ebx
cmpq $0x10, %rbx
je 0x96b82
xorl %edx, %edx
movq 0x50(%rsp), %rax
cmpb $0x0, (%rax,%rbx)
setne %dl
movq %r13, %rdi
movl %ebp, %esi
callq 0x974c4
incq %rbx
jmp 0x96b5f
incq %r12
addq $0x10, 0x50(%rsp)
jmp 0x96b4f
cmpl $0x3, 0x290(%r13)
movl 0x74(%r13), %ebp
jge 0x973a7
movq 0x8(%rsp), %r12
pushq $0x3
popq %rsi
movq %r13, %rdi
movl %r14d, %edx
callq 0x974c4
pushq $0xf
popq %rsi
movq %r13, %rdi
movq 0x20(%rsp), %rdx
callq 0x974c4
xorl %ebx, %ebx
pushq $0x1
popq %r15
cmpq %r12, %rbx
je 0x96c02
xorl %r12d, %r12d
movzbl 0x4cfa(%r13,%rbx), %eax
movq %r13, %rdi
movl %r15d, %esi
cmpl %eax, %r12d
jae 0x96bf1
movl %r15d, %edx
callq 0x974c4
incl %r12d
jmp 0x96bd0
xorl %edx, %edx
callq 0x974c4
incq %rbx
movq 0x8(%rsp), %r12
jmp 0x96bc8
cmpl $0x3, 0x290(%r13)
jge 0x973cd
movl 0x74(%r13), %eax
movl %eax, 0x50(%rsp)
xorl %eax, %eax
pushq $0x2
popq %r12
pushq $0x3
popq %r13
cmpq %r14, %rax
je 0x96cc4
movq %rax, 0x58(%rsp)
imulq $0x102, %rax, %rcx      # imm = 0x102
movq 0x30(%rsp), %rax
movq %rcx, 0x8(%rsp)
movzbl (%rax,%rcx), %r15d
movq (%rsp), %rdi
pushq $0x5
popq %rsi
movl %r15d, %edx
callq 0x974c4
xorl %ebp, %ebp
cmpq 0x18(%rsp), %rbp
je 0x96cb7
movq 0x30(%rsp), %rax
leaq (%rax,%rbp), %rbx
addq 0x8(%rsp), %rbx
movzbl (%rbx), %eax
cmpl %eax, %r15d
jge 0x96c9c
movq (%rsp), %rdi
movl %r12d, %esi
movl %r12d, %edx
callq 0x974c4
incl %r15d
jmp 0x96c6c
movq (%rsp), %rdi
movl %r12d, %esi
movl %r13d, %edx
callq 0x974c4
decl %r15d
movb (%rbx), %al
movzbl %al, %eax
cmpl %eax, %r15d
ja 0x96c88
movq (%rsp), %rdi
pushq $0x1
popq %rsi
xorl %edx, %edx
callq 0x974c4
incq %rbp
jmp 0x96c57
movq 0x58(%rsp), %rax
incq %rax
jmp 0x96c22
movq (%rsp), %r13
cmpl $0x3, 0x290(%r13)
movl 0x74(%r13), %edx
jge 0x973f0
movl %edx, 0x18(%rsp)
movq 0x10(%rsp), %rbp
xorl %r15d, %r15d
xorl %r12d, %r12d
movl 0x29c(%r13), %eax
cmpl %eax, %r12d
jge 0x97271
leal 0x31(%r12), %ecx
leal -0x1(%rax), %ebx
cmpl %eax, %ecx
cmovll %ecx, %ebx
movzbl 0x6a8(%r13,%r15), %eax
cmpl %eax, %r14d
ja 0x96d1e
movl $0xbbe, %edi            # imm = 0xBBE
callq 0x77bd0
movl %ebx, %eax
subl %r12d, %eax
cmpl $0x31, %eax
sete %al
testb %al, 0x48(%rsp)
movl %ebx, 0x8(%rsp)
je 0x97228
movzbl 0x6a8(%r13,%r15), %eax
imulq $0x102, %rax, %r13      # imm = 0x102
addq 0x30(%rsp), %r13
imulq $0x408, %rax, %rbp      # imm = 0x408
addq 0x10(%rsp), %rbp
movslq %r12d, %r12
movq 0x28(%rsp), %rbx
movzwl (%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x2(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x4(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x6(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x8(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0xa(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0xc(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0xe(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x10(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x12(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x14(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x16(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x18(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x1a(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x1c(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x1e(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x20(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x22(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x24(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x26(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x28(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x2a(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x2c(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x2e(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x30(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x32(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x34(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x36(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x38(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x3a(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x3c(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x3e(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x40(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x42(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x44(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x46(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x48(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x4a(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x4c(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x4e(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x50(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x52(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x54(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x56(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x58(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x5a(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x5c(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x5e(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x60(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movl (%rbp,%rax,4), %edx
movq (%rsp), %rdi
callq 0x974c4
movzwl 0x62(%rbx,%r12,2), %eax
movzbl (%rax,%r13), %esi
movq (%rsp), %r13
movl (%rbp,%rax,4), %edx
movq 0x10(%rsp), %rbp
movq %r13, %rdi
callq 0x974c4
movl 0x8(%rsp), %eax
incl %eax
incq %r15
movl %eax, %r12d
jmp 0x96ce9
movl %ebx, %eax
movslq %r12d, %rbx
movslq %eax, %r12
cmpq %r12, %rbx
jg 0x97217
movzbl 0x6a8(%r13,%r15), %eax
movq 0x28(%rsp), %rcx
movzwl (%rcx,%rbx,2), %ecx
imulq $0x102, %rax, %rdx      # imm = 0x102
addq 0x30(%rsp), %rdx
movzbl (%rcx,%rdx), %esi
imulq $0x408, %rax, %rax      # imm = 0x408
addq %rbp, %rax
movl (%rax,%rcx,4), %edx
movq %r13, %rdi
callq 0x974c4
incq %rbx
jmp 0x97230
cmpl %r15d, 0x20(%rsp)
je 0x97282
movl $0xbbf, %edi            # imm = 0xBBF
callq 0x77bd0
cmpl $0x3, 0x290(%r13)
movl 0x74(%rsp), %r15d
jge 0x97419
testb %r15b, %r15b
je 0x9733b
pushq $0x17
popq %rsi
movq %r13, %rdi
callq 0x97462
pushq $0x72
popq %rsi
movq %r13, %rdi
callq 0x97462
pushq $0x45
popq %rsi
movq %r13, %rdi
callq 0x97462
pushq $0x38
popq %rsi
movq %r13, %rdi
callq 0x97462
pushq $0x50
popq %rsi
movq %r13, %rdi
callq 0x97462
movq %r13, %rdi
movl $0x90, %esi
callq 0x97462
movl 0x28c(%r13), %esi
movq %r13, %rdi
callq 0x97469
cmpl $0x2, 0x290(%r13)
jge 0x9743e
movl 0x284(%r13), %eax
testl %eax, %eax
jle 0x9733b
movb 0x283(%r13), %al
movq 0x50(%r13), %rcx
movslq 0x74(%r13), %rdx
movb %al, (%rcx,%rdx)
incl 0x74(%r13)
shll $0x8, 0x280(%r13)
movl 0x284(%r13), %eax
addl $-0x8, %eax
movl %eax, 0x284(%r13)
jmp 0x97306
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
xorl %eax, %eax
cmpl $0x960, %edi            # imm = 0x960
setae %al
movq %rax, 0x48(%rsp)
addl $0x5, %eax
jmp 0x95f3d
movq 0x96c4c(%rip), %rax     # 0x12dfb8
movq (%rax), %rdi
leaq 0x5060f(%rip), %rsi     # 0xe7985
xorl %eax, %eax
callq 0xb8c0
jmp 0x95bc8
movq 0x96c2f(%rip), %rax     # 0x12dfb8
movq (%rax), %rdi
movl 0x6c(%r13), %edx
movl 0x7c(%r13), %r8d
leaq 0x5064c(%rip), %rsi     # 0xe79e7
xorl %eax, %eax
callq 0xb8c0
jmp 0x95e9b
movq 0x96c0a(%rip), %rax     # 0x12dfb8
movq (%rax), %rdi
subl %r15d, %ebp
leaq 0x506d4(%rip), %rsi     # 0xe7a8f
movl %ebp, %edx
xorl %eax, %eax
callq 0xb8c0
movl 0x74(%r13), %ebp
jmp 0x96b9f
movq 0x96be4(%rip), %rax     # 0x12dfb8
movq (%rax), %rdi
movl 0x74(%r13), %edx
subl %ebp, %edx
leaq 0x506c5(%rip), %rsi     # 0xe7aa9
xorl %eax, %eax
callq 0xb8c0
jmp 0x96c10
movq 0x96bc1(%rip), %rax     # 0x12dfb8
movq (%rax), %rdi
subl 0x50(%rsp), %edx
leaq 0x506b3(%rip), %rsi     # 0xe7ab8
xorl %eax, %eax
callq 0xb8c0
movl 0x74(%r13), %eax
movl %eax, 0x18(%rsp)
jmp 0x96cde
movq 0x96b98(%rip), %rax     # 0x12dfb8
movq (%rax), %rdi
movl 0x74(%r13), %edx
subl 0x18(%rsp), %edx
leaq 0x50698(%rip), %rsi     # 0xe7aca
xorl %eax, %eax
callq 0xb8c0
jmp 0x97295
movq 0x96b73(%rip), %rax     # 0x12dfb8
movq (%rax), %rdi
movl 0x28c(%r13), %edx
leaq 0x5056d(%rip), %rsi     # 0xe79c3
xorl %eax, %eax
callq 0xb8c0
jmp 0x972ff