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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe94
mov eax, dword [0x52fe80]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov dword [ebp - 0xe8c], eax
mov edi, ecx
xor eax, eax
push 0x24c
push eax
mov dword [ebp - 0xe94], eax
mov dword [ebp - 0xe88], eax
lea eax, [ebp - 0xe84]
push eax
call fcn.004bf240
add esp, 0xc
xor eax, eax
mov ebx, 0x40e
mov word [ebp - 0x828], ax
push ebx
push eax
lea eax, [ebp - 0x826]
push eax
call fcn.004bf240
add esp, 0xc
xor eax, eax
mov word [ebp - 0xc38], ax
push ebx
push eax
lea eax, [ebp - 0xc36]
push eax
call fcn.004bf240
add esp, 0xc
xor eax, eax
mov word [ebp - 0x418], ax
push ebx
push eax
lea eax, [ebp - 0x416]
push eax
call fcn.004bf240
add esp, 0xc
push edi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x442938
test al, 0x10
jne 0x442938
test esi, esi
je 0x442ae5
lea eax, [ebp - 0xe88]
push eax
push edi
call esi
jmp 0x442ae5
push edi
lea eax, [ebp - 0xc38]
push str._s
push eax
call fcn.004c033a
add esp, 0xc
lea eax, [ebp - 0xe88]
push eax
lea eax, [ebp - 0xc38]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov ebx, eax
mov dword [ebp - 0xe90], ebx
cmp ebx, 0xffffffff
je 0x442ae5
test byte [ebp - 0xe88], 0x10
lea eax, [ebp - 0xe5c]
je 0x442a9a
mov ecx, 0x50f8fc
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4429b0
test dx, dx
je 0x4429ac
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4429b0
add eax, 4
add ecx, 4
test dx, dx
jne 0x44298a
xor eax, eax
jmp 0x4429b5
sbb eax, eax
or eax, 1
test eax, eax
je 0x442ac8
mov ecx, 0x50f900
lea eax, [ebp - 0xe5c]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4429ee
test dx, dx
je 0x4429ea
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4429ee
add eax, 4
add ecx, 4
test dx, dx
jne 0x4429c8
xor eax, eax
jmp 0x4429f3
sbb eax, eax
or eax, 1
test eax, eax
je 0x442ac8
lea eax, [ebp - 0xe5c]
push eax
push edi
lea eax, [ebp - 0x418]
push str._s_s
push eax
call fcn.004c033a
mov eax, dword [ebp - 0xe8c]
add esp, 0x10
test eax, eax
je 0x442a83
lea ecx, [ebp - 0xe88]
push ecx
lea ecx, [ebp - 0x418]
push ecx
call eax
test eax, eax
jne 0x442a7d
lea eax, [ebp - 0x418]
push 0x5c
push eax
call fcn.004c07d5
mov edx, eax
pop ecx
pop ecx
test edx, edx
je 0x442ade
mov ecx, edx
lea ebx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0xe94]
jne 0x442a54
sub ecx, ebx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
xor eax, eax
push eax
push edx
call fcn.004bf240
mov ebx, dword [ebp - 0xe90]
add esp, 0xc
mov eax, dword [ebp - 0xe8c]
push eax
push esi
lea edx, [ebp - 0xe88]
lea ecx, [ebp - 0x418]
call fcn.00442877
pop ecx
pop ecx
jmp 0x442ac8
push eax
push edi
lea eax, [ebp - 0x828]
push str._s_s
push eax
call fcn.004c033a
add esp, 0x10
test esi, esi
je 0x442ac8
lea eax, [ebp - 0xe88]
push eax
lea eax, [ebp - 0x828]
push eax
call esi
test eax, eax
je 0x442ade
lea eax, [ebp - 0xe88]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x442972
push ebx
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004bc1bd
mov esp, ebp
pop ebp
ret