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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
mov rax, rsp
sub rsp, 0x1d0
mov qword [rsp + 0x68], 0xfffffffffffffffe
mov esi, edx
mov rbx, rcx
lea rcx, [rax + 0x48]
call fcn.10001fee0
nop
lea rcx, [rsp + 0x200]
call fcn.10001fee0
nop
lea rcx, [rsp + 0x70]
call fcn.10003cea0
nop
lea rcx, [rsp + 0x30]
call fcn.100044f88
nop
lea rcx, [rsp + 0x210]
call fcn.10001fee0
nop
xor r12d, r12d
test rbx, rbx
jne 0x10003785d
lea rdx, [0x10000c050]
lea ecx, [rbx + 3]
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
lea edi, [rbx + 0x57]
jmp 0x100037d67
mov eax, 0x7fff
mov rcx, rbx
cmp word [rcx], r12w
je 0x100037875
add rcx, 2
sub rax, 1
jne 0x100037865
test rax, rax
jne 0x1000378c6
lea rdx, [0x10000c0b0]
lea ecx, [rax + 3]
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
mov edi, 0xce
jmp 0x100037d67
lea rax, [rsp + 0x20]
mov qword [rsp + 0x28], rax
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.10001ff98
nop
xor r8d, r8d
lea rdx, [rsp + 0x218]
mov rcx, rax
call fcn.1000349f8
mov edi, eax
test eax, eax
je 0x100037945
mov r9, rbx
lea r8, [0x10000c100]
mov edx, eax
mov ecx, 3
call fcn.10003c494
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
jmp 0x100037d67
mov rbx, qword [rsp + 0x218]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov edi, eax
cmp eax, 0xffffffff
jne 0x100037967
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x10003796d
shr edi, 3
and edi, 2
test edi, edi
je 0x1000379bf
mov r9, rbx
lea r8, [0x10000c148]
mov edx, edi
mov ecx, 3
call fcn.10003c494
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
jmp 0x100037d67
test esi, 0xffffffe0
je 0x100037a15
lea rdx, [0x10000c178]
mov ecx, 3
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
mov edi, 0x57
jmp 0x100037d67
call fcn.100033614
test eax, eax
jne 0x100037a6a
lea rdx, [0x10000c1a0]
lea ecx, [rax + 3]
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
mov edi, 5
jmp 0x100037d67
test sil, 1
je 0x100037a7b
mov r12d, 0x10
jmp 0x100037afb
lea rax, [rsp + 0x20]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0x20]
call fcn.10001ff10
nop
lea rdx, [rsp + 0x200]
mov rcx, rax
call fcn.10004eaa8
test eax, eax
jne 0x100037afb
mov r8, rbx
lea rdx, [0x10000c370]
lea ecx, [rax + 1]
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
mov edi, 0xb7
jmp 0x100037d67
lea rcx, [rsp + 0x218]
call fcn.100035be0
test eax, eax
je 0x100037b5a
lea rdx, [0x10000c200]
mov ecx, 3
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
mov edi, 0x780
jmp 0x100037d67
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0x70]
call fcn.10003d47c
mov edi, eax
test eax, eax
je 0x100037bc0
mov r9, rbx
lea r8, [0x10000be40]
mov edx, eax
mov ecx, 3
call fcn.10003c494
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
jmp 0x100037d67
mov ebp, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov edi, ebp
cmp qword [rsp + 0x78], 0
cmovne edi, dword [rsp + 0x1c8]
lea rcx, [rsp + 0x70]
call fcn.10003d1d8
cmp edi, 6
je 0x100037c43
cmp qword [rsp + 0x78], 0
cmovne ebp, dword [rsp + 0x1c8]
mov r8d, ebp
lea rdx, [0x10000c2f0]
mov ecx, 3
call fcn.10003c3c0
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
mov edi, 1
jmp 0x100037d67
test sil, 2
je 0x100037c54
xor ecx, ecx
call fcn.10004e368
mov ebp, eax
jmp 0x100037c60
mov ecx, 1
call fcn.10004e368
mov ebp, eax
test sil, 8
je 0x100037ca8
lea rax, [rsp + 0x20]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0x20]
call fcn.10001ff10
nop
mov rcx, rax
call fcn.10004f010
mov edi, eax
cmp eax, 0x103
jne 0x100037ca0
test sil, 4
je 0x100037d2d
xor edi, edi
test edi, edi
jne 0x100037d2d
lea rax, [rsp + 0x20]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0x20]
call fcn.10001ff10
nop
xor r8d, r8d
mov edx, r12d
mov rcx, rax
call fcn.10004eb98
mov edi, eax
test eax, eax
je 0x100037d2d
mov edx, 0x800b0110
cmp eax, edx
jne 0x100037cf5
lea r8, [0x10000c3d0]
mov ecx, 3
call fcn.10003c494
jmp 0x100037d2d
mov edx, 0x800b0100
cmp eax, edx
jne 0x100037d11
lea r8, [0x10000c430]
mov ecx, 3
call fcn.10003c494
jmp 0x100037d2d
cmp eax, 2
jne 0x100037d2d
mov edi, 0xe0000303
mov r8, rbx
lea rdx, [0x10000c490]
lea ecx, [rax + 1]
call fcn.10003c3c0
mov ecx, ebp
call fcn.10004e368
nop
lea rcx, [rsp + 0x210]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x30]
call fcn.10004504c
nop
lea rcx, [rsp + 0x70]
call fcn.10003d21c
nop
lea rcx, [rsp + 0x200]
call fcn.10001fba0
nop
lea rcx, [rsp + 0x218]
call fcn.10001fba0
mov eax, edi
add rsp, 0x1d0
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret