Function at 0x51a5e0
Capabilities:
Create service
Modify service
Persist via windows service

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b39bc
mov eax, dword fs:[0]
push eax
sub esp, 0x230
mov eax, dword [0x63b404]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, 0x643120
call fcn.00546d80
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
test edi, edi
je 0x51a7df
push edi
push 0
push 0x100000
call dword [sym.imp.KERNEL32.dll_OpenMutexW]
mov esi, eax
test esi, esi
je 0x51a648
mov byte [ebp - 0x219], 1
jmp 0x51a710
call ebx
push 0x84
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x22c], 0
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x228], 0x41
call fcn.0056f8a6
mov ecx, dword [ebp - 0x228]
push 0xffffffffffffffff
push str.DoesExist_returned___d___note:_some_values_mean_the_mutex_exists_
inc ecx
mov dword [ebp - 0x22c], eax
push ecx
push eax
lea eax, [ebp - 0x220]
push eax
call fcn.00585d85
mov ecx, dword [ebp - 0x228]
xor edx, edx
test eax, eax
cmovne ecx, edx
mov dword [ebp - 0x228], ecx
push dword [ebp - 0x230]
lea eax, [ebp - 0x22c]
mov dword [ebp - 4], edx
push eax
push 0x79
push str.OMutex::doesExist
push str.d:jenkinsworkspaceclient3.lib.platformlibplatformlib_srcomutex.cpp
push edx
call fcn.00550890
mov dword [ebp - 4], 0xffffffff
add esp, 0x30
mov eax, dword [ebp - 0x22c]
test eax, eax
je 0x51a6f8
push 2
push eax
call fcn.0056f898
add esp, 8
mov dword [ebp - 0x22c], 0
cmp dword [ebp - 0x230], 5
mov dword [ebp - 0x228], 0
sete byte [ebp - 0x219]
push 2
push edi
call fcn.0056f898
add esp, 8
test esi, esi
je 0x51a72a
push 0
push esi
call fcn.0056f898
add esp, 8
cmp byte [ebp - 0x219], 0
je 0x51a7df
push 0x5c
mov dword [ebp - 0x23c], 0
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x238], 0x2d
call fcn.0056f8a6
mov ecx, dword [ebp - 0x238]
push 0xffffffffffffffff
push str.Cannot_launch_as_service__USS_already_running
inc ecx
mov dword [ebp - 0x23c], eax
push ecx
push eax
lea eax, [ebp - 0x234]
push eax
call fcn.00585d85
mov ecx, dword [ebp - 0x238]
xor edx, edx
test eax, eax
cmovne ecx, edx
mov dword [ebp - 0x238], ecx
lea eax, [ebp - 0x23c]
mov dword [ebp - 4], 3
push eax
push 0x15c
push str.UnifiedStreamingService::onInstallService
push str.d:jenkinsworkspaceclient3.exe.fgmussexe_srcunifiedstreamingservice.cpp
push 0x642c80
call fcn.00550890
mov eax, dword [ebp - 0x23c]
add esp, 0x2c
test eax, eax
je 0x51a7d0
push 2
push eax
call fcn.0056f898
add esp, 8
mov dword [0x648c28], 3
jmp 0x51aaad
cmp dword [0x648c74], 0
je 0x51aa07
cmp dword [0x648c78], 0
jbe 0x51aa07
cmp dword [0x648c7c], 0
je 0x51aa07
cmp dword [0x648c80], 0
jbe 0x51aa07
mov ecx, 0x648c74
call fcn.00546d80
mov esi, eax
mov ecx, 0x648c7c
mov dword [ebp - 0x230], esi
call fcn.00546d80
mov edi, eax
test esi, esi
je 0x51a93a
test edi, edi
je 0x51a93a
push 0x104
lea eax, [ebp - 0x218]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
jne 0x51a86e
call ebx
push eax
push 0x621eb0
call fcn.00513f30
add esp, 8
jmp 0x51a9e0
push 3
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov dword [ebp - 0x228], eax
test eax, eax
jne 0x51a899
call ebx
push eax
push str.OpenSCManager_failed_w_err_0x_08lx_n
call fcn.00513f30
add esp, 8
jmp 0x51a9e0
push 0
push str..LocalSystem
push 0x621d14
push 0
push 0
lea ecx, [ebp - 0x218]
push ecx
push 1
push 2
push 0x110
push 4
push edi
push esi
push eax
call dword [sym.imp.ADVAPI32.dll_CreateServiceW]
mov ebx, eax
test ebx, ebx
jne 0x51a8d8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.CreateService_failed_w_err_0x_08lx_n
jmp 0x51a912
mov esi, dword [sym.imp.ADVAPI32.dll_ChangeServiceConfig2W]
lea eax, [ebp - 0x234]
push eax
push 1
push ebx
mov dword [ebp - 0x234], edi
call esi
lea eax, [ebp - 0x220]
mov dword [ebp - 0x220], 1
push eax
push 3
push ebx
call esi
mov esi, dword [ebp - 0x230]
push esi
push str._s_is_installed._n
call fcn.00513f30
add esp, 8
push dword [ebp - 0x228]
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
test ebx, ebx
je 0x51a9e0
push ebx
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
jmp 0x51a9e0
push 0x9e
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x220], 0x4e
call fcn.0056f8a6
mov ecx, dword [ebp - 0x220]
push 0xffffffffffffffff
push str.Service_Failed_to_install_as_servicename_servicedisplayname_wasnt_convertible
inc ecx
mov dword [ebp - 0x224], eax
push ecx
push eax
lea eax, [ebp - 0x228]
push eax
call fcn.00585d85
mov ecx, dword [ebp - 0x220]
xor edx, edx
test eax, eax
cmovne ecx, edx
mov dword [ebp - 0x220], ecx
lea eax, [ebp - 0x224]
mov dword [ebp - 4], 1
push eax
push 0x14e
push str.UnifiedStreamingService::onInstallService
push str.d:jenkinsworkspaceclient3.exe.fgmussexe_srcunifiedstreamingservice.cpp
push 0x642c80
call fcn.00550890
mov eax, dword [ebp - 0x224]
add esp, 0x2c
test eax, eax
je 0x51a9d6
push 2
push eax
call fcn.0056f898
add esp, 8
mov dword [0x648c28], 1
test esi, esi
je 0x51a9ef
push 2
push esi
call fcn.0056f898
add esp, 8
test edi, edi
je 0x51aaad
push 2
push edi
call fcn.0056f898
add esp, 8
jmp 0x51aaad
push 0xa0
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x220], 0x4f
call fcn.0056f8a6
mov ecx, dword [ebp - 0x220]
push 0xffffffffffffffff
push str.Service_Failed_to_install_as_executable_hasnt_got_required_manifest_properties
inc ecx
mov dword [ebp - 0x224], eax
push ecx
push eax
lea eax, [ebp - 0x228]
push eax
call fcn.00585d85
mov ecx, dword [ebp - 0x220]
xor edx, edx
test eax, eax
cmovne ecx, edx
mov dword [ebp - 0x220], ecx
lea eax, [ebp - 0x224]
mov dword [ebp - 4], 2
push eax
push 0x156
push str.UnifiedStreamingService::onInstallService
push str.d:jenkinsworkspaceclient3.exe.fgmussexe_srcunifiedstreamingservice.cpp
push 0x642c80
call fcn.00550890
mov eax, dword [ebp - 0x224]
add esp, 0x2c
test eax, eax
je 0x51aaa3
push 2
push eax
call fcn.0056f898
add esp, 8
mov dword [0x648c28], 2
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0056f3c2
mov esp, ebp
pop ebp
ret