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

Disassembly:
test r9d, r9d
jle 0x140150bc2
mov qword [rsp + 0x18], r8
push rbx
sub rsp, 0x40
movsxd rcx, dword [rsp + 0xa0]
mov rbx, r8
mov r8d, dword [rsp + 0x90]
mov r11, rdx
mov rdx, qword [rsp + 0x70]
xorps xmm2, xmm2
mov r10, qword [rsp + 0x78]
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x38], rsi
movsxd rax, r9d
mov r9d, dword [rsp + 0x80]
mov qword [rsp], rax
mov eax, dword [rsp + 0x88]
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r13
lea eax, [rax*8]
mov qword [rsp + 0x18], r14
cdqe
shl rax, 2
sub r11, rbx
mov qword [rsp + 8], rax
mov eax, dword [rsp + 0x88]
mov qword [rsp + 0x58], r11
mov qword [rsp + 0x10], r15
mov r11, qword [r11 + rbx]
xor r15d, r15d
mov r13, qword [rbx]
mov r12d, dword [rsp + 0x98]
movsxd rsi, r12d
cmp r15, rsi
jge 0x14015062a
lea rdi, [r15*4]
mov rbp, rdx
add rdi, r13
lea r14d, [r8 + r8*2]
sub rbp, r13
sub rsi, r15
add r15, rsi
nop dword [rax]
mov edx, dword [rdi + rbp]
mov ebx, edx
sub ebx, r14d
mov eax, ebx
cmp ebx, r9d
jb 0x140150428
test ebx, ebx
jns 0x140150418
add eax, r8d
js 0x140150413
cmp eax, r9d
jl 0x140150428
nop dword [rax]
sub eax, r8d
cmp eax, r9d
jge 0x140150420
cdqe
movzx ecx, word [r11 + rax*2]
lea eax, [rbx + r8]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mulss xmm1, dword [r10]
addss xmm1, xmm2
cmp eax, r9d
jb 0x140150468
test eax, eax
jns 0x140150455
nop dword [rax]
add eax, r8d
js 0x140150450
cmp eax, r9d
jl 0x140150468
nop word [rax + rax]
sub eax, r8d
cmp eax, r9d
jge 0x140150460
cdqe
movzx 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 0x1401504a8
test eax, eax
jns 0x140150495
nop dword [rax]
add eax, r8d
js 0x140150490
cmp eax, r9d
jl 0x1401504a8
nop word [rax + rax]
sub eax, r8d
cmp eax, r9d
jge 0x1401504a0
cdqe
movzx ecx, word [r11 + rax*2]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 8]
addss xmm1, xmm0
cmp edx, r9d
jb 0x1401504e8
test edx, edx
jns 0x1401504d5
nop dword [rax]
add edx, r8d
js 0x1401504d0
cmp edx, r9d
jl 0x1401504e8
nop word [rax + rax]
sub edx, r8d
cmp edx, r9d
jge 0x1401504e0
movsxd rax, edx
movzx 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 0x140150528
test eax, eax
jns 0x140150515
nop
add eax, r8d
js 0x140150510
cmp eax, r9d
jl 0x140150528
nop word [rax + rax]
sub eax, r8d
cmp eax, r9d
jge 0x140150520
cdqe
movzx 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 0x140150568
test ecx, ecx
jns 0x140150555
add ecx, r8d
js 0x140150550
cmp ecx, r9d
jl 0x140150568
nop word [rax + rax]
sub ecx, r8d
cmp ecx, r9d
jge 0x140150560
movsxd rax, ecx
movzx 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 0x1401505a8
test ecx, ecx
jns 0x140150596
add ecx, r8d
js 0x140150591
cmp ecx, r9d
jl 0x1401505a8
nop dword [rax + rax]
sub ecx, r8d
cmp ecx, r9d
jge 0x1401505a0
movsxd rax, ecx
movzx 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 0x1401505e8
test eax, eax
jns 0x1401505d5
add eax, r8d
js 0x1401505d0
cmp eax, r9d
jl 0x1401505e8
nop word [rax + rax]
sub eax, r8d
cmp eax, r9d
jge 0x1401505e0
cdqe
movzx 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 0x140150400
movsxd rcx, dword [rsp + 0xa0]
mov rdx, qword [rsp + 0x70]
mov eax, dword [rsp + 0x88]
cmp r12d, eax
je 0x140150b77
cmp r15, rcx
jge 0x140150b62
mov rax, rcx
sub rax, r15
cmp rax, 4
jl 0x140150a3a
lea rsi, [r15*4 + 4]
mov rbx, rcx
sub rbx, r15
lea r14d, [r8 + r8]
sub rbx, 4
lea r12d, [r8 + r8*2]
mov rdi, rdx
shr rbx, 2
add rsi, r13
lea ebp, [r8*4]
sub rdi, r13
inc rbx
lea r15, [r15 + rbx*4]
movsxd rdx, dword [rdi + rsi - 4]
mov eax, edx
sub eax, r14d
cdqe
movzx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r12d
cdqe
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movzx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r8d
cdqe
movd xmm0, ecx
mulss xmm1, dword [r10 + 4]
movzx ecx, word [r11 + rax*2]
lea eax, [rdx + r8]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10]
addss xmm1, xmm0
movd xmm0, ecx
movzx 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
movzx 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]
movzx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [r12 + rdx]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movzx 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]
movzx 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
movzx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r12d
cdqe
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movzx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r8d
cdqe
movd xmm0, ecx
mulss xmm1, dword [r10 + 0x24]
movzx 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
movzx ecx, word [r11 + rdx*2]
lea eax, [rdx + r8]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movzx 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]
movzx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [r12 + rdx]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movzx 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]
movzx 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 [rdi + rsi + 4]
mov eax, edx
sub eax, r14d
cdqe
movzx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r12d
cdqe
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movzx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r8d
cdqe
movd xmm0, ecx
mulss xmm1, dword [r10 + 0x44]
movzx ecx, word [r11 + rax*2]
lea eax, [rdx + r8]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x40]
addss xmm1, xmm0
movd xmm0, ecx
movzx 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
movzx 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]
movzx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [r12 + rdx]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movzx 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
movzx 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 [rdi + rsi + 8]
mov eax, edx
sub eax, r14d
cdqe
movzx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r12d
cdqe
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movzx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r8d
cdqe
movd xmm0, ecx
mulss xmm1, dword [r10 + 0x64]
movzx ecx, word [r11 + rax*2]
lea eax, [rdx + r8]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10 + 0x60]
addss xmm1, xmm0
movd xmm0, ecx
movzx 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
movzx 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]
movzx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [r12 + rdx]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movzx 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]
movzx 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 0x140150682
movsxd rcx, dword [rsp + 0xa0]
cmp r15, rcx
jge 0x140150b62
mov rbp, qword [rsp + 0x70]
lea rbx, [r15*4]
mov rdi, rcx
lea esi, [r8 + r8]
add rbx, r13
lea r14d, [r8 + r8*2]
sub rbp, r13
lea r12d, [r8*4]
sub rdi, r15
add r15, rdi
movsxd rdx, dword [rbx + rbp]
mov eax, edx
sub eax, esi
cdqe
movzx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r14d
cdqe
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movzx ecx, word [r11 + rax*2]
mov eax, edx
sub eax, r8d
cdqe
movd xmm0, ecx
mulss xmm1, dword [r10 + 4]
movzx ecx, word [r11 + rax*2]
lea eax, [rdx + r8]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [r10]
addss xmm1, xmm0
movd xmm0, ecx
movzx 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
movzx 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]
movzx eax, word [r11 + rcx*2]
addss xmm1, xmm0
movd xmm0, eax
lea eax, [r14 + rdx]
cvtdq2ps xmm0, xmm0
movsxd rcx, eax
movzx eax, word [r11 + rcx*2]
mulss xmm0, dword [r10 + 0x14]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea eax, [r12 + rdx]
movsxd rcx, eax
mulss xmm0, dword [r10 + 0x18]
movzx 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 0x140150a66
movsxd rcx, dword [rsp + 0xa0]
mov r12d, dword [rsp + 0x88]
mov eax, r12d
mov rdx, qword [rsp + 0x70]
jmp 0x1401503d2
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 0x1401503c0
mov r15, qword [rsp + 0x10]
mov r14, qword [rsp + 0x18]
mov r13, qword [rsp + 0x20]
mov r12, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x50]
add rsp, 0x40
pop rbx
ret