// File: /workspace/github_c_makefile_star2_O1/shuffle2[P]nx2elf/lz4.c
// Function: LZ4_compress_fast_continue
int LZ4_compress_fast_continue (LZ4_stream_t* LZ4_stream,
                                const char* source, char* dest,
                                int inputSize, int maxOutputSize,
                                int acceleration)
{
    const tableType_t tableType = byU32;
    LZ4_stream_t_internal* const streamPtr = &LZ4_stream->internal_donotuse;
    const char* dictEnd = streamPtr->dictSize ? (const char*)streamPtr->dictionary + streamPtr->dictSize : NULL;

    DEBUGLOG(5, "LZ4_compress_fast_continue (inputSize=%i, dictSize=%u)", inputSize, streamPtr->dictSize);

    LZ4_renormDictT(streamPtr, inputSize);   /* fix index overflow */
    if (acceleration < 1) acceleration = LZ4_ACCELERATION_DEFAULT;
    if (acceleration > LZ4_ACCELERATION_MAX) acceleration = LZ4_ACCELERATION_MAX;

    /* invalidate tiny dictionaries */
    if ( (streamPtr->dictSize < 4)     /* tiny dictionary : not enough for a hash */
      && (dictEnd != source)           /* prefix mode */
      && (inputSize > 0)               /* tolerance : don't lose history, in case next invocation would use prefix mode */
      && (streamPtr->dictCtx == NULL)  /* usingDictCtx */
      ) {
        DEBUGLOG(5, "LZ4_compress_fast_continue: dictSize(%u) at addr:%p is too small", streamPtr->dictSize, streamPtr->dictionary);
        /* remove dictionary existence from history, to employ faster prefix mode */
        streamPtr->dictSize = 0;
        streamPtr->dictionary = (const BYTE*)source;
        dictEnd = source;
    }

    /* Check overlapping input/dictionary space */
    {   const char* const sourceEnd = source + inputSize;
        if ((sourceEnd > (const char*)streamPtr->dictionary) && (sourceEnd < dictEnd)) {
            streamPtr->dictSize = (U32)(dictEnd - sourceEnd);
            if (streamPtr->dictSize > 64 KB) streamPtr->dictSize = 64 KB;
            if (streamPtr->dictSize < 4) streamPtr->dictSize = 0;
            streamPtr->dictionary = (const BYTE*)dictEnd - streamPtr->dictSize;
        }
    }

    /* prefix mode : source data follows dictionary */
    if (dictEnd == source) {
        if ((streamPtr->dictSize < 64 KB) && (streamPtr->dictSize < streamPtr->currentOffset))
            return LZ4_compress_generic(streamPtr, source, dest, inputSize, NULL, maxOutputSize, limitedOutput, tableType, withPrefix64k, dictSmall, acceleration);
        else
            return LZ4_compress_generic(streamPtr, source, dest, inputSize, NULL, maxOutputSize, limitedOutput, tableType, withPrefix64k, noDictIssue, acceleration);
    }

    /* external dictionary mode */
    {   int result;
        if (streamPtr->dictCtx) {
            /* We depend here on the fact that dictCtx'es (produced by
             * LZ4_loadDict) guarantee that their tables contain no references
             * to offsets between dictCtx->currentOffset - 64 KB and
             * dictCtx->currentOffset - dictCtx->dictSize. This makes it safe
             * to use noDictIssue even when the dict isn't a full 64 KB.
             */
            if (inputSize > 4 KB) {
                /* For compressing large blobs, it is faster to pay the setup
                 * cost to copy the dictionary's tables into the active context,
                 * so that the compression loop is only looking into one table.
                 */
                LZ4_memcpy(streamPtr, streamPtr->dictCtx, sizeof(*streamPtr));
                result = LZ4_compress_generic(streamPtr, source, dest, inputSize, NULL, maxOutputSize, limitedOutput, tableType, usingExtDict, noDictIssue, acceleration);
            } else {
                result = LZ4_compress_generic(streamPtr, source, dest, inputSize, NULL, maxOutputSize, limitedOutput, tableType, usingDictCtx, noDictIssue, acceleration);
            }
        } else {  /* small data <= 4 KB */
            if ((streamPtr->dictSize < 64 KB) && (streamPtr->dictSize < streamPtr->currentOffset)) {
                result = LZ4_compress_generic(streamPtr, source, dest, inputSize, NULL, maxOutputSize, limitedOutput, tableType, usingExtDict, dictSmall, acceleration);
            } else {
                result = LZ4_compress_generic(streamPtr, source, dest, inputSize, NULL, maxOutputSize, limitedOutput, tableType, usingExtDict, noDictIssue, acceleration);
            }
        }
        streamPtr->dictionary = (const BYTE*)source;
        streamPtr->dictSize = (U32)inputSize;
        return result;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xd8, %rsp
movl %r9d, %ebx
movl %r8d, %r12d
movl %ecx, %r15d
movq %rdx, -0xc0(%rbp)
movq %rsi, -0x30(%rbp)
movl 0x4018(%rdi), %r14d
testq %r14, %r14
je 0xf241
addq 0x4008(%rdi), %r14
jmp 0xf244
xorl %r14d, %r14d
movl %r15d, %esi
movq %rdi, -0x38(%rbp)
callq 0x12914
movq -0x38(%rbp), %r10
cmpl $0x2, %ebx
movl $0x1, %ecx
cmovgel %ebx, %ecx
movl $0x10001, %eax          # imm = 0x10001
cmpl %eax, %ecx
cmovgel %eax, %ecx
movl %ecx, -0x94(%rbp)
cmpl $0x3, 0x4018(%r10)
ja 0xf2a4
testl %r15d, %r15d
jle 0xf2a4
cmpq -0x30(%rbp), %r14
je 0xf2a4
cmpq $0x0, 0x4010(%r10)
jne 0xf2a4
movl $0x0, 0x4018(%r10)
movq -0x30(%rbp), %r14
movq %r14, 0x4008(%r10)
movslq %r15d, %rax
addq -0x30(%rbp), %rax
cmpq 0x4008(%r10), %rax
jbe 0xf2e4
cmpq %r14, %rax
jae 0xf2e4
movl %r14d, %ecx
subl %eax, %ecx
movl $0x10000, %eax          # imm = 0x10000
cmpl %eax, %ecx
cmovbl %ecx, %eax
xorl %edx, %edx
cmpl $0x4, %ecx
cmovael %eax, %edx
movl %edx, 0x4018(%r10)
movq %r14, %rax
subq %rdx, %rax
movq %rax, 0x4008(%r10)
cmpq -0x30(%rbp), %r14
je 0xf352
movq 0x4010(%r10), %rax
movq %rax, -0x88(%rbp)
testq %rax, %rax
movq %r15, -0xb8(%rbp)
je 0xf45e
cmpl $0x1001, %r15d          # imm = 0x1001
jl 0xfd54
movl $0x4020, %edx           # imm = 0x4020
movq %r10, %rdi
movq -0x88(%rbp), %rsi
movq %r15, %rbx
movq %r10, %r15
callq 0x2160
cmpl $0x7e000000, %ebx       # imm = 0x7E000000
jbe 0x10681
movq $0x0, -0x48(%rbp)
movq %r15, %r10
movq -0x30(%rbp), %r12
movq %rbx, %r15
jmp 0x128e3
movl 0x4018(%r10), %eax
cmpq $0xffff, %rax           # imm = 0xFFFF
ja 0xf3e7
movl 0x4000(%r10), %ebx
cmpl %eax, %ebx
jbe 0xf3e7
movq $0x0, -0x48(%rbp)
cmpl $0x7e000000, %r15d      # imm = 0x7E000000
ja 0x128f1
testl %r15d, %r15d
je 0x117cc
movl %r15d, %ecx
movq -0x30(%rbp), %rsi
leaq (%rsi,%rcx), %rdi
movslq %r12d, %r13
movq -0xc0(%rbp), %r8
addq %r8, %r13
leal (%rax,%r15), %edx
movl %edx, 0x4018(%r10)
leal (%rbx,%r15), %edx
movl %edx, 0x4000(%r10)
movl $0x2, 0x4004(%r10)
cmpl $0xd, %r15d
movq %r13, -0x58(%rbp)
movq %rdi, -0xb8(%rbp)
jge 0x120d0
movq %r8, %rax
movq %rsi, %r12
jmp 0x1267c
movq $0x0, -0x48(%rbp)
cmpl $0x7e000000, %r15d      # imm = 0x7E000000
ja 0x128f1
testl %r15d, %r15d
je 0x117cc
movl 0x4000(%r10), %ecx
movl %r15d, %edx
movq -0x30(%rbp), %rdi
leaq (%rdi,%rdx), %r14
movslq %r12d, %r11
movq -0xc0(%rbp), %r8
addq %r8, %r11
leal (%rax,%r15), %esi
movl %esi, 0x4018(%r10)
leal (%rcx,%r15), %esi
movl %esi, 0x4000(%r10)
movl $0x2, 0x4004(%r10)
cmpl $0xd, %r15d
movq %r11, -0x40(%rbp)
jge 0x117e9
movq %r8, %rax
movq %rdi, %r12
jmp 0x11da9
movl 0x4018(%r10), %esi
cmpq $0xffff, %rsi           # imm = 0xFFFF
ja 0x10663
movl 0x4000(%r10), %r11d
cmpl %esi, %r11d
jbe 0x10663
movq $0x0, -0x48(%rbp)
cmpl $0x7e000000, %r15d      # imm = 0x7E000000
ja 0x10678
testl %r15d, %r15d
je 0x117ab
movq 0x4008(%r10), %rdx
movq %rsi, %rdi
addq %rdx, %rdi
movl %r15d, %eax
movq -0x30(%rbp), %rcx
leaq (%rcx,%rax), %r8
movq %rdi, %r9
subq %r11, %r9
testq %rdx, %rdx
cmoveq %rdx, %r9
movq %r9, -0xc8(%rbp)
movslq %r12d, %rbx
movq %rcx, %r12
movq -0xc0(%rbp), %r14
addq %r14, %rbx
leal (%rsi,%r15), %ecx
movl %ecx, 0x4018(%r10)
leal (%r11,%r15), %ecx
movl %ecx, 0x4000(%r10)
movl $0x2, 0x4004(%r10)
movq %r14, %r9
movq %r12, %rcx
cmpl $0xd, %r15d
movq %rbx, -0x78(%rbp)
jl 0x127bb
movq %r12, %rcx
subq %r11, %rcx
movq %rcx, -0x88(%rbp)
movl %r11d, %ecx
subl %esi, %ecx
movl %ecx, -0x58(%rbp)
leaq (%r12,%rax), %rcx
addq $-0xb, %rcx
movq %rcx, -0xa0(%rbp)
addq %r12, %rax
addq $-0x5, %rax
movq %rax, -0xe8(%rbp)
testq %rdx, %rdx
movabsq $-0x30e4432345000000, %rcx # imm = 0xCF1BBCDCBB000000
movq %rdx, -0xa8(%rbp)
cmoveq %rdx, %rdi
movq %rdi, -0xd0(%rbp)
movq (%r12), %rax
imulq %rcx, %rax
shrq $0x34, %rax
movl %r11d, (%r10,%rax,4)
movq %r14, %rax
leaq 0x1(%r12), %r13
movq 0x1(%r12), %r14
imulq %rcx, %r14
shrq $0x34, %r14
shll $0x6, -0x94(%rbp)
leaq -0xc(%r8), %rcx
movq %rcx, -0x80(%rbp)
leaq -0x8(%r8), %rcx
movq %rcx, -0xf8(%rbp)
movq %r8, -0xe0(%rbp)
leaq -0x6(%r8), %rcx
movq %rcx, -0x100(%rbp)
movq $0x0, -0x70(%rbp)
movq %rax, -0x50(%rbp)
movq %r12, -0x68(%rbp)
movq %r11, -0x40(%rbp)
movl $0x1, %ecx
movq -0x90(%rbp), %rax
movl -0x94(%rbp), %edx
movl %ecx, %esi
addq %r13, %rsi
cmpq -0xa0(%rbp), %rsi
ja 0xf681
movl %r13d, %edi
movq -0x88(%rbp), %r12
subl %r12d, %edi
movl %r14d, %ecx
movl (%r10,%rcx,4), %r8d
movq -0xc8(%rbp), %rax
leaq (%rax,%r8), %r9
leaq (%r12,%r8), %rax
cmpl %r11d, %r8d
cmovbq %r9, %rax
movq -0x30(%rbp), %r12
cmovbq -0xa8(%rbp), %r12
movq (%rsi), %r14
movabsq $-0x30e4432345000000, %r9 # imm = 0xCF1BBCDCBB000000
imulq %r9, %r14
shrq $0x34, %r14
movl %edi, (%r10,%rcx,4)
movl $0x8, %ecx
cmpl -0x58(%rbp), %r8d
jb 0xf669
leal 0xffff(%r8), %r9d
cmpl %edi, %r9d
jb 0xf669
movl (%rax), %ecx
cmpl (%r13), %ecx
je 0xf65d
xorl %ecx, %ecx
jmp 0xf669
subl %r8d, %edi
movl $0x7, %ecx
movq %rdi, -0x70(%rbp)
testl %ecx, %ecx
je 0xf672
cmpl $0x8, %ecx
jne 0xf688
movl %edx, %ecx
shrl $0x6, %ecx
incl %edx
movq %rsi, %r13
jmp 0xf5d9
movl $0x2, %ecx
jmp 0xf669
cmpl $0x7, %ecx
jne 0xf68f
xorl %ecx, %ecx
testl %ecx, %ecx
je 0xf69f
movq %rax, -0x90(%rbp)
jmp 0xfd2e
movl %r13d, %ecx
movq -0x68(%rbp), %rbx
subl %ebx, %ecx
leal -0xf(%rcx), %r10d
leal -0x10e(%rcx), %edx
movl %edx, -0xd8(%rbp)
movl %r13d, %r8d
shlb $0x4, %r8b
movl %ebx, %esi
shlb $0x4, %sil
subb %sil, %r8b
xorl %r9d, %r9d
movl %r10d, -0xb0(%rbp)
movl %r10d, %esi
movq %r9, %r15
movl %r8d, %edi
leaq (%rax,%r9), %r8
leaq (%r9,%r13), %rdx
movq %r8, -0x90(%rbp)
cmpq %r12, %r8
jbe 0xf70c
cmpq %rbx, %rdx
jbe 0xf70c
movb -0x1(%r13,%r15), %r11b
leal -0x1(%rsi), %r10d
leaq -0x1(%r15), %r9
leal -0x10(%rdi), %r8d
cmpb -0x1(%rax,%r15), %r11b
je 0xf6d2
movq %rdx, -0x60(%rbp)
subl %ebx, %r13d
addl %r15d, %r13d
leaq (%rcx,%r15), %rax
movq -0x50(%rbp), %r11
leaq 0x1(%r11), %rbx
leaq (%r11,%r13), %r8
incq %r8
movl %eax, %r9d
movl $0x80808081, %r10d      # imm = 0x80808081
imulq %r10, %r9
shrq $0x27, %r9
leaq (%r9,%r8), %rdx
addq $0x8, %rdx
cmpq -0x78(%rbp), %rdx
ja 0xfd3b
cmpl $0xf, %eax
movq -0x38(%rbp), %r10
jb 0xf7ef
movl -0xb0(%rbp), %eax
addq %r15, %rax
movb $-0x10, (%r11)
cmpl $0xfe, %eax
jle 0xf7dd
movl $0x1fd, %eax            # imm = 0x1FD
cmpl %eax, %esi
cmovgel %eax, %esi
subl %esi, %ecx
addl %r15d, %ecx
addl $0xef, %ecx
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rcx
shrq $0x27, %rcx
movq %rcx, -0xf0(%rbp)
movq %rdx, -0xb0(%rbp)
leal 0x1(%rcx), %edx
movq %rbx, %rdi
movl $0xff, %esi
movq %r11, %rbx
callq 0x20f0
movq -0xb0(%rbp), %rdx
movq -0x38(%rbp), %r10
movq -0xf0(%rbp), %rsi
movl %esi, %eax
shll $0x8, %eax
movl %esi, %ecx
subl %eax, %ecx
addq %rsi, %rbx
addq $0x2, %rbx
movl -0xd8(%rbp), %eax
addl %r15d, %eax
addl %ecx, %eax
movq -0xb8(%rbp), %r15
movq -0x40(%rbp), %r11
movb %al, (%rbx)
incq %rbx
jmp 0xf7fd
movb %dil, (%r11)
movq -0xb8(%rbp), %r15
movq -0x40(%rbp), %r11
addq %rbx, %r13
movq -0x68(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%rbx)
addq $0x8, %rbx
addq $0x8, %rax
cmpq %r13, %rbx
jb 0xf804
xorl %ecx, %ecx
movq %r13, %rbx
cmpq -0x78(%rbp), %rdx
jbe 0xf82f
movq %rbx, -0x50(%rbp)
movq -0x60(%rbp), %r13
jmp 0xfd2a
movq -0x68(%rbp), %r13
movq %r13, -0x68(%rbp)
movq -0x70(%rbp), %rax
movw %ax, (%rbx)
cmpq -0xa8(%rbp), %r12
je 0xf8e5
movq -0x60(%rbp), %r9
leaq 0x4(%r9), %rax
movq -0x90(%rbp), %r8
leaq 0x4(%r8), %rdx
movq -0x80(%rbp), %r13
cmpq %rax, %r13
jbe 0xfcdd
movq 0x4(%r8), %rsi
movq 0x4(%r9), %rdi
movq %rdi, %rcx
xorq %rsi, %rcx
bsfq %rcx, %r15
shrl $0x3, %r15d
leaq 0xc(%r9), %rcx
addq $0xc, %r8
cmpq %rdi, %rsi
cmoveq %r8, %rdx
cmovneq %rax, %rcx
jne 0xf8d1
cmpq %r13, %rcx
jae 0xfbe8
movq (%rdx), %rsi
movq (%rcx), %rdi
movq %rdi, %r8
xorq %rsi, %r8
bsfq %r8, %r8
shrl $0x3, %r8d
addq %rcx, %r8
movl %r8d, %r9d
subl %eax, %r9d
addq $0x8, %rcx
addq $0x8, %rdx
cmpq %rdi, %rsi
cmovneq %r8, %rcx
cmovnel %r9d, %r15d
je 0xf896
movl %r15d, %eax
movq -0x60(%rbp), %rcx
leaq (%rax,%rcx), %r13
addq $0x4, %r13
jmp 0xfa2f
movq -0xd0(%rbp), %rax
movq -0x90(%rbp), %r10
subq %r10, %rax
movq -0x60(%rbp), %r13
addq %r13, %rax
movq -0xe8(%rbp), %rcx
cmpq %rcx, %rax
cmovaq %rcx, %rax
leaq 0x4(%r13), %rcx
leaq 0x4(%r10), %rsi
leaq -0x7(%rax), %rdi
cmpq %rcx, %rdi
jbe 0xfce5
movq 0x4(%r10), %r8
movq 0x4(%r13), %r9
movq %r9, %rdx
xorq %r8, %rdx
bsfq %rdx, %r15
shrl $0x3, %r15d
leaq 0xc(%r13), %rdx
addq $0xc, %r10
cmpq %r9, %r8
cmoveq %r10, %rsi
cmovneq %rcx, %rdx
jne 0xf98a
cmpq %rdi, %rdx
jae 0xfc38
movq (%rsi), %r8
movq (%rdx), %r9
movq %r9, %r10
xorq %r8, %r10
bsfq %r10, %r10
shrl $0x3, %r10d
addq %rdx, %r10
movl %r10d, %r11d
subl %ecx, %r11d
addq $0x8, %rdx
addq $0x8, %rsi
cmpq %r9, %r8
cmovneq %r10, %rdx
cmovnel %r11d, %r15d
movq -0x40(%rbp), %r11
je 0xf94b
movl %r15d, %ecx
movq -0x60(%rbp), %rdx
leaq (%rcx,%rdx), %r13
addq $0x4, %r13
cmpq %rax, %r13
je 0xf9a7
movq -0x38(%rbp), %r10
jmp 0xfa2f
movq -0x30(%rbp), %r9
movq %r9, %rdx
movq %rax, %rcx
cmpq %rax, -0x80(%rbp)
movq -0x38(%rbp), %r10
jbe 0xf9e7
movq (%r9), %rdi
movq (%rax), %r8
xorl %ecx, %ecx
cmpq %r8, %rdi
sete %dl
movq %r8, %rsi
xorq %rdi, %rsi
bsfq %rsi, %rsi
shrl $0x3, %esi
cmpq %r8, %rdi
jne 0xfa27
movb %dl, %cl
shll $0x3, %ecx
leaq (%r9,%rcx), %rdx
addq %rax, %rcx
cmpq -0x80(%rbp), %rcx
jae 0xfc86
movq (%rdx), %rdi
movq (%rcx), %r8
movq %r8, %r9
xorq %rdi, %r9
bsfq %r9, %r9
shrl $0x3, %r9d
addq %rcx, %r9
movl %r9d, %r10d
subl %eax, %r10d
addq $0x8, %rcx
addq $0x8, %rdx
cmpq %r8, %rdi
cmovneq %r9, %rcx
cmovnel %r10d, %esi
movq -0x38(%rbp), %r10
je 0xf9e7
addl %esi, %r15d
movl %esi, %eax
addq %rax, %r13
leaq 0x2(%rbx), %rax
leal 0xf0(%r15), %ecx
movl $0x80808081, %edx       # imm = 0x80808081
imulq %rdx, %rcx
shrq $0x27, %rcx
leaq (%rbx,%rcx), %rdi
addq $0x8, %rdi
cmpq -0x78(%rbp), %rdi
ja 0xfb10
movq -0x50(%rbp), %rdx
movb (%rdx), %cl
cmpl $0xf, %r15d
jb 0xfb0b
addb $0xf, %cl
movb %cl, (%rdx)
leal -0xf(%r15), %ecx
movl $0xffffffff, (%rax)     # imm = 0xFFFFFFFF
cmpl $0x3fc, %ecx            # imm = 0x3FC
jb 0xfaef
movq %rdi, -0x60(%rbp)
leaq 0x6(%rbx), %rdi
addl $0xfffffbf5, %r15d      # imm = 0xFFFFFBF5
movq %r15, %rcx
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rcx
shrq $0x29, %rcx
movq %rcx, -0xd8(%rbp)
leal (,%rcx,4), %eax
movq %rax, -0xb0(%rbp)
leal 0x4(,%rcx,4), %edx
movl $0xff, %esi
callq 0x20f0
movq -0x60(%rbp), %rdi
movq -0x40(%rbp), %r11
movq -0x38(%rbp), %r10
imull $0x3fc, -0xd8(%rbp), %eax # imm = 0x3FC
subl %eax, %r15d
movq -0xb0(%rbp), %rax
addq %rbx, %rax
addq $0x6, %rax
movl %r15d, %ecx
movl %ecx, %edx
movl $0x80808081, %esi       # imm = 0x80808081
imulq %rsi, %rdx
shrq $0x27, %rdx
addl %edx, %ecx
addq %rdx, %rax
incq %rax
movb %cl, -0x1(%rax)
jmp 0xfb10
addb %r15b, %cl
movb %cl, (%rdx)
movq -0x78(%rbp), %rbx
cmpq %rbx, %rdi
movq -0xb8(%rbp), %r15
ja 0xfced
cmpq -0xa0(%rbp), %r13
jae 0xfcf8
leaq -0x2(%r13), %rcx
movq -0x2(%r13), %rdx
movabsq $-0x30e4432345000000, %rsi # imm = 0xCF1BBCDCBB000000
imulq %rsi, %rdx
shrq $0x34, %rdx
movq -0x88(%rbp), %r8
subl %r8d, %ecx
movl %ecx, (%r10,%rdx,4)
movq (%r13), %rcx
imulq %rsi, %rcx
shrq $0x34, %rcx
movl %r13d, %edx
subl %r8d, %edx
movl (%r10,%rcx,4), %esi
movq -0xc8(%rbp), %rdi
addq %rsi, %rdi
movq %rsi, %r9
addq %r8, %r9
cmpl %r11d, %esi
cmovbq %rdi, %r9
movq %r9, -0x90(%rbp)
movq -0x30(%rbp), %r12
cmovbq -0xa8(%rbp), %r12
movl %edx, (%r10,%rcx,4)
movb $0x1, %cl
cmpl -0x58(%rbp), %esi
jb 0xfbd4
leal 0xffff(%rsi), %edi
cmpl %edx, %edi
jb 0xfbd4
movq -0x90(%rbp), %rdi
movl (%rdi), %edi
cmpl (%r13), %edi
jne 0xfbd4
leaq 0x1(%rax), %rbx
movb $0x0, (%rax)
subl %esi, %edx
xorl %ecx, %ecx
movq %rax, -0x50(%rbp)
movl %edx, %eax
movq %rax, -0x70(%rbp)
jmp 0xfbd7
movq %rax, %rbx
movq %r13, -0x60(%rbp)
testb %cl, %cl
je 0xf833
jmp 0xfd07
cmpq -0xf8(%rbp), %rcx
jae 0xfbff
movl (%rdx), %esi
cmpl (%rcx), %esi
jne 0xfbff
addq $0x4, %rcx
addq $0x4, %rdx
cmpq -0x100(%rbp), %rcx
jae 0xfc18
movzwl (%rdx), %esi
cmpw (%rcx), %si
jne 0xfc18
addq $0x2, %rcx
addq $0x2, %rdx
cmpq -0xe8(%rbp), %rcx
jae 0xfc2e
movb (%rdx), %dl
xorl %esi, %esi
cmpb (%rcx), %dl
sete %sil
addq %rsi, %rcx
subl %eax, %ecx
movl %ecx, %r15d
jmp 0xf8d1
leaq -0x3(%rax), %rdi
cmpq %rdi, %rdx
jae 0xfc4f
movl (%rsi), %edi
cmpl (%rdx), %edi
jne 0xfc4f
addq $0x4, %rdx
addq $0x4, %rsi
leaq -0x1(%rax), %rdi
cmpq %rdi, %rdx
jae 0xfc68
movzwl (%rsi), %edi
cmpw (%rdx), %di
jne 0xfc68
addq $0x2, %rdx
addq $0x2, %rsi
cmpq %rax, %rdx
jae 0xfc7c
movb (%rsi), %sil
xorl %edi, %edi
cmpb (%rdx), %sil
sete %dil
addq %rdi, %rdx
subl %ecx, %edx
movl %edx, %r15d
jmp 0xf98a
cmpq -0xf8(%rbp), %rcx
jae 0xfc9d
movl (%rdx), %esi
cmpl (%rcx), %esi
jne 0xfc9d
addq $0x4, %rcx
addq $0x4, %rdx
cmpq -0x100(%rbp), %rcx
jae 0xfcb6
movzwl (%rdx), %esi
cmpw (%rcx), %si
jne 0xfcb6
addq $0x2, %rcx
addq $0x2, %rdx
movq -0x38(%rbp), %r10
movq -0x40(%rbp), %r11
cmpq -0xe8(%rbp), %rcx
jae 0xfcd4
movb (%rdx), %dl
xorl %esi, %esi
cmpb (%rcx), %dl
sete %sil
addq %rsi, %rcx
subl %eax, %ecx
movl %ecx, %esi
jmp 0xfa27
movq %rax, %rcx
jmp 0xf896
movq %rcx, %rdx
jmp 0xf94b
movl $0x1, %ecx
movq %rax, -0x50(%rbp)
jmp 0xfd2e
movl $0x3, %ecx
movq %rax, -0x50(%rbp)
movq %r13, -0x68(%rbp)
jmp 0xfd2e
movq 0x1(%r13), %r14
movq %r13, -0x68(%rbp)
incq %r13
movabsq $-0x30e4432345000000, %rax # imm = 0xCF1BBCDCBB000000
imulq %rax, %r14
shrq $0x34, %r14
xorl %ecx, %ecx
movq %rbx, -0x50(%rbp)
movq -0x78(%rbp), %rbx
testl %ecx, %ecx
je 0xf5c7
jmp 0x1279c
movl $0x1, %ecx
movq -0x38(%rbp), %r10
movq -0xb8(%rbp), %r15
movq -0x40(%rbp), %r11
jmp 0xf81c
movq $0x0, -0x48(%rbp)
cmpl $0x7e000000, %r15d      # imm = 0x7E000000
ja 0x10678
testl %r15d, %r15d
je 0x117ab
movl 0x4000(%r10), %r11d
movq -0x88(%rbp), %rax
movq 0x4008(%rax), %rsi
movl 0x4018(%rax), %edi
movl 0x4000(%rax), %eax
addq %rsi, %rdi
movl %r15d, %ecx
movq -0x30(%rbp), %rdx
leaq (%rdx,%rcx), %r8
movq %rdi, %r9
subq %rax, %r9
testq %rsi, %rsi
cmoveq %rsi, %r9
movq %r9, -0x40(%rbp)
movslq %r12d, %rbx
movq %rdx, %r12
movq -0xc0(%rbp), %r14
addq %r14, %rbx
movq $0x0, 0x4010(%r10)
movl %r15d, 0x4018(%r10)
leal (%r11,%r15), %edx
movl %edx, 0x4000(%r10)
movl $0x2, 0x4004(%r10)
movq %r14, %r9
movq %r12, %rdx
cmpl $0xd, %r15d
movq %rbx, -0x50(%rbp)
jl 0x11ed9
movq %r12, %rdx
subq %r11, %rdx
movq %rdx, -0xa0(%rbp)
movl %r11d, %edx
subl %eax, %edx
movq %rdx, -0x90(%rbp)
leaq (%r12,%rcx), %rax
addq $-0xb, %rax
movq %rax, -0xc8(%rbp)
leaq (%r12,%rcx), %rax
addq $-0x5, %rax
movq %rax, -0xd0(%rbp)
testq %rsi, %rsi
movabsq $-0x30e4432345000000, %rcx # imm = 0xCF1BBCDCBB000000
movq %rsi, -0x58(%rbp)
cmoveq %rsi, %rdi
movq %rdi, -0xe0(%rbp)
movq (%r12), %rax
imulq %rcx, %rax
shrq $0x34, %rax
movl %r11d, (%r10,%rax,4)
movq %r14, %rax
leaq 0x1(%r12), %r13
movq 0x1(%r12), %r14
imulq %rcx, %r14
shrq $0x34, %r14
shll $0x6, -0x94(%rbp)
leaq -0xc(%r8), %rcx
movq %rcx, -0x78(%rbp)
leaq -0x8(%r8), %rcx
movq %rcx, -0xf8(%rbp)
movq %r8, -0xf0(%rbp)
leaq -0x6(%r8), %rcx
movq %rcx, -0x100(%rbp)
movq $0x0, -0x80(%rbp)
movq %rax, -0x68(%rbp)
movq %r12, -0xb0(%rbp)
movq %r12, -0xa8(%rbp)
movq %r11, -0x70(%rbp)
movl $0x1, %ecx
movq -0x60(%rbp), %rax
movl -0x94(%rbp), %edx
movl %ecx, %esi
addq %r13, %rsi
cmpq -0xc8(%rbp), %rsi
ja 0xff8d
movl %r14d, %ecx
movl (%r10,%rcx,4), %edi
cmpl %r11d, %edi
jae 0xff18
movq -0x88(%rbp), %rax
movl (%rax,%rcx,4), %eax
movq -0x90(%rbp), %rdi
addl %eax, %edi
addq -0x40(%rbp), %rax
movq -0x58(%rbp), %r8
movq %r8, -0xa8(%rbp)
movq -0xa0(%rbp), %r9
jmp 0xff2a
movq -0xa0(%rbp), %r9
leaq (%r9,%rdi), %rax
movq %r12, -0xa8(%rbp)
movl %r13d, %r8d
subl %r9d, %r8d
movq (%rsi), %r14
movabsq $-0x30e4432345000000, %r9 # imm = 0xCF1BBCDCBB000000
imulq %r9, %r14
shrq $0x34, %r14
movl %r8d, (%r10,%rcx,4)
leal 0xffff(%rdi), %r9d
movl $0x8, %ecx
cmpl %r8d, %r9d
jb 0xff75
movl (%rax), %ecx
cmpl (%r13), %ecx
je 0xff66
xorl %ecx, %ecx
jmp 0xff75
subl %edi, %r8d
movl $0x7, %ecx
movl %r8d, %edi
movq %rdi, -0x80(%rbp)
testl %ecx, %ecx
je 0xff7e
cmpl $0x8, %ecx
jne 0xff94
movl %edx, %ecx
shrl $0x6, %ecx
incl %edx
movq %rsi, %r13
jmp 0xfecf
movl $0x2, %ecx
jmp 0xff75
cmpl $0x7, %ecx
jne 0xff9b
xorl %ecx, %ecx
testl %ecx, %ecx
je 0xffa8
movq %rax, -0x60(%rbp)
jmp 0x1063d
movl %r13d, %ecx
movq -0xb0(%rbp), %r12
subl %r12d, %ecx
leal -0xf(%rcx), %edx
leal -0x10e(%rcx), %esi
movl %esi, -0xd8(%rbp)
movl %r13d, %r8d
shlb $0x4, %r8b
movl %r12d, %esi
shlb $0x4, %sil
subb %sil, %r8b
xorl %r9d, %r9d
movl %edx, %r10d
movl %r10d, %esi
movq %r9, %r15
movl %r8d, %edi
leaq (%rax,%r9), %r8
leaq (%r9,%r13), %rbx
movq %r8, -0x60(%rbp)
cmpq -0xa8(%rbp), %r8
jbe 0x10016
cmpq %r12, %rbx
jbe 0x10016
movb -0x1(%r13,%r15), %r11b
leal -0x1(%rsi), %r10d
leaq -0x1(%r15), %r9
leal -0x10(%rdi), %r8d
cmpb -0x1(%rax,%r15), %r11b
je 0xffdb
subl %r12d, %r13d
addl %r15d, %r13d
leaq (%rcx,%r15), %rax
movq -0x68(%rbp), %r11
leaq 0x1(%r11), %r12
leaq (%r11,%r13), %r8
incq %r8
movl %eax, %r9d
movl $0x80808081, %r10d      # imm = 0x80808081
imulq %r10, %r9
shrq $0x27, %r9
addq %r9, %r8
addq $0x8, %r8
cmpq -0x50(%rbp), %r8
ja 0x1064a
cmpl $0xf, %eax
movq -0x38(%rbp), %r10
jb 0x100f0
movl %edx, %eax
addq %r15, %rax
movb $-0x10, (%r11)
cmpl $0xfe, %eax
jle 0x100dc
movl $0x1fd, %eax            # imm = 0x1FD
cmpl %eax, %esi
cmovgel %eax, %esi
subl %esi, %ecx
addl %r15d, %ecx
addl $0xef, %ecx
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rcx
shrq $0x27, %rcx
movq %rcx, -0xe8(%rbp)
leal 0x1(%rcx), %edx
movq %r12, %rdi
movl $0xff, %esi
movq %r8, %r12
movq %r11, -0x68(%rbp)
callq 0x20f0
movq %r12, %r8
movq -0x38(%rbp), %r10
movq -0xe8(%rbp), %rdx
movl %edx, %eax
shll $0x8, %eax
movl %edx, %ecx
subl %eax, %ecx
movq -0x68(%rbp), %rax
leaq (%rax,%rdx), %r12
addq $0x2, %r12
movl -0xd8(%rbp), %eax
addl %r15d, %eax
addl %ecx, %eax
movq -0xb8(%rbp), %r15
movq -0x70(%rbp), %r11
movb %al, (%r12)
incq %r12
jmp 0x100fe
movb %dil, (%r11)
movq -0xb8(%rbp), %r15
movq -0x70(%rbp), %r11
addq %r12, %r13
movq -0xb0(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%r12)
addq $0x8, %r12
addq $0x8, %rax
cmpq %r13, %r12
jb 0x10108
xorl %ecx, %ecx
movq %r13, %r12
cmpq -0x50(%rbp), %r8
jbe 0x10133
movq %r12, -0x68(%rbp)
movq %rbx, %r13
jmp 0x10635
movq -0xb0(%rbp), %r13
movq %r13, -0xb0(%rbp)
movq -0x80(%rbp), %rax
movw %ax, (%r12)
movq -0xa8(%rbp), %rax
cmpq -0x58(%rbp), %rax
je 0x101ea
leaq 0x4(%rbx), %rax
movq -0x60(%rbp), %r8
leaq 0x4(%r8), %rdx
movq -0x78(%rbp), %r13
cmpq %rax, %r13
jbe 0x105e2
movq 0x4(%r8), %rsi
movq 0x4(%rbx), %rdi
movq %rdi, %rcx
xorq %rsi, %rcx
bsfq %rcx, %r15
shrl $0x3, %r15d
leaq 0xc(%rbx), %rcx
addq $0xc, %r8
cmpq %rdi, %rsi
cmoveq %r8, %rdx
cmovneq %rax, %rcx
jne 0x101da
cmpq %r13, %rcx
jae 0x104f5
movq (%rdx), %rsi
movq (%rcx), %rdi
movq %rdi, %r8
xorq %rsi, %r8
bsfq %r8, %r8
shrl $0x3, %r8d
addq %rcx, %r8
movl %r8d, %r9d
subl %eax, %r9d
addq $0x8, %rcx
addq $0x8, %rdx
cmpq %rdi, %rsi
cmovneq %r8, %rcx
cmovnel %r9d, %r15d
je 0x1019f
movl %r15d, %eax
leaq (%rax,%rbx), %r13
addq $0x4, %r13
jmp 0x102a0
movq -0xe0(%rbp), %rax
movq -0x60(%rbp), %r10
subq %r10, %rax
addq %rbx, %rax
movq -0xd0(%rbp), %rcx
cmpq %rcx, %rax
cmovaq %rcx, %rax
leaq 0x4(%rbx), %rcx
leaq 0x4(%r10), %rsi
leaq -0x7(%rax), %rdi
cmpq %rcx, %rdi
jbe 0x105ea
movq 0x4(%r10), %r8
movq 0x4(%rbx), %r9
movq %r9, %rdx
xorq %r8, %rdx
bsfq %rdx, %r15
shrl $0x3, %r15d
leaq 0xc(%rbx), %rdx
addq $0xc, %r10
cmpq %r9, %r8
cmoveq %r10, %rsi
cmovneq %rcx, %rdx
jne 0x10288
cmpq %rdi, %rdx
jae 0x10545
movq (%rsi), %r8
movq (%rdx), %r9
movq %r9, %r10
xorq %r8, %r10
bsfq %r10, %r10
shrl $0x3, %r10d
addq %rdx, %r10
movl %r10d, %r11d
subl %ecx, %r11d
addq $0x8, %rdx
addq $0x8, %rsi
cmpq %r9, %r8
cmovneq %r10, %rdx
cmovnel %r11d, %r15d
movq -0x70(%rbp), %r11
je 0x10249
movl %r15d, %ecx
leaq (%rcx,%rbx), %r13
addq $0x4, %r13
cmpq %rax, %r13
je 0x10464
movq -0x38(%rbp), %r10
movq -0x50(%rbp), %rbx
leaq 0x2(%r12), %rax
leal 0xf0(%r15), %ecx
movl $0x80808081, %edx       # imm = 0x80808081
imulq %rdx, %rcx
shrq $0x27, %rcx
leaq (%r12,%rcx), %rdi
addq $0x8, %rdi
cmpq %rbx, %rdi
ja 0x10385
movq -0x68(%rbp), %rdx
movb (%rdx), %cl
cmpl $0xf, %r15d
jb 0x10380
addb $0xf, %cl
movb %cl, (%rdx)
leal -0xf(%r15), %ecx
movl $0xffffffff, (%rax)     # imm = 0xFFFFFFFF
cmpl $0x3fc, %ecx            # imm = 0x3FC
jb 0x10364
movq %rdi, -0xd8(%rbp)
leaq 0x6(%r12), %rdi
addl $0xfffffbf5, %r15d      # imm = 0xFFFFFBF5
movq %r15, %rbx
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rbx
shrq $0x29, %rbx
leal (,%rbx,4), %eax
movq %rax, -0xe8(%rbp)
leal 0x4(,%rbx,4), %edx
movl $0xff, %esi
callq 0x20f0
movq -0xd8(%rbp), %rdi
movq -0x70(%rbp), %r11
movq -0x38(%rbp), %r10
imull $0x3fc, %ebx, %eax      # imm = 0x3FC
movq -0x50(%rbp), %rbx
subl %eax, %r15d
movq -0xe8(%rbp), %rax
addq %r12, %rax
addq $0x6, %rax
movl %r15d, %ecx
movl %ecx, %edx
movl $0x80808081, %esi       # imm = 0x80808081
imulq %rsi, %rdx
shrq $0x27, %rdx
addl %edx, %ecx
addq %rdx, %rax
incq %rax
movb %cl, -0x1(%rax)
jmp 0x10385
addb %r15b, %cl
movb %cl, (%rdx)
cmpq %rbx, %rdi
movq -0x30(%rbp), %r12
movq -0xb8(%rbp), %r15
ja 0x105f2
cmpq -0xc8(%rbp), %r13
jae 0x105fd
leaq -0x2(%r13), %rcx
movq -0x2(%r13), %rdx
movabsq $-0x30e4432345000000, %rsi # imm = 0xCF1BBCDCBB000000
imulq %rsi, %rdx
shrq $0x34, %rdx
movq -0xa0(%rbp), %rdi
subl %edi, %ecx
movl %ecx, (%r10,%rdx,4)
movq (%r13), %rcx
imulq %rsi, %rcx
shrq $0x34, %rcx
movl (%r10,%rcx,4), %edx
cmpl %r11d, %edx
jae 0x1040a
movq -0x88(%rbp), %rdx
movl (%rdx,%rcx,4), %esi
movq -0x90(%rbp), %rdx
addl %esi, %edx
addq -0x40(%rbp), %rsi
movq %rsi, -0x60(%rbp)
movq -0x58(%rbp), %rsi
movq %rsi, -0xa8(%rbp)
jmp 0x10419
leaq (%rdi,%rdx), %rsi
movq %rsi, -0x60(%rbp)
movq %r12, -0xa8(%rbp)
movl %r13d, %esi
subl %edi, %esi
movl %esi, (%r10,%rcx,4)
leal 0xffff(%rdx), %edi
movb $0x1, %cl
cmpl %esi, %edi
jb 0x10451
movq -0x60(%rbp), %rdi
movl (%rdi), %edi
cmpl (%r13), %edi
jne 0x10451
leaq 0x1(%rax), %r12
movb $0x0, (%rax)
subl %edx, %esi
xorl %ecx, %ecx
movq %rax, -0x68(%rbp)
movl %esi, %eax
movq %rax, -0x80(%rbp)
jmp 0x10454
movq %rax, %r12
movq %r13, %rbx
testb %cl, %cl
je 0x1013a
jmp 0x1060f
movq -0x30(%rbp), %r9
movq %r9, %rdx
movq %rax, %rcx
cmpq %rax, -0x78(%rbp)
movq -0x38(%rbp), %r10
movq -0x50(%rbp), %rbx
jbe 0x104a8
movq (%r9), %rdi
movq (%rax), %r8
xorl %ecx, %ecx
cmpq %r8, %rdi
sete %dl
movq %r8, %rsi
xorq %rdi, %rsi
bsfq %rsi, %rsi
shrl $0x3, %esi
cmpq %r8, %rdi
jne 0x104e8
movb %dl, %cl
shll $0x3, %ecx
leaq (%r9,%rcx), %rdx
addq %rax, %rcx
cmpq -0x78(%rbp), %rcx
jae 0x10593
movq (%rdx), %rdi
movq (%rcx), %r8
movq %r8, %r9
xorq %rdi, %r9
bsfq %r9, %r9
shrl $0x3, %r9d
addq %rcx, %r9
movl %r9d, %r10d
subl %eax, %r10d
addq $0x8, %rcx
addq $0x8, %rdx
cmpq %r8, %rdi
cmovneq %r9, %rcx
cmovnel %r10d, %esi
movq -0x38(%rbp), %r10
je 0x104a8
addl %esi, %r15d
movl %esi, %eax
addq %rax, %r13
jmp 0x102a4
cmpq -0xf8(%rbp), %rcx
jae 0x1050c
movl (%rdx), %esi
cmpl (%rcx), %esi
jne 0x1050c
addq $0x4, %rcx
addq $0x4, %rdx
cmpq -0x100(%rbp), %rcx
jae 0x10525
movzwl (%rdx), %esi
cmpw (%rcx), %si
jne 0x10525
addq $0x2, %rcx
addq $0x2, %rdx
cmpq -0xd0(%rbp), %rcx
jae 0x1053b
movb (%rdx), %dl
xorl %esi, %esi
cmpb (%rcx), %dl
sete %sil
addq %rsi, %rcx
subl %eax, %ecx
movl %ecx, %r15d
jmp 0x101da
leaq -0x3(%rax), %rdi
cmpq %rdi, %rdx
jae 0x1055c
movl (%rsi), %edi
cmpl (%rdx), %edi
jne 0x1055c
addq $0x4, %rdx
addq $0x4, %rsi
leaq -0x1(%rax), %rdi
cmpq %rdi, %rdx
jae 0x10575
movzwl (%rsi), %edi
cmpw (%rdx), %di
jne 0x10575
addq $0x2, %rdx
addq $0x2, %rsi
cmpq %rax, %rdx
jae 0x10589
movb (%rsi), %sil
xorl %edi, %edi
cmpb (%rdx), %sil
sete %dil
addq %rdi, %rdx
subl %ecx, %edx
movl %edx, %r15d
jmp 0x10288
cmpq -0xf8(%rbp), %rcx
jae 0x105aa
movl (%rdx), %esi
cmpl (%rcx), %esi
jne 0x105aa
addq $0x4, %rcx
addq $0x4, %rdx
cmpq -0x100(%rbp), %rcx
jae 0x105c3
movzwl (%rdx), %esi
cmpw (%rcx), %si
jne 0x105c3
addq $0x2, %rcx
addq $0x2, %rdx
cmpq -0xd0(%rbp), %rcx
jae 0x105d9
movb (%rdx), %dl
xorl %esi, %esi
cmpb (%rcx), %dl
sete %sil
addq %rsi, %rcx
subl %eax, %ecx
movl %ecx, %esi
jmp 0x104e8
movq %rax, %rcx
jmp 0x1019f
movq %rcx, %rdx
jmp 0x10249
movl $0x1, %ecx
movq %rax, -0x68(%rbp)
jmp 0x1063d
movl $0x3, %ecx
movq %rax, -0x68(%rbp)
movq %r13, -0xb0(%rbp)
jmp 0x1063d
movq 0x1(%r13), %r14
movq %r13, -0xb0(%rbp)
incq %r13
movabsq $-0x30e4432345000000, %rax # imm = 0xCF1BBCDCBB000000
imulq %rax, %r14
shrq $0x34, %r14
xorl %ecx, %ecx
movq %r12, -0x68(%rbp)
movq -0x30(%rbp), %r12
movq -0x50(%rbp), %rbx
testl %ecx, %ecx
je 0xfec0
jmp 0x11ebb
movl $0x1, %ecx
movq -0x38(%rbp), %r10
movq -0xb8(%rbp), %r15
movq -0x70(%rbp), %r11
jmp 0x10121
movq $0x0, -0x48(%rbp)
cmpl $0x7e000000, %r15d      # imm = 0x7E000000
jbe 0x10f30
movq -0x30(%rbp), %r12
jmp 0x128e3
movabsq $-0x30e4432345000000, %r11 # imm = 0xCF1BBCDCBB000000
movl 0x4000(%r15), %edi
movq -0x30(%rbp), %rdx
movq %rdx, %rax
subq %rdi, %rax
movq %rax, -0xa0(%rbp)
movq 0x4008(%r15), %r8
movl 0x4018(%r15), %eax
leal (%rax,%rbx), %ecx
movq %rax, %r9
addq %r8, %r9
movl %ebx, %eax
leaq (%rdx,%rax), %rsi
movq %rsi, -0xe8(%rbp)
movq %r9, %rsi
subq %rdi, %rsi
testq %r8, %r8
cmoveq %r8, %r9
movq %r9, -0xd8(%rbp)
leaq -0xb(%rdx,%rax), %r9
movq %r9, -0xc8(%rbp)
leaq -0x5(%rdx,%rax), %r9
movq %r9, -0xb0(%rbp)
movq %r8, -0xa8(%rbp)
cmoveq %r8, %rsi
movq %rsi, -0x88(%rbp)
movslq %r12d, %rsi
movq %rdx, %r12
movq -0xc0(%rbp), %rdx
addq %rdx, %rsi
movq %rsi, -0x70(%rbp)
movl %ecx, 0x4018(%r15)
leal (%rdi,%rbx), %ecx
movl %ecx, 0x4000(%r15)
movl $0x2, 0x4004(%r15)
movq (%r12), %rcx
imulq %r11, %rcx
shrq $0x34, %rcx
movl %edi, (%r15,%rcx,4)
movq %rdx, %rcx
movq 0x1(%r12), %r13
imulq %r11, %r13
shrq $0x34, %r13
shll $0x6, -0x94(%rbp)
leaq (%r12,%rax), %rdx
addq $-0xc, %rdx
movq %rdx, -0x78(%rbp)
leaq -0x8(%r12,%rax), %rdx
movq %rdx, -0xd0(%rbp)
leaq -0x6(%r12,%rax), %rax
movq %rax, -0xe0(%rbp)
leaq 0x1(%r12), %rbx
movq $0x0, -0x90(%rbp)
movq %rcx, -0x48(%rbp)
movq %r12, -0x60(%rbp)
movq %r12, %r14
movq %r15, %r10
movq %rdi, %r15
movq %rdi, -0x80(%rbp)
movl $0x1, %ecx
movq -0x40(%rbp), %rax
movl -0x94(%rbp), %edx
movl %ecx, %esi
addq %rbx, %rsi
cmpq -0xc8(%rbp), %rsi
ja 0x10848
movl %ebx, %edi
movq -0xa0(%rbp), %rax
subl %eax, %edi
movl %r13d, %ecx
movl (%r10,%rcx,4), %r8d
movq -0x88(%rbp), %r9
addq %r8, %r9
addq %r8, %rax
cmpl %r15d, %r8d
cmovbq %r9, %rax
movq %r12, %r14
cmovbq -0xa8(%rbp), %r14
movq (%rsi), %r13
imulq %r11, %r13
shrq $0x34, %r13
movl %edi, (%r10,%rcx,4)
leal 0xffff(%r8), %r9d
movl $0x8, %ecx
cmpl %edi, %r9d
jb 0x10830
movl (%rax), %ecx
cmpl (%rbx), %ecx
je 0x10821
xorl %ecx, %ecx
jmp 0x10830
subl %r8d, %edi
movl $0x7, %ecx
movq %rdi, -0x90(%rbp)
testl %ecx, %ecx
je 0x10839
cmpl $0x8, %ecx
jne 0x1084f
movl %edx, %ecx
shrl $0x6, %ecx
incl %edx
movq %rsi, %rbx
jmp 0x107b4
movl $0x2, %ecx
jmp 0x10830
cmpl $0x7, %ecx
jne 0x10856
xorl %ecx, %ecx
testl %ecx, %ecx
je 0x10863
movq %rax, -0x40(%rbp)
jmp 0x10eb6
movq %r14, -0x58(%rbp)
movl %ebx, %ecx
movq -0x60(%rbp), %r12
subl %r12d, %ecx
leal -0xf(%rcx), %edx
leal -0x10e(%rcx), %esi
movl %esi, -0x50(%rbp)
movl %ebx, %r8d
shlb $0x4, %r8b
movl %r12d, %esi
shlb $0x4, %sil
subb %sil, %r8b
xorl %r9d, %r9d
movl %edx, %r10d
movl %r10d, %esi
movq %r9, %r15
movl %r8d, %edi
leaq (%rax,%r9), %r8
leaq (%rbx,%r9), %r14
movq %r8, -0x40(%rbp)
cmpq -0x58(%rbp), %r8
jbe 0x108cb
cmpq %r12, %r14
jbe 0x108cb
movb -0x1(%rbx,%r15), %r11b
leal -0x1(%rsi), %r10d
leaq -0x1(%r15), %r9
leal -0x10(%rdi), %r8d
cmpb -0x1(%rax,%r15), %r11b
je 0x10893
subl %r12d, %ebx
addl %r15d, %ebx
leaq (%rcx,%r15), %rax
movq -0x48(%rbp), %r8
leaq 0x1(%r8), %r12
addq %rbx, %r8
incq %r8
movl %eax, %r9d
movl $0x80808081, %r10d      # imm = 0x80808081
imulq %r10, %r9
shrq $0x27, %r9
addq %r9, %r8
addq $0x8, %r8
cmpq -0x70(%rbp), %r8
ja 0x10ec0
cmpl $0xf, %eax
movq -0x38(%rbp), %r10
jb 0x109a1
movl %edx, %eax
addq %r15, %rax
movq -0x48(%rbp), %rdx
movb $-0x10, (%rdx)
cmpl $0xfe, %eax
jle 0x1098a
movl $0x1fd, %eax            # imm = 0x1FD
cmpl %eax, %esi
cmovgel %eax, %esi
subl %esi, %ecx
addl %r15d, %ecx
addl $0xef, %ecx
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rcx
shrq $0x27, %rcx
movq %rcx, -0x68(%rbp)
movq %rdx, -0x48(%rbp)
leal 0x1(%rcx), %edx
movq %r12, %rdi
movl $0xff, %esi
movq %r8, %r12
callq 0x20f0
movq %r12, %r8
movq -0x38(%rbp), %r10
movq -0x68(%rbp), %rdx
movl %edx, %eax
shll $0x8, %eax
movl %edx, %ecx
subl %eax, %ecx
movq -0x48(%rbp), %rax
leaq (%rax,%rdx), %r12
addq $0x2, %r12
movl -0x50(%rbp), %eax
addl %r15d, %eax
addl %ecx, %eax
movabsq $-0x30e4432345000000, %r11 # imm = 0xCF1BBCDCBB000000
movq -0x80(%rbp), %r15
movb %al, (%r12)
incq %r12
jmp 0x109b6
movq -0x48(%rbp), %rax
movb %dil, (%rax)
movabsq $-0x30e4432345000000, %r11 # imm = 0xCF1BBCDCBB000000
movq -0x80(%rbp), %r15
addq %r12, %rbx
movq -0x60(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%r12)
addq $0x8, %r12
addq $0x8, %rax
cmpq %rbx, %r12
jb 0x109bd
xorl %ecx, %ecx
movq %rbx, %r12
cmpq -0x70(%rbp), %r8
jbe 0x109e8
movq %r12, -0x48(%rbp)
movq %r14, %rbx
jmp 0x10eae
movq -0x60(%rbp), %rbx
movq %rbx, -0x60(%rbp)
movq -0x90(%rbp), %rax
movw %ax, (%r12)
movq -0x58(%rbp), %rax
cmpq -0xa8(%rbp), %rax
je 0x10a9c
leaq 0x4(%r14), %rax
movq -0x40(%rbp), %r8
leaq 0x4(%r8), %rdx
movq -0x78(%rbp), %r11
cmpq %rax, %r11
jbe 0x10e6b
movq 0x4(%r8), %rsi
movq 0x4(%r14), %rdi
movq %rdi, %rcx
xorq %rsi, %rcx
bsfq %rcx, %r15
shrl $0x3, %r15d
leaq 0xc(%r14), %rcx
addq $0xc, %r8
cmpq %rdi, %rsi
cmoveq %r8, %rdx
cmovneq %rax, %rcx
jne 0x10a8c
cmpq %r11, %rcx
jae 0x10d7e
movq (%rdx), %rsi
movq (%rcx), %rdi
movq %rdi, %r8
xorq %rsi, %r8
bsfq %r8, %r8
shrl $0x3, %r8d
addq %rcx, %r8
movl %r8d, %r9d
subl %eax, %r9d
addq $0x8, %rcx
addq $0x8, %rdx
cmpq %rdi, %rsi
cmovneq %r8, %rcx
cmovnel %r9d, %r15d
je 0x10a51
movl %r15d, %eax
leaq (%rax,%r14), %rbx
addq $0x4, %rbx
jmp 0x10b4e
movq -0xd8(%rbp), %rax
movq -0x40(%rbp), %r10
subq %r10, %rax
addq %r14, %rax
movq -0xb0(%rbp), %rcx
cmpq %rcx, %rax
cmovaq %rcx, %rax
leaq 0x4(%r14), %rcx
leaq 0x4(%r10), %rsi
leaq -0x7(%rax), %rdi
cmpq %rcx, %rdi
jbe 0x10e73
movq 0x4(%r10), %r8
movq 0x4(%r14), %r9
movq %r9, %rdx
xorq %r8, %rdx
bsfq %rdx, %r15
shrl $0x3, %r15d
leaq 0xc(%r14), %rdx
addq $0xc, %r10
cmpq %r9, %r8
cmoveq %r10, %rsi
cmovneq %rcx, %rdx
jne 0x10b36
cmpq %rdi, %rdx
jae 0x10dce
movq (%rsi), %r8
movq (%rdx), %r9
movq %r9, %r10
xorq %r8, %r10
bsfq %r10, %r10
shrl $0x3, %r10d
addq %rdx, %r10
movl %r10d, %r11d
subl %ecx, %r11d
addq $0x8, %rdx
addq $0x8, %rsi
cmpq %r9, %r8
cmovneq %r10, %rdx
cmovnel %r11d, %r15d
je 0x10afb
movl %r15d, %ecx
leaq (%rcx,%r14), %rbx
addq $0x4, %rbx
cmpq %rax, %rbx
je 0x10ceb
movq -0x38(%rbp), %r10
movq -0x58(%rbp), %r14
leaq 0x2(%r12), %rax
leal 0xf0(%r15), %ecx
movl $0x80808081, %edx       # imm = 0x80808081
imulq %rdx, %rcx
shrq $0x27, %rcx
leaq (%r12,%rcx), %rdi
addq $0x8, %rdi
cmpq -0x70(%rbp), %rdi
ja 0x10c25
movq -0x48(%rbp), %rdx
movb (%rdx), %cl
cmpl $0xf, %r15d
jb 0x10c20
addb $0xf, %cl
movb %cl, (%rdx)
leal -0xf(%r15), %ecx
movl $0xffffffff, (%rax)     # imm = 0xFFFFFFFF
cmpl $0x3fc, %ecx            # imm = 0x3FC
jb 0x10c04
movq %rdi, -0x58(%rbp)
leaq 0x6(%r12), %rdi
addl $0xfffffbf5, %r15d      # imm = 0xFFFFFBF5
movq %r15, %rcx
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rcx
shrq $0x29, %rcx
movq %rcx, -0x68(%rbp)
leal (,%rcx,4), %eax
movq %rax, -0x50(%rbp)
leal 0x4(,%rcx,4), %edx
movl $0xff, %esi
callq 0x20f0
movq -0x58(%rbp), %rdi
movq -0x38(%rbp), %r10
imull $0x3fc, -0x68(%rbp), %eax # imm = 0x3FC
subl %eax, %r15d
movq -0x50(%rbp), %rax
addq %r12, %rax
addq $0x6, %rax
movl %r15d, %ecx
movl %ecx, %edx
movl $0x80808081, %esi       # imm = 0x80808081
imulq %rsi, %rdx
shrq $0x27, %rdx
addl %edx, %ecx
addq %rdx, %rax
incq %rax
movb %cl, -0x1(%rax)
jmp 0x10c25
addb %r15b, %cl
movb %cl, (%rdx)
cmpq -0x70(%rbp), %rdi
movq -0x30(%rbp), %r12
movabsq $-0x30e4432345000000, %r11 # imm = 0xCF1BBCDCBB000000
movq -0x80(%rbp), %r15
ja 0x10e7b
cmpq -0xc8(%rbp), %rbx
jae 0x10e86
leaq -0x2(%rbx), %rcx
movq -0x2(%rbx), %rdx
imulq %r11, %rdx
shrq $0x34, %rdx
movq -0xa0(%rbp), %r8
subl %r8d, %ecx
movl %ecx, (%r10,%rdx,4)
movq (%rbx), %rcx
imulq %r11, %rcx
shrq $0x34, %rcx
movl %ebx, %edx
subl %r8d, %edx
movl (%r10,%rcx,4), %esi
movq -0x88(%rbp), %rdi
addq %rsi, %rdi
movq %rsi, %r9
addq %r8, %r9
cmpl %r15d, %esi
cmovbq %rdi, %r9
cmovbq -0xa8(%rbp), %r12
movl %edx, (%r10,%rcx,4)
leal 0xffff(%rsi), %edi
movb $0x1, %cl
cmpl %edx, %edi
movq %r9, -0x40(%rbp)
movq %r12, -0x58(%rbp)
jb 0x10cd8
movl (%r9), %edi
cmpl (%rbx), %edi
jne 0x10cd8
leaq 0x1(%rax), %r12
movb $0x0, (%rax)
subl %esi, %edx
xorl %ecx, %ecx
movq %rax, -0x48(%rbp)
movl %edx, %eax
movq %rax, -0x90(%rbp)
jmp 0x10cdb
movq %rax, %r12
movq %rbx, %r14
testb %cl, %cl
je 0x109ec
jmp 0x10e95
movq -0x30(%rbp), %r9
movq %r9, %rdx
movq %rax, %rcx
movq -0x78(%rbp), %r11
cmpq %rax, %r11
movq -0x38(%rbp), %r10
movq -0x58(%rbp), %r14
jbe 0x10d32
movq (%r9), %rdi
movq (%rax), %r8
xorl %ecx, %ecx
cmpq %r8, %rdi
sete %dl
movq %r8, %rsi
xorq %rdi, %rsi
bsfq %rsi, %rsi
shrl $0x3, %esi
cmpq %r8, %rdi
jne 0x10d71
movb %dl, %cl
shll $0x3, %ecx
leaq (%r9,%rcx), %rdx
addq %rax, %rcx
cmpq %r11, %rcx
jae 0x10e1c
movq (%rdx), %rdi
movq (%rcx), %r8
movq %r8, %r9
xorq %rdi, %r9
bsfq %r9, %r9
shrl $0x3, %r9d
addq %rcx, %r9
movl %r9d, %r10d
subl %eax, %r10d
addq $0x8, %rcx
addq $0x8, %rdx
cmpq %r8, %rdi
cmovneq %r9, %rcx
cmovnel %r10d, %esi
movq -0x38(%rbp), %r10
je 0x10d32
addl %esi, %r15d
movl %esi, %eax
addq %rax, %rbx
jmp 0x10b52
cmpq -0xd0(%rbp), %rcx
jae 0x10d95
movl (%rdx), %esi
cmpl (%rcx), %esi
jne 0x10d95
addq $0x4, %rcx
addq $0x4, %rdx
cmpq -0xe0(%rbp), %rcx
jae 0x10dae
movzwl (%rdx), %esi
cmpw (%rcx), %si
jne 0x10dae
addq $0x2, %rcx
addq $0x2, %rdx
cmpq -0xb0(%rbp), %rcx
jae 0x10dc4
movb (%rdx), %dl
xorl %esi, %esi
cmpb (%rcx), %dl
sete %sil
addq %rsi, %rcx
subl %eax, %ecx
movl %ecx, %r15d
jmp 0x10a8c
leaq -0x3(%rax), %rdi
cmpq %rdi, %rdx
jae 0x10de5
movl (%rsi), %edi
cmpl (%rdx), %edi
jne 0x10de5
addq $0x4, %rdx
addq $0x4, %rsi
leaq -0x1(%rax), %rdi
cmpq %rdi, %rdx
jae 0x10dfe
movzwl (%rsi), %edi
cmpw (%rdx), %di
jne 0x10dfe
addq $0x2, %rdx
addq $0x2, %rsi
cmpq %rax, %rdx
jae 0x10e12
movb (%rsi), %sil
xorl %edi, %edi
cmpb (%rdx), %sil
sete %dil
addq %rdi, %rdx
subl %ecx, %edx
movl %edx, %r15d
jmp 0x10b36
cmpq -0xd0(%rbp), %rcx
jae 0x10e33
movl (%rdx), %esi
cmpl (%rcx), %esi
jne 0x10e33
addq $0x4, %rcx
addq $0x4, %rdx
cmpq -0xe0(%rbp), %rcx
jae 0x10e4c
movzwl (%rdx), %esi
cmpw (%rcx), %si
jne 0x10e4c
addq $0x2, %rcx
addq $0x2, %rdx
cmpq -0xb0(%rbp), %rcx
jae 0x10e62
movb (%rdx), %dl
xorl %esi, %esi
cmpb (%rcx), %dl
sete %sil
addq %rsi, %rcx
subl %eax, %ecx
movl %ecx, %esi
jmp 0x10d71
movq %rax, %rcx
jmp 0x10a51
movq %rcx, %rdx
jmp 0x10afb
movl $0x1, %ecx
movq %rax, -0x48(%rbp)
jmp 0x10eb6
movl $0x3, %ecx
movq %rax, -0x48(%rbp)
movq %rbx, -0x60(%rbp)
jmp 0x10eb6
movq 0x1(%rbx), %r13
movq %rbx, -0x60(%rbp)
incq %rbx
imulq %r11, %r13
shrq $0x34, %r13
xorl %ecx, %ecx
movq %r12, -0x48(%rbp)
movq -0x30(%rbp), %r12
movq -0x58(%rbp), %r14
testl %ecx, %ecx
je 0x107a5
jmp 0x10edc
movl $0x1, %ecx
movq -0x38(%rbp), %r10
movabsq $-0x30e4432345000000, %r11 # imm = 0xCF1BBCDCBB000000
movq -0x80(%rbp), %r15
jmp 0x109d6
addl $-0x2, %ecx
cmpl $0x1, %ecx
ja 0x120b3
movq -0xe8(%rbp), %r13
subq -0x60(%rbp), %r13
movq -0x48(%rbp), %r15
leaq (%r15,%r13), %rsi
leaq 0xf0(%r13), %rax
movabsq $-0x7f7f7f7f7f7f7f7f, %rcx # imm = 0x8080808080808081
mulq %rcx
shrq $0x7, %rdx
leaq (%rdx,%rsi), %rbx
incq %rbx
cmpq -0x70(%rbp), %rbx
jbe 0x11e4c
movq -0xc0(%rbp), %r14
jmp 0x120ad
testl %r15d, %r15d
je 0x117ab
movl %esi, %ecx
movl 0x4000(%r10), %r11d
movq 0x4008(%r10), %rdi
addq %rdi, %rsi
movl %r15d, %eax
movq -0x30(%rbp), %rdx
leaq (%rdx,%rax), %r8
movq %rsi, %r9
subq %r11, %r9
testq %rdi, %rdi
cmoveq %rdi, %r9
movq %r9, -0xc8(%rbp)
movslq %r12d, %r14
movq %rdx, %r12
movq -0xc0(%rbp), %rdx
addq %rdx, %r14
addl %r15d, %ecx
movl %ecx, 0x4018(%r10)
leal (%r11,%r15), %ecx
movl %ecx, 0x4000(%r10)
movl $0x2, 0x4004(%r10)
movq %rdx, %r9
movq %r12, %rcx
cmpl $0xd, %r15d
jl 0x11faa
movq %r12, %rcx
subq %r11, %rcx
movq %rcx, -0x88(%rbp)
leaq (%r12,%rax), %rcx
addq $-0xb, %rcx
movq %rcx, -0xa0(%rbp)
addq %r12, %rax
addq $-0x5, %rax
movq %rax, -0xd8(%rbp)
testq %rdi, %rdi
movabsq $-0x30e4432345000000, %rcx # imm = 0xCF1BBCDCBB000000
movq %rdi, -0xa8(%rbp)
cmoveq %rdi, %rsi
movq %rsi, -0xe8(%rbp)
movq (%r12), %rax
imulq %rcx, %rax
shrq $0x34, %rax
movl %r11d, (%r10,%rax,4)
leaq 0x1(%r12), %rbx
movq 0x1(%r12), %r15
imulq %rcx, %r15
shrq $0x34, %r15
shll $0x6, -0x94(%rbp)
leaq -0xc(%r8), %rax
movq %rax, -0x60(%rbp)
leaq -0x8(%r8), %rax
movq %rax, -0xf0(%rbp)
movq %r8, -0xd0(%rbp)
leaq -0x6(%r8), %rax
movq %rax, -0xf8(%rbp)
movq $0x0, -0x90(%rbp)
movq %rdx, -0x78(%rbp)
movq %r12, -0x50(%rbp)
movq %r12, %r13
movq %r14, -0x80(%rbp)
movq %r11, -0x58(%rbp)
movl $0x1, %ecx
movq -0x40(%rbp), %rax
movl -0x94(%rbp), %edx
movl %ecx, %esi
addq %rbx, %rsi
cmpq -0xa0(%rbp), %rsi
ja 0x11110
movl %ebx, %edi
movq -0x88(%rbp), %r13
subl %r13d, %edi
movl %r15d, %ecx
movl (%r10,%rcx,4), %r8d
movq -0xc8(%rbp), %rax
leaq (%rax,%r8), %r9
leaq (%r8,%r13), %rax
cmpl %r11d, %r8d
cmovbq %r9, %rax
movq %r12, %r13
cmovbq -0xa8(%rbp), %r13
movq (%rsi), %r15
movabsq $-0x30e4432345000000, %r9 # imm = 0xCF1BBCDCBB000000
imulq %r9, %r15
shrq $0x34, %r15
movl %edi, (%r10,%rcx,4)
leal 0xffff(%r8), %r9d
movl $0x8, %ecx
cmpl %edi, %r9d
jb 0x110f8
movl (%rax), %ecx
cmpl (%rbx), %ecx
je 0x110e9
xorl %ecx, %ecx
jmp 0x110f8
subl %r8d, %edi
movl $0x7, %ecx
movq %rdi, -0x90(%rbp)
testl %ecx, %ecx
je 0x11101
cmpl $0x8, %ecx
jne 0x11117
movl %edx, %ecx
shrl $0x6, %ecx
incl %edx
movq %rsi, %rbx
jmp 0x1106f
movl $0x2, %ecx
jmp 0x110f8
cmpl $0x7, %ecx
jne 0x1111e
xorl %ecx, %ecx
testl %ecx, %ecx
je 0x1112b
movq %rax, -0x40(%rbp)
jmp 0x11788
movl %ebx, %ecx
movq -0x50(%rbp), %r12
subl %r12d, %ecx
leal -0xf(%rcx), %r10d
leal -0x10e(%rcx), %edx
movl %edx, -0xb0(%rbp)
movl %ebx, %r8d
shlb $0x4, %r8b
movl %r12d, %esi
shlb $0x4, %sil
subb %sil, %r8b
xorl %r9d, %r9d
movl %r10d, -0x68(%rbp)
movl %r10d, %esi
movq %r9, %r14
movl %r8d, %edi
leaq (%rax,%r9), %r8
leaq (%rbx,%r9), %rdx
movq %r8, -0x40(%rbp)
cmpq %r13, %r8
jbe 0x11193
cmpq %r12, %rdx
jbe 0x11193
movb -0x1(%rbx,%r14), %r11b
leal -0x1(%rsi), %r10d
leaq -0x1(%r14), %r9
leal -0x10(%rdi), %r8d
cmpb -0x1(%rax,%r14), %r11b
je 0x1115c
movq %rdx, -0x70(%rbp)
subl %r12d, %ebx
addl %r14d, %ebx
leaq (%rcx,%r14), %rax
movq -0x78(%rbp), %r11
leaq 0x1(%r11), %r12
leaq (%r11,%rbx), %r8
incq %r8
movl %eax, %r9d
movl $0x80808081, %r10d      # imm = 0x80808081
imulq %r10, %r9
shrq $0x27, %r9
leaq (%r9,%r8), %rdx
addq $0x8, %rdx
cmpq -0x80(%rbp), %rdx
ja 0x11795
cmpl $0xf, %eax
movq -0x38(%rbp), %r10
jb 0x1126c
movl -0x68(%rbp), %eax
addq %r14, %rax
movb $-0x10, (%r11)
cmpl $0xfe, %eax
jle 0x1125b
movl $0x1fd, %eax            # imm = 0x1FD
cmpl %eax, %esi
cmovgel %eax, %esi
subl %esi, %ecx
addl %r14d, %ecx
addl $0xef, %ecx
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rcx
shrq $0x27, %rcx
movq %rcx, -0xe0(%rbp)
movq %rdx, -0x68(%rbp)
leal 0x1(%rcx), %edx
movq %r12, %rdi
movl $0xff, %esi
movq %r11, %r12
callq 0x20f0
movq -0x68(%rbp), %rdx
movq -0x38(%rbp), %r10
movq -0xe0(%rbp), %rsi
movl %esi, %eax
shll $0x8, %eax
movl %esi, %ecx
subl %eax, %ecx
addq %rsi, %r12
addq $0x2, %r12
movl -0xb0(%rbp), %eax
addl %r14d, %eax
addl %ecx, %eax
movq -0x80(%rbp), %r14
movq -0x58(%rbp), %r11
movb %al, (%r12)
incq %r12
jmp 0x11277
movb %dil, (%r11)
movq -0x80(%rbp), %r14
movq -0x58(%rbp), %r11
addq %r12, %rbx
movq -0x50(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%r12)
addq $0x8, %r12
addq $0x8, %rax
cmpq %rbx, %r12
jb 0x1127e
xorl %ecx, %ecx
movq %rbx, %r12
cmpq %r14, %rdx
jbe 0x112a9
movq %r12, -0x78(%rbp)
movq -0x70(%rbp), %rbx
jmp 0x11784
movq -0x50(%rbp), %rbx
movq %rbx, -0x50(%rbp)
movq -0x90(%rbp), %rax
movw %ax, (%r12)
cmpq -0xa8(%rbp), %r13
je 0x11361
movq -0x70(%rbp), %r9
leaq 0x4(%r9), %rax
movq -0x40(%rbp), %r8
leaq 0x4(%r8), %rdx
movq -0x60(%rbp), %rbx
cmpq %rax, %rbx
jbe 0x11737
movq 0x4(%r8), %rsi
movq 0x4(%r9), %rdi
movq %rdi, %rcx
xorq %rsi, %rcx
bsfq %rcx, %r14
shrl $0x3, %r14d
leaq 0xc(%r9), %rcx
addq $0xc, %r8
cmpq %rdi, %rsi
cmoveq %r8, %rdx
cmovneq %rax, %rcx
jne 0x1134d
cmpq %rbx, %rcx
jae 0x1164a
movq (%rdx), %rsi
movq (%rcx), %rdi
movq %rdi, %r8
xorq %rsi, %r8
bsfq %r8, %r8
shrl $0x3, %r8d
addq %rcx, %r8
movl %r8d, %r9d
subl %eax, %r9d
addq $0x8, %rcx
addq $0x8, %rdx
cmpq %rdi, %rsi
cmovneq %r8, %rcx
cmovnel %r9d, %r14d
je 0x11312
movl %r14d, %eax
movq -0x70(%rbp), %rcx
leaq (%rax,%rcx), %rbx
addq $0x4, %rbx
jmp 0x114a8
movq -0xe8(%rbp), %rax
movq -0x40(%rbp), %r10
subq %r10, %rax
movq -0x70(%rbp), %rbx
addq %rbx, %rax
movq -0xd8(%rbp), %rcx
cmpq %rcx, %rax
cmovaq %rcx, %rax
leaq 0x4(%rbx), %rcx
leaq 0x4(%r10), %rsi
leaq -0x7(%rax), %rdi
cmpq %rcx, %rdi
jbe 0x1173f
movq 0x4(%r10), %r8
movq 0x4(%rbx), %r9
movq %r9, %rdx
xorq %r8, %rdx
bsfq %rdx, %r14
shrl $0x3, %r14d
leaq 0xc(%rbx), %rdx
addq $0xc, %r10
cmpq %r9, %r8
cmoveq %r10, %rsi
cmovneq %rcx, %rdx
jne 0x11403
cmpq %rdi, %rdx
jae 0x1169a
movq (%rsi), %r8
movq (%rdx), %r9
movq %r9, %r10
xorq %r8, %r10
bsfq %r10, %r10
shrl $0x3, %r10d
addq %rdx, %r10
movl %r10d, %r11d
subl %ecx, %r11d
addq $0x8, %rdx
addq $0x8, %rsi
cmpq %r9, %r8
cmovneq %r10, %rdx
cmovnel %r11d, %r14d
movq -0x58(%rbp), %r11
je 0x113c4
movl %r14d, %ecx
movq -0x70(%rbp), %rdx
leaq (%rcx,%rdx), %rbx
addq $0x4, %rbx
cmpq %rax, %rbx
je 0x11420
movq -0x38(%rbp), %r10
jmp 0x114a8
movq -0x30(%rbp), %r9
movq %r9, %rdx
movq %rax, %rcx
cmpq %rax, -0x60(%rbp)
movq -0x38(%rbp), %r10
jbe 0x11460
movq (%r9), %rdi
movq (%rax), %r8
xorl %ecx, %ecx
cmpq %r8, %rdi
sete %dl
movq %r8, %rsi
xorq %rdi, %rsi
bsfq %rsi, %rsi
shrl $0x3, %esi
cmpq %r8, %rdi
jne 0x114a0
movb %dl, %cl
shll $0x3, %ecx
leaq (%r9,%rcx), %rdx
addq %rax, %rcx
cmpq -0x60(%rbp), %rcx
jae 0x116e8
movq (%rdx), %rdi
movq (%rcx), %r8
movq %r8, %r9
xorq %rdi, %r9
bsfq %r9, %r9
shrl $0x3, %r9d
addq %rcx, %r9
movl %r9d, %r10d
subl %eax, %r10d
addq $0x8, %rcx
addq $0x8, %rdx
cmpq %r8, %rdi
cmovneq %r9, %rcx
cmovnel %r10d, %esi
movq -0x38(%rbp), %r10
je 0x11460
addl %esi, %r14d
movl %esi, %eax
addq %rax, %rbx
leaq 0x2(%r12), %rax
leal 0xf0(%r14), %ecx
movl $0x80808081, %edx       # imm = 0x80808081
imulq %rdx, %rcx
shrq $0x27, %rcx
leaq (%r12,%rcx), %rdi
addq $0x8, %rdi
cmpq -0x80(%rbp), %rdi
ja 0x11585
movq -0x78(%rbp), %rdx
movb (%rdx), %cl
cmpl $0xf, %r14d
jb 0x11580
addb $0xf, %cl
movb %cl, (%rdx)
leal -0xf(%r14), %ecx
movl $0xffffffff, (%rax)     # imm = 0xFFFFFFFF
cmpl $0x3fc, %ecx            # imm = 0x3FC
jb 0x11564
movq %rdi, -0x70(%rbp)
leaq 0x6(%r12), %rdi
addl $0xfffffbf5, %r14d      # imm = 0xFFFFFBF5
movq %r14, %rcx
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rcx
shrq $0x29, %rcx
movq %rcx, -0xb0(%rbp)
leal (,%rcx,4), %eax
movq %rax, -0x68(%rbp)
leal 0x4(,%rcx,4), %edx
movl $0xff, %esi
callq 0x20f0
movq -0x70(%rbp), %rdi
movq -0x58(%rbp), %r11
movq -0x38(%rbp), %r10
imull $0x3fc, -0xb0(%rbp), %eax # imm = 0x3FC
subl %eax, %r14d
movq -0x68(%rbp), %rax
addq %r12, %rax
addq $0x6, %rax
movl %r14d, %ecx
movl %ecx, %edx
movl $0x80808081, %esi       # imm = 0x80808081
imulq %rsi, %rdx
shrq $0x27, %rdx
addl %edx, %ecx
addq %rdx, %rax
incq %rax
movb %cl, -0x1(%rax)
jmp 0x11585
addb %r14b, %cl
movb %cl, (%rdx)
movq -0x80(%rbp), %r14
cmpq %r14, %rdi
movq -0x30(%rbp), %r12
ja 0x11747
cmpq -0xa0(%rbp), %rbx
jae 0x11752
leaq -0x2(%rbx), %rcx
movq -0x2(%rbx), %rdx
movabsq $-0x30e4432345000000, %rsi # imm = 0xCF1BBCDCBB000000
imulq %rsi, %rdx
shrq $0x34, %rdx
movq -0x88(%rbp), %r8
subl %r8d, %ecx
movl %ecx, (%r10,%rdx,4)
movq (%rbx), %rcx
imulq %rsi, %rcx
shrq $0x34, %rcx
movl %ebx, %edx
subl %r8d, %edx
movl (%r10,%rcx,4), %esi
movq -0xc8(%rbp), %rdi
addq %rsi, %rdi
movq %rsi, %r9
addq %r8, %r9
cmpl %r11d, %esi
cmovbq %rdi, %r9
movq %r12, %r13
cmovbq -0xa8(%rbp), %r13
movl %edx, (%r10,%rcx,4)
leal 0xffff(%rsi), %edi
movb $0x1, %cl
cmpl %edx, %edi
movq %r9, -0x40(%rbp)
jb 0x11636
movl (%r9), %edi
cmpl (%rbx), %edi
jne 0x11636
leaq 0x1(%rax), %r12
movb $0x0, (%rax)
subl %esi, %edx
xorl %ecx, %ecx
movq %rax, -0x78(%rbp)
movl %edx, %eax
movq %rax, -0x90(%rbp)
jmp 0x11639
movq %rax, %r12
movq %rbx, -0x70(%rbp)
testb %cl, %cl
je 0x112ad
jmp 0x11761
cmpq -0xf0(%rbp), %rcx
jae 0x11661
movl (%rdx), %esi
cmpl (%rcx), %esi
jne 0x11661
addq $0x4, %rcx
addq $0x4, %rdx
cmpq -0xf8(%rbp), %rcx
jae 0x1167a
movzwl (%rdx), %esi
cmpw (%rcx), %si
jne 0x1167a
addq $0x2, %rcx
addq $0x2, %rdx
cmpq -0xd8(%rbp), %rcx
jae 0x11690
movb (%rdx), %dl
xorl %esi, %esi
cmpb (%rcx), %dl
sete %sil
addq %rsi, %rcx
subl %eax, %ecx
movl %ecx, %r14d
jmp 0x1134d
leaq -0x3(%rax), %rdi
cmpq %rdi, %rdx
jae 0x116b1
movl (%rsi), %edi
cmpl (%rdx), %edi
jne 0x116b1
addq $0x4, %rdx
addq $0x4, %rsi
leaq -0x1(%rax), %rdi
cmpq %rdi, %rdx
jae 0x116ca
movzwl (%rsi), %edi
cmpw (%rdx), %di
jne 0x116ca
addq $0x2, %rdx
addq $0x2, %rsi
cmpq %rax, %rdx
jae 0x116de
movb (%rsi), %sil
xorl %edi, %edi
cmpb (%rdx), %sil
sete %dil
addq %rdi, %rdx
subl %ecx, %edx
movl %edx, %r14d
jmp 0x11403
cmpq -0xf0(%rbp), %rcx
jae 0x116ff
movl (%rdx), %esi
cmpl (%rcx), %esi
jne 0x116ff
addq $0x4, %rcx
addq $0x4, %rdx
cmpq -0xf8(%rbp), %rcx
jae 0x11718
movzwl (%rdx), %esi
cmpw (%rcx), %si
jne 0x11718
addq $0x2, %rcx
addq $0x2, %rdx
cmpq -0xd8(%rbp), %rcx
jae 0x1172e
movb (%rdx), %dl
xorl %esi, %esi
cmpb (%rcx), %dl
sete %sil
addq %rsi, %rcx
subl %eax, %ecx
movl %ecx, %esi
jmp 0x114a0
movq %rax, %rcx
jmp 0x11312
movq %rcx, %rdx
jmp 0x113c4
movl $0x1, %ecx
movq %rax, -0x78(%rbp)
jmp 0x11788
movl $0x3, %ecx
movq %rax, -0x78(%rbp)
movq %rbx, -0x50(%rbp)
jmp 0x11788
movq 0x1(%rbx), %r15
movq %rbx, -0x50(%rbp)
incq %rbx
movabsq $-0x30e4432345000000, %rax # imm = 0xCF1BBCDCBB000000
imulq %rax, %r15
shrq $0x34, %r15
xorl %ecx, %ecx
movq %r12, -0x78(%rbp)
movq -0x30(%rbp), %r12
testl %ecx, %ecx
je 0x11060
jmp 0x11f88
movl $0x1, %ecx
movq -0x38(%rbp), %r10
movq -0x80(%rbp), %r14
movq -0x58(%rbp), %r11
jmp 0x11297
testl %r12d, %r12d
movq -0x30(%rbp), %r12
jle 0x128e3
movq -0xc0(%rbp), %rax
movb $0x0, (%rax)
movl $0x1, %eax
jmp 0x128df
testl %r12d, %r12d
movq -0xc0(%rbp), %rax
jle 0x128f1
movb $0x0, (%rax)
movl $0x1, %eax
jmp 0x1289d
movq %r14, %rsi
movq %rdi, %r14
subq %rcx, %r14
leaq (%rdi,%rdx), %rbx
addq $-0xb, %rbx
leaq -0x5(%rdi,%rdx), %rdx
movq %rdx, -0xb8(%rbp)
movabsq $-0x30e4432345000000, %rdx # imm = 0xCF1BBCDCBB000000
movq %rdi, %r9
subq %rax, %r9
movq %r9, -0xc8(%rbp)
movq (%rdi), %rax
imulq %rdx, %rax
shrq $0x34, %rax
movl %ecx, (%r10,%rax,4)
leaq 0x1(%rdi), %rax
movq 0x1(%rdi), %r15
imulq %rdx, %r15
shrq $0x34, %r15
shll $0x6, -0x94(%rbp)
leaq -0xc(%rsi), %rcx
movq %rcx, -0xa8(%rbp)
leaq -0x8(%rsi), %rcx
movq %rcx, -0x50(%rbp)
movq %rsi, -0x78(%rbp)
leaq -0x6(%rsi), %rcx
movq %rcx, -0x68(%rbp)
movq %r8, -0x88(%rbp)
movq %rdi, %r12
movq %rbx, -0x58(%rbp)
movq %r14, -0x80(%rbp)
movl $0x1, %edx
movq %r13, %rcx
movl -0x94(%rbp), %esi
movl %edx, %edi
addq %rax, %rdi
cmpq %rbx, %rdi
ja 0x118ea
movl %r15d, %edx
movl (%r10,%rdx,4), %ecx
movl %eax, %r8d
subl %r14d, %r8d
leal 0xffff(%rcx), %r9d
addq %r14, %rcx
movq (%rdi), %r15
movabsq $-0x30e4432345000000, %r13 # imm = 0xCF1BBCDCBB000000
imulq %r13, %r15
shrq $0x34, %r15
movl %r8d, (%r10,%rdx,4)
movl $0x8, %edx
cmpl %r8d, %r9d
jb 0x118d5
movl (%rcx), %r8d
movl $0x7, %edx
cmpl (%rax), %r8d
je 0x118d5
xorl %edx, %edx
testl %edx, %edx
je 0x118de
cmpl $0x8, %edx
jne 0x118f1
movl %esi, %edx
shrl $0x6, %edx
incl %esi
movq %rdi, %rax
jmp 0x11882
movl $0x2, %edx
jmp 0x118d5
cmpl $0x7, %edx
jne 0x118f8
xorl %edx, %edx
testl %edx, %edx
je 0x11904
movq %rcx, %r13
jmp 0x11d73
movl %eax, %edx
subl %r12d, %edx
leal -0xf(%rdx), %r11d
leal -0x10e(%rdx), %esi
movl %esi, -0x70(%rbp)
movl %eax, %r9d
shlb $0x4, %r9b
movl %r12d, %edi
shlb $0x4, %dil
subb %dil, %r9b
xorl %r10d, %r10d
movl %r11d, -0x90(%rbp)
movl %r11d, %edi
movq %r10, %r13
movl %r9d, %r8d
leaq (%rcx,%r10), %r9
leaq (%rax,%r10), %rsi
movq %r9, %r14
cmpq -0xc8(%rbp), %r9
jbe 0x1196b
cmpq %r12, %rsi
jbe 0x1196b
movb -0x1(%rax,%r13), %bl
leal -0x1(%rdi), %r11d
leaq -0x1(%r13), %r10
leal -0x10(%r8), %r9d
cmpb -0x1(%rcx,%r13), %bl
je 0x11931
movq %rsi, -0xa0(%rbp)
movq %r12, -0x30(%rbp)
subl %r12d, %eax
leal (%rax,%r13), %ebx
leaq (%rdx,%r13), %rax
movq -0x88(%rbp), %rcx
leaq 0x1(%rcx), %r12
addq %rbx, %rcx
incq %rcx
movl %eax, %r9d
movl $0x80808081, %r10d      # imm = 0x80808081
imulq %r10, %r9
shrq $0x27, %r9
leaq (%r9,%rcx), %rsi
addq $0x8, %rsi
movq -0x40(%rbp), %r11
cmpq %r11, %rsi
ja 0x11d7d
cmpl $0xf, %eax
movq -0x38(%rbp), %r10
jb 0x11a5f
movl -0x90(%rbp), %eax
addq %r13, %rax
movq -0x88(%rbp), %rcx
movb $-0x10, (%rcx)
cmpl $0xfe, %eax
jle 0x11a53
movl $0x1fd, %eax            # imm = 0x1FD
cmpl %eax, %edi
cmovgel %eax, %edi
subl %edi, %edx
addl %r13d, %edx
addl $0xef, %edx
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rdx
shrq $0x27, %rdx
movq %rdx, -0x90(%rbp)
incl %edx
movq %r12, %rdi
movq %rsi, %r12
movl $0xff, %esi
movq %rcx, -0x88(%rbp)
callq 0x20f0
movq %r12, %rsi
movq -0x40(%rbp), %r11
movq -0x38(%rbp), %r10
movq -0x90(%rbp), %rdx
movl %edx, %eax
shll $0x8, %eax
movl %edx, %ecx
subl %eax, %ecx
movq -0x88(%rbp), %rax
leaq (%rax,%rdx), %r12
addq $0x2, %r12
movl -0x70(%rbp), %eax
addl %r13d, %eax
addl %ecx, %eax
movq %r14, %r13
movb %al, (%r12)
incq %r12
jmp 0x11a6c
movq -0x88(%rbp), %rax
movb %r8b, (%rax)
movq %r14, %r13
movq -0x80(%rbp), %r14
addq %r12, %rbx
movq -0x30(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%r12)
addq $0x8, %r12
addq $0x8, %rax
cmpq %rbx, %r12
jb 0x11a77
xorl %edx, %edx
movq %rbx, %r12
cmpq %r11, %rsi
movq -0x58(%rbp), %rbx
jbe 0x11ab0
movq %r12, -0x88(%rbp)
movq -0xa0(%rbp), %rax
movq -0x30(%rbp), %r12
jmp 0x11d73
movq -0x30(%rbp), %rax
movq -0xa0(%rbp), %rcx
movq %rax, -0x30(%rbp)
movl %ecx, %eax
subl %r13d, %eax
movw %ax, (%r12)
leaq 0x4(%rcx), %rax
leaq 0x4(%r13), %rdx
cmpq %rax, -0xa8(%rbp)
movq %rcx, -0xa0(%rbp)
jbe 0x11d20
movq %rcx, %r8
movq 0x4(%r13), %rsi
movq 0x4(%rcx), %rdi
movq %rdi, %rcx
xorq %rsi, %rcx
bsfq %rcx, %rbx
shrl $0x3, %ebx
leaq 0xc(%r8), %rcx
leaq 0xc(%r13), %r8
cmpq %rdi, %rsi
cmoveq %r8, %rdx
cmovneq %rax, %rcx
jne 0x11b51
cmpq -0xa8(%rbp), %rcx
jae 0x11cd7
movq (%rdx), %rsi
movq (%rcx), %rdi
movq %rdi, %r8
xorq %rsi, %r8
bsfq %r8, %r8
shrl $0x3, %r8d
addq %rcx, %r8
movl %r8d, %r9d
subl %eax, %r9d
addq $0x8, %rcx
addq $0x8, %rdx
cmpq %rdi, %rsi
cmovneq %r8, %rcx
cmovnel %r9d, %ebx
je 0x11b12
leaq 0x2(%r12), %rcx
leal 0xf0(%rbx), %eax
movl $0x80808081, %edx       # imm = 0x80808081
imulq %rdx, %rax
shrq $0x27, %rax
leaq (%r12,%rax), %rsi
addq $0x8, %rsi
cmpq %r11, %rsi
ja 0x11c36
movq -0x88(%rbp), %rdx
movb (%rdx), %al
cmpl $0xf, %ebx
jb 0x11c32
addb $0xf, %al
movb %al, (%rdx)
leal -0xf(%rbx), %edi
movl $0xffffffff, (%rcx)     # imm = 0xFFFFFFFF
cmpl $0x3fc, %edi            # imm = 0x3FC
jb 0x11c15
leaq 0x6(%r12), %rdi
leal -0x40b(%rbx), %r14d
movq %r13, -0x90(%rbp)
movq %r14, %r13
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %r13
shrq $0x29, %r13
leal (,%r13,4), %eax
movq %rax, -0x60(%rbp)
leal 0x4(,%r13,4), %edx
movq %rsi, -0x70(%rbp)
movl $0xff, %esi
callq 0x20f0
movq %r14, %rdi
movq -0x70(%rbp), %rsi
movq -0x40(%rbp), %r11
movq -0x38(%rbp), %r10
imull $0x3fc, %r13d, %eax     # imm = 0x3FC
movq -0x90(%rbp), %r13
movq -0x80(%rbp), %r14
subl %eax, %edi
movq -0x60(%rbp), %rax
leaq (%r12,%rax), %rcx
addq $0x6, %rcx
movl %edi, %eax
movl $0x80808081, %edx       # imm = 0x80808081
imulq %rdx, %rax
shrq $0x27, %rax
leal (%rax,%rdi), %edx
addq %rax, %rcx
incq %rcx
movb %dl, -0x1(%rcx)
jmp 0x11c36
addb %bl, %al
movb %al, (%rdx)
movl %ebx, %eax
movq -0xa0(%rbp), %rdx
addq %rdx, %rax
addq $0x4, %rax
cmpq %r11, %rsi
movq -0x30(%rbp), %r12
ja 0x11d28
movq -0x58(%rbp), %rbx
cmpq %rbx, %rax
jae 0x11d3a
leaq -0x2(%rax), %rdx
movq -0x2(%rax), %rsi
movabsq $-0x30e4432345000000, %rdi # imm = 0xCF1BBCDCBB000000
imulq %rdi, %rsi
shrq $0x34, %rsi
subl %r14d, %edx
movl %edx, (%r10,%rsi,4)
movq (%rax), %rdx
imulq %rdi, %rdx
shrq $0x34, %rdx
movl %eax, %esi
subl %r14d, %esi
movl (%r10,%rdx,4), %edi
leal 0xffff(%rdi), %r8d
movq %rdi, %r13
addq %r14, %r13
movl %esi, (%r10,%rdx,4)
movb $0x1, %dl
cmpl %esi, %r8d
jb 0x11cc7
movl (%r13), %esi
cmpl (%rax), %esi
jne 0x11cc7
leaq 0x1(%rcx), %r12
movb $0x0, (%rcx)
xorl %edx, %edx
movq %rcx, -0x88(%rbp)
jmp 0x11cca
movq %rcx, %r12
movq %rax, %rcx
testb %dl, %dl
je 0x11abb
jmp 0x11d4b
cmpq -0x50(%rbp), %rcx
jae 0x11ceb
movl (%rdx), %esi
cmpl (%rcx), %esi
jne 0x11ceb
addq $0x4, %rcx
addq $0x4, %rdx
cmpq -0x68(%rbp), %rcx
jae 0x11d01
movzwl (%rdx), %esi
cmpw (%rcx), %si
jne 0x11d01
addq $0x2, %rcx
addq $0x2, %rdx
cmpq -0xb8(%rbp), %rcx
jae 0x11d17
movb (%rdx), %dl
xorl %esi, %esi
cmpb (%rcx), %dl
sete %sil
addq %rsi, %rcx
subl %eax, %ecx
movl %ecx, %ebx
jmp 0x11b51
movq %rax, %rcx
jmp 0x11b12
movl $0x1, %edx
movq %rcx, -0x88(%rbp)
movq -0x58(%rbp), %rbx
jmp 0x11d73
movl $0x3, %edx
movq %rcx, -0x88(%rbp)
movq %rax, %r12
jmp 0x11d73
movq 0x1(%rax), %r15
movq %rax, %rcx
incq %rax
movabsq $-0x30e4432345000000, %rdx # imm = 0xCF1BBCDCBB000000
imulq %rdx, %r15
shrq $0x34, %r15
xorl %edx, %edx
movq %r12, -0x88(%rbp)
movq %rcx, %r12
testl %edx, %edx
je 0x11874
jmp 0x11d92
movl $0x1, %edx
movq -0x38(%rbp), %r10
movq %r14, %r13
movq -0x80(%rbp), %r14
jmp 0x11a90
addl $-0x2, %edx
cmpl $0x1, %edx
ja 0x126b9
movq -0x78(%rbp), %r14
movq -0x88(%rbp), %rax
subq %r12, %r14
movq %rax, %rdi
leaq (%rax,%r14), %rsi
leaq 0xf0(%r14), %rax
movabsq $-0x7f7f7f7f7f7f7f7f, %rcx # imm = 0x8080808080808081
mulq %rcx
shrq $0x7, %rdx
leaq (%rdx,%rsi), %rbx
incq %rbx
cmpq %r11, %rbx
jbe 0x11ddf
movq %rdi, %rax
jmp 0x12082
cmpq $0xf, %r14
jb 0x1205a
leaq -0xf(%r14), %rax
movq %rdi, %rdx
movb $-0x10, (%rdi)
incq %rdi
cmpq $0xff, %rax
jb 0x11e42
leaq -0x10e(%r14), %rax
movq %rdx, %r13
mulq %rcx
movq %r14, %r15
movq %rdx, %r14
shrq $0x7, %r14
leaq 0x1(%r14), %rdx
movl $0xff, %esi
callq 0x20f0
movq %r14, %rax
shlq $0x8, %rax
leaq (%r14,%r13), %rdi
addq $0x2, %rdi
subq %rax, %r14
leaq (%r15,%r14), %rax
addq $-0x10e, %rax           # imm = 0xFEF2
movq %r15, %r14
movb %al, (%rdi)
movq %rdi, %rcx
jmp 0x12065
cmpq $0xf, %r13
movq -0xc0(%rbp), %r14
jb 0x1208a
leaq -0xf(%r13), %rax
movb $-0x10, (%r15)
leaq 0x1(%r15), %rdi
cmpq $0xff, %rax
jb 0x11eb1
leaq -0x10e(%r13), %rax
mulq %rcx
movq %rdx, %r12
shrq $0x7, %r12
leaq 0x1(%r12), %rdx
movl $0xff, %esi
callq 0x20f0
movq %r12, %rax
shlq $0x8, %rax
leaq (%r15,%r12), %rdi
addq $0x2, %rdi
subq %rax, %r12
leaq (%r12,%r13), %rax
addq $-0x10e, %rax           # imm = 0xFEF2
movq -0x30(%rbp), %r12
movb %al, (%rdi)
movq %rdi, %r15
jmp 0x12093
addl $-0x2, %ecx
cmpl $0x1, %ecx
ja 0x1278f
movq -0xf0(%rbp), %r8
movq -0x68(%rbp), %r9
movq -0xb0(%rbp), %rdx
movq %rdx, %r14
subq %rdx, %r8
leaq (%r9,%r8), %rsi
leaq 0xf0(%r8), %rax
movabsq $-0x7f7f7f7f7f7f7f7f, %rcx # imm = 0x8080808080808081
mulq %rcx
shrq $0x7, %rdx
leaq (%rdx,%rsi), %r13
incq %r13
cmpq %rbx, %r13
ja 0x128d0
cmpq $0xf, %r8
movq %r8, -0xf0(%rbp)
jb 0x126c6
leaq -0xf(%r8), %rax
movb $-0x10, (%r9)
leaq 0x1(%r9), %rdi
cmpq $0xff, %rax
jb 0x11f7e
leaq -0x10e(%r8), %rax
mulq %rcx
movq %rdx, %rbx
shrq $0x7, %rbx
leaq 0x1(%rbx), %rdx
movl $0xff, %esi
movq %r9, -0x68(%rbp)
callq 0x20f0
movq -0xf0(%rbp), %r8
movq %rbx, %rax
shlq $0x8, %rax
movq -0x68(%rbp), %rcx
leaq (%rbx,%rcx), %rdi
addq $0x2, %rdi
subq %rax, %rbx
leaq (%r8,%rbx), %rax
addq $-0x10e, %rax           # imm = 0xFEF2
movq -0x50(%rbp), %rbx
movb %al, (%rdi)
movq %rdi, %r9
jmp 0x126cf
addl $-0x2, %ecx
cmpl $0x1, %ecx
ja 0x120b3
movq -0xb8(%rbp), %r15
movq -0xd0(%rbp), %r8
movq -0x78(%rbp), %r9
movq -0x50(%rbp), %rcx
movq %rcx, %rbx
subq %rcx, %r8
leaq (%r9,%r8), %rsi
leaq 0xf0(%r8), %rax
movabsq $-0x7f7f7f7f7f7f7f7f, %rcx # imm = 0x8080808080808081
mulq %rcx
shrq $0x7, %rdx
leaq (%rdx,%rsi), %r13
incq %r13
cmpq %r14, %r13
ja 0x12781
cmpq $0xf, %r8
movq %r8, -0xd0(%rbp)
jb 0x12754
leaq -0xf(%r8), %rax
movb $-0x10, (%r9)
leaq 0x1(%r9), %rdi
cmpq $0xff, %rax
jb 0x12050
leaq -0x10e(%r8), %rax
mulq %rcx
movq %rdx, %r12
shrq $0x7, %r12
leaq 0x1(%r12), %rdx
movl $0xff, %esi
movq %r9, -0x78(%rbp)
callq 0x20f0
movq -0xd0(%rbp), %r8
movq %r12, %rax
shlq $0x8, %rax
movq -0x78(%rbp), %rcx
leaq (%r12,%rcx), %rdi
addq $0x2, %rdi
subq %rax, %r12
leaq (%r8,%r12), %rax
addq $-0x10e, %rax           # imm = 0xFEF2
movq -0x30(%rbp), %r12
movb %al, (%rdi)
movq %rdi, %r9
jmp 0x1275d
movl %r14d, %eax
shlb $0x4, %al
movq %rdi, %rcx
movb %al, (%rdi)
leaq 0x1(%rcx), %rdi
movq %r12, %rsi
movq %rcx, %r15
movq %r14, %rdx
callq 0x2160
leaq (%r15,%r14), %rax
incq %rax
movq -0x40(%rbp), %r11
cmpq %r11, %rbx
jmp 0x12892
movl %r13d, %eax
shlb $0x4, %al
movb %al, (%r15)
leaq 0x1(%r15), %rdi
movq -0x60(%rbp), %rsi
movq %r13, %rdx
callq 0x2160
addq %r13, %r15
incq %r15
movq -0x38(%rbp), %r10
cmpq -0x70(%rbp), %rbx
jbe 0x120bd
movq $0x0, -0x48(%rbp)
jmp 0x120c4
subl %r14d, %r15d
movq %r15, -0x48(%rbp)
movq -0xb8(%rbp), %r15
jmp 0x128e3
movq %rsi, %r14
subq %rbx, %r14
leaq (%rsi,%rcx), %rdx
addq $-0xb, %rdx
movq %rdx, -0xc8(%rbp)
leaq -0x5(%rsi,%rcx), %rcx
movq %rcx, -0x50(%rbp)
movabsq $-0x30e4432345000000, %rdx # imm = 0xCF1BBCDCBB000000
movq %rsi, %rcx
subq %rax, %rcx
movq %rcx, -0x88(%rbp)
movq (%rsi), %rcx
imulq %rdx, %rcx
shrq $0x34, %rcx
movl %ebx, (%r10,%rcx,4)
subl %eax, %ebx
leaq 0x1(%rsi), %rax
movq 0x1(%rsi), %r15
imulq %rdx, %r15
shrq $0x34, %r15
shll $0x6, -0x94(%rbp)
leaq -0xc(%rdi), %rcx
movq %rcx, -0xa8(%rbp)
leaq -0x8(%rdi), %rcx
movq %rcx, -0x68(%rbp)
leaq -0x6(%rdi), %rcx
movq %rcx, -0xb0(%rbp)
movq %r8, -0x40(%rbp)
movq %rsi, %r12
movq %rbx, -0x78(%rbp)
movq %r14, -0x90(%rbp)
movl $0x1, %edx
movq %r8, %rcx
movl -0x94(%rbp), %esi
movl %edx, %edi
addq %rax, %rdi
cmpq -0xc8(%rbp), %rdi
ja 0x121df
movl %r15d, %edx
movl (%r10,%rdx,4), %r8d
movl %eax, %r9d
subl %r14d, %r9d
movq %r8, %rcx
addq %r14, %rcx
movq (%rdi), %r15
movabsq $-0x30e4432345000000, %r11 # imm = 0xCF1BBCDCBB000000
imulq %r11, %r15
shrq $0x34, %r15
movl %r9d, (%r10,%rdx,4)
movl $0x8, %edx
cmpl %ebx, %r8d
jb 0x121ca
addl $0xffff, %r8d           # imm = 0xFFFF
cmpl %r9d, %r8d
jb 0x121ca
movl (%rcx), %r8d
movl $0x7, %edx
cmpl (%rax), %r8d
je 0x121ca
xorl %edx, %edx
testl %edx, %edx
je 0x121d3
cmpl $0x8, %edx
jne 0x121e6
movl %esi, %edx
shrl $0x6, %edx
incl %esi
movq %rdi, %rax
jmp 0x1216b
movl $0x2, %edx
jmp 0x121ca
cmpl $0x7, %edx
jne 0x121ed
xorl %edx, %edx
testl %edx, %edx
je 0x121f9
movq %rcx, %r8
jmp 0x1264d
movl %eax, %edx
subl %r12d, %edx
leal -0xf(%rdx), %esi
leal -0x10e(%rdx), %edi
movl %edi, -0x70(%rbp)
movl %eax, %r9d
shlb $0x4, %r9b
movl %r12d, %edi
shlb $0x4, %dil
subb %dil, %r9b
xorl %r10d, %r10d
movl %esi, %r11d
movl %r11d, %edi
movq %r10, %rbx
movl %r9d, %r8d
leaq (%rcx,%r10), %r9
leaq (%rax,%r10), %r13
movq %r9, -0xa0(%rbp)
cmpq -0x88(%rbp), %r9
jbe 0x1225f
cmpq %r12, %r13
jbe 0x1225f
movb -0x1(%rax,%rbx), %r14b
leal -0x1(%rdi), %r11d
leaq -0x1(%rbx), %r10
leal -0x10(%r8), %r9d
cmpb -0x1(%rcx,%rbx), %r14b
je 0x12221
movq %r12, -0x30(%rbp)
subl %r12d, %eax
leal (%rbx,%rax), %r14d
leaq (%rdx,%rbx), %rax
movq -0x40(%rbp), %rcx
leaq 0x1(%rcx), %r12
addq %r14, %rcx
incq %rcx
movl %eax, %r9d
movl $0x80808081, %r10d      # imm = 0x80808081
imulq %r10, %r9
shrq $0x27, %r9
addq %rcx, %r9
addq $0x8, %r9
cmpq -0x58(%rbp), %r9
ja 0x12657
cmpl $0xf, %eax
movq -0x38(%rbp), %r10
jb 0x12334
movl %esi, %eax
addq %rbx, %rax
movq -0x40(%rbp), %rcx
movb $-0x10, (%rcx)
cmpl $0xfe, %eax
jle 0x12320
movl $0x1fd, %eax            # imm = 0x1FD
cmpl %eax, %edi
cmovgel %eax, %edi
subl %edi, %edx
addl %ebx, %edx
addl $0xef, %edx
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rdx
shrq $0x27, %rdx
movq %rdx, -0x60(%rbp)
incl %edx
movq %r12, %rdi
movl $0xff, %esi
movq %r9, %r12
movq %rcx, -0x40(%rbp)
callq 0x20f0
movq %r12, %r9
movq -0x38(%rbp), %r10
movq -0x60(%rbp), %rdx
movl %edx, %eax
shll $0x8, %eax
movl %edx, %ecx
subl %eax, %ecx
movq -0x40(%rbp), %rax
leaq (%rax,%rdx), %r12
addq $0x2, %r12
movl -0x70(%rbp), %eax
addl %ebx, %eax
addl %ecx, %eax
movq -0x78(%rbp), %rbx
movq -0xa0(%rbp), %r8
movb %al, (%r12)
incq %r12
jmp 0x12346
movq -0x40(%rbp), %rax
movb %r8b, (%rax)
movq -0x78(%rbp), %rbx
movq -0xa0(%rbp), %r8
addq %r12, %r14
movq -0x30(%rbp), %rax
movq (%rax), %rcx
movq %rcx, (%r12)
addq $0x8, %r12
addq $0x8, %rax
cmpq %r14, %r12
jb 0x1234d
xorl %edx, %edx
movq %r14, %r12
cmpq -0x58(%rbp), %r9
movq -0x90(%rbp), %r14
jbe 0x12383
movq %r12, -0x40(%rbp)
movq %r13, %rax
movq -0x30(%rbp), %r12
jmp 0x12649
movq -0x30(%rbp), %rax
movq %rax, -0x30(%rbp)
movl %r13d, %eax
subl %r8d, %eax
movw %ax, (%r12)
leaq 0x4(%r13), %rax
leaq 0x4(%r8), %rdx
cmpq %rax, -0xa8(%rbp)
jbe 0x125f1
movq 0x4(%r8), %rsi
movq 0x4(%r13), %rdi
movq %rdi, %rcx
xorq %rsi, %rcx
bsfq %rcx, %r14
shrl $0x3, %r14d
leaq 0xc(%r13), %rcx
movq %r8, %r11
addq $0xc, %r8
cmpq %rdi, %rsi
cmoveq %r8, %rdx
cmovneq %rax, %rcx
jne 0x12418
cmpq -0xa8(%rbp), %rcx
jae 0x125a7
movq (%rdx), %rsi
movq (%rcx), %rdi
movq %rdi, %r8
xorq %rsi, %r8
bsfq %r8, %r8
shrl $0x3, %r8d
addq %rcx, %r8
movl %r8d, %r9d
subl %eax, %r9d
addq $0x8, %rcx
addq $0x8, %rdx
cmpq %rdi, %rsi
cmovneq %r8, %rcx
cmovnel %r9d, %r14d
je 0x123d9
leaq 0x2(%r12), %rcx
leal 0xf0(%r14), %eax
movl $0x80808081, %edx       # imm = 0x80808081
imulq %rdx, %rax
shrq $0x27, %rax
leaq (%r12,%rax), %rsi
addq $0x8, %rsi
cmpq -0x58(%rbp), %rsi
ja 0x125fc
movq -0x40(%rbp), %rdx
movb (%rdx), %al
cmpl $0xf, %r14d
movq %r11, %r8
jb 0x124fe
addb $0xf, %al
movb %al, (%rdx)
leal -0xf(%r14), %edi
movl $0xffffffff, (%rcx)     # imm = 0xFFFFFFFF
cmpl $0x3fc, %edi            # imm = 0x3FC
jb 0x124e1
leaq 0x6(%r12), %rdi
leal -0x40b(%r14), %ebx
movq %rbx, -0x60(%rbp)
movl $0x80808081, %eax       # imm = 0x80808081
imulq %rax, %rbx
shrq $0x29, %rbx
leal (,%rbx,4), %eax
movq %rax, -0x80(%rbp)
leal 0x4(,%rbx,4), %edx
movq %rsi, -0x70(%rbp)
movl $0xff, %esi
movq %r13, -0xa0(%rbp)
movq %r8, %r13
callq 0x20f0
movq -0x60(%rbp), %rdi
movq -0x70(%rbp), %rsi
movq %r13, %r8
movq -0xa0(%rbp), %r13
movq -0x38(%rbp), %r10
imull $0x3fc, %ebx, %eax      # imm = 0x3FC
movq -0x78(%rbp), %rbx
subl %eax, %edi
movq -0x80(%rbp), %rax
leaq (%r12,%rax), %rcx
addq $0x6, %rcx
movl %edi, %eax
movl $0x80808081, %edx       # imm = 0x80808081
imulq %rdx, %rax
shrq $0x27, %rax
leal (%rax,%rdi), %edx
addq %rax, %rcx
incq %rcx
movb %dl, -0x1(%rcx)
jmp 0x12503
addb %r14b, %al
movb %al, (%rdx)
movl %r14d, %eax
addq %r13, %rax
addq $0x4, %rax
movq -0x58(%rbp), %r13
cmpq %r13, %rsi
movq -0x30(%rbp), %r12
ja 0x12604
cmpq -0xc8(%rbp), %rax
movq -0x90(%rbp), %r14
jae 0x12616
leaq -0x2(%rax), %rdx
movq -0x2(%rax), %rsi
movabsq $-0x30e4432345000000, %rdi # imm = 0xCF1BBCDCBB000000
imulq %rdi, %rsi
shrq $0x34, %rsi
subl %r14d, %edx
movl %edx, (%r10,%rsi,4)
movq (%rax), %rdx
imulq %rdi, %rdx
shrq $0x34, %rdx
movl %eax, %esi
subl %r14d, %esi
movl (%r10,%rdx,4), %edi
movq %rdi, %r8
addq %r14, %r8
movl %esi, (%r10,%rdx,4)
movb $0x1, %dl
cmpl %ebx, %edi
jb 0x12597
addl $0xffff, %edi           # imm = 0xFFFF
cmpl %esi, %edi
jb 0x12597
movl (%r8), %esi
cmpl (%rax), %esi
jne 0x12597
leaq 0x1(%rcx), %r12
movb $0x0, (%rcx)
xorl %edx, %edx
movq %rcx, -0x40(%rbp)
jmp 0x1259a
movq %rcx, %r12
movq %rax, %r13
testb %dl, %dl
je 0x12387
jmp 0x12624
cmpq -0x68(%rbp), %rcx
jae 0x125bb
movl (%rdx), %esi
cmpl (%rcx), %esi
jne 0x125bb
addq $0x4, %rcx
addq $0x4, %rdx
cmpq -0xb0(%rbp), %rcx
jae 0x125d4
movzwl (%rdx), %esi
cmpw (%rcx), %si
jne 0x125d4
addq $0x2, %rcx
addq $0x2, %rdx
cmpq -0x50(%rbp), %rcx
jae 0x125e7
movb (%rdx), %dl
xorl %esi, %esi
cmpb (%rcx), %dl
sete %sil
addq %rsi, %rcx
subl %eax, %ecx
movl %ecx, %r14d
jmp 0x12418
movq %r8, %r11
movq %rax, %rcx
jmp 0x123d9
movq %r11, %r8
jmp 0x12503
movl $0x1, %edx
movq %rcx, -0x40(%rbp)
movq -0x90(%rbp), %r14
jmp 0x1264d
movl $0x3, %edx
movq %rcx, -0x40(%rbp)
movq %rax, %r12
jmp 0x1264d
movq 0x1(%rax), %r15
movq %rax, %rcx
incq %rax
movabsq $-0x30e4432345000000, %rdx # imm = 0xCF1BBCDCBB000000
imulq %rdx, %r15
shrq $0x34, %r15
xorl %edx, %edx
movq %r12, -0x40(%rbp)
movq %rcx, %r12
movq -0x58(%rbp), %r13
testl %edx, %edx
je 0x1215d
jmp 0x12670
movl $0x1, %edx
movq -0x38(%rbp), %r10
movq -0x78(%rbp), %rbx
movq -0xa0(%rbp), %r8
jmp 0x12366
addl $-0x2, %edx
cmpl $0x1, %edx
ja 0x126b9
movq -0x40(%rbp), %rax
movq -0xb8(%rbp), %r15
subq %r12, %r15
movq %rax, %rdi
leaq (%rax,%r15), %rsi
leaq 0xf0(%r15), %rax
movabsq $-0x7f7f7f7f7f7f7f7f, %rcx # imm = 0x8080808080808081
mulq %rcx
shrq $0x7, %rdx
leaq (%rdx,%rsi), %rbx
incq %rbx
cmpq %r13, %rbx
jbe 0x126ed
movq %rdi, %rax
jmp 0x1288f
movq $0x0, -0x48(%rbp)
jmp 0x128f1
movl %r8d, %eax
shlb $0x4, %al
movb %al, (%r9)
leaq 0x1(%r9), %rdi
movq %r14, %rsi
movq %r8, %rdx
movq %r9, %r14
callq 0x2160
movq -0xf0(%rbp), %rax
jmp 0x128c5
cmpq $0xf, %r15
jb 0x12867
leaq -0xf(%r15), %rax
movq %rdi, %rdx
movb $-0x10, (%rdi)
incq %rdi
cmpq $0xff, %rax
jb 0x1274a
leaq -0x10e(%r15), %rax
movq %rdx, %r13
mulq %rcx
movq %rdx, %r14
shrq $0x7, %r14
leaq 0x1(%r14), %rdx
movl $0xff, %esi
callq 0x20f0
movq %r14, %rax
shlq $0x8, %rax
leaq (%r14,%r13), %rdi
addq $0x2, %rdi
subq %rax, %r14
leaq (%r15,%r14), %rax
addq $-0x10e, %rax           # imm = 0xFEF2
movb %al, (%rdi)
movq %rdi, %rcx
jmp 0x12872
movl %r8d, %eax
shlb $0x4, %al
movb %al, (%r9)
leaq 0x1(%r9), %rdi
movq %rbx, %rsi
movq %r8, %rdx
movq %r9, %rbx
callq 0x2160
movq -0xd0(%rbp), %rax
leaq (%rbx,%rax), %r9
incq %r9
movq -0x38(%rbp), %r10
cmpq %r14, %r13
jbe 0x128d5
jmp 0x128e3
movq $0x0, -0x48(%rbp)
jmp 0x128e3
addl $-0x2, %ecx
cmpl $0x1, %ecx
ja 0x12907
movq -0x30(%rbp), %r12
movq -0xe0(%rbp), %r8
movq -0x50(%rbp), %r9
movq -0x68(%rbp), %rcx
movq %rcx, %r14
subq %rcx, %r8
leaq (%r9,%r8), %rsi
leaq 0xf0(%r8), %rax
movabsq $-0x7f7f7f7f7f7f7f7f, %rcx # imm = 0x8080808080808081
mulq %rcx
shrq $0x7, %rdx
leaq (%rdx,%rsi), %r13
incq %r13
cmpq %rbx, %r13
ja 0x128d0
cmpq $0xf, %r8
movq %r8, -0xe0(%rbp)
jb 0x128a3
leaq -0xf(%r8), %rax
movb $-0x10, (%r9)
leaq 0x1(%r9), %rdi
cmpq $0xff, %rax
jb 0x12860
leaq -0x10e(%r8), %rax
mulq %rcx
movq %rdx, %rbx
shrq $0x7, %rbx
leaq 0x1(%rbx), %rdx
movl $0xff, %esi
movq %r9, -0x50(%rbp)
callq 0x20f0
movq -0xe0(%rbp), %r8
movq %rbx, %rax
shlq $0x8, %rax
movq -0x50(%rbp), %rcx
leaq (%rbx,%rcx), %rdi
addq $0x2, %rdi
subq %rax, %rbx
leaq (%r8,%rbx), %rax
addq $-0x10e, %rax           # imm = 0xFEF2
movq -0x78(%rbp), %rbx
movb %al, (%rdi)
movq %rdi, %r9
jmp 0x128ac
movl %r15d, %eax
shlb $0x4, %al
movq %rdi, %rcx
movb %al, (%rdi)
leaq 0x1(%rcx), %rdi
movq %r12, %rsi
movq %rcx, %r14
movq %r15, %rdx
callq 0x2160
leaq (%r14,%r15), %rax
incq %rax
movq -0x58(%rbp), %r13
cmpq %r13, %rbx
movq -0xc0(%rbp), %rcx
ja 0x128f1
subl %ecx, %eax
movq %rax, -0x48(%rbp)
jmp 0x128f1
movl %r8d, %eax
shlb $0x4, %al
movb %al, (%r9)
leaq 0x1(%r9), %rdi
movq %r14, %rsi
movq %r8, %rdx
movq %r9, %r14
callq 0x2160
movq -0xe0(%rbp), %rax
leaq (%r14,%rax), %r9
incq %r9
movq -0x38(%rbp), %r10
cmpq %rbx, %r13
ja 0x128e3
subl -0xc0(%rbp), %r9d
movl %r9d, %eax
movq %rax, -0x48(%rbp)
movq %r12, 0x4008(%r10)
movl %r15d, 0x4018(%r10)
movq -0x48(%rbp), %rax
addq $0xd8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq $0x0, -0x48(%rbp)
jmp 0x10678