Function at 0x427364
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46abc2
mov eax, dword fs:[0]
push eax
mov eax, 0x2bf8
call fcn.00444270
mov eax, dword [0x49e850]
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 esi, ecx
mov dword [ebp - 0x2c00], esi
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x2bec], eax
mov dword [ebp - 0x2bf0], ebx
call fcn.00432691
mov edi, eax
push ebx
lea eax, [ebp - 0x2be5]
push eax
lea ecx, [ebp - 0x2130]
mov dword [ebp - 0x2bf4], edi
mov dword [ebp - 0x2130], 0x47d68c
mov dword [ebp - 0x2108], 0x484b70
call fcn.00402580
mov dword [ebp - 4], 1
push 7
lea eax, [ebp - 0x2040]
push eax
mov ecx, edi
call fcn.004128ac
mov byte [ebp - 4], 2
lea eax, [ebp - 0x2070]
push eax
mov ecx, edi
call fcn.0043636f
mov byte [ebp - 4], 3
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x42741b
mov eax, dword [eax]
push eax
call sub.msi.dll_MsiRecordGetStringA
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2070]
call fcn.00401580
push 0x11
lea eax, [ebp - 0x2160]
push eax
mov ecx, edi
call fcn.004128ac
mov byte [ebp - 4], 5
cmp dword [ebp - 0x214c], 0
je 0x427487
lea eax, [ebp - 0x2160]
push eax
lea eax, [ebp - 0x2070]
push 0x477c10
push eax
call fcn.00411320
add esp, 0xc
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x2040]
call fcn.00410b97
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2070]
call fcn.00401580
mov eax, dword [edi + 0x260]
cmp dword [eax + 0x5c], 1
jbe 0x4274d0
cmp dword [edi + 0x3c], ebx
jne 0x4274d0
cmp dword [edi + 0xc], 5
je 0x4274d0
push 6
lea eax, [ebp - 0x2070]
push eax
mov ecx, edi
call fcn.004128ac
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x2040]
push ecx
push eax
call fcn.00422031
pop ecx
pop ecx
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2070]
call fcn.00401580
xor eax, eax
push 0x7fe
mov word [ebp - 0x810], ax
lea eax, [ebp - 0x80e]
push ebx
push eax
call fcn.004423c0
xor eax, eax
push 0x7fe
mov word [ebp - 0x1810], ax
lea eax, [ebp - 0x180e]
push ebx
push eax
call fcn.004423c0
add esp, 0x18
lea eax, [ebp - 0x2070]
push eax
mov ecx, edi
call fcn.004360fd
mov byte [ebp - 4], 0xa
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x427526
mov eax, dword [eax]
lea ecx, [ebp - 0x1810]
push ecx
lea ecx, [ebp - 0x810]
push ecx
push eax
call fcn.0044053f
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2070]
call fcn.00401580
push 0x400
lea eax, [ebp - 0x810]
push eax
lea eax, [ebp - 0x2010]
push eax
call fcn.00444fb3
add esp, 0xc
test eax, eax
je 0x42757d
lea eax, [ebp - 0x2010]
push eax
lea eax, [ebp - 0x810]
push eax
call fcn.00443fe6
pop ecx
pop ecx
lea eax, [ebp - 0x810]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp word [ebp + eax*2 - 0x812], 0x5c
jne 0x4275b1
lea eax, [eax*2 - 2]
cmp eax, 0x800
jae 0x42775c
xor ecx, ecx
mov word [ebp + eax - 0x810], cx
mov ecx, esi
call fcn.004293f0
test eax, eax
je 0x427690
mov esi, str.ISSCRIPTCMDLINE
push esi
call fcn.00443324
pop ecx
push eax
push ebx
push esi
lea ecx, [ebp - 0x203c]
call fcn.0040fd56
cmp eax, 0xffffffff
jne 0x427690
cmp dword [edi + 0x2ac], 0
je 0x427690
cmp dword [ebp - 0x202c], 0
je 0x427612
mov esi, 0x477c10
push esi
call fcn.00443324
pop ecx
push eax
push esi
lea ecx, [ebp - 0x203c]
call fcn.0041867d
lea eax, [ebp - 0x20a0]
push eax
lea ecx, [edi + 0x298]
call fcn.00415629
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x2100]
push str.ISSCRIPTCMDLINE_
push eax
call fcn.00411320
mov byte [ebp - 4], 0xd
push 0x47afa0
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.00417779
add esp, 0x18
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0x2040]
call fcn.00410b97
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x2070]
call fcn.00401580
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x2100]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20a0]
call fcn.00401580
cmp dword [ebp + 0x10], 0
jne 0x427761
xor eax, eax
push 0x7fe
mov word [ebp - 0x1010], ax
lea eax, [ebp - 0x100e]
push ebx
push eax
call fcn.004423c0
lea eax, [ebp - 0x1810]
push eax
push str.SETUPEXENAME
lea eax, [ebp - 0x810]
push eax
push str.SETUPEXEDIR
lea eax, [ebp - 0x1010]
push str._s__s___s__s_
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x24
xor esi, esi
inc esi
push esi
lea eax, [ebp - 0x1010]
push eax
push 0x47833c
mov ecx, edi
call fcn.00434acd
push esi
lea eax, [ebp - 0x2be5]
push eax
lea eax, [ebp - 0x1010]
push eax
lea ecx, [ebp - 0x2100]
call fcn.0040cbc2
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x2070]
push 0x477c10
push eax
call fcn.00411320
add esp, 0xc
mov byte [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0x2040]
call fcn.00410b97
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x2070]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2100]
call fcn.00401580
jmp 0x427764
call fcn.00444c89
xor esi, esi
inc esi
cmp dword [edi + 0xc], 3
jne 0x427809
push esi
lea eax, [ebp - 0x2be5]
push eax
push 0x47bca8
lea ecx, [ebp - 0x20a0]
call fcn.0040c968
mov byte [ebp - 4], 0x16
push esi
lea eax, [ebp - 0x2be5]
push eax
push str.TRANSFORMS
lea ecx, [ebp - 0x2190]
call fcn.0040c968
mov byte [ebp - 4], 0x17
push dword [ebp - 0x217c]
cmp dword [ebp - 0x2178], 8
lea eax, [ebp - 0x218c]
cmovae eax, dword [ebp - 0x218c]
push ebx
push eax
lea ecx, [ebp - 0x203c]
call fcn.0040fd56
cmp eax, 0xffffffff
je 0x4277eb
lea ecx, [ebp - 0x20a0]
push ecx
push dword [ebp - 0x217c]
lea ecx, [ebp - 0x2040]
push eax
call fcn.004106b3
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x2190]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20a0]
call fcn.00401580
mov eax, dword [edi + 0xc]
push esi
dec eax
je 0x427fed
dec eax
je 0x427e4d
dec eax
je 0x427ca2
dec eax
je 0x427b6e
dec eax
mov eax, dword [ebp - 0x2bec]
push eax
je 0x427964
lea ecx, [ebp - 0x2824]
call fcn.004345d3
mov byte [ebp - 4], 0x7e
push ebx
push ebx
lea ecx, [ebp - 0x22e4]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov esi, eax
mov byte [ebp - 4], 0x7f
lea eax, [ebp - 0x2ac4]
push 0x4a5db8
push eax
call fcn.00457aa5
pop ecx
pop ecx
mov byte [ebp - 4], 0x80
push ebx
push ebx
lea ecx, [ebp - 0x2b54]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov byte [ebp - 4], 0x81
push str.__i
push eax
lea eax, [ebp - 0x20d0]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x82
push esi
push eax
lea eax, [ebp - 0x20a0]
push eax
call fcn.0041b715
mov byte [ebp - 4], 0x83
push 0x477c10
push eax
lea eax, [ebp - 0x2100]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x84
lea ecx, [ebp - 0x2040]
push ecx
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.0041b715
add esp, 0x30
mov byte [ebp - 4], 0x85
push eax
lea ecx, [ebp - 0x2130]
call fcn.0040cfc5
mov byte [ebp - 4], 0x84
lea ecx, [ebp - 0x2070]
call fcn.00401580
mov byte [ebp - 4], 0x83
lea ecx, [ebp - 0x2100]
call fcn.00401580
mov byte [ebp - 4], 0x82
lea ecx, [ebp - 0x20a0]
call fcn.00401580
mov byte [ebp - 4], 0x81
lea ecx, [ebp - 0x20d0]
call fcn.00401580
mov byte [ebp - 4], 0x80
lea ecx, [ebp - 0x2b54]
call fcn.00401580
mov byte [ebp - 4], 0x7f
lea ecx, [ebp - 0x2ac4]
call fcn.00401580
mov byte [ebp - 4], 0x7e
lea ecx, [ebp - 0x22e4]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2824]
jmp 0x42811c
lea ecx, [ebp - 0x28e4]
call fcn.004345d3
mov byte [ebp - 4], 0x64
push ebx
push ebx
lea ecx, [ebp - 0x2464]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov esi, eax
mov byte [ebp - 4], 0x65
lea eax, [ebp - 0x2af4]
push 0x4a5db8
push eax
call fcn.00457aa5
pop ecx
pop ecx
mov byte [ebp - 4], 0x66
push ebx
push ebx
lea ecx, [ebp - 0x2404]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov byte [ebp - 4], 0x67
push str.__p
push eax
lea eax, [ebp - 0x2884]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x68
push esi
push eax
lea eax, [ebp - 0x23a4]
push eax
call fcn.0041b715
mov byte [ebp - 4], 0x69
push 0x477c10
push eax
lea eax, [ebp - 0x2be4]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x6a
lea ecx, [ebp - 0x2040]
push ecx
push eax
lea eax, [ebp - 0x2344]
push eax
call fcn.0041b715
add esp, 0x30
mov byte [ebp - 4], 0x6b
push eax
lea ecx, [ebp - 0x2130]
call fcn.0040cfc5
mov byte [ebp - 4], 0x6a
lea ecx, [ebp - 0x2344]
call fcn.00401580
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0x2be4]
call fcn.00401580
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0x23a4]
call fcn.00401580
mov byte [ebp - 4], 0x67
lea ecx, [ebp - 0x2884]
call fcn.00401580
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0x2404]
call fcn.00401580
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x2af4]
call fcn.00401580
mov byte [ebp - 4], 0x64
lea ecx, [ebp - 0x2464]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x28e4]
call fcn.00401580
mov esi, dword [ebp - 0x2bec]
push 1
push esi
lea ecx, [ebp - 0x2584]
call fcn.004345d3
mov byte [ebp - 4], 0x74
push ebx
push ebx
lea ecx, [ebp - 0x2944]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov byte [ebp - 4], 0x75
push eax
lea eax, [ebp - 0x2524]
push 0x47bce4
push eax
call fcn.00411320
mov byte [ebp - 4], 0x76
push 0x477c10
push eax
lea eax, [ebp - 0x2bb4]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x77
lea ecx, [ebp - 0x2040]
push ecx
push eax
lea eax, [ebp - 0x24c4]
push eax
call fcn.0041b715
add esp, 0x24
mov byte [ebp - 4], 0x78
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x427b0f
mov eax, dword [eax]
push 1
push eax
push 0x47833c
mov ecx, edi
call fcn.00434acd
mov byte [ebp - 4], 0x77
lea ecx, [ebp - 0x24c4]
call fcn.00401580
mov byte [ebp - 4], 0x76
lea ecx, [ebp - 0x2bb4]
call fcn.00401580
mov byte [ebp - 4], 0x75
lea ecx, [ebp - 0x2524]
call fcn.00401580
mov byte [ebp - 4], 0x74
lea ecx, [ebp - 0x2944]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2584]
call fcn.00401580
jmp 0x428127
mov eax, dword [ebp - 0x2bec]
push eax
lea ecx, [ebp - 0x2704]
call fcn.004345d3
mov byte [ebp - 4], 0x54
push ebx
push ebx
lea ecx, [ebp - 0x2a04]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov esi, eax
mov byte [ebp - 4], 0x55
lea eax, [ebp - 0x26a4]
push 0x4a5db8
push eax
call fcn.00457aa5
pop ecx
pop ecx
mov byte [ebp - 4], 0x56
push ebx
push ebx
lea ecx, [ebp - 0x2284]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov byte [ebp - 4], 0x57
push str.__x
push eax
lea eax, [ebp - 0x2644]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x58
push esi
push eax
lea eax, [ebp - 0x29a4]
push eax
call fcn.0041b715
mov byte [ebp - 4], 0x59
push 0x477c10
push eax
lea eax, [ebp - 0x25e4]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x2040]
push ecx
push eax
lea eax, [ebp - 0x2a94]
push eax
call fcn.0041b715
add esp, 0x30
mov byte [ebp - 4], 0x5b
push eax
lea ecx, [ebp - 0x2130]
call fcn.0040cfc5
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x2a94]
call fcn.00401580
mov byte [ebp - 4], 0x59
lea ecx, [ebp - 0x25e4]
call fcn.00401580
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x29a4]
call fcn.00401580
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x2644]
call fcn.00401580
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x2284]
call fcn.00401580
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x26a4]
call fcn.00401580
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0x2a04]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2704]
jmp 0x42811c
mov eax, dword [ebp - 0x2bec]
push eax
lea ecx, [ebp - 0x2494]
call fcn.004345d3
mov byte [ebp - 4], 0x3e
push ebx
push ebx
lea ecx, [ebp - 0x2434]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov edi, eax
mov byte [ebp - 4], 0x3f
mov ecx, dword [ebp - 0x2bf4]
push 8
lea eax, [ebp - 0x23d4]
push eax
call fcn.004128ac
mov esi, eax
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0x2374]
push 0x4a5db8
push eax
call fcn.00457aa5
pop ecx
pop ecx
mov byte [ebp - 4], 0x41
push ebx
push ebx
lea ecx, [ebp - 0x2314]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov byte [ebp - 4], 0x42
push 0x47bcc4
push eax
lea eax, [ebp - 0x22b4]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x43
push esi
push eax
lea eax, [ebp - 0x2b84]
push eax
call fcn.0041b715
mov byte [ebp - 4], 0x44
mov esi, 0x477c10
push esi
push eax
lea eax, [ebp - 0x27c4]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x45
push edi
push eax
lea eax, [ebp - 0x2a64]
push eax
call fcn.0041b715
mov byte [ebp - 4], 0x46
push esi
push eax
lea eax, [ebp - 0x2764]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x2040]
push ecx
push eax
lea eax, [ebp - 0x2b24]
push eax
call fcn.0041b715
add esp, 0x48
mov byte [ebp - 4], 0x48
push eax
lea ecx, [ebp - 0x2130]
call fcn.0040cfc5
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x2b24]
call fcn.00401580
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x2764]
call fcn.00401580
mov byte [ebp - 4], 0x45
lea ecx, [ebp - 0x2a64]
call fcn.00401580
mov byte [ebp - 4], 0x44
lea ecx, [ebp - 0x27c4]
call fcn.00401580
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x2b84]
call fcn.00401580
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x22b4]
call fcn.00401580
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x2314]
call fcn.00401580
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x2374]
call fcn.00401580
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x23d4]
call fcn.00401580
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x2434]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2494]
call fcn.00401580
mov edi, dword [ebp - 0x2bf4]
jmp 0x428121
mov eax, dword [ebp - 0x2bec]
push eax
lea ecx, [ebp - 0x28b4]
call fcn.004345d3
mov byte [ebp - 4], 0x28
push ebx
push ebx
lea ecx, [ebp - 0x2854]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov edi, eax
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x2bf4]
push 8
lea eax, [ebp - 0x27f4]
push eax
call fcn.004128ac
mov esi, eax
mov byte [ebp - 4], 0x2a
lea eax, [ebp - 0x2794]
push 0x4a5db8
push eax
call fcn.00457aa5
pop ecx
pop ecx
mov byte [ebp - 4], 0x2b
push ebx
push ebx
lea ecx, [ebp - 0x2734]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov byte [ebp - 4], 0x2c
push 0x47bcbc
push eax
lea eax, [ebp - 0x26d4]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x2d
push esi
push eax
lea eax, [ebp - 0x2674]
push eax
call fcn.0041b715
mov byte [ebp - 4], 0x2e
mov esi, 0x477c10
push esi
push eax
lea eax, [ebp - 0x2614]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x2f
push edi
push eax
lea eax, [ebp - 0x25b4]
push eax
call fcn.0041b715
mov byte [ebp - 4], 0x30
push esi
push eax
lea eax, [ebp - 0x2554]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x2040]
push ecx
push eax
lea eax, [ebp - 0x24f4]
push eax
call fcn.0041b715
add esp, 0x48
mov byte [ebp - 4], 0x32
push eax
lea ecx, [ebp - 0x2130]
call fcn.0040cfc5
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x24f4]
call fcn.00401580
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x2554]
call fcn.00401580
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x25b4]
call fcn.00401580
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x2614]
call fcn.00401580
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x2674]
call fcn.00401580
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x26d4]
call fcn.00401580
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x2734]
call fcn.00401580
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x2794]
call fcn.00401580
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x27f4]
call fcn.00401580
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x2854]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x28b4]
jmp 0x427e3d
mov eax, dword [ebp - 0x2bec]
push eax
lea ecx, [ebp - 0x21f4]
call fcn.004345d3
mov byte [ebp - 4], 0x18
push ebx
push ebx
lea ecx, [ebp - 0x2254]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov esi, eax
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x2224]
push 0x4a5db8
push eax
call fcn.00457aa5
pop ecx
pop ecx
mov byte [ebp - 4], 0x1a
push ebx
push ebx
lea ecx, [ebp - 0x21c0]
push ecx
mov ecx, eax
call fcn.0041dfa4
mov byte [ebp - 4], 0x1b
push str.__a
push eax
lea eax, [ebp - 0x2a34]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x1c
push esi
push eax
lea eax, [ebp - 0x29d4]
push eax
call fcn.0041b715
mov byte [ebp - 4], 0x1d
push 0x477c10
push eax
lea eax, [ebp - 0x2974]
push eax
call fcn.00417779
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x2040]
push ecx
push eax
lea eax, [ebp - 0x2914]
push eax
call fcn.0041b715
add esp, 0x30
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0x2130]
call fcn.0040cfc5
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x2914]
call fcn.00401580
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x2974]
call fcn.00401580
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x29d4]
call fcn.00401580
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x2a34]
call fcn.00401580
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x21c0]
call fcn.00401580
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x2224]
call fcn.00401580
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x2254]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x21f4]
call fcn.00401580
mov esi, dword [ebp - 0x2bec]
cmp dword [ebp + 0x10], 0
je 0x4281d9
cmp byte [0x4a0228], 0
jne 0x428143
cmp byte [0x4a7930], 0
je 0x4281b3
push 1
lea eax, [ebp - 0x2be5]
push eax
push str.msiaction.cpp
lea ecx, [ebp - 0x20d0]
call fcn.004025e0
mov byte [ebp - 4], 0x8e
push 1
lea eax, [ebp - 0x2be5]
push eax
push str.MsiAction::InstallMsi___calling_Reboot
lea ecx, [ebp - 0x20a0]
call fcn.004025e0
mov byte [ebp - 4], 0x8f
push 0x605
lea eax, [ebp - 0x20d0]
push eax
lea eax, [ebp - 0x20a0]
push eax
call fcn.004023a0
mov byte [ebp - 4], 0x8e
lea ecx, [ebp - 0x20a0]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20d0]
call fcn.00401580
cmp dword [ebp - 0x2028], 8
mov ecx, dword [ebp - 0x2c00]
lea eax, [ebp - 0x203c]
cmovae eax, dword [ebp - 0x203c]
push ebx
push eax
call fcn.0042a036
jmp 0x428c00
cmp dword [edi + 0xc], 0
je 0x4281e5
cmp dword [edi + 0xc], 4
jne 0x4281f5
push esi
mov esi, dword [ebp - 0x2c00]
mov ecx, esi
call fcn.004249d6
jmp 0x4281fb
mov esi, dword [ebp - 0x2c00]
cmp dword [esi + 0x10], ebx
je 0x428601
push ebx
lea eax, [ebp - 0x2be5]
push eax
lea ecx, [ebp - 0x20a0]
mov dword [ebp - 0x20a0], 0x47d68c
mov dword [ebp - 0x2078], 0x484b70
call fcn.00402580
mov byte [ebp - 4], 0x93
lea eax, [ebp - 0x20a0]
push eax
mov ecx, esi
call fcn.004264f7
test al, al
jne 0x4282cc
cmp dword [ebp - 0x2088], 8
lea eax, [ebp - 0x209c]
cmovae eax, dword [ebp - 0x209c]
push eax
lea eax, [ebp - 0x2bfc]
push str.Failed_to_locate_ISSetup.dll___s_
push eax
mov dword [ebp - 0x2bfc], str.msiaction.cpp
mov dword [ebp - 0x2bf8], 0x616
call fcn.00411f5e
or dword [0x4a6674], 0xffffffff
add esp, 0xc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20a0]
call fcn.00401580
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2160]
call fcn.00401580
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2040]
call fcn.00401580
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2130]
call fcn.00401580
xor eax, eax
jmp 0x428c30
push 0x47bd8c
call fcn.00441b15
push eax
lea eax, [ebp - 0x2bfc]
push str.Attempted_unloaded_of_msi.dll:__d
push eax
mov dword [ebp - 0x2bfc], str.msiaction.cpp
mov dword [ebp - 0x2bf8], 0x622
call fcn.00411f5e
add esp, 0xc
lea eax, [ebp - 0x20a0]
push eax
lea ecx, [ebp - 0x21c4]
call fcn.00419859
mov byte [ebp - 4], 0x98
lea ecx, [ebp - 0x21c4]
call fcn.0041a377
test eax, eax
jne 0x428369
mov byte [ebp - 4], 0x93
lea ecx, [ebp - 0x21c4]
call fcn.0041997d
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20a0]
call fcn.00401580
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2160]
call fcn.00401580
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2040]
call fcn.00401580
or dword [ebp - 4], 0xffffffff
jmp 0x428a75
cmp dword [edi + 0xc], 5
jne 0x428437
xor ebx, ebx
inc ebx
push ebx
lea eax, [ebp - 0x2be5]
push eax
push 0x484fc8
lea ecx, [ebp - 0x2070]
call fcn.004025e0
mov byte [ebp - 4], 0x9d
push ebx
lea eax, [ebp - 0x2be5]
push eax
push str.ProductCode
lea ecx, [ebp - 0x2100]
mov dword [ebp - 0x2bf0], ebx
call fcn.004025e0
mov dword [ebp - 4], 0x9e
push ebx
lea eax, [ebp - 0x2be5]
push eax
push str.Startup
lea ecx, [ebp - 0x20d0]
mov dword [ebp - 0x2bf0], 3
call fcn.004025e0
mov dword [ebp - 4], 0x9f
lea eax, [ebp - 0x2070]
push eax
lea eax, [ebp - 0x2100]
push eax
lea eax, [ebp - 0x20d0]
push eax
lea eax, [ebp - 0x2224]
push eax
mov ecx, edi
mov dword [ebp - 0x2bf0], 7
call fcn.00436b51
mov dword [ebp - 4], 0xa0
lea ecx, [ebp - 0x2254]
push ecx
mov ecx, eax
mov dword [ebp - 0x2bf0], 0xf
call fcn.00415629
mov dword [ebp - 4], 0xa1
push 0x1f
jmp 0x428454
mov eax, dword [ebp - 0x2bec]
push 1
push eax
lea ecx, [ebp - 0x21f4]
call fcn.004345d3
mov dword [ebp - 4], 0xa2
push 0x20
pop ebx
push eax
push edi
lea ecx, [ebp - 0x21c4]
mov dword [ebp - 0x2bf0], ebx
call fcn.0041ad17
mov edi, eax
mov eax, 0xa1
mov dword [ebp - 4], eax
test bl, 0x20
je 0x42848e
and ebx, 0xffffffdf
mov dword [ebp - 0x2bf0], ebx
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x21f4]
call fcn.00401580
mov eax, 0xa0
mov dword [ebp - 4], eax
test bl, 0x10
je 0x4284b2
and ebx, 0xffffffef
mov dword [ebp - 0x2bf0], ebx
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x2254]
call fcn.00401580
mov eax, 0x9f
mov dword [ebp - 4], eax
test bl, 8
je 0x4284d6
and ebx, 0xfffffff7
mov dword [ebp - 0x2bf0], ebx
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x2224]
call fcn.00401580
mov eax, 0x9e
mov dword [ebp - 4], eax
test bl, 4
je 0x4284fa
and ebx, 0xfffffffb
mov dword [ebp - 0x2bf0], ebx
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x20d0]
call fcn.00401580
mov eax, 0x9d
mov dword [ebp - 4], eax
test bl, 2
je 0x42851e
and ebx, 0xfffffffd
mov dword [ebp - 0x2bf0], ebx
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x2100]
call fcn.00401580
mov dword [ebp - 4], 0x98
test bl, 1
je 0x428542
and ebx, 0xfffffffe
mov dword [ebp - 0x2bf0], ebx
mov byte [ebp - 4], 0x98
lea ecx, [ebp - 0x2070]
call fcn.00401580
test edi, edi
jg 0x428593
je 0x4285ba
cmp edi, 0xfffffff8
je 0x42856c
cmp edi, 0xfffffff9
je 0x428565
cmp edi, 0xfffffffc
je 0x42855e
cmp edi, 0xfffffffd
je 0x4285ba
jmp 0x4285ac
push 0x65d
jmp 0x4285b4
push 0x66c
jmp 0x4285b4
cmp dword [ebp - 0x2028], 8
lea eax, [ebp - 0x203c]
cmovae eax, dword [ebp - 0x203c]
push 1
push eax
mov ecx, esi
mov dword [esi + 0xc], 1
call fcn.0042a036
jmp 0x4285ba
cmp edi, 0x669
je 0x4285ba
cmp edi, 0xbc2
je 0x4285ba
mov eax, 0x1b59
cmp edi, eax
je 0x4285b3
push 0x65c
jmp 0x4285b4
push eax
call fcn.00440748
pop ecx
mov dword [0x4a6674], edi
mov byte [ebp - 4], 0x93
lea ecx, [ebp - 0x21c4]
call fcn.0041997d
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20a0]
call fcn.00401580
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2160]
call fcn.00401580
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2040]
call fcn.00401580
jmp 0x428a6e
cmp dword [edi + 0xc], 0
jne 0x4286da
mov ecx, edi
call fcn.00437c2d
test al, al
jne 0x4286da
push 0x40
pop eax
mov dword [ebp - 0x2bf0], eax
or eax, ebx
mov dword [ebp - 0x2bf0], eax
mov eax, dword [edi + 0x260]
cmp byte [eax + 1], 0
jne 0x4286da
cmp byte [eax + 2], 0
jne 0x4286da
push 0x47bddc
call fcn.00443324
pop ecx
push eax
push ebx
push 0x47bddc
lea ecx, [ebp - 0x203c]
call fcn.0040fd56
cmp eax, 0xffffffff
jne 0x4286da
push 0x47bde4
call fcn.00443324
pop ecx
push eax
push ebx
push 0x47bde4
lea ecx, [ebp - 0x203c]
call fcn.0040fd56
cmp eax, 0xffffffff
jne 0x4286da
push str._quiet
call fcn.00443324
pop ecx
push eax
push ebx
push str._quiet
lea ecx, [ebp - 0x203c]
call fcn.0040fd56
cmp eax, 0xffffffff
jne 0x4286da
push str._passive
call fcn.00443324
pop ecx
push eax
push ebx
push str._passive
lea ecx, [ebp - 0x203c]
call fcn.0040fd56
cmp eax, 0xffffffff
jne 0x4286da
mov ecx, edi
call fcn.00435e46
mov cl, 1
test eax, eax
jne 0x4286dc
mov cl, bl
mov eax, dword [ebp - 0x2bf0]
test al, 0x40
je 0x4286ef
and eax, 0xffffffbf
mov dword [ebp - 0x2bf0], eax
test cl, cl
je 0x428a3e
push ebx
lea eax, [ebp - 0x2be5]
push eax
lea ecx, [ebp - 0x20d0]
mov dword [ebp - 0x20d0], 0x47d68c
mov dword [ebp - 0x20a8], 0x484b70
call fcn.00402580
mov byte [ebp - 4], 0xae
cmp byte [0x4a0228], 0
jne 0x428734
cmp byte [0x4a7930], 0
je 0x4287a4
push 1
lea eax, [ebp - 0x2be5]
push eax
push str.msiaction.cpp
lea ecx, [ebp - 0x2100]
call fcn.004025e0
mov byte [ebp - 4], 0xaf
push 1
lea eax, [ebp - 0x2be5]
push eax
push str.First_time_install_uses_billboard_support
lea ecx, [ebp - 0x2070]
call fcn.004025e0
mov byte [ebp - 4], 0xb0
push 0x655
lea eax, [ebp - 0x2100]
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.004023a0
mov byte [ebp - 4], 0xaf
lea ecx, [ebp - 0x2070]
call fcn.00401580
mov byte [ebp - 4], 0xae
lea ecx, [ebp - 0x2100]
call fcn.00401580
push 1
lea eax, [ebp - 0x2be5]
push eax
push str.ISExternalUI.dll
lea ecx, [ebp - 0x2070]
call fcn.0040cbc2
mov byte [ebp - 4], 0xb3
push 1
push ebx
lea eax, [ebp - 0x20d0]
push eax
lea eax, [ebp - 0x2070]
push eax
mov ecx, esi
call fcn.004263d8
mov esi, eax
mov byte [ebp - 4], 0xae
lea ecx, [ebp - 0x2070]
call fcn.00401580
test esi, esi
je 0x4289a7
cmp dword [ebp - 0x20b8], 8
lea eax, [ebp - 0x20cc]
cmovae eax, dword [ebp - 0x20cc]
push eax
lea eax, [ebp - 0x2bfc]
push str.Loading_ISExternalUI.dll_from__s
mov esi, str.msiaction.cpp
push eax
mov dword [ebp - 0x2bfc], esi
mov dword [ebp - 0x2bf8], 0x659
call fcn.00411f5e
add esp, 0xc
cmp dword [ebp - 0x20b8], 8
lea eax, [ebp - 0x20cc]
cmovae eax, dword [ebp - 0x20cc]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x2bf4], eax
mov byte [ebp - 4], 0xb5
test eax, eax
je 0x428968
push str.ISExternalUIInstall
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x2bf8], eax
test eax, eax
je 0x428993
call fcn.0041ea4e
test eax, eax
je 0x4288c1
mov byte [ebp - 4], 0xae
lea ecx, [ebp - 0x2bf4]
call fcn.0041b482
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20d0]
call fcn.00401580
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2160]
call fcn.00401580
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2040]
call fcn.00401580
jmp 0x428a6e
call fcn.0041e9ce
mov ecx, dword [ebp - 0x2c00]
call fcn.00422023
mov ecx, dword [edi + 0x260]
movzx eax, word [ecx + 0x50]
push eax
call fcn.00418008
cmp dword [ebp - 0x2028], 8
mov esi, dword [ebp - 0x2bec]
lea ebx, [ebp - 0x203c]
cmovae ebx, dword [ebp - 0x203c]
add esi, 4
mov byte [ebp - 0x2c00], al
cmp dword [esi + 0x14], 8
jb 0x42890c
mov esi, dword [esi]
mov ecx, edi
call fcn.00435e46
push eax
push dword [ebp - 0x2c00]
push ebx
push esi
call dword [ebp - 0x2bf8]
mov dword [0x4a6674], eax
mov byte [ebp - 4], 0xae
lea ecx, [ebp - 0x2bf4]
call fcn.0041b482
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20d0]
call fcn.00401580
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2160]
call fcn.00401580
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2040]
call fcn.00401580
jmp 0x428a6e
mov dword [ebp - 0x2bfc], esi
mov dword [ebp - 0x2bf8], 0x66f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x2bfc]
push str.Failed_to_load_UI_DLL__last_error__x__install_will_run_without_billboards
push eax
call fcn.00411f5e
add esp, 0xc
mov byte [ebp - 4], 0xae
lea ecx, [ebp - 0x2bf4]
call fcn.0041b482
jmp 0x428a29
cmp byte [0x4a0228], 0
jne 0x4289b9
cmp byte [0x4a7930], 0
je 0x428a29
push 1
lea eax, [ebp - 0x2be5]
push eax
push str.msiaction.cpp
lea ecx, [ebp - 0x2100]
call fcn.004025e0
mov byte [ebp - 4], 0xbe
push 1
lea eax, [ebp - 0x2be5]
push eax
push str.Failed_to_get_UI_DLL_from_setup.exe_for_billboard_support._This_installation_will_run_without_billboards.
lea ecx, [ebp - 0x2070]
call fcn.004025e0
mov byte [ebp - 4], 0xbf
push 0x674
lea eax, [ebp - 0x2100]
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.004023a0
mov byte [ebp - 4], 0xbe
lea ecx, [ebp - 0x2070]
call fcn.00401580
mov byte [ebp - 4], 0xae
lea ecx, [ebp - 0x2100]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x20d0]
call fcn.00401580
mov esi, dword [ebp - 0x2c00]
cmp dword [0x4a2794], 0
je 0x428a8c
call fcn.0041ea4e
test eax, eax
je 0x428a87
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2160]
call fcn.00401580
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2040]
call fcn.00401580
or dword [ebp - 4], 0xffffffff
xor ebx, ebx
inc ebx
lea ecx, [ebp - 0x2130]
call fcn.00401580
mov eax, ebx
jmp 0x428c30
call fcn.0041e9ce
mov ecx, esi
call fcn.00422023
lea eax, [ebp - 0x2bfc]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
call fcn.0045a34e
test al, al
je 0x428b55
mov eax, dword [ebp - 0x2bec]
push eax
mov ecx, esi
call fcn.00429962
test al, al
je 0x428b55
cmp byte [0x4a0228], 0
mov byte [ebp - 0x2be5], 1
jne 0x428adc
cmp byte [0x4a7930], 0
je 0x428b4c
push 1
lea eax, [ebp - 0x2c01]
push eax
push str.msiaction.cpp
lea ecx, [ebp - 0x2100]
call fcn.004025e0
mov byte [ebp - 4], 0xc6
push 1
lea eax, [ebp - 0x2c01]
push eax
push str.Disabling_WOW64_file_system_redirection_to_prevent_issues_with_64_bit_MSI_packages__costing_error_2324_
lea ecx, [ebp - 0x2070]
call fcn.004025e0
mov byte [ebp - 4], 0xc7
push 0x68b
lea eax, [ebp - 0x2100]
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.004023a0
mov byte [ebp - 4], 0xc6
lea ecx, [ebp - 0x2070]
call fcn.00401580
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2100]
call fcn.00401580
push ebx
call fcn.0045a24e
pop ecx
jmp 0x428b5b
mov byte [ebp - 0x2be5], bl
cmp dword [ebp - 0x2118], 8
lea eax, [ebp - 0x212c]
cmovae eax, dword [ebp - 0x212c]
push 1
push eax
call fcn.004411ac
cmp byte [ebp - 0x2be5], 0
mov ebx, eax
je 0x428b8a
push 1
call fcn.0045a24e
pop ecx
mov ecx, dword [0x4a6674]
mov eax, 0x485
cmp ebx, 0xcccccccc
cmove ecx, eax
mov dword [0x4a6674], ecx
mov ecx, edi
call fcn.004379c0
test eax, eax
je 0x428bc8
cmp ebx, 0x669
je 0x428bc8
cmp ebx, 0x642
jne 0x428bc8
push 1
mov ecx, edi
call fcn.00438ab3
mov ebx, dword [ebp - 0x2bec]
push ebx
mov ecx, esi
call fcn.004298fb
test eax, eax
je 0x428bf2
add ebx, 4
cmp dword [ebx + 0x14], 8
jb 0x428be5
mov ebx, dword [ebx]
push ebx
mov ecx, esi
call fcn.00421e1b
mov dword [esi + 0xc], eax
jmp 0x428c00
lea eax, [ebp - 0x2bfc]
push eax
mov ecx, esi
call fcn.0042adc7
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2160]
call fcn.00401580
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2040]
call fcn.00401580
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2130]
call fcn.00401580
xor eax, eax
inc eax
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.004423a3
leave
ret 0xc