Function at 0x140022e40
Capabilities:
Create restart manager session
Enumerate processes that use resource

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0xe8
mov rax, qword [0x14017d080]
xor rax, rsp
mov qword [rsp + 0xd0], rax
mov dword [rsp + 0x4c], 0
mov dword [rsp + 0x68], 0
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x48], 0
mov eax, 4
mov eax, eax
mov ecx, dword [0x14017e860]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov eax, dword [rax + rcx]
cmp dword [0x14017e7c0], eax
jle 0x140022eda
lea rcx, [0x14017e7c0]
call fcn.14002b96c
cmp dword [0x14017e7c0], 0xffffffff
jne 0x140022eda
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcessId]
mov dword [0x14017e7bc], eax
lea rcx, [0x14017e7c0]
call fcn.14002b900
nop
mov edx, 0x42
lea rcx, [rsp + 0x80]
call fcn.140029440
nop
lea r8, [rsp + 0x80]
xor edx, edx
lea rcx, [rsp + 0x68]
call sub.RstrtMgr.DLL_RmStartSession
test eax, eax
jne 0x1400230be
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rsp + 0xf0]
mov edx, 1
mov ecx, dword [rsp + 0x68]
call sub.RstrtMgr.DLL_RmRegisterResources
test eax, eax
jne 0x1400230b4
mov dword [rsp + 0x70], 0
mov dword [rsp + 0x58], 0
mov dword [rsp + 0x6c], 0
mov qword [rsp + 0x60], 0
mov edx, 8
lea rcx, [rsp + 0x60]
call fcn.140029440
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [rsp + 0x6c]
lea rdx, [rsp + 0x58]
mov ecx, dword [rsp + 0x68]
call sub.RstrtMgr.DLL_RmGetList
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0xea
jne 0x140022fa9
cmp dword [rsp + 0x58], 0
jne 0x140022fb9
mov ecx, dword [rsp + 0x68]
call sub.RstrtMgr.DLL_RmEndSession
xor eax, eax
jmp 0x1400230c2
mov eax, dword [rsp + 0x58]
mov qword [rsp + 0x50], rax
mov eax, 0x29c
mov rcx, qword [rsp + 0x50]
mul rcx
mov rcx, 0xffffffffffffffff
cmovb rax, rcx
mov rcx, rax
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
mov qword [rsp + 0x60], rax
cmp qword [rsp + 0x60], 0
jne 0x140022fff
mov ecx, dword [rsp + 0x68]
call sub.RstrtMgr.DLL_RmEndSession
xor eax, eax
jmp 0x1400230c2
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x6c], eax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x60]
lea r8, [rsp + 0x6c]
lea rdx, [rsp + 0x58]
mov ecx, dword [rsp + 0x68]
call sub.RstrtMgr.DLL_RmGetList
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
jne 0x14002303b
cmp dword [rsp + 0x58], 0
jne 0x140023052
mov rcx, qword [rsp + 0x60]
call fcn.14005ac98
mov ecx, dword [rsp + 0x68]
call sub.RstrtMgr.DLL_RmEndSession
xor eax, eax
jmp 0x1400230c2
mov dword [rsp + 0x44], 0
jmp 0x140023066
mov eax, dword [rsp + 0x44]
inc eax
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x6c]
cmp dword [rsp + 0x44], eax
jae 0x1400230b4
mov eax, dword [rsp + 0x44]
imul rax, rax, 0x29c
mov rcx, qword [rsp + 0x60]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x48], eax
mov eax, dword [0x14017e7bc]
cmp dword [rsp + 0x48], eax
je 0x1400230b2
mov rcx, qword [rsp + 0x60]
call fcn.14005ac98
mov ecx, dword [rsp + 0x68]
call sub.RstrtMgr.DLL_RmEndSession
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x4c], eax
jmp 0x1400230be
jmp 0x14002305c
mov ecx, dword [rsp + 0x68]
call sub.RstrtMgr.DLL_RmEndSession
nop
mov eax, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.14002baf0
add rsp, 0xe8
ret