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

Disassembly:
push rsi
sub rsp, 0x50
test byte [rcx + 8], 0x40
mov rsi, rcx
jne 0x14002e308
cmp dword [rcx + 0x3108], 0
jg 0x14002e2f5
cmp dword [rcx + 0x3118], 0
jle 0x14002e5c4
mov dl, 1
call fcn.140035be0
xor ecx, ecx
add rsp, 0x50
pop rsi
jmp fcn.140035730
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r15
xor r15d, r15d
cmp byte [rcx + 0xc8], r15b
je 0x14002e372
mov ebx, r15d
cmp dword [rcx + 0x3108], ebx
jle 0x14002e372
mov edi, r15d
nop word [rax + rax]
mov rax, qword [rsi + 0x3110]
mov rcx, qword [rdi + rax + 8]
test rcx, rcx
je 0x14002e364
cmp qword [rcx + 0x10], r15
jne 0x14002e364
cmp qword [rcx + 0x18], r15
je 0x14002e364
mov ecx, dword [rcx]
call fcn.140035730
inc ebx
add rdi, 0x10
cmp ebx, dword [rsi + 0x3108]
jl 0x14002e340
cmp byte [rsi + 0x3138], r15b
je 0x14002e3b5
xor ecx, ecx
call fcn.14002b7b0
xor edx, edx
call fcn.140035be0
xor ecx, ecx
call fcn.140035730
mov r8d, dword [rsi + 0x3128]
mov rcx, rsi
mov rdx, qword [rsi + 0x3130]
call fcn.14002f140
mov rcx, rsi
call fcn.14002f380
mov byte [rsi + 0x3138], r15b
mov r14d, r15d
cmp dword [rsi + 0x3118], r15d
jle 0x14002e5b0
mov qword [rsp + 0x68], rbp
mov rbp, r15
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r13
mov r13d, Ordinal_26
movaps xmmword [rsp + 0x20], xmm6
xorps xmm6, xmm6
lea r12d, [r13 + 8]
nop dword [rax]
mov rax, qword [rsi + 0x3120]
cmp dword [rax + rbp], 2
jne 0x14002e588
mov rbx, qword [rax + rbp + 0x30]
test rbx, rbx
je 0x14002e44f
mov rcx, qword [rbx + 0x448]
test rcx, rcx
je 0x14002e435
xor r8d, r8d
mov rdx, rbx
call fcn.140030200
and byte [rbx + 0x472], 0xfc
mov byte [rbx + 0xc2], r15b
jmp 0x14002e56f
and byte [rbx + 0x472], 0xfc
mov dword [rbx + 0x458], r15d
mov byte [rbx + 0xc2], r15b
jmp 0x14002e56f
mov rbx, qword [rax + rbp + 0x38]
test rbx, rbx
je 0x14002e588
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14002e4b8
mov eax, dword [rbx + 8]
shr eax, 0xb
test al, 1
jne 0x14002e4b8
cmp qword [rdx + 0x18], rbx
mov rax, r13
mov r8, r12
mov rcx, rsi
cmovne rax, r12
cmovne r8, r13
mov qword [rax + rdx], r15
mov rdx, qword [rbx + 0x10]
mov r8, qword [r8 + rdx]
call fcn.140034850
mov rcx, qword [rbx + 0x10]
mov eax, dword [rcx + 0xb0]
and eax, 0xfffffebf
bts eax, 7
mov dword [rcx + 0xb0], eax
mov qword [rbx + 0x10], r15
jmp 0x14002e556
xor edx, edx
mov rcx, rsi
call fcn.14002e810
mov rdx, rbx
mov rcx, rax
mov rdi, rax
call fcn.140030480
mov edx, dword [rdi]
mov ecx, dword [rbx]
call fcn.140036a80
mov r9d, r15d
cmp dword [rdi + 0x28], r15d
jle 0x14002e553
mov r8, r15
nop word [rax + rax]
mov rax, qword [rdi + 0x30]
mov rcx, qword [r8 + rax]
lea rdx, [rcx + 0x400]
mov qword [rcx + 0x3e0], r15
mov qword [rdx], rcx
mov qword [rcx + 0x3f8], rcx
mov qword [rcx + 0x3f0], rcx
mov qword [rcx + 0x3e8], rcx
test dword [rcx + 0xc], 0x800000
je 0x14002e546
nop word [rax + rax]
mov rax, qword [rcx + 0x3e0]
mov qword [rdx], rax
mov rcx, rax
test dword [rax + 0xc], 0x800000
jne 0x14002e530
inc r9d
add r8, 8
cmp r9d, dword [rdi + 0x28]
jl 0x14002e4f0
mov rbx, rdi
mov eax, dword [rbx + 0xb0]
and eax, 0xffffffd2
or eax, 0x12
or byte [rbx + 0xb4], 0x80
mov dword [rbx + 0xb0], eax
mov rcx, qword [0x140214df0]
comiss xmm6, dword [rcx + 0x3144]
jb 0x14002e588
mov eax, dword [rcx + 0x1c]
mov dword [rcx + 0x3144], eax
inc r14d
add rbp, 0x40
cmp r14d, dword [rsi + 0x3118]
jl 0x14002e3f0
movaps xmm6, xmmword [rsp + 0x20]
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x68]
mov r14, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
mov r15, qword [rsp + 0x30]
add rsp, 0x50
pop rsi
ret