Function at 0x439c30
Capabilities:
Connect to wmi namespace via wbemlocator
Encode data using xor
Get http document via iwebbrowser2
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov ebx, dword [ebp + 8]
mov eax, dword [0x44dd10]
mov dword [esp], 0xe93febcf
mov dword [esp + 4], 0xed1bef17
mov dword [esp + 8], 0xf119f318
mov dword [esp + 0xc], 0xf532f703
mov dword [esp + 0x10], 0xf915fb02
mov dword [esp + 0x14], 0xfd15ff02
mov dword [esp + 0x18], 0x818283d7
mov word [esp + 0x1c], 0
mov ecx, 0x5b32e627
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx - 0x5b32e627]
lea edi, [ecx - 0x5b32e600]
and edi, edx
mov esi, ecx
and esi, edx
xor edx, ecx
lea esi, [edx + esi*2]
add edi, edi
sub esi, edi
and edx, 1
or esi, 1
add esi, 0x3c
xor esi, edx
lea edx, [esi + edx*2]
mov byte [esp + ecx - 0x5b32e627], dl
inc ecx
cmp ecx, 0x5b32e645
jne 0x439c90
lea edi, [esp + 0x44]
lea ecx, [esp + 0x84]
mov esi, esp
push edi
push 8
push ecx
push 0xd
push esi
push 0
call eax
test eax, eax
jns 0x439cf2
mov dword [esp + 0x84], 0x3a0043
mov dword [esp + 0x88], 0x5c
mov dword [esp + 0x50], 0x932c77bd
mov dword [esp + 0x4c], 0xc44895a0
mov dword [esp + 0x48], 0x57bc89d2
mov dword [esp + 0x44], 0x1dd2a6c3
mov dword [esp + 0x40], 0
lea eax, [esp + 0x40]
push eax
push 0x444668
push 1
push 0
push 0x444678
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x43a251
mov dword [esp], 0x29fb2bf2
mov dword [esp + 4], 0x2dfa2ff9
mov dword [esp + 8], 0x31f733f0
mov dword [esp + 0xc], 0x35e537ff
mov dword [esp + 0x10], 0x39cc3bee
mov word [esp + 0x14], 0x3f38
mov dword [esp + 0x16], 0
mov eax, 0x306d9e47
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax - 0x306d9e47]
xor ecx, eax
add ecx, 0x1c9da730
mov edx, ecx
and edx, 0xd0b409c
xor ecx, 0xddbe89c
lea edx, [ecx + edx*2]
mov ecx, edx
and ecx, 0x50
add ecx, ecx
xor edx, 0x2f
sub ecx, edx
mov byte [esp + eax - 0x306d9e47], cl
inc eax
cmp eax, 0x306d9e61
jne 0x439d90
mov eax, esp
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov eax, dword [esp + 0x40]
mov ecx, dword [eax]
lea edx, [esp + 0x3c]
push edx
push 0
push 0
push 0
push 0
push 0
push 0
mov dword [esp + 0x88], esi
push esi
push eax
call dword [ecx + 0xc]
test eax, eax
js 0x43a23b
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [esp + 0x58]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
js 0x43a231
mov dword [esp], 0xe353e157
mov dword [esp + 4], 0xe7e6e558
mov word [esp + 8], 0
mov byte [esp + 0xa], 0
mov eax, 0x980646d8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x67f9b928]
mov edx, ecx
and edx, eax
add dl, dl
sub cl, dl
movzx ecx, cl
add ecx, eax
add cl, 0xc8
mov byte [esp + eax + 0x67f9b928], cl
inc eax
cmp eax, 0x980646e3
jne 0x439e50
mov eax, esp
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [esp + 0x58], eax
mov dword [esp], 0x83478153
mov dword [esp + 4], 0x87438548
mov dword [esp + 8], 0x8b5e894b
mov dword [esp + 0xc], 0x8f648d6c
mov dword [esp + 0x10], 0x93549170
mov dword [esp + 0x14], 0x97599546
mov dword [esp + 0x18], 0x9b7a9955
mov dword [esp + 0x1c], 0x9f379d4b
mov dword [esp + 0x20], 0x639161ce
mov dword [esp + 0x24], 0x67b96596
mov dword [esp + 0x28], 0x6ba369aa
mov dword [esp + 0x2c], 0x6fbd6da3
mov word [esp + 0x30], 0x7170
mov dword [esp + 0x32], 0
mov word [esp + 0x36], 0
xor eax, eax
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xe0
xor cl, byte [esp + eax]
add cl, 0xa0
mov byte [esp + eax], cl
inc eax
cmp eax, 0x38
jne 0x439f00
mov eax, esp
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, dword [esp + 0x3c]
mov ecx, dword [esi]
lea edx, [esp + 0x64]
push edx
push 0
push 0x30
mov dword [esp + 0x74], eax
push eax
push dword [esp + 0x68]
push esi
call dword [ecx + 0x50]
test eax, eax
js 0x43a21f
mov dword [esp + 0x5c], 0
mov eax, dword [esp + 0x64]
mov ecx, dword [eax]
lea edx, [esp + 0x5c]
lea edi, [esp + 0x60]
push edx
push edi
push 1
push 0xffffffffffffffff
push eax
call dword [ecx + 0x10]
test eax, eax
js 0x43a211
cmp eax, 1
je 0x43a211
cmp dword [esp + 0x5c], 0
je 0x43a211
lea esi, [esp + 0x70]
push esi
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [esp + 0x60]
mov dword [esp], 0x89318b21
mov dword [esp + 4], 0x85318706
mov dword [esp + 8], 0x8136833b
mov dword [esp + 0xc], 0x9d159fd2
mov dword [esp + 0x10], 0x99249b2f
mov dword [esp + 0x14], 0x95189723
mov dword [esp + 0x18], 0x9394
mov byte [esp + 0x1c], 0
mov ecx, 0x77b430a3
nop
nop
nop
movzx edx, byte [esp + ecx - 0x77b430a3]
mov ebx, edx
and ebx, ecx
add bl, bl
sub dl, bl
movzx edx, dl
add edx, ecx
add dl, 0xd1
mov byte [esp + ecx - 0x77b430a3], dl
inc ecx
cmp ecx, 0x77b430c0
jne 0x439fd0
mov ecx, dword [eax]
push 0
push 0
push esi
push 0
lea edx, [esp + 0x10]
push edx
push eax
call dword [ecx + 0x10]
test eax, eax
js 0x43a1fd
cmp word [esp + 0x70], 8
jne 0x43a1fd
mov ebx, dword [esp + 0x78]
movzx ecx, word [ebx]
test cx, cx
je 0x43a06d
lea eax, [ebx + 2]
xor esi, esi
jmp 0x43a04c
inc esi
movzx ecx, word [eax]
add eax, 2
test cx, cx
je 0x43a06f
cmp cx, 0x7f
jbe 0x43a040
movzx edx, cx
cmp edx, 0x7ff
ja 0x43a062
add esi, 2
jmp 0x43a041
cmp cx, 0xffff
je 0x43a041
add esi, 3
jmp 0x43a041
xor esi, esi
lea eax, [esi + 1]
push eax
call fcn.00408ac0
add esp, 4
mov edi, eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x54], esi
test esi, esi
je 0x43a1af
movzx eax, word [ebx]
mov edi, dword [esp + 0x38]
test ax, ax
je 0x43a1af
mov ecx, dword [esp + 0x54]
mov edi, dword [esp + 0x38]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, ax
lea esi, [ebx + 2]
cmp dx, 0x7f
ja 0x43a0d0
lea eax, [edi + 1]
mov byte [edi], dl
jmp 0x43a150
cmp edx, 0x7ff
ja 0x43a0f4
cmp ecx, 2
jb 0x43a0f4
mov eax, edx
shr eax, 6
add al, 0xc0
mov byte [edi], al
and dl, 0x3f
or dl, 0x80
lea eax, [edi + 2]
mov byte [edi + 1], dl
jmp 0x43a150
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x43a16a
cmp ecx, 4
jb 0x43a16a
movzx esi, word [ebx + 2]
add ebx, 4
shl edx, 0xa
lea eax, [edx + esi]
add eax, 0xfca02400
mov edx, eax
shr edx, 0x12
add dl, 0xf0
mov byte [edi], dl
mov edx, eax
shr edx, 0xc
and dl, 0x3f
or dl, 0x80
mov byte [edi + 1], dl
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [edi + 2], al
mov eax, esi
and al, 0x3f
or al, 0x80
mov edx, eax
lea eax, [edi + 4]
mov byte [edi + 3], dl
mov esi, ebx
nop
nop
nop
nop
nop
add ecx, edi
sub ecx, eax
mov ebx, esi
mov edi, eax
movzx eax, word [ebx]
test ax, ax
je 0x43a1af
test ecx, ecx
jne 0x43a0b0
jmp 0x43a1af
movzx eax, ax
cmp eax, 0xdc00
jne 0x43a178
mov ebx, esi
jmp 0x43a158
cmp ecx, 3
jb 0x43a1ab
mov eax, edx
shr eax, 0xc
or al, 0xe0
mov byte [edi], al
mov eax, edx
shr eax, 6
mov ebx, eax
xor ebx, 0xc0
or eax, 0x3f
and eax, ebx
add al, 0x80
mov byte [edi + 1], al
lea eax, [edi + 3]
and dl, 0x3f
or dl, 0x80
mov byte [edi + 2], dl
jmp 0x43a150
mov eax, edi
jmp 0x43a150
mov byte [edi], 0
mov eax, 3
mov ecx, dword [esp + 0x54]
sub eax, ecx
cmp eax, 0xfffffffd
jae 0x43a1c7
mov eax, 0xfffffffc
add eax, ecx
shr eax, 2
cmp eax, 3
lea esi, [esp + 0x70]
jb 0x43a1da
mov eax, 3
lea eax, [eax*4 + 4]
lea ecx, [esp + 0x44]
push eax
mov edi, dword [esp + 0x3c]
push edi
push ecx
call fcn.00408af0
add esp, 0xc
push edi
call fcn.00408ad0
add esp, 4
push esi
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [esp + 0x60]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ebx, dword [ebp + 8]
mov eax, dword [esp + 0x64]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea edi, [esp + 0x44]
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
push dword [esp + 0x58]
call esi
push dword [esp + 0x68]
call esi
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push dword [esp + 0x6c]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esp + 0x40]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov esi, esp
push 0xbeb8f1a1
push dword [0x44dd08]
call fcn.004401d0
add esp, 8
push 0
push 0
push 0
push 0
push esi
push 0
push 0
lea ecx, [esp + 0xa0]
push ecx
call eax
test eax, eax
je 0x43a281
mov edi, esi
mov ecx, dword [edi]
imul eax, ecx, 0x1a5845
imul ecx, ecx, 0x34b08a
and ecx, 0xd7bd1426
xor eax, 0xebde8a13
add eax, ecx
mov dword [esp + 0x44], eax
mov esi, 0xffffffff
push 0x10
push 9
push ebx
push eax
call fcn.004208a0
add esp, 0x10
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [eax + esi + 1], 0
lea esi, [esi + 1]
jne 0x43a2c0
mov ecx, esi
and ecx, 0xfffffff7
not esi
and esi, 8
mov edx, esi
sub edx, ecx
je 0x43a2ea
sub ecx, esi
add eax, ecx
push edx
push 0x30
push eax
call fcn.00408c60
add esp, 0xc
lea eax, [ebx + 8]
xor ecx, ecx
cmp dword [esp + 0x48], 0
setne cl
mov edx, dword [esp + ecx*4 + 0x44]
imul ecx, edx, 0x1a5845
imul edx, edx, 0x34b08a
and edx, 0xd7bd1426
xor ecx, 0xebde8a13
add ecx, edx
mov dword [esp + 0x48], ecx
mov esi, 0xffffffff
push 0x10
push 9
push eax
push ecx
call fcn.004208a0
add esp, 0x10
nop
nop
nop
nop
cmp byte [eax + esi + 1], 0
lea esi, [esi + 1]
jne 0x43a330
mov ecx, esi
and ecx, 0xfffffff7
not esi
and esi, 8
mov edx, esi
sub edx, ecx
je 0x43a35a
sub ecx, esi
add eax, ecx
push edx
push 0x30
push eax
call fcn.00408c60
add esp, 0xc
lea eax, [ebx + 0x10]
xor ecx, ecx
cmp dword [esp + 0x4c], 0
setne cl
mov edx, dword [esp + ecx*4 + 0x48]
imul ecx, edx, 0x1a5845
imul edx, edx, 0x34b08a
and edx, 0xd7bd1426
xor ecx, 0xebde8a13
add ecx, edx
mov dword [esp + 0x4c], ecx
mov esi, 0xffffffff
push 0x10
push 9
push eax
push ecx
call fcn.004208a0
add esp, 0x10
nop
nop
nop
nop
cmp byte [eax + esi + 1], 0
lea esi, [esi + 1]
jne 0x43a3a0
mov ecx, esi
and ecx, 0xfffffff7
not esi
and esi, 8
mov edx, esi
sub edx, ecx
je 0x43a3ca
sub ecx, esi
add eax, ecx
push edx
push 0x30
push eax
call fcn.00408c60
add esp, 0xc
add ebx, 0x18
xor eax, eax
cmp dword [esp + 0x50], 0
setne al
mov ecx, dword [esp + eax*4 + 0x4c]
imul eax, ecx, 0x1a5845
imul ecx, ecx, 0x34b08a
and ecx, 0xd7bd1426
xor eax, 0xebde8a13
add eax, ecx
mov esi, 0xffffffff
push 0x10
push 9
push ebx
push eax
call fcn.004208a0
add esp, 0x10
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [eax + esi + 1], 0
lea esi, [esi + 1]
jne 0x43a410
mov ecx, esi
and ecx, 0xfffffff7
not esi
and esi, 8
mov edx, esi
sub edx, ecx
je 0x43a43a
sub ecx, esi
add eax, ecx
push edx
push 0x30
push eax
call fcn.00408c60
add esp, 0xc
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret