Function at 0x4336f0
Capabilities:
Connect to wmi namespace via wbemlocator
Encode data using xor
Get http document via iwebbrowser2

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov edi, dword [ebp + 8]
mov eax, dword [0x44a8e0]
mov dword [esp + 8], 0x39873b57
mov dword [esp + 0xc], 0x25bb27bf
mov dword [esp + 0x10], 0x218923b8
mov dword [esp + 0x14], 0x2d622fb3
mov dword [esp + 0x18], 0x29bd2bb2
mov dword [esp + 0x1c], 0x15bd17b2
mov dword [esp + 0x20], 0x1112137f
mov dword [esp + 0x24], 0
mov ecx, 0x8866528b
nop
nop
nop
nop
movzx edx, byte [esp + ecx + 0x7799ad7d]
mov ebx, edx
and ebx, ecx
add bl, bl
sub dl, bl
movzx edx, dl
add edx, ecx
add dl, 0x49
mov byte [esp + ecx + 0x7799ad7d], dl
inc ecx
cmp ecx, 0x886652ab
jne 0x433750
lea ecx, [esp + 0x50]
lea esi, [esp + 0x84]
lea ebx, [esp + 8]
push ecx
push 8
push esi
push 0xd
push ebx
push 0
call eax
test eax, eax
jns 0x4337a1
mov dword [esp + 0x84], 0x3a0043
mov dword [esp + 0x88], 0x5c
mov dword [esp + 0x5c], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
lea eax, [esp + 0x4c]
push eax
push 0x440670
push 1
push 0
push 0x440680
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x433d8f
mov dword [esp + 8], 0x17e519f6
mov dword [esp + 0xc], 0x13fe15e7
mov dword [esp + 0x10], 0xff111f4
mov dword [esp + 0x14], 0xbff0df5
mov dword [esp + 0x18], 0x7c809e2
mov dword [esp + 0x1c], 0x504
mov byte [esp + 0x20], 0
xor eax, eax
xor ecx, ecx
nop
nop
movzx edx, byte [esp + ecx + 8]
mov edi, eax
and edi, 0xc
mov esi, ecx
xor esi, 0xd5bc5546
add esi, edi
mov ebx, esi
or ebx, edx
mov edi, esi
xor edi, edx
add edi, esi
not edi
add edi, ebx
lea ebx, [esi + esi]
not ebx
add ebx, esi
not esi
or esi, ebx
lea ebx, [esi + esi]
not ebx
add ebx, esi
not edx
or ebx, edx
and ebx, edi
mov dl, 0xa1
sub dl, bl
mov byte [esp + ecx + 8], dl
inc ecx
add eax, 2
cmp ecx, 0x19
jne 0x433830
lea ebx, [esp + 8]
push ebx
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, dword [esp + 0x4c]
mov ecx, dword [esi]
lea edx, [esp + 0x48]
push edx
push 0
push 0
push 0
push 0
push 0
push 0
mov dword [esp + 0x88], eax
push eax
push esi
call dword [ecx + 0xc]
test eax, eax
mov edi, dword [ebp + 8]
lea esi, [esp + 0x84]
js 0x433d7b
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [esp + 0x64]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
js 0x433d71
mov dword [esp + 8], 0x4fbf49a3
mov dword [esp + 0xc], 0x43424db0
mov word [esp + 0x10], 0
mov byte [esp + 0x12], 0
mov eax, 0x91
mov esi, 0x6e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax - 0x89]
mov dword [esp + 0x44], edx
lea ecx, [eax - 0xac507ff]
mov dword [esp + 0x40], ecx
mov edi, edx
not edi
and ecx, edi
lea ebx, [esi - 1]
mov dword [esp], ebx
and ebx, edx
or ebx, ecx
not ebx
and ebx, dword [esp + 0x40]
lea edx, [esi + ebx*2]
add ebx, ebx
and edx, edi
mov ecx, eax
sub ecx, ebx
and ecx, dword [esp + 0x44]
sub ecx, edx
add cl, 0x26
mov byte [esp + eax - 0x89], cl
inc eax
mov ecx, dword [esp]
mov esi, ecx
cmp ecx, 0x63
jne 0x433910
lea ebx, [esp + 8]
push ebx
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
mov dword [esp + 8], 0x17eb19f7
mov dword [esp + 0xc], 0x13ef15e0
mov dword [esp + 0x10], 0xfe211ef
mov dword [esp + 0x14], 0xbdc0d2c
mov dword [esp + 0x18], 0x7fc0928
mov dword [esp + 0x1c], 0x3f105ea
mov dword [esp + 0x20], 0x3f1e01f5
mov dword [esp + 0x24], 0x3ba33dd7
mov dword [esp + 0x28], 0x37f939aa
mov dword [esp + 0x2c], 0x33d135fa
mov dword [esp + 0x30], 0x2fd731ce
mov dword [esp + 0x34], 0x2bc52ddf
mov word [esp + 0x38], 0x2928
mov dword [esp + 0x3a], 0
mov byte [esp + 0x3e], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea ecx, [eax + eax]
mov esi, ecx
and esi, 0xc
mov edx, eax
xor edx, 0xc6
add edx, esi
xor dl, byte [esp + eax + 8]
add dl, 0x22
mov byte [esp + eax + 8], dl
and ecx, 2
xor eax, 1
add eax, ecx
cmp eax, 0x37
jb 0x4339f0
push ebx
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, dword [esp + 0x48]
mov ecx, dword [esi]
lea edx, [esp + 0x68]
push edx
push 0
push 0x30
mov dword [esp + 0x4c], eax
push eax
mov dword [esp + 0x54], edi
push edi
push esi
call dword [ecx + 0x50]
test eax, eax
mov edi, dword [ebp + 8]
js 0x433d58
mov dword [esp + 0x60], 0
mov eax, dword [esp + 0x68]
mov ecx, dword [eax]
lea edx, [esp + 0x60]
lea esi, [esp + 0x64]
push edx
push esi
push 1
push 0xffffffffffffffff
push eax
call dword [ecx + 0x10]
test eax, eax
js 0x433d4e
cmp eax, 1
je 0x433d4e
cmp dword [esp + 0x60], 0
je 0x433d4e
lea eax, [esp + 0x70]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [esp + 0x64]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x970b9937
mov dword [esp + 0xc], 0x930b951a
mov dword [esp + 0x10], 0x8f1a9131
mov dword [esp + 0x14], 0x8b078d3e
mov dword [esp + 0x18], 0x8718891d
mov dword [esp + 0x1c], 0x830c8519
mov dword [esp + 0x20], 0x8180
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, ecx
and edi, 6
movzx esi, byte [esp + ecx + 8]
mov eax, ecx
and eax, 0x19
mov edx, eax
mov dword [esp], eax
mov ebx, ecx
xor ebx, 0x71efb66
mov eax, ebx
sub eax, edx
add edi, ecx
add eax, edi
and eax, esi
mov edx, esi
add bl, dl
sub bl, byte [esp]
add al, al
sub bl, al
movzx eax, bl
add eax, edi
add al, 2
mov byte [esp + ecx + 8], al
inc ecx
cmp ecx, 0x1c
jne 0x433ae0
mov edx, dword [esp + 4]
mov eax, dword [edx]
push 0
push 0
lea ecx, [esp + 0x78]
push ecx
push 0
lea ebx, [esp + 0x18]
push ebx
push edx
call dword [eax + 0x10]
test eax, eax
mov edi, dword [ebp + 8]
js 0x433d39
cmp word [esp + 0x70], 8
jne 0x433d39
mov esi, dword [esp + 0x78]
movzx ecx, word [esi]
test cx, cx
je 0x433b9d
lea eax, [esi + 2]
xor edi, edi
jmp 0x433b7c
inc edi
movzx ecx, word [eax]
add eax, 2
test cx, cx
je 0x433b9f
cmp cx, 0x7f
jbe 0x433b70
movzx edx, cx
cmp edx, 0x7ff
ja 0x433b92
add edi, 2
jmp 0x433b71
cmp cx, 0xffff
je 0x433b71
add edi, 3
jmp 0x433b71
xor edi, edi
mov dword [esp + 4], edi
lea eax, [edi + 1]
push eax
call fcn.00408350
add esp, 4
mov edi, eax
movzx edx, word [esi]
mov dword [esp], eax
test dx, dx
je 0x433ce8
mov ecx, dword [esp + 4]
lea eax, [ecx*2 + 2]
sub eax, ecx
mov edi, dword [esp]
add eax, 0xfffffffe
je 0x433ce8
mov edi, dword [esp]
nop
nop
nop
nop
movzx ebx, dx
lea edx, [esi + 2]
cmp bx, 0x7f
ja 0x433c00
lea ecx, [edi + 1]
mov byte [edi], bl
jmp 0x433c90
cmp ebx, 0x7ff
ja 0x433c2f
cmp eax, 2
jb 0x433c2f
mov ecx, ebx
shr ecx, 6
add cl, 0xc0
mov byte [edi], cl
mov ecx, ebx
or ecx, 0x3f
xor ebx, 0xc0
and ebx, ecx
add bl, 0x80
lea ecx, [edi + 2]
mov byte [edi + 1], bl
jmp 0x433c90
mov ecx, ebx
and ecx, 0xfc00
cmp ecx, 0xd800
jne 0x433caa
cmp eax, 4
jb 0x433caa
movzx edx, word [esi + 2]
add esi, 4
shl ebx, 0xa
lea ecx, [ebx + edx]
add ecx, 0xfca02400
mov ebx, ecx
shr ebx, 0x12
add bl, 0xf0
mov byte [edi], bl
mov ebx, ecx
shr ebx, 0xc
and bl, 0x3f
or bl, 0x80
mov byte [edi + 1], bl
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [edi + 2], cl
and dl, 0x3f
or dl, 0x80
lea ecx, [edi + 4]
mov byte [edi + 3], dl
mov edx, esi
nop
nop
nop
nop
nop
nop
nop
add eax, edi
sub eax, ecx
mov esi, edx
mov edi, ecx
movzx edx, word [esi]
test dx, dx
je 0x433ce8
test eax, eax
jne 0x433be0
jmp 0x433ce8
movzx ecx, cx
cmp ecx, 0xdc00
jne 0x433cb9
mov esi, edx
jmp 0x433c98
cmp eax, 3
jb 0x433ce4
mov ecx, ebx
shr ecx, 0xc
or cl, 0xe0
mov byte [edi], cl
mov ecx, ebx
shr ecx, 6
and cl, 0x3f
or cl, 0x80
mov byte [edi + 1], cl
and bl, 0x3f
or bl, 0x80
lea ecx, [edi + 3]
mov byte [edi + 2], bl
jmp 0x433c90
mov ecx, edi
jmp 0x433c90
mov byte [edi], 0
mov eax, 3
mov ecx, dword [esp + 4]
sub eax, ecx
cmp eax, 0xfffffffd
jae 0x433d00
mov eax, 0xfffffffc
add eax, ecx
shr eax, 2
cmp eax, 3
mov edi, dword [ebp + 8]
lea ebx, [esp + 8]
jb 0x433d16
mov eax, 3
lea eax, [eax*4 + 4]
push eax
mov esi, dword [esp + 4]
push esi
lea eax, [esp + 0x58]
push eax
call fcn.00408380
add esp, 0xc
push esi
call fcn.00408360
add esp, 4
lea eax, [esp + 0x70]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [esp + 0x64]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esp + 0x68]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
push dword [esp + 0x44]
call esi
push dword [esp + 0x40]
call esi
lea esi, [esp + 0x84]
mov eax, dword [esp + 0x48]
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 + 0x4c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [esp + 8], 0
push 0x72a7c387
push dword [0x44a8d8]
call fcn.0043c0e0
add esp, 8
push 0
push 0
push 0
push 0
push ebx
push 0
push 0
push esi
call eax
test eax, eax
je 0x433efe
imul eax, dword [esp + 8], 0x1a5845
add eax, 0xebde8a13
mov dword [esp + 0x50], eax
mov esi, 0xfffffff7
push 0x10
push 9
push edi
push eax
call fcn.00418d90
add esp, 0x10
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp byte [eax + esi + 9], 0
lea esi, [esi + 1]
jne 0x433df0
test esi, esi
je 0x433e0e
add eax, esi
neg esi
push esi
push 0x30
push eax
call fcn.004084e0
add esp, 0xc
lea eax, [edi + 8]
xor ecx, ecx
cmp dword [esp + 0x54], 0
setne cl
imul ecx, dword [esp + ecx*4 + 0x50], 0x1a5845
add ecx, 0xebde8a13
mov dword [esp + 0x54], ecx
mov esi, 0xfffffff7
push 0x10
push 9
push eax
push ecx
call fcn.00418d90
add esp, 0x10
cmp byte [eax + esi + 9], 0
lea esi, [esi + 1]
jne 0x433e40
test esi, esi
je 0x433e5e
add eax, esi
neg esi
push esi
push 0x30
push eax
call fcn.004084e0
add esp, 0xc
lea eax, [edi + 0x10]
xor ecx, ecx
cmp dword [esp + 0x58], 0
setne cl
imul ecx, dword [esp + ecx*4 + 0x54], 0x1a5845
add ecx, 0xebde8a13
mov dword [esp + 0x58], ecx
mov esi, 0xfffffff7
push 0x10
push 9
push eax
push ecx
call fcn.00418d90
add esp, 0x10
cmp byte [eax + esi + 9], 0
lea esi, [esi + 1]
jne 0x433e90
test esi, esi
je 0x433eae
add eax, esi
neg esi
push esi
push 0x30
push eax
call fcn.004084e0
add esp, 0xc
add edi, 0x18
xor eax, eax
cmp dword [esp + 0x5c], 0
setne al
imul eax, dword [esp + eax*4 + 0x58], 0x1a5845
add eax, 0xebde8a13
mov esi, 0xfffffff7
push 0x10
push 9
push edi
push eax
call fcn.00418d90
add esp, 0x10
nop
nop
nop
nop
nop
cmp byte [eax + esi + 9], 0
lea esi, [esi + 1]
jne 0x433ee0
test esi, esi
je 0x433efe
add eax, esi
neg esi
push esi
push 0x30
push eax
call fcn.004084e0
add esp, 0xc
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret