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

Disassembly:
test r9d, r9d
jle 0x18016b19d
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push r13
sub rsp, 0x38
movsxd r13, dword [rsp + 0xa0]
mov rbx, r8
mov r8d, dword [rsp + 0x90]
mov r11, rdx
mov rdx, qword [rsp + 0x70]
mov r10, qword [rsp + 0x78]
mov qword [rsp + 0x68], rbp
movsxd rax, r9d
mov r9d, dword [rsp + 0x80]
mov qword [rsp], rax
mov eax, dword [rsp + 0x88]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r12
lea eax, [rax*8]
mov qword [rsp + 0x18], r14
cdqe
shl rax, 2
sub r11, rbx
mov qword [rsp + 0x10], r15
mov qword [rsp + 0x58], r11
mov qword [rsp + 8], rax
nop dword [rax + rax]
mov rcx, qword [rbx]
xor r12d, r12d
mov r11, qword [r11 + rbx]
mov r15d, dword [rsp + 0x98]
mov qword [rsp + 0x50], rcx
nop word [rax + rax]
movsxd rax, r15d
cmp r12, rax
jge 0x18016ac10
mov rbp, rdx
lea rdi, [rcx + r12*4]
sub rbp, rcx
lea r14d, [r8 + r8*2]
mov rsi, rax
sub rsi, r12
mov r12, rax
mov edx, dword [rdi + rbp]
mov ebx, edx
sub ebx, r14d
mov eax, ebx
cmp ebx, r9d
jb 0x18016aa28
test ebx, ebx
jns 0x18016aa1b
add eax, r8d
js 0x18016aa16
cmp eax, r9d
jl 0x18016aa28
sub eax, r8d
cmp eax, r9d
jge 0x18016aa20
cdqe
movsx ecx, word [r11 + rax*2]
lea eax, [rbx + r8]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mulss xmm1, dword [r10]
cmp eax, r9d
jb 0x18016aa5a
test eax, eax
jns 0x18016aa4d
add eax, r8d
js 0x18016aa48
cmp eax, r9d
jl 0x18016aa5a
sub eax, r8d
cmp eax, r9d
jge 0x18016aa52
cdqe
movsx ecx, word [r11 + rax*2]
lea eax, [rbx + r8*2]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 4]
addss xmm1, xmm0
cmp eax, r9d
jb 0x18016aa98
test eax, eax
jns 0x18016aa85
nop
add eax, r8d
js 0x18016aa80
cmp eax, r9d
jl 0x18016aa98
nop word [rax + rax]
sub eax, r8d
cmp eax, r9d
jge 0x18016aa90
cdqe
movsx ecx, word [r11 + rax*2]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 8]
addss xmm1, xmm0
cmp edx, r9d
jb 0x18016aad8
test edx, edx
jns 0x18016aac5
nop dword [rax]
add edx, r8d
js 0x18016aac0
cmp edx, r9d
jl 0x18016aad8
nop word [rax + rax]
sub edx, r8d
cmp edx, r9d
jge 0x18016aad0
movsxd rax, edx
movsx ecx, word [r11 + rax*2]
lea eax, [rbx + r8*4]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0xc]
addss xmm1, xmm0
cmp eax, r9d
jb 0x18016ab18
test eax, eax
jns 0x18016ab05
nop
add eax, r8d
js 0x18016ab00
cmp eax, r9d
jl 0x18016ab18
nop word [rax + rax]
sub eax, r8d
cmp eax, r9d
jge 0x18016ab10
cdqe
movsx ecx, word [r11 + rax*2]
movd xmm0, ecx
lea ecx, [rbx + r8*4]
cvtdq2ps xmm0, xmm0
add ecx, r8d
mulss xmm0, dword [r10 + 0x10]
addss xmm1, xmm0
cmp ecx, r9d
jb 0x18016ab58
test ecx, ecx
jns 0x18016ab45
add ecx, r8d
js 0x18016ab40
cmp ecx, r9d
jl 0x18016ab58
nop word [rax + rax]
sub ecx, r8d
cmp ecx, r9d
jge 0x18016ab50
movsxd rax, ecx
movsx ecx, word [r11 + rax*2]
lea eax, [r8 + r8*2]
movd xmm0, ecx
lea ecx, [rbx + rax*2]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x14]
addss xmm1, xmm0
cmp ecx, r9d
jb 0x18016ab98
test ecx, ecx
jns 0x18016ab86
add ecx, r8d
js 0x18016ab81
cmp ecx, r9d
jl 0x18016ab98
nop dword [rax + rax]
sub ecx, r8d
cmp ecx, r9d
jge 0x18016ab90
movsxd rax, ecx
movsx ecx, word [r11 + rax*2]
imul eax, r8d, 7
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
add eax, ebx
mulss xmm0, dword [r10 + 0x18]
addss xmm1, xmm0
cmp eax, r9d
jb 0x18016abd8
test eax, eax
jns 0x18016abc5
add eax, r8d
js 0x18016abc0
cmp eax, r9d
jl 0x18016abd8
nop word [rax + rax]
sub eax, r8d
cmp eax, r9d
jge 0x18016abd0
cdqe
movsx ecx, word [r11 + rax*2]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x1c]
add r10, 0x20
addss xmm0, xmm1
movss dword [rdi], xmm0
add rdi, 4
sub rsi, 1
jne 0x18016aa03
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x70]
cmp r15d, dword [rsp + 0x88]
je 0x18016b155
cmp r12, r13
jge 0x18016b13e
mov rax, r13
sub rax, r12
cmp rax, 4
jl 0x18016b017
lea rsi, [r12 + 1]
mov rbx, r13
sub rbx, r12
lea r14d, [r8 + r8]
sub rbx, 4
lea r15d, [r8 + r8*2]
mov rdi, rdx
shr rbx, 2
sub rdi, rcx
lea ebp, [r8*4]
inc rbx
lea rsi, [rcx + rsi*4]
lea r12, [r12 + rbx*4]
nop dword [rax + rax]
movsxd rdx, dword [rdi + rsi - 4]
mov eax, edx
sub eax, r14d
cdqe
movsx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r15d
cdqe
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movsx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r8d
cdqe
movd xmm0, ecx
mulss xmm1, dword [r10 + 4]
movsx ecx, word [r11 + rax*2]
lea eax, [rdx + r8]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10]
addss xmm1, xmm0
movd xmm0, ecx
movsx ecx, word [r11 + rdx*2]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 8]
addss xmm1, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0xc]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea eax, [r14 + rdx]
movsxd rcx, eax
mulss xmm0, dword [r10 + 0x10]
movsx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [r15 + rdx]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0x14]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea eax, [rdx + rbp]
movsxd rcx, eax
mulss xmm0, dword [r10 + 0x18]
movsx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x1c]
addss xmm1, xmm0
movss dword [rsi - 4], xmm1
movsxd rdx, dword [rdi + rsi]
mov eax, edx
sub eax, r14d
cdqe
movsx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r15d
cdqe
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movsx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r8d
cdqe
movd xmm0, ecx
mulss xmm1, dword [r10 + 0x24]
movsx ecx, word [r11 + rax*2]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x20]
addss xmm1, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x28]
addss xmm1, xmm0
movsx ecx, word [r11 + rdx*2]
lea eax, [rdx + r8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0x2c]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea eax, [r14 + rdx]
movsxd rcx, eax
mulss xmm0, dword [r10 + 0x30]
movsx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [r15 + rdx]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0x34]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea eax, [rdx + rbp]
movsxd rcx, eax
mulss xmm0, dword [r10 + 0x38]
movsx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x3c]
addss xmm1, xmm0
movss dword [rsi], xmm1
movsxd rdx, dword [rsi + rdi + 4]
mov eax, edx
sub eax, r14d
cdqe
movsx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r15d
cdqe
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movsx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r8d
cdqe
movd xmm0, ecx
mulss xmm1, dword [r10 + 0x44]
movsx ecx, word [r11 + rax*2]
lea eax, [rdx + r8]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x40]
addss xmm1, xmm0
movd xmm0, ecx
movsx ecx, word [r11 + rdx*2]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x48]
addss xmm1, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0x4c]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea eax, [r14 + rdx]
movsxd rcx, eax
mulss xmm0, dword [r10 + 0x50]
movsx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [r15 + rdx]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0x54]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [rdx + rbp]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0x58]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x5c]
addss xmm1, xmm0
movss dword [rsi + 4], xmm1
movsxd rdx, dword [rsi + rdi + 8]
mov eax, edx
sub eax, r14d
cdqe
movsx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r15d
cdqe
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movsx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r8d
cdqe
movd xmm0, ecx
mulss xmm1, dword [r10 + 0x64]
movsx ecx, word [r11 + rax*2]
lea eax, [rdx + r8]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x60]
addss xmm1, xmm0
movd xmm0, ecx
movsx ecx, word [r11 + rdx*2]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x68]
addss xmm1, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0x6c]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea eax, [r14 + rdx]
movsxd rcx, eax
mulss xmm0, dword [r10 + 0x70]
movsx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [r15 + rdx]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0x74]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea eax, [rdx + rbp]
movsxd rcx, eax
mulss xmm0, dword [r10 + 0x78]
movsx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x7c]
sub r10, 0xffffffffffffff80
addss xmm1, xmm0
movss dword [rsi + 8], xmm1
add rsi, 0x10
sub rbx, 1
jne 0x18016ac70
cmp r12, r13
jge 0x18016b13e
mov rax, qword [rsp + 0x50]
lea esi, [r8 + r8]
mov rbp, qword [rsp + 0x70]
lea r14d, [r8 + r8*2]
sub rbp, rax
lea r15d, [r8*4]
mov rdi, r13
lea rbx, [rax + r12*4]
sub rdi, r12
mov r12, r13
movsxd rdx, dword [rbx + rbp]
mov eax, edx
sub eax, esi
cdqe
movsx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r14d
cdqe
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movsx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r8d
cdqe
movd xmm0, ecx
mulss xmm1, dword [r10 + 4]
movsx ecx, word [r11 + rax*2]
lea eax, [rdx + r8]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10]
addss xmm1, xmm0
movd xmm0, ecx
movsx ecx, word [r11 + rdx*2]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 8]
addss xmm1, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0xc]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea eax, [rsi + rdx]
movsxd rcx, eax
mulss xmm0, dword [r10 + 0x10]
movsx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [r14 + rdx]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movsx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0x14]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea eax, [r15 + rdx]
movsxd rcx, eax
mulss xmm0, dword [r10 + 0x18]
movsx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x1c]
add r10, 0x20
addss xmm1, xmm0
movss dword [rbx], xmm1
add rbx, 4
sub rdi, 1
jne 0x18016b04a
mov r15d, dword [rsp + 0x88]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x70]
jmp 0x18016a9e0
mov rbx, qword [rsp + 0x60]
sub r10, qword [rsp + 8]
add rbx, 8
sub qword [rsp], 1
mov r11, qword [rsp + 0x58]
mov qword [rsp + 0x60], rbx
jne 0x18016a9c0
mov r15, qword [rsp + 0x10]
mov r14, qword [rsp + 0x18]
mov r12, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x68]
add rsp, 0x38
pop r13
pop rbx
ret