Function at 0x401be0
Capabilities:
Check if file exists

Disassembly:
sub esp, 0x214
mov eax, dword [0x4bdbb0]
xor eax, esp
mov dword [esp + 0x210], eax
push ebp
mov ebp, dword [esp + 0x21c]
push esi
push edi
push str.._
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x18], ebp
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
push ebp
call esi
cmp eax, 8
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatW]
jle 0x401c3d
push 9
push ebp
lea ecx, [esp + 0x24]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
xor edx, edx
mov word [esp + 0x2c], dx
jmp 0x401c45
push ebp
lea eax, [esp + 0x18]
push eax
call edi
mov ecx, 0x3a
cmp cx, word [esp + 0x1e]
jne 0x401c58
xor edx, edx
mov word [esp + 0x20], dx
push ebp
call esi
cmp eax, 1
jne 0x401c6c
push 0x4a2054
lea eax, [esp + 0x18]
push eax
call edi
mov edi, dword [sym.imp.KERNEL32.dll_CreateFileW]
push 0
push 0x20000000
push 3
push 0
push 3
push 0
lea ecx, [esp + 0x2c]
push ecx
call edi
cmp eax, 0xffffffff
jne 0x401cd6
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0
lea edx, [esp + 0x20]
push edx
push 2
mov edi, eax
call dword [0x4c9050]
movzx esi, word [ebp]
shl esi, 0x10
or esi, 0x8004
call fcn.00401120
xor eax, eax
cmp edi, 2
pop edi
pop esi
sete al
pop ebp
mov ecx, dword [esp + 0x210]
xor ecx, esp
call fcn.004644d0
add esp, 0x214
ret
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
push eax
call ebx
push 0
push 0x20000080
push 3
push 0
push 3
push 0xc0000000
lea eax, [esp + 0x30]
push eax
call edi
mov esi, eax
cmp esi, 0xffffffff
je 0x401d22
push esi
call dword [sym.imp.KERNEL32.dll_FlushFileBuffers]
push esi
mov dword [esp + 0x14], eax
call ebx
cmp dword [esp + 0x10], 0
je 0x401d22
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x401d3c
mov ecx, dword [esp + 0x22c]
push ecx
mov ecx, ebp
call fcn.00401f00
add esp, 4
test eax, eax
jne 0x401ede
cmp dword [esp + 0x22c], 0
je 0x401da2
movzx edx, word [ebp]
push edx
call fcn.00402b30
mov esi, eax
add esp, 4
cmp esi, 0xffffffff
jne 0x401d61
xor eax, eax
jmp 0x401ede
mov edx, ebp
mov ecx, esi
call fcn.00401350
push esi
mov dword [esp + 0x14], eax
call ebx
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x401ede
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esp + 0x22c]
push eax
mov ecx, ebp
call fcn.00401f00
add esp, 4
test eax, eax
jne 0x401ede
push 0
push 0x20000000
push 3
push 0
push 3
push 0xc0000000
lea ecx, [esp + 0x30]
push ecx
call edi
mov esi, eax
cmp esi, 0xffffffff
je 0x401e0a
cmp dword [esp + 0x22c], 0
je 0x401e1f
push 0
lea eax, [esp + 0x14]
push eax
push 0
push 0
push 0
push 0
push 0x90020
push esi
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
push esi
call ebx
push 0
push 0x20000000
push 3
push 0
push 3
push 0xc0000000
lea ecx, [esp + 0x30]
push ecx
call edi
mov esi, eax
cmp esi, 0xffffffff
jne 0x401e1f
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor edx, edx
cmp eax, 2
sete dl
mov eax, edx
jmp 0x401ede
mov edx, ebp
mov ecx, esi
call fcn.00401350
cmp dword [esp + 0x22c], 0
mov ebp, eax
je 0x401ec2
test ebp, ebp
jne 0x401ec6
push esi
call ebx
push ebp
push 0x20000000
push 3
push ebp
push 3
push 0xc0000000
lea eax, [esp + 0x30]
push eax
call edi
mov esi, eax
cmp esi, 0xffffffff
je 0x401ea3
push ebp
lea edx, [esp + 0x14]
push edx
push ebp
push ebp
push ebp
push ebp
push 0x90020
push esi
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
call ebx
push ebp
push 0x20000000
push 3
push ebp
push 3
push 0xc0000000
lea eax, [esp + 0x30]
push eax
call edi
mov esi, eax
cmp esi, 0xffffffff
jne 0x401eb5
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
cmp eax, 2
sete cl
mov eax, ecx
jmp 0x401ede
mov edx, dword [esp + 0x14]
mov ecx, esi
call fcn.00401350
mov ebp, eax
test ebp, ebp
je 0x401eca
xor edi, edi
jmp 0x401ed2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
push esi
call ebx
push edi
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, ebp
mov ecx, dword [esp + 0x220]
pop ebx
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.004644d0
add esp, 0x214
ret