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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa14
mov eax, dword [0x5b41f4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor esi, esi
push 0x5bcdc0
mov dword [ebp - 0xa10], esi
mov edi, esi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
xor ebx, ebx
inc ebx
test eax, eax
jne 0x411afc
push esi
push esi
push 0x7d6
push dword [0x5c0b8c]
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jne 0x411ab4
mov edi, ebx
jmp 0x411afc
cmp eax, 0x3ff
jge 0x411afc
lea eax, [ebp - 0xa0c]
push eax
push 0x7ff
push 0x886
push dword [0x5c0b8c]
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x563584
lea eax, [ebp - 0xa0c]
push eax
call dword [sym.imp.SHLWAPI.dll_StrTrimA]
lea eax, [ebp - 0xa0c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
cmove edi, ebx
cmp dword [ebp + 8], esi
jne 0x411b1f
cmp dword [0x5bcd54], esi
jne 0x411b16
mov eax, dword [0x5bcd50]
cmp eax, dword [0x5bcd4c]
je 0x411b1a
test edi, edi
je 0x411b1f
cmp dword [ebp + 0x10], esi
je 0x411b85
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
cmp dword [ebp + 0xc], esi
je 0x411b8c
push 0x5bcdc0
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
lea eax, [ebp - 0x414]
je 0x411b49
push 0x5bcdc0
push eax
call edi
jmp 0x411b60
push 0x104
push eax
push 0x2713
push dword [0x5c0b94]
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0x414]
push eax
push 0xc363
push 4
call fcn.004024f0
add esp, 0xc
dec eax
sub eax, 1
je 0x411f48
sub eax, 5
jne 0x411b8c
mov eax, ebx
jmp 0x411f4a
cmp dword [ebp + 0x10], esi
jne 0x411c47
cmp dword [ebp + 0x14], esi
jne 0x411c47
push 0x5bcdc0
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x411cbc
push 0x5bcdc0
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ecx, eax
cmp ecx, 0xffffffff
je 0x411bcd
and ecx, ebx
mov dword [0x5b82f4], ecx
jmp 0x411bd3
mov ecx, dword [0x5b82f4]
test ecx, ecx
je 0x411cbc
cmp dword [0x5bcd54], esi
jne 0x411bf2
mov eax, dword [0x5bcd50]
cmp eax, dword [0x5bcd4c]
mov eax, esi
je 0x411bf4
mov eax, ebx
push 0x5b8300
push ecx
push 0x2715
push eax
push dword [0x5bd234]
push 0x5bcdc0
push 0x2713
push dword [0x5b9c40]
push dword [0x561f88]
push dword [0x5c0b74]
call fcn.0040cb4a
push 0x5bcdc0
push 0xc370
push 3
call fcn.004024f0
add esp, 0x34
cmp eax, 6
jne 0x411f48
mov dword [ebp + 0x10], ebx
mov ax, word [0x5b9f68]
push 0x206
mov word [ebp - 0x414], ax
lea eax, [ebp - 0x412]
push esi
push eax
call fcn.004cbf40
add esp, 0xc
cmp dword [ebp + 0x14], esi
je 0x411d16
push 0x5b80d0
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x411d16
push 0x5b80d0
lea eax, [ebp - 0x414]
push eax
call edi
push 0x5b80d0
lea eax, [ebp - 0x20c]
push eax
call edi
push 0x5bcdc0
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
jmp 0x411d24
push 0x5bcdc0
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x411c47
push esi
lea eax, [ebp - 0xa10]
push eax
push esi
push esi
push 0x5bcd48
push 0x5bcd50
push esi
push 0x5bcdc0
push esi
call fcn.0041124a
mov ecx, dword [ebp + 0x10]
add esp, 0x24
mov dword [ebp - 0xa14], eax
mov dword [ebp + 0x10], ecx
test eax, eax
je 0x411eb3
mov dword [ebp - 0xa14], eax
mov edi, 0x5bcdc0
jmp 0x411df4
push 0x5bcdc0
lea eax, [ebp - 0x20c]
push eax
call edi
lea eax, [ebp - 0x414]
push eax
push 0x104
lea eax, [ebp - 0x20c]
push eax
push dword [0x5c0b74]
call fcn.00412143
add esp, 0x10
test eax, eax
je 0x411f48
push dword [ebp + 0x14]
lea eax, [ebp - 0xa10]
push eax
push esi
push esi
push 0x5bcd48
push 0x5bcd50
push esi
lea eax, [ebp - 0x20c]
push eax
push esi
call fcn.0041124a
add esp, 0x24
mov dword [ebp - 0xa14], eax
test eax, eax
je 0x411eb3
lea eax, [ebp - 0x20c]
push eax
cmp dword [ebp + 0x14], esi
jne 0x411e9f
push 0x5bcdc0
call edi
push 0x5bcdc0
push 0xfb05
push dword [0x5c0b74]
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
push esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
push 0xfb06
push dword [0x5c0b74]
call dword [sym.imp.USER32.dll_SetDlgItemInt]
cmp dword [0x5b82fc], esi
jne 0x411ddc
push 0x5b9f6c
push 0x5b8300
call edi
mov edi, 0x5bcdc0
push edi
push dword [0x5c0b8c]
call fcn.004197e0
pop ecx
pop ecx
call fcn.00410f30
push dword [0x5b9ea8]
mov eax, dword [0x5bcd50]
push dword [0x5b9ea4]
mov dword [0x5bcd54], esi
push edi
push dword [0x5bd024]
mov dword [0x5bcd4c], eax
call fcn.0040dd2c
add esp, 0x10
cmp dword [0x5b9ef0], 2
jne 0x411e31
push edi
push 3
call dword [sym.imp.SHELL32.dll_SHAddToRecentDocs]
cmp dword [0x5bcd54], esi
jne 0x411e48
mov eax, dword [0x5bcd50]
cmp eax, dword [0x5bcd4c]
jne 0x411e48
mov ebx, esi
push 0x5b8300
push dword [0x5b82f4]
push 0x2715
push ebx
push dword [0x5bd234]
push edi
push 0x2713
push dword [0x5b9c40]
push dword [0x561f88]
push dword [0x5c0b74]
call fcn.0040cb4a
add esp, 0x28
cmp dword [ebp + 0x10], esi
je 0x411f40
cmp dword [0x5bd158], esi
je 0x411f40
mov dword [0x5bd15c], esi
jmp 0x411f40
mov ebx, 0x5b80d0
push ebx
call edi
push ebx
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
jmp 0x411f40
cmp dword [ebp - 0xa10], esi
jne 0x411f40
push 0x5bcdc0
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x411edc
push 0x5bcdc0
lea eax, [ebp - 0x20c]
push eax
call edi
cmp dword [0x5bcd54], esi
jne 0x411ef1
mov eax, dword [0x5bcd50]
cmp eax, dword [0x5bcd4c]
je 0x411ef3
mov esi, ebx
push 0x5b8300
push dword [0x5b82f4]
push 0x2715
push esi
push dword [0x5bd234]
push 0x5bcdc0
push 0x2713
push dword [0x5b9c40]
push dword [0x561f88]
push dword [0x5c0b74]
call fcn.0040cb4a
lea eax, [ebp - 0x20c]
push eax
push 0xc351
push ebx
call fcn.004024f0
add esp, 0x34
mov eax, dword [ebp - 0xa14]
jmp 0x411f4a
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004afcaa
leave
ret