Function at 0x414f80
Capabilities:
Accept command line arguments
Check internet connectivity via wininet
Create thread
Get common file path

Disassembly:
push ebp
lea ebp, [esp - 0x37c]
sub esp, 0x3f4
mov eax, dword [0x48e610]
xor eax, ebp
mov dword [ebp + 0x378], eax
push ebx
push esi
mov esi, dword [ebp + 0x384]
push edi
mov edi, ecx
lea ebx, [edi + 0xc]
push 0x47e7fe
mov ecx, ebx
call fcn.0043f8e0
test esi, esi
je 0x415010
mov cl, byte [esi]
test cl, cl
je 0x415010
cmp cl, 0x25
jne 0x414fef
cmp byte [esi + 1], 0x32
jne 0x414fef
cmp byte [esi + 2], 0x30
jne 0x414fef
push 0x20
lea eax, [ebp + 0xc]
push ebx
push eax
add esi, 2
call fcn.0043fdb0
add esp, 0xc
push eax
mov ecx, ebx
call fcn.0043f840
lea ecx, [ebp + 0xc]
jmp 0x415008
push ecx
lea eax, [ebp + 0x28]
push ebx
push eax
call fcn.0043fdb0
add esp, 0xc
push eax
mov ecx, ebx
call fcn.0043f840
lea ecx, [ebp + 0x28]
call fcn.0043f790
inc esi
jne 0x414fb9
push 0
mov ecx, ebx
call fcn.00440160
push eax
call fcn.0047d0bd
pop ecx
push 0xffffffffffffffff
mov ecx, ebx
call fcn.004401f0
lea ecx, [edi + 0x2b0]
call fcn.0043f760
push str._orgexename_
lea ecx, [ebp + 0x28]
call fcn.0043f7b0
cmp byte [ebp + 0x2f], 0xff
lea eax, [ebp + 0x28]
jne 0x41504d
mov eax, dword [ebp + 0x28]
push eax
mov ecx, ebx
call fcn.0043f620
mov dword [ebp + 0x18], eax
cmp eax, 0xffffffff
je 0x4150be
lea ecx, [ebp + 0x28]
call fcn.0043f510
add eax, dword [ebp + 0x18]
mov ecx, ebx
push eax
lea eax, [ebp + 0xc]
push eax
call fcn.00440300
push eax
lea ecx, [edi + 0x2b0]
call fcn.0043f840
lea ecx, [ebp + 0xc]
call fcn.0043f790
push 0x22
lea ecx, [edi + 0x2b0]
call fcn.0043f580
cmp eax, 0xffffffff
je 0x4150be
push eax
lea eax, [ebp + 0xc]
push eax
lea ecx, [edi + 0x2b0]
call fcn.0043ff80
push eax
lea ecx, [edi + 0x2b0]
call fcn.0043f840
lea ecx, [ebp + 0xc]
call fcn.0043f790
lea ecx, [ebp + 0x28]
call fcn.0043f790
push str._log
lea ecx, [ebp + 0x28]
call fcn.0043f7b0
lea esi, [ebp + 0x28]
mov eax, ebx
call fcn.0040cfa6
lea ecx, [ebp + 0x28]
mov esi, eax
call fcn.0043f790
test esi, esi
je 0x41515d
cmp byte [ebx + 7], 0xff
jne 0x4150f3
mov ebx, dword [ebx]
push str._log
push ebx
call fcn.0045ea50
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x415141
push 0x47ee40
lea ecx, [ebp + 0x28]
call fcn.0043f7b0
push 0
add esi, 5
push esi
lea eax, [ebp + 0x28]
push eax
lea eax, [ebp + 0xc]
push eax
call fcn.00440090
add esp, 0xc
push eax
mov ecx, edi
call fcn.00410896
lea ecx, [ebp + 0xc]
call fcn.0043f790
lea ecx, [ebp + 0x28]
call fcn.0043f790
xor eax, eax
mov ecx, dword [ebp + 0x378]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0045f4ee
add ebp, 0x37c
leave
ret 4
lea ecx, [edi + 0x1f8]
push 0x47e7fe
call fcn.0043f8e0
push str._stubselfupdate
lea ecx, [ebp + 0x28]
call fcn.0043f7b0
lea esi, [ebp + 0x28]
mov eax, ebx
call fcn.0040cfa6
lea ecx, [ebp + 0x28]
mov esi, eax
call fcn.0043f790
test esi, esi
je 0x4151d4
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x41519c
mov eax, dword [ebx]
push str.stubselfupdate
push eax
call fcn.0045ea50
push 0x480b9c
mov esi, eax
call fcn.0045f9f0
add esp, 0xc
add esi, eax
je 0x4151d4
movzx eax, byte [esi]
test al, al
je 0x4151d4
cmp al, 0x20
je 0x4151d4
push eax
lea ecx, [edi + 0x1f8]
call fcn.0043fc90
inc esi
jne 0x4151ba
lea ecx, [ebp + 0x28]
call fcn.0043f500
xor eax, eax
push eax
push eax
lea ecx, [ebp + 0x28]
push ecx
push eax
push str.SoftwareRealNetworksConfigOutputLog
mov esi, 0x80000000
push esi
call fcn.00402b10
add esp, 0x18
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x415202
mov eax, dword [ebx]
push str._output
push eax
call fcn.0045ea50
pop ecx
pop ecx
test eax, eax
jne 0x41521f
lea ecx, [ebp + 0x28]
call fcn.00401005
test al, al
jne 0x415233
push 0x47ece4
push str.c:logaction.txt
call fcn.0045fd50
pop ecx
pop ecx
mov dword [edi + 0x24], eax
lea ecx, [ebp + 0x28]
call fcn.0043f790
lea ecx, [ebp + 0x14]
call fcn.0043f500
xor eax, eax
push eax
push eax
lea ecx, [ebp + 0x14]
push ecx
push eax
push str.SoftwareRealNetworksConfigDebugLog
push esi
call fcn.00402b10
add esp, 0x18
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x415264
mov eax, dword [ebx]
push str._debug
push eax
call fcn.0045ea50
pop ecx
pop ecx
test eax, eax
jne 0x415281
lea ecx, [ebp + 0x14]
call fcn.00401005
test al, al
jne 0x4152d7
push str._temp_logdebug.txt
lea ecx, [ebp + 0x28]
call fcn.0043f7b0
push 0
lea eax, [ebp + 0x28]
push eax
lea eax, [ebp + 0xc]
push eax
call fcn.004030b0
add esp, 0xc
push eax
lea ecx, [ebp + 0x28]
call fcn.0043f840
lea ecx, [ebp + 0xc]
call fcn.0043f790
cmp byte [ebp + 0x2f], 0xff
lea eax, [ebp + 0x28]
jne 0x4152bd
mov eax, dword [ebp + 0x28]
push 0x47ece4
push eax
call fcn.0045fd50
pop ecx
pop ecx
lea ecx, [ebp + 0x28]
mov dword [0x48fd14], eax
call fcn.0043f790
lea ecx, [ebp + 0x14]
call fcn.0043f790
and dword [edi + 0x2a4], 0
push str._verifyxml
mov ecx, ebx
call fcn.0043f620
cmp eax, 0xffffffff
je 0x415301
mov dword [edi + 0x2a4], 1
lea eax, [edi + 0x230]
push eax
push str._r_n_____________OEM:
mov eax, 0x480af0
push eax
lea ecx, [edi + 0x208]
push ecx
push str._r_n_____________DistCode:
push eax
lea ecx, [edi + 0x228]
push ecx
push str._r_n_____________Version:
push eax
lea edx, [edi + 0x220]
push edx
push str._r_n_____________Prod:
push eax
lea eax, [edi + 0x218]
push eax
lea eax, [ebp + 0x20]
push str.Stamp_Data__Lang:
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.00440040
add esp, 0xc
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x68]
push eax
call fcn.00440040
add esp, 0xc
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x78]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp + 4]
push eax
call fcn.00440040
add esp, 0xc
push eax
lea eax, [ebp + 0x14]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp + 0x28]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp + 0xc]
push eax
call fcn.00440040
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0xc]
call fcn.0043f790
lea ecx, [ebp + 0x28]
call fcn.0043f790
lea ecx, [ebp + 0x14]
call fcn.0043f790
lea ecx, [ebp + 4]
call fcn.0043f790
lea ecx, [ebp - 0x78]
call fcn.0043f790
lea ecx, [ebp - 0x70]
call fcn.0043f790
lea ecx, [ebp - 0x68]
call fcn.0043f790
lea ecx, [ebp - 0x60]
call fcn.0043f790
lea ecx, [ebp - 0x48]
call fcn.0043f790
lea ecx, [ebp - 0x58]
call fcn.0043f790
lea ecx, [ebp - 0x50]
call fcn.0043f790
lea ecx, [ebp - 0x40]
call fcn.0043f790
lea ecx, [ebp + 0x20]
call fcn.0043f790
push 0xa
pop esi
push esi
lea eax, [ebp + 0x1f0]
push eax
push 4
call fcn.0047cee1
push esi
lea eax, [ebp + 0x338]
push eax
push 7
call fcn.0047cee1
push esi
lea eax, [ebp + 0x318]
push eax
push 0
call fcn.0047cee1
push esi
lea eax, [ebp + 0x358]
push eax
push 0x44
call fcn.0047cee1
add esp, 0x30
lea eax, [ebp + 0x358]
push eax
mov eax, 0x47e7fc
push eax
lea ecx, [ebp + 0x318]
push ecx
push eax
lea ecx, [ebp + 0x338]
push ecx
push eax
lea eax, [ebp + 0x1f0]
push eax
push str.complete_version_
lea ecx, [ebp - 0x70]
call fcn.0043f7b0
push eax
lea eax, [ebp - 0x68]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp + 0x20]
push eax
call fcn.00440090
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea ecx, [ebp - 0x40]
call fcn.0043f790
lea ecx, [ebp - 0x50]
call fcn.0043f790
lea ecx, [ebp - 0x58]
call fcn.0043f790
lea ecx, [ebp - 0x48]
call fcn.0043f790
lea ecx, [ebp - 0x60]
call fcn.0043f790
lea ecx, [ebp - 0x68]
call fcn.0043f790
lea ecx, [ebp - 0x70]
call fcn.0043f790
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x41557a
mov eax, dword [ebx]
push str._detectionxml__
push eax
call fcn.0045ea50
pop ecx
pop ecx
lea ecx, [ebp + 0x28]
mov esi, eax
call fcn.0043f500
test esi, esi
je 0x4155db
lea ecx, [edi + 0x8d4]
push 0x47e7fe
call fcn.0043f8e0
mov al, byte [esi + 0xe]
add esi, 0xf
cmp al, 0x22
jne 0x4155cd
test esi, esi
je 0x4155cd
movzx eax, byte [esi]
test al, al
je 0x4155cd
cmp al, 0x22
je 0x4155cd
push eax
lea ecx, [edi + 0x8d4]
call fcn.0043fc90
inc esi
jne 0x4155b3
lea eax, [edi + 0x8d4]
push eax
push str.m_strXMLDetectFile_from_cmd_line_
jmp 0x41562e
push 0
lea eax, [ebp + 0x28]
push eax
push str.DetectionXML
push 3
call fcn.004054e1
add esp, 0x10
test eax, eax
je 0x415648
lea eax, [ebp + 0x28]
push eax
lea eax, [ebp + 0x20]
push str.DetectionXML_Override_
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea eax, [ebp + 0x28]
lea esi, [edi + 0x8d4]
push eax
mov ecx, esi
call fcn.0043f840
push esi
push str.m_strXMLDetectFile_from_reg_
lea eax, [ebp + 0x20]
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea ecx, [ebp + 0x28]
call fcn.0043f790
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x41565a
mov eax, dword [ebx]
push str._detection
push eax
call fcn.0045ea50
pop ecx
pop ecx
test eax, eax
je 0x4156a7
mov al, byte [eax + 0xa]
test al, al
je 0x415676
cmp al, 0x20
jne 0x4156a7
and dword [edi + 0x8f8], 0
xor esi, esi
inc esi
push str.cmd_line__detection
lea ecx, [ebp + 0x28]
mov dword [edi + 0x8ec], esi
call fcn.0043f7b0
lea eax, [ebp + 0x28]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0x28]
call fcn.0043f790
jmp 0x4156aa
xor esi, esi
inc esi
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x4156b4
mov eax, dword [ebx]
push str._forceinstall
push eax
call fcn.0045ea50
pop ecx
pop ecx
test eax, eax
je 0x4156ea
push str.cmd_line__forceinstall
lea ecx, [ebp + 0x28]
mov dword [edi + 0x904], esi
call fcn.0043f7b0
lea eax, [ebp + 0x28]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0x28]
call fcn.0043f790
and dword [edi + 0x908], 0
lea ecx, [ebp + 0x28]
call fcn.0043f500
xor eax, eax
push eax
push eax
lea ecx, [ebp + 0x28]
push ecx
push eax
push str.SoftwareRealNetworksConfigDetectionLog
push 0x80000000
call fcn.00402b10
add esp, 0x18
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x41571e
mov eax, dword [ebx]
push str._detectionlog
push eax
call fcn.0045ea50
pop ecx
pop ecx
test eax, eax
jne 0x415743
lea eax, [ebp + 0x28]
push 0x47e830
push eax
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x415768
push str.cmd_line__detectionlog
lea ecx, [ebp + 0x14]
mov dword [edi + 0x908], esi
call fcn.0043f7b0
lea eax, [ebp + 0x14]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0x14]
call fcn.0043f790
lea ecx, [ebp + 0x28]
call fcn.0043f790
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x41577a
mov eax, dword [ebx]
push str._noshortcircuit
push eax
call fcn.0045ea50
pop ecx
pop ecx
test eax, eax
je 0x4157b1
and dword [edi + 0x8f0], 0
push str.cmd_line__noshortcircuit
lea ecx, [ebp + 0x28]
call fcn.0043f7b0
lea eax, [ebp + 0x28]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0x28]
call fcn.0043f790
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x4157bb
mov eax, dword [ebx]
push str._detectionerrormsg
push eax
call fcn.0045ea50
pop ecx
pop ecx
test eax, eax
je 0x4157f1
push str.cmd_line__detectionerrormsg
lea ecx, [ebp + 0x28]
mov dword [edi + 0x8f4], esi
call fcn.0043f7b0
lea eax, [ebp + 0x28]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0x28]
call fcn.0043f790
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x4157fb
mov eax, dword [ebx]
push str._detectioncontinue
push eax
call fcn.0045ea50
pop ecx
pop ecx
test eax, eax
je 0x415831
push str.cmd_line__detection
lea ecx, [ebp + 0x28]
mov dword [edi + 0x8f8], esi
call fcn.0043f7b0
lea eax, [ebp + 0x28]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0x28]
call fcn.0043f790
lea ecx, [ebp - 0x24]
call fcn.0043f500
push 0
lea eax, [ebp - 0x24]
push eax
push str.DistCode
push 3
call fcn.004054e1
add esp, 0x10
test eax, eax
je 0x415884
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp + 0x20]
push str.DistCode_Override_
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea eax, [ebp - 0x24]
push eax
lea ecx, [edi + 0x208]
call fcn.0043f840
lea esi, [edi + 0x188]
push esi
lea eax, [ebp + 0x20]
push str.Config_URL_
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea ecx, [ebp - 0x34]
call fcn.0043f500
push 0
lea eax, [ebp - 0x34]
push eax
push 0x4808b8
push 3
call fcn.004054e1
add esp, 0x10
test eax, eax
je 0x4158f9
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp + 0x20]
push str.Config_URL_Override_
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea eax, [ebp - 0x34]
push eax
mov ecx, esi
call fcn.0043f840
lea esi, [edi + 0x190]
push esi
lea eax, [ebp + 0x20]
push str.Backup_Config_URL_
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea ecx, [ebp - 0x1c]
call fcn.0043f500
push 0
lea eax, [ebp - 0x1c]
push eax
push str.BackupURL
push 3
call fcn.004054e1
add esp, 0x10
test eax, eax
je 0x41596e
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x20]
push str.Backup_Config_URL_Override_
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea eax, [ebp - 0x1c]
push eax
mov ecx, esi
call fcn.0043f840
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x415978
mov eax, dword [ebx]
push str._add_log:
push eax
call fcn.0045ea50
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x4159cf
mov al, byte [esi + 9]
add esi, 0xa
cmp al, 0x22
jne 0x4159cf
lea ecx, [ebp + 0x28]
call fcn.0043f500
test esi, esi
je 0x4159b8
movzx eax, byte [esi]
test al, al
je 0x4159b8
cmp al, 0x22
je 0x4159b8
push eax
lea ecx, [ebp + 0x28]
call fcn.0043fc90
inc esi
jne 0x4159a1
lea eax, [ebp + 0x28]
push eax
lea ecx, [edi + 0x130]
call fcn.0043f840
lea ecx, [ebp + 0x28]
call fcn.0043f790
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x4159d9
mov eax, dword [ebx]
push str._loc
push eax
call fcn.0045ea50
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x415a30
mov al, byte [esi + 5]
add esi, 6
cmp al, 0x22
jne 0x415a30
lea ecx, [ebp + 0x28]
call fcn.0043f500
test esi, esi
je 0x415a19
movzx eax, byte [esi]
test al, al
je 0x415a19
cmp al, 0x22
je 0x415a19
push eax
lea ecx, [ebp + 0x28]
call fcn.0043fc90
inc esi
jne 0x415a02
lea eax, [ebp + 0x28]
push eax
lea ecx, [edi + 0x148]
call fcn.0043f840
lea ecx, [ebp + 0x28]
call fcn.0043f790
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x415a3a
mov eax, dword [ebx]
push str._home
push eax
call fcn.0045ea50
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x415a91
mov al, byte [esi + 6]
add esi, 7
cmp al, 0x22
jne 0x415a91
lea ecx, [ebp + 0x28]
call fcn.0043f500
test esi, esi
je 0x415a7a
movzx eax, byte [esi]
test al, al
je 0x415a7a
cmp al, 0x22
je 0x415a7a
push eax
lea ecx, [ebp + 0x28]
call fcn.0043fc90
inc esi
jne 0x415a63
lea eax, [ebp + 0x28]
push eax
lea ecx, [edi + 0x158]
call fcn.0043f840
lea ecx, [ebp + 0x28]
call fcn.0043f790
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
mov dword [ebp + 0x18], eax
call fcn.00462289
pop ecx
push 0
push 0
mov esi, 0x104
push esi
lea eax, [ebp + 0x210]
push eax
push 0xffffffffffffffff
push dword [ebp + 0x18]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea eax, [ebp + 0x210]
push eax
lea ecx, [ebp - 0x2c]
call fcn.0043f7b0
push str._location__
lea ecx, [ebp - 0x2c]
call fcn.0043f620
lea ecx, [ebp - 0x2c]
cmp eax, 0xffffffff
je 0x415b3a
add eax, 0xb
push eax
lea eax, [ebp + 0x20]
push eax
call fcn.00440300
push eax
lea ecx, [edi + 0x150]
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
push 0x47e920
lea ecx, [edi + 0x150]
call fcn.0043f620
cmp eax, 0xffffffff
je 0x415bd8
push eax
lea eax, [ebp + 0x20]
push eax
lea ecx, [edi + 0x150]
call fcn.0043ff80
lea ecx, [edi + 0x150]
jmp 0x415bca
push str._location
call fcn.0043f620
cmp eax, 0xffffffff
je 0x415bd8
lea eax, [edi + 0x158]
cmp byte [eax + 7], 0xff
mov ecx, eax
jne 0x415b5d
mov ecx, dword [eax]
test ecx, ecx
je 0x415b6f
push eax
lea ecx, [edi + 0x150]
call fcn.0043f840
jmp 0x415bd8
push esi
lea eax, [ebp + 0xd8]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp + 0xd8]
lea esi, [edi + 0x150]
push eax
mov ecx, esi
call fcn.0043f8e0
push esi
lea eax, [ebp + 0x20]
push str.GetModuleFileName___
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
push 0x5c
mov ecx, esi
call fcn.0043f5f0
push eax
lea eax, [ebp + 0x20]
push eax
mov ecx, esi
call fcn.0043ff80
mov ecx, esi
push eax
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea esi, [edi + 0x150]
push esi
lea eax, [ebp + 0x20]
push str.m_strLocation_
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
mov ecx, esi
call fcn.00401005
test al, al
jne 0x415c99
push esi
lea esi, [edi + 0x188]
lea eax, [ebp + 0x20]
push esi
push eax
call fcn.004024a0
add esp, 0xc
push eax
mov ecx, esi
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
push 0
lea eax, [ebp + 0x20]
push esi
push eax
call fcn.004030b0
add esp, 0xc
push eax
mov ecx, esi
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea eax, [edi + 0x150]
push eax
lea esi, [edi + 0x190]
lea eax, [ebp + 0x20]
push esi
push eax
call fcn.004024a0
add esp, 0xc
push eax
mov ecx, esi
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
push 0
lea eax, [ebp + 0x20]
push esi
push eax
call fcn.004030b0
add esp, 0xc
push eax
mov ecx, esi
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x415ca3
mov eax, dword [ebx]
push 0x4807f0
push eax
call fcn.0045ea50
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x415d02
mov al, byte [esi + 0xa]
add esi, 0xb
cmp al, 0x22
jne 0x415d02
lea ecx, [ebp + 0x28]
call fcn.0043f500
test esi, esi
je 0x415ce3
movzx eax, byte [esi]
test al, al
je 0x415ce3
cmp al, 0x22
je 0x415ce3
push eax
lea ecx, [ebp + 0x28]
call fcn.0043fc90
inc esi
jne 0x415ccc
lea ecx, [ebp + 0x28]
call fcn.004405d0
lea eax, [ebp + 0x28]
push eax
lea ecx, [edi + 0x208]
call fcn.0043f840
lea ecx, [ebp + 0x28]
call fcn.0043f790
push str._dynamicdistcode
lea ecx, [ebp + 0x28]
call fcn.0043f7b0
lea esi, [ebp + 0x28]
mov eax, ebx
call fcn.0040cfa6
lea ecx, [ebp + 0x28]
mov esi, eax
call fcn.0043f790
test esi, esi
je 0x415d74
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x415d31
mov eax, dword [ebx]
push str._dynamicdistcode
push eax
call fcn.0045ea50
push str._dynamicdistcode__
mov esi, eax
call fcn.0045f9f0
add esp, 0xc
add esi, eax
je 0x415d69
movzx eax, byte [esi]
test al, al
je 0x415d69
cmp al, 0x22
je 0x415d69
push eax
lea ecx, [edi + 0x210]
call fcn.0043fc90
inc esi
jne 0x415d4f
lea ecx, [edi + 0x210]
call fcn.004405d0
cmp byte [ebx + 7], 0xff
mov eax, ebx
jne 0x415d7e
mov eax, dword [ebx]
push 0x4807c0
push eax
call fcn.0045ea50
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x415e32
add esi, 5
cmp byte [esi], 0x22
mov byte [ebp + 0x1f], 0x20
jne 0x415da6
mov byte [ebp + 0x1f], 0x22
inc esi
cmp byte [esi], 0x2f
je 0x415e04
lea ecx, [ebp + 0x28]
call fcn.0043f500
movzx eax, byte [esi]
test al, al
je 0x415dcb
cmp al, byte [ebp + 0x1f]
je 0x415dcb
push eax
lea ecx, [ebp + 0x28]
call fcn.0043fc90
inc esi
jne 0x415db3
lea eax, [ebp + 0x28]
lea esi, [edi + 0x188]
push eax
mov ecx, esi
call fcn.0043f840
push esi
lea eax, [ebp + 0x20]
push str.Config_XML_URL_Cmdline_
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea ecx, [ebp + 0x28]
call fcn.0043f790
cmp byte [ebp + 0x1f], 0x22
jne 0x415e32
lea esi, [edi + 0x188]
push esi
lea eax, [ebp + 0x20]
push str.file:__
push eax
call fcn.004400e0
add esp, 0xc
push eax
mov ecx, esi
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea eax, [ebp + 0x20]
push eax
call fcn.004022db
pop ecx
push eax
lea ecx, [edi + 0x278]
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea eax, [ebp + 0x20]
push eax
call fcn.00404fdf
pop ecx
push eax
lea ecx, [edi + 0x280]
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
push 1
push 0x47e7fe
mov esi, 0x47ea68
push esi
lea ecx, [edi + 0x278]
call fcn.00440610
push 1
push 0x47e7fe
push esi
lea ecx, [edi + 0x280]
call fcn.00440610
push 1
mov esi, 0x47e7fe
push esi
push 0x4807a0
lea ecx, [edi + 0x280]
call fcn.00440610
push str.Setup_GUID_stuff.
lea ecx, [ebp + 0x28]
call fcn.0043f7b0
lea eax, [ebp + 0x28]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0x28]
call fcn.0043f790
lea ecx, [edi + 0x268]
push esi
call fcn.0043f8e0
lea ecx, [edi + 0x270]
push esi
call fcn.0043f8e0
push 0x20a
call fcn.0045e88c
mov esi, 0x105
push esi
mov dword [ebp + 8], eax
call fcn.0045e88c
cmp dword [ebp + 8], 0
pop ecx
pop ecx
mov dword [ebp + 0x18], eax
je 0x415f0f
test eax, eax
jne 0x415f2e
push str.Unable_to_allocate_memory_for_bufDestination_or_bufAscii.
lea ecx, [ebp + 0x28]
call fcn.0043f7b0
lea eax, [ebp + 0x28]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0x28]
call fcn.0043f790
push esi
push 0
push dword [ebp + 8]
call fcn.0045f090
push esi
push 0
push dword [ebp + 0x18]
call fcn.0045f090
add esp, 0x18
push dword [ebp + 8]
xor eax, eax
push eax
push eax
push 0x23
push eax
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
xor eax, eax
push eax
push eax
push esi
push dword [ebp + 0x18]
push 0xffffffffffffffff
push dword [ebp + 8]
push eax
push eax
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push dword [ebp + 0x18]
lea ecx, [ebp - 0xc]
call fcn.0043f7b0
push str.RealRealPlayer_
lea ecx, [ebp - 0xc]
call fcn.0043fc10
cmp byte [ebp - 5], 0xff
lea eax, [ebp - 0xc]
jne 0x415f90
mov eax, dword [ebp - 0xc]
push eax
call fcn.00401e6c
lea ecx, [ebp + 0x28]
mov dword [esp], str.setup_machine_GUID
call fcn.0043f7b0
lea eax, [ebp + 0x28]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0x28]
call fcn.0043f790
push 0
lea eax, [edi + 0x268]
push eax
push ecx
push ecx
mov eax, esp
push str.S_1_5_18
lea ecx, [ebp - 0xc]
push ecx
push eax
call fcn.00440090
add esp, 0xc
mov ecx, edi
call fcn.0040fde1
test eax, eax
jns 0x416004
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp + 0x20]
push str.Failed_creating_or_reading_machine_UUID__directory_
push eax
call fcn.004400e0
push eax
call fcn.0040d9ba
add esp, 0x10
lea ecx, [ebp + 0x20]
call fcn.0043f790
push str.setup_user_GUID
lea ecx, [ebp + 0xc]
call fcn.0043f7b0
lea eax, [ebp + 0xc]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0xc]
call fcn.0043f790
lea ecx, [ebp + 0x28]
call fcn.0043f500
lea eax, [ebp + 0x28]
push eax
call fcn.004056f0
pop ecx
test eax, eax
jns 0x416058
push str.Failed_to_get_logged_in_users_SID.
lea ecx, [ebp + 0xc]
call fcn.0043f7b0
lea eax, [ebp + 0xc]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0xc]
call fcn.0043f790
push 1
lea eax, [edi + 0x270]
push eax
push ecx
push ecx
mov eax, esp
lea ecx, [ebp + 0x28]
push ecx
lea ecx, [ebp - 0xc]
push ecx
push eax
call fcn.00440040
add esp, 0xc
mov ecx, edi
call fcn.0040fde1
test eax, eax
jns 0x4160a0
push str.Failed_creating_or_reading_user_UUID.
lea ecx, [ebp + 0xc]
call fcn.0043f7b0
lea eax, [ebp + 0xc]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0xc]
call fcn.0043f790
lea ecx, [ebp + 0x28]
call fcn.0043f790
push str.exit_GUID_code
lea ecx, [ebp + 0xc]
call fcn.0043f7b0
lea eax, [ebp + 0xc]
push eax
call fcn.0040d9ba
pop ecx
lea ecx, [ebp + 0xc]
call fcn.0043f790
push dword [ebp + 8]
call fcn.0045efef
push dword [ebp + 0x18]
call fcn.0045efef
mov esi, 0x47e950
lea eax, [edi + 0x220]
push esi
push eax
call fcn.00401046
add esp, 0x10
test al, al
je 0x416127
push 0
lea eax, [edi + 0x140]
push eax
push str.DistCode
push esi
push 0x80000000
call fcn.00402bf4
push 0
lea eax, [edi + 0x138]
push eax
push str.OrigCode
push esi
push 0x80000000
call fcn.00402bf4
add esp, 0x28
jmp 0x416197
lea eax, [edi + 0x220]
push 0x47e92c
push eax
call fcn.00401046
pop ecx
pop ecx
test al, al
je 0x416197
push 0
push 2
lea eax, [edi + 0x140]
push eax
push 0
push str.SoftwareRealNetworksRealDownloaderPreferencesDistCode
mov esi, 0x80000002
push esi
call fcn.00402b10
push 0
push 2
lea eax, [edi + 0x138]
push eax
push 0
push str.SoftwareRealNetworksRealDownloaderPreferencesOriginCode
push esi
call fcn.00402b10
add esp, 0x30
lea ecx, [edi + 0x138]
call fcn.00401005
test al, al
je 0x416197
lea eax, [edi + 0x208]
push eax
lea ecx, [edi + 0x138]
call fcn.0043f840
lea eax, [edi + 0x208]
push eax
lea ecx, [edi + 0x200]
call fcn.0043f840
cmp dword [edi + 0x50], 0
je 0x4161e1
lea ecx, [ebp - 0xc]
call fcn.0043f790
lea ecx, [ebp - 0x2c]
call fcn.0043f790
lea ecx, [ebp - 0x1c]
call fcn.0043f790
lea ecx, [ebp - 0x34]
call fcn.0043f790
lea ecx, [ebp - 0x24]
call fcn.0043f790
mov eax, 0x80004005
jmp 0x415143
and dword [edi + 0x2c], 0
push str._au_install
lea ecx, [ebp + 0xc]
call fcn.0043f7b0
lea esi, [ebp + 0xc]
mov eax, ebx
call fcn.0040cfa6
lea ecx, [ebp + 0xc]
mov esi, eax
call fcn.0043f790
test esi, esi
je 0x416211
mov dword [edi + 0x14], 1
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp + 0x1e0]
push eax
call fcn.00448ab0
pop ecx
mov ecx, eax
call fcn.00448940
lea ecx, [ebp + 0x1e0]
call fcn.00448840
cmp byte [ebp - 0xd], 0xff
lea eax, [ebp - 0x14]
jne 0x416240
mov eax, dword [ebp - 0x14]
push eax
call fcn.00401e6c
pop ecx
lea ecx, [ebp + 0x28]
call fcn.0043f500
xor esi, esi
push esi
lea ecx, [ebp - 0x14]
call fcn.00440160
push esi
push eax
lea eax, [ebp + 0x28]
push str._srninst_d_
push eax
call fcn.00440350
add esp, 0x10
mov dword [ebp + 0x18], 1
jmp 0x4162a7
lea ecx, [ebp + 0x28]
call fcn.0043f790
lea ecx, [ebp + 0x28]
call fcn.0043f500
push esi
lea ecx, [ebp - 0x14]
call fcn.00440160
push dword [ebp + 0x18]
push eax
lea eax, [ebp + 0x28]
push str._srninst_d_
push eax
call fcn.00440350
add esp, 0x10
inc dword [ebp + 0x18]
lea eax, [ebp + 0x28]
push eax
lea ecx, [ebp + 0x1e0]
call fcn.00448800
lea eax, [ebp + 0x1e0]
push eax
call fcn.00448a10
mov ebx, eax
pop ecx
neg ebx
lea ecx, [ebp + 0x1e0]
sbb bl, bl
call fcn.00448840
inc bl
je 0x416276
lea eax, [ebp + 0x28]
lea ebx, [edi + 0xa8]
push eax
mov ecx, ebx
call fcn.0043f840
lea ecx, [ebp + 0x28]
call fcn.0043f790
push ebx
lea ecx, [ebp + 0x28]
call fcn.0043f6f0
cmp byte [ebp + 0x2f], 0xff
lea eax, [ebp + 0x28]
jne 0x416306
mov eax, dword [ebp + 0x28]
push eax
call fcn.00401e6c
pop ecx
lea ecx, [ebp + 0x28]
call fcn.0043f790
lea eax, [ebp + 0x20]
push eax
mov ecx, edi
call fcn.00407bf4
cmp byte [eax + 7], 0xff
jne 0x416328
mov eax, dword [eax]
push eax
call fcn.00401e6c
pop ecx
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea eax, [ebp - 0x38]
push eax
push 0x20219
push esi
push str.CLSIDf414c260_6ac0_11cf_b6d1_00aa00bbbb58
push 0x80000000
mov dword [edi + 0x18], 1
mov dword [ebp - 0x38], esi
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x416456
push dword [ebp - 0x38]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x38], esi
lea ecx, [ebp - 4]
call fcn.0043f500
mov eax, 0x104
push eax
push eax
lea ecx, [ebp - 4]
call fcn.00440160
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [ebp - 4]
test eax, eax
je 0x416518
push 0xffffffffffffffff
call fcn.004401f0
mov ebx, 0x5dc
push ebx
push 3
lea eax, [ebp + 0x20]
push eax
lea ecx, [ebp - 4]
call fcn.0043ff80
push eax
mov ecx, edi
call fcn.0040e451
test eax, eax
lea ecx, [ebp + 0x20]
sets byte [ebp + 0x1f]
call fcn.0043f790
cmp byte [ebp + 0x1f], 0
je 0x41652a
push str.1500
lea ecx, [edi + 0x290]
call fcn.0043f8e0
push 2
lea eax, [ebp + 0x20]
push eax
lea ecx, [ebp - 4]
call fcn.0043ff80
push eax
lea ecx, [edi + 0x288]
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
push edi
lea ecx, [ebp + 0x30]
call fcn.00409d06
push 2
push 0x463
lea ecx, [ebp + 0x30]
call fcn.00409cbb
push str.actionerrorvaluelow_disk_space
lea ecx, [ebp + 0xc]
mov dword [edi + 0x34], 1
call fcn.0043f7b0
push esi
lea eax, [ebp + 0xc]
push eax
mov ecx, edi
call fcn.00410896
lea ecx, [ebp + 0xc]
call fcn.0043f790
lea ecx, [ebp + 0x30]
call fcn.00409de0
lea ecx, [ebp - 4]
jmp 0x416518
push str.actionwarningvaluejscript_disabled
lea ecx, [ebp + 0xc]
call fcn.0043f7b0
push esi
lea eax, [ebp + 0xc]
push eax
mov ecx, edi
call fcn.00410896
lea ecx, [ebp + 0xc]
call fcn.0043f790
push str.jscript.dll
mov dword [ebp + 0x18], esi
mov dword [ebp + 8], esi
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [edi + 0x68], eax
cmp eax, esi
je 0x4164dc
push str.DllRegisterServer
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp + 0x2c], eax
cmp eax, esi
je 0x4164ca
mov ebx, dword [sym.imp.KERNEL32.dll_SetErrorMode]
push 1
call ebx
call dword [ebp + 0x2c]
test eax, eax
js 0x4164bc
mov dword [ebp + 8], 1
jmp 0x4164c5
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp + 0x18], eax
push esi
call ebx
jmp 0x4164d3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp + 0x18], eax
cmp dword [ebp + 8], esi
jne 0x41636f
lea ecx, [ebp + 0x28]
call fcn.0043f500
push dword [ebp + 0x18]
lea eax, [ebp + 0x28]
push str.actionerrorvaluejavascriptreturn_value_d
push eax
call fcn.00440350
add esp, 0xc
push esi
lea eax, [ebp + 0x28]
push eax
mov ecx, edi
call fcn.00410896
mov eax, dword [edi + 0x68]
cmp eax, esi
je 0x416515
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [edi + 0x68], esi
lea ecx, [ebp + 0x28]
call fcn.0043f790
lea ecx, [ebp - 0x14]
call fcn.0043f790
jmp 0x4161af
push str._progfiles_
lea ecx, [ebp - 4]
call fcn.0043f8e0
push esi
lea eax, [ebp - 4]
push eax
lea eax, [ebp + 0x20]
push eax
call fcn.004030b0
add esp, 0xc
push eax
lea ecx, [ebp - 4]
call fcn.0043f840
lea ecx, [ebp + 0x20]
call fcn.0043f790
push ebx
push 3
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 4]
call fcn.0043ff80
push eax
mov ecx, edi
call fcn.0040e451
test eax, eax
lea ecx, [ebp - 0x40]
sets bl
call fcn.0043f790
test bl, bl
jne 0x4163d4
lea ecx, [edi + 0x150]
call fcn.00401005
push esi
test al, al
jne 0x4165e8
lea eax, [ebp + 0x2c]
push eax
mov dword [ebp + 0x2c], esi
call dword [sym.imp.WININET.dll_InternetGetConnectedState]
test eax, eax
jne 0x4165ad
mov dword [edi + 0x64], 1
lea ecx, [edi + 0x188]
call fcn.00401005
test al, al
je 0x416694
push str.actionerrorvaluemissing_xml_url
lea ecx, [ebp + 0xc]
call fcn.0043f7b0
push esi
lea eax, [ebp + 0xc]
push eax
mov ecx, edi
call fcn.00410896
lea ecx, [ebp + 0xc]
call fcn.0043f790
mov esi, 0x80004005
jmp 0x416655
mov ebx, dword [sym.imp.WININET.dll_InternetGetConnectedState]
mov dword [ebp + 8], esi
mov dword [ebp + 0x18], esi
jmp 0x416625
push edi
lea ecx, [ebp + 0x30]
call fcn.00409d06
push 3
push 0xab
lea ecx, [ebp + 0x30]
call fcn.00409cbb
cmp eax, 6
jne 0x416634
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], 3
jge 0x416634
lea ecx, [ebp + 0x30]
call fcn.00409de0
push esi
lea eax, [ebp + 8]
push eax
call ebx
test eax, eax
je 0x4165f6
jmp 0x4165ad
xor eax, eax
inc eax
cmp dword [ebp + 0x18], 3
mov dword [edi + 0x34], eax
jl 0x41664d
push eax
mov ecx, edi
call fcn.00413efb
mov esi, 0x80004005
lea ecx, [ebp + 0x30]
call fcn.00409de0
lea ecx, [ebp - 4]
call fcn.0043f790
lea ecx, [ebp - 0x14]
call fcn.0043f790
lea ecx, [ebp - 0xc]
call fcn.0043f790
lea ecx, [ebp - 0x2c]
call fcn.0043f790
lea ecx, [ebp - 0x1c]
call fcn.0043f790
lea ecx, [ebp - 0x34]
call fcn.0043f790
lea ecx, [ebp - 0x24]
call fcn.0043f790
mov eax, esi
jmp 0x415143
cmp dword [edi + 0x2c], 1
je 0x4168ee
mov ebx, str.RealNetworks.Installer
lea ecx, [edi + 0x32c]
push ebx
call fcn.0040cec5
test eax, eax
jne 0x41672d
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
lea ecx, [edi + 0x32c]
call fcn.0040cec5
test eax, eax
jne 0x41672d
push str.RealNetworks
push ebx
call fcn.0040304e
pop ecx
pop ecx
mov dword [ebp + 0x18], eax
cmp eax, esi
je 0x41671e
push eax
call dword [sym.imp.USER32.dll_SetActiveWindow]
push dword [ebp + 0x18]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov ebx, dword [sym.imp.USER32.dll_SetWindowPos]
push 0x13
push esi
push esi
push esi
push esi
push 0xffffffffffffffff
push dword [ebp + 0x18]
call ebx
push 0x13
push esi
push esi
push esi
push esi
push esi
push dword [ebp + 0x18]
call ebx
push 0x13
push esi
push esi
push esi
push esi
push 0xfffffffffffffffe
push dword [ebp + 0x18]
call ebx
mov dword [edi + 0x34], 1
mov dword [edi + 0x48], esi
jmp 0x416655
lea ecx, [edi + 0x1f8]
call fcn.00401005
test al, al
je 0x4168ee
push 0x47e7fe
lea ecx, [ebp + 0x28]
call fcn.0043f7b0
push str.2.0.50727
lea ecx, [ebp + 0x1e8]
call fcn.0043f7b0
push 0x4804c0
lea ecx, [ebp + 0x1f0]
call fcn.0043f7b0
push 0x4804bc
lea ecx, [ebp + 0x1f8]
call fcn.0043f7b0
push 0x47e8c0
lea ecx, [ebp + 0x200]
call fcn.0043f7b0
push 0x4804b8
lea ecx, [ebp + 0x208]
call fcn.0043f7b0
lea ebx, [ebp + 0x1e8]
mov dword [ebp + 0x18], 5
push ecx
push ecx
mov ecx, esp
push ebx
call fcn.0043f6f0
call fcn.00402daf
pop ecx
pop ecx
test eax, eax
je 0x4167e1
lea ecx, [ebp + 0x28]
call fcn.00401005
test al, al
jne 0x4167d8
push 0x47fcc8
lea ecx, [ebp + 0x28]
call fcn.0043fc10
push ebx
lea ecx, [ebp + 0x28]
call fcn.0043fcf0
add ebx, 8
dec dword [ebp + 0x18]
jne 0x4167aa
lea ecx, [ebp + 0x28]
call fcn.00401005
test al, al
je 0x416802
push str.none
lea ecx, [ebp + 0x28]
call fcn.0043f8e0
push esi
lea eax, [edi + 0x2b0]
push eax
push str.exename
lea eax, [ebp + 0x28]
push eax
push str.dotnetver
lea eax, [edi + 0x280]
push eax
push str.gpuid
lea eax, [edi + 0x278]
push eax
lea eax, [ebp - 0x68]
push str.actioninstallerstartedprocid
push eax
call fcn.004400e0
add esp, 0xc
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.00440040
add esp, 0xc
push eax
lea eax, [ebp - 0x58]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.00440040
add esp, 0xc
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.00440090
add esp, 0xc
push eax
lea eax, [ebp + 0x20]
push eax
call fcn.00440040
add esp, 0xc
push eax
mov ecx, edi
call fcn.00410896
lea ecx, [ebp + 0x20]
call fcn.0043f790
lea ecx, [ebp - 0x40]
call fcn.0043f790
lea ecx, [ebp - 0x50]
call fcn.0043f790
lea ecx, [ebp - 0x58]
call fcn.0043f790
lea ecx, [ebp - 0x48]
call fcn.0043f790
lea ecx, [ebp - 0x60]
call fcn.0043f790
lea ecx, [ebp - 0x68]
call fcn.0043f790
lea ebx, [ebp + 0x210]
mov dword [ebp + 0x18], 4
sub ebx, 8
mov ecx, ebx
call fcn.0043f790
dec dword [ebp + 0x18]
jns 0x4168d7
lea ecx, [ebp + 0x28]
call fcn.0043f790
cmp dword [edi + 0x2c], esi
jne 0x416902
mov ecx, edi
call fcn.00413782
cmp eax, esi
jl 0x4165e1
xor ebx, ebx
inc ebx
cmp dword [edi + 0x2c], ebx
je 0x416655
cmp dword [edi + 0x2a4], esi
jne 0x416655
lea eax, [ebp + 0x2c]
push eax
push esi
push edi
push 0x413751
push esi
push esi
mov dword [ebp + 0x2c], esi
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [edi + 0x46c], eax
cmp eax, esi
je 0x4165e1
mov ecx, edi
mov dword [edi + 0x330], ebx
call fcn.00414adc
jmp 0x416655