Function at 0x452620
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov esi, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
lea eax, [esi - 3]
cmp eax, 2
jae 0x452663
mov esi, 4
movzx ebx, byte [0x4fb74c]
push esi
push 0x1000
push edi
push ecx
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test bl, bl
je 0x452659
test eax, eax
je 0x45267a
test eax, eax
setne al
pop esi
pop edi
pop ebx
pop ebp
ret
cmp esi, 7
ja case.0x45266c.3
jmp dword [esi*4 + 0x4dd588]
mov esi, 0x40
jmp case.0x45266c.2
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x452696
cmp eax, 0x27b
je 0x452696
xor eax, eax
jmp 0x452659
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 0x452659
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x4526ca
cmp eax, 0x27b
jne 0x452692
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 0x452659
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x452702
cmp eax, 0x27b
jne 0x452692
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 0x452659
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x45273e
cmp eax, 0x27b
jne 0x452692
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 0x452659
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x45277a
cmp eax, 0x27b
jne 0x452692
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 0x452659
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x4527b6
cmp eax, 0x27b
jne 0x452692
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 0x452659
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x4527f2
cmp eax, 0x27b
jne 0x452692
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 0x452659
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x45282e
cmp eax, 0x27b
jne 0x452692
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 0x452659
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x45286a
cmp eax, 0x27b
jne 0x452692
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 0x452659
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x4528a6
cmp eax, 0x27b
jne 0x452692
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x452692
int3
mov esi, 0x20
jmp case.0x45266c.2
push 0x4000
push edi
push ecx
call dword [sym.imp.KERNEL32.dll_VirtualFree]
jmp 0x452659