Function at 0x140027a10
Capabilities:
Start service

Disassembly:
push rbx
sub rsp, 0x70
mov rax, qword [0x14008e010]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rbx, rdx
lea rdx, str.install
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.DLL_lstrcmpiW]
test eax, eax
jne 0x140027a55
call fcn.140028220
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140038b50
add rsp, 0x70
pop rbx
ret
mov rcx, qword [rbx + 8]
lea rdx, str.uninstall
call qword [sym.imp.KERNEL32.DLL_lstrcmpiW]
test eax, eax
jne 0x140027a82
call fcn.140028560
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140038b50
add rsp, 0x70
pop rbx
ret
mov rcx, qword [rbx + 8]
lea rdx, str.start
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x90], rdi
call qword [sym.imp.KERNEL32.DLL_lstrcmpiW]
test eax, eax
jne 0x140027b9c
mov ebx, 1
xor edx, edx
mov r8d, ebx
xor ecx, ecx
call qword [sym.imp.ADVAPI32.DLL_OpenSCManagerW]
mov rdi, rax
test rax, rax
je 0x140027bcf
lea r8d, [rbx + 0xf]
mov rcx, rax
lea rdx, str.jhi_service
call qword [sym.imp.ADVAPI32.DLL_OpenServiceW]
mov rsi, rax
test rax, rax
jne 0x140027b23
mov rcx, rdi
call qword [sym.imp.ADVAPI32.DLL_CloseServiceHandle]
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 5
je 0x140027bda
cmp eax, 0x424
je 0x140027c40
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov edx, eax
lea rcx, str.Open_Service_failed:___d__n
call fcn.14001f150
mov eax, ebx
jmp 0x140027d79
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call qword [sym.imp.ADVAPI32.DLL_StartServiceW]
test eax, eax
jne 0x140027b90
mov rcx, rdi
call qword [sym.imp.ADVAPI32.DLL_CloseServiceHandle]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.DLL_CloseServiceHandle]
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 5
je 0x140027bda
cmp eax, 0x420
jne 0x140027b75
lea rcx, str.Error:_JHI_service_already_running._n
call fcn.14001f150
mov ebx, 5
mov eax, ebx
jmp 0x140027d79
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov edx, eax
lea rcx, str.Start_Service_failed:___d__n
call fcn.14001f150
mov eax, ebx
jmp 0x140027d79
lea rcx, str.JHI_Service_started_successfully_n
jmp 0x140027cce
mov rcx, qword [rbx + 8]
lea rdx, str.stop
call qword [sym.imp.KERNEL32.DLL_lstrcmpiW]
test eax, eax
jne 0x140027cee
mov ebx, 1
xor edx, edx
mov r8d, ebx
xor ecx, ecx
call qword [sym.imp.ADVAPI32.DLL_OpenSCManagerW]
mov rdi, rax
test rax, rax
jne 0x140027c07
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 5
jne 0x140027bf2
lea rcx, str.ACCESS_DENIED:_administrative_privileges_required._n
call fcn.14001f150
mov ebx, 2
mov eax, ebx
jmp 0x140027d79
mov edx, eax
lea rcx, str.OpenSCManager_failed___d__n
call fcn.14001f150
mov eax, ebx
jmp 0x140027d79
mov r8d, 0x20000000
lea rdx, str.jhi_service
mov rcx, rdi
call qword [sym.imp.ADVAPI32.DLL_OpenServiceW]
mov rsi, rax
test rax, rax
jne 0x140027c73
mov rcx, rdi
call qword [sym.imp.ADVAPI32.DLL_CloseServiceHandle]
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 5
je 0x140027bda
cmp eax, 0x424
jne 0x140027c58
lea rcx, str.Error:_the_service_does_not_exist._n
call fcn.14001f150
mov ebx, 4
mov eax, ebx
jmp 0x140027d79
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov edx, eax
lea rcx, str.Stop_Service_failed:___d__n
call fcn.14001f150
mov eax, ebx
jmp 0x140027d79
lea r8, [rsp + 0x20]
mov edx, ebx
mov rcx, rsi
call qword [sym.imp.ADVAPI32.DLL_ControlService]
test eax, eax
jne 0x140027cc7
mov rcx, rdi
call qword [sym.imp.ADVAPI32.DLL_CloseServiceHandle]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.DLL_CloseServiceHandle]
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 5
je 0x140027bda
cmp eax, 0x426
jne 0x140027c58
lea rcx, str.Error:_JHI_service_has_not_been_started._n
call fcn.14001f150
mov ebx, 6
mov eax, ebx
jmp 0x140027d79
lea rcx, str.JHI_Service_terminated_successfully_n
call fcn.14001f150
mov rcx, rdi
call qword [sym.imp.ADVAPI32.DLL_CloseServiceHandle]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.DLL_CloseServiceHandle]
xor ebx, ebx
mov eax, ebx
jmp 0x140027d79
mov rcx, qword [rbx + 8]
lea rdx, [0x14007f5e4]
call qword [sym.imp.KERNEL32.DLL_lstrcmpiW]
test eax, eax
jne 0x140027d20
lea rdx, [0x14007d390]
lea rcx, [0x140090610]
call fcn.140007450
mov rcx, rax
call fcn.1400076f0
jmp 0x140027d77
mov rcx, qword [rbx + 8]
lea rdx, str.console
call qword [sym.imp.KERNEL32.DLL_lstrcmpiW]
test eax, eax
jne 0x140027d48
lea rcx, str.Running_JHI_in_console_is_only_supported_in_debug_or_emulation_mode._n
call fcn.14001f150
mov eax, 1
jmp 0x140027d79
xor ebx, ebx
lea rax, str.jhi_service
mov qword [rsp + 0x40], rax
lea rcx, [rsp + 0x40]
lea rax, [0x140028700]
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], rbx
call qword [sym.imp.ADVAPI32.DLL_StartServiceCtrlDispatcherW]
xor eax, eax
mov rsi, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140038b50
add rsp, 0x70
pop rbx
ret