Function at 0x140001550
Capabilities:
Create process on windows
Impersonate user

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
lea rbp, [rsp - 0x20]
sub rsp, 0x120
mov rax, qword [0x140025008]
xor rax, rsp
mov qword [rbp + 0x10], rax
lea rcx, [rsp + 0x50]
mov rbx, rdx
call fcn.140001230
cmp qword [rax + 0x18], 0x10
jb 0x140001587
mov rax, qword [rax]
mov rdx, rax
lea rcx, str.___Current_user_is:__s_n
call fcn.140001010
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x1400015d3
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400015ce
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140001881
call fcn.140001a6c
mov rcx, qword [rbx + 8]
mov qword [rsp + 0x130], rdi
call fcn.14000a0ec
xorps xmm0, xmm0
mov dword [rbp - 0x60], 0x68
xor ecx, ecx
xor edi, edi
mov dword [rbp + 4], ecx
mov r8d, eax
mov qword [rbp - 0x70], rcx
mov ecx, 0x1000
mov qword [rsp + 0x70], rdi
lea edx, [rdi + 1]
mov qword [rsp + 0x78], rdi
movups xmmword [rbp - 0x5c], xmm0
movups xmmword [rbp - 0x4c], xmm0
movups xmmword [rbp - 0x3c], xmm0
movups xmmword [rbp - 0x2c], xmm0
movups xmmword [rbp - 0x1c], xmm0
movups xmmword [rbp - 0xc], xmm0
movups xmmword [rbp - 0x80], xmm0
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x14000164b
lea rcx, str.___OpenProcess___success__n
call fcn.140001010
jmp 0x14000166e
mov rdx, rbx
lea rcx, str.____OpenProcess___Return_Code:__i_n
call fcn.140001010
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.____OpenProcess___Error:__i_n
call fcn.140001010
lea r8, [rsp + 0x70]
mov edx, 0x2000000
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x14000169b
lea rcx, str.___OpenProcessToken___success__n
call fcn.140001010
jmp 0x1400016bd
mov edx, ebx
lea rcx, str.____OpenProcessToken___Return_Code:__i_n
call fcn.140001010
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.____OpenProcessToken___Error:__i_n
call fcn.140001010
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.ADVAPI32.dll_ImpersonateLoggedOnUser]
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x140001756
lea rcx, str.___ImpersonatedLoggedOnUser___success__n
call fcn.140001010
lea rcx, [rsp + 0x50]
call fcn.140001230
cmp qword [rax + 0x18], 0x10
jb 0x1400016f6
mov rax, qword [rax]
mov rdx, rax
lea rcx, str.___Current_user_is:__s_n
call fcn.140001010
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x140001742
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000173d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000187b
call fcn.140001a6c
lea rcx, str.___Reverting_thread_to_original_user_context_n
call fcn.140001010
call qword [sym.imp.ADVAPI32.dll_RevertToSelf]
jmp 0x140001778
mov edx, ebx
lea rcx, str.____ImpersonatedLoggedOnUser___Return_Code:__i_n
call fcn.140001010
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.____ImpersonatedLoggedOnUser___Error:__i_n
call fcn.140001010
mov rcx, qword [rsp + 0x70]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov r9d, 2
xor r8d, r8d
mov dword [rsp + 0x20], 1
mov edx, 0x2000000
call qword [sym.imp.ADVAPI32.dll_DuplicateTokenEx]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1400017bd
lea rcx, str.___DuplicateTokenEx___success__n
call fcn.140001010
jmp 0x1400017df
mov edx, ebx
lea rcx, str.____DuplicateTokenEx___Return_Code:__i_n
call fcn.140001010
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.____DupicateTokenEx___Error:__i_n
call fcn.140001010
mov rcx, qword [rsp + 0x78]
lea rax, [rbp - 0x80]
mov qword [rsp + 0x40], rax
lea r8, str.C:WindowsSystem32cmd.exe
xor r9d, r9d
lea rax, [rbp - 0x60]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rdi
lea edx, [r9 + 1]
mov dword [rsp + 0x20], edi
call qword [sym.imp.ADVAPI32.dll_CreateProcessWithTokenW]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x140001832
lea rcx, str.___Process_spawned__n
call fcn.140001010
jmp 0x140001854
mov edx, ebx
lea rcx, str.____CreateProcessWithTokenW_Return_Code:__i_n
call fcn.140001010
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.____CreateProcessWithTokenW_Error:__i_n
call fcn.140001010
mov rdi, qword [rsp + 0x130]
xor eax, eax
mov rcx, qword [rbp + 0x10]
xor rcx, rsp
call fcn.140001a10
mov rbx, qword [rsp + 0x140]
add rsp, 0x120
pop rbp
ret
call fcn.14000a540
int3
call fcn.14000a540
int3