Function at 0x1400110f0
Capabilities:
Create process on windows
Get common file path

Disassembly:
jmp 0x140016d90
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x2a8
lea rbp, [rsp + 0x60]
lea rdi, [rsp + 0x60]
mov ecx, 0x62
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x2c8]
mov rax, qword [0x14002c028]
xor rax, rbp
mov qword [rbp + 0x238], rax
lea rcx, [0x140032045]
call fcn.140011794
mov dword [rbp + 4], 0
mov qword [rbp + 0x28], 0xffffffffffffffff
mov qword [rbp + 0x48], 0xffffffffffffffff
mov dword [rbp + 0x64], 0
mov qword [rbp + 0x88], 0
mov qword [rbp + 0xa8], 0
lea rax, [rbp + 0xc8]
mov rdi, rax
xor eax, eax
mov ecx, 0x18
rep stosb byte [rdi], al
lea rax, [rbp + 0x100]
mov rdi, rax
xor eax, eax
mov ecx, 0x68
rep stosb byte [rdi], al
mov rcx, qword [rbp + 0x260]
call qword [sym.imp.ADVAPI32.dll_ImpersonateNamedPipeClient]
test eax, eax
jne 0x140016e62
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.ImpersonateNamedPipeClient__._Error:__d_n
call fcn.140011050
jmp 0x1400171a3
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
lea r9, [rbp + 0x28]
xor r8d, r8d
mov edx, 0xf01ff
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenThreadToken]
test eax, eax
jne 0x140016e9f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.OpenThreadToken__._Error:__d_n
call fcn.140011050
jmp 0x1400171a3
lea rax, [rbp + 0x48]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 1
mov r9d, 2
xor r8d, r8d
mov edx, 0xf01ff
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.ADVAPI32.dll_DuplicateTokenEx]
test eax, eax
jne 0x140016eea
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.DuplicateTokenEx___failed._Error:__d_n
call fcn.140011050
jmp 0x1400171a3
cmp dword [0x14002c464], 0
je 0x140016f31
mov r9d, 4
lea r8, [0x14002c464]
mov edx, 0xc
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.ADVAPI32.dll_SetTokenInformation]
test eax, eax
jne 0x140016f31
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.SetTokenInformation___failed._Error:__d_n
call fcn.140011050
jmp 0x1400171a3
mov dword [rbp + 0x64], 0x400
cmp dword [0x14002c460], 0
je 0x140016f4d
mov dword [rbp + 0x234], 0
jmp 0x140016f57
mov dword [rbp + 0x234], 0x10
mov eax, dword [rbp + 0x234]
mov ecx, dword [rbp + 0x64]
or ecx, eax
mov eax, ecx
mov dword [rbp + 0x64], eax
mov ecx, 0x208
call qword [sym.imp.ucrtbased.dll_malloc]
mov qword [rbp + 0x88], rax
cmp qword [rbp + 0x88], 0
jne 0x140016f8d
jmp 0x1400171a3
mov edx, 0x104
mov rcx, qword [rbp + 0x88]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
test eax, eax
jne 0x140016fc1
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.GetSystemDirectory___failed._Error:__d_n
call fcn.140011050
jmp 0x1400171a3
xor r8d, r8d
mov rdx, qword [rbp + 0x48]
lea rcx, [rbp + 0xa8]
call fcn.1400116e0
test eax, eax
jne 0x140016ff6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.CreateEnvironmentBlock___failed._Error:__d_n
call fcn.140011050
jmp 0x1400171a3
mov r8d, 0x68
xor edx, edx
lea rcx, [rbp + 0x100]
call fcn.1400115aa
mov dword [rbp + 0x100], 0x68
lea rax, str.WinSta0Default
mov qword [rbp + 0x110], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0x88]
mov qword [rsp + 0x40], rax
mov rax, qword [rbp + 0xa8]
mov qword [rsp + 0x38], rax
mov eax, dword [rbp + 0x64]
mov dword [rsp + 0x30], eax
mov eax, dword [0x14002c460]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [0x14002c468]
xor edx, edx
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
test eax, eax
jne 0x140017161
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x522
jne 0x140017147
lea rcx, str.____CreateProcessAsUser___failed_because_of_a_missing_privilege__retrying_with_CreateProcessWithTokenW__._n
call fcn.140011050
call qword [sym.imp.ADVAPI32.dll_RevertToSelf]
cmp dword [0x14002c460], 0
jne 0x140017135
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x38], rax
mov rax, qword [rbp + 0x88]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0xa8]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp + 0x64]
mov dword [rsp + 0x20], eax
mov r9, qword [0x14002c468]
xor r8d, r8d
mov edx, 1
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.ADVAPI32.dll_CreateProcessWithTokenW]
test eax, eax
jne 0x140017127
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.CreateProcessWithTokenW___failed._Error:__d_n
call fcn.140011050
jmp 0x1400171a3
lea rcx, str.___CreateProcessWithTokenW___OK_n
call fcn.140011050
jmp 0x140017145
lea rcx, str.____CreateProcessWithTokenW___isnt_compatible_with_option__i_n
call fcn.140011050
jmp 0x1400171a3
jmp 0x14001715f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.CreateProcessAsUser___failed._Error:__d_n
call fcn.140011050
jmp 0x1400171a3
jmp 0x14001716d
lea rcx, str.___CreateProcessAsUser___OK_n
call fcn.140011050
cmp dword [0x14002c460], 0
je 0x14001719c
mov ecx, 1
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov rcx, rax
call qword [sym.imp.ucrtbased.dll_fflush]
mov edx, 0xffffffff
mov rcx, qword [rbp + 0xc8]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [rbp + 4], 1
cmp qword [rbp + 0x28], 0
je 0x1400171b4
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [rbp + 0x48], 0
je 0x1400171c5
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [rbp + 0x88], 0
je 0x1400171dc
mov rcx, qword [rbp + 0x88]
call qword [sym.imp.ucrtbased.dll_free]
cmp qword [rbp + 0xa8], 0
je 0x1400171f2
mov rcx, qword [rbp + 0xa8]
call fcn.14001161d
cmp qword [rbp + 0xc8], 0
je 0x140017209
mov rcx, qword [rbp + 0xc8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [rbp + 0xd0], 0
je 0x140017220
mov rcx, qword [rbp + 0xd0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [rbp + 4]
mov edi, eax
lea rcx, [rbp - 0x60]
lea rdx, [0x1400266b8]
call fcn.14001165e
mov eax, edi
mov rcx, qword [rbp + 0x238]
xor rcx, rbp
call fcn.140011398
lea rsp, [rbp + 0x248]
pop rdi
pop rbp
ret