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

Disassembly:
push r14
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x20
mov rbx, rcx
cmp byte [rbx + 0x4c], 0
jne 0x1402c1b69
call fcn.1402bac00
cmp eax, dword [rbx + 0x44]
jne 0x1402c1c59
lea rcx, [rbx + 0x50]
mov edx, 1
xor eax, eax
lock cmpxchg dword [rcx], edx
test eax, eax
je 0x1402c1c39
mov edx, 5
call fcn.140339680
jmp 0x1402c1c39
lea rcx, [rbx + 0x50]
mov edx, 1
xor eax, eax
lock cmpxchg dword [rcx], edx
test eax, eax
je 0x1402c1b86
mov edx, 5
call fcn.140339680
call fcn.140004e85
mov rsi, rax
mov rdi, qword [rsi + 0x88]
mov rbp, rdi
xor r14d, r14d
test rbp, rbp
je 0x1402c1bd2
mov rcx, qword [rbp + 0x10]
cmp rcx, qword [rbx + 0x28]
je 0x1402c1c0b
test r14, r14
jne 0x1402c1bc9
test rcx, rcx
je 0x1402c1bc6
cmp dword [rbp + 0x18], 0
jne 0x1402c1bc9
cmp dword [rbp + 0x1c], 0
jne 0x1402c1bc9
cmp dword [rbp + 0x20], 0
jne 0x1402c1bc9
mov r14, rbp
mov rbp, qword [rbp + 8]
test rbp, rbp
jne 0x1402c1ba0
test r14, r14
jne 0x1402c1c01
lea rcx, [0x1407e2698]
call fcn.14000e1e0
mov r14, rax
lea rcx, [r14 + 8]
mov rdx, rdi
call fcn.14000e3f0
lea rcx, [rsi + 0x88]
mov rdx, r14
call fcn.14000e3f0
mov rcx, qword [rbx + 0x28]
mov qword [r14 + 0x10], rcx
jmp 0x1402c1c0e
mov r14, rbp
test r14, r14
je 0x1402c1c7f
mov ecx, dword [r14 + 0x1c]
test ecx, ecx
jle 0x1402c1cae
dec ecx
mov dword [r14 + 0x1c], ecx
test ecx, ecx
jle 0x1402c1c39
xor ecx, ecx
mov dword [rbx + 0x50], ecx
add rsp, 0x20
pop rbx
pop rbp
pop rsi
pop rdi
pop r14
ret
and dword [rbx + 0x48], 0x7fffffff
mov dword [rbx + 0x44], 0xffffffff
mov rcx, rbx
add rsp, 0x20
pop rbx
pop rbp
pop rsi
pop rdi
pop r14
jmp 0x1402c1f50
lea rcx, [0x1407e2918]
call fcn.14000e1e0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x14072abf0]
call fcn.1402c35b0
mov rcx, rbx
call fcn.14000e7d0
lea rcx, [rbx + 0x50]
call fcn.1403397c0
lea rcx, [0x1407e2918]
call fcn.14000e1e0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x14072abf0]
call fcn.1402c35b0
mov rcx, rbx
call fcn.14000e7d0
lea rcx, [rbx + 0x50]
call fcn.1403397c0
lea rcx, [0x1407e2918]
call fcn.14000e1e0
mov rbx, rax
mov rcx, rbx
lea rdx, [0x14072abf0]
call fcn.1402c35b0
mov rcx, rbx
call fcn.14000e7d0
int3
test byte [rcx + 0x4d], 1
je 0x1402c1f5c
xor eax, eax
mov dword [rcx + 0x50], eax
ret
jmp 0x1402c1f70
sub rsp, 0x28
mov eax, dword [rcx + 0x48]
and eax, 0xfffffff
cmp byte [rcx + 0x4c], 0
je 0x1402c1fa9
cmp dword [rcx + 0x38], 0
je 0x1402c1fa9
cmp byte [rcx + 0x4e], 0
je 0x1402c1fa9
cmp eax, 2
jne 0x1402c1fa9
xor eax, eax
mov dword [rcx + 0x50], eax
mov rcx, qword [rcx + 0x20]
cmp dword [rcx], ecx
call fcn.1402bf410
nop
add rsp, 0x28
ret
cmp eax, 1
jne 0x1402c1fca
cmp dword [rcx + 0x38], 0
je 0x1402c1fca
xor eax, eax
mov dword [rcx + 0x50], eax
mov rcx, qword [rcx + 0x20]
cmp dword [rcx], ecx
call fcn.1402bf410
nop
add rsp, 0x28
ret
test eax, eax
jne 0x1402c1fff
cmp dword [rcx + 0x30], 0
je 0x1402c1fff
movzx eax, byte [rcx + 0x4d]
mov edx, eax
and edx, 2
jne 0x1402c1fe5
or eax, 2
mov byte [rcx + 0x4d], al
xor eax, eax
mov dword [rcx + 0x50], eax
test edx, edx
jne 0x1402c2008
mov rcx, qword [rcx + 8]
cmp dword [rcx], ecx
call fcn.1402bf410
nop
add rsp, 0x28
ret
add rsp, 0x28
jmp fcn.1402c2010
add rsp, 0x28
ret