Function at 0x140002554
Capabilities:
Modify service

Disassembly:
push rbx
push rbp
push r12
push r14
push r15
sub rsp, 0x280
mov rax, qword [0x14002c008]
xor rax, rsp
mov qword [rsp + 0x270], rax
or rbx, 0xffffffffffffffff
mov r14, r8
xor r12d, r12d
mov rbp, rdx
mov r15, rcx
inc rbx
cmp word [rdx + rbx*2], r12w
jne 0x140002586
cmp rbx, 2
jbe 0x1400025fe
lea rdx, str.maintenanceservice_tmp.exe
mov rcx, rbp
call fcn.140007fcc
test rax, rax
jne 0x1400025fe
cmp word [rbp], 0x22
jne 0x1400025fe
cmp word [rbp + rbx*2 - 2], 0x22
jne 0x1400025fe
mov eax, dword [0x14002df0c]
mov ebx, 1
test bl, al
jne 0x1400025e3
or eax, ebx
mov qword [0x14002df50], r12
lea rcx, [0x14001dc10]
mov dword [0x14002df0c], eax
call fcn.140007614
lea rdx, str.The_MozillaMaintenance_service_path_is_correct.
lea rcx, [0x14002df50]
call fcn.140007008
mov dword [r14], r12d
jmp 0x1400027c8
mov eax, dword [0x14002df0c]
mov ebx, 1
test bl, al
jne 0x140002628
or eax, ebx
mov qword [0x14002df50], r12
lea rcx, [0x14001dc10]
mov dword [0x14002df0c], eax
call fcn.140007614
mov r8, rbp
lea rdx, str.The_MozillaMaintenance_path_is_NOT_correct._It_was:__ls
lea rcx, [0x14002df50]
call fcn.140007008
xor edx, edx
mov dword [r14], ebx
mov r8d, 0x20a
lea rcx, [rsp + 0x60]
call fcn.140008760
mov r8d, 0x104
lea rcx, [rsp + 0x60]
mov rdx, rbp
call fcn.1400094a0
lea rcx, [rsp + 0x60]
call qword [sym.imp.SHLWAPI.dll_PathUnquoteSpacesW]
lea rcx, [rsp + 0x60]
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
test eax, eax
jne 0x1400026c8
mov eax, dword [0x14002df0c]
test bl, al
jne 0x1400026a5
or eax, ebx
mov qword [0x14002df50], r12
lea rcx, [0x14001dc10]
mov dword [0x14002df0c], eax
call fcn.140007614
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.Couldnt_remove_file_spec.____d_
mov r8d, eax
lea rcx, [0x14002df50]
call fcn.140007060
xor eax, eax
jmp 0x1400027ca
lea rdx, [0x140026ae0]
lea rcx, [rsp + 0x60]
call fcn.140006928
test eax, eax
jne 0x140002711
mov eax, dword [0x14002df0c]
test bl, al
jne 0x140002702
or eax, ebx
mov qword [0x14002df50], r12
lea rcx, [0x14001dc10]
mov dword [0x14002df0c], eax
call fcn.140007614
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.Couldnt_append_file_spec.____d_
jmp 0x1400026b2
lea rcx, [rsp + 0x60]
call qword [sym.imp.SHLWAPI.dll_PathQuoteSpacesW]
mov qword [rsp + 0x50], r12
lea rax, [rsp + 0x60]
mov qword [rsp + 0x48], r12
or edx, 0xffffffff
mov qword [rsp + 0x40], r12
mov r9d, edx
mov qword [rsp + 0x38], r12
mov r8d, edx
mov qword [rsp + 0x30], r12
mov rcx, r15
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_ChangeServiceConfigW]
test eax, eax
mov eax, dword [0x14002df0c]
jne 0x140002791
test bl, al
jne 0x14000277f
or eax, ebx
mov qword [0x14002df50], r12
lea rcx, [0x14001dc10]
mov dword [0x14002df0c], eax
call fcn.140007614
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.Could_not_fix_service_path.____d_
jmp 0x1400026b2
test bl, al
jne 0x1400027b0
or eax, ebx
mov qword [0x14002df50], r12
lea rcx, [0x14001dc10]
mov dword [0x14002df0c], eax
call fcn.140007614
lea r8, [rsp + 0x60]
lea rdx, str.Fixed_service_path_to:__ls.
lea rcx, [0x14002df50]
call fcn.140007008
mov eax, ebx
mov rcx, qword [rsp + 0x270]
xor rcx, rsp
call fcn.140007360
add rsp, 0x280
pop r15
pop r14
pop r12
pop rbp
pop rbx
ret