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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x98
mov rdi, qword [rcx + 0x70]
mov r11, qword [rsp + 0x100]
mov r12d, dword [rcx + 0x18]
mov ebp, dword [rcx + 0x110]
mov qword [rsp + 0x30], rdi
mov rbx, r9
mov rsi, rdx
mov edi, dword [rcx + 0x108]
mov edx, dword [rcx + 0x28]
mov rax, rbx
mov qword [rsp + 0xf0], r8
mov r9d, dword [rcx + 0x100]
mov dword [rsp + 0x70], edi
mov rdi, qword [rcx + 0x80]
mov dword [rsp + 0x58], r9d
mov qword [rsp + 0x40], rdi
mov edi, dword [rcx + 0x104]
mov dword [rsp + 0x74], edi
mov rdi, qword [rcx + 8]
mov ecx, r12d
sub rax, rdi
mov qword [rsp + 0x20], rdi
lea r8d, [rax + r11]
call fcn.1401b7100
mov r9d, dword [rsp + 0x58]
mov ecx, r12d
mov dword [rsp + 0x60], eax
mov eax, eax
add rax, rdi
mov qword [rsp + 0x50], rax
lea rax, [rbx + r11]
xor r11d, r11d
mov qword [rsp + 0x28], rax
sub rax, 8
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax]
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 4]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x50]
cmp rbx, rax
mov rax, qword [rsp + 0x20]
sete r11b
add r11, rbx
mov rdi, r11
sub rdi, rax
mov r8d, edi
call fcn.1401b7100
mov edx, eax
mov eax, edi
sub eax, edx
cmp ebp, 6
je 0x14019adb5
cmp ebp, 7
je 0x14019b449
xor r10d, r10d
cmp ebp, 5
mov edi, dword [rsp + 0x38]
je 0x14019a762
cmp eax, edi
jb 0x14019a157
xor r14d, r14d
mov r10d, edi
mov dword [rsp + 0x38], r14d
mov ecx, dword [rsp + 0x3c]
xor edi, edi
cmp eax, ecx
jb 0x14019a2ee
xor r13d, r13d
mov edi, ecx
mov dword [rsp + 0x3c], r13d
jmp 0x14019a2ee
mov r8d, dword [rsp + 0x78]
mov rax, qword [rsp + 0x20]
mov cl, byte [rsp + 0x58]
mov r14, qword [rsp + 0x20]
lea edx, [r8 + 2]
mov r8, rdx
add rdx, rax
movabs rax, 0xcf1bbcdcb7a56463
mov r9, qword [rdx]
imul r9, rax
imul rax, qword [rbx - 2]
shr r9, cl
mov rcx, qword [rsp + 0x30]
mov dword [rcx + r9*4], r8d
mov cl, byte [rsp + 0x58]
shr rax, cl
lea rcx, [rbx - 2]
sub rcx, r14
mov r14, qword [rsp + 0x30]
mov dword [r14 + rax*4], ecx
mov cl, byte [rsp + 0x64]
imul eax, dword [rdx], 0x9e3779b1
lea rdx, [rbx - 1]
shr eax, cl
mov rcx, qword [rsp + 0x40]
mov dword [rcx + rax*4], r8d
mov cl, byte [rsp + 0x64]
imul eax, dword [rbx - 1], 0x9e3779b1
shr eax, cl
mov rcx, qword [rsp + 0x20]
sub rdx, rcx
mov rcx, qword [rsp + 0x40]
mov dword [rcx + rax*4], edx
mov eax, r10d
mov rdx, rbx
mov ebp, dword [rbx]
sub rdx, rax
cmp dword [rdx], ebp
jne 0x14019a2eb
test r10d, r10d
je 0x14019a2eb
mov r8, qword [rsp + 0x28]
mov rdx, rbx
mov dword [rsp + 0x68], r10d
imul ebp, ebp, 0x9e3779b1
lea rcx, [rbx + 4]
sub rdx, rax
add rdx, 4
call fcn.1401b3fe0
mov cl, byte [rsp + 0x64]
mov rdx, rbx
lea r11, [rax + 4]
mov r12, rax
mov rax, qword [rsp + 0x20]
mov r10d, dword [rsp + 0x68]
shr ebp, cl
mov cl, byte [rsp + 0x58]
sub rdx, rax
mov rax, qword [rsp + 0x40]
mov dword [rax + rbp*4], edx
movabs rax, 0xcf1bbcdcb7a56463
imul rax, qword [rbx]
shr rax, cl
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], edx
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsi + 0x18]
lea r9, [rax - 0x20]
cmp r9, rbx
jb 0x14019a748
movups xmm2, xmmword [rbx]
movups xmmword [rcx], xmm2
mov rax, qword [rsi + 8]
inc r12
cmp r12, 0xffff
mov word [rax + 4], 0
mov dword [rax], 1
jbe 0x14019a2cd
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], r12w
add rbx, r11
add rax, 8
xchg r10d, edi
cmp qword [rsp + 0x48], rbx
mov qword [rsi + 8], rax
jae 0x14019a200
mov r11, rbx
mov rbp, rbx
mov rbx, r11
lea r14, [rbx + 1]
cmp qword [rsp + 0x48], r14
lea rdx, [rbx + 0x100]
jb 0x14019af92
mov ecx, dword [rsp + 0x70]
mov eax, 0x40
mov r12d, 1
movabs r15, 0xcf1bbcdcb7a56463
mov qword [rsp + 0x68], 1
mov r11d, dword [rsp + 0x74]
imul r15, qword [rbx]
sub eax, ecx
mov dword [rsp + 0x58], eax
mov cl, byte [rsp + 0x58]
mov rax, qword [rsp + 0x30]
shr r15, cl
mov rcx, qword [rsp + 0x20]
mov r13d, dword [rax + r15*4]
mov rax, r13
add r13, rcx
mov ecx, 0x20
sub ecx, r11d
mov r11d, edi
sub r12, r11
mov dword [rsp + 0x64], ecx
mov qword [rsp + 0x80], r12
mov cl, byte [rsp + 0x64]
imul r8d, dword [rbx], 0x9e3779b1
mov r12, qword [rsp + 0x20]
shr r8d, cl
mov rcx, qword [rsp + 0x40]
lea rcx, [rcx + r8*4]
mov r8, rbx
sub r8, r12
mov r9d, dword [rcx]
mov qword [rsp + 0x78], r8
mov r8d, dword [rsp + 0x78]
mov dword [rcx], r8d
mov rcx, qword [rsp + 0x30]
mov dword [rcx + r15*4], r8d
mov r15, qword [rsp + 0x80]
mov ecx, dword [rbx + 1]
cmp dword [rbx + r15], ecx
jne 0x14019a4c9
test edi, edi
je 0x14019a4c9
mov r8, qword [rsp + 0x28]
mov rax, rbx
mov dword [rsp + 0x68], r10d
lea rcx, [rbx + 5]
sub rax, r11
lea rdx, [rax + 5]
lea r12, [rbx + 1]
call fcn.1401b3fe0
mov r13, r12
mov rcx, qword [rsi + 0x18]
lea r11, [rax + 4]
mov rbx, rax
mov rax, qword [rsp + 0x28]
sub r13, rbp
mov r10d, dword [rsp + 0x68]
lea r9, [rax - 0x20]
cmp r9, r12
jb 0x14019a457
movups xmm0, xmmword [rbp]
cmp r13, 0x10
movups xmmword [rcx], xmm0
jbe 0x14019a46c
mov rax, qword [rsi + 0x18]
cmp r13, 0x20
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rax + 0x10], xmm1
jle 0x14019a46c
lea rdx, [rax + r13]
add rbp, 0x20
add rax, 0x20
movups xmm2, xmmword [rbp]
add rax, 0x20
add rbp, 0x20
movups xmmword [rax - 0x20], xmm2
movups xmm3, xmmword [rbp - 0x10]
movups xmmword [rax - 0x10], xmm3
cmp rax, rdx
jb 0x14019a438
jmp 0x14019a46c
mov r8, r12
mov rdx, rbp
mov dword [rsp + 0x68], r10d
call fcn.1401bac40
mov r10d, dword [rsp + 0x68]
add qword [rsi + 0x18], r13
cmp r13, 0xffff
mov rdx, qword [rsi + 8]
jbe 0x14019a491
mov rax, rdx
sub rax, qword [rsi]
mov dword [rsi + 0x48], 1
sar rax, 3
mov dword [rsi + 0x4c], eax
inc rbx
mov word [rdx + 4], r13w
cmp rbx, 0xffff
mov dword [rdx], 1
jbe 0x14019a4bc
mov rax, rdx
sub rax, qword [rsi]
mov dword [rsi + 0x48], 2
sar rax, 3
mov dword [rsi + 0x4c], eax
mov word [rdx + 6], bx
add rdx, 8
jmp 0x14019a72d
movabs r15, 0xcf1bbcdcb7a56463
mov r8, qword [r14]
mov cl, byte [rsp + 0x58]
imul r15, r8
shr r15, cl
cmp dword [rsp + 0x60], eax
jae 0x14019a53c
mov rax, qword [rbx]
cmp qword [r13], rax
jne 0x14019a53c
mov r8, qword [rsp + 0x28]
lea rdx, [r13 + 8]
mov r12, rbx
lea rcx, [rbx + 8]
call fcn.1401b3fe0
lea r11, [rax + 8]
mov eax, ebx
sub eax, r13d
cmp rbp, r12
jae 0x14019a640
cmp qword [rsp + 0x50], r13
jae 0x14019a640
mov bl, byte [r13 - 1]
cmp byte [r12 - 1], bl
jne 0x14019a640
dec r12
dec r13
inc r11
jmp 0x14019a50e
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
mov r13d, dword [rax + r15*4]
mov rax, r13
add r13, rcx
cmp dword [rsp + 0x60], r9d
jae 0x14019a56c
add r9, rcx
mov ecx, dword [rbx]
cmp dword [r9], ecx
jne 0x14019a56c
cmp dword [rsp + 0x60], eax
jb 0x14019a5a9
jmp 0x14019a5f0
cmp r14, rdx
jb 0x14019a58a
prefetcht0 byte [r14 + 0x40]
prefetcht0 byte [r14 + 0x80]
inc qword [rsp + 0x68]
add rdx, 0x100
mov rbx, qword [rsp + 0x68]
lea rcx, [r14 + rbx]
cmp qword [rsp + 0x48], rcx
mov rbx, r14
jb 0x14019af92
mov r14, rcx
jmp 0x14019a370
cmp qword [r13], r8
jne 0x14019a5f0
mov r8, qword [rsp + 0x28]
lea rdx, [r13 + 8]
mov r12, r14
lea rcx, [r14 + 8]
call fcn.1401b3fe0
lea r11, [rax + 8]
mov eax, r14d
sub eax, r13d
cmp rbp, r12
jae 0x14019a640
cmp qword [rsp + 0x50], r13
jae 0x14019a640
mov bl, byte [r13 - 1]
cmp byte [r12 - 1], bl
jne 0x14019a640
dec r12
dec r13
inc r11
jmp 0x14019a5ce
mov r8, qword [rsp + 0x28]
lea rdx, [r9 + 4]
mov r12, rbx
mov qword [rsp + 0x80], r9
lea rcx, [rbx + 4]
call fcn.1401b3fe0
mov r9, qword [rsp + 0x80]
lea r11, [rax + 4]
mov eax, ebx
sub eax, r9d
cmp rbp, r12
jae 0x14019a640
cmp qword [rsp + 0x50], r9
jae 0x14019a640
mov bl, byte [r9 - 1]
cmp byte [r12 - 1], bl
jne 0x14019a640
dec r12
dec r9
inc r11
jmp 0x14019a61e
cmp qword [rsp + 0x68], 3
ja 0x14019a659
mov rbx, qword [rsp + 0x20]
sub r14, rbx
mov rbx, qword [rsp + 0x30]
mov dword [rbx + r15*4], r14d
mov rcx, qword [rsp + 0x28]
lea r13d, [rax + 3]
mov rbx, r12
sub rbx, rbp
lea r9, [rcx - 0x20]
mov rcx, qword [rsi + 0x18]
cmp r9, r12
jb 0x14019a6bf
movups xmm4, xmmword [rbp]
cmp rbx, 0x10
movups xmmword [rcx], xmm4
jbe 0x14019a6d2
mov rdx, qword [rsi + 0x18]
cmp rbx, 0x20
movups xmm5, xmmword [rbp + 0x10]
movups xmmword [rdx + 0x10], xmm5
jle 0x14019a6d2
lea rcx, [rdx + rbx]
add rbp, 0x20
add rdx, 0x20
movups xmm0, xmmword [rbp]
add rdx, 0x20
add rbp, 0x20
movups xmmword [rdx - 0x20], xmm0
movups xmm1, xmmword [rbp - 0x10]
movups xmmword [rdx - 0x10], xmm1
cmp rdx, rcx
jb 0x14019a6a0
jmp 0x14019a6d2
mov r8, r12
mov rdx, rbp
mov dword [rsp + 0x68], eax
call fcn.1401bac40
mov eax, dword [rsp + 0x68]
add qword [rsi + 0x18], rbx
cmp rbx, 0xffff
mov rdx, qword [rsi + 8]
jbe 0x14019a6f7
mov rcx, rdx
sub rcx, qword [rsi]
mov dword [rsi + 0x48], 1
sar rcx, 3
mov dword [rsi + 0x4c], ecx
lea r8, [r11 - 3]
mov word [rdx + 4], bx
cmp r8, 0xffff
mov dword [rdx], r13d
jbe 0x14019a71f
mov rcx, rdx
sub rcx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rcx, 3
mov dword [rsi + 0x4c], ecx
mov word [rdx + 6], r8w
mov r10d, edi
add rdx, 8
mov edi, eax
lea rbx, [r12 + r11]
cmp qword [rsp + 0x48], rbx
mov qword [rsi + 8], rdx
jae 0x14019a174
mov rbp, rbx
jmp 0x14019a2f4
mov r8, rbx
mov rdx, rbx
mov dword [rsp + 0x68], r10d
call fcn.1401bac40
mov r10d, dword [rsp + 0x68]
jmp 0x14019a29d
cmp eax, edi
jb 0x14019a771
xor r12d, r12d
mov r10d, edi
mov dword [rsp + 0x38], r12d
mov edx, dword [rsp + 0x3c]
xor edi, edi
cmp eax, edx
jb 0x14019a916
xor ebp, ebp
mov edi, edx
mov dword [rsp + 0x3c], ebp
jmp 0x14019a916
mov r8d, dword [rsp + 0x78]
mov rcx, qword [rsp + 0x20]
mov r15, qword [rsp + 0x20]
mov r14, qword [rsp + 0x30]
lea eax, [r8 + 2]
mov rdx, qword [rcx + rax]
mov r8, rax
movabs rax, 0xcf1bbcdcb7a56463
mov cl, byte [rsp + 0x58]
mov r9, rdx
imul r9, rax
imul rax, qword [rbx - 2]
shr r9, cl
mov rcx, qword [rsp + 0x30]
mov dword [rcx + r9*4], r8d
mov cl, byte [rsp + 0x58]
shr rax, cl
lea rcx, [rbx - 2]
sub rcx, r15
mov dword [r14 + rax*4], ecx
mov cl, byte [rsp + 0x64]
movabs rax, 0xcf1bbcdcbb000000
imul rdx, rax
imul rax, qword [rbx - 1]
shr rdx, cl
mov rcx, qword [rsp + 0x40]
mov dword [rcx + rdx*4], r8d
mov cl, byte [rsp + 0x64]
lea rdx, [rbx - 1]
sub rdx, r15
shr rax, cl
mov rcx, qword [rsp + 0x40]
mov dword [rcx + rax*4], edx
mov eax, r10d
mov rdx, rbx
mov ecx, dword [rbx]
sub rdx, rax
cmp dword [rdx], ecx
jne 0x14019adad
test r10d, r10d
je 0x14019adad
mov r8, qword [rsp + 0x28]
mov rdx, rbx
mov dword [rsp + 0x68], r10d
lea rcx, [rbx + 4]
sub rdx, rax
add rdx, 4
call fcn.1401b3fe0
mov rcx, qword [rsp + 0x20]
mov rdx, rbx
movabs r8, 0xcf1bbcdcbb000000
lea r11, [rax + 4]
mov rbp, rax
mov rax, qword [rbx]
mov r10d, dword [rsp + 0x68]
sub rdx, rcx
mov cl, byte [rsp + 0x64]
imul r8, rax
shr r8, cl
mov rcx, qword [rsp + 0x40]
mov dword [rcx + r8*4], edx
movabs rcx, 0xcf1bbcdcb7a56463
imul rax, rcx
mov cl, byte [rsp + 0x58]
shr rax, cl
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], edx
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsi + 0x18]
lea r9, [rax - 0x20]
cmp r9, rbx
jb 0x14019ad8b
movups xmm5, xmmword [rbx]
movups xmmword [rcx], xmm5
mov rax, qword [rsi + 8]
inc rbp
cmp rbp, 0xffff
mov word [rax + 4], 0
mov dword [rax], 1
jbe 0x14019a8f6
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], bp
add rbx, r11
add rax, 8
cmp qword [rsp + 0x48], rbx
mov qword [rsi + 8], rax
jae 0x14019ada5
mov r11, rbx
xchg edi, r10d
mov rbp, rbx
mov rbx, r11
lea r14, [rbx + 1]
cmp qword [rsp + 0x48], r14
lea rax, [rbx + 0x100]
mov qword [rsp + 0x80], rax
jb 0x14019af92
mov ecx, dword [rsp + 0x70]
mov r8d, 0x40
movabs r15, 0xcf1bbcdcb7a56463
mov qword [rsp + 0x68], 1
imul r15, qword [rbx]
mov eax, r8d
sub eax, ecx
mov dword [rsp + 0x58], eax
mov cl, byte [rsp + 0x58]
mov rax, qword [rsp + 0x30]
shr r15, cl
mov rcx, qword [rsp + 0x20]
mov r13d, dword [rax + r15*4]
mov rax, r13
add r13, rcx
mov ecx, dword [rsp + 0x74]
sub r8d, ecx
mov ecx, 1
mov dword [rsp + 0x64], r8d
mov r8d, edi
sub rcx, r8
mov qword [rsp + 0x88], rcx
movabs r9, 0xcf1bbcdcbb000000
mov r12, qword [rbx]
mov r11, rbx
mov cl, byte [rsp + 0x64]
mov rdx, qword [rsp + 0x20]
imul r9, r12
sub r11, rdx
mov qword [rsp + 0x78], r11
mov edx, dword [rsp + 0x78]
shr r9, cl
mov rcx, qword [rsp + 0x40]
lea rcx, [rcx + r9*4]
mov r9d, dword [rcx]
mov dword [rcx], edx
mov rdx, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x78]
mov dword [rdx + r15*4], ecx
mov rdx, qword [rsp + 0x88]
mov ecx, dword [rbx + 1]
cmp dword [rbx + rdx], ecx
jne 0x14019ab02
test edi, edi
je 0x14019ab02
lea rcx, [rbx + 5]
mov rax, rbx
mov dword [rsp + 0x68], r10d
lea r12, [rbx + 1]
sub rax, r8
mov r8, qword [rsp + 0x28]
lea rdx, [rax + 5]
mov r13, r12
sub r13, rbp
call fcn.1401b3fe0
mov rcx, qword [rsi + 0x18]
lea r11, [rax + 4]
mov rbx, rax
mov rax, qword [rsp + 0x28]
mov r10d, dword [rsp + 0x68]
lea r9, [rax - 0x20]
cmp r9, r12
jb 0x14019aa90
movups xmm3, xmmword [rbp]
cmp r13, 0x10
movups xmmword [rcx], xmm3
jbe 0x14019aaa5
mov rax, qword [rsi + 0x18]
cmp r13, 0x20
movups xmm4, xmmword [rbp + 0x10]
movups xmmword [rax + 0x10], xmm4
jle 0x14019aaa5
lea rdx, [rax + r13]
add rbp, 0x20
add rax, 0x20
movups xmm5, xmmword [rbp]
add rax, 0x20
add rbp, 0x20
movups xmmword [rax - 0x20], xmm5
movups xmm0, xmmword [rbp - 0x10]
movups xmmword [rax - 0x10], xmm0
cmp rax, rdx
jb 0x14019aa71
jmp 0x14019aaa5
mov r8, r12
mov rdx, rbp
mov dword [rsp + 0x68], r10d
call fcn.1401bac40
mov r10d, dword [rsp + 0x68]
add qword [rsi + 0x18], r13
cmp r13, 0xffff
mov rdx, qword [rsi + 8]
jbe 0x14019aaca
mov rax, rdx
sub rax, qword [rsi]
mov dword [rsi + 0x48], 1
sar rax, 3
mov dword [rsi + 0x4c], eax
inc rbx
mov word [rdx + 4], r13w
cmp rbx, 0xffff
mov dword [rdx], 1
jbe 0x14019aaf5
mov rax, rdx
sub rax, qword [rsi]
mov dword [rsi + 0x48], 2
sar rax, 3
mov dword [rsi + 0x4c], eax
mov word [rdx + 6], bx
add rdx, 8
jmp 0x14019ad70
movabs r15, 0xcf1bbcdcb7a56463
mov r11, qword [r14]
mov cl, byte [rsp + 0x58]
imul r15, r11
shr r15, cl
cmp dword [rsp + 0x60], eax
jae 0x14019ab72
cmp qword [r13], r12
jne 0x14019ab72
mov r8, qword [rsp + 0x28]
lea rdx, [r13 + 8]
mov r12, rbx
lea rcx, [rbx + 8]
call fcn.1401b3fe0
lea r11, [rax + 8]
mov eax, ebx
sub eax, r13d
cmp rbp, r12
jae 0x14019ac83
cmp qword [rsp + 0x50], r13
jae 0x14019ac83
mov bl, byte [r13 - 1]
cmp byte [r12 - 1], bl
jne 0x14019ac83
dec r12
dec r13
inc r11
jmp 0x14019ab44
mov rax, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x20]
mov r13d, dword [rax + r15*4]
mov rax, r13
add r13, rdx
cmp dword [rsp + 0x60], r9d
jae 0x14019aba2
add r9, rdx
mov ecx, dword [rbx]
cmp dword [r9], ecx
jne 0x14019aba2
cmp dword [rsp + 0x60], eax
jb 0x14019abec
jmp 0x14019ac33
mov rbx, qword [rsp + 0x80]
cmp r14, rbx
jb 0x14019abcd
prefetcht0 byte [r14 + 0x40]
prefetcht0 byte [r14 + 0x80]
inc qword [rsp + 0x68]
add qword [rsp + 0x80], 0x100
mov rbx, qword [rsp + 0x68]
lea rcx, [r14 + rbx]
cmp qword [rsp + 0x48], rcx
mov rbx, r14
jb 0x14019af92
mov r14, rcx
jmp 0x14019a99e
cmp qword [r13], r11
jne 0x14019ac33
mov r8, qword [rsp + 0x28]
lea rdx, [r13 + 8]
mov r12, r14
lea rcx, [r14 + 8]
call fcn.1401b3fe0
lea r11, [rax + 8]
mov eax, r14d
sub eax, r13d
cmp rbp, r12
jae 0x14019ac83
cmp qword [rsp + 0x50], r13
jae 0x14019ac83
mov bl, byte [r13 - 1]
cmp byte [r12 - 1], bl
jne 0x14019ac83
dec r12
dec r13
inc r11
jmp 0x14019ac11
mov r8, qword [rsp + 0x28]
lea rdx, [r9 + 4]
mov r12, rbx
mov qword [rsp + 0x80], r9
lea rcx, [rbx + 4]
call fcn.1401b3fe0
mov r9, qword [rsp + 0x80]
lea r11, [rax + 4]
mov eax, ebx
sub eax, r9d
cmp rbp, r12
jae 0x14019ac83
cmp qword [rsp + 0x50], r9
jae 0x14019ac83
mov bl, byte [r9 - 1]
cmp byte [r12 - 1], bl
jne 0x14019ac83
dec r12
dec r9
inc r11
jmp 0x14019ac61
cmp qword [rsp + 0x68], 3
ja 0x14019ac9c
mov rbx, qword [rsp + 0x20]
sub r14, rbx
mov rbx, qword [rsp + 0x30]
mov dword [rbx + r15*4], r14d
mov rcx, qword [rsp + 0x28]
lea r13d, [rax + 3]
mov rbx, r12
sub rbx, rbp
lea r9, [rcx - 0x20]
mov rcx, qword [rsi + 0x18]
cmp r9, r12
jb 0x14019ad02
movups xmm1, xmmword [rbp]
cmp rbx, 0x10
movups xmmword [rcx], xmm1
jbe 0x14019ad15
mov rdx, qword [rsi + 0x18]
cmp rbx, 0x20
movups xmm2, xmmword [rbp + 0x10]
movups xmmword [rdx + 0x10], xmm2
jle 0x14019ad15
lea rcx, [rdx + rbx]
add rbp, 0x20
add rdx, 0x20
movups xmm3, xmmword [rbp]
add rdx, 0x20
add rbp, 0x20
movups xmmword [rdx - 0x20], xmm3
movups xmm4, xmmword [rbp - 0x10]
movups xmmword [rdx - 0x10], xmm4
cmp rdx, rcx
jb 0x14019ace3
jmp 0x14019ad15
mov r8, r12
mov rdx, rbp
mov dword [rsp + 0x68], eax
call fcn.1401bac40
mov eax, dword [rsp + 0x68]
add qword [rsi + 0x18], rbx
cmp rbx, 0xffff
mov rdx, qword [rsi + 8]
jbe 0x14019ad3a
mov rcx, rdx
sub rcx, qword [rsi]
mov dword [rsi + 0x48], 1
sar rcx, 3
mov dword [rsi + 0x4c], ecx
lea r8, [r11 - 3]
mov word [rdx + 4], bx
cmp r8, 0xffff
mov dword [rdx], r13d
jbe 0x14019ad62
mov rcx, rdx
sub rcx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rcx, 3
mov dword [rsi + 0x4c], ecx
mov word [rdx + 6], r8w
mov r10d, edi
add rdx, 8
mov edi, eax
lea rbx, [r12 + r11]
cmp qword [rsp + 0x48], rbx
mov qword [rsi + 8], rdx
jae 0x14019a78c
mov rbp, rbx
jmp 0x14019a91c
mov r8, rbx
mov rdx, rbx
mov dword [rsp + 0x68], r10d
call fcn.1401bac40
mov r10d, dword [rsp + 0x68]
jmp 0x14019a8c6
xchg r10d, edi
jmp 0x14019a81c
xchg edi, r10d
jmp 0x14019a910
mov edi, dword [rsp + 0x38]
xor r10d, r10d
cmp eax, edi
jb 0x14019adcb
xor r9d, r9d
mov r10d, edi
mov dword [rsp + 0x38], r9d
mov edx, dword [rsp + 0x3c]
xor edi, edi
cmp eax, edx
jb 0x14019af72
xor r8d, r8d
mov edi, edx
mov dword [rsp + 0x3c], r8d
jmp 0x14019af72
mov r8d, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x20]
mov cl, byte [rsp + 0x58]
mov r15, qword [rsp + 0x20]
lea eax, [r8 + 2]
mov r14, qword [rsp + 0x30]
mov rdx, qword [rdx + rax]
mov r8, rax
movabs rax, 0xcf1bbcdcb7a56463
mov r9, rdx
imul r9, rax
imul rax, qword [rbx - 2]
shr r9, cl
mov rcx, qword [rsp + 0x30]
mov dword [rcx + r9*4], r8d
mov cl, byte [rsp + 0x58]
shr rax, cl
lea rcx, [rbx - 2]
sub rcx, r15
mov dword [r14 + rax*4], ecx
mov cl, byte [rsp + 0x64]
movabs rax, 0xcf1bbcdcbf9b0000
imul rdx, rax
imul rax, qword [rbx - 1]
shr rdx, cl
mov rcx, qword [rsp + 0x40]
mov dword [rcx + rdx*4], r8d
mov cl, byte [rsp + 0x64]
lea rdx, [rbx - 1]
sub rdx, r15
shr rax, cl
mov rcx, qword [rsp + 0x40]
mov dword [rcx + rax*4], edx
mov eax, r10d
mov rdx, rbx
mov ecx, dword [rbx]
sub rdx, rax
cmp dword [rdx], ecx
jne 0x14019b441
test r10d, r10d
je 0x14019b441
mov r8, qword [rsp + 0x28]
mov rdx, rbx
mov dword [rsp + 0x68], r10d
lea rcx, [rbx + 4]
sub rdx, rax
add rdx, 4
call fcn.1401b3fe0
mov rcx, qword [rsp + 0x20]
mov rdx, rbx
movabs r8, 0xcf1bbcdcbf9b0000
lea r11, [rax + 4]
mov rbp, rax
mov rax, qword [rbx]
mov r10d, dword [rsp + 0x68]
sub rdx, rcx
mov cl, byte [rsp + 0x64]
imul r8, rax
shr r8, cl
mov rcx, qword [rsp + 0x40]
mov dword [rcx + r8*4], edx
movabs rcx, 0xcf1bbcdcb7a56463
imul rax, rcx
mov cl, byte [rsp + 0x58]
shr rax, cl
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], edx
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsi + 0x18]
lea r9, [rax - 0x20]
cmp r9, rbx
jb 0x14019b41f
movups xmm2, xmmword [rbx]
movups xmmword [rcx], xmm2
mov rax, qword [rsi + 8]
inc rbp
cmp rbp, 0xffff
mov word [rax + 4], 0
mov dword [rax], 1
jbe 0x14019af52
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], bp
add rbx, r11
add rax, 8
cmp qword [rsp + 0x48], rbx
mov qword [rsi + 8], rax
jae 0x14019b439
mov r11, rbx
xchg edi, r10d
mov rbp, rbx
mov rbx, r11
lea r14, [rbx + 1]
cmp qword [rsp + 0x48], r14
lea rax, [rbx + 0x100]
mov qword [rsp + 0x80], rax
jae 0x14019afaa
cmp dword [rsp + 0x3c], 0
je 0x14019b25c
test edi, edi
jne 0x14019b265
jmp 0x14019b25c
mov ecx, dword [rsp + 0x70]
mov r8d, 0x40
movabs r15, 0xcf1bbcdcb7a56463
mov qword [rsp + 0x68], 1
imul r15, qword [rbx]
mov eax, r8d
sub eax, ecx
mov dword [rsp + 0x58], eax
mov cl, byte [rsp + 0x58]
mov rax, qword [rsp + 0x30]
shr r15, cl
mov rcx, qword [rsp + 0x20]
mov r13d, dword [rax + r15*4]
mov rax, r13
add r13, rcx
mov ecx, dword [rsp + 0x74]
sub r8d, ecx
mov ecx, 1
mov dword [rsp + 0x64], r8d
mov r8d, edi
sub rcx, r8
mov qword [rsp + 0x88], rcx
movabs r9, 0xcf1bbcdcbf9b0000
mov r12, qword [rbx]
mov r11, rbx
mov cl, byte [rsp + 0x64]
mov rdx, qword [rsp + 0x20]
imul r9, r12
sub r11, rdx
mov qword [rsp + 0x78], r11
mov edx, dword [rsp + 0x78]
shr r9, cl
mov rcx, qword [rsp + 0x40]
lea rcx, [rcx + r9*4]
mov r9d, dword [rcx]
mov dword [rcx], edx
mov rdx, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x78]
mov dword [rdx + r15*4], ecx
mov rdx, qword [rsp + 0x88]
mov ecx, dword [rbx + 1]
cmp dword [rbx + rdx], ecx
jne 0x14019b172
test edi, edi
je 0x14019b172
lea rcx, [rbx + 5]
mov rax, rbx
mov dword [rsp + 0x68], r10d
lea r12, [rbx + 1]
sub rax, r8
mov r8, qword [rsp + 0x28]
lea rdx, [rax + 5]
mov r13, r12
sub r13, rbp
call fcn.1401b3fe0
mov rcx, qword [rsi + 0x18]
lea r11, [rax + 4]
mov rbx, rax
mov rax, qword [rsp + 0x28]
mov r10d, dword [rsp + 0x68]
lea r9, [rax - 0x20]
cmp r9, r12
jb 0x14019b100
movups xmm0, xmmword [rbp]
cmp r13, 0x10
movups xmmword [rcx], xmm0
jbe 0x14019b115
mov rax, qword [rsi + 0x18]
cmp r13, 0x20
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rax + 0x10], xmm1
jle 0x14019b115
lea rdx, [rax + r13]
add rbp, 0x20
add rax, 0x20
movups xmm2, xmmword [rbp]
add rax, 0x20
add rbp, 0x20
movups xmmword [rax - 0x20], xmm2
movups xmm3, xmmword [rbp - 0x10]
movups xmmword [rax - 0x10], xmm3
cmp rax, rdx
jb 0x14019b0e1
jmp 0x14019b115
mov r8, r12
mov rdx, rbp
mov dword [rsp + 0x68], r10d
call fcn.1401bac40
mov r10d, dword [rsp + 0x68]
add qword [rsi + 0x18], r13
cmp r13, 0xffff
mov rdx, qword [rsi + 8]
jbe 0x14019b13a
mov rax, rdx
sub rax, qword [rsi]
mov dword [rsi + 0x48], 1
sar rax, 3
mov dword [rsi + 0x4c], eax
inc rbx
mov word [rdx + 4], r13w
cmp rbx, 0xffff
mov dword [rdx], 1
jbe 0x14019b165
mov rax, rdx
sub rax, qword [rsi]
mov dword [rsi + 0x48], 2
sar rax, 3
mov dword [rsi + 0x4c], eax
mov word [rdx + 6], bx
add rdx, 8
jmp 0x14019b404
movabs r15, 0xcf1bbcdcb7a56463
mov r11, qword [r14]
mov cl, byte [rsp + 0x58]
imul r15, r11
shr r15, cl
cmp dword [rsp + 0x60], eax
jae 0x14019b1e2
cmp qword [r13], r12
jne 0x14019b1e2
mov r8, qword [rsp + 0x28]
lea rdx, [r13 + 8]
mov r12, rbx
lea rcx, [rbx + 8]
call fcn.1401b3fe0
lea r11, [rax + 8]
mov eax, ebx
sub eax, r13d
cmp rbp, r12
jae 0x14019b317
cmp qword [rsp + 0x50], r13
jae 0x14019b317
mov bl, byte [r13 - 1]
cmp byte [r12 - 1], bl
jne 0x14019b317
dec r12
dec r13
inc r11
jmp 0x14019b1b4
mov rax, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x20]
mov r13d, dword [rax + r15*4]
mov rax, r13
add r13, rdx
cmp dword [rsp + 0x60], r9d
jae 0x14019b212
add r9, rdx
mov edx, dword [rbx]
cmp dword [r9], edx
jne 0x14019b212
cmp dword [rsp + 0x60], eax
jb 0x14019b280
jmp 0x14019b2c7
mov rbx, qword [rsp + 0x80]
cmp r14, rbx
jb 0x14019b23d
prefetcht0 byte [r14 + 0x40]
prefetcht0 byte [r14 + 0x80]
inc qword [rsp + 0x68]
add qword [rsp + 0x80], 0x100
mov rbx, qword [rsp + 0x68]
lea rcx, [r14 + rbx]
cmp qword [rsp + 0x48], rcx
mov rbx, r14
jb 0x14019af92
mov r14, rcx
jmp 0x14019b00e
test edi, edi
cmove edi, dword [rsp + 0x3c]
jmp 0x14019b26d
mov eax, dword [rsp + 0x3c]
mov dword [rsp + 0x38], eax
test r10d, r10d
cmove r10d, dword [rsp + 0x38]
mov dword [rsp + 0x38], r10d
jmp 0x14019b8fc
cmp qword [r13], r11
jne 0x14019b2c7
mov r8, qword [rsp + 0x28]
lea rdx, [r13 + 8]
mov r12, r14
lea rcx, [r14 + 8]
call fcn.1401b3fe0
lea r11, [rax + 8]
mov eax, r14d
sub eax, r13d
cmp rbp, r12
jae 0x14019b317
cmp qword [rsp + 0x50], r13
jae 0x14019b317
mov bl, byte [r13 - 1]
cmp byte [r12 - 1], bl
jne 0x14019b317
dec r12
dec r13
inc r11
jmp 0x14019b2a5
mov r8, qword [rsp + 0x28]
lea rdx, [r9 + 4]
mov r12, rbx
mov qword [rsp + 0x80], r9
lea rcx, [rbx + 4]
call fcn.1401b3fe0
mov r9, qword [rsp + 0x80]
lea r11, [rax + 4]
mov eax, ebx
sub eax, r9d
cmp rbp, r12
jae 0x14019b317
cmp qword [rsp + 0x50], r9
jae 0x14019b317
mov bl, byte [r9 - 1]
cmp byte [r12 - 1], bl
jne 0x14019b317
dec r12
dec r9
inc r11
jmp 0x14019b2f5
cmp qword [rsp + 0x68], 3
ja 0x14019b330
mov rbx, qword [rsp + 0x20]
sub r14, rbx
mov rbx, qword [rsp + 0x30]
mov dword [rbx + r15*4], r14d
mov rdx, qword [rsp + 0x28]
lea r13d, [rax + 3]
mov rbx, r12
sub rbx, rbp
mov rcx, qword [rsi + 0x18]
lea r9, [rdx - 0x20]
cmp r9, r12
jb 0x14019b396
movups xmm4, xmmword [rbp]
cmp rbx, 0x10
movups xmmword [rcx], xmm4
jbe 0x14019b3a9
mov rdx, qword [rsi + 0x18]
cmp rbx, 0x20
movups xmm5, xmmword [rbp + 0x10]
movups xmmword [rdx + 0x10], xmm5
jle 0x14019b3a9
lea rcx, [rdx + rbx]
add rbp, 0x20
add rdx, 0x20
movups xmm0, xmmword [rbp]
add rdx, 0x20
add rbp, 0x20
movups xmmword [rdx - 0x20], xmm0
movups xmm1, xmmword [rbp - 0x10]
movups xmmword [rdx - 0x10], xmm1
cmp rdx, rcx
jb 0x14019b377
jmp 0x14019b3a9
mov r8, r12
mov rdx, rbp
mov dword [rsp + 0x68], eax
call fcn.1401bac40
mov eax, dword [rsp + 0x68]
add qword [rsi + 0x18], rbx
cmp rbx, 0xffff
mov rdx, qword [rsi + 8]
jbe 0x14019b3ce
mov rcx, rdx
sub rcx, qword [rsi]
mov dword [rsi + 0x48], 1
sar rcx, 3
mov dword [rsi + 0x4c], ecx
lea r8, [r11 - 3]
mov word [rdx + 4], bx
cmp r8, 0xffff
mov dword [rdx], r13d
jbe 0x14019b3f6
mov rcx, rdx
sub rcx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rcx, 3
mov dword [rsi + 0x4c], ecx
mov word [rdx + 6], r8w
mov r10d, edi
add rdx, 8
mov edi, eax
lea rbx, [r12 + r11]
cmp qword [rsp + 0x48], rbx
mov qword [rsi + 8], rdx
jae 0x14019ade8
mov rbp, rbx
jmp 0x14019af78
mov r8, rbx
mov rdx, rbx
mov dword [rsp + 0x68], r10d
call fcn.1401bac40
mov r10d, dword [rsp + 0x68]
jmp 0x14019af22
xchg r10d, edi
jmp 0x14019ae78
xchg edi, r10d
jmp 0x14019af6c
mov edi, dword [rsp + 0x38]
xor ecx, ecx
mov dword [rsp + 0x58], ecx
cmp eax, edi
jb 0x14019b461
xor edx, edx
mov dword [rsp + 0x58], edi
mov dword [rsp + 0x38], edx
mov edx, dword [rsp + 0x3c]
xor edi, edi
cmp eax, edx
jb 0x14019b60e
xor eax, eax
mov edi, edx
mov dword [rsp + 0x3c], eax
jmp 0x14019b60e
mov r8d, dword [rsp + 0x80]
mov rdx, qword [rsp + 0x20]
mov cl, byte [rsp + 0x64]
mov r15, qword [rsp + 0x20]
lea eax, [r8 + 2]
mov rdx, qword [rdx + rax]
mov r8, rax
movabs rax, 0xcf1bbcdcb7a56463
mov r9, rdx
imul r9, rax
imul rax, qword [rbx - 2]
shr r9, cl
mov rcx, qword [rsp + 0x30]
mov dword [rcx + r9*4], r8d
mov cl, byte [rsp + 0x64]
shr rax, cl
lea rcx, [rbx - 2]
sub rcx, r15
mov r15, qword [rsp + 0x30]
mov dword [r15 + rax*4], ecx
mov cl, byte [rsp + 0x68]
movabs rax, 0xcf1bbcdcbfa56300
imul rdx, rax
imul rax, qword [rbx - 1]
shr rdx, cl
mov rcx, qword [rsp + 0x40]
mov dword [rcx + rdx*4], r8d
mov cl, byte [rsp + 0x68]
lea rdx, [rbx - 1]
shr rax, cl
mov rcx, qword [rsp + 0x20]
sub rdx, rcx
mov rcx, qword [rsp + 0x40]
mov dword [rcx + rax*4], edx
mov eax, dword [rsp + 0x58]
mov rdx, rbx
mov ecx, dword [rbx]
sub rdx, rax
cmp dword [rdx], ecx
jne 0x14019b60b
cmp dword [rsp + 0x58], 0
je 0x14019b60b
mov r8, qword [rsp + 0x28]
lea rcx, [rbx + 4]
mov rdx, rbx
sub rdx, rax
add rdx, 4
call fcn.1401b3fe0
mov rcx, qword [rsp + 0x20]
mov rdx, rbx
movabs r8, 0xcf1bbcdcbfa56300
lea r11, [rax + 4]
mov rbp, rax
mov rax, qword [rbx]
sub rdx, rcx
mov cl, byte [rsp + 0x68]
imul r8, rax
shr r8, cl
mov rcx, qword [rsp + 0x40]
mov dword [rcx + r8*4], edx
movabs rcx, 0xcf1bbcdcb7a56463
imul rax, rcx
mov cl, byte [rsp + 0x64]
shr rax, cl
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], edx
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsi + 0x18]
lea r9, [rax - 0x20]
cmp r9, rbx
jb 0x14019bac6
movups xmm5, xmmword [rbx]
movups xmmword [rcx], xmm5
mov rax, qword [rsi + 8]
inc rbp
cmp rbp, 0xffff
mov word [rax + 4], 0
mov dword [rax], 1
jbe 0x14019b5e7
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], bp
add rax, 8
add rbx, r11
cmp qword [rsp + 0x48], rbx
mov qword [rsi + 8], rax
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x58], edi
mov edi, eax
jae 0x14019b514
mov r11, rbx
mov rbp, rbx
mov rbx, r11
lea r14, [rbx + 1]
cmp qword [rsp + 0x48], r14
lea rdx, [rbx + 0x100]
jae 0x14019b63e
cmp dword [rsp + 0x3c], 0
je 0x14019b8d9
test edi, edi
jne 0x14019b8e2
jmp 0x14019b8d9
mov ecx, dword [rsp + 0x70]
mov r8d, 0x40
movabs r15, 0xcf1bbcdcb7a56463
mov r10d, 1
imul r15, qword [rbx]
mov eax, r8d
mov qword [rsp + 0x78], 1
sub eax, ecx
mov dword [rsp + 0x64], eax
mov cl, byte [rsp + 0x64]
mov rax, qword [rsp + 0x30]
shr r15, cl
mov rcx, qword [rsp + 0x20]
mov r13d, dword [rax + r15*4]
mov rax, r13
add r13, rcx
mov ecx, dword [rsp + 0x74]
sub r8d, ecx
mov dword [rsp + 0x68], r8d
mov r8d, edi
sub r10, r8
mov qword [rsp + 0x88], r10
movabs r9, 0xcf1bbcdcbfa56300
mov r12, qword [rbx]
mov r11, rbx
mov cl, byte [rsp + 0x68]
mov r10, qword [rsp + 0x20]
imul r9, r12
sub r11, r10
mov qword [rsp + 0x80], r11
mov r10d, dword [rsp + 0x80]
shr r9, cl
mov rcx, qword [rsp + 0x40]
lea rcx, [rcx + r9*4]
mov r9d, dword [rcx]
mov dword [rcx], r10d
mov rcx, qword [rsp + 0x30]
mov dword [rcx + r15*4], r10d
mov r15, qword [rsp + 0x88]
mov ecx, dword [rbx + 1]
cmp dword [rbx + r15], ecx
jne 0x14019b7f8
test edi, edi
je 0x14019b7f8
lea rcx, [rbx + 5]
mov rax, rbx
lea r12, [rbx + 1]
sub rax, r8
mov r8, qword [rsp + 0x28]
lea rdx, [rax + 5]
mov r13, r12
sub r13, rbp
call fcn.1401b3fe0
mov rcx, qword [rsi + 0x18]
lea r11, [rax + 4]
mov rbx, rax
mov rax, qword [rsp + 0x28]
lea r9, [rax - 0x20]
cmp r9, r12
jb 0x14019b790
movups xmm3, xmmword [rbp]
cmp r13, 0x10
movups xmmword [rcx], xmm3
jbe 0x14019b79b
mov rax, qword [rsi + 0x18]
cmp r13, 0x20
movups xmm4, xmmword [rbp + 0x10]
movups xmmword [rax + 0x10], xmm4
jle 0x14019b79b
lea rdx, [rax + r13]
add rbp, 0x20
add rax, 0x20
movups xmm5, xmmword [rbp]
add rax, 0x20
add rbp, 0x20
movups xmmword [rax - 0x20], xmm5
movups xmm0, xmmword [rbp - 0x10]
movups xmmword [rax - 0x10], xmm0
cmp rax, rdx
jb 0x14019b771
jmp 0x14019b79b
mov r8, r12
mov rdx, rbp
call fcn.1401bac40
add qword [rsi + 0x18], r13
cmp r13, 0xffff
mov rdx, qword [rsi + 8]
jbe 0x14019b7c0
mov rax, rdx
sub rax, qword [rsi]
mov dword [rsi + 0x48], 1
sar rax, 3
mov dword [rsi + 0x4c], eax
inc rbx
mov word [rdx + 4], r13w
cmp rbx, 0xffff
mov dword [rdx], 1
jbe 0x14019b7eb
mov rax, rdx
sub rax, qword [rsi]
mov dword [rsi + 0x48], 2
sar rax, 3
mov dword [rsi + 0x4c], eax
mov word [rdx + 6], bx
add rdx, 8
jmp 0x14019baab
movabs r15, 0xcf1bbcdcb7a56463
mov r11, qword [r14]
mov cl, byte [rsp + 0x64]
imul r15, r11
shr r15, cl
cmp dword [rsp + 0x60], eax
jae 0x14019b868
cmp qword [r13], r12
jne 0x14019b868
mov r8, qword [rsp + 0x28]
lea rdx, [r13 + 8]
mov r12, rbx
lea rcx, [rbx + 8]
call fcn.1401b3fe0
lea r11, [rax + 8]
mov eax, ebx
sub eax, r13d
cmp rbp, r12
jae 0x14019b9bd
cmp qword [rsp + 0x50], r13
jae 0x14019b9bd
mov bl, byte [r13 - 1]
cmp byte [r12 - 1], bl
jne 0x14019b9bd
dec r12
dec r13
inc r11
jmp 0x14019b83a
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
mov r13d, dword [rax + r15*4]
mov rax, r13
add r13, rcx
cmp dword [rsp + 0x60], r9d
jae 0x14019b89c
add r9, rcx
mov ecx, dword [rbx]
cmp dword [r9], ecx
jne 0x14019b89c
cmp dword [rsp + 0x60], eax
jb 0x14019b92c
jmp 0x14019b973
cmp r14, rdx
jb 0x14019b8ba
prefetcht0 byte [r14 + 0x40]
prefetcht0 byte [r14 + 0x80]
inc qword [rsp + 0x78]
add rdx, 0x100
mov rbx, qword [rsp + 0x78]
lea rcx, [r14 + rbx]
cmp qword [rsp + 0x48], rcx
mov rbx, r14
jb 0x14019b626
mov r14, rcx
jmp 0x14019b6a3
test edi, edi
cmove edi, dword [rsp + 0x3c]
jmp 0x14019b8ea
mov eax, dword [rsp + 0x3c]
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x58], 0
mov eax, dword [rsp + 0x58]
cmove eax, dword [rsp + 0x38]
mov dword [rsp + 0x38], eax
mov rsi, qword [rsp + 0xf0]
mov rax, qword [rsp + 0x28]
mov dword [rsi], edi
mov rdi, rsi
mov esi, dword [rsp + 0x38]
sub rax, rbp
mov dword [rdi + 4], esi
add rsp, 0x98
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp qword [r13], r11
jne 0x14019b973
mov r8, qword [rsp + 0x28]
lea rdx, [r13 + 8]
mov r12, r14
lea rcx, [r14 + 8]
call fcn.1401b3fe0
lea r11, [rax + 8]
mov eax, r14d
sub eax, r13d
cmp rbp, r12
jae 0x14019b9bd
cmp qword [rsp + 0x50], r13
jae 0x14019b9bd
mov bl, byte [r13 - 1]
cmp byte [r12 - 1], bl
jne 0x14019b9bd
dec r12
dec r13
inc r11
jmp 0x14019b951
mov r8, qword [rsp + 0x28]
lea rdx, [r9 + 4]
mov qword [rsp + 0x58], r9
mov r12, rbx
lea rcx, [rbx + 4]
call fcn.1401b3fe0
mov r9, qword [rsp + 0x58]
lea r11, [rax + 4]
mov eax, ebx
sub eax, r9d
cmp rbp, r12
jae 0x14019b9bd
cmp qword [rsp + 0x50], r9
jae 0x14019b9bd
mov bl, byte [r9 - 1]
cmp byte [r12 - 1], bl
jne 0x14019b9bd
dec r12
dec r9
inc r11
jmp 0x14019b99b
cmp qword [rsp + 0x78], 3
ja 0x14019b9d6
mov rbx, qword [rsp + 0x20]
sub r14, rbx
mov rbx, qword [rsp + 0x30]
mov dword [rbx + r15*4], r14d
mov rdx, qword [rsp + 0x28]
lea r13d, [rax + 3]
mov rbx, r12
sub rbx, rbp
mov rcx, qword [rsi + 0x18]
lea r9, [rdx - 0x20]
cmp r9, r12
jb 0x14019ba3c
movups xmm1, xmmword [rbp]
cmp rbx, 0x10
movups xmmword [rcx], xmm1
jbe 0x14019ba4f
mov rdx, qword [rsi + 0x18]
cmp rbx, 0x20
movups xmm2, xmmword [rbp + 0x10]
movups xmmword [rdx + 0x10], xmm2
jle 0x14019ba4f
lea rcx, [rdx + rbx]
add rbp, 0x20
add rdx, 0x20
movups xmm3, xmmword [rbp]
add rdx, 0x20
add rbp, 0x20
movups xmmword [rdx - 0x20], xmm3
movups xmm4, xmmword [rbp - 0x10]
movups xmmword [rdx - 0x10], xmm4
cmp rdx, rcx
jb 0x14019ba1d
jmp 0x14019ba4f
mov r8, r12
mov rdx, rbp
mov dword [rsp + 0x58], eax
call fcn.1401bac40
mov eax, dword [rsp + 0x58]
add qword [rsi + 0x18], rbx
cmp rbx, 0xffff
mov rdx, qword [rsi + 8]
jbe 0x14019ba74
mov rcx, rdx
sub rcx, qword [rsi]
mov dword [rsi + 0x48], 1
sar rcx, 3
mov dword [rsi + 0x4c], ecx
lea r8, [r11 - 3]
mov word [rdx + 4], bx
cmp r8, 0xffff
mov dword [rdx], r13d
jbe 0x14019ba9c
mov rcx, rdx
sub rcx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rcx, 3
mov dword [rsi + 0x4c], ecx
mov word [rdx + 6], r8w
add rdx, 8
mov dword [rsp + 0x58], edi
mov edi, eax
lea rbx, [r12 + r11]
cmp qword [rsp + 0x48], rbx
mov qword [rsi + 8], rdx
jae 0x14019b47c
mov rbp, rbx
jmp 0x14019b614
mov r8, rbx
mov rdx, rbx
call fcn.1401bac40
jmp 0x14019b5b7
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
mov edi, dword [rsp + 0x128]
mov r10d, dword [rcx + 0x1c]
mov r15d, dword [rcx + 0x104]
mov r11d, dword [rcx + 0x28]
mov dword [rsp + 0x4c], edi
mov rdi, qword [rcx + 0x70]
mov rbx, r9
mov rax, rcx
mov r9, qword [rsp + 0x120]
mov qword [rsp + 0x80], r8
mov r8, rbx
mov rsi, rdx
mov edx, 1
mov dword [rsp + 0x48], r10d
mov qword [rsp + 0x68], rdi
mov edi, dword [rcx + 0x108]
mov dword [rsp + 0xa8], edi
mov rdi, qword [rcx + 0x80]
mov qword [rsp + 0x88], rdi
lea rdi, [rbx + r9]
mov qword [rsp + 0x30], rdi
sub rdi, 8
mov qword [rsp + 0x90], rdi
mov rdi, qword [rcx + 8]
mov ecx, dword [rcx + 0x100]
sub r8, rdi
mov qword [rsp + 0x38], rdi
add r8d, r9d
shl edx, cl
mov ecx, r8d
sub ecx, r10d
cmp edx, ecx
jae 0x14019e136
sub r8d, edx
mov dword [rsp + 0x48], r8d
mov edx, dword [rax + 0x18]
test r11d, r11d
cmove r10d, dword [rsp + 0x48]
mov edi, r10d
mov r8d, r10d
mov dword [rsp + 0x48], r10d
cmp edx, r10d
cmovae edi, edx
mov ecx, edi
mov dword [rsp + 0x44], edi
mov rdi, qword [rsp + 0x38]
add rdi, rcx
mov qword [rsp + 0x50], rdi
mov rdi, qword [rax + 0x10]
mov qword [rsp + 0x60], rdi
add rdi, r8
mov qword [rsp + 0x98], rdi
mov rdi, qword [rsp + 0x60]
add rdi, rcx
cmp r10d, edx
mov qword [rsp + 0x70], rdi
mov rdi, qword [rsp + 0x80]
mov ebp, dword [rdi]
mov edi, dword [rdi + 4]
mov dword [rsp + 0x78], edi
mov rdi, rbx
jae 0x14019e1b4
mov eax, 0x40
sub eax, r15d
mov dword [rsp + 0xa0], eax
jmp 0x14019e30f
mov r8, qword [rsp + 0x80]
mov qword [rsp + 0x120], r9
mov rdx, rsi
mov r9, rbx
mov rcx, rax
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x14019a030
cmp dword [rsp + 0x4c], 6
mov r8, qword [rbx]
je 0x14019e331
cmp dword [rsp + 0x4c], 7
je 0x14019e33d
cmp dword [rsp + 0x4c], 5
je 0x14019e325
imul eax, dword [rbx], 0x9e3779b1
mov ecx, 0x20
sub ecx, r15d
shr eax, cl
mov rdx, qword [rsp + 0x88]
mov r10, qword [rsp + 0x60]
mov r11, qword [rsp + 0x60]
lea r9, [rdx + rax*4]
mov eax, dword [rsp + 0x44]
mov r13d, dword [r9]
mov edx, dword [rsp + 0xa8]
cmp r13d, eax
mov eax, 0x40
cmovae r10, qword [rsp + 0x38]
sub eax, edx
mov dword [rsp + 0x7c], eax
mov cl, byte [rsp + 0x7c]
movabs rax, 0xcf1bbcdcb7a56463
mov rdx, qword [rsp + 0x68]
imul rax, r8
shr rax, cl
lea rcx, [rdx + rax*4]
mov eax, dword [rsp + 0x44]
mov r14d, dword [rcx]
mov rdx, qword [rsp + 0x38]
cmp r14d, eax
mov rax, rbx
cmovae r11, qword [rsp + 0x38]
sub rax, rdx
mov qword [rsp + 0x58], rax
mov r12d, dword [rsp + 0x58]
mov eax, 1
sub eax, ebp
add eax, r12d
mov r12d, dword [rsp + 0x44]
cmp eax, r12d
mov r12, qword [rsp + 0x60]
cmovae r12, rdx
mov edx, dword [rsp + 0x58]
mov dword [rcx], edx
mov ecx, 1
mov dword [r9], edx
mov edx, dword [rsp + 0x44]
dec edx
mov dword [rsp + 0xa4], edx
mov edx, dword [rsp + 0x48]
sub ecx, edx
mov edx, ecx
mov ecx, dword [rsp + 0x58]
add edx, ecx
cmp edx, ebp
jae 0x14019e35a
cmp dword [rsp + 0x48], r14d
jb 0x14019e483
cmp dword [rsp + 0x48], r13d
jb 0x14019e58a
mov rax, rbx
mov r10d, ebp
mov ebp, dword [rsp + 0x78]
sub rax, rdi
sar rax, 8
lea rbx, [rbx + rax + 1]
mov dword [rsp + 0x78], ebp
mov ebp, r10d
mov rax, qword [rsp + 0x90]
cmp rbx, rax
jb 0x14019e1e5
jmp 0x14019ea95
movabs rax, 0xcf1bbcdcbb000000
jmp 0x14019e347
movabs rax, 0xcf1bbcdcbf9b0000
jmp 0x14019e347
movabs rax, 0xcf1bbcdcbfa56300
imul rax, r8
mov cl, byte [rsp + 0xa0]
shr rax, cl
jmp 0x14019e219
mov edx, dword [rsp + 0xa4]
sub edx, eax
cmp edx, 2
jbe 0x14019e2dc
mov edx, eax
add rdx, r12
mov ecx, dword [rdx]
cmp dword [rbx + 1], ecx
jne 0x14019e2dc
mov ecx, dword [rsp + 0x44]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x70]
cmp eax, ecx
mov rax, qword [rsp + 0x50]
cmovae r9, qword [rsp + 0x30]
lea rcx, [rbx + 5]
add rdx, 4
inc rbx
mov r13, rbx
sub r13, rdi
mov qword [rsp + 0x20], rax
call fcn.1401b4430
mov rcx, qword [rsi + 0x18]
lea r11, [rax + 4]
mov r12, rax
mov rax, qword [rsp + 0x30]
lea r9, [rax - 0x20]
cmp r9, rbx
jb 0x14019e413
movups xmm0, xmmword [rdi]
cmp r13, 0x10
movups xmmword [rcx], xmm0
jbe 0x14019e41e
mov rax, qword [rsi + 0x18]
cmp r13, 0x20
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rax + 0x10], xmm1
jle 0x14019e41e
lea rdx, [rax + r13]
add rdi, 0x20
add rax, 0x20
movups xmm2, xmmword [rdi]
add rax, 0x20
add rdi, 0x20
movups xmmword [rax - 0x20], xmm2
movups xmm3, xmmword [rdi - 0x10]
movups xmmword [rax - 0x10], xmm3
cmp rax, rdx
jb 0x14019e3f5
jmp 0x14019e41e
mov r8, rbx
mov rdx, rdi
call fcn.1401bac40
add qword [rsi + 0x18], r13
cmp r13, 0xffff
mov rax, qword [rsi + 8]
jbe 0x14019e443
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 1
sar rdx, 3
mov dword [rsi + 0x4c], edx
inc r12
mov word [rax + 4], r13w
cmp r12, 0xffff
mov dword [rax], 1
jbe 0x14019e46e
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], r12w
mov r10d, ebp
add rax, 8
mov ebp, dword [rsp + 0x78]
jmp 0x14019e7b0
mov r12d, r14d
add r12, r11
cmp qword [r12], r8
jne 0x14019e2e7
mov eax, dword [rsp + 0x44]
cmp r14d, eax
jae 0x14019e4ab
mov r9, qword [rsp + 0x70]
mov r13, qword [rsp + 0x98]
jmp 0x14019e4b5
mov r9, qword [rsp + 0x30]
mov r13, qword [rsp + 0x50]
mov rax, qword [rsp + 0x50]
lea rdx, [r12 + 8]
mov r8, qword [rsp + 0x30]
lea rcx, [rbx + 8]
mov qword [rsp + 0x20], rax
call fcn.1401b4430
mov r10d, dword [rsp + 0x58]
lea r11, [rax + 8]
sub r10d, r14d
cmp rdi, rbx
jae 0x14019e4fd
cmp r13, r12
jae 0x14019e4fd
mov al, byte [r12 - 1]
cmp byte [rbx - 1], al
jne 0x14019e4fd
dec rbx
dec r12
inc r11
jmp 0x14019e4de
mov rax, qword [rsp + 0x30]
lea r13d, [r10 + 3]
mov r12, rbx
sub r12, rdi
mov rcx, qword [rsi + 0x18]
lea r9, [rax - 0x20]
cmp r9, rbx
jb 0x14019e561
movups xmm4, xmmword [rdi]
cmp r12, 0x10
movups xmmword [rcx], xmm4
jbe 0x14019e576
mov rax, qword [rsi + 0x18]
cmp r12, 0x20
movups xmm5, xmmword [rdi + 0x10]
movups xmmword [rax + 0x10], xmm5
jle 0x14019e576
lea rdx, [rax + r12]
add rdi, 0x20
add rax, 0x20
movups xmm0, xmmword [rdi]
add rax, 0x20
add rdi, 0x20
movups xmmword [rax - 0x20], xmm0
movups xmm1, xmmword [rdi - 0x10]
movups xmmword [rax - 0x10], xmm1
cmp rax, rdx
jb 0x14019e543
jmp 0x14019e576
mov r8, rbx
mov rdx, rdi
mov dword [rsp + 0x78], r10d
call fcn.1401bac40
mov r10d, dword [rsp + 0x78]
add qword [rsi + 0x18], r12
cmp r12, 0xffff
mov rax, qword [rsi + 8]
jmp 0x14019e769
mov r12d, r13d
add r12, r10
mov eax, dword [r12]
cmp dword [rbx], eax
jne 0x14019e2f2
movabs rax, 0xcf1bbcdcb7a56463
mov rdx, qword [rbx + 1]
mov cl, byte [rsp + 0x7c]
mov r14d, dword [rsp + 0x44]
imul rax, rdx
shr rax, cl
mov rcx, qword [rsp + 0x68]
lea rax, [rcx + rax*4]
mov ecx, dword [rax]
cmp ecx, r14d
mov dword [rsp + 0x78], ecx
mov ecx, dword [rsp + 0x58]
mov r14, qword [rsp + 0x60]
cmovae r14, qword [rsp + 0x38]
lea r10d, [rcx + 1]
mov ecx, dword [rsp + 0x78]
cmp dword [rsp + 0x48], ecx
mov dword [rax], r10d
jae 0x14019e677
mov eax, ecx
add r14, rax
cmp rdx, qword [r14]
jne 0x14019e677
mov edx, dword [rsp + 0x44]
cmp ecx, edx
jae 0x14019e611
mov r9, qword [rsp + 0x70]
mov r12, qword [rsp + 0x98]
jmp 0x14019e61b
mov r9, qword [rsp + 0x30]
mov r12, qword [rsp + 0x50]
mov rax, qword [rsp + 0x50]
lea rcx, [rbx + 9]
inc rbx
mov dword [rsp + 0xac], r10d
mov r8, qword [rsp + 0x30]
lea rdx, [r14 + 8]
mov qword [rsp + 0x20], rax
call fcn.1401b4430
mov r10d, dword [rsp + 0xac]
lea r11, [rax + 8]
mov eax, dword [rsp + 0x78]
sub r10d, eax
cmp rdi, rbx
jae 0x14019e6e1
cmp r12, r14
jae 0x14019e6e1
mov al, byte [r14 - 1]
cmp byte [rbx - 1], al
jne 0x14019e6e1
dec rbx
dec r14
inc r11
jmp 0x14019e655
mov eax, dword [rsp + 0x44]
cmp r13d, eax
jae 0x14019e68f
mov r9, qword [rsp + 0x70]
mov r14, qword [rsp + 0x98]
jmp 0x14019e699
mov r9, qword [rsp + 0x30]
mov r14, qword [rsp + 0x50]
mov rax, qword [rsp + 0x50]
lea rdx, [r12 + 4]
mov r8, qword [rsp + 0x30]
lea rcx, [rbx + 4]
mov qword [rsp + 0x20], rax
call fcn.1401b4430
mov r10d, dword [rsp + 0x58]
lea r11, [rax + 4]
sub r10d, r13d
cmp rdi, rbx
jae 0x14019e6e1
cmp r14, r12
jae 0x14019e6e1
mov al, byte [r12 - 1]
cmp byte [rbx - 1], al
jne 0x14019e6e1
dec rbx
dec r12
inc r11
jmp 0x14019e6c2
mov rax, qword [rsp + 0x30]
lea r13d, [r10 + 3]
mov r12, rbx
sub r12, rdi
mov rcx, qword [rsi + 0x18]
lea r9, [rax - 0x20]
cmp r9, rbx
jb 0x14019e745
movups xmm2, xmmword [rdi]
cmp r12, 0x10
movups xmmword [rcx], xmm2
jbe 0x14019e75a
mov rax, qword [rsi + 0x18]
cmp r12, 0x20
movups xmm3, xmmword [rdi + 0x10]
movups xmmword [rax + 0x10], xmm3
jle 0x14019e75a
lea rdx, [rax + r12]
add rdi, 0x20
add rax, 0x20
movups xmm4, xmmword [rdi]
add rax, 0x20
add rdi, 0x20
movups xmmword [rax - 0x20], xmm4
movups xmm5, xmmword [rdi - 0x10]
movups xmmword [rax - 0x10], xmm5
cmp rax, rdx
jb 0x14019e727
jmp 0x14019e75a
mov r8, rbx
mov rdx, rdi
mov dword [rsp + 0x78], r10d
call fcn.1401bac40
mov r10d, dword [rsp + 0x78]
mov rax, qword [rsi + 8]
add qword [rsi + 0x18], r12
cmp r12, 0xffff
jbe 0x14019e77f
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 1
sar rdx, 3
mov dword [rsi + 0x4c], edx
lea rcx, [r11 - 3]
mov word [rax + 4], r12w
cmp rcx, 0xffff
mov dword [rax], r13d
jbe 0x14019e7a8
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], cx
add rax, 8
add rbx, r11
cmp qword [rsp + 0x90], rbx
mov qword [rsi + 8], rax
mov rdi, rbx
jb 0x14019e308
movabs r8, 0xcf1bbcdcb7a56463
mov edx, dword [rsp + 0x58]
mov rax, qword [rsp + 0x38]
mov cl, byte [rsp + 0x7c]
mov rdi, qword [rsp + 0x68]
lea r9d, [rdx + 2]
mov rdx, r9
add r9, rax
mov rax, qword [r9]
mov r11, rax
imul r11, r8
imul r8, qword [rbx - 2]
shr r11, cl
mov dword [rdi + r11*4], edx
mov rdi, qword [rsp + 0x38]
shr r8, cl
lea rcx, [rbx - 2]
sub rcx, rdi
mov rdi, qword [rsp + 0x68]
cmp dword [rsp + 0x4c], 6
mov dword [rdi + r8*4], ecx
je 0x14019e850
cmp dword [rsp + 0x4c], 7
je 0x14019e85c
cmp dword [rsp + 0x4c], 5
je 0x14019e844
imul eax, dword [r9], 0x9e3779b1
mov ecx, 0x20
sub ecx, r15d
shr eax, cl
jmp 0x14019e875
movabs rcx, 0xcf1bbcdcbb000000
jmp 0x14019e866
movabs rcx, 0xcf1bbcdcbf9b0000
jmp 0x14019e866
movabs rcx, 0xcf1bbcdcbfa56300
imul rax, rcx
mov ecx, 0x40
sub ecx, r15d
shr rax, cl
mov rdi, qword [rsp + 0x88]
mov dword [rdi + rax*4], edx
mov rax, qword [rsp + 0x38]
lea rdx, [rbx - 1]
sub rdx, rax
cmp dword [rsp + 0x4c], 6
je 0x14019e8c0
cmp dword [rsp + 0x4c], 7
je 0x14019e8cc
cmp dword [rsp + 0x4c], 5
je 0x14019e8b4
imul eax, dword [rbx - 1], 0x9e3779b1
mov ecx, 0x20
sub ecx, r15d
shr eax, cl
jmp 0x14019e8e6
movabs rax, 0xcf1bbcdcbb000000
jmp 0x14019e8d6
movabs rax, 0xcf1bbcdcbf9b0000
jmp 0x14019e8d6
movabs rax, 0xcf1bbcdcbfa56300
imul rax, qword [rbx - 1]
mov ecx, 0x40
sub ecx, r15d
shr rax, cl
mov rdi, qword [rsp + 0x88]
mov dword [rdi + rax*4], edx
mov rax, qword [rsp + 0x38]
mov rdi, rbx
mov rdx, qword [rsp + 0x38]
mov r14d, dword [rsp + 0x44]
sub rdi, rax
mov eax, edi
sub eax, ebp
mov ecx, eax
add rdx, rcx
cmp eax, r14d
jae 0x14019e91c
mov rdx, qword [rsp + 0x60]
add rdx, rcx
mov ecx, dword [rsp + 0xa4]
add ecx, ebp
sub ecx, edi
cmp ecx, 2
jbe 0x14019ea8d
mov r14d, dword [rsp + 0x48]
mov ecx, edi
sub ecx, r14d
cmp ecx, ebp
jb 0x14019ea8d
mov ecx, dword [rdx]
cmp dword [rbx], ecx
jne 0x14019ea8d
mov ecx, dword [rsp + 0x44]
mov dword [rsp + 0x58], r10d
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x70]
cmp eax, ecx
mov rax, qword [rsp + 0x50]
cmovae r9, qword [rsp + 0x30]
lea rcx, [rbx + 4]
add rdx, 4
mov qword [rsp + 0x20], rax
call fcn.1401b4430
mov rcx, qword [rsi + 0x18]
lea r11, [rax + 4]
mov r12, rax
mov rax, qword [rsp + 0x30]
mov r10d, dword [rsp + 0x58]
lea r9, [rax - 0x20]
cmp r9, rbx
jb 0x14019e9a4
movups xmm0, xmmword [rbx]
movups xmmword [rcx], xmm0
jmp 0x14019e9b9
mov r8, rbx
mov rdx, rbx
mov dword [rsp + 0x58], r10d
call fcn.1401bac40
mov r10d, dword [rsp + 0x58]
mov rax, qword [rsi + 8]
inc r12
cmp r12, 0xffff
mov word [rax + 4], 0
mov dword [rax], 1
jbe 0x14019e9e9
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], r12w
add rax, 8
cmp dword [rsp + 0x4c], 6
mov rdx, qword [rbx]
mov qword [rsi + 8], rax
je 0x14019ea2c
cmp dword [rsp + 0x4c], 7
je 0x14019ea38
cmp dword [rsp + 0x4c], 5
je 0x14019ea20
imul eax, dword [rbx], 0x9e3779b1
mov ecx, 0x20
sub ecx, r15d
shr eax, cl
jmp 0x14019ea51
movabs rax, 0xcf1bbcdcbb000000
jmp 0x14019ea42
movabs rax, 0xcf1bbcdcbf9b0000
jmp 0x14019ea42
movabs rax, 0xcf1bbcdcbfa56300
imul rax, rdx
mov ecx, 0x40
sub ecx, r15d
shr rax, cl
mov rcx, qword [rsp + 0x88]
add rbx, r11
xchg r10d, ebp
mov dword [rcx + rax*4], edi
mov cl, byte [rsp + 0x7c]
movabs rax, 0xcf1bbcdcb7a56463
imul rdx, rax
mov rax, qword [rsp + 0x68]
shr rdx, cl
cmp qword [rsp + 0x90], rbx
mov dword [rax + rdx*4], edi
jae 0x14019e8f1
mov rdi, rbx
jmp 0x14019e308
mov rax, qword [rsp + 0x80]
mov esi, dword [rsp + 0x78]
mov dword [rax], ebp
mov dword [rax + 4], esi
mov rax, qword [rsp + 0x30]
sub rax, rdi
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret