Function at 0x1400c5790
Capabilities:
Check if file exists
Create directory
Get file attributes

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x50
mov rdi, rdx
mov r15, rcx
test rdx, rdx
je 0x1400c57d7
mov rax, 0xffffffffffffffff
nop word cs:[rax + rax]
nop dword [rax + rax]
cmp byte [rdi + rax + 1], 0
lea rax, [rax + 1]
jne 0x1400c57c0
cmp rax, 0xf9d
jae 0x1400c59ba
mov r14, qword [r15]
mov al, 1
xchg byte [r14], al
test al, al
jne 0x1400c5929
mov rcx, qword [r15 + 8]
lea rax, [rcx + 1]
cmp rax, 3
ja 0x1400c58f5
cmp rax, 1
je 0x1400c58f5
mov qword [r15 + 8], 0xffffffffffffffff
mov eax, 2
test rdi, rdi
je 0x1400c5911
cmp byte [rdi], 0x73
jne 0x1400c5878
mov bl, 0x73
mov edx, 1
lea rcx, str.stderr
nop dword [rax]
test bl, bl
je 0x1400c5911
movzx ebx, byte [rdi + rdx]
lea rsi, [rdx + 1]
cmp bl, byte [rdx + rcx]
mov rdx, rsi
je 0x1400c5830
mov dl, 0x73
mov eax, 1
lea rcx, str.stdout
mov ebx, 1
nop dword [rax + rax]
test dl, dl
je 0x1400c5911
movzx edx, byte [rdi + rbx]
lea rsi, [rbx + 1]
cmp dl, byte [rbx + rcx]
mov rbx, rsi
je 0x1400c5860
lea rsi, [r15 + 0x10]
lea r8, [0x1401cea4e]
mov edx, 0x1000
mov rcx, rsi
mov r9, rdi
call method.__sanitizer.internal_snprintf_char__unsigned_long_long__char_const__..._
cmp byte [r15 + 0x10], 0
je 0x1400c5915
lea rdi, [r15 + 0x11]
mov r13, qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov r12, qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
jmp 0x1400c58c6
mov rcx, rsi
xor edx, edx
call r12
test eax, eax
je 0x1400c5958
mov byte [rdi], bl
add rdi, 1
movzx ebx, byte [rdi]
cmp bl, 0x2f
je 0x1400c58e0
cmp bl, 0x5c
je 0x1400c58e0
test bl, bl
jne 0x1400c58c2
jmp 0x1400c5915
mov byte [rdi], 0
mov rcx, rsi
call r13
cmp eax, 0xffffffff
je 0x1400c58b0
and eax, 0x10
jne 0x1400c58c0
jmp 0x1400c58b0
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [r15 + 8], 0xffffffffffffffff
mov eax, 2
test rdi, rdi
jne 0x1400c5819
mov qword [r15 + 8], rax
mov byte [r14], 0
add rsp, 0x50
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor esi, esi
mov rbx, qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x1400c5937
add esi, 1
cmp esi, 0x63
ja 0x1400c5940
pause
jmp 0x1400c5944
xor ecx, ecx
call rbx
cmp byte [r14], 0
jne 0x1400c5934
mov al, 1
xchg byte [r14], al
test al, al
jne 0x1400c5934
jmp 0x1400c57e7
mov qword [rsp + 0x20], 0
lea rdx, str.ERROR:_Cant_create_directory:
mov ecx, 2
mov r8d, 0x1f
xor r9d, r9d
call method.__sanitizer.WriteToFile_void__void_const__unsigned_long_long__unsigned_long_long__unsigned_int_
mov r8, 0xffffffffffffffff
nop word cs:[rax + rax]
nop dword [rax]
cmp byte [r15 + r8 + 0x11], 0
lea r8, [r8 + 1]
jne 0x1400c5990
mov qword [rsp + 0x20], 0
mov ecx, 2
mov rdx, rsi
xor r9d, r9d
call method.__sanitizer.WriteToFile_void__void_const__unsigned_long_long__unsigned_long_long__unsigned_int_
call method.__sanitizer.Die__
movsx edx, byte [rdi]
movsx r8d, byte [rdi + 1]
movsx r9d, byte [rdi + 2]
movsx eax, byte [rdi + 3]
movsx ecx, byte [rdi + 4]
movsx ebx, byte [rdi + 5]
movsx esi, byte [rdi + 6]
movsx edi, byte [rdi + 7]
mov dword [rsp + 0x40], edi
mov dword [rsp + 0x38], esi
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], eax
lea rcx, str.ERROR:_Path_is_too_long:__c_c_c_c_c_c_c_c..._n
call method.__sanitizer.Report_char_const__..._
call method.__sanitizer.Die__
int3