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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x554b86
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0xbca4
call fcn.00530230
mov eax, dword [0x58cb30]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, dword [ebp + 8]
xor eax, eax
mov word [0x600980], ax
mov word [0x601980], ax
mov word [0x602980], ax
mov byte [0x60097a], al
mov dword [0x60097c], eax
mov ecx, dword [0x6355f8]
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x60446c]
cmp eax, dword [ecx + 4]
jg 0x50eccc
mov dword [0x600970], 0x603b50
mov ecx, 0x603b50
call fcn.004bddc0
mov ecx, 0x603bac
call fcn.004bddc0
mov ecx, 0x603c08
call fcn.004bddc0
mov al, byte [0x5943f4]
mov byte [0x60446b], al
test esi, esi
jne 0x50e336
push 0x603b50
push 0x50ed40
push dword [0x5933dc]
push str.FINDFILES
push dword [0x5d3758]
call dword [sym.imp.USER32.dll_DialogBoxParamW]
test eax, eax
je 0x50ecae
push 0x50f940
push 0
push 0
push 9
call fcn.00500d00
push str.HELPSearchResults
call fcn.005024b0
cmp byte [0x604467], 0
je 0x50e360
push 1
call fcn.004686d0
test esi, esi
je 0x50e400
push 0x40a
push 0x5b230c
lea eax, [ebp - 0x828]
push eax
call fcn.004bdae0
mov word [0x604465], 0x101
mov byte [0x604464], 0
push 0x5588cc
mov ecx, 0x603c08
call fcn.004bdbd0
mov ecx, 0x5b432c
call fcn.004bde20
push 0x800
lea eax, [ebp - 0x1828]
push eax
mov ecx, 0x5b432c
call fcn.004bdcd0
test al, al
je 0x50e49e
jmp 0x50e3d0
lea eax, [ebp - 0x1828]
push eax
mov ecx, 0x603b50
call fcn.004bdbd0
push 0x800
lea eax, [ebp - 0x1828]
push eax
mov ecx, 0x5b432c
call fcn.004bdcd0
test al, al
jne 0x50e3d0
jmp 0x50e49e
xor eax, eax
mov word [ebp - 0x828], ax
cmp word [0x603c64], ax
je 0x50e49e
cmp byte [0x604468], al
je 0x50e434
push 0x40a
push 0x56c8d4
lea eax, [ebp - 0x828]
push eax
call fcn.004bda80
cmp byte [0x604469], 0
je 0x50e453
push 0x40a
push 0x56c8d8
lea eax, [ebp - 0x828]
push eax
call fcn.004bda80
cmp byte [0x60446a], 0
je 0x50e472
push 0x40a
push 0x55b6c0
lea eax, [ebp - 0x828]
push eax
call fcn.004bda80
push 0x40a
push 0x568ea8
lea eax, [ebp - 0x828]
push eax
call fcn.004bda80
push 0x40a
push 0x603c64
lea eax, [ebp - 0x828]
push eax
call fcn.004bda80
cmp byte [0x5943f4], 0
je 0x50e4bd
push 0x800
lea eax, [ebp - 0x4828]
push eax
mov ecx, 0x5c3bd0
call fcn.0040a1e0
mov dword [0x600974], 0
mov byte [0x600979], 0
mov byte [0x600978], 1
cmp byte [0x604464], 0
je 0x50e4ee
cmp byte [0x60446b], 0
jne 0x50e4ee
mov eax, 2
jmp 0x50e4f0
xor eax, eax
test esi, esi
jne 0x50e4f9
mov esi, 0x603bac
push 3
push 0
push eax
push esi
lea ecx, [ebp - 0xbcac]
call fcn.004b9840
mov dword [ebp - 4], 4
mov dword [ebp - 0x4a78], 0
mov dword [ebp - 0x4a74], 0
mov dword [ebp - 0x4a70], 0
mov dword [ebp - 0x4a6c], 0
mov dword [ebp - 0x4a68], 0
mov dword [ebp - 0x4a64], 0
lea ecx, [ecx]
lea eax, [ebp - 0x5a88]
push eax
lea ecx, [ebp - 0xbcac]
call fcn.004ba530
test eax, eax
jne 0x50e6be
cmp byte [0x5943f6], al
jne 0x50e6be
call fcn.00463b70
mov ecx, dword [0x600974]
test ecx, ecx
je 0x50e5a3
movzx eax, byte [0x60446b]
push eax
push ecx
push dword [0x5943e8]
call fcn.00511d10
mov dword [0x600974], 0
cmp word [ebp - 0x5a88], 0x2e
jne 0x50e5bd
cmp word [ebp - 0x5a86], 0x5c
lea eax, [ebp - 0x5a84]
je 0x50e5c3
lea eax, [ebp - 0x5a88]
push 0x800
push eax
lea eax, [ebp - 0x2828]
push eax
call fcn.004bdae0
push 0x50
lea eax, [ebp - 0x2828]
push eax
call fcn.004d8d40
mov esi, eax
push 0x523
call fcn.004b7300
push esi
push eax
push 0x800
lea eax, [ebp - 0x3828]
push eax
call fcn.00404ce0
add esp, 0x10
lea eax, [ebp - 0x3828]
push eax
push 1
push 0x40b
push 0x9c
push dword [0x5943e8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
cmp byte [0x604465], 0
je 0x50e843
cmp byte [0x60446b], 0
jne 0x50e843
cmp byte [ebp - 0x4a7c], 0
je 0x50e655
cmp word [ebp - 0x828], 0
jne 0x50e843
mov ecx, 0x603b50
call fcn.004bde20
mov ecx, 0x603b50
call fcn.004bdc30
test eax, eax
je 0x50e843
push 5
lea ecx, [ebp - 0x5a88]
push ecx
push eax
call fcn.004969c0
test al, al
jne 0x50e697
mov ecx, 0x603b50
call fcn.004bdc30
test eax, eax
jne 0x50e671
jmp 0x50e843
push 0x10000
call fcn.005398b8
add esp, 4
mov esi, eax
mov dword [ebp - 0xbcb0], esi
test esi, esi
jne 0x50e74b
mov ecx, 0x5d381c
call fcn.00487e60
mov byte [0x600978], 0
mov cl, byte [0x5943f6]
test cl, cl
je 0x50e6e2
cmp byte [0x60097a], 0
setne al
dec al
and al, cl
mov byte [0x5943f6], al
mov ecx, dword [0x600974]
test ecx, ecx
je 0x50e70a
movzx eax, byte [0x60446b]
push eax
push ecx
push dword [0x5943e8]
call fcn.00511d10
mov dword [0x600974], 0
mov byte [0x600979], 0
push 0x271
call fcn.004b7300
push eax
push 1
push 0x40b
push 0x9c
push dword [0x5943e8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
cmp byte [0x5943f6], 0
je 0x50ec22
call fcn.005015c0
jmp 0x50ec27
cmp word [ebp - 0x828], 0
jne 0x50e774
lea eax, [ebp - 0x5a88]
push eax
push 0
lea eax, [ebp - 0x828]
push eax
mov ecx, 0x5d3768
call fcn.00493a30
jmp 0x50e83a
lea ecx, [ebp - 0x7bc0]
call fcn.0048f110
mov byte [ebp - 4], 5
push 4
lea eax, [ebp - 0x5a88]
push eax
lea ecx, [ebp - 0x7bc0]
call fcn.0048f900
test al, al
jne 0x50e7af
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x7bc0]
call fcn.0048f160
jmp 0x50e550
lea eax, [ebp - 0x5a88]
push eax
push 0
lea eax, [ebp - 0x828]
push eax
mov ecx, 0x5d3768
call fcn.00493a30
xor ebx, ebx
mov byte [ebp - 4], 6
nop
push 0x10000
push esi
lea ecx, [ebp - 0x7bc0]
call fcn.0048fd40
mov edi, eax
test edi, edi
je 0x50e80f
cmp byte [0x5943f6], 0
jne 0x50e80f
inc ebx
mov dword [ebp - 0xbcb4], ebx
test bl, 0xf
jne 0x50e801
call fcn.00463b70
push edi
push esi
mov ecx, 0x5d3768
call fcn.00493cb0
jmp 0x50e7d0
mov dword [ebp - 4], 5
jmp 0x50e82b
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x7bc0]
call fcn.0048f160
push esi
call fcn.0053867f
add esp, 4
cmp byte [0x604466], 0
je 0x50e550
cmp byte [ebp - 0x4a7c], 0
jne 0x50e550
mov ecx, 0x603c08
call fcn.004bde20
mov ecx, 0x603c08
call fcn.004bdc30
mov esi, eax
test esi, esi
je 0x50e550
jmp 0x50e880
push 0
lea eax, [ebp - 0x5a88]
push eax
push esi
call fcn.004969c0
test al, al
jne 0x50e8a8
mov ecx, 0x603c08
call fcn.004bdc30
mov esi, eax
test esi, esi
jne 0x50e880
jmp 0x50e550
cmp word [esi], 0x2a
jne 0x50e8e3
cmp word [esi + 2], 0
jne 0x50e8e3
mov al, byte [0x60446b]
test al, al
jne 0x50e8e8
push 1
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x5a88]
push eax
mov ecx, 0x5c3bd0
call fcn.0040a670
test al, al
je 0x50e550
mov al, byte [0x60446b]
mov dword [0x59542c], 2
test al, al
je 0x50e8fd
mov byte [0x5c3f4c], 1
push 1
cmp word [ebp - 0x828], 0
setne al
movzx eax, al
push eax
lea eax, [ebp - 0x5a88]
push eax
mov ecx, 0x5c3bd0
call fcn.0040ab00
cmp eax, 2
jne 0x50e936
call fcn.00466170
test al, al
jne 0x50e550
jmp 0x50e6be
cmp eax, 1
jne 0x50e550
xor eax, eax
mov word [ebp - 0x1828], ax
push 1
push eax
push eax
push eax
push 0x800
lea eax, [ebp - 0x1828]
push eax
lea eax, [ebp - 0x5a88]
push eax
mov ecx, 0x5c3bd0
call fcn.0040a670
lea eax, [ebp - 0x1828]
push eax
lea eax, [ebp - 0x5a88]
push eax
call fcn.004c1ba0
test eax, eax
je 0x50ea21
lea eax, [ebp - 0x1828]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x50e550
push 0x800
push 0x558920
lea eax, [ebp - 0x1828]
push eax
call fcn.004a3820
lea eax, [ebp - 0x1828]
push eax
lea eax, [ebp - 0x5a88]
push eax
call fcn.004c1ba0
test eax, eax
je 0x50e9de
lea eax, [ebp - 0x1828]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x50e550
push 0x800
push 0x558918
lea eax, [ebp - 0x1828]
push eax
call fcn.004a3820
lea eax, [ebp - 0x1828]
push eax
lea eax, [ebp - 0x5a88]
push eax
call fcn.004c1ba0
test eax, eax
je 0x50ea21
lea eax, [ebp - 0x1828]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x50e550
cmp word [ebp - 0x828], 0
jne 0x50eb0a
xor ebx, ebx
mov dword [ebp - 0x5af0], ebx
mov dword [ebp - 0x5aec], ebx
mov dword [ebp - 0x5ae8], ebx
mov dword [ebp - 0x5ae4], ebx
mov dword [ebp - 0x5ae0], ebx
mov dword [ebp - 0x5adc], ebx
push 1
lea eax, [ebp - 0x6b80]
push eax
mov ecx, 0x5c3bd0
call fcn.0040a2e0
test al, al
je 0x50e550
cmp byte [0x5943f6], 0
jne 0x50e550
inc ebx
test bl, 0x1f
jne 0x50ea88
call fcn.00463b70
mov ecx, 0x603b50
call fcn.004bde20
mov ecx, 0x603b50
call fcn.004bdc30
test eax, eax
je 0x50eaea
push 5
lea ecx, [ebp - 0x6b80]
push ecx
push eax
call fcn.004969c0
test al, al
jne 0x50eac3
mov ecx, 0x603b50
call fcn.004bdc30
test eax, eax
jne 0x50eaa0
jmp 0x50eaea
push 0x558718
push dword [ebp - 0x5ad8]
call fcn.00491560
movzx eax, al
push eax
lea eax, [ebp - 0x6b80]
push eax
lea eax, [ebp - 0x5a88]
push eax
call fcn.00515120
push 1
lea eax, [ebp - 0x6b80]
push eax
mov ecx, 0x5c3bd0
call fcn.0040a2e0
test al, al
jne 0x50ea70
jmp 0x50e550
lea ecx, [ebp - 0x4a40]
call fcn.005079d0
mov byte [ebp - 4], 8
lea eax, [ebp - 0x4a40]
push eax
mov ecx, 0x5c3bd0
call fcn.0040a200
mov ecx, 0x5c3bd0
call fcn.00409ad0
and eax, 0x400
xor edx, edx
or eax, edx
je 0x50eb5c
push 0x3ac
call fcn.004b7300
push eax
push 0x5b332a
call fcn.00504130
add esp, 8
jmp 0x50ec0e
push 0
call fcn.004f8320
push 0x800
push 0x5b332a
mov ecx, 0x5c3bd0
call fcn.004099c0
mov eax, dword [ebp - 0x48d8]
mov dword [0x5ae2c8], eax
mov ecx, 0x5b432c
call fcn.004bddc0
mov ecx, 0x603b50
call fcn.004bde20
mov ecx, 0x603b50
call fcn.004bdc30
test eax, eax
je 0x50ebbd
push eax
mov ecx, 0x5b432c
call fcn.004bdbd0
mov ecx, 0x603b50
call fcn.004bdc30
test eax, eax
jne 0x50eba4
mov byte [0x5ac1e1], 1
call fcn.004f9d40
lea eax, [ebp - 0x828]
push eax
push 0x56c8dc
push 0x810
push 0x5b230a
call fcn.00404ce0
add esp, 0x10
mov word [0x5b12e4], 0x101
mov dword [0x5b12e8], 5
mov dword [0x59542c], 2
mov ecx, 0x5c3bd0
call fcn.0040be80
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x491c]
call fcn.00403590
jmp 0x50e550
call fcn.005024d0
cmp word [0x601980], 0
je 0x50ec4c
push 0x601980
mov ecx, 0x5c6810
call fcn.0045e550
cmp word [0x600980], 0
je 0x50ec71
jmp 0x50ec60
cmp word [0x600980], 0
je 0x50ec82
mov ecx, 0x5c6810
call fcn.0045b820
push 1
push 0x600980
mov ecx, 0x5c6810
call fcn.0045b110
push 0x602980
mov ecx, 0x5c6810
call fcn.0045d840
jmp 0x50ec9c
cmp byte [0x5943f4], 0
je 0x50ec9c
lea eax, [ebp - 0x4828]
push eax
mov ecx, 0x5c3bd0
call fcn.0040bf10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xbcac]
call fcn.004b9930
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00530218
mov esp, ebp
pop ebp
ret 4
push 0x60446c
call fcn.00530ada
add esp, 4
cmp dword [0x60446c], 0xffffffff
jne 0x50e2d7
mov dword [ebp - 4], 0
mov ecx, 0x603b50
call fcn.004bdb30
mov byte [ebp - 4], 1
mov ecx, 0x603bac
call fcn.004bdb30
mov byte [ebp - 4], 2
mov ecx, 0x603c08
call fcn.004bdb30
mov byte [ebp - 4], 0
push 0x555de0
call fcn.005308d4
mov dword [ebp - 4], 0xffffffff
push 0x60446c
call fcn.00530a90
add esp, 8
jmp 0x50e2d7