Function at 0x14000ec10
Capabilities:
Delete service
Query service status
Stop service

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], r14
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov rax, qword [0x140108ab8]
xor rax, rsp
mov qword [rbp + 0x47], rax
and qword [rbp + 0xf], 0
lea r14, fcn.14000e2f0
and qword [rbp - 1], 0
xorps xmm0, xmm0
xor eax, eax
mov qword [rbp + 7], r14
mov qword [rbp - 9], r14
movups xmmword [rbp + 0x1f], xmm0
mov dword [rbp + 0x3f], eax
movups xmmword [rbp + 0x2f], xmm0
call qword [sym.imp.api_ms_win_core_sysinfo_l1_1_0.dll_GetTickCount64]
nop dword [rax + rax]
xor edx, edx
xor ecx, ecx
mov r8d, 0xf003f
mov rdi, rax
call qword [sym.imp.api_ms_win_service_management_l1_1_0.dll_OpenSCManagerW]
nop dword [rax + rax]
mov rcx, qword [rbp + 0xf]
mov rbx, rax
cmp rax, rcx
je 0x14000ecb8
test rcx, rcx
je 0x14000ecb1
mov rcx, qword [rbp + 7]
mov rax, qword [rcx]
lea rcx, [rbp + 7]
call qword [0x1400d1188]
test al, al
je 0x14000ef55
mov rcx, rbx
mov qword [rbp + 0xf], rbx
test rcx, rcx
je 0x14000ee79
mov r8d, 0xf01ff
lea rdx, str.SensorDataService
call qword [sym.imp.api_ms_win_service_management_l1_1_0.dll_OpenServiceW]
nop dword [rax + rax]
mov rcx, qword [rbp - 1]
mov rbx, rax
cmp rax, rcx
je 0x14000ed0b
test rcx, rcx
je 0x14000ed04
mov rcx, qword [rbp - 9]
mov rax, qword [rcx]
lea rcx, [rbp - 9]
call qword [0x1400d1188]
test al, al
je 0x14000ef75
mov rcx, rbx
mov qword [rbp - 1], rbx
test rcx, rcx
je 0x14000ee19
lea r8, [rbp + 0x1f]
mov edx, 1
call qword [sym.imp.api_ms_win_service_winsvc_l1_1_0.dll_ControlService]
nop dword [rax + rax]
test eax, eax
je 0x14000ed89
cmp dword [rbp + 0x23], 1
je 0x14000ed89
lea rbx, [rdi + 0x3a98]
mov ecx, dword [rbp + 0x37]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
nop dword [rax + rax]
call qword [sym.imp.api_ms_win_core_sysinfo_l1_1_0.dll_GetTickCount64]
nop dword [rax + rax]
cmp rax, rbx
ja 0x14000ed89
mov rcx, qword [rbp - 1]
lea rax, [rbp + 0x17]
mov r9d, 0x24
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x1f]
xor edx, edx
call qword [sym.imp.api_ms_win_service_management_l2_1_0.dll_QueryServiceStatusEx]
nop dword [rax + rax]
test eax, eax
je 0x14000ed89
cmp dword [rbp + 0x23], 1
jne 0x14000ed3a
mov rcx, qword [rbp - 1]
call qword [sym.imp.api_ms_win_service_management_l1_1_0.dll_DeleteService]
nop dword [rax + rax]
test eax, eax
jne 0x14000edc0
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov edx, eax
lea rcx, str.Service:_DeleteService_failed___u__n
call qword [sym.imp.msvcrt.dll_wprintf_s]
nop dword [rax + rax]
jmp 0x14000edd3
lea rcx, str.Service:_Uninstalled_successfully_n
call qword [sym.imp.msvcrt.dll_wprintf_s]
nop dword [rax + rax]
cmp qword [rbp - 1], 0
mov qword [rbp - 9], r14
je 0x14000edf4
lea rcx, [rbp - 9]
call fcn.14000e2f0
test al, al
je 0x14000ef95
and qword [rbp - 1], 0
cmp qword [rbp + 0xf], 0
mov qword [rbp + 7], r14
je 0x14000eecf
lea rcx, [rbp + 7]
call fcn.14000e2f0
test al, al
je 0x14000ef15
jmp 0x14000eecf
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov edx, eax
lea rcx, str.Service:_OpenService_failed___u__n
call qword [sym.imp.msvcrt.dll_wprintf_s]
nop dword [rax + rax]
cmp qword [rbp - 1], 0
mov qword [rbp - 9], r14
je 0x14000ee5b
lea rcx, [rbp - 9]
call fcn.14000e2f0
test al, al
je 0x14000efb5
and qword [rbp - 1], 0
cmp qword [rbp + 0xf], 0
mov qword [rbp + 7], r14
je 0x14000eecf
lea rcx, [rbp + 7]
call fcn.14000e2f0
test al, al
je 0x14000ef35
jmp 0x14000eecf
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
mov edx, eax
lea rcx, str.Service:_OpenSCManager_failed___u__n
call qword [sym.imp.msvcrt.dll_wprintf_s]
nop dword [rax + rax]
cmp qword [rbp - 1], 0
je 0x14000eeb7
lea rcx, [rbp - 9]
call fcn.14000e2f0
test al, al
je 0x14000efd5
and qword [rbp - 1], 0
cmp qword [rbp + 0xf], 0
mov qword [rbp + 7], r14
je 0x14000eecf
lea rcx, [rbp + 7]
call fcn.14000e2f0
test al, al
je 0x14000eef5
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.1400c6c80
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov r14, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
test eax, eax
jle 0x14000ef0d
movzx eax, ax
or eax, 0x80070000
mov ecx, eax
call fcn.14000e83c
int3
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
test eax, eax
jle 0x14000ef2d
movzx eax, ax
or eax, 0x80070000
mov ecx, eax
call fcn.14000e83c
int3
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
test eax, eax
jle 0x14000ef4d
movzx eax, ax
or eax, 0x80070000
mov ecx, eax
call fcn.14000e83c
int3
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
test eax, eax
jle 0x14000ef6d
movzx eax, ax
or eax, 0x80070000
mov ecx, eax
call fcn.14000e83c
int3
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
test eax, eax
jle 0x14000ef8d
movzx eax, ax
or eax, 0x80070000
mov ecx, eax
call fcn.14000e83c
int3
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
test eax, eax
jle 0x14000efad
movzx eax, ax
or eax, 0x80070000
mov ecx, eax
call fcn.14000e83c
int3
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
test eax, eax
jle 0x14000efcd
movzx eax, ax
or eax, 0x80070000
mov ecx, eax
call fcn.14000e83c
int3
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
test eax, eax
jle 0x14000efed
movzx eax, ax
or eax, 0x80070000
mov ecx, eax
call fcn.14000e83c
int3