Function at 0x14001dec0
Capabilities:
Check if file exists

Disassembly:
push r15
sub rsp, 0x60
mov rax, qword [0x14028e6b0]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov r15, rcx
test dl, dl
je 0x14001df03
mov rax, qword [rcx]
mov rcx, qword [rax + 0x890]
mov rcx, qword [rcx + 0x40]
call fcn.14001dc10
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140168660
add rsp, 0x60
pop r15
ret
mov qword [rsp + 0x80], rbp
mov ebp, dword [rcx + 0x38]
sub ebp, 1
js 0x14001e033
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x50], r14
nop
mov eax, dword [r15 + 0x38]
cmp ebp, eax
jl 0x14001df46
cmp qword [r15 + 0x38], 0
je 0x14001e01c
lea ebp, [rax - 1]
mov rbx, qword [r15 + 0x18]
movsxd rax, ebp
mov rbx, qword [rbx + rax*8]
cmp dword [rbx + 0xa0], 2
je 0x14001e013
cmp byte [rbx + 0x110], 0
jne 0x14001e013
xor sil, sil
call fcn.14000cdd0
lea rdi, [rbx + 0xb0]
mov r14, rax
cmp qword [rdi + 0x18], 8
jb 0x14001df89
mov rcx, qword [rdi]
jmp 0x14001df8c
mov rcx, rdi
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14001dfa3
xor edx, edx
mov rcx, r14
call fcn.1400d8030
mov sil, 1
cmp dword [rbx + 0xa0], 4
je 0x14001e05c
cmp qword [rdi + 0x18], 8
jb 0x14001dfbc
mov rcx, qword [rdi]
jmp 0x14001dfbf
mov rcx, rdi
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14001e04f
mov byte [rbx + 0xac], al
xor eax, eax
mov dword [rbx + 0xa0], 4
mov byte [rbx + 0x48], 1
mov qword [rbx + 0xa4], rax
cmp byte [rbx + 8], al
je 0x14001e001
mov rcx, qword [rbx]
lea r8d, [rax + 0x70]
mov rdx, rbx
mov rcx, qword [rcx]
call fcn.14008a270
test sil, sil
je 0x14001e013
mov edx, 1
mov rcx, r14
call fcn.1400d8030
sub ebp, 1
jns 0x14001df30
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x78]
mov r14, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140168660
add rsp, 0x60
pop r15
ret
cmp dword [rbx + 0xa0], 4
jne 0x14001e10c
cmp qword [rdi + 0x18], 8
jb 0x14001e068
mov rcx, qword [rdi]
jmp 0x14001e06b
mov rcx, rdi
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x14001e10c
cmp qword [rdi + 0x18], 8
jb 0x14001e083
mov rdi, qword [rdi]
lea r8, [rsp + 0x20]
xor edx, edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesExW]
test eax, eax
je 0x14001e001
movzx eax, byte [rsp + 0x20]
lea rcx, [rbx + 0x150]
and al, 1
mov dword [rbx + 0xa0], 8
mov byte [rbx + 0xac], al
mov rax, qword [rsp + 0x34]
mov qword [rbx + 0xa4], rax
call fcn.140021550
test al, al
je 0x14001e001
cmp byte [rbx + 8], 0
je 0x14001e0ec
mov rcx, qword [rbx]
mov r8d, 0x70
mov rdx, rbx
mov rcx, qword [rcx]
call fcn.14008a270
lea rcx, [rbx + 0x150]
call fcn.140146a58
test eax, eax
je 0x14001e001
mov ecx, eax
call fcn.140146b60
jmp 0x14001e001
cmp qword [rdi + 0x18], 8
jb 0x14001e116
mov rdi, qword [rdi]
lea r8, [rsp + 0x20]
xor edx, edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesExW]
test eax, eax
je 0x14001e001
movzx eax, byte [rsp + 0x20]
xor edi, edi
and al, 1
cmp al, byte [rbx + 0xac]
je 0x14001e14a
mov byte [rbx + 0xac], al
mov edi, InitCommonControls
lea rsi, [rbx + 0xa4]
mov rcx, rsi
lea rdx, [rsp + 0x34]
call qword [sym.imp.KERNEL32.dll_CompareFileTime]
test eax, eax
je 0x14001e178
mov rax, qword [rsp + 0x34]
or edi, 0x60
mov qword [rsi], rax
mov dword [rbx + 0xa0], 8
test edi, edi
je 0x14001e013
lea rsi, [rbx + 0x150]
mov rcx, rsi
call fcn.140146a1c
test eax, eax
je 0x14001e1a8
cmp eax, 3
je 0x14001e013
mov ecx, eax
call fcn.140146b60
jmp 0x14001e013
cmp byte [rbx + 8], 0
je 0x14001e1bf
mov rcx, qword [rbx]
mov r8d, edi
mov rdx, rbx
mov rcx, qword [rcx]
call fcn.14008a270
mov rcx, rsi
call fcn.140146a58
test eax, eax
je 0x14001e013
mov ecx, eax
call fcn.140146b60
jmp 0x14001e013
push rbx
sub rsp, 0x20
movzx ebx, dl
call fcn.1400417e0
mov rcx, rax
movzx edx, bl
add rsp, 0x20
pop rbx
jmp 0x14001dec0