Function at 0x4b3500
Capabilities:
Check if file exists

Disassembly:
sub esp, 0x414
mov eax, dword [0x5b7b5c]
xor eax, esp
mov dword [esp + 0x410], eax
push ebx
push esi
mov ebx, 1
cmp dword [esp + 0x424], ebx
push edi
mov edi, dword [esp + 0x424]
jge 0x4b3533
mov dword [esp + 0x428], ebx
cmp dword [esp + 0x42c], ebx
jge 0x4b3543
mov dword [esp + 0x42c], ebx
mov eax, edi
lea edx, [eax + 2]
jmp 0x4b3550
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b3550
sub eax, edx
sar eax, 1
mov esi, eax
cmp esi, 0x208
jl 0x4b3583
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x410]
xor ecx, esp
call fcn.0053f73f
add esp, 0x414
ret
push ebp
push 0
push edi
mov dword [0x5ed888], ebx
call fcn.00403240
add esp, 8
test eax, eax
je 0x4b35b1
push edi
lea eax, [esp + 0x14]
push 0x208
push eax
call fcn.0053fe1c
add esp, 0xc
jmp 0x4b36d0
xor eax, eax
test esi, esi
jle 0x4b35e2
mov edx, edi
lea ecx, [esp + 0x10]
sub edx, ecx
nop
lea ecx, [edx + eax*2]
movzx ecx, word [esp + ecx + 0x10]
mov edi, 0x2f
cmp di, cx
jne 0x4b35d7
mov ecx, 0x5c
mov word [esp + eax*2 + 0x10], cx
add eax, ebx
cmp eax, esi
jl 0x4b35c0
xor edx, edx
mov word [esp + eax*2 + 0x10], dx
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4b36d0
lea ecx, [esp + 0x10]
push 0x5c
push ecx
call fcn.00540922
add esp, 8
test eax, eax
je 0x4b36d0
lea ebp, [eax + 2]
push 6
push ebp
push 0x572d94
call fcn.00540020
add esp, 0xc
test eax, eax
jne 0x4b36d0
mov ebx, dword [0x5b4cd4]
xor esi, esi
test ebx, ebx
jle 0x4b36cb
mov edi, dword [0x5b4cd0]
add edi, 4
mov ecx, dword [edi]
mov eax, ebp
jmp 0x4b3650
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4b3676
test dx, dx
je 0x4b3672
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4b3676
add eax, 4
add ecx, 4
test dx, dx
jne 0x4b3650
xor eax, eax
jmp 0x4b367b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4b3689
inc esi
add edi, 0xc
cmp esi, ebx
jl 0x4b3647
jmp 0x4b36cb
mov eax, dword [0x5b4cd0]
lea edx, [esi + esi*2]
mov esi, dword [eax + edx*4]
mov edx, dword [esi]
mov eax, dword [edx + 0x144]
mov ecx, esi
call eax
mov ecx, dword [esi + 0x20]
push ecx
mov edi, eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call fcn.0050327e
mov edx, dword [esi + 0x20]
mov eax, dword [eax + 0x20]
push 0
push edx
push 0x222
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
test edi, edi
jne 0x4b3704
mov ebx, 1
mov ecx, dword [0x5ba378]
mov dword [ecx + 0xcc], ebx
mov ecx, dword [0x5ba378]
mov edx, dword [ecx]
mov edx, dword [edx + 0x88]
lea eax, [esp + 0x10]
push eax
call edx
mov edi, eax
mov eax, dword [0x5ba378]
mov dword [eax + 0xcc], 0
jmp 0x4b3709
mov ebx, 1
mov dword [0x5ed888], 0
test edi, edi
je 0x4b3780
push 0x57e3c8
mov ecx, edi
call fcn.0050b51f
test eax, eax
je 0x4b3780
mov ecx, dword [0x5ed0c0]
push 0
call fcn.0050c645
test eax, eax
je 0x4b3780
mov ecx, eax
call fcn.0050db55
mov esi, eax
test esi, esi
je 0x4b3780
mov ecx, esi
call fcn.0050711a
mov edi, dword [esp + 0x42c]
test edi, edi
jle 0x4b377c
mov ebp, dword [esp + 0x430]
test ebp, ebp
jle 0x4b377c
push 0
sub edi, ebx
push edi
mov ecx, esi
call fcn.00496400
push 0
push 0
dec ebp
push ebp
push edi
mov ecx, esi
call fcn.00494920
mov eax, ebx
jmp 0x4b3782
xor eax, eax
mov ecx, dword [esp + 0x420]
pop ebp
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0053f73f
add esp, 0x414
ret