Function at 0x180007c10
Capabilities:
Query service status

Disassembly:
push rbx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x78
mov rax, qword [0x180045020]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rbx, qword [rsp + 0xd0]
mov r13, r9
mov rdi, qword [rsp + 0xd8]
mov r12, r8
mov qword [rsp + 0x28], rdi
movzx r14d, dl
mov qword [rsp + 0x20], rbx
mov r15, rcx
mov byte [rsp + 0x30], dl
mov qword [rsp + 0x38], rbx
call fcn.180005ab0
cmp eax, 0x80004004
jne 0x180007ef5
lea rcx, str.Timed_out_while_waiting_for_NetCfgInstanceId__try_again_immediately..._n
call fcn.180004ad0
mov r9, r13
mov qword [rsp + 0x28], rdi
mov r8, r12
mov qword [rsp + 0x20], rbx
movzx edx, r14b
mov rcx, r15
call fcn.180005ab0
mov ebx, eax
cmp eax, 0x80004004
jne 0x180007ef5
lea rcx, str.Timed_out_again_while_waiting_for_NetCfgInstanceId__try_again_after_a_while..._n
mov qword [rsp + 0xb8], rbp
call fcn.180004ad0
xor edx, edx
xor ecx, ecx
mov r8d, 0x80000000
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov rbp, rax
test rax, rax
je 0x180007e86
mov r8d, 0x80000000
mov qword [rsp + 0x70], rsi
lea rdx, str.NetSetupSvc
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov rsi, rax
test rax, rax
je 0x180007e58
xor ebx, ebx
lea r14, [0x180000000]
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x40]
mov dword [rsp + 0x44], 4
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
test eax, eax
je 0x180007df8
mov eax, dword [rsp + 0x44]
dec eax
cmp eax, 6
ja case.default.0x180007d48
mov ecx, dword [r14 + rax*4 + 0x7f14]
add rcx, r14
jmp rcx
lea rdx, str.is_not_running
lea rcx, str.NetSetupSvc__s_n
call fcn.180004ad0
jmp 0x180007e0c
lea rdx, str.is_stopping
lea rcx, str.NetSetupSvc__s_n
call fcn.180004ad0
jmp 0x180007e0c
lea rdx, str.continue_is_pending
lea rcx, str.NetSetupSvc__s_n
call fcn.180004ad0
jmp 0x180007e0c
lea rdx, str.pause_is_pending
lea rcx, str.NetSetupSvc__s_n
call fcn.180004ad0
jmp 0x180007e0c
lea rdx, str.is_paused
lea rcx, str.NetSetupSvc__s_n
call fcn.180004ad0
jmp 0x180007e0c
lea rdx, str.is_running
lea rcx, str.NetSetupSvc__s_n
call fcn.180004ad0
jmp 0x180007e0c
lea rdx, str.is_starting
lea rcx, str.NetSetupSvc__s_n
call fcn.180004ad0
jmp 0x180007e0c
lea rdx, str.state_is_invalid
lea rcx, str.NetSetupSvc__s_n
call fcn.180004ad0
jmp 0x180007e0c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.QueryServiceStatus_failed__0x_x__n
call fcn.180004ad0
cmp dword [rsp + 0x44], 1
je 0x180007e29
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0x3c
jl 0x180007d10
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rax, qword [rsp + 0x38]
mov r9, r13
movzx edx, byte [rsp + 0x30]
mov r8, r12
mov qword [rsp + 0x28], rdi
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.180005ab0
mov ebx, eax
jmp 0x180007e6c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.OpenService_failed___Rwc__n
call fcn.180004ad0
mov rcx, rbp
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rsi, qword [rsp + 0x70]
cmp ebx, 0x80004004
je 0x180007e9a
mov eax, ebx
jmp 0x180007eed
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.OpenSCManager_failed___Rwc_
call fcn.180004ad0
test rdi, rdi
je 0x180007ee8
lea rdx, str.Querying_NetCfgInstanceId_failed__ERROR_FILE_NOT_FOUND_
mov qword [rsp + 0x38], 0
lea rcx, [rsp + 0x38]
call fcn.180009140
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x180007ece
mov qword [rsp + 0x38], 0
jmp 0x180007edb
mov rcx, qword [0x1800193f0]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
lea rcx, [rsp + 0x38]
mov qword [rdi], rax
call fcn.180008d40
mov eax, 0x80004005
mov rbp, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.180001140
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbx
ret