Function at 0x408c90
Capabilities:
Connect to wmi namespace via wbemlocator

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x40a6f9
push eax
mov dword fs:[0], esp
push ebx
push ebp
push esi
push edi
mov esi, ecx
xor ebx, ebx
mov dword [esp + 0x18], ebx
call dword [0x41613c]
push 2
lea edi, [esi + 8]
lea ebp, [esi + 0xc]
push ebx
mov dword [edi], ebx
mov dword [ebp], ebx
mov dword [esi], ebx
mov dword [esi + 4], ebx
call dword [sym.imp.ole32.dll_CoInitializeEx]
mov ebx, eax
test ebx, ebx
jge 0x408cf3
push str.CAcWin32Bios::CAcWin32Bios:_Failed._Failure_Initializing_COM
call dword [sym.imp.ACHelper.dll_public:_static_class_AcLogInfo____cdecl_AcLogInfo::GetLogInfoInstance_void_]
push eax
call dword [sym.imp.ACHelper.dll_public:_void___cdecl_AcLogInfo::ErrorPrintLogFile_unsigned_short_int__]
add esp, 8
mov dword [esi + 4], ebx
jmp 0x408e1f
push str.CAcWin32Bios::CAcWin32Bios:_Constructor_Entry
call dword [sym.imp.ACHelper.dll_public:_static_class_AcLogInfo____cdecl_AcLogInfo::GetLogInfoInstance_void_]
push eax
call dword [sym.imp.ACHelper.dll_public:_void___cdecl_AcLogInfo::NormalPrintLogFile_unsigned_short_int__]
add esp, 8
push 0
push 0
push 0
push 3
push 0
push 0
push 0
push 0xffffffffffffffff
push 0
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
mov ebx, eax
test ebx, ebx
jge 0x408d59
cmp ebx, 0x80010119
je 0x408d59
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push ebx
push str.CAcWin32Bios::CAcWin32Bios:_Failed_to_initialize_security_hr_0x_Error_0x
call dword [sym.imp.ACHelper.dll_public:_static_class_AcLogInfo____cdecl_AcLogInfo::GetLogInfoInstance_void_]
push eax
call dword [sym.imp.ACHelper.dll_public:_void___cdecl_AcLogInfo::ErrorPrintLogFile_unsigned_short_int__]
add esp, 0x10
call dword [sym.imp.ole32.dll_CoUninitialize]
mov dword [esi + 4], ebx
jmp 0x408e1f
push edi
push 0x411bdc
push 1
push 0
push 0x411bcc
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov ebx, eax
test ebx, ebx
jge 0x408d97
push str.CAcWin32Bios::CAcWin32Bios:_Failed_to_create_IWbemlocator_object
call dword [sym.imp.ACHelper.dll_public:_static_class_AcLogInfo____cdecl_AcLogInfo::GetLogInfoInstance_void_]
push eax
call dword [sym.imp.ACHelper.dll_public:_void___cdecl_AcLogInfo::ErrorPrintLogFile_unsigned_short_int__]
add esp, 8
call dword [sym.imp.ole32.dll_CoUninitialize]
mov dword [esi + 4], ebx
jmp 0x408e1f
mov eax, dword [esp + 0x34]
test eax, eax
je 0x408db2
cmp dword [esp + 0x38], 8
jb 0x408dac
mov ecx, dword [esp + 0x24]
jmp 0x408db7
lea ecx, [esp + 0x24]
jmp 0x408db7
mov ecx, str.ROOTCIMV2
mov eax, dword [edi]
mov edx, dword [eax]
push ebp
push 0
push 0
push 0
push 0
push 0
push 0
push ecx
push eax
call dword [edx + 0xc]
mov ebx, eax
test ebx, ebx
jge 0x408e01
push 0x411ab0
call dword [sym.imp.ACHelper.dll_public:_static_class_AcLogInfo____cdecl_AcLogInfo::GetLogInfoInstance_void_]
push eax
call dword [sym.imp.ACHelper.dll_public:_void___cdecl_AcLogInfo::ErrorPrintLogFile_unsigned_short_int__]
mov eax, dword [edi]
add esp, 8
mov dword [esi + 4], ebx
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [edi], 0
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x408e1f
mov edx, dword [ebp]
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push edx
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
mov dword [esi], 1
lea ecx, [esp + 0x20]
mov dword [esp + 0x18], 0xffffffff
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
mov ecx, dword [esp + 0x10]
pop edi
mov eax, esi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0xc
ret 0x1c