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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x398
movaps xmmword [rsp + 0x380], xmm15
movaps xmmword [rsp + 0x370], xmm14
movaps xmmword [rsp + 0x360], xmm13
movaps xmmword [rsp + 0x350], xmm12
movaps xmmword [rsp + 0x340], xmm11
movaps xmmword [rsp + 0x330], xmm10
movaps xmmword [rsp + 0x320], xmm9
movaps xmmword [rsp + 0x310], xmm8
movaps xmmword [rsp + 0x300], xmm7
movaps xmmword [rsp + 0x2f0], xmm6
mov r14, r8
mov r13, rdx
mov rax, rcx
lea rsi, [rdx + 0x48]
lea rdi, [rsp + 0x230]
mov ecx, 0xc
rep movsq qword [rdi], qword [rsi]
lea r15, [rdx + 0xa8]
lea rdi, [rsp + 0x290]
mov ecx, 0xc
mov rsi, r15
rep movsq qword [rdi], qword [rsi]
mov sil, byte [rdx + 0x139]
mov r11d, dword [rdx + 0x130]
mov edx, dword [rdx + 0x134]
mov r9d, dword [r13 + 0x110]
mov r8, qword [r13 + 0x114]
movzx ebx, word [r13 + 0x135]
movzx ebp, byte [r13 + 0x137]
mov r12b, byte [r13 + 0x138]
mov dil, byte [r13 + 0x13a]
movss xmm8, dword [r13 + 0x108]
movss xmm7, dword [r13 + 0x10c]
mov r10d, dword [r13 + 0x11c]
mov rcx, qword [r13]
mov qword [rsp + 0x38], rcx
mov rcx, qword [r13 + 8]
movups xmm0, xmmword [r13 + 0x10]
movaps xmmword [rsp + 0xb0], xmm0
cmp dil, 2
mov qword [rsp + 0x98], rax
jne 0x140051b01
mov rdi, qword [r14 + 0x140]
mov rax, r15
mov r15, r14
mov r14d, esi
mov esi, ebp
mov ebp, ebx
mov ebx, r12d
mov r12b, byte [rdi + 0x223]
mov byte [rsp + 0x32], r12b
mov r12d, ebx
mov ebx, ebp
mov ebp, esi
mov esi, r14d
mov r14, r15
mov r15, rax
jmp 0x140051b0d
mov byte [rsp + 0x32], dil
mov rdi, qword [r14 + 0x140]
movss xmm13, dword [rdi + 0x78]
test r12b, r12b
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x78], r8
mov dword [rsp + 0x48], r9d
mov dword [rsp + 0x44], r10d
mov qword [rsp + 0x88], r11
mov byte [rsp + 0x33], r12b
je 0x140051b49
xorps xmm6, xmm6
jmp 0x140051b4e
movss xmm6, dword [rdi + 0x7c]
movss xmm11, dword [r13 + 0x20]
movss xmm12, dword [r13 + 0x24]
mov r12d, dword [r13 + 0x28]
movss xmm14, dword [r13 + 0x2c]
movss xmm15, dword [r13 + 0x30]
movss xmm0, dword [r13 + 0x34]
movss dword [rsp + 0x64], xmm0
movss xmm0, dword [r13 + 0x38]
movss dword [rsp + 0x68], xmm0
mov eax, dword [r13 + 0x3c]
mov dword [rsp + 0x6c], eax
mov eax, dword [r13 + 0x40]
mov dword [rsp + 0x70], eax
mov rcx, r14
call fcn.14004fff5
movaps xmm10, xmm0
movaps xmm9, xmm13
addss xmm9, xmm13
subss xmm10, xmm9
cmp qword [rsp + 0x38], 2
je 0x140051bc6
movss xmm0, dword [rdi + 0xb0]
addss xmm0, xmm11
subss xmm10, xmm0
lea rdi, [rsp + 0x290]
mov rcx, rdi
call fcn.14004ffb8
test al, al
mov dword [rsp + 0x74], r12d
jne 0x140051be8
addss xmm10, dword [0x1402243e8]
lea rax, [rsp + 0x140]
mov qword [rax], 3
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x230]
mov rdx, r14
mov r8d, esi
movaps xmm3, xmm10
call fcn.1400500be
mov r12, rax
mov qword [rsp + 0x50], rax
mov byte [rsp + 0x58], dl
mov rcx, rdi
call fcn.14004ffb8
lea rdx, [rsp + 0x140]
mov ecx, 0xc
mov rdi, rdx
mov rsi, r15
rep movsq qword [rdi], qword [rsi]
mov qword [rdx + 0x60], r14
test al, al
movss dword [rsp + 0x34], xmm11
je 0x140051c5e
lea rcx, [rsp + 0x140]
call fcn.14005027f
mov r15b, 2
jmp 0x140051ca8
lea rax, [rsp + 0xc0]
mov ecx, 0xc
mov rdi, rax
mov rsi, r15
rep movsq qword [rdi], qword [rsi]
lea rcx, [rsp + 0x1d8]
mov qword [rcx], 3
mov qword [rsp + 0x20], rcx
movss xmm3, dword [0x1402240c0]
mov rcx, rax
mov rdx, r14
xor r8d, r8d
call fcn.1400500be
mov rsi, rax
mov r15d, edx
and r15b, 1
mov qword [rsp + 0xa0], rsi
mov byte [rsp + 0xa8], r15b
add r12, 0x10
mov rcx, r12
call fcn.14006f9bb
movaps xmm10, xmm0
movaps xmm11, xmm1
cmp qword [rsp + 0x38], 2
je 0x140051cff
mov rax, qword [r14 + 0x140]
movss xmm0, dword [rax + 0xb0]
addss xmm0, dword [rsp + 0x34]
addss xmm10, xmm0
movaps xmm0, xmm11
movaps xmm1, xmm12
call fcn.1401faeb8
movaps xmm11, xmm0
mov dil, byte [rsp + 0x33]
shl ebp, 0x10
cmp r15b, 2
sete al
movss dword [rsp + 0x4c], xmm12
mov byte [rsp + 0x31], al
je 0x140051d48
mov rax, qword [r14 + 0x140]
movss xmm12, dword [rax + 0x60]
lea rcx, [rsi + 0x10]
call fcn.14006f9bb
addss xmm0, xmm12
addss xmm10, xmm0
movaps xmm0, xmm11
call fcn.1401faeb8
movaps xmm11, xmm0
or ebx, ebp
movaps xmm12, xmm6
addss xmm12, xmm6
addss xmm12, xmm11
addss xmm9, xmm10
mov rbp, rsi
test dil, dil
jne 0x140051d81
mov rax, qword [r14 + 0x140]
movss xmm1, dword [rax + 0x98]
movaps xmm0, xmm12
call fcn.1401faeb8
movaps xmm12, xmm0
movaps xmm0, xmm9
movaps xmm1, xmm8
call fcn.1401faeb8
movaps xmm8, xmm0
movaps xmm0, xmm12
movaps xmm1, xmm7
call fcn.1401faeb8
mov dword [rsp + 0x20], ebx
lea rsi, [rsp + 0x140]
mov rcx, rsi
mov rdx, r14
movaps xmm2, xmm8
movaps xmm3, xmm0
call fcn.140046bc6
movss xmm10, dword [rsi + 0x20]
movss xmm9, dword [rsi + 0x24]
movss xmm7, dword [rsi + 0x28]
movss xmm11, dword [rsi + 0x2c]
lea rax, [rsp + 0x1d8]
mov ecx, 0xb
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
cmp byte [rax + 0x42], 0
je 0x140051e0b
lea rsi, [rsp + 0xc8]
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140052450
and qword [rsi - 8], 0
jmp 0x140051ebf
cmp byte [rsp + 0x21f], 0
je 0x140051e37
lea rsi, [rsp + 0xc8]
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140052450
mov qword [rsi - 8], 1
jmp 0x140051ebf
cmp byte [rsp + 0x224], 0
je 0x140051e60
lea rsi, [rsp + 0xc8]
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140052450
mov qword [rsi - 8], 2
jmp 0x140051ebf
mov rcx, qword [rsp + 0x1e8]
mov rdx, qword [rsp + 0x1f0]
call fcn.1400469c4
test al, al
je 0x140051e98
lea rsi, [rsp + 0xc8]
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140052450
mov qword [rsi - 8], 3
jmp 0x140051ebf
cmp byte [rsp + 0x22c], 0
je 0x140051ee7
lea rsi, [rsp + 0xc8]
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140052450
mov qword [rsi - 8], 5
lea rdx, [rsp + 0x140]
lea rsi, [rsp + 0xc0]
mov ecx, 0x10
mov rdi, rdx
rep movsq qword [rdi], qword [rsi]
mov rcx, qword [rsp + 0x1e8]
call fcn.140046a19
lea rsi, [rsp + 0x140]
movss dword [rsi], xmm10
movss dword [rsi + 4], xmm9
movss dword [rsi + 8], xmm7
movss dword [rsi + 0xc], xmm11
mov rcx, r14
mov rdx, rsi
call fcn.14004ed11
mov r12d, eax
mov al, 1
test r12b, r12b
je 0x1400523a6
mov ecx, 0x108
add rcx, qword [r14 + 0x140]
lea rdx, [rsp + 0x1d8]
call fcn.140046595
mov rdi, rax
cmp byte [rsp + 0x32], 0
je 0x140051fe0
mov rax, qword [rsp + 0x90]
shl rax, 0x20
add rax, qword [rsp + 0x88]
test al, 1
jne 0x140051f62
mov eax, dword [rdi + 0x24]
jmp 0x140051f66
shr rax, 8
mov r8, qword [rsp + 0x78]
mov ecx, dword [rsp + 0x48]
mov edx, dword [rsp + 0x44]
add r13, 0x120
test ecx, ecx
jne 0x140051f82
mov r8, qword [rdi + 0x10]
test edx, edx
cmove r13, rdi
movups xmm0, xmmword [r13]
lea rdx, [rsp + 0x140]
movups xmmword [rdx + 0x10], xmm0
lea rcx, [r14 + 0x110]
movss xmm0, dword [rdi + 0x28]
movaps xmm1, xmm10
subss xmm1, xmm0
movaps xmm2, xmm9
subss xmm2, xmm0
movaps xmm3, xmm7
addss xmm3, xmm0
addss xmm0, xmm11
movss dword [rdx], xmm1
movss dword [rdx + 4], xmm2
movss dword [rdx + 8], xmm3
movss dword [rdx + 0xc], xmm0
mov dword [rdx + 0x28], eax
mov qword [rdx + 0x20], r8
call fcn.1400487f3
cmp qword [rsp + 0x38], 2
jne 0x140052070
lea rbx, [r14 + 0x108]
mov r13, qword [rsp + 0x50]
lea rcx, [r13 + 0x10]
call fcn.14006f9bb
movaps xmm2, xmm10
addss xmm2, xmm13
movaps xmm3, xmm9
addss xmm3, xmm6
movaps xmm4, xmm7
subss xmm4, xmm13
movaps xmm5, xmm11
subss xmm5, xmm6
movss dword [rsp + 0x140], xmm2
movss dword [rsp + 0x144], xmm3
movss dword [rsp + 0x148], xmm4
movss dword [rsp + 0x14c], xmm5
mov qword [rsp + 0x20], rsi
lea rsi, [rsp + 0xc0]
mov rcx, rsi
mov rdx, rbx
movaps xmm2, xmm0
movaps xmm3, xmm1
call fcn.140046c3b
movss xmm8, dword [rsi]
movss xmm6, dword [rsi + 4]
jmp 0x1400520be
mov rax, qword [r14 + 0x140]
movaps xmm8, xmm13
addss xmm8, xmm10
addss xmm8, dword [rsp + 0x34]
addss xmm8, dword [rax + 0xb0]
movaps xmm6, xmm9
addss xmm6, xmm11
movss xmm12, dword [0x1402240c8]
mulss xmm6, xmm12
mov r13, qword [rsp + 0x50]
lea rcx, [r13 + 0x10]
call fcn.14006f9bb
mulss xmm1, xmm12
subss xmm6, xmm1
movss xmm12, dword [rsp + 0x4c]
mov dl, byte [rsp + 0x58]
lea rsi, [r14 + 0x110]
mov eax, dword [rdi + 0x1c]
mov dword [rsp + 0x28], eax
movss dword [rsp + 0x20], xmm6
mov rcx, r13
mov r8, rsi
movaps xmm3, xmm8
call fcn.1400502f2
cmp r15b, 2
je 0x140052155
subss xmm7, xmm13
mov rdi, rbp
lea rcx, [rbp + 0x10]
call fcn.14006f9bb
subss xmm7, xmm0
movaps xmm6, xmm9
addss xmm6, xmm11
movss xmm0, dword [0x1402240c8]
mulss xmm6, xmm0
mulss xmm1, xmm0
subss xmm6, xmm1
test r15b, r15b
setne bl
mov ecx, 0xd0
add rcx, qword [r14 + 0x140]
call fcn.14005078e
mov dword [rsp + 0x28], eax
movss dword [rsp + 0x20], xmm6
mov rcx, rbp
mov edx, ebx
mov r8, rsi
movaps xmm3, xmm7
call fcn.1400502f2
cmp qword [rsp + 0x38], 2
je 0x1400523a2
addss xmm13, xmm10
addss xmm9, xmm11
mulss xmm9, dword [0x1402240c8]
movss xmm6, dword [0x1402242a0]
addss xmm9, xmm6
mulss xmm6, xmm12
addss xmm6, xmm9
movaps xmm7, xmm13
movss xmm9, dword [rsp + 0x34]
addss xmm7, xmm9
movaps xmm8, xmm12
addss xmm8, xmm6
lea rdx, [rsp + 0x140]
movss dword [rdx], xmm13
movss dword [rdx + 4], xmm6
movss dword [rdx + 8], xmm7
movss dword [rdx + 0xc], xmm8
mov rcx, r14
call fcn.14004ed11
test al, al
je 0x1400523a2
mov r9d, dword [rsp + 0x6c]
test r9d, r9d
je 0x140052264
mov eax, 4
lea rdi, [rsp + 0xc0]
mov qword [rdi + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rdi + 0x18], xmm0
mov qword [rdi + 0x28], rax
movaps xmmword [rdi + 0x30], xmm0
movaps xmmword [rdi], xmm0
lea rbx, [rsp + 0x140]
movss dword [rbx], xmm13
movss dword [rbx + 4], xmm6
movss dword [rbx + 8], xmm7
movss dword [rbx + 0xc], xmm8
lea r8, [rsp + 0x1c0]
movaps xmmword [r8], xmm0
mov rcx, rdi
mov rdx, rbx
call fcn.140064202
movaps xmm0, xmmword [rdi]
movaps xmm1, xmmword [rdi + 0x10]
movaps xmm2, xmmword [rdi + 0x20]
movaps xmm3, xmmword [rdi + 0x30]
movaps xmmword [rbx + 0x30], xmm3
movaps xmmword [rbx + 0x20], xmm2
movaps xmmword [rbx + 0x10], xmm1
movaps xmmword [rbx], xmm0
lea rdx, [rsp + 0x140]
mov rcx, rsi
call fcn.1400465e5
xorps xmm0, xmm0
lea rcx, [rsp + 0xc0]
movups xmmword [rcx + 0x18], xmm0
movups xmmword [rcx + 0x30], xmm0
mov eax, 4
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x28], rax
mov rax, qword [rsp + 0x38]
mov qword [rcx], rax
mov rax, qword [rsp + 0x80]
mov qword [rcx + 8], rax
movaps xmm0, xmmword [rsp + 0xb0]
lea r8, [rsp + 0x1c0]
movaps xmmword [r8], xmm0
lea rdx, [rsp + 0x140]
movss dword [rdx], xmm13
movss dword [rdx + 4], xmm6
movss dword [rdx + 8], xmm7
movss dword [rdx + 0xc], xmm8
mov r9d, dword [rsp + 0x70]
call fcn.140064202
cmp dword [rsp + 0x74], 0
je 0x140052363
movss xmm1, dword [rsp + 0x64]
mulss xmm1, xmm9
movss xmm0, dword [rsp + 0x68]
mulss xmm0, xmm12
addss xmm13, xmm1
addss xmm6, xmm0
mov rcx, qword [rsp + 0xe8]
imul rax, qword [rsp + 0xf8], 0x14
test rax, rax
je 0x140052363
movss xmm0, dword [rcx]
movss xmm1, dword [rcx + 4]
subss xmm0, xmm13
subss xmm1, xmm6
movaps xmm2, xmm15
mulss xmm2, xmm0
movaps xmm3, xmm14
mulss xmm3, xmm1
subss xmm2, xmm3
mulss xmm0, xmm14
mulss xmm1, xmm15
addss xmm1, xmm0
addss xmm2, xmm13
addss xmm1, xmm6
movss dword [rcx], xmm2
movss dword [rcx + 4], xmm1
add rcx, 0x14
add rax, 0xffffffffffffffec
jmp 0x14005230e
movups xmm0, xmmword [rsp + 0xc0]
movups xmm1, xmmword [rsp + 0xd0]
movups xmm2, xmmword [rsp + 0xe0]
movups xmm3, xmmword [rsp + 0xf0]
lea rdx, [rsp + 0x140]
movaps xmmword [rdx + 0x30], xmm3
movaps xmmword [rdx + 0x20], xmm2
movaps xmmword [rdx + 0x10], xmm1
movaps xmmword [rdx], xmm0
mov rcx, rsi
call fcn.1400465e5
mov al, byte [rsp + 0x31]
lea rsi, [rsp + 0x1d8]
mov ecx, 0xb
mov rdi, qword [rsp + 0x98]
rep movsq qword [rdi], qword [rsi]
test al, al
je 0x1400523d5
cmp r15b, 2
je 0x1400523d5
lea rcx, [rsp + 0xa0]
call fcn.140061324
test r12b, r12b
jne 0x1400523e4
lea rcx, [rsp + 0x50]
call fcn.140061324
movaps xmm6, xmmword [rsp + 0x2f0]
movaps xmm7, xmmword [rsp + 0x300]
movaps xmm8, xmmword [rsp + 0x310]
movaps xmm9, xmmword [rsp + 0x320]
movaps xmm10, xmmword [rsp + 0x330]
movaps xmm11, xmmword [rsp + 0x340]
movaps xmm12, xmmword [rsp + 0x350]
movaps xmm13, xmmword [rsp + 0x360]
movaps xmm14, xmmword [rsp + 0x370]
movaps xmm15, xmmword [rsp + 0x380]
add rsp, 0x398
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret