Function at 0x14000be80
Capabilities:
Create directory
Read file on windows

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
lea rbp, [rsp + 0x20]
lea rsi, str.libgcc_s_dw2_1.dll
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rbx, rax
test rax, rax
je 0x140001670
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rdi, qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.__register_frame_info
mov rcx, rbx
mov qword [0x14062e040], rax
call rdi
lea rdx, str.__deregister_frame_info
mov rcx, rbx
mov rsi, rax
call rdi
mov qword [section..data], rax
test rsi, rsi
je 0x140001653
lea rdx, [0x14062e060]
lea rcx, [section..eh_fram]
call rsi
lea rcx, [0x140001690]
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
jmp fcn.140001583
lea rax, [0x1400015d0]
lea rsi, [0x1400015c0]
mov qword [section..data], rax
jmp 0x140001643
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rbx, rdx
call fcn.140004127
call fcn.140001efd
mov rcx, rbx
call fcn.1400020e3
mov rsi, rax
test rax, rax
jne 0x14000beb5
lea rcx, [0x140629090]
call fcn.140002793
mov rcx, rax
call qword [sym.imp.msvcrt.dll__mkdir]
inc eax
jne 0x14000bee4
mov rdi, qword [sym.imp.msvcrt.dll__errno]
call rdi
cmp dword [rax], 0x11
je 0x14000bee4
call rdi
mov rdx, qword [rbx]
mov r8, rsi
lea rcx, str._s:_creation_of_private_cache_subdirectory__s_failed__errno__i__n
mov r9d, dword [rax]
jmp 0x14000bf39
lea rcx, str.PATH
call fcn.140001718
mov rcx, qword [rbx]
mov rdx, rax
call fcn.140001c7a
mov rcx, rax
mov rdi, rax
call fcn.140001e31
lea r9, [rsp + 0x28]
mov r8, rsi
lea rcx, str.par.exe
mov rdx, rax
call fcn.140001a12
test eax, eax
jne 0x14000bf3e
call qword [sym.imp.msvcrt.dll__errno]
mov r8, qword [rsp + 0x28]
mov rdx, qword [rbx]
lea rcx, str._s:_extraction_of__s__custom_Perl_interpreter__failed__errno_i__n
mov r9d, dword [rax]
call fcn.140002793
dec eax
jne 0x14000bfff
mov rcx, rdi
mov r8d, 0x1ed
mov edx, 0x8000
call sub.msvcrt.dll__open
mov edi, eax
cmp eax, 0xffffffff
jne 0x14000bf81
mov ecx, 2
call qword [fcn.14000b570]
lea r8, str.open_my_prog
lea rdx, str.assertion_failed:__s_n
mov rcx, rax
call fcn.140001be7
mov ecx, edi
lea rbp, [rsp + 0x20]
call fcn.1400025ff
mov r8d, 2
mov rdx, rbp
mov ecx, edi
call sub.msvcrt.dll__read
mov ecx, edi
call sub.msvcrt.dll__close
mov rcx, qword [rsp + 0x28]
mov r8d, 0x1ed
mov edx, 0x8002
call sub.msvcrt.dll__open
mov edi, eax
cmp eax, 0xffffffff
jne 0x14000bfe1
mov ecx, 2
call qword [fcn.14000b570]
lea r8, str.open_my_perl
lea rdx, str.assertion_failed:__s_n
mov rcx, rax
call fcn.140001be7
mov ecx, edi
call fcn.1400025ff
mov ecx, edi
mov r8d, 2
mov rdx, rbp
call sub.msvcrt.dll__write
mov ecx, edi
call sub.msvcrt.dll__close
lea rdi, str.perl538.dll
lea rbp, [rsp + 0x20]
mov rdx, qword [rdi]
test rdx, rdx
je 0x14000c048
mov r9, rbp
mov r8, rsi
mov rcx, rdi
call fcn.140001a12
test eax, eax
jne 0x14000c042
call qword [sym.imp.msvcrt.dll__errno]
mov r8, qword [rsp + 0x20]
mov rdx, qword [rbx]
lea rcx, str._s:_extraction_of__s_failed__errno_i__n
mov r9d, dword [rax]
jmp 0x14000bf39
add rdi, 0x18
jmp 0x14000c00b
mov rbp, qword [rsp + 0x28]
lea rcx, str.user32
mov qword [rbx], rbp
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rcx, rax
test rax, rax
je 0x14000c07c
lea rdx, str.AllowSetForegroundWindow
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14000c07c
or ecx, 0xffffffff
call rax
lea rdx, [0x14062915e]
lea rcx, str.PAR_SPAWNED
mov rdi, rbx
call fcn.140001c10
lea r12, str.__t_n_r_v_
mov r13, qword [rdi]
test r13, r13
je 0x14000c0da
mov rcx, r13
call sub.msvcrt.dll_strlen
test eax, eax
je 0x14000c0c9
dec eax
cdqe
cmp byte [r13 + rax], 0x5c
je 0x14000c0c9
mov rdx, r12
mov rcx, r13
call sub.msvcrt.dll_strpbrk
test rax, rax
je 0x14000c0d4
mov rcx, r13
call fcn.1400026f5
mov qword [rdi], rax
add rdi, 8
jmp 0x14000c099
mov r8, rbx
mov rdx, rbp
xor ecx, ecx
call qword [sym.imp.msvcrt.dll__spawnvp]
mov rcx, rsi
mov rbx, rax
call fcn.1400025aa
mov ecx, ebx
call sub.msvcrt.dll_exit
nop
nop
nop
nop
nop
nop
jmp 0x1400015e0