Function at 0x472930
Capabilities:
Get http document via iwebbrowser2

Disassembly:
push 0xffffffffffffffff
push 0x488f38
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x74
mov eax, dword [0x4ce19c]
push ebx
push ebp
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x90]
xor ebx, ebx
cmp eax, ebx
push esi
push edi
mov esi, ecx
mov dword [esp + 0x1c], ebx
je 0x472d84
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov eax, dword [esi]
cmp eax, ebx
jne 0x472d89
push str.Win32_DiskDrive
mov dword [esp + 0x24], ebx
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x472d3b
mov edx, dword [eax]
lea ecx, [esp + 0x20]
push ecx
push ebx
push ebx
push edi
push eax
call dword [edx + 0x48]
mov ebp, eax
push edi
mov dword [esp + 0x28], ebp
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp ebp, ebx
je 0x472a1a
push ebp
lea edi, [esi + 8]
push str.winGetDriveData_failed_0x_08X
push edi
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::Format]
add esp, 0xc
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push 0x48affc
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push edi
mov dword [esp + 0x9c], 1
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_4]
mov dword [esp + 0x98], 0xffffffff
call fcn.00457810
add esp, 0xc
mov dword [esi], 4
mov eax, 4
jmp 0x472d89
lea edx, [esp + 0x2c]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov dword [esp + 0x18], ebx
or ebp, 0xffffffff
lea esp, [esp]
cmp dword [esp + 0x24], ebx
jne 0x472c5c
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x472bf2
mov ecx, dword [eax]
lea edx, [esp + 0x28]
push edx
lea edx, [esp + 0x1c]
push edx
push 1
push 0x7d0
push eax
call dword [ecx + 0x10]
cmp dword [esp + 0x28], ebx
mov dword [esp + 0x24], eax
je 0x472c5c
cmp eax, ebx
jne 0x472b95
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [esp + 0x2c]
push eax
call esi
mov eax, dword [esp + 0x18]
cmp eax, ebx
push ebx
je 0x472c1e
mov ecx, dword [eax]
push ebx
lea edx, [esp + 0x34]
push edx
push ebx
push str.Index
push eax
call dword [ecx + 0x10]
cmp eax, ebx
jne 0x472b69
mov eax, dword [esp + 0x94]
cmp eax, dword [esp + 0x34]
jne 0x472bd4
lea ecx, [esp + 0x2c]
push ecx
mov dword [esp + 0x20], 1
call esi
mov eax, dword [esp + 0x18]
mov edx, dword [eax]
push ebx
push ebx
lea ecx, [esp + 0x34]
push ecx
push ebx
push str.InterfaceType
push eax
call dword [edx + 0x10]
cmp eax, ebx
jne 0x472b3d
cmp word [esp + 0x2c], 8
jne 0x472c5c
mov eax, dword [esp + 0x34]
mov ecx, 3
mov edi, eax
mov esi, 0x4a4334
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x472b16
mov eax, dword [esp + 0x98]
mov dword [eax], 1
jmp 0x472bd4
mov edi, eax
xor edx, edx
mov ecx, 3
mov esi, 0x4ad9b4
repe cmpsb byte [esi], byte es:[edi]
mov ecx, dword [esp + 0x98]
mov eax, edx
sete al
dec eax
and eax, 2
mov dword [ecx], eax
jmp 0x472bd4
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0x48affc
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
mov dword [esp + 0x98], 5
push str.winGetDriveData_failed_C
jmp 0x472bbf
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 0x48affc
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
mov dword [esp + 0x98], 6
push str.winGetDriveData_failed_E
jmp 0x472bbf
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 0x48affc
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
mov dword [esp + 0x98], 7
push str.winGetDriveData_failed_F
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
mov dword [esp + 0x98], ebp
call fcn.00457810
add esp, 0xc
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x472be6
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov dword [esp + 0x18], ebx
cmp dword [esp + 0x1c], ebx
je 0x472a30
jmp 0x472c5c
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 0x48affc
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
mov dword [esp + 0x98], 2
push str.pEnum_is_NULL
jmp 0x472c47
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 0x48affc
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
mov dword [esp + 0x98], 3
push str.pInst_is_NULL
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
mov dword [esp + 0x98], ebp
call fcn.00457810
add esp, 0xc
lea eax, [esp + 0x2c]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x472c75
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [esp + 0x94]
push edx
push str..PHYSICALDRIVE_d
lea eax, [esp + 0x60]
push 0x28
push eax
call fcn.00403fa3
add esp, 0x10
push ebx
push 0x80
push 3
push ebx
push 3
push SysReAllocString
lea ecx, [esp + 0x70]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, ebp
je 0x472d37
push ebx
lea edx, [esp + 0x40]
push edx
push 0x18
lea eax, [esp + 0x4c]
push eax
push ebx
push ebx
push 0x70000
push esi
call dword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x472cf1
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x98]
push esi
mov dword [edx + 4], ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x472d89
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.winGetDriveData
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.IOCTL_DISK_GET_DRIVE_GEOMETRY
mov dword [esp + 0x98], 8
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
push ebx
mov dword [esp + 0x98], ebp
call fcn.00458010
add esp, 0xc
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x472d89
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 0x48affc
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push str.m_pRRUIWbemServices_is_NULL
mov dword [esp + 0x9c], ebx
call dword [sym.imp.MFC71U.DLL_ATL::CStringT::CStringT_6]
or ebp, 0xffffffff
mov dword [esp + 0x98], ebp
call fcn.00457810
add esp, 0xc
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, ebp
jmp 0x472d89
mov eax, 0x19
mov ecx, dword [esp + 0x84]
mov dword fs:[0], ecx
mov ecx, dword [esp + 0x80]
call fcn.00475533
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret 8