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

Disassembly:
mov eax, 0x4f4176
call fcn.004eadec
sub esp, 0x258
mov eax, dword [0x516ad4]
push ebx
push esi
mov esi, ecx
test esi, esi
mov dword [ebp - 0x10], eax
push edi
mov ebx, edx
je 0x44e06d
push dword [ebx + 0x2fd0]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x44e06d
push dword [esi + 8]
lea edi, [ebp - 0x21c]
call fcn.004031b3
xor edi, edi
mov dword [ebp - 4], edi
mov esi, dword [esi]
cmp esi, 2
jne 0x44deae
mov dword [ebp - 0x23c], edi
mov dword [ebp - 0x238], edi
mov dword [ebp - 0x234], edi
mov dword [ebp - 0x230], edi
lea eax, [ebp - 0x24c]
push eax
push ecx
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x21c]
mov esi, esp
mov dword [ebp - 0x220], esp
call fcn.0040318a
call fcn.0044c4c4
test eax, eax
je 0x44de9e
lea eax, [ebp - 0x24c]
push eax
push 3
push 0x784
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
lea esi, [ebp - 0x23c]
call fcn.0045d87b
jmp 0x44e056
xor eax, eax
cmp esi, 1
sete al
cmp eax, edi
mov dword [ebp - 0x22c], eax
jne 0x44dee6
lea esi, [ebx + 0x3a40]
cmp dword [esi], edi
je 0x44dee6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi]
add ecx, 0x3e8
cmp eax, ecx
jae 0x44dee6
mov dword [ebp - 0x22c], 1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebx + 0x3a40], eax
cmp dword [0x521c14], edi
je 0x44df02
cmp dword [0x521b68], edi
jne 0x44df28
cmp dword [0x5217a4], edi
je 0x44df18
push edi
push edi
lea eax, [ebx + 0x2fcc]
push eax
call fcn.0046be57
cmp dword [ebp - 0x22c], edi
jne 0x44df33
cmp dword [0x5217a0], edi
je 0x44df33
lea ecx, [ebx + 0x2fcc]
call fcn.0046bff1
mov eax, dword [ebx + 0x30bc]
add ebx, 0x2fcc
cmp eax, edi
mov dword [ebp - 0x224], ebx
je 0x44df4e
mov eax, dword [eax + 4]
jmp 0x44df50
xor eax, eax
mov esi, dword [ebp - 0x22c]
push dword [ebp - 0x21c]
mov edi, dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
neg esi
sbb esi, esi
and esi, eax
call edi
cmp eax, 0xffffffff
je 0x44e02b
test al, 0x10
jne 0x44e09e
mov ebx, dword [sym.imp.MSVCRT.dll_wcsrchr]
push 0x2e
push dword [ebp - 0x21c]
call ebx
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x220], eax
je 0x44e02b
push 0x4fdcdc
push eax
call dword [sym.imp.MSVCRT.dll__wcsicmp]
test eax, eax
pop ecx
pop ecx
jne 0x44e0dd
and dword [ebp - 0x228], eax
mov byte [ebp - 4], 2
push dword [ebp - 0x21c]
lea eax, [ebp - 0x228]
call fcn.0045e575
test eax, eax
je 0x44e0c9
push 2
push 0x104
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x228]
push eax
xor ecx, ecx
call fcn.0045e5cc
test eax, eax
je 0x44e0c9
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x21c]
call fcn.00403266
push dword [ebp - 0x21c]
call edi
cmp eax, 0xffffffff
jne 0x44e086
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x228]
test eax, eax
je 0x44e02b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edi, dword [ebp - 0x224]
push esi
push dword [ebp - 0x21c]
call fcn.0046d3de
mov esi, eax
cmp dword [ebp - 0x22c], 0
jne 0x44e056
mov edi, dword [ebp - 0x224]
push 1
push esi
call fcn.0046c81f
mov eax, dword [ebp - 0x21c]
add eax, 0xfffffff4
cmp eax, dword [0x51a43c]
je 0x44e06d
push eax
call fcn.004013aa
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
xor eax, eax
call fcn.004eae3c
pop edi
pop esi
pop ebx
leave
ret
test al, 0x10
je 0x44e0b7
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x228]
test eax, eax
je 0x44e09e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push dword [0x521d34]
push dword [ebp - 0x21c]
push dword [ebp - 0x224]
call fcn.0046d5b9
jmp 0x44e03f
push 0x2e
push dword [ebp - 0x21c]
call ebx
pop ecx
pop ecx
mov dword [ebp - 0x220], eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x228]
test eax, eax
je 0x44e0dd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [ebp - 0x220], 0
je 0x44e02b
push dword [ebp - 0x220]
lea edi, [ebp - 0x220]
call fcn.004031b3
mov edi, dword [ebp - 0x220]
mov ebx, dword [sym.imp.MSVCRT.dll__wcsicmp]
push 0x4f9864
push edi
call ebx
test eax, eax
pop ecx
pop ecx
jne 0x44e17b
lea eax, [edi - 0xc]
cmp eax, dword [0x51a43c]
je 0x44e126
push eax
call fcn.004013aa
xor edi, edi
push edi
lea eax, [ebp - 0x264]
call fcn.00404926
push edi
push edi
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x264]
push eax
mov byte [ebp - 4], 3
call fcn.0045ff0d
test eax, eax
je 0x44e167
mov ebx, dword [ebp - 0x224]
push 1
push 1
push esi
lea ecx, [ebp - 0x264]
call fcn.0046cccb
lea eax, [ebp - 0x264]
mov byte [ebp - 4], 0
call fcn.00404970
jmp 0x44e03f
push 0x4fd158
push edi
call ebx
test eax, eax
pop ecx
pop ecx
jne 0x44e1a3
lea eax, [edi - 0xc]
cmp eax, dword [0x51a43c]
je 0x44e02b
push eax
call fcn.004013aa
jmp 0x44e02b
push str..rar
push edi
call ebx
test eax, eax
pop ecx
pop ecx
je 0x44e189
push edi
mov eax, 0x5224b0
call fcn.004b9576
test eax, eax
lea eax, [edi - 0xc]
je 0x44e18c
cmp eax, dword [0x51a43c]
je 0x44e1d1
push eax
call fcn.004013aa
push 0
lea eax, [ebp - 0x264]
call fcn.00404926
mov byte [ebp - 4], 4
push dword [ebp - 0x21c]
lea ecx, [ebp - 0x264]
call fcn.00461259
jmp 0x44e14d