Function at 0x14002ad20
Capabilities:
Create process on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x68]
sub rsp, 0x168
mov rax, qword [0x1400c7070]
xor rax, rsp
mov qword [rbp + 0x50], rax
mov r14, r9
mov r15, r8
mov qword [rbp - 0x80], r8
mov rsi, rdx
mov rdi, rcx
test rdx, rdx
je 0x14002af4d
lea rcx, str.Trying_to_run:__s_n
call fcn.14005cb30
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x3c], xmm0
movups xmmword [rbp - 0x2c], xmm0
movups xmmword [rbp - 0x1c], xmm0
movups xmmword [rbp - 0xc], xmm0
movups xmmword [rbp + 4], xmm0
movups xmmword [rbp + 0x14], xmm0
mov dword [rbp + 0x24], eax
mov dword [rbp - 0x40], 0x68
movzx eax, byte [rdi + 0x8d]
xor r12d, r12d
test al, al
je 0x14002adaa
mov word [rbp], r12w
mov dword [rbp - 4], r12d
neg al
sbb ebx, ebx
and ebx, 0x8000000
test r14, r14
jne 0x14002af12
lea rcx, str.User_token_not_present._Running_CreateProcess_directly._n
call fcn.14005cb30
lea rax, [rbp - 0x60]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
mov r14d, eax
cmp qword [rdi + 0xb0], r12
je 0x14002af05
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x40], r12
mov qword [rbp + 0x48], 0xf
mov byte [rbp + 0x30], r12b
mov r8d, 4
lea rdx, str.int_
lea rcx, [rbp + 0x30]
call fcn.14001d830
nop
lea rdx, [rdi + 0xa0]
cmp qword [rdx + 0x18], 8
jb 0x14002ae4b
mov rdx, qword [rdx]
lea rcx, [rsp + 0x60]
call fcn.14005a4e0
nop
lea rdx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0x10
cmovae rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x70]
lea rcx, [rbp + 0x30]
call fcn.14001d4c0
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x14002aeb3
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002aeae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b39f
call fcn.140062610
lea rcx, [rbp + 0x30]
cmp qword [rbp + 0x48], 0x10
cmovae rcx, qword [rbp + 0x30]
mov edx, dword [rbp - 0x50]
call sym.Installer.exe_Put
nop
mov rdx, qword [rbp + 0x48]
cmp rdx, 0x10
jb 0x14002af05
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002af00
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b3a5
call fcn.140062610
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
jmp 0x14002b232
mov qword [rbp - 0x68], r12
xor edx, edx
mov r13d, 0x430
mov r8d, 0x60000
lea rcx, str.winsta0
call qword [sym.imp.USER32.dll_OpenWindowStationW]
mov rbx, rax
test rax, rax
jne 0x14002af54
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.OpenWindowStation___failed__error__d__n
call fcn.14005cb30
xor eax, eax
jmp 0x14002b379
lea rcx, str.OpenWindowStation___is_OK__n
call fcn.14005cb30
call qword [sym.imp.USER32.dll_GetProcessWindowStation]
mov qword [rbp - 0x70], rax
mov rcx, rbx
call qword [sym.imp.USER32.dll_SetProcessWindowStation]
test eax, eax
jne 0x14002af92
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.SetProcessWindowStation___failed__error__d__n
call fcn.14005cb30
xor eax, eax
jmp 0x14002b379
lea rcx, str.SetProcessWindowStation___is_OK__n
call fcn.14005cb30
mov r9d, 0x60081
xor r8d, r8d
xor edx, edx
lea rcx, str.default
call qword [sym.imp.USER32.dll_OpenDesktopW]
mov r12, rax
test rax, rax
jne 0x14002afd9
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.OpenDesktop___failed__error__d__n
call fcn.14005cb30
xor eax, eax
jmp 0x14002b379
lea rcx, str.OpenDesktop___is_pretty_fine__n
call fcn.14005cb30
lea rdx, [rbp - 0x78]
mov rcx, r14
call fcn.140028960
test eax, eax
jne 0x14002b010
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.ObtainSid___failed__error__d__n
call fcn.14005cb30
xor eax, eax
jmp 0x14002b379
lea rcx, str.ObtainSid___is_OK__n
call fcn.14005cb30
mov r15, qword [rbp - 0x78]
mov rdx, r15
mov rcx, rbx
call fcn.140028b50
test eax, eax
jne 0x14002b04a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.AddTheAceWindowStation___failed__error__d__n
call fcn.14005cb30
xor eax, eax
jmp 0x14002b379
lea rcx, str.AddTheAceWindowStation___is_OK__n
call fcn.14005cb30
mov rdx, r15
mov rcx, r12
call fcn.1400290e0
test eax, eax
jne 0x14002b080
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.AddTheAceDesktop___failed__error__d__n
call fcn.14005cb30
xor eax, eax
jmp 0x14002b379
lea rcx, str.AddTheAceDesktop___is_OK__n
call fcn.14005cb30
lea rcx, str.Removing_the_SID..._n
call fcn.14005cb30
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, rbx
call qword [sym.imp.USER32.dll_CloseWindowStation]
test eax, eax
je 0x14002b0c7
lea rcx, str.hwinsta_handle_was_closed_successfully__n
call fcn.14005cb30
jmp 0x14002b0db
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.Failed_to_close_hwinsta_handle__error__d_n
call fcn.14005cb30
mov rcx, r12
call qword [sym.imp.USER32.dll_CloseDesktop]
test eax, eax
je 0x14002b0f6
lea rcx, str.hdesk_handle_was_closed_successfully__n
call fcn.14005cb30
jmp 0x14002b10a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.Failed_to_close_hdesk_handle__error__d_n
call fcn.14005cb30
lea rax, str.winsta0default
mov qword [rbp - 0x30], rax
mov r8d, 1
mov rdx, r14
lea rcx, [rbp - 0x68]
call qword [sym.imp.USERENV.dll_CreateEnvironmentBlock]
test eax, eax
jne 0x14002b166
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.Cannot_create_environment_block_for_the_user._Error__d_n
call fcn.14005cb30
xor r12d, r12d
mov eax, r12d
mov qword [rbp - 0x68], rax
mov r13d, r12d
cmp byte [rdi + 0x8d], al
je 0x14002b16d
mov word [rbp], r12w
mov dword [rbp - 4], r12d
mov r13d, 0x8000000
jmp 0x14002b16d
mov rax, qword [rbp - 0x68]
xor r12d, r12d
mov r10, qword [rdi + 0xc0]
lea rcx, [rbp - 0x60]
test r10, r10
je 0x14002b1c4
mov qword [rsp + 0x40], rcx
lea rcx, [rbp - 0x40]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rbp - 0x80]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r13d
mov r9, rsi
xor r8d, r8d
xor edx, edx
mov rcx, r14
mov rax, r10
call qword [0x1400926f0]
mov r14d, eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.CreateProcessWithTokenW_returned__d_n
jmp 0x14002b210
mov qword [rsp + 0x50], rcx
lea rcx, [rbp - 0x40]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rbp - 0x80]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
xor r9d, r9d
mov r8, rsi
xor edx, edx
mov rcx, r14
call qword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
mov r14d, eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.CreateProcessWithToken_function_not_avalable_on_the_system._CreateProcessAsUser_returned:__d_n
mov ebx, eax
mov edx, eax
call fcn.14005cb30
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x14002b228
call qword [sym.imp.USERENV.dll_DestroyEnvironmentBlock]
mov rcx, qword [rbp - 0x70]
call qword [sym.imp.USER32.dll_SetProcessWindowStation]
mov rdx, rsi
test r14d, r14d
jne 0x14002b250
mov r8d, ebx
lea rcx, str.Failed_to_run:__s__Error__d_
call fcn.14005cb30
xor eax, eax
jmp 0x14002b379
mov r8d, dword [rbp - 0x50]
lea rcx, str.Started__s_with_pid__d
call fcn.14005cb30
cmp qword [rdi + 0xb0], 0
je 0x14002b360
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x40], r12
mov qword [rbp + 0x48], 0xf
mov byte [rbp + 0x30], 0
mov r8d, 4
lea rdx, str.int_
lea rcx, [rbp + 0x30]
call fcn.14001d830
nop
lea rdx, [rdi + 0xa0]
cmp qword [rdx + 0x18], 8
jb 0x14002b2aa
mov rdx, qword [rdx]
lea rcx, [rsp + 0x60]
call fcn.14005a4e0
nop
lea rdx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0x10
cmovae rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x70]
lea rcx, [rbp + 0x30]
call fcn.14001d4c0
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x14002b312
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002b30d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b3ab
call fcn.140062610
lea rcx, [rbp + 0x30]
cmp qword [rbp + 0x48], 0x10
cmovae rcx, qword [rbp + 0x30]
mov edx, dword [rbp - 0x50]
call sym.Installer.exe_Put
nop
mov rdx, qword [rbp + 0x48]
cmp rdx, 0x10
jb 0x14002b360
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002b35b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b399
call fcn.140062610
mov rcx, qword [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp - 0x58]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 1
mov rcx, qword [rbp + 0x50]
xor rcx, rsp
call fcn.1400625f0
add rsp, 0x168
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1400695b8
nop
call fcn.1400695b8
nop
call fcn.1400695b8
nop
call fcn.1400695b8
int3