Function at 0x4291e0
Capabilities:
Check if file exists

Disassembly:
mov r11, rsp
sub rsp, 0x1b8
mov rax, qword [0x0044d028]
mov qword [rsp + 0x1a0], rax
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rsi
mov qword [r11 - 8], rdi
mov rdi, rdx
lea rdx, [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp rax, 0xffffffffffffffff
mov rsi, rax
jne 0x42927b
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jb 0x429236
cmp eax, 3
jbe 0x429264
cmp eax, 8
je 0x42924d
cmp eax, 0x12
je 0x429264
call fcn.0042cc90
mov dword [rax], 0x16
mov rax, 0xffffffffffffffff
jmp 0x429431
call fcn.0042cc90
mov dword [rax], 0xc
mov rax, 0xffffffffffffffff
jmp 0x429431
call fcn.0042cc90
mov dword [rax], 2
mov rax, 0xffffffffffffffff
jmp 0x429431
mov eax, dword [rsp + 0x60]
xor ecx, ecx
cmp eax, 0x80
cmove eax, ecx
cmp dword [rsp + 0x64], ecx
mov dword [rdi], eax
jne 0x4292a3
cmp dword [rsp + 0x68], ecx
jne 0x4292a3
mov rbx, 0xffffffffffffffff
mov rax, rbx
jmp 0x429311
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x64]
call qword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
test eax, eax
je 0x429307
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
test eax, eax
je 0x429307
movzx eax, word [rsp + 0x4c]
movzx r10d, word [rsp + 0x4a]
movzx r9d, word [rsp + 0x48]
movzx r8d, word [rsp + 0x46]
movzx edx, word [rsp + 0x42]
movzx ecx, word [rsp + 0x40]
mov rbx, 0xffffffffffffffff
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r10d
call fcn.00433ad0
jmp 0x429311
mov rbx, 0xffffffffffffffff
mov rax, rbx
cmp dword [rsp + 0x6c], 0
mov qword [rdi + 8], rax
jne 0x429328
cmp dword [rsp + 0x70], 0
jne 0x429328
mov rax, rbx
jmp 0x429388
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x6c]
call qword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
test eax, eax
je 0x429385
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
test eax, eax
je 0x429385
movzx eax, word [rsp + 0x4c]
movzx r10d, word [rsp + 0x4a]
movzx r9d, word [rsp + 0x48]
movzx r8d, word [rsp + 0x46]
movzx edx, word [rsp + 0x42]
movzx ecx, word [rsp + 0x40]
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r10d
call fcn.00433ad0
jmp 0x429388
mov rax, rbx
cmp dword [rsp + 0x74], 0
mov qword [rdi + 0x10], rax
jne 0x42939a
cmp dword [rsp + 0x78], 0
je 0x4293f8
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x74]
call qword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
test eax, eax
je 0x4293f8
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
test eax, eax
je 0x4293f8
movzx eax, word [rsp + 0x4c]
movzx r10d, word [rsp + 0x4a]
movzx r9d, word [rsp + 0x48]
movzx r8d, word [rsp + 0x46]
movzx edx, word [rsp + 0x42]
movzx ecx, word [rsp + 0x40]
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r10d
call fcn.00433ad0
mov rbx, rax
mov eax, dword [rsp + 0x80]
lea rdx, [rdi + 0x24]
mov qword [rdi + 0x18], rbx
mov dword [rdi + 0x20], eax
lea rax, [rsp + 0x8c]
lea rcx, [rsp + 0x8c]
sub rdx, rax
nop
movzx eax, byte [rcx]
inc rcx
test al, al
mov byte [rdx + rcx - 1], al
jne 0x429420
mov rax, rsi
mov rdi, qword [rsp + 0x1b0]
mov rsi, qword [rsp + 0x1d8]
mov rbx, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1a0]
call fcn.0043c500
add rsp, 0x1b8
ret