Function at 0x40b3a6
Capabilities:
Check if file exists

Disassembly:
push 0x7c
mov eax, 0x43ca75
call fcn.0042130d
mov eax, dword [ebp + 8]
xor ebx, ebx
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x14], 7
call fcn.00402e07
lea eax, [ebp - 0x6c]
push 0x4546dc
push eax
mov dword [ebp - 4], ebx
call fcn.0040aa05
mov esi, eax
lea eax, [ebp - 0x48]
push 0x454690
push eax
mov byte [ebp - 4], 1
call fcn.0040aa05
push esi
push eax
mov esi, reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0x88]
push esi
push eax
mov byte [ebp - 4], 2
call fcn.00409157
add esp, 0x20
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 3
call fcn.004046a3
xor edi, edi
push ebx
inc edi
push edi
lea ecx, [ebp - 0x88]
call fcn.00403f19
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.00403f19
push ebx
push edi
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], bl
call fcn.00403f19
cmp dword [ebp - 0x18], ebx
je 0x40b477
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x40b455
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x40b477
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x40b46c
lea eax, [ebp - 0x28]
push eax
push str._FindInstallPath_::_method__InstalledComponents__return__s
jmp 0x40b6b1
mov dword [ebp - 0x50], ebx
lea ecx, [ebp - 0x2c]
call fcn.00415809
lea eax, [ebp - 0x48]
push 0x4546f8
push eax
call fcn.0040aa05
pop ecx
pop ecx
mov eax, dword [ebp - 0x50]
push dword [eax + 0x455b60]
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 4
call fcn.00405121
lea eax, [ebp - 0x88]
push 0x454764
push eax
call fcn.0040aa05
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x6c]
push esi
push eax
mov byte [ebp - 4], 5
call fcn.00409234
add esp, 0x18
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 6
call fcn.004046a3
push ebx
push edi
lea ecx, [ebp - 0x6c]
call fcn.00403f19
push ebx
push edi
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 4
call fcn.00403f19
cmp dword [ebp - 0x18], ebx
je 0x40b519
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x40b50a
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x40b64c
push ebx
push edi
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], bl
call fcn.00403f19
add dword [ebp - 0x50], 0xc
cmp dword [ebp - 0x50], 0x210
jb 0x40b47a
lea ecx, [ebp - 0x2c]
call fcn.00415809
push 0x444224
lea ecx, [ebp - 0x88]
call fcn.00405457
push str.SYSTEMCurrentControlSetServicesdrwagntd
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 7
call fcn.00405457
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x6c]
push esi
push eax
mov byte [ebp - 4], 8
call fcn.00409234
add esp, 0x10
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 9
call fcn.004046a3
push ebx
push edi
lea ecx, [ebp - 0x6c]
call fcn.00403f19
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.00403f19
push ebx
push edi
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00403f19
cmp dword [ebp - 0x18], ebx
je 0x40b67d
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.0040afb5
pop ecx
pop ecx
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xa
call fcn.004046a3
push ebx
push edi
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], bl
call fcn.00403f19
push ebx
lea ecx, [ebp - 0x2c]
call fcn.00414ebe
push eax
call dword [sym.imp.SHLWAPI.dll_PathUnquoteSpacesW]
push ebx
lea ecx, [ebp - 0x2c]
call fcn.00414ebe
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x40b611
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x40b67d
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x40b628
lea eax, [ebp - 0x28]
push eax
push str._FindInstallPath_::_method__ES_AVD_Agent__return__s
call fcn.0040a84b
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
pop ecx
pop ecx
jae 0x40b641
lea eax, [ebp - 0x28]
mov ecx, dword [ebp - 0x4c]
push eax
call fcn.00405457
jmp 0x40b6c4
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x40b658
lea eax, [ebp - 0x28]
push eax
push str._FindInstallPath_::_method__Uninstall__return__s
call fcn.0040a84b
pop ecx
pop ecx
mov ecx, dword [ebp - 0x4c]
lea eax, [ebp - 0x2c]
push eax
call fcn.00404ab7
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.00403f19
jmp 0x40b6c4
lea ecx, [ebp - 0x2c]
call fcn.00415809
push 0x4584b8
lea ecx, [ebp - 0x2c]
call fcn.00405145
push str.DrWeb
lea ecx, [ebp - 0x2c]
call fcn.00405121
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x40b6ab
lea eax, [ebp - 0x28]
push eax
push str._FindInstallPath_::_method__Default__return__s
call fcn.0040a84b
pop ecx
pop ecx
mov ecx, dword [ebp - 0x4c]
lea eax, [ebp - 0x2c]
push eax
call fcn.00404ab7
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.00403f19
mov eax, dword [ebp - 0x4c]
call fcn.00421390
ret