Function at 0x402d00
Capabilities:
Query service status
Start service
Terminate process

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x40afc0
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xe8
mov eax, dword [0x40f040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
push 5
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
mov edi, eax
test edi, edi
jne 0x402f8f
mov dword [ebp - 0x38], 0xf083d135
mov dword [ebp - 0x34], 0x50720ca1
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x38], 0x3f69d7c3
mov dword [ebp - 0x34], 0xb2911483
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], ecx
mov dword [ebp - 0x38], 0xecc5ff81
mov dword [ebp - 0x34], 0x1d306e8e
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], ecx
mov dword [ebp - 0x38], 0x20f84b96
mov dword [ebp - 0x34], 0xc62f1ff9
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x38], 0xeefc0b57
mov dword [ebp - 0x34], 0xc0bd7624
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x38], 0xd051d7c0
mov dword [ebp - 0x34], 0x2d065098
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x38], 0x84099397
mov dword [ebp - 0x34], 0x24fdc30a
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x38], 0xa5d1a65a
mov dword [ebp - 0x34], 0x5fecd83b
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x38], 0x9ceab073
mov dword [ebp - 0x34], 0x245268c4
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x38], 0x500af7ac
mov dword [ebp - 0x34], 0xd1f47aed
mov dword [ebp - 0xe0], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xdc], ecx
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x38], 0x83b1dff5
mov dword [ebp - 0x34], 0x78581aae
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xd4], ecx
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x38], 0x529d18b6
mov dword [ebp - 0x34], 0xa34c768f
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xcc], ecx
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x38], 0x80934877
mov dword [ebp - 0x34], 0xacd20450
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xc4], ecx
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x38], 0xbe309ae0
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0x34], 0x5f6337f9
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xbc], ecx
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x38], 0x840993b9
mov dword [ebp - 0x34], 0x24fdc30a
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0xb4], ecx
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0x38], 0xa5d1a65a
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0x34], 0x5fecd83b
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
movaps xmm1, xmmword [ebp - 0x90]
xorps xmm1, xmmword [ebp - 0xe0]
movaps xmmword [ebp - 0x90], xmm1
movaps xmm1, xmmword [ebp - 0x80]
xorps xmm1, xmmword [ebp - 0xd0]
movaps xmmword [ebp - 0x80], xmm1
movaps xmm1, xmmword [ebp - 0x70]
xorps xmm1, xmmword [ebp - 0xc0]
push 0x10
mov dword [ebp - 0xa8], eax
lea eax, [ebp - 0x90]
movaps xmmword [ebp - 0x70], xmm1
movaps xmm1, xmmword [ebp - 0x60]
push edi
mov dword [ebp - 0xa4], ecx
xorps xmm1, xmmword [ebp - 0xb0]
push eax
push edi
movaps xmmword [ebp - 0x60], xmm1
call dword [sym.imp.USER32.dll_MessageBoxA]
push edi
call dword [sym.imp.KERNEL32.dll_ExitProcess]
cmp dword [esi + 0x14], 0xf
jbe 0x402f97
mov esi, dword [esi]
push 0x14
push esi
push edi
call dword [sym.imp.ADVAPI32.dll_OpenServiceA]
mov esi, eax
test esi, esi
jne 0x402fb5
push edi
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
xor al, al
jmp 0x4030c3
lea eax, [ebp - 0x30]
mov byte [ebp - 0x39], 0
push eax
push esi
call dword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
test eax, eax
je 0x4030b4
cmp dword [ebp - 0x2c], 1
jne 0x4030b0
push 0
push 0
push esi
call dword [sym.imp.ADVAPI32.dll_StartServiceA]
test eax, eax
jne 0x4030b0
mov dword [ebp - 0x38], 0xf083d135
mov dword [ebp - 0x34], 0x7720ca1
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x38], 0x5000c69c
mov dword [ebp - 0x34], 0xd1f47aed
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x38], 0x9ceab073
mov dword [ebp - 0x34], 0x245268c4
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x38], 0x500af7ac
mov dword [ebp - 0x9c], ecx
mov dword [ebp - 0x34], 0xd1f47aed
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
movaps xmm1, xmmword [ebp - 0x50]
mov dword [ebp - 0x98], eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x94], ecx
lea ecx, [ebp - 0xf8]
xorps xmm1, xmmword [ebp - 0xa0]
push eax
movaps xmmword [ebp - 0x50], xmm1
call fcn.00402220
mov edx, 0xc
mov dword [ebp - 4], 0
lea ecx, [ebp - 0xf8]
call fcn.00402060
lea ecx, [ebp - 0xf8]
call fcn.004021d0
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov byte [ebp - 0x39], 1
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
call esi
push edi
call esi
mov al, byte [ebp - 0x39]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00409d30
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret