Function at 0x431140
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5be62e
mov eax, dword fs:[0]
push eax
mov eax, 0x10c8
call fcn.0058a2a0
mov eax, dword [0x633ef8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x10d4], edi
mov dword [ebp - 4], 0
call fcn.0042e600
call fcn.004555ae
mov ecx, eax
test ecx, ecx
jne 0x43119b
push 0x80004005
call fcn.00416970
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x10a4], eax
mov byte [ebp - 4], 1
or ebx, 0xffffffff
mov eax, dword [ebp + 8]
cmp dword [eax - 0xc], 0
jne 0x43163e
lea eax, [edi + 0x54]
mov dword [ebp - 0x10b4], 0
push eax
lea ecx, [ebp - 0x10b4]
call fcn.004163d0
lea eax, [edi + 0x60]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x10b0]
mov dword [ebp - 0x10b0], 0
call fcn.004163d0
lea eax, [edi + 0x6c]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x10ac]
mov dword [ebp - 0x10ac], 0
call fcn.004163d0
lea eax, [edi + 0x78]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x10a8]
call fcn.004163d0
lea eax, [ebp - 0x10a8]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x10a4]
call fcn.00416300
mov byte [ebp - 4], 4
mov eax, ebx
mov edx, dword [ebp - 0x10a8]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43125a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [edi + 0x4c]
push 0x60bf88
push eax
mov dword [ebp - 0x10a8], eax
lea eax, [ebp - 0x10a0]
push eax
call fcn.0042cdf0
lea ecx, [ebp - 0x10a4]
mov byte [ebp - 4], 6
push ecx
push eax
lea eax, [ebp - 0x10d0]
push eax
call fcn.0042cec0
add esp, 0x18
mov byte [ebp - 4], 7
mov esi, dword [ebp - 0x10ac]
push dword [esi - 0xc]
push esi
push 1
push 0x60d478
push dword [eax]
push SysReAllocStringLen
call dword [0x641018]
mov byte [ebp - 4], 6
mov eax, ebx
mov edx, dword [ebp - 0x10d0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4312d3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 4
mov eax, ebx
mov edx, dword [ebp - 0x10a0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4312f4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x60bf88
lea eax, [edi + 0x4c]
push eax
lea eax, [ebp - 0x10d0]
push eax
call fcn.0042cdf0
lea ecx, [ebp - 0x10a4]
mov byte [ebp - 4], 8
push ecx
push eax
lea eax, [ebp - 0x10a0]
push eax
call fcn.0042cec0
add esp, 0x18
mov byte [ebp - 4], 9
push dword [esi - 0xc]
push esi
push 1
push dword [edi + 0x88]
push dword [eax]
push SysReAllocStringLen
call dword [0x641018]
mov byte [ebp - 4], 8
mov eax, ebx
mov edx, dword [ebp - 0x10a0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x431362
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 4
mov eax, ebx
mov edx, dword [ebp - 0x10d0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x431383
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x60bf88
lea eax, [edi + 0x4c]
push eax
lea eax, [ebp - 0x10d0]
push eax
call fcn.0042cdf0
lea ecx, [ebp - 0x10a4]
mov byte [ebp - 4], 0xa
push ecx
push eax
lea eax, [ebp - 0x10a0]
push eax
call fcn.0042cec0
add esp, 0x18
mov byte [ebp - 4], 0xb
mov edi, dword [ebp - 0x10b0]
push dword [edi - 0xc]
push edi
push 1
push str.DisplayName
push dword [eax]
push SysReAllocStringLen
call dword [0x641018]
mov byte [ebp - 4], 0xa
mov eax, ebx
mov edx, dword [ebp - 0x10a0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4313f6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 4
mov eax, ebx
mov edx, dword [ebp - 0x10d0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x431417
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x10d4]
mov eax, dword [eax + 0x94]
cmp dword [eax - 0xc], 0
jle 0x4315e5
push 0x60bf88
push dword [ebp - 0x10a8]
lea eax, [ebp - 0x10d0]
mov dword [ebp - 0x29], 0x72616573
push eax
mov dword [ebp - 0x42], 0x69737362
mov dword [ebp - 0x20], 0x2f736567
mov dword [ebp - 0x3b], 0x2f6d6f63
mov word [ebp - 0x54], 0x7468
mov word [ebp - 0x2b], 0x2f68
mov dword [ebp - 0x36], 0x6567616d
mov dword [ebp - 0x51], 0x2f2f3a70
mov word [ebp - 0x3e], 0x746e
mov dword [ebp - 0x1c], 0x2e67616d
mov dword [ebp - 0x4d], 0x726f7473
mov dword [ebp - 0x25], 0x6d496863
mov dword [ebp - 0x30], 0x72616553
mov dword [ebp - 0x48], 0x732e6567
mov dword [ebp - 0x18], 0x67706a
mov byte [ebp - 0x52], 0x74
mov word [ebp - 0x32], 0x2f73
mov word [ebp - 0x44], 0x6774
mov byte [ebp - 0x37], 0x49
mov byte [ebp - 0x21], 0x61
mov byte [ebp - 0x49], 0x61
mov byte [ebp - 0x2c], 0x63
mov byte [ebp - 0x3c], 0x2e
call fcn.0042cdf0
lea ecx, [ebp - 0x10a4]
mov byte [ebp - 4], 0xc
push ecx
push eax
lea eax, [ebp - 0x10a0]
push eax
call fcn.0042cec0
add esp, 0x18
mov ecx, dword [ebp - 0x10d4]
mov byte [ebp - 4], 0xd
mov ecx, dword [ecx + 0x94]
push dword [ecx - 0xc]
push ecx
push 1
push str.SuggestionsURL_JSON
push dword [eax]
push SysReAllocStringLen
call dword [0x641018]
mov byte [ebp - 4], 0xc
mov eax, ebx
mov edx, dword [ebp - 0x10a0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x431532
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 4
mov eax, ebx
mov edx, dword [ebp - 0x10d0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x431553
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x60bf88
push dword [ebp - 0x10a8]
lea eax, [ebp - 0x10d0]
push eax
call fcn.0042cdf0
lea ecx, [ebp - 0x10a4]
mov byte [ebp - 4], 0xe
push ecx
push eax
lea eax, [ebp - 0x10a0]
push eax
call fcn.0042cec0
add esp, 0x18
push 0x3f
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xf
push ecx
push 1
push str.FaviconURL
push dword [eax]
push SysReAllocStringLen
call dword [0x641018]
mov byte [ebp - 4], 0xe
mov eax, ebx
mov edx, dword [ebp - 0x10a0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4315c4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 4
mov eax, ebx
mov edx, dword [ebp - 0x10d0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4315e5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 3
add esi, 0xfffffff0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x431600
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
add edi, 0xfffffff0
mov eax, ebx
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x43161b
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 1
mov eax, ebx
mov edx, dword [ebp - 0x10b4]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43164d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x43164d
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x10a4]
call fcn.00416300
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
cmp eax, 0x80010106
je 0x4317b1
mov dword [ebp - 0x10a8], 0
lea eax, [ebp - 0x10a8]
push eax
push 0x60d528
push 0x17
push 0
push 0x5fc2f0
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x431797
mov dword [ebp - 0x10ac], 0
lea ecx, [ebp - 0x10a4]
mov byte [ebp - 4], 0x11
call fcn.004318a0
mov cx, word [0x609f6c]
mov esi, eax
push 0x1046
lea eax, [ebp - 0x109a]
mov word [ebp - 0x109c], cx
push 0
push eax
call fcn.0058f590
add esp, 0xc
mov dword [ebp - 0x10a0], 0x824
lea eax, [ebp - 0x10a0]
push 0x2000
push eax
lea eax, [ebp - 0x109c]
push eax
push esi
call dword [sym.imp.SHLWAPI.dll_UrlEscapeW]
test eax, eax
js 0x431783
push str.x_osid:1:search:
lea ecx, [ebp - 0x10cc]
call fcn.00431850
mov byte [ebp - 4], 0x12
cmp word [ebp - 0x109c], 0
jne 0x43171a
xor eax, eax
jmp 0x431729
lea eax, [ebp - 0x109c]
push eax
call fcn.005a2e81
add esp, 4
push eax
lea eax, [ebp - 0x109c]
push eax
lea ecx, [ebp - 0x10cc]
call fcn.00431940
mov eax, dword [ebp - 0x10a8]
lea edx, [ebp - 0x10cc]
cmp dword [ebp - 0x10b8], 8
lea esi, [ebp - 0x10ac]
push esi
cmovae edx, dword [ebp - 0x10cc]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x14]
test eax, eax
jne 0x431778
mov eax, dword [ebp - 0x10ac]
push 0
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x10]
lea ecx, [ebp - 0x10cc]
call fcn.0042dc10
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x10ac]
test eax, eax
je 0x431797
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x10a8]
test eax, eax
je 0x4317ab
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov byte [ebp - 4], 0
mov eax, ebx
mov edx, dword [ebp - 0x10a4]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4317d2
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp + 8]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x4317f1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005892bc
mov esp, ebp
pop ebp
ret 4