Function at 0x140005d20
Capabilities:
Check if file exists
Copy file
Create directory
Create process on windows
Create thread
Get common file path
Get file attributes
Move file
Read file on windows
Set registry value
Write and execute a file
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf08
movaps xmmword [rsp + 0xef0], xmm6
mov rdi, rdx
mov esi, ecx
mov rax, qword [0x140049030]
xor rax, rsp
mov qword [rsp + 0xee8], rax
lea rcx, [0x14003fc7a]
call fcn.140021404
test rax, rax
je 0x140005d6b
cmp byte [rax], 0
setne al
jmp 0x140005d6d
xor eax, eax
mov byte [0x14004bb98], al
lea rcx, str.MOZ_USING_SERVICE
call fcn.14001e280
cmp esi, 3
jg 0x140005dad
mov ecx, 2
call fcn.140015d78
lea rcx, str.Usage:_updater_patch_dir_install_dir_apply_to_dir__wait_pid__callback_working_dir_callback_path_args...___n
mov edx, 0x6a
mov r8d, 1
mov r9, rax
call fcn.140021128
jmp 0x140006b15
lea r14, [rdi + 8]
mov rdx, qword [rdi + 8]
lea rbx, [0x14004b360]
mov r8d, 0x104
mov rcx, rbx
call fcn.14001399c
mov word [0x14004b566], 0
lea r15, [rsp + 0xce0]
mov r8d, 0x208
mov rcx, r15
xor edx, edx
call fcn.1400155d0
lea r8, str._supdate_elevated.lock
mov edx, 0x104
mov rcx, r15
mov r9, rbx
call fcn.140004870
mov al, 1
cmp byte [0x14004bb98], 0
jne 0x140005e2d
lea rcx, [rsp + 0xce0]
call fcn.14001f54c
test eax, eax
je 0x140005e2b
call fcn.14001adb0
cmp dword [rax], 2
setne al
jmp 0x140005e2d
xor eax, eax
mov byte [0x14004bda8], al
mov rcx, qword [r14]
call fcn.140011d00
test al, al
je 0x140006297
mov rcx, qword [rdi + 0x10]
call fcn.140011d00
test al, al
je 0x1400062b0
mov rdx, qword [rdi + 0x10]
lea rbx, [0x14004bba0]
mov r8d, 0x104
mov rcx, rbx
call fcn.14001399c
mov word [0x14004bda6], 0
mov rcx, rbx
mov dx, 0x5c
call fcn.14001590c
test rax, rax
je 0x140005e93
cmp word [rax + 2], 0
jne 0x140005e93
mov word [rax], 0
lea r8, str._s_update.status
lea r9, [0x14004b360]
lea rbx, [rsp + 0x270]
mov edx, 0x104
mov rcx, rbx
call fcn.140004870
lea rdx, [0x1400412ec]
mov rcx, rbx
call fcn.14001f324
test rax, rax
je 0x140005f12
mov r15, rax
xorps xmm0, xmm0
lea rcx, [rsp + 0xad0]
movaps xmmword [rcx + 0x10], xmm0
movaps xmmword [rcx], xmm0
mov edx, 1
mov r8d, 0x1f
mov r9, rax
call fcn.140020e94
mov r12, rax
mov rcx, r15
call fcn.14002088c
test eax, eax
je 0x140006061
xor r13d, r13d
mov rcx, r15
call fcn.1400207a4
jmp 0x140005f15
xor r13d, r13d
xor r15d, r15d
mov qword [rsp + 0x270], r15
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], r15
mov ebp, 2
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], 0
lea rdx, str.SoftwareClassesApplications
mov r12, qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rcx, 0xffffffff80000001
xor r8d, r8d
xor r9d, r9d
call r12
mov rcx, qword [rsp + 0x270]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], 1
lea rdx, str.SoftwareClassesApplicationsupdater.exe
mov rcx, 0xffffffff80000001
xor r8d, r8d
xor r9d, r9d
call r12
test eax, eax
jne 0x14000601a
mov rcx, qword [rsp + 0x270]
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
lea rdx, str.IsHostApp
mov rbx, qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
xor r8d, r8d
xor r9d, r9d
call rbx
mov rcx, qword [rsp + 0x270]
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
lea rdx, str.NoOpenWith
xor r8d, r8d
xor r9d, r9d
call rbx
mov rcx, qword [rsp + 0x270]
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
lea rdx, str.NoStartPage
xor r8d, r8d
xor r9d, r9d
call rbx
mov rcx, qword [rsp + 0x270]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp esi, 5
jb 0x14000605a
mov rcx, qword [rdi + 0x20]
call fcn.14001f644
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x14000615e
mov rcx, qword [rdi + 0x20]
lea rdx, str._replace
call fcn.1400159bc
test rax, rax
je 0x140006168
lea rax, [0x14004bda9]
jmp 0x140006165
xor ebx, ebx
jmp 0x140006168
mov byte [rsp + r12 + 0xad0], 0
lea r12, [rsp + 0xad0]
mov rcx, r12
mov edx, 0x3a
call fcn.140015760
mov r13, rax
test rax, rax
jne 0x1400060b4
lea rcx, [rsp + 0xad0]
mov edx, 0xa
call fcn.140015760
test rax, rax
jne 0x1400060b4
lea rcx, [rsp + 0xad0]
call fcn.140021cf0
add rax, rsp
add rax, 0xad0
sub rax, r12
cmp rax, 0xf
jne 0x1400060ea
movabs rax, 0x2d676e69646e6570
xor rax, qword [rsp + 0xad0]
movabs rcx, 0x656369767265732d
xor rcx, qword [rsp + 0xad7]
or rcx, rax
je 0x140006a5a
test r13, r13
jne 0x140006121
lea rcx, [rsp + 0xad0]
mov edx, 0xa
call fcn.140015760
mov r13, rax
test rax, rax
jne 0x140006121
lea rcx, [rsp + 0xad0]
call fcn.140021cf0
lea r13, [rsp + rax]
add r13, 0xad0
sub r13, r12
cmp r13, 0xf
jne 0x140005f05
movabs rax, 0x2d6465696c707061
xor rax, qword [rsp + 0xad0]
movabs rcx, 0x656369767265732d
xor rcx, qword [rsp + 0xad7]
or rcx, rax
sete r13b
jmp 0x140005f08
lea rax, [0x14004b568]
mov byte [rax], 1
mov rcx, qword [rdi + 0x18]
call fcn.140011d00
test al, al
je 0x140006968
mov rdx, qword [rdi + 0x18]
lea r15, [0x14004b570]
mov r8d, 0x104
mov rcx, r15
call fcn.14001399c
mov word [0x14004b776], 0
mov rcx, r15
mov dx, 0x5c
call fcn.14001590c
test rax, rax
je 0x1400061b8
cmp word [rax + 2], 0
jne 0x1400061b8
mov word [rax], 0
cmp esi, 7
jb 0x1400062ff
mov rcx, qword [rdi + 0x30]
call fcn.140011d00
test al, al
je 0x140006a8a
mov ebp, r13d
lea r15, [0x14004bba0]
mov rcx, r15
call fcn.140013868
mov r12, rax
lea r13, [rsp + 0x270]
mov r8d, 0x208
mov rcx, r13
xor edx, edx
call fcn.1400155d0
mov rdx, qword [rdi + 0x30]
mov rcx, r13
mov r8, r12
call fcn.14001399c
mov rcx, r15
mov rdx, r13
call fcn.1400224ec
test eax, eax
jne 0x140006acb
cmp esi, 8
jb 0x140006277
lea r12d, [rsi - 6]
dec r12
xor r13d, r13d
lea r15, str.backgroundtask
mov rcx, qword [rdi + r13*8 + 0x38]
test rcx, rcx
je 0x14000626f
movzx eax, word [rcx]
cmp eax, 0x2f
je 0x140006255
cmp eax, 0x2d
jne 0x14000626f
cmp word [rcx + 2], 0x2d
je 0x14000625b
add rcx, 2
jmp 0x14000625f
add rcx, 4
mov rdx, r15
call fcn.1400224ec
test eax, eax
je 0x1400062f4
inc r13
cmp r12, r13
jne 0x140006237
lea rcx, str.MOZ_APP_SILENT_START
call fcn.140021404
test rax, rax
mov r13d, ebp
je 0x140006293
cmp byte [rax], 0
setne al
jmp 0x1400062f9
xor eax, eax
jmp 0x1400062f9
mov rsi, qword [r14]
mov ecx, 2
call fcn.140015d78
lea rdx, str.The_patch_directory_path_is_not_valid_for_this_application___S__n
jmp 0x140006b0a
lea r8, str.failed:__d_n
lea rsi, [rsp + 0x270]
mov edx, 0x20
mov rcx, rsi
mov r9d, 0x4b
call fcn.140001000
mov rcx, rsi
call fcn.140008550
mov rsi, qword [rdi + 0x10]
mov ecx, 2
call fcn.140015d78
lea rdx, str.The_install_directory_path_is_not_valid_for_this_application___S__n
jmp 0x140006b0a
mov al, 1
mov r13d, ebp
mov byte [0x14004bdaa], al
lea rcx, [rsp + 0xad0]
mov r8d, 0x20a
xor edx, edx
call fcn.1400155d0
cmp byte [0x14004bda8], 0
je 0x140006345
lea r15, [0x14004b360]
mov rcx, r15
call fcn.1400123d0
lea rdx, [0x140041066]
lea r8, [rsp + 0xad0]
mov rcx, r15
call fcn.140012230
jmp 0x140006365
lea r8, str._supdate.log
lea r9, [0x14004b360]
lea rcx, [rsp + 0xad0]
mov edx, 0x105
call fcn.140004870
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007e35
lea rcx, [0x14004bfb8]
lea rdx, [rsp + 0xad0]
call fcn.140011760
lea rcx, str.applying
call fcn.140008550
test al, al
je 0x1400063e5
cmp byte [0x14004b568], 1
jne 0x140006427
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007f7a
lea r15, str.Performing_a_staged_update
jmp 0x14000645c
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007e76
lea rcx, [0x14004bfb8]
lea rdx, str.failed_setting_status_to_applying
call fcn.1400117c0
call fcn.140008660
jmp 0x140006b15
cmp byte [0x14004bda9], 1
jne 0x14000646b
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007f8f
lea r15, str.Performing_a_replace_request
lea rcx, [0x14004bfb8]
mov rdx, r15
call fcn.1400117c0
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007eb7
lea rcx, [0x14004bfb8]
lea rdx, str.PATCH_DIRECTORY__S
lea r8, [0x14004b360]
call fcn.1400117c0
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007ef8
lea rcx, [0x14004bfb8]
lea rdx, str.INSTALLATION_DIRECTORY__S
lea r8, [0x14004bba0]
call fcn.1400117c0
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007f39
lea rcx, [0x14004bfb8]
lea rdx, str.WORKING_DIRECTORY__S
lea r12, [0x14004b570]
mov r8, r12
call fcn.1400117c0
lea rdx, [0x14004bba0]
mov r8d, 0x104
mov rcx, r12
call fcn.14001f140
test eax, eax
je 0x140006612
cmp byte [0x14004b568], 0
jne 0x14000655e
cmp byte [0x14004bda9], 0
je 0x140006906
lea r8, [0x140040b78]
lea r9, [0x14004b570]
lea r12, [rsp + 0x270]
mov edx, 0x104
mov rcx, r12
call fcn.140004870
mov rcx, r12
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
test eax, eax
je 0x140006896
lea rdx, [0x14004bba0]
lea rcx, [rsp + 0x270]
mov r8d, 0x104
call fcn.14001f140
test eax, eax
je 0x140006612
lea r8, str.failed:__d_n
lea rsi, [rsp + 0x8c0]
mov edx, 0x20
mov rcx, rsi
mov r9d, 0x48
call fcn.140001000
mov rcx, rsi
call fcn.140008550
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007fd7
lea rcx, [0x14004bfb8]
lea rdx, str.The_apply_to_directory_must_be_the_same_as_or_a_child_of_the_installation_directory__Exiting.
jmp 0x140006418
test rbx, rbx
jle 0x140006684
mov ecx, 0x100000
xor edx, edx
mov r8d, ebx
call qword [sym.imp.KERNEL32.dll_OpenProcess]
test rax, rax
je 0x140006684
mov rbx, rax
mov rcx, rax
mov edx, 0x7530
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebp, eax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebp, ebp
je 0x140006684
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400080db
lea rcx, [0x14004bfb8]
lea rdx, str.The_parent_process_didnt_exit__Continuing_with_update.
call fcn.1400117c0
cmp byte [0x14004bda9], 0
jne 0x140006696
cmp byte [0x14004b568], 1
jne 0x1400066cd
lea rbx, [rsp + 0x270]
mov r8d, 0x20a
mov rcx, rbx
xor edx, edx
call fcn.1400155d0
mov rcx, rbx
mov edx, 0x105
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
test eax, eax
je 0x1400066cd
lea rcx, [rsp + 0x270]
call fcn.14001ea94
mov rbp, 0xffffffffffffffff
cmp byte [0x14004bb98], 0
je 0x140006862
cmp byte [0x14004b568], 1
jne 0x1400066f8
lea rcx, [0x14004b570]
xor edx, edx
call fcn.140008850
cmp byte [0x14004bda9], 0
jne 0x14000671f
lea rcx, [0x14004b570]
call fcn.14001f454
test eax, eax
je 0x14000671f
call fcn.14001adb0
cmp dword [rax], 0x11
jne 0x14000641d
lea rcx, [0x14004b570]
lea rdx, [rsp + 0x8c0]
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_GetLongPathNameW]
test eax, eax
je 0x1400069ac
mov r12, 0xffffffffffffffff
cmp esi, 7
jb 0x140006b7e
lea rcx, [rsp + 0x680]
mov r12d, 0x208
mov r8d, 0x208
xor edx, edx
call fcn.1400155d0
lea rbx, [rdi + 0x30]
mov r14, qword [rdi + 0x30]
lea r15, [rsp + 0x270]
mov r8d, 0x410
mov rcx, r15
xor edx, edx
call fcn.1400155d0
cmp byte [0x14004bda9], 1
jne 0x140006b48
mov rcx, r14
lea rdx, [0x14004bba0]
xor r8d, r8d
call qword [sym.imp.SHLWAPI.dll_PathCommonPrefixW]
movsxd r14, eax
mov rdx, qword [rbx]
mov rcx, r15
mov r8, r14
call fcn.14001399c
mov qword [rsp + 0x48], rbp
lea rbp, [rsp + r14*2]
add rbp, 0x270
sub r12, r14
mov r13, rbx
lea rax, [0x14004bba0]
lea rbx, [rax + r14*2]
mov rcx, rbp
mov rdx, rbx
mov r8, r12
call fcn.14001399c
mov rcx, rbx
call fcn.140013868
lea rbx, [rax*2 + 2]
add rbx, rbp
mov dword [rbx - 2], 0x5c
not rax
add r12, rax
lea rbp, [rsp + 0x60]
mov rcx, rbp
lea rdx, [0x14004bba0]
call fcn.1400137d0
mov rcx, qword [r13]
mov rdx, rbp
mov rbp, qword [rsp + 0x48]
xor r8d, r8d
call qword [sym.imp.SHLWAPI.dll_PathCommonPrefixW]
cmp eax, r14d
cmova r14d, eax
movsxd rdx, r14d
add rdx, rdx
add rdx, qword [r13]
mov rcx, rbx
mov rbx, r13
lea r13, [rsp + 0x270]
mov r8, r12
call fcn.14001399c
jmp 0x140006b4b
mov al, byte [0x14004b568]
cmp esi, 6
jbe 0x140006a62
test al, 1
jne 0x140006a6a
cmp byte [0x14004bda9], 1
je 0x140006dd8
mov r9, qword [rdi + 0x30]
lea r8, str._s.update_in_progress.lock
jmp 0x140006a78
lea r8, str.failed:__d_n
lea rsi, [rsp + 0x8c0]
mov edx, 0x20
mov rcx, rsi
mov r9d, 0x47
call fcn.140001000
mov rcx, rsi
call fcn.140008550
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008018
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [0x14004bfb8]
lea rdx, str.Error_calling_PathRemoveFileSpecW:__lu
mov r8d, eax
call fcn.1400117c0
jmp 0x14000641d
lea r8, str.failed:__d_n
lea rsi, [rsp + 0x270]
mov edx, 0x20
mov rcx, rsi
mov r9d, 0x4a
call fcn.140001000
mov rcx, rsi
call fcn.140008550
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008059
lea rcx, [0x14004bfb8]
lea rdx, str.Installation_directory_and_working_directory_must_be_the_same_for_non_staged_updates._Exiting.
jmp 0x140006418
lea r8, str.failed:__d_n
lea rsi, [rsp + 0x270]
mov edx, 0x20
mov rcx, rsi
mov r9d, 0x4c
call fcn.140001000
mov rcx, rsi
call fcn.140008550
mov rsi, qword [rdi + 0x18]
mov ecx, 2
call fcn.140015d78
lea rdx, str.The_working_directory_path_is_not_valid_for_this_application___S__n
jmp 0x140006b0a
lea r8, str.failed:__d_n
lea r14, [rsp + 0x270]
mov edx, 0x20
mov rcx, r14
mov r9d, 0x41
call fcn.140001000
mov rcx, r14
call fcn.140008550
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000809a
lea rcx, [0x14004bfb8]
lea rdx, str.NS_main:_unable_to_find_apply_to_dir:__S
lea r8, [0x14004b570]
call fcn.1400117c0
call fcn.140008660
cmp rbp, 0xffffffffffffffff
je 0x140006a29
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xce0]
call fcn.14001f54c
test eax, eax
je 0x140006da6
call fcn.14001adb0
cmp esi, 7
jb 0x140006b15
cmp dword [rax], 2
je 0x140006daf
jmp 0x140006b15
mov r13b, 1
jmp 0x140005f08
test al, 1
je 0x140006dcb
lea r8, str._s_updated.update_in_progress.lock
lea r9, [0x14004bba0]
lea rcx, [rsp + 0x8c0]
mov edx, 0x104
jmp 0x140006e17
lea r8, str.failed:__d_n
lea rsi, [rsp + 0x270]
mov edx, 0x20
mov rcx, rsi
mov r9d, 0x4d
call fcn.140001000
mov rcx, rsi
call fcn.140008550
mov rsi, qword [rdi + 0x30]
mov ecx, 2
call fcn.140015d78
lea rdx, str.The_callback_file_path_is_not_valid_for_this_application___S__n
jmp 0x140006b0a
lea r8, str.failed:__d_n
lea rsi, [rsp + 0xad0]
mov edx, 0x20
mov rcx, rsi
mov r9d, 0x4e
call fcn.140001000
mov rcx, rsi
call fcn.140008550
mov rsi, qword [rdi + 0x30]
mov ecx, 2
call fcn.140015d78
lea rdx, str.The_callback_file_must_be_located_in_the_installation_directory___S__n
mov rcx, rax
mov r8, rsi
call fcn.1400356a0
mov esi, 1
mov rcx, qword [rsp + 0xee8]
xor rcx, rsp
call fcn.140026460
mov eax, esi
movaps xmm6, xmmword [rsp + 0xef0]
add rsp, 0xf08
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r13, r14
lea rdx, [rsp + 0x680]
mov rcx, r13
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_GetLongPathNameW]
test eax, eax
je 0x1400070b0
mov r12, 0xffffffffffffffff
cmp byte [0x14004bda9], 0
je 0x140007168
cmp byte [0x14004b568], 0
jne 0x140006bd8
cmp byte [0x14004bda9], 0
jne 0x140006bd8
lea rax, str.tobedeleted
mov qword [rsp + 0x20], rax
lea rbx, [0x14004bdb0]
lea r8, str._s__s
lea r9, [0x14004b570]
mov edx, 0x104
mov rcx, rbx
call fcn.140004870
mov rcx, rbx
xor edx, edx
call fcn.14001e9d4
test eax, eax
je 0x140006bd8
lea rcx, [0x14004bdb0]
call fcn.14001f454
lea rax, [0x140008ad0]
lea rbx, [rsp + 0x270]
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], 0
lea rax, [rsp + 0x680]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
lea r8, [0x14000b1a0]
xor ecx, ecx
xor edx, edx
mov r9, rbx
call fcn.140019fa4
mov qword [rbx], rax
test rax, rax
je 0x140006c4f
cmp byte [0x14004b568], 0
jne 0x140006c4f
cmp byte [0x14004bda9], 0
jne 0x140006c4f
cmp byte [0x14004bdaa], 0
jne 0x140006c4f
xor ecx, ecx
mov dl, 1
call fcn.140001f70
mov rax, qword [rsp + 0x270]
mov rcx, rax
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x270]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, 7
jb 0x140006ce1
cmp byte [0x14004bda9], 0
jne 0x140006ce1
cmp r12, 0xffffffffffffffff
je 0x140006c88
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [0x14004b990]
call fcn.14001f54c
test eax, eax
je 0x140006ce1
call fcn.14001adb0
cmp dword [rax], 2
je 0x140006ce1
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008276
lea rcx, [0x14004bfb8]
lea rdx, str.NS_main:_non_fatal_error_removing_backup_of_callback_app_file__path:__S
lea r8, [0x14004b990]
call fcn.1400117c0
cmp byte [0x14004b568], 0
jne 0x140007459
cmp byte [0x14004bda9], 0
jne 0x140007459
lea rcx, [0x14004bdb0]
call fcn.14001f5a4
test eax, eax
je 0x140007459
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400081df
call fcn.14001adb0
mov r9d, dword [rax]
lea rcx, [0x14004bfb8]
lea rdx, str.NS_main:_unable_to_remove_directory:__S__err:__d
lea r8, str.tobedeleted
call fcn.1400117c0
lea rcx, [0x14004bdb0]
xor edx, edx
mov r8d, 4
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
mov ecx, dword [0x14004c1c8]
mov edx, dword [0x140049f80]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
mov edx, dword [rdx + 4]
test eax, eax
je 0x140007434
cmp ecx, edx
jg 0x140008261
lea r14, str.NS_main:_directory_will_be_removed_on_OS_reboot:__S
jmp 0x140007443
cmp esi, 7
jb 0x140006b15
mov r9b, byte [0x14004bb98]
add esi, 0xfffffffa
mov rcx, qword [rdi + 0x28]
add rdi, 0x30
mov edx, esi
mov r8, rdi
jmp 0x14000715e
cmp byte [0x14004bda9], 1
jne 0x140006701
lea rdx, [0x14004bba0]
lea rbx, [rsp + 0x270]
mov rcx, rbx
call fcn.1400137d0
mov rcx, rbx
mov dx, 0x5c
call fcn.14001590c
mov word [rax], 0
lea r8, str._smoz_update_in_progress.lock
lea rcx, [rsp + 0x8c0]
mov edx, 0x104
mov r9, rbx
call fcn.140004870
lea rcx, [rsp + 0x8c0]
call fcn.14001f54c
test eax, eax
je 0x140006e3b
call fcn.14001adb0
cmp dword [rax], 2
jne 0x140007097
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x4000000
mov dword [rsp + 0x20], 4
lea rcx, [rsp + 0x8c0]
mov edx, 0xc0000000
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbp, rax
lea rcx, [rsp + 0xce0]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140006e97
lea rdx, str.SeAssignPrimaryTokenPrivilege
mov r8d, 0x22
xor ecx, ecx
call fcn.140011430
cmp rbp, 0xffffffffffffffff
jne 0x1400066e1
lea rcx, [rsp + 0xce0]
call fcn.14001f54c
test eax, eax
je 0x140006ec0
call fcn.14001adb0
cmp dword [rax], 2
jne 0x1400072f4
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x4000000
mov dword [rsp + 0x20], 4
lea rcx, [rsp + 0xce0]
mov edx, 0xc0000000
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
je 0x1400072f4
mov r15, rax
lea edx, [rsi - 1]
lea rbx, [rsp + 0x58]
mov rcx, rbx
mov r8, r14
call fcn.140001090
mov rbx, qword [rbx]
test rbx, rbx
je 0x140007507
test r13b, r13b
je 0x140007a13
lea rcx, [0x14004bba0]
call fcn.140011990
test al, al
je 0x140007a13
lea rdx, [rsp + 0x270]
mov dword [rdx], 0
mov rcx, qword [rdi]
call fcn.140012bf0
test eax, eax
je 0x140007a13
cmp dword [rsp + 0x270], 0
je 0x140007a13
lea rcx, [rsp + 0x270]
call fcn.140012c90
test eax, eax
je 0x140006f86
cmp dword [rsp + 0x270], 0
jne 0x140007a13
lea rcx, [0x14004bba0]
lea rdx, [rsp + 0x270]
call fcn.140001270
test eax, eax
je 0x140007a13
lea rax, [rsp + 0x680]
mov qword [rax], 0
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x270]
mov rcx, 0xffffffff80000002
xor r8d, r8d
mov r9d, 0x20119
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140006fe6
mov rcx, qword [rsp + 0x680]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x690], xmm0
movaps xmmword [rsp + 0x680], xmm0
mov qword [rsp + 0x69d], 0
xor ebp, ebp
lea r14, [rsp + 0x270]
mov r8d, 0x20a
mov rcx, r14
xor edx, edx
call fcn.1400155d0
lea rcx, [0x14004b360]
lea rdx, [0x140041292]
mov r8, r14
call fcn.140012230
test eax, eax
je 0x140007783
lea rdx, [0x1400412ec]
lea rcx, [rsp + 0x270]
call fcn.14001f324
test rax, rax
je 0x140007781
mov r14, rax
lea rcx, [rsp + 0x680]
mov edx, 0x24
mov r8d, 1
mov r9, rax
call fcn.140020e94
cmp rax, 1
sete bpl
jne 0x14000708a
mov byte [rsp + 0x6a4], 0
mov rcx, r14
call fcn.1400207a4
jmp 0x140007783
cmp byte [0x14004bda9], 1
jne 0x140007289
lea rcx, str.pending
jmp 0x1400072b7
mov r14, rbx
lea r8, str.failed:__d_n
lea rbx, [rsp + 0x60]
mov edx, 0x20
mov rcx, rbx
mov r9d, 0x42
call fcn.140001000
mov rcx, rbx
call fcn.140008550
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000815d
lea rcx, [0x14004bfb8]
lea rdx, str.NS_main:_unable_to_find_callback_file:__S
mov r8, r13
call fcn.1400117c0
call fcn.140008660
cmp rbp, 0xffffffffffffffff
mov rbx, r14
je 0x14000712c
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xce0]
call fcn.14001f54c
test eax, eax
je 0x14000714b
call fcn.14001adb0
cmp dword [rax], 2
jne 0x140006b15
mov r9b, byte [0x14004bb98]
add esi, 0xfffffffa
mov rcx, qword [rdi + 0x28]
mov edx, esi
mov r8, rbx
call fcn.140005ba0
jmp 0x140006b15
lea rcx, [rsp + 0x8c0]
call fcn.140013868
movsxd rcx, eax
lea rax, [rsp + rcx*2]
add rax, 0x680
xor edx, edx
cmp word [rax], 0x5c
sete dl
movzx eax, word [rax + rdx*2]
add rdx, rdx
lea rcx, [rdx + rcx*2]
lea rdx, [rsp + rcx]
add rdx, 0x682
xor ecx, ecx
lea r8, [0x14004b780]
mov r9d, 0x2f
cmp ax, 0x5c
cmove eax, r9d
mov word [rcx + r8], ax
movzx eax, word [rdx + rcx]
add rcx, 2
test ax, ax
jne 0x1400071b0
mov word [rcx + r8], 0
mov r9, qword [rbx]
lea rcx, [0x14004b990]
lea r8, str._s.moz_callback
mov edx, 0x104
call fcn.140004870
cmp eax, 0x104
jb 0x14000732c
lea r8, str.failed:__d_n
lea rsi, [rsp + 0x60]
mov edx, 0x20
mov rcx, rsi
mov r9d, 3
call fcn.140001000
mov rcx, rsi
call fcn.140008550
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008220
lea rcx, [0x14004bfb8]
lea rdx, str.NS_main:_callback_backup_path_truncated
call fcn.1400117c0
call fcn.140008660
cmp rbp, 0xffffffffffffffff
je 0x14000726a
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xce0]
call fcn.14001f54c
test eax, eax
je 0x140006b15
call fcn.14001adb0
jmp 0x140006b15
cmp byte [0x14004b568], 1
jne 0x1400072bc
lea r8, str.failed:__d_n
lea rsi, [rsp + 0x270]
mov edx, 0x20
mov rcx, rsi
mov r9d, 0x2c
call fcn.140001000
mov rcx, rsi
call fcn.140008550
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000811c
lea rcx, [0x14004bfb8]
lea rdx, str.Update_already_in_progress__Exiting
jmp 0x140006418
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000819e
lea rcx, [0x14004bfb8]
lea rdx, str.Unable_to_create_elevated_lock_file__Exiting
jmp 0x140006418
mov rcx, qword [rbx]
lea rdx, [0x14004b990]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x140007515
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x48], rbp
mov r15d, 1
lea r14, str.NS_main:_callback_app_file_open_attempt__d_failed._File:__S._Last_error:__lu
mov rbx, qword [sym.imp.KERNEL32.dll_Sleep]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 3
mov rcx, r13
mov edx, 0x40010000
mov r8d, 6
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
jne 0x140007543
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400073fa
mov dword [rsp + 0x20], ebp
lea rcx, [0x14004bfb8]
mov rdx, r14
mov r8d, r15d
mov r9, r13
call fcn.1400117c0
mov ecx, 0x64
call rbx
inc r15d
cmp r15d, 0xb
jne 0x140007365
jmp 0x140007550
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x1400073c8
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x1400073c8
cmp ecx, edx
jg 0x1400082b7
lea r14, str.NS_main:_failed_to_schedule_OS_reboot_removal_of_directory:__S
lea rcx, [0x14004bfb8]
lea r8, str.tobedeleted
mov rdx, r14
call fcn.1400117c0
call fcn.140008660
cmp esi, 7
jb 0x1400074f8
cmp byte [0x14004bb9a], 1
jne 0x1400074b2
call fcn.140005780
test al, al
jne 0x14000749d
mov ecx, 2
call fcn.140015d78
lea rcx, str.The_post_update_process_was_not_launched
mov edx, 0x28
mov r8d, 1
mov r9, rax
call fcn.140021128
cmp byte [0x14004bb98], 0
jne 0x1400074b2
lea rcx, [0x14004bba0]
call fcn.140012560
cmp rbp, 0xffffffffffffffff
je 0x1400074c1
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xce0]
call fcn.14001f54c
test eax, eax
je 0x1400074dc
call fcn.14001adb0
cmp dword [rax], 2
jne 0x1400074f8
mov r9b, byte [0x14004bb98]
add esi, 0xfffffffa
mov rcx, qword [rdi + 0x28]
add rdi, 0x30
mov edx, esi
mov r8, rdi
call fcn.140005ba0
movzx esi, byte [0x14004bb9a]
xor esi, 1
jmp 0x140006b1a
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x14000641d
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r8, str.failed:__d_n
lea rdi, [rsp + 0x60]
mov edx, 0x20
mov rcx, rdi
cmp eax, 5
jne 0x1400075d9
mov r9d, 0x23
jmp 0x1400075df
mov r12, rax
mov rbp, qword [rsp + 0x48]
jmp 0x140006b7e
cmp ebp, 0x20
jne 0x140007673
cmp byte [0x14004bdaa], 0
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov ecx, dword [rcx + 4]
mov rbp, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x50]
je 0x14000775e
cmp eax, ecx
jg 0x140008403
mov r8, qword [rbx]
lea rcx, [0x14004bfb8]
lea rdx, str.NS_main:_callback_app_file_in_use__failed_to_exclusively_open_executable_file_from_background_task:__S
call fcn.1400117c0
lea r8, str.failed:__d_n
lea rbx, [rsp + 0x60]
mov edx, 0x20
mov rcx, rbx
mov r9d, 0x6a
call fcn.140001000
mov rcx, rbx
call fcn.140008550
jmp 0x1400076ec
mov r9d, 0x25
call fcn.140001000
mov rcx, rdi
call fcn.140008550
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400082ff
mov r8, qword [rbx]
lea rcx, [0x14004bfb8]
lea rdx, str.NS_main:_failed_to_copy_callback_file__S_into_place_at__S
lea r9, [0x14004b990]
call fcn.1400117c0
call fcn.140008660
cmp rbp, 0xffffffffffffffff
je 0x140007642
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0xce0]
call fcn.14001f54c
test eax, eax
je 0x140007661
call fcn.14001adb0
cmp dword [rax], 2
jne 0x140006b15
mov r9b, byte [0x14004bb98]
add esi, 0xfffffffa
mov rcx, qword [rbx]
jmp 0x140007159
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
mov rbx, qword [rsp + 0x50]
jg 0x1400083c2
mov r8, qword [rbx]
lea rcx, [0x14004bfb8]
lea rdx, str.NS_main:_callback_app_file_in_use__failed_to_exclusively_open_executable_file:__S
call fcn.1400117c0
lea r8, str.failed:__d_n
lea rbx, [rsp + 0x60]
mov edx, 0x20
mov rcx, rbx
cmp ebp, 5
jne 0x1400076d4
mov r9d, 0x23
jmp 0x1400076da
mov r9d, 0x25
call fcn.140001000
mov rcx, rbx
call fcn.140008550
mov rbp, qword [rsp + 0x48]
lea rcx, [0x14004b990]
call fcn.14001f54c
test eax, eax
mov rbx, qword [rsp + 0x50]
je 0x14000774a
call fcn.14001adb0
cmp dword [rax], 2
je 0x14000774a
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008444
lea rcx, [0x14004bfb8]
lea rdx, str.NS_main:_unable_to_remove_backup_of_callback_app_file__path:__S
lea r8, [0x14004b990]
call fcn.1400117c0
call fcn.140008660
cmp rbp, 0xffffffffffffffff
jne 0x140007123
jmp 0x14000712c
cmp eax, ecx
jg 0x140008485
mov r8, qword [rbx]
lea rcx, [0x14004bfb8]
lea rdx, str.NS_main:_callback_app_file_in_use__continuing_without_exclusive_access_for_executable_file:__S
call fcn.1400117c0
jmp 0x140006b7e
xor ebp, ebp
lea r8, str.failed:__d_n
lea r14, [rsp + 0x270]
mov edx, 0x20
mov rcx, r14
mov r9d, 0x3a
call fcn.140001000
mov rcx, r14
call fcn.140008550
mov ecx, esi
mov rdx, rdi
call fcn.140012a90
test eax, eax
jne 0x140007a13
xor r12d, r12d
cmp byte [0x14004b568], 0
jne 0x1400077df
cmp byte [0x14004bdaa], 0
jne 0x1400077df
call fcn.140001eb0
test eax, eax
sete r12b
lea rcx, str.MozillaMaintenance
mov edx, 5
call fcn.140012870
cmp eax, 1
je 0x140007874
lea rax, [0x140008820]
lea r14, [rsp + 0x270]
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], 0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
lea r8, [0x14000b1a0]
xor ecx, ecx
xor edx, edx
mov r9, r14
call fcn.140019fa4
mov qword [r14], rax
test rax, rax
sete cl
xor r12b, 1
or r12b, cl
jne 0x140007858
mov cl, 1
xor edx, edx
call fcn.140001f70
mov rax, qword [rsp + 0x270]
mov rcx, rax
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x270]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, str.MozillaMaintenance
mov edx, 1
call fcn.140012870
cmp eax, 1
jne 0x140007a13
mov byte [0x14004bb99], 1
xorps xmm0, xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x7d], 0
test bpl, bpl
je 0x1400079a2
lea r14, [rsp + 0x270]
mov r8d, 0x20a
mov rcx, r14
xor edx, edx
call fcn.1400155d0
lea rcx, [0x14004b360]
lea rdx, [0x140041292]
mov r8, r14
call fcn.140012230
test eax, eax
je 0x140007995
lea rdx, [0x1400412ec]
lea rcx, [rsp + 0x270]
call fcn.14001f324
test rax, rax
je 0x140007995
mov r14, rax
lea rcx, [rsp + 0x60]
mov edx, 0x24
mov r8d, 1
mov r9, rax
call fcn.140020e94
cmp rax, 1
jne 0x14000798d
lea r12, [rsp + 0x60]
mov byte [r12 + 0x24], 0
mov rcx, r14
call fcn.1400207a4
lea rcx, [rsp + 0x680]
mov r8d, 0x25
mov rdx, r12
call fcn.140021db0
test eax, eax
jne 0x140007995
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008507
lea rcx, [0x14004bfb8]
lea rdx, str.The_secure_ID_hasnt_changed_after_launching_the_updater_using_the_service
jmp 0x140007d48
mov rcx, r14
call fcn.1400207a4
cmp byte [0x14004bb99], 1
jne 0x140007d87
cmp byte [0x14004b568], 0
jne 0x140007d87
xor eax, eax
lea r8, [rsp + 0x270]
mov byte [r8], al
mov byte [r8 + 4], al
lea rcx, [0x14003edc3]
lea rdx, [rsp + 0x890]
call fcn.14000b1c0
test al, al
je 0x140007d87
cmp byte [rsp + 0x890], 0
je 0x140007d87
cmp byte [rsp + 0x274], 0
je 0x140007d87
mov eax, dword [rsp + 0x270]
lea ecx, [rax - 0x18]
cmp ecx, 0xa
jb 0x140007a13
add eax, 0xffffffcf
cmp eax, 9
ja 0x140007d87
cmp byte [0x14004b568], 1
jne 0x140007a88
lea r8, str.failed:__d_n
lea rsi, [rsp + 0x270]
mov edx, 0x20
mov rcx, rsi
mov r9d, 0x2b
call fcn.140001000
mov rcx, rsi
call fcn.140008550
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008340
lea rcx, [0x14004bfb8]
lea rdx, str.Non_critical_update_staging_error__Falling_back_to_non_staged_updates_and_exiting
call fcn.1400117c0
call fcn.140008660
jmp 0x140007dbf
cmp byte [0x14004bdaa], 0
je 0x140007afd
lea r8, str.failed:__d_n
lea r14, [rsp + 0x270]
mov edx, 0x20
mov rcx, r14
mov r9d, 0x69
call fcn.140001000
mov rcx, r14
call fcn.140008550
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008381
lea rcx, [0x14004bfb8]
lea rdx, str.Skipping_update_to_avoid_UAC_prompt_from_background_task.
call fcn.1400117c0
call fcn.140008660
jmp 0x140007da3
xorps xmm6, xmm6
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm6
mov qword [rsp + 0x7d], 0
xor ebp, ebp
lea r14, [rsp + 0x270]
mov r8d, 0x20a
mov rcx, r14
xor edx, edx
call fcn.1400155d0
lea rcx, [0x14004b360]
lea rdx, [0x140041292]
mov r8, r14
call fcn.140012230
test eax, eax
je 0x140007b99
lea rdx, [0x1400412ec]
lea rcx, [rsp + 0x270]
call fcn.14001f324
test rax, rax
je 0x140007b97
mov r14, rax
lea rcx, [rsp + 0x60]
mov edx, 0x24
mov r8d, 1
mov r9, rax
call fcn.140020e94
cmp rax, 1
sete bpl
jne 0x140007b8d
mov byte [rsp + 0x84], 0
mov rcx, r14
call fcn.1400207a4
jmp 0x140007b99
xor ebp, ebp
lea r8, str.failed:__d_n
lea r14, [rsp + 0x270]
mov edx, 0x20
mov rcx, r14
mov r9d, 0x4f
call fcn.140001000
mov rcx, r14
call fcn.140008550
xor eax, eax
lea rcx, [rsp + 0x680]
mov qword [rcx + 0x68], rax
movups xmmword [rcx + 0x58], xmm6
movups xmmword [rcx + 0x48], xmm6
movups xmmword [rcx + 0x38], xmm6
movups xmmword [rcx + 0x28], xmm6
movabs rdx, 0x54000000070
mov qword [rcx], rdx
mov qword [rcx + 8], rax
mov rax, qword [rdi]
mov qword [rcx + 0x18], rax
mov qword [rcx + 0x20], rbx
lea rax, str.runas
mov qword [rcx + 0x10], rax
mov dword [rcx + 0x30], 1
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140007d56
mov rcx, qword [rsp + 0x6e8]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x6e8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov byte [0x14004bb99], 1
xorps xmm0, xmm0
movaps xmmword [rsp + 0x8a0], xmm0
movaps xmmword [rsp + 0x890], xmm0
mov qword [rsp + 0x8ad], 0
test bpl, bpl
je 0x140007d87
lea r14, [rsp + 0x270]
mov r8d, 0x20a
mov rcx, r14
xor edx, edx
call fcn.1400155d0
lea rcx, [0x14004b360]
lea rdx, [0x140041292]
mov r8, r14
call fcn.140012230
test eax, eax
je 0x140007d87
lea rdx, [0x1400412ec]
lea rcx, [rsp + 0x270]
call fcn.14001f324
test rax, rax
je 0x140007d87
mov r14, rax
lea rcx, [rsp + 0x890]
mov edx, 0x24
mov r8d, 1
mov r9, rax
call fcn.140020e94
cmp rax, 1
jne 0x140007e28
lea r12, [rsp + 0x890]
mov byte [r12 + 0x24], 0
mov rcx, r14
call fcn.1400207a4
lea rcx, [rsp + 0x60]
mov r8d, 0x25
mov rdx, r12
call fcn.140021db0
test eax, eax
jne 0x140007d87
mov eax, dword [0x14004c1c8]
mov ecx, dword [0x140049f80]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400084c6
lea rcx, [0x14004bfb8]
lea rdx, str.The_secure_ID_hasnt_changed_after_launching_the_updater_using_runas
call fcn.1400117c0
mov byte [0x14004bb99], 0
jmp 0x140007d87
mov byte [0x14004bb99], 0
lea r8, str.failed:__d_n
lea r14, [rsp + 0x270]
mov edx, 0x20
mov rcx, r14
mov r9d, 9
call fcn.140001000
mov rcx, r14
call fcn.140008550
cmp byte [0x14004b568], 0
je 0x140007dce
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.140008660
cmp esi, 7
jb 0x140007dbf
mov r9b, byte [0x14004bb98]
add esi, 0xfffffffa
mov rcx, qword [rdi + 0x28]
add rdi, 0x30
mov edx, esi
mov r8, rdi
call fcn.140005ba0
mov rcx, rbx
call fcn.140013994
xor esi, esi
jmp 0x140006b1a
lea rdx, [rsp + 0x270]
mov byte [rdx], 0
lea rcx, str.succeeded
xor r8d, r8d
call fcn.14000b1c0
test al, al
je 0x140007d90
cmp byte [rsp + 0x270], 0
je 0x140007d90
call fcn.140005780
test al, al
jne 0x140007d90
mov ecx, 2
call fcn.140015d78
lea rcx, str.The_post_update_process_which_runs_as_the_user_for_service_update_could_not_be_launched.
mov edx, 0x58
mov r8d, 1
mov r9, rax
call fcn.140021128
jmp 0x140007d90
mov rcx, r14
call fcn.1400207a4
jmp 0x140007d87
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x14000638a
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x14000638a
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x14000640a
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x14000640a
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140006490
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140006490
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x1400064cf
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x1400064cf
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x14000650e
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x14000650e
lea rcx, [0x14004c1c8]
call fcn.140013b60
lea r15, str.Performing_a_staged_update
jmp 0x140007fa2
lea rcx, [0x14004c1c8]
call fcn.140013b60
lea r15, str.Performing_a_replace_request
cmp dword [0x14004c1c8], 0xffffffff
jne 0x14000645c
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x14000645c
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x1400065ff
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x1400065ff
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x1400068e5
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x1400068e5
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140006955
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140006955
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x1400069fb
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x1400069fb
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140006671
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140006671
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x1400072e1
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x1400072e1
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x1400070ff
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x1400070ff
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140007319
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140007319
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140006d34
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140006d34
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140007243
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140007243
lea rcx, [0x14004c1c8]
call fcn.140013b60
lea r14, str.NS_main:_directory_will_be_removed_on_OS_reboot:__S
jmp 0x1400082ca
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140006cc7
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140006cc7
lea rcx, [0x14004c1c8]
call fcn.140013b60
lea r14, str.NS_main:_failed_to_schedule_OS_reboot_removal_of_directory:__S
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140007443
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140007443
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140007611
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140007611
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140007a6b
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140007a6b
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140007ae0
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140007ae0
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x14000769d
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x14000769d
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140007597
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140007597
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140007730
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140007730
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140007766
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140007766
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x140007d3a
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x140007d3a
lea rcx, [0x14004c1c8]
call fcn.140013b60
cmp dword [0x14004c1c8], 0xffffffff
jne 0x14000797a
mov qword [0x14004bfb8], 0
lea rcx, [0x14000ada0]
call fcn.140013cf8
lea rcx, [0x14004c1c8]
call fcn.140013bc8
jmp 0x14000797a