Function at 0x140010540
Capabilities:
Delete service

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
mov eax, 0x1050
call fcn.14001efc0
sub rsp, rax
mov rax, qword [0x1400490e8]
xor rax, rsp
mov qword [rsp + 0x1040], rax
mov rbp, rcx
call fcn.140010160
mov edi, 1
test eax, eax
je 0x140010849
xor edx, edx
xor ecx, ecx
mov r8d, 0xf003f
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov rsi, rax
test rax, rax
jne 0x140010644
xor edx, edx
lea rcx, [0x14004b490]
call fcn.14001f988
xor ebx, ebx
test rax, rax
je 0x1400105eb
test ebx, ebx
jne 0x140010629
mov r9d, 0x400
lea r8, [rsp + 0x40]
mov edx, 0xd80a
mov rcx, rax
call qword [sym.imp.USER32.dll_LoadStringW]
mov edx, edi
lea rcx, [0x14004b490]
mov ebx, eax
call fcn.14001f988
inc edi
test rax, rax
jne 0x1400105b3
test ebx, ebx
jne 0x140010629
lea r8, str.Could_not_open_Service_Manager
mov edx, 0x400
lea rcx, [rsp + 0x40]
call fcn.140027ad0
test eax, eax
je 0x140010629
cmp eax, 0xc
je 0x140010889
cmp eax, 0x16
je 0x14001087e
cmp eax, 0x22
je 0x14001087e
cmp eax, 0x50
jne 0x140010873
lea r8, [rbp + 0x68]
xor r9d, r9d
lea rdx, [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
jmp 0x14001084b
lea r14, [rbp + 0x68]
mov r8d, 0x10020
mov rdx, r14
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov rbp, rax
test rax, rax
jne 0x140010714
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
xor edx, edx
lea rcx, [0x14004b490]
call fcn.14001f988
xor ebx, ebx
test rax, rax
je 0x1400106bc
test ebx, ebx
jne 0x1400106fa
mov r9d, 0x400
lea r8, [rsp + 0x40]
mov edx, 0xd80c
mov rcx, rax
call qword [sym.imp.USER32.dll_LoadStringW]
mov edx, edi
lea rcx, [0x14004b490]
mov ebx, eax
call fcn.14001f988
inc edi
test rax, rax
jne 0x140010684
test ebx, ebx
jne 0x1400106fa
lea r8, str.Could_not_open_service
mov edx, 0x400
lea rcx, [rsp + 0x40]
call fcn.140027ad0
test eax, eax
je 0x1400106fa
cmp eax, 0xc
je 0x1400108aa
cmp eax, 0x16
je 0x14001089f
cmp eax, 0x22
je 0x14001089f
cmp eax, 0x50
jne 0x140010894
xor r9d, r9d
lea rdx, [rsp + 0x40]
mov r8, r14
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
jmp 0x14001084b
lea r8, [rsp + 0x20]
mov edx, edi
mov rcx, rbp
call qword [sym.imp.ADVAPI32.dll_ControlService]
test eax, eax
jne 0x1400107b1
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x426
je 0x1400107b1
cmp eax, 0x425
jne 0x140010747
cmp dword [rsp + 0x24], 3
je 0x1400107b1
mov r8d, 0x400
lea rdx, [rsp + 0x40]
mov ecx, 0xd80e
call fcn.14000fdc0
test eax, eax
jne 0x14001079e
lea r8, str.Could_not_stop_service
mov edx, 0x400
lea rcx, [rsp + 0x40]
call fcn.140027ad0
test eax, eax
je 0x14001079e
cmp eax, 0xc
je 0x1400108cb
cmp eax, 0x16
je 0x1400108c0
cmp eax, 0x22
je 0x1400108c0
cmp eax, 0x50
jne 0x1400108b5
xor r9d, r9d
lea rdx, [rsp + 0x40]
mov r8, r14
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rcx, rbp
call qword [sym.imp.ADVAPI32.dll_DeleteService]
mov rcx, rbp
mov ebx, eax
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
test ebx, ebx
jne 0x140010849
mov r8d, 0x400
lea rdx, [rsp + 0x840]
mov ecx, 0xd80d
call fcn.14000fdc0
test eax, eax
jne 0x14001082f
lea r8, str.Could_not_delete_service
mov edx, 0x400
lea rcx, [rsp + 0x840]
call fcn.140027ad0
test eax, eax
je 0x14001082f
cmp eax, 0xc
je 0x1400108ec
cmp eax, 0x16
je 0x1400108e1
cmp eax, 0x22
je 0x1400108e1
cmp eax, 0x50
jne 0x1400108d6
xor r9d, r9d
lea rdx, [rsp + 0x840]
mov r8, r14
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
jmp 0x14001084b
mov eax, edi
mov rcx, qword [rsp + 0x1040]
xor rcx, rsp
call fcn.14001e640
lea r11, [rsp + 0x1050]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
mov ecx, 0x80004005
call fcn.14000d140
int3
mov ecx, 0x80070057
call fcn.14000d140
int3
mov ecx, 0x8007000e
call fcn.14000d140
int3
mov ecx, 0x80004005
call fcn.14000d140
int3
mov ecx, 0x80070057
call fcn.14000d140
int3
mov ecx, 0x8007000e
call fcn.14000d140
int3
mov ecx, 0x80004005
call fcn.14000d140
int3
mov ecx, 0x80070057
call fcn.14000d140
int3
mov ecx, 0x8007000e
call fcn.14000d140
int3
mov ecx, 0x80004005
call fcn.14000d140
int3
mov ecx, 0x80070057
call fcn.14000d140
int3
mov ecx, 0x8007000e
call fcn.14000d140
int3