Function at 0x43c340
Capabilities:
Delete service

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0xc], 0
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0xf003f
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x43c39d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Couldnt_open_service_manager__0x_x
push 0x49ef84
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0xc
jmp 0x43c555
push 0x10000
push 0x49efd8
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x43c3e3
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x49effc
push 0x49f014
push 0x49eff0
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x10
jmp 0x43c429
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.ADVAPI32.dll_DeleteService]
test eax, eax
jne 0x43c418
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x49f060
push 0x49f078
push 0x49f054
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x10
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov dword [ebp - 8], 0
push 0x10000
push 0x49f0b4
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x43c46f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x49f0cc
push str.Couldnt_open_service__s__0x_x
push 0x49f0c0
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x10
jmp 0x43c4b5
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.ADVAPI32.dll_DeleteService]
test eax, eax
jne 0x43c4a4
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x49f124
push str.Couldnt_del_service__s__0x_x
push 0x49f118
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x10
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov dword [ebp - 8], 0
push 0x10000
push str.SClientSvc
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x43c505
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x424
je 0x43c503
mov ecx, dword [ebp - 0x10]
push ecx
push str.Couldnt_open_service_SClientSvc__0x_x
push 0x49f184
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0xc
jmp 0x43c546
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.ADVAPI32.dll_DeleteService]
test eax, eax
jne 0x43c535
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Couldnt_del_service_SClientSvc__0x_x
push 0x49f1e0
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0xc
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 1
xor ecx, ecx
jne 0x43c35e
cmp dword [ebp - 8], 0
je 0x43c56c
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov dword [ebp - 8], 0
cmp dword [ebp - 4], 0
je 0x43c583
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret