Function at 0x14009d700
Capabilities:
Create process on windows

Disassembly:
push rbx
sub rsp, 0x540
mov rax, qword [0x14047b0a0]
xor rax, rsp
mov qword [rsp + 0x530], rax
mov qword [rsp + 0x80], rsp
xor ebx, ebx
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rbx
xor eax, eax
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rax
lea rdx, [rsp + 0x78]
call qword [sym.imp.WTSAPI32.dll_WTSQueryUserToken]
test eax, eax
jne 0x14009d7a9
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [0x1404031d8]
call fcn.14009d380
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x60], eax
lea rdx, [0x14009d78c]
mov rcx, rsp
call fcn.14035154c
nop
nop
mov eax, dword [rsp + 0x60]
mov rcx, qword [rsp + 0x530]
xor rcx, rsp
call fcn.1401aed20
add rsp, 0x540
pop rbx
ret
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 1
mov r9d, 1
xor r8d, r8d
mov edx, 0x2000000
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.ADVAPI32.dll_DuplicateTokenEx]
test eax, eax
jne 0x14009d815
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [0x140403200]
call fcn.14009d380
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x60], eax
lea rdx, [0x14009d80c]
mov rcx, qword [rsp + 0x80]
call fcn.14035154c
nop
nop
mov eax, dword [rsp + 0x60]
jmp 0x14009d790
xor edx, edx
lea r8d, [rdx + 0x68]
lea rcx, [rsp + 0xa0]
call fcn.1402dd440
mov dword [rsp + 0xa0], WSASetLastError
lea rax, str.winsta0default
mov qword [rsp + 0xb0], rax
mov r8d, 1
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x70]
call qword [sym.imp.USERENV.dll_CreateEnvironmentBlock]
test eax, eax
jne 0x14009d899
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [0x140403248]
call fcn.14009d380
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x60], eax
lea rdx, [0x14009d890]
mov rcx, qword [rsp + 0x80]
call fcn.14035154c
nop
nop
mov eax, dword [rsp + 0x60]
jmp 0x14009d790
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0x110]
call fcn.1402dd440
mov r8d, 0x104
lea rdx, [rsp + 0x110]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0x320]
call fcn.1402dd440
lea r9, [rsp + 0x110]
lea r8, str.__s___fservice
mov edx, 0x104
lea rcx, [rsp + 0x320]
call fcn.14007f180
lea rax, [rsp + 0x88]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x400
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
lea r8, [rsp + 0x320]
xor edx, edx
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
test eax, eax
jne 0x14009d98d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.CreateProcessAsUser
call fcn.14009d380
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x60], eax
lea rdx, [0x14009d984]
mov rcx, qword [rsp + 0x80]
call fcn.14035154c
nop
nop
mov eax, dword [rsp + 0x60]
jmp 0x14009d790
mov rcx, qword [rsp + 0x90]
test rcx, rcx
je 0x14009d9a0
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x14009d9b3
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14009d9c3
call qword [sym.imp.USERENV.dll_DestroyEnvironmentBlock]
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x14009d9d3
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x14009d9e3
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x14009d790