Function at 0x1400ff288
Capabilities:
Set environment variable

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
xor r14d, r14d
mov r13d, edx
mov r15, rcx
mov dword [rsp + 0x60], r14d
test rcx, rcx
jne 0x1400ff2cc
call fcn.1400efcc8
mov dword [rax], 0x16
call fcn.1400f0cdc
jmp 0x1400ff3b7
mov rsi, qword [rcx]
test rsi, rsi
je 0x1400ff3ac
mov edx, 0x3d
mov rcx, rsi
call fcn.1400ff968
mov r12, rax
test rax, rax
je 0x1400ff3ac
cmp rsi, rax
je 0x1400ff3ac
cmp byte [rax + 1], r14b
mov rdi, qword [0x140173800]
mov ebp, r14d
sete bpl
cmp rdi, qword [0x140173838]
jne 0x1400ff38c
mov rbx, rdi
mov ecx, r14d
mov rax, rdi
test rdi, rdi
jne 0x1400ff328
mov rdi, r14
jmp 0x1400ff385
cmp qword [rdi], r14
je 0x1400ff338
lea rax, [rax + 8]
inc ecx
cmp qword [rax], r14
jne 0x1400ff32d
lea eax, [rcx + 1]
mov edx, 8
movsxd rcx, eax
call fcn.1400efa54
mov r14, rax
mov rdi, rax
test rax, rax
jne 0x1400ff35b
lea ecx, [rax + 9]
call fcn.1400eda7c
mov rax, qword [rbx]
test rax, rax
je 0x1400ff37e
sub rbx, r14
mov rcx, rax
call fcn.1400ed2f8
mov qword [r14], rax
add r14, 8
mov rax, qword [rbx + r14]
test rax, rax
jne 0x1400ff366
and qword [r14], 0
xor r14d, r14d
mov qword [0x140173800], rdi
test rdi, rdi
jne 0x1400ff421
test r13d, r13d
je 0x1400ff3d7
cmp qword [0x140173808], r14
je 0x1400ff3d7
call fcn.1400fcd48
test eax, eax
je 0x1400ff41a
call fcn.1400efcc8
mov dword [rax], 0x16
or eax, 0xffffffff
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
test ebp, ebp
je 0x1400ff3df
xor eax, eax
jmp 0x1400ff3ba
mov ecx, 8
call fcn.1400efad4
mov qword [0x140173800], rax
test rax, rax
je 0x1400ff3b7
mov qword [rax], r14
cmp qword [0x140173808], r14
jne 0x1400ff41a
mov ecx, 8
call fcn.1400efad4
mov qword [0x140173808], rax
test rax, rax
je 0x1400ff3b7
mov qword [rax], r14
mov rdi, qword [0x140173800]
mov r14, rdi
test rdi, rdi
je 0x1400ff3b7
mov rax, qword [rdi]
mov ecx, r12d
mov rbx, rdi
sub ecx, esi
test rax, rax
je 0x1400ff478
movsxd rdi, ecx
mov r8, rdi
mov rdx, rax
mov rcx, rsi
call fcn.1400fce3c
test eax, eax
jne 0x1400ff465
mov rax, qword [rbx]
cmp byte [rdi + rax], 0x3d
je 0x1400ff506
cmp byte [rdi + rax], 0
je 0x1400ff506
add rbx, 8
mov rax, qword [rbx]
test rax, rax
jne 0x1400ff43c
mov rdi, qword [0x140173800]
sub rbx, rdi
sar rbx, 3
neg ebx
test ebx, ebx
js 0x1400ff525
cmp qword [r14], 0
je 0x1400ff525
movsxd rdi, ebx
mov rcx, qword [r14 + rdi*8]
call fcn.1400ea110
test ebp, ebp
je 0x1400ff519
cmp qword [r14 + rdi*8], 0
je 0x1400ff4c9
lea rcx, [rdi + 1]
lea rcx, [r14 + rcx*8]
mov rax, qword [rcx]
inc ebx
lea rcx, [rcx + 8]
mov qword [r14 + rdi*8], rax
inc rdi
cmp qword [r14 + rdi*8], 0
jne 0x1400ff4b2
movsxd rdx, ebx
movabs rax, 0x1fffffffffffffff
cmp rdx, rax
jae 0x1400ff581
mov rcx, qword [0x140173800]
mov r8d, 8
call fcn.1400efbd4
xor r14d, r14d
test rax, rax
je 0x1400ff584
mov qword [0x140173800], rax
jmp 0x1400ff584
mov rdi, qword [0x140173800]
sub rbx, rdi
sar rbx, 3
jmp 0x1400ff481
mov qword [r14 + rdi*8], rsi
xor r14d, r14d
mov qword [r15], r14
jmp 0x1400ff584
xor r14d, r14d
test ebp, ebp
jne 0x1400ff61e
test ebx, ebx
jns 0x1400ff536
neg ebx
lea eax, [rbx + 2]
cmp eax, ebx
jl 0x1400ff3b7
movsxd r8, eax
movabs rax, 0x1fffffffffffffff
cmp r8, rax
jae 0x1400ff3b7
mov edx, 8
mov rcx, rdi
call fcn.1400efbd4
test rax, rax
je 0x1400ff3b7
movsxd rcx, ebx
mov qword [rax + rcx*8], rsi
mov qword [rax + rcx*8 + 8], r14
mov qword [r15], r14
jmp 0x1400ff4fd
xor r14d, r14d
test r13d, r13d
je 0x1400ff606
or rcx, 0xffffffffffffffff
inc rcx
cmp byte [rsi + rcx], r14b
jne 0x1400ff58d
add rcx, 2
mov edx, 1
call fcn.1400efa54
mov rbx, rax
test rax, rax
je 0x1400ff606
or rdx, 0xffffffffffffffff
inc rdx
cmp byte [rsi + rdx], r14b
jne 0x1400ff5b0
add rdx, 2
mov r8, rsi
mov rcx, rax
call fcn.1400f99c0
test eax, eax
jne 0x1400ff62e
mov rdx, rbx
mov rcx, rbx
sub rdx, rsi
add rdx, r12
mov byte [rdx], r14b
inc rdx
test ebp, ebp
cmovne rdx, r14
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
test eax, eax
jne 0x1400ff5fe
or dword [rsp + 0x60], 0xffffffff
call fcn.1400efcc8
mov dword [rax], 0x2a
mov rcx, rbx
call fcn.1400ea110
test ebp, ebp
je 0x1400ff615
mov rcx, rsi
call fcn.1400ea110
mov qword [r15], r14
mov eax, dword [rsp + 0x60]
jmp 0x1400ff3ba
mov rcx, rsi
call fcn.1400ea110
mov qword [r15], r14
jmp 0x1400ff3db
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], r14
call fcn.1400f0cfc
int3