Function at 0x659ef0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov al, 1
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
lea ecx, [eax - 2]
cmp ecx, 2
jae 0x659f41
mov esi, 4
movzx ebx, byte [0x73ab80]
push esi
push 0x1000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
cmp byte [ebp - 0x10], 0
je 0x659f34
test bl, bl
je 0x659f34
test eax, eax
je 0x659f5d
test eax, eax
setne al
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret
cmp eax, 6
ja case.0x659f4f.2
mov esi, 2
jmp dword [eax*4 + 0x711f5c]
mov esi, 0x40
jmp case.0x659f4f.1
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x659f79
cmp eax, 0x27b
jne 0x65a18d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push 0x1000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x659f34
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x659fb1
cmp eax, 0x27b
jne 0x65a18d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push 0x1000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x659f34
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x659fed
cmp eax, 0x27b
jne 0x65a18d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push 0x1000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x659f34
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x65a029
cmp eax, 0x27b
jne 0x65a18d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push 0x1000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x659f34
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x65a065
cmp eax, 0x27b
jne 0x65a18d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push 0x1000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x659f34
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x65a0a1
cmp eax, 0x27b
jne 0x65a18d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push 0x1000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x659f34
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x65a0dd
cmp eax, 0x27b
jne 0x65a18d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push 0x1000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x659f34
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x65a115
cmp eax, 0x27b
jne 0x65a18d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push 0x1000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x659f34
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x65a14d
cmp eax, 0x27b
jne 0x65a18d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push 0x1000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x659f34
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x65a185
cmp eax, 0x27b
jne 0x65a18d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
xor eax, eax
jmp 0x659f34
xor esi, esi
inc esi
mov dword [ebp - 0x10], 0
jmp case.0x659f4f.1
mov esi, 0x20
jmp case.0x659f4f.1
push 0x4000
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualFree]
jmp 0x659f34