Function at 0x4acf30
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x103c
call fcn.0044c8e0
mov eax, dword [0x502204]
xor eax, esp
mov dword [esp + 0x1038], eax
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov ebx, edx
mov esi, ecx
mov dword [esp + 0x14], ebx
push 4
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x2c], vtable.t_str.0
call fcn.0046c3ce
add esp, 4
mov dword [esp + 0x30], eax
lea ecx, [esp + 0x28]
mov dword [esp + 0x34], 0
mov dword [eax], 0
call fcn.004a60e0
push edi
lea ecx, [esp + 0x2c]
call fcn.004a5ed0
push 4
mov dword [esp + 0x1c], vtable.t_str.0
call fcn.0046c3ce
add esp, 4
mov dword [esp + 0x20], eax
lea ecx, [esp + 0x18]
mov dword [esp + 0x24], 0
mov dword [eax], 0
call fcn.004a60e0
push ebx
lea ecx, [esp + 0x1c]
call fcn.004a5ed0
mov eax, dword [esp + 0x30]
mov bl, 1
add eax, 4
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x4ad007
shr eax, 4
not al
and al, bl
je 0x4ad007
push ecx
lea eax, [esp + 0x1c]
push eax
push esi
lea ecx, [esp + 0x34]
call fcn.004b6bb0
test al, al
jmp 0x4ad18a
lea ecx, [esp + 0x28]
call fcn.004b7370
test al, al
jne 0x4ad01f
mov ebx, dword [esp + 0x38]
mov edi, 0x4e538c
jmp 0x4ad044
lea ecx, [esp + 0x18]
call fcn.004b7370
test al, al
jne 0x4ad06f
push ecx
push esi
lea ecx, [esp + 0x20]
call fcn.004b71c0
test al, al
jne 0x4ad06f
mov ebx, dword [esp + 0x14]
mov edi, 0x4e5398
mov ecx, esi
call fcn.004a7c10
push edi
mov esi, eax
push 0x4e3d38
push esi
call fcn.004a4cb0
push ebx
push 0x4e3d38
push esi
call fcn.004a4cb0
add esp, 0x18
xor bl, bl
jmp 0x4ad192
push edi
lea eax, [esp + 0x44]
push 0x4e53a8
push eax
call fcn.00404d60
add esp, 0xc
lea eax, [esp + 0x40]
push 0x51e5c8
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, eax
cmp esi, 0xffffffff
je 0x4ad190
nop dword [eax]
mov edx, 0x4e53b8
mov ecx, 0x51e5f4
nop word [eax + eax]
mov ax, word [ecx]
cmp ax, word [edx]
jne 0x4ad0d6
test ax, ax
je 0x4ad0d2
mov ax, word [ecx + 2]
cmp ax, word [edx + 2]
jne 0x4ad0d6
add ecx, 4
add edx, 4
test ax, ax
jne 0x4ad0b0
xor eax, eax
jmp 0x4ad0db
sbb eax, eax
or eax, 1
test eax, eax
je 0x4ad16d
mov eax, 0x4e53bc
mov ecx, 0x51e5f4
nop dword [eax]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4ad116
test dx, dx
je 0x4ad112
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4ad116
add ecx, 4
add eax, 4
test dx, dx
jne 0x4ad0f0
xor eax, eax
jmp 0x4ad11b
sbb eax, eax
or eax, 1
test eax, eax
je 0x4ad16d
push 0x51e5f4
push edi
lea eax, [esp + 0x48]
push 0x4e53c4
push eax
call fcn.00404d60
push 0x51e5f4
push dword [esp + 0x28]
lea eax, [esp + 0x858]
push 0x4e53d0
push eax
call fcn.00404d60
mov ecx, dword [esp + 0x5c]
lea eax, [esp + 0x60]
push eax
lea edx, [esp + 0x864]
call fcn.004acf30
add esp, 0x24
neg al
sbb al, al
and bl, al
push 0x51e5c8
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x4ad0a0
push esi
call dword [sym.imp.KERNEL32.dll_FindClose]
test bl, bl
jne 0x4ad190
xor bl, bl
jmp 0x4ad192
mov bl, 1
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4ad1a3
push eax
call fcn.00459651
add esp, 4
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4ad1b4
push eax
call fcn.00459651
add esp, 4
mov ecx, dword [esp + 0x1044]
mov al, bl
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0044c8c5
mov esp, ebp
pop ebp
ret