Function at 0x140023700
Capabilities:
Create process on windows
Query environment variable
Resume thread

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x238
movaps xmmword [rsp + 0x220], xmm6
mov rbx, r8
mov qword [rsp + 0x78], rdx
mov rsi, rcx
mov rax, qword [0x140173028]
xor rax, rsp
mov qword [rsp + 0x218], rax
movabs r14, 0xaaaaaaaaaaaaaaaa
mov al, byte [0x140175010]
mov byte [rsp + 0x5f], al
test al, 0x19
jne 0x14002400a
xor r15d, r15d
mov r12, r14
cmp byte [rbx + 0x21], 0
jne 0x14002406d
movabs r13, 0xaaaaaaaaaaaaaaaa
lea rbp, [rsp + 0x180]
mov qword [rbp + 0x10], r13
movaps xmm6, xmmword [0x14014df90]
movaps xmmword [rbp], xmm6
lea rdx, str.LaunchProcess
lea r8, str..._.._base_process_launch_win.cc
lea rdi, [rsp + 0x100]
mov rcx, rdi
mov r9d, 0xff
call fcn.14004cb40
lea r8, [0x14017f75c]
mov rcx, rbp
mov rdx, rdi
call fcn.140026c80
xorps xmm0, xmm0
movaps xmmword [rsp + 0x200], xmm0
mov dword [rsp + 0x17c], 0
mov qword [rdi + 0x70], r13
movaps xmmword [rdi + 0x60], xmm6
movaps xmmword [rdi + 0x50], xmm6
movaps xmmword [rdi + 0x40], xmm6
movaps xmmword [rdi + 0x30], xmm6
movaps xmmword [rdi + 0x20], xmm6
movaps xmmword [rdi + 0x10], xmm6
movaps xmmword [rdi], xmm6
lea rcx, [rsp + 0x100]
call fcn.1400e0a70
xor edi, edi
cmp byte [rbx + 0x7a], 0
mov ecx, 0
je 0x140023817
call fcn.140055200
xor ecx, ecx
cmp eax, 0x10
setge cl
movzx eax, byte [rbx + 0x7b]
add ecx, eax
mov rdx, qword [rbx + 0x28]
xor ebp, ebp
cmp rdx, qword [rbx + 0x30]
setne bpl
add ebp, ecx
movzx edx, byte [rbx + 0x7c]
add edx, ebp
je 0x140023852
lea rcx, [rsp + 0x100]
call fcn.1400e0af0
test al, al
je 0x140023997
mov al, byte [rbx + 0x7b]
mov edi, 0x80000
mov dword [rsp + 0xfc], 2
test al, al
je 0x140023889
lea rcx, [rsp + 0x100]
lea r8, [rsp + 0xfc]
mov edx, 0x20012
mov r9d, 4
call fcn.1400e0bc0
test al, al
je 0x140023997
cmp byte [rbx + 0x7a], 0
je 0x1400238c6
call fcn.140055200
cmp eax, 0x10
jl 0x1400238c6
lea r8, [rsp + 0x200]
or byte [r8 + 0xb], 0x20
lea rcx, [rsp + 0x100]
mov edx, 0x20007
mov r9d, 0x10
call fcn.1400e0bc0
test al, al
je 0x140023997
cmp byte [rbx + 0x7c], 0
je 0x1400238fb
lea r8, [rsp + 0x17c]
mov dword [r8], 1
lea rcx, [rsp + 0x100]
mov edx, 0x2001c
mov r9d, 4
call fcn.1400e0bc0
test al, al
je 0x140023997
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x68], r12
cmp dword [rbx + 0x24], 1
sete r13b
mov rbp, qword [rbx + 0x28]
mov r12, qword [rbx + 0x30]
cmp rbp, r12
je 0x140023a37
mov rax, r12
sub rax, rbp
mov ecx, 0xfffffff8
cmp rax, rcx
ja 0x140023a94
mov qword [rsp + 0x70], r14
mov rsi, r15
mov r15, qword [sym.imp.KERNEL32.dll_SetHandleInformation]
lea r14, str..._.._base_process_launch_win.cc
lea r13, [rsp + 0x1a0]
mov rcx, qword [rbp]
mov edx, 1
mov r8d, 1
call r15
test eax, eax
je 0x140023974
add rbp, 8
cmp rbp, r12
jne 0x140023950
jmp 0x140023a07
mov rcx, r13
mov rdx, r14
mov r8d, 0x15a
call fcn.1400e0cd0
mov rcx, r13
call fcn.1400e0c00
mov rcx, r13
call fcn.1400e0c10
jmp 0x140023966
mov rcx, rsi
xor edx, edx
call fcn.140024090
mov bl, byte [rsp + 0x5f]
lea rcx, [rsp + 0x100]
call fcn.1400e0ab0
lea rcx, [rsp + 0x180]
call fcn.1400ddc70
test bl, 0x19
je 0x1400239d8
cmp byte [r15], 0
je 0x1400239d8
mov rcx, r15
mov rdx, r14
mov r8, r12
call fcn.140059990
mov rcx, qword [rsp + 0x218]
xor rcx, rsp
call fcn.140083c00
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x220]
add rsp, 0x238
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r9d, dword [rbx + 0x30]
mov r8, qword [rbx + 0x28]
sub r9d, r8d
and r9d, 0xfffffff8
lea rcx, [rsp + 0x100]
mov edx, 0x20002
call fcn.1400e0bc0
mov r13b, 1
test al, al
mov r15, rsi
mov r14, qword [rsp + 0x70]
je 0x140023a94
cmp byte [rbx + 0x22], 0
je 0x140023a45
or byte [rsp + 0x144], 0x80
cmp byte [rbx + 0x50], 0
je 0x140023a5a
lea rax, [0x140153ca4]
mov qword [rsp + 0x118], rax
mov eax, dword [rsp + 0x144]
mov ecx, eax
or ecx, 1
mov dword [rsp + 0x144], ecx
mov edx, dword [rbx + 0x40]
mov cx, 0xa
cmp rdx, 5
ja case.0x140023a89.1
lea rbp, [0x140024074]
movsxd rdx, dword [rbp + rdx*4]
add rdx, rbp
jmp rdx
movzx ecx, byte [rbx + 0x20]
xor ecx, 1
jmp case.0x140023a89.1
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
xor edx, edx
call fcn.140024090
mov r12, qword [rsp + 0x68]
jmp 0x1400239a1
mov cx, 2
jmp case.0x140023a89.1
mov cx, 1
jmp case.0x140023a89.1
mov cx, 7
jmp case.0x140023a89.1
xor ecx, ecx
mov word [rsp + 0x148], cx
mov rcx, qword [rbx + 0x60]
mov rdx, qword [rbx + 0x68]
mov rbp, qword [rbx + 0x70]
test rcx, rcx
jne 0x140023ae4
test rdx, rdx
jne 0x140023ae4
test rbp, rbp
je 0x140023b08
or eax, 0x101
mov dword [rsp + 0x144], eax
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x160], rdx
mov qword [rsp + 0x168], rbp
cmp qword [rbx + 0x58], 0
je 0x140023b22
call fcn.140055200
lea ecx, [rdi + 0x1000000]
cmp eax, 5
cmovge ecx, edi
mov edi, ecx
mov qword [rsp + 0x70], r14
mov r14, r15
mov ebp, edi
or ebp, 0x1000000
cmp byte [rbx + 0x78], 0
cmove ebp, edi
xorps xmm0, xmm0
movaps xmmword [rsp + 0xe0], xmm0
mov qword [rsp + 0xf0], 0
movzx eax, byte [rbx + 0x1f]
test al, al
jns 0x140023b62
mov rax, qword [rbx + 0x10]
mov r15, qword [rbx + 8]
jmp 0x140023b66
lea r15, [rbx + 8]
mov rcx, qword [rsp + 0x78]
test rax, rax
cmove r15, rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xd0], rax
movaps xmmword [rsp + 0xc0], xmm6
cmp byte [rcx + 0x17], 0
js 0x140023bab
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xd0], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0xc0], xmm0
jmp 0x140023bbf
mov rdx, qword [rcx]
mov r8, qword [rcx + 8]
lea rcx, [rsp + 0xc0]
call fcn.140047cf8
cmp byte [rbx + 0x7d], 0
je 0x140023bdd
call fcn.1400e0db0
test rax, rax
je 0x140023bd7
mov r12, rax
or ebp, 4
jmp 0x140023be0
or ebp, 0x8000
xor r12d, r12d
lea rsi, [rsp + 0x108]
mov rdx, qword [rbx + 0x48]
test rdx, rdx
je 0x140023c36
lea rcx, [rsp + 0x1a0]
mov qword [rcx], 0
xor r8d, r8d
call sub.USERENV.dll_CreateEnvironmentBlock
test eax, eax
je 0x140023ccb
or ebp, 0x400
mov rdx, qword [rsp + 0x1a0]
movzx eax, r13b
cmp byte [rsp + 0xd7], 0
jns 0x140023c70
mov r8, qword [rsp + 0xc0]
jmp 0x140023c78
xorps xmm0, xmm0
movaps xmmword [rsp + 0x1a0], xmm0
mov qword [rsp + 0x1b0], 0
mov al, byte [rbx + 0x98]
test al, al
jne 0x140023ced
cmp qword [rbx + 0x90], 0
jne 0x140023ced
xor eax, eax
jmp 0x140023d9d
lea r8, [rsp + 0xc0]
mov rcx, qword [rbx + 0x48]
lea rdi, [rsp + 0xe0]
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x38], rdx
mov dword [rsp + 0x30], ebp
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], 0
xor edx, edx
xor r9d, r9d
call qword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
mov ebp, eax
mov rcx, qword [rsp + 0x1a0]
call sub.USERENV.dll_DestroyEnvironmentBlock
test ebp, ebp
jne 0x140023e0e
mov rcx, qword [rsp + 0x60]
xor edx, edx
call fcn.140024090
mov r15, r14
mov r14, qword [rsp + 0x70]
mov r12, qword [rsp + 0x68]
mov bl, byte [rsp + 0x5f]
jmp 0x140023fe9
mov rdi, rsi
test al, al
je 0x140023d2b
lea r8, [rbx + 0x80]
lea rdx, [0x14015418a]
lea rsi, [rsp + 0x80]
mov rcx, rsi
call fcn.140028060
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0x1b0], rax
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x1a0], xmm0
jmp 0x140023d78
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
test rax, rax
je 0x140023ccb
mov rsi, rax
lea r8, [rbx + 0x80]
lea rcx, [rsp + 0x80]
mov rdx, rax
call fcn.140028060
lea rcx, [rsp + 0x80]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x1b0], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x1a0], xmm0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
cmp byte [rsp + 0x1b7], 0
jns 0x140023d8c
mov rax, qword [rsp + 0x1a0]
jmp 0x140023d94
lea rax, [rsp + 0x1a0]
mov rsi, rdi
or ebp, 0x400
movzx ecx, r13b
cmp byte [rsp + 0xd7], 0
jns 0x140023db5
mov rdx, qword [rsp + 0xc0]
jmp 0x140023dbd
lea rdx, [rsp + 0xc0]
lea rdi, [rsp + 0xe0]
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], ecx
xor ecx, ecx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x140023f60
cmp byte [rsp + 0x1b7], 0
jns 0x140023e0e
mov rcx, qword [rsp + 0x1a0]
call fcn.140082794
lea rcx, [rsp + 0xa0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rcx + 0x10], rax
movaps xmmword [rcx], xmm6
lea rdx, [rsp + 0xe0]
call fcn.1400e0ef0
test r12, r12
je 0x140023e62
cmp byte [rbx + 0x7d], 0
je 0x140023e62
mov ecx, dword [rsp + 0xb0]
mov edx, 4
mov rax, r12
call qword [0x140192010]
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
mov rcx, qword [rbx + 0x58]
test rcx, rcx
mov r15, r14
mov r14, qword [rsp + 0x70]
je 0x140023e89
mov rdx, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_AssignProcessToJobObject]
test eax, eax
je 0x140023f8c
cmp byte [rbx + 0x79], 0
mov r12, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
je 0x140023eae
mov rcx, qword [rsp + 0xa0]
call fcn.140026990
mov ecx, eax
call qword [sym.imp.USER32.dll_AllowSetForegroundWindow]
cmp byte [rbx], 0
je 0x140023f29
lea rbx, [rsp + 0x1a0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rbx + 0x50], rax
movaps xmmword [rbx + 0x40], xmm6
movaps xmmword [rbx + 0x30], xmm6
movaps xmmword [rbx + 0x20], xmm6
movaps xmmword [rbx + 0x10], xmm6
movaps xmmword [rbx], xmm6
lea rdx, str.LaunchProcess
lea r8, str..._.._base_process_launch_win.cc
lea rdi, [rsp + 0x80]
mov rcx, rdi
mov r9d, 0x1f8
call fcn.14004cb40
mov rcx, rbx
mov rdx, rdi
xor r8d, r8d
call fcn.140054820
mov rcx, qword [rsp + 0xa0]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, rbx
call fcn.140054af0
mov edx, dword [rsp + 0xb0]
mov rcx, qword [0x14017f810]
test rcx, rcx
je 0x140023f46
mov r8, qword [rsp + 0x78]
call fcn.1400da6a0
lea rcx, [rsp + 0xa0]
call fcn.1400e1040
mov rcx, rsi
mov rdx, rax
call fcn.140024090
jmp 0x140023fd8
mov rcx, qword [rsp + 0x60]
xor edx, edx
call fcn.140024090
cmp byte [rsp + 0x1b7], 0
jns 0x140023cd7
mov rcx, qword [rsp + 0x1a0]
call fcn.140082794
jmp 0x140023cd7
lea rdi, [rsp + 0x1a0]
movaps xmmword [rdi], xmm6
lea rcx, [rsp + 0xa0]
call fcn.1400e1040
mov rcx, rdi
mov rdx, rax
call fcn.140024090
mov rcx, rdi
mov edx, 1
mov r8b, 1
call fcn.1400241c0
mov rcx, qword [rsp + 0x60]
xor edx, edx
call fcn.140024090
mov rcx, rdi
call fcn.14004f710
mov r12, qword [rsp + 0x68]
mov bl, byte [rsp + 0x5f]
lea rcx, [rsp + 0xa0]
call fcn.1400e0f80
cmp byte [rsp + 0xd7], 0
jns 0x140024000
mov rcx, qword [rsp + 0xc0]
call fcn.140082794
mov rsi, qword [rsp + 0x60]
jmp 0x1400239a5
call sub.KERNEL32.dll_GetCurrentThreadId
mov edi, eax
lea rbp, [rsp + 0x100]
mov qword [rbp], r14
mov rcx, rbp
call fcn.140055360
mov qword [rsp + 0x38], rbp
mov dword [rsp + 0x30], edi
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea r15, [0x140175010]
lea r14, str.LaunchProcess
mov cl, 0x58
mov rdx, r15
mov r8, r14
xor r9d, r9d
call fcn.140056000
mov r12, rax
jmp 0x14002375a
int3