Function at 0x1c4ff70
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 8
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
lea ecx, [eax - 1]
cmp ecx, 5
jbe 0x1c4ffe6
xor esi, esi
inc esi
mov dword [ebp - 0x14], 0
xor ebx, ebx
test eax, eax
setne bl
or ebx, 2
shl ebx, 0xc
mov al, byte [0x1d1bddc]
mov byte [ebp - 0xd], al
push esi
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x1c4ffcc
cmp byte [ebp - 0x14], 0
je 0x1c4ffcc
mov ecx, ebx
and ecx, 0x1000
je 0x1c4ffcc
cmp byte [ebp - 0xd], 0
jne 0x1c5000c
test eax, eax
jne 0x1c4ffde
call dword [sym.imp.KERNEL32.dll_GetLastError]
xchg dword [0x1d1bdd0], eax
xor eax, eax
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret
mov esi, 2
mov dl, 1
mov dword [ebp - 0x14], edx
jmp dword [ecx*4 + 0x1cfc4c4]
mov esi, 4
jmp case.0x1c4fff0.1
mov esi, 0x20
jmp case.0x1c4fff0.1
mov esi, 0x40
jmp case.0x1c4fff0.1
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x1c50024
cmp eax, 0x27b
jne 0x1c4ffd0
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x1c4ffde
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x1c50058
cmp eax, 0x27b
jne 0x1c4ffd0
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x1c4ffde
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x1c50090
cmp eax, 0x27b
jne 0x1c4ffd0
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x1c4ffde
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x1c500c8
cmp eax, 0x27b
jne 0x1c4ffd0
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x1c4ffde
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x1c50100
cmp eax, 0x27b
jne 0x1c4ffd0
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x1c4ffde
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x1c50138
cmp eax, 0x27b
jne 0x1c4ffd0
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x1c4ffde
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x1c50170
cmp eax, 0x27b
jne 0x1c4ffd0
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x1c4ffde
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x1c501a8
cmp eax, 0x27b
jne 0x1c4ffd0
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x1c4ffde
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x1c501e0
cmp eax, 0x27b
jne 0x1c4ffd0
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push esi
push ebx
push edi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
jne 0x1c4ffde
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [eax - 0x5ae]
cmp ecx, 2
jb 0x1c50218
cmp eax, 0x27b
jne 0x1c4ffd0
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1c4ffd0