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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rdi
push r12
push r13
push r14
sub rsp, 0x150
mov rax, qword [0x1406836b8]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov r14, qword [rsp + 0x1c8]
mov qword [rsp + 0x90], r14
mov eax, dword [r14 + 0x98]
mov r9d, dword [r14 + 0x28]
mov edi, dword [r14 + 0x30]
mov r8d, dword [r14 + 0x2c]
mov ebp, dword [r14 + 0x34]
mov dword [rsp + 0x34], eax
mov eax, r9d
and eax, 0xffffc000
mov r12d, dword [r14 + 0x94]
cdq
mov dword [rsp + 0x60], r12d
and edx, 0x3fff
add eax, edx
sar eax, 0xe
movsxd r11, eax
lea eax, [rdi - 1]
or eax, 0x3fff
mov dword [rsp + 0x44], r11d
inc eax
cdq
and edx, 0x3fff
lea r13d, [rdx + rax]
mov eax, r8d
and eax, 0xffffc000
sar r13d, 0xe
cdq
mov dword [rsp + 0x5c], r13d
and edx, 0x3fff
mov ecx, r13d
shl ecx, 0xe
lea r10d, [rdx + rax]
lea eax, [rbp - 1]
sar r10d, 0xe
or eax, 0x3fff
mov dword [rsp + 0x3c], r10d
inc eax
cdq
and edx, 0x3fff
lea ebx, [rdx + rax]
mov eax, dword [r14 + 0x7c]
dec eax
sar ebx, 0xe
or eax, 0x3fff
mov dword [rsp + 0x6c], ebx
inc eax
cdq
and edx, 0x3fff
add edx, eax
mov eax, edi
sub eax, ecx
sar edx, 0xe
add eax, 0x4000
sub edi, r9d
mov dword [rsp + 0x54], eax
mov ecx, ebx
shl ecx, 0xe
mov eax, ebp
sub eax, ecx
mov ecx, r13d
add eax, 0x4000
sub ecx, r11d
mov dword [rsp + 0x68], eax
lea eax, [r11 + 1]
shl eax, 0xe
sub eax, r9d
cmp ecx, 2
mov ecx, ebx
cmovge edi, eax
sub ebp, r8d
lea eax, [r10 + 1]
mov dword [rsp + 0x40], edi
mov edi, dword [r14 + 0x74]
sub ecx, r10d
shl eax, 0xe
sub eax, r8d
mov dword [rsp + 0x24], edi
cmp ecx, 2
cmovge ebp, eax
mov dword [rsp + 0x20], ebp
cmp r10d, ebx
jge 0x14026b039
mov qword [rsp + 0x180], rsi
lea ecx, [rdx - 1]
mov qword [rsp + 0x188], r15
lea eax, [rbx - 2]
movaps xmmword [rsp + 0x140], xmm6
mov r8, r11
movaps xmmword [rsp + 0x130], xmm7
movaps xmmword [rsp + 0x120], xmm8
movsd xmm8, qword [0x14045dee0]
shl r8, 2
movaps xmmword [rsp + 0x110], xmm9
mov qword [rsp + 0x98], r8
mov dword [rsp + 0x70], ecx
mov dword [rsp + 0x64], eax
nop
mov eax, dword [r14 + 0x18]
mov esi, dword [r14 + 0x70]
mov ebx, dword [rsp + 0x40]
imul eax, r10d
mov dword [rsp + 0x2c], esi
mov dword [rsp + 0x28], ebx
movsxd r15, eax
mov eax, edi
cdq
add r15, r8
add r15, qword [r14 + 0x10]
and edx, 0x3fff
add eax, edx
mov qword [rsp + 0x80], r15
sar eax, 0xe
cmp eax, ecx
jl 0x14026aa72
mov edi, dword [r14 + 0x7c]
dec edi
or edi, 0x3fff
sub edi, 0x3fff
mov dword [rsp + 0x24], edi
xor r10d, r10d
mov eax, edi
cdq
and edx, 0x3fff
add eax, edx
mov r11d, eax
and eax, 0x3fff
sub eax, edx
sar r11d, 0xe
cmp r11d, ecx
mov dword [rsp + 0x30], eax
mov ecx, dword [r14 + 0x60]
setne r10b
imul ecx, r11d
lea eax, [r10 + r11]
mov r11d, dword [rsp + 0x44]
imul eax, dword [r14 + 0x60]
movsxd rdx, ecx
add rdx, qword [r14 + 0x58]
mov qword [rsp + 0xa0], rdx
mov dword [rsp + 0x38], r11d
movsxd rcx, eax
add rcx, qword [r14 + 0x58]
mov qword [rsp + 0xa8], rcx
cmp r11d, r13d
jge 0x14026afa6
movd xmm9, dword [rsp + 0x34]
lea eax, [r13 - 2]
cvtdq2pd xmm9, xmm9
mov dword [rsp + 0x50], eax
nop
movd xmm7, ebx
movaps xmm6, xmm9
mov eax, esi
and eax, 0xffffc000
cdq
and edx, 0x3fff
add eax, edx
sar eax, 0xe
movsxd rdi, eax
cvtdq2pd xmm7, xmm7
lea ecx, [rdi + 1]
shl ecx, 0xe
sub ecx, esi
mulsd xmm6, xmm7
movaps xmm0, xmm6
mulsd xmm0, xmm8
cvttsd2si r8d, xmm0
mov r13d, r8d
mov dword [rsp + 0x4c], r8d
mov r15d, r8d
lea eax, [r8 + rsi]
mov dword [rsp + 0x58], eax
dec eax
or eax, 0x3fff
inc eax
cdq
and edx, 0x3fff
add eax, edx
sar eax, 0xe
mov edx, eax
mov ebx, eax
shl edx, 0xe
sub eax, edi
sub r13d, edx
mov dword [rsp + 0x48], eax
add r13d, 0x4000
add r13d, esi
cmp eax, 2
cmovge r15d, ecx
xor edx, edx
lea rcx, [rsp + 0xb0]
lea r8d, [rdx + 0x50]
call sub.VCRUNTIME140.dll_memset
lea eax, [rbx - 1]
mov r8d, 2
movsxd rcx, eax
lea r12, [rdi + 1]
mov qword [rsp + 0x88], rcx
lea rdx, [rsp + 0xb8]
mov rbp, rdi
mov qword [rsp + 0x78], r8
lea r14, [rsp + 0xa0]
nop word [rax + rax]
mov rdi, qword [r14]
mov rsi, r12
movzx eax, byte [rdi + rbp*4]
imul eax, r15d
movsxd r9, eax
movzx eax, byte [rdi + rbp*4 + 1]
add r9, qword [rdx - 8]
imul eax, r15d
mov qword [rdx - 8], r9
movsxd r10, eax
movzx eax, byte [rdi + rbp*4 + 2]
add r10, qword [rdx]
imul eax, r15d
mov qword [rdx], r10
movsxd r11, eax
movzx eax, byte [rdi + rbp*4 + 3]
add r11, qword [rdx + 8]
imul eax, r15d
mov qword [rdx + 8], r11
movsxd rbx, eax
add rbx, qword [rdx + 0x10]
mov rax, qword [rsp + 0x88]
mov qword [rdx + 0x10], rbx
cmp r12, rax
jge 0x14026ac8a
lea rcx, [r12*4 + 2]
mov r8, rax
add rcx, rdi
sub r8, rbp
dec r8
lea rsi, [r8 + r12]
nop dword [rax + rax]
movzx eax, byte [rcx - 2]
lea rcx, [rcx + 4]
shl rax, 0xe
add r9, rax
movzx eax, byte [rcx - 5]
shl rax, 0xe
add r10, rax
movzx eax, byte [rcx - 4]
shl rax, 0xe
add r11, rax
movzx eax, byte [rcx - 3]
shl rax, 0xe
add rbx, rax
sub r8, 1
jne 0x14026ac40
mov r8, qword [rsp + 0x78]
mov qword [rdx - 8], r9
mov qword [rdx], r10
mov qword [rdx + 8], r11
mov qword [rdx + 0x10], rbx
cmp dword [rsp + 0x48], 1
jle 0x14026acdb
movzx eax, byte [rdi + rsi*4]
imul eax, r13d
movsxd rcx, eax
movzx eax, byte [rdi + rsi*4 + 1]
add rcx, r9
imul eax, r13d
mov qword [rdx - 8], rcx
movsxd rcx, eax
movzx eax, byte [rdi + rsi*4 + 2]
add rcx, r10
imul eax, r13d
mov qword [rdx], rcx
movsxd rcx, eax
movzx eax, byte [rdi + rsi*4 + 3]
add rcx, r11
imul eax, r13d
mov qword [rdx + 8], rcx
movsxd rcx, eax
add rcx, rbx
mov qword [rdx + 0x10], rcx
add r14, 8
add rdx, 0x28
sub r8, 1
mov qword [rsp + 0x78], r8
jne 0x14026abc0
cmp dword [rsp + 0x28], 0x4000
mov r15, qword [rsp + 0x80]
mov ebp, dword [rsp + 0x20]
jne 0x14026ad14
cmp ebp, 0x4000
je 0x14026ae63
cmp dword [rsp + 0x1d8], 0
jne 0x14026ae63
movsxd r8, dword [rsp + 0x4c]
test r8d, r8d
jle 0x14026af45
movsxd r11, dword [rsp + 0x30]
mov eax, 0x4000
sub eax, r11d
movd xmm0, ebp
cdqe
mov rcx, r11
imul rax, qword [rsp + 0xb0]
imul rcx, qword [rsp + 0xd8]
cvtdq2pd xmm0, xmm0
mov r10d, 0xff
mulsd xmm0, xmm7
add rax, rcx
movzx ecx, byte [r15]
cqo
and edx, 0x3fff
add rax, rdx
mulsd xmm0, xmm8
sar rax, 0xe
cqo
idiv r8
movzx r8d, al
cvttsd2si eax, xmm0
imul eax, eax, 0xff
cdq
and edx, 0x3fff
add eax, edx
sar eax, 0xe
movzx r9d, al
mov eax, r8d
sub eax, ecx
imul eax, r9d
sub eax, 0xffffff80
mov edx, eax
sar edx, 8
add edx, eax
sar edx, 8
add edx, ecx
jns 0x14026adc2
xor edx, edx
jmp 0x14026adc9
cmp edx, r10d
cmovg edx, r10d
movzx ecx, byte [r15 + 1]
mov eax, r8d
mov byte [r15], dl
sub eax, ecx
imul eax, r9d
sub eax, 0xffffff80
mov edx, eax
sar edx, 8
add edx, eax
sar edx, 8
add edx, ecx
jns 0x14026adef
xor edx, edx
jmp 0x14026adf6
cmp edx, r10d
cmovg edx, r10d
movzx ecx, byte [r15 + 2]
mov eax, r8d
mov byte [r15 + 1], dl
sub eax, ecx
imul eax, r9d
sub eax, 0xffffff80
mov edx, eax
sar edx, 8
add edx, eax
sar edx, 8
add edx, ecx
jns 0x14026ae1d
xor edx, edx
jmp 0x14026ae24
cmp edx, r10d
cmovg edx, r10d
movzx eax, byte [r15 + 3]
sub r8d, eax
mov byte [r15 + 2], dl
imul r8d, r9d
sub r8d, 0xffffff80
mov ecx, r8d
sar ecx, 8
add ecx, r8d
sar ecx, 8
add ecx, eax
jns 0x14026ae53
xor ecx, ecx
mov byte [r15 + 3], cl
jmp 0x14026af45
cmp ecx, r10d
cmovg ecx, r10d
mov byte [r15 + 3], cl
jmp 0x14026af45
movsxd rcx, dword [rsp + 0x30]
mov eax, 0x4000
sub eax, ecx
movsxd r10, dword [rsp + 0x34]
movsxd r9, eax
mov r8, rcx
mov rax, qword [rsp + 0xd8]
imul rax, rcx
mov rcx, qword [rsp + 0xb0]
imul rcx, r9
add rax, rcx
mov rcx, qword [rsp + 0xb8]
cqo
and edx, 0x3fff
add rax, rdx
sar rax, 0xe
cqo
idiv r10
imul rcx, r9
mov byte [r15], al
mov rax, qword [rsp + 0xe0]
imul rax, r8
add rax, rcx
mov rcx, qword [rsp + 0xc0]
cqo
and edx, 0x3fff
add rax, rdx
sar rax, 0xe
cqo
idiv r10
imul rcx, r9
mov byte [r15 + 1], al
mov rax, qword [rsp + 0xe8]
imul rax, r8
add rax, rcx
mov rcx, qword [rsp + 0xc8]
cqo
and edx, 0x3fff
add rax, rdx
sar rax, 0xe
cqo
idiv r10
imul rcx, r9
mov byte [r15 + 2], al
mov rax, qword [rsp + 0xf0]
imul rax, r8
add rax, rcx
cqo
and edx, 0x3fff
add rax, rdx
sar rax, 0xe
cqo
idiv r10
mov byte [r15 + 3], al
mov ecx, dword [rsp + 0x38]
add r15, 4
mov qword [rsp + 0x80], r15
cmp ecx, dword [rsp + 0x50]
jne 0x14026af70
mov esi, dword [rsp + 0x2c]
mov ebx, dword [rsp + 0x54]
mulsd xmm6, xmm8
cvttsd2si eax, xmm6
add esi, eax
jmp 0x14026af79
mov esi, dword [rsp + 0x58]
mov ebx, 0x4000
mov r13d, dword [rsp + 0x5c]
inc ecx
mov dword [rsp + 0x2c], esi
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x38], ecx
cmp ecx, r13d
jl 0x14026aaf0
mov edi, dword [rsp + 0x24]
mov r14, qword [rsp + 0x90]
mov r12d, dword [rsp + 0x60]
mov r10d, dword [rsp + 0x3c]
cmp r10d, dword [rsp + 0x64]
jne 0x14026afd8
movd xmm1, ebp
mov ebp, dword [rsp + 0x68]
cvtdq2pd xmm1, xmm1
movd xmm0, r12d
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
mulsd xmm1, xmm8
cvttsd2si eax, xmm1
add edi, eax
jmp 0x14026afe0
mov ebp, 0x4000
add edi, r12d
mov ecx, dword [rsp + 0x70]
inc r10d
mov r8, qword [rsp + 0x98]
mov dword [rsp + 0x24], edi
mov dword [rsp + 0x20], ebp
mov dword [rsp + 0x3c], r10d
cmp r10d, dword [rsp + 0x6c]
jl 0x14026aa20
movaps xmm9, xmmword [rsp + 0x110]
movaps xmm8, xmmword [rsp + 0x120]
movaps xmm7, xmmword [rsp + 0x130]
movaps xmm6, xmmword [rsp + 0x140]
mov r15, qword [rsp + 0x188]
mov rsi, qword [rsp + 0x180]
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
call fcn.14039bbb0
mov rbx, qword [rsp + 0x190]
add rsp, 0x150
pop r14
pop r13
pop r12
pop rdi
pop rbp
ret