Function at 0x14012f8c0
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, 0xe8
movaps xmmword [rsp + 0xd0], xmm8
movaps xmmword [rsp + 0xc0], xmm7
movaps xmmword [rsp + 0xb0], xmm6
mov rbx, r9
mov rdi, r8
mov r14, rdx
mov rsi, rcx
mov r13, qword [rsp + 0x168]
movzx eax, byte [rsp + 0x160]
mov rcx, qword [0x1406a7e00]
xor rcx, rsp
mov qword [rsp + 0xa8], rcx
mov byte [rsp + 0xa7], al
mov word [rsi], 0
mov qword [rsi + 4], 0
mov dword [rsi + 0xc], 1
xorps xmm0, xmm0
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x30], xmm0
mov dword [rsi + 0x40], 0
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 0x10]
mov rcx, rax
call fcn.1401c5a00
mov dword [rsp + 0xa0], eax
mov eax, dword [rdi + 4]
mov dword [rsp + 0x9c], eax
mov eax, dword [rdi + 8]
mov dword [rsp + 0x98], eax
lea r12, [rsp + 0xa7]
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x80], r13
lea rax, [rsp + 0x158]
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x90], rax
cmp dword [r14 + 0x34], 0
js 0x14012f9c2
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.14013c5a0
jmp 0x14012f9cb
mov qword [rsp + 0x70], 0xffffffffffffffff
mov r15, qword [rsp + 0x150]
cmp dword [rdi + 0xc], 2
jl 0x14012fc30
lea rdx, [rsp + 0x50]
mov rcx, r14
call fcn.14013c5a0
mov ecx, dword [rsp + 0x50]
test ecx, ecx
jle 0x14012fa54
mov eax, dword [rsp + 0x54]
test eax, eax
jle 0x14012fa54
movss xmm1, dword [rbx]
xorps xmm0, xmm0
ucomiss xmm0, xmm1
jb 0x14012fa54
movss xmm0, dword [rbx + 8]
ucomiss xmm0, xmm1
jbe 0x14012fa54
movss xmm2, dword [rbx + 4]
movss xmm1, dword [rbx + 0xc]
ucomiss xmm1, xmm2
jbe 0x14012fa54
xorps xmm3, xmm3
ucomiss xmm3, xmm2
jb 0x14012fa54
xorps xmm2, xmm2
cvtsi2ss xmm2, ecx
ucomiss xmm0, xmm2
jb 0x14012fa54
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
ucomiss xmm1, xmm0
jb 0x14012fa54
mov r9, r13
xor eax, eax
cmp byte [rsp + 0xa7], 0
jne 0x14012fc09
jmp 0x14012fad3
mov al, 1
test r15, r15
je 0x14012fac2
movsd xmm1, qword [r15]
movsd xmm0, qword [r15 + 8]
mov r9, r13
ucomiss xmm0, xmm1
jbe 0x14012fab2
movaps xmm2, xmm1
cmpnltps xmm2, xmm0
pextrw ecx, xmm2, 2
test cl, 1
jne 0x14012fab2
movsd xmm2, qword [rbx]
movsd xmm3, qword [rbx + 8]
ucomiss xmm3, xmm2
setbe cl
movlhps xmm0, xmm2
cmpnltps xmm2, xmm3
pextrw eax, xmm2, 2
movlhps xmm3, xmm1
cmpnleps xmm0, xmm3
pslld xmm0, 0x1f
movmskps edx, xmm0
test edx, edx
setne dl
or al, cl
or al, dl
cmp byte [rsp + 0xa7], 0
jne 0x14012fc09
jmp 0x14012fad3
mov r9, r13
cmp byte [rsp + 0xa7], 0
jne 0x14012fc09
movzx ebp, byte [rdi]
mov ecx, dword [rsp + 0x70]
cmp bpl, 3
jne 0x14012fb47
test byte [r9 + 0x23], 2
je 0x14012fc09
mov rdx, qword [rsp + 0x158]
movss xmm1, dword [rdx]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x14012fc09
jp 0x14012fc09
movss xmm1, dword [rdx + 4]
ucomiss xmm1, xmm0
jne 0x14012fc09
jp 0x14012fc09
movss xmm1, dword [rdx + 8]
ucomiss xmm1, xmm0
jne 0x14012fc09
jp 0x14012fc09
movss xmm1, dword [rdx + 0xc]
ucomiss xmm1, xmm0
jne 0x14012fc09
jp 0x14012fc09
jmp 0x14012fb4c
test bpl, bpl
je 0x14012fb75
lea edx, [rcx - 1]
test ecx, edx
je 0x14012fb61
movzx ecx, byte [r9 + 0x20]
and cl, 1
je 0x14012fc09
cmp bpl, 3
je 0x14012fb75
cmp dword [rsp + 0xa0], 1
jne 0x14012fc09
movzx r13d, byte [rdi + 1]
mov ecx, dword [rsp + 0x74]
cmp r13b, 3
jne 0x14012fbc7
test byte [r9 + 0x23], 2
je 0x14012fc09
mov rdx, qword [rsp + 0x158]
movss xmm1, dword [rdx]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x14012fc09
jp 0x14012fc09
movss xmm1, dword [rdx + 4]
ucomiss xmm1, xmm0
jne 0x14012fc09
jp 0x14012fc09
movss xmm1, dword [rdx + 8]
ucomiss xmm1, xmm0
jne 0x14012fc09
jp 0x14012fc09
movss xmm1, dword [rdx + 0xc]
ucomiss xmm1, xmm0
jne 0x14012fc09
jp 0x14012fc09
jmp 0x14012fbcc
test r13b, r13b
je 0x14012fbe3
lea r8d, [rcx - 1]
xor edx, edx
test ecx, r8d
je 0x14012fbe5
movzx ecx, byte [r9 + 0x20]
and cl, 1
je 0x14012fc09
jmp 0x14012fbe5
mov dl, 1
cmp r13b, 3
setne cl
cmp dword [rsp + 0xa0], 1
setne r8b
not dl
and dl, r8b
and dl, cl
or al, dl
test al, 1
je 0x14012fdc1
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x10]
mov rcx, rax
call fcn.1401c5f30
movzx eax, al
add eax, eax
mov dword [rdi + 4], 1
mov dword [rdi + 8], eax
mov dword [rdi + 0xc], 1
movss xmm0, dword [rsp + 0x170]
movabs r14, 0x7f800000ff800000
lea rax, [rsp + 0x78]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x9c]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], r12
lea rax, [rsp + 0x98]
mov qword [rsp + 0x68], rax
mov ecx, dword [rbx]
mov eax, dword [rbx + 8]
mov rdx, r14
test r15, r15
je 0x14012fc87
mov r8d, dword [r15]
mov edx, dword [r15 + 8]
shl rdx, 0x20
or rdx, r8
movss xmm8, dword [rsp + 0x174]
movzx r9d, byte [rdi]
mov r8d, dword [rsp + 0x70]
shl rax, 0x20
or rax, rcx
movss dword [rsp + 0x30], xmm0
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x50]
lea rdx, [rsp + 0x38]
call fcn.14012fe10
movups xmm6, xmmword [rsp + 0x3c]
movsd xmm7, qword [rsp + 0x44]
mov ecx, dword [rbx + 4]
mov eax, dword [rbx + 0xc]
test r15, r15
je 0x14012fce5
mov edx, dword [r15 + 4]
mov r14d, dword [r15 + 0xc]
shl r14, 0x20
or r14, rdx
movzx ebx, word [rsp + 0x38]
movzx ebp, byte [rsp + 0x4c]
movzx r9d, byte [rdi + 1]
mov r8d, dword [rsp + 0x74]
shl rax, 0x20
or rax, rcx
movss dword [rsp + 0x30], xmm8
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x50]
lea rdx, [rsp + 0x38]
call fcn.14012fe10
movzx eax, word [rsp + 0x38]
movhps xmm6, qword [rsp + 0x3c]
movhps xmm7, qword [rsp + 0x44]
movzx r13d, byte [rsp + 0x4c]
mov edx, dword [rsp + 0x9c]
mov r8d, dword [rsp + 0x98]
mov ecx, 1
mov byte [rsi], bpl
mov byte [rsi + 1], r13b
mov dword [rsi + 4], edx
mov dword [rsi + 8], r8d
mov dword [rsi + 0xc], ecx
mov word [rsi + 0x10], bx
mov word [rsi + 0x12], ax
shufps xmm6, xmm6, 0xd8
movups xmmword [rsi + 0x14], xmm6
shufps xmm7, xmm7, 0xd8
movups xmmword [rsi + 0x24], xmm7
mov rax, qword [rsp + 0x158]
movups xmm0, xmmword [rax]
movups xmmword [rsi + 0x34], xmm0
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.1405602f0
mov rax, rsi
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmm8, xmmword [rsp + 0xd0]
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x10]
mov rcx, rax
call fcn.1401c5f30
mov edx, dword [rdi + 0xc]
cmp edx, 0x400
mov ecx, 0x400
cmovl ecx, edx
cmp ecx, 2
mov edx, 1
cmovl ecx, edx
movzx r8d, al
add r8d, r8d
xorps xmm6, xmm6
xor eax, eax
xor ebx, ebx
xorps xmm7, xmm7
jmp 0x14012fd49