Function at 0x40ce32
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x40
mov eax, 0x44ef8f
call fcn.004482ac
push 0x4552b4
lea eax, [ebp - 0x2c]
push eax
call fcn.00401421
and dword [ebp - 4], 0
mov esi, dword [ebp + 8]
inc dword [esi + 4]
lea eax, [ebp - 0x1c]
push eax
call fcn.00406a95
push 0x454250
lea eax, [ebp - 0x14]
push eax
mov byte [ebp - 4], 1
call fcn.00401421
push 0x454270
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 2
call fcn.00401421
mov byte [ebp - 4], 3
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x3c]
push ecx
mov ebx, eax
call fcn.00418239
push eax
lea eax, [ebp - 0x38]
push eax
mov byte [ebp - 4], 4
call fcn.00430c5a
pop ecx
pop ecx
mov edi, eax
mov byte [ebp - 4], 5
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x34]
push ecx
mov ebx, eax
call fcn.00418239
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 6
call fcn.00430c5a
pop ecx
pop ecx
mov ebx, eax
mov byte [ebp - 4], 7
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x10]
push ecx
call fcn.0041eb73
mov byte [ebp - 4], 8
push dword [eax]
lea eax, [ebp - 0x20]
push eax
call fcn.0040d71c
push eax
lea eax, [ebp - 0x24]
push eax
mov byte [ebp - 4], 9
call fcn.00430c5a
mov byte [ebp - 4], 0xa
push dword [esi + 8]
push dword [esi + 4]
push dword [edi]
push dword [ebx]
push dword [eax]
lea eax, [ebp - 0x1c]
push dword [ebp - 0x2c]
push str._request__installreport_version__s___sessionstart__s__sessionstart__cscid__s__cscid__hdid__s__hdid__page_index__d__count__d____page__manifestinfo___manifestinfo__softwarelist___softwarelist___installreport___request_
call fcn.0040d85c
add esp, 0x24
lea eax, [ebp - 0x24]
push eax
mov byte [ebp - 4], 9
call fcn.00406ac4
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 4], 8
call fcn.00406ac4
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x10]
add eax, 0xfffffff0
call fcn.0040114e
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 6
call fcn.00406ac4
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 5
call fcn.00406ac4
lea eax, [ebp - 0x38]
push eax
mov byte [ebp - 4], 4
call fcn.00406ac4
lea eax, [ebp - 0x3c]
push eax
mov byte [ebp - 4], 3
call fcn.00406ac4
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
call fcn.0040114e
lea edi, [esi + 0xc]
call fcn.00432746
mov edx, dword [edi]
xor eax, eax
push eax
push eax
push dword [ebp - 0x1c]
mov ecx, edi
mov dword [esi + 0x44], eax
call dword [edx + 8]
mov eax, edi
call fcn.0040cd11
push str.installreport
mov dword [esi + 0x54], eax
call fcn.0040cd35
push str.manifestinfo
mov dword [esi + 0x58], eax
call fcn.0040cd35
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x58]
push str.softwarelist
call fcn.0040cd35
mov dword [esi + 0x60], eax
mov eax, dword [esi]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax]
push dword [eax + 0xa0]
lea eax, [ebp - 0x28]
push 0x4550c8
push eax
call fcn.0042fb92
add esp, 0xc
push str.ucikind
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 0xb
call fcn.00401421
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 0xc
push dword [esi + 0x5c]
call fcn.0040d622
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
call fcn.0040114e
push 0x4553d4
lea eax, [ebp - 0x18]
push eax
call fcn.00401421
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 0xd
call fcn.0040d462
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
call fcn.0040114e
push str.ICName
lea eax, [ebp - 0x18]
push eax
call fcn.00401421
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 0xe
mov edi, esi
call fcn.0040d462
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
call fcn.0040114e
push str.ICVersion
lea eax, [ebp + 8]
push eax
call fcn.00401421
lea eax, [ebp + 8]
push eax
mov byte [ebp - 4], 0xf
call fcn.0040d462
mov byte [ebp - 4], 0xb
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
call fcn.0040114e
push str.ICBrandId
lea eax, [ebp + 8]
push eax
call fcn.00401421
lea eax, [ebp + 8]
push eax
mov byte [ebp - 4], 0x10
call fcn.0040d462
mov byte [ebp - 4], 0xb
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
call fcn.0040114e
push 0x454b44
lea eax, [ebp + 8]
push eax
call fcn.00401421
lea eax, [ebp + 8]
push eax
mov byte [ebp - 4], 0x11
call fcn.0040d462
mov byte [ebp - 4], 0xb
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
call fcn.0040114e
lea eax, [ebp - 0x4c]
push eax
call fcn.0043059d
push str.Arguments
lea eax, [ebp + 8]
push eax
mov byte [ebp - 4], 0x12
call fcn.00401421
mov byte [ebp - 4], 0x13
mov eax, dword [edi]
mov ecx, dword [eax + 4]
lea eax, [ebp - 0x4c]
push eax
push 1
lea eax, [ebp + 8]
push eax
mov eax, dword [ecx]
call dword [eax]
mov ecx, eax
call fcn.0041e326
jmp 0x40d17c
lea eax, [ebp + 8]
push eax
lea esi, [ebp - 0x4c]
call fcn.00430a55
lea eax, [ebp + 8]
push eax
mov esi, edi
mov byte [ebp - 4], 0x14
call fcn.0040d462
mov byte [ebp - 4], 0x12
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
call fcn.0040114e
lea esi, [ebp - 0x4c]
call fcn.004309d4
test al, al
jne 0x40d161
mov eax, dword [edi]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax]
mov ebx, eax
call fcn.0041e7b6
test eax, 0x1000
je 0x40d200
push 0x45420c
lea eax, [ebp - 0x18]
push eax
call fcn.00401421
push str.pixeltest
lea eax, [ebp + 8]
push eax
mov byte [ebp - 4], 0x15
call fcn.00401421
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp + 8]
push eax
mov byte [ebp - 4], 0x16
push dword [edi + 0x5c]
call fcn.0040d622
mov byte [ebp - 4], 0x15
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
call fcn.0040114e
mov ebx, dword [edi]
mov eax, dword [ebx + 0x28]
and dword [ebx + 0x34], 0
or dword [ebx + 0x38], 0xffffffff
mov dword [ebx + 0x30], eax
mov eax, dword [ebx + 0x30]
test eax, eax
setns dl
test dl, dl
je 0x40d405
mov esi, dword [ebx + 0x34]
test esi, esi
je 0x40d23f
mov ecx, dword [ebx + 0x38]
test ecx, ecx
je 0x40d23f
cmp ecx, 0xffffffff
jne 0x40d239
dec esi
mov dword [ebx + 0x38], esi
jmp 0x40d26c
dec ecx
mov dword [ebx + 0x38], ecx
jmp 0x40d26c
or dword [ebx + 0x38], 0xffffffff
dec eax
mov dword [ebx + 0x30], eax
js 0x40d26a
test eax, eax
js 0x40d3f4
cmp eax, dword [ebx + 0x28]
jge 0x40d3f4
mov ecx, dword [ebx + 0x24]
lea eax, [ecx + eax*4]
mov eax, dword [eax]
mov eax, dword [eax + 0x60]
mov dword [ebx + 0x34], eax
jmp 0x40d26c
xor dl, dl
test dl, dl
je 0x40d405
mov esi, dword [ebx + 0x28]
xor eax, eax
mov dword [ebp - 0x14], eax
test esi, esi
jle 0x40d2ac
mov ecx, dword [ebx + 0x30]
test ecx, ecx
js 0x40d2ac
cmp ecx, esi
jge 0x40d2ac
mov edx, dword [ebx + 0x38]
mov eax, ecx
mov dword [ebp - 0x14], edx
cmp eax, esi
jge 0x40d3f4
mov ecx, dword [ebx + 0x24]
lea ecx, [ecx + eax*4]
mov ecx, dword [ecx]
cmp edx, dword [ecx + 0x60]
jle 0x40d2ac
or dword [ebp - 0x14], 0xffffffff
cmp eax, esi
jge 0x40d3f4
mov ecx, dword [ebx + 0x24]
lea eax, [ecx + eax*4]
mov esi, dword [eax]
push str.InstallEndDateTimeText
lea eax, [ebp - 0x20]
push eax
mov dword [ebp + 8], esi
call fcn.00401421
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x17
call fcn.0040fef1
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
call fcn.0040114e
mov eax, dword [ebp - 0x10]
cmp dword [eax - 0xc], 0
je 0x40d3e0
push str.InstallStartDateTimeText
lea eax, [ebp - 0x24]
push eax
call fcn.00401421
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 0x1a
call fcn.0040fef1
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
call fcn.0040114e
mov eax, dword [section..data]
mov ecx, section..data
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0x14]
test eax, eax
js 0x40d38f
mov ecx, esi
cmp eax, dword [ecx + 0x60]
jge 0x40d3f4
mov ecx, dword [ecx + 0x5c]
lea eax, [ecx + eax*4]
mov eax, dword [eax]
mov esi, dword [eax + 4]
mov ecx, esi
and cl, 0x40
cmp cl, 0x40
sete cl
test cl, cl
jne 0x40d37d
mov ecx, esi
and ecx, 0x80
cmp cl, 0x80
sete cl
test cl, cl
je 0x40d3c2
lea ecx, [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x18]
push ecx
push esi
push eax
push edi
call fcn.0040d4ab
jmp 0x40d3c2
mov eax, dword [ebp + 8]
lea esi, [ebp - 0x3c]
call fcn.004101a7
lea ecx, [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x18]
push ecx
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp + 8]
push dword [ecx + 0x10]
push eax
push edi
call fcn.0040d4ab
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0x3c]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x38]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x10]
add eax, 0xfffffff0
call fcn.0040114e
jmp 0x40d210
push 0
push 0
push 1
push 0xc000008c
call dword [sym.imp.KERNEL32.DLL_RaiseException]
lea esi, [ebp - 0x4c]
mov byte [ebp - 4], 0xb
call fcn.004307e8
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x28]
add eax, 0xfffffff0
call fcn.0040114e
lea eax, [ebp - 0x1c]
push eax
mov byte [ebp - 4], 0
call fcn.00406ac4
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x2c]
add eax, 0xfffffff0
call fcn.0040114e
call fcn.00448384
ret 4