Function at 0x43e25c
Capabilities:
Query service status
Stop service

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffac
push ebx
push esi
push edi
mov dword [ebp - 0x28], eax
mov eax, 0x5b7a7c
call fcn.0057c5c8
xor edx, edx
mov dword [ebp - 0x2c], edx
xor ecx, ecx
mov dword [ebp - 0x30], ecx
xor eax, eax
mov dword [ebp - 0x34], eax
mov word [ebp - 0x14], 8
push 0xf003f
push 0
push 0
call sub.advapi32.dll_OpenSCManagerA
mov dword [ebp - 0x2c], eax
call fcn.0042e0fc
test al, al
je 0x43e2c8
call fcn.0042e37c
test al, al
jne 0x43e2b3
call fcn.0042e42c
test al, al
je 0x43e2c8
push 0xf01ff
push 0x5b5758
push dword [ebp - 0x2c]
call sub.advapi32.dll_OpenServiceA
mov dword [ebp - 0x30], eax
call fcn.0042e0fc
test al, al
je 0x43e2fa
call fcn.0042e3d4
test al, al
jne 0x43e2e3
call fcn.0042e484
test al, al
je 0x43e2fa
push 0xf01ff
push 0x5b5766
push dword [ebp - 0x2c]
call sub.advapi32.dll_OpenServiceA
mov dword [ebp - 0x30], eax
jmp 0x43e30f
push 0xf01ff
push 0x5b5775
push dword [ebp - 0x2c]
call sub.advapi32.dll_OpenServiceA
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x43e36c
call sub.kernel32.dll_GetLastError
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x424
jne 0x43e340
push 0x10
mov ecx, 0x5b57b1
mov edx, 0x5b5782
mov eax, dword [sym.imp.vcl60.bpl__Forms_Application]
mov eax, dword [eax]
call fcn.0058f760
jmp 0x43e358
push 0x10
mov ecx, 0x5b57f1
mov edx, 0x5b57b6
mov eax, dword [sym.imp.vcl60.bpl__Forms_Application]
mov eax, dword [eax]
call fcn.0058f760
xor edx, edx
mov dword [ebp - 8], edx
lea ecx, [ebp - 0x24]
push ecx
call sub.CC3260MT.DLL___Return_unwind
pop ecx
jmp 0x43e4a8
lea eax, [ebp - 0x54]
push eax
push 1
push dword [ebp - 0x30]
call sub.advapi32.dll_ControlService
test eax, eax
jne 0x43e3f9
call sub.kernel32.dll_GetLastError
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x41d
jne 0x43e3c4
push 0x10
mov ecx, 0x5b5818
mov edx, 0x5b57f6
mov eax, dword [sym.imp.vcl60.bpl__Forms_Application]
mov eax, dword [eax]
call fcn.0058f760
xor edx, edx
mov dword [ebp - 8], edx
lea ecx, [ebp - 0x24]
push ecx
call sub.CC3260MT.DLL___Return_unwind
pop ecx
jmp 0x43e4a8
cmp dword [ebp - 0x38], 0x426
je 0x43e3f9
push 0x10
mov ecx, 0x5b584a
mov edx, 0x5b581d
mov eax, dword [sym.imp.vcl60.bpl__Forms_Application]
mov eax, dword [eax]
call fcn.0058f760
xor edx, edx
mov dword [ebp - 8], edx
lea ecx, [ebp - 0x24]
push ecx
call sub.CC3260MT.DLL___Return_unwind
pop ecx
jmp 0x43e4a8
push 0xbb8
call sub.kernel32.dll_Sleep
lea eax, [ebp - 0x54]
push eax
push dword [ebp - 0x30]
call sub.advapi32.dll_QueryServiceStatus
cmp dword [ebp - 0x50], 4
jne 0x43e421
mov dl, 1
mov eax, dword [ebp - 0x28]
call fcn.0043d924
jmp 0x43e466
cmp dword [ebp - 0x50], 1
jne 0x43e466
xor edx, edx
mov eax, dword [ebp - 0x28]
call fcn.0043d924
mov eax, dword [ebp - 0x28]
call fcn.0044e808
test al, al
je 0x43e466
push 0xf01ff
push 0x5b584f
push dword [ebp - 0x2c]
call sub.advapi32.dll_OpenServiceA
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
je 0x43e466
lea edx, [ebp - 0x54]
push edx
push 1
push dword [ebp - 0x34]
call sub.advapi32.dll_ControlService
mov word [ebp - 0x14], 0
cmp dword [ebp - 0x30], 0
je 0x43e47a
push dword [ebp - 0x30]
call sub.advapi32.dll_CloseServiceHandle
cmp dword [ebp - 0x34], 0
je 0x43e488
push dword [ebp - 0x34]
call sub.advapi32.dll_CloseServiceHandle
cmp dword [ebp - 0x2c], 0
je 0x43e496
push dword [ebp - 0x2c]
call sub.advapi32.dll_CloseServiceHandle
cmp word [ebp - 0x12], 0
je 0x43e49e
ret
mov ecx, dword [ebp - 0x24]
mov dword fs:[0], ecx
mov edi, dword [ebp - 0x60]
mov esi, dword [ebp - 0x5c]
mov ebx, dword [ebp - 0x58]
mov esp, ebp
pop ebp
ret