Function at 0x140024250
Capabilities:
Delete service

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rax - 0xa8]
sub rsp, 0x190
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x140232230]
xor rax, rsp
mov qword [rbp + 0x80], rax
mov r14, rcx
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], 7
xor r15d, r15d
mov qword [rsp + 0x38], r15
mov word [rsp + 0x28], r15w
lea r8d, [r15 + 0x25]
lea rdx, str._driver___close_____Entering_routine.
lea rcx, [rsp + 0x28]
call fcn.14000dc20
nop
lea r8d, [r15 + 5]
lea rdx, [rsp + 0x28]
call fcn.140078560
lea rdi, [r14 + 0x10]
cmp qword [rdi + 0x18], 8
jb 0x1400242e4
mov rax, qword [rdi]
jmp 0x1400242e7
mov rax, rdi
mov qword [rsp + 0x20], rax
lea rdx, str._driver___close____closing_driver___name:___1__
lea rcx, [rbp - 0x80]
call fcn.140021a10
mov rbx, rax
cmp byte [rax + 0x44], 0
je 0x14002430d
mov rcx, rax
call fcn.140009270
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.14001a440
inc dword [rbx + 0x3c]
mov edx, dword [rbx + 0x3c]
cmp qword [rbx + 0x30], 0
je 0x140024382
mov r9d, dword [rbx + 0x40]
cmp edx, r9d
jge 0x140024382
mov r10, qword [rbx + 0x18]
movsxd rcx, edx
test edx, edx
jns 0x14002435e
mov rax, rcx
neg rax
je 0x14002435e
or rax, 0xffffffffffffffff
sub rax, rcx
shr rax, 5
lea rax, [rax*4 + 4]
mov r8, r10
sub r8, rax
jmp 0x140024369
mov rax, rcx
shr rax, 5
lea r8, [r10 + rax*4]
and ecx, 0x1f
mov eax, 1
shl eax, cl
test dword [r8], eax
je 0x140024382
inc edx
mov dword [rbx + 0x3c], edx
cmp edx, r9d
jl 0x140024334
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.14000dbe0
nop
lea rcx, [rbp - 0x80]
call fcn.1400090e0
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], 7
mov qword [rsp + 0x38], r15
mov word [rsp + 0x28], r15w
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x28]
call fcn.14000e0c0
nop
mov r8d, 5
lea rdx, [rsp + 0x28]
call fcn.140078560
cmp byte [r14 + 0x70], 0
jne 0x14002446a
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], 7
mov qword [rsp + 0x38], r15
mov word [rsp + 0x28], r15w
mov r8d, 0x40
lea rdx, str._driver___close_____Tried_to_close_driver__but_it_wasnt_loaded.
lea rcx, [rsp + 0x28]
call fcn.14000dc20
nop
mov r8d, 3
lea rdx, [rsp + 0x28]
call fcn.140078560
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], 7
mov qword [rsp + 0x38], r15
mov word [rsp + 0x28], r15w
mov r8d, 0x3d
lea rdx, str._driver___close_____Leaving_routine__without_doing_anything_.
lea rcx, [rsp + 0x28]
call fcn.14000dc20
nop
jmp 0x14002462f
mov rcx, r14
call fcn.1400250e0
cmp byte [r14], 0
je 0x1400245ae
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], 7
mov qword [rsp + 0x38], r15
mov word [rsp + 0x28], r15w
mov r8d, 0x27
lea rdx, str._driver___close_____driver_is_removable
lea rcx, [rsp + 0x28]
call fcn.14000dc20
nop
mov r8d, 6
lea rdx, [rsp + 0x28]
call fcn.140078560
xor edx, edx
xor ecx, ecx
mov r8d, 0xf003f
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov rsi, rax
test rax, rax
jne 0x140024520
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
lea rcx, [rsp + 0x28]
call fcn.1401670f4
nop
lea rax, vtable.win32_error.0
mov qword [rsp + 0x28], rax
lea rax, str.OpenSCManager
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], r15
mov dword [rsp + 0x50], ebx
lea rdx, [0x14022dc38]
lea rcx, [rsp + 0x28]
call fcn.140170da8
int3
cmp qword [rdi + 0x18], 8
jb 0x14002452a
mov rdi, qword [rdi]
mov r8d, 0xf01ff
mov rdx, rdi
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov rbx, rax
test rax, rax
jne 0x140024593
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
lea rcx, [rsp + 0x28]
call fcn.1401670f4
nop
lea rax, vtable.win32_error.0
mov qword [rsp + 0x28], rax
lea rax, str.OpenService
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], r15
mov dword [rsp + 0x50], ebx
lea rdx, [0x14022dc38]
lea rcx, [rsp + 0x28]
call fcn.140170da8
int3
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_DeleteService]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], 7
mov qword [rsp + 0x38], r15
mov word [rsp + 0x28], r15w
mov r8d, 0x23
lea rdx, str._driver___close_____unloaded_driver
lea rcx, [rsp + 0x28]
call fcn.14000dc20
nop
mov r8d, 5
lea rdx, [rsp + 0x28]
call fcn.140078560
mov byte [r14 + 0x70], 0
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], 7
mov qword [rsp + 0x38], r15
mov word [rsp + 0x28], r15w
mov r8d, 0x24
lea rdx, str._driver___close_____Leaving_routine.
lea rcx, [rsp + 0x28]
call fcn.14000dc20
nop
mov r8d, 5
lea rdx, [rsp + 0x28]
call fcn.140078560
nop
cmp qword [rsp + 0x78], 8
jb 0x140024652
mov rcx, qword [rsp + 0x60]
call fcn.1401669a0
mov word [rsp + 0x60], r15w
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], 7
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.140166980
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret