Function at 0x418172
Capabilities:
Check for time delay via gettickcount
Connect pipe
Create pipe
Delete registry value
Read file on windows
Read pipe
Write file on windows
Write pipe

Disassembly:
push ebp
lea ebp, [esp - 0x194]
sub esp, 0x3cc
mov eax, dword [0x48e610]
xor eax, ebp
mov dword [ebp + 0x190], eax
push ebx
push esi
push edi
mov ebx, ecx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor edi, edi
inc edi
lea ecx, [ebx + 0x2c4]
xor esi, esi
push edi
mov dword [ebx + 0x350], eax
mov dword [ebx + 0x2f8], edi
mov dword [ebx + 0x35c], esi
mov dword [ebp + 8], ecx
call fcn.0040a9d8
lea ecx, [ebp - 0x20]
mov dword [ebp + 0x18], edi
mov dword [ebp + 0x28], esi
mov dword [ebp - 4], esi
call fcn.00440850
mov eax, dword [ebx + 0x3e8]
cmp eax, dword [ebx + 0x3ec]
je 0x41823f
lea esi, [eax + 0x84]
cmp dword [esi - 0x78], 0
lea eax, [esi - 0x7c]
mov dword [ebp + 0x64], eax
je 0x41820e
mov ecx, esi
call fcn.0043f510
test eax, eax
je 0x41820e
lea eax, [esi - 0x30]
push str.main
push eax
call fcn.00401046
pop ecx
pop ecx
test al, al
jne 0x418224
add esi, 0xd4
lea eax, [esi - 0x84]
cmp eax, dword [ebx + 0x3ec]
jne 0x4181e3
jmp 0x41823f
cmp dword [ebx + 0x7c], 0
je 0x418231
mov ecx, ebx
call fcn.0040e7af
push dword [ebp + 0x64]
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], edi
call fcn.00440900
mov esi, dword [ebx + 0x3e8]
cmp esi, dword [ebx + 0x3ec]
je 0x4182b6
add esi, 0x84
cmp dword [esi - 0x78], 0
je 0x4182a2
mov ecx, esi
call fcn.0043f510
test eax, eax
je 0x4182a2
lea eax, [esi - 0x30]
push str.main
push eax
call fcn.00406131
pop ecx
pop ecx
test al, al
je 0x4182a2
inc dword [ebp + 0x28]
lea eax, [esi - 0x20]
push str.post
push eax
call fcn.00401046
pop ecx
pop ecx
test al, al
lea eax, [esi - 0x7c]
lea ecx, [ebp - 0x20]
push eax
je 0x41829d
call fcn.00440950
jmp 0x4182a2
call fcn.00440900
add esi, 0xd4
lea eax, [esi - 0x84]
cmp eax, dword [ebx + 0x3ec]
jne 0x418253
cmp dword [ebp - 0x10], 0
jle 0x419a54
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x4183f1
lea eax, [ebx + 0xb0]
cmp byte [eax + 7], 0xff
lea edx, [ebx + 8]
jne 0x4182dc
mov eax, dword [eax]
push eax
push edx
call ecx
pop ecx
pop ecx
test eax, eax
jne 0x4183f1
mov eax, dword [ebx + 0x330]
cmp eax, edi
jb 0x4183d4
push eax
push 0x2c
lea eax, [ebp]
push eax
lea ecx, [ebx + 0x1c0]
call fcn.00440130
lea eax, [ebp]
push eax
lea ecx, [ebx + 0x448]
call fcn.004149de
push edi
add eax, 4
push eax
lea eax, [ebp + 0x2c]
push str.actioncancelvalue
push eax
call fcn.004400e0
add esp, 0xc
push eax
mov ecx, ebx
call fcn.00410896
lea ecx, [ebp + 0x2c]
call fcn.0043f790
push str.actionpageviewvaluecancel
lea ecx, [ebp + 0x20]
call fcn.0043f7b0
push 0xa
lea eax, [ebp + 0x20]
push eax
mov ecx, ebx
call fcn.00410896
lea ecx, [ebp + 0x20]
call fcn.0043f790
push str.overinstall
lea ecx, [ebp + 0x20]
call fcn.0043f7b0
lea eax, [ebp + 0x20]
push eax
mov ecx, ebx
call fcn.004126fb
lea ecx, [ebp + 0x20]
call fcn.0043f790
cmp dword [ebx + 0x58], 0
mov esi, dword [sym.imp.SHLWAPI.dll_SHDeleteValueA]
je 0x41839e
push 0x481730
push str.SOFTWAREGoogleNo_Chrome_Offer_Until
push 0x80000002
call esi
cmp dword [ebx + 0x5c], 0
je 0x4183b5
push 0x481730
push str.SOFTWAREGoogleNo_Toolbar_Offer_Until
push 0x80000002
call esi
cmp dword [ebx + 0x60], 0
je 0x4183cc
push 0x481730
push 0x4816b8
push 0x80000002
call esi
lea ecx, [ebp]
call fcn.0043f790
mov dword [ebx + 0x34], edi
mov ecx, dword [ebp + 8]
push 0
call fcn.0040a9d8
mov ecx, dword [ebp + 8]
call fcn.0040a9f5
or esi, 0xffffffff
jmp 0x419a6e
and dword [ebp + 0x1c], 0
mov eax, dword [ebp + 0x1c]
cmp eax, dword [ebp - 0x10]
jge 0x419a47
mov eax, dword [ebx + 0x35c]
push dword [ebp + 0x1c]
and dword [ebx + 0x368], 0
lea ecx, [ebp - 0x20]
mov dword [ebx + 0x358], eax
call fcn.00440b30
push eax
lea ecx, [ebp - 0x20]
call fcn.004409b0
mov edi, dword [eax]
mov esi, str.main
lea eax, [edi + 0x4c]
push esi
push eax
mov dword [ebp + 0x64], edi
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x418452
mov eax, dword [ebp - 0x10]
dec eax
neg eax
sbb eax, eax
and eax, 0xffffffec
add eax, 0x64
jmp 0x418472
cmp dword [ebp - 4], 0
fild dword [ebp + 0x28]
fld1
fdivrp st(1)
je 0x418467
fmul qword [0x4816a8]
jmp 0x41846d
fmul qword [0x47f710]
call fcn.00462110
mov dword [ebx + 0x368], eax
cmp dword [edi + 4], 0
je 0x41995e
lea eax, [edi + 0x4c]
push esi
push eax
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x418535
push str.clean
lea ecx, [ebp - 0x28]
call fcn.0043f7b0
mov eax, dword [ebx + 0x1c]
cmp eax, 1
jne 0x4184b2
push str.over
jmp 0x4184bc
cmp eax, 0xffffffff
jne 0x4184c4
push str.under
lea ecx, [ebp - 0x28]
call fcn.0043f8e0
push 0
lea eax, [ebp - 0x28]
push eax
push str.installtype
lea esi, [edi + 0x3c]
push esi
lea eax, [ebp - 0x1c4]
push str.actioninstallerstartedvalue
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0xd8]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x1a8]
push eax
call fcn.00440040
add esp, 0xc
push eax
mov ecx, ebx
call fcn.00410896
lea ecx, [ebp - 0x1a8]
call fcn.0043f790
lea ecx, [ebp - 0xd8]
call fcn.0043f790
lea ecx, [ebp - 0x1c4]
call fcn.0043f790
lea ecx, [ebp - 0x28]
jmp 0x41855d
push 0
lea esi, [edi + 0x3c]
push esi
lea eax, [ebp - 0x1d4]
push str.actioninstallerstartedvalue
push eax
call fcn.004400e0
add esp, 0xc
push eax
mov ecx, ebx
call fcn.00410896
lea ecx, [ebp - 0x1d4]
call fcn.0043f790
lea ecx, [ebp + 0x10]
call fcn.0043f500
lea eax, [edi + 0x54]
push 0x480e2c
push eax
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x41892c
push esi
lea ecx, [ebx + 0x3b8]
call fcn.00416ebf
mov dword [ebp + 0x7c], eax
lea eax, [ebx + 0xa8]
push eax
lea ecx, [ebp - 0xac]
call fcn.0043f6f0
push str.rnsetup.cfg
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0x1e4]
push eax
call fcn.00440090
add esp, 0xc
cmp byte [eax + 7], 0xff
jne 0x4185c6
mov eax, dword [eax]
push 0x47ece4
push eax
call fcn.0045fd50
pop ecx
pop ecx
mov esi, eax
lea ecx, [ebp - 0x1e4]
mov dword [ebp + 0x60], esi
call fcn.0043f790
lea ecx, [ebp - 0xac]
call fcn.0043f790
test esi, esi
je 0x418777
push str.StubInstall1_r_n
push esi
call fcn.004607eb
push str.AlwaysUseDefInstallPath1_r_n
push esi
call fcn.004607eb
add esp, 0x10
lea ecx, [ebx + 0x208]
call fcn.0043f510
test eax, eax
je 0x418670
push 0
lea ecx, [ebx + 0x208]
call fcn.00440160
push eax
push str.DistCode_s_r_n
push esi
call fcn.004607eb
add esp, 0xc
push 0xffffffffffffffff
lea ecx, [ebx + 0x208]
call fcn.004401f0
push 0
lea ecx, [ebx + 0x208]
call fcn.00440160
push eax
push str.OrigCode_s_r_n
push esi
call fcn.004607eb
add esp, 0xc
push 0xffffffffffffffff
lea ecx, [ebx + 0x208]
call fcn.004401f0
mov eax, dword [ebp + 0x7c]
mov ecx, dword [eax]
mov dl, byte [eax + 0x14]
mov dword [ebp - 0xd0], ecx
mov dword [ebp - 0xcc], eax
mov byte [ebp - 0xc8], dl
lea esi, [ebp - 0xd0]
lea edi, [ebp - 0x7c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cmp ecx, dword [eax + 4]
je 0x4186e8
lea esi, [ecx + 8]
push 0
mov ecx, esi
call fcn.00440160
mov ecx, dword [ebp - 0x7c]
push eax
push 0
call fcn.00440160
push eax
push str._s_s_r_n
push dword [ebp + 0x60]
call fcn.004607eb
add esp, 0x10
push 0xffffffffffffffff
mov ecx, esi
call fcn.004401f0
mov ecx, dword [ebp - 0x7c]
push 0xffffffffffffffff
call fcn.004401f0
add dword [ebp - 0x7c], 0x10
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp - 0x7c]
add esi, 0x10
cmp ecx, dword [eax + 4]
jne 0x41869e
push dword [ebp + 0x60]
call fcn.0045fae8
pop ecx
lea eax, [ebx + 0xa8]
push eax
lea ecx, [ebp - 0xb4]
call fcn.0043f6f0
push str.rnsetup.cfg
lea eax, [ebp - 0xb4]
push eax
push str.__cfg
lea ecx, [ebp - 0x180]
call fcn.0043f7b0
push eax
lea eax, [ebp - 0x204]
push eax
call fcn.00440040
add esp, 0xc
push eax
lea eax, [ebp - 0x1f4]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea ecx, [ebp + 0x10]
call fcn.0043f840
lea ecx, [ebp - 0x1f4]
call fcn.0043f790
lea ecx, [ebp - 0x204]
call fcn.0043f790
lea ecx, [ebp - 0x180]
call fcn.0043f790
lea ecx, [ebp - 0xb4]
call fcn.0043f790
mov edi, dword [ebp + 0x64]
push str..manifest
lea eax, [edi + 0x7c]
push eax
lea eax, [ebp - 0xf0]
push eax
call fcn.00440090
add esp, 0xc
cmp byte [eax + 7], 0xff
jne 0x418797
mov eax, dword [eax]
push 0x47ece4
push eax
call fcn.0045fd50
pop ecx
pop ecx
lea ecx, [ebp - 0xf0]
mov esi, eax
call fcn.0043f790
test esi, esi
je 0x41892c
push str.__xml_version_1.0__encoding_UTF_8__standalone_yes____r_n
push esi
call fcn.004607eb
push str._assembly_xmlns_urn:schemas_microsoft_com:asm.v1__manifestVersion_1.0___r_n
push esi
call fcn.004607eb
push str._t_assemblyIdentity_r_n
push esi
call fcn.004607eb
push str._t____version_1.0.0.0__r_n
push esi
call fcn.004607eb
push str._t____processorArchitecture_X86__r_n
push esi
call fcn.004607eb
push str._t____name_rnmininst.exe__r_n
push esi
call fcn.004607eb
push str._t____type_win32__r_n
push esi
call fcn.004607eb
push str._t___r_n
push esi
call fcn.004607eb
add esp, 0x40
push str._t_description_RealPlayer_Installer__description__r_n
push esi
call fcn.004607eb
push str._t_dependency__r_n
push esi
call fcn.004607eb
push str._t_____dependentAssembly__r_n
push esi
call fcn.004607eb
push str._t_________assemblyIdentity_r_n
push esi
call fcn.004607eb
push str._t____________type_win32__r_n
push esi
call fcn.004607eb
push str._t____________name_Microsoft.Windows.Common_Controls__r_n
push esi
call fcn.004607eb
push str._t____________version_6.0.0.0__r_n
push esi
call fcn.004607eb
push str._t____________processorArchitecture_X86__r_n
push esi
call fcn.004607eb
add esp, 0x40
push str._t____________publicKeyToken_6595b64144ccf1df__r_n
push esi
call fcn.004607eb
push str._t____________language___r_n
push esi
call fcn.004607eb
push str._t___________r_n
push esi
call fcn.004607eb
push str._t______dependentAssembly__r_n
push esi
call fcn.004607eb
push str._t__dependency__r_n
push esi
call fcn.004607eb
push str._t_trustInfo_xmlns_urn:schemas_microsoft_com:asm.v3___r_n
push esi
call fcn.004607eb
push str._t_t_security__r_n
push esi
call fcn.004607eb
push str._t_t_t_requestedPrivileges__r_n
push esi
call fcn.004607eb
add esp, 0x40
push str._t_t_t_t_requestedExecutionLevel_r_n
push esi
call fcn.004607eb
push str._t_t_t_t_tlevel_requireAdministrator__r_n
push esi
call fcn.004607eb
push str._t_t_t_t_tuiAccess_false__r_n
push esi
call fcn.004607eb
push str._t_t_t_t___r_n
push esi
call fcn.004607eb
push str._t_t_t__requestedPrivileges__r_n
push esi
call fcn.004607eb
push str._t_t__security__r_n
push esi
call fcn.004607eb
push str._t__trustInfo__r_n
push esi
call fcn.004607eb
push str.__assembly__r_n
push esi
call fcn.004607eb
add esp, 0x40
push esi
call fcn.0045fae8
pop ecx
lea eax, [edi + 0x3c]
push 0x481228
push eax
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x418a80
lea ecx, [ebp + 0x54]
call fcn.0043f500
lea eax, [ebp + 0x54]
push eax
xor eax, eax
push eax
push eax
push 0x1c
push eax
call fcn.00401bda
add esp, 0x14
lea ecx, [ebp + 0x54]
test eax, eax
je 0x419970
push str.The_Weather_ChannelDesktop_
call fcn.0043fc10
cmp byte [ebp + 0x5b], 0xff
lea eax, [ebp + 0x54]
jne 0x418980
mov eax, dword [ebp + 0x54]
push eax
call fcn.00401e6c
lea ecx, [ebp + 0x54]
mov dword [esp], str.apps.ini
call fcn.0043fc10
lea eax, [ebp - 0x68]
push eax
call fcn.0045ed95
lea eax, [ebp - 0x68]
push eax
call fcn.0045ed6e
push 0xff
mov esi, eax
lea eax, [ebp + 0x91]
push 0
push eax
mov byte [ebp + 0x90], 0
call fcn.0045f090
push esi
call fcn.004642da
push eax
lea eax, [ebp + 0x90]
push eax
call fcn.0045f6c0
lea eax, [ebp + 0x90]
push eax
xor esi, esi
call fcn.0045f9f0
add esp, 0x24
test eax, eax
je 0x418a14
lea eax, [ebp + esi + 0x90]
cmp byte [eax], 0xd
jne 0x4189fa
mov byte [eax], 0
cmp byte [eax], 0xa
jne 0x418a02
mov byte [eax], 0
lea eax, [ebp + 0x90]
push eax
inc esi
call fcn.0045f9f0
pop ecx
cmp esi, eax
jb 0x4189eb
cmp byte [ebp + 0x5b], 0xff
lea eax, [ebp + 0x54]
jne 0x418a20
mov eax, dword [ebp + 0x54]
mov esi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push eax
lea eax, [ebp + 0x90]
push eax
push 0x4811f8
push str.SoftwareThe_Weather_ChannelAppsAppData
call esi
cmp byte [ebp + 0x5b], 0xff
lea eax, [ebp + 0x54]
jne 0x418a46
mov eax, dword [ebp + 0x54]
push eax
lea eax, [ebp + 0x90]
push eax
push 0x4811c8
push str.SoftwareThe_Weather_ChannelAppsAppData
call esi
cmp byte [ebp + 0x5b], 0xff
lea eax, [ebp + 0x54]
jne 0x418a66
mov eax, dword [ebp + 0x54]
push eax
push 0x4811c4
push str.initialLaunch
push str.SoftwareThe_Weather_ChannelAppsAppDataSetup
call esi
lea ecx, [ebp + 0x54]
call fcn.0043f790
lea ecx, [edi + 0x7c]
call fcn.0043f510
test eax, eax
je 0x419944
mov dword [ebx + 0x374], 1
mov dword [ebx + 0x378], 2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebx + 0x36c], eax
lea eax, [ebp + 0x10]
push eax
mov esi, 0x47ea68
push esi
lea eax, [edi + 0x8c]
push eax
push esi
lea eax, [edi + 0x84]
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x100]
push eax
call fcn.00440040
add esp, 0xc
push eax
lea eax, [ebp - 0x1cc]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp + 0x4c]
push eax
call fcn.00440040
add esp, 0xc
lea ecx, [ebp - 0x1cc]
call fcn.0043f790
lea ecx, [ebp - 0x100]
call fcn.0043f790
lea ecx, [ebp - 0x190]
call fcn.0043f790
lea eax, [edi + 0x3c]
cmp byte [eax + 7], 0xff
jne 0x418b31
mov eax, dword [eax]
push str.chrhlpr
push eax
call fcn.0045ea50
pop ecx
pop ecx
test eax, eax
je 0x418bc1
and dword [ebp + 0x7c], 0
mov eax, dword [ebp + 0x7c]
cmp eax, dword [ebp - 0x10]
jge 0x418bc1
push eax
lea ecx, [ebp - 0x20]
call fcn.00440b30
push eax
lea ecx, [ebp - 0x20]
call fcn.004409b0
mov esi, dword [eax]
lea ecx, [edi + 0x3c]
lea eax, [esi + 0x3c]
push ecx
push eax
mov dword [ebp + 0x64], eax
call fcn.0040ce04
pop ecx
pop ecx
test al, al
je 0x418bb7
push str.main
add esi, 0x4c
push esi
call fcn.00406131
pop ecx
pop ecx
test al, al
je 0x418bb7
push dword [ebp + 0x64]
lea eax, [ebp - 0x110]
push str.__pkg
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea ecx, [ebp + 0x4c]
call fcn.0043fcf0
lea ecx, [ebp - 0x110]
call fcn.0043f790
inc dword [ebp + 0x7c]
mov esi, 0x47ea68
jmp 0x418b46
xor eax, eax
push eax
mov dword [ebp + 0x7c], eax
mov dword [ebp + 0x60], eax
mov dword [ebp + 0x34], eax
mov dword [ebp + 0x5c], eax
mov dword [ebp + 0x48], eax
lea eax, [ebp + 0x4c]
push eax
lea eax, [ebp - 0x20c]
push eax
call fcn.004030b0
add esp, 0xc
push eax
lea ecx, [ebp + 0x4c]
call fcn.0043f840
lea ecx, [ebp - 0x20c]
call fcn.0043f790
lea eax, [ebp + 0x4c]
push eax
push esi
lea esi, [edi + 0x7c]
lea eax, [ebp - 0x120]
push esi
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp + 0x40]
push eax
call fcn.00440040
add esp, 0xc
lea ecx, [ebp - 0x120]
call fcn.0043f790
cmp dword [ebx + 0x474], 0
je 0x418d9f
xor esi, esi
push esi
push esi
mov eax, 0x104
push eax
push eax
push 0xff
push 6
push 3
push str..pipe_realnetworks.installer.pipe
call dword [sym.imp.KERNEL32.dll_CreateNamedPipeA]
mov dword [ebp + 0x5c], eax
cmp eax, 0xffffffff
je 0x41999f
push esi
push eax
call dword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
test eax, eax
jne 0x418c7f
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x217
jne 0x4199dd
lea eax, [edi + 0xbc]
push 0x47e82c
push eax
mov dword [ebp - 0x64], esi
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x418cc5
lea eax, [ebp + 0x40]
push eax
lea eax, [ebp - 0x1a0]
push 0x47e800
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea ecx, [ebp + 0x40]
call fcn.0043f840
lea ecx, [ebp - 0x1a0]
call fcn.0043f790
cmp byte [ebp + 0x47], 0xff
lea eax, [ebp + 0x40]
jne 0x418cd1
mov eax, dword [ebp + 0x40]
mov dword [ebp + 0x78], eax
push esi
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp + 0x40]
call fcn.0043f510
inc eax
push eax
push dword [ebp + 0x78]
push dword [ebp + 0x5c]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [ebp + 0x78], 1
lea eax, [edi + 0x4c]
push str.main
push eax
call fcn.00406131
pop ecx
pop ecx
test al, al
je 0x418d30
push ecx
push ecx
lea eax, [edi + 0x3c]
mov ecx, esp
push eax
call fcn.0043f6f0
lea eax, [ebp - 0xe0]
push eax
mov ecx, ebx
call fcn.004101bb
lea ecx, [ebp - 0xe0]
call fcn.0043f790
lea eax, [edi + 0xbc]
push 0x47e82c
push eax
call fcn.00406131
pop ecx
pop ecx
test al, al
je 0x41932d
xor esi, esi
cmp dword [ebp + 0x78], esi
je 0x41931e
push 0x481170
push 3
lea eax, [ebp - 0xe8]
push eax
lea ecx, [edi + 0x7c]
call fcn.0043ff20
push eax
call fcn.00401046
pop ecx
pop ecx
lea ecx, [ebp - 0xe8]
mov byte [ebp + 0x83], al
call fcn.0043f790
cmp byte [ebp + 0x83], 0
je 0x419213
cmp dword [ebx + 0x360], esi
je 0x418d56
jmp 0x41931e
push 0x481170
push 3
lea eax, [ebp - 0x130]
push eax
mov ecx, esi
call fcn.0043ff20
push eax
call fcn.00401046
pop ecx
pop ecx
lea ecx, [ebp - 0x130]
mov byte [ebp + 0x83], al
call fcn.0043f790
xor esi, esi
cmp byte [ebp + 0x83], 0
je 0x4191e3
push esi
push 2
call sub.msi.dll_MsiSetPropertyW
push ebx
push 0x20034a3
push 0x40fd92
mov dword [ebx + 0x360], esi
call sub.msi.dll_MsiSetInstallLevel
lea ecx, [ebp + 0x68]
mov dword [0x48fd0c], eax
call fcn.0043f500
mov dword [ebp + 0x7c], esi
push 0x48116c
lea esi, [edi + 0x3c]
push esi
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x4190a8
lea eax, [ebx + 0x208]
push eax
lea ecx, [ebp - 0x30]
call fcn.0043f6f0
lea eax, [ebx + 0x140]
push eax
lea ecx, [ebp - 0x48]
call fcn.0043f6f0
lea ecx, [ebp - 0x30]
call fcn.00401005
test al, al
je 0x418e59
push 0x481168
lea ecx, [ebp - 0x30]
call fcn.0043f8e0
lea ecx, [ebp - 0x48]
call fcn.00401005
test al, al
je 0x418e72
push 0x481168
lea ecx, [ebp - 0x48]
call fcn.0043f8e0
lea eax, [ebx + 0x138]
push eax
push str._ORIGINCODE
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x1b0]
push str._DISTCODE
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0x140]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x1dc]
push eax
call fcn.00440040
add esp, 0xc
push eax
lea ecx, [ebp + 0x4c]
call fcn.0043f840
lea ecx, [ebp - 0x1dc]
call fcn.0043f790
lea ecx, [ebp - 0x140]
call fcn.0043f790
lea ecx, [ebp - 0x1b0]
call fcn.0043f790
push str.DefInstallPath
lea ecx, [ebp - 0xc4]
call fcn.0043f7b0
push 0x48116c
lea ecx, [ebp - 0xa4]
call fcn.0043f7b0
lea eax, [ebp - 0xa4]
push eax
lea ecx, [ebx + 0x3b8]
call fcn.00416ebf
lea ecx, [ebp - 0xc4]
push ecx
mov ecx, eax
call fcn.00413626
test eax, eax
lea ecx, [ebp - 0xa4]
setne byte [ebp + 0x83]
call fcn.0043f790
lea ecx, [ebp - 0xc4]
call fcn.0043f790
cmp byte [ebp + 0x83], 0
je 0x419008
push str.DefInstallPath
lea ecx, [ebp - 0x9c]
call fcn.0043f7b0
push 0x48116c
lea ecx, [ebp - 0x8c]
call fcn.0043f7b0
lea eax, [ebp - 0x8c]
push eax
lea ecx, [ebx + 0x3b8]
call fcn.00416ebf
lea ecx, [ebp - 0x9c]
push ecx
mov ecx, eax
call fcn.00414984
push eax
lea ecx, [ebp - 0x84]
call fcn.0043f6f0
lea ecx, [ebp - 0x8c]
call fcn.0043f790
lea ecx, [ebp - 0x9c]
call fcn.0043f790
push 0x47e920
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x1fc]
push str._INSTALLDIR_
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0x150]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea ecx, [ebp + 0x4c]
call fcn.0043fcf0
lea ecx, [ebp - 0x150]
call fcn.0043f790
lea ecx, [ebp - 0x1fc]
call fcn.0043f790
lea ecx, [ebp - 0x84]
call fcn.0043f790
push str._system_appdata_RealNetworks
lea ecx, [ebp - 0xbc]
call fcn.0043f7b0
push 0
lea eax, [ebp - 0xbc]
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.004030b0
add esp, 0xc
push eax
lea ecx, [ebp + 0x68]
call fcn.0043f840
lea ecx, [ebp - 0x160]
call fcn.0043f790
cmp byte [ebp + 0x6f], 0xff
lea eax, [ebp + 0x68]
jne 0x419050
mov eax, dword [ebp + 0x68]
push eax
call fcn.0047d11a
lea ecx, [ebp + 0x68]
mov dword [esp], str.RealDownloader
call fcn.0043fc10
cmp byte [ebp + 0x6f], 0xff
lea eax, [ebp + 0x68]
jne 0x419071
mov eax, dword [ebp + 0x68]
push eax
call fcn.0047d11a
lea ecx, [ebp + 0x68]
mov dword [esp], str.RealDownloader_log.txt
call fcn.0043fc10
lea ecx, [ebp - 0xbc]
mov dword [ebp + 0x7c], 0xe97
call fcn.0043f790
lea ecx, [ebp - 0x48]
call fcn.0043f790
lea ecx, [ebp - 0x30]
jmp 0x419134
push str._system_appdata_RealNetworks
lea ecx, [ebp - 0x94]
call fcn.0043f7b0
push 0
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0x1bc]
push eax
call fcn.004030b0
add esp, 0xc
push eax
lea ecx, [ebp + 0x68]
call fcn.0043f840
lea ecx, [ebp - 0x1bc]
call fcn.0043f790
cmp byte [ebp + 0x6f], 0xff
lea eax, [ebp + 0x68]
jne 0x4190f0
mov eax, dword [ebp + 0x68]
push eax
call fcn.0047d11a
pop ecx
lea ecx, [ebp - 0x58]
call fcn.0043f500
push 1
mov ecx, esi
call fcn.00440160
push eax
lea eax, [ebp - 0x58]
push str.DLP__s_log.txt
push eax
call fcn.00440350
add esp, 0xc
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp + 0x68]
call fcn.0043fcf0
lea ecx, [ebp - 0x58]
call fcn.0043f790
lea ecx, [ebp - 0x94]
call fcn.0043f790
cmp byte [ebp + 0x6f], 0xff
lea eax, [ebp + 0x68]
jne 0x419145
mov eax, dword [ebp + 0x68]
push 2
push eax
push dword [ebp + 0x7c]
call sub.msi.dll_MsiGetComponentPathA
lea eax, [ebp + 0x4c]
push eax
lea esi, [edi + 0x7c]
push esi
lea eax, [ebp - 0x1ec]
push str.msiexec__i
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0x170]
push eax
call fcn.00440040
add esp, 0xc
push eax
lea ecx, [ebp + 0x40]
call fcn.0043f840
lea ecx, [ebp - 0x170]
call fcn.0043f790
lea ecx, [ebp - 0x1ec]
call fcn.0043f790
cmp byte [ebp + 0x53], 0xff
lea eax, [ebp + 0x4c]
jne 0x4191a7
mov eax, dword [ebp + 0x4c]
cmp byte [esi + 7], 0xff
jne 0x4191af
mov esi, dword [esi]
push eax
push esi
call sub.msi.dll_MsiOpenDatabaseA
test eax, eax
jne 0x4191c7
inc eax
and dword [ebp + 0x7c], 0
mov dword [ebp + 0x78], eax
mov dword [ebp + 0x60], eax
jmp 0x4191d6
xor ecx, ecx
inc ecx
mov dword [ebp + 0x78], ecx
mov dword [ebp + 0x7c], eax
mov dword [ebp + 0x60], ecx
mov dword [ebp + 0x34], eax
lea ecx, [ebp + 0x68]
call fcn.0043f790
jmp 0x418cf6
lea eax, [ebp + 0x48]
push eax
inc esi
lea eax, [ebp + 0x40]
push esi
push eax
call fcn.004018ef
add esp, 0xc
test eax, eax
je 0x419201
mov dword [ebp + 0x78], esi
jmp 0x418cf6
and dword [ebp + 0x78], 0
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp + 0x7c], eax
jmp 0x418d30
cmp dword [ebp + 0x48], esi
je 0x419252
push 0x3e8
push dword [ebp + 0x48]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x4192b6
lea eax, [ebp + 0x34]
push eax
push dword [ebp + 0x48]
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
push dword [ebp + 0x48]
mov dword [ebp + 0x60], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp + 0x48], esi
jmp 0x41931e
cmp dword [ebp + 0x5c], esi
je 0x41931e
push esi
push esi
push esi
push esi
lea eax, [ebp + 0x64]
push eax
push esi
push dword [ebp + 0x5c]
mov dword [ebp + 0x64], esi
call dword [sym.imp.KERNEL32.dll_GetNamedPipeHandleStateA]
cmp dword [ebp + 0x64], esi
je 0x4192d2
push esi
push esi
lea eax, [ebp + 0xc]
push eax
push 0xc
lea eax, [ebp + 0x84]
push eax
push dword [ebp + 0x5c]
mov dword [ebp + 0xc], esi
mov dword [ebp + 0x84], esi
mov dword [ebp + 0x88], esi
mov dword [ebp + 0x8c], esi
call dword [sym.imp.KERNEL32.dll_PeekNamedPipe]
test eax, eax
je 0x4192ab
cmp dword [ebp + 0xc], esi
ja 0x4192d7
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [edi + 0x54]
call fcn.00401005
xor ecx, ecx
test al, al
setne cl
push ecx
mov ecx, ebx
call fcn.0040d649
jmp 0x418d56
mov dword [ebp + 0x18], esi
jmp 0x41931e
push esi
lea eax, [ebp + 0xc]
push eax
push 0xc
lea eax, [ebp + 0x84]
push eax
push dword [ebp + 0x5c]
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp + 0x5c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp + 0x84]
mov dword [ebp + 0x7c], eax
xor eax, eax
cmp dword [ebp + 0x88], esi
mov dword [ebp + 0x78], 1
setne al
mov dword [ebp + 0x60], eax
mov eax, dword [ebp + 0x8c]
mov dword [ebp + 0x34], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebx + 0x36c]
mov dword [edi + 0x30], eax
lea eax, [edi + 0x3c]
push eax
lea eax, [ebp + 0x70]
push str.actioninstalledpkgvalue
push eax
call fcn.004400e0
add esp, 0xc
cmp dword [ebp + 0x78], 0
je 0x419890
lea esi, [edi + 0x34]
mov ecx, esi
call fcn.00401005
test al, al
je 0x41935f
lea ecx, [ebp + 0x70]
jmp 0x419379
lea eax, [ebp - 0x1b4]
push eax
push 0
push 1
push esi
mov ecx, ebx
call fcn.00430341
lea ecx, [ebp + 0x70]
test eax, eax
js 0x41938c
push str.successtrue
call fcn.0043fc10
mov dword [edi + 0x10], 1
jmp 0x419396
push str.successfalse
call fcn.0043fc10
push str.exec_valuelaunch_success
lea ecx, [ebp + 0x70]
call fcn.0043fc10
cmp dword [ebp + 0x60], 0
je 0x41948e
lea ecx, [ebp - 0x38]
call fcn.0043f500
push dword [ebp + 0x34]
lea eax, [ebp - 0x38]
push str.return_value_d
push eax
call fcn.00440350
add esp, 0xc
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp + 0x70]
call fcn.0043fcf0
cmp dword [ebp + 0x34], 0
je 0x419484
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x40]
call fcn.0043f6f0
push str.pkg_downloaded
lea ecx, [ebp - 0x40]
call fcn.0043fc10
lea esi, [ebx + 0x340]
mov ecx, esi
call fcn.00401005
test al, al
je 0x419410
mov esi, str.none
jmp 0x419418
cmp byte [esi + 7], 0xff
jne 0x419418
mov esi, dword [esi]
push esi
lea ecx, [ebp - 0x40]
call fcn.0043fc10
push 0x481170
push 3
lea eax, [ebp - 0xf8]
push eax
lea ecx, [edi + 0x7c]
xor esi, esi
call fcn.0043ff20
push eax
call fcn.00401046
pop ecx
pop ecx
lea ecx, [ebp - 0xf8]
mov byte [ebp + 0x83], al
call fcn.0043f790
cmp byte [ebp + 0x83], 0
je 0x41945c
inc esi
push esi
lea eax, [ebp - 0x40]
push eax
lea eax, [edi + 0xc4]
push eax
push ecx
push ecx
lea eax, [edi + 0x3c]
mov ecx, esp
push eax
call fcn.0043f6f0
mov ecx, ebx
call fcn.0041c67d
lea ecx, [ebp - 0x40]
call fcn.0043f790
lea ecx, [ebp - 0x38]
call fcn.0043f790
jmp 0x41949b
push str.return_valueunknown
lea ecx, [ebp + 0x70]
call fcn.0043fc10
lea ecx, [ebp + 0x20]
call fcn.0043f500
mov eax, dword [edi + 0x2c]
sub eax, dword [edi + 0x28]
mov esi, 0x3e8
xor edx, edx
mov ecx, esi
div ecx
push eax
lea eax, [ebp + 0x20]
push str.dltime_d
push eax
call fcn.00440350
add esp, 0xc
lea eax, [ebp + 0x20]
push eax
lea ecx, [ebp + 0x70]
call fcn.0043fcf0
lea ecx, [ebp]
call fcn.0043f500
mov eax, dword [edi + 0x30]
xor edx, edx
div esi
push eax
lea eax, [ebp]
push str.installtime_d
push eax
call fcn.00440350
add esp, 0xc
lea eax, [ebp]
push eax
lea ecx, [ebp + 0x70]
call fcn.0043fcf0
lea eax, [edi + 0xac]
push str.player
push eax
call fcn.00406131
pop ecx
pop ecx
test al, al
je 0x419546
lea esi, [edi + 0xb4]
push str.minimized
push esi
call fcn.00401046
pop ecx
pop ecx
test al, al
jne 0x41953e
push str.restore
push esi
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x419546
push edi
mov ecx, ebx
call fcn.00411d73
mov ecx, ebx
call fcn.0040f6fe
cmp dword [edi + 0x10], 0
je 0x41987b
lea ecx, [edi + 0x54]
call fcn.00401005
test al, al
jne 0x41987b
lea esi, [ebx + 0xf0]
mov ecx, esi
call fcn.00401005
test al, al
jne 0x41987b
mov ecx, ebx
call fcn.0040d945
test eax, eax
je 0x41987b
push esi
lea eax, [ebp - 0x70]
push eax
mov ecx, ebx
call fcn.0040d17c
lea eax, [ebx + 0xf8]
push eax
lea eax, [ebp + 0x38]
push eax
mov ecx, ebx
call fcn.0040d17c
lea eax, [ebx + 0x108]
push 0x48102c
push eax
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x4196ce
lea ecx, [ebp + 0x38]
call fcn.00401005
test al, al
je 0x4195f4
push 0x47e7fe
lea ecx, [ebp + 0x2c]
call fcn.0043f7b0
lea eax, [ebp + 0x2c]
push eax
lea eax, [ebp - 0x70]
push eax
mov ecx, ebx
call fcn.0040da5b
lea ecx, [ebp + 0x2c]
jmp 0x419866
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x108]
push str.Cookie:
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0x70]
push eax
mov ecx, ebx
call fcn.0040da5b
lea ecx, [ebp - 0x108]
call fcn.0043f790
push 1
push 0x47f284
push 0x47eaa0
lea ecx, [ebp + 0x38]
call fcn.00440610
push 1
push 0x47fcc8
push 0x48101c
lea ecx, [ebp + 0x38]
call fcn.00440610
push 0
lea eax, [ebp + 0x38]
push eax
push 0x481010
push esi
lea eax, [ebp - 0x148]
push eax
mov ecx, ebx
call fcn.0040d17c
push eax
lea eax, [ebp - 0x138]
push str.actionsentpingvalue
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0x128]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x118]
push eax
call fcn.00440040
add esp, 0xc
push eax
mov ecx, ebx
call fcn.00410896
lea ecx, [ebp - 0x118]
call fcn.0043f790
lea ecx, [ebp - 0x128]
call fcn.0043f790
lea ecx, [ebp - 0x138]
call fcn.0043f790
lea ecx, [ebp - 0x148]
jmp 0x419866
lea eax, [ebx + 0x108]
push str.post
push eax
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x41986b
lea eax, [ebx + 0x110]
push eax
lea eax, [ebp - 0xc]
push eax
mov ecx, ebx
call fcn.0040d17c
lea ecx, [ebp - 0x238]
call fcn.0040b5d3
lea ecx, [ebp + 0x38]
call fcn.00401005
test al, al
je 0x41971f
push str.none
lea ecx, [ebp + 0x38]
call fcn.0043f8e0
lea eax, [ebx + 0x120]
push eax
lea eax, [ebx + 0x118]
push eax
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp - 0x158]
push str.Cookie:
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0xc]
push eax
push esi
lea ecx, [ebp - 0x238]
call fcn.0040b87e
lea ecx, [ebp - 0x158]
call fcn.0043f790
lea ecx, [ebp - 0xc]
call fcn.00401005
test al, al
je 0x41977a
push str.none
lea ecx, [ebp - 0xc]
call fcn.0043f8e0
push 1
push 0x47f284
push 0x47eaa0
lea ecx, [ebp + 0x38]
call fcn.00440610
push 1
push 0x47fcc8
push 0x48101c
lea ecx, [ebp + 0x38]
call fcn.00440610
push 0
lea eax, [ebp - 0xc]
push eax
push str.postData
lea eax, [ebp + 0x38]
push eax
push 0x481010
push esi
lea eax, [ebp - 0x60]
push eax
mov ecx, ebx
call fcn.0040d17c
push eax
lea eax, [ebp - 0x50]
push str.actionsentpingvalue
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0x198]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x188]
push eax
call fcn.00440040
add esp, 0xc
push eax
lea eax, [ebp - 0x178]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x168]
push eax
call fcn.00440040
add esp, 0xc
push eax
mov ecx, ebx
call fcn.00410896
lea ecx, [ebp - 0x168]
call fcn.0043f790
lea ecx, [ebp - 0x178]
call fcn.0043f790
lea ecx, [ebp - 0x188]
call fcn.0043f790
lea ecx, [ebp - 0x198]
call fcn.0043f790
lea ecx, [ebp - 0x50]
call fcn.0043f790
lea ecx, [ebp - 0x60]
call fcn.0043f790
lea ecx, [ebp - 0x238]
call fcn.0040baf5
lea ecx, [ebp - 0xc]
call fcn.0043f790
lea ecx, [ebp + 0x38]
call fcn.0043f790
lea ecx, [ebp - 0x70]
call fcn.0043f790
lea ecx, [ebp]
call fcn.0043f790
lea ecx, [ebp + 0x20]
call fcn.0043f790
jmp 0x419915
push str.successfalse
lea ecx, [ebp + 0x70]
call fcn.0043fc10
mov eax, dword [ebp + 0x7c]
cmp eax, 0x20
ja 0x4198da
je 0x4198d3
dec eax
dec eax
je 0x4198cc
dec eax
je 0x4198c5
dec eax
dec eax
je 0x4198be
sub eax, 3
jne 0x4198ec
push str.exec_valuenot_enough_memory
jmp 0x41990d
push str.exec_valueaccess_denied
jmp 0x41990d
push str.exec_valuepath_not_found
jmp 0x41990d
push str.exec_valuefile_not_found
jmp 0x41990d
push str.exec_valuesharing_violation
jmp 0x41990d
sub eax, 0x483
je 0x419908
dec eax
je 0x419901
dec eax
je 0x4198fa
sub eax, 0x42
je 0x4198f3
push str.exec_valueunknown_error
jmp 0x41990d
push str.exec_valueuser_canceled
jmp 0x41990d
push str.exec_valuedll_not_found
jmp 0x41990d
push str.exec_valuedde_fail
jmp 0x41990d
push str.exec_valueno_association_found
lea ecx, [ebp + 0x70]
call fcn.0043fc10
xor esi, esi
push esi
lea eax, [ebp + 0x70]
push eax
mov ecx, ebx
call fcn.00410896
cmp dword [ebp + 0x78], esi
je 0x4199e4
lea ecx, [ebp + 0x70]
call fcn.0043f790
lea ecx, [ebp + 0x40]
call fcn.0043f790
lea ecx, [ebp + 0x4c]
call fcn.0043f790
mov eax, dword [ebx + 0x368]
add eax, dword [ebx + 0x358]
lea ecx, [ebp + 0x10]
mov dword [ebx + 0x35c], eax
call fcn.0043f790
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x18], 0
jne 0x4183f5
jmp 0x4183d7
call fcn.0043f790
lea ecx, [ebp + 0x10]
call fcn.0043f790
lea ecx, [ebp - 0x20]
call fcn.00440cb0
xor eax, eax
mov ecx, dword [ebp + 0x190]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0045f4ee
add ebp, 0x194
leave
ret
push str.actionerrorvaluepipe_creation
lea ecx, [ebp + 0x2c]
call fcn.0043f7b0
push esi
lea eax, [ebp + 0x2c]
push eax
mov ecx, ebx
call fcn.00410896
lea ecx, [ebp + 0x2c]
call fcn.0043f790
lea ecx, [ebp + 0x40]
call fcn.0043f790
lea ecx, [ebp + 0x4c]
call fcn.0043f790
lea ecx, [ebp + 0x10]
call fcn.0043f790
jmp 0x4183d7
push str.actionerrorvaluepipe_connection
jmp 0x4199a4
push esi
push str._exec
add edi, 0x3c
push edi
lea eax, [ebp - 0x50]
push str.actionerrorvalue
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.00440090
add esp, 0xc
push eax
mov ecx, ebx
call fcn.00410896
lea ecx, [ebp - 0x60]
call fcn.0043f790
lea ecx, [ebp - 0x50]
call fcn.0043f790
lea ecx, [ebp + 0x70]
mov dword [ebp + 0x18], esi
call fcn.0043f790
lea ecx, [ebp + 0x40]
call fcn.0043f790
lea ecx, [ebp + 0x4c]
call fcn.0043f790
lea ecx, [ebp + 0x10]
call fcn.0043f790
cmp dword [ebp + 0x18], 0
je 0x4183d7
xor edi, edi
inc edi
mov dword [ebx + 0x44], edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp + 8]
xor esi, esi
push esi
mov dword [ebx + 0x354], eax
call fcn.0040a9d8
lea ecx, [ebp - 0x20]
call fcn.00440cb0
mov eax, esi
jmp 0x419987