Function at 0x140051e40
Capabilities:
Check if file exists
Create process on windows
Delete file
Enumerate files on windows
Get file attributes
Set file attributes

Disassembly:
push rsi
push rbx
sub rsp, 0xc8
mov rax, qword [0x140463cc0]
xor rax, rsp
mov qword [rsp + 0xc0], rax
cmp byte [rcx], 0
jne 0x140051eab
mov ebx, edx
mov rsi, rcx
call fcn.1400524e0
test al, al
je 0x140051ec6
test bl, bl
je 0x140051e9f
mov rcx, rsi
call fcn.1400584f0
test al, al
je 0x140051e9f
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.14016e5c0
mov rcx, rsi
add rsp, 0xc8
pop rbx
pop rsi
jmp fcn.14004a5d0
mov rcx, rsi
call fcn.14004bf50
mov byte [rsi + 1], 1
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.14016e5c0
nop
add rsp, 0xc8
pop rbx
pop rsi
ret
movabs rax, 0x5a43c2ea023abc92
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x70], rax
movabs rcx, 0x65e0f7e93e88f5bc
lea rax, [rcx - 0x4d30]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x78], rax
movabs rdx, 0x6b18e2986d48ced7
mov qword [rsp + 0x80], rdx
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x30], rcx
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x30], rax
mov r8, qword [rsp + 0x30]
movaps xmm0, xmmword [rsp + 0x70]
xorps xmm0, xmmword [r8]
movaps xmmword [rsp + 0x70], xmm0
movabs r8, 0x187d91b81f3da18e
mov qword [rsp + 0x80], r8
mov r8, qword [rsp + 0x80]
mov qword [rsp + 0x30], r8
movabs r8, 0x16819fc950e79ccf
mov qword [rsp + 0x80], r8
mov r8, qword [rsp + 0x80]
mov qword [rsp + 0x38], r8
movabs r8, 0xfe53d41f3ba468d9
mov qword [rsp + 0x80], r8
mov r8, qword [rsp + 0x80]
mov qword [rsp + 0x40], r8
movabs r8, 0x2a161102c60ab2fa
mov qword [rsp + 0x80], r8
mov r8, qword [rsp + 0x80]
mov qword [rsp + 0x48], r8
movabs r8, 0xfc28e3b3bb24ef5b
mov qword [rsp + 0x80], r8
mov r8, qword [rsp + 0x80]
mov qword [rsp + 0x50], r8
movabs r8, 0x30f128e96430334f
mov qword [rsp + 0x80], r8
mov r8, qword [rsp + 0x80]
mov qword [rsp + 0x58], r8
movabs r8, 0x9f2def6fd829e531
mov qword [rsp + 0x80], r8
mov r8, qword [rsp + 0x80]
mov qword [rsp + 0x60], r8
movabs r8, 0x95c9c64b01c10e8a
mov qword [rsp + 0x80], r8
mov r9, qword [rsp + 0x80]
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x80], rdx
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x88], rcx
movabs rcx, 0x9a36a6764bdc0df9
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x90], rcx
movabs rcx, 0x4f657067aa7a92d6
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x98], rcx
movabs rcx, 0x904694dcdf419d7b
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0xa0], rcx
movabs rcx, 0x1094409d44545220
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0xa8], rcx
movabs rcx, 0x9f039d0abc488a5d
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0x28], r8
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x28]
movaps xmm0, xmmword [rsp + 0x30]
movaps xmm1, xmmword [rsp + 0x40]
movaps xmm2, xmmword [rsp + 0x50]
xorps xmm0, xmmword [rax]
movaps xmm3, xmmword [rsp + 0x60]
movaps xmmword [rsp + 0x30], xmm0
xorps xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x40], xmm1
xorps xmm2, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x50], xmm2
xorps xmm3, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x60], xmm3
lea rdx, [rsp + 0x30]
lea r8, [rsp + 0x70]
xor ecx, ecx
mov r9d, reloc.WS2_32.dll_recv
call qword [sym.imp.USER32.dll_MessageBoxA]
call fcn.14005c0a0
xor ecx, ecx
call fcn.14034b67c
int3