Function at 0x140006090
Capabilities:
Copy file
Create directory
Create process on windows
Delete file
Get common file path
Query or enumerate registry value
Read file on windows
Terminate process

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1428
call fcn.14001f0e0
sub rsp, rax
mov rax, qword [0x14003c040]
xor rax, rsp
mov qword [rsp + 0x1420], rax
cmp ecx, 2
jg 0x140006119
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000670c
lea rdx, str.Not_enough_command_line_arguments_to_execute_a_service_command
call fcn.1400094f0
xor esi, esi
mov rcx, qword [rsp + 0x1420]
xor rcx, rsp
call fcn.14001b570
mov eax, esi
add rsp, 0x1428
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov esi, ecx
mov r13, rdx
lea rdi, [rsp + 0xb60]
mov r8d, 0x20a
mov rcx, rdi
xor edx, edx
call fcn.14002bcd0
mov rcx, rdi
call fcn.14002c7c0
mov ecx, dword [0x14003e370]
mov edx, dword [0x14003cda0]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
mov edx, dword [rdx + 4]
test eax, eax
je 0x140006186
cmp ecx, edx
mov rax, r13
jg 0x14000678e
mov r8, qword [rax + 0x10]
lea rdx, str.Executing_service_command__ls__ID:__ls
lea r9, [rsp + 0xb60]
call fcn.140009450
jmp 0x1400061a1
cmp ecx, edx
mov rax, r13
jg 0x140006816
mov r8, qword [rax + 0x10]
lea rdx, str.Executing_service_command__ls
call fcn.140009450
mov rcx, qword [r13 + 0x10]
lea rdx, str.software_update
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x14000623f
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400067d5
mov r8, qword [r13 + 0x10]
lea rdx, str.Service_command_not_recognized:__ls.
call fcn.1400094f0
xor esi, esi
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000674d
test esi, esi
lea rax, str.Failure
lea r9, str.Success
cmove r9, rax
mov r8, qword [r13 + 8]
lea rdx, str.service_command__ls_complete_with_result:__ls.
call fcn.140009450
jmp 0x1400060f3
cmp esi, 5
jb 0x140006294
mov rcx, qword [r13 + 0x20]
call fcn.140009640
test al, al
je 0x140006294
mov rdi, qword [r13 + 0x20]
mov rcx, rdi
call fcn.140017478
cmp rax, 9
ja 0x1400062c5
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140006c27
lea rdx, str.The_patch_directory_path_length_is_not_valid_for_this_application.
jmp 0x1400060ec
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000698a
lea rdx, str.The_patch_directory_path_is_not_valid_for_this_application.
jmp 0x1400060ec
lea rcx, [rdi + rax*2]
add rcx, 0xffffffffffffffec
lea rdx, [0x140035df0]
mov r8d, 0xa
call fcn.140015250
test eax, eax
je 0x140006314
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140006c68
lea rdx, str.The_patch_directory_path_subdirectory_is_not_valid_for_this_application.
jmp 0x1400060ec
mov rdi, qword [r13 + 0x20]
lea rbx, [rsp + 0x1000]
mov r8d, 0x20a
mov rcx, rbx
xor edx, edx
call fcn.14002bcd0
mov rcx, rbx
call fcn.140009000
test eax, eax
je 0x140006390
lea rbx, [rsp + 0x1210]
mov r8d, 0x20a
mov rcx, rbx
xor edx, edx
call fcn.14002bcd0
lea rdx, [0x140035cde]
mov rcx, rdi
mov r8, rbx
call fcn.140009100
test eax, eax
je 0x140006390
lea rcx, [rsp + 0x1000]
lea rdx, [rsp + 0x1210]
call fcn.14002c770
test eax, eax
je 0x140006390
lea rcx, [rsp + 0x1000]
call fcn.140015510
lea rcx, [rsp + 0x1000]
call fcn.140009000
test eax, eax
je 0x1400063f5
lea rbx, [rsp + 0x1210]
mov r8d, 0x20a
mov rcx, rbx
xor edx, edx
call fcn.14002bcd0
lea rdx, str..status
mov rcx, rdi
mov r8, rbx
call fcn.140009100
test eax, eax
je 0x1400063f5
lea rcx, [rsp + 0x1000]
lea rdx, [rsp + 0x1210]
call fcn.14002c770
test eax, eax
je 0x1400063f5
lea rcx, [rsp + 0x1000]
call fcn.140015510
lea rcx, [rsp + 0x1000]
call fcn.140009000
test eax, eax
je 0x14000645a
lea rbx, [rsp + 0x1210]
mov r8d, 0x20a
mov rcx, rbx
xor edx, edx
call fcn.14002bcd0
lea rdx, [0x140035adc]
mov rcx, rdi
mov r8, rbx
call fcn.140009100
test eax, eax
je 0x14000645a
lea rcx, [rsp + 0x1000]
lea rdx, [rsp + 0x1210]
call fcn.14002c770
test eax, eax
je 0x14000645a
lea rcx, [rsp + 0x1000]
call fcn.140015510
mov rdi, qword [r13 + 0x20]
lea rbx, [rsp + 0x1000]
mov r8d, 0x20a
mov rcx, rbx
xor edx, edx
call fcn.14002bcd0
mov rcx, rbx
call fcn.14002c7c0
test eax, eax
je 0x1400064d4
lea rbx, [rsp + 0xd70]
mov r8d, 0x20a
mov rcx, rbx
xor edx, edx
call fcn.14002bcd0
mov rcx, rbx
call fcn.140009000
test eax, eax
je 0x1400064d4
lea rbx, [rsp + 0x1210]
mov r8d, 0x20a
mov rcx, rbx
xor edx, edx
call fcn.14002bcd0
lea rdx, [0x140035cde]
mov rcx, rdi
mov r8, rbx
call fcn.140009100
test eax, eax
jne 0x140006505
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140006eca
lea rdx, str.Unable_to_write_to_secure_ID_file.
jmp 0x1400060ec
lea rcx, [rsp + 0xd70]
lea rdx, [rsp + 0x1210]
call fcn.14002c770
test eax, eax
je 0x1400064d4
lea rdx, [0x140035e06]
lea rcx, [rsp + 0xd70]
call fcn.140015438
test rax, rax
je 0x1400064d4
mov rdi, rax
lea rdx, str._ls_n
lea r14, [rsp + 0x1000]
mov rcx, rax
mov r8, r14
call fcn.1400091c0
mov ebx, eax
mov rcx, rdi
call fcn.140015538
cmp ebx, 0xffffffff
je 0x1400064d4
cmp esi, 5
je 0x140006873
mov rcx, qword [r13 + 0x28]
call fcn.140009640
test al, al
je 0x140006873
mov rbx, qword [r13 + 0x28]
mov rcx, rbx
xor edx, edx
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetLongPathNameW]
test eax, eax
je 0x140006873
mov ebp, eax
mov r15d, eax
add r15, r15
mov rcx, r15
call fcn.14000ad20
mov rdi, rax
mov rcx, rax
xor edx, edx
mov r8, r15
call fcn.14002bcd0
mov rcx, rbx
mov rdx, rdi
mov r8d, ebp
call qword [sym.imp.KERNEL32.dll_GetLongPathNameW]
test eax, eax
je 0x14000686b
lea r9, [rsp + 0x1210]
mov qword [r9], 0
lea rcx, [0x14002d010]
xor edx, edx
xor r8d, r8d
call sub.SHELL32.dll_SHGetKnownFolderPath
test eax, eax
js 0x14000686b
mov rbx, qword [rsp + 0x1210]
mov rcx, rbx
call fcn.140017478
test rax, rax
je 0x14000685d
mov r12, rax
cmp word [rbx + rax*2 - 2], 0x5c
jne 0x1400068f2
mov rcx, rdi
mov rdx, rbx
mov r8, r12
call fcn.140015250
test eax, eax
je 0x14000695b
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov dword [rsp + 0x1210], 0
lea rax, [rsp + 0x1210]
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
lea rdx, str.SoftwareMicrosoftWindowsCurrentVersion
lea r8, str.ProgramFilesDir
mov rcx, 0xffffffff80000002
mov r9d, 0x10002
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
test eax, eax
jne 0x14000686b
mov r12d, dword [rsp + 0x1210]
cmp r12, 4
jb 0x14000686b
mov r15d, r12d
and r15d, 0xfffffffe
mov rcx, r15
call fcn.14000ad20
mov rbx, rax
mov rcx, rax
xor edx, edx
mov r8, r15
call fcn.14002bcd0
lea rax, [rsp + 0x1210]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], 0
lea rdx, str.SoftwareMicrosoftWindowsCurrentVersion
lea r8, str.ProgramFilesDir
mov rcx, 0xffffffff80000002
mov r9d, 0x10002
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
test eax, eax
je 0x140006cf0
mov rcx, rbx
call fcn.14000ad28
jmp 0x14000686b
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400060e5
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400060e5
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006216
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006216
lea rcx, [0x14003e370]
call fcn.14000ad6c
mov rax, r13
cmp dword [0x14003e370], 0xffffffff
jne 0x14000616c
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
mov rax, r13
jmp 0x14000616c
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400061df
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400061df
lea rcx, [0x14003e370]
call fcn.14000ad6c
mov rax, r13
cmp dword [0x14003e370], 0xffffffff
jne 0x140006191
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
mov rax, r13
jmp 0x140006191
test rbx, rbx
je 0x14000686b
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, rdi
call fcn.14000ad28
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007142
lea rdx, str.The_install_directory_path_is_not_valid_for_this_application.
call fcn.1400094f0
mov rcx, qword [r13 + 0x20]
mov edx, 0x37
call fcn.140009230
xor esi, esi
test eax, eax
jne 0x1400060f3
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000740c
lea rdx, str.Could_not_write_update.status_for_previous_failure.
call fcn.1400094f0
jmp 0x1400060f3
lea rax, [r12 + 1]
mov qword [rsp + 0x50], rax
lea rax, [r12*2 + 4]
add r12, 2
mov rbp, 0xffffffffffffffff
cmovns rbp, rax
mov rcx, rbp
call fcn.14000ad20
mov r15, rax
mov rcx, rax
xor edx, edx
mov r8, rbp
call fcn.14002bcd0
mov rcx, r15
mov rdx, r12
mov r9, rbx
call fcn.1400095c0
mov rcx, rdi
mov rdx, r15
mov r8, qword [rsp + 0x50]
call fcn.140015250
mov ebp, eax
mov rcx, r15
call fcn.14000ad28
test ebp, ebp
jne 0x140006638
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, rdi
call fcn.14000ad28
lea ebx, [rsi - 3]
cmp ebx, 4
jne 0x1400069cb
mov rcx, qword [r13 + 0x30]
lea rdx, [0x140035dea]
call fcn.140017424
test eax, eax
jne 0x1400069d1
jmp 0x1400069ea
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400062b9
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400062b9
jb 0x140006be8
mov rcx, qword [r13 + 0x30]
lea rdx, str._replace
call fcn.14000c0d8
test rax, rax
je 0x140006b56
lea rdi, [r13 + 0x18]
lea r15, [rsp + 0x950]
mov r8d, 0x20a
mov rcx, r15
xor edx, edx
call fcn.14002bcd0
mov ecx, ebx
mov rdx, rdi
mov r8, r15
call fcn.140005280
test eax, eax
je 0x140006b17
lea rax, [rsp + 0x1210]
mov qword [rsp + 0x20], rax
lea rdx, str.SOFTWAREMozillaMaintenanceService3932ecacee736d366d6436db0f55bce4
mov rcx, 0xffffffff80000002
xor r8d, r8d
mov r9d, 0x20119
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x140006da2
lea rcx, [rsp + 0x950]
lea rdx, [rsp + 0x1210]
call fcn.14000aaa0
test eax, eax
je 0x140006ca9
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007f6a
lea rdx, str.Checking_for_Maintenance_Service_registry._key:__ls
lea r15, [rsp + 0x1210]
mov r8, r15
call fcn.140009450
mov qword [rsp + 0x1000], 0
mov qword [rsp + 0x20], r14
mov rcx, 0xffffffff80000002
mov rdx, r15
xor r8d, r8d
mov r9d, 0x20119
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x140006dac
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007fab
lea rdx, str.The_maintenance_service_registry_key_does_not_exist.
call fcn.1400094f0
mov rcx, qword [r13 + 0x20]
mov edx, 0x39
jmp 0x140006cb2
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007f29
lea rdx, str.Could_not_get_the_installation_directory
call fcn.1400094f0
mov rcx, qword [r13 + 0x20]
mov edx, 0x21
jmp 0x140006cb2
mov rdi, qword [r13 + 0x30]
movzx ecx, word [rdi]
test cx, cx
je 0x1400069ea
add rdi, 2
call fcn.140016d10
test eax, eax
jne 0x140006b5a
cmp esi, 7
jl 0x140006be8
mov rcx, qword [r13 + 0x30]
call fcn.140009640
test al, al
je 0x140006be8
mov rdx, qword [r13 + 0x28]
mov rcx, qword [r13 + 0x30]
mov r8d, 0x104
call fcn.140015250
test eax, eax
je 0x1400069ea
cmp esi, 7
jne 0x140006f0b
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008558
lea rdx, str.Installation_directory_and_working_directory_must_be_the_same_for_non_staged_updates._Exiting.
call fcn.1400094f0
mov rcx, qword [r13 + 0x20]
mov edx, 0x36
jmp 0x1400068ad
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007e98
lea rdx, str.The_working_directory_path_is_not_valid_for_this_application.
call fcn.1400094f0
mov rcx, qword [r13 + 0x20]
mov edx, 0x38
jmp 0x1400068ad
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006288
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006288
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006308
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006308
mov rcx, qword [r13 + 0x20]
mov edx, 0x35
call fcn.140009230
test eax, eax
jne 0x1400060f1
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007fec
lea rdx, str.Could_not_write_update.status_for_previous_failure.
jmp 0x1400060ec
shr r12d, 1
mov rcx, rbx
mov rdx, r12
call fcn.1400175a4
test rax, rax
je 0x1400066ff
mov r12, rax
cmp word [rbx + rax*2 - 2], 0x5c
jne 0x140006d2a
mov rcx, rdi
mov rdx, rbx
mov r8, r12
call fcn.140015250
test eax, eax
jne 0x1400066ff
jmp 0x140006d95
lea rax, [r12 + 1]
mov qword [rsp + 0x50], rax
lea rax, [r12*2 + 4]
add r12, 2
mov r15, 0xffffffffffffffff
cmovns r15, rax
mov rcx, r15
call fcn.14000ad20
mov rbp, rax
mov rcx, rax
xor edx, edx
mov r8, r15
call fcn.14002bcd0
mov rcx, rbp
mov rdx, r12
mov r9, rbx
call fcn.1400095c0
mov rcx, rdi
mov rdx, rbp
mov r8, qword [rsp + 0x50]
call fcn.140015250
mov r15d, eax
mov rcx, rbp
call fcn.14000ad28
test r15d, r15d
jne 0x1400066ff
mov rcx, rbx
call fcn.14000ad28
jmp 0x140006964
mov rcx, qword [rsp + 0x1210]
jmp 0x140006db4
mov rcx, qword [rsp + 0x1000]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea r14, [rsp + 0x740]
mov r8d, 0x20a
mov rcx, r14
xor edx, edx
call fcn.14002bcd0
lea rdx, [rsp + 0x950]
mov r8d, 0x104
mov rcx, r14
call fcn.140017940
lea rdx, str.updater.exe
mov rcx, r14
call fcn.14002c770
test eax, eax
jne 0x140006e2c
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000835b
lea rdx, str.Install_directory_updater_could_not_be_determined.
call fcn.1400094f0
mov r8, qword [r13 + 0x20]
lea rcx, [rsp + 0x740]
lea rdx, [rsp + 0x950]
call fcn.1400053a0
mov ebp, eax
lea rcx, [rsp + 0x530]
mov r8d, 0x20a
xor edx, edx
call fcn.14002bcd0
test bpl, bpl
je 0x140006ff8
lea rdx, [rsp + 0x530]
xor ecx, ecx
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x140006fbb
lea rcx, [rsp + 0x530]
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
test eax, eax
jne 0x1400070f9
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008599
lea rsi, str.Couldnt_remove_file_spec_when_attempting_to_use_a_secure_updater_path.____lu_
jmp 0x140006fe7
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400064f9
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400064f9
mov rcx, qword [r13 + 0x38]
lea rdx, [0x140035dea]
call fcn.140017424
test eax, eax
je 0x140006f38
mov rcx, qword [r13 + 0x38]
lea rdx, str._replace
call fcn.14000c0d8
test rax, rax
je 0x140006ba9
mov r9, qword [r13 + 0x30]
lea rdi, [rsp + 0x1210]
mov rcx, rdi
call fcn.140001c90
mov rcx, rdi
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
test eax, eax
je 0x1400070b1
mov rdx, qword [r13 + 0x28]
lea rcx, [rsp + 0x1210]
mov r8d, 0x104
call fcn.140015250
test eax, eax
je 0x1400069ea
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400085ae
lea rdx, str.The_apply_to_directory_must_be_the_same_as_or_a_child_of_the_installation_directory__Exiting.
call fcn.1400094f0
mov rcx, qword [r13 + 0x20]
mov edx, 0x34
jmp 0x140006cb2
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400085ef
lea rsi, str.Could_not_obtain_module_filename_when_attempting_to_use_a_secure_updater_path.____lu_
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rdx, rsi
mov r8d, eax
call fcn.1400094f0
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008137
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.Could_not_copy_path_to_secure_location.____lu_
mov r8d, eax
call fcn.1400094f0
mov rcx, qword [r13 + 0x20]
mov edx, 0x31
call fcn.140009230
xor esi, esi
test eax, eax
jne 0x140007077
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000839c
lea rdx, str.Could_not_write_update.status_could_not_copy_updater_error
call fcn.1400094f0
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008178
mov r8, qword [r13 + 0x10]
lea rdx, str.Service_command__ls_complete.
call fcn.140009450
jmp 0x1400061f1
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008637
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.Couldnt_remove_file_spec_when_attempting_to_verify_the_working_directory_path.____lu_
mov r8d, eax
call fcn.1400094f0
mov rcx, qword [r13 + 0x20]
mov edx, 0x47
jmp 0x140006cb2
lea rdx, [0x140035b74]
lea rcx, [rsp + 0x530]
call fcn.14002c770
test eax, eax
jne 0x140007183
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140007455
lea rsi, str.Couldnt_append_file_spec_when_attempting_to_use_a_secure_updater_path.____lu_
jmp 0x140006fe7
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006898
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006898
lea r14, [rsp + 0x530]
mov rcx, r14
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea rdx, str.updater.exe
mov rcx, r14
call fcn.14002c770
mov ecx, dword [0x14003e370]
mov edx, dword [0x14003cda0]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
mov edx, dword [rdx + 4]
test eax, eax
je 0x14000744d
cmp ecx, edx
jg 0x140008678
mov r8, qword [rdi]
mov qword [rsp + 0x20], r14
lea rdx, str.Passed_in_path:__ls__ignored___Install_dir_has:__ls__Using_this_path_for_updating:__ls.
lea r15, [rsp + 0x740]
mov r9, r15
call fcn.140009450
mov rcx, r14
call fcn.140005ec0
mov rcx, r15
mov rdx, r14
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x140006ff8
mov qword [rdi], r14
lea rcx, [rsp + 0x320]
mov r8d, 0x20a
xor edx, edx
call fcn.14002bcd0
lea rcx, [rsp + 0x110]
mov r8d, 0x20a
xor edx, edx
call fcn.14002bcd0
mov rcx, r14
call fcn.140017478
cmp rax, 0x104
ja 0x14000727e
lea r14, [rsp + 0x110]
lea rdx, [rsp + 0x530]
mov r8d, 0x105
mov rcx, r14
call fcn.140017940
mov rcx, r14
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
test eax, eax
jne 0x140007d73
lea r14, [rsp + 0xd70]
mov r8d, 0x20a
mov rcx, r14
xor edx, edx
call fcn.14002bcd0
mov ecx, ebx
mov rdx, rdi
mov r8, r14
call fcn.140005280
test eax, eax
je 0x14000746d
mov rcx, qword [r13 + 0x18]
mov r8, qword [r13 + 0x20]
lea rdx, [rsp + 0xd70]
call fcn.1400053a0
mov ecx, dword [0x14003e370]
mov edx, dword [0x14003cda0]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
mov edx, dword [rdx + 4]
test al, al
je 0x1400074ec
cmp ecx, edx
jg 0x1400086b9
lea rdx, str.Starting_update_process_as_the_service_in_session_0.
call fcn.140009450
xorps xmm0, xmm0
movaps xmmword [rsp + 0xf80], xmm0
movaps xmmword [rsp + 0xf90], xmm0
movaps xmmword [rsp + 0xfa0], xmm0
movaps xmmword [rsp + 0xfb0], xmm0
movaps xmmword [rsp + 0xfc0], xmm0
movaps xmmword [rsp + 0xfd0], xmm0
xor ebp, ebp
mov qword [rsp + 0xfe0], rbp
movaps xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0xb0], rbp
mov dword [rsp + 0xf80], 0x68
lea rax, str.winsta0Default
mov qword [rsp + 0xf90], rax
mov eax, ebx
mov qword [rsp + 0x70], rax
xor r14d, r14d
mov r15, qword [rdi + rbp*8]
mov rcx, r15
mov dx, 0x22
call fcn.14000bfb0
mov qword [rsp + 0x50], rax
cmp word [r15], 0
je 0x1400073cc
mov rcx, r15
lea rdx, [0x140032d20]
call fcn.140017988
xor r12d, r12d
test rax, rax
setne r12b
cmp qword [rsp + 0x50], 0
jne 0x1400073d4
mov rcx, r15
call fcn.140017478
add rax, r12
add r14, r12
add r14, rax
inc r14
inc rbp
cmp rbp, qword [rsp + 0x70]
jne 0x14000736c
jmp 0x140007560
mov r12d, 1
jmp 0x1400073a1
mov rax, r12
xor ecx, ecx
movzx edx, word [r15]
cmp edx, 0x22
je 0x1400073ed
cmp edx, 0x5c
je 0x140007400
test edx, edx
jne 0x1400073fc
jmp 0x1400073b4
lea rdx, [rcx + 1]
cmp rdx, 1
adc rcx, 1
add rax, rcx
xor ecx, ecx
jmp 0x140007403
inc rcx
inc rax
add r15, 2
jmp 0x1400073d9
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400068e1
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400068e1
cmp ecx, edx
jle 0x140007136
lea rcx, [0x14003e370]
call fcn.14000ad6c
lea rsi, str.Couldnt_append_file_spec_when_attempting_to_use_a_secure_updater_path.____lu_
jmp 0x140008602
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400086fa
lea rdx, str.Could_not_get_the_installation_directory
call fcn.1400094f0
mov rcx, qword [r13 + 0x20]
mov edx, 0x21
call fcn.140009230
xor esi, esi
test eax, eax
jne 0x140008071
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000873b
lea rdx, str.Could_not_write_update.status_for_GetInstallationDir_failure.
call fcn.1400094f0
jmp 0x140008071
cmp ecx, edx
jg 0x14000877c
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.Could_not_start_process_due_to_certificate_check_error_on_updater.exe._Updating_update.status.____lu_
mov r8d, eax
call fcn.1400094f0
mov rcx, qword [r13 + 0x20]
mov edx, 0x1a
call fcn.140009230
xor esi, esi
test eax, eax
jne 0x140008071
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400087bd
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.Could_not_write_pending_state_to_update.status.____lu_
mov r8d, eax
call fcn.1400094f0
jmp 0x140008071
cmp r14, 1
adc r14, 0
lea rax, [r14 + r14]
test r14, r14
mov r15, 0xffffffffffffffff
cmovns r15, rax
mov rcx, r15
call fcn.14000ad20
mov r12, rax
xor eax, eax
mov qword [rsp + 0x68], rax
mov rcx, r12
xor edx, edx
mov r8, r15
call fcn.14002bcd0
mov qword [rsp + 0x60], r12
mov r15, r12
mov rax, qword [rsp + 0x68]
mov r12, qword [rdi + rax*8]
mov rcx, r12
mov dx, 0x22
call fcn.14000bfb0
mov rbp, rax
mov qword [rsp + 0x58], r12
cmp word [r12], 0
je 0x140007673
mov rcx, qword [rsp + 0x58]
lea rdx, [0x140032d20]
call fcn.140017988
test rax, rax
setne al
movzx ecx, al
mov r12, r15
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x50], rcx
test r15, r15
je 0x140007607
mov r12, r15
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x50], rcx
test al, al
jne 0x14000767a
test rbp, rbp
jne 0x140007693
mov r14, qword [rsp + 0x58]
mov rcx, r14
call fcn.140017478
mov rbp, rax
mov rcx, r12
mov rdx, r14
call fcn.14001745c
lea r12, [r12 + rbp*2]
add qword [rsp + 0x50], rbp
cmp qword [rsp + 0x78], 0
jne 0x1400076f9
mov rax, qword [rsp + 0x50]
lea r15, [r15 + rax*2]
mov rcx, qword [rsp + 0x68]
inc rcx
mov rax, rcx
mov qword [rsp + 0x68], rcx
cmp rcx, qword [rsp + 0x70]
je 0x14000770a
mov word [r15], 0x20
add r15, 2
jmp 0x1400075a1
mov al, 1
jmp 0x1400075e1
lea r12, [r15 + 2]
mov word [r15], 0x22
mov eax, 1
mov qword [rsp + 0x50], rax
jmp 0x140007607
xor eax, eax
mov rcx, qword [rsp + 0x58]
movzx ecx, word [rcx]
cmp ecx, 0x22
je 0x1400076ad
cmp ecx, 0x5c
je 0x1400076d5
test ecx, ecx
jne 0x1400076d1
jmp 0x140007634
lea rcx, [rax + 1]
cmp rcx, 1
adc rax, 1
mov rcx, rax
mov word [r12], 0x5c
add r12, 2
dec rcx
jne 0x1400076bc
add qword [rsp + 0x50], rax
xor eax, eax
jmp 0x1400076d8
inc rax
mov rdx, qword [rsp + 0x58]
movzx ecx, word [rdx]
mov word [r12], cx
add r12, 2
inc qword [rsp + 0x50]
add rdx, 2
mov qword [rsp + 0x58], rdx
jmp 0x140007695
mov word [r12], 0x22
inc qword [rsp + 0x50]
jmp 0x140007640
mov word [r15], 0
cmp ebx, 4
jne 0x14000772b
mov rcx, qword [r13 + 0x30]
lea rdx, [0x140035dea]
call fcn.140017424
test eax, eax
jne 0x140007730
jmp 0x14000775e
cmp esi, 7
jl 0x14000775e
mov rcx, qword [r13 + 0x30]
lea rdx, str._replace
call fcn.14000c0d8
test rax, rax
jne 0x14000775e
mov rbx, qword [r13 + 0x30]
movzx ecx, word [rbx]
test cx, cx
je 0x14000775e
add rbx, 2
call fcn.140016d10
test eax, eax
jne 0x140007749
lea rax, [0x140035e0c]
mov qword [rsp + 0xf90], rax
or byte [rsp + 0xfbc], 1
mov word [rsp + 0xfc0], 0
lea rcx, str.MOZ_USING_SERVICE1
call fcn.140014690
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400087fe
lea rdx, str.Starting_service_with_cmdline:__ls
mov rbx, qword [rsp + 0x60]
mov r8, rbx
call fcn.140009450
mov rcx, qword [rdi]
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0xf80]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], 0x4000000
mov dword [rsp + 0x20], 0
mov rdx, rbx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
mov ebx, eax
test eax, eax
je 0x14000787b
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000883f
lea rdx, str.Process_was_started..._waiting_on_result.
call fcn.140009450
mov rcx, qword [rsp + 0xa0]
mov edx, 0xdbba0
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebp, eax
cmp eax, 0x102
jne 0x1400078c8
mov rcx, qword [rsp + 0xa0]
mov edx, 1
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
xor r14d, r14d
mov byte [rsp + 0x50], 1
jmp 0x14000794a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008880
mov r8, qword [rdi]
mov dword [rsp + 0x20], ebp
lea rdx, str.Could_not_create_process_as_current_user__updaterPath:__ls__cmdLine:__ls.____lu_
mov r9, qword [rsp + 0x60]
call fcn.1400094f0
xor r14d, r14d
jmp 0x1400079f2
mov rcx, qword [rsp + 0xa0]
lea rdx, [rsp + 0x1210]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rdx, qword [rdx + rcx*8]
mov ecx, dword [0x14003e370]
mov edx, dword [rdx + 4]
test eax, eax
setne byte [rsp + 0x50]
je 0x140007933
cmp ecx, edx
jg 0x1400088c1
mov r8d, dword [rsp + 0x1210]
lea rdx, str.Process_finished_with_return_code__lu.
call fcn.140009450
xor r14d, r14d
cmp dword [rsp + 0x1210], 0
sete r14b
jmp 0x14000794a
cmp ecx, edx
jg 0x140008902
lea rdx, str.Process_finished_but_could_not_obtain_return_code.
call fcn.1400094f0
xor r14d, r14d
mov rcx, qword [rsp + 0xa0]
mov r15, qword [sym.imp.KERNEL32.dll_CloseHandle]
call r15
mov rcx, qword [rsp + 0xa8]
call r15
mov r15, qword [r13 + 0x20]
lea r12, [rsp + 0x1000]
mov r8d, 0x20a
mov rcx, r12
xor edx, edx
call fcn.14002bcd0
mov rcx, r12
call fcn.140009000
test eax, eax
je 0x1400079c1
lea r12, [rsp + 0x1210]
mov r8d, 0x20a
mov rcx, r12
xor edx, edx
call fcn.14002bcd0
lea rdx, str..status
mov rcx, r15
mov r8, r12
call fcn.140009100
test eax, eax
jne 0x140008083
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008943
lea rdx, str.Could_not_get_path_for_the_secure_update_status_file
call fcn.1400094f0
lea rcx, str.MOZ_USING_SERVICE
call fcn.140014690
mov rcx, qword [rsp + 0x60]
call fcn.14000ad28
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov ecx, dword [rcx + 4]
test r14d, r14d
je 0x140007a92
cmp eax, ecx
jg 0x140008984
lea rdx, str.updater.exe_was_launched_and_run_successfully_
call fcn.140009450
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400089c5
mov rcx, qword [0x14003e160]
test rcx, rcx
je 0x140007a76
call fcn.1400156f4
cmp esi, 7
je 0x140007b3c
cmp esi, 8
jne 0x140007b88
mov eax, 4
jmp 0x140007b41
cmp eax, ecx
jg 0x140008a06
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.Error_running_update_process._Updating_update.status____lu_
mov r8d, eax
call fcn.1400094f0
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008a47
mov rcx, qword [0x14003e160]
test rcx, rcx
je 0x140007ae5
call fcn.1400156f4
xor esi, esi
test ebx, ebx
jne 0x140008071
mov rcx, qword [r13 + 0x20]
mov edx, 0x18
call fcn.140009230
test eax, eax
jne 0x140008071
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008a88
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.Could_not_write_update.status_service_update_failure.____lu_
jmp 0x140007553
mov eax, 3
mov rcx, qword [rdi + rax*8]
lea rdx, [0x140035dea]
call fcn.140017424
mov ecx, dword [0x14003e370]
mov edx, dword [0x14003cda0]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
mov edx, dword [rdx + 4]
test eax, eax
jne 0x140007ba7
cmp ecx, edx
jg 0x140008ac9
lea rdx, str.Skipping_update_of_the_service_because_we_are_staging
jmp 0x140007d30
mov ecx, dword [0x14003e370]
mov eax, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rax, qword [rdx + rax*8]
mov edx, dword [rax + 4]
cmp ecx, edx
jg 0x140008b0a
lea rdx, str.Starting_service_update
call fcn.140009450
xor ecx, ecx
xor edx, edx
mov r8d, 0xf003f
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
test rax, rax
je 0x140007d04
mov rsi, rax
lea rdx, str.MozillaMaintenance
mov rcx, rax
mov r8d, 0xf01ff
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
test rax, rax
je 0x140007d3a
mov rdi, rax
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
lea r9, [rsp + 0x10c]
mov rcx, rdi
xor edx, edx
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_QueryServiceConfigW]
test eax, eax
jne 0x140007c2b
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x14000802d
lea rbx, [rsp + 0x10c]
mov r14d, dword [rbx]
mov rcx, r14
call fcn.14000ad20
mov rsi, rax
mov rcx, rax
xor edx, edx
mov r8, r14
call fcn.14002bcd0
mov rcx, rdi
mov rdx, rsi
mov r8d, r14d
mov r9, rbx
call qword [sym.imp.ADVAPI32.dll_QueryServiceConfigW]
test eax, eax
je 0x140007ed9
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.SHLWAPI.dll_PathUnquoteSpacesW]
lea rcx, [rsp + 0x1210]
mov r8d, 0x20a
xor edx, edx
call fcn.14002bcd0
mov rdi, qword [rsi + 0x10]
mov rcx, rdi
call fcn.140017478
cmp rax, 0x104
ja 0x140007cce
lea rbx, [rsp + 0x1210]
mov r8d, 0x105
mov rcx, rbx
mov rdx, rdi
call fcn.140017940
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
test eax, eax
jne 0x1400083dd
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008b4b
lea rdx, str.StartServiceUpdate:_Failed_to_get_temp_bin_path
call fcn.140009450
jmp 0x140007f1c
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008b8c
lea rdx, str.StartServiceUpdate:_Failed_to_open_SCM
call fcn.140009450
jmp 0x14000806c
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008bcd
lea rdx, str.StartServiceUpdate:_Unable_to_open_service
call fcn.140009450
mov rcx, rsi
jmp 0x140008066
lea rdx, str.updater.ini
lea rcx, [rsp + 0x110]
call fcn.14002c770
test eax, eax
je 0x14000727e
lea rcx, [rsp + 0x740]
call fcn.140017478
cmp rax, 0x104
ja 0x14000727e
lea r14, [rsp + 0x320]
lea rdx, [rsp + 0x740]
mov r8d, 0x105
mov rcx, r14
call fcn.140017940
mov rcx, r14
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
test eax, eax
je 0x14000727e
lea rdx, str.updater.ini
lea rcx, [rsp + 0x320]
call fcn.14002c770
test eax, eax
je 0x14000727e
lea rcx, [rsp + 0x320]
lea rdx, [rsp + 0x110]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x14000727e
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x140007e6d
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007e6d
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea rdx, str.Could_not_copy_updater.ini_from:__ls_to__ls.____lu_
lea r8, [rsp + 0x320]
lea r9, [rsp + 0x110]
call fcn.1400094f0
jmp 0x14000727e
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006c0d
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006c0d
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008c0e
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.StartServiceUpdate:_Failed_to_read_MMS:__lu
mov r8d, eax
call fcn.140009450
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rsi
call fcn.14000ad28
jmp 0x14000806c
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006b3c
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006b3c
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006a8f
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006a8f
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006afd
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006afd
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006ce4
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006ce4
mov esi, eax
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008c4f
lea rdx, str.StartServiceUpdate:_Failed_to_query_MMS:__lu
mov r8d, esi
call fcn.140009450
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov esi, 1
lea rcx, [rsp + 0x530]
call fcn.140005ec0
jmp 0x140007077
lea rcx, [rsp + 0x1000]
lea rdx, [rsp + 0x1210]
call fcn.14002c770
test eax, eax
je 0x1400079c1
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 3
lea rcx, [rsp + 0x1000]
mov edx, 0x80000000
mov r8d, 7
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r15, rax
cmp rax, 0xffffffffffffffff
je 0x1400081b9
xorps xmm0, xmm0
lea rdx, [rsp + 0x1210]
movaps xmmword [rdx + 0x10], xmm0
movaps xmmword [rdx], xmm0
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x80]
mov rcx, r15
mov r8d, 0x20
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1400081e7
movabs rax, 0x676e69796c707061
cmp qword [rsp + 0x1210], rax
sete r12b
jmp 0x14000824f
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x14000701d
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x14000701d
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x14000709c
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x14000709c
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140008c90
lea rdx, str.Could_not_open_update.status_file
jmp 0x140008247
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x140008240
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140008240
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
lea rdx, str.Could_not_read_from_update.status_file
call fcn.1400094f0
xor r12d, r12d
mov rax, r15
inc rax
cmp rax, 2
jb 0x140008264
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r12b, r12b
je 0x1400079f2
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov ecx, dword [rcx + 4]
test r14d, r14d
je 0x140008477
cmp eax, ecx
jle 0x1400082d1
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400082d1
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
lea rdx, str.update.status_is_still_applying_even_though_update_was_successful.
call fcn.140009450
mov rcx, qword [r13 + 0x20]
mov edx, 0x1d
call fcn.140009230
xor r14d, r14d
test eax, eax
jne 0x1400079f2
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x14000834f
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x14000834f
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
lea rdx, str.Could_not_write_update.status_still_applying_on_success_error.
jmp 0x1400079ed
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006e20
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006e20
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x14000706b
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x14000706b
lea rdx, str.maintenanceservice_tmp.exe
lea rcx, [rsp + 0x1210]
call fcn.14002c770
test eax, eax
je 0x140007cce
lea rcx, [rsp + 0xd70]
call fcn.140017478
cmp rax, 0x105
jb 0x140008cd1
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x14000846b
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x14000846b
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
lea rdx, str.StartServiceUpdate:_Install_dir_path_too_long
jmp 0x140007cfa
cmp eax, ecx
jle 0x1400084b3
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400084b3
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
lea rdx, str.update.status_is_still_applying_and_update_was_not_successful.
call fcn.1400094f0
cmp ebp, 0x102
mov eax, 0x32
mov ecx, 0x1e
cmove ecx, eax
cmp byte [rsp + 0x50], 0
mov edx, 0x33
cmovne edx, ecx
mov rcx, qword [r13 + 0x20]
call fcn.140009230
xor r14d, r14d
test eax, eax
jne 0x1400079f2
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x14000854c
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x14000854c
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
lea rdx, str.Could_not_write_update.status_still_applying_on_failure_error.
jmp 0x1400079ed
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006bce
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006bce
lea rcx, [0x14003e370]
call fcn.14000ad6c
lea rsi, str.Couldnt_remove_file_spec_when_attempting_to_use_a_secure_updater_path.____lu_
jmp 0x140008602
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140006fa1
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006fa1
lea rcx, [0x14003e370]
call fcn.14000ad6c
lea rsi, str.Could_not_obtain_module_filename_when_attempting_to_use_a_secure_updater_path.____lu_
cmp dword [0x14003e370], 0xffffffff
jne 0x140006fe7
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140006fe7
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400070d6
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400070d6
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400071d4
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400071d4
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400072ef
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400072ef
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007492
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007492
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400074db
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400074db
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400074f4
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400074f4
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007546
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007546
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400077b0
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400077b0
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007833
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007833
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400078a8
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400078a8
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x14000790e
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x14000790e
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x14000793b
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x14000793b
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400079e6
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400079e6
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007a34
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007a34
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007a65
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007a65
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007a9a
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007a9a
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007ad4
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007ad4
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007b2a
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007b2a
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007b7c
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007b7c
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007baf
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007baf
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007cf3
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007cf3
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007d29
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007d29
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007d5f
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007d5f
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140007efe
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140007efe
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140008054
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x140008054
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x1400081de
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
jmp 0x1400081de
lea rdi, [rsp + 0x1000]
mov r8d, 0x20a
mov rcx, rdi
xor edx, edx
call fcn.14002bcd0
lea rdx, [rsp + 0xd70]
mov r8d, 0x104
mov rcx, rdi
call fcn.140017940
lea rdx, [0x140035b34]
mov rcx, rdi
call fcn.14002c770
lea rdx, [rsp + 0x1210]
mov rcx, rdi
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x140008ec0
lea rdi, [rsp + 0xd70]
lea rdx, [rsp + 0x1210]
mov rcx, rdi
mov r8d, 1
call fcn.140009950
test eax, eax
je 0x140008f25
xorps xmm0, xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
xor r14d, r14d
mov qword [rsp + 0x100], r14
mov dword [rsp + 0xa0], 0x68
lea rax, [0x140035e0c]
mov qword [rsp + 0xb0], rax
lea r15, [rsp + 0x80]
mov qword [r15 + 0x10], r14
movaps xmmword [r15], xmm0
lea rbx, [rsp + 0xf80]
movaps xmmword [rbx + 0x70], xmm0
movaps xmmword [rbx + 0x60], xmm0
movaps xmmword [rbx + 0x50], xmm0
movaps xmmword [rbx + 0x40], xmm0
movaps xmmword [rbx + 0x30], xmm0
movaps xmmword [rbx + 0x20], xmm0
movaps xmmword [rbx + 0x10], xmm0
movaps xmmword [rbx], xmm0
lea rdx, str.dummyparam.exe_upgrade
mov r8d, 0x3f
mov rcx, rbx
call fcn.140017940
mov qword [rsp + 0x48], r15
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
lea rcx, [rsp + 0x1210]
mov rdx, rbx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
mov ecx, dword [0x14003e370]
mov edx, dword [0x14003cda0]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
mov edx, dword [rdx + 4]
test eax, eax
je 0x140008f9d
cmp ecx, edx
jle 0x140008e94
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140008e94
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
lea rdx, str.StartServiceUpdate:_Launched_MMS_update_successfully
call fcn.140009450
mov rcx, qword [rsp + 0x80]
mov rdi, qword [sym.imp.KERNEL32.dll_CloseHandle]
call rdi
mov rcx, qword [rsp + 0x88]
call rdi
jmp 0x140007f1c
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x140008f19
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140008f19
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
lea rdx, str.StartServiceUpdate:_Failed_to_copy_temp_MMS
jmp 0x140007cfa
mov eax, dword [0x14003e370]
mov ecx, dword [0x14003cda0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jle 0x140008f7e
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140008f7e
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
lea rdx, str.StartServiceUpdate:_Binary_doesnt_match_certs
call fcn.140009450
lea rcx, [rsp + 0x1210]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x140007f1c
cmp ecx, edx
jle 0x140008fd9
lea rcx, [0x14003e370]
call fcn.14000ad6c
cmp dword [0x14003e370], 0xffffffff
jne 0x140008fd9
mov qword [0x14003e160], 0
lea rcx, [fcn.140001d10]
call fcn.14000ae50
lea rcx, [0x14003e370]
call fcn.14000ade4
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.StartServiceUpdate:_MMS_update_failed:__lu
mov r8d, eax
call fcn.140009450
jmp 0x140007f1c