Function at 0x405a50
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49b900
mov eax, dword fs:[0]
push eax
sub esp, 0x30
push ebx
push esi
push edi
mov eax, dword [0x4c6374]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
push str.USM8PE8L_.ISO
mov edx, esi
lea ecx, [ebp - 0x24]
call fcn.0040c1a0
mov edi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
add esp, 4
cmp dword [eax + 0x10], 0
jne 0x405a9c
xor bl, bl
jmp 0x405aac
cmp dword [eax + 0x14], 8
jb 0x405aa4
mov eax, dword [eax]
push eax
call edi
test eax, eax
setne bl
mov eax, dword [ebp - 0x10]
cmp eax, 8
jb 0x405ac1
inc eax
lea ecx, [ebp - 0x24]
push eax
push dword [ebp - 0x24]
call fcn.0040f5b0
test bl, bl
je 0x405b03
push str.USM8PE8L_.ISO
mov edx, esi
lea ecx, [ebp - 0x24]
call fcn.0040c1a0
add esp, 4
mov dl, 1
mov dword [ebp - 4], 0
mov ecx, eax
call fcn.00415680
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x10]
cmp eax, 8
jb 0x405b03
inc eax
lea ecx, [ebp - 0x24]
push eax
push dword [ebp - 0x24]
call fcn.0040f5b0
push str._scldr
mov edx, esi
lea ecx, [ebp - 0x24]
call fcn.0040c1a0
add esp, 4
cmp dword [eax + 0x10], 0
jne 0x405b1f
xor bl, bl
jmp 0x405b2f
cmp dword [eax + 0x14], 8
jb 0x405b27
mov eax, dword [eax]
push eax
call edi
test eax, eax
setne bl
mov eax, dword [ebp - 0x10]
cmp eax, 8
jb 0x405b44
inc eax
lea ecx, [ebp - 0x24]
push eax
push dword [ebp - 0x24]
call fcn.0040f5b0
test bl, bl
je 0x405b86
push str._scldr
mov edx, esi
lea ecx, [ebp - 0x24]
call fcn.0040c1a0
add esp, 4
mov dl, 1
mov dword [ebp - 4], 1
mov ecx, eax
call fcn.00415680
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x10]
cmp eax, 8
jb 0x405b86
inc eax
lea ecx, [ebp - 0x24]
push eax
push dword [ebp - 0x24]
call fcn.0040f5b0
push str._scldr.mbr
mov edx, esi
lea ecx, [ebp - 0x24]
call fcn.0040c1a0
add esp, 4
cmp dword [eax + 0x10], 0
jne 0x405ba2
xor bl, bl
jmp 0x405bb2
cmp dword [eax + 0x14], 8
jb 0x405baa
mov eax, dword [eax]
push eax
call edi
test eax, eax
setne bl
mov eax, dword [ebp - 0x10]
cmp eax, 8
jb 0x405bc7
inc eax
lea ecx, [ebp - 0x24]
push eax
push dword [ebp - 0x24]
call fcn.0040f5b0
test bl, bl
je 0x405c09
push str._scldr.mbr
mov edx, esi
lea ecx, [ebp - 0x24]
call fcn.0040c1a0
add esp, 4
mov dl, 1
mov dword [ebp - 4], 2
mov ecx, eax
call fcn.00415680
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x10]
cmp eax, 8
jb 0x405c09
inc eax
lea ecx, [ebp - 0x24]
push eax
push dword [ebp - 0x24]
call fcn.0040f5b0
push str.Ghost.ba_
lea edx, [esi + 0x78]
lea ecx, [ebp - 0x24]
call fcn.0040c1a0
add esp, 4
cmp dword [eax + 0x10], 0
jne 0x405c26
xor bl, bl
jmp 0x405c36
cmp dword [eax + 0x14], 8
jb 0x405c2e
mov eax, dword [eax]
push eax
call edi
test eax, eax
setne bl
mov eax, dword [ebp - 0x10]
cmp eax, 8
jb 0x405c4b
inc eax
lea ecx, [ebp - 0x24]
push eax
push dword [ebp - 0x24]
call fcn.0040f5b0
test bl, bl
je 0x405c87
push str.Ghost.ba_
lea edx, [esi + 0x78]
lea ecx, [ebp - 0x3c]
call fcn.0040c1a0
add esp, 4
mov dl, 1
mov dword [ebp - 4], 3
mov ecx, eax
call fcn.00415680
mov eax, dword [ebp - 0x28]
cmp eax, 8
jb 0x405c87
inc eax
lea ecx, [ebp - 0x3c]
push eax
push dword [ebp - 0x3c]
call fcn.0040f5b0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret