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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x488
movaps xmmword [rsp + 0x470], xmm6
mov ebx, r9d
mov ebp, r8d
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x14029a038]
xor rax, rsp
mov qword [rsp + 0x468], rax
movabs r13, 0xaaaaaaaaaaaaaaaa
lea r15, [rsp + 0x3b0]
mov qword [r15 + 0x50], r13
movaps xmm6, xmmword [0x140270690]
movaps xmmword [r15 + 0x40], xmm6
movaps xmmword [r15 + 0x30], xmm6
movaps xmmword [r15 + 0x20], xmm6
movaps xmmword [r15 + 0x10], xmm6
movaps xmmword [r15], xmm6
lea rdx, str.DoCopyDirectory
lea r8, str....._base_files_file_util_win.cc
lea r12, [rsp + 0xe8]
mov rcx, r12
mov r9d, 0xa9
call fcn.140120f60
xor r14d, r14d
mov rcx, r15
mov rdx, r12
xor r8d, r8d
call fcn.140121610
cmp byte [rdi + 0x17], 0
jns 0x1400c7787
cmp qword [rdi + 8], 0x103
ja 0x1400c7993
cmp byte [rsi + 0x17], 0
jns 0x1400c779f
cmp qword [rsi + 8], 0x103
jbe 0x1400c779f
xor r14d, r14d
jmp 0x1400c7993
lea r14, [rsp + 0xb0]
mov qword [r14 + 0x10], r13
movaps xmmword [r14], xmm6
mov rcx, r14
mov rdx, rsi
call fcn.1401567f0
cmp byte [r14 + 0x17], 0
jns 0x1400c77c9
mov r14, qword [rsp + 0xb0]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1400c7828
lea rcx, [rsp + 0xe8]
lea r14, [rsp + 0xb0]
mov rdx, r14
call fcn.140061700
cmp byte [r14 + 0x17], 0
jns 0x1400c7803
mov rcx, qword [rsp + 0xb0]
call fcn.14017b254
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0xc0], rax
movups xmm0, xmmword [rsp + 0xe8]
movaps xmmword [rsp + 0xb0], xmm0
jmp 0x1400c78b0
lea r14, [rsp + 0xb0]
lea r15, [rsp + 0x410]
mov rcx, r14
mov rdx, r15
call fcn.14014ae20
lea rcx, [rsp + 0xe8]
mov rdx, r15
call fcn.140061700
cmp byte [r14 + 0x17], 0
jns 0x1400c7867
mov rcx, qword [rsp + 0xb0]
call fcn.14017b254
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0xc0], rax
movups xmm0, xmmword [rsp + 0xe8]
movaps xmmword [rsp + 0xb0], xmm0
mov byte [rsp + 0xff], 0
mov word [rsp + 0xe8], 0
cmp byte [rsp + 0x427], 0
jns 0x1400c78b0
mov rcx, qword [rsp + 0x410]
call fcn.14017b254
movzx eax, byte [rsp + 0xc7]
test al, al
jns 0x1400c78c6
mov rcx, qword [rsp + 0xb8]
jmp 0x1400c78cb
mov ecx, eax
and ecx, 0x7f
test rcx, rcx
je 0x1400c78fe
lea r14, [rsp + 0x90]
mov qword [r14 + 0x10], r13
movaps xmmword [r14], xmm6
mov rcx, r14
mov rdx, rdi
call fcn.140061700
movzx ecx, byte [r14 + 0x17]
test cl, cl
jns 0x1400c7903
mov rax, qword [rsp + 0x98]
jmp 0x1400c7908
xor r14d, r14d
jmp 0x1400c7982
mov eax, ecx
and eax, 0x7f
test rax, rax
je 0x1400c7961
test cl, cl
jns 0x1400c7919
mov r14, qword [rsp + 0x90]
lea rdx, [rsp + 0xe8]
mov qword [rdx], r14
mov qword [rdx + 8], rax
lea rax, [rsp + 0xb0]
movzx ecx, byte [rax + 0x17]
mov r8d, ecx
and r8d, 0x7f
test cl, cl
mov r9, qword [rax]
cmovns r9, rax
lea rcx, [rsp + 0x410]
mov qword [rcx], r9
cmovs r8, qword [rax + 8]
mov qword [rcx + 8], r8
call fcn.140018530
test al, al
je 0x1400c79cf
xor r14d, r14d
cmp byte [rsp + 0xa7], 0
jns 0x1400c797b
mov rcx, qword [rsp + 0x90]
call fcn.14017b254
mov al, byte [rsp + 0xc7]
test al, al
jns 0x1400c7993
mov rcx, qword [rsp + 0xb0]
call fcn.14017b254
lea rcx, [rsp + 0x3b0]
call fcn.140120f80
mov rcx, qword [rsp + 0x468]
xor rcx, rsp
call fcn.14017e7b0
mov eax, r14d
movaps xmm6, xmmword [rsp + 0x470]
add rsp, 0x488
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor r14d, r14d
lea rcx, [rsp + 0x90]
lea rdx, [rsp + 0xb0]
xor r8d, r8d
call fcn.14005f7f0
test al, al
jne 0x1400c7964
movzx eax, bpl
lea r14d, [rax + rax]
inc r14d
lea r15, [rsp + 0xe8]
mov r8d, 0x2c8
mov rcx, r15
mov dl, 0xaa
call fcn.1401808d0
mov rcx, r15
mov rdx, rdi
mov r8d, ebp
mov r9d, r14d
call fcn.140073da0
cmp byte [rdi + 0x17], 0
mov rcx, rdi
jns 0x1400c7a32
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1400c7dc8
lea rcx, [rsp + 0x70]
mov qword [rcx + 0x10], r13
movaps xmmword [rcx], xmm6
mov rdx, rdi
call fcn.1401567f0
lea r15, [rsp + 0x410]
mov qword [r15 + 0x50], r13
movaps xmmword [r15 + 0x40], xmm6
movaps xmmword [r15 + 0x30], xmm6
movaps xmmword [r15 + 0x20], xmm6
movaps xmmword [r15 + 0x10], xmm6
movaps xmmword [r15], xmm6
lea rdx, str.DirectoryExists
lea r8, str....._base_files_file_util_win.cc
lea r14, [rsp + 0xc8]
mov rcx, r14
mov r9d, 0x1f2
call fcn.140120f60
mov rcx, r15
mov rdx, r14
xor r8d, r8d
call fcn.140121610
cmp byte [rdi + 0x17], 0
mov rcx, rdi
jns 0x1400c7ab7
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov r14d, eax
cmp eax, 0xffffffff
setne al
mov dword [rsp + 0x24], eax
and r14d, 0x10
shr r14d, 4
mov rcx, r15
call fcn.140120f80
lea rcx, [rsp + 0x50]
mov qword [rcx + 0x10], r13
movaps xmmword [rcx], xmm6
mov rdx, rdi
call fcn.1401567f0
test bpl, bpl
je 0x1400c7bae
lea r15, [rsp + 0x410]
mov qword [r15 + 0x50], r13
movaps xmmword [r15 + 0x40], xmm6
movaps xmmword [r15 + 0x30], xmm6
movaps xmmword [r15 + 0x20], xmm6
movaps xmmword [r15 + 0x10], xmm6
movaps xmmword [r15], xmm6
lea rdx, str.DirectoryExists
lea r8, str....._base_files_file_util_win.cc
lea rbp, [rsp + 0xc8]
mov rcx, rbp
mov r9d, 0x1f2
call fcn.140120f60
mov rcx, r15
mov rdx, rbp
xor r8d, r8d
call fcn.140121610
cmp byte [rsi + 0x17], 0
mov rcx, rsi
jns 0x1400c7b59
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ebp, eax
mov rcx, r15
call fcn.140120f80
cmp ebp, 0xffffffff
je 0x1400c7bae
and ebp, 0x10
je 0x1400c7bae
lea rdx, [rsp + 0x410]
mov rcx, rdi
call fcn.14014ae20
cmp byte [rsp + 0x67], 0
jns 0x1400c7b94
mov rcx, qword [rsp + 0x50]
call fcn.14017b254
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x60], rax
movups xmm0, xmmword [rsp + 0x410]
movaps xmmword [rsp + 0x50], xmm0
mov eax, dword [rsp + 0x24]
and al, r14b
mov dword [rsp + 0x24], eax
mov r14b, 1
lea r12, [rsp + 0x30]
lea r15, [rsp + 0x50]
lea rbp, [rsp + 0x70]
mov qword [rsp + 0x28], rsi
movzx eax, byte [rsp + 0x87]
test al, al
jns 0x1400c7be3
mov rax, qword [rsp + 0x78]
jmp 0x1400c7be6
and eax, 0x7f
test rax, rax
je 0x1400c7de1
mov qword [rsp + 0x40], r13
movaps xmmword [rsp + 0x30], xmm6
mov rcx, r12
mov rdx, rsi
call fcn.1401567f0
mov rcx, r15
mov rdx, rbp
call fcn.140070be0
test al, al
je 0x1400c7c29
mov rcx, r15
mov rdx, rbp
mov r8, r12
call fcn.14005f7f0
test al, al
je 0x1400c7dcd
test byte [rsp + 0x24], 1
je 0x1400c7da6
mov esi, ebx
mov rdi, r12
mov rbx, rbp
mov rbp, r15
mov qword [rsp + 0x460], r13
movaps xmmword [rsp + 0x450], xmm6
movaps xmmword [rsp + 0x440], xmm6
movaps xmmword [rsp + 0x430], xmm6
movaps xmmword [rsp + 0x420], xmm6
movaps xmmword [rsp + 0x410], xmm6
lea r15, [rsp + 0xc8]
mov rcx, r15
lea rdx, str.DirectoryExists
lea r8, str....._base_files_file_util_win.cc
mov r9d, 0x1f2
call fcn.140120f60
lea rcx, [rsp + 0x410]
mov rdx, r15
xor r8d, r8d
call fcn.140121610
cmp byte [rsp + 0x47], 0
jns 0x1400c7cb2
mov rdi, qword [rsp + 0x30]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov r15d, eax
lea rcx, [rsp + 0x410]
call fcn.140120f80
cmp r15d, 0xffffffff
je 0x1400c7cd7
and r15d, 0x10
jne 0x1400c7cf8
cmp byte [rsp + 0x47], 0
mov rcx, r12
jns 0x1400c7ce6
mov rcx, qword [rsp + 0x30]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
movzx r14d, r14b
cmove r14d, eax
mov r15, rbp
mov rbp, rbx
mov ebx, esi
mov rsi, qword [rsp + 0x28]
lea rcx, [rsp + 0xe8]
lea rdx, [rsp + 0x410]
call fcn.1400319e0
cmp byte [rsp + 0x87], 0
jns 0x1400c7d2e
mov rcx, qword [rsp + 0x70]
call fcn.14017b254
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x80], rax
movups xmm0, xmmword [rsp + 0x410]
movaps xmmword [rsp + 0x70], xmm0
movzx eax, byte [rsp + 0x87]
test al, al
jns 0x1400c7d5e
mov rax, qword [rsp + 0x78]
jmp 0x1400c7d61
and eax, 0x7f
test rax, rax
je 0x1400c7d89
mov al, byte [rsp + 0xec]
shr al, 4
and al, 1
cmp byte [rsp + 0xe8], 0
movzx eax, al
mov ecx, 0
cmove eax, ecx
mov dword [rsp + 0x24], eax
cmp byte [rsp + 0x47], 0
jns 0x1400c7d9a
mov rcx, qword [rsp + 0x30]
call fcn.14017b254
test r14b, 1
jne 0x1400c7bd0
jmp 0x1400c7de1
mov rcx, rbp
mov rdx, r12
mov r8d, ebx
call fcn.1401e72e0
movzx r14d, r14b
test al, al
mov eax, 0
cmove r14d, eax
jmp 0x1400c7d05
xor r14d, r14d
jmp 0x1400c7e0a
cmp byte [rsp + 0x47], 0
jns 0x1400c7dde
mov rcx, qword [rsp + 0x30]
call fcn.14017b254
xor r14d, r14d
cmp byte [rsp + 0x67], 0
jns 0x1400c7df2
mov rcx, qword [rsp + 0x50]
call fcn.14017b254
cmp byte [rsp + 0x87], 0
jns 0x1400c7e06
mov rcx, qword [rsp + 0x70]
call fcn.14017b254
and r14b, 1
mov rcx, qword [rsp + 0x340]
cmp rcx, 0xffffffffffffffff
jne 0x1400c7e6d
lea rsi, [rsp + 0x390]
mov rdx, qword [rsi + 0x10]
mov r8, qword [rsi + 0x18]
mov rcx, rsi
call fcn.1400345a0
mov rcx, qword [rsi]
call fcn.14017b220
cmp byte [rsi - 0x11], 0
js 0x1400c7e5e
cmp byte [rsp + 0x35f], 0
jns 0x1400c7964
mov rcx, qword [rsp + 0x348]
call fcn.14017b254
jmp 0x1400c7964
mov rcx, qword [rsp + 0x368]
call fcn.14017b254
jmp 0x1400c7e3e
call qword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x1400c7e18