Function at 0x497557
Capabilities:
Get common file path

Disassembly:
push 0x2e4
mov eax, 0x56fc1c
call fcn.0054d478
mov esi, 0x104
push esi
lea eax, [ebp - 0x124]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
push str.drivers_
lea eax, [ebp - 0x124]
push esi
push eax
call fcn.0054a311
add esp, 0xc
lea eax, [ebp - 0x124]
mov esi, 0x60371c
push eax
mov ecx, esi
call fcn.00408330
call fcn.0046bcf6
test eax, eax
je 0x4975b1
push str.avgtpx64.sys
jmp 0x4975b6
push str.avgtpx86.sys
push esi
call fcn.00494562
cmp dword [0x603734], 0x10
mov eax, dword [0x603720]
jae 0x4975cf
mov eax, 0x603720
push 3
lea ecx, [ebp - 0x2ec]
push eax
lea eax, [ebp - 0x2f0]
mov dword [ebp - 0x2f0], ecx
call fcn.00411a80
and dword [ebp - 4], 0
mov eax, dword [ebp - 0x2f0]
lea ecx, [ebp - 0x15c]
call fcn.004066c0
lea eax, [ebp - 0x2ec]
mov byte [ebp - 4], 2
cmp dword [ebp - 0x2f0], eax
je 0x49761c
push dword [ebp - 0x2f0]
call fcn.005472c2
pop ecx
call fcn.00462c28
cmp byte [eax], 0
jne 0x4976b8
lea eax, [ebp - 0x1ec]
push eax
call fcn.00409b60
lea eax, [ebp - 0x15c]
push eax
push ecx
push 0x5967ac
push ecx
lea eax, [ebp - 0x1e4]
push str.CDriverHelper::SetPath___path
push eax
mov byte [ebp - 4], 3
call fcn.00407390
add esp, 0xc
push eax
call fcn.00407390
add esp, 0xc
push eax
call fcn.00411b20
pop ecx
pop ecx
lea ecx, [ebp - 0x140]
lea eax, [ebp - 0x1ec]
call fcn.00407170
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 4
call fcn.00406a80
lea ecx, [ebp - 0x140]
call fcn.00409c40
lea eax, [ebp - 0x1ec]
mov byte [ebp - 4], 2
call fcn.00407660
lea ecx, [ebp - 0x15c]
call fcn.00409c40
call fcn.0054d4d4
ret
lea eax, [ebp - 0x1e4]
push eax
mov byte [ebp - 4], 5
call fcn.004068d0
mov byte [ebp - 4], 6
call fcn.00462c28
lea esi, [ebp - 0x140]
call fcn.00406720
mov byte [ebp - 4], 7
cmp dword [eax + 0x18], 8
jb 0x4976eb
mov esi, dword [eax + 4]
jmp 0x4976ee
lea esi, [eax + 4]
lea eax, [ebp - 0x1e4]
push 0x5950f8
push eax
call fcn.00407390
pop ecx
pop ecx
push esi
push eax
call fcn.00407390
pop ecx
pop ecx
push 0x5950f0
push eax
call fcn.00407390
pop ecx
pop ecx
push str.CDriverHelper::SetPath___path
push eax
call fcn.00407390
pop ecx
pop ecx
push 0x5967ac
push eax
call fcn.00407390
pop ecx
pop ecx
lea ecx, [ebp - 0x15c]
push ecx
push eax
call fcn.00411b20
pop ecx
pop ecx
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 6
call fcn.00409c40
lea eax, [ebp - 0x164]
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 - 0x164]
mov byte [ebp - 4], 8
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x4977ac
lea ecx, [ebp - 0x140]
lea eax, [ebp - 0x1e4]
call fcn.00406700
push 0x112
push str..DriverHelper.cpp
push eax
push esi
lea ecx, [ebp - 0x164]
mov byte [ebp - 4], 9
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
lea ecx, [ebp - 0x140]
call fcn.00409c40
lea ecx, [ebp - 0x164]
mov byte [ebp - 4], 6
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
lea eax, [ebp - 0x1e4]
mov byte [ebp - 4], 5
call fcn.004067e0
jmp 0x4976a7