Function at 0x140037190
Capabilities:
Delete service

Disassembly:
jmp 0x140037190
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xd0
mov rdi, rsp
mov ecx, 0x34
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xe0]
mov qword [rsp + 0xa0], 0xfffffffffffffffe
mov rax, qword [rsp + 0xe0]
add rax, 8
mov rcx, rax
call fcn.14000110e
mov rcx, rax
call fcn.14000127b
mov r8d, 0xf003f
xor edx, edx
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov rdx, rax
lea rcx, [rsp + 0x28]
call fcn.1400014a1
nop
lea rcx, [rsp + 0x28]
call fcn.140001dc0
test rax, rax
je 0x140037217
mov dword [rsp + 0xa8], 1
jmp 0x140037222
mov dword [rsp + 0xa8], 0
mov eax, dword [rsp + 0xa8]
mov dword [rsp + 0x34], eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.14000213a
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x34], 0
je 0x14003725e
lea rax, [0x140171b40]
test rax, rax
je 0x14003725e
mov dword [rsp + 0xac], 1
jmp 0x140037269
mov dword [rsp + 0xac], 0
mov eax, dword [rsp + 0xac]
mov dword [rsp + 0x3c], eax
cmp dword [rsp + 0x3c], 0
jne 0x1400372a9
mov edx, dword [rsp + 0x38]
lea rcx, [rsp + 0x88]
call fcn.14000159b
mov eax, dword [rax]
mov dword [rsp + 0x84], eax
lea rdx, [0x1401df3b8]
lea rcx, [rsp + 0x84]
call fcn.1400a2ad0
xor eax, eax
test eax, eax
jne 0x14003723e
xor eax, eax
test eax, eax
jne 0x1400371fb
mov rax, qword [rsp + 0xe0]
mov rcx, rax
call fcn.14000110e
mov qword [rsp + 0xb0], rax
lea rcx, [rsp + 0x28]
call fcn.140001dc0
mov r8d, 0x10000
mov rcx, qword [rsp + 0xb0]
mov rdx, rcx
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.1400014a1
nop
lea rcx, [rsp + 0x48]
call fcn.140001dc0
test rax, rax
je 0x14003731f
mov dword [rsp + 0xb8], 1
jmp 0x14003732a
mov dword [rsp + 0xb8], 0
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x54], eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.14000213a
mov dword [rsp + 0x58], eax
cmp dword [rsp + 0x54], 0
je 0x140037366
lea rax, [0x140171b48]
test rax, rax
je 0x140037366
mov dword [rsp + 0xbc], 1
jmp 0x140037371
mov dword [rsp + 0xbc], 0
mov eax, dword [rsp + 0xbc]
mov dword [rsp + 0x5c], eax
cmp dword [rsp + 0x5c], 0
jne 0x1400373b1
mov edx, dword [rsp + 0x58]
lea rcx, [rsp + 0x90]
call fcn.14000159b
mov eax, dword [rax]
mov dword [rsp + 0x8c], eax
lea rdx, [0x1401df3b8]
lea rcx, [rsp + 0x8c]
call fcn.1400a2ad0
xor eax, eax
test eax, eax
jne 0x140037346
xor eax, eax
test eax, eax
jne 0x140037303
lea rcx, [rsp + 0x48]
call fcn.140001dc0
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_DeleteService]
test eax, eax
je 0x1400373e5
mov dword [rsp + 0xc0], 1
jmp 0x1400373f0
mov dword [rsp + 0xc0], 0
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0x60], eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.14000213a
mov dword [rsp + 0x64], eax
cmp dword [rsp + 0x60], 0
je 0x14003742c
lea rax, str.::DeleteService_hService_
test rax, rax
je 0x14003742c
mov dword [rsp + 0xc4], 1
jmp 0x140037437
mov dword [rsp + 0xc4], 0
mov eax, dword [rsp + 0xc4]
mov dword [rsp + 0x68], eax
cmp dword [rsp + 0x68], 0
jne 0x140037477
mov edx, dword [rsp + 0x64]
lea rcx, [rsp + 0x98]
call fcn.14000159b
mov eax, dword [rax]
mov dword [rsp + 0x94], eax
lea rdx, [0x1401df3b8]
lea rcx, [rsp + 0x94]
call fcn.1400a2ad0
xor eax, eax
test eax, eax
jne 0x14003740c
xor eax, eax
test eax, eax
jne 0x1400373c1
lea rcx, [rsp + 0x48]
call fcn.1400021b7
nop
lea rcx, [rsp + 0x28]
call fcn.1400021b7
nop
jmp 0x1400374a8
xor eax, eax
mov rdi, rax
mov rcx, rsp
lea rdx, [0x14017be78]
call fcn.14009e8b0
mov rax, rdi
add rsp, 0xd0
pop rdi
ret