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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x553e26
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0xbca4
call fcn.0052f720
mov eax, dword [0x58bb30]
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 [0x5ff980], ax
mov word [0x600980], ax
mov word [0x601980], ax
mov byte [0x5ff97a], al
mov dword [0x5ff97c], eax
mov ecx, dword [0x6345f8]
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x60346c]
cmp eax, dword [ecx + 4]
jg 0x50e24c
mov dword [0x5ff970], 0x602b50
mov ecx, 0x602b50
call fcn.004bd370
mov ecx, 0x602bac
call fcn.004bd370
mov ecx, 0x602c08
call fcn.004bd370
mov al, byte [0x5933f4]
mov byte [0x60346b], al
test esi, esi
jne 0x50d8b6
push 0x602b50
push 0x50e2c0
push dword [0x5923dc]
push str.FINDFILES
push dword [0x5d2758]
call dword [sym.imp.USER32.dll_DialogBoxParamW]
test eax, eax
je 0x50e22e
push 0x50eec0
push 0
push 0
push 9
call fcn.00500110
push str.HELPSearchResults
call fcn.005018c0
cmp byte [0x603467], 0
je 0x50d8e0
push 1
call fcn.00467f00
test esi, esi
je 0x50d980
push 0x40a
push 0x5b130c
lea eax, [ebp - 0x828]
push eax
call fcn.004bd090
mov word [0x603465], 0x101
mov byte [0x603464], 0
push 0x5578cc
mov ecx, 0x602c08
call fcn.004bd180
mov ecx, 0x5b332c
call fcn.004bd3d0
push 0x800
lea eax, [ebp - 0x1828]
push eax
mov ecx, 0x5b332c
call fcn.004bd280
test al, al
je 0x50da1e
jmp 0x50d950
lea eax, [ebp - 0x1828]
push eax
mov ecx, 0x602b50
call fcn.004bd180
push 0x800
lea eax, [ebp - 0x1828]
push eax
mov ecx, 0x5b332c
call fcn.004bd280
test al, al
jne 0x50d950
jmp 0x50da1e
xor eax, eax
mov word [ebp - 0x828], ax
cmp word [0x602c64], ax
je 0x50da1e
cmp byte [0x603468], al
je 0x50d9b4
push 0x40a
push 0x56b6d4
lea eax, [ebp - 0x828]
push eax
call fcn.004bd030
cmp byte [0x603469], 0
je 0x50d9d3
push 0x40a
push 0x56b6d8
lea eax, [ebp - 0x828]
push eax
call fcn.004bd030
cmp byte [0x60346a], 0
je 0x50d9f2
push 0x40a
push 0x55a6b0
lea eax, [ebp - 0x828]
push eax
call fcn.004bd030
push 0x40a
push 0x567ca8
lea eax, [ebp - 0x828]
push eax
call fcn.004bd030
push 0x40a
push 0x602c64
lea eax, [ebp - 0x828]
push eax
call fcn.004bd030
cmp byte [0x5933f4], 0
je 0x50da3d
push 0x800
lea eax, [ebp - 0x4828]
push eax
mov ecx, 0x5c2bd0
call fcn.0040a170
mov dword [0x5ff974], 0
mov byte [0x5ff979], 0
mov byte [0x5ff978], 1
cmp byte [0x603464], 0
je 0x50da6e
cmp byte [0x60346b], 0
jne 0x50da6e
mov eax, 2
jmp 0x50da70
xor eax, eax
test esi, esi
jne 0x50da79
mov esi, 0x602bac
push 3
push 0
push eax
push esi
lea ecx, [ebp - 0xbcac]
call fcn.004b8e10
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.004b9b00
test eax, eax
jne 0x50dc3e
cmp byte [0x5933f6], al
jne 0x50dc3e
call fcn.004633a0
mov ecx, dword [0x5ff974]
test ecx, ecx
je 0x50db23
movzx eax, byte [0x60346b]
push eax
push ecx
push dword [0x5933e8]
call fcn.00511290
mov dword [0x5ff974], 0
cmp word [ebp - 0x5a88], 0x2e
jne 0x50db3d
cmp word [ebp - 0x5a86], 0x5c
lea eax, [ebp - 0x5a84]
je 0x50db43
lea eax, [ebp - 0x5a88]
push 0x800
push eax
lea eax, [ebp - 0x2828]
push eax
call fcn.004bd090
push 0x50
lea eax, [ebp - 0x2828]
push eax
call fcn.004d8300
mov esi, eax
push 0x523
call fcn.004b68d0
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 [0x5933e8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
cmp byte [0x603465], 0
je 0x50ddc3
cmp byte [0x60346b], 0
jne 0x50ddc3
cmp byte [ebp - 0x4a7c], 0
je 0x50dbd5
cmp word [ebp - 0x828], 0
jne 0x50ddc3
mov ecx, 0x602b50
call fcn.004bd3d0
mov ecx, 0x602b50
call fcn.004bd1e0
test eax, eax
je 0x50ddc3
push 5
lea ecx, [ebp - 0x5a88]
push ecx
push eax
call fcn.00496020
test al, al
jne 0x50dc17
mov ecx, 0x602b50
call fcn.004bd1e0
test eax, eax
jne 0x50dbf1
jmp 0x50ddc3
push 0x10000
call fcn.00538da8
add esp, 4
mov esi, eax
mov dword [ebp - 0xbcb0], esi
test esi, esi
jne 0x50dccb
mov ecx, 0x5d281c
call fcn.00487660
mov byte [0x5ff978], 0
mov cl, byte [0x5933f6]
test cl, cl
je 0x50dc62
cmp byte [0x5ff97a], 0
setne al
dec al
and al, cl
mov byte [0x5933f6], al
mov ecx, dword [0x5ff974]
test ecx, ecx
je 0x50dc8a
movzx eax, byte [0x60346b]
push eax
push ecx
push dword [0x5933e8]
call fcn.00511290
mov dword [0x5ff974], 0
mov byte [0x5ff979], 0
push 0x271
call fcn.004b68d0
push eax
push 1
push 0x40b
push 0x9c
push dword [0x5933e8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
cmp byte [0x5933f6], 0
je 0x50e1a2
call fcn.005009d0
jmp 0x50e1a7
cmp word [ebp - 0x828], 0
jne 0x50dcf4
lea eax, [ebp - 0x5a88]
push eax
push 0
lea eax, [ebp - 0x828]
push eax
mov ecx, 0x5d2768
call fcn.00493090
jmp 0x50ddba
lea ecx, [ebp - 0x7bc0]
call fcn.0048ea10
mov byte [ebp - 4], 5
push 4
lea eax, [ebp - 0x5a88]
push eax
lea ecx, [ebp - 0x7bc0]
call fcn.0048f200
test al, al
jne 0x50dd2f
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x7bc0]
call fcn.0048ea60
jmp 0x50dad0
lea eax, [ebp - 0x5a88]
push eax
push 0
lea eax, [ebp - 0x828]
push eax
mov ecx, 0x5d2768
call fcn.00493090
xor ebx, ebx
mov byte [ebp - 4], 6
nop
push 0x10000
push esi
lea ecx, [ebp - 0x7bc0]
call fcn.0048f640
mov edi, eax
test edi, edi
je 0x50dd8f
cmp byte [0x5933f6], 0
jne 0x50dd8f
inc ebx
mov dword [ebp - 0xbcb4], ebx
test bl, 0xf
jne 0x50dd81
call fcn.004633a0
push edi
push esi
mov ecx, 0x5d2768
call fcn.00493310
jmp 0x50dd50
mov dword [ebp - 4], 5
jmp 0x50ddab
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x7bc0]
call fcn.0048ea60
push esi
call fcn.00537b6f
add esp, 4
cmp byte [0x603466], 0
je 0x50dad0
cmp byte [ebp - 0x4a7c], 0
jne 0x50dad0
mov ecx, 0x602c08
call fcn.004bd3d0
mov ecx, 0x602c08
call fcn.004bd1e0
mov esi, eax
test esi, esi
je 0x50dad0
jmp 0x50de00
push 0
lea eax, [ebp - 0x5a88]
push eax
push esi
call fcn.00496020
test al, al
jne 0x50de28
mov ecx, 0x602c08
call fcn.004bd1e0
mov esi, eax
test esi, esi
jne 0x50de00
jmp 0x50dad0
cmp word [esi], 0x2a
jne 0x50de63
cmp word [esi + 2], 0
jne 0x50de63
mov al, byte [0x60346b]
test al, al
jne 0x50de68
push 1
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x5a88]
push eax
mov ecx, 0x5c2bd0
call fcn.0040a600
test al, al
je 0x50dad0
mov al, byte [0x60346b]
mov dword [0x59442c], 2
test al, al
je 0x50de7d
mov byte [0x5c2f4c], 1
push 1
cmp word [ebp - 0x828], 0
setne al
movzx eax, al
push eax
lea eax, [ebp - 0x5a88]
push eax
mov ecx, 0x5c2bd0
call fcn.0040aa90
cmp eax, 2
jne 0x50deb6
call fcn.004659a0
test al, al
jne 0x50dad0
jmp 0x50dc3e
cmp eax, 1
jne 0x50dad0
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, 0x5c2bd0
call fcn.0040a600
lea eax, [ebp - 0x1828]
push eax
lea eax, [ebp - 0x5a88]
push eax
call fcn.004c1160
test eax, eax
je 0x50dfa1
lea eax, [ebp - 0x1828]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x50dad0
push 0x800
push 0x557920
lea eax, [ebp - 0x1828]
push eax
call fcn.004a2e40
lea eax, [ebp - 0x1828]
push eax
lea eax, [ebp - 0x5a88]
push eax
call fcn.004c1160
test eax, eax
je 0x50df5e
lea eax, [ebp - 0x1828]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x50dad0
push 0x800
push 0x557918
lea eax, [ebp - 0x1828]
push eax
call fcn.004a2e40
lea eax, [ebp - 0x1828]
push eax
lea eax, [ebp - 0x5a88]
push eax
call fcn.004c1160
test eax, eax
je 0x50dfa1
lea eax, [ebp - 0x1828]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x50dad0
cmp word [ebp - 0x828], 0
jne 0x50e08a
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, 0x5c2bd0
call fcn.0040a270
test al, al
je 0x50dad0
cmp byte [0x5933f6], 0
jne 0x50dad0
inc ebx
test bl, 0x1f
jne 0x50e008
call fcn.004633a0
mov ecx, 0x602b50
call fcn.004bd3d0
mov ecx, 0x602b50
call fcn.004bd1e0
test eax, eax
je 0x50e06a
push 5
lea ecx, [ebp - 0x6b80]
push ecx
push eax
call fcn.00496020
test al, al
jne 0x50e043
mov ecx, 0x602b50
call fcn.004bd1e0
test eax, eax
jne 0x50e020
jmp 0x50e06a
push 0x557718
push dword [ebp - 0x5ad8]
call fcn.00490e40
movzx eax, al
push eax
lea eax, [ebp - 0x6b80]
push eax
lea eax, [ebp - 0x5a88]
push eax
call fcn.005146a0
push 1
lea eax, [ebp - 0x6b80]
push eax
mov ecx, 0x5c2bd0
call fcn.0040a270
test al, al
jne 0x50dff0
jmp 0x50dad0
lea ecx, [ebp - 0x4a40]
call fcn.00506f70
mov byte [ebp - 4], 8
lea eax, [ebp - 0x4a40]
push eax
mov ecx, 0x5c2bd0
call fcn.0040a190
mov ecx, 0x5c2bd0
call fcn.00409a60
and eax, 0x400
xor edx, edx
or eax, edx
je 0x50e0dc
push 0x3ac
call fcn.004b68d0
push eax
push 0x5b232a
call fcn.00503540
add esp, 8
jmp 0x50e18e
push 0
call fcn.004f7750
push 0x800
push 0x5b232a
mov ecx, 0x5c2bd0
call fcn.00409950
mov eax, dword [ebp - 0x48d8]
mov dword [0x5ad2c8], eax
mov ecx, 0x5b332c
call fcn.004bd370
mov ecx, 0x602b50
call fcn.004bd3d0
mov ecx, 0x602b50
call fcn.004bd1e0
test eax, eax
je 0x50e13d
push eax
mov ecx, 0x5b332c
call fcn.004bd180
mov ecx, 0x602b50
call fcn.004bd1e0
test eax, eax
jne 0x50e124
mov byte [0x5ab1e1], 1
call fcn.004f9140
lea eax, [ebp - 0x828]
push eax
push 0x56b6dc
push 0x810
push 0x5b130a
call fcn.00404ce0
add esp, 0x10
mov word [0x5b02e4], 0x101
mov dword [0x5b02e8], 5
mov dword [0x59442c], 2
mov ecx, 0x5c2bd0
call fcn.0040be10
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x491c]
call fcn.00403590
jmp 0x50dad0
call fcn.005018e0
cmp word [0x600980], 0
je 0x50e1cc
push 0x600980
mov ecx, 0x5c5810
call fcn.0045dd80
cmp word [0x5ff980], 0
je 0x50e1f1
jmp 0x50e1e0
cmp word [0x5ff980], 0
je 0x50e202
mov ecx, 0x5c5810
call fcn.0045b050
push 1
push 0x5ff980
mov ecx, 0x5c5810
call fcn.0045a940
push 0x601980
mov ecx, 0x5c5810
call fcn.0045d070
jmp 0x50e21c
cmp byte [0x5933f4], 0
je 0x50e21c
lea eax, [ebp - 0x4828]
push eax
mov ecx, 0x5c2bd0
call fcn.0040bea0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xbcac]
call fcn.004b8f00
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.0052f708
mov esp, ebp
pop ebp
ret 4
push 0x60346c
call fcn.0052ffcb
add esp, 4
cmp dword [0x60346c], 0xffffffff
jne 0x50d857
mov dword [ebp - 4], 0
mov ecx, 0x602b50
call fcn.004bd0e0
mov byte [ebp - 4], 1
mov ecx, 0x602bac
call fcn.004bd0e0
mov byte [ebp - 4], 2
mov ecx, 0x602c08
call fcn.004bd0e0
mov byte [ebp - 4], 0
push 0x555080
call fcn.0052fdc4
mov dword [ebp - 4], 0xffffffff
push 0x60346c
call fcn.0052ff80
add esp, 8
jmp 0x50d857