Function at 0x140008e40
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x40
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x68], rsi
mov rax, r9
mov r10, r8
mov rbx, rdx
mov rdi, rcx
mov r9d, dword [rsp + 0x70]
mov r8, rax
mov rdx, r10
call fcn.14000a9a0
nop
lea rax, vtable.nvc::ServiceHost.0
mov qword [rdi], rax
xor ebp, ebp
mov qword [rdi + 0x778], rbp
mov qword [rdi + 0x800], rbp
mov qword [rdi + 0x808], rbp
lea rax, str.Service_host
mov qword [rsp + 0x20], rax
lea r9d, [rbp + 4]
lea r8d, [rbp + 0x25]
lea rdx, str.C:dvsp4_build_swgcompdev_srcNvContainercontainerwindowsNvcServiceHost.cpp
mov rcx, qword [rdi + 8]
call fcn.1400170d0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rdi + 0x758], xmm0
mov qword [rdi + 0x768], rax
mov dword [rdi + 0x770], eax
mov dword [rdi + 0x758], 0x10
xor r9d, r9d
xor r8d, r8d
lea edx, [rbp + 1]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [rdi + 0x800], rax
lea rsi, [rdi + 0x780]
mov r8, rbx
lea edx, [rbp + 0x40]
mov rcx, rsi
call fcn.140060e04
mov edx, 0x200
mov rcx, rdi
call fcn.140009dd0
test al, al
je 0x140008f34
call fcn.140018810
or eax, 4
mov ecx, eax
call fcn.1400188b0
mov edx, 0x100
mov rcx, rdi
call fcn.140009dd0
test al, al
je 0x140008f54
call fcn.140018810
or eax, 4
mov ecx, eax
call fcn.1400188b0
mov qword [0x1400b2a18], rdi
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], ebp
xor r9d, r9d
lea r8, [0x14000a490]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
jne 0x140008fe7
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x28], eax
lea rbx, str.Service_host:_failed_to_create_ServiceThread._Error__u
mov qword [rsp + 0x20], rbx
mov r9d, 1
lea r8d, [r9 + 0x41]
lea rdx, str.C:dvsp4_build_swgcompdev_srcNvContainercontainerwindowsNvcServiceHost.cpp
mov rcx, qword [rdi + 8]
call fcn.1400170d0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
mov rdx, rbx
mov ecx, 0x11
call fcn.140004fb0
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x30], xmm0
movups xmmword [rsi + 0x40], xmm0
movups xmmword [rsi + 0x50], xmm0
movups xmmword [rsi + 0x60], xmm0
movups xmmword [rsi + 0x70], xmm0
jmp 0x140008ff0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rdi + 0x800]
test rcx, rcx
je 0x140009033
mov edx, 0x2710
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [rsp + 0x28], eax
lea rax, str.Service_host:_wait_completed_with__u
mov qword [rsp + 0x20], rax
mov r9d, 3
lea r8d, [r9 + 0x53]
lea rdx, str.C:dvsp4_build_swgcompdev_srcNvContainercontainerwindowsNvcServiceHost.cpp
mov rcx, qword [rdi + 8]
call fcn.1400170d0
jmp 0x140009066
lea rbx, str.Service_host_failed
mov qword [rsp + 0x20], rbx
mov r9d, 1
lea r8d, [r9 + 0x5b]
lea rdx, str.C:dvsp4_build_swgcompdev_srcNvContainercontainerwindowsNvcServiceHost.cpp
mov rcx, qword [rdi + 8]
call fcn.1400170d0
mov rdx, rbx
mov ecx, 0x12
call fcn.140004fb0
mov rcx, rdi
call fcn.14000a4d0
nop
mov rax, rdi
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x40
pop rdi
ret