Function at 0x40fcf0
Capabilities:
Query service status

Disassembly:
sub esp, 0x1c
push ebx
push esi
push edi
xor ebx, ebx
push 5
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
mov edi, eax
test edi, edi
jne 0x40fdab
mov eax, dword [0x441ff4]
test eax, eax
je 0x40fda2
mov eax, dword [0x441fd4]
mov eax, dword [eax]
cmp eax, 2
je 0x40fd35
mov ecx, dword [0x441fdc]
cmp dword [ecx], 0
jne 0x40fda2
cmp eax, 2
jle 0x40fda2
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
call esi
mov ebx, eax
mov eax, dword [0x436030]
test eax, eax
jge 0x40fd5c
mov edx, dword [0x441fa0]
mov dword [0x436030], edx
call fcn.0041c4b1
test eax, eax
je 0x40fd94
mov eax, dword [0x436030]
push 2
push eax
push 0xe79
push str.C:_build_rel_sp_8_4_6_2_srcwindows_atpclient_arr_srvsAdaptCof.cpp
call fcn.0041c4e1
add esp, 0x10
call esi
push eax
push str.Failed_to_open_SC_manager__err_d_n
call fcn.0041c506
add esp, 8
call fcn.0041c4cc
push edi
call dword [sym.imp.WS2_32.dll_WSASetLastError]
push ebx
call dword [sym.imp.KERNEL32.dll_SetLastError]
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x1c
ret
push 4
push str.Dnscache
push edi
call dword [sym.imp.ADVAPI32.dll_OpenServiceA]
mov esi, eax
test esi, esi
jne 0x40fe6b
mov eax, dword [0x441ff4]
test eax, eax
je 0x40fe5b
mov ecx, dword [0x441fd4]
mov eax, dword [ecx]
cmp eax, 2
je 0x40fded
mov edx, dword [0x441fdc]
cmp dword [edx], 0
jne 0x40fe5b
cmp eax, 2
jle 0x40fe5b
push ebp
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
call esi
mov ebp, eax
mov eax, dword [0x436030]
test eax, eax
jge 0x40fe13
mov eax, dword [0x441fa0]
mov dword [0x436030], eax
call fcn.0041c4b1
test eax, eax
je 0x40fe4c
mov ecx, dword [0x436030]
push 2
push ecx
push 0xe81
push str.C:_build_rel_sp_8_4_6_2_srcwindows_atpclient_arr_srvsAdaptCof.cpp
call fcn.0041c4e1
add esp, 0x10
call esi
push eax
push str.Failed_to_open_Service__err_d_n
call fcn.0041c506
add esp, 8
call fcn.0041c4cc
push ebx
call dword [sym.imp.WS2_32.dll_WSASetLastError]
push ebp
call dword [sym.imp.KERNEL32.dll_SetLastError]
pop ebp
push edi
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x1c
ret
lea edx, [esp + 0xc]
push edx
push esi
call dword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
test eax, eax
je 0x40fe7f
mov ebx, dword [esp + 0x10]
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
call esi
push edi
call esi
mov eax, dword [0x441ff4]
test eax, eax
je 0x40ff1a
mov eax, dword [0x441fd4]
mov eax, dword [eax]
cmp eax, 3
je 0x40feb4
mov ecx, dword [0x441fdc]
cmp dword [ecx], 0
jne 0x40ff1a
cmp eax, 3
jle 0x40ff1a
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov eax, dword [0x436030]
test eax, eax
jge 0x40fed9
mov edx, dword [0x441fa0]
mov dword [0x436030], edx
call fcn.0041c4b1
test eax, eax
je 0x40ff0c
mov eax, dword [0x436030]
push 3
push eax
push 0xe8e
push str.C:_build_rel_sp_8_4_6_2_srcwindows_atpclient_arr_srvsAdaptCof.cpp
call fcn.0041c4e1
push ebx
push str.Get_the_service_status_success__it_is__d._n
call fcn.0041c506
add esp, 0x18
call fcn.0041c4cc
push esi
call dword [sym.imp.WS2_32.dll_WSASetLastError]
push edi
call dword [sym.imp.KERNEL32.dll_SetLastError]
pop edi
mov eax, ebx
pop esi
pop ebx
add esp, 0x1c
ret