Function at 0x413a90
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x390
mov eax, dword [0x538010]
xor eax, ebp
mov dword [esp + 0x388], eax
lea esi, [esp + 0x1c0]
mov dword [esi], 0
push esi
call fcn.00490570
add esp, 4
mov dword [esp + 4], eax
lea ecx, [esp + 0x1bc]
mov dword [ecx], 0xffffffff
call fcn.00442760
lea edi, [esp + 0x200]
mov byte [edi + 0xb], 9
cmp edi, str.installer
ja 0x413afe
lea eax, [esp + 0x209]
cmp eax, str.installer
ja 0x4153d1
mov dword [esp + 0x204], 0x656c6c61
mov dword [esp + 0x200], 0x74736e69
mov word [esp + 0x208], 0x72
lea edx, [esp + 0x58]
mov byte [edx + 0xb], 5
cmp edx, str.ptype
ja 0x413b3d
lea eax, [esp + 0x5d]
cmp eax, str.ptype
ja 0x4153d1
mov dword [esp + 0x58], 0x70797470
mov word [esp + 0x5c], 0x65
lea ecx, [esp + 0x1bc]
push edi
push edx
call fcn.00443f20
cmp byte [esp + 0x63], 0
jns 0x413b6d
push dword [esp + 0x58]
call fcn.004d05a5
add esp, 4
cmp byte [esp + 0x20b], 0
jns 0x413b86
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
push edi
call fcn.00434720
add esp, 4
push 0x18
call fcn.004d0575
add esp, 4
mov ebx, eax
mov ecx, eax
push 0x100000
push edi
call fcn.0044bca0
mov dword [esp + 0x58], ebx
push ebx
call fcn.0044c700
add esp, 4
mov ecx, edi
call fcn.00489d00
lea ebx, [esp + 0x200]
mov ecx, ebx
push 0x9b
push str.wWinMain
push 0
call fcn.0044c760
lea ecx, [esp + 0x23c]
push 0x51c1de
push str._______________________________________Start_install.
call fcn.00415500
mov ecx, ebx
call fcn.0044c9f0
push esi
call fcn.0048e5f0
add esp, 4
test al, al
je 0x413cad
lea ecx, [esp + 0x200]
push 0xa1
push str.wWinMain
push 0
call fcn.0044c760
lea esi, [esp + 0x23c]
mov ecx, esi
push 0x51c22e
push str.Handled_non_install_cmd_line_option_by_win10_default_browser_helper__ret_code:
call fcn.00415500
lea edi, [esp + 0x58]
push dword [esp + 0x1c0]
push edi
call fcn.004cbb90
add esp, 8
movzx eax, byte [edi + 0xb]
test al, al
jns 0x413c58
mov eax, dword [esp + 0x5c]
mov edi, dword [esp + 0x58]
mov ecx, esi
push eax
push edi
call fcn.0046ea90
cmp byte [esp + 0x63], 0
jns 0x413c74
push dword [esp + 0x58]
call fcn.004d05a5
add esp, 4
lea ecx, [esp + 0x200]
call fcn.0044c9f0
mov ebx, dword [esp + 0x1c0]
lea ecx, [esp + 0x1bc]
call fcn.00442790
mov ecx, dword [esp + 0x388]
xor ecx, ebp
call fcn.004d1573
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
mov eax, dword [esp + 4]
cmp eax, 4
ja case.default.0x413cba
jmp dword [eax*4 + 0x51c738]
lea esi, [esp + 0x200]
mov ecx, esi
push 0xa7
push str.wWinMain
push 0
call fcn.0044c760
lea ecx, [esp + 0x23c]
push 0x51c258
push str.Exiting__because_of_insecure_environment.
call fcn.00415500
mov ecx, esi
jmp 0x413c7b
lea esi, [esp + 0x200]
mov ecx, esi
push 0xaa
push str.wWinMain
push 0
call fcn.0044c760
lea ecx, [esp + 0x23c]
push 0x51c277
push str.Cant_find_secure_environment.
jmp 0x413d4d
lea esi, [esp + 0x200]
mov ecx, esi
push 0xaf
push str.wWinMain
push 0
call fcn.0044c760
lea ecx, [esp + 0x23c]
push 0x51c295
push str.Runned_in_secure_environment.
call fcn.00415500
mov ecx, esi
call fcn.0044c9f0
call fcn.00491f90
mov esi, eax
push str.run_as_admin
call fcn.004ec0f0
add esp, 4
cmp eax, 0x7ffffff0
jae 0x415405
mov ecx, eax
cmp eax, 0xa
ja 0x413d8b
lea edi, [esp + 0x200]
mov byte [edi + 0xb], cl
jmp 0x413dc2
mov ebx, ecx
or ebx, 0xf
inc ebx
push ebx
mov edi, ecx
call fcn.004d0575
mov ecx, edi
add esp, 4
mov edi, eax
mov dword [esp + 0x200], eax
or ebx, 0x80000000
mov dword [esp + 0x208], ebx
lea ebx, [esp + 0x200]
mov dword [esp + 0x204], ecx
cmp edi, str.run_as_admin
ja 0x413dd9
mov eax, ecx
add eax, edi
cmp eax, str.run_as_admin
ja 0x4153d1
push ecx
push str.run_as_admin
push edi
mov dword [esp + 0x10], esi
mov esi, ecx
call fcn.004d3ed0
add esp, 0xc
mov byte [edi + esi], 0
mov ecx, dword [esp + 4]
push ebx
call fcn.004925d0
mov ebx, eax
cmp byte [esp + 0x20b], 0
jns 0x413e17
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
test bl, bl
je 0x413e6c
xor eax, eax
dec eax
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], eax
call fcn.00491f90
mov esi, eax
push str.setup_cmd_line
call fcn.004ec0f0
add esp, 4
cmp eax, 0x7ffffff0
jae 0x415405
mov ebx, eax
cmp eax, 0xa
ja 0x4140c2
lea edi, [esp + 0x200]
mov byte [edi + 0xb], bl
jmp 0x4140f6
pcmpeqd xmm0, xmm0
lea ecx, [esp + 0x1a0]
movdqu xmmword [ecx + 0xc], xmm0
movdqa xmmword [ecx], xmm0
call fcn.00439a50
lea esi, [esp + 0x200]
mov ecx, esi
push 0xd0
push str.wWinMain
push 0
call fcn.0044c760
call fcn.004114c0
mov ecx, str.Full_installer_mode.
mov edx, str.Lite_installer_mode.
test al, al
cmovne edx, ecx
lea ecx, [esp + 0x23c]
mov eax, 0x51c2d8
mov edi, 0x51c2ed
cmovne edi, eax
push edi
push edx
call fcn.00415500
mov ecx, esi
call fcn.0044c9f0
xor eax, eax
dec eax
lea esi, [esp + 0x1cc]
mov dword [esi + 4], eax
mov dword [esi], eax
mov ecx, esi
call fcn.004357b0
mov ecx, esi
call fcn.00435810
test al, al
je 0x413ffa
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [section.SHARED], eax
lea ecx, [esp + 0x200]
push 0xdc
push str.wWinMain
push 0
call fcn.0044c760
lea esi, [esp + 0x23c]
mov ecx, esi
push 0x51c351
push str.Installer_process_id:
call fcn.00415500
lea edi, [esp + 0x58]
push dword [section.SHARED]
push edi
call 0x4820d0
add esp, 8
movzx eax, byte [edi + 0xb]
test al, al
jns 0x413f58
mov eax, dword [esp + 0x5c]
mov edi, dword [esp + 0x58]
mov ecx, esi
push eax
push edi
call fcn.0046ea90
cmp byte [esp + 0x63], 0
jns 0x413f74
push dword [esp + 0x58]
call fcn.004d05a5
add esp, 4
lea ecx, [esp + 0x200]
call fcn.0044c9f0
call fcn.00491f90
mov edi, eax
push str.silent
call fcn.004ec0f0
add esp, 4
cmp eax, 0x7ffffff0
jae 0x415405
mov ebx, eax
cmp eax, 0xa
ja 0x4142da
lea esi, [esp + 0x200]
mov byte [esi + 0xb], bl
jmp 0x414310
lea esi, [esp + 0x200]
mov ecx, esi
push 0xb2
push str.wWinMain
push 0
call fcn.0044c760
lea ecx, [esp + 0x23c]
push 0x51c2c3
push str.Exiting__DLL_files_found_in_working_directory
call fcn.00415500
mov ecx, esi
call fcn.0044c9f0
mov ebx, 0xffffff38
jmp 0x413c87
mov edi, str.wWinMain
xor ebx, ebx
lea esi, [esp + 0x200]
mov ecx, esi
push 0xd4
push edi
push ebx
call fcn.0044c760
lea ecx, [esp + 0x23c]
push 0x51c31c
push str.Another_installer_instance_is_already_running.
call fcn.00415500
mov ecx, esi
call fcn.0044c9f0
lea ecx, [esp + 0x200]
push 0xd5
push edi
push ebx
call fcn.0044c760
lea esi, [esp + 0x23c]
mov ecx, esi
push 0x51c33a
push str.Master_installer_process_id:
call fcn.00415500
push dword [section.SHARED]
lea edi, [esp + 0x5c]
push edi
call 0x4820d0
add esp, 8
movzx eax, byte [esp + 0x63]
test al, al
jns 0x414082
mov eax, dword [esp + 0x5c]
mov edi, dword [esp + 0x58]
mov ecx, esi
push eax
push edi
call fcn.0046ea90
cmp byte [esp + 0x63], 0
jns 0x41409e
push dword [esp + 0x58]
call fcn.004d05a5
add esp, 4
lea ecx, [esp + 0x200]
call fcn.0044c9f0
push dword [section.SHARED]
call fcn.00437560
add esp, 4
mov ebx, 0x258
jmp 0x4153b4
mov dword [esp + 4], esi
mov esi, ebx
or esi, 0xf
inc esi
push esi
call fcn.004d0575
add esp, 4
mov edi, eax
mov dword [esp + 0x200], eax
or esi, 0x80000000
mov dword [esp + 0x208], esi
mov esi, dword [esp + 4]
mov dword [esp + 0x204], ebx
cmp edi, str.setup_cmd_line
ja 0x41410d
mov eax, ebx
add eax, edi
cmp eax, str.setup_cmd_line
ja 0x4153d1
push ebx
push str.setup_cmd_line
push edi
call fcn.004d3ed0
add esp, 0xc
mov byte [edi + ebx], 0
lea edx, [esp + 0x180]
mov ecx, esi
lea eax, [esp + 0x200]
push eax
push edx
call fcn.00492870
cmp byte [esp + 0x20b], 0
jns 0x414150
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
xor eax, eax
dec eax
mov dword [esp + 0x1f4], eax
mov dword [esp + 0x1f8], eax
mov dword [esp + 0x1fc], eax
call fcn.00491f90
mov esi, eax
push str.parent_installer_process_id
call fcn.004ec0f0
add esp, 4
cmp eax, 0x7ffffff0
jae 0x415405
mov ebx, eax
cmp eax, 0xa
mov dword [esp + 4], esi
ja 0x4141a2
mov byte [esp + 0x20b], bl
lea edi, [esp + 0x200]
jmp 0x4141ce
mov esi, ebx
or esi, 0xf
inc esi
push esi
call fcn.004d0575
add esp, 4
mov edi, eax
mov dword [esp + 0x200], eax
or esi, 0x80000000
mov dword [esp + 0x208], esi
mov dword [esp + 0x204], ebx
cmp edi, str.parent_installer_process_id
ja 0x4141e5
mov eax, ebx
add eax, edi
cmp eax, str.parent_installer_process_id
ja 0x4153d1
push ebx
push str.parent_installer_process_id
push edi
call fcn.004d3ed0
add esp, 0xc
mov byte [edi + ebx], 0
lea esi, [esp + 0x1f4]
mov ecx, dword [esp + 4]
lea eax, [esp + 0x200]
push eax
push esi
call fcn.004927b0
cmp byte [esp + 0x20b], 0
jns 0x41422a
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
xor eax, eax
mov dword [esp + 0x1ec], eax
mov dword [esp + 0x1e8], eax
movzx eax, byte [esp + 0x1ff]
test al, al
jns 0x414254
mov esi, dword [esp + 0x1f4]
mov eax, dword [esp + 0x1f8]
lea ecx, [esp + 0x1e8]
push ecx
push eax
push esi
call fcn.00482580
add esp, 0xc
test al, al
jne 0x4144a5
call fcn.00501860
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea esi, [esp + 0x58]
push eax
push esi
call fcn.00500050
add esp, 8
lea edi, [esp + 0x200]
mov ecx, edi
push esi
push 0x5a
push str.ExecuteAsAdmin
push 1
call fcn.0044cb80
lea ebx, [esp + 0x23c]
mov ecx, ebx
push 0x51c638
push str.Suspicious_process_id
call fcn.00415500
movzx eax, byte [esp + 0x1ff]
test al, al
jns 0x414479
mov edx, dword [esp + 0x1f4]
mov eax, dword [esp + 0x1f8]
jmp 0x414480
mov dword [esp + 4], edi
mov edi, ebx
or ebx, 0xf
inc ebx
push ebx
call fcn.004d0575
add esp, 4
mov esi, eax
mov dword [esp + 0x200], eax
or ebx, 0x80000000
mov dword [esp + 0x208], ebx
mov ebx, edi
mov edi, dword [esp + 4]
mov dword [esp + 0x204], ebx
cmp esi, str.silent
ja 0x414327
mov eax, ebx
add eax, esi
cmp eax, str.silent
ja 0x4153d1
push ebx
push str.silent
push esi
call fcn.004d3ed0
add esp, 0xc
mov byte [esi + ebx], 0
mov ecx, edi
lea eax, [esp + 0x200]
push eax
call fcn.004925d0
mov ebx, eax
cmp byte [esp + 0x20b], 0
jns 0x414364
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
call fcn.00491f90
mov edi, eax
push str.system_level
call fcn.004ec0f0
add esp, 4
cmp eax, 0x7ffffff0
jae 0x415405
mov ecx, eax
cmp eax, 0xa
mov byte [esp + 4], bl
ja 0x41439a
lea esi, [esp + 0x200]
mov byte [esi + 0xb], cl
jmp 0x4143ca
mov ebx, ecx
or ebx, 0xf
inc ebx
push ebx
mov esi, ecx
call fcn.004d0575
mov ecx, esi
add esp, 4
mov esi, eax
mov dword [esp + 0x200], eax
or ebx, 0x80000000
mov dword [esp + 0x208], ebx
mov dword [esp + 0x204], ecx
cmp esi, str.system_level
ja 0x4143e1
mov eax, ecx
add eax, esi
cmp eax, str.system_level
ja 0x4153d1
push ecx
push str.system_level
push esi
mov ebx, ecx
call fcn.004d3ed0
add esp, 0xc
mov byte [esi + ebx], 0
mov ecx, edi
lea eax, [esp + 0x200]
push eax
call fcn.004925d0
mov ebx, eax
cmp byte [esp + 0x20b], 0
jns 0x414420
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
xor eax, eax
dec eax
mov dword [esp + 0x1f4], eax
mov dword [esp + 0x1f8], eax
mov dword [esp + 0x1fc], eax
call fcn.00491f90
mov edi, eax
push 0x520f64
call fcn.004ec0f0
add esp, 4
cmp eax, 0x7ffffff0
jae 0x415405
mov ecx, eax
cmp eax, 0xa
mov byte [esp + 0xb], bl
ja 0x4146c2
mov byte [esp + 0x20b], cl
lea esi, [esp + 0x200]
jmp 0x4146f2
lea edx, [esp + 0x1f4]
add eax, edx
mov ecx, ebx
push eax
push edx
call fcn.00415500
mov ecx, edi
call fcn.0044cbc0
cmp byte [esp + 0x63], 0
jns 0x4144a5
push dword [esp + 0x58]
call fcn.004d05a5
add esp, 4
mov eax, 0x100000
push dword [esp + 0x1e8]
push 1
push eax
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [esp + 4], eax
xor eax, eax
lea esi, [esp + 0x200]
mov ecx, esi
push 0x60
push str.ExecuteAsAdmin
push eax
xor edi, edi
call fcn.0044c760
lea ecx, [esp + 0x23c]
push 0x51c651
push str.Start_installer_as_admin
call fcn.00415500
mov ecx, esi
call fcn.0044c9f0
lea ebx, [esp + 0x10]
xor eax, eax
dec eax
mov dword [ebx + 0x14], eax
mov dword [ebx + 0x10], eax
pcmpeqd xmm0, xmm0
movdqa xmmword [ebx], xmm0
mov ecx, ebx
lea eax, [esp + 0x180]
push eax
call fcn.00493980
mov esi, dword [sym.imp.KERNEL32.dll_OpenEventA]
push str.0c0f0f0d_6434_4cfd_a5e9_23e9ca4d94b6
push edi
mov eax, 0x100000
push eax
call esi
mov edi, eax
push str.fef32d6d_67e9_4654_b314_6c72098ff5d1
xor eax, eax
push eax
mov eax, 0x100000
push eax
call esi
lea ecx, [esp + 0x37c]
mov dword [ecx], edi
mov dword [ecx + 4], eax
mov eax, dword [esp + 4]
mov dword [ecx + 8], eax
xor eax, eax
dec eax
push eax
xor eax, eax
push eax
push ecx
push 3
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
test eax, eax
je 0x414616
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea esi, [esp + 0x1a0]
push eax
push esi
call fcn.00500050
add esp, 8
lea ecx, [esp + 0x200]
push esi
push 0x73
push str.ExecuteAsAdmin
push 1
call fcn.0044cb80
lea ebx, [esp + 0x23c]
mov ecx, ebx
push 0x51c68e
push str.Installer_started_as_admin_has_been_unexpectedly_synced__wr
call fcn.00415500
lea esi, [esp + 0x58]
push edi
push esi
call 0x4820d0
add esp, 8
movzx eax, byte [esi + 0xb]
test al, al
jns 0x4145cf
mov eax, dword [esp + 0x5c]
mov esi, dword [esp + 0x58]
mov ecx, ebx
push eax
push esi
call fcn.0046ea90
cmp byte [esp + 0x63], 0
jns 0x4145eb
push dword [esp + 0x58]
call fcn.004d05a5
add esp, 4
lea ecx, [esp + 0x200]
call fcn.0044cbc0
cmp byte [esp + 0x1ab], 0
mov ebx, 0xffffffff
jns 0x414fb5
push dword [esp + 0x1a0]
jmp 0x414fad
push ebx
call fcn.0041f0e0
add esp, 4
xor eax, eax
dec eax
lea esi, [esp + 0x1d8]
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov ecx, ebx
push esi
call fcn.00492ce0
movzx eax, byte [esi + 0xb]
test al, al
jns 0x41464f
mov esi, dword [esp + 0x1d8]
mov eax, dword [esp + 0x1dc]
lea edi, [esp + 0x200]
mov ecx, edi
push eax
push esi
call fcn.00489c30
push edi
call fcn.00479c80
add esp, 4
mov ebx, eax
mov ecx, edi
call fcn.00489d00
test bl, bl
je 0x414c1d
xor eax, eax
dec eax
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x1d4], eax
push str.progress_window
call fcn.004ec0f0
add esp, 4
cmp eax, 0x7ffffff0
jae 0x415405
mov ebx, eax
cmp eax, 0xa
ja 0x414d97
mov byte [esp + 0x20b], bl
mov esi, edi
jmp 0x414dca
mov ebx, ecx
or ebx, 0xf
inc ebx
push ebx
mov esi, ecx
call fcn.004d0575
mov ecx, esi
add esp, 4
mov esi, eax
mov dword [esp + 0x200], eax
or ebx, 0x80000000
mov dword [esp + 0x208], ebx
mov dword [esp + 0x204], ecx
cmp esi, 0x520f64
ja 0x414709
mov eax, ecx
add eax, esi
cmp eax, 0x520f64
ja 0x4153d1
push ecx
push 0x520f64
push esi
mov ebx, ecx
call fcn.004d3ed0
add esp, 0xc
mov byte [esi + ebx], 0
lea edx, [esp + 0x1f4]
mov ecx, edi
lea eax, [esp + 0x200]
push eax
push edx
call fcn.004927b0
cmp byte [esp + 0x20b], 0
jns 0x41474e
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
lea edi, [esp + 0x37c]
xor eax, eax
dec eax
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 8], eax
push edi
call fcn.004347c0
add esp, 4
lea ecx, [esp + 0x200]
push 0xe7
push str.wWinMain
push 0
call fcn.0044c760
lea esi, [esp + 0x23c]
mov ecx, esi
push 0x51c365
push str.Temporary_path_is:
call fcn.00415500
movzx eax, byte [edi + 0xb]
test al, al
jns 0x4147af
mov edi, dword [esp + 0x37c]
mov eax, dword [esp + 0x380]
lea ebx, [esp + 0x58]
push eax
push edi
push ebx
call fcn.004ca870
add esp, 0xc
movzx eax, byte [ebx + 0xb]
test al, al
jns 0x4147ce
mov eax, dword [esp + 0x5c]
mov ebx, dword [esp + 0x58]
mov ecx, esi
push eax
push ebx
call fcn.0046ea90
cmp byte [esp + 0x63], 0
jns 0x4147ea
push dword [esp + 0x58]
call fcn.004d05a5
add esp, 4
lea esi, [esp + 0x200]
mov ecx, esi
call fcn.0044c9f0
pcmpeqd xmm0, xmm0
lea edi, [esp + 0x180]
movdqu xmmword [edi + 0xc], xmm0
movdqa xmmword [edi], xmm0
mov ecx, edi
call fcn.0041dc10
mov ecx, edi
call fcn.0041dd90
lea edi, [esp + 0x58]
push 0x124
push 0xff
push edi
call fcn.004d4450
add esp, 0xc
lea eax, [esp + 0x37c]
mov ecx, edi
push eax
call fcn.00418260
mov ecx, edi
mov edi, esi
lea eax, [esp + 0x1f4]
push eax
call fcn.004189f0
xor eax, eax
mov dword [esp + 0x1dc], eax
mov dword [esp + 0x1d8], eax
mov dword [esp + 0x1e0], eax
mov byte [esi + 0xb], 4
cmp esi, 0x51c366
ja 0x414886
lea eax, [esp + 0x204]
cmp eax, 0x51c366
ja 0x4153d1
mov dword [esp + 0x200], 0x676e616c
mov byte [esp + 0x204], 0
lea esi, [esp + 0x1d8]
lea ecx, [esp + 0x180]
push esi
push edi
call fcn.0041e8e0
mov ebx, eax
cmp byte [esp + 0x20b], 0
jns 0x4148c9
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
lea edi, [esp + 0x194]
test bl, bl
je 0x4148e1
lea ecx, [esp + 0xb0]
push esi
call fcn.00415420
lea ecx, [esp + 0x58]
call fcn.00419d20
call fcn.004c8a50
mov dword [esp + 0xc], eax
mov esi, dword [esp + 0x190]
cmp esi, edi
je 0x41493c
lea ebx, [esp + 0x1bc]
lea eax, [esi + 0x10]
lea edx, [esi + 0x1c]
mov ecx, ebx
push edx
push eax
call fcn.00443f20
test esi, esi
je 0x4153e7
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x41492d
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x414923
jmp 0x414936
mov eax, dword [esi + 8]
cmp dword [eax], esi
mov esi, eax
jne 0x41492d
mov esi, eax
cmp eax, edi
jne 0x414905
mov byte [esp + 0x20b], 8
lea esi, [esp + 0x200]
cmp esi, 0x51c36b
ja 0x414965
lea eax, [esp + 0x208]
cmp eax, 0x51c36b
ja 0x4153d1
lea ebx, [esp + 0x98]
mov dword [esp + 0x204], 0x64695f64
mov dword [esp + 0x200], 0x6e617262
mov byte [esp + 0x208], 0
lea ecx, [esp + 0x1bc]
push ebx
push esi
call fcn.00443f20
cmp byte [esp + 0x20b], 0
jns 0x4149b1
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
mov byte [esp + 0x20b], 0xa
cmp esi, 0x51c374
ja 0x4149d3
lea eax, [esp + 0x20a]
cmp eax, 0x51c374
ja 0x4153d1
lea eax, [esp + 0xa4]
mov word [esp + 0x208], 0x656d
mov dword [esp + 0x204], 0x616e5f64
mov dword [esp + 0x200], 0x6e617262
mov byte [esp + 0x20a], 0
lea ecx, [esp + 0x1bc]
push eax
push esi
call fcn.00443f20
cmp byte [esp + 0x20b], 0
jns 0x414a29
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
push 0x20
call fcn.004d0575
add esp, 4
mov dword [esp + 0x200], eax
mov dword [esp + 0x208], 0x80000020
mov dword [esp + 0x204], 0x10
cmp eax, str.default_language
ja 0x414a66
lea ecx, [eax + 0x10]
cmp ecx, str.default_language
ja 0x4153d1
lea edx, [esp + 0xb0]
movdqu xmm0, xmmword [str.default_language]
movdqu xmmword [eax], xmm0
mov byte [eax + 0x10], 0
lea ecx, [esp + 0x1bc]
push edx
push esi
call fcn.00443f20
cmp byte [esp + 0x20b], 0
jns 0x414aa4
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
call fcn.004114c0
cmp dword [esp + 0xc], 3
jg 0x414b47
test al, al
je 0x414b47
cmp byte [esp + 4], 0
jne 0x414b3d
pcmpeqd xmm0, xmm0
lea edi, [esp + 0x200]
movdqa xmmword [edi + 0x60], xmm0
movdqa xmmword [edi + 0x50], xmm0
movdqa xmmword [edi + 0x40], xmm0
movdqa xmmword [edi + 0x30], xmm0
movdqa xmmword [edi + 0x20], xmm0
movdqa xmmword [edi + 0x10], xmm0
movdqa xmmword [edi], xmm0
lea esi, [esp + 0x10]
push esi
call fcn.004341f0
add esp, 4
mov ecx, edi
push esi
push ebx
push dword [esp + 0xc4]
call fcn.00433d50
mov ecx, edi
push 0
call fcn.0042f5d0
mov dword [edi], 0x51aa60
cmp byte [edi + 0x6b], 0
jns 0x414b31
push dword [esp + 0x260]
call fcn.004d05a5
add esp, 4
lea ecx, [esp + 0x200]
call fcn.00434350
mov ebx, 0x195
jmp 0x415354
lea eax, [esp + 0x1e8]
mov dword [eax], 0
push eax
call fcn.004373c0
add esp, 4
test al, al
je 0x414c8a
movzx eax, byte [esp + 0xb]
push 0x25800000
push eax
call int.0048e4c0
add esp, 8
cmp byte [esp + 4], 0
je 0x414ff9
xor ebx, ebx
lea edi, [esp + 0x200]
mov ecx, edi
push 0x129
push str.wWinMain
push ebx
call fcn.0044c760
lea ecx, [esp + 0x23c]
push 0x51c3dc
push str.Installing_in_silent_mode.
call fcn.00415500
mov ecx, edi
call fcn.0044c9f0
call fcn.00491f90
mov dword [esp + 4], eax
push 0x140
push 0xff
push edi
call fcn.004d4450
add esp, 0xc
mov ecx, edi
push 1
lea eax, [esp + 0x184]
push eax
lea eax, [esp + 0x60]
push eax
push ebx
call fcn.004203b0
push str.make_browser_default_after_import
call fcn.004ec0f0
add esp, 4
cmp eax, 0x7ffffff0
jae 0x415411
mov ebx, eax
cmp eax, 0xa
ja 0x4150a8
lea edi, [esp + 0x10]
mov byte [edi + 0xb], bl
jmp 0x4150cd
call fcn.00501860
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea esi, [esp + 0x1a0]
push eax
push esi
call fcn.00500050
add esp, 8
lea ecx, [esp + 0x200]
push esi
push 0x7d
push str.ExecuteAsAdmin
push 1
call fcn.0044cb80
lea edi, [esp + 0x23c]
mov ecx, edi
push 0x51c69f
push str.Browser_archive
call fcn.00415500
movzx eax, byte [esp + 0x1e3]
test al, al
jns 0x414d13
mov ecx, dword [esp + 0x1d8]
mov eax, dword [esp + 0x1dc]
jmp 0x414d1a
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edi, [esp + 0x10]
push eax
push edi
call fcn.00500050
add esp, 8
lea esi, [esp + 0x200]
mov ecx, esi
push edi
push 0x10f
push str.wWinMain
push 1
call fcn.0044cb80
lea ecx, [esp + 0x23c]
push 0x51c3a4
push str.CPU_is_not_supported
call fcn.00415500
mov ecx, esi
call fcn.0044cbc0
cmp byte [edi + 0xb], 0
jns 0x414ce8
push dword [esp + 0x10]
call fcn.004d05a5
add esp, 4
mov ebx, 0x194
cmp byte [esp + 4], 0
jne 0x415354
push dword [esp + 0x1e8]
push dword [esp + 0xc0]
call fcn.00437410
add esp, 8
jmp 0x415354
lea ecx, [esp + 0x1d8]
xor ebx, ebx
dec ebx
lea esi, [esp + 0x58]
push eax
push ecx
push esi
call fcn.004ca870
add esp, 0xc
movzx eax, byte [esi + 0xb]
test al, al
jns 0x414d3c
mov eax, dword [esp + 0x5c]
mov esi, dword [esp + 0x58]
mov ecx, edi
push eax
push esi
call fcn.0046ea90
cmp byte [esp + 0x63], 0
jns 0x414d58
push dword [esp + 0x58]
call fcn.004d05a5
add esp, 4
mov ecx, edi
push 0x51c6af
push str._does_not_exist
call fcn.00415500
lea ecx, [esp + 0x200]
call fcn.0044cbc0
cmp byte [esp + 0x1ab], 0
jns 0x414f9c
push dword [esp + 0x1a0]
call fcn.004d05a5
add esp, 4
jmp 0x414f9c
mov edi, ebx
or edi, 0xf
inc edi
push edi
call fcn.004d0575
add esp, 4
mov esi, eax
mov dword [esp + 0x200], eax
or edi, 0x80000000
mov dword [esp + 0x208], edi
lea edi, [esp + 0x200]
mov dword [esp + 0x204], ebx
cmp esi, str.progress_window
ja 0x414de1
mov eax, ebx
add eax, esi
cmp eax, str.progress_window
ja 0x4153d1
push ebx
push str.progress_window
push esi
call fcn.004d3ed0
add esp, 0xc
mov byte [esi + ebx], 0
lea ebx, [esp + 0x1cc]
lea ecx, [esp + 0x10]
push edi
push ebx
call fcn.00492870
cmp byte [esp + 0x20b], 0
jns 0x414e1f
push dword [esp + 0x200]
call fcn.004d05a5
add esp, 4
cmp byte [esp + 0x1d7], 0
jns 0x414e30
mov ebx, dword [esp + 0x1cc]
xor edi, edi
push 0xa
push edi
push ebx
call fcn.004e729a
add esp, 0xc
lea ebx, [esp + 0x1c4]
mov dword [ebx], method.std::Cr::locale::facet.virtual_0
mov dword [ebx + 4], eax
push 0x140
push 0xff
lea esi, [esp + 0x208]
push esi
call fcn.004d4450
add esp, 0xc
mov ecx, esi
push edi
push edi
push edi
push ebx
call fcn.004203b0
lea eax, [esp + 0x1d8]
mov ecx, esi
lea edx, [esp + 0x10]
push edx
push eax
call fcn.00428b70
mov ebx, eax
lea ecx, [esp + 0x58]
push 0x8d
push str.ExecuteAsAdmin
push edi
call fcn.0044c760
lea edi, [esp + 0x94]
mov ecx, edi
push 0x51c6cb
push str.RunModule_results:_success
call fcn.00415500
movzx ebx, bl
lea esi, [esp + 0x1a0]
push ebx
push esi
call fcn.004cbb90
add esp, 8
movzx eax, byte [esi + 0xb]
test al, al
jns 0x414edf
mov eax, dword [esp + 0x1a4]
mov esi, dword [esp + 0x1a0]
mov ecx, edi
push eax
push esi
call fcn.0046ea90
cmp byte [esp + 0x1ab], 0
jns 0x414f01
push dword [esp + 0x1a0]
call fcn.004d05a5
add esp, 4
mov ecx, edi
push 0x51c6d8
push str._error_code
call fcn.00415500
lea esi, [esp + 0x1a0]
push dword [esp + 0x2c0]
push esi
call fcn.004cbb90
add esp, 8
movzx eax, byte [esi + 0xb]
test al, al
jns 0x414f3f
mov eax, dword [esp + 0x1a4]
mov esi, dword [esp + 0x1a0]
mov ecx, edi
push eax
push esi
call fcn.0046ea90
cmp byte [esp + 0x1ab], 0
jns 0x414f61
push dword [esp + 0x1a0]
call fcn.004d05a5
add esp, 4
lea ecx, [esp + 0x58]
call fcn.0044c9f0
lea ecx, [esp + 0x200]
call fcn.00420ca0
lea ecx, [esp + 0x1c4]
call fcn.00411770
cmp byte [esp + 0x1d7], 0
jns 0x414f9b
push dword [esp + 0x1cc]
call fcn.004d05a5
add esp, 4
dec ebx
cmp byte [esp + 0x1e3], 0
jns 0x414fb5
push dword [esp + 0x1d8]
call fcn.004d05a5
add esp, 4
lea ecx, [esp + 0x10]
call fcn.004939c0
cmp byte [esp + 0x1ff], 0
jns 0x414fd7
push dword [esp + 0x1f4]
call fcn.004d05a5
add esp, 4
cmp byte [esp + 0x18b], 0
jns 0x413c87
push dword [esp + 0x180]
call fcn.004d05a5
add esp, 4
jmp 0x413c87
test al, al
je 0x41504a
push 0x178
push 0xff
push esi
call fcn.004d4450
add esp, 0xc
mov ecx, esi
push 1
lea eax, [esp + 0x184]
push eax
lea eax, [esp + 0x60]
push eax
call fcn.0043d8f0
mov ecx, esi
push 0
call fcn.0042f5d0
cmp eax, 1
jne 0x41529c
mov eax, dword [esp + 0x24c]
mov ebx, dword [eax + 0xc0]
jmp 0x4152d2
pcmpeqd xmm0, xmm0
lea esi, [esp + 0x200]
movdqa xmmword [esi + 0x50], xmm0
movdqa xmmword [esi + 0x40], xmm0
movdqa xmmword [esi + 0x30], xmm0
movdqa xmmword [esi + 0x20], xmm0
movdqa xmmword [esi + 0x10], xmm0
movdqa xmmword [esi], xmm0
lea edi, [esp + 0x10]
push edi
call fcn.004341d0
add esp, 4
mov ecx, esi
push edi
push dword [esp + 0xc0]
call fcn.00433c90
mov ecx, esi
push 0
call fcn.0042f5d0
mov ecx, esi
call fcn.00434350
mov ebx, 0x193
jmp 0x4152de
mov esi, ebx
or ebx, 0xf
inc ebx
push ebx
call fcn.004d0575
add esp, 4
mov edi, eax
mov dword [esp + 0x10], eax
or ebx, 0x80000000
mov dword [esp + 0x18], ebx
mov ebx, esi
mov dword [esp + 0x14], esi
cmp edi, str.make_browser_default_after_import
ja 0x4150e4
mov eax, ebx
add eax, edi
cmp eax, str.make_browser_default_after_import
ja 0x4153d1
push ebx
push str.make_browser_default_after_import
push edi
call fcn.004d3ed0
add esp, 0xc
mov byte [edi + ebx], 0
lea ebx, [esp + 0x10]
mov ecx, dword [esp + 4]
push ebx
call fcn.004925d0
movzx eax, al
lea ecx, [esp + 0x200]
push eax
call fcn.00428a30
cmp byte [ebx + 0xb], 0
jns 0x415127
push dword [esp + 0x10]
call fcn.004d05a5
add esp, 4
push str.send_statistics
call fcn.004ec0f0
add esp, 4
cmp eax, 0x7ffffff0
jae 0x415411
mov ecx, eax
cmp eax, 0xa
ja 0x41514f
lea edi, [esp + 0x10]
mov byte [edi + 0xb], cl
jmp 0x41517a
mov ebx, ecx
or ebx, 0xf
inc ebx
push ebx
mov esi, ecx
call fcn.004d0575
mov ecx, esi
add esp, 4
mov edi, eax
mov dword [esp + 0x10], eax
or ebx, 0x80000000
mov dword [esp + 0x18], ebx
lea ebx, [esp + 0x10]
mov dword [esp + 0x14], esi
cmp edi, str.send_statistics
ja 0x415191
mov eax, ecx
add eax, edi
cmp eax, str.send_statistics
ja 0x4153d1
push ecx
push str.send_statistics
push edi
mov esi, ecx
call fcn.004d3ed0
add esp, 0xc
mov byte [edi + esi], 0
mov ecx, dword [esp + 4]
push ebx
call fcn.004925d0
mov ecx, eax
mov al, 1
test cl, cl
jne 0x4151c1
lea ecx, [esp + 0x58]
call fcn.0041abb0
mov byte [esp + 0x275], al
cmp byte [esp + 0x1b], 0
jns 0x4151db
push dword [esp + 0x10]
call fcn.004d05a5
add esp, 4
push str.disableyapin
call fcn.004ec0f0
add esp, 4
cmp eax, 0x7ffffff0
jae 0x415411
mov ecx, eax
cmp eax, 0xa
ja 0x415202
mov byte [esp + 0x1b], cl
mov edi, ebx
jmp 0x41522d
mov esi, ebx
mov ebx, ecx
or ebx, 0xf
inc ebx
push ebx
mov edi, ecx
call fcn.004d0575
mov ecx, edi
add esp, 4
mov edi, eax
mov dword [esp + 0x10], eax
or ebx, 0x80000000
mov dword [esp + 0x18], ebx
mov ebx, esi
mov dword [esp + 0x14], ecx
cmp edi, str.disableyapin
ja 0x415244
mov eax, ecx
add eax, edi
cmp eax, str.disableyapin
ja 0x4153d1
push ecx
push str.disableyapin
push edi
mov esi, ecx
call fcn.004d3ed0
add esp, 0xc
mov byte [edi + esi], 0
mov ecx, dword [esp + 4]
push ebx
call fcn.004925d0
xor al, 1
mov byte [esp + 0x276], al
cmp byte [esp + 0x1b], 0
jns 0x41527f
push dword [esp + 0x10]
call fcn.004d05a5
add esp, 4
lea edi, [esp + 0x200]
mov ecx, edi
call fcn.00420fd0
mov ebx, dword [edi + 0xc0]
mov ecx, edi
call fcn.00420ca0
jmp 0x4152de
lea esi, [esp + 0x10]
mov ecx, esi
push 0x124
push str.wWinMain
push 0
call fcn.0044c760
lea ecx, [esp + 0x4c]
push 0x51c3c1
push str.User_cancelled_installation.
call fcn.00415500
mov ecx, esi
call fcn.0044c9f0
mov ebx, 0x1f4
lea ecx, [esp + 0x200]
call fcn.0043db40
lea ecx, [esp + 0x200]
push 0x138
push str.wWinMain
push 0
call fcn.0044c760
lea edi, [esp + 0x23c]
mov ecx, edi
push 0x51c3f7
push str.Installer_exit_with_code:
call fcn.00415500
lea esi, [esp + 0x10]
push ebx
push esi
call fcn.004cbb90
add esp, 8
movzx eax, byte [esi + 0xb]
test al, al
jns 0x41532c
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
mov ecx, edi
push eax
push esi
call fcn.0046ea90
cmp byte [esp + 0x1b], 0
jns 0x415348
push dword [esp + 0x10]
call fcn.004d05a5
add esp, 4
lea ecx, [esp + 0x200]
call fcn.0044c9f0
cmp byte [esp + 0x1e3], 0
jns 0x41536d
push dword [esp + 0x1d8]
call fcn.004d05a5
add esp, 4
lea ecx, [esp + 0x58]
call fcn.004183f0
lea ecx, [esp + 0x180]
call fcn.0041dc40
cmp byte [esp + 0x387], 0
jns 0x41539b
push dword [esp + 0x37c]
call fcn.004d05a5
add esp, 4
cmp byte [esp + 0x1ff], 0
jns 0x4153b4
push dword [esp + 0x1f4]
call fcn.004d05a5
add esp, 4
lea ecx, [esp + 0x1cc]
call fcn.004357e0
lea ecx, [esp + 0x1a0]
call fcn.00439ad0
jmp 0x413c87
push str.char_traits::copy_overlapped_range
push str.__s2_____s1____s2_____s1__n
push 0xf1
push str....._buildtools_third_partylibc_trunkinclude__stringchar_traits.h
jmp 0x4153fb
push str.node_shouldnt_be_null
push str.__x___nullptr
push 0xcf
push str....._buildtools_third_partylibc_trunkinclude__tree
push str._s:_d:_assertion__s_failed:__s
call fcn.00448430
lea ecx, [esp + 0x200]
call fcn.004154e0
lea ecx, [esp + 0x10]
call fcn.004154e0
int3