Function at 0x71f480
Capabilities:
Start service

Disassembly:
push rbp
sub rsp, 0x70
mov rbp, rsp
mov qword [rbp + 0x28], 0
mov qword [rbp + 0x20], 0
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x48], rbp
mov qword [rbp + 0x80], rcx
mov qword [rbp + 0x88], rdx
mov qword [rbp + 0x90], r8
mov qword [rbp + 0x98], r9
movzx rax, byte [rbp + 0xa0]
mov byte [rbp + 0xa0], al
mov rax, qword [rbp + 0xa8]
mov qword [rbp + 0xa8], rax
movzx rax, byte [rbp + 0xb0]
mov byte [rbp + 0xb0], al
movzx rax, byte [rbp + 0xb8]
mov byte [rbp + 0xb8], al
mov rcx, qword [rbp + 0x88]
call fcn.00410a40
mov rcx, qword [rbp + 0x90]
call fcn.00410a40
mov rcx, qword [rbp + 0x98]
call fcn.00410a40
mov rcx, qword [rbp + 0xa8]
call fcn.00410a40
nop
mov rcx, qword [rbp + 0x80]
call fcn.004108b0
xor ecx, ecx
xor edx, edx
mov r8d, 0xf003f
call sub.advapi32.dll_OpenSCManagerW
mov qword [rbp + 0x68], rax
cmp qword [rbp + 0x68], 0
jne 0x71f593
call sub.kernel32.dll_GetLastError
lea rcx, [rbp + 0x38]
mov edx, eax
call fcn.004366a0
lea rcx, [rbp + 0x40]
lea rdx, [0x0071f81c]
mov r8, qword [rbp + 0x38]
call fcn.00412170
mov rcx, qword [rbp + 0x40]
xor edx, edx
call fcn.007121e0
jmp 0x71f737
mov qword [rbp + 0x60], 0
nop
mov rcx, qword [rbp + 0x88]
call fcn.00411d40
mov rcx, qword [rbp + 0x68]
mov rdx, rax
mov r8d, 0xf01ff
call sub.advapi32.dll_OpenServiceW
mov qword [rbp + 0x60], rax
cmp qword [rbp + 0x60], 0
jne 0x71f5e8
lea rcx, [0x0071f86c]
xor edx, edx
call fcn.007121e0
mov rcx, rbp
call fcn.0071f1a0
cmp qword [rbp + 0x60], 0
je 0x71f729
jmp 0x71f60e
lea rcx, [0x0071f8b0]
xor edx, edx
call fcn.007121e0
mov rcx, qword [rbp + 0x80]
lea rdx, [0x0071f8ec]
call fcn.00410ee0
jmp 0x71f729
cmp qword [rbp + 0xa8], 0
je 0x71f69f
nop
mov rcx, qword [0x00718aa0]
mov dl, 1
call fcn.0071a4c0
mov qword [rbp + 0x58], rax
nop
mov rcx, qword [rbp + 0x58]
mov rdx, 0xffffffff80000002
call fcn.0071a810
lea rcx, [rbp + 0x30]
lea rdx, [0x0071f908]
mov r8, qword [rbp + 0x88]
call fcn.00412170
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x30]
xor r8, r8
call fcn.0071aa00
test al, al
je 0x71f68b
mov rcx, qword [rbp + 0x58]
lea rdx, [0x0071f95c]
mov r8, qword [rbp + 0xa8]
call fcn.0071bbc0
mov rcx, qword [rbp + 0x58]
call fcn.0071a7d0
nop
mov rcx, qword [rbp + 0x58]
call fcn.0040d6c0
jmp 0x71f69f
cmp byte [rbp + 0xa0], 0
je 0x71f6fa
mov qword [rbp + 0x50], 0
mov rcx, qword [rbp + 0x60]
xor edx, edx
mov r8, qword [rbp + 0x50]
call sub.advapi32.dll_StartServiceW
test eax, eax
jne 0x71f6fa
call sub.kernel32.dll_GetLastError
lea rcx, [rbp + 0x20]
mov edx, eax
call fcn.004366a0
lea rcx, [rbp + 0x28]
lea rdx, [0x0071f980]
mov r8, qword [rbp + 0x20]
call fcn.00412170
mov rcx, qword [rbp + 0x28]
xor edx, edx
call fcn.007121e0
mov rcx, rbp
call fcn.0071f3c0
mov rcx, qword [rbp + 0x80]
lea rdx, [0x0071f9c4]
call fcn.00410ee0
nop
cmp qword [rbp + 0x60], 0
je 0x71f71e
mov rcx, qword [rbp + 0x60]
call sub.advapi32.dll_CloseServiceHandle
mov rcx, qword [rbp + 0x68]
call sub.advapi32.dll_CloseServiceHandle
jmp 0x71f736
xor ecx, ecx
mov rdx, qword [rbp + 0x48]
call fcn.0071f7a0
jmp 0x71f737
nop
lea rcx, [rbp + 0x20]
mov edx, 5
call fcn.00410990
lea rcx, [rbp + 0x88]
mov edx, 3
call fcn.00410990
lea rcx, [rbp + 0xa8]
call fcn.004108b0
mov rax, qword [rbp + 0x80]
lea rsp, [rbp + 0x70]
pop rbp
ret