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

Disassembly:
push 0x22c
mov eax, 0x454a91
call fcn.0043cf73
mov eax, dword [ebp + 8]
mov dword [ebp - 0x220], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x234], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp + 0x14]
mov esi, ecx
push str.ProcessFileCondition...
lea ecx, [ebp - 0x22c]
mov dword [ebp - 0x230], eax
call fcn.0040215a
xor edi, edi
push edi
lea eax, [ebp - 0x22c]
push eax
push 2
mov dword [ebp - 4], edi
call fcn.0040e50d
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x22c]
add esp, 0xc
add ecx, 0xfffffff0
call fcn.004025e7
push 0x48b964
lea ecx, [ebp - 0x22c]
call fcn.0040219e
xor ebx, ebx
inc ebx
mov dword [ebp - 4], ebx
push dword [ebp - 0x220]
lea ecx, [ebp - 0x220]
call fcn.0040219e
lea eax, [ebp - 0x22c]
push eax
lea ecx, [ebp - 0x220]
mov byte [ebp - 4], 2
call fcn.0041df64
lea ecx, [ebp - 0x220]
mov dword [esp], 0x45ed08
call fcn.004089c0
push dword [ebp - 0x234]
lea ecx, [ebp - 0x220]
call fcn.00401f30
push str.File:
lea ecx, [ebp - 0x228]
call fcn.0040215a
push edi
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x228]
push eax
push 2
mov byte [ebp - 4], 3
call fcn.0040e087
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x228]
add esp, 0x10
add ecx, 0xfffffff0
call fcn.004025e7
mov eax, dword [esi]
cmp dword [eax - 0xc], edi
jne 0x41d062
mov eax, dword [ebp - 0x21c]
mov eax, dword [eax]
cmp dword [eax - 0xc], edi
jne 0x41d062
mov esi, dword [ebp - 0x220]
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
xor ecx, ecx
cmp eax, 0xffffffff
setne cl
mov eax, ecx
mov ecx, dword [ebp - 0x230]
mov dword [ecx], eax
cmp eax, edi
mov eax, str.File_found
jne 0x41d02a
mov eax, str.File_not_found
push eax
lea ecx, [ebp - 0x21c]
call fcn.0040215a
push edi
lea eax, [ebp - 0x21c]
push eax
push 2
mov byte [ebp - 4], 4
call fcn.0040e50d
mov ecx, dword [ebp - 0x21c]
add esp, 0xc
add ecx, 0xfffffff0
call fcn.004025e7
lea ecx, [esi - 0x10]
jmp 0x41d1d6
xor eax, eax
push 0x206
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push edi
push eax
call fcn.0043b400
add esp, 0xc
push edi
push edi
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x218]
push eax
push dword [ebp - 0x220]
mov dword [ebp - 0x238], 0x104
call sub.msi.dll_MsiMessageBoxW
test eax, eax
je 0x41d0da
push str.File_does_not_have_version
lea ecx, [ebp - 0x21c]
call fcn.0040215a
push edi
lea eax, [ebp - 0x21c]
push eax
push 2
mov byte [ebp - 4], 5
call fcn.0040e50d
mov ecx, dword [ebp - 0x21c]
add esp, 0xc
jmp 0x41d1c5
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x228]
call fcn.0040215a
push str.File_version:
lea ecx, [ebp - 0x224]
mov byte [ebp - 4], 6
call fcn.0040215a
push edi
lea eax, [ebp - 0x228]
push eax
lea eax, [ebp - 0x224]
push eax
push 2
mov byte [ebp - 4], 7
call fcn.0040e087
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x224]
add esp, 0x10
add ecx, 0xfffffff0
call fcn.004025e7
lea eax, [ebp - 0x228]
push esi
push eax
call fcn.004258b0
mov dword [ebp - 0x224], eax
lea eax, [ebp - 0x228]
push eax
push dword [ebp - 0x21c]
call fcn.004258b0
add esp, 0x10
cmp dword [ebp - 0x224], edi
je 0x41d16c
mov ecx, dword [ebp - 0x21c]
mov ecx, dword [ecx]
cmp dword [ecx - 0xc], edi
je 0x41d183
cmp eax, edi
je 0x41d177
mov ecx, dword [esi]
cmp dword [ecx - 0xc], edi
je 0x41d183
cmp dword [ebp - 0x224], edi
je 0x41d1bf
cmp eax, edi
je 0x41d1bf
push str.Condition_met
lea ecx, [ebp - 0x224]
call fcn.0040215a
push edi
lea eax, [ebp - 0x224]
push eax
push 2
mov byte [ebp - 4], 8
call fcn.0040e50d
mov ecx, dword [ebp - 0x224]
add esp, 0xc
add ecx, 0xfffffff0
call fcn.004025e7
mov eax, dword [ebp - 0x230]
mov dword [eax], ebx
mov ecx, dword [ebp - 0x228]
add ecx, 0xfffffff0
call fcn.004025e7
mov ecx, dword [ebp - 0x220]
add ecx, 0xfffffff0
call fcn.004025e7
mov ecx, dword [ebp - 0x22c]
add ecx, 0xfffffff0
call fcn.004025e7
xor eax, eax
call fcn.0043cff6
ret 0x10