Function at 0x140007440
Capabilities:
Create service
Modify service
Persist via windows service
Query service configuration
Start service

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xf0
mov qword [rbp - 0x29], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
mov rax, qword [0x140036038]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov rdi, rcx
xor r14d, r14d
mov dword [rbp - 0x39], r14d
cmp qword [rcx + 8], r14
jne 0x14000749b
lea rcx, str.the_SCM_handl_is_NULL.
call fcn.14000a590
xor al, al
jmp 0x1400078e2
lea rbx, [rcx + 0x18]
mov rdx, rbx
lea rcx, [rbp - 0x21]
call fcn.140004180
nop
mov rdx, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x1400074b9
mov rdx, qword [rbx]
lea rcx, str.Binary_is___s_
call fcn.14000a500
nop
movdqa xmm0, xmmword [0x140030c50]
movdqu xmmword [rbp + 0xf], xmm0
mov byte [rbp - 1], 0
mov dword [rbp - 0x39], 1
mov rdx, qword [rbp - 0x11]
inc rdx
lea rcx, [rbp - 1]
call fcn.1400070a0
mov r8d, 1
lea rdx, [0x14002f560]
lea rcx, [rbp - 1]
call fcn.140004570
lea rdx, [rbp - 0x21]
cmp qword [rbp - 9], 0x10
cmovae rdx, qword [rbp - 0x21]
mov r8, qword [rbp - 0x11]
lea rcx, [rbp - 1]
call fcn.140004570
mov r8d, 1
lea rdx, [0x14002f560]
lea rcx, [rbp - 1]
call fcn.140004570
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp - 9]
cmp rdx, 0x10
jb 0x140007586
inc rdx
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007581
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140007916
call fcn.14000d4b4
movups xmmword [rbp - 0x21], xmm6
movups xmmword [rbp - 0x11], xmm7
mov rdx, qword [rbp + 0x17]
cmp rdx, 0x10
jb 0x1400075c9
inc rdx
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400075c4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000791c
call fcn.14000d4b4
mov r8d, 0xa
lea rdx, str.___service
lea rcx, [rbp - 0x21]
call fcn.140004570
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r9, [rbp - 0x21]
cmp qword [rbp - 9], 0x10
cmovae r9, qword [rbp - 0x21]
lea rsi, [0x140036d20]
mov r8, rsi
cmp qword [0x140036d38], 0x10
cmovae r8, qword [0x140036d20]
mov rdx, rsi
cmovae rdx, qword [0x140036d20]
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x58], r14
lea rax, str.RPCSS
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], r9
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x28], 2
mov dword [rsp + 0x20], 0x110
mov r9d, 0xf01ff
mov rcx, qword [rdi + 8]
call qword [sym.imp.ADVAPI32.dll_CreateServiceA]
mov qword [rdi + 0x10], rax
test rax, rax
jne 0x1400077ff
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rdx, rsi
cmp qword [0x140036d38], 0x10
cmovae rdx, qword [0x140036d20]
mov r8d, eax
lea rcx, str.error_happens_during_creating_a_service_:_s.Error_Code:_d.
call fcn.14000a590
cmp ebx, 0x431
jne 0x140007776
lea rcx, str.__________BEGIN___CServiceMgr::startService____________
call fcn.14000a500
mov rax, qword [rdi + 0x10]
test rax, rax
jne 0x140007722
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rdx, rsi
cmp qword [0x140036d38], 0x10
cmovae rdx, qword [0x140036d20]
mov r8d, 0xf01ff
mov rcx, qword [rdi + 8]
call qword [sym.imp.ADVAPI32.dll_OpenServiceA]
mov qword [rdi + 0x10], rax
test rax, rax
jne 0x140007722
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp qword [0x140036d38], 0x10
cmovae rsi, qword [0x140036d20]
mov r8d, eax
mov rdx, rsi
lea rcx, str.Couldnt_open_service__s.ErrorCode:_d
call fcn.14000a590
xor bl, bl
jmp 0x1400078a8
mov edx, 0x1000
mov ecx, 0x40
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov rbx, rax
test rax, rax
jne 0x140007743
lea rcx, str.Allocate_failed.
jmp 0x140007765
lea r9, [rbp - 0x39]
mov r8d, 0x1000
mov rdx, rbx
mov rcx, qword [rdi + 0x10]
call qword [sym.imp.ADVAPI32.dll_QueryServiceConfigA]
test eax, eax
jne 0x14000777d
lea rcx, str.QueryServiceConfig_failed.
call fcn.14000a590
lea rcx, str.Query_Services_StartType_fail
call fcn.14000a590
xor bl, bl
jmp 0x1400078a8
mov esi, dword [rbx + 4]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LocalFree]
lea rcx, str.QueryServiceConfig_successfully.
call fcn.14000a500
cmp esi, 2
jne 0x1400077b9
mov rcx, rdi
call fcn.140008bc0
test al, al
jne 0x1400077e2
lea rcx, str.Start_Service_fail
call fcn.14000a590
xor bl, bl
jmp 0x1400078a8
cmp esi, 3
jne 0x1400077dd
mov rcx, rdi
call fcn.140008a30
test eax, eax
jne 0x14000779a
lea rcx, str.Change_starting_type_fail.
call fcn.14000a590
xor bl, bl
jmp 0x1400078a8
cmp esi, 4
je 0x1400077be
lea rcx, str.__________END___CServiceMgr::startService_____________n
call fcn.14000a500
lea rcx, str.startService_successfully.
call fcn.14000a500
jmp 0x1400078a6
lea rcx, str.Service_for_runing_HonorSuite_applications_autorun.
mov qword [rbp - 0x31], rcx
lea r8, [rbp - 0x31]
mov edx, 1
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_ChangeServiceConfig2A]
test eax, eax
jne 0x140007836
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.ChangeServiceConfig2_failed__errno___d
call fcn.14000a590
jmp 0x140007846
mov rdx, qword [rbp - 0x31]
lea rcx, str.service_descpition_is___s_
call fcn.14000a500
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor r8d, r8d
xor edx, edx
mov rcx, qword [rdi + 0x10]
call qword [sym.imp.ADVAPI32.dll_StartServiceA]
test eax, eax
jne 0x14000788d
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp qword [0x140036d38], 0x10
cmovae rsi, qword [0x140036d20]
mov r8d, eax
mov rdx, rsi
lea rcx, str.error_happens_during_starting_a_service:_s.Error_Code:_d
call fcn.14000a590
xor bl, bl
jmp 0x1400078a8
cmp qword [rbx + 0x18], 0x10
jb 0x140007897
mov rbx, qword [rbx]
mov rdx, rbx
lea rcx, str.Install_service_:_s_successfully.
call fcn.14000a500
mov bl, 1
mov rdx, qword [rbp - 9]
cmp rdx, 0x10
jb 0x1400078df
inc rdx
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400078da
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140007910
call fcn.14000d4b4
movzx eax, bl
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.14000d490
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.14001179c
nop
call fcn.14001179c
nop
call fcn.14001179c
int3