Function at 0x10008140
Capabilities:
Create thread
Delete service
Stop service

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10020c4b
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x130
mov eax, dword [0x101b600c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
push 0x101b16a8
lea ecx, [ebp - 0x138]
movq qword [ebp - 0x1c], xmm0
movups xmmword [ebp - 0x2c], xmm0
call fcn.10006f90
push 0
push 0
push 0
push 0x100071b0
push 0
push 0
mov dword [ebp - 4], 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov esi, eax
test esi, esi
je 0x100081d9
push 0x2710
push esi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0xf003f
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov edi, eax
test edi, edi
jne 0x100082d5
mov esi, dword [0x101b7488]
mov edi, dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
test esi, esi
jne 0x10008249
push 0x124
call fcn.1000da7d
add esp, 4
mov esi, eax
mov dword [ebp - 0x13c], esi
push 0x104
lea ecx, [esi + 4]
mov dword [esi], 0
push 0
push ecx
mov dword [esi + 0x108], 0xffffffff
call fcn.100106a0
add esp, 0xc
lea eax, [esi + 0x10c]
push eax
call edi
mov dword [0x101b7488], esi
push str.error_OpenSCManager.
push 0
push 0x101b16a8
push str.......project_base_svcdllmain.cpp
push 0x130
push esi
call fcn.10002fc0
mov esi, dword [0x101b7488]
add esp, 0x18
test esi, esi
jne 0x100082b9
push 0x124
call fcn.1000da7d
add esp, 4
mov esi, eax
mov dword [ebp - 0x13c], esi
push 0x104
lea eax, [esi + 4]
mov dword [esi], 0
push 0
push eax
mov dword [esi + 0x108], 0xffffffff
call fcn.100106a0
add esp, 0xc
lea eax, [esi + 0x10c]
push eax
call edi
mov dword [0x101b7488], esi
push 0x101b16a8
push str.......project_base_svcdllmain.cpp
push 0x130
push ecx
mov ecx, esi
call fcn.100033f0
jmp 0x100085da
push 0xf01ff
push str.LDrvSvc
push edi
call dword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov dword [ebp - 0x13c], eax
test eax, eax
jne 0x100083e0
mov esi, dword [0x101b7488]
test esi, esi
jne 0x10008349
push 0x124
call fcn.1000da7d
add esp, 4
mov esi, eax
mov dword [ebp - 0x13c], esi
push 0x104
lea ecx, [esi + 4]
mov dword [esi], 0
push 0
push ecx
mov dword [esi + 0x108], 0xffffffff
call fcn.100106a0
add esp, 0xc
lea eax, [esi + 0x10c]
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [0x101b7488], esi
push str.error_OpenService.
push 0
push 0x101b16a8
push str.......project_base_svcdllmain.cpp
push 0x136
push esi
call fcn.10002fc0
mov esi, dword [0x101b7488]
add esp, 0x18
test esi, esi
jne 0x100083bd
push 0x124
call fcn.1000da7d
add esp, 4
mov esi, eax
mov dword [ebp - 0x13c], esi
push 0x104
lea eax, [esi + 4]
mov dword [esi], 0
push 0
push eax
mov dword [esi + 0x108], 0xffffffff
call fcn.100106a0
add esp, 0xc
lea eax, [esi + 0x10c]
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [0x101b7488], esi
push 0x101b16a8
push str.......project_base_svcdllmain.cpp
push 0x136
push ecx
mov ecx, esi
call fcn.100033f0
push edi
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
jmp 0x100085da
lea ecx, [ebp - 0x30]
push ecx
push 1
push eax
call dword [sym.imp.ADVAPI32.dll_ControlService]
test eax, eax
jne 0x100084d5
mov esi, dword [0x101b7488]
test esi, esi
jne 0x1000844a
push 0x124
call fcn.1000da7d
add esp, 4
mov esi, eax
mov dword [ebp - 0x140], esi
push 0x104
lea ecx, [esi + 4]
mov dword [esi], 0
push 0
push ecx
mov dword [esi + 0x108], 0xffffffff
call fcn.100106a0
add esp, 0xc
lea eax, [esi + 0x10c]
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [0x101b7488], esi
push str.error_ControlService_SERVICE_CONTROL_STOP
push 0
push 0x101b16a8
push str.......project_base_svcdllmain.cpp
push 0x13c
push esi
call fcn.10002fc0
mov esi, dword [0x101b7488]
add esp, 0x18
test esi, esi
jne 0x100084be
push 0x124
call fcn.1000da7d
add esp, 4
mov esi, eax
mov dword [ebp - 0x140], esi
push 0x104
lea eax, [esi + 4]
mov dword [esi], 0
push 0
push eax
mov dword [esi + 0x108], 0xffffffff
call fcn.100106a0
add esp, 0xc
lea eax, [esi + 0x10c]
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [0x101b7488], esi
push 0x101b16a8
push str.......project_base_svcdllmain.cpp
push 0x13c
push ecx
mov ecx, esi
call fcn.100033f0
push dword [ebp - 0x13c]
call dword [sym.imp.ADVAPI32.dll_DeleteService]
test eax, eax
jne 0x100085c9
mov esi, dword [0x101b7488]
test esi, esi
jne 0x1000853e
push 0x124
call fcn.1000da7d
add esp, 4
mov esi, eax
mov dword [ebp - 0x140], esi
push 0x104
lea ecx, [esi + 4]
mov dword [esi], 0
push 0
push ecx
mov dword [esi + 0x108], 0xffffffff
call fcn.100106a0
add esp, 0xc
lea eax, [esi + 0x10c]
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [0x101b7488], esi
push str.error_DeleteService
push 0
push 0x101b16a8
push str.......project_base_svcdllmain.cpp
push 0x140
push esi
call fcn.10002fc0
mov esi, dword [0x101b7488]
add esp, 0x18
test esi, esi
jne 0x100085b2
push 0x124
call fcn.1000da7d
add esp, 4
mov esi, eax
mov dword [ebp - 0x140], esi
push 0x104
lea eax, [esi + 4]
mov dword [esi], 0
push 0
push eax
mov dword [esi + 0x108], 0xffffffff
call fcn.100106a0
add esp, 0xc
lea eax, [esi + 0x10c]
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [0x101b7488], esi
push 0x101b16a8
push str.......project_base_svcdllmain.cpp
push 0x140
push ecx
mov ecx, esi
call fcn.100033f0
push dword [ebp - 0x13c]
mov esi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
call esi
push edi
call esi
lea ecx, [ebp - 0x138]
call fcn.10007040
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.1000da67
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret