Function at 0x412cb0
Capabilities:
Check for time delay via gettickcount
Check if file exists
Delete service
Query service status
Stop service

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47398a
mov eax, dword fs:[0]
push eax
sub esp, 0x194
mov eax, dword [0x498068]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor esi, esi
push 0xf003f
push esi
push esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x3c], esi
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov ecx, eax
mov dword [ebp - 0x40], ecx
test ecx, ecx
jne 0x412d65
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
cmp dword [0x49ad2c], 2
mov dword [ebp - 0x34], eax
jg 0x412d3e
push 2
push 0x28
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
call fcn.00424f80
mov dword [ebp - 4], esi
lea ecx, [eax + 8]
mov esi, 1
mov edx, 0x487574
mov dword [ebp - 0x30], esi
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test al, 1
je 0x412d5d
and eax, 0xfffffffe
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x30], eax
call fcn.00425110
mov eax, dword [ebp - 0x3c]
jmp 0x413457
push 0xf01ff
push str.QPCore
push ecx
call dword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov dword [ebp - 0x38], eax
test eax, eax
jne 0x412efc
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
mov dword [ebp - 0x38], eax
cmp eax, 0x424
jne 0x412e90
cmp dword [0x49ad2c], esi
jg 0x412dcf
push 0
push 0x33
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
call fcn.00424f80
mov dword [ebp - 4], 1
lea ecx, [eax + 8]
mov esi, 2
mov edx, str.UnInstQPCore_:_Cant_find_service__skip_this_step.
mov dword [ebp - 0x30], esi
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test al, 2
je 0x412dee
and eax, 0xfffffffd
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x30], eax
call fcn.00425110
mov esi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x412dfe
push eax
call esi
cmp dword [0x49ad2c], 0
jg 0x41346d
sub esp, 8
mov dword [ebp - 0xf0], 0
lea ecx, [ebp - 0xe8]
call fcn.00422bb0
mov dword [ebp - 0x4c], str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
mov dword [ebp - 0x48], 0x8e
call edi
push 0x8e
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x44], eax
call fcn.00425610
mov dword [ebp - 4], 0xc
mov esi, dword [ebp - 0x30]
or esi, 0x1000
mov dword [ebp - 0x30], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0x3c]
lea ecx, [ebp - 0xe8]
push eax
mov edx, str._UnInstQPCore__cost_
call fcn.00407130
mov ecx, eax
call fcn.004050f0
mov edx, str.______n
mov ecx, eax
call fcn.00407130
jmp 0x413470
cmp dword [0x49ad2c], 2
mov dword [ebp - 0x34], eax
jg 0x412ee2
push 2
push 0x38
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
call fcn.00424f80
push dword [ebp - 0x38]
mov dword [ebp - 4], 2
lea ecx, [eax + 8]
mov esi, 4
mov edx, str.UnInstQPCore_:_Open_service_failed_
mov dword [ebp - 0x30], esi
call fcn.00407130
mov ecx, eax
call fcn.004050f0
mov edx, 0x48765c
mov ecx, eax
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test al, 4
je 0x412dee
and eax, 0xfffffffb
jmp 0x412de0
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
xorps xmm0, xmm0
push ecx
push eax
movups xmmword [ebp - 0x2c], xmm0
movq qword [ebp - 0x1c], xmm0
call dword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x412f8e
call edi
cmp dword [0x49ad2c], 2
mov dword [ebp - 0x34], eax
jg 0x412f74
push 2
push 0x41
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
call fcn.00424f80
push dword [ebp - 0x34]
mov dword [ebp - 4], 3
lea ecx, [eax + 8]
mov esi, 8
mov edx, str.UnInstQPCore_:_Open_service_failed_
mov dword [ebp - 0x30], esi
call fcn.00407130
mov ecx, eax
call fcn.004050f0
mov edx, 0x48765c
mov ecx, eax
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test al, 8
je 0x413454
and eax, 0xfffffff7
jmp 0x413446
cmp dword [ebp - 0x28], 1
jne 0x4130a9
cmp dword [0x49ad2c], esi
jg 0x413001
sub esp, 8
mov dword [ebp - 0x1a0], esi
lea ecx, [ebp - 0x198]
call fcn.00422bb0
mov dword [ebp - 0xfc], str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
mov dword [ebp - 0xf8], 0x47
call edi
push 0x47
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0xf4], eax
call fcn.00425610
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x198]
mov esi, 0x10
mov edx, str.UnInstQPCore_:_Service_has_stopped._Going_to_delete_it._n
mov dword [ebp - 0x30], esi
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test al, 0x10
je 0x413020
and eax, 0xffffffef
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0x30], eax
call fcn.00425110
mov esi, dword [ebp - 0x30]
push dword [ebp - 0x38]
call dword [sym.imp.ADVAPI32.dll_DeleteService]
cmp eax, 1
je 0x4133ca
call edi
cmp dword [0x49ad2c], 2
mov dword [ebp - 0x34], eax
jg 0x41308a
push 2
push 0x78
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
call fcn.00424f80
push dword [ebp - 0x34]
mov dword [ebp - 4], 0xa
lea ecx, [eax + 8]
or esi, 0x400
mov edx, str.UnInstQPCore_:_Delete_service_error_
mov dword [ebp - 0x30], esi
call fcn.00407130
mov ecx, eax
call fcn.004050f0
mov edx, 0x4876c0
mov ecx, eax
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test eax, 0x400
je 0x413454
and eax, 0xfffffbff
jmp 0x413446
lea eax, [ebp - 0x2c]
push eax
push 1
push dword [ebp - 0x38]
call dword [sym.imp.ADVAPI32.dll_ControlService]
test eax, eax
jne 0x413130
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
cmp dword [0x49ad2c], 2
mov dword [ebp - 0x34], eax
jg 0x413116
push 2
push 0x4f
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
call fcn.00424f80
push dword [ebp - 0x34]
mov dword [ebp - 4], 5
lea ecx, [eax + 8]
mov esi, 0x20
mov edx, str.UnInstQPCore_:_Service_could_not_be_stopped__Error_Cod_
mov dword [ebp - 0x30], esi
call fcn.00407130
mov ecx, eax
call fcn.004050f0
mov edx, 0x4876c0
mov ecx, eax
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test al, 0x20
je 0x413454
and eax, 0xffffffdf
jmp 0x413446
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp dword [ebp - 0x28], 1
mov dword [ebp - 0x3c], eax
je 0x413023
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x38]
call dword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
test eax, eax
je 0x413294
cmp dword [ebp - 0x28], 1
je 0x413218
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0x3c]
cmp eax, 0xea60
ja 0x413185
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp - 0x28], 1
jne 0x413143
jmp 0x413023
cmp dword [0x49ad2c], 2
jg 0x4131f3
sub esp, 8
mov dword [ebp - 0x1a0], 2
lea ecx, [ebp - 0x198]
call fcn.00422bb0
mov dword [ebp - 0xfc], str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
mov dword [ebp - 0xf8], 0x63
call edi
push 0x63
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0xf4], eax
call fcn.00425610
mov dword [ebp - 4], 8
lea ecx, [ebp - 0x198]
mov esi, 0x100
mov edx, str.UnInstQPCore_:_Stopping_service_timeout__n
mov dword [ebp - 0x30], esi
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test eax, 0x100
je 0x413333
and eax, 0xfffffeff
lea ecx, [ebp - 0x1a0]
jmp 0x41332b
cmp dword [0x49ad2c], esi
jg 0x413278
sub esp, 8
mov dword [ebp - 0xf0], esi
lea ecx, [ebp - 0xe8]
call fcn.00422bb0
mov dword [ebp - 0x4c], str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
mov dword [ebp - 0x48], 0x5f
call edi
push 0x5f
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x44], eax
call fcn.00425610
mov dword [ebp - 4], 7
lea ecx, [ebp - 0xe8]
mov esi, 0x80
mov edx, str.UnInstQPCore_:_Succeeded_stopping_service__n
mov dword [ebp - 0x30], esi
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test al, al
jns 0x413333
and eax, 0xffffff7f
jmp 0x413325
call edi
cmp dword [0x49ad2c], 2
mov dword [ebp - 0x34], eax
jg 0x413314
sub esp, 8
mov dword [ebp - 0xf0], 2
lea ecx, [ebp - 0xe8]
call fcn.00422bb0
mov dword [ebp - 0x4c], str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
mov dword [ebp - 0x48], 0x59
call edi
push 0x59
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x44], eax
call fcn.00425610
push dword [ebp - 0x34]
mov dword [ebp - 4], 6
lea ecx, [ebp - 0xe8]
mov esi, 0x40
mov edx, str.UnInstQPCore_:_Query_service_status_failed_
mov dword [ebp - 0x30], esi
call fcn.00407130
mov ecx, eax
call fcn.004050f0
mov edx, 0x4876c0
mov ecx, eax
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test al, 0x40
je 0x413333
and eax, 0xffffffbf
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x30], eax
call fcn.00425110
cmp dword [ebp - 0x28], 1
je 0x413020
call edi
cmp dword [0x49ad2c], 2
mov dword [ebp - 0x34], eax
jg 0x4133ab
push 2
push 0x6d
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
call fcn.00424f80
mov dword [ebp - 4], 9
lea ecx, [eax + 8]
push dword [ebp - 0x28]
mov esi, dword [ebp - 0x30]
mov edx, str.UnInstQPCore_:_Service_couldnt_be_stopped__
push dword [ebp - 0x34]
or esi, 0x200
mov dword [ebp - 0x30], esi
call fcn.00407130
mov ecx, eax
call fcn.004050f0
mov edx, 0x487780
mov ecx, eax
call fcn.00407130
mov ecx, eax
call fcn.004050f0
mov edx, 0x4876c0
mov ecx, eax
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test eax, 0x200
je 0x413454
and eax, 0xfffffdff
jmp 0x413446
cmp dword [0x49ad2c], 0
jg 0x413430
sub esp, 8
mov dword [ebp - 0xf0], 0
lea ecx, [ebp - 0xe8]
call fcn.00422bb0
mov dword [ebp - 0x4c], str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
mov dword [ebp - 0x48], 0x7d
call edi
push 0x7d
push str.d:devopsworkspacep_37d34ce895ed4865ac95061b653d796fmisc_setup3hummersetupuninstalluninstall_delete_qp_files.cpp
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x44], eax
call fcn.00425610
or esi, 0x800
mov dword [ebp - 4], 0xb
mov edx, str.UnInstQPCore_:_Succeeded_deleting_service___n
mov dword [ebp - 0x30], esi
lea ecx, [ebp - 0xe8]
call fcn.00407130
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x30]
test eax, 0x800
je 0x413454
and eax, 0xfffff7ff
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x30], eax
call fcn.00425110
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x412dee
mov esi, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
push eax
call esi
jmp 0x412df4
mov esi, dword [ebp - 0x30]
mov dword [ebp - 4], 0xffffffff
test esi, 0x1000
je 0x41348a
lea ecx, [ebp - 0xf0]
call fcn.00425110
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0044f786
mov esp, ebp
pop ebp
ret