Function at 0x1400c2230
Capabilities:
Query service status

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xa0
mov rax, qword [0x140467f78]
xor rax, rsp
mov qword [rbp + 0x47], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x11], xmm0
xor r14d, r14d
mov qword [rbp - 9], r14
xor edx, edx
xor ecx, ecx
lea r8d, [r14 + 5]
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov qword [rbp - 0x11], rax
lea ebx, [r14 + 1]
test rax, rax
jne 0x1400c22a0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, str.SEUtilServiceControlManager::SEUtilServiceControlManager_OpenSCManager_failed__LastError:_d__n
mov ecx, ebx
call fcn.1400ab7f0
nop
lea rax, [rbp + 0x1f]
mov qword [rbp - 0x19], rax
lea rdx, str.spacedeskHookKmode
lea rcx, [rbp + 0x1f]
call fcn.14008f3f0
nop
mov r8d, 5
mov rdx, rax
lea rcx, [rbp - 0x11]
call fcn.1400c6960
mov rsi, qword [rbp - 9]
test al, al
jne 0x1400c22e8
lea rdx, str.SEDriverLegacyIsEnabled_ServiceEnableAccess_failed__n
mov ecx, ebx
call fcn.1400ab7f0
xor bl, bl
jmp 0x1400c243b
lea rax, [rbp - 0x19]
mov qword [rsp + 0x20], rax
mov r9d, 0x24
lea r8, [rbp + 0x1f]
xor edx, edx
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_QueryServiceStatusEx]
test eax, eax
jne 0x1400c2336
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, str.SEUtilServiceControlManager::ServiceStatusQuery_QueryServiceStatusEx_failed___d__n
mov ecx, ebx
call fcn.1400ab7f0
lea rdx, str.SEDriverLegacyIsEnabled_ServiceStatusQuery_failed__n
mov ecx, ebx
call fcn.1400ab7f0
xor bl, bl
jmp 0x1400c243b
xorps xmm0, xmm0
movups xmmword [rbp - 1], xmm0
mov qword [rbp + 0xf], r14
mov qword [rbp + 0x17], r14
mov qword [rbp + 0xf], r14
mov qword [rbp + 0x17], 7
mov word [rbp - 1], r14w
mov dword [rbp - 0x19], r14d
lea r9, [rbp - 0x19]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_QueryServiceConfigW]
test eax, eax
jne 0x1400c2394
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
je 0x1400c2394
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, str.SEUtilServiceControlManager::ServiceConfigQuery_QueryServiceConfig__1__failed___d__n
mov ecx, ebx
call fcn.1400ab7f0
jmp 0x1400c23da
mov ecx, dword [rbp - 0x19]
call fcn.1402ab3b0
mov rdi, rax
lea r9, [rbp - 0x19]
mov r8d, dword [rbp - 0x19]
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_QueryServiceConfigW]
test eax, eax
jne 0x1400c248c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, str.SEUtilServiceControlManager::ServiceConfigQuery_QueryServiceConfig__2__failed___d__n
mov ecx, ebx
call fcn.1400ab7f0
mov rcx, rdi
call fcn.1402ab340
lea rdx, str.SEDriverLegacyIsEnabled_ServiceConfigQuery_failed__n
mov ecx, ebx
call fcn.1400ab7f0
xor bl, bl
mov rdx, qword [rbp + 0x17]
cmp rdx, 8
jb 0x1400c242a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400c2425
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400c24be
call fcn.1402ab340
mov qword [rbp + 0xf], r14
mov qword [rbp + 0x17], 7
mov word [rbp - 1], r14w
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x1400c244e
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov qword [rbp - 0x11], r14
test rsi, rsi
je 0x1400c2460
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov qword [rbp - 9], r14
movzx eax, bl
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.1402ab320
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
mov ebx, dword [rdi + 4]
mov rdx, qword [rdi + 0x10]
lea rcx, [rbp - 1]
call fcn.14008fef0
mov rcx, rdi
call fcn.1402ab340
test byte [rbp + 0x23], 4
je 0x1400c23e8
cmp ebx, 1
ja 0x1400c23e8
mov bl, 1
jmp 0x1400c23ea
call fcn.1402b2324
int3