Function at 0x14004e180
Capabilities:
Delete service
Query service status

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x2a0
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rsp + 0x2c8], rbx
mov rax, qword [0x140127190]
xor rax, rsp
mov qword [rsp + 0x290], rax
mov rbp, r9
mov rbx, rcx
test r9, r9
je 0x14004e3b8
mov edx, 7
mov qword [rsp + 0x40], rdx
xor r8d, r8d
mov qword [rsp + 0x38], r8
mov word [rsp + 0x28], r8w
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r9
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
mov rsi, rcx
movabs rax, 0x7ffffffffffffffe
cmp rcx, rax
jbe 0x14004e209
call fcn.14009c5b0
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
cmp rdx, rsi
jae 0x14004e222
mov rdx, rsi
lea rcx, [rsp + 0x20]
call fcn.1400a3b30
mov rdx, qword [rsp + 0x40]
jmp 0x14004e240
test rsi, rsi
jne 0x14004e240
mov qword [rsp + 0x38], rsi
lea rax, [rsp + 0x28]
cmp rdx, 8
cmovae rax, qword [rsp + 0x28]
mov word [rax], si
jmp 0x14004e282
test rsi, rsi
je 0x14004e282
lea rcx, [rsp + 0x28]
cmp rdx, 8
cmovae rcx, qword [rsp + 0x28]
lea rdi, [rsi + rsi]
add rdx, rdx
mov r9, rdi
mov r8, rbp
call fcn.1400c9e10
mov qword [rsp + 0x38], rsi
lea rax, [rsp + 0x28]
cmp qword [rsp + 0x40], 8
cmovae rax, qword [rsp + 0x28]
mov word [rdi + rax], 0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x50]
call fcn.14004e0c0
nop
cmp qword [rsp + 0x40], 8
jb 0x14004e2a4
mov rcx, qword [rsp + 0x28]
call fcn.1400c9d50
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rcx, qword [rsp + 0x58]
lea rdx, str.install
call fcn.1400cb920
test eax, eax
jne 0x14004e367
xor edx, edx
xor ecx, ecx
lea r8d, [rax + 1]
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov rdi, rax
test rax, rax
je 0x14004e346
cmp qword [rbx + 0x70], 8
jb 0x14004e2ec
mov rdx, qword [rbx + 0x58]
jmp 0x14004e2f0
lea rdx, [rbx + 0x58]
mov r8d, 0x10004
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov rsi, rax
test rax, rax
jne 0x14004e312
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
jmp 0x14004e346
lea rdx, [rsp + 0x20]
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
test eax, eax
je 0x14004e334
cmp dword [rsp + 0x24], 1
jne 0x14004e334
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_DeleteService]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rbx
call fcn.14004cf10
cmp qword [rsp + 0x70], 8
jb 0x14004e360
mov rcx, qword [rsp + 0x58]
call fcn.1400c9d50
xor eax, eax
jmp 0x14004e413
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rcx, qword [rsp + 0x58]
lea rdx, str.uninstall
call fcn.1400cb920
test eax, eax
jne 0x14004e3a6
mov rcx, rbx
call fcn.14004d020
cmp qword [rsp + 0x70], 8
jb 0x14004e3a2
mov rcx, qword [rsp + 0x58]
call fcn.1400c9d50
xor eax, eax
jmp 0x14004e413
cmp qword [rsp + 0x70], 8
jb 0x14004e3b8
mov rcx, qword [rsp + 0x58]
call fcn.1400c9d50
cmp qword [rbx + 0x70], 8
jb 0x14004e3c5
mov r8, qword [rbx + 0x58]
jmp 0x14004e3c9
lea r8, [rbx + 0x58]
mov edx, 0x104
lea rcx, [rsp + 0x80]
call fcn.1400ce040
lea rdx, [rsp + 0x80]
mov qword [rsp + 0x20], rdx
lea rax, [0x14004cd60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x38], 0
lea rcx, [rsp + 0x20]
call qword [sym.imp.ADVAPI32.dll_StartServiceCtrlDispatcherW]
xor eax, eax
mov rcx, qword [rsp + 0x290]
xor rcx, rsp
call fcn.1400caf00
mov rbx, qword [rsp + 0x2c8]
add rsp, 0x2a0
pop rdi
pop rsi
pop rbp
ret