Function at 0x140004d60
Capabilities:
Check for time delay via gettickcount
Delete service
Query service status
Stop service

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x70
mov rax, qword [0x14005f020]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov rbp, rcx
xor ebx, ebx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
xor edx, edx
xor ecx, ecx
mov r8d, 0xf003f
mov esi, eax
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov rdi, rax
test rax, rax
jne 0x140004dbb
lea rsi, str.CDriverInstaller::DeleteService__:_OpenSCManager_failed:_ErrorCode:___d__
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, rsi
jmp 0x140004f1d
cmp qword [0x14005fd18], 8
lea rdx, [0x14005fd00]
mov r8d, 0x10024
mov rcx, rdi
cmovae rdx, qword [0x14005fd00]
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov rbx, rax
test rax, rax
jne 0x140004dfe
lea rsi, str.CDriverInstaller::DeleteService__:_OpenService_failed:_ErrorCode:___d__
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, rsi
jmp 0x140004f1d
lea rax, [rsp + 0x38]
mov r9d, 0x24
lea r8, [rsp + 0x40]
mov qword [rsp + 0x20], rax
xor edx, edx
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_QueryServiceStatusEx]
test eax, eax
jne 0x140004e37
lea rsi, str.DriverInstaller::DeleteService__:_QueryServiceStatusEx_failed___d__n
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, rsi
jmp 0x140004f1d
mov eax, dword [rsp + 0x44]
cmp eax, 1
je 0x140004eee
cmp eax, 3
je 0x140004e79
lea r8, [rsp + 0x40]
mov edx, 1
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_ControlService]
test eax, eax
jne 0x140004e75
lea rsi, str.CDriverInstaller::DeleteService__:_ControlService_failed___d__n
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, rsi
jmp 0x140004f1d
mov eax, dword [rsp + 0x44]
cmp eax, 1
je 0x140004eee
mov r14d, 0x3e8
mov eax, dword [rsp + 0x58]
cmp rax, 0x2710
jbe 0x140004e97
mov eax, 0x2710
jmp 0x140004e9e
cmp rax, r14
cmovb rax, r14
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x30], rax
call fcn.140005960
lea rax, [rsp + 0x38]
mov r9d, 0x24
lea r8, [rsp + 0x40]
mov qword [rsp + 0x20], rax
xor edx, edx
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_QueryServiceStatusEx]
test eax, eax
je 0x140004f4d
cmp dword [rsp + 0x44], 1
je 0x140004eee
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, esi
cmp eax, 0x4e20
ja 0x140004f33
cmp dword [rsp + 0x44], 1
jne 0x140004e84
lea r8, str.CDriverInstaller::DeleteService__:_MonitorFunction_stopped_successfully_n
mov edx, 0xc8
lea rcx, [rbp + 0x18]
call fcn.140007b90
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_DeleteService]
test eax, eax
jne 0x140004f5f
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r8, str.CDriverInstaller::DeleteService__:_DeleteService_failed:_ErrorCode:___d__
mov r9d, eax
lea rcx, [rbp + 0x18]
mov edx, 0xc8
call fcn.140007b90
xor sil, sil
jmp 0x140004f77
lea rcx, [rbp + 0x18]
mov edx, 0xc8
lea r8, str.CDriverInstaller::DeleteService__:_Wait_timed_out_n
call fcn.140007b90
xor sil, sil
jmp 0x140004f77
lea rsi, str.CDriverInstaller::DeleteService__:_QueryServiceStatusEx_failed___d__n
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, rsi
jmp 0x140004f1d
lea r8, str.CDriverInstaller::DeleteService__:_DeleteService_success_
mov edx, 0xc8
lea rcx, [rbp + 0x18]
call fcn.140007b90
mov sil, 1
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
movzx eax, sil
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.14001f110
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret