Function at 0x14019daa0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd8]
sub rsp, 0x1d8
mov rax, qword [0x140276168]
xor rax, rsp
mov qword [rbp + 0xc0], rax
mov ebx, dword [rcx + 0x18]
lea r14, [rcx + 0x48]
add rbx, qword [rcx + 8]
mov r13, rcx
mov eax, dword [r8 + 8]
mov rdi, rdx
movsd xmm0, qword [r8]
mov rsi, r9
mov dword [rbp - 0x30], eax
mov dword [rbp + 0xb8], eax
mov qword [rsp + 0x78], rcx
mov qword [rbp + 0x70], rdx
mov rdx, qword [rbp + 0x140]
mov qword [rbp], r9
mov r8, rdx
mov qword [rbp + 0x78], rdx
movsd qword [rbp - 0x60], xmm0
lea r15, [rdx + r9]
movsd qword [rbp + 0xb0], xmm0
lea rax, [r15 - 8]
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rax
mov r9d, 2
mov eax, dword [rcx + 0xcc]
mov rdx, rsi
mov ecx, 0xfff
mov qword [rsp + 0x58], r15
cmp eax, ecx
cmovb ecx, eax
xor eax, eax
cmp dword [r13 + 0xc8], 3
mov dword [rbp + 8], ecx
mov rcx, qword [r13 + 0x70]
setne al
add eax, 3
mov qword [rbp - 0x48], rcx
mov dword [rbp - 0x50], eax
mov rcx, r14
mov rax, qword [r13 + 0x68]
mov qword [rbp - 0x68], rax
mov eax, dword [r13 + 0x24]
mov dword [r13 + 0x28], eax
call fcn.1401a1300
xor edx, edx
mov eax, edx
cmp rsi, rbx
sete al
lea r12, [rax + rsi]
lea rax, [r15 - 8]
mov qword [rbp - 0x70], r12
cmp r12, rax
jae 0x1401a0ca3
mov eax, dword [rbp + 0x58]
movabs rcx, 0xcf1bbcdcbf9b0000
movsd xmm4, qword [rbp + 0x50]
movsd xmm3, qword [rbp - 0x60]
mov dword [rbp - 0x10], eax
nop dword [rax + rax]
mov ebx, dword [r13 + 0x24]
mov eax, r12d
mov r14, qword [r13 + 8]
sub eax, esi
mov edi, dword [r13 + 0xc8]
mov r11d, edx
sete r11b
mov dword [rbp - 0x58], eax
mov dword [rsp + 0x60], r11d
lea rax, [r14 + rbx]
cmp r12, rax
jb 0x1401a0c77
mov esi, r12d
sub esi, r14d
cmp ebx, esi
jae 0x14019dc31
xor r12d, r12d
nop dword [rax]
mov edx, ebx
mov r9d, edi
add rdx, r14
mov dword [rsp + 0x20], r12d
mov r8, r15
mov rcx, r13
call fcn.1401a0dc0
add ebx, eax
cmp ebx, esi
jb 0x14019dc00
mov r11d, dword [rsp + 0x60]
movabs rcx, 0xcf1bbcdcbf9b0000
mov r12, qword [rbp - 0x70]
mov dword [r13 + 0x24], esi
sub edi, 3
je 0x14019e903
sub edi, 1
je 0x14019e4d3
sub edi, 1
je 0x14019e0ac
sub edi, 1
je 0x14019dc5e
cmp edi, 1
jne 0x14019e4d3
mov eax, dword [r13 + 0xcc]
mov r11d, r12d
mov rdx, qword [r12]
mov edi, 1
mov r9, qword [r13 + 0x40]
mov esi, 0xfff
mov r8, qword [r13 + 0x30]
cmp eax, esi
mov r12d, dword [rbp - 0x50]
cmovb esi, eax
mov qword [rbp - 0x20], r9
mov rax, qword [r13 + 8]
xor ebx, ebx
sub r11d, eax
mov qword [rbp - 0x18], rax
imul rdx, rcx
mov eax, 0x40
mov qword [rbp - 0x60], rbx
sub eax, dword [r13 + 0xc0]
movzx ecx, al
mov qword [rsp + 0x48], rbx
shr rdx, cl
mov eax, r11d
mov ecx, dword [r13 + 0xbc]
lea r15, [r8 + rdx*4]
mov r10d, dword [r15]
dec ecx
mov edx, edi
mov dword [rsp + 0x30], ebx
shl edx, cl
mov ecx, ebx
dec edx
mov dword [rsp + 0x70], r11d
sub eax, edx
mov dword [rsp + 0x68], edx
cmp edx, r11d
lea rbx, [rbp + 0xb0]
cmovb ecx, eax
mov eax, dword [r13 + 0x1c]
test eax, eax
mov dword [rsp + 0x40], ecx
mov ecx, edi
cmovne ecx, eax
mov eax, edx
mov rdx, qword [rsp + 0x78]
and eax, r11d
add eax, eax
mov dword [rsp + 0x6c], ecx
mov ecx, dword [rdx + 0xc4]
lea r13, [r9 + rax*4]
lea rax, [r13 + 4]
mov qword [rsp + 0x50], rax
lea eax, [r11 + 9]
mov dword [rsp + 0x38], eax
mov eax, edi
shl eax, cl
mov edi, r11d
sub edi, dword [rdx + 0x18]
dec r12d
mov dword [rsp + 0x64], eax
xor r11d, r11d
mov eax, dword [rsp + 0x60]
mov r9d, eax
lea r14d, [rax + 3]
lea rbx, [rbx + rax*4]
nop dword [rax + rax]
cmp r9d, 3
jne 0x14019dd60
mov ecx, dword [rbp + 0xb0]
dec ecx
jmp 0x14019dd62
mov ecx, dword [rbx]
lea eax, [rcx - 1]
mov edx, r11d
cmp eax, edi
jae 0x14019de39
mov r8, qword [rbp - 0x70]
neg rcx
mov eax, dword [r8]
cmp eax, dword [rcx + r8]
jne 0x14019de39
lea rdx, [r8 + 4]
add rdx, rcx
lea rcx, [r8 + 4]
mov r8, qword [rsp + 0x58]
mov r11, rcx
add r8, 0xfffffffffffffff9
cmp rcx, r8
jae 0x14019dde9
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019ddba
xor r11d, r11d
bsf rdx, rax
mov dword [rsp + 0x34], r11d
shr rdx, 3
jmp 0x14019de36
add rcx, 8
add rdx, 8
cmp rcx, r8
jae 0x14019dde9
nop word [rax + rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019df1e
add rcx, 8
add rdx, 8
cmp rcx, r8
jb 0x14019ddd0
mov r8, qword [rsp + 0x58]
lea rax, [r8 - 3]
cmp rcx, rax
jae 0x14019de05
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019de05
add rcx, 4
add rdx, 4
lea rax, [r8 - 1]
cmp rcx, rax
jae 0x14019de1e
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019de1e
add rcx, 2
add rdx, 2
cmp rcx, r8
jae 0x14019de2d
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019de2d
inc rcx
mov rdx, rcx
sub rdx, r11
xor r11d, r11d
add edx, 4
mov r8d, edx
cmp r8, r12
jbe 0x14019de8c
mov r11d, dword [rsp + 0x30]
mov eax, r9d
sub eax, dword [rsp + 0x60]
mov r12d, r8d
mov rcx, qword [rbp - 0x68]
mov dword [rcx + r11*8], eax
lea rcx, [rcx + r11*8]
mov rax, qword [rbp - 0x70]
inc r11d
add rax, r8
mov dword [rcx + 4], edx
mov dword [rsp + 0x30], r11d
xor r11d, r11d
cmp rax, qword [rsp + 0x58]
mov ecx, r11d
mov eax, r11d
sete cl
cmp edx, esi
seta al
or ecx, eax
jne 0x14019e093
inc r9d
add rbx, 4
cmp r9d, r14d
jb 0x14019dd50
mov esi, dword [rsp + 0x64]
mov eax, dword [rsp + 0x70]
mov dword [r15], eax
test esi, esi
je 0x14019e078
nop
dec esi
cmp r10d, dword [rsp + 0x6c]
jb 0x14019e075
mov r15, qword [rsp + 0x48]
mov eax, dword [rsp + 0x68]
mov r8, r15
mov rcx, qword [rbp - 0x20]
and eax, r10d
mov r14, qword [rsp + 0x58]
add eax, eax
cmp qword [rbp - 0x60], r15
mov r15, qword [rbp - 0x70]
cmovb r8, qword [rbp - 0x60]
mov r11d, r10d
lea rdi, [rcx + rax*4]
add r11, qword [rbp - 0x18]
lea r9, [r14 - 7]
lea rcx, [r8 + r15]
mov rbx, rcx
lea rdx, [r11 + r8]
cmp rcx, r9
jae 0x14019df69
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019df39
xor ebx, ebx
bsf rdx, rax
mov dword [rsp + 0x34], ebx
shr rdx, 3
jmp 0x14019dfb0
bsf rdx, rax
mov dword [rsp + 0x34], 0
shr rdx, 3
sub rdx, r11
add rdx, rcx
jmp 0x14019de33
add rcx, 8
add rdx, 8
cmp rcx, r9
jae 0x14019df69
nop word [rax + rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019e036
add rcx, 8
add rdx, 8
cmp rcx, r9
jb 0x14019df50
lea rax, [r14 - 3]
cmp rcx, rax
jae 0x14019df80
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019df80
add rcx, 4
add rdx, 4
lea rax, [r14 - 1]
cmp rcx, rax
jae 0x14019df99
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019df99
add rcx, 2
add rdx, 2
cmp rcx, r14
jae 0x14019dfa8
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019dfa8
inc rcx
mov rdx, rcx
sub rdx, rbx
xor ebx, ebx
add r8, rdx
cmp r8, r12
jbe 0x14019e012
mov eax, dword [rsp + 0x38]
mov edx, r8d
sub eax, r10d
cmp r8, rax
jbe 0x14019dfcf
lea eax, [r8 + r10]
mov dword [rsp + 0x38], eax
mov r9d, dword [rsp + 0x30]
mov r12, r8
mov eax, dword [rsp + 0x70]
mov rcx, qword [rbp - 0x68]
sub eax, r10d
add eax, 2
lea rcx, [rcx + r9*8]
mov dword [rcx], eax
inc r9d
mov dword [rcx + 4], edx
lea rax, [r8 + r15]
cmp rax, r14
mov dword [rsp + 0x30], r9d
mov ecx, ebx
mov eax, ebx
sete cl
cmp r8, 0x1000
seta al
or ecx, eax
jne 0x14019e075
movzx eax, byte [r8 + r15]
cmp byte [r11 + r8], al
jae 0x14019e051
mov dword [r13], r10d
mov qword [rbp - 0x60], r8
cmp r10d, dword [rsp + 0x40]
jbe 0x14019e09d
mov r10d, dword [rdi + 4]
lea r13, [rdi + 4]
jmp 0x14019e06d
bsf rdx, rax
mov dword [rsp + 0x34], 0
shr rdx, 3
sub rdx, rbx
add rdx, rcx
jmp 0x14019dfae
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x48], r8
mov dword [rax], r10d
cmp r10d, dword [rsp + 0x40]
jbe 0x14019e0a3
mov r10d, dword [rdi]
mov qword [rsp + 0x50], rdi
test esi, esi
jne 0x14019deb0
xor r11d, r11d
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x78]
mov dword [rax], r11d
mov eax, dword [rsp + 0x38]
add eax, 0xfffffff8
mov dword [r13], r11d
mov dword [rcx + 0x24], eax
mov r12d, dword [rsp + 0x30]
jmp 0x14019eda6
lea r13, [rbp + 0x30]
jmp 0x14019e075
lea rax, [rbp + 0x30]
xor r11d, r11d
jmp 0x14019e07d
mov eax, dword [r13 + 0xcc]
mov esi, 0xfff
mov r9, qword [r13 + 0x30]
cmp eax, esi
mov edx, dword [r13 + 0xc0]
mov r11d, r12d
cmovb esi, eax
mov r8d, 5
mov rax, qword [r13 + 8]
mov rcx, r12
sub r11d, eax
mov qword [rbp - 0x18], rax
mov dword [rsp + 0x70], r11d
call fcn.14019d8f0
mov ecx, dword [r13 + 0xbc]
lea r15, [r9 + rax*4]
mov r9, qword [r13 + 0x40]
dec ecx
mov r12d, dword [rbp - 0x50]
xor ebx, ebx
mov r10d, dword [r15]
mov edi, 1
mov edx, edi
mov qword [rbp - 0x60], rbx
shl edx, cl
mov eax, r11d
dec edx
mov qword [rsp + 0x48], rbx
sub eax, edx
mov dword [rsp + 0x30], ebx
cmp edx, r11d
mov dword [rsp + 0x68], edx
mov ecx, ebx
mov qword [rbp - 0x20], r9
cmovb ecx, eax
lea rbx, [rbp + 0xb0]
mov eax, dword [r13 + 0x1c]
test eax, eax
mov dword [rsp + 0x40], ecx
mov ecx, edi
cmovne ecx, eax
mov eax, edx
mov rdx, qword [rsp + 0x78]
and eax, r11d
add eax, eax
mov dword [rsp + 0x6c], ecx
mov ecx, dword [rdx + 0xc4]
lea r13, [r9 + rax*4]
lea rax, [r13 + 4]
mov qword [rsp + 0x50], rax
lea eax, [r11 + 9]
mov dword [rsp + 0x38], eax
mov eax, edi
shl eax, cl
mov edi, r11d
sub edi, dword [rdx + 0x18]
dec r12d
mov dword [rsp + 0x64], eax
xor r11d, r11d
mov eax, dword [rsp + 0x60]
mov r9d, eax
lea r14d, [rax + 3]
lea rbx, [rbx + rax*4]
cmp r9d, 3
jne 0x14019e1a4
mov ecx, dword [rbp + 0xb0]
dec ecx
jmp 0x14019e1a6
mov ecx, dword [rbx]
lea eax, [rcx - 1]
mov edx, r11d
cmp eax, edi
jae 0x14019e279
mov r8, qword [rbp - 0x70]
neg rcx
mov eax, dword [r8]
cmp eax, dword [rcx + r8]
jne 0x14019e279
lea rdx, [r8 + 4]
add rdx, rcx
lea rcx, [r8 + 4]
mov r8, qword [rsp + 0x58]
mov r11, rcx
add r8, 0xfffffffffffffff9
cmp rcx, r8
jae 0x14019e229
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019e1fe
xor r11d, r11d
bsf rdx, rax
mov dword [rsp + 0x34], r11d
shr rdx, 3
jmp 0x14019e276
add rcx, 8
add rdx, 8
cmp rcx, r8
jae 0x14019e229
nop dword [rax + rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019e35e
add rcx, 8
add rdx, 8
cmp rcx, r8
jb 0x14019e210
mov r8, qword [rsp + 0x58]
lea rax, [r8 - 3]
cmp rcx, rax
jae 0x14019e245
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019e245
add rcx, 4
add rdx, 4
lea rax, [r8 - 1]
cmp rcx, rax
jae 0x14019e25e
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019e25e
add rcx, 2
add rdx, 2
cmp rcx, r8
jae 0x14019e26d
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019e26d
inc rcx
mov rdx, rcx
sub rdx, r11
xor r11d, r11d
add edx, 4
mov r8d, edx
cmp r8, r12
jbe 0x14019e2cc
mov r11d, dword [rsp + 0x30]
mov eax, r9d
sub eax, dword [rsp + 0x60]
mov r12d, r8d
mov rcx, qword [rbp - 0x68]
mov dword [rcx + r11*8], eax
lea rcx, [rcx + r11*8]
mov rax, qword [rbp - 0x70]
inc r11d
add rax, r8
mov dword [rcx + 4], edx
mov dword [rsp + 0x30], r11d
xor r11d, r11d
cmp rax, qword [rsp + 0x58]
mov ecx, r11d
mov eax, r11d
sete cl
cmp edx, esi
seta al
or ecx, eax
jne 0x14019e093
inc r9d
add rbx, 4
cmp r9d, r14d
jb 0x14019e194
mov esi, dword [rsp + 0x64]
mov eax, dword [rsp + 0x70]
mov dword [r15], eax
test esi, esi
je 0x14019e078
nop
dec esi
cmp r10d, dword [rsp + 0x6c]
jb 0x14019e075
mov r15, qword [rsp + 0x48]
mov eax, dword [rsp + 0x68]
mov r8, r15
mov rcx, qword [rbp - 0x20]
and eax, r10d
mov r14, qword [rsp + 0x58]
add eax, eax
cmp qword [rbp - 0x60], r15
mov r15, qword [rbp - 0x70]
cmovb r8, qword [rbp - 0x60]
mov r11d, r10d
lea rdi, [rcx + rax*4]
add r11, qword [rbp - 0x18]
lea r9, [r14 - 7]
lea rcx, [r8 + r15]
mov rbx, rcx
lea rdx, [r11 + r8]
cmp rcx, r9
jae 0x14019e3a9
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019e379
xor ebx, ebx
bsf rdx, rax
mov dword [rsp + 0x34], ebx
shr rdx, 3
jmp 0x14019e3f0
bsf rdx, rax
mov dword [rsp + 0x34], 0
shr rdx, 3
sub rdx, r11
add rdx, rcx
jmp 0x14019e273
add rcx, 8
add rdx, 8
cmp rcx, r9
jae 0x14019e3a9
nop word [rax + rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019e47a
add rcx, 8
add rdx, 8
cmp rcx, r9
jb 0x14019e390
lea rax, [r14 - 3]
cmp rcx, rax
jae 0x14019e3c0
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019e3c0
add rcx, 4
add rdx, 4
lea rax, [r14 - 1]
cmp rcx, rax
jae 0x14019e3d9
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019e3d9
add rcx, 2
add rdx, 2
cmp rcx, r14
jae 0x14019e3e8
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019e3e8
inc rcx
mov rdx, rcx
sub rdx, rbx
xor ebx, ebx
add r8, rdx
cmp r8, r12
jbe 0x14019e456
mov eax, dword [rsp + 0x38]
mov edx, r8d
sub eax, r10d
cmp r8, rax
jbe 0x14019e40f
lea eax, [r10 + r8]
mov dword [rsp + 0x38], eax
mov r9d, dword [rsp + 0x30]
mov r12, r8
mov eax, dword [rsp + 0x70]
mov rcx, qword [rbp - 0x68]
sub eax, r10d
add eax, 2
lea rcx, [rcx + r9*8]
mov dword [rcx], eax
inc r9d
mov dword [rcx + 4], edx
lea rax, [r8 + r15]
cmp rax, r14
mov dword [rsp + 0x30], r9d
mov ecx, ebx
mov eax, ebx
sete cl
cmp r8, 0x1000
seta al
or ecx, eax
jne 0x14019e075
movzx eax, byte [r8 + r15]
cmp byte [r11 + r8], al
jae 0x14019e495
mov dword [r13], r10d
mov qword [rbp - 0x60], r8
cmp r10d, dword [rsp + 0x40]
jbe 0x14019e4be
mov r10d, dword [rdi + 4]
lea r13, [rdi + 4]
jmp 0x14019e4b1
bsf rdx, rax
mov dword [rsp + 0x34], 0
shr rdx, 3
sub rdx, rbx
add rdx, rcx
jmp 0x14019e3ee
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x48], r8
mov dword [rax], r10d
cmp r10d, dword [rsp + 0x40]
jbe 0x14019e4c7
mov r10d, dword [rdi]
mov qword [rsp + 0x50], rdi
test esi, esi
jne 0x14019e2f0
jmp 0x14019e075
lea r13, [rbp + 0x2c]
jmp 0x14019e075
lea rax, [rbp + 0x2c]
xor r11d, r11d
jmp 0x14019e07d
mov eax, dword [r13 + 0xcc]
mov esi, 0xfff
mov r9, qword [r13 + 0x30]
cmp eax, esi
mov edx, dword [r13 + 0xc0]
mov r11d, r12d
cmovb esi, eax
mov r8d, 4
mov rax, qword [r13 + 8]
mov rcx, r12
sub r11d, eax
mov qword [rbp - 0x18], rax
mov dword [rsp + 0x70], r11d
call fcn.14019d8f0
mov ecx, dword [r13 + 0xbc]
lea r15, [r9 + rax*4]
mov r9, qword [r13 + 0x40]
dec ecx
mov r12d, dword [rbp - 0x50]
xor ebx, ebx
mov r10d, dword [r15]
mov edi, 1
mov edx, edi
mov qword [rbp - 0x60], rbx
shl edx, cl
mov eax, r11d
dec edx
mov qword [rsp + 0x48], rbx
sub eax, edx
mov dword [rsp + 0x30], ebx
cmp edx, r11d
mov dword [rsp + 0x68], edx
mov ecx, ebx
mov qword [rbp - 0x20], r9
cmovb ecx, eax
lea rbx, [rbp + 0xb0]
mov eax, dword [r13 + 0x1c]
test eax, eax
mov dword [rsp + 0x40], ecx
mov ecx, edi
cmovne ecx, eax
mov eax, edx
mov rdx, qword [rsp + 0x78]
and eax, r11d
add eax, eax
mov dword [rsp + 0x6c], ecx
mov ecx, dword [rdx + 0xc4]
lea r13, [r9 + rax*4]
lea rax, [r13 + 4]
mov qword [rsp + 0x50], rax
lea eax, [r11 + 9]
mov dword [rsp + 0x38], eax
mov eax, edi
shl eax, cl
mov edi, r11d
sub edi, dword [rdx + 0x18]
dec r12d
mov dword [rsp + 0x64], eax
xor r11d, r11d
mov eax, dword [rsp + 0x60]
mov r9d, eax
lea r14d, [rax + 3]
lea rbx, [rbx + rax*4]
nop dword [rax + rax]
cmp r9d, 3
jne 0x14019e5d0
mov ecx, dword [rbp + 0xb0]
dec ecx
jmp 0x14019e5d2
mov ecx, dword [rbx]
lea eax, [rcx - 1]
mov edx, r11d
cmp eax, edi
jae 0x14019e6a9
mov r8, qword [rbp - 0x70]
neg rcx
mov eax, dword [r8]
cmp eax, dword [rcx + r8]
jne 0x14019e6a9
lea rdx, [r8 + 4]
add rdx, rcx
lea rcx, [r8 + 4]
mov r8, qword [rsp + 0x58]
mov r11, rcx
add r8, 0xfffffffffffffff9
cmp rcx, r8
jae 0x14019e659
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019e62a
xor r11d, r11d
bsf rdx, rax
mov dword [rsp + 0x34], r11d
shr rdx, 3
jmp 0x14019e6a6
add rcx, 8
add rdx, 8
cmp rcx, r8
jae 0x14019e659
nop word [rax + rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019e78e
add rcx, 8
add rdx, 8
cmp rcx, r8
jb 0x14019e640
mov r8, qword [rsp + 0x58]
lea rax, [r8 - 3]
cmp rcx, rax
jae 0x14019e675
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019e675
add rcx, 4
add rdx, 4
lea rax, [r8 - 1]
cmp rcx, rax
jae 0x14019e68e
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019e68e
add rcx, 2
add rdx, 2
cmp rcx, r8
jae 0x14019e69d
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019e69d
inc rcx
mov rdx, rcx
sub rdx, r11
xor r11d, r11d
add edx, 4
mov r8d, edx
cmp r8, r12
jbe 0x14019e6fc
mov r11d, dword [rsp + 0x30]
mov eax, r9d
sub eax, dword [rsp + 0x60]
mov r12d, r8d
mov rcx, qword [rbp - 0x68]
mov dword [rcx + r11*8], eax
lea rcx, [rcx + r11*8]
mov rax, qword [rbp - 0x70]
inc r11d
add rax, r8
mov dword [rcx + 4], edx
mov dword [rsp + 0x30], r11d
xor r11d, r11d
cmp rax, qword [rsp + 0x58]
mov ecx, r11d
mov eax, r11d
sete cl
cmp edx, esi
seta al
or ecx, eax
jne 0x14019e093
inc r9d
add rbx, 4
cmp r9d, r14d
jb 0x14019e5c0
mov esi, dword [rsp + 0x64]
mov eax, dword [rsp + 0x70]
mov dword [r15], eax
test esi, esi
je 0x14019e078
nop
dec esi
cmp r10d, dword [rsp + 0x6c]
jb 0x14019e075
mov r15, qword [rsp + 0x48]
mov eax, dword [rsp + 0x68]
mov r8, r15
mov rcx, qword [rbp - 0x20]
and eax, r10d
mov r14, qword [rsp + 0x58]
add eax, eax
cmp qword [rbp - 0x60], r15
mov r15, qword [rbp - 0x70]
cmovb r8, qword [rbp - 0x60]
mov r11d, r10d
lea rdi, [rcx + rax*4]
add r11, qword [rbp - 0x18]
lea r9, [r14 - 7]
lea rcx, [r8 + r15]
mov rbx, rcx
lea rdx, [r11 + r8]
cmp rcx, r9
jae 0x14019e7d9
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019e7a9
xor ebx, ebx
bsf rdx, rax
mov dword [rsp + 0x34], ebx
shr rdx, 3
jmp 0x14019e820
bsf rdx, rax
mov dword [rsp + 0x34], 0
shr rdx, 3
sub rdx, r11
add rdx, rcx
jmp 0x14019e6a3
add rcx, 8
add rdx, 8
cmp rcx, r9
jae 0x14019e7d9
nop word [rax + rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019e8aa
add rcx, 8
add rdx, 8
cmp rcx, r9
jb 0x14019e7c0
lea rax, [r14 - 3]
cmp rcx, rax
jae 0x14019e7f0
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019e7f0
add rcx, 4
add rdx, 4
lea rax, [r14 - 1]
cmp rcx, rax
jae 0x14019e809
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019e809
add rcx, 2
add rdx, 2
cmp rcx, r14
jae 0x14019e818
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019e818
inc rcx
mov rdx, rcx
sub rdx, rbx
xor ebx, ebx
add r8, rdx
cmp r8, r12
jbe 0x14019e886
mov eax, dword [rsp + 0x38]
mov edx, r8d
sub eax, r10d
cmp r8, rax
jbe 0x14019e83f
lea eax, [r8 + r10]
mov dword [rsp + 0x38], eax
mov r9d, dword [rsp + 0x30]
mov r12, r8
mov eax, dword [rsp + 0x70]
mov rcx, qword [rbp - 0x68]
sub eax, r10d
add eax, 2
lea rcx, [rcx + r9*8]
mov dword [rcx], eax
inc r9d
mov dword [rcx + 4], edx
lea rax, [r8 + r15]
cmp rax, r14
mov dword [rsp + 0x30], r9d
mov ecx, ebx
mov eax, ebx
sete cl
cmp r8, 0x1000
seta al
or ecx, eax
jne 0x14019e075
movzx eax, byte [r8 + r15]
cmp byte [r11 + r8], al
jae 0x14019e8c5
mov dword [r13], r10d
mov qword [rbp - 0x60], r8
cmp r10d, dword [rsp + 0x40]
jbe 0x14019e8ee
mov r10d, dword [rdi + 4]
lea r13, [rdi + 4]
jmp 0x14019e8e1
bsf rdx, rax
mov dword [rsp + 0x34], 0
shr rdx, 3
sub rdx, rbx
add rdx, rcx
jmp 0x14019e81e
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x48], r8
mov dword [rax], r10d
cmp r10d, dword [rsp + 0x40]
jbe 0x14019e8f7
mov r10d, dword [rdi]
mov qword [rsp + 0x50], rdi
test esi, esi
jne 0x14019e720
jmp 0x14019e075
lea r13, [rbp + 0x24]
jmp 0x14019e075
lea rax, [rbp + 0x24]
xor r11d, r11d
jmp 0x14019e07d
mov eax, dword [r13 + 0xcc]
mov r14d, 1
mov r9, qword [r13 + 0x40]
mov r10d, r12d
mov r8, qword [r13 + 0x30]
mov edi, 0xfff
cmp eax, edi
mov qword [rbp - 0x20], r9
mov ecx, 0x20
cmovb edi, eax
sub ecx, dword [r13 + 0xc0]
imul edx, dword [r12], 0x9e3779b1
xor esi, esi
mov rax, qword [r13 + 8]
mov r12d, dword [rbp - 0x50]
sub r10d, eax
mov qword [rbp - 0x60], rax
mov eax, r10d
mov qword [rsp + 0x48], rsi
shr rdx, cl
mov ecx, dword [r13 + 0xbc]
lea r15, [r8 + rdx*4]
mov ebx, dword [r15]
dec ecx
mov edx, r14d
mov qword [rbp - 0x78], rsi
shl edx, cl
mov ecx, esi
dec edx
mov dword [rsp + 0x30], esi
sub eax, edx
mov dword [rsp + 0x40], edx
cmp edx, r10d
mov dword [rsp + 0x38], r10d
mov esi, r10d
cmovb ecx, eax
mov eax, dword [r13 + 0x1c]
test eax, eax
mov dword [rsp + 0x70], ecx
mov ecx, r14d
cmovne ecx, eax
mov eax, edx
mov rdx, qword [rsp + 0x78]
and eax, r10d
add eax, eax
mov dword [rsp + 0x68], ecx
mov ecx, dword [rdx + 0xc4]
lea r13, [r9 + rax*4]
mov r9d, r11d
lea rax, [r13 + 4]
mov qword [rsp + 0x50], rax
lea eax, [r10 + 9]
mov r10, qword [rbp - 0x70]
mov dword [rbp - 0x80], eax
mov eax, r14d
shl eax, cl
lea r14d, [r11 + 3]
mov dword [rsp + 0x64], eax
dec r12d
sub esi, dword [rdx + 0x18]
mov eax, r11d
lea r11, [rbp + 0xb0]
lea r11, [r11 + rax*4]
cmp r9d, 3
jne 0x14019ea02
mov r8d, dword [rbp + 0xb0]
dec r8d
jmp 0x14019ea05
mov r8d, dword [r11]
xor edx, edx
lea eax, [r8 - 1]
cmp eax, esi
jae 0x14019eada
mov ecx, dword [r10]
neg r8
shl ecx, 8
mov eax, dword [r8 + r10]
shl eax, 8
cmp ecx, eax
jne 0x14019eada
lea rdx, [r8 + 3]
mov r8, qword [rsp + 0x58]
add rdx, r10
lea rcx, [r10 + 3]
add r8, 0xfffffffffffffff9
mov r10, rcx
cmp rcx, r8
jae 0x14019ea89
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019ea61
bsf rdx, rax
mov dword [rsp + 0x34], 0
shr rdx, 3
jmp 0x14019ead3
add rcx, 8
add rdx, 8
cmp rcx, r8
jae 0x14019ea89
nop
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019ebec
add rcx, 8
add rdx, 8
cmp rcx, r8
jb 0x14019ea70
mov r8, qword [rsp + 0x58]
lea rax, [r8 - 3]
cmp rcx, rax
jae 0x14019eaa5
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019eaa5
add rcx, 4
add rdx, 4
lea rax, [r8 - 1]
cmp rcx, rax
jae 0x14019eabe
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019eabe
add rcx, 2
add rdx, 2
cmp rcx, r8
jae 0x14019eacd
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019eacd
inc rcx
mov rdx, rcx
sub rdx, r10
mov r10, qword [rbp - 0x70]
add edx, 3
mov r8d, edx
cmp r8, r12
jbe 0x14019eb2c
mov r10d, dword [rsp + 0x30]
mov eax, r9d
sub eax, dword [rsp + 0x60]
mov r12d, r8d
mov rcx, qword [rbp - 0x68]
xor r8d, r8d
lea rcx, [rcx + r10*8]
inc r10d
mov dword [rcx], eax
mov dword [rcx + 4], edx
mov ecx, r8d
mov dword [rsp + 0x30], r10d
mov r10, qword [rbp - 0x70]
lea rax, [rdx + r10]
cmp rax, qword [rsp + 0x58]
mov eax, r8d
sete cl
cmp edx, edi
seta al
or ecx, eax
jne 0x14019ec07
inc r9d
add r11, 4
cmp r9d, r14d
jb 0x14019e9f0
cmp r12, 3
jae 0x14019ec14
mov rcx, qword [rsp + 0x78]
mov rdx, r10
call fcn.1401a0d50
mov esi, dword [rsp + 0x38]
xor ecx, ecx
mov r8d, dword [rsp + 0x68]
mov edx, ecx
mov r11d, esi
sub r11d, eax
cmp eax, r8d
setae dl
cmp r11d, 0x40000
setb cl
test ecx, edx
je 0x14019ec1d
mov r14, qword [rsp + 0x58]
mov rcx, qword [rbp - 0x70]
mov r8, r14
mov edx, eax
add rdx, qword [rbp - 0x60]
call fcn.140190250
cmp rax, 3
jb 0x14019ec18
mov rdx, qword [rbp - 0x68]
lea ecx, [r11 + 2]
xor r11d, r11d
mov r10d, 1
mov r8d, r11d
mov dword [rsp + 0x30], r10d
mov r12, rax
mov r9d, r10d
mov dword [rdx], ecx
mov rcx, qword [rbp - 0x70]
add rcx, rax
mov dword [rdx + 4], eax
cmp rcx, r14
mov edx, r11d
mov ecx, edi
sete r8b
cmp rax, rcx
seta dl
or r8d, edx
je 0x14019eca2
lea eax, [rsi + 1]
mov r12d, r10d
jmp 0x14019ed9e
bsf rdx, rax
mov dword [rsp + 0x34], 0
shr rdx, 3
sub rdx, r10
add rdx, rcx
jmp 0x14019ead3
mov r12d, dword [rsp + 0x30]
xor r11d, r11d
jmp 0x14019eda6
mov esi, dword [rsp + 0x38]
mov r8d, dword [rsp + 0x68]
mov r9d, dword [rsp + 0x30]
xor r11d, r11d
mov dword [r15], esi
mov esi, dword [rsp + 0x64]
test esi, esi
je 0x14019ed89
dec esi
cmp ebx, r8d
jb 0x14019ed89
mov r15, qword [rbp - 0x78]
mov eax, dword [rsp + 0x40]
mov r8, r15
mov rcx, qword [rbp - 0x20]
and eax, ebx
mov r14, qword [rsp + 0x58]
add eax, eax
cmp qword [rsp + 0x48], r15
mov r15, qword [rbp - 0x70]
cmovb r8, qword [rsp + 0x48]
mov r10d, ebx
lea rdi, [rcx + rax*4]
add r10, qword [rbp - 0x60]
lea r9, [r14 - 7]
lea rcx, [r8 + r15]
mov r11, rcx
lea rdx, [r10 + r8]
cmp rcx, r9
jae 0x14019ecd9
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019ecac
xor r11d, r11d
bsf rdx, rax
mov dword [rsp + 0x34], r11d
shr rdx, 3
jmp 0x14019ed21
mov r8d, dword [rsp + 0x68]
jmp 0x14019ec25
add rcx, 8
add rdx, 8
cmp rcx, r9
jae 0x14019ecd9
nop dword [rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019ee49
add rcx, 8
add rdx, 8
cmp rcx, r9
jb 0x14019ecc0
lea rax, [r14 - 3]
cmp rcx, rax
jae 0x14019ecf0
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019ecf0
add rcx, 4
add rdx, 4
lea rax, [r14 - 1]
cmp rcx, rax
jae 0x14019ed09
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019ed09
add rcx, 2
add rdx, 2
cmp rcx, r14
jae 0x14019ed18
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019ed18
inc rcx
mov rdx, rcx
sub rdx, r11
xor r11d, r11d
add r8, rdx
cmp r8, r12
jbe 0x14019ee64
mov eax, dword [rbp - 0x80]
mov edx, r8d
sub eax, ebx
cmp r8, rax
jbe 0x14019ed41
lea eax, [rbx + r8]
mov dword [rbp - 0x80], eax
mov r9d, dword [rsp + 0x30]
mov r12, r8
mov eax, dword [rsp + 0x38]
mov rcx, qword [rbp - 0x68]
sub eax, ebx
add eax, 2
lea rcx, [rcx + r9*8]
mov dword [rcx], eax
inc r9d
mov dword [rcx + 4], edx
lea rax, [r8 + r15]
cmp rax, r14
mov dword [rsp + 0x30], r9d
mov ecx, r11d
mov eax, r11d
sete cl
cmp r8, 0x1000
seta al
or ecx, eax
je 0x14019ee69
mov rax, qword [rsp + 0x50]
mov dword [rax], r11d
mov eax, dword [rbp - 0x80]
add eax, 0xfffffff8
mov dword [r13], r11d
mov r12d, r9d
mov rcx, qword [rsp + 0x78]
mov dword [rcx + 0x24], eax
test r12d, r12d
je 0x1401a0c6c
mov rax, qword [rbp - 0x48]
mov r9d, 2
mov ecx, dword [rbp + 0xb4]
mov r13d, dword [rbp - 0x58]
mov edx, r13d
mov edi, dword [rbp + 0xb0]
mov r8, qword [rbp + 0x60]
mov dword [rax + 0x10], edi
mov dword [rax + 0x14], ecx
mov ecx, dword [rbp - 0x30]
mov dword [rax + 0x18], ecx
mov rcx, qword [rbp]
mov dword [rax + 8], r11d
mov dword [rax + 0xc], r13d
call fcn.1401a1240
mov rdx, qword [rbp + 0x60]
mov r8d, 2
mov ecx, r13d
mov ebx, eax
call fcn.1401a1180
mov r11, qword [rbp - 0x48]
lea r9d, [rax + rbx]
mov rbx, qword [rbp - 0x68]
lea eax, [r12 - 1]
mov dword [r11], r9d
mov ecx, eax
mov eax, dword [rbx + rax*8 + 4]
cmp eax, dword [rbp + 8]
jbe 0x14019eec8
mov r8d, dword [rbp - 0x10]
mov r9d, 1
mov dword [rbp + 0x48], eax
mov eax, dword [rbx + rcx*8]
mov dword [rbp + 0x44], eax
mov dword [rbp + 0x4c], r13d
movups xmm0, xmmword [rbp + 0x40]
movups xmmword [r11 + 0x1c], xmm0
jmp 0x1401a0a4f
bsf rdx, rax
mov dword [rsp + 0x34], 0
shr rdx, 3
sub rdx, r11
add rdx, rcx
jmp 0x14019ed1e
mov r9d, dword [rsp + 0x30]
movzx eax, byte [r8 + r15]
cmp byte [r10 + r8], al
jae 0x14019ee8c
mov dword [r13], ebx
mov qword [rsp + 0x48], r8
cmp ebx, dword [rsp + 0x70]
jbe 0x14019eeb6
mov ebx, dword [rdi + 4]
lea r13, [rdi + 4]
jmp 0x14019eea4
mov rax, qword [rsp + 0x50]
mov qword [rbp - 0x78], r8
mov dword [rax], ebx
cmp ebx, dword [rsp + 0x70]
jbe 0x14019eebf
mov ebx, dword [rdi]
mov qword [rsp + 0x50], rdi
test esi, esi
je 0x14019ed89
mov r8d, dword [rsp + 0x68]
jmp 0x14019ec34
lea r13, [rbp + 0x20]
jmp 0x14019ed89
lea rax, [rbp + 0x20]
jmp 0x14019ed8e
mov r14, qword [rsp + 0x78]
mov dword [rsp + 0x34], 0
cmp dword [r14 + 0x98], 1
jne 0x14019eefa
mov ecx, 1
mov eax, 0x100
bsr ecx, ecx
mov r8d, ecx
shr eax, cl
shl r8d, 8
add r8d, eax
jmp 0x14019ef1b
mov rax, qword [r14 + 0x50]
mov edx, dword [rax]
inc edx
bsr ecx, edx
shl edx, 8
imul r8d, ecx, 0xffffff00
shr edx, cl
sub r8d, edx
add r8d, dword [r14 + 0x8c]
mov edx, dword [rbp - 0x50]
lea r15d, [r8 + r9]
lea rcx, [r11 + 0x1c]
mov r10d, edx
lea eax, [rdx - 1]
mov qword [rbp - 0x60], rax
mov dword [rcx], 0x40000000
lea rcx, [rcx + 0x1c]
sub rax, 1
jne 0x14019ef30
test r12d, r12d
je 0x14019f139
mov r14, rbx
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], r12
nop word [rax + rax]
mov r11d, dword [r14]
mov esi, dword [r14 + 4]
cmp r11d, 3
jb 0x14019ef84
mov ebx, dword [rbp + 0xb4]
lea eax, [r11 - 2]
mov dword [rbp + 0x10], eax
mov dword [rbp + 0x14], edi
movsd xmm1, qword [rbp + 0x10]
jmp 0x14019efe2
mov ecx, dword [rsp + 0x60]
add ecx, r11d
je 0x14019efd7
cmp ecx, 3
jne 0x14019efa8
mov ebx, dword [rbp + 0xb4]
lea eax, [rdi - 1]
mov dword [rbp + 0x10], eax
mov dword [rbp + 0x14], edi
movsd xmm1, qword [rbp + 0x10]
jmp 0x14019efe2
mov eax, dword [rbp + rcx*4 + 0xb0]
cmp ecx, 2
jb 0x14019efc7
mov ebx, dword [rbp + 0xb4]
mov dword [rbp + 0x14], edi
mov dword [rbp + 0x10], eax
movsd xmm1, qword [rbp + 0x10]
jmp 0x14019efe2
mov ebx, dword [rbp - 0x30]
mov dword [rbp + 0x14], edi
mov dword [rbp + 0x10], eax
movsd xmm1, qword [rbp + 0x10]
jmp 0x14019efe2
mov ebx, dword [rbp - 0x30]
movaps xmm1, xmm3
movsd qword [rbp + 0x10], xmm3
cmp r10d, esi
ja 0x14019f118
mov r12, qword [rsp + 0x78]
lea edi, [r11 + 1]
mov r14, qword [rbp - 0x48]
nop dword [rax + rax]
xor eax, eax
lea r8d, [r10 - 3]
bsr r9d, edi
cmp dword [r12 + 0x98], 1
mov dword [rsp + 0x34], eax
jne 0x14019f039
mov dword [rsp + 0x34], eax
lea eax, [r10 - 2]
bsr ecx, eax
shl eax, 8
shr eax, cl
lea edx, [rcx + 0x10]
add edx, r9d
shl edx, 8
add edx, eax
jmp 0x14019f0d2
mov rax, qword [r12 + 0x60]
mov edx, dword [rax + r9*4]
xor eax, eax
inc edx
mov dword [rsp + 0x34], eax
bsr ecx, edx
shl edx, 8
sub r9d, ecx
shr edx, cl
shl r9d, 8
sub r9d, edx
add r9d, dword [r12 + 0x94]
cmp r8d, 0x7f
jbe 0x14019f077
mov dword [rsp + 0x34], eax
bsr eax, r8d
add eax, 0x24
jmp 0x14019f087
lea rcx, [0x140000000]
movzx eax, byte [r8 + rcx + 0x22ec70]
lea rdx, [rax*4]
mov dword [rsp + 0x34], 0
mov rax, qword [r12 + 0x58]
mov r8d, dword [rax + rdx]
lea rax, [0x140000000]
mov edx, dword [rdx + rax + 0x22eb50]
inc r8d
bsr ecx, r8d
shl r8d, 8
sub edx, ecx
shr r8d, cl
shl edx, 8
sub edx, r8d
add edx, 0x33
add edx, dword [r12 + 0x90]
add edx, r9d
mov eax, r10d
imul rcx, rax, 0x1c
lea eax, [rdx + r15]
mov dword [rcx + r14 + 8], r10d
inc r10d
mov dword [rcx + r14 + 4], r11d
mov dword [rcx + r14 + 0xc], r13d
mov dword [rcx + r14], eax
movsd qword [rcx + r14 + 0x10], xmm1
mov dword [rcx + r14 + 0x18], ebx
cmp r10d, esi
jbe 0x14019f000
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x50]
mov edi, dword [rbp + 0xb0]
add r14, 8
sub r12, 1
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], r12
jne 0x14019ef60
mov r14, qword [rsp + 0x78]
mov r11, qword [rbp - 0x48]
mov r9d, 1
lea esi, [r10 - 1]
mov dword [rsp + 0x68], esi
mov r8d, r9d
mov dword [rbp - 0x80], r9d
cmp esi, r9d
jb 0x1401a0983
nop word [rax + rax]
mov rdx, qword [rbp - 0x70]
lea ecx, [r8 - 1]
imul rdi, rcx, 0x1c
mov r15d, r8d
xor r12d, r12d
add rdx, r15
add rdi, r11
mov qword [rbp - 0x78], rdx
cmp dword [rdi + 8], r12d
jne 0x14019f18c
mov r10d, dword [rdi + 0xc]
lea r11d, [r10 + 1]
jmp 0x14019f192
mov r11d, r9d
mov r10d, r12d
cmp dword [r14 + 0xa8], 2
jne 0x14019f1a3
mov ebx, 0x800
jmp 0x14019f1df
cmp dword [r14 + 0x98], 1
jne 0x14019f1b4
mov ebx, 0x600
jmp 0x14019f1df
movzx ecx, byte [rdx - 1]
mov rax, qword [r14 + 0x48]
mov ebx, dword [r14 + 0x88]
mov dword [rsp + 0x34], r12d
mov edx, dword [rax + rcx*4]
inc edx
bsr ecx, edx
shl edx, 8
imul eax, ecx, 0xffffff00
shr edx, cl
sub eax, edx
add ebx, eax
cmp dword [r14 + 0x98], 1
jne 0x14019f224
lea r9d, [r11 + 1]
mov dword [rsp + 0x34], r12d
bsr ecx, r9d
shl r9d, 8
lea r12, [r14 + 0x50]
shr r9d, cl
lea r13, [r14 + 0x8c]
shl ecx, 8
mov eax, r11d
add r9d, ecx
shl eax, 8
bsr ecx, r11d
shr eax, cl
shl ecx, 8
add eax, ecx
jmp 0x14019f309
cmp r11d, 0x3f
jbe 0x14019f238
bsr eax, r11d
mov dword [rsp + 0x34], r12d
add eax, 0x13
jmp 0x14019f24a
mov eax, r11d
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x22ec30]
lea rdx, [rax*4]
mov dword [rsp + 0x34], r12d
mov rax, qword [r14 + 0x50]
lea r13, [r14 + 0x8c]
lea r12, [r14 + 0x50]
mov r8d, dword [rax + rdx]
lea rax, [0x140000000]
mov r9d, dword [rdx + rax + 0x22eac0]
inc r8d
bsr ecx, r8d
shl r8d, 8
sub r9d, ecx
shr r8d, cl
shl r9d, 8
sub r9d, r8d
add r9d, dword [r14 + 0x8c]
cmp r10d, 0x3f
jbe 0x14019f2af
bsr eax, r10d
mov dword [rsp + 0x34], 0
add eax, 0x13
jmp 0x14019f2c1
mov eax, r10d
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x22ec30]
mov esi, dword [rsp + 0x68]
lea rdx, [rax*4]
mov rax, qword [r14 + 0x50]
mov r8d, dword [rax + rdx]
lea rax, [0x140000000]
mov eax, dword [rdx + rax + 0x22eac0]
inc r8d
bsr ecx, r8d
shl r8d, 8
sub eax, ecx
shr r8d, cl
shl eax, 8
sub eax, r8d
mov r8d, dword [rbp - 0x80]
add eax, dword [r14 + 0x8c]
mov r14, qword [rsp + 0x78]
mov r10d, dword [rdi]
sub r10d, eax
mov dword [rsp + 0x34], 0
add r10d, r9d
imul r9, r15, 0x1c
add r10d, ebx
xor ebx, ebx
add r9, qword [rbp - 0x48]
mov eax, dword [r9]
lea rdx, [r9 + 8]
mov qword [rbp - 0x18], rdx
lea rcx, [r9 + 0xc]
mov qword [rbp - 0x20], rcx
cmp r10d, eax
jg 0x14019f35f
mov dword [rdx], ebx
mov dword [r9 + 4], ebx
mov dword [rcx], r11d
mov dword [r9], r10d
movsd xmm0, qword [rdi + 0x10]
movsd qword [r9 + 0x10], xmm0
mov eax, dword [rdi + 0x18]
mov dword [r9 + 0x18], eax
jmp 0x14019f36a
mov qword [rbp - 0x18], rdx
mov r10d, eax
mov qword [rbp - 0x20], rcx
mov r11, qword [rbp - 0x78]
cmp r11, qword [rbp + 0x68]
ja 0x1401a0910
cmp r8d, esi
je 0x1401a0979
mov eax, dword [rdx]
test eax, eax
mov edx, ebx
setne dl
mov dword [rsp + 0x60], edx
test eax, eax
jne 0x14019f39a
mov eax, dword [rcx]
mov dword [rsp + 0x70], eax
jmp 0x14019f39e
mov dword [rsp + 0x70], ebx
cmp dword [r14 + 0x98], 1
jne 0x14019f3cb
xor r13d, r13d
mov ecx, 1
bsr ecx, ecx
mov eax, 0x100
mov dword [rsp + 0x34], r13d
mov r8d, ecx
shr eax, cl
shl r8d, 8
add r8d, eax
jmp 0x14019f3f0
mov rax, qword [r12]
mov dword [rsp + 0x34], ebx
mov edx, dword [rax]
inc edx
bsr ecx, edx
shl edx, 8
imul r8d, ecx, 0xffffff00
shr edx, cl
sub r8d, edx
add r8d, dword [r13]
xor r13d, r13d
mov r12, qword [rsp + 0x78]
lea eax, [r8 + r10]
mov dword [rsp + 0x34], eax
lea rax, [r9 + 0x10]
mov qword [rsp + 0x50], rax
mov ebx, dword [r12 + 0x24]
mov r14, qword [r12 + 8]
mov edi, dword [r12 + 0xc8]
lea rax, [r14 + rbx]
cmp r11, rax
jb 0x1401a090c
mov esi, r11d
sub esi, r14d
cmp ebx, esi
jae 0x14019f454
nop
mov r8, qword [rsp + 0x58]
mov r9d, edi
mov edx, ebx
mov rcx, r12
add rdx, r14
mov dword [rsp + 0x20], r13d
call fcn.1401a0dc0
add ebx, eax
cmp ebx, esi
jb 0x14019f430
mov r11, qword [rbp - 0x78]
mov dword [r12 + 0x24], esi
sub edi, 3
je 0x1401a0143
sub edi, 1
je 0x14019fd13
sub edi, 1
je 0x14019f8d6
sub edi, 1
je 0x14019f482
cmp edi, 1
jne 0x14019fd13
mov eax, dword [r12 + 0xcc]
mov r9d, r11d
mov rdx, qword [r11]
mov r14d, 0xfff
mov r10, qword [r12 + 0x40]
cmp eax, r14d
mov r8, qword [r12 + 0x30]
mov r11d, 1
cmovb r14d, eax
mov qword [rbp - 0x28], r13
mov rax, qword [r12 + 8]
mov ecx, 0x40
sub ecx, dword [r12 + 0xc0]
sub r9d, eax
mov qword [rbp - 8], rax
mov esi, r9d
movabs rax, 0xcf1bbcdcbf9b0000
mov qword [rbp - 0x40], r13
imul rdx, rax
mov eax, r9d
mov qword [rbp - 0x38], r10
shr rdx, cl
mov ecx, dword [r12 + 0xbc]
lea r15, [r8 + rdx*4]
mov edi, dword [r15]
dec ecx
mov edx, r11d
mov dword [rsp + 0x40], r9d
shl edx, cl
mov ecx, r13d
dec edx
sub eax, edx
mov dword [rbp - 0x54], edx
cmp edx, r9d
cmovb ecx, eax
mov eax, dword [r12 + 0x1c]
test eax, eax
mov dword [rsp + 0x6c], ecx
mov ecx, r11d
cmovne ecx, eax
mov eax, edx
and eax, r9d
mov dword [rsp + 0x64], ecx
mov ecx, dword [r12 + 0xc4]
add eax, eax
mov r12, qword [rbp - 0x60]
xor r8d, r8d
mov dword [rsp + 0x30], r8d
lea r13, [r10 + rax*4]
lea rax, [r13 + 4]
mov qword [rsp + 0x48], rax
lea eax, [r9 + 9]
mov dword [rsp + 0x38], eax
mov eax, r11d
shl eax, cl
mov rcx, qword [rsp + 0x78]
mov dword [rbp - 0x58], eax
mov eax, dword [rsp + 0x60]
mov r10d, eax
sub esi, dword [rcx + 0x18]
mov rcx, qword [rsp + 0x50]
lea ebx, [rax + 3]
lea r11, [rcx + rax*4]
nop dword [rax]
cmp r10d, 3
jne 0x14019f58c
mov ecx, dword [rcx]
dec ecx
jmp 0x14019f58f
mov ecx, dword [r11]
mov r9, qword [rbp - 0x78]
lea eax, [rcx - 1]
mov edx, r8d
cmp eax, esi
jae 0x14019f66a
mov eax, dword [r9]
mov r8d, ecx
neg r8
cmp eax, dword [r8 + r9]
jne 0x14019f66a
lea rdx, [r9 + 4]
add rdx, r8
lea rcx, [r9 + 4]
mov r8, qword [rsp + 0x58]
mov r9, rcx
add r8, 0xfffffffffffffff9
cmp rcx, r8
jae 0x14019f619
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019f5ea
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
jmp 0x14019f663
add rcx, 8
add rdx, 8
cmp rcx, r8
jae 0x14019f619
nop word [rax + rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019f6b6
add rcx, 8
add rdx, 8
cmp rcx, r8
jb 0x14019f600
mov r8, qword [rsp + 0x58]
lea rax, [r8 - 3]
cmp rcx, rax
jae 0x14019f635
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019f635
add rcx, 4
add rdx, 4
lea rax, [r8 - 1]
cmp rcx, rax
jae 0x14019f64e
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019f64e
add rcx, 2
add rdx, 2
cmp rcx, r8
jae 0x14019f65d
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019f65d
inc rcx
mov rdx, rcx
sub rdx, r9
mov r9, qword [rbp - 0x78]
add edx, 4
mov r8d, edx
cmp r8, r12
jbe 0x14019f6ce
mov eax, dword [rsp + 0x30]
mov r12d, r8d
inc dword [rsp + 0x30]
mov rcx, qword [rbp - 0x68]
lea rcx, [rcx + rax*8]
mov eax, r10d
sub eax, dword [rsp + 0x60]
mov dword [rcx], eax
lea rax, [r8 + r9]
xor r8d, r8d
mov dword [rcx + 4], edx
cmp rax, qword [rsp + 0x58]
mov ecx, r8d
mov eax, r8d
sete cl
cmp edx, r14d
seta al
or ecx, eax
jne 0x1401a0643
jmp 0x14019f6d1
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
sub rdx, r9
add rdx, rcx
jmp 0x14019f663
xor r8d, r8d
mov rcx, qword [rsp + 0x50]
inc r10d
add r11, 4
cmp r10d, ebx
jb 0x14019f580
mov esi, dword [rbp - 0x58]
mov eax, dword [rsp + 0x40]
mov dword [r15], eax
test esi, esi
je 0x14019f83e
nop dword [rax + rax]
dec esi
cmp edi, dword [rsp + 0x64]
jb 0x14019f83b
mov eax, dword [rbp - 0x54]
mov r15, qword [rbp - 0x40]
and eax, edi
mov rcx, qword [rbp - 0x38]
add eax, eax
cmp qword [rbp - 0x28], r15
mov r8, r15
mov r14, qword [rsp + 0x58]
cmovb r8, qword [rbp - 0x28]
mov r11d, edi
lea rbx, [rcx + rax*4]
add r11, qword [rbp - 8]
lea rcx, [r8 + r9]
lea r9, [r14 - 7]
mov r10, rcx
lea rdx, [r11 + r8]
cmp rcx, r9
jae 0x14019f789
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019f760
bsf rdx, rax
xor r10d, r10d
shr rdx, 3
jmp 0x14019f7d1
add rcx, 8
add rdx, 8
cmp rcx, r9
jae 0x14019f789
nop dword [rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019f853
add rcx, 8
add rdx, 8
cmp rcx, r9
jb 0x14019f770
lea rax, [r14 - 3]
cmp rcx, rax
jae 0x14019f7a0
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019f7a0
add rcx, 4
add rdx, 4
lea rax, [r14 - 1]
cmp rcx, rax
jae 0x14019f7b9
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019f7b9
add rcx, 2
add rdx, 2
cmp rcx, r14
jae 0x14019f7c8
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019f7c8
inc rcx
mov rdx, rcx
sub rdx, r10
xor r10d, r10d
add r8, rdx
cmp r8, r12
jbe 0x14019f86e
mov eax, dword [rsp + 0x38]
mov edx, r8d
sub eax, edi
cmp r8, rax
jbe 0x14019f7f3
lea eax, [r8 + rdi]
mov dword [rsp + 0x38], eax
mov r9d, dword [rsp + 0x30]
mov r12, r8
mov eax, dword [rsp + 0x40]
mov rcx, qword [rbp - 0x68]
sub eax, edi
lea rcx, [rcx + r9*8]
add eax, 2
mov dword [rcx], eax
inc r9d
mov dword [rcx + 4], edx
mov ecx, r10d
mov dword [rsp + 0x30], r9d
mov r9, qword [rbp - 0x78]
lea rax, [r8 + r9]
cmp rax, r14
mov eax, r10d
sete cl
cmp r8, 0x1000
seta al
or ecx, eax
je 0x14019f872
xor r8d, r8d
mov rax, qword [rsp + 0x48]
mov dword [rax], r8d
mov eax, dword [rsp + 0x38]
mov dword [r13], r8d
jmp 0x1401a0638
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
sub rdx, r10
add rdx, rcx
jmp 0x14019f7ce
mov r9, qword [rbp - 0x78]
movzx eax, byte [r8 + r9]
cmp byte [r11 + r8], al
jae 0x14019f894
mov dword [r13], edi
mov qword [rbp - 0x28], r8
cmp edi, dword [rsp + 0x6c]
jbe 0x14019f8b6
mov edi, dword [rbx + 4]
lea r13, [rbx + 4]
jmp 0x14019f8ac
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x40], r8
mov dword [rax], edi
cmp edi, dword [rsp + 0x6c]
jbe 0x14019f8bf
mov edi, dword [rbx]
mov qword [rsp + 0x48], rbx
test esi, esi
jne 0x14019f700
jmp 0x14019f83b
lea r13, [rbp + 0x28]
jmp 0x14019f83b
lea rax, [rbp + 0x28]
xor r8d, r8d
mov dword [rax], r8d
mov eax, dword [rsp + 0x38]
mov dword [r13], r8d
jmp 0x1401a0638
mov eax, dword [r12 + 0xcc]
mov r9d, r11d
mov rdx, qword [r11]
mov r14d, 0xfff
mov r10, qword [r12 + 0x40]
cmp eax, r14d
mov r8, qword [r12 + 0x30]
mov r11d, 1
cmovb r14d, eax
mov qword [rbp - 0x40], r13
mov rax, qword [r12 + 8]
mov ecx, 0x40
sub ecx, dword [r12 + 0xc0]
sub r9d, eax
mov qword [rbp - 0x38], rax
mov esi, r9d
movabs rax, 0xcf1bbcdcbb000000
mov qword [rbp - 0x28], r13
imul rdx, rax
mov eax, r9d
mov qword [rbp - 8], r10
shr rdx, cl
mov ecx, dword [r12 + 0xbc]
lea r15, [r8 + rdx*4]
mov edi, dword [r15]
dec ecx
mov edx, r11d
mov dword [rsp + 0x40], r9d
shl edx, cl
mov ecx, r13d
dec edx
sub eax, edx
mov dword [rsp + 0x64], edx
cmp edx, r9d
cmovb ecx, eax
mov eax, dword [r12 + 0x1c]
test eax, eax
mov dword [rsp + 0x6c], ecx
mov ecx, r11d
cmovne ecx, eax
mov eax, edx
and eax, r9d
mov dword [rbp - 0x58], ecx
mov ecx, dword [r12 + 0xc4]
add eax, eax
mov r12, qword [rbp - 0x60]
xor r8d, r8d
mov dword [rsp + 0x30], r8d
lea r13, [r10 + rax*4]
lea rax, [r13 + 4]
mov qword [rsp + 0x48], rax
lea eax, [r9 + 9]
mov dword [rsp + 0x38], eax
mov eax, r11d
shl eax, cl
mov rcx, qword [rsp + 0x78]
mov dword [rbp - 0x54], eax
mov eax, dword [rsp + 0x60]
mov r10d, eax
sub esi, dword [rcx + 0x18]
mov rcx, qword [rsp + 0x50]
lea ebx, [rax + 3]
lea r11, [rcx + rax*4]
cmp r10d, 3
jne 0x14019f9dc
mov ecx, dword [rcx]
dec ecx
jmp 0x14019f9df
mov ecx, dword [r11]
mov r9, qword [rbp - 0x78]
lea eax, [rcx - 1]
mov edx, r8d
cmp eax, esi
jae 0x14019faba
mov eax, dword [r9]
mov r8d, ecx
neg r8
cmp eax, dword [r9 + r8]
jne 0x14019faba
lea rdx, [r9 + 4]
add rdx, r8
lea rcx, [r9 + 4]
mov r8, qword [rsp + 0x58]
mov r9, rcx
add r8, 0xfffffffffffffff9
cmp rcx, r8
jae 0x14019fa69
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019fa3a
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
jmp 0x14019fab3
add rcx, 8
add rdx, 8
cmp rcx, r8
jae 0x14019fa69
nop word [rax + rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019fb06
add rcx, 8
add rdx, 8
cmp rcx, r8
jb 0x14019fa50
mov r8, qword [rsp + 0x58]
lea rax, [r8 - 3]
cmp rcx, rax
jae 0x14019fa85
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019fa85
add rcx, 4
add rdx, 4
lea rax, [r8 - 1]
cmp rcx, rax
jae 0x14019fa9e
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019fa9e
add rcx, 2
add rdx, 2
cmp rcx, r8
jae 0x14019faad
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019faad
inc rcx
mov rdx, rcx
sub rdx, r9
mov r9, qword [rbp - 0x78]
add edx, 4
mov r8d, edx
cmp r8, r12
jbe 0x14019fb1e
mov eax, dword [rsp + 0x30]
mov r12d, r8d
inc dword [rsp + 0x30]
mov rcx, qword [rbp - 0x68]
lea rcx, [rcx + rax*8]
mov eax, r10d
sub eax, dword [rsp + 0x60]
mov dword [rcx], eax
lea rax, [r8 + r9]
xor r8d, r8d
mov dword [rcx + 4], edx
cmp rax, qword [rsp + 0x58]
mov ecx, r8d
mov eax, r8d
sete cl
cmp edx, r14d
seta al
or ecx, eax
jne 0x1401a0643
jmp 0x14019fb21
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
sub rdx, r9
add rdx, rcx
jmp 0x14019fab3
xor r8d, r8d
mov rcx, qword [rsp + 0x50]
inc r10d
add r11, 4
cmp r10d, ebx
jb 0x14019f9d0
mov esi, dword [rbp - 0x54]
mov eax, dword [rsp + 0x40]
mov dword [r15], eax
test esi, esi
je 0x14019f83e
nop dword [rax + rax]
dec esi
cmp edi, dword [rbp - 0x58]
jb 0x14019f83b
mov eax, dword [rsp + 0x64]
mov r15, qword [rbp - 0x28]
and eax, edi
mov rcx, qword [rbp - 8]
add eax, eax
cmp qword [rbp - 0x40], r15
mov r8, r15
mov r14, qword [rsp + 0x58]
cmovb r8, qword [rbp - 0x40]
mov r11d, edi
lea rbx, [rcx + rax*4]
add r11, qword [rbp - 0x38]
lea rcx, [r8 + r9]
lea r9, [r14 - 7]
mov r10, rcx
lea rdx, [r11 + r8]
cmp rcx, r9
jae 0x14019fbd9
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019fbb0
bsf rdx, rax
xor r10d, r10d
shr rdx, 3
jmp 0x14019fc21
add rcx, 8
add rdx, 8
cmp rcx, r9
jae 0x14019fbd9
nop dword [rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019fc8d
add rcx, 8
add rdx, 8
cmp rcx, r9
jb 0x14019fbc0
lea rax, [r14 - 3]
cmp rcx, rax
jae 0x14019fbf0
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019fbf0
add rcx, 4
add rdx, 4
lea rax, [r14 - 1]
cmp rcx, rax
jae 0x14019fc09
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019fc09
add rcx, 2
add rdx, 2
cmp rcx, r14
jae 0x14019fc18
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019fc18
inc rcx
mov rdx, rcx
sub rdx, r10
xor r10d, r10d
add r8, rdx
cmp r8, r12
jbe 0x14019fca8
mov eax, dword [rsp + 0x38]
mov edx, r8d
sub eax, edi
cmp r8, rax
jbe 0x14019fc3f
lea eax, [r8 + rdi]
mov dword [rsp + 0x38], eax
mov r9d, dword [rsp + 0x30]
mov r12, r8
mov eax, dword [rsp + 0x40]
mov rcx, qword [rbp - 0x68]
sub eax, edi
lea rcx, [rcx + r9*8]
add eax, 2
mov dword [rcx], eax
inc r9d
mov dword [rcx + 4], edx
mov ecx, r10d
mov dword [rsp + 0x30], r9d
mov r9, qword [rbp - 0x78]
lea rax, [r8 + r9]
cmp rax, r14
mov eax, r10d
sete cl
cmp r8, 0x1000
seta al
or ecx, eax
jne 0x14019f83b
jmp 0x14019fcac
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
sub rdx, r10
add rdx, rcx
jmp 0x14019fc1e
mov r9, qword [rbp - 0x78]
movzx eax, byte [r8 + r9]
cmp byte [r11 + r8], al
jae 0x14019fcce
mov dword [r13], edi
mov qword [rbp - 0x40], r8
cmp edi, dword [rsp + 0x6c]
jbe 0x14019fcf3
mov edi, dword [rbx + 4]
lea r13, [rbx + 4]
jmp 0x14019fce6
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x28], r8
mov dword [rax], edi
cmp edi, dword [rsp + 0x6c]
jbe 0x14019fcfc
mov edi, dword [rbx]
mov qword [rsp + 0x48], rbx
test esi, esi
jne 0x14019fb50
jmp 0x14019f83b
lea r13, [rbp + 0x3c]
jmp 0x14019f83b
lea rax, [rbp + 0x3c]
xor r8d, r8d
mov dword [rax], r8d
mov eax, dword [rsp + 0x38]
mov dword [r13], r8d
jmp 0x1401a0638
mov eax, dword [r12 + 0xcc]
mov r9d, r11d
mov r10, qword [r12 + 0x40]
mov r14d, 0xfff
mov r8, qword [r12 + 0x30]
cmp eax, r14d
mov ecx, 0x20
mov qword [rbp - 0x40], r13
cmovb r14d, eax
mov qword [rbp - 0x28], r13
sub ecx, dword [r12 + 0xc0]
imul edx, dword [r11], 0x9e3779b1
mov r11d, 1
mov rax, qword [r12 + 8]
sub r9d, eax
mov qword [rbp - 0x38], rax
mov eax, r9d
mov qword [rbp - 8], r10
mov esi, r9d
mov dword [rsp + 0x40], r9d
shr rdx, cl
mov ecx, dword [r12 + 0xbc]
lea r15, [r8 + rdx*4]
mov edi, dword [r15]
dec ecx
mov edx, r11d
shl edx, cl
mov ecx, r13d
dec edx
sub eax, edx
mov dword [rsp + 0x64], edx
cmp edx, r9d
cmovb ecx, eax
mov eax, dword [r12 + 0x1c]
test eax, eax
mov dword [rsp + 0x6c], ecx
mov ecx, r11d
cmovne ecx, eax
mov eax, edx
and eax, r9d
mov dword [rbp - 0x58], ecx
mov ecx, dword [r12 + 0xc4]
add eax, eax
mov r12, qword [rbp - 0x60]
xor r8d, r8d
mov dword [rsp + 0x30], r8d
lea r13, [r10 + rax*4]
lea rax, [r13 + 4]
mov qword [rsp + 0x48], rax
lea eax, [r9 + 9]
mov dword [rsp + 0x38], eax
mov eax, r11d
shl eax, cl
mov rcx, qword [rsp + 0x78]
mov dword [rbp - 0x54], eax
mov eax, dword [rsp + 0x60]
mov r10d, eax
sub esi, dword [rcx + 0x18]
mov rcx, qword [rsp + 0x50]
lea ebx, [rax + 3]
lea r11, [rcx + rax*4]
cmp r10d, 3
jne 0x14019fe0f
mov ecx, dword [rcx]
dec ecx
jmp 0x14019fe12
mov ecx, dword [r11]
mov r9, qword [rbp - 0x78]
lea eax, [rcx - 1]
mov edx, r8d
cmp eax, esi
jae 0x14019feea
mov eax, dword [r9]
mov r8d, ecx
neg r8
cmp eax, dword [r8 + r9]
jne 0x14019feea
lea rdx, [r9 + 4]
add rdx, r8
lea rcx, [r9 + 4]
mov r8, qword [rsp + 0x58]
mov r9, rcx
add r8, 0xfffffffffffffff9
cmp rcx, r8
jae 0x14019fe99
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019fe6d
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
jmp 0x14019fee3
add rcx, 8
add rdx, 8
cmp rcx, r8
jae 0x14019fe99
nop word [rax + rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x14019ff36
add rcx, 8
add rdx, 8
cmp rcx, r8
jb 0x14019fe80
mov r8, qword [rsp + 0x58]
lea rax, [r8 - 3]
cmp rcx, rax
jae 0x14019feb5
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x14019feb5
add rcx, 4
add rdx, 4
lea rax, [r8 - 1]
cmp rcx, rax
jae 0x14019fece
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14019fece
add rcx, 2
add rdx, 2
cmp rcx, r8
jae 0x14019fedd
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x14019fedd
inc rcx
mov rdx, rcx
sub rdx, r9
mov r9, qword [rbp - 0x78]
add edx, 4
mov r8d, edx
cmp r8, r12
jbe 0x14019ff4e
mov eax, dword [rsp + 0x30]
mov r12d, r8d
inc dword [rsp + 0x30]
mov rcx, qword [rbp - 0x68]
lea rcx, [rcx + rax*8]
mov eax, r10d
sub eax, dword [rsp + 0x60]
mov dword [rcx], eax
lea rax, [r8 + r9]
xor r8d, r8d
mov dword [rcx + 4], edx
cmp rax, qword [rsp + 0x58]
mov ecx, r8d
mov eax, r8d
sete cl
cmp edx, r14d
seta al
or ecx, eax
jne 0x1401a0643
jmp 0x14019ff51
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
sub rdx, r9
add rdx, rcx
jmp 0x14019fee3
xor r8d, r8d
mov rcx, qword [rsp + 0x50]
inc r10d
add r11, 4
cmp r10d, ebx
jb 0x14019fe03
mov esi, dword [rbp - 0x54]
mov eax, dword [rsp + 0x40]
mov dword [r15], eax
test esi, esi
je 0x14019f83e
nop dword [rax + rax]
dec esi
cmp edi, dword [rbp - 0x58]
jb 0x14019f83b
mov eax, dword [rsp + 0x64]
mov r15, qword [rbp - 0x28]
and eax, edi
mov rcx, qword [rbp - 8]
add eax, eax
cmp qword [rbp - 0x40], r15
mov r8, r15
mov r14, qword [rsp + 0x58]
cmovb r8, qword [rbp - 0x40]
mov r11d, edi
lea rbx, [rcx + rax*4]
add r11, qword [rbp - 0x38]
lea rcx, [r8 + r9]
lea r9, [r14 - 7]
mov r10, rcx
lea rdx, [r11 + r8]
cmp rcx, r9
jae 0x1401a0009
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x14019ffe0
bsf rdx, rax
xor r10d, r10d
shr rdx, 3
jmp 0x1401a0051
add rcx, 8
add rdx, 8
cmp rcx, r9
jae 0x1401a0009
nop dword [rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x1401a00bd
add rcx, 8
add rdx, 8
cmp rcx, r9
jb 0x14019fff0
lea rax, [r14 - 3]
cmp rcx, rax
jae 0x1401a0020
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x1401a0020
add rcx, 4
add rdx, 4
lea rax, [r14 - 1]
cmp rcx, rax
jae 0x1401a0039
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x1401a0039
add rcx, 2
add rdx, 2
cmp rcx, r14
jae 0x1401a0048
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x1401a0048
inc rcx
mov rdx, rcx
sub rdx, r10
xor r10d, r10d
add r8, rdx
cmp r8, r12
jbe 0x1401a00d8
mov eax, dword [rsp + 0x38]
mov edx, r8d
sub eax, edi
cmp r8, rax
jbe 0x1401a006f
lea eax, [rdi + r8]
mov dword [rsp + 0x38], eax
mov r9d, dword [rsp + 0x30]
mov r12, r8
mov eax, dword [rsp + 0x40]
mov rcx, qword [rbp - 0x68]
sub eax, edi
lea rcx, [rcx + r9*8]
add eax, 2
mov dword [rcx], eax
inc r9d
mov dword [rcx + 4], edx
mov ecx, r10d
mov dword [rsp + 0x30], r9d
mov r9, qword [rbp - 0x78]
lea rax, [r8 + r9]
cmp rax, r14
mov eax, r10d
sete cl
cmp r8, 0x1000
seta al
or ecx, eax
jne 0x14019f83b
jmp 0x1401a00dc
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
sub rdx, r10
add rdx, rcx
jmp 0x1401a004e
mov r9, qword [rbp - 0x78]
movzx eax, byte [r8 + r9]
cmp byte [r11 + r8], al
jae 0x1401a00fe
mov dword [r13], edi
mov qword [rbp - 0x40], r8
cmp edi, dword [rsp + 0x6c]
jbe 0x1401a0123
mov edi, dword [rbx + 4]
lea r13, [rbx + 4]
jmp 0x1401a0116
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x28], r8
mov dword [rax], edi
cmp edi, dword [rsp + 0x6c]
jbe 0x1401a012c
mov edi, dword [rbx]
mov qword [rsp + 0x48], rbx
test esi, esi
jne 0x14019ff80
jmp 0x14019f83b
lea r13, [rbp + 0x38]
jmp 0x14019f83b
lea rax, [rbp + 0x38]
xor r8d, r8d
mov dword [rax], r8d
mov eax, dword [rsp + 0x38]
mov dword [r13], r8d
jmp 0x1401a0638
mov eax, dword [r12 + 0xcc]
mov r9d, r11d
mov r10, qword [r12 + 0x40]
mov r14d, 0xfff
mov r8, qword [r12 + 0x30]
cmp eax, r14d
mov ecx, 0x20
mov qword [rbp - 0x28], r13
cmovb r14d, eax
mov qword [rbp - 0x38], r13
sub ecx, dword [r12 + 0xc0]
imul edx, dword [r11], 0x9e3779b1
mov r11d, 1
mov rax, qword [r12 + 8]
sub r9d, eax
mov qword [rbp - 0x40], rax
mov eax, r9d
mov qword [rbp - 8], r10
mov esi, r9d
mov dword [rsp + 0x6c], r9d
shr rdx, cl
mov ecx, dword [r12 + 0xbc]
lea r15, [r8 + rdx*4]
mov edi, dword [r15]
dec ecx
mov edx, r11d
shl edx, cl
mov ecx, r13d
dec edx
sub eax, edx
mov dword [rbp - 0x58], edx
cmp edx, r9d
cmovb ecx, eax
mov eax, dword [r12 + 0x1c]
test eax, eax
mov dword [rsp + 0x64], ecx
mov ecx, r11d
cmovne ecx, eax
mov eax, edx
and eax, r9d
mov dword [rsp + 0x38], ecx
mov ecx, dword [r12 + 0xc4]
add eax, eax
mov r12, qword [rbp - 0x60]
xor r8d, r8d
mov dword [rsp + 0x30], r8d
lea r13, [r10 + rax*4]
lea rax, [r13 + 4]
mov qword [rsp + 0x48], rax
lea eax, [r9 + 9]
mov dword [rsp + 0x40], eax
mov eax, r11d
shl eax, cl
mov rcx, qword [rsp + 0x78]
mov dword [rbp - 0x54], eax
mov eax, dword [rsp + 0x60]
mov r10d, eax
sub esi, dword [rcx + 0x18]
mov rcx, qword [rsp + 0x50]
lea ebx, [rax + 3]
lea r11, [rcx + rax*4]
cmp r10d, 3
jne 0x1401a023f
mov edx, dword [rcx]
dec edx
jmp 0x1401a0242
mov edx, dword [r11]
lea eax, [rdx - 1]
cmp eax, esi
jae 0x1401a0319
mov rax, qword [rbp - 0x78]
mov r9d, edx
neg r9
mov ecx, dword [rax]
shl ecx, 8
mov eax, dword [r9 + rax]
shl eax, 8
cmp ecx, eax
jne 0x1401a0319
mov rax, qword [rbp - 0x78]
mov r8, qword [rsp + 0x58]
add r8, 0xfffffffffffffff9
lea rcx, [rax + 3]
lea rdx, [rax + 3]
add rdx, r9
mov r9, rcx
cmp rcx, r8
jae 0x1401a02cb
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x1401a02a5
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
jmp 0x1401a0315
add rcx, 8
add rdx, 8
cmp rcx, r8
jae 0x1401a02cb
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x1401a036c
add rcx, 8
add rdx, 8
cmp rcx, r8
jb 0x1401a02b2
mov r8, qword [rsp + 0x58]
lea rax, [r8 - 3]
cmp rcx, rax
jae 0x1401a02e7
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x1401a02e7
add rcx, 4
add rdx, 4
lea rax, [r8 - 1]
cmp rcx, rax
jae 0x1401a0300
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x1401a0300
add rcx, 2
add rdx, 2
cmp rcx, r8
jae 0x1401a030f
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x1401a030f
inc rcx
mov rdx, rcx
sub rdx, r9
lea r8d, [rdx + 3]
mov edx, r8d
cmp rdx, r12
jbe 0x1401a0384
mov r9d, dword [rsp + 0x30]
mov eax, r10d
sub eax, dword [rsp + 0x60]
mov r12d, edx
mov rcx, qword [rbp - 0x68]
lea rcx, [rcx + r9*8]
inc r9d
mov dword [rcx], eax
mov dword [rcx + 4], r8d
mov dword [rsp + 0x30], r9d
mov r9, qword [rbp - 0x78]
lea rax, [rdx + r9]
xor edx, edx
cmp rax, qword [rsp + 0x58]
mov ecx, edx
mov eax, edx
sete cl
cmp r8d, r14d
seta al
or ecx, eax
jne 0x1401a0643
jmp 0x1401a0388
bsf rdx, rax
mov dword [rsp + 0x3c], 0
shr rdx, 3
sub rdx, r9
add rdx, rcx
jmp 0x1401a0315
mov r9, qword [rbp - 0x78]
inc r10d
add r11, 4
cmp r10d, ebx
jae 0x1401a03a1
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
jmp 0x1401a0233
cmp r12, 3
jae 0x1401a049d
mov rsi, qword [rsp + 0x78]
mov r10d, r9d
mov ecx, 0x20
mov rdx, qword [rsi + 8]
mov r8d, dword [rsi + 0x28]
sub r10d, edx
mov r11, qword [rsi + 0x38]
mov dword [rsi + 0x28], r10d
imul ebx, dword [r9], 0x35a7bd00
sub ecx, dword [rsi + 0x2c]
shr rbx, cl
cmp r8d, r10d
jae 0x1401a03ff
lea r9, [rdx + r8]
imul edx, dword [r9], 0x35a7bd00
lea r9, [r9 + 1]
shr rdx, cl
mov dword [r11 + rdx*4], r8d
inc r8d
cmp r8d, r10d
jb 0x1401a03e1
mov r9, qword [rbp - 0x78]
mov edx, dword [r11 + rbx*4]
xor eax, eax
mov ebx, dword [rsp + 0x6c]
mov ecx, eax
mov r8d, dword [rsp + 0x38]
mov r11d, ebx
sub r11d, edx
cmp edx, r8d
setae cl
cmp r11d, 0x40000
setb al
test eax, ecx
je 0x1401a04a6
add rdx, qword [rbp - 0x40]
mov rcx, r9
mov r8, qword [rsp + 0x58]
call fcn.140190250
mov r9, r8
cmp rax, 3
jb 0x1401a0527
mov rdx, qword [rbp - 0x68]
lea ecx, [r11 + 2]
xor r11d, r11d
mov r12, rax
mov r8d, r11d
mov dword [rdx], ecx
mov ecx, 1
mov r10d, ecx
mov dword [rsp + 0x30], ecx
mov rcx, qword [rbp - 0x78]
add rcx, rax
mov dword [rdx + 4], eax
cmp rcx, r9
mov edx, r11d
mov ecx, r14d
sete r8b
cmp rax, rcx
seta dl
or r8d, edx
je 0x1401a0531
lea eax, [rbx + 1]
mov dword [rsp + 0x30], r10d
mov dword [rsi + 0x24], eax
jmp 0x1401a0643
mov ebx, dword [rsp + 0x6c]
mov r8d, dword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x30]
xor r11d, r11d
mov esi, dword [rbp - 0x54]
mov dword [r15], ebx
test esi, esi
je 0x1401a0623
dec esi
cmp edi, r8d
jb 0x1401a0620
mov eax, dword [rbp - 0x58]
mov r15, qword [rbp - 0x38]
and eax, edi
mov rcx, qword [rbp - 8]
add eax, eax
cmp qword [rbp - 0x28], r15
mov r8, r15
mov r14, qword [rbp - 0x78]
cmovb r8, qword [rbp - 0x28]
add r9, 0xfffffffffffffff9
mov r11d, edi
lea rbx, [rcx + rax*4]
add r11, qword [rbp - 0x40]
lea rcx, [r8 + r14]
mov r10, rcx
lea rdx, [r11 + r8]
cmp rcx, r9
jae 0x1401a0569
mov rax, qword [rcx]
xor rax, qword [rdx]
je 0x1401a053b
mov r9, qword [rsp + 0x58]
xor r15d, r15d
bsf rdx, rax
shr rdx, 3
jmp 0x1401a05b6
mov r8d, dword [rsp + 0x38]
jmp 0x1401a04ab
mov r8d, dword [rsp + 0x38]
jmp 0x1401a04b3
add rcx, 8
add rdx, 8
cmp rcx, r9
jae 0x1401a0569
nop dword [rax + rax]
mov rax, qword [rcx]
xor rax, qword [rdx]
jne 0x1401a06e1
add rcx, 8
add rdx, 8
cmp rcx, r9
jb 0x1401a0550
mov r9, qword [rsp + 0x58]
lea rax, [r9 - 3]
cmp rcx, rax
jae 0x1401a0585
mov eax, dword [rcx]
cmp dword [rdx], eax
jne 0x1401a0585
add rcx, 4
add rdx, 4
lea rax, [r9 - 1]
cmp rcx, rax
jae 0x1401a059e
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x1401a059e
add rcx, 2
add rdx, 2
cmp rcx, r9
jae 0x1401a05ad
movzx eax, byte [rcx]
cmp byte [rdx], al
jne 0x1401a05ad
inc rcx
mov rdx, rcx
sub rdx, r10
xor r15d, r15d
add r8, rdx
cmp r8, r12
jbe 0x1401a06fc
mov eax, dword [rsp + 0x40]
mov edx, r8d
sub eax, edi
cmp r8, rax
jbe 0x1401a05d8
lea eax, [rdi + r8]
mov dword [rsp + 0x40], eax
mov r10d, dword [rsp + 0x30]
mov r12, r8
mov eax, dword [rsp + 0x6c]
mov rcx, qword [rbp - 0x68]
sub eax, edi
add eax, 2
lea rcx, [rcx + r10*8]
mov dword [rcx], eax
inc r10d
mov dword [rcx + 4], edx
lea rax, [r8 + r14]
cmp rax, r9
mov dword [rsp + 0x30], r10d
mov ecx, r15d
mov eax, r15d
sete cl
cmp r8, 0x1000
seta al
or ecx, eax
je 0x1401a0701
xor r11d, r11d
mov rax, qword [rsp + 0x48]
mov dword [rax], r11d
mov eax, dword [rsp + 0x40]
mov dword [r13], r11d
mov dword [rsp + 0x30], r10d
mov rcx, qword [rsp + 0x78]
add eax, 0xfffffff8
mov dword [rcx + 0x24], eax
mov r8d, dword [rsp + 0x30]
test r8d, r8d
je 0x1401a0908
mov rbx, qword [rbp - 0x68]
lea eax, [r8 - 1]
mov ecx, dword [rbx + rax*8 + 4]
lea rdx, [rbx + rax*8]
mov r11d, dword [rbp - 0x80]
cmp ecx, dword [rbp + 8]
ja 0x1401a0939
lea eax, [rcx + r11]
cmp eax, 0x1000
jae 0x1401a0939
xor r15d, r15d
mov dword [rsp + 0x64], r15d
test r8d, r8d
je 0x1401a0930
mov r13, rbx
mov qword [rbp - 0x38], rbx
nop word [rax + rax]
mov esi, dword [r13]
lea rcx, [rbp + 0xa0]
mov r9d, dword [rsp + 0x60]
mov r8d, esi
mov rdx, qword [rsp + 0x50]
call fcn.1401a1e70
mov edx, dword [r13 + 4]
movsd xmm1, qword [rax]
mov r12d, dword [rax + 8]
test r15d, r15d
je 0x1401a0762
lea eax, [r15 - 1]
mov edi, dword [rbx + rax*8 + 4]
inc edi
jmp 0x1401a0765
mov r9, qword [rsp + 0x58]
xor r15d, r15d
bsf rdx, rax
shr rdx, 3
sub rdx, r10
add rdx, rcx
jmp 0x1401a05b6
mov r10d, dword [rsp + 0x30]
movzx eax, byte [r8 + r14]
cmp byte [r11 + r8], al
jae 0x1401a0723
mov dword [r13], edi
mov qword [rbp - 0x28], r8
cmp edi, dword [rsp + 0x64]
jbe 0x1401a074d
mov edi, dword [rbx + 4]
lea r13, [rbx + 4]
jmp 0x1401a073b
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x38], r8
mov dword [rax], edi
cmp edi, dword [rsp + 0x64]
jbe 0x1401a0756
mov edi, dword [rbx]
mov qword [rsp + 0x48], rbx
test esi, esi
je 0x1401a0620
mov r8d, dword [rsp + 0x38]
jmp 0x1401a04c1
lea r13, [rbp + 0x34]
jmp 0x1401a0620
lea rax, [rbp + 0x34]
xor r11d, r11d
jmp 0x1401a0628
mov edi, dword [rbp - 0x50]
cmp edx, edi
jb 0x1401a08ed
mov r13d, dword [rsp + 0x68]
lea r14d, [rsi + 1]
mov r15, qword [rsp + 0x78]
lea r10d, [rdx + r11]
mov ebx, r11d
neg ebx
nop dword [rax]
nop dword [rax + rax]
bsr r9d, r14d
cmp dword [r15 + 0x98], 1
lea r11d, [rbx + r10]
lea r8d, [r11 - 3]
jne 0x1401a07c2
lea eax, [r8 + 1]
bsr ecx, eax
shl eax, 8
shr eax, cl
lea edx, [rcx + 0x10]
add edx, r9d
shl edx, 8
add edx, eax
jmp 0x1401a084d
mov rax, qword [r15 + 0x60]
mov edx, dword [rax + r9*4]
inc edx
bsr ecx, edx
shl edx, 8
sub r9d, ecx
shr edx, cl
shl r9d, 8
sub r9d, edx
add r9d, dword [r15 + 0x94]
cmp r8d, 0x7f
jbe 0x1401a07f4
bsr eax, r8d
add eax, 0x24
jmp 0x1401a0804
lea rcx, [0x140000000]
movzx eax, byte [r8 + rcx + 0x22ec70]
lea rdx, [rax*4]
mov dword [rsp + 0x3c], 0
mov rax, qword [r15 + 0x58]
mov r8d, dword [rax + rdx]
lea rax, [0x140000000]
mov edx, dword [rdx + rax + 0x22eb50]
inc r8d
bsr ecx, r8d
shl r8d, 8
sub edx, ecx
shr r8d, cl
shl edx, 8
sub edx, r8d
add edx, 0x33
add edx, dword [r15 + 0x90]
add edx, r9d
mov r8d, dword [rsp + 0x34]
add r8d, edx
mov r9d, r10d
mov rdx, qword [rbp - 0x48]
cmp r13d, r10d
jb 0x1401a0870
imul rax, r9, 0x1c
cmp r8d, dword [rax + rdx]
jge 0x1401a08c8
cmp r13d, r10d
jae 0x1401a08a4
lea ecx, [r13 + 1]
imul rax, rcx, 0x1c
mov ecx, r10d
add rax, rdx
sub ecx, r13d
add r13d, ecx
mov edx, ecx
nop word [rax + rax]
mov dword [rax], 0x40000000
lea rax, [rax + 0x1c]
sub rdx, 1
jne 0x1401a0890
mov rdx, qword [rbp - 0x48]
mov ecx, dword [rsp + 0x70]
imul rax, r9, 0x1c
mov dword [rax + rdx + 8], r11d
mov dword [rax + rdx + 4], esi
mov dword [rax + rdx + 0xc], ecx
mov dword [rax + rdx], r8d
movsd qword [rax + rdx + 0x10], xmm1
mov dword [rax + rdx + 0x18], r12d
dec r10d
lea eax, [rbx + r10]
cmp eax, edi
jae 0x1401a0790
mov r15d, dword [rsp + 0x64]
mov r11d, dword [rbp - 0x80]
mov rbx, qword [rbp - 0x68]
mov dword [rsp + 0x68], r13d
mov r13, qword [rbp - 0x38]
inc r15d
add r13, 8
mov dword [rsp + 0x64], r15d
mov qword [rbp - 0x38], r13
cmp r15d, dword [rsp + 0x30]
jb 0x1401a06a0
mov esi, dword [rsp + 0x68]
mov r8d, dword [rbp - 0x80]
mov r11, qword [rbp - 0x48]
inc r8d
mov dword [rbp - 0x80], r8d
mov r9d, 1
cmp r8d, esi
ja 0x1401a0983
mov r14, qword [rsp + 0x78]
jmp 0x14019f160
mov esi, dword [rsp + 0x68]
mov r8d, r11d
jmp 0x1401a0910
mov eax, dword [rdx]
mov dword [rbp + 0x44], eax
mov eax, dword [rsp + 0x70]
mov dword [rbp + 0x4c], eax
mov rax, qword [rbp - 0x18]
mov dword [rbp + 0x48], ecx
cmp dword [rax], 0
jne 0x1401a0959
mov rax, qword [rbp - 0x20]
mov eax, dword [rax]
jmp 0x1401a095b
xor eax, eax
movups xmm2, xmmword [rbp + 0x40]
mov r8d, dword [rbp - 0x10]
sub r11d, eax
xor esi, esi
cmp r11d, 0x1000
cmovbe esi, r11d
mov r11, qword [rbp - 0x48]
jmp 0x1401a09c0
mov r11, qword [rbp - 0x48]
mov r9d, 1
mov eax, esi
imul rdx, rax, 0x1c
add rdx, r11
mov rcx, qword [rdx + 8]
movups xmm2, xmmword [rdx]
mov r8d, dword [rdx + 0x18]
movsd xmm4, qword [rdx + 0x10]
shr rcx, 0x20
add ecx, dword [rdx + 8]
mov dword [rbp - 0x10], r8d
movups xmmword [rbp + 0x40], xmm2
cmp esi, ecx
jbe 0x1401a0a4a
mov rax, qword [rdx + 8]
shr rax, 0x20
sub esi, eax
sub esi, dword [rdx + 8]
lea r15d, [rsi + 1]
mov eax, r15d
mov edi, r15d
imul rcx, rax, 0x1c
mov dword [rsp + 0x34], r15d
movups xmmword [rcx + r11], xmm2
movsd qword [rcx + r11 + 0x10], xmm4
mov dword [rcx + r11 + 0x18], r8d
test esi, esi
je 0x1401a0a3f
xor r15d, r15d
nop dword [rax + rax]
mov eax, esi
dec edi
imul r8, rax, 0x1c
mov eax, edi
imul rcx, rax, 0x1c
add r8, r11
mov rdx, qword [r8 + 8]
movups xmm0, xmmword [r8]
shr rdx, 0x20
add edx, dword [r8 + 8]
movups xmmword [rcx + r11], xmm0
movsd xmm1, qword [r8 + 0x10]
movsd qword [rcx + r11 + 0x10], xmm1
mov eax, dword [r8 + 0x18]
mov dword [rcx + r11 + 0x18], eax
mov eax, esi
sub esi, edx
cmp eax, edx
cmovbe esi, r15d
test esi, esi
jne 0x1401a09f0
mov r15d, dword [rsp + 0x34]
cmp edi, r15d
ja 0x1401a0be7
jmp 0x1401a0a5f
movups xmmword [r11 + 0x1c], xmm2
movsd qword [r11 + 0x2c], xmm4
mov edi, r9d
mov dword [r11 + 0x34], r8d
mov r15d, r9d
mov rdx, qword [rbp]
nop dword [rax]
nop word [rax + rax]
mov eax, edi
imul rcx, rax, 0x1c
mov r14d, dword [rcx + r11 + 8]
mov ebx, dword [rcx + r11 + 0xc]
mov esi, dword [rcx + r11 + 4]
lea r12d, [r14 + rbx]
test r14d, r14d
jne 0x1401a0a9b
lea rax, [rdx + rbx]
mov qword [rbp - 0x70], rax
jmp 0x1401a0bcb
cmp esi, 3
jb 0x1401a0ac8
mov eax, dword [rbp + 0xb4]
lea r13d, [rsi - 2]
mov dword [rbp - 0x30], eax
mov dword [rbp + 0xb8], eax
mov eax, dword [rbp + 0xb0]
mov dword [rbp + 0xb4], eax
mov dword [rbp + 0xb0], r13d
jmp 0x1401a0b11
xor eax, eax
test ebx, ebx
mov ecx, eax
sete cl
add ecx, esi
je 0x1401a0b11
cmp ecx, 3
jne 0x1401a0ae4
mov eax, dword [rbp + 0xb0]
dec eax
jmp 0x1401a0af0
mov eax, dword [rbp + rcx*4 + 0xb0]
cmp ecx, 2
jb 0x1401a0aff
mov ecx, dword [rbp + 0xb4]
mov dword [rbp - 0x30], ecx
mov dword [rbp + 0xb8], ecx
mov ecx, dword [rbp + 0xb0]
mov dword [rbp + 0xb4], ecx
mov dword [rbp + 0xb0], eax
mov r13, qword [rbp]
mov r9d, esi
mov rcx, qword [rbp + 0x60]
mov r8, r13
mov edx, ebx
mov dword [rsp + 0x20], r14d
call fcn.1401a1ef0
mov r10, qword [rbp + 0x70]
add r14d, 0xfffffffd
mov rdx, r13
mov rcx, qword [r10 + 0x18]
lea r8, [rcx + rbx]
nop
mov rax, qword [rdx]
lea rdx, [rdx + 8]
mov qword [rcx], rax
add rcx, 8
cmp rcx, r8
jb 0x1401a0b40
add qword [r10 + 0x18], rbx
cmp ebx, 0xffff
jbe 0x1401a0b77
mov eax, 1
mov dword [r10 + 0x48], eax
mov rax, qword [r10 + 8]
sub rax, qword [r10]
sar rax, 3
mov dword [r10 + 0x4c], eax
mov rax, qword [r10 + 8]
lea ecx, [rsi + 1]
mov word [rax + 4], bx
mov rax, qword [r10 + 8]
mov dword [rax], ecx
cmp r14d, 0xffff
jbe 0x1401a0ba8
mov dword [r10 + 0x48], 2
mov rax, qword [r10 + 8]
sub rax, qword [r10]
sar rax, 3
mov dword [r10 + 0x4c], eax
mov rax, qword [r10 + 8]
mov r11, qword [rbp - 0x48]
mov word [rax + 6], r14w
add qword [r10 + 8], 8
mov eax, r12d
add r13, rax
mov qword [rbp], r13
mov rdx, r13
mov qword [rbp - 0x70], r13
inc edi
cmp edi, r15d
jbe 0x1401a0a70
movsd xmm0, qword [rbp + 0xb0]
movsd qword [rbp - 0x60], xmm0
movq xmm3, xmm0
mov r13, qword [rsp + 0x78]
xor edx, edx
cmp dword [r13 + 0xa8], 2
je 0x1401a0c12
mov eax, dword [r13 + 0x78]
inc eax
bsr ecx, eax
shl eax, 8
shr eax, cl
shl ecx, 8
add eax, ecx
mov dword [r13 + 0x88], eax
mov eax, dword [r13 + 0x7c]
mov r12, qword [rbp - 0x70]
inc eax
bsr ecx, eax
shl eax, 8
shr eax, cl
shl ecx, 8
add eax, ecx
mov dword [r13 + 0x8c], eax
mov eax, dword [r13 + 0x80]
inc eax
bsr ecx, eax
shl eax, 8
shr eax, cl
shl ecx, 8
add eax, ecx
mov dword [r13 + 0x90], eax
mov eax, dword [r13 + 0x84]
inc eax
bsr ecx, eax
shl eax, 8
shr eax, cl
shl ecx, 8
add eax, ecx
mov dword [r13 + 0x94], eax
jmp 0x1401a0c7e
mov r13, qword [rsp + 0x78]
xor edx, edx
mov r12, qword [rbp - 0x70]
inc r12
mov qword [rbp - 0x70], r12
movabs rcx, 0xcf1bbcdcbf9b0000
mov r15, qword [rsp + 0x58]
mov rsi, qword [rbp]
cmp r12, qword [rbp + 0x68]
jb 0x14019dbc0
mov rdi, qword [rbp + 0x70]
lea r14, [r13 + 0x48]
mov rcx, rdi
call fcn.140180f80
mov rcx, qword [rbp + 0x78]
sub qword [r13 + 8], rcx
add ecx, dword [r13 + 0x18]
mov dword [r13 + 0x18], ecx
mov dword [r13 + 0x1c], ecx
mov dword [r13 + 0x24], ecx
mov dword [r13 + 0x28], ecx
cmp dword [r14 + 0x60], 2
je 0x1401a0ce2
mov rcx, qword [r14]
xor r8d, r8d
mov edx, 0xff
call fcn.1401a1fb0
mov dword [r14 + 0x30], eax
mov rcx, qword [r14 + 8]
xor r8d, r8d
lea edx, [r8 + 0x23]
call fcn.1401a1fb0
xor r8d, r8d
mov dword [r14 + 0x34], eax
mov rcx, qword [r14 + 0x10]
lea edx, [r8 + 0x34]
call fcn.1401a1fb0
xor r8d, r8d
mov dword [r14 + 0x38], eax
mov rcx, qword [r14 + 0x18]
lea edx, [r8 + 0x1f]
call fcn.1401a1fb0
mov dword [r14 + 0x3c], eax
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.1400c3d30
add rsp, 0x1d8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret