Function at 0x42df80
Capabilities:
Connect to wmi namespace via wbemlocator
Reference sql statements
Reference wmi statements

Disassembly:
sub esp, 0x34
mov eax, dword [esp + 0x38]
push ebx
push ebp
xor ebp, ebp
cmp eax, ebp
push esi
push edi
mov dword [esp + 0x18], ebp
jl 0x42e376
cmp eax, 8
jae 0x42e376
push ebp
call dword [sym.imp.ole32.dll_OleInitialize]
mov esi, eax
push 0x44d45c
mov dword [esp + 0x24], esi
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov ebx, eax
cmp ebx, ebp
mov dword [esp + 0x1c], ebx
jne 0x42dfe6
call dword [sym.imp.ole32.dll_CoUninitialize]
cmp esi, ebp
je 0x42dfd3
cmp esi, 1
jne 0x42dfd9
call dword [sym.imp.ole32.dll_OleUninitialize]
mov eax, 0xfffffffe
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x44d470
push ebx
call edi
push str.CoSetProxyBlanket
push ebx
mov esi, eax
call edi
cmp esi, ebp
mov ebx, eax
je 0x42e345
cmp ebx, ebp
je 0x42e345
push ebp
push ebp
push ebp
push 3
push ebp
push ebp
push ebp
push 0xffffffffffffffff
push ebp
call esi
lea eax, [esp + 0x14]
push eax
push 0x44ae04
push 1
push ebp
push 0x44aed4
mov dword [esp + 0x28], ebp
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jge 0x42e06e
call dword [sym.imp.ole32.dll_CoUninitialize]
mov ecx, dword [esp + 0x1c]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x42e05b
cmp eax, 1
jne 0x42e061
call dword [sym.imp.ole32.dll_OleUninitialize]
mov eax, 0xfffffffe
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
lea edi, [esp + 0x2c]
mov dword [esp + 0x10], ebp
call fcn.0042d720
mov eax, dword [eax]
cmp eax, ebp
je 0x42e085
mov ecx, dword [eax]
jmp 0x42e087
xor ecx, ecx
mov eax, dword [esp + 0x14]
mov edx, dword [eax]
lea esi, [esp + 0x10]
push esi
push ebp
push ebp
push ebp
push ebp
push ebp
push ebp
push ecx
push eax
mov eax, dword [edx + 0xc]
call eax
lea edi, [esp + 0x2c]
mov esi, eax
call fcn.0042d7c0
cmp esi, ebp
jge 0x42e0eb
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [esp + 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x42e0d8
cmp eax, 1
jne 0x42e0de
call dword [sym.imp.ole32.dll_OleUninitialize]
mov eax, 0xfffffffe
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov ecx, dword [esp + 0x10]
push ebp
push ebp
push 3
push 3
push ebp
push ebp
push 0xa
push ecx
call ebx
test eax, eax
jge 0x42e149
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [esp + 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x42e136
cmp eax, 1
jne 0x42e13c
call dword [sym.imp.ole32.dll_OleUninitialize]
mov eax, 0xfffffffe
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx*8 + 0x44d3b0]
push edx
lea ebx, [esp + 0x2c]
mov dword [esp + 0x28], ebp
call fcn.0042d690
mov eax, dword [eax]
cmp eax, ebp
je 0x42e16c
mov esi, dword [eax]
jmp 0x42e16e
xor esi, esi
push 0x44d4b4
lea ebx, [esp + 0x30]
call fcn.0042d690
mov eax, dword [eax]
cmp eax, ebp
je 0x42e186
mov ecx, dword [eax]
jmp 0x42e188
xor ecx, ecx
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
lea edi, [esp + 0x24]
push edi
push ebp
push 0x30
push esi
push ecx
push eax
mov eax, dword [edx + 0x50]
call eax
lea edi, [esp + 0x2c]
mov esi, eax
call fcn.0042d7c0
lea edi, [esp + 0x28]
call fcn.0042d7c0
cmp esi, ebp
jge 0x42e1ff
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [esp + 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x42e1ec
cmp eax, 1
jne 0x42e1f2
call dword [sym.imp.ole32.dll_OleUninitialize]
mov eax, 0xfffffffd
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x42e2fb
mov esi, dword [esp + 0x4c]
mov edi, esi
jmp 0x42e217
mov esi, dword [esp + 0x4c]
cmp esi, ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
je 0x42e22e
cmp dword [esp + 0x18], 0xc
jge 0x42e2fb
mov ecx, dword [eax]
lea edx, [esp + 0x2c]
push edx
lea edx, [esp + 0x2c]
push edx
push 1
push 0xffffffffffffffff
push eax
mov eax, dword [ecx + 0x10]
call eax
cmp dword [esp + 0x2c], ebp
je 0x42e2f7
cmp esi, ebp
je 0x42e2d2
lea ecx, [esp + 0x30]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [esp + 0x28]
mov ebx, dword [esp + 0x48]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
push ebp
push ebp
lea ecx, [esp + 0x38]
push ecx
mov ecx, dword [ebx*8 + 0x44d3b4]
push ebp
push ecx
push eax
call edx
mov edx, dword [esp + 0x38]
mov esi, 0x80
mov eax, edi
sub edx, edi
mov edi, edi
lea ecx, [esi + 0x7fffff7e]
test ecx, ecx
je 0x42e2b0
movzx ecx, word [edx + eax]
cmp cx, bp
je 0x42e2b0
mov word [eax], cx
add eax, 2
sub esi, 1
jne 0x42e290
jmp 0x42e2b4
cmp esi, ebp
jne 0x42e2b7
sub eax, 2
lea edx, [esp + 0x30]
push edx
mov word [eax], bp
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, edi
mov ecx, ebx
call fcn.0042de90
test eax, eax
je 0x42e2dd
add dword [esp + 0x18], 1
add edi, 0x100
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x24]
cmp eax, ebp
jne 0x42e213
jmp 0x42e2fb
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x42e333
cmp eax, 1
jne 0x42e339
call dword [sym.imp.ole32.dll_OleUninitialize]
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
call dword [sym.imp.ole32.dll_CoUninitialize]
mov ecx, dword [esp + 0x1c]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x42e363
cmp eax, 1
jne 0x42e369
call dword [sym.imp.ole32.dll_OleUninitialize]
mov eax, 0xfffffffe
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x34
ret