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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x22c
mov eax, dword [0x100dc008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, ecx
mov dword [ebp - 0x22c], 0
push edi
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0x22c]
push ecx
lea eax, [esi + 0x24]
mov dword [ebp - 0x210], esi
mov edx, eax
mov dword [ebp - 0x214], eax
mov ecx, edi
call fcn.10054400
add esp, 4
test eax, eax
js 0x10050223
cmp eax, 1
je 0x10050223
mov ecx, dword [esi + 0x24]
lea eax, [esi + 0x24]
cmp ecx, 0xa
je 0x10050219
cmp ecx, 1
je 0x10050219
cmp ecx, 2
jne 0x10050104
push ebx
push edi
mov ecx, esi
call fcn.1004eb70
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1007bfb0
mov esp, ebp
pop ebp
ret 8
cmp ecx, 5
je 0x10050349
cmp ecx, 6
je 0x10050344
cmp ecx, 7
je 0x10050344
push edi
call dword [sym.imp.SHLWAPI.dll_PathFindExtensionW]
mov esi, eax
test esi, esi
je 0x10050219
cmp word [esi], 0
je 0x10050219
push str..cue
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x100501c1
mov esi, dword [ebp - 0x210]
lea ecx, [ebp - 0x228]
push ebx
push edi
mov dword [ebp - 0x220], 0
lea eax, [esi + 0x2c]
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x228], eax
lea eax, [esi + 0x350]
mov dword [ebp - 0x224], eax
lea eax, [esi + 0x388]
mov dword [ebp - 0x21c], eax
call fcn.10053360
test eax, eax
js 0x10050223
cmp eax, 1
je 0x10050223
mov eax, dword [ebp - 0x218]
mov ecx, esi
mov dword [esi + 0x24], eax
mov eax, dword [ebp - 0x220]
mov dword [esi + 0x354], eax
call fcn.1004fd90
jmp 0x10050221
push 0x100d6068
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x10050236
sub esi, edi
push esi
push edi
push ebx
call fcn.1008bac0
add esp, 0xc
push str..mds
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcatW]
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x10050219
mov eax, dword [ebp - 0x214]
mov ecx, dword [ebp - 0x210]
push 0
push ebx
mov dword [eax], 2
call fcn.1004eb70
test eax, eax
js 0x10050223
cmp eax, 1
je 0x10050223
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1007bfb0
mov esp, ebp
pop ebp
ret 8
push str..ccd
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x1005026d
sub esi, edi
push esi
push edi
push ebx
call fcn.1008bac0
add esp, 0xc
push str..img
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcatW]
mov eax, dword [ebp - 0x214]
mov dword [eax], 3
jmp 0x10050221
push str..bwt
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x100502af
sub esi, edi
push esi
push edi
push ebx
call fcn.1008bac0
add esp, 0xc
push str..bwi
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcatW]
mov esi, dword [ebp - 0x210]
mov dword [esi + 0x20], 0x56220
mov dword [esi + 0x24], 9
jmp 0x10050221
push str..bwi
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x1005032b
push str..b5t
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x100502e3
sub esi, edi
push esi
push edi
push ebx
call fcn.1008bac0
add esp, 0xc
push str..b5i
jmp 0x1005028f
push str..b6t
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x10050307
sub esi, edi
push esi
push edi
push ebx
call fcn.1008bac0
add esp, 0xc
push str..b6i
jmp 0x1005028f
push str..b5i
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x1005032b
push str..b6i
push esi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x10050219
mov esi, dword [ebp - 0x210]
mov dword [esi + 0x20], 0x56220
mov dword [esi + 0x24], 9
jmp 0x10050219
cmp ecx, 5
jne 0x10050358
push edi
mov ecx, esi
call fcn.1004fdd0
test eax, eax
je 0x10050375
lea eax, [esi + 0x24]
cmp dword [eax], 7
jne 0x1005036c
push edi
mov ecx, esi
call fcn.1004fdd0
test eax, eax
je 0x10050375
lea eax, [esi + 0x24]
cmp dword [eax], 6
jne 0x100504b9
push edi
call dword [sym.imp.SHLWAPI.dll_PathFindExtensionW]
push 0x208
mov esi, eax
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.1008b230
sub esi, edi
lea eax, [ebp - 0x20c]
push esi
push edi
push eax
call fcn.1008bac0
add esp, 0x18
lea eax, [ebp - 0x20c]
push str..cue
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
mov eax, dword [ebp - 0x214]
cmp dword [eax], 6
lea eax, [ebp - 0x20c]
push eax
jne 0x10050438
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, dword [ebp - 0x210]
cmp eax, 0xffffffff
je 0x100504b9
lea eax, [esi + 0x2c]
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x228], eax
lea ecx, [ebp - 0x228]
lea eax, [esi + 0x350]
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x224], eax
lea eax, [ebp - 0x20c]
push 0
push eax
mov dword [ebp - 0x218], 0
call fcn.10053360
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov ecx, esi
call fcn.1004fd90
jmp 0x10050221
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x1005045b
mov ecx, dword [ebp - 4]
mov eax, 0xe0032000
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1007bfb0
mov esp, ebp
pop ebp
ret 8
mov esi, dword [ebp - 0x210]
lea ecx, [ebp - 0x228]
push 0
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 0
lea eax, [esi + 0x2c]
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x228], eax
lea eax, [esi + 0x350]
mov dword [ebp - 0x224], eax
lea eax, [ebp - 0x20c]
push eax
call fcn.10053360
test eax, eax
js 0x10050223
cmp eax, 1
je 0x10050223
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov ecx, esi
call fcn.1004fd90
jmp 0x10050221