Function at 0x14020e230
Capabilities:
Create a process with modified i/o handles and window
Create process on windows
Terminate process

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov byte [rsp + 8], cl
push rsi
push rdi
sub rsp, 0x1c8
mov qword [rsp + 0x90], 0x4000000
lea rcx, [rsp + 0x180]
call fcn.140249ac0
lea rcx, [rsp + 0x98]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0xb0]
lea rcx, [rsp + 0x98]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov edx, 0x4000000
lea rcx, [rsp + 0xb0]
call fcn.140248f60
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x60], 0
mov dword [rsp + 0x58], 0
mov r9, qword [rsp + 0x1f8]
mov r8, qword [rsp + 0x1f0]
mov edx, 0x3ffffff
mov rcx, qword [rsp + 0x50]
call fcn.14001c670
mov qword [rsp + 0x60], rax
movzx eax, byte [0x140311640]
test eax, eax
je 0x14020e3fb
mov rax, qword [rsp + 0x50]
movsx eax, byte [rax]
test eax, eax
je 0x14020e31e
mov rax, qword [rsp + 0x50]
movzx ecx, byte [rax]
call fcn.140249270
test eax, eax
je 0x14020e31e
mov rax, qword [rsp + 0x50]
inc rax
mov qword [rsp + 0x50], rax
jmp 0x14020e2f2
mov rax, qword [rsp + 0x50]
movsx eax, byte [rax]
cmp eax, 0x22
jne 0x14020e3a7
mov rax, qword [rsp + 0x50]
inc rax
mov qword [rsp + 0x50], rax
jmp 0x14020e347
mov rax, qword [rsp + 0x50]
inc rax
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
movsx eax, byte [rax]
test eax, eax
je 0x14020e3a7
mov rax, qword [rsp + 0x50]
movsx eax, byte [rax]
cmp eax, 0x5c
jne 0x14020e389
mov rax, qword [rsp + 0x50]
inc rax
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
movsx eax, byte [rax]
cmp eax, 0x22
jne 0x14020e387
mov rax, qword [rsp + 0x50]
inc rax
mov qword [rsp + 0x50], rax
jmp 0x14020e3a5
mov rax, qword [rsp + 0x50]
movsx eax, byte [rax]
cmp eax, 0x22
jne 0x14020e3a5
mov rax, qword [rsp + 0x50]
inc rax
mov qword [rsp + 0x50], rax
jmp 0x14020e3a7
jmp 0x14020e33a
mov rax, qword [rsp + 0x50]
movsx eax, byte [rax]
test eax, eax
je 0x14020e3d3
mov rax, qword [rsp + 0x50]
movzx ecx, byte [rax]
call fcn.140249270
test eax, eax
je 0x14020e3d3
mov rax, qword [rsp + 0x50]
inc rax
mov qword [rsp + 0x50], rax
jmp 0x14020e3a7
mov ecx, 1
call qword [sym.imp.ucrtbased.dll___acrt_iob_func]
mov r8, qword [rsp + 0x50]
lea rdx, [0x1402dd7a4]
mov rcx, rax
call fcn.140248ed0
mov eax, dword [rsp + 0x58]
jmp 0x14020e66f
mov dword [rsp + 0x110], 0x68
lea rax, [rsp + 0x118]
mov rdi, rax
xor eax, eax
mov ecx, 0x60
rep stosb byte [rdi], al
lea rax, [rsp + 0x68]
mov rdi, rax
xor eax, eax
mov ecx, 0x18
rep stosb byte [rdi], al
lea rax, [rsp + 0x80]
mov rdi, rax
xor eax, eax
mov ecx, 0x10
rep stosb byte [rdi], al
mov dword [rsp + 0x14c], 0x101
mov eax, 5
mov word [rsp + 0x150], ax
mov ecx, 0xfffffff6
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov qword [rsp + 0x160], rax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov qword [rsp + 0x168], rax
mov ecx, 0xfffffff4
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov qword [rsp + 0x170], rax
movzx eax, byte [0x140311590]
test eax, eax
je 0x14020e4cb
mov rdx, qword [rsp + 0x1e8]
lea rcx, str._SYSTEM_CALL___s_n
call fcn.14001c510
mov rax, qword [rsp + 0x60]
dec rax
mov r8, qword [rsp + 0x50]
mov edx, eax
lea rcx, str._.s_n_n
call fcn.14001c510
nop
mov rax, qword [rsp + 0x60]
dec rax
mov r8, rax
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x190]
call fcn.140025440
lea rcx, [rsp + 0xc0]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x1a0]
call fcn.140025030
lea rcx, [rsp + 0xd0]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0xe0]
lea rcx, [rsp + 0xc0]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0xf0]
lea rcx, [rsp + 0xd0]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r8, [rsp + 0xe0]
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x1b0]
call fcn.140027630
lea rcx, [rsp + 0x100]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x80]
lea rcx, [rsp + 0x100]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x110]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rsp + 0x80]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x14020e634
mov edx, 0xffffffff
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea rdx, [rsp + 0x58]
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
jmp 0x14020e64d
mov rdx, qword [rsp + 0x50]
lea rcx, str.Failed_to_execute_command:_n_t_s_n
call fcn.14001c510
mov dword [rsp + 0x58], 0xffffffff
movzx eax, byte [rsp + 0x1e0]
test eax, eax
je 0x14020e66b
cmp dword [rsp + 0x58], 0
je 0x14020e66b
mov ecx, dword [rsp + 0x58]
call qword [sym.imp.ucrtbased.dll_exit]
nop
mov eax, dword [rsp + 0x58]
add rsp, 0x1c8
pop rdi
pop rsi
ret