Function at 0x6471bdaa
Capabilities:
Get common file path
Get program files directory

Disassembly:
push 0x258
mov eax, 0x6474411c
call fcn.647264a8
mov esi, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
test esi, esi
jne 0x6471bdcd
mov eax, 0x104
jmp 0x6471c115
call fcn.64702df6
test eax, eax
je 0x6471bde6
push dword [ebp + 0x10]
push esi
call fcn.6471bd18
pop ecx
pop ecx
jmp 0x6471c115
push edi
call fcn.6471e864
mov ebx, eax
pop ecx
test ebx, ebx
jne 0x6471be0e
push str.GpcGetInstallDir_error_cookie
call fcn.64713cdf
push dword [ebp + 0x10]
push esi
call fcn.6471bd18
add esp, 0xc
jmp 0x6471c115
push str.SoftwareWebEx_
lea ecx, [ebp - 0x230]
call fcn.647011e6
xor eax, eax
mov dword [ebp - 4], eax
mov edi, 0x103
push edi
push eax
mov byte [ebp - 0x114], al
lea eax, [ebp - 0x113]
push eax
call fcn.64725a70
push edi
lea eax, [ebp - 0x217]
mov byte [ebp - 0x218], 0
push 0
push eax
call fcn.64725a70
add esp, 0x18
mov ecx, ebx
push str.GpcProductRoot
call fcn.6471bcd0
push str.GpcProductVersion
mov ecx, ebx
mov dword [ebp - 0x264], eax
call fcn.6471bcd0
mov edi, eax
test edi, edi
je 0x6471be8d
push edi
call fcn.647023fa
pop ecx
push eax
push edi
lea ecx, [ebp - 0x230]
call fcn.64705196
cmp dword [ebp - 0x21c], 0x10
lea ecx, [ebp - 0x114]
push ecx
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push str.install
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.64721f7d
add esp, 0x10
test eax, eax
jne 0x6471bef5
cmp dword [ebp - 0x21c], 0x10
lea ecx, [ebp - 0x114]
push ecx
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push str.install
push eax
push SysReAllocString
call fcn.64721f7d
add esp, 0x10
test eax, eax
je 0x6471c06f
mov eax, dword [ebp - 0x264]
test eax, eax
je 0x6471bf1a
push 0x104
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.64722cdb
mov eax, dword [ebp - 0x264]
add esp, 0xc
test edi, edi
je 0x6471bf41
test eax, eax
lea eax, [ebp - 0x218]
je 0x6471bf32
push edi
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
jmp 0x6471bf41
push 0x104
push edi
push eax
call fcn.64722cdb
add esp, 0xc
mov edi, 0x104
lea eax, [ebp - 0x218]
push edi
push eax
call fcn.64729693
lea eax, [ebp - 0x114]
push edi
push eax
call fcn.64729693
add esp, 0x10
lea eax, [ebp - 0x114]
lea ecx, [ebp - 0x260]
push eax
call fcn.647011e6
mov byte [ebp - 4], 1
cmp byte [ebp - 0x218], 0
jne 0x6471bf86
xor eax, eax
jmp 0x6471bf93
lea eax, [ebp - 0x218]
push eax
call fcn.64725b00
pop ecx
push eax
push 0
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x260]
call fcn.64702345
cmp eax, 0xffffffff
je 0x6471c05c
cmp eax, 1
jbe 0x6471c05c
dec eax
lea ecx, [ebp - 0x260]
push eax
push 0
lea eax, [ebp - 0x248]
push eax
call fcn.64702f45
mov byte [ebp - 4], 2
lea eax, [ebp - 0x248]
cmp dword [ebp - 0x234], 0x10
cmovae eax, dword [ebp - 0x248]
push eax
call fcn.64721729
pop ecx
test eax, eax
je 0x6471c049
cmp dword [ebp - 0x234], 0x10
lea eax, [ebp - 0x248]
push dword [ebp + 0x10]
cmovae eax, dword [ebp - 0x248]
push eax
push esi
call fcn.64722cdb
push esi
push str.Is_installed_in___s_
call fcn.64721861
add esp, 0x14
mov byte [ebp - 4], 1
xor ebx, ebx
lea ecx, [ebp - 0x248]
push ebx
push 1
call fcn.647020ab
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x260]
push ebx
push 1
call fcn.647020ab
jmp 0x6471c0ff
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x248]
push 0
push 1
call fcn.647020ab
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x260]
push 0
push 1
call fcn.647020ab
mov ecx, ebx
call fcn.6471ca43
test eax, eax
je 0x6471c096
push str.Has_Installed
call fcn.64721861
push dword [ebp + 0x10]
push esi
call fcn.6471bd18
add esp, 0xc
mov esi, eax
xor ebx, ebx
jmp 0x6471c101
lea eax, [ebp - 0x114]
xor ebx, ebx
push eax
push ebx
push ebx
push 0x26
push ebx
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
test eax, eax
jns 0x6471c0cf
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Get_program_files_fail__d_
call fcn.64713cdf
push dword [ebp + 0x10]
push esi
call fcn.6471bd18
add esp, 0x10
mov esi, eax
jmp 0x6471c101
push 0x64745958
lea eax, [ebp - 0x114]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
push dword [ebp + 0x10]
lea eax, [ebp - 0x114]
push eax
push esi
call fcn.64722cdb
push esi
push str.Install_path___s_
call fcn.64721861
add esp, 0x14
mov esi, ebx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x230]
push ebx
push 1
call fcn.647020ab
mov eax, esi
call fcn.64726457
ret 0xc