// File: /workspace/github_c_makefile_star2_O3/dolphinking[P]slimox/src/slimox-codec.c
// Function: slimox_encode
int slimox_encode(buf_t* ib, buf_t* ob, ppm_model_t* ppm, FILE* fout_sync) {
    int outsize = 0;
    int percent = 0;
    int pos = 0;
    int match_len;
    int i;
    int counts[256] = {0};
    int escape = 0;

    pthread_t thread;
    lzmatch_thread_param_pack_t thread_args;
    int mlen[2][MLEN_SIZE];
    int midx = 0;
    int mpos = 0;
    int mselect = 0;

    matcher_t matcher;
    rc_coder_t coder;

    /* count for escape char */
    for(i = 0; i < ib->m_size; i++) {
        counts[ib->m_data[i]] += 1;
    }
    for(i = 1; i < 256; i++) {
        escape = (counts[escape] > counts[i]) ? i : escape;
    }

    /* write output size */
    buf_append(ob, ib->m_size / 16777216 % 256);
    buf_append(ob, ib->m_size / 65536 % 256);
    buf_append(ob, ib->m_size / 256 % 256);
    buf_append(ob, ib->m_size / 1 % 256);
    buf_append(ob, escape);

    /* start encoding */
    matcher_init(&matcher);
    rc_enc_init(&coder);

    /* start thread (matching first block) */
    thread_args.m_mpos = &mpos;
    thread_args.m_ib = ib;
    thread_args.m_matcher = &matcher;
    thread_args.m_mlen = mlen[0]; pthread_create(&thread, 0, (void*)lzmatch_thread, &thread_args); pthread_join(thread, 0);
    thread_args.m_mlen = mlen[1]; pthread_create(&thread, 0, (void*)lzmatch_thread, &thread_args);

    while(pos < ib->m_size) {
        if(percent < pos / (ib->m_size / 100 + 1)) {
            percent = pos / (ib->m_size / 100 + 1);
            fprintf(stderr, "%d%%\r",percent);
        }

        /* find match */
        if(midx >= MLEN_SIZE) { /* start the next matching thread */
            pthread_join(thread, 0);
            thread_args.m_mlen = mlen[mselect];
            pthread_create(&thread, 0, (void*)lzmatch_thread, &thread_args);
            midx = 0;
            mselect = 1 - mselect;
        }
        match_len = mlen[mselect][midx++];

        if(match_len >= match_min) { /* encode a match */
            ppm_encode(ppm, &coder, escape, ;; buf_append(ob, output));
            ppm->m_context <<= 8;
            ppm->m_context |= escape;
            ppm_encode(ppm, &coder, match_len, ;; buf_append(ob, output));
            ppm->m_sse_last_esc = 0;

        } else { /* encode a literal */
            ppm_encode(ppm, &coder, ib->m_data[pos], ;; buf_append(ob, output));
            if(ib->m_data[pos] == escape) {
                ppm->m_context <<= 8;
                ppm->m_context |= escape;
                ppm_encode(ppm, &coder, 0, ;; buf_append(ob, output));
            }
        }
        for(i = 0; i < match_len; i++) { /* update context */
            ppm->m_context <<= 8;
            ppm->m_context |= ib->m_data[pos];
            pos++;
        }

        if(fout_sync && ob->m_size > 32000) {
            if(fout_sync) {
                fwrite(ob->m_data, 1, ob->m_size, fout_sync); /* sync to file */
                outsize += ob->m_size;
                ob->m_size = 0;
            }
        }
    }
    pthread_join(thread, 0);
    matcher_free(&matcher);
    rc_enc_flush(&coder, buf_append(ob, output));

    if(fout_sync) { /* sync last output bytes to file */
        fwrite(ob->m_data, 1, ob->m_size, fout_sync);
        outsize += ob->m_size;
        ob->m_size = 0;
    }
    return outsize;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x7d588, %rsp          # imm = 0x7D588
movq %rcx, 0x110(%rsp)
movq %rdx, 0x18(%rsp)
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x180(%rsp), %rdi
xorl %ebp, %ebp
movl $0x400, %edx            # imm = 0x400
xorl %esi, %esi
callq 0x10e0
movl $0x0, 0x10c(%rsp)
movq %r14, 0xc0(%rsp)
movl 0x8(%r14), %r14d
testq %r14, %r14
je 0x17e2
movq 0xc0(%rsp), %rax
movq (%rax), %rax
xorl %ecx, %ecx
movzbl (%rax,%rcx), %edx
incl 0x180(%rsp,%rdx,4)
incq %rcx
cmpq %rcx, %r14
jne 0x17cf
movl $0x1, %eax
movslq %ebp, %rcx
movl 0x180(%rsp,%rcx,4), %ecx
movl %eax, %r15d
cmpl 0x180(%rsp,%rax,4), %ecx
jg 0x1800
movl %ebp, %r15d
incq %rax
movl %r15d, %ebp
cmpq $0x100, %rax            # imm = 0x100
jne 0x17e7
shrl $0x18, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x184c
movl %ecx, %ecx
cvtsi2sd %rcx, %xmm0
mulsd 0x97dc(%rip), %xmm0     # 0xb008
addsd 0x97dc(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
leal 0x1(%rcx), %edx
movl %edx, 0x8(%rbx)
movl %ecx, %ecx
movb %r14b, (%rax,%rcx)
movq 0xc0(%rsp), %rax
movb 0xa(%rax), %bpl
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x18a1
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x9787(%rip), %xmm0     # 0xb008
addsd 0x9787(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
leal 0x1(%rcx), %edx
movl %edx, 0x8(%rbx)
movl %ecx, %ecx
movb %bpl, (%rax,%rcx)
movq 0xc0(%rsp), %rax
movb 0x9(%rax), %bpl
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x18f6
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x9732(%rip), %xmm0     # 0xb008
addsd 0x9732(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
leal 0x1(%rcx), %edx
movl %edx, 0x8(%rbx)
movl %ecx, %ecx
movb %bpl, (%rax,%rcx)
movq 0xc0(%rsp), %rax
movb 0x8(%rax), %bpl
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x194b
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x96dd(%rip), %xmm0     # 0xb008
addsd 0x96dd(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
leal 0x1(%rcx), %edx
movl %edx, 0x8(%rbx)
movl %ecx, %ecx
movb %bpl, (%rax,%rcx)
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x1994
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x9694(%rip), %xmm0     # 0xb008
addsd 0x9694(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
leal 0x1(%rcx), %edx
movl %edx, 0x8(%rbx)
movl %ecx, %ecx
movb %r15b, (%rax,%rcx)
movl $0x100000, %edi         # imm = 0x100000
movl $0x8, %esi
callq 0x1120
movl %r15d, 0x2c(%rsp)
leaq 0x138(%rsp), %r15
movq %rax, (%r15)
movl $0x100000, %edi         # imm = 0x100000
movl $0x8, %esi
callq 0x1120
movq %rax, 0x8(%r15)
movl $0x10000, %edi          # imm = 0x10000
movl $0x4, %esi
callq 0x1120
movq %rax, 0x10(%r15)
leaq 0x10c(%rsp), %rax
leaq 0x160(%rsp), %r14
movq %rax, 0x18(%r14)
movq 0xc0(%rsp), %rbp
movq %rbp, 0x8(%r14)
movq %r15, (%r14)
leaq 0x580(%rsp), %rax
movq %rax, 0x10(%r14)
leaq 0x510c(%rip), %r15      # 0x6b27
xorl %r12d, %r12d
leaq 0x100(%rsp), %r13
movq %r13, %rdi
xorl %esi, %esi
movq %r15, %rdx
movq %r14, %rcx
callq 0x11d0
movq (%r13), %rdi
xorl %esi, %esi
callq 0x1220
leaq 0x3ed80(%rsp), %rax
movq %rax, 0x10(%r14)
movq %r13, %rdi
xorl %esi, %esi
movq %r15, %rdx
movq %r14, %rcx
callq 0x11d0
movl 0x8(%rbp), %eax
testl %eax, %eax
je 0x6a37
movq 0x18(%rsp), %rcx
leaq 0x10(%rcx), %rdx
movq %rdx, 0xe8(%rsp)
leaq 0x280010(%rcx), %rdx
movq %rdx, 0x60(%rsp)
leaq 0x2a0616(%rcx), %rdx
movq %rdx, 0x68(%rsp)
movzbl 0x2c(%rsp), %edx
movl %edx, 0x54(%rsp)
movd %edx, %xmm0
pshufd $0x0, %xmm0, %xmm0      # xmm0 = xmm0[0,0,0,0]
leaq 0x280017(%rcx), %rdx
movq %rdx, 0xc8(%rsp)
addq $0x280016, %rcx         # imm = 0x280016
movq %rcx, 0xe0(%rsp)
movl $0xffffffff, %r14d      # imm = 0xFFFFFFFF
pshufd $0xf5, 0x9570(%rip), %xmm1 # xmm1 = mem[1,1,3,3]
movdqa %xmm1, 0x120(%rsp)
pxor 0x954f(%rip), %xmm0     # 0xb030
movdqa %xmm0, 0x150(%rsp)
movl $0x0, 0xa4(%rsp)
movl $0x0, 0xdc(%rsp)
xorl %r13d, %r13d
xorl %esi, %esi
movl $0x0, 0xd8(%rsp)
xorl %r12d, %r12d
movl %eax, %eax
imulq $0x51eb851f, %rax, %rcx # imm = 0x51EB851F
shrq $0x25, %rcx
incl %ecx
movl %r13d, %eax
xorl %edx, %edx
divl %ecx
cmpl %eax, 0xdc(%rsp)
jb 0x27e4
cmpl $0xfa00, %esi           # imm = 0xFA00
jl 0x1b9c
movq 0x100(%rsp), %rdi
xorl %esi, %esi
callq 0x1220
movl 0xd8(%rsp), %ebp
movl %ebp, %eax
imulq $0x3e800, %rax, %rax    # imm = 0x3E800
addq %rsp, %rax
addq $0x580, %rax            # imm = 0x580
movq %rax, 0x170(%rsp)
leaq 0x100(%rsp), %rdi
xorl %esi, %esi
leaq 0x4fa8(%rip), %rdx      # 0x6b27
leaq 0x160(%rsp), %rcx
callq 0x11d0
xorl %esi, %esi
movl $0x1, %eax
subl %ebp, %eax
movq 0x18(%rsp), %r15
jmp 0x1ba8
movq 0x18(%rsp), %r15
movl 0xd8(%rsp), %eax
movl %eax, 0xd8(%rsp)
movl %eax, %eax
movq %rsi, 0x118(%rsp)
movslq %esi, %rcx
imulq $0x3e800, %rax, %rax    # imm = 0x3E800
addq %rsp, %rax
addq $0x580, %rax            # imm = 0x580
movl (%rax,%rcx,4), %eax
movl %r13d, 0x44(%rsp)
movslq %r13d, %rcx
movq %rax, 0xd0(%rsp)
cmpl $0x8, %eax
movq %rcx, 0xf8(%rsp)
jl 0x1d7a
movq %r15, %rdi
callq 0x6d8b
movq %rax, %rbp
pxor %xmm0, %xmm0
movdqa %xmm0, 0x90(%rsp)
movdqa %xmm0, 0x80(%rsp)
movl (%r15), %eax
movzwl %ax, %r13d
movl %r13d, %ecx
cmpq $0x0, 0x200010(%r15,%rcx,8)
movq %rbp, 0x8(%rsp)
jne 0x1d1a
movq 0x2a0818(%r15), %rbp
movq 0x8(%rbp), %rdi
testq %rdi, %rdi
jne 0x1cf3
movl $0x81808, %edi          # imm = 0x81808
callq 0x1180
movq %rax, %rdi
movq (%rbp), %rax
movq %rax, (%rdi)
movq $0x0, 0x8(%rdi)
leaq 0x20e(%rdi), %rax
xorl %ecx, %ecx
movdqa 0x93b0(%rip), %xmm2     # 0xb020
movdqa 0x93c8(%rip), %xmm3     # 0xb040
movdqa 0x120(%rsp), %xmm4
movq %rcx, %xmm0
pshufd $0x44, %xmm0, %xmm0     # xmm0 = xmm0[0,1,0,1]
por %xmm2, %xmm0
pxor 0x9399(%rip), %xmm0     # 0xb030
movdqa %xmm3, %xmm1
pcmpgtd %xmm0, %xmm1
pshufd $0xf5, %xmm0, %xmm0     # xmm0 = xmm0[1,1,3,3]
pcmpeqd %xmm4, %xmm0
pand %xmm1, %xmm0
movd %xmm0, %edx
testb $0x1, %dl
je 0x1cbf
leaq -0x206(%rax), %rdx
movq %rdx, (%rax)
pextrw $0x4, %xmm0, %edx
testb $0x1, %dl
je 0x1cd0
movq %rax, 0x206(%rax)
addq $0x2, %rcx
addq $0x40c, %rax            # imm = 0x40C
cmpq $0x400, %rcx            # imm = 0x400
jne 0x1c81
movq %rdi, (%rbp)
addq $0x81602, %rdi          # imm = 0x81602
movq 0x18(%rsp), %r15
movq (%rdi), %rax
movq %rax, 0x8(%rbp)
movq %rdi, 0x200010(%r15,%r13,8)
incl 0x4(%r15)
movl $0x206, %edx            # imm = 0x206
xorl %esi, %esi
callq 0x10e0
movl (%r15), %eax
movq 0x8(%rsp), %rbp
shll $0x8, %eax
movl %eax, %ecx
shrl $0xe, %ecx
andl $0x3ff00, %eax          # imm = 0x3FF00
addl 0x54(%rsp), %eax
xorl %ecx, %eax
movq 0xe8(%rsp), %rcx
prefetcht0 (%rcx,%rax,8)
movq %r15, %rdi
movq %rbp, %rsi
callq 0x6f86
movq %rax, %r15
movzbl 0xe(%rbp), %eax
testq %rax, %rax
movl 0x2c(%rsp), %edi
pxor %xmm1, %xmm1
je 0x2008
movq 0x8(%rsp), %rcx
cmpb %dil, 0x10(%rcx)
jne 0x1f27
movb $0x1, 0x10(%rsp)
xorl %ebp, %ebp
xorl %r13d, %r13d
jmp 0x1f5d
movq 0xc0(%rsp), %rax
movq (%rax), %rax
movb (%rax,%rcx), %r13b
movq %r15, %rdi
callq 0x6d8b
movq %rax, %rbp
pxor %xmm0, %xmm0
movdqa %xmm0, 0x90(%rsp)
movdqa %xmm0, 0x80(%rsp)
movl (%r15), %eax
movzwl %ax, %edx
movl %edx, %ecx
cmpq $0x0, 0x200010(%r15,%rcx,8)
movb %r13b, 0x10(%rsp)
movq %rbp, 0x38(%rsp)
jne 0x1ec1
movq 0x2a0818(%r15), %rbp
movq 0x8(%rbp), %rdi
testq %rdi, %rdi
jne 0x1e95
movq %rdx, %r13
movl $0x81808, %edi          # imm = 0x81808
callq 0x1180
movq %rax, %rdi
movq (%rbp), %rax
movq %rax, (%rdi)
movq $0x0, 0x8(%rdi)
leaq 0x20e(%rdi), %rax
xorl %ecx, %ecx
movdqa 0x9211(%rip), %xmm2     # 0xb020
movdqa 0x9229(%rip), %xmm3     # 0xb040
movdqa 0x120(%rsp), %xmm4
movq %rcx, %xmm0
pshufd $0x44, %xmm0, %xmm0     # xmm0 = xmm0[0,1,0,1]
por %xmm2, %xmm0
pxor 0x91fa(%rip), %xmm0     # 0xb030
movdqa %xmm3, %xmm1
pcmpgtd %xmm0, %xmm1
pshufd $0xf5, %xmm0, %xmm0     # xmm0 = xmm0[1,1,3,3]
pcmpeqd %xmm4, %xmm0
pand %xmm1, %xmm0
movd %xmm0, %edx
testb $0x1, %dl
je 0x1e5e
leaq -0x206(%rax), %rdx
movq %rdx, (%rax)
pextrw $0x4, %xmm0, %edx
testb $0x1, %dl
je 0x1e6f
movq %rax, 0x206(%rax)
addq $0x2, %rcx
addq $0x40c, %rax            # imm = 0x40C
cmpq $0x400, %rcx            # imm = 0x400
jne 0x1e20
movq %rdi, (%rbp)
addq $0x81602, %rdi          # imm = 0x81602
movq 0x18(%rsp), %r15
movq %r13, %rdx
movq (%rdi), %rax
movq %rax, 0x8(%rbp)
movq %rdi, 0x200010(%r15,%rdx,8)
incl 0x4(%r15)
movl $0x206, %edx            # imm = 0x206
xorl %esi, %esi
callq 0x10e0
movl (%r15), %eax
movq 0x38(%rsp), %rbp
movb 0x10(%rsp), %r13b
movzbl %r13b, %edx
shll $0x8, %eax
movl %eax, %ecx
shrl $0xe, %ecx
andl $0x3ff00, %eax          # imm = 0x3FF00
movl %edx, 0x48(%rsp)
orl %edx, %eax
xorl %ecx, %eax
movq 0xe8(%rsp), %rcx
prefetcht0 (%rcx,%rax,8)
movq %r15, %rdi
movq %rbp, %rsi
callq 0x6f86
movq %rax, 0x8(%rsp)
movzbl 0xe(%rbp), %eax
testq %rax, %rax
pxor %xmm1, %xmm1
movq %rbp, %r15
je 0x2261
movb 0x10(%rsp), %cl
cmpb %cl, 0x10(%r15)
jne 0x2184
movb $0x1, 0x30(%rsp)
xorl %r13d, %r13d
xorl %ebp, %ebp
jmp 0x21b8
leaq -0x1(%rax), %rcx
xorl %r13d, %r13d
xorl %edx, %edx
cmpq %rdx, %rcx
je 0x2008
movq 0x8(%rsp), %r8
movzbl 0x11(%r8,%rdx,2), %esi
addl %esi, %r13d
leaq 0x1(%rdx), %rbp
cmpb %dil, 0x12(%r8,%rdx,2)
movq %rbp, %rdx
jne 0x1f30
cmpq %rax, %rbp
setb 0x10(%rsp)
movq 0x8(%rsp), %rax
addq $0x10, %rax
movq %rax, 0x30(%rsp)
movzwl (%r15), %ecx
movzwl 0x2(%r15), %eax
addw %cx, %ax
movzwl %ax, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movl %eax, %r14d
imull %ecx, %r14d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x1fac
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x2130
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x1fed
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x903f(%rip), %xmm0     # 0xb008
addsd 0x903f(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
pxor %xmm1, %xmm1
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x1f88
movzwl (%r15), %ecx
movzwl 0x2(%r15), %esi
leal (%rsi,%rcx), %eax
movzwl %ax, %edi
movl %r14d, %eax
xorl %edx, %edx
divl %edi
movl %eax, %r14d
imull %eax, %ecx
addl %r12d, %ecx
imull %esi, %r14d
movl %ecx, %r12d
movq 0x8(%rsp), %r13
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x2053
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x20ab
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x2090
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x8f98(%rip), %xmm0     # 0xb008
addsd 0x8f98(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x2033
movzwl 0x2(%r15), %eax
addl $0x23, %eax
movw %ax, 0x2(%r15)
movzwl %ax, %eax
cmpl $0x3e81, %eax           # imm = 0x3E81
movq %r15, %rdx
movq 0x18(%rsp), %r15
jb 0x20dc
movzwl (%rdx), %ecx
incl %ecx
shrl %ecx
movw %cx, (%rdx)
incl %eax
shrl %eax
movw %ax, 0x2(%rdx)
movzbl 0xe(%r13), %eax
testq %rax, %rax
je 0x2495
xorl %edx, %edx
movzbl 0x10(%r13,%rdx,2), %ecx
movl $0x1, %esi
shll %cl, %esi
shrl $0x5, %ecx
orl %esi, 0x80(%rsp,%rcx,4)
incq %rdx
cmpq %rdx, %rax
jne 0x20ec
movl $0x1, %ebp
cmpl $0x42, %eax
jne 0x2497
movzbl 0x93(%r13), %eax
subw %ax, 0xc(%r13)
movl $0x82, %edx
jmp 0x24a8
movzwl (%r15), %eax
addl $0x23, %eax
movw %ax, (%r15)
movzwl %ax, %ecx
cmpl $0x3e81, %ecx           # imm = 0x3E81
jb 0x215a
movd %eax, %xmm0
pinsrw $0x1, 0x2(%r15), %xmm0
pavgw %xmm1, %xmm0
movd %xmm0, (%r15)
movq 0x8(%rsp), %r15
cmpb $0x1, 0xe(%r15)
jne 0x23d1
movq 0x18(%rsp), %r15
xorl %ebp, %ebp
movb $0x1, %r13b
cmpb $0x0, 0x10(%rsp)
je 0x24c5
jmp 0x3be8
leaq -0x1(%rax), %rcx
xorl %ebp, %ebp
xorl %edx, %edx
cmpq %rdx, %rcx
je 0x2261
movzbl 0x11(%r15,%rdx,2), %esi
addl %esi, %ebp
leaq 0x1(%rdx), %r13
movb 0x10(%rsp), %sil
cmpb %sil, 0x12(%r15,%rdx,2)
movq %r13, %rdx
jne 0x218c
cmpq %rax, %r13
setb 0x30(%rsp)
leaq 0x10(%r15), %rax
movq %rax, 0x20(%rsp)
movq 0x8(%rsp), %rax
movzwl (%rax), %ecx
movzwl 0x2(%rax), %eax
addw %cx, %ax
movzwl %ax, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movl %eax, %r14d
imull %ecx, %r14d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x2205
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x2385
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x2246
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x8de6(%rip), %xmm0     # 0xb008
addsd 0x8de6(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
pxor %xmm1, %xmm1
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x21e1
movq 0x8(%rsp), %rbp
movzwl (%rbp), %ecx
movzwl 0x2(%rbp), %esi
leal (%rsi,%rcx), %eax
movzwl %ax, %edi
movl %r14d, %eax
xorl %edx, %edx
divl %edi
movl %eax, %r14d
imull %eax, %ecx
addl %r12d, %ecx
imull %esi, %r14d
movl %ecx, %r12d
movb 0x10(%rsp), %r13b
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x22b0
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x2308
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x22ed
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x8d3b(%rip), %xmm0     # 0xb008
addsd 0x8d3b(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x2290
movzwl 0x2(%rbp), %eax
addl $0x23, %eax
movw %ax, 0x2(%rbp)
movzwl %ax, %eax
cmpl $0x3e81, %eax           # imm = 0x3E81
jb 0x2331
movzwl (%rbp), %ecx
incl %ecx
shrl %ecx
movw %cx, (%rbp)
incl %eax
shrl %eax
movw %ax, 0x2(%rbp)
movzbl 0xe(%r15), %eax
testq %rax, %rax
je 0x262c
xorl %edx, %edx
movzbl 0x10(%r15,%rdx,2), %ecx
movl $0x1, %esi
shll %cl, %esi
shrl $0x5, %ecx
orl %esi, 0x80(%rsp,%rcx,4)
incq %rdx
cmpq %rdx, %rax
jne 0x2341
movl $0x1, %ebp
cmpl $0x42, %eax
jne 0x262e
movzbl 0x93(%r15), %eax
subw %ax, 0xc(%r15)
movl $0x82, %edx
jmp 0x263f
movq 0x8(%rsp), %rdx
movzwl (%rdx), %eax
addl $0x23, %eax
movw %ax, (%rdx)
movzwl %ax, %ecx
cmpl $0x3e81, %ecx           # imm = 0x3E81
jb 0x23b0
movd %eax, %xmm0
pinsrw $0x1, 0x2(%rdx), %xmm0
pavgw %xmm1, %xmm0
movd %xmm0, (%rdx)
cmpb $0x1, 0xe(%r15)
jne 0x2431
movb 0x10(%rsp), %r13b
xorl %esi, %esi
movb $0x1, %bpl
cmpb $0x0, 0x30(%rsp)
je 0x265a
jmp 0x4f2a
movzbl 0x11(%r15), %eax
leal 0x6(%rax), %ecx
shrl %ecx
testq %rbp, %rbp
je 0x2f73
movl %ebp, %edx
addq %rdx, %rdx
movzbl 0x11(%r15,%rdx), %eax
movl %eax, 0x20(%rsp)
movzwl %cx, %ebp
addl %r13d, %ebp
movb 0x10(%r15,%rdx), %al
movb %al, 0x38(%rsp)
movq %r15, %rdi
addq $0x12, %rdi
movq 0x30(%rsp), %rsi
movl %ecx, %r13d
callq 0x11e0
movl 0x20(%rsp), %esi
movl %r13d, %ecx
movb 0x38(%rsp), %al
movb %al, 0x10(%r15)
movb %sil, 0x11(%r15)
movl %ebp, %r13d
jmp 0x2f7b
movzbl 0x11(%r15), %eax
movq %r15, %rsi
leal 0x6(%rax), %r15d
shrl %r15d
testq %r13, %r13
je 0x3020
movl %r13d, %edx
addq %rdx, %rdx
movzbl 0x11(%rsi,%rdx), %eax
movl %eax, 0x8(%rsp)
movzwl %r15w, %r13d
addl %ebp, %r13d
movb 0x10(%rsi,%rdx), %al
movb %al, 0x58(%rsp)
movq %rsi, %rbp
movq %rsi, %rdi
addq $0x12, %rdi
movq 0x20(%rsp), %rsi
callq 0x11e0
movl 0x8(%rsp), %edi
movq %rbp, %rsi
movb 0x58(%rsp), %al
movb %al, 0x10(%rbp)
movb %dil, 0x11(%rbp)
movl %r13d, %ebp
jmp 0x3029
xorl %ebp, %ebp
incb %al
movb %al, 0xe(%r13)
movzbl %al, %eax
leaq -0x2(,%rax,2), %rdx
leaq 0x10(%r13), %rsi
movq %r13, %rdi
addq $0x12, %rdi
callq 0x11e0
movl 0x2c(%rsp), %eax
movb %al, 0x10(%r13)
movb $0x0, 0x11(%r13)
movzwl (%r15), %eax
movq 0x200010(%r15,%rax,8), %rax
movb 0x7(%rax), %sil
movzbl 0x6(%rax), %ecx
movl %ecx, %edx
shrl $0x5, %edx
movl $0x1, %edi
shll %cl, %edi
andl 0x80(%rsp,%rdx,4), %edi
movl %edi, 0x20(%rsp)
movzwl 0x2(%rax), %r11d
testl %ebp, %ebp
movl %ebp, 0x38(%rsp)
movb %sil, 0x30(%rsp)
je 0x25f5
testw %r11w, %r11w
je 0x27bc
xorl %r10d, %r10d
movl $0x0, 0x10(%rsp)
xorl %r9d, %r9d
xorl %esi, %esi
xorl %ebp, %ebp
movq 0x18(%rsp), %rdx
movzwl (%rdx), %ecx
movq 0x200010(%rdx,%rcx,8), %r15
movzbl 0x7(%r15,%r10,2), %r8d
movzbl 0x6(%r15,%r10,2), %ecx
movl $0x1, %r13d
shll %cl, %r13d
cmpl %ecx, 0x54(%rsp)
setne %dl
movl %r8d, %edi
testb $0x1, %dl
jne 0x2558
xorl %edi, %edi
movl %ecx, %edx
shrl $0x5, %edx
andl 0x80(%rsp,%rdx,4), %r13d
movl %r13d, %edx
orl 0x10(%rsp), %edx
je 0x2570
xorl %edi, %edi
movl %r8d, %edx
testl %r13d, %r13d
je 0x257a
xorl %edx, %edx
cmpl %ecx, 0x54(%rsp)
jne 0x25d8
movb 0x7(%r15), %cl
movb %cl, 0x7(%r15,%r10,2)
movq 0x18(%rsp), %r11
movzwl (%r11), %ecx
movq 0x200010(%r11,%rcx,8), %rcx
movb %r8b, 0x7(%rcx)
movzwl (%r11), %ecx
movq 0x200010(%r11,%rcx,8), %rcx
movb 0x6(%rcx,%r10,2), %r8b
movb 0x6(%rcx), %r9b
movb %r9b, 0x6(%rcx,%r10,2)
movzwl (%r11), %ecx
movq 0x200010(%r11,%rcx,8), %rcx
movb %r8b, 0x6(%rcx)
movzwl 0x2(%rax), %r11d
movl $0x1, 0x10(%rsp)
movl %r10d, %r9d
addl %esi, %edi
addl %ebp, %edx
incq %r10
movzwl %r11w, %ecx
movl %edi, %esi
movl %edx, %ebp
cmpq %rcx, %r10
jb 0x2522
jmp 0x2880
testw %r11w, %r11w
je 0x2812
movzwl %r11w, %ecx
xorl %r9d, %r9d
xorl %edi, %edi
movl 0x2c(%rsp), %edx
cmpb %dl, 0x6(%rax,%r9,2)
je 0x2833
movzbl 0x7(%rax,%r9,2), %edx
addl %edx, %edi
incq %r9
cmpq %r9, %rcx
jne 0x2608
jmp 0x2814
xorl %ebp, %ebp
incb %al
movb %al, 0xe(%r15)
movzbl %al, %eax
leaq -0x2(,%rax,2), %rdx
leaq 0x10(%r15), %rsi
movq %r15, %rdi
addq $0x12, %rdi
callq 0x11e0
movb %r13b, 0x10(%r15)
movb $0x0, 0x11(%r15)
movl %ebp, %esi
movq 0x18(%rsp), %rbp
movzwl (%rbp), %eax
movq 0x200010(%rbp,%rax,8), %rax
movb 0x7(%rax), %r8b
movzbl 0x6(%rax), %ecx
movl %ecx, %edx
shrl $0x5, %edx
movl $0x1, %edi
shll %cl, %edi
andl 0x80(%rsp,%rdx,4), %edi
movl %edi, 0x20(%rsp)
movzwl 0x2(%rax), %r11d
testl %esi, %esi
movl %esi, 0x58(%rsp)
movb %r8b, 0x30(%rsp)
je 0x278c
testw %r11w, %r11w
je 0x27d0
xorl %r10d, %r10d
movl $0x0, 0x8(%rsp)
xorl %r9d, %r9d
xorl %esi, %esi
xorl %r13d, %r13d
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %r15
movzbl 0x7(%r15,%r10,2), %r8d
movzbl 0x6(%r15,%r10,2), %ecx
movl $0x1, %ebp
shll %cl, %ebp
cmpb 0x10(%rsp), %cl
setne %dl
movl %r8d, %edi
testb $0x1, %dl
jne 0x26ed
xorl %edi, %edi
movl %ecx, %edx
shrl $0x3, %edx
andl $0x1c, %edx
andl 0x80(%rsp,%rdx), %ebp
movl %ebp, %edx
orl 0x8(%rsp), %edx
je 0x2706
xorl %edi, %edi
movl %r8d, %edx
testl %ebp, %ebp
je 0x270f
xorl %edx, %edx
cmpb 0x10(%rsp), %cl
movq 0x18(%rsp), %rbp
jne 0x276d
movb 0x7(%r15), %cl
movb %cl, 0x7(%r15,%r10,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %r8b, 0x7(%rcx)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb 0x6(%rcx,%r10,2), %r8b
movb 0x6(%rcx), %r9b
movb %r9b, 0x6(%rcx,%r10,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %r8b, 0x6(%rcx)
movzwl 0x2(%rax), %r11d
movl $0x1, 0x8(%rsp)
movl %r10d, %r9d
addl %esi, %edi
addl %r13d, %edx
incq %r10
movzwl %r11w, %ecx
movl %edi, %esi
movl %edx, %r13d
cmpq %rcx, %r10
jb 0x26bd
jmp 0x2c11
testw %r11w, %r11w
je 0x2821
movzwl %r11w, %ecx
xorl %r9d, %r9d
xorl %edi, %edi
cmpb %r13b, 0x6(%rax,%r9,2)
je 0x2bc4
movzbl 0x7(%rax,%r9,2), %edx
addl %edx, %edi
incq %r9
cmpq %r9, %rcx
jne 0x279f
jmp 0x2823
xorl %edx, %edx
xorl %edi, %edi
xorl %r9d, %r9d
movl $0x0, 0x10(%rsp)
jmp 0x2880
xorl %edx, %edx
xorl %edi, %edi
xorl %r9d, %r9d
movl $0x0, 0x8(%rsp)
jmp 0x2c11
movl %eax, %ebp
movq 0xb80b(%rip), %rax      # 0xdff8
movq (%rax), %rdi
movq %rsi, %r15
leaq 0x88d6(%rip), %rsi      # 0xb0d0
movl %ebp, %edx
xorl %eax, %eax
callq 0x1140
movq %r15, %rsi
movl %ebp, 0xdc(%rsp)
jmp 0x1b36
xorl %edi, %edi
xorl %r9d, %r9d
movl $0x0, 0x10(%rsp)
jmp 0x287d
xorl %edi, %edi
xorl %r9d, %r9d
movl $0x0, 0x8(%rsp)
jmp 0x2c0e
movb 0x7(%rax,%r9,2), %cl
movb %sil, 0x7(%rax,%r9,2)
movzwl (%r15), %edx
movq 0x200010(%r15,%rdx,8), %rdx
movb %cl, 0x7(%rdx)
movzwl (%r15), %ecx
movq 0x200010(%r15,%rcx,8), %rcx
movb 0x6(%rcx,%r9,2), %dl
movb 0x6(%rcx), %sil
movb %sil, 0x6(%rcx,%r9,2)
movzwl (%r15), %ecx
movq 0x200010(%r15,%rcx,8), %rcx
movb %dl, 0x6(%rcx)
movl $0x1, 0x10(%rsp)
movzwl (%rax), %edx
movzbl 0x30(%rsp), %ecx
cmpl $0x0, 0x20(%rsp)
movl $0x0, %r8d
cmovnel %r8d, %ecx
movzwl 0x4(%rax), %esi
cmpw $0x1, %si
adcl $0x0, %esi
addl %ecx, %edx
cmpl $0x0, 0x10(%rsp)
je 0x28db
testl %r9d, %r9d
movl $0x0, %eax
cmovgl %ecx, %eax
cmovnel %r8d, %ecx
addl %eax, %edi
movq 0x18(%rsp), %r15
movzwl (%r15), %eax
movq 0x200010(%r15,%rax,8), %rax
movzbl 0x7(%rax), %r8d
addl %ecx, %r8d
movl 0x38(%rsp), %ebp
jmp 0x297b
movzwl 0x2(%rax), %edi
movq 0x18(%rsp), %r15
movzwl (%r15), %r8d
testq %rdi, %rdi
movl 0x38(%rsp), %ebp
je 0x2923
movq 0x200010(%r15,%r8,8), %r9
xorl %r10d, %r10d
movzbl 0x6(%r9,%r10,2), %ecx
movl $0x1, %r11d
shll %cl, %r11d
shrl $0x5, %ecx
orl %r11d, 0x80(%rsp,%rcx,4)
movl $0x1, %ebp
incq %r10
cmpq %r10, %rdi
jne 0x28fc
movq 0x200010(%r15,%r8,8), %rcx
movb 0x7(%rcx), %r8b
movb %r8b, 0x7(%rcx,%rdi,2)
movzwl (%r15), %ecx
movq 0x200010(%r15,%rcx,8), %rcx
movb 0x6(%rcx), %dil
movzwl 0x2(%rax), %r8d
movb %dil, 0x6(%rcx,%r8,2)
movzwl (%r15), %ecx
movq 0x200010(%r15,%rcx,8), %rcx
movl 0x2c(%rsp), %edi
movb %dil, 0x6(%rcx)
movzwl (%r15), %ecx
movq 0x200010(%r15,%rcx,8), %rcx
movb $0x0, 0x7(%rcx)
incw 0x2(%rax)
movl %esi, %r8d
movl %edx, %edi
addl %esi, %edx
movzwl %dx, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %di, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %r8w, %r14d
imull %eax, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x29bb
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x2a13
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x29f8
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x8630(%rip), %xmm0     # 0xb008
addsd 0x8630(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x299b
movzwl (%r15), %eax
cmpl $0x0, 0x10(%rsp)
jne 0x3b25
movzbl %al, %eax
imulq $0x206, %rax, %rdx      # imm = 0x206
movq 0x60(%rsp), %rax
leaq (%rax,%rdx), %r8
movzbl 0x6(%rax,%rdx), %edi
movl $0x1, %esi
movl %edi, %ecx
shll %cl, %esi
movl %esi, 0x58(%rsp)
movb 0x7(%rax,%rdx), %r10b
movzwl 0x2(%rax,%rdx), %esi
movzwl %si, %r9d
testl %ebp, %ebp
movq %rdx, 0xb8(%rsp)
movb %r10b, 0x48(%rsp)
je 0x2b75
testw %si, %si
je 0x30ce
movl %esi, 0x78(%rsp)
movq %r8, 0xa8(%rsp)
movl %ebp, 0x38(%rsp)
addq %rdx, %rax
addq $0x7, %rax
movq %rax, 0x20(%rsp)
movq 0xc8(%rsp), %rax
addq %rdx, %rax
movq %rdi, %rcx
xorl %edi, %edi
movq %rcx, 0xb0(%rsp)
movb %cl, 0x30(%rsp)
movl %r10d, %esi
movl $0x0, 0x10(%rsp)
xorl %r10d, %r10d
xorl %r11d, %r11d
xorl %edx, %edx
movzbl (%rax,%rdi,2), %ebp
movzbl -0x1(%rax,%rdi,2), %ecx
movl $0x1, %r13d
shll %cl, %r13d
cmpl %ecx, 0x54(%rsp)
setne %r15b
movl %ebp, %r8d
testb $0x1, %r15b
jne 0x2ae4
xorl %r8d, %r8d
movl %ecx, %r15d
shrl $0x5, %r15d
andl 0x80(%rsp,%r15,4), %r13d
movl %r13d, %r15d
orl 0x10(%rsp), %r15d
je 0x2b00
xorl %r8d, %r8d
movl %ebp, %r15d
testl %r13d, %r13d
je 0x2b0b
xorl %r15d, %r15d
cmpl %ecx, 0x54(%rsp)
jne 0x2b3c
movb %sil, (%rax,%rdi,2)
movq 0x20(%rsp), %r10
movb %bpl, (%r10)
movb 0x30(%rsp), %sil
movb %sil, -0x1(%rax,%rdi,2)
movb %cl, -0x1(%r10)
movl $0x1, 0x10(%rsp)
movb %cl, 0x30(%rsp)
movl %ebp, %esi
movl %edi, %r10d
addl %r11d, %r8d
addl %edx, %r15d
movl %r8d, %r11d
movl %r15d, %edx
incq %rdi
cmpq %r9, %rdi
jb 0x2abe
movq 0x18(%rsp), %r15
movl 0x38(%rsp), %ebp
movq 0xa8(%rsp), %r8
movq 0xb0(%rsp), %rdi
movl %esi, %r9d
jmp 0x317f
testw %si, %si
movl %esi, 0x78(%rsp)
je 0x3112
movq 0xc8(%rsp), %rax
addq %rdx, %rax
xorl %r10d, %r10d
xorl %r11d, %r11d
movl 0x2c(%rsp), %ecx
cmpb %cl, -0x1(%rax,%r10,2)
je 0x3144
movzbl (%rax,%r10,2), %ecx
addl %ecx, %r11d
incq %r10
cmpq %r10, %r9
jne 0x2b93
xorl %r10d, %r10d
movb %dil, 0x30(%rsp)
movb 0x48(%rsp), %r9b
jmp 0x3120
movb 0x7(%rax,%r9,2), %cl
movb %r8b, 0x7(%rax,%r9,2)
movzwl (%rbp), %edx
movq 0x200010(%rbp,%rdx,8), %rdx
movb %cl, 0x7(%rdx)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb 0x6(%rcx,%r9,2), %dl
movb 0x6(%rcx), %sil
movb %sil, 0x6(%rcx,%r9,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %dl, 0x6(%rcx)
movl $0x1, 0x8(%rsp)
movzwl (%rax), %edx
movzbl 0x30(%rsp), %ecx
cmpl $0x0, 0x20(%rsp)
movl $0x0, %r8d
cmovnel %r8d, %ecx
movzwl 0x4(%rax), %esi
cmpw $0x1, %si
adcl $0x0, %esi
addl %ecx, %edx
cmpl $0x0, 0x8(%rsp)
je 0x2c6d
testl %r9d, %r9d
movl $0x0, %eax
cmovgl %ecx, %eax
cmovnel %r8d, %ecx
addl %eax, %edi
movzwl (%rbp), %eax
movq 0x200010(%rbp,%rax,8), %rax
movzbl 0x7(%rax), %r8d
addl %ecx, %r8d
movq 0x68(%rsp), %r15
movb 0x10(%rsp), %r13b
jmp 0x2d13
movzwl 0x2(%rax), %edi
movzwl (%rbp), %r8d
testq %rdi, %rdi
movq 0x68(%rsp), %r15
movb 0x10(%rsp), %r13b
movl 0x58(%rsp), %ecx
je 0x2cbb
movq 0x200010(%rbp,%r8,8), %r9
xorl %r10d, %r10d
movzbl 0x6(%r9,%r10,2), %ecx
movl $0x1, %r11d
shll %cl, %r11d
shrl $0x5, %ecx
orl %r11d, 0x80(%rsp,%rcx,4)
movl $0x1, %ecx
incq %r10
cmpq %r10, %rdi
jne 0x2c94
movl %ecx, 0x58(%rsp)
movq 0x200010(%rbp,%r8,8), %rcx
movb 0x7(%rcx), %r8b
movb %r8b, 0x7(%rcx,%rdi,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb 0x6(%rcx), %dil
movzwl 0x2(%rax), %r8d
movb %dil, 0x6(%rcx,%r8,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %r13b, 0x6(%rcx)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb $0x0, 0x7(%rcx)
incw 0x2(%rax)
movl %esi, %r8d
movl %edx, %edi
addl %esi, %edx
movzwl %dx, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %di, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %r8w, %r14d
imull %eax, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x2d53
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x2dab
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x2d90
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x8298(%rip), %xmm0     # 0xb008
addsd 0x8298(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x2d33
movzwl (%rbp), %eax
cmpl $0x0, 0x8(%rsp)
jne 0x4e6f
movzbl %al, %eax
imulq $0x206, %rax, %rdx      # imm = 0x206
movq 0x60(%rsp), %rax
leaq (%rax,%rdx), %r10
movzbl 0x6(%rax,%rdx), %ecx
movl $0x1, %esi
shll %cl, %esi
movb 0x7(%rax,%rdx), %r9b
movzwl 0x2(%rax,%rdx), %r8d
movzwl %r8w, %edi
cmpl $0x0, 0x58(%rsp)
movq %rdx, 0xb8(%rsp)
je 0x2f29
testw %r8w, %r8w
je 0x30f3
movl %esi, 0x78(%rsp)
movl %r8d, 0xb0(%rsp)
movq %r10, 0xa8(%rsp)
movl %r9d, %r8d
leaq (%rax,%rdx), %r9
addq $0x7, %r9
movq 0xc8(%rsp), %rax
leaq (%rax,%rdx), %rsi
xorl %r10d, %r10d
movq %rcx, 0xf0(%rsp)
movb %cl, 0x20(%rsp)
movb %r8b, 0x77(%rsp)
movb %r8b, 0x30(%rsp)
movl $0x0, 0x8(%rsp)
xorl %eax, %eax
xorl %ebp, %ebp
xorl %edx, %edx
movzbl (%rsi,%r10,2), %r13d
movzbl -0x1(%rsi,%r10,2), %ecx
movl $0x1, %r11d
shll %cl, %r11d
cmpb 0x10(%rsp), %cl
setne %r15b
movl %r13d, %r8d
testb $0x1, %r15b
jne 0x2e7f
xorl %r8d, %r8d
movl %ecx, %r15d
shrl $0x3, %r15d
andl $0x1c, %r15d
andl 0x80(%rsp,%r15), %r11d
movl %r11d, %r15d
orl 0x8(%rsp), %r15d
je 0x2e9f
xorl %r8d, %r8d
movl %r13d, %r15d
testl %r11d, %r11d
je 0x2eaa
xorl %r15d, %r15d
movb 0x10(%rsp), %r11b
cmpb %r11b, %cl
jne 0x2ee1
movb 0x30(%rsp), %al
movb %al, (%rsi,%r10,2)
movb %r13b, (%r9)
movb 0x20(%rsp), %al
movb %al, -0x1(%rsi,%r10,2)
movb %r11b, -0x1(%r9)
movl $0x1, 0x8(%rsp)
movb %r11b, 0x20(%rsp)
movb %r13b, 0x30(%rsp)
movl %r10d, %eax
addl %ebp, %r8d
addl %edx, %r15d
movl %r8d, %ebp
movl %r15d, %edx
incq %r10
cmpq %rdi, %r10
jb 0x2e57
movq 0x68(%rsp), %r15
movb 0x10(%rsp), %r13b
movq 0xa8(%rsp), %r10
movl 0xb0(%rsp), %r8d
movq 0xf0(%rsp), %rcx
movl 0x78(%rsp), %esi
movb 0x77(%rsp), %r9b
jmp 0x3491
testw %r8w, %r8w
je 0x312a
movl %r9d, %r11d
movq 0xc8(%rsp), %rax
leaq (%rax,%rdx), %r9
xorl %eax, %eax
xorl %ebp, %ebp
cmpb %r13b, -0x1(%r9,%rax,2)
je 0x344c
movzbl (%r9,%rax,2), %edx
addl %edx, %ebp
incq %rax
cmpq %rax, %rdi
jne 0x2f46
xorl %eax, %eax
movb %cl, 0x20(%rsp)
movl %r11d, %r9d
movb %r11b, 0x30(%rsp)
jmp 0x3137
movzwl %ax, %eax
movzwl %cx, %esi
addl %eax, %esi
addw 0xc(%r15), %cx
movzwl %cx, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %r13w, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %si, %r14d
imull %eax, %r14d
movl %ecx, %r12d
movq 0x18(%rsp), %r15
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x2fc8
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x216f
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x3005
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x8023(%rip), %xmm0     # 0xb008
addsd 0x8023(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x2fa4
movzwl %ax, %eax
movzwl %r15w, %edi
addl %eax, %edi
addw 0xc(%rsi), %r15w
movzwl %r15w, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %bp, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %di, %r14d
imull %eax, %r14d
movl %ecx, %r12d
movb 0x10(%rsp), %r13b
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x3076
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x23bc
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x30b3
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x7f75(%rip), %xmm0     # 0xb008
addsd 0x7f75(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x3052
movl $0x0, 0x78(%rsp)
movb %dil, 0x30(%rsp)
movl %r10d, %r9d
xorl %edx, %edx
xorl %r11d, %r11d
xorl %r10d, %r10d
movl $0x0, 0x10(%rsp)
jmp 0x317f
xorl %r8d, %r8d
movb %cl, 0x20(%rsp)
movb %r9b, 0x30(%rsp)
xorl %edx, %edx
xorl %ebp, %ebp
xorl %eax, %eax
movl $0x0, 0x8(%rsp)
jmp 0x3491
xorl %r11d, %r11d
movb %dil, 0x30(%rsp)
movl %r10d, %r9d
xorl %r10d, %r10d
movl $0x0, 0x10(%rsp)
jmp 0x317b
xorl %ebp, %ebp
movb %cl, 0x20(%rsp)
movb %r9b, 0x30(%rsp)
xorl %eax, %eax
movl $0x0, 0x8(%rsp)
jmp 0x348d
movb (%rax,%r10,2), %r9b
movb 0x48(%rsp), %cl
movb %cl, (%rax,%r10,2)
movq 0x60(%rsp), %rcx
movq 0xb8(%rsp), %rdx
movb %r9b, 0x7(%rcx,%rdx)
movb %dil, -0x1(%rax,%r10,2)
movl 0x2c(%rsp), %eax
movb %al, 0x6(%rcx,%rdx)
movl $0x1, 0x10(%rsp)
movb %al, 0x30(%rsp)
movzwl (%r8), %edx
shrl $0x5, %edi
movl 0x58(%rsp), %eax
andl 0x80(%rsp,%rdi,4), %eax
movzbl 0x48(%rsp), %esi
movl $0x0, %edi
cmovnel %edi, %esi
movzwl 0x4(%r8), %eax
cmpw $0x1, %ax
adcl $0x0, %eax
addl %esi, %edx
cmpl $0x0, 0x10(%rsp)
je 0x31c8
testl %r10d, %r10d
movl $0x0, %ecx
cmovgl %esi, %ecx
cmovnel %edi, %esi
addl %ecx, %r11d
movzbl %r9b, %ecx
addl %esi, %ecx
jmp 0x3246
movl %r9d, %r13d
movq %r8, %r10
movl 0x78(%rsp), %ecx
movzwl %cx, %esi
testw %cx, %cx
movq 0xb8(%rsp), %r11
je 0x3217
movq 0xe0(%rsp), %rcx
leaq (%rcx,%r11), %rdi
xorl %r8d, %r8d
movzbl (%rdi,%r8,2), %ecx
movl $0x1, %r9d
shll %cl, %r9d
shrl $0x5, %ecx
orl %r9d, 0x80(%rsp,%rcx,4)
movl $0x1, %ebp
incq %r8
cmpq %r8, %rsi
jne 0x31f1
movb %r13b, 0x7(%r10,%rsi,2)
movb 0x30(%rsp), %cl
movb %cl, 0x6(%r10,%rsi,2)
movl 0x2c(%rsp), %ecx
movq 0x60(%rsp), %rdi
movb %cl, 0x6(%rdi,%r11)
movb $0x0, 0x7(%rdi,%r11)
leal 0x1(%rsi), %ecx
movw %cx, 0x2(%r10)
movl %eax, %ecx
movl %edx, %r11d
addl %eax, %edx
movzwl %dx, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movzwl %r11w, %edx
imull %eax, %edx
addl %r12d, %edx
movzwl %cx, %r14d
imull %eax, %r14d
movl %edx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x3287
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x32df
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x32c4
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x7d64(%rip), %xmm0     # 0xb008
addsd 0x7d64(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x3267
cmpl $0x0, 0x10(%rsp)
jne 0x3a44
movzbl 0x2a0616(%r15), %ecx
movl $0x1, %esi
shll %cl, %esi
movb 0x2a0617(%r15), %r13b
movzwl 0x2a0612(%r15), %edx
testl %ebp, %ebp
je 0x3408
testq %rdx, %rdx
je 0x3757
movl %esi, 0x20(%rsp)
movl %r13d, %r9d
xorl %r13d, %r13d
movq %rcx, 0x30(%rsp)
movb %cl, 0x10(%rsp)
movb %r9b, 0x38(%rsp)
xorl %ebp, %ebp
xorl %r8d, %r8d
xorl %r10d, %r10d
xorl %edi, %edi
movq 0x18(%rsp), %rcx
movzbl 0x2a0617(%rcx,%r13,2), %eax
movzbl 0x2a0616(%rcx,%r13,2), %ecx
movl $0x1, %r11d
shll %cl, %r11d
cmpl %ecx, 0x54(%rsp)
setne %r15b
movl %eax, %esi
testb $0x1, %r15b
jne 0x336d
xorl %esi, %esi
movl %ecx, %r15d
shrl $0x5, %r15d
andl 0x80(%rsp,%r15,4), %r11d
movl %r11d, %r15d
orl %ebp, %r15d
je 0x3386
xorl %esi, %esi
movl %eax, %r15d
testl %r11d, %r11d
je 0x3391
xorl %r15d, %r15d
cmpl %ecx, 0x54(%rsp)
jne 0x33ce
movq 0x18(%rsp), %r8
movb %r9b, 0x2a0617(%r8,%r13,2)
movb %al, 0x2a0617(%r8)
movb 0x10(%rsp), %r9b
movb %r9b, 0x2a0616(%r8,%r13,2)
movb %cl, 0x2a0616(%r8)
movl $0x1, %ebp
movb %cl, 0x10(%rsp)
movl %eax, %r9d
movl %r13d, %r8d
addl %r10d, %esi
addl %edi, %r15d
movl %esi, %r10d
movl %r15d, %edi
incq %r13
cmpq %r13, %rdx
jne 0x333b
movq 0x18(%rsp), %rax
movl 0x2c(%rsp), %r11d
movq 0x68(%rsp), %r15
movq 0x30(%rsp), %rcx
movl 0x20(%rsp), %esi
movb 0x38(%rsp), %r13b
jmp 0x3806
testq %rdx, %rdx
je 0x3796
xorl %r8d, %r8d
xorl %r10d, %r10d
movl 0x2c(%rsp), %eax
cmpb %al, 0x2a0616(%r15,%r8,2)
je 0x37c0
movzbl 0x2a0617(%r15,%r8,2), %eax
addl %eax, %r10d
incq %r8
cmpq %r8, %rdx
jne 0x3417
xorl %r8d, %r8d
movb %cl, 0x10(%rsp)
movl %r13d, %r9d
jmp 0x37a3
movb (%r9,%rax,2), %dil
movb %r11b, (%r9,%rax,2)
movq 0x60(%rsp), %rdx
movl %esi, 0x78(%rsp)
movq 0xb8(%rsp), %rsi
movb %dil, 0x30(%rsp)
movb %dil, 0x7(%rdx,%rsi)
movb %cl, -0x1(%r9,%rax,2)
movl %r11d, %r9d
movb %r13b, 0x6(%rdx,%rsi)
movl 0x78(%rsp), %esi
movl $0x1, 0x8(%rsp)
movb %r13b, 0x20(%rsp)
movzwl (%r10), %edx
shrl $0x5, %ecx
andl 0x80(%rsp,%rcx,4), %esi
movzbl %r9b, %edi
movl $0x0, %ecx
cmovnel %ecx, %edi
movzwl 0x4(%r10), %esi
cmpw $0x1, %si
adcl $0x0, %esi
addl %edi, %edx
cmpl $0x0, 0x8(%rsp)
je 0x34d4
testl %eax, %eax
movl $0x0, %eax
cmovgl %edi, %eax
cmovnel %ecx, %edi
addl %eax, %ebp
movzbl 0x30(%rsp), %ecx
addl %edi, %ecx
jmp 0x3550
movzwl %r8w, %eax
testw %r8w, %r8w
movl 0x58(%rsp), %ecx
movq 0xb8(%rsp), %r11
je 0x351f
movq 0xe0(%rsp), %rcx
leaq (%rcx,%r11), %rdi
xorl %r8d, %r8d
movzbl (%rdi,%r8,2), %ecx
movl $0x1, %r9d
shll %cl, %r9d
shrl $0x5, %ecx
orl %r9d, 0x80(%rsp,%rcx,4)
movl $0x1, %ecx
incq %r8
cmpq %r8, %rax
jne 0x34f9
movl %ecx, 0x58(%rsp)
movb 0x30(%rsp), %cl
movb %cl, 0x7(%r10,%rax,2)
movb 0x20(%rsp), %cl
movb %cl, 0x6(%r10,%rax,2)
movq 0x60(%rsp), %rcx
movb %r13b, 0x6(%rcx,%r11)
movb $0x0, 0x7(%rcx,%r11)
incl %eax
movw %ax, 0x2(%r10)
movl %esi, %ecx
movl %edx, %ebp
addl %esi, %edx
movzwl %dx, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movzwl %bp, %edx
imull %eax, %edx
addl %r12d, %edx
movzwl %cx, %r14d
imull %eax, %r14d
movl %edx, %r12d
movq 0x18(%rsp), %rbp
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x3595
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x35ed
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x35d2
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x7a56(%rip), %xmm0     # 0xb008
addsd 0x7a56(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x3575
cmpl $0x0, 0x8(%rsp)
jne 0x4d92
movzbl 0x2a0616(%rbp), %ecx
movl $0x1, %esi
shll %cl, %esi
movb 0x2a0617(%rbp), %dil
movzwl 0x2a0612(%rbp), %edx
cmpl $0x0, 0x58(%rsp)
movb %dil, 0x30(%rsp)
je 0x371a
testq %rdx, %rdx
je 0x3779
movl %esi, 0x58(%rsp)
xorl %r13d, %r13d
movq %rcx, 0x20(%rsp)
movb %cl, 0x8(%rsp)
movl %edi, %r9d
xorl %ebp, %ebp
xorl %r8d, %r8d
xorl %r10d, %r10d
xorl %edi, %edi
movq 0x18(%rsp), %rcx
movzbl 0x2a0617(%rcx,%r13,2), %eax
movzbl 0x2a0616(%rcx,%r13,2), %ecx
movl $0x1, %r11d
shll %cl, %r11d
cmpb 0x10(%rsp), %cl
setne %r15b
movl %eax, %esi
testb $0x1, %r15b
jne 0x367c
xorl %esi, %esi
movl %ecx, %r15d
shrl $0x3, %r15d
andl $0x1c, %r15d
andl 0x80(%rsp,%r15), %r11d
movl %r11d, %r15d
orl %ebp, %r15d
je 0x3699
xorl %esi, %esi
movl %eax, %r15d
testl %r11d, %r11d
je 0x36a4
xorl %r15d, %r15d
movb 0x10(%rsp), %r11b
cmpb %r11b, %cl
jne 0x36e5
movq 0x18(%rsp), %rcx
movb %r9b, 0x2a0617(%rcx,%r13,2)
movb %al, 0x2a0617(%rcx)
movb 0x8(%rsp), %r8b
movb %r8b, 0x2a0616(%rcx,%r13,2)
movb %r11b, 0x2a0616(%rcx)
movl $0x1, %ebp
movb %r11b, 0x8(%rsp)
movl %eax, %r9d
movl %r13d, %r8d
addl %r10d, %esi
addl %edi, %r15d
movl %esi, %r10d
movl %r15d, %edi
incq %r13
cmpq %r13, %rdx
jne 0x364a
movq 0x18(%rsp), %rax
movq 0x68(%rsp), %r15
movb 0x10(%rsp), %r13b
movq 0x20(%rsp), %rcx
movl 0x58(%rsp), %esi
jmp 0x4b6f
testq %rdx, %rdx
je 0x37ac
xorl %r8d, %r8d
xorl %r10d, %r10d
cmpb %r13b, 0x2a0616(%rbp,%r8,2)
je 0x4b33
movzbl 0x2a0617(%rbp,%r8,2), %eax
addl %eax, %r10d
incq %r8
cmpq %r8, %rdx
jne 0x3729
xorl %r8d, %r8d
movb %cl, 0x8(%rsp)
movl %edi, %r9d
jmp 0x37b9
xorl %edx, %edx
movb %cl, 0x10(%rsp)
movl %r13d, %r9d
xorl %edi, %edi
xorl %r10d, %r10d
xorl %r8d, %r8d
xorl %ebp, %ebp
movq 0x18(%rsp), %rax
movl 0x2c(%rsp), %r11d
jmp 0x3801
xorl %edx, %edx
movb %cl, 0x8(%rsp)
movl %edi, %r9d
xorl %edi, %edi
xorl %r10d, %r10d
xorl %r8d, %r8d
xorl %ebp, %ebp
movq 0x18(%rsp), %rax
jmp 0x4b6f
xorl %r10d, %r10d
movb %cl, 0x10(%rsp)
movl %r13d, %r9d
xorl %r8d, %r8d
xorl %ebp, %ebp
movl 0x2c(%rsp), %r11d
jmp 0x37f5
xorl %r10d, %r10d
movb %cl, 0x8(%rsp)
movl %edi, %r9d
xorl %r8d, %r8d
xorl %ebp, %ebp
jmp 0x4b63
movb 0x2a0617(%r15,%r8,2), %r9b
movb %r13b, 0x2a0617(%r15,%r8,2)
movb %r9b, 0x2a0617(%r15)
movb %cl, 0x2a0616(%r15,%r8,2)
movl 0x2c(%rsp), %r11d
movb %r11b, 0x2a0616(%r15)
movl $0x1, %ebp
movb %r11b, 0x10(%rsp)
movq 0x18(%rsp), %rax
movzwl 0x2a0610(%rax), %edi
movq 0x68(%rsp), %r15
shrl $0x5, %ecx
andl 0x80(%rsp,%rcx,4), %esi
movzbl %r13b, %ecx
movl $0x0, %esi
cmovnel %esi, %ecx
movzwl 0x2a0614(%rax), %eax
cmpw $0x1, %ax
adcl $0x0, %eax
addl %ecx, %edi
testl %ebp, %ebp
je 0x3849
testl %r8d, %r8d
movl $0x0, %edx
cmovgl %ecx, %edx
cmovnel %esi, %ecx
addl %edx, %r10d
movzbl %r9b, %esi
addl %ecx, %esi
jmp 0x38a9
movzwl %dx, %esi
testw %dx, %dx
je 0x3874
xorl %edx, %edx
movzbl (%r15,%rdx,2), %ecx
movl $0x1, %r8d
shll %cl, %r8d
shrl $0x5, %ecx
orl %r8d, 0x80(%rsp,%rcx,4)
incq %rdx
cmpq %rdx, %rsi
jne 0x3853
movq 0x18(%rsp), %rdx
movb %r9b, 0x2a0617(%rdx,%rsi,2)
movb 0x10(%rsp), %cl
movb %cl, 0x2a0616(%rdx,%rsi,2)
movb %r11b, 0x2a0616(%rdx)
movb $0x0, 0x2a0617(%rdx)
leal 0x1(%rsi), %ecx
movw %cx, 0x2a0612(%rdx)
movl %eax, %esi
movl %edi, %r10d
addl %eax, %edi
movzwl %di, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %r10w, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %si, %r14d
imull %eax, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x38ea
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x3942
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x3927
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x7701(%rip), %xmm0     # 0xb008
addsd 0x7701(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x38ca
testl %ebp, %ebp
je 0x4679
movq 0x18(%rsp), %r15
movb 0x2a0617(%r15), %al
leal 0x1(%rax), %ecx
movb %cl, 0x2a0617(%r15)
movl 0x2c(%rsp), %edx
movb %dl, 0x2a0616(%r15)
incw 0x2a0610(%r15)
xorl %edx, %edx
cmpb $0x2, %cl
sete %dl
cmpb $0x1, %al
sbbw $0x0, %dx
negl %edx
addw %dx, 0x2a0614(%r15)
cmpb $-0x5, %cl
jb 0x3a44
movl $0x0, 0x2a0610(%r15)
movw $0x0, 0x2a0614(%r15)
xorl %edx, %edx
xorl %ecx, %ecx
xorl %eax, %eax
movslq %edx, %rsi
movq 0x68(%rsp), %r9
movb 0x1(%r9,%rsi,2), %dil
movl %edi, %r8d
shrb %r8b
movslq %ecx, %rdx
movb %r8b, 0x1(%r9,%rdx,2)
cmpb $0x2, %dil
jae 0x39d4
incl %eax
jmp 0x3a17
movb 0x2a0616(%r15,%rsi,2), %cl
movb %cl, 0x2a0616(%r15,%rdx,2)
incw 0x2a0612(%r15)
movzbl 0x2a0617(%r15,%rdx,2), %ecx
addw %cx, 0x2a0610(%r15)
xorl %ecx, %ecx
cmpb $0x1, 0x2a0617(%r15,%rdx,2)
sete %cl
addw %cx, 0x2a0614(%r15)
incl %edx
movl %edx, %ecx
leal (%rcx,%rax), %edx
cmpl $0x100, %edx            # imm = 0x100
jl 0x39af
movzwl 0x2a0612(%r15), %eax
addl %eax, %eax
movq 0x68(%rsp), %rcx
leaq (%rcx,%rax), %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %esi, %esi
callq 0x10e0
movl (%r15), %eax
movzbl %al, %ecx
imulq $0x206, %rcx, %rcx      # imm = 0x206
movq 0x60(%rsp), %r8
movb 0x7(%r8,%rcx), %dl
leal 0x1(%rdx), %esi
movb %sil, 0x7(%r8,%rcx)
movl 0x2c(%rsp), %edi
movb %dil, 0x6(%r8,%rcx)
incw (%r8,%rcx)
xorl %edi, %edi
cmpb $0x2, %sil
sete %dil
cmpb $0x1, %dl
sbbw $0x0, %di
negl %edi
addw %di, 0x4(%r8,%rcx)
cmpb $-0x5, %sil
jb 0x3b22
leaq (%r8,%rcx), %rax
leaq (%r8,%rcx), %rdi
addq $0x6, %rdi
movl $0x0, (%rax)
movw $0x0, 0x4(%rax)
xorl %esi, %esi
xorl %edx, %edx
xorl %ecx, %ecx
movslq %esi, %r8
movb 0x1(%rdi,%r8,2), %r9b
movl %r9d, %r10d
shrb %r10b
movslq %edx, %rsi
movb %r10b, 0x1(%rdi,%rsi,2)
cmpb $0x2, %r9b
jae 0x3ad2
incl %ecx
jmp 0x3af9
movb 0x6(%rax,%r8,2), %dl
movb %dl, 0x6(%rax,%rsi,2)
incw 0x2(%rax)
movzbl 0x7(%rax,%rsi,2), %edx
addw %dx, (%rax)
xorl %edx, %edx
cmpb $0x1, 0x7(%rax,%rsi,2)
sete %dl
addw %dx, 0x4(%rax)
incl %esi
movl %esi, %edx
leal (%rdx,%rcx), %esi
cmpl $0x100, %esi            # imm = 0x100
jl 0x3ab2
movzwl 0x2(%rax), %eax
addl %eax, %eax
addq %rax, %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %esi, %esi
callq 0x10e0
movzwl (%r15), %eax
jmp 0x3b25
movzwl %ax, %eax
movl %eax, %eax
movq 0x200010(%r15,%rax,8), %rax
movb 0x7(%rax), %cl
leal 0x1(%rcx), %edx
movb %dl, 0x7(%rax)
movl 0x2c(%rsp), %esi
movb %sil, 0x6(%rax)
incw (%rax)
xorl %esi, %esi
cmpb $0x2, %dl
sete %sil
cmpb $0x1, %cl
sbbw $0x0, %si
negl %esi
addw %si, 0x4(%rax)
xorl %r13d, %r13d
cmpb $-0x5, %dl
jb 0x3be8
leaq 0x6(%rax), %rdi
movl $0x0, (%rax)
movw $0x0, 0x4(%rax)
xorl %edx, %edx
xorl %ecx, %ecx
movslq %r13d, %r8
movb 0x1(%rdi,%r8,2), %r9b
movl %r9d, %r10d
shrb %r10b
movslq %edx, %rsi
movb %r10b, 0x1(%rdi,%rsi,2)
cmpb $0x2, %r9b
jae 0x3b99
incl %ecx
jmp 0x3bc0
movb 0x6(%rax,%r8,2), %dl
movb %dl, 0x6(%rax,%rsi,2)
incw 0x2(%rax)
movzbl 0x7(%rax,%rsi,2), %edx
addw %dx, (%rax)
xorl %edx, %edx
cmpb $0x1, 0x7(%rax,%rsi,2)
sete %dl
addw %dx, 0x4(%rax)
incl %esi
movl %esi, %edx
leal (%rdx,%rcx), %r13d
cmpl $0x100, %r13d           # imm = 0x100
jl 0x3b79
movzwl 0x2(%rax), %eax
addl %eax, %eax
addq %rax, %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %r13d, %r13d
xorl %esi, %esi
callq 0x10e0
movq %r15, %rdi
movq 0x8(%rsp), %rsi
movl 0x54(%rsp), %edx
callq 0x710b
movb %r13b, 0x2a0829(%r15)
movl (%r15), %eax
shll $0x8, %eax
orl 0x2c(%rsp), %eax
movl %eax, (%r15)
movq %r15, %rdi
callq 0x6d8b
movq %rax, %rbp
pxor %xmm0, %xmm0
movdqa %xmm0, 0x90(%rsp)
movdqa %xmm0, 0x80(%rsp)
movl (%r15), %eax
movzwl %ax, %r13d
movl %r13d, %ecx
cmpq $0x0, 0x200010(%r15,%rcx,8)
movq %rbp, 0x30(%rsp)
jne 0x3d37
movq 0x2a0818(%r15), %rbp
movq 0x8(%rbp), %rdi
testq %rdi, %rdi
jne 0x3d10
movl $0x81808, %edi          # imm = 0x81808
callq 0x1180
movq %rax, %rdi
movq (%rbp), %rax
movq %rax, (%rdi)
movq $0x0, 0x8(%rdi)
leaq 0x20e(%rdi), %rax
xorl %ecx, %ecx
movdqa 0x7393(%rip), %xmm2     # 0xb020
movdqa 0x73ab(%rip), %xmm3     # 0xb040
movdqa 0x120(%rsp), %xmm4
movq %rcx, %xmm0
pshufd $0x44, %xmm0, %xmm0     # xmm0 = xmm0[0,1,0,1]
por %xmm2, %xmm0
pxor 0x737c(%rip), %xmm0     # 0xb030
movdqa %xmm3, %xmm1
pcmpgtd %xmm0, %xmm1
pshufd $0xf5, %xmm0, %xmm0     # xmm0 = xmm0[1,1,3,3]
pcmpeqd %xmm4, %xmm0
pand %xmm1, %xmm0
movd %xmm0, %edx
testb $0x1, %dl
je 0x3cdc
leaq -0x206(%rax), %rdx
movq %rdx, (%rax)
pextrw $0x4, %xmm0, %edx
testb $0x1, %dl
je 0x3ced
movq %rax, 0x206(%rax)
addq $0x2, %rcx
addq $0x40c, %rax            # imm = 0x40C
cmpq $0x400, %rcx            # imm = 0x400
jne 0x3c9e
movq %rdi, (%rbp)
addq $0x81602, %rdi          # imm = 0x81602
movq 0x18(%rsp), %r15
movq (%rdi), %rax
movq %rax, 0x8(%rbp)
movq %rdi, 0x200010(%r15,%r13,8)
incl 0x4(%r15)
movl $0x206, %edx            # imm = 0x206
xorl %esi, %esi
callq 0x10e0
movl (%r15), %eax
movq 0x30(%rsp), %rbp
shll $0x8, %eax
movq 0xd0(%rsp), %rdx
movzbl %dl, %esi
movl %eax, %ecx
shrl $0xe, %ecx
andl $0x3ff00, %eax          # imm = 0x3FF00
movl %esi, 0x10(%rsp)
orl %esi, %eax
xorl %ecx, %eax
movq 0xe8(%rsp), %rcx
prefetcht0 (%rcx,%rax,8)
movq %r15, %rdi
movq %rdx, %r15
movq %rbp, %rsi
callq 0x6f86
movq %rax, 0x8(%rsp)
movzbl 0xe(%rbp), %eax
testq %rax, %rax
pxor %xmm1, %xmm1
movq %rbp, %r13
je 0x3e81
cmpb %r15b, 0x10(%r13)
jne 0x3d9c
movb $0x1, 0x20(%rsp)
xorl %r13d, %r13d
xorl %ebp, %ebp
jmp 0x3dd3
leaq -0x1(%rax), %rcx
xorl %ebp, %ebp
xorl %edx, %edx
cmpq %rdx, %rcx
movq 0x30(%rsp), %r13
je 0x3e81
movzbl 0x11(%r13,%rdx,2), %esi
addl %esi, %ebp
movq %r13, %rsi
leaq 0x1(%rdx), %r13
cmpb %r15b, 0x12(%rsi,%rdx,2)
movq %r13, %rdx
jne 0x3da4
cmpq %rax, %r13
setb 0x20(%rsp)
movq 0x30(%rsp), %rax
addq $0x10, %rax
movq %rax, 0x38(%rsp)
movq 0x8(%rsp), %rax
movzwl (%rax), %ecx
movzwl 0x2(%rax), %eax
addw %cx, %ax
movzwl %ax, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movl %eax, %r14d
imull %ecx, %r14d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x3e25
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x3fae
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x3e66
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x71c6(%rip), %xmm0     # 0xb008
addsd 0x71c6(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
pxor %xmm1, %xmm1
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x3e01
movq 0x8(%rsp), %rbp
movzwl (%rbp), %ecx
movzwl 0x2(%rbp), %esi
leal (%rsi,%rcx), %eax
movzwl %ax, %edi
movl %r14d, %eax
xorl %edx, %edx
divl %edi
movl %eax, %r14d
imull %eax, %ecx
addl %r12d, %ecx
imull %esi, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x3ecb
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x3f23
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x3f08
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x7120(%rip), %xmm0     # 0xb008
addsd 0x7120(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x3eab
movzwl 0x2(%rbp), %eax
addl $0x23, %eax
movw %ax, 0x2(%rbp)
movzwl %ax, %eax
cmpl $0x3e81, %eax           # imm = 0x3E81
movq %rbp, %rdx
movq 0x18(%rsp), %rbp
jb 0x3f52
movzwl (%rdx), %ecx
incl %ecx
shrl %ecx
movw %cx, (%rdx)
incl %eax
shrl %eax
movw %ax, 0x2(%rdx)
movzbl 0xe(%r13), %eax
testq %rax, %rax
je 0x4060
xorl %edx, %edx
movzbl 0x10(%r13,%rdx,2), %ecx
movl $0x1, %esi
shll %cl, %esi
shrl $0x5, %ecx
orl %esi, 0x80(%rsp,%rcx,4)
incq %rdx
cmpq %rdx, %rax
jne 0x3f62
movl $0x1, %ecx
cmpl $0x42, %eax
jne 0x4062
movzbl 0x93(%r13), %eax
subw %ax, 0xc(%r13)
movl $0x82, %edx
movl $0x1, 0x38(%rsp)
jmp 0x4077
movq 0x8(%rsp), %rdx
movzwl (%rdx), %eax
addl $0x23, %eax
movw %ax, (%rdx)
movzwl %ax, %ecx
cmpl $0x3e81, %ecx           # imm = 0x3E81
jb 0x3fd9
movd %eax, %xmm0
pinsrw $0x1, 0x2(%rdx), %xmm0
pavgw %xmm1, %xmm0
movd %xmm0, (%rdx)
movq 0x30(%rsp), %rcx
cmpb $0x1, 0xe(%rcx)
jne 0x4000
movq 0x18(%rsp), %rbp
movl 0x44(%rsp), %r13d
xorl %esi, %esi
cmpb $0x0, 0x20(%rsp)
je 0x4094
jmp 0x626d
movzbl 0x11(%rcx), %eax
leal 0x6(%rax), %r15d
shrl %r15d
testq %r13, %r13
je 0x4591
movl %r13d, %edx
addq %rdx, %rdx
movzbl 0x11(%rcx,%rdx), %eax
movl %eax, 0x8(%rsp)
movzwl %r15w, %r13d
addl %ebp, %r13d
movb 0x10(%rcx,%rdx), %al
movb %al, 0x48(%rsp)
movq %rcx, %rbp
movq %rcx, %rdi
addq $0x12, %rdi
movq 0x38(%rsp), %rsi
callq 0x11e0
movl 0x8(%rsp), %esi
movq %rbp, %rcx
movb 0x48(%rsp), %al
movb %al, 0x10(%rbp)
movb %sil, 0x11(%rbp)
movl %r13d, %ebp
jmp 0x459a
xorl %ecx, %ecx
movl %ecx, 0x38(%rsp)
incb %al
movb %al, 0xe(%r13)
movzbl %al, %eax
leaq -0x2(,%rax,2), %rdx
leaq 0x10(%r13), %rsi
movq %r13, %rdi
addq $0x12, %rdi
callq 0x11e0
movb %r15b, 0x10(%r13)
movb $0x0, 0x11(%r13)
movl 0x38(%rsp), %esi
movzwl (%rbp), %eax
movq 0x200010(%rbp,%rax,8), %rax
movb 0x7(%rax), %r8b
movzbl 0x6(%rax), %ecx
movl %ecx, %edx
shrl $0x5, %edx
movl $0x1, %edi
shll %cl, %edi
andl 0x80(%rsp,%rdx,4), %edi
movl %edi, 0x48(%rsp)
movzwl 0x2(%rax), %edx
testl %esi, %esi
movl %esi, 0x38(%rsp)
movb %r8b, 0x20(%rsp)
je 0x41ba
testw %dx, %dx
je 0x41e0
xorl %r11d, %r11d
movl $0x0, 0x8(%rsp)
xorl %r9d, %r9d
xorl %r13d, %r13d
xorl %r10d, %r10d
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %r15
movzbl 0x6(%r15,%r11,2), %ecx
movl $0x1, %ebp
shll %cl, %ebp
movl %ecx, %esi
shrl $0x5, %esi
andl 0x80(%rsp,%rsi,4), %ebp
movzbl 0x7(%r15,%r11,2), %r8d
movl %ebp, %esi
orl 0x8(%rsp), %esi
movl %r8d, %edi
je 0x4129
xorl %edi, %edi
cmpl %ecx, 0x10(%rsp)
movl $0x0, %esi
cmovel %esi, %edi
movl %r8d, %esi
testl %ebp, %ebp
je 0x413e
xorl %esi, %esi
cmpl %ecx, 0x10(%rsp)
movq 0x18(%rsp), %rbp
jne 0x419a
movb 0x7(%r15), %cl
movb %cl, 0x7(%r15,%r11,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %r8b, 0x7(%rcx)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb 0x6(%rcx,%r11,2), %dl
movb 0x6(%rcx), %r8b
movb %r8b, 0x6(%rcx,%r11,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %dl, 0x6(%rcx)
movzwl 0x2(%rax), %edx
movl $0x1, 0x8(%rsp)
movl %r11d, %r9d
addl %r13d, %edi
addl %r10d, %esi
incq %r11
movzwl %dx, %ecx
movl %edi, %r13d
movl %esi, %r10d
cmpq %rcx, %r11
jb 0x40f1
jmp 0x424d
testw %dx, %dx
je 0x41f1
movzwl %dx, %ecx
xorl %r9d, %r9d
xorl %edi, %edi
cmpb %r15b, 0x6(%rax,%r9,2)
je 0x4200
movzbl 0x7(%rax,%r9,2), %edx
addl %edx, %edi
incq %r9
cmpq %r9, %rcx
jne 0x41c7
jmp 0x41f3
xorl %esi, %esi
xorl %edi, %edi
xorl %r9d, %r9d
movl $0x0, 0x8(%rsp)
jmp 0x424d
xorl %edi, %edi
xorl %r9d, %r9d
movl $0x0, 0x8(%rsp)
jmp 0x424a
movb 0x7(%rax,%r9,2), %cl
movb %r8b, 0x7(%rax,%r9,2)
movzwl (%rbp), %edx
movq 0x200010(%rbp,%rdx,8), %rdx
movb %cl, 0x7(%rdx)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb 0x6(%rcx,%r9,2), %dl
movb 0x6(%rcx), %sil
movb %sil, 0x6(%rcx,%r9,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %dl, 0x6(%rcx)
movl $0x1, 0x8(%rsp)
movzwl (%rax), %esi
movzbl 0x20(%rsp), %ecx
cmpl $0x0, 0x48(%rsp)
movl $0x0, %r8d
cmovnel %r8d, %ecx
movzwl 0x4(%rax), %edx
cmpw $0x1, %dx
adcl $0x0, %edx
addl %ecx, %esi
cmpl $0x0, 0x8(%rsp)
je 0x42ac
testl %r9d, %r9d
movl $0x0, %eax
cmovgl %ecx, %eax
cmovnel %r8d, %ecx
addl %eax, %edi
movzwl (%rbp), %eax
movq 0x200010(%rbp,%rax,8), %rax
movzbl 0x7(%rax), %r8d
addl %ecx, %r8d
movl 0x44(%rsp), %r13d
movq 0xd0(%rsp), %r15
jmp 0x4355
movzwl 0x2(%rax), %r8d
movzwl (%rbp), %edi
testq %r8, %r8
movl 0x44(%rsp), %r13d
movq 0xd0(%rsp), %r15
movl 0x38(%rsp), %ecx
je 0x42fd
movq 0x200010(%rbp,%rdi,8), %r9
xorl %r10d, %r10d
movzbl 0x6(%r9,%r10,2), %ecx
movl $0x1, %r11d
shll %cl, %r11d
shrl $0x5, %ecx
orl %r11d, 0x80(%rsp,%rcx,4)
movl $0x1, %ecx
incq %r10
cmpq %r10, %r8
jne 0x42d6
movl %ecx, 0x38(%rsp)
movq 0x200010(%rbp,%rdi,8), %rcx
movb 0x7(%rcx), %dil
movb %dil, 0x7(%rcx,%r8,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb 0x6(%rcx), %dil
movzwl 0x2(%rax), %r8d
movb %dil, 0x6(%rcx,%r8,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %r15b, 0x6(%rcx)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb $0x0, 0x7(%rcx)
incw 0x2(%rax)
movl %edx, %r8d
movl %esi, %edi
addl %edx, %esi
movzwl %si, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %di, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %r8w, %r14d
imull %eax, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x4395
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x43ed
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x43d2
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x6c56(%rip), %xmm0     # 0xb008
addsd 0x6c56(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x4375
movzwl (%rbp), %eax
cmpl $0x0, 0x8(%rsp)
jne 0x61b4
movzbl %al, %eax
imulq $0x206, %rax, %rdx      # imm = 0x206
movq 0x60(%rsp), %rax
leaq (%rax,%rdx), %rcx
movq %rcx, 0x78(%rsp)
movzbl 0x6(%rax,%rdx), %ecx
movl $0x1, %esi
shll %cl, %esi
movl %esi, 0x58(%rsp)
movb 0x7(%rax,%rdx), %r10b
movzwl 0x2(%rax,%rdx), %esi
movzwl %si, %r9d
cmpl $0x0, 0x38(%rsp)
movq %rdx, 0xa8(%rsp)
movb %r10b, 0xb8(%rsp)
je 0x4548
testw %si, %si
je 0x464c
movl %esi, 0xb0(%rsp)
addq %rdx, %rax
addq $0x7, %rax
movq %rax, 0x48(%rsp)
movq 0xc8(%rsp), %rax
addq %rdx, %rax
movq %rcx, 0xf0(%rsp)
movl %ecx, %esi
movb %r10b, 0x20(%rsp)
xorl %r13d, %r13d
movl $0x0, 0x8(%rsp)
xorl %edi, %edi
xorl %r8d, %r8d
xorl %r10d, %r10d
movzbl -0x1(%rax,%r13,2), %ecx
movl $0x1, %ebp
shll %cl, %ebp
movl %ecx, %edx
shrl $0x5, %edx
andl 0x80(%rsp,%rdx,4), %ebp
movzbl (%rax,%r13,2), %r11d
movl %ebp, %edx
orl 0x8(%rsp), %edx
movl %r11d, %r15d
je 0x44c2
xorl %r15d, %r15d
cmpl %ecx, 0x10(%rsp)
movl $0x0, %edx
cmovel %edx, %r15d
movl %r11d, %edx
testl %ebp, %ebp
je 0x44d8
xorl %edx, %edx
cmpl %ecx, 0x10(%rsp)
jne 0x4509
movb 0x20(%rsp), %dil
movb %dil, (%rax,%r13,2)
movq 0x48(%rsp), %rdi
movb %r11b, (%rdi)
movb %sil, -0x1(%rax,%r13,2)
movb %cl, -0x1(%rdi)
movl $0x1, 0x8(%rsp)
movl %ecx, %esi
movb %r11b, 0x20(%rsp)
movl %r13d, %edi
addl %r8d, %r15d
addl %r10d, %edx
movl %r15d, %r8d
movl %edx, %r10d
incq %r13
cmpq %r9, %r13
jb 0x4496
movq 0x18(%rsp), %rbp
movl 0x44(%rsp), %r13d
movq 0xd0(%rsp), %r15
movq 0x78(%rsp), %r9
movq 0xf0(%rsp), %rcx
movl %esi, %r11d
jmp 0x483c
movl %esi, 0xb0(%rsp)
testw %si, %si
je 0x47f1
movq 0xc8(%rsp), %rax
addq %rdx, %rax
xorl %edi, %edi
xorl %r8d, %r8d
cmpb %r15b, -0x1(%rax,%rdi,2)
je 0x4808
movzbl (%rax,%rdi,2), %esi
addl %esi, %r8d
incq %rdi
cmpq %rdi, %r9
jne 0x4568
xorl %edi, %edi
movl %ecx, %r11d
movb %r10b, 0x20(%rsp)
jmp 0x47fe
movzwl %ax, %eax
movzwl %r15w, %esi
addl %eax, %esi
addw 0xc(%rcx), %r15w
movzwl %r15w, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %bp, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %si, %r14d
imull %eax, %r14d
movl %ecx, %r12d
movq 0x18(%rsp), %rbp
movl 0x44(%rsp), %r13d
movq 0xd0(%rsp), %r15
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x45f4
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x3fee
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x4631
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x69f7(%rip), %xmm0     # 0xb008
addsd 0x69f7(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x45d0
movl $0x0, 0xb0(%rsp)
movl %ecx, %r11d
movb %r10b, 0x20(%rsp)
xorl %r10d, %r10d
xorl %r8d, %r8d
xorl %edi, %edi
movl $0x0, 0x8(%rsp)
movq 0x78(%rsp), %r9
jmp 0x483c
pxor %xmm1, %xmm1
xorl %eax, %eax
movdqa 0x69c9(%rip), %xmm2     # 0xb050
pxor %xmm0, %xmm0
movq 0x18(%rsp), %r15
movdqa 0x150(%rsp), %xmm6
pxor %xmm7, %xmm7
movdqa 0x698a(%rip), %xmm8     # 0xb030
movdqa 0x69b1(%rip), %xmm9     # 0xb060
movdqa 0x69b8(%rip), %xmm10    # 0xb070
movdqa 0x69bf(%rip), %xmm11    # 0xb080
movl %eax, %ecx
shrl $0x5, %ecx
movd 0x80(%rsp,%rcx,4), %xmm3
pshufd $0x0, %xmm3, %xmm3      # xmm3 = xmm3[0,0,0,0]
movdqa %xmm2, %xmm4
pslld $0x17, %xmm4
pand %xmm9, %xmm4
paddd %xmm10, %xmm4
cvttps2dq %xmm4, %xmm4
pand %xmm3, %xmm4
movdqa %xmm2, %xmm3
pxor %xmm8, %xmm3
movdqa %xmm6, %xmm5
pcmpgtd %xmm3, %xmm5
pcmpeqd %xmm7, %xmm4
pand %xmm4, %xmm5
psrld $0x1f, %xmm5
packssdw %xmm5, %xmm5
paddw %xmm5, %xmm1
packssdw %xmm4, %xmm4
psubw %xmm4, %xmm0
addl $0x4, %eax
paddd %xmm11, %xmm2
cmpl $0x100, %eax            # imm = 0x100
jne 0x46c1
pshufd $0x55, %xmm1, %xmm2     # xmm2 = xmm1[1,1,1,1]
paddw %xmm1, %xmm2
movdqa %xmm2, %xmm1
psrld $0x10, %xmm1
paddw %xmm2, %xmm1
pextrw $0x0, %xmm1, %ecx
pshufd $0x55, %xmm0, %xmm1     # xmm1 = xmm0[1,1,1,1]
paddw %xmm0, %xmm1
movdqa %xmm1, %xmm0
psrld $0x10, %xmm0
paddw %xmm1, %xmm0
pextrw $0x0, %xmm0, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movl %eax, %r14d
imull %eax, %ecx
addl %r12d, %ecx
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x4799
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x394f
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x47d6
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x6852(%rip), %xmm0     # 0xb008
addsd 0x6852(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x4775
xorl %r8d, %r8d
movl %ecx, %r11d
movb %r10b, 0x20(%rsp)
xorl %edi, %edi
movl $0x0, 0x8(%rsp)
jmp 0x4833
movb (%rax,%rdi,2), %r9b
movb %r10b, (%rax,%rdi,2)
movq 0x60(%rsp), %rsi
movb %r9b, 0x20(%rsp)
movb %r9b, 0x7(%rsi,%rdx)
movb %cl, -0x1(%rax,%rdi,2)
movb %r15b, 0x6(%rsi,%rdx)
movl $0x1, 0x8(%rsp)
movl %r15d, %r11d
movq 0x78(%rsp), %r9
movzwl (%r9), %r10d
shrl $0x5, %ecx
movl 0x58(%rsp), %eax
andl 0x80(%rsp,%rcx,4), %eax
movzbl 0xb8(%rsp), %edx
movl $0x0, %esi
cmovnel %esi, %edx
movzwl 0x4(%r9), %eax
cmpw $0x1, %ax
adcl $0x0, %eax
addl %edx, %r10d
cmpl $0x0, 0x8(%rsp)
je 0x488c
testl %edi, %edi
movl $0x0, %ecx
cmovgl %edx, %ecx
cmovnel %esi, %edx
addl %ecx, %r8d
movzbl 0x20(%rsp), %ecx
addl %edx, %ecx
jmp 0x490f
movl 0xb0(%rsp), %ecx
movzwl %cx, %esi
testw %cx, %cx
movl 0x38(%rsp), %ecx
je 0x48d9
movq 0xe0(%rsp), %rcx
movq 0xa8(%rsp), %rdx
addq %rcx, %rdx
xorl %edi, %edi
movzbl (%rdx,%rdi,2), %ecx
movl $0x1, %r8d
shll %cl, %r8d
shrl $0x5, %ecx
orl %r8d, 0x80(%rsp,%rcx,4)
movl $0x1, %ecx
incq %rdi
cmpq %rdi, %rsi
jne 0x48b4
movl %ecx, 0x38(%rsp)
movb 0x20(%rsp), %cl
movb %cl, 0x7(%r9,%rsi,2)
movb %r11b, 0x6(%r9,%rsi,2)
movq 0x60(%rsp), %rcx
movq 0xa8(%rsp), %rdx
movb %r15b, 0x6(%rcx,%rdx)
movb $0x0, 0x7(%rcx,%rdx)
leal 0x1(%rsi), %ecx
movw %cx, 0x2(%r9)
movl %eax, %ecx
movl %r10d, %r8d
addl %eax, %r10d
movzwl %r10w, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movzwl %r8w, %edx
imull %eax, %edx
addl %r12d, %edx
movzwl %cx, %r14d
imull %eax, %r14d
movl %edx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x4952
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x49aa
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x498f
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x6699(%rip), %xmm0     # 0xb008
addsd 0x6699(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x4932
cmpl $0x0, 0x8(%rsp)
jne 0x60d7
movzbl 0x2a0616(%rbp), %ecx
movl $0x1, %r10d
shll %cl, %r10d
movb 0x2a0617(%rbp), %r8b
movzwl 0x2a0612(%rbp), %edx
cmpl $0x0, 0x38(%rsp)
movb %r8b, 0x20(%rsp)
je 0x4ad1
testq %rdx, %rdx
je 0x4b05
movl %r10d, 0x48(%rsp)
movq %rcx, 0x38(%rsp)
movb %cl, 0x8(%rsp)
movl %r8d, %r9d
xorl %r13d, %r13d
xorl %ebp, %ebp
xorl %edi, %edi
xorl %esi, %esi
xorl %r8d, %r8d
movq 0x18(%rsp), %r10
movzbl 0x2a0616(%r10,%r13,2), %ecx
movl $0x1, %r11d
shll %cl, %r11d
movl %ecx, %eax
shrl $0x5, %eax
andl 0x80(%rsp,%rax,4), %r11d
movzbl 0x2a0617(%r10,%r13,2), %eax
movl %r11d, %r10d
orl %ebp, %r10d
movl %eax, %r15d
je 0x4a44
xorl %r15d, %r15d
cmpl %ecx, 0x10(%rsp)
movl $0x0, %r10d
cmovel %r10d, %r15d
movl %eax, %r10d
testl %r11d, %r11d
je 0x4a5d
xorl %r10d, %r10d
cmpl %ecx, 0x10(%rsp)
jne 0x4a98
movq 0x18(%rsp), %rdi
movb %r9b, 0x2a0617(%rdi,%r13,2)
movb %al, 0x2a0617(%rdi)
movb 0x8(%rsp), %r9b
movb %r9b, 0x2a0616(%rdi,%r13,2)
movb %cl, 0x2a0616(%rdi)
movl $0x1, %ebp
movb %cl, 0x8(%rsp)
movl %eax, %r9d
movl %r13d, %edi
addl %esi, %r15d
addl %r8d, %r10d
movl %r15d, %esi
movl %r10d, %r8d
incq %r13
cmpq %r13, %rdx
jne 0x4a09
movq 0x18(%rsp), %rax
movl 0x44(%rsp), %r13d
movq 0xd0(%rsp), %r15
movq 0x38(%rsp), %rcx
movl 0x48(%rsp), %r10d
jmp 0x5ea4
testq %rdx, %rdx
je 0x4b21
xorl %edi, %edi
xorl %esi, %esi
cmpb %r15b, 0x2a0616(%rbp,%rdi,2)
je 0x5e68
movzbl 0x2a0617(%rbp,%rdi,2), %eax
addl %eax, %esi
incq %rdi
cmpq %rdi, %rdx
jne 0x4ada
xorl %edi, %edi
movb %cl, 0x8(%rsp)
movl %r8d, %r9d
jmp 0x4b2c
xorl %edx, %edx
movb %cl, 0x8(%rsp)
movl %r8d, %r9d
xorl %r8d, %r8d
xorl %esi, %esi
xorl %edi, %edi
xorl %ebp, %ebp
movq 0x18(%rsp), %rax
jmp 0x5ea4
xorl %esi, %esi
movb %cl, 0x8(%rsp)
movl %r8d, %r9d
xorl %edi, %edi
xorl %ebp, %ebp
jmp 0x5e97
movb 0x2a0617(%rbp,%r8,2), %r9b
movb %dil, 0x2a0617(%rbp,%r8,2)
movb %r9b, 0x2a0617(%rbp)
movb %cl, 0x2a0616(%rbp,%r8,2)
movb %r13b, 0x2a0616(%rbp)
movl $0x1, %ebp
movb %r13b, 0x8(%rsp)
movq 0x18(%rsp), %rax
movzwl 0x2a0610(%rax), %edi
shrl $0x5, %ecx
andl 0x80(%rsp,%rcx,4), %esi
movzbl 0x30(%rsp), %ecx
movl $0x0, %esi
cmovnel %esi, %ecx
movzwl 0x2a0614(%rax), %eax
cmpw $0x1, %ax
adcl $0x0, %eax
addl %ecx, %edi
testl %ebp, %ebp
je 0x4bb3
testl %r8d, %r8d
movl $0x0, %edx
cmovgl %ecx, %edx
cmovnel %esi, %ecx
addl %edx, %r10d
movzbl %r9b, %esi
addl %ecx, %esi
jmp 0x4c13
movzwl %dx, %esi
testw %dx, %dx
je 0x4bde
xorl %edx, %edx
movzbl (%r15,%rdx,2), %ecx
movl $0x1, %r8d
shll %cl, %r8d
shrl $0x5, %ecx
orl %r8d, 0x80(%rsp,%rcx,4)
incq %rdx
cmpq %rdx, %rsi
jne 0x4bbd
movq 0x18(%rsp), %rdx
movb %r9b, 0x2a0617(%rdx,%rsi,2)
movb 0x8(%rsp), %cl
movb %cl, 0x2a0616(%rdx,%rsi,2)
movb %r13b, 0x2a0616(%rdx)
movb $0x0, 0x2a0617(%rdx)
leal 0x1(%rsi), %ecx
movw %cx, 0x2a0612(%rdx)
movl %eax, %esi
movl %edi, %r10d
addl %eax, %edi
movzwl %di, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %r10w, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %si, %r14d
imull %eax, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x4c54
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x4cac
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x4c91
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x6397(%rip), %xmm0     # 0xb008
addsd 0x6397(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x4c34
testl %ebp, %ebp
je 0x58d4
movq 0x18(%rsp), %rbp
movb 0x2a0617(%rbp), %al
leal 0x1(%rax), %ecx
movb %cl, 0x2a0617(%rbp)
movb %r13b, 0x2a0616(%rbp)
incw 0x2a0610(%rbp)
xorl %edx, %edx
cmpb $0x2, %cl
sete %dl
cmpb $0x1, %al
sbbw $0x0, %dx
negl %edx
addw %dx, 0x2a0614(%rbp)
cmpb $-0x5, %cl
jb 0x4d92
movl $0x0, 0x2a0610(%rbp)
movw $0x0, 0x2a0614(%rbp)
xorl %edx, %edx
xorl %ecx, %ecx
xorl %eax, %eax
movslq %edx, %rsi
movb 0x1(%r15,%rsi,2), %dil
movl %edi, %r8d
shrb %r8b
movslq %ecx, %rdx
movb %r8b, 0x1(%r15,%rdx,2)
cmpb $0x2, %dil
jae 0x4d2f
incl %eax
jmp 0x4d6b
movb 0x2a0616(%rbp,%rsi,2), %cl
movb %cl, 0x2a0616(%rbp,%rdx,2)
incw 0x2a0612(%rbp)
movzbl 0x2a0617(%rbp,%rdx,2), %ecx
addw %cx, 0x2a0610(%rbp)
xorl %ecx, %ecx
cmpb $0x1, 0x2a0617(%rbp,%rdx,2)
sete %cl
addw %cx, 0x2a0614(%rbp)
incl %edx
movl %edx, %ecx
leal (%rcx,%rax), %edx
cmpl $0x100, %edx            # imm = 0x100
jl 0x4d0f
movzwl 0x2a0612(%rbp), %eax
addl %eax, %eax
leaq (%r15,%rax), %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %esi, %esi
callq 0x10e0
movl (%rbp), %eax
movzbl %al, %ecx
imulq $0x206, %rcx, %rcx      # imm = 0x206
movq 0x60(%rsp), %r8
movb 0x7(%r8,%rcx), %dl
leal 0x1(%rdx), %esi
movb %sil, 0x7(%r8,%rcx)
movb %r13b, 0x6(%r8,%rcx)
incw (%r8,%rcx)
xorl %edi, %edi
cmpb $0x2, %sil
sete %dil
cmpb $0x1, %dl
sbbw $0x0, %di
negl %edi
addw %di, 0x4(%r8,%rcx)
cmpb $-0x5, %sil
jb 0x4e6c
leaq (%r8,%rcx), %rax
leaq (%r8,%rcx), %rdi
addq $0x6, %rdi
movl $0x0, (%rax)
movw $0x0, 0x4(%rax)
xorl %esi, %esi
xorl %edx, %edx
xorl %ecx, %ecx
movslq %esi, %r8
movb 0x1(%rdi,%r8,2), %r9b
movl %r9d, %r10d
shrb %r10b
movslq %edx, %rsi
movb %r10b, 0x1(%rdi,%rsi,2)
cmpb $0x2, %r9b
jae 0x4e1c
incl %ecx
jmp 0x4e43
movb 0x6(%rax,%r8,2), %dl
movb %dl, 0x6(%rax,%rsi,2)
incw 0x2(%rax)
movzbl 0x7(%rax,%rsi,2), %edx
addw %dx, (%rax)
xorl %edx, %edx
cmpb $0x1, 0x7(%rax,%rsi,2)
sete %dl
addw %dx, 0x4(%rax)
incl %esi
movl %esi, %edx
leal (%rdx,%rcx), %esi
cmpl $0x100, %esi            # imm = 0x100
jl 0x4dfc
movzwl 0x2(%rax), %eax
addl %eax, %eax
addq %rax, %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %esi, %esi
callq 0x10e0
movzwl (%rbp), %eax
jmp 0x4e6f
movzwl %ax, %eax
movl %eax, %eax
movq 0x200010(%rbp,%rax,8), %rax
movb 0x7(%rax), %cl
leal 0x1(%rcx), %edx
movb %dl, 0x7(%rax)
movb %r13b, 0x6(%rax)
incw (%rax)
xorl %esi, %esi
cmpb $0x2, %dl
sete %sil
cmpb $0x1, %cl
sbbw $0x0, %si
negl %esi
addw %si, 0x4(%rax)
xorl %ebp, %ebp
cmpb $-0x5, %dl
jb 0x4f2a
leaq 0x6(%rax), %rdi
movl $0x0, (%rax)
movw $0x0, 0x4(%rax)
xorl %edx, %edx
xorl %ecx, %ecx
movslq %ebp, %r8
movb 0x1(%rdi,%r8,2), %r9b
movl %r9d, %r10d
shrb %r10b
movslq %edx, %rsi
movb %r10b, 0x1(%rdi,%rsi,2)
cmpb $0x2, %r9b
jae 0x4ede
incl %ecx
jmp 0x4f05
movb 0x6(%rax,%r8,2), %dl
movb %dl, 0x6(%rax,%rsi,2)
incw 0x2(%rax)
movzbl 0x7(%rax,%rsi,2), %edx
addw %dx, (%rax)
xorl %edx, %edx
cmpb $0x1, 0x7(%rax,%rsi,2)
sete %dl
addw %dx, 0x4(%rax)
incl %esi
movl %esi, %edx
leal (%rdx,%rcx), %ebp
cmpl $0x100, %ebp            # imm = 0x100
jl 0x4ebe
movzwl 0x2(%rax), %eax
addl %eax, %eax
addq %rax, %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %ebp, %ebp
xorl %esi, %esi
callq 0x10e0
movq 0x18(%rsp), %r15
movq %r15, %rdi
movq 0x38(%rsp), %rsi
movl 0x48(%rsp), %edx
callq 0x710b
movb %bpl, 0x2a0829(%r15)
movq %r15, %rbp
movq 0xc0(%rsp), %rax
movq (%rax), %rax
movq 0xf8(%rsp), %rdi
movzbl (%rax,%rdi), %eax
movl 0x2c(%rsp), %ecx
cmpl %eax, %ecx
jne 0x511d
movl (%rbp), %eax
shll $0x8, %eax
orl %ecx, %eax
movl %eax, (%rbp)
movq %rbp, %rdi
callq 0x6d8b
movq %rax, %r15
pxor %xmm0, %xmm0
movdqa %xmm0, 0x90(%rsp)
movdqa %xmm0, 0x80(%rsp)
movl (%rbp), %eax
movzwl %ax, %r13d
movl %r13d, %ecx
cmpq $0x0, 0x200010(%rbp,%rcx,8)
movq %r15, 0x30(%rsp)
jne 0x50a8
movq %rbp, %r15
movq 0x2a0818(%rbp), %rbp
movq 0x8(%rbp), %rdi
testq %rdi, %rdi
jne 0x507e
movl $0x81808, %edi          # imm = 0x81808
callq 0x1180
movq %rax, %rdi
movq (%rbp), %rax
movq %rax, (%rdi)
movq $0x0, 0x8(%rdi)
leaq 0x20e(%rdi), %rax
xorl %ecx, %ecx
movdqa 0x6025(%rip), %xmm2     # 0xb020
movdqa 0x603d(%rip), %xmm3     # 0xb040
movdqa 0x120(%rsp), %xmm4
movq %rcx, %xmm0
pshufd $0x44, %xmm0, %xmm0     # xmm0 = xmm0[0,1,0,1]
por %xmm2, %xmm0
pxor 0x600e(%rip), %xmm0     # 0xb030
movdqa %xmm3, %xmm1
pcmpgtd %xmm0, %xmm1
pshufd $0xf5, %xmm0, %xmm0     # xmm0 = xmm0[1,1,3,3]
pcmpeqd %xmm4, %xmm0
pand %xmm1, %xmm0
movd %xmm0, %edx
testb $0x1, %dl
je 0x504a
leaq -0x206(%rax), %rdx
movq %rdx, (%rax)
pextrw $0x4, %xmm0, %edx
testb $0x1, %dl
je 0x505b
movq %rax, 0x206(%rax)
addq $0x2, %rcx
addq $0x40c, %rax            # imm = 0x40C
cmpq $0x400, %rcx            # imm = 0x400
jne 0x500c
movq %rdi, (%rbp)
addq $0x81602, %rdi          # imm = 0x81602
movq 0x18(%rsp), %r15
movq (%rdi), %rax
movq %rax, 0x8(%rbp)
movq %rdi, 0x200010(%r15,%r13,8)
incl 0x4(%r15)
movl $0x206, %edx            # imm = 0x206
xorl %esi, %esi
callq 0x10e0
movl (%r15), %eax
movq %r15, %rbp
movq 0x30(%rsp), %r15
shll $0x8, %eax
movl %eax, %ecx
shrl $0xe, %ecx
andl $0x3ff00, %eax          # imm = 0x3FF00
xorl %ecx, %eax
movq 0xe8(%rsp), %rcx
prefetcht0 (%rcx,%rax,8)
movq %rbp, %rdi
movq %r15, %rsi
callq 0x6f86
movq %rax, 0x10(%rsp)
movzbl 0xe(%r15), %eax
testq %rax, %rax
pxor %xmm1, %xmm1
je 0x512f
cmpb $0x0, 0x10(%r15)
je 0x5255
leaq -0x1(%rax), %rcx
xorl %ebp, %ebp
xorl %edx, %edx
cmpq %rdx, %rcx
je 0x512f
movzbl 0x11(%r15,%rdx,2), %esi
addl %esi, %ebp
leaq 0x1(%rdx), %r13
cmpb $0x0, 0x12(%r15,%rdx,2)
movq %r13, %rdx
jne 0x50f4
cmpq %rax, %r13
setb 0x8(%rsp)
jmp 0x525f
movl 0x44(%rsp), %r13d
movq 0xd0(%rsp), %r15
jmp 0x6842
movq 0x10(%rsp), %r13
movzwl (%r13), %ecx
movzwl 0x2(%r13), %esi
leal (%rsi,%rcx), %eax
movzwl %ax, %edi
movl %r14d, %eax
xorl %edx, %edx
divl %edi
movl %eax, %r14d
imull %eax, %ecx
addl %r12d, %ecx
imull %esi, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x517b
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x51d3
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x51b8
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x5e70(%rip), %xmm0     # 0xb008
addsd 0x5e70(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x515b
movzwl 0x2(%r13), %eax
addl $0x23, %eax
movw %ax, 0x2(%r13)
movzwl %ax, %eax
cmpl $0x3e81, %eax           # imm = 0x3E81
jb 0x5201
movzwl (%r13), %ecx
incl %ecx
shrl %ecx
movw %cx, (%r13)
incl %eax
shrl %eax
movw %ax, 0x2(%r13)
movzbl 0xe(%r15), %eax
testq %rax, %rax
je 0x5350
xorl %edx, %edx
movzbl 0x10(%r15,%rdx,2), %ecx
movl $0x1, %esi
shll %cl, %esi
shrl $0x5, %ecx
orl %esi, 0x80(%rsp,%rcx,4)
incq %rdx
cmpq %rdx, %rax
jne 0x5211
movl $0x1, %ebp
cmpl $0x42, %eax
jne 0x5352
movzbl 0x93(%r15), %eax
subw %ax, 0xc(%r15)
movl $0x82, %edx
jmp 0x5363
movb $0x1, 0x8(%rsp)
xorl %r13d, %r13d
xorl %ebp, %ebp
leaq 0x10(%r15), %rax
movq %rax, 0x20(%rsp)
movq 0x10(%rsp), %rax
movzwl (%rax), %ecx
movzwl 0x2(%rax), %eax
addw %cx, %ax
movzwl %ax, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movl %eax, %r14d
imull %ecx, %r14d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x52a8
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x5304
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x52e9
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x5d43(%rip), %xmm0     # 0xb008
addsd 0x5d43(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
pxor %xmm1, %xmm1
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x5288
movq 0x10(%rsp), %rdx
movzwl (%rdx), %eax
addl $0x23, %eax
movw %ax, (%rdx)
movzwl %ax, %ecx
cmpl $0x3e81, %ecx           # imm = 0x3E81
jb 0x532f
movd %eax, %xmm0
pinsrw $0x1, 0x2(%rdx), %xmm0
pavgw %xmm1, %xmm0
movd %xmm0, (%rdx)
cmpb $0x1, 0xe(%r15)
jne 0x54d1
movl 0x44(%rsp), %r13d
xorl %esi, %esi
movb $0x1, %bpl
cmpb $0x0, 0x8(%rsp)
je 0x537c
jmp 0x6814
xorl %ebp, %ebp
incb %al
movb %al, 0xe(%r15)
movzbl %al, %eax
leaq -0x2(,%rax,2), %rdx
leaq 0x10(%r15), %rsi
movq %r15, %rdi
addq $0x12, %rdi
callq 0x11e0
movw $0x0, 0x10(%r15)
movl %ebp, %esi
movq 0x18(%rsp), %rbp
movzwl (%rbp), %eax
movq 0x200010(%rbp,%rax,8), %rax
movb 0x7(%rax), %r8b
movzbl 0x6(%rax), %ecx
movl %ecx, %edx
shrl $0x5, %edx
movl $0x1, %edi
shll %cl, %edi
andl 0x80(%rsp,%rdx,4), %edi
movzwl 0x2(%rax), %r11d
testl %esi, %esi
movl %esi, 0x20(%rsp)
movb %r8b, 0x8(%rsp)
movl %edi, 0x38(%rsp)
je 0x54a0
testw %r11w, %r11w
je 0x5531
xorl %r10d, %r10d
xorl %r13d, %r13d
xorl %esi, %esi
xorl %r9d, %r9d
movl $0x0, 0x10(%rsp)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %r15
movzbl 0x6(%r15,%r10,2), %ecx
movl $0x1, %ebp
shll %cl, %ebp
movl %ecx, %edx
shrl $0x5, %edx
andl 0x80(%rsp,%rdx,4), %ebp
movzbl 0x7(%r15,%r10,2), %r8d
movl %ebp, %edx
orl 0x10(%rsp), %edx
movl %r8d, %edi
je 0x5417
xorl %edi, %edi
testl %ecx, %ecx
cmovel %ecx, %edi
movl %r8d, %edx
testl %ebp, %ebp
je 0x5425
xorl %edx, %edx
testl %ecx, %ecx
movq 0x18(%rsp), %rbp
jne 0x5481
movb 0x7(%r15), %cl
movb %cl, 0x7(%r15,%r10,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %r8b, 0x7(%rcx)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb 0x6(%rcx,%r10,2), %r8b
movb 0x6(%rcx), %r9b
movb %r9b, 0x6(%rcx,%r10,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %r8b, 0x6(%rcx)
movzwl 0x2(%rax), %r11d
movl $0x1, 0x10(%rsp)
movl %r10d, %r9d
addl %esi, %edi
addl %r13d, %edx
incq %r10
movzwl %r11w, %ecx
movl %edx, %r13d
movl %edi, %esi
cmpq %rcx, %r10
jb 0x53df
jmp 0x559e
testw %r11w, %r11w
je 0x5542
movzwl %r11w, %ecx
xorl %r9d, %r9d
xorl %edi, %edi
cmpb $0x0, 0x6(%rax,%r9,2)
je 0x5551
movzbl 0x7(%rax,%r9,2), %edx
addl %edx, %edi
incq %r9
cmpq %r9, %rcx
jne 0x54b3
jmp 0x5544
movzbl 0x11(%r15), %eax
movq %r15, %rdi
leal 0x6(%rax), %r15d
shrl %r15d
movzwl %r15w, %ecx
testq %r13, %r13
je 0x5a53
movl %r13d, %edx
addq %rdx, %rdx
movzbl 0x11(%rdi,%rdx), %eax
movl %eax, 0x10(%rsp)
addl %ebp, %ecx
movl %ecx, %ebp
movb 0x10(%rdi,%rdx), %al
movb %al, 0x38(%rsp)
movq %rdi, %r13
addq $0x12, %rdi
movq 0x20(%rsp), %rsi
callq 0x11e0
movq %r13, %rdi
movb 0x38(%rsp), %al
movb %al, 0x10(%r13)
movl 0x10(%rsp), %ecx
movb %cl, 0x11(%r13)
jmp 0x5a58
movl $0x0, 0x10(%rsp)
xorl %r9d, %r9d
xorl %edi, %edi
xorl %edx, %edx
jmp 0x559e
xorl %edi, %edi
movl $0x0, 0x10(%rsp)
xorl %r9d, %r9d
jmp 0x559b
movb 0x7(%rax,%r9,2), %cl
movb %r8b, 0x7(%rax,%r9,2)
movzwl (%rbp), %edx
movq 0x200010(%rbp,%rdx,8), %rdx
movb %cl, 0x7(%rdx)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb 0x6(%rcx,%r9,2), %dl
movb 0x6(%rcx), %sil
movb %sil, 0x6(%rcx,%r9,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %dl, 0x6(%rcx)
movl $0x1, 0x10(%rsp)
movzwl (%rax), %edx
movzbl 0x8(%rsp), %ecx
cmpl $0x0, 0x38(%rsp)
movl $0x0, %esi
cmovnel %esi, %ecx
movzwl 0x4(%rax), %r8d
cmpw $0x1, %r8w
adcl $0x0, %r8d
addl %ecx, %edx
cmpl $0x0, 0x10(%rsp)
je 0x55f8
testl %r9d, %r9d
movl $0x0, %eax
cmovgl %ecx, %eax
cmovnel %esi, %ecx
addl %eax, %edi
movzwl (%rbp), %eax
movq 0x200010(%rbp,%rax,8), %rax
movzbl 0x7(%rax), %esi
addl %ecx, %esi
movq 0x68(%rsp), %r15
movl 0x44(%rsp), %r13d
jmp 0x569e
movzwl 0x2(%rax), %esi
movzwl (%rbp), %edi
testq %rsi, %rsi
movq 0x68(%rsp), %r15
movl 0x44(%rsp), %r13d
movl 0x20(%rsp), %ecx
je 0x5645
movq 0x200010(%rbp,%rdi,8), %r9
xorl %r10d, %r10d
movzbl 0x6(%r9,%r10,2), %ecx
movl $0x1, %r11d
shll %cl, %r11d
shrl $0x5, %ecx
orl %r11d, 0x80(%rsp,%rcx,4)
movl $0x1, %ecx
incq %r10
cmpq %r10, %rsi
jne 0x561e
movl %ecx, 0x20(%rsp)
movq 0x200010(%rbp,%rdi,8), %rcx
movb 0x7(%rcx), %dil
movb %dil, 0x7(%rcx,%rsi,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb 0x6(%rcx), %sil
movzwl 0x2(%rax), %edi
movb %sil, 0x6(%rcx,%rdi,2)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
xorl %esi, %esi
movb %sil, 0x6(%rcx)
movzwl (%rbp), %ecx
movq 0x200010(%rbp,%rcx,8), %rcx
movb %sil, 0x7(%rcx)
incw 0x2(%rax)
movl %edx, %edi
movl %r8d, %esi
addl %r8d, %edx
movzwl %dx, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %di, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %si, %r14d
imull %eax, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x56df
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x5737
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x571c
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x590c(%rip), %xmm0     # 0xb008
addsd 0x590c(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x56bf
movzwl (%rbp), %eax
cmpl $0x0, 0x10(%rsp)
jne 0x6759
movzbl %al, %eax
imulq $0x206, %rax, %rdi      # imm = 0x206
movq 0x60(%rsp), %rax
leaq (%rax,%rdi), %rdx
movzbl 0x6(%rax,%rdi), %ecx
movl $0x1, %r11d
shll %cl, %r11d
movb 0x7(%rax,%rdi), %r10b
movzwl 0x2(%rax,%rdi), %esi
movzwl %si, %r9d
cmpl $0x0, 0x20(%rsp)
movq %rdi, 0x78(%rsp)
movq %rcx, 0x58(%rsp)
movl %r11d, 0xb8(%rsp)
movb %r10b, 0x48(%rsp)
je 0x587f
testw %si, %si
je 0x5afd
movl %esi, 0xa8(%rsp)
movq %rdx, 0xb0(%rsp)
addq %rdi, %rax
addq $0x7, %rax
movq %rax, 0x38(%rsp)
movq 0xc8(%rsp), %rax
addq %rdi, %rax
xorl %edi, %edi
movl %ecx, 0x8(%rsp)
movl %r10d, %esi
xorl %r11d, %r11d
xorl %r8d, %r8d
xorl %r10d, %r10d
movl $0x0, 0x10(%rsp)
movzbl -0x1(%rax,%rdi,2), %ecx
movl $0x1, %ebp
shll %cl, %ebp
movl %ecx, %edx
shrl $0x5, %edx
andl 0x80(%rsp,%rdx,4), %ebp
movzbl (%rax,%rdi,2), %r13d
movl %ebp, %edx
orl 0x10(%rsp), %edx
movl %r13d, %r15d
je 0x580b
xorl %r15d, %r15d
testl %ecx, %ecx
cmovel %ecx, %r15d
movl %r13d, %edx
testl %ebp, %ebp
je 0x581a
xorl %edx, %edx
testl %ecx, %ecx
jne 0x584c
movb %sil, (%rax,%rdi,2)
movq 0x38(%rsp), %rsi
movb %r13b, (%rsi)
movl 0x8(%rsp), %ecx
movb %cl, -0x1(%rax,%rdi,2)
movb $0x0, -0x1(%rsi)
movl $0x1, 0x10(%rsp)
movl $0x0, 0x8(%rsp)
movl %r13d, %esi
movl %edi, %r10d
addl %r8d, %r15d
addl %r11d, %edx
movl %r15d, %r8d
movl %edx, %r11d
incq %rdi
cmpq %r9, %rdi
jb 0x57e0
movq 0x18(%rsp), %rbp
movq 0x68(%rsp), %r15
movl 0x44(%rsp), %r13d
movq 0xb0(%rsp), %rdx
movl %esi, %r9d
jmp 0x5b77
testw %si, %si
movl %esi, 0xa8(%rsp)
je 0x5b24
movq 0xc8(%rsp), %rax
addq %rdi, %rax
xorl %r10d, %r10d
xorl %r8d, %r8d
cmpb $0x0, -0x1(%rax,%r10,2)
je 0x5b3d
movzbl (%rax,%r10,2), %edi
addl %edi, %r8d
incq %r10
cmpq %r10, %r9
jne 0x58a0
movl $0x0, 0x10(%rsp)
movl %ecx, %eax
movl %eax, 0x8(%rsp)
movb 0x48(%rsp), %r9b
jmp 0x5b38
movd 0x48(%rsp), %xmm0
pshufd $0x0, %xmm0, %xmm2      # xmm2 = xmm0[0,0,0,0]
pxor %xmm1, %xmm1
xorl %eax, %eax
movdqa 0x5742(%rip), %xmm8     # 0xb030
pxor %xmm8, %xmm2
movdqa 0x5755(%rip), %xmm3     # 0xb050
pxor %xmm0, %xmm0
movq 0x18(%rsp), %rbp
pxor %xmm7, %xmm7
movdqa 0x574f(%rip), %xmm9     # 0xb060
movdqa 0x5756(%rip), %xmm10    # 0xb070
movdqa 0x575d(%rip), %xmm11    # 0xb080
movl %eax, %ecx
shrl $0x5, %ecx
movd 0x80(%rsp,%rcx,4), %xmm4
pshufd $0x0, %xmm4, %xmm4      # xmm4 = xmm4[0,0,0,0]
movdqa %xmm3, %xmm5
pslld $0x17, %xmm5
pand %xmm9, %xmm5
paddd %xmm10, %xmm5
cvttps2dq %xmm5, %xmm5
pand %xmm4, %xmm5
movdqa %xmm3, %xmm4
pxor %xmm8, %xmm4
movdqa %xmm2, %xmm6
pcmpgtd %xmm4, %xmm6
pcmpeqd %xmm7, %xmm5
pand %xmm5, %xmm6
psrld $0x1f, %xmm6
packssdw %xmm6, %xmm6
paddw %xmm6, %xmm1
packssdw %xmm5, %xmm5
psubw %xmm5, %xmm0
addl $0x4, %eax
paddd %xmm11, %xmm3
cmpl $0x100, %eax            # imm = 0x100
jne 0x5923
pshufd $0x55, %xmm1, %xmm2     # xmm2 = xmm1[1,1,1,1]
paddw %xmm1, %xmm2
movdqa %xmm2, %xmm1
psrld $0x10, %xmm1
paddw %xmm2, %xmm1
pextrw $0x0, %xmm1, %ecx
pshufd $0x55, %xmm0, %xmm1     # xmm1 = xmm0[1,1,1,1]
paddw %xmm0, %xmm1
movdqa %xmm1, %xmm0
psrld $0x10, %xmm0
paddw %xmm1, %xmm0
pextrw $0x0, %xmm0, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movl %eax, %r14d
imull %eax, %ecx
addl %r12d, %ecx
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x59fb
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x4cb9
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x5a38
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x55f0(%rip), %xmm0     # 0xb008
addsd 0x55f0(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x59d7
movzwl %ax, %eax
addl %eax, %ecx
addw 0xc(%rdi), %r15w
movzwl %r15w, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movzwl %bp, %edx
imull %eax, %edx
addl %r12d, %edx
movzwl %cx, %r14d
imull %eax, %r14d
movl %edx, %r12d
movl 0x44(%rsp), %r13d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x5aa5
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x533f
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x5ae2
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x5546(%rip), %xmm0     # 0xb008
addsd 0x5546(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x5a81
movl $0x0, 0xa8(%rsp)
movl %ecx, %eax
movl %eax, 0x8(%rsp)
movl %r10d, %r9d
movl $0x0, 0x10(%rsp)
xorl %r10d, %r10d
xorl %r8d, %r8d
xorl %r11d, %r11d
jmp 0x5b77
xorl %r8d, %r8d
movl %ecx, %eax
movl %eax, 0x8(%rsp)
movl %r10d, %r9d
movl $0x0, 0x10(%rsp)
xorl %r10d, %r10d
jmp 0x5b73
movb (%rax,%r10,2), %r9b
movb 0x48(%rsp), %sil
movb %sil, (%rax,%r10,2)
movq 0x60(%rsp), %rdi
movq 0x78(%rsp), %rsi
movb %r9b, 0x7(%rdi,%rsi)
movb %cl, -0x1(%rax,%r10,2)
movb $0x0, 0x6(%rdi,%rsi)
movl $0x1, 0x10(%rsp)
movl $0x0, 0x8(%rsp)
movzwl (%rdx), %r11d
movq 0x58(%rsp), %rax
shrl $0x5, %eax
movl 0xb8(%rsp), %ecx
andl 0x80(%rsp,%rax,4), %ecx
movzbl 0x48(%rsp), %ecx
movl $0x0, %esi
cmovnel %esi, %ecx
movzwl 0x4(%rdx), %eax
cmpw $0x1, %ax
adcl $0x0, %eax
addl %ecx, %r11d
cmpl $0x0, 0x10(%rsp)
je 0x5bcb
testl %r10d, %r10d
movl $0x0, %edx
cmovgl %ecx, %edx
cmovnel %esi, %ecx
addl %edx, %r8d
movzbl %r9b, %esi
addl %ecx, %esi
jmp 0x5c4e
movb %r9b, 0x38(%rsp)
movq %rdx, %r9
movl 0xa8(%rsp), %ecx
movzwl %cx, %esi
testw %cx, %cx
movl 0x20(%rsp), %ecx
movq 0x78(%rsp), %r10
je 0x5c1e
movq 0xe0(%rsp), %rcx
leaq (%rcx,%r10), %rdx
xorl %edi, %edi
movzbl (%rdx,%rdi,2), %ecx
movl $0x1, %r8d
shll %cl, %r8d
shrl $0x5, %ecx
orl %r8d, 0x80(%rsp,%rcx,4)
movl $0x1, %ecx
incq %rdi
cmpq %rdi, %rsi
jne 0x5bf9
movl %ecx, 0x20(%rsp)
movb 0x38(%rsp), %cl
movb %cl, 0x7(%r9,%rsi,2)
movl 0x8(%rsp), %ecx
movb %cl, 0x6(%r9,%rsi,2)
movq 0x60(%rsp), %rcx
movw $0x0, 0x6(%rcx,%r10)
leal 0x1(%rsi), %ecx
movw %cx, 0x2(%r9)
movl %r11d, %r8d
movl %eax, %esi
addl %eax, %r11d
movzwl %r11w, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %r8w, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %si, %r14d
imull %eax, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x5c91
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x5ce9
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x5cce
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x535a(%rip), %xmm0     # 0xb008
addsd 0x535a(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x5c71
cmpl $0x0, 0x10(%rsp)
jne 0x667b
movzbl 0x2a0616(%rbp), %ecx
movl $0x1, %r10d
shll %cl, %r10d
movb 0x2a0617(%rbp), %dil
movzwl 0x2a0612(%rbp), %edx
cmpl $0x0, 0x20(%rsp)
movb %dil, 0x8(%rsp)
je 0x5e0a
testq %rdx, %rdx
je 0x5e4a
movl %r10d, 0x38(%rsp)
xorl %r13d, %r13d
movq %rcx, 0x20(%rsp)
movl %ecx, %eax
movl %eax, 0x10(%rsp)
movl %edi, %r9d
xorl %edi, %edi
xorl %esi, %esi
xorl %r8d, %r8d
xorl %ebp, %ebp
movq 0x18(%rsp), %r10
movzbl 0x2a0616(%r10,%r13,2), %ecx
movl $0x1, %r11d
shll %cl, %r11d
movl %ecx, %eax
shrl $0x5, %eax
andl 0x80(%rsp,%rax,4), %r11d
movzbl 0x2a0617(%r10,%r13,2), %eax
movl %r11d, %r10d
orl %ebp, %r10d
movl %eax, %r15d
je 0x5d85
xorl %r15d, %r15d
testl %ecx, %ecx
cmovel %ecx, %r15d
movl %eax, %r10d
testl %r11d, %r11d
je 0x5d96
xorl %r10d, %r10d
testl %ecx, %ecx
jne 0x5dd4
movq 0x18(%rsp), %rcx
movb %r9b, 0x2a0617(%rcx,%r13,2)
movb %al, 0x2a0617(%rcx)
movl 0x10(%rsp), %r8d
movb %r8b, 0x2a0616(%rcx,%r13,2)
movb $0x0, 0x2a0616(%rcx)
movl $0x1, %ebp
movl $0x0, 0x10(%rsp)
movl %eax, %r9d
movl %r13d, %r8d
addl %esi, %r15d
addl %edi, %r10d
movl %r15d, %esi
movl %r10d, %edi
incq %r13
cmpq %r13, %rdx
jne 0x5d4a
movq 0x18(%rsp), %rax
movq 0x68(%rsp), %r15
movl 0x44(%rsp), %r13d
movq 0x20(%rsp), %rcx
movl 0x38(%rsp), %r10d
jmp 0x645a
testq %rdx, %rdx
je 0x6409
xorl %r8d, %r8d
xorl %esi, %esi
cmpb $0x0, 0x2a0616(%rbp,%r8,2)
je 0x641b
movzbl 0x2a0617(%rbp,%r8,2), %eax
addl %eax, %esi
incq %r8
cmpq %r8, %rdx
jne 0x5e18
xorl %ebp, %ebp
movl %ecx, %eax
movl %eax, 0x10(%rsp)
movl %edi, %r9d
jmp 0x6416
xorl %edx, %edx
movl %ecx, %eax
movl %eax, 0x10(%rsp)
movl %edi, %r9d
xorl %ebp, %ebp
xorl %r8d, %r8d
xorl %esi, %esi
xorl %edi, %edi
movq 0x18(%rsp), %rax
jmp 0x645a
movb 0x2a0617(%rbp,%rdi,2), %r9b
movb %r8b, 0x2a0617(%rbp,%rdi,2)
movb %r9b, 0x2a0617(%rbp)
movb %cl, 0x2a0616(%rbp,%rdi,2)
movb %r15b, 0x2a0616(%rbp)
movl $0x1, %ebp
movb %r15b, 0x8(%rsp)
movq 0x18(%rsp), %rax
movzwl 0x2a0610(%rax), %r8d
shrl $0x5, %ecx
andl 0x80(%rsp,%rcx,4), %r10d
movzbl 0x20(%rsp), %ecx
movl $0x0, %r10d
cmovnel %r10d, %ecx
movzwl 0x2a0614(%rax), %eax
cmpw $0x1, %ax
adcl $0x0, %eax
addl %ecx, %r8d
testl %ebp, %ebp
je 0x5eeb
testl %edi, %edi
movl $0x0, %edx
cmovgl %ecx, %edx
cmovnel %r10d, %ecx
addl %edx, %esi
movzbl %r9b, %edi
addl %ecx, %edi
jmp 0x5f4d
movzwl %dx, %esi
testw %dx, %dx
movq 0x68(%rsp), %r10
je 0x5f18
xorl %edx, %edx
movzbl (%r10,%rdx,2), %ecx
movl $0x1, %edi
shll %cl, %edi
shrl $0x5, %ecx
orl %edi, 0x80(%rsp,%rcx,4)
incq %rdx
cmpq %rdx, %rsi
jne 0x5efa
movq 0x18(%rsp), %rdx
movb %r9b, 0x2a0617(%rdx,%rsi,2)
movb 0x8(%rsp), %cl
movb %cl, 0x2a0616(%rdx,%rsi,2)
movb %r15b, 0x2a0616(%rdx)
movb $0x0, 0x2a0617(%rdx)
leal 0x1(%rsi), %ecx
movw %cx, 0x2a0612(%rdx)
movl %eax, %edi
movl %r8d, %esi
addl %eax, %r8d
movzwl %r8w, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %si, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %di, %r14d
imull %eax, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x5f8f
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x5fe7
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x5fcc
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x505c(%rip), %xmm0     # 0xb008
addsd 0x505c(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x5f6f
testl %ebp, %ebp
je 0x628a
movq 0x18(%rsp), %rbp
movb 0x2a0617(%rbp), %al
leal 0x1(%rax), %ecx
movb %cl, 0x2a0617(%rbp)
movb %r15b, 0x2a0616(%rbp)
incw 0x2a0610(%rbp)
xorl %edx, %edx
cmpb $0x2, %cl
sete %dl
cmpb $0x1, %al
sbbw $0x0, %dx
negl %edx
addw %dx, 0x2a0614(%rbp)
cmpb $-0x5, %cl
jb 0x60d7
movl $0x0, 0x2a0610(%rbp)
movw $0x0, 0x2a0614(%rbp)
xorl %edx, %edx
xorl %ecx, %ecx
xorl %eax, %eax
movslq %edx, %rsi
movq 0x68(%rsp), %r9
movb 0x1(%r9,%rsi,2), %dil
movl %edi, %r8d
shrb %r8b
movslq %ecx, %rdx
movb %r8b, 0x1(%r9,%rdx,2)
cmpb $0x2, %dil
jae 0x606f
incl %eax
jmp 0x60ab
movb 0x2a0616(%rbp,%rsi,2), %cl
movb %cl, 0x2a0616(%rbp,%rdx,2)
incw 0x2a0612(%rbp)
movzbl 0x2a0617(%rbp,%rdx,2), %ecx
addw %cx, 0x2a0610(%rbp)
xorl %ecx, %ecx
cmpb $0x1, 0x2a0617(%rbp,%rdx,2)
sete %cl
addw %cx, 0x2a0614(%rbp)
incl %edx
movl %edx, %ecx
leal (%rcx,%rax), %edx
cmpl $0x100, %edx            # imm = 0x100
jl 0x604a
movzwl 0x2a0612(%rbp), %eax
addl %eax, %eax
movq 0x68(%rsp), %rcx
leaq (%rcx,%rax), %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %esi, %esi
callq 0x10e0
movl (%rbp), %eax
movzbl %al, %ecx
imulq $0x206, %rcx, %rcx      # imm = 0x206
movq 0x60(%rsp), %r8
movb 0x7(%r8,%rcx), %dl
leal 0x1(%rdx), %esi
movb %sil, 0x7(%r8,%rcx)
movb %r15b, 0x6(%r8,%rcx)
incw (%r8,%rcx)
xorl %edi, %edi
cmpb $0x2, %sil
sete %dil
cmpb $0x1, %dl
sbbw $0x0, %di
negl %edi
addw %di, 0x4(%r8,%rcx)
cmpb $-0x5, %sil
jb 0x61b1
leaq (%r8,%rcx), %rax
leaq (%r8,%rcx), %rdi
addq $0x6, %rdi
movl $0x0, (%rax)
movw $0x0, 0x4(%rax)
xorl %esi, %esi
xorl %edx, %edx
xorl %ecx, %ecx
movslq %esi, %r8
movb 0x1(%rdi,%r8,2), %r9b
movl %r9d, %r10d
shrb %r10b
movslq %edx, %rsi
movb %r10b, 0x1(%rdi,%rsi,2)
cmpb $0x2, %r9b
jae 0x6161
incl %ecx
jmp 0x6188
movb 0x6(%rax,%r8,2), %dl
movb %dl, 0x6(%rax,%rsi,2)
incw 0x2(%rax)
movzbl 0x7(%rax,%rsi,2), %edx
addw %dx, (%rax)
xorl %edx, %edx
cmpb $0x1, 0x7(%rax,%rsi,2)
sete %dl
addw %dx, 0x4(%rax)
incl %esi
movl %esi, %edx
leal (%rdx,%rcx), %esi
cmpl $0x100, %esi            # imm = 0x100
jl 0x6141
movzwl 0x2(%rax), %eax
addl %eax, %eax
addq %rax, %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %esi, %esi
callq 0x10e0
movzwl (%rbp), %eax
jmp 0x61b4
movzwl %ax, %eax
movl %eax, %eax
movq 0x200010(%rbp,%rax,8), %rax
movb 0x7(%rax), %cl
leal 0x1(%rcx), %edx
movb %dl, 0x7(%rax)
movb %r15b, 0x6(%rax)
incw (%rax)
xorl %esi, %esi
cmpb $0x2, %dl
sete %sil
cmpb $0x1, %cl
sbbw $0x0, %si
negl %esi
addw %si, 0x4(%rax)
cmpb $-0x5, %dl
jb 0x626d
leaq 0x6(%rax), %rdi
movl $0x0, (%rax)
movw $0x0, 0x4(%rax)
xorl %esi, %esi
xorl %edx, %edx
xorl %ecx, %ecx
movslq %esi, %r8
movb 0x1(%rdi,%r8,2), %r9b
movl %r9d, %r10d
shrb %r10b
movslq %edx, %rsi
movb %r10b, 0x1(%rdi,%rsi,2)
cmpb $0x2, %r9b
jae 0x6223
incl %ecx
jmp 0x624a
movb 0x6(%rax,%r8,2), %dl
movb %dl, 0x6(%rax,%rsi,2)
incw 0x2(%rax)
movzbl 0x7(%rax,%rsi,2), %edx
addw %dx, (%rax)
xorl %edx, %edx
cmpb $0x1, 0x7(%rax,%rsi,2)
sete %dl
addw %dx, 0x4(%rax)
incl %esi
movl %esi, %edx
leal (%rdx,%rcx), %esi
cmpl $0x100, %esi            # imm = 0x100
jl 0x6203
movzwl 0x2(%rax), %eax
addl %eax, %eax
addq %rax, %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %esi, %esi
callq 0x10e0
movq %rbp, %rdi
movq 0x30(%rsp), %rsi
movl 0x10(%rsp), %edx
callq 0x710b
movb $0x0, 0x2a0829(%rbp)
jmp 0x683a
movd 0x10(%rsp), %xmm0
pshufd $0x0, %xmm0, %xmm2      # xmm2 = xmm0[0,0,0,0]
pxor %xmm1, %xmm1
xorl %eax, %eax
movdqa 0x4d8c(%rip), %xmm8     # 0xb030
por %xmm8, %xmm2
movdqa 0x4d9f(%rip), %xmm3     # 0xb050
pxor %xmm0, %xmm0
movq 0x18(%rsp), %rbp
pxor %xmm7, %xmm7
movdqa 0x4d99(%rip), %xmm9     # 0xb060
movdqa 0x4da0(%rip), %xmm10    # 0xb070
movdqa 0x4da7(%rip), %xmm11    # 0xb080
movl %eax, %ecx
shrl $0x5, %ecx
movd 0x80(%rsp,%rcx,4), %xmm4
pshufd $0x0, %xmm4, %xmm4      # xmm4 = xmm4[0,0,0,0]
movdqa %xmm3, %xmm5
pslld $0x17, %xmm5
pand %xmm9, %xmm5
paddd %xmm10, %xmm5
cvttps2dq %xmm5, %xmm5
pand %xmm4, %xmm5
movdqa %xmm3, %xmm4
pxor %xmm8, %xmm4
movdqa %xmm2, %xmm6
pcmpgtd %xmm4, %xmm6
pcmpeqd %xmm7, %xmm5
pand %xmm5, %xmm6
psrld $0x1f, %xmm6
packssdw %xmm6, %xmm6
paddw %xmm6, %xmm1
packssdw %xmm5, %xmm5
psubw %xmm5, %xmm0
addl $0x4, %eax
paddd %xmm11, %xmm3
cmpl $0x100, %eax            # imm = 0x100
jne 0x62d9
pshufd $0x55, %xmm1, %xmm2     # xmm2 = xmm1[1,1,1,1]
paddw %xmm1, %xmm2
movdqa %xmm2, %xmm1
psrld $0x10, %xmm1
paddw %xmm2, %xmm1
pextrw $0x0, %xmm1, %ecx
pshufd $0x55, %xmm0, %xmm1     # xmm1 = xmm0[1,1,1,1]
paddw %xmm0, %xmm1
movdqa %xmm1, %xmm0
psrld $0x10, %xmm0
paddw %xmm1, %xmm0
pextrw $0x0, %xmm0, %esi
movl %r14d, %eax
xorl %edx, %edx
divl %esi
movl %eax, %r14d
imull %eax, %ecx
addl %r12d, %ecx
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x63b1
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x5ff4
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x63ee
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x4c3a(%rip), %xmm0     # 0xb008
addsd 0x4c3a(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x638d
xorl %esi, %esi
movl %ecx, %eax
movl %eax, 0x10(%rsp)
movl %edi, %r9d
xorl %ebp, %ebp
xorl %r8d, %r8d
jmp 0x644e
movb 0x2a0617(%rbp,%r8,2), %r9b
movb %dil, 0x2a0617(%rbp,%r8,2)
movb %r9b, 0x2a0617(%rbp)
movb %cl, 0x2a0616(%rbp,%r8,2)
movb $0x0, 0x2a0616(%rbp)
movl $0x1, %ebp
movl $0x0, 0x10(%rsp)
movq 0x18(%rsp), %rax
movzwl 0x2a0610(%rax), %edi
shrl $0x5, %ecx
andl 0x80(%rsp,%rcx,4), %r10d
movzbl 0x8(%rsp), %ecx
movl $0x0, %r10d
cmovnel %r10d, %ecx
movzwl 0x2a0614(%rax), %eax
cmpw $0x1, %ax
adcl $0x0, %eax
addl %ecx, %edi
testl %ebp, %ebp
je 0x64a2
testl %r8d, %r8d
movl $0x0, %edx
cmovgl %ecx, %edx
cmovnel %r10d, %ecx
addl %edx, %esi
movzbl %r9b, %r8d
addl %ecx, %r8d
jmp 0x64fd
movzwl %dx, %esi
testw %dx, %dx
je 0x64cd
xorl %edx, %edx
movzbl (%r15,%rdx,2), %ecx
movl $0x1, %r8d
shll %cl, %r8d
shrl $0x5, %ecx
orl %r8d, 0x80(%rsp,%rcx,4)
incq %rdx
cmpq %rdx, %rsi
jne 0x64ac
movq 0x18(%rsp), %rdx
movb %r9b, 0x2a0617(%rdx,%rsi,2)
movl 0x10(%rsp), %ecx
movb %cl, 0x2a0616(%rdx,%rsi,2)
movw $0x0, 0x2a0616(%rdx)
leal 0x1(%rsi), %ecx
movw %cx, 0x2a0612(%rdx)
movl %edi, %esi
movl %eax, %r8d
addl %eax, %edi
movzwl %di, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movzwl %si, %ecx
imull %eax, %ecx
addl %r12d, %ecx
movzwl %r8w, %r14d
imull %eax, %r14d
movl %ecx, %r12d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x653d
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x6595
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x657a
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x4aae(%rip), %xmm0     # 0xb008
addsd 0x4aae(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x651d
testl %ebp, %ebp
je 0x68da
movq 0x18(%rsp), %rbp
movb 0x2a0617(%rbp), %al
leal 0x1(%rax), %ecx
movb %cl, 0x2a0617(%rbp)
movb $0x0, 0x2a0616(%rbp)
incw 0x2a0610(%rbp)
xorl %edx, %edx
cmpb $0x2, %cl
sete %dl
cmpb $0x1, %al
sbbw $0x0, %dx
negl %edx
addw %dx, 0x2a0614(%rbp)
cmpb $-0x5, %cl
jb 0x667b
movl $0x0, 0x2a0610(%rbp)
movw $0x0, 0x2a0614(%rbp)
xorl %edx, %edx
xorl %ecx, %ecx
xorl %eax, %eax
movslq %edx, %rsi
movb 0x1(%r15,%rsi,2), %dil
movl %edi, %r8d
shrb %r8b
movslq %ecx, %rdx
movb %r8b, 0x1(%r15,%rdx,2)
cmpb $0x2, %dil
jae 0x6618
incl %eax
jmp 0x6654
movb 0x2a0616(%rbp,%rsi,2), %cl
movb %cl, 0x2a0616(%rbp,%rdx,2)
incw 0x2a0612(%rbp)
movzbl 0x2a0617(%rbp,%rdx,2), %ecx
addw %cx, 0x2a0610(%rbp)
xorl %ecx, %ecx
cmpb $0x1, 0x2a0617(%rbp,%rdx,2)
sete %cl
addw %cx, 0x2a0614(%rbp)
incl %edx
movl %edx, %ecx
leal (%rcx,%rax), %edx
cmpl $0x100, %edx            # imm = 0x100
jl 0x65f8
movzwl 0x2a0612(%rbp), %eax
addl %eax, %eax
leaq (%r15,%rax), %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %esi, %esi
callq 0x10e0
movl (%rbp), %eax
movzbl %al, %ecx
imulq $0x206, %rcx, %rcx      # imm = 0x206
movq 0x60(%rsp), %r8
movb 0x7(%r8,%rcx), %dl
leal 0x1(%rdx), %esi
movb %sil, 0x7(%r8,%rcx)
movb $0x0, 0x6(%r8,%rcx)
incw (%r8,%rcx)
xorl %edi, %edi
cmpb $0x2, %sil
sete %dil
cmpb $0x1, %dl
sbbw $0x0, %di
negl %edi
addw %di, 0x4(%r8,%rcx)
cmpb $-0x5, %sil
jb 0x6756
leaq (%r8,%rcx), %rax
leaq (%r8,%rcx), %rdi
addq $0x6, %rdi
movl $0x0, (%rax)
movw $0x0, 0x4(%rax)
xorl %esi, %esi
xorl %edx, %edx
xorl %ecx, %ecx
movslq %esi, %r8
movb 0x1(%rdi,%r8,2), %r9b
movl %r9d, %r10d
shrb %r10b
movslq %edx, %rsi
movb %r10b, 0x1(%rdi,%rsi,2)
cmpb $0x2, %r9b
jae 0x6706
incl %ecx
jmp 0x672d
movb 0x6(%rax,%r8,2), %dl
movb %dl, 0x6(%rax,%rsi,2)
incw 0x2(%rax)
movzbl 0x7(%rax,%rsi,2), %edx
addw %dx, (%rax)
xorl %edx, %edx
cmpb $0x1, 0x7(%rax,%rsi,2)
sete %dl
addw %dx, 0x4(%rax)
incl %esi
movl %esi, %edx
leal (%rdx,%rcx), %esi
cmpl $0x100, %esi            # imm = 0x100
jl 0x66e6
movzwl 0x2(%rax), %eax
addl %eax, %eax
addq %rax, %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %esi, %esi
callq 0x10e0
movzwl (%rbp), %eax
jmp 0x6759
movzwl %ax, %eax
movl %eax, %eax
movq 0x200010(%rbp,%rax,8), %rax
movb 0x7(%rax), %cl
leal 0x1(%rcx), %edx
movb %dl, 0x7(%rax)
movb $0x0, 0x6(%rax)
incw (%rax)
xorl %esi, %esi
cmpb $0x2, %dl
sete %sil
cmpb $0x1, %cl
sbbw $0x0, %si
negl %esi
addw %si, 0x4(%rax)
xorl %ebp, %ebp
cmpb $-0x5, %dl
jb 0x6814
leaq 0x6(%rax), %rdi
movl $0x0, (%rax)
movw $0x0, 0x4(%rax)
xorl %edx, %edx
xorl %ecx, %ecx
movslq %ebp, %r8
movb 0x1(%rdi,%r8,2), %r9b
movl %r9d, %r10d
shrb %r10b
movslq %edx, %rsi
movb %r10b, 0x1(%rdi,%rsi,2)
cmpb $0x2, %r9b
jae 0x67c8
incl %ecx
jmp 0x67ef
movb 0x6(%rax,%r8,2), %dl
movb %dl, 0x6(%rax,%rsi,2)
incw 0x2(%rax)
movzbl 0x7(%rax,%rsi,2), %edx
addw %dx, (%rax)
xorl %edx, %edx
cmpb $0x1, 0x7(%rax,%rsi,2)
sete %dl
addw %dx, 0x4(%rax)
incl %esi
movl %esi, %edx
leal (%rdx,%rcx), %ebp
cmpl $0x100, %ebp            # imm = 0x100
jl 0x67a8
movzwl 0x2(%rax), %eax
addl %eax, %eax
addq %rax, %rdi
movl $0x200, %edx            # imm = 0x200
subq %rax, %rdx
xorl %ebp, %ebp
xorl %esi, %esi
callq 0x10e0
movq 0x18(%rsp), %r15
movq %r15, %rdi
movq 0x30(%rsp), %rsi
xorl %edx, %edx
callq 0x710b
movb %bpl, 0x2a0829(%r15)
movq %r15, %rbp
movq 0xd0(%rsp), %r15
movq 0xf8(%rsp), %rdi
testl %r15d, %r15d
movq 0x118(%rsp), %rsi
jle 0x6879
movl (%rbp), %eax
movq 0xc0(%rsp), %rcx
addq (%rcx), %rdi
xorl %ecx, %ecx
shll $0x8, %eax
movl %eax, (%rbp)
movzbl (%rdi,%rcx), %edx
orl %edx, %eax
movl %eax, (%rbp)
incq %rcx
cmpl %ecx, %r15d
jne 0x685f
addl %ecx, %r13d
movq 0x110(%rsp), %rcx
testq %rcx, %rcx
je 0x68bf
movl 0x8(%rbx), %edx
cmpq $0x7d01, %rdx           # imm = 0x7D01
jb 0x68bf
movq (%rbx), %rdi
movl $0x1, %esi
callq 0x1210
movq 0x118(%rsp), %rsi
movl 0xa4(%rsp), %eax
addl 0x8(%rbx), %eax
movl %eax, 0xa4(%rsp)
movl $0x0, 0x8(%rbx)
incl %esi
movq 0xc0(%rsp), %rax
movl 0x8(%rax), %eax
cmpl %eax, %r13d
jb 0x1b13
jmp 0x6a48
pxor %xmm0, %xmm0
xorl %eax, %eax
movdqa 0x4768(%rip), %xmm1     # 0xb050
movq 0x18(%rsp), %rbp
movdqa 0x478a(%rip), %xmm8     # 0xb080
movdqa 0x4791(%rip), %xmm9     # 0xb090
pcmpeqd %xmm10, %xmm10
movdqa 0x4793(%rip), %xmm11    # 0xb0a0
movl %eax, %ecx
shrl $0x5, %ecx
movd 0x80(%rsp,%rcx,4), %xmm2
pxor %xmm10, %xmm2
movdqa %xmm1, %xmm3
pand %xmm9, %xmm3
pshufd $0x0, %xmm2, %xmm4      # xmm4 = xmm2[0,0,0,0]
pshufd $0xee, %xmm3, %xmm5     # xmm5 = xmm3[2,3,2,3]
pshuflw $0xfe, %xmm5, %xmm6     # xmm6 = xmm5[2,3,3,3,4,5,6,7]
movdqa %xmm4, %xmm7
psrld %xmm6, %xmm7
pshuflw $0x54, %xmm5, %xmm5     # xmm5 = xmm5[0,1,1,1,4,5,6,7]
movdqa %xmm4, %xmm6
psrld %xmm5, %xmm6
punpckhqdq %xmm7, %xmm6    # xmm6 = xmm6[1],xmm7[1]
pshuflw $0x54, %xmm3, %xmm5     # xmm5 = xmm3[0,1,1,1,4,5,6,7]
psrld %xmm5, %xmm2
pshuflw $0xfe, %xmm3, %xmm3     # xmm3 = xmm3[2,3,3,3,4,5,6,7]
psrld %xmm3, %xmm4
punpcklqdq %xmm4, %xmm2    # xmm2 = xmm2[0],xmm4[0]
shufps $0xcc, %xmm6, %xmm2     # xmm2 = xmm2[0,3],xmm6[0,3]
pshuflw $0xe8, %xmm2, %xmm2     # xmm2 = xmm2[0,2,2,3,4,5,6,7]
pshufhw $0xe8, %xmm2, %xmm2     # xmm2 = xmm2[0,1,2,3,4,6,6,7]
pshufd $0xe8, %xmm2, %xmm2     # xmm2 = xmm2[0,2,2,3]
pand %xmm11, %xmm2
paddw %xmm2, %xmm0
addl $0x4, %eax
paddd %xmm8, %xmm1
cmpl $0x100, %eax            # imm = 0x100
jne 0x690d
pshufd $0x55, %xmm0, %xmm1     # xmm1 = xmm0[1,1,1,1]
paddw %xmm0, %xmm1
movdqa %xmm1, %xmm0
psrld $0x10, %xmm0
paddw %xmm1, %xmm0
pextrw $0x0, %xmm0, %ecx
movl %r14d, %eax
xorl %edx, %edx
divl %ecx
movl %eax, %r14d
leal (%r12,%r14), %eax
xorl %r12d, %eax
cmpl $0x1000000, %eax        # imm = 0x1000000
jb 0x69df
cmpl $0xffff, %r14d          # imm = 0xFFFF
ja 0x65a2
movl %r12d, %eax
negl %eax
movzwl %ax, %r14d
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x6a1c
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x460c(%rip), %xmm0     # 0xb008
addsd 0x460c(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x69bb
movl $0xffffffff, %r14d      # imm = 0xFFFFFFFF
movl $0x0, 0xa4(%rsp)
movq 0x100(%rsp), %rdi
xorl %esi, %esi
callq 0x1220
movq 0x138(%rsp), %rdi
callq 0x1030
movq 0x140(%rsp), %rdi
callq 0x1030
movq 0x148(%rsp), %rdi
callq 0x1030
movl %r12d, %eax
orl %r14d, %eax
je 0x6ade
movl 0x8(%rbx), %ecx
movq (%rbx), %rax
cmpl 0xc(%rbx), %ecx
jne 0x6ac3
movl %ecx, %ecx
xorps %xmm0, %xmm0
cvtsi2sd %rcx, %xmm0
mulsd 0x4565(%rip), %xmm0     # 0xb008
addsd 0x4565(%rip), %xmm0     # 0xb010
cvttsd2si %xmm0, %rcx
movl %ecx, 0xc(%rbx)
movl %ecx, %esi
movq %rax, %rdi
callq 0x11b0
movq %rax, (%rbx)
movl 0x8(%rbx), %ecx
movl %r12d, %edx
shrl $0x18, %edx
leal 0x1(%rcx), %esi
movl %esi, 0x8(%rbx)
movl %ecx, %ecx
movb %dl, (%rax,%rcx)
shll $0x8, %r12d
shll $0x8, %r14d
jmp 0x6a7e
movq 0x110(%rsp), %rcx
testq %rcx, %rcx
je 0x6b0e
movq (%rbx), %rdi
movl 0x8(%rbx), %edx
movl $0x1, %esi
callq 0x1210
movl 0xa4(%rsp), %eax
addl 0x8(%rbx), %eax
movl $0x0, 0x8(%rbx)
jmp 0x6b15
movl 0xa4(%rsp), %eax
addq $0x7d588, %rsp          # imm = 0x7D588
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq