Function at 0x140080870
Capabilities:
Query service status

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov rax, qword [0x1404953c0]
xor rax, rsp
mov qword [rbp + 0x78], rax
mov rdi, rdx
mov rbx, rcx
xor esi, esi
mov dword [rsp + 0x30], esi
cmp qword [rcx + 0x10], rsi
jne 0x140080958
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], rsi
lea r8d, [rsi + 0x12]
lea rdx, str.empty_service_name
lea rcx, [rsp + 0x38]
call fcn.140015370
nop
lea rcx, [rbp - 0x10]
call fcn.1400098d0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x1400808e8
mov rax, qword [rax]
mov rdx, rax
lea rcx, [0x1404abb40]
call fcn.1400347d0
lea rdx, [rsp + 0x38]
cmp qword [rsp + 0x50], 0xf
cmova rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x48]
mov rcx, rax
call fcn.1400347d0
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.140034b90
movzx edx, al
mov rcx, rbx
call fcn.140034620
mov rcx, rbx
call fcn.14002ddd0
nop
lea rcx, [rbp - 0x10]
call fcn.140016400
nop
lea rcx, [rsp + 0x38]
call fcn.140016400
xor al, al
jmp 0x140080e0d
mov qword [rbp - 0x18], rsi
xor edx, edx
xor ecx, ecx
mov r8d, 0xf003f
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov qword [rbp - 0x18], rax
test rax, rax
jne 0x140080ab8
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop
mov edx, eax
lea rcx, [rbp - 0x48]
call fcn.140070e60
mov ebx, 1
mov dword [rsp + 0x30], ebx
lea r9d, [rbx + 0x2e]
lea r8, str.Could_not_open_Service_Control_Manager__Error:
xor edx, edx
lea rcx, [rbp - 0x48]
call fcn.14001fe10
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x48], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x38], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x48], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 7
mov word [rax], si
or ebx, 2
mov dword [rsp + 0x30], ebx
lea r8, [0x14041bf78]
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x58]
call fcn.14001e4f0
nop
and ebx, 0xfffffffd
mov dword [rsp + 0x30], ebx
lea rcx, [rsp + 0x38]
call fcn.1400166f0
and ebx, 0xfffffffe
mov dword [rsp + 0x30], ebx
lea rcx, [rbp - 0x48]
call fcn.1400166f0
lea rcx, [rsp + 0x58]
call fcn.1400098d0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x140080a32
mov rax, qword [rax]
mov rdx, rax
lea rcx, [0x1404abb40]
call fcn.1400347d0
mov rbx, rax
lea rdx, [rbp + 0x58]
lea rcx, [rbp - 0x68]
call fcn.14009c1c0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x140080a60
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call fcn.1400347d0
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.140034b90
movzx edx, al
mov rcx, rbx
call fcn.140034620
mov rcx, rbx
call fcn.14002ddd0
nop
lea rcx, [rbp - 0x68]
call fcn.140016400
nop
lea rcx, [rsp + 0x58]
call fcn.140016400
nop
lea rcx, [rbp + 0x58]
call fcn.1400166f0
xor bl, bl
jmp 0x140080e01
mov qword [rbp - 0x20], rsi
cmp qword [rbx + 0x18], 7
jbe 0x140080ac6
mov rbx, qword [rbx]
mov r8d, 5
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov qword [rbp - 0x20], rax
test rax, rax
jne 0x140080c20
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop
mov edx, eax
lea rcx, [rbp + 0x10]
call fcn.140070e60
mov ebx, 8
mov dword [rsp + 0x30], ebx
lea r9d, [rbx + 0x17]
lea r8, str.Could_not_open_service__Error:
xor edx, edx
lea rcx, [rbp + 0x10]
call fcn.14001fe10
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x78], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 7
mov word [rax], si
or ebx, 0x10
mov dword [rsp + 0x30], ebx
lea r8, [0x14041bf78]
lea rdx, [rsp + 0x78]
lea rcx, [rbp - 0x10]
call fcn.14001e4f0
nop
and ebx, 0xffffffef
mov dword [rsp + 0x30], ebx
lea rcx, [rsp + 0x78]
call fcn.1400166f0
and ebx, 0xfffffff7
mov dword [rsp + 0x30], ebx
lea rcx, [rbp + 0x10]
call fcn.1400166f0
lea rcx, [rbp - 0x68]
call fcn.1400098d0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x140080b9b
mov rax, qword [rax]
mov rdx, rax
lea rcx, [0x1404abb40]
call fcn.1400347d0
mov rbx, rax
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x58]
call fcn.14009c1c0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x140080bca
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call fcn.1400347d0
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.140034b90
movzx edx, al
mov rcx, rbx
call fcn.140034620
mov rcx, rbx
call fcn.14002ddd0
nop
lea rcx, [rsp + 0x58]
call fcn.140016400
nop
lea rcx, [rbp - 0x68]
call fcn.140016400
nop
lea rcx, [rbp - 0x10]
call fcn.1400166f0
jmp 0x140080df5
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
mov dword [rbp + 0x50], ecx
mov dword [rbp - 0x28], esi
lea rcx, [rbp - 0x28]
mov qword [rsp + 0x20], rcx
mov r9d, 0x24
lea r8, [rbp + 0x30]
xor edx, edx
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_QueryServiceStatusEx]
test eax, eax
jne 0x140080d36
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop
mov edx, eax
lea rcx, [rbp - 0x10]
call fcn.140070e60
mov ebx, 0x40
mov dword [rsp + 0x30], ebx
lea r8, [rbp - 0x10]
lea rdx, str.QueryServiceStatusEx_Error:
lea rcx, [rbp + 0x10]
call fcn.14006d9d0
nop
and ebx, 0xffffffbf
mov dword [rsp + 0x30], ebx
lea rcx, [rbp - 0x10]
call fcn.1400166f0
lea rcx, [rbp - 0x68]
call fcn.1400098d0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x140080cb1
mov rax, qword [rax]
mov rdx, rax
lea rcx, [0x1404abb40]
call fcn.1400347d0
mov rbx, rax
lea rdx, [rbp + 0x10]
lea rcx, [rsp + 0x58]
call fcn.14009c1c0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x140080ce0
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call fcn.1400347d0
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.140034b90
movzx edx, al
mov rcx, rbx
call fcn.140034620
mov rcx, rbx
call fcn.14002ddd0
nop
lea rcx, [rsp + 0x58]
call fcn.140016400
nop
lea rcx, [rbp - 0x68]
call fcn.140016400
nop
lea rcx, [rbp + 0x10]
call fcn.1400166f0
jmp 0x140080df5
cmp dword [rbp + 0x34], 1
je 0x140080d48
mov eax, dword [rbp + 0x4c]
mov dword [rdi], eax
mov bl, 1
jmp 0x140080df7
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], rsi
mov r8d, reloc.WS2_32.dll_send
lea rdx, str.service_not_running
lea rcx, [rsp + 0x38]
call fcn.140015370
nop
lea rcx, [rsp + 0x58]
call fcn.1400098d0
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x140080d8b
mov rax, qword [rax]
mov rdx, rax
lea rcx, [0x1404abb40]
call fcn.1400347d0
lea rdx, [rsp + 0x38]
cmp qword [rsp + 0x50], 0xf
cmova rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x48]
mov rcx, rax
call fcn.1400347d0
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.140034b90
movzx edx, al
mov rcx, rbx
call fcn.140034620
mov rcx, rbx
call fcn.14002ddd0
nop
lea rcx, [rsp + 0x58]
call fcn.140016400
nop
lea rcx, [rsp + 0x38]
call fcn.140016400
xor bl, bl
lea rcx, [rbp - 0x20]
call fcn.1400e25a0
nop
lea rcx, [rbp - 0x18]
call fcn.1400e25a0
movzx eax, bl
mov rcx, qword [rbp + 0x78]
xor rcx, rsp
call fcn.1402b5c00
mov rbx, qword [rsp + 0x1b0]
add rsp, 0x180
pop rdi
pop rsi
pop rbp
ret