Function at 0x431ad1
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x496fe2
mov eax, dword fs:[0]
push eax
mov eax, 0x2300
call fcn.00459cc0
mov eax, dword [0x4d9754]
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 eax, ecx
mov dword [ebp - 0x22fc], eax
mov ecx, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x22f4], ecx
mov ecx, eax
mov dword [ebp - 0x22f8], ebx
mov dword [ebp - 0x22ec], ebx
call fcn.0040f080
mov edi, eax
mov dword [ebp - 0x213c], 0x4b6750
push ebx
lea eax, [ebp - 0x22e5]
mov dword [ebp - 0x22f0], edi
mov esi, 0x4b6748
lea ecx, [ebp - 0x2164]
push eax
mov dword [ebp - 0x2164], esi
call fcn.004060a0
mov dword [ebp - 4], 1
lea eax, [ebp - 0x22e5]
push ebx
push eax
lea ecx, [ebp - 0x2194]
mov dword [ebp - 0x2194], esi
mov dword [ebp - 0x216c], 0x4b6750
call fcn.004060a0
mov byte [ebp - 4], 4
mov esi, 0x104
lea eax, [ebp - 0x2194]
mov byte [ebp - 0x2308], bl
mov dword [ebp - 0x230c], eax
mov dword [ebp - 0x2304], ebx
cmp dword [ebp - 0x2180], esi
jae 0x431bb9
push ebx
push esi
lea ecx, [ebp - 0x2190]
call fcn.0041496d
mov ebx, 0x100
mov byte [ebp - 0x2308], 1
lea ecx, [ebp - 0x2194]
mov dword [ebp - 0x22ec], ebx
call fcn.004140be
push esi
push dword [eax]
push str.ValidateSetupAndMSISignatures
push str.StartUp
call fcn.00456621
mov dword [ebp - 0x22ec], ebx
add esp, 0x10
and ebx, 0xfffffeff
mov dword [ebp - 0x22ec], ebx
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x230c]
call fcn.0041132b
push 0x4a86a4
lea ecx, [ebp - 0x2190]
call fcn.00419617
test al, al
je 0x431e0d
xor eax, eax
lea ecx, [ebp - 0x94]
push eax
push eax
push 0x8004
call fcn.0046511e
mov byte [ebp - 4], 5
lea eax, [ebp - 0x2070]
push eax
mov ecx, edi
call fcn.0043f473
mov byte [ebp - 4], 6
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x431c59
mov eax, dword [eax]
push 2
push eax
lea ecx, [ebp - 0x94]
call fcn.00465512
mov esi, eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
test esi, esi
jne 0x431dfe
mov esi, dword [ebp - 0x22f4]
add esi, 4
mov eax, esi
cmp dword [esi + 0x14], 8
jb 0x431c93
mov eax, dword [esi]
push 2
push eax
lea ecx, [ebp - 0x94]
call fcn.00465512
test eax, eax
jne 0x431ce7
lea eax, [ebp - 0x2070]
mov ecx, edi
push eax
call fcn.0043f473
mov byte [ebp - 4], 8
or ebx, 1
mov dword [ebp - 0x22ec], ebx
cmp dword [esi + 0x14], 8
jb 0x431cc8
mov esi, dword [esi]
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x431cd3
mov eax, dword [eax]
push esi
push eax
call fcn.004651f9
mov byte [ebp - 0x22e5], 0
pop ecx
pop ecx
test al, al
jne 0x431cee
mov byte [ebp - 0x22e5], 1
mov dword [ebp - 4], 5
test bl, 1
je 0x431d12
and ebx, 0xfffffffe
mov dword [ebp - 0x22ec], ebx
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
cmp byte [ebp - 0x22e5], 0
je 0x431dfe
cmp byte [0x4da060], 0
jne 0x431d35
cmp byte [0x4df7bc], 0
je 0x431db9
push 0
lea eax, [ebp - 0x22e5]
mov dword [ebp - 0x2040], 0x4b6748
push eax
push str.C:CodeBasesisdevSrcRuntimeMSISharedSetupmsiaction.cpp
lea ecx, [ebp - 0x2040]
mov dword [ebp - 0x2018], 0x4b6750
call fcn.00407aa0
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x22e5]
push 1
push eax
push str.MsiAction:_Digital_Signing_mismatch_between_Setup.exe_and_MSI._Terminating_the_instalaltion...
lea ecx, [ebp - 0x20a0]
call fcn.00406b40
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x2040]
push 0x341
push eax
lea eax, [ebp - 0x20a0]
push eax
call fcn.00405c50
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov eax, 0x871
push eax
mov dword [0x4dea88], eax
call fcn.004578e3
pop ecx
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x94]
call fcn.00465184
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2194]
call fcn.00404cc0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2164]
call fcn.00404cc0
xor eax, eax
jmp 0x4338b4
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x94]
call fcn.00465184
add edi, 4
lea ecx, [ebp - 0x20d0]
push 7
push ecx
mov dword [ebp - 0x2300], edi
mov eax, dword [edi]
mov esi, dword [eax + 0x1c]
mov ecx, esi
call dword [0x4a5608]
mov ecx, edi
call esi
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x2070]
mov ecx, dword [ebp - 0x22f0]
push eax
call fcn.0043f8bc
mov byte [ebp - 4], 0x12
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x431e55
mov eax, dword [eax]
push eax
call sub.msi.dll_MsiRecordGetStringA
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov eax, dword [edi]
lea ecx, [ebp - 0x2284]
push 0x11
push ecx
mov esi, dword [eax + 0x1c]
mov ecx, esi
call dword [0x4a5608]
mov ecx, edi
call esi
mov byte [ebp - 4], 0x14
cmp dword [ebp - 0x2270], 0
je 0x431ece
lea eax, [ebp - 0x2284]
push eax
lea eax, [ebp - 0x2070]
push 0x4a7020
push eax
call fcn.00415510
add esp, 0xc
mov byte [ebp - 4], 0x15
add eax, 4
push eax
lea ecx, [ebp - 0x20cc]
call fcn.00415247
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov esi, dword [ebp - 0x22f0]
mov eax, dword [esi + 0x268]
cmp dword [eax + 0x5c], 1
jbe 0x431f3d
cmp dword [esi + 0x44], 0
jne 0x431f3d
mov eax, dword [edi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x4a5608]
mov ecx, edi
call esi
cmp eax, 5
je 0x431f37
mov eax, dword [edi]
lea ecx, [ebp - 0x2070]
push 6
push ecx
mov esi, dword [eax + 0x1c]
mov ecx, esi
call dword [0x4a5608]
mov ecx, edi
call esi
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x20d0]
push ecx
push eax
call fcn.0042cde7
pop ecx
pop ecx
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov esi, dword [ebp - 0x22f0]
push 0x800
lea eax, [ebp - 0x1010]
push 0
push eax
call fcn.004714b0
push 0x800
lea eax, [ebp - 0x1810]
push 0
push eax
call fcn.004714b0
add esp, 0x18
lea eax, [ebp - 0x2070]
mov ecx, esi
push eax
call fcn.0043f473
mov byte [ebp - 4], 0x19
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x431f83
mov eax, dword [eax]
lea ecx, [ebp - 0x1810]
push ecx
lea ecx, [ebp - 0x1010]
push ecx
push eax
call fcn.00457704
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
push 0x400
lea eax, [ebp - 0x1010]
push eax
lea eax, [ebp - 0x2010]
push eax
call fcn.004772f6
add esp, 0xc
test eax, eax
je 0x431fda
lea eax, [ebp - 0x2010]
push eax
lea eax, [ebp - 0x1010]
push eax
call fcn.00476b45
pop ecx
pop ecx
lea eax, [ebp - 0x1010]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp word [ebp + eax*2 - 0x1012], 0x5c
jne 0x43200e
lea eax, [eax*2 - 2]
cmp eax, 0x800
jae 0x4338d0
xor ecx, ecx
mov word [ebp + eax - 0x1010], cx
mov ecx, dword [ebp - 0x22fc]
call fcn.004338d6
test eax, eax
je 0x4320ef
push 0
push str.ISSCRIPTCMDLINE
lea ecx, [ebp - 0x20cc]
call fcn.00413fa5
cmp eax, 0xffffffff
jne 0x4320ef
cmp dword [esi + 0x2b4], 0
je 0x4320ef
cmp dword [ebp - 0x20bc], 0
je 0x43206e
push 0x4a7020
call fcn.00473ca3
pop ecx
push eax
push 0x4a7020
lea ecx, [ebp - 0x20cc]
call fcn.0041529e
lea eax, [ebp - 0x2040]
push eax
lea ecx, [esi + 0x2a0]
call fcn.00419714
mov byte [ebp - 4], 0x1b
push eax
lea eax, [ebp - 0x2100]
push str.ISSCRIPTCMDLINE_
push eax
call fcn.00415510
mov byte [ebp - 4], 0x1c
push 0x4a8190
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.0041b88d
add esp, 0x18
mov byte [ebp - 4], 0x1d
add eax, 4
push eax
lea ecx, [ebp - 0x20cc]
call fcn.00415247
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x2100]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
cmp dword [ebp + 0x10], 0
jne 0x4321b3
push 0x800
lea eax, [ebp - 0x810]
push 0
push eax
call fcn.004714b0
lea eax, [ebp - 0x1810]
push eax
push str.SETUPEXENAME
lea eax, [ebp - 0x1010]
push eax
push str.SETUPEXEDIR
lea eax, [ebp - 0x810]
push str._s__s___s__s_
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x24
lea eax, [ebp - 0x810]
mov ecx, esi
push 1
push eax
push 0x4a789c
call fcn.0043d761
push 1
lea eax, [ebp - 0x22e5]
push eax
lea eax, [ebp - 0x810]
push eax
lea ecx, [ebp - 0x2100]
call fcn.0041099e
mov byte [ebp - 4], 0x21
push eax
lea eax, [ebp - 0x2070]
push 0x4a7020
push eax
call fcn.00415510
add esp, 0xc
mov byte [ebp - 4], 0x22
add eax, 4
push eax
lea ecx, [ebp - 0x20cc]
call fcn.00415247
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2100]
call fcn.00404cc0
mov eax, dword [edi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x4a5608]
mov ecx, edi
call esi
cmp eax, 3
jne 0x432239
push 1
lea eax, [ebp - 0x22e5]
push eax
push 0x4ab53c
lea ecx, [ebp - 0x20a0]
call fcn.0041070a
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x22e5]
push 1
push eax
push str.TRANSFORMS
lea ecx, [ebp - 0x2040]
call fcn.0041070a
mov byte [ebp - 4], 0x26
lea eax, [ebp - 0x20a0]
push eax
lea eax, [ebp - 0x2040]
push eax
lea ecx, [ebp - 0x20d0]
call fcn.004147bc
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
mov eax, dword [edi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x4a5608]
mov ecx, edi
call esi
push 1
push dword [ebp - 0x22f4]
sub eax, 1
je 0x432a56
sub eax, 1
je 0x43289b
sub eax, 1
je 0x4326ea
sub eax, 1
je 0x4325b6
sub eax, 1
je 0x4323b2
lea ecx, [ebp - 0x2130]
call fcn.00410809
mov byte [ebp - 4], 0x8d
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x2224]
push ecx
mov ecx, eax
call fcn.004288f0
mov esi, eax
mov byte [ebp - 4], 0x8e
lea eax, [ebp - 0x21f4]
push 0x4d95bc
push eax
call fcn.0045d5ca
pop ecx
pop ecx
mov byte [ebp - 4], 0x8f
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x21c4]
push ecx
mov ecx, eax
call fcn.004288f0
mov byte [ebp - 4], 0x90
push str.__i
push eax
lea eax, [ebp - 0x20a0]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x91
push esi
push eax
lea eax, [ebp - 0x2040]
push eax
call fcn.00424cbf
mov byte [ebp - 4], 0x92
push 0x4a7020
push eax
lea eax, [ebp - 0x2100]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x93
lea ecx, [ebp - 0x20d0]
push ecx
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.00424cbf
add esp, 0x30
mov byte [ebp - 4], 0x94
add eax, 4
push eax
lea ecx, [ebp - 0x2160]
call fcn.00407b80
mov byte [ebp - 4], 0x93
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov byte [ebp - 4], 0x92
lea ecx, [ebp - 0x2100]
call fcn.00404cc0
mov byte [ebp - 4], 0x91
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x90
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
mov byte [ebp - 4], 0x8f
lea ecx, [ebp - 0x21c4]
call fcn.00404cc0
mov byte [ebp - 4], 0x8e
lea ecx, [ebp - 0x21f4]
call fcn.00404cc0
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0x2224]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2130]
jmp 0x432b85
lea ecx, [ebp - 0x20a0]
call fcn.00410809
mov byte [ebp - 4], 0x73
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x2040]
push ecx
mov ecx, eax
call fcn.004288f0
mov esi, eax
mov byte [ebp - 4], 0x74
lea eax, [ebp - 0x2100]
push 0x4d95bc
push eax
call fcn.0045d5ca
pop ecx
pop ecx
mov byte [ebp - 4], 0x75
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x2070]
push ecx
mov ecx, eax
call fcn.004288f0
mov byte [ebp - 4], 0x76
push str.__p
push eax
lea eax, [ebp - 0x21c4]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x77
push esi
push eax
lea eax, [ebp - 0x21f4]
push eax
call fcn.00424cbf
mov byte [ebp - 4], 0x78
mov esi, 0x4a7020
push esi
push eax
lea eax, [ebp - 0x2224]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x79
lea ecx, [ebp - 0x20d0]
push ecx
push eax
lea eax, [ebp - 0x2130]
push eax
call fcn.00424cbf
add esp, 0x30
mov byte [ebp - 4], 0x7a
add eax, 4
push eax
lea ecx, [ebp - 0x2160]
call fcn.00407b80
mov byte [ebp - 4], 0x79
lea ecx, [ebp - 0x2130]
call fcn.00404cc0
mov byte [ebp - 4], 0x78
lea ecx, [ebp - 0x2224]
call fcn.00404cc0
mov byte [ebp - 4], 0x77
lea ecx, [ebp - 0x21f4]
call fcn.00404cc0
mov byte [ebp - 4], 0x76
lea ecx, [ebp - 0x21c4]
call fcn.00404cc0
mov byte [ebp - 4], 0x75
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov byte [ebp - 4], 0x74
lea ecx, [ebp - 0x2100]
call fcn.00404cc0
mov byte [ebp - 4], 0x73
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
push 1
push dword [ebp - 0x22f4]
lea ecx, [ebp - 0x2070]
call fcn.00410809
mov byte [ebp - 4], 0x83
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x21c4]
push ecx
mov ecx, eax
call fcn.004288f0
mov byte [ebp - 4], 0x84
push eax
lea eax, [ebp - 0x21f4]
push 0x4ab578
push eax
call fcn.00415510
mov byte [ebp - 4], 0x85
push esi
push eax
lea eax, [ebp - 0x2224]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x86
lea ecx, [ebp - 0x20d0]
push ecx
push eax
lea eax, [ebp - 0x2130]
push eax
call fcn.00424cbf
add esp, 0x24
mov byte [ebp - 4], 0x87
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x432562
mov eax, dword [eax]
mov ecx, dword [ebp - 0x22f0]
push 1
push eax
push 0x4a789c
call fcn.0043d761
mov byte [ebp - 4], 0x86
lea ecx, [ebp - 0x2130]
call fcn.00404cc0
mov byte [ebp - 4], 0x85
lea ecx, [ebp - 0x2224]
call fcn.00404cc0
mov byte [ebp - 4], 0x84
lea ecx, [ebp - 0x21f4]
call fcn.00404cc0
mov byte [ebp - 4], 0x83
lea ecx, [ebp - 0x21c4]
call fcn.00404cc0
jmp 0x432b7b
lea ecx, [ebp - 0x20a0]
call fcn.00410809
mov byte [ebp - 4], 0x63
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x2040]
push ecx
mov ecx, eax
call fcn.004288f0
mov esi, eax
mov byte [ebp - 4], 0x64
lea eax, [ebp - 0x2100]
push 0x4d95bc
push eax
call fcn.0045d5ca
pop ecx
pop ecx
mov byte [ebp - 4], 0x65
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x2070]
push ecx
mov ecx, eax
call fcn.004288f0
mov byte [ebp - 4], 0x66
push str.__x
push eax
lea eax, [ebp - 0x21c4]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x67
push esi
push eax
lea eax, [ebp - 0x21f4]
push eax
call fcn.00424cbf
mov byte [ebp - 4], 0x68
push 0x4a7020
push eax
lea eax, [ebp - 0x2224]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0x20d0]
push ecx
push eax
lea eax, [ebp - 0x2130]
push eax
call fcn.00424cbf
add esp, 0x30
mov byte [ebp - 4], 0x6a
add eax, 4
push eax
lea ecx, [ebp - 0x2160]
call fcn.00407b80
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0x2130]
call fcn.00404cc0
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0x2224]
call fcn.00404cc0
mov byte [ebp - 4], 0x67
lea ecx, [ebp - 0x21f4]
call fcn.00404cc0
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0x21c4]
call fcn.00404cc0
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov byte [ebp - 4], 0x64
lea ecx, [ebp - 0x2100]
call fcn.00404cc0
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20a0]
jmp 0x432b85
lea ecx, [ebp - 0x2254]
call fcn.00410809
mov byte [ebp - 4], 0x4d
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x22e4]
push ecx
mov ecx, eax
call fcn.004288f0
mov edi, eax
mov byte [ebp - 4], 0x4e
lea eax, [ebp - 0x22b4]
mov ecx, dword [ebp - 0x22f0]
push 8
push eax
mov ecx, dword [ecx + 4]
mov esi, dword [ecx + 0x1c]
mov ecx, esi
call dword [0x4a5608]
mov ecx, dword [ebp - 0x2300]
call esi
mov esi, eax
mov byte [ebp - 4], 0x4f
lea eax, [ebp - 0x20a0]
push 0x4d95bc
push eax
call fcn.0045d5ca
pop ecx
pop ecx
mov byte [ebp - 4], 0x50
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x2040]
push ecx
mov ecx, eax
call fcn.004288f0
mov byte [ebp - 4], 0x51
push 0x4ab558
push eax
lea eax, [ebp - 0x2100]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x52
push esi
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.00424cbf
mov byte [ebp - 4], 0x53
mov esi, 0x4a7020
push esi
push eax
lea eax, [ebp - 0x21c4]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x54
push edi
push eax
lea eax, [ebp - 0x21f4]
push eax
call fcn.00424cbf
mov byte [ebp - 4], 0x55
push esi
push eax
lea eax, [ebp - 0x2224]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x20d0]
push ecx
push eax
lea eax, [ebp - 0x2130]
push eax
call fcn.00424cbf
add esp, 0x48
mov byte [ebp - 4], 0x57
add eax, 4
push eax
lea ecx, [ebp - 0x2160]
call fcn.00407b80
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x2130]
call fcn.00404cc0
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0x2224]
call fcn.00404cc0
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0x21f4]
call fcn.00404cc0
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x21c4]
call fcn.00404cc0
mov byte [ebp - 4], 0x52
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0x2100]
call fcn.00404cc0
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0x22b4]
call fcn.00404cc0
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x22e4]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2254]
jmp 0x432a46
lea ecx, [ebp - 0x20a0]
call fcn.00410809
mov byte [ebp - 4], 0x37
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x2040]
push ecx
mov ecx, eax
call fcn.004288f0
mov edi, eax
mov byte [ebp - 4], 0x38
mov eax, dword [ebp - 0x2300]
push 8
mov ecx, dword [eax]
lea eax, [ebp - 0x2100]
push eax
mov esi, dword [ecx + 0x1c]
mov ecx, esi
call dword [0x4a5608]
mov ecx, dword [ebp - 0x2300]
call esi
mov esi, eax
mov byte [ebp - 4], 0x39
lea eax, [ebp - 0x2070]
push 0x4d95bc
push eax
call fcn.0045d5ca
pop ecx
pop ecx
mov byte [ebp - 4], 0x3a
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x21c4]
push ecx
mov ecx, eax
call fcn.004288f0
mov byte [ebp - 4], 0x3b
push 0x4ab550
push eax
lea eax, [ebp - 0x21f4]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x3c
push esi
push eax
lea eax, [ebp - 0x2224]
push eax
call fcn.00424cbf
mov byte [ebp - 4], 0x3d
mov esi, 0x4a7020
push esi
push eax
lea eax, [ebp - 0x2130]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x3e
push edi
push eax
lea eax, [ebp - 0x22b4]
push eax
call fcn.00424cbf
mov byte [ebp - 4], 0x3f
push esi
push eax
lea eax, [ebp - 0x22e4]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x20d0]
push ecx
push eax
lea eax, [ebp - 0x2254]
push eax
call fcn.00424cbf
add esp, 0x48
mov byte [ebp - 4], 0x41
add eax, 4
push eax
lea ecx, [ebp - 0x2160]
call fcn.00407b80
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x2254]
call fcn.00404cc0
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x22e4]
call fcn.00404cc0
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x22b4]
call fcn.00404cc0
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x2130]
call fcn.00404cc0
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x2224]
call fcn.00404cc0
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x21f4]
call fcn.00404cc0
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x21c4]
call fcn.00404cc0
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x2100]
call fcn.00404cc0
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
mov edi, dword [ebp - 0x2300]
jmp 0x432b8a
lea ecx, [ebp - 0x2070]
call fcn.00410809
mov byte [ebp - 4], 0x27
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x21c4]
push ecx
mov ecx, eax
call fcn.004288f0
mov esi, eax
mov byte [ebp - 4], 0x28
lea eax, [ebp - 0x21f4]
push 0x4d95bc
push eax
call fcn.0045d5ca
pop ecx
pop ecx
mov byte [ebp - 4], 0x29
xor ecx, ecx
push ecx
push ecx
lea ecx, [ebp - 0x2224]
push ecx
mov ecx, eax
call fcn.004288f0
mov byte [ebp - 4], 0x2a
push 0x4ab544
push eax
lea eax, [ebp - 0x2130]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x2b
push esi
push eax
lea eax, [ebp - 0x22b4]
push eax
call fcn.00424cbf
mov byte [ebp - 4], 0x2c
push 0x4a7020
push eax
lea eax, [ebp - 0x22e4]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x20d0]
push ecx
push eax
lea eax, [ebp - 0x2254]
push eax
call fcn.00424cbf
add esp, 0x30
mov byte [ebp - 4], 0x2e
add eax, 4
push eax
lea ecx, [ebp - 0x2160]
call fcn.00407b80
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x2254]
call fcn.00404cc0
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x22e4]
call fcn.00404cc0
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x22b4]
call fcn.00404cc0
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x2130]
call fcn.00404cc0
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x2224]
call fcn.00404cc0
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x21f4]
call fcn.00404cc0
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x21c4]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
cmp dword [ebp + 0x10], 0
je 0x432c3d
cmp byte [0x4da060], 0
jne 0x432ba6
cmp byte [0x4df7bc], 0
je 0x432c16
push 1
lea eax, [ebp - 0x22e5]
push eax
push str.C:CodeBasesisdevSrcRuntimeMSISharedSetupmsiaction.cpp
lea ecx, [ebp - 0x20a0]
call fcn.00406b40
mov byte [ebp - 4], 0x9d
lea eax, [ebp - 0x22e5]
push 1
push eax
push str.MsiAction::InstallMsi___calling_Reboot
lea ecx, [ebp - 0x2040]
call fcn.00406b40
mov byte [ebp - 4], 0x9e
lea eax, [ebp - 0x20a0]
push 0x3a4
push eax
lea eax, [ebp - 0x2040]
push eax
call fcn.00405c50
mov byte [ebp - 4], 0x9d
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
cmp dword [ebp - 0x20b8], 8
lea eax, [ebp - 0x20cc]
mov ecx, dword [ebp - 0x22fc]
cmovae eax, dword [ebp - 0x20cc]
push 0
push eax
call fcn.004346e6
jmp 0x433875
mov eax, dword [edi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x4a5608]
mov ecx, edi
call esi
test eax, eax
je 0x432c6a
mov eax, dword [edi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x4a5608]
mov ecx, edi
call esi
cmp eax, 4
jne 0x432db5
push 1
lea eax, [ebp - 0x22e5]
push eax
lea ecx, [ebp - 0x20a0]
call fcn.004060a0
mov byte [ebp - 4], 0xa1
lea eax, [ebp - 0x20a0]
mov esi, dword [ebp - 0x22fc]
mov ecx, esi
push eax
push dword [ebp - 0x22f4]
call fcn.0042eaa1
test al, al
je 0x432da4
push 1
lea eax, [ebp - 0x22e5]
push eax
push str.IS_RUNTIME_FILES_LOCATION
lea ecx, [ebp - 0x22b4]
call fcn.0041099e
mov byte [ebp - 4], 0xa2
push 0x4ab5e0
push eax
lea eax, [ebp - 0x22e4]
push eax
call fcn.0041b88d
mov byte [ebp - 4], 0xa3
lea ecx, [ebp - 0x20a0]
push ecx
push eax
lea eax, [ebp - 0x2254]
push eax
call fcn.00424cbf
mov byte [ebp - 4], 0xa4
push 0x4a8190
push eax
lea eax, [ebp - 0x2040]
push eax
call fcn.0041b88d
add esp, 0x24
mov byte [ebp - 4], 0xa6
lea ecx, [ebp - 0x2254]
call fcn.00404cc0
mov byte [ebp - 4], 0xa8
lea ecx, [ebp - 0x22e4]
call fcn.00404cc0
mov byte [ebp - 4], 0xaa
lea ecx, [ebp - 0x22b4]
call fcn.00404cc0
lea eax, [ebp - 0x2040]
push eax
lea eax, [ebp - 0x2254]
push 0x4a7020
push eax
call fcn.00415510
add esp, 0xc
mov byte [ebp - 4], 0xac
add eax, 4
push eax
lea ecx, [ebp - 0x2160]
call fcn.00415247
mov byte [ebp - 4], 0xaa
lea ecx, [ebp - 0x2254]
call fcn.00404cc0
cmp dword [ebp - 0x2028], 8
lea eax, [ebp - 0x203c]
mov ecx, dword [ebp - 0x22f0]
cmovae eax, dword [ebp - 0x203c]
push 1
push eax
push 0x4a789c
call fcn.0043d761
mov byte [ebp - 4], 0xa1
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
jmp 0x432dbb
mov esi, dword [ebp - 0x22fc]
xor eax, eax
cmp dword [esi + 0x10], eax
je 0x433218
push eax
lea eax, [ebp - 0x22e5]
mov dword [ebp - 0x2040], 0x4b6748
push eax
lea ecx, [ebp - 0x2040]
mov dword [ebp - 0x2018], 0x4b6750
call fcn.004060a0
mov byte [ebp - 4], 0xb1
lea eax, [ebp - 0x2040]
push eax
mov ecx, esi
call fcn.00431785
test al, al
jne 0x432e8c
cmp dword [ebp - 0x2028], 8
lea eax, [ebp - 0x203c]
mov dword [ebp - 0x2308], str.C:CodeBasesisdevSrcRuntimeMSISharedSetupmsiaction.cpp
cmovae eax, dword [ebp - 0x203c]
push eax
lea eax, [ebp - 0x2308]
mov dword [ebp - 0x2304], 0x3be
push str.Failed_to_locate_ISSetup.dll___s_
push eax
call fcn.00415eae
or dword [0x4dea88], 0xffffffff
add esp, 0xc
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x2284]
call fcn.00404cc0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x20d0]
call fcn.00404cc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2194]
call fcn.00404cc0
jmp 0x431de8
push 0x4ab664
call fcn.00459007
push eax
lea eax, [ebp - 0x2308]
mov dword [ebp - 0x2308], str.C:CodeBasesisdevSrcRuntimeMSISharedSetupmsiaction.cpp
push str.Attempted_unloaded_of_msi.dll:__d
push eax
mov dword [ebp - 0x2304], 0x3ca
call fcn.00415eae
add esp, 0xc
lea eax, [ebp - 0x2040]
lea ecx, [ebp - 0x2134]
push eax
call fcn.0041d7bc
mov byte [ebp - 4], 0xb7
lea ecx, [ebp - 0x2134]
call fcn.0041e168
test eax, eax
jne 0x432f38
mov byte [ebp - 4], 0xb1
lea ecx, [ebp - 0x2134]
call fcn.0041d9d8
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x2284]
call fcn.00404cc0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x20d0]
call fcn.00404cc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2194]
call fcn.00404cc0
or dword [ebp - 4], 0xffffffff
jmp 0x4336ca
mov eax, dword [edi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x4a5608]
mov ecx, edi
call esi
push 1
cmp eax, 5
jne 0x433033
lea eax, [ebp - 0x22e5]
push eax
push 0x4b65d4
lea ecx, [ebp - 0x2070]
call fcn.00406b40
mov byte [ebp - 4], 0xbd
lea eax, [ebp - 0x22e5]
push 0
push eax
or ebx, 2
lea ecx, [ebp - 0x20a0]
mov dword [ebp - 0x22ec], ebx
push str.ProductCode
mov dword [ebp - 0x20a0], 0x4b6748
mov dword [ebp - 0x2078], 0x4b6750
call fcn.00407aa0
mov dword [ebp - 4], 0xbf
lea eax, [ebp - 0x22e5]
push 1
push eax
or ebx, 4
lea ecx, [ebp - 0x2100]
push str.Startup
mov dword [ebp - 0x22ec], ebx
call fcn.00406b40
mov dword [ebp - 4], 0xc0
lea eax, [ebp - 0x2070]
push eax
lea eax, [ebp - 0x20a0]
or ebx, 8
push eax
mov dword [ebp - 0x22ec], ebx
lea eax, [ebp - 0x2100]
mov esi, dword [edi]
push eax
lea eax, [ebp - 0x22b4]
push eax
mov ecx, dword [esi + 0x38]
call dword [0x4a5608]
mov ecx, edi
call dword [esi + 0x38]
mov dword [ebp - 4], 0xc1
lea ecx, [ebp - 0x22e4]
push ecx
or ebx, 0x10
mov ecx, eax
mov dword [ebp - 0x22ec], ebx
call fcn.00419714
mov dword [ebp - 4], 0xc2
or ebx, 0x20
jmp 0x43304e
push dword [ebp - 0x22f4]
lea ecx, [ebp - 0x2254]
call fcn.00410809
mov dword [ebp - 4], 0xc3
or ebx, 0x40
push eax
mov dword [ebp - 0x22ec], ebx
lea ecx, [ebp - 0x2134]
push dword [ebp - 0x22f0]
call fcn.0041ec28
mov esi, eax
mov eax, 0xc2
mov dword [ebp - 4], eax
test bl, 0x40
je 0x43308c
and ebx, 0xffffffbf
mov dword [ebp - 0x22ec], ebx
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x2254]
call fcn.00404cc0
mov dword [ebp - 4], 0xc1
test bl, 0x20
je 0x4330b3
and ebx, 0xffffffdf
mov dword [ebp - 0x22ec], ebx
mov dword [ebp - 4], 0xc1
lea ecx, [ebp - 0x22e4]
call fcn.00404cc0
mov eax, 0xc0
mov dword [ebp - 4], eax
test bl, 0x10
je 0x4330d7
and ebx, 0xffffffef
mov dword [ebp - 0x22ec], ebx
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x22b4]
call fcn.00404cc0
mov eax, 0xbf
mov dword [ebp - 4], eax
test bl, 8
je 0x4330fb
and ebx, 0xfffffff7
mov dword [ebp - 0x22ec], ebx
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x2100]
call fcn.00404cc0
mov eax, 0xbd
mov dword [ebp - 4], eax
test bl, 4
je 0x43311f
and ebx, 0xfffffffb
mov dword [ebp - 0x22ec], ebx
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
mov dword [ebp - 4], 0xb7
test bl, 2
je 0x433143
and ebx, 0xfffffffd
mov dword [ebp - 0x22ec], ebx
mov byte [ebp - 4], 0xb7
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
cmp esi, 0xffffffff
jg 0x433197
je 0x4331b4
cmp esi, 0xfffffff8
je 0x43316e
cmp esi, 0xfffffff9
je 0x433167
cmp esi, 0xfffffffc
je 0x433160
cmp esi, 0xfffffffd
je 0x4331c2
jmp 0x4331b4
push 0x65d
jmp 0x4331bc
push 0x66c
jmp 0x4331bc
mov ecx, dword [ebp - 0x22fc]
lea eax, [ebp - 0x20cc]
xor edx, edx
inc edx
cmp dword [ebp - 0x20b8], 8
push edx
cmovae eax, dword [ebp - 0x20cc]
push eax
mov dword [ecx + 0xc], edx
call fcn.004346e6
jmp 0x4331c2
test esi, esi
je 0x4331c2
cmp esi, 0x669
je 0x4331c2
cmp esi, 0xbc2
je 0x4331c2
mov eax, 0x1b59
cmp esi, eax
je 0x4331bb
push 0x65c
jmp 0x4331bc
push eax
call fcn.004578e3
pop ecx
mov dword [0x4dea88], esi
mov byte [ebp - 4], 0xb1
lea ecx, [ebp - 0x2134]
call fcn.0041d9d8
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x2284]
call fcn.00404cc0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x20d0]
call fcn.00404cc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2194]
call fcn.00404cc0
jmp 0x4336bc
mov eax, dword [edi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x4a5608]
mov ecx, edi
call esi
mov edi, dword [ebp - 0x22f0]
test eax, eax
jne 0x4332cd
mov ecx, edi
call fcn.004414f8
test al, al
jne 0x4332cd
or ebx, 0x80
mov dword [ebp - 0x22ec], ebx
mov eax, dword [edi + 0x268]
cmp byte [eax + 1], 0
jne 0x4332cd
cmp byte [eax + 2], 0
jne 0x4332cd
push 0
push 0x4ab6b4
lea ecx, [ebp - 0x20cc]
call fcn.00413fa5
or esi, 0xffffffff
cmp eax, esi
jne 0x4332cd
push 0
push 0x4ab6bc
lea ecx, [ebp - 0x20cc]
call fcn.00413fa5
cmp eax, esi
jne 0x4332cd
push 0
push str._quiet
lea ecx, [ebp - 0x20cc]
call fcn.00413fa5
cmp eax, esi
jne 0x4332cd
push 0
push str._passive
lea ecx, [ebp - 0x20cc]
call fcn.00413fa5
cmp eax, esi
jne 0x4332cd
mov ecx, edi
call fcn.0043f12e
test eax, eax
je 0x4332cd
mov al, 1
jmp 0x4332cf
xor al, al
test bl, bl
jns 0x4332df
and ebx, 0xffffff7f
mov dword [ebp - 0x22ec], ebx
xor ebx, ebx
mov esi, str.C:CodeBasesisdevSrcRuntimeMSISharedSetupmsiaction.cpp
test al, al
je 0x43367d
push ebx
lea eax, [ebp - 0x22e5]
mov dword [ebp - 0x20a0], 0x4b6748
push eax
lea ecx, [ebp - 0x20a0]
mov dword [ebp - 0x2078], 0x4b6750
call fcn.004060a0
mov byte [ebp - 4], 0xd0
cmp byte [0x4da060], bl
jne 0x433329
cmp byte [0x4df7bc], bl
je 0x4333a8
push ebx
lea eax, [ebp - 0x22e5]
mov dword [ebp - 0x2040], 0x4b6748
push eax
push esi
lea ecx, [ebp - 0x2040]
mov dword [ebp - 0x2018], 0x4b6750
call fcn.00407aa0
mov byte [ebp - 4], 0xd2
lea eax, [ebp - 0x22e5]
push 1
push eax
push str.First_time_install_uses_billboard_support
lea ecx, [ebp - 0x2070]
call fcn.00406b40
mov byte [ebp - 4], 0xd3
lea eax, [ebp - 0x2040]
push 0x3fd
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.00405c50
mov byte [ebp - 4], 0xd2
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov byte [ebp - 4], 0xd0
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
push 1
lea eax, [ebp - 0x22e5]
push eax
push str.ISExternalUI.dll
lea ecx, [ebp - 0x2070]
call fcn.0041099e
mov byte [ebp - 4], 0xd6
lea eax, [ebp - 0x20a0]
mov ecx, dword [ebp - 0x22fc]
push 1
push ebx
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.00431644
mov esi, eax
mov byte [ebp - 4], 0xd0
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
test esi, esi
je 0x4335ec
cmp dword [ebp - 0x2088], 8
lea eax, [ebp - 0x209c]
mov esi, str.C:CodeBasesisdevSrcRuntimeMSISharedSetupmsiaction.cpp
mov dword [ebp - 0x2304], 0x401
cmovae eax, dword [ebp - 0x209c]
push eax
lea eax, [ebp - 0x2308]
mov dword [ebp - 0x2308], esi
push str.Loading_ISExternalUI.dll_from__s
push eax
call fcn.00415eae
add esp, 0xc
lea eax, [ebp - 0x209c]
cmp dword [ebp - 0x2088], 8
cmovae eax, dword [ebp - 0x209c]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x22f8], eax
mov byte [ebp - 4], 0xd8
test eax, eax
je 0x4335ad
push str.ISExternalUIInstall
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x2304], eax
test eax, eax
je 0x4335d8
call fcn.004293d6
test eax, eax
je 0x4334d8
mov byte [ebp - 4], 0xd0
lea ecx, [ebp - 0x22f8]
call fcn.0041f1e8
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x2284]
call fcn.00404cc0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x20d0]
call fcn.00404cc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2194]
call fcn.00404cc0
jmp 0x4336bc
call fcn.00429356
mov ecx, dword [ebp - 0x22fc]
call fcn.0042cdd9
mov ecx, dword [edi + 0x268]
lea ebx, [ebp - 0x20cc]
cmp dword [ebp - 0x20b8], 8
cmovae ebx, dword [ebp - 0x20cc]
mov ax, word [ecx + 0x50]
lea esi, [ecx + 0x68]
mov word [ebp - 0x22f0], ax
mov ecx, esi
lea eax, [ebp - 0x22f0]
push eax
call fcn.0041b911
cmp eax, dword [esi]
mov esi, dword [ebp - 0x22f4]
setne byte [ebp - 0x2300]
add esi, 4
cmp dword [esi + 0x14], 8
jb 0x433538
mov esi, dword [esi]
mov ecx, edi
call fcn.0043f12e
push eax
push dword [ebp - 0x2300]
push ebx
push esi
mov esi, dword [ebp - 0x2304]
mov ecx, esi
call dword [0x4a5608]
call esi
mov dword [0x4dea88], eax
mov byte [ebp - 4], 0xd0
lea ecx, [ebp - 0x22f8]
call fcn.0041f1e8
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x2284]
call fcn.00404cc0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x20d0]
call fcn.00404cc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2194]
call fcn.00404cc0
jmp 0x4336bc
mov dword [ebp - 0x2308], esi
mov dword [ebp - 0x2304], 0x417
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x2308]
push str.Failed_to_load_UI_DLL__last_error__x__install_will_run_without_billboards
push eax
call fcn.00415eae
add esp, 0xc
mov byte [ebp - 4], 0xd0
lea ecx, [ebp - 0x22f8]
call fcn.0041f1e8
jmp 0x43366e
cmp byte [0x4da060], 0
jne 0x4335fe
cmp byte [0x4df7bc], 0
je 0x43366e
push 1
lea eax, [ebp - 0x22e5]
push eax
push str.C:CodeBasesisdevSrcRuntimeMSISharedSetupmsiaction.cpp
lea ecx, [ebp - 0x2100]
call fcn.00406b40
mov byte [ebp - 4], 0xe3
lea eax, [ebp - 0x22e5]
push 1
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.00406b40
mov byte [ebp - 4], 0xe4
lea eax, [ebp - 0x2100]
push 0x41c
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.00405c50
mov byte [ebp - 4], 0xe3
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov byte [ebp - 4], 0xd0
lea ecx, [ebp - 0x2100]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x20a0]
call fcn.00404cc0
cmp dword [0x4dcfac], 0
je 0x4336e5
call fcn.004293d6
test eax, eax
je 0x4336e0
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x2284]
call fcn.00404cc0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x20d0]
call fcn.00404cc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2194]
call fcn.00404cc0
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x22f8], 1
lea ecx, [ebp - 0x2164]
call fcn.00404cc0
mov eax, dword [ebp - 0x22f8]
jmp 0x4338b4
call fcn.00429356
mov esi, dword [ebp - 0x22fc]
mov ecx, esi
call fcn.0042cdd9
lea eax, [ebp - 0x2308]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
call fcn.0045feef
test al, al
je 0x4337ca
push dword [ebp - 0x22f4]
mov ecx, esi
call fcn.00433c12
test al, al
je 0x4337ca
cmp byte [0x4da060], 0
mov byte [ebp - 0x22e5], 1
jne 0x43373e
cmp byte [0x4df7bc], 0
je 0x4337c1
push ebx
lea eax, [ebp - 0x22ed]
mov dword [ebp - 0x2040], 0x4b6748
push eax
push str.C:CodeBasesisdevSrcRuntimeMSISharedSetupmsiaction.cpp
lea ecx, [ebp - 0x2040]
mov dword [ebp - 0x2018], 0x4b6750
call fcn.00407aa0
mov byte [ebp - 4], 0xed
lea eax, [ebp - 0x22ed]
push 1
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.00406b40
mov byte [ebp - 4], 0xee
lea eax, [ebp - 0x2040]
push 0x433
push eax
lea eax, [ebp - 0x2070]
push eax
call fcn.00405c50
mov byte [ebp - 4], 0xed
lea ecx, [ebp - 0x2070]
call fcn.00404cc0
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2040]
call fcn.00404cc0
push ebx
call fcn.0045fdf7
pop ecx
jmp 0x4337d0
mov byte [ebp - 0x22e5], bl
cmp dword [ebp - 0x214c], 8
lea eax, [ebp - 0x2160]
push 1
cmovae eax, dword [ebp - 0x2160]
push eax
call fcn.004581f0
cmp byte [ebp - 0x22e5], 0
mov ebx, eax
je 0x4337ff
push 1
call fcn.0045fdf7
pop ecx
mov ecx, dword [0x4dea88]
mov eax, 0x485
cmp ebx, 0xcccccccc
cmove ecx, eax
mov dword [0x4dea88], ecx
mov ecx, edi
call fcn.00441250
test eax, eax
je 0x43383d
cmp ebx, 0x669
je 0x43383d
cmp ebx, 0x642
jne 0x43383d
push 1
mov ecx, edi
call fcn.0044262c
mov ebx, dword [ebp - 0x22f4]
mov ecx, esi
push ebx
call fcn.00433b97
test eax, eax
je 0x433867
add ebx, 4
cmp dword [ebx + 0x14], 8
jb 0x43385a
mov ebx, dword [ebx]
push ebx
mov ecx, esi
call fcn.0042c92b
mov dword [esi + 0xc], eax
jmp 0x433875
lea eax, [ebp - 0x2308]
mov ecx, esi
push eax
call fcn.004354a5
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x2284]
call fcn.00404cc0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x20d0]
call fcn.00404cc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2194]
call fcn.00404cc0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2164]
call fcn.00404cc0
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.0045978b
leave
ret 0xc
call fcn.0045a182
int3