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

Disassembly:
mov qword [rsp + 0x20], r9
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1f8
mov qword [rsp + 0x88], 0xfffffffffffffffe
mov rbp, r9
mov r13, r8
mov esi, edx
mov rbx, rcx
mov r12d, 0x643
lea rcx, [rsp + 0x30]
call fcn.10001fee0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fee0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fee0
nop
lea rcx, [rsp + 0x20]
call fcn.10001fee0
nop
lea rcx, [rsp + 0x90]
call fcn.10003cea0
nop
xor r14d, r14d
mov dword [rsp + 0x240], r14d
mov dword [rsp + 0x60], r14d
mov dword [rsp + 0x50], r14d
mov dword [rsp + 0x70], r14d
cmp rbx, r14
je 0x100039f7a
cmp rbp, r14
je 0x100039f7a
mov dword [rbp], r14d
mov ecx, 0x7fff
mov rax, rbx
lea edx, [r14 + 1]
cmp word [rax], r14w
je 0x10003966e
add rax, 2
sub rcx, rdx
jne 0x10003965f
cmp rcx, r14
jne 0x1000396be
lea rdx, [0x10000c0b0]
mov ecx, 3
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
mov edi, 0xce
jmp 0x100039a5a
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], rax
mov rdx, rbx
lea rcx, [rsp + 0x68]
call fcn.10001ff98
nop
xor r8d, r8d
lea rdx, [rsp + 0x30]
mov rcx, rax
call fcn.1000349f8
mov edi, eax
cmp eax, r14d
je 0x100039738
mov r9, rbx
lea r8, [0x10000c100]
mov edx, eax
mov ecx, 3
call fcn.10003c494
nop
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
jmp 0x100039a5a
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov edi, eax
cmp eax, 0xffffffff
jne 0x100039757
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x10003975d
shr edi, 3
and edi, 2
cmp edi, r14d
je 0x1000397ad
mov r9, rbx
lea r8, [0x10000c148]
mov edx, edi
mov ecx, 3
call fcn.10003c494
nop
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
jmp 0x100039a5a
test esi, 0xffffffe0
je 0x100039800
lea rdx, [0x10000c178]
mov ecx, 3
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
mov edi, 0x57
jmp 0x100039a5a
cmp r13, r14
je 0x1000398ba
mov rcx, qword [r13]
cmp rcx, r14
je 0x10003986f
cmp qword [r13 + 0x10], r14
je 0x10003986f
cmp qword [r13 + 0x18], r14
je 0x10003986f
cmp qword [r13 + 8], r14
je 0x10003986f
lea rdi, [0x100005b10]
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r14d
je 0x10003986f
mov rdx, rdi
mov rcx, qword [r13 + 0x10]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r14d
je 0x10003986f
mov rdx, rdi
mov rcx, qword [r13 + 0x18]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r14d
je 0x10003986f
mov rdx, rdi
mov rcx, qword [r13 + 8]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
cmp eax, r14d
jne 0x1000398ba
lea rdx, [0x10000c610]
mov ecx, 3
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
mov edi, 0x57
jmp 0x100039a5a
call fcn.100033614
cmp eax, r14d
jne 0x10003990f
lea rdx, [0x10000c1a0]
mov ecx, 3
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
mov edi, 5
jmp 0x100039a5a
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x90]
call fcn.10003d47c
mov edi, eax
cmp eax, r14d
je 0x100039973
mov r9, rbx
lea r8, [0x10000be40]
mov edx, eax
mov ecx, 3
call fcn.10003c494
nop
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
jmp 0x100039a5a
mov edi, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
cmp qword [rsp + 0x98], r14
cmovne edi, dword [rsp + 0x1e8]
lea rcx, [rsp + 0x90]
call fcn.10003d1d8
cmp edi, 6
je 0x1000399dd
mov r9, rbp
mov r8, r13
mov edx, esi
mov rcx, rbx
call fcn.100038760
mov edi, eax
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
jmp 0x100039a5a
test sil, 0x10
je 0x1000399f4
lea rdx, [0x10000cd20]
mov ecx, 2
call fcn.10003c3c0
mov r15d, esi
and r15d, 4
mov r14d, esi
mov edi, 1
and r14d, edi
je 0x100039a6b
lea rcx, [rsp + 0x30]
call fcn.100035be0
test eax, eax
je 0x100039a6b
lea rdx, [0x10000c720]
lea ecx, [rdi + 2]
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
mov edi, 0xd
lea rcx, [rsp + 0x30]
call fcn.10001fba0
mov eax, edi
jmp 0x100039fca
test sil, 2
je 0x100039a7e
xor ecx, ecx
call fcn.10004e368
mov dword [rsp + 0x68], eax
jmp 0x100039a89
mov ecx, edi
call fcn.10004e368
mov dword [rsp + 0x68], eax
mov ebp, 3
mov edi, 0x103
test sil, 8
je 0x100039b9f
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x48]
call fcn.10001ff10
nop
mov rcx, rax
call fcn.10004f010
test eax, eax
je 0x100039b9f
cmp eax, edi
jne 0x100039b97
test r15d, r15d
jne 0x100039b9f
test r13, r13
je 0x100039b8f
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x48]
call fcn.10001ff10
nop
lea rdx, [rsp + 0x20]
mov rcx, rax
call fcn.10004eaa8
test eax, eax
jne 0x100039f32
lea rax, [rsp + 0x48]
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x28]
mov qword [rsp + 0x58], rax
mov rdx, qword [r13 + 8]
lea rcx, [rsp + 0x48]
call fcn.10001ff98
mov rdi, rax
mov rdx, qword [r13]
lea rcx, [rsp + 0x60]
call fcn.10001ff98
mov rbx, rax
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x28]
call fcn.10001ff10
nop
lea r9, [rsp + 0x240]
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call fcn.1000475b0
mov r12d, eax
test eax, eax
jne 0x100039d81
mov r12d, 0x103
jmp 0x100039f32
mov r12d, edi
jmp 0x100039f32
mov r12d, eax
jmp 0x100039d78
lea rax, [rsp + 0x28]
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x28]
call fcn.10001ff10
nop
lea rdx, [rsp + 0x20]
mov rcx, rax
call fcn.10004eaa8
test eax, eax
jne 0x100039be9
test r14d, r14d
je 0x100039bdb
lea edi, [rax + 2]
lea eax, [rdi - 1]
lea r12d, [rdi + 0xe]
jmp 0x100039bfb
mov edi, ebp
mov r12d, dword [rsp + 0x60]
mov eax, 1
jmp 0x100039bfb
xor edi, edi
cmp eax, 0x490
lea eax, [rdi + 1]
cmove edi, eax
mov r12d, dword [rsp + 0x60]
xor esi, esi
mov dword [rsp + 0x50], esi
cmp edi, 2
je 0x100039c0a
cmp edi, eax
jne 0x100039c74
lea rcx, [rsp + 0x30]
call fcn.100035be0
test eax, eax
je 0x100039c31
lea rdx, [0x10000ce00]
mov ecx, ebp
call fcn.10003c3c0
mov r12d, 0x780
jmp 0x100039f32
lea rax, [rsp + 0x28]
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x28]
call fcn.10001ff10
nop
lea r8, [rsp + 0x20]
mov edx, r12d
mov rcx, rax
call fcn.10004eb98
mov r12d, eax
test eax, eax
jne 0x100039d24
lea eax, [r12 + 1]
cmp edi, eax
cmove esi, eax
mov dword [rsp + 0x50], esi
test r13, r13
je 0x100039ced
lea rax, [rsp + 0x28]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x80], rax
mov rdx, qword [r13 + 8]
lea rcx, [rsp + 0x28]
call fcn.10001ff98
mov rsi, rax
mov rdx, qword [r13]
lea rcx, [rsp + 0x48]
call fcn.10001ff98
mov rdi, rax
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x60]
call fcn.10001ff10
nop
lea r9, [rsp + 0x240]
mov r8, rsi
mov rdx, rdi
mov rcx, rax
call fcn.1000475b0
mov r12d, eax
test eax, eax
jne 0x100039d81
mov edi, 1
mov dword [rsp + 0x70], edi
mov r8, rbx
lea rdx, [0x10000cea0]
mov ecx, edi
call fcn.10003c3c0
mov r9, qword [rsp + 0x258]
mov r8d, r14d
mov edx, r15d
lea rcx, [rsp + 0x20]
call fcn.10003b6d8
mov r12d, eax
jmp 0x100039d78
mov edx, 0x800b0110
cmp eax, edx
jne 0x100039d40
lea r8, [0x10000c3d0]
mov ecx, ebp
call fcn.10003c494
jmp 0x100039f32
mov edx, 0x800b0100
cmp eax, edx
jne 0x100039d5c
lea r8, [0x10000c430]
mov ecx, ebp
call fcn.10003c494
jmp 0x100039f32
cmp eax, 2
jne 0x100039d78
mov r12d, 0xe0000303
mov r8, rbx
lea rdx, [0x10000c490]
mov ecx, ebp
call fcn.10003c3c0
test r12d, r12d
je 0x100039f32
cmp r12d, 0x103
je 0x100039f32
cmp r12d, 0xe000020b
je 0x100039f32
cmp r12d, 0xe0000301
je 0x100039f32
mov rbx, qword [rsp + 0x20]
cmp dword [rsp + 0x70], 0
je 0x100039e74
cmp dword [rsp + 0x240], 0
jne 0x100039e7b
test r13, r13
je 0x100039e82
lea rax, [rsp + 0x28]
mov qword [rsp + 0x240], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x78], rax
mov rdx, qword [r13 + 8]
lea rcx, [rsp + 0x28]
call fcn.10001ff98
mov rsi, rax
mov rdx, qword [r13]
lea rcx, [rsp + 0x48]
call fcn.10001ff98
mov rdi, rax
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x70]
call fcn.10001ff10
nop
lea r9, [rsp + 0x240]
mov r8, rsi
mov rdx, rdi
mov rcx, rax
call fcn.100047ae0
test eax, eax
je 0x100039e58
mov r9, rbx
mov r8, qword [r13]
lea rdx, [0x10000cb40]
mov ecx, ebp
call fcn.10003c3c0
mov edi, 1
jmp 0x100039e87
mov r9, rbx
mov r8, qword [r13]
lea rdx, [0x10000cbd0]
mov edi, 1
mov ecx, edi
call fcn.10003c3c0
jmp 0x100039e87
mov edi, 1
jmp 0x100039e87
mov edi, 1
jmp 0x100039e87
mov edi, 1
cmp dword [rsp + 0x50], 0
je 0x100039f32
lea rax, [rsp + 0x240]
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x240]
call fcn.10001ff10
nop
mov rcx, rax
call fcn.10004ed08
test eax, eax
je 0x100039ed1
mov r8, rbx
lea rdx, [0x10000cf00]
mov ecx, ebp
call fcn.10003c3c0
jmp 0x100039ee2
mov r8, rbx
lea rdx, [0x10000cf60]
mov ecx, edi
call fcn.10003c3c0
lea rax, [rsp + 0x240]
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x240]
call fcn.10001ff10
nop
mov rcx, rax
call fcn.1000482a0
test eax, eax
je 0x100039f21
mov r8, rbx
lea rdx, [0x10000cfc0]
mov ecx, ebp
call fcn.10003c3c0
jmp 0x100039f32
mov r8, rbx
lea rdx, [0x10000d040]
mov ecx, edi
call fcn.10003c3c0
mov ecx, dword [rsp + 0x68]
call fcn.10004e368
nop
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10001fba0
mov eax, r12d
jmp 0x100039fca
lea rdx, [0x10000bdc0]
mov ecx, 3
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x90]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x20]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x40]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x38]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10001fba0
mov eax, 0x57
add rsp, 0x1f8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret