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

Disassembly:
mov qword [rsp + 0x10], rdx
push rsi
push rdi
sub rsp, 0x98
mov r8, qword [rcx + 8]
mov r10, qword [rcx + 0x78]
mov r11, rdx
mov rdi, qword [r8 + 0x20]
mov r9, rcx
mov qword [rsp + 0x38], r8
movsxd rsi, dword [rdi + 0x1668]
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x58], rdi
test rdx, rdx
jne 0x14030449a
mov eax, 0xffffff7d
add rsp, 0x98
pop rdi
pop rsi
ret
mov eax, dword [rcx + 0x28]
cmp dword [rcx + 0x24], eax
jle 0x1403044a7
cmp eax, 0xffffffff
jne 0x14030448b
mov eax, dword [rcx + 0x38]
mov qword [rsp + 0x88], rbp
mov dword [rcx + 0x34], eax
mov eax, dword [rdx + 0x2c]
mov dword [rcx + 0x3c], 0xffffffff
mov dword [rcx + 0x38], eax
mov rax, qword [rcx + 0x50]
cmp rax, 0xffffffffffffffff
je 0x1403044d5
inc rax
cmp rax, qword [rdx + 0x48]
je 0x1403044e8
mov qword [rcx + 0x48], 0xffffffffffffffff
mov qword [r10 + 0xc8], 0xffffffffffffffff
mov rax, qword [rdx + 0x48]
xor ebp, ebp
mov qword [rcx + 0x50], rax
cmp qword [rdx], rbp
je 0x140304daf
movsxd rax, dword [r9 + 0x38]
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x80], r12
mov edx, dword [rdi + rax*4]
movsxd rax, dword [r11 + 0x78]
mov r12d, dword [rdi]
lea ecx, [rsi + 1]
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x68], r15
mov r15d, dword [rdi + 4]
add qword [r9 + 0x58], rax
movsxd rax, dword [r11 + 0x7c]
sar r12d, cl
sar r15d, cl
add qword [r9 + 0x60], rax
movsxd rax, dword [r11 + 0x80]
sar edx, cl
add qword [r9 + 0x68], rax
movsxd rax, dword [r11 + 0x84]
mov dword [rsp + 0xc8], r12d
add qword [r9 + 0x70], rax
mov dword [rsp + 0xb0], r15d
cmp dword [r9 + 0x40], ebp
je 0x14030457e
mov eax, r15d
mov ebx, ebp
mov dword [rsp + 0x14], eax
mov dword [rsp + 0x10], ebx
jmp 0x14030458b
mov eax, ebp
mov ebx, r15d
mov dword [rsp + 0x14], eax
mov dword [rsp + 0x10], ebx
cmp dword [r8 + 4], 0
mov dword [rsp + 0xc0], ebp
movsxd rbp, edx
movsxd rdx, eax
mov rcx, rsi
movsxd r14, r15d
movsxd rbx, ebx
movsxd r13, r12d
mov qword [rsp], rbp
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x28], r13
jle 0x140304d33
xor edi, edi
lea rdx, [0x1403335d0]
mov rsi, rdi
mov qword [rsp + 8], rdi
jmp 0x1403045e2
xor edi, edi
cmp dword [r9 + 0x34], 0
je 0x140304899
cmp dword [r9 + 0x38], 0
je 0x140304739
movsxd rax, dword [r10 + 0xc]
sub rax, rcx
cmp r14, 4
mov r10, qword [rdx + rax*8]
mov rax, qword [r9 + 0x10]
mov rcx, qword [rsi + rax]
mov rax, qword [r11]
mov r11, qword [rsi + rax]
lea rbp, [rcx + rbx*4]
mov rbx, rdi
jl 0x1403046dd
mov rsi, r10
mov rdi, r11
lea r12, [r14 - 3]
sub rsi, rbp
lea rdx, [r10 + 8]
lea rcx, [rbp + 4]
sub rdi, r10
lea r8, [r10 + r14*4 - 8]
movss xmm1, dword [r11 + rbx*4]
movss xmm0, dword [r8 + 4]
lea rax, [rsi + rcx]
add rbx, 4
add rcx, 0x10
add rdx, 0x10
sub r8, 0x10
cmp rbx, r12
mulss xmm1, dword [rdx - 0x18]
mulss xmm0, dword [rcx - 0x14]
addss xmm1, xmm0
movss dword [rcx - 0x14], xmm1
movss xmm0, dword [r8 + 0x10]
movss xmm2, dword [rax + rdi]
mulss xmm2, dword [rax]
mulss xmm0, dword [rcx - 0x10]
addss xmm2, xmm0
movss dword [rcx - 0x10], xmm2
movss xmm1, dword [rdi + rdx - 0x10]
movss xmm0, dword [r8 + 0xc]
mulss xmm0, dword [rcx - 0xc]
mulss xmm1, dword [rdx - 0x10]
addss xmm1, xmm0
movss dword [rcx - 0xc], xmm1
movss xmm2, dword [r11 + rbx*4 - 4]
movss xmm0, dword [r8 + 8]
mulss xmm2, dword [rdx - 0xc]
mulss xmm0, dword [rcx - 8]
addss xmm2, xmm0
movss dword [rcx - 8], xmm2
jl 0x140304640
mov rsi, qword [rsp + 8]
cmp rbx, r14
jge 0x140304c2e
sub r11, r10
mov rax, r14
mov r8, r14
sub rax, rbx
lea rcx, [rbp + rbx*4]
lea rdx, [r10 + rax*4 - 4]
sub r10, rbp
sub r8, rbx
movss xmm0, dword [rdx]
lea rax, [r10 + rcx]
sub rdx, 4
add rcx, 4
sub r8, 1
mulss xmm0, dword [rcx - 4]
movss xmm1, dword [r11 + rax]
mulss xmm1, dword [rax]
addss xmm1, xmm0
movss dword [rcx - 4], xmm1
jne 0x140304702
mov rbp, qword [rsp]
jmp 0x140304c3e
movsxd rax, dword [r10 + 8]
sub rax, rcx
mov r10, qword [rdx + rax*8]
mov eax, r15d
cdq
sub eax, edx
sar eax, 1
movsxd r8, eax
mov eax, r12d
cdq
sub eax, edx
sar eax, 1
movsxd rcx, eax
mov rax, qword [r9 + 0x10]
sub r8, rcx
mov rcx, qword [rsi + rax]
mov rax, qword [r11]
mov r11, qword [rsi + rax]
add r8, rbx
cmp r13, 4
lea rbp, [rcx + r8*4]
mov rbx, rdi
jl 0x14030483d
mov rsi, r10
mov rdi, r11
lea r12, [r13 - 3]
sub rsi, rbp
lea rdx, [r10 + 8]
lea rcx, [rbp + 4]
sub rdi, r10
lea r8, [r10 + r13*4 - 8]
nop dword [rax]
movss xmm1, dword [r11 + rbx*4]
movss xmm0, dword [r8 + 4]
lea rax, [rsi + rcx]
add rbx, 4
add rcx, 0x10
add rdx, 0x10
sub r8, 0x10
cmp rbx, r12
mulss xmm1, dword [rdx - 0x18]
mulss xmm0, dword [rcx - 0x14]
addss xmm1, xmm0
movss dword [rcx - 0x14], xmm1
movss xmm0, dword [r8 + 0x10]
movss xmm2, dword [rax + rdi]
mulss xmm2, dword [rax]
mulss xmm0, dword [rcx - 0x10]
addss xmm2, xmm0
movss dword [rcx - 0x10], xmm2
movss xmm1, dword [rdi + rdx - 0x10]
movss xmm0, dword [r8 + 0xc]
mulss xmm0, dword [rcx - 0xc]
mulss xmm1, dword [rdx - 0x10]
addss xmm1, xmm0
movss dword [rcx - 0xc], xmm1
movss xmm2, dword [r11 + rbx*4 - 4]
movss xmm0, dword [r8 + 8]
mulss xmm2, dword [rdx - 0xc]
mulss xmm0, dword [rcx - 8]
addss xmm2, xmm0
movss dword [rcx - 8], xmm2
jl 0x1403047a0
mov rsi, qword [rsp + 8]
cmp rbx, r13
jge 0x140304c34
sub r11, r10
mov rax, r13
mov r8, r13
sub rax, rbx
lea rcx, [rbp + rbx*4]
lea rdx, [r10 + rax*4 - 4]
sub r10, rbp
sub r8, rbx
movss xmm0, dword [rcx]
lea rax, [rcx + r10]
sub rdx, 4
add rcx, 4
sub r8, 1
mulss xmm0, dword [rdx + 4]
movss xmm1, dword [r11 + rax]
mulss xmm1, dword [rax]
addss xmm1, xmm0
movss dword [rcx - 4], xmm1
jne 0x140304862
mov rbp, qword [rsp]
jmp 0x140304c3e
cmp dword [r9 + 0x38], 0
je 0x140304ac6
movsxd rax, dword [r10 + 8]
sub rax, rcx
mov r10, qword [rdx + rax*8]
mov rax, qword [r9 + 0x10]
mov rcx, qword [rsi + rax]
mov eax, r15d
cdq
lea r12, [rcx + rbx*4]
mov rbx, rdi
sub eax, edx
sar eax, 1
movsxd r14, eax
mov eax, dword [rsp + 0xc8]
cdq
sub eax, edx
mov rdx, r14
sar eax, 1
movsxd r15, eax
mov rax, qword [r11]
mov rcx, qword [rsi + rax]
sub rdx, r15
cmp r13, 4
lea r11, [rcx + rdx*4]
mov esi, edi
jl 0x1403049cd
mov rax, qword [rsp + 0x28]
add r13, 0xfffffffffffffffd
mov r8, r10
lea rbp, [r10 + rax*4 - 8]
lea rax, [r13 - 1]
mov rdx, r11
sub r8, r12
sub rdx, r10
shr rax, 2
lea rdi, [r10 + 8]
lea rcx, [r12 + 4]
lea esi, [rax*4 + 4]
nop word [rax + rax]
movss xmm1, dword [r11 + rbx*4]
movss xmm0, dword [rbp + 4]
lea rax, [r8 + rcx]
add rbx, 4
add rcx, 0x10
add rdi, 0x10
sub rbp, 0x10
cmp rbx, r13
mulss xmm1, dword [rdi - 0x18]
mulss xmm0, dword [rcx - 0x14]
addss xmm1, xmm0
movss dword [rcx - 0x14], xmm1
movss xmm0, dword [rbp + 0x10]
movss xmm2, dword [rax + rdx]
mulss xmm2, dword [rax]
mulss xmm0, dword [rcx - 0x10]
addss xmm2, xmm0
movss dword [rcx - 0x10], xmm2
movss xmm1, dword [rdx + rdi - 0x10]
movss xmm0, dword [rbp + 0xc]
mulss xmm0, dword [rcx - 0xc]
mulss xmm1, dword [rdi - 0x10]
addss xmm1, xmm0
movss dword [rcx - 0xc], xmm1
movss xmm2, dword [r11 + rbx*4 - 4]
movss xmm0, dword [rbp + 8]
mulss xmm2, dword [rdi - 0xc]
mulss xmm0, dword [rcx - 8]
addss xmm2, xmm0
movss dword [rcx - 8], xmm2
jl 0x140304930
mov r13, qword [rsp + 0x28]
mov rbp, qword [rsp]
cmp rbx, r13
jge 0x140304a23
mov rax, r13
mov r8, r13
mov rdi, r11
sub rax, rbx
sub r8, rbx
sub rdi, r10
lea rdx, [r10 + rax*4 - 4]
sub r10, r12
lea rcx, [r12 + rbx*4]
add esi, r8d
add rbx, r8
movss xmm0, dword [rdx]
lea rax, [r10 + rcx]
sub rdx, 4
add rcx, 4
sub r8, 1
mulss xmm0, dword [rcx - 4]
movss xmm1, dword [rdi + rax]
mulss xmm1, dword [rax]
addss xmm1, xmm0
movss dword [rcx - 4], xmm1
jne 0x1403049f6
lea r10d, [r15 + r14]
cmp esi, r10d
jge 0x140304c1a
mov eax, r10d
sub eax, esi
cmp eax, 4
jl 0x140304a88
mov eax, r10d
mov rdi, r11
lea rdx, [r11 + rbx*4 + 0xc]
sub eax, esi
sub rdi, r12
lea rcx, [r12 + rbx*4 + 4]
sub eax, 4
shr eax, 2
inc eax
mov r8d, eax
lea esi, [rsi + rax*4]
lea rbx, [rbx + rax*4]
mov eax, dword [rdx - 0xc]
add rcx, 0x10
add rdx, 0x10
sub r8, 1
mov dword [rcx - 0x14], eax
mov eax, dword [rdi + rcx - 0x10]
mov dword [rcx - 0x10], eax
mov eax, dword [rdx - 0x14]
mov dword [rcx - 0xc], eax
mov eax, dword [rdx - 0x10]
mov dword [rcx - 8], eax
jne 0x140304a61
cmp esi, r10d
jge 0x140304c06
sub r11, r12
sub r10d, esi
lea rcx, [r12 + rbx*4]
movsxd rdx, r10d
mov eax, dword [rcx + r11]
add rcx, 4
sub rdx, 1
mov dword [rcx - 4], eax
jne 0x140304a9e
mov rsi, qword [rsp + 8]
mov r14, qword [rsp + 0x20]
mov r15d, dword [rsp + 0xb0]
jmp 0x140304c3e
movsxd rax, dword [r10 + 8]
sub rax, rcx
cmp r13, 4
mov r10, qword [rdx + rax*8]
mov rax, qword [r9 + 0x10]
mov rcx, qword [rsi + rax]
mov rax, qword [r11]
mov r11, qword [rsi + rax]
lea rbp, [rcx + rbx*4]
mov rbx, rdi
jl 0x140304bad
mov rsi, r10
mov rdi, r11
lea r12, [r13 - 3]
sub rsi, rbp
lea rdx, [r10 + 8]
lea rcx, [rbp + 4]
sub rdi, r10
lea r8, [r10 + r13*4 - 8]
nop
movss xmm1, dword [r11 + rbx*4]
movss xmm0, dword [r8 + 4]
lea rax, [rsi + rcx]
add rbx, 4
add rcx, 0x10
add rdx, 0x10
sub r8, 0x10
cmp rbx, r12
mulss xmm1, dword [rdx - 0x18]
mulss xmm0, dword [rcx - 0x14]
addss xmm1, xmm0
movss dword [rcx - 0x14], xmm1
movss xmm0, dword [r8 + 0x10]
movss xmm2, dword [rax + rdi]
mulss xmm2, dword [rax]
mulss xmm0, dword [rcx - 0x10]
addss xmm2, xmm0
movss dword [rcx - 0x10], xmm2
movss xmm1, dword [rdi + rdx - 0x10]
movss xmm0, dword [r8 + 0xc]
mulss xmm0, dword [rcx - 0xc]
mulss xmm1, dword [rdx - 0x10]
addss xmm1, xmm0
movss dword [rcx - 0xc], xmm1
movss xmm2, dword [r11 + rbx*4 - 4]
movss xmm0, dword [r8 + 8]
mulss xmm2, dword [rdx - 0xc]
mulss xmm0, dword [rcx - 8]
addss xmm2, xmm0
movss dword [rcx - 8], xmm2
jl 0x140304b10
mov rsi, qword [rsp + 8]
cmp rbx, r13
jge 0x140304c3a
sub r11, r10
mov rax, r13
mov r8, r13
sub rax, rbx
lea rcx, [rbp + rbx*4]
lea rdx, [r10 + rax*4 - 4]
sub r10, rbp
sub r8, rbx
movss xmm0, dword [rcx]
lea rax, [rcx + r10]
sub rdx, 4
add rcx, 4
sub r8, 1
mulss xmm0, dword [rdx + 4]
movss xmm1, dword [r11 + rax]
mulss xmm1, dword [rax]
addss xmm1, xmm0
movss dword [rcx - 4], xmm1
jne 0x140304bd2
mov rbp, qword [rsp]
jmp 0x140304c3e
mov rsi, qword [rsp + 8]
mov r14, qword [rsp + 0x20]
mov r15d, dword [rsp + 0xb0]
jmp 0x140304c3e
mov rsi, qword [rsp + 8]
mov r14, qword [rsp + 0x20]
mov r15d, dword [rsp + 0xb0]
jmp 0x140304c3e
mov rbp, qword [rsp]
jmp 0x140304c3e
mov rbp, qword [rsp]
jmp 0x140304c3e
mov rbp, qword [rsp]
mov rax, qword [r9 + 0x10]
mov r11, qword [rsp + 0xb8]
xor ebx, ebx
cmp rbp, 4
mov rcx, qword [rsi + rax]
mov rax, qword [rsp + 0x50]
lea rdi, [rcx + rax*4]
mov rax, qword [r11]
mov rcx, qword [rsi + rax]
lea r10, [rcx + rbp*4]
jl 0x140304cc0
lea r8, [rbp - 4]
mov r11, r10
lea rdx, [r10 + 0xc]
shr r8, 2
sub r11, rdi
lea rcx, [rdi + 4]
inc r8
lea rbx, [r8*4]
nop dword [rax + rax]
mov eax, dword [rdx - 0xc]
add rcx, 0x10
add rdx, 0x10
sub r8, 1
mov dword [rcx - 0x14], eax
mov eax, dword [r11 + rcx - 0x10]
mov dword [rcx - 0x10], eax
mov eax, dword [rdx - 0x14]
mov dword [rcx - 0xc], eax
mov eax, dword [rdx - 0x10]
mov dword [rcx - 8], eax
jne 0x140304c90
mov r11, qword [rsp + 0xb8]
cmp rbx, rbp
jge 0x140304ce3
mov rdx, rbp
sub r10, rdi
lea rcx, [rdi + rbx*4]
sub rdx, rbx
mov eax, dword [rcx + r10]
add rcx, 4
sub rdx, 1
mov dword [rcx - 4], eax
jne 0x140304cd2
mov eax, dword [rsp + 0xc0]
mov rcx, qword [rsp + 0x38]
mov r10, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x48]
mov r12d, dword [rsp + 0xc8]
inc eax
add rsi, 8
cmp eax, dword [rcx + 4]
mov rcx, qword [rsp + 0x40]
mov dword [rsp + 0xc0], eax
mov qword [rsp + 8], rsi
lea rdx, [0x1403335d0]
jl 0x1403045e0
mov rdi, qword [rsp + 0x58]
mov eax, dword [rsp + 0x14]
mov esi, ecx
cmp dword [r9 + 0x40], 0
mov r14, qword [rsp + 0x70]
mov r13, qword [rsp + 0x78]
mov r12, qword [rsp + 0x80]
mov ebp, 0
cmovne r15d, ebp
cmp dword [r9 + 0x28], 0xffffffff
mov dword [r9 + 0x40], r15d
mov r15, qword [rsp + 0x68]
jne 0x140304d6d
mov dword [r9 + 0x28], eax
mov dword [r9 + 0x24], eax
jmp 0x140304da7
movsxd rax, dword [r9 + 0x38]
mov ebx, dword [rsp + 0x10]
mov ecx, esi
mov dword [r9 + 0x28], ebx
mov eax, dword [rdi + rax*4]
cdq
and edx, 3
lea r8d, [rdx + rax]
movsxd rax, dword [r9 + 0x34]
mov eax, dword [rdi + rax*4]
sar r8d, 2
cdq
and edx, 3
add eax, edx
sar eax, 2
add r8d, eax
sar r8d, cl
add r8d, ebx
mov dword [r9 + 0x24], r8d
mov rbx, qword [rsp + 0x90]
mov r8, qword [r10 + 0xc8]
cmp r8, 0xffffffffffffffff
jne 0x140304dc5
mov qword [r10 + 0xc8], rbp
jmp 0x140304df4
movsxd rax, dword [r9 + 0x38]
mov eax, dword [rdi + rax*4]
cdq
and edx, 3
lea ecx, [rdx + rax]
movsxd rax, dword [r9 + 0x34]
mov eax, dword [rdi + rax*4]
sar ecx, 2
cdq
and edx, 3
add eax, edx
sar eax, 2
add eax, ecx
cdqe
add rax, r8
mov qword [r10 + 0xc8], rax
mov r8, qword [r9 + 0x48]
mov rbp, qword [rsp + 0x88]
cmp r8, 0xffffffffffffffff
jne 0x140304e58
mov rdx, qword [r11 + 0x40]
cmp rdx, r8
je 0x140304eb8
mov qword [r9 + 0x48], rdx
mov rax, qword [r10 + 0xc8]
cmp rax, rdx
jle 0x140304eb8
cmp dword [r11 + 0x3c], 0
je 0x140304e3c
sub rax, rdx
mov ecx, esi
sar rax, cl
sub dword [r9 + 0x24], eax
jmp 0x140304eb8
sub rax, rdx
mov ecx, esi
sar rax, cl
add dword [r9 + 0x28], eax
mov eax, dword [r9 + 0x24]
cmp dword [r9 + 0x28], eax
jle 0x140304eb8
mov dword [r9 + 0x28], eax
jmp 0x140304eb8
movsxd rax, dword [r9 + 0x38]
mov eax, dword [rdi + rax*4]
cdq
and edx, 3
lea ecx, [rdx + rax]
movsxd rax, dword [r9 + 0x34]
mov eax, dword [rdi + rax*4]
sar ecx, 2
cdq
and edx, 3
add eax, edx
sar eax, 2
add ecx, eax
movsxd rcx, ecx
add rcx, r8
mov qword [r9 + 0x48], rcx
mov rax, qword [r11 + 0x40]
cmp rax, 0xffffffffffffffff
je 0x140304eb8
cmp rcx, rax
je 0x140304eb8
cmp rcx, rax
jle 0x140304eb0
mov eax, ecx
sub eax, dword [r11 + 0x40]
je 0x140304eb0
cmp dword [r11 + 0x3c], 0
je 0x140304eb0
mov ecx, esi
sar eax, cl
sub dword [r9 + 0x24], eax
mov rax, qword [r11 + 0x40]
mov qword [r9 + 0x48], rax
cmp dword [r11 + 0x3c], 0
je 0x140304ec7
mov dword [r9 + 0x30], 1
xor eax, eax
add rsp, 0x98
pop rdi
pop rsi
ret