Function at 0x140001bc0
Capabilities:
Check if file exists
Get file attributes

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov rbx, 0xffffffffffffffff
mov rbp, r8
mov rdi, rbx
mov rsi, rdx
mov r13, rcx
xor r15d, r15d
inc rdi
cmp byte [rdx + rdi], r15b
jne 0x140001bf5
add rdi, 2
mov eax, 2
mul rdi
cmovo rax, rbx
mov rcx, rax
call fcn.14001a1a4
mov r14, rax
mov rcx, rbx
nop dword [rax]
inc rcx
cmp byte [rsi + rcx], r15b
jne 0x140001c20
add rcx, 2
mov rdi, r14
xor eax, eax
rep stosb byte [rdi], al
mov rax, rbx
inc rax
cmp byte [rsi + rax], r15b
jne 0x140001c37
inc eax
mov r9d, ebx
mov dword [rsp + 0x28], eax
mov r8, rsi
xor edx, edx
mov qword [rsp + 0x20], r14
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_MultiByteToWideChar]
mov rcx, rbx
nop
inc rcx
cmp byte [rcx + rbp], r15b
jne 0x140001c60
inc rcx
mov eax, 2
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.14001a1a4
mov r12, rax
mov rcx, rbx
inc rcx
cmp byte [rcx + rbp], r15b
jne 0x140001c86
inc rcx
mov rdi, r12
xor eax, eax
rep stosb byte [rdi], al
mov rax, rbx
nop dword [rax]
inc rax
cmp byte [rax + rbp], r15b
jne 0x140001ca0
inc eax
mov r9d, ebx
mov dword [rsp + 0x28], eax
mov r8, rbp
xor edx, edx
mov qword [rsp + 0x20], r12
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_MultiByteToWideChar]
mov rcx, rsi
call qword [sym.imp.KERNEL32.DLL_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x140001ce2
mov ecx, 2
call qword [sym.imp.KERNEL32.DLL_SetLastError]
jmp 0x140001e44
test al, 0x10
je 0x140001da0
nop word [rax + rax]
cmp word [r14 + rbx*2 + 2], r15w
lea rbx, [rbx + 1]
jne 0x140001cf0
cmp word [r14 + rbx*2 - 2], 0x5c
je 0x140001d23
lea rcx, [r14 - 2]
nop dword [rax]
cmp word [rcx + 2], r15w
lea rcx, [rcx + 2]
jne 0x140001d10
mov eax, dword [0x14004b60c]
mov dword [rcx], eax
cmp dword [r13 + 0xc], r15d
mov r8, r14
mov eax, dword [r13 + 8]
mov r9, qword [r13]
setne cl
mov rdx, qword [r13 + 0x10]
mov byte [rsp + 0x78], r15b
mov byte [rsp + 0x70], 1
mov byte [rsp + 0x68], 1
mov byte [rsp + 0x60], r15b
mov byte [rsp + 0x58], r15b
mov byte [rsp + 0x50], 1
mov dword [rsp + 0x48], 4
mov dword [rsp + 0x40], eax
mov byte [rsp + 0x38], cl
mov rcx, r12
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
call fcn.140015330
test eax, eax
sete r15b
test eax, eax
je 0x140001e44
mov ecx, eax
call qword [sym.imp.KERNEL32.DLL_SetLastError]
lea rcx, str.Failed_to_compress_directory:__s
jmp 0x140001e3c
mov ecx, 8
call fcn.14001a1a4
mov byte [rsp + 0x80], r15b
mov rdi, rax
mov byte [rsp + 0x78], 1
mov r9d, 1
mov byte [rsp + 0x70], 1
mov r8, rdi
mov byte [rsp + 0x68], r15b
mov byte [rsp + 0x60], r15b
mov byte [rsp + 0x58], 1
mov dword [rsp + 0x50], 4
mov qword [rax], r14
mov eax, dword [r13 + 8]
cmp dword [r13 + 0xc], r15d
mov rdx, qword [r13 + 0x10]
mov dword [rsp + 0x48], eax
setne cl
mov rax, qword [r13]
mov byte [rsp + 0x40], cl
mov rcx, r12
mov byte [rsp + 0x38], 1
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call fcn.140015940
mov rcx, rdi
mov ebx, eax
call fcn.14001a090
test ebx, ebx
sete r15b
test ebx, ebx
je 0x140001e44
mov ecx, ebx
call qword [sym.imp.KERNEL32.DLL_SetLastError]
lea rcx, str.Failed_to_compress_file:__s
mov rdx, rsi
call fcn.1400019f0
mov rcx, r14
call fcn.14001a090
mov rcx, r12
call fcn.14001a090
lea r11, [rsp + 0x90]
mov eax, r15d
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret