Function at 0x4080f2
Capabilities:
Get common file path

Disassembly:
push ebp
sub esp, 0x174
lea ebp, [esp - 4]
mov eax, dword [0x571268]
xor eax, ebp
mov dword [ebp + 0x174], eax
push 0x11c
mov eax, 0x518a99
call fcn.004ec730
mov edi, ecx
xor ebx, ebx
mov dword [ebp - 0x14], edi
mov dword [edi], ebx
call fcn.00411dd9
cmp byte [eax], bl
jne 0x408186
lea eax, [ebp - 0xa4]
push eax
call fcn.004071c6
lea eax, [ebp - 0x9c]
push 0x525520
push eax
mov dword [ebp - 4], ebx
call fcn.004058d5
pop ecx
pop ecx
lea eax, [ebp + 0x1c]
push eax
lea ecx, [ebp - 0xa4]
call fcn.0040574e
lea edi, [ebp + 0x1c]
mov byte [ebp - 4], 1
call fcn.00405549
push ebx
push 1
mov esi, edi
call fcn.0040754f
or dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0xa4]
call fcn.00405a60
jmp 0x40829e
lea eax, [ebp - 0x9c]
push eax
mov dword [ebp - 4], 2
call fcn.00405430
mov byte [ebp - 4], 3
call fcn.00411dd9
lea ecx, [ebp + 0x38]
call fcn.00405346
mov byte [ebp - 4], 4
cmp dword [eax + 0x18], 8
jb 0x4081b9
mov esi, dword [eax + 4]
jmp 0x4081bc
lea esi, [eax + 4]
lea eax, [ebp - 0x9c]
push 0x5251c8
push eax
call fcn.004058d5
pop ecx
pop ecx
push esi
push eax
call fcn.004058d5
pop ecx
pop ecx
push 0x5251c0
push eax
call fcn.004058d5
pop ecx
pop ecx
push 0x525520
push eax
call fcn.004058d5
pop ecx
pop ecx
push ebx
push 1
lea esi, [ebp + 0x38]
mov byte [ebp - 4], 3
call fcn.0040754f
lea eax, [ebp - 0x1c]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
mov esi, 0x2710
push esi
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 5
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
cmp al, bl
je 0x408250
lea eax, [ebp + 0x38]
push eax
lea ecx, [ebp - 0x9c]
call fcn.0040532c
push 0x21
push str..FinishFFInstallation.cpp
push eax
push esi
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 6
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
push ebx
push 1
lea esi, [ebp + 0x38]
call fcn.0040754f
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 3
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 2
call fcn.0040539b
or dword [ebp - 4], 0xffffffff
jmp 0x4082a1
mov edi, dword [ebp - 0x14]
lea eax, [ebp + 0x70]
push eax
push ebx
push ebx
push 0x23
push ebx
mov byte [ebp + 0x70], bl
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
test eax, eax
jne 0x40839f
lea eax, [ebp + 0x70]
push eax
lea ecx, [ebp + 0x54]
call fcn.00406212
push 0x525580
lea eax, [ebp + 0x54]
push eax
mov dword [ebp - 4], 9
call fcn.0040875a
lea eax, [ebp]
push eax
call fcn.00415ed6
pop ecx
mov byte [ebp - 4], 0xa
cmp dword [ebp + 0x18], 8
mov eax, dword [ebp + 4]
jae 0x4082f6
lea eax, [ebp + 4]
push 3
push eax
lea eax, [ebp - 0x128]
lea ecx, [ebp - 0x124]
push eax
mov dword [ebp - 0x128], ecx
call fcn.0040877b
mov byte [ebp - 4], 0xb
push dword [ebp - 0x128]
lea ecx, [ebp + 0x38]
call fcn.00406212
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0xd
cmp dword [ebp - 0x128], eax
je 0x408341
push dword [ebp - 0x128]
call fcn.004e735e
pop ecx
push 0xffffffffffffffff
push ebx
lea eax, [ebp + 0x38]
lea esi, [ebp + 0x54]
call fcn.00404992
push 0x128
call fcn.004e6ea8
pop ecx
mov ecx, eax
mov dword [ebp - 0x14], ecx
mov byte [ebp - 4], 0xe
cmp ecx, ebx
je 0x40837a
cmp dword [ebp + 0x6c], 0x10
mov edx, dword [ebp + 0x58]
jae 0x408373
lea edx, [ebp + 0x58]
call fcn.00408c15
jmp 0x40837c
xor eax, eax
push ebx
push 1
lea ecx, [ebp + 0x38]
mov dword [edi], eax
call fcn.004065f9
push ebx
push 1
lea esi, [ebp]
call fcn.0040754f
push ebx
push 1
lea ecx, [ebp + 0x54]
call fcn.004065f9
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x174]
xor ecx, ebp
call fcn.004e6e1c
add ebp, 0x178
leave
ret