Function at 0x4269e0
Capabilities:
Query service status
Start service

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push esi
mov esi, dword [ebp + 8]
push edi
xor edi, edi
mov dword [ebp - 4], edi
mov dword [ebp - 8], edi
cmp esi, edi
jne 0x426a0e
push str.VNLStartService:_invalid_parameter
push 1
call fcn.004343f0
add esp, 8
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
push ebx
push esi
push str.VNLStartService:_Attempting_to_start_service:__S
push 0x20
call fcn.004343f0
add esp, 0xc
push 0xf003f
push str.ServicesActive
push edi
mov edi, dword [0x465034]
call edi
mov ebx, eax
mov dword [ebp + 8], ebx
test ebx, ebx
jne 0x426b5e
mov ebx, dword [0x4651b0]
call ebx
cmp eax, 5
je 0x426a90
cmp eax, 0x57
je 0x426a7d
cmp eax, 0x429
je 0x426a6a
push eax
push str.VNLStartService:_Service_Manager_open_failed:_0x_08X
push 1
call fcn.004343f0
add esp, 0xc
jmp 0x426aab
push str.VNLStartService:_Service_Manager_open_failed:_ERROR_DATABASE_DOES_NOT_EXIST
push 1
call fcn.004343f0
push str.VNLStartService:_Service_Manager_open_failed:_system_config_appears_to_be_corrupt
jmp 0x426aa1
push str.VNLStartService:_Service_Manager_open_failed:_ERROR_INVALID_PARAMETER
push 1
call fcn.004343f0
push str.VNLStartService:_Service_Manager_open_failed:_system_config_appears_to_be_corrupt
jmp 0x426aa1
push str.VNLStartService:_Service_Manager_open_failed:_ERROR_ACCESS_DENIED
push 1
call fcn.004343f0
push str.VNLStartService:_Service_Manager_open_failed:_you_must_be_an_administrator
push 1
call fcn.004343f0
add esp, 0x10
push str.VNLStartService:_service_uninstall_failed__attempting_open_with_less_access
push 1
call fcn.004343f0
add esp, 8
push 0x80000000
push str.ServicesActive
push 0
call edi
mov dword [ebp + 8], eax
test eax, eax
jne 0x426b4d
call ebx
cmp eax, 5
je 0x426b1a
cmp eax, 0x57
je 0x426b07
cmp eax, 0x429
je 0x426af4
push eax
push str.VNLStartService:_Service_Manager_open_failed:_0x_08X
push 1
call fcn.004343f0
add esp, 0xc
jmp 0x426b35
push str.VNLStartService:_Service_Manager_open_failed:_ERROR_DATABASE_DOES_NOT_EXIST
push 1
call fcn.004343f0
push str.VNLStartService:_Service_Manager_open_failed:_system_config_appears_to_be_corrupt
jmp 0x426b2b
push str.VNLStartService:_Service_Manager_open_failed:_ERROR_INVALID_PARAMETER
push 1
call fcn.004343f0
push str.VNLStartService:_Service_Manager_open_failed:_system_config_appears_to_be_corrupt
jmp 0x426b2b
push str.VNLStartService:_Service_Manager_open_failed:_ERROR_ACCESS_DENIED
push 1
call fcn.004343f0
push str.VNLStartService:_Service_Manager_open_failed:_you_must_be_an_administrator
push 1
call fcn.004343f0
add esp, 0x10
push str.VNLStartService:_service_uninstall_failed_with_reduced_access
push 1
call fcn.004343f0
add esp, 8
pop ebx
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
push str.VNLStartService:_Service_Manager_successfully_opened_with_reduced_access
push 2
call fcn.004343f0
mov ebx, dword [ebp + 8]
jmp 0x426b6a
push str.VNLStartService:_Service_Manager_successfully_opened
push 0x10
call fcn.004343f0
add esp, 8
push 0xf01ff
push esi
push ebx
call dword [0x465038]
mov edi, eax
test edi, edi
jne 0x426c81
call dword [0x4651b0]
cmp eax, 0x7b
ja 0x426bb5
je 0x426bad
mov ecx, eax
sub ecx, 5
je 0x426ba5
sub ecx, 1
jne 0x426bbc
push esi
push str.VNLStartService:_Service__S_could_not_be_opened:_ERROR_INVALID_HANDLE
jmp 0x426bd5
push esi
push str.VNLStartService:_Service__S_could_not_be_opened:_ERROR_ACCESS_DENIED
jmp 0x426bd5
push esi
push str.VNLStartService:_Service__S_could_not_be_opened:_ERROR_INVALID_NAME
jmp 0x426bd5
cmp eax, 0x424
je 0x426bcf
push eax
push esi
push str.VNLStartService:_Service__S_could_not_be_opened:_0x_08x
push 1
call fcn.004343f0
add esp, 0x10
jmp 0x426bdf
push esi
push str.VNLStartService:_Service__S_could_not_be_opened:_ERROR_SERVICE_DOES_NOT_EXIST
push 1
call fcn.004343f0
add esp, 0xc
push str.VNLStartService:_Attempting_to_open_service_using_reduced_permissions
push 2
call fcn.004343f0
add esp, 8
push 0x14
push esi
push ebx
call dword [0x465038]
mov edi, eax
test edi, edi
jne 0x426c77
call dword [0x4651b0]
cmp eax, 0x7b
ja 0x426c2f
je 0x426c27
mov ecx, eax
sub ecx, 5
je 0x426c1f
sub ecx, 1
jne 0x426c36
push esi
push str.VNLStartService:_Service__S_could_not_be_opened:_ERROR_INVALID_HANDLE
jmp 0x426c5d
push esi
push str.VNLStartService:_Service__S_could_not_be_opened:_ERROR_ACCESS_DENIED
jmp 0x426c5d
push esi
push str.VNLStartService:_Service__S_could_not_be_opened:_ERROR_INVALID_NAME
jmp 0x426c5d
cmp eax, 0x424
je 0x426c57
push eax
push esi
push str.VNLStartService:_Service__S_could_not_be_opened:_0x_08x
push 1
call fcn.004343f0
add esp, 0x10
push ebx
call dword [0x46503c]
pop ebx
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
push esi
push str.VNLStartService:_Service__S_could_not_be_opened:_ERROR_SERVICE_DOES_NOT_EXIST
push 1
call fcn.004343f0
add esp, 0xc
push ebx
call dword [0x46503c]
pop ebx
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
push esi
push str.VNLStartService:_Service__S_successfully_opened_with_reduced_access
push 2
jmp 0x426c89
push esi
push str.VNLStartService:_Service__S_successfully_opened
push 0x10
call fcn.004343f0
add esp, 0xc
push 0
push 0
push edi
call dword [0x465040]
test eax, eax
jne 0x426d57
call dword [0x4651b0]
cmp eax, 0x420
je 0x426d2f
cmp eax, 0x433
jne 0x426cdd
push esi
push str.VNLStartService:_Service__S_could_not_be_started:_a_required_service_is_not_present
push 1
call fcn.004343f0
mov esi, dword [0x46503c]
add esp, 0xc
push edi
call esi
push ebx
call esi
pop ebx
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
cmp eax, 0x422
jne 0x426d09
push esi
push str.VNLStartService:_Service__S_could_not_be_started_since_its_disabled
push 1
call fcn.004343f0
mov esi, dword [0x46503c]
add esp, 0xc
push edi
call esi
push ebx
call esi
pop ebx
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
push eax
push esi
push str.VNLStartService:_Service__S_could_not_be_started:_0x_08x
push 1
call fcn.004343f0
mov esi, dword [0x46503c]
add esp, 0x10
push edi
call esi
push ebx
call esi
pop ebx
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
push esi
push str.VNLStartService:_Service__S_is_already_running
push 0x10
call fcn.004343f0
mov esi, dword [0x46503c]
add esp, 0xc
push edi
call esi
push ebx
call esi
pop ebx
pop edi
mov eax, 1
pop esi
mov esp, ebp
pop ebp
ret
push esi
push str.VNLStartService:_Service__S_has_been_started
push 0x10
call fcn.004343f0
add esp, 0xc
lea eax, [ebp - 0x28]
push eax
push edi
call dword [0x465044]
test eax, eax
jne 0x426da2
call dword [0x4651b0]
push eax
push esi
push str.VNLStartService:_Could_not_query_service__S_status:_0x_08x
push 1
call fcn.004343f0
mov esi, dword [0x46503c]
add esp, 0x10
push edi
call esi
push ebx
call esi
pop ebx
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x24]
push ecx
push edx
call fcn.004269c0
add esp, 4
push eax
push esi
push str.VNLStartService:_service__S_status:__s_cp0x_08x
push 0x20
call fcn.004343f0
mov eax, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x14]
add esp, 0x14
cmp dword [ebp - 0x24], 2
mov dword [ebp - 0xc], eax
jne 0x426eca
jmp 0x426de0
push 0x1f4
call dword [0x4651d8]
lea ecx, [ebp - 0x28]
mov eax, 0x1f4
add dword [ebp - 4], eax
add dword [ebp - 8], eax
push ecx
push edi
call dword [0x465044]
test eax, eax
je 0x426ea0
mov eax, dword [ebp - 0x24]
lea edx, [eax - 1]
cmp edx, 6
ja 0x426e1d
mov eax, dword [eax*4 + 0x4a54cc]
jmp 0x426e22
mov eax, dword [str.INVALID]
mov ecx, dword [ebp - 0x14]
push ecx
push eax
push str.VNLStartService:_service_status:__s_cp0x_08x
push 0x20
call fcn.004343f0
mov eax, dword [ebp - 0x14]
add esp, 0x10
cmp eax, ebx
jbe 0x426e61
mov edx, dword [ebp - 0x10]
push edx
push str.VNLStartService:_Updating_sleep_hint:__d
push 0x20
mov ebx, eax
call fcn.004343f0
mov eax, dword [ebp - 0x10]
add esp, 0xc
mov dword [ebp - 0xc], eax
mov dword [ebp - 4], 0
jmp 0x426e94
mov ecx, dword [ebp - 0xc]
cmp dword [ebp - 4], ecx
jbe 0x426e94
push str.VNLStartService:_Slept_hint_duration_without_any_progress
push 0x20
call fcn.004343f0
mov eax, dword [ebp - 8]
add esp, 8
cmp eax, 0x7530
jae 0x426eb9
push eax
push 0x1e
push str.VNLStartService:_Not_giving_up_yet_since_havent_slept_for__i_seconds:__d
push 0x20
call fcn.004343f0
add esp, 0x10
cmp dword [ebp - 0x24], 2
je 0x426de0
jmp 0x426eca
call dword [0x4651b0]
push eax
push esi
push str.VNLStartService:_Could_not_query_service__S_status:_0x_08x
push 1
call fcn.004343f0
add esp, 0x10
jmp 0x426eca
push 0x1e
push str.VNLStartService:_Slept_for__i_seconds__giving_up
push 2
call fcn.004343f0
add esp, 0xc
mov eax, dword [ebp - 0x24]
cmp eax, 4
jne 0x426ee3
push str.VNLStartService:_Service_is_running
push 0x20
call fcn.004343f0
add esp, 8
jmp 0x426efa
push eax
call fcn.004269c0
push eax
push esi
push str.VNLStartService:_Service__S_is_not_running:__s
push 1
call fcn.004343f0
add esp, 0x14
mov esi, dword [0x46503c]
push edi
call esi
mov edx, dword [ebp + 8]
push edx
call esi
xor eax, eax
cmp dword [ebp - 0x24], 4
pop ebx
pop edi
sete al
pop esi
mov esp, ebp
pop ebp
ret