Function at 0x14002dca0
Capabilities:
Create process on windows
Query environment variable

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x278
mov rbx, r8
mov qword [rsp + 0x60], rdx
mov r13, rcx
mov rax, qword [0x140102388]
xor rax, rsp
mov qword [rsp + 0x270], rax
lea rdx, str.LaunchProcess
lea r8, str..._.._base_process_launch_win.cc
lea r15, [rsp + 0xb0]
mov rcx, r15
mov r9d, 0xce
call fcn.14002b5a0
lea rcx, [rsp + 0x268]
mov rdx, r15
call fcn.140037c70
lea rcx, [rsp + 0x1f0]
call fcn.140042090
cmp dword [rbx + 0x24], 1
sete r12b
mov rsi, qword [rbx + 0x28]
mov rbp, qword [rbx + 0x30]
cmp rsi, rbp
je 0x14002ddad
mov rax, rbp
sub rax, rsi
sar rax, 3
cmp rax, 0x1fffffff
ja 0x14002de55
mov r12, qword [sym.imp.KERNEL32.dll_SetHandleInformation]
lea r14, str..._.._base_process_launch_win.cc
lea rdi, [rsp + 0xb0]
nop word cs:[rax + rax]
mov rcx, qword [rsi]
mov edx, 1
mov r8d, 1
call r12
test eax, eax
je 0x14002dd83
add rsi, 8
cmp rbp, rsi
jne 0x14002dd60
jmp 0x14002de03
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
mov rcx, rdi
mov rdx, r14
mov r8d, 0xe2
mov r9d, 3
call fcn.14002c7b0
mov rcx, rdi
call fcn.14002c880
jmp 0x14002dd75
xor edi, edi
cmp byte [rbx + 0x21], 0
je 0x14002ddbd
or byte [rsp + 0x234], 0x80
cmp byte [rbx + 0x48], 0
je 0x14002ddd2
lea rax, [0x1400d4156]
mov qword [rsp + 0x208], rax
mov eax, dword [rsp + 0x234]
mov ecx, eax
or ecx, 1
mov dword [rsp + 0x234], ecx
movzx ecx, byte [rbx + 0x20]
xor ecx, 1
mov word [rsp + 0x238], cx
mov rcx, qword [rbx + 0x58]
test rcx, rcx
je 0x14002de64
mov rdx, qword [rbx + 0x60]
jmp 0x14002de74
lea rcx, [rsp + 0x1f0]
mov edx, 1
call fcn.140042110
test al, al
je 0x14002de55
mov r9d, dword [rbx + 0x30]
mov r8, qword [rbx + 0x28]
sub r9d, r8d
and r9d, 0xfffffff8
lea rcx, [rsp + 0x1f0]
mov edx, 0x20002
call fcn.1400421e0
test al, al
je 0x14002de55
mov r12b, 1
mov edi, 0x80000
cmp byte [rbx + 0x21], 0
jne 0x14002ddb5
jmp 0x14002ddbd
mov rcx, r13
xor edx, edx
call fcn.14002e3c0
jmp 0x14002e1dd
mov rdx, qword [rbx + 0x60]
test rdx, rdx
jne 0x14002de74
cmp qword [rbx + 0x68], 0
je 0x14002de9c
or eax, 0x101
mov dword [rsp + 0x234], eax
mov qword [rsp + 0x248], rcx
mov qword [rsp + 0x250], rdx
mov rax, qword [rbx + 0x68]
mov qword [rsp + 0x258], rax
cmp qword [rbx + 0x50], 0
je 0x14002deb4
call fcn.140042b10
lea ecx, [rdi + 0x1000000]
cmp eax, 5
cmovl edi, ecx
mov esi, edi
or esi, 0x1000000
cmp byte [rbx + 0x70], 0
cmove esi, edi
xorps xmm0, xmm0
movaps xmmword [rsp + 0xb0], xmm0
mov qword [rsp + 0xc0], 0
movzx eax, byte [rbx + 0x1f]
test al, al
jns 0x14002deec
mov rax, qword [rbx + 0x10]
mov r14, qword [rbx + 8]
jmp 0x14002def0
lea r14, [rbx + 8]
test rax, rax
cmove r14, rax
lea rdi, [rsp + 0x98]
mov rcx, rdi
mov rdx, qword [rsp + 0x60]
call fcn.140022de0
mov rdx, qword [rbx + 0x40]
test rdx, rdx
je 0x14002dfd0
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x80]
xor r8d, r8d
call sub.USERENV.dll_CreateEnvironmentBlock
test eax, eax
je 0x14002dfb3
or esi, 0x400
mov rdx, qword [rsp + 0x80]
movzx eax, r12b
cmp byte [rsp + 0xaf], 0
jns 0x14002df5d
mov rdi, qword [rsp + 0x98]
mov rcx, qword [rbx + 0x40]
mov qword [rsp + 0x50], r15
lea rbp, [rsp + 0x1f8]
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], rdx
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], 0
xor edx, edx
mov r8, rdi
xor r9d, r9d
call qword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
mov edi, eax
mov rcx, qword [rsp + 0x80]
call sub.USERENV.dll_DestroyEnvironmentBlock
test edi, edi
jne 0x14002e248
mov rcx, r13
xor edx, edx
call fcn.14002e3c0
cmp byte [rsp + 0xaf], 0
jns 0x14002e1dd
jmp 0x14002e33c
xorps xmm0, xmm0
movaps xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], 0
cmp byte [rbx + 0x90], 0
je 0x14002e026
lea r8, [rbx + 0x78]
lea rdx, [0x1400d8b98]
lea rcx, [rsp + 0x68]
call fcn.140042b30
cmp byte [rsp + 0x97], 0
js 0x14002e07c
mov word [rsp + 0x80], 0
mov byte [rsp + 0x97], 0
jmp 0x14002e0b8
cmp qword [rbx + 0x88], 0
je 0x14002e0ea
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
test rax, rax
je 0x14002e21e
mov rbp, rax
lea r8, [rbx + 0x78]
lea rcx, [rsp + 0x68]
mov rdx, rax
call fcn.140042b30
cmp byte [rsp + 0x97], 0
js 0x14002e0ee
mov word [rsp + 0x80], 0
mov byte [rsp + 0x97], 0
jmp 0x14002e12a
mov rax, qword [rsp + 0x80]
mov word [rax], 0
mov qword [rsp + 0x88], 0
cmp byte [rsp + 0x97], 0
jns 0x14002e0b8
mov rcx, qword [rsp + 0x80]
call fcn.1400aab5c
mov qword [rsp + 0x90], 0
lea rdi, [rsp + 0x80]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x90], rax
movups xmm0, xmmword [rsp + 0x68]
movaps xmmword [rsp + 0x80], xmm0
cmp byte [rdi + 0x17], 0
jns 0x14002e15b
mov rax, qword [rsp + 0x80]
jmp 0x14002e163
xor eax, eax
jmp 0x14002e169
mov rax, qword [rsp + 0x80]
mov word [rax], 0
mov qword [rsp + 0x88], 0
cmp byte [rsp + 0x97], 0
jns 0x14002e12a
mov rcx, qword [rsp + 0x80]
call fcn.1400aab5c
mov qword [rsp + 0x90], 0
lea rdi, [rsp + 0x80]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x90], rax
movups xmm0, xmmword [rsp + 0x68]
movaps xmmword [rsp + 0x80], xmm0
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
cmp byte [rdi + 0x17], 0
js 0x14002e0e0
lea rax, [rsp + 0x80]
or esi, 0x400
movzx ecx, r12b
cmp byte [rsp + 0xaf], 0
jns 0x14002e181
mov rdx, qword [rsp + 0x98]
jmp 0x14002e189
lea rdx, [rsp + 0x98]
mov qword [rsp + 0x48], r15
lea rbp, [rsp + 0x1f8]
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], ecx
xor esi, esi
xor ecx, ecx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x14002e21e
cmp byte [rsp + 0x97], 0
js 0x14002e237
test esi, esi
je 0x14002e248
cmp byte [rsp + 0xaf], 0
js 0x14002e33c
lea rcx, [rsp + 0x1f0]
call fcn.1400420d0
lea rcx, [rsp + 0x268]
call fcn.140037f40
mov rcx, qword [rsp + 0x270]
xor rcx, rsp
call fcn.1400aaed0
mov rax, r13
add rsp, 0x278
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, r13
xor edx, edx
call fcn.14002e3c0
mov esi, 1
cmp byte [rsp + 0x97], 0
jns 0x14002e1cb
mov rcx, qword [rsp + 0x80]
call fcn.1400aab5c
test esi, esi
jne 0x14002e1cf
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0xb0]
call fcn.140042fb0
mov rcx, qword [rbx + 0x50]
test rcx, rcx
je 0x14002e278
mov rdx, qword [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_AssignProcessToJobObject]
test eax, eax
je 0x14002e2e2
cmp byte [rbx + 0x71], 0
je 0x14002e293
mov rcx, qword [rsp + 0x80]
call fcn.140036770
mov ecx, eax
call qword [sym.imp.USER32.dll_AllowSetForegroundWindow]
cmp byte [rbx], 0
je 0x14002e2ab
mov rcx, qword [rsp + 0x80]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edx, dword [rsp + 0x90]
mov rcx, qword [0x140105d00]
test rcx, rcx
je 0x14002e2c8
mov r8, qword [rsp + 0x60]
call fcn.14003a170
lea rcx, [rsp + 0x80]
call fcn.140043120
mov rcx, r13
mov rdx, rax
call fcn.14002e3c0
jmp 0x14002e321
lea rcx, [rsp + 0x80]
call fcn.140043120
lea rdi, [rsp + 0x68]
mov rcx, rdi
mov rdx, rax
call fcn.14002e3c0
mov rcx, rdi
mov edx, 1
mov r8b, 1
call fcn.14002e640
mov rcx, r13
xor edx, edx
call fcn.14002e3c0
mov rcx, rdi
call fcn.14002e400
lea rcx, [rsp + 0x80]
call fcn.140043000
cmp byte [rsp + 0xaf], 0
jns 0x14002e1dd
mov rcx, qword [rsp + 0x98]
call fcn.1400aab5c
jmp 0x14002e1dd