Function at 0x14000b620
Capabilities:
Start service

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov r8, qword [rdx + 0x10]
xor r14b, r14b
xor r12d, r12d
mov r13, rdx
mov r15, rcx
test r8, r8
je 0x14000b64b
mov r8, qword [r8 + 8]
jmp 0x14000b64e
mov r8, r12
mov edx, 0x10
mov qword [rsp + 0x80], rbx
lea rcx, [rsp + 0x30]
call sym.SystemInformer.exe_QiOpenService
mov ebp, eax
test eax, eax
js 0x14000b6a6
mov rbx, qword [rsp + 0x30]
xor r8d, r8d
mov rcx, rbx
xor edx, edx
call qword [sym.imp.ADVAPI32.dll_StartServiceW]
nop
test eax, eax
jne 0x14000b6c7
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call sym.SystemInformer.exe_QiDosErrorToNtStatus
mov ebp, eax
test eax, eax
jns 0x14000b6c7
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rdi
test rax, rax
je 0x14000b6d7
mov r8, qword [rax + 8]
mov qword [rsp + 0x88], r8
jmp 0x14000b6e2
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov al, 1
jmp 0x14000bb0e
mov r8, r12
mov qword [rsp + 0x88], r12
lea r9, str.Unable_to_start
xorps xmm1, xmm1
mov rdx, r9
mov rcx, r9
and rdx, 0xfffffffffffffff1
and ecx, 0xf
je 0x14000b720
movdqu xmm0, xmmword [rdx]
pcmpeqw xmm0, xmm1
pmovmskb eax, xmm0
shr eax, cl
bsf ecx, eax
mov dword [rsp + 0x90], ecx
je 0x14000b71c
mov edx, ecx
shr rdx, 1
jmp 0x14000b76b
add rdx, 0x10
movdqu xmm0, xmmword [rdx]
pcmpeqw xmm0, xmm1
pmovmskb eax, xmm0
bsf ecx, eax
mov dword [rsp + 0x90], ecx
jne 0x14000b75d
nop dword [rax + rax]
movdqu xmm0, xmmword [rdx + 0x10]
add rdx, 0x10
pcmpeqw xmm0, xmm1
pmovmskb eax, xmm0
bsf ecx, eax
mov dword [rsp + 0x90], ecx
je 0x14000b740
sub rdx, r9
mov eax, ecx
sar rdx, 1
shr rax, 1
add rdx, rax
add rdx, rdx
mov rsi, r8
and rsi, 0xfffffffffffffff1
mov qword [rsp + 0x38], rdx
mov ecx, r8d
and ecx, 0xf
je 0x14000b7aa
movdqu xmm0, xmmword [rsi]
pcmpeqw xmm0, xmm1
pmovmskb eax, xmm0
shr eax, cl
bsf ecx, eax
mov dword [rsp + 0x98], ecx
je 0x14000b7a6
mov esi, ecx
shr rsi, 1
jmp 0x14000b7ed
add rsi, 0x10
movdqu xmm0, xmmword [rsi]
pcmpeqw xmm0, xmm1
pmovmskb eax, xmm0
bsf ecx, eax
mov dword [rsp + 0x98], ecx
jne 0x14000b7df
movdqu xmm0, xmmword [rsi + 0x10]
add rsi, 0x10
pcmpeqw xmm0, xmm1
pmovmskb eax, xmm0
bsf ecx, eax
mov dword [rsp + 0x98], ecx
je 0x14000b7c2
sub rsi, r8
mov eax, ecx
sar rsi, 1
shr rax, 1
add rsi, rax
add rsi, rsi
lea rbx, [rsi + rdx]
mov rdx, qword [0x1402c4fb8]
lea rcx, [rbx + 0x12]
call sym.SystemInformer.exe_QiCreateObject
mov r8, qword [rsp + 0x38]
lea rdx, str.Unable_to_start
mov rdi, rax
mov qword [rax], rbx
add rax, 0x10
mov qword [rdi + 8], rax
mov word [rax + rbx], r12w
mov rcx, qword [rdi + 8]
call fcn.1402074d0
mov rcx, qword [rdi + 8]
mov r8, rsi
add rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x88]
call fcn.1402074d0
mov rcx, rdi
call sym.SystemInformer.exe_QiAutoDereferenceObject
lea r9, [rsp + 0x88]
mov r8d, ebp
mov rcx, r15
mov rdx, qword [rax + 8]
call fcn.140001c40
mov rsi, qword [rsp + 0x48]
test al, al
je 0x14000b9f7
nop dword [rax]
nop word [rax + rax]
cmp byte [rsp + 0x88], r12b
je 0x14000bb05
mov rax, qword [r13 + 0x10]
test rax, rax
je 0x14000b89b
mov r12, qword [rax + 8]
mov edx, 1
mov rcx, r12
call fcn.1400a2600
mov edi, eax
test eax, eax
js 0x14000b8bb
mov r14b, 1
call sym.SystemInformer.exe_QiUiDisconnectFromPhSvc
jmp 0x14000bb05
mov r8, qword [r13 + 0x10]
lea rdx, str.start
lea rcx, str.Unable_to__s__s.
mov r8, qword [r8 + 8]
call fcn.140001a80
mov rbx, qword ds:[rax + 8]
cmp edi, 0xc0000022
je 0x14000b915
cmp edi, 0xc0000005
je 0x14000b915
mov eax, edi
and eax, 0xfff0000
cmp eax, 0x70000
jne 0x14000b903
movzx eax, di
jmp 0x14000b926
mov eax, edi
and eax, 0xfff0000
cmp eax, 0xb0000
jne 0x14000b92a
mov eax, edi
jmp 0x14000b926
lfence
mov ecx, edi
call qword [sym.imp.ntdll.dll_RtlNtStatusToDosErrorNoTeb]
test eax, eax
jne 0x14000b936
lfence
mov ecx, edi
call sym.SystemInformer.exe_QiGetNtMessage
jmp 0x14000b945
lfence
mov ecx, eax
call sym.SystemInformer.exe_QiGetWin32Message
lea rcx, [0x140236d98]
mov rdi, rax
mov r8d, 0xfffe
test rbx, rbx
je 0x14000b96f
test rax, rax
je 0x14000b966
mov edx, 0x21
jmp 0x14000b980
lea r9, [0x1402332cc]
jmp 0x14000b9d6
lea rbx, [0x1402332cc]
test rdi, rdi
je 0x14000b9cf
mov edx, 9
mov eax, 8
mov r9, rdi
lfence
mov rax, qword [rdi + rax]
mov r9, rbx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov rcx, r15
call sym.SystemInformer.exe_QiShowMessage2
lfence
lea rcx, [rdi - 0x10]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14000b9ed
lfence
call fcn.14013fb00
call sym.SystemInformer.exe_QiUiDisconnectFromPhSvc
jmp 0x14000bb05
lea r9, str.Unable_to_perform_the_operation.
mov qword [rsp + 0x28], rbx
mov edx, 9
mov qword [rsp + 0x20], rcx
mov rcx, r15
call sym.SystemInformer.exe_QiShowMessage2
call sym.SystemInformer.exe_QiUiDisconnectFromPhSvc
jmp 0x14000bb05
mov r8, qword [r13 + 0x10]
lea rdx, str.start
lea rcx, str.Unable_to__s__s.
mov r8, qword [r8 + 8]
call fcn.140001a80
mov rbx, qword [rax + 8]
cmp ebp, 0xc0000022
je 0x14000ba4d
nop
cmp ebp, 0xc0000005
je 0x14000ba4d
mov eax, ebp
and eax, 0xfff0000
cmp eax, 0x70000
jne 0x14000ba3b
movzx eax, bp
jmp 0x14000ba55
mov eax, ebp
and eax, 0xfff0000
cmp eax, 0xb0000
jne 0x14000ba59
mov eax, ebp
jmp 0x14000ba55
mov ecx, ebp
call qword [sym.imp.ntdll.dll_RtlNtStatusToDosErrorNoTeb]
test eax, eax
jne 0x14000ba67
mov ecx, ebp
call sym.SystemInformer.exe_QiGetNtMessage
jmp 0x14000ba6e
mov ecx, eax
call sym.SystemInformer.exe_QiGetWin32Message
lea rcx, [0x140236d98]
mov rdi, rax
mov r8d, 0xfffe
test rbx, rbx
je 0x14000ba9a
test rax, rax
je 0x14000ba91
mov edx, 0x21
jmp 0x14000baab
lea r9, [0x1402332cc]
jmp 0x14000baee
lea rbx, [0x1402332cc]
test rdi, rdi
je 0x14000bae7
mov edx, 9
mov eax, 8
mov r9, rdi
mov r9, rbx
mov rax, qword [rax + rdi]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov rcx, r15
call sym.SystemInformer.exe_QiShowMessage2
lea rcx, [rdi - 0x10]
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x14000bb05
nop
call fcn.14013fb00
jmp 0x14000bb05
lea r9, str.Unable_to_perform_the_operation.
mov qword [rsp + 0x28], rbx
mov edx, 9
mov qword [rsp + 0x20], rcx
mov rcx, r15
call sym.SystemInformer.exe_QiShowMessage2
mov rdi, qword [rsp + 0x40]
movzx eax, r14b
mov rbx, qword [rsp + 0x80]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rbp
ret