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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x278
movaps xmmword [rsp + 0x250], xmm6
movaps xmmword [rsp + 0x260], xmm7
mov rax, qword [str._fP_]
add rax, 0x40
movq xmm6, rax
mov rax, qword [str._yP_]
movdqa xmm7, xmm6
add rax, 0x10
mov r12, rcx
movq xmm1, rax
mov rcx, qword [rcx + 0x28]
punpcklqdq xmm7, xmm1
cmp qword [r12 + 0x30], rcx
je 0x14001fe28
mov r15, qword [str.xfP_]
mov dword [rsp + 0x3c], 0
mov edi, 0x17
xor edx, edx
mov rax, qword [r15 + 0x18]
mov rbx, qword [r15 + 0x10]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x140]
mov qword [rsp + 0x30], rax
mov rax, qword [0x1404d9a80]
add rax, 0x10
mov qword [rsp + 0x68], rax
movhps xmm6, qword [rsp + 0x68]
jmp 0x14001fbd8
lea rdx, [rsp + 0xa0]
mov r8d, 1
mov rcx, rbp
call fcn.1403bef40
mov rbp, rax
mov rcx, qword [r13 + 0x60]
mov rax, qword [rcx]
call qword [rax + 0x10]
test eax, eax
je 0x14001fde0
mov rdx, qword [r13 + 0x60]
lea rcx, [rsp + 0xa0]
mov rax, qword [rdx]
call qword [rax]
mov r8, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0xa0]
lea r13, [rsp + 0xb0]
mov rcx, rbp
call fcn.1403bef40
mov rcx, qword [rsp + 0xa0]
cmp rcx, r13
je 0x14001fa22
mov rax, qword [rsp + 0xb0]
lea rdx, [rax + 1]
call fcn.1403cd470
mov rcx, qword [rsp + 0x80]
lea rax, [rsp + 0x90]
cmp rcx, rax
je 0x14001fa48
mov rax, qword [rsp + 0x90]
lea rdx, [rax + 1]
call fcn.1403cd470
mov rdx, qword [rsp + 0x100]
mov qword [rsp + 0xa0], r13
lea rcx, [rsp + 0xa0]
mov qword [rsp + 0xa8], 0
mov byte [rsp + 0xb0], 0
test rdx, rdx
je 0x14001fe10
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x14001fdd0
cmp rax, rdx
jb 0x14001fdd0
mov r9, qword [rsp + 0xf8]
xor r8d, r8d
xor edx, edx
sub rax, r9
mov qword [rsp + 0x20], rax
call fcn.140390800
mov eax, dword [rsp + 0xa8]
mov rcx, qword [rsp + 0xa0]
cmp edi, eax
cmovb edi, eax
cmp rcx, r13
je 0x14001fadb
mov rax, qword [rsp + 0xb0]
lea rdx, [rax + 1]
call fcn.1403cd470
mov rax, qword [str._fP_]
mov rcx, qword [rsp + 0x120]
movaps xmmword [rsp + 0xd0], xmm6
add rax, 0x18
mov qword [rsp + 0xc0], rax
mov rax, qword [str._fP_]
add rax, 0x68
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x60]
cmp rcx, rax
je 0x14001fb2c
mov rax, qword [rsp + 0x130]
lea rdx, [rax + 1]
call fcn.1403cd470
mov rax, qword [str._yP_]
mov rcx, qword [rsp + 0x58]
add rax, 0x10
mov qword [rsp + 0xd8], rax
call fcn.140387100
mov rax, qword [r14 - 0x18]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x30]
mov qword [rsp + rax + 0xc0], rdx
mov rax, qword [rsi - 0x18]
mov qword [rsp + 0xd0], rsi
mov rsi, qword [rsp + 0x48]
mov qword [rsp + rax + 0xd0], rsi
mov rax, qword [rbx - 0x18]
mov rsi, qword [rsp + 0x40]
mov qword [rsp + 0xc0], rbx
mov qword [rsp + rax + 0xc0], rsi
mov rax, qword [0x1404d9f30]
mov qword [rsp + 0xc8], 0
add rax, 0x10
mov qword [rsp + 0x140], rax
call fcn.1403b7d20
mov rcx, qword [r12 + 0x28]
mov rax, qword [r12 + 0x30]
add dword [rsp + 0x3c], 1
mov edx, dword [rsp + 0x3c]
sub rax, rcx
sar rax, 4
cmp rdx, rax
jae 0x14001fe30
shl rdx, 4
mov r13, qword [rcx + rdx]
mov rcx, qword [rsp + 0x30]
call fcn.1403b7c80
mov rax, qword [0x1404d9f30]
xor ecx, ecx
xor edx, edx
pxor xmm0, xmm0
mov word [rsp + 0x220], cx
mov rsi, qword [rsp + 0x40]
add rax, 0x10
movups xmmword [rsp + 0x228], xmm0
movups xmmword [rsp + 0x238], xmm0
mov qword [rsp + 0x140], rax
mov rax, qword [rbx - 0x18]
mov qword [rsp + 0x218], 0
mov qword [rsp + 0xc0], rbx
mov qword [rsp + rax + 0xc0], rsi
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xc8], 0
add rax, qword [rbx - 0x18]
mov rcx, rax
call fcn.1403b8cd0
mov rsi, qword [r15 + 0x20]
lea rbp, [rsp + 0xd0]
xor edx, edx
mov rax, qword [rsi - 0x18]
mov qword [rsp + 0xd0], rsi
add rax, rbp
mov rcx, rax
mov rax, qword [r15 + 0x28]
mov qword [rcx], rax
mov qword [rsp + 0x48], rax
call fcn.1403b8cd0
mov r14, qword [r15 + 8]
mov rdx, qword [r15 + 0x30]
pxor xmm0, xmm0
mov rax, qword [r14 - 0x18]
mov qword [rsp + 0x50], rdx
mov qword [rsp + rax + 0xc0], rdx
mov rax, qword [str._fP_]
movaps xmmword [rsp + 0xd0], xmm7
add rax, 0x18
movaps xmmword [rsp + 0xe0], xmm0
mov qword [rsp + 0xc0], rax
mov rax, qword [str._fP_]
movaps xmmword [rsp + 0xf0], xmm0
add rax, 0x68
movaps xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0x140], rax
lea rax, [rsp + 0x110]
mov rcx, rax
mov qword [rsp + 0x58], rax
call fcn.140387080
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x30]
mov dword [rsp + 0x118], 0x18
mov qword [rsp + 0x128], 0
mov qword [rsp + 0xd8], rax
lea rax, [rsp + 0x130]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x120], rax
lea rax, [rsp + 0xd8]
mov rdx, rax
mov byte [rsp + 0x130], 0
mov qword [rsp + 0x78], rax
call fcn.1403b8cd0
mov r8d, 2
lea rdx, [0x14046644f]
mov rcx, rbp
call fcn.1403bef40
lea rcx, [rsp + 0x80]
mov rdx, r13
call fcn.14001f1b0
mov r8, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x80]
mov rcx, rbp
call fcn.1403bef40
mov byte [rsp + 0xa0], 0x20
mov rbp, rax
mov rax, qword [rax]
mov rax, qword [rax - 0x18]
cmp qword [rbp + rax + 0x10], 0
jne 0x14001f9a8
mov edx, 0x20
mov rcx, rbp
call fcn.140346b60
jmp 0x14001f9c1
mov rax, rdx
jmp 0x14001fa97
lea r13, [rsp + 0xb0]
mov byte [rsp + 0xb0], 0
xor r8d, r8d
mov qword [rsp + 0xa0], r13
mov rdx, r13
mov qword [rsp + 0xa8], 0
jmp 0x14001f9fc
lea rdx, [rsp + 0x120]
call fcn.1403934f0
jmp 0x14001fab1
mov edi, 0x17
nop dword [rax]
mov rcx, qword [r12 + 0x68]
cmp qword [r12 + 0x70], rcx
je 0x14001fe6e
xor ebx, ebx
xor edx, edx
shl rdx, 4
mov rcx, qword [rcx + rdx]
call fcn.14001f8f0
mov rcx, qword [r12 + 0x68]
lea edx, [rbx + 1]
cmp edi, eax
mov rbx, rdx
cmovb edi, eax
mov rax, qword [r12 + 0x70]
sub rax, rcx
sar rax, 4
cmp rdx, rax
jb 0x14001fe40
mov eax, dword [r12 + 0x20]
movaps xmm6, xmmword [rsp + 0x250]
movaps xmm7, xmmword [rsp + 0x260]
sub eax, 1
sub eax, dword [r12 + 0x24]
cmp eax, edi
cmova eax, edi
add eax, 1
add rsp, 0x278
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret