Function at 0x1400239bb
Capabilities:
Set environment variable

Disassembly:
mov qword [rsp + 0x18], rbx
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
xor r13d, r13d
mov ebp, edx
mov r14, rcx
mov ebx, r13d
cmp rcx, r13
jne 0x140023a0b
call fcn.140019fc2
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], r13
mov dword [rax], 0x16
call fcn.140015c4d
jmp 0x140023b1b
mov r12, qword [rcx]
cmp r12, r13
je 0x140023b10
mov edx, 0x3d
mov rcx, r12
call fcn.140023f0b
mov rdi, rax
mov qword [rsp + 0x70], rax
cmp rax, r13
je 0x140023b10
cmp r12, rax
je 0x140023b10
cmp byte [rax + 1], r13b
mov rsi, qword [0x1401384c0]
mov r15d, r13d
sete r15b
cmp rsi, qword [0x1401384c8]
jne 0x140023ae3
mov rbp, rsi
mov eax, r13d
cmp rsi, r13
jne 0x140023a7a
mov rsi, r13
jmp 0x140023ad8
add rsi, 8
inc eax
cmp qword [rsi], r13
jne 0x140023a74
inc eax
mov edx, 8
movsxd rcx, eax
call fcn.14001eb57
mov rdi, rax
mov rsi, rax
cmp rax, r13
jne 0x140023ac3
mov ecx, 9
call fcn.14001ed66
jmp 0x140023ac3
mov rcx, rax
call fcn.14002d950
mov qword [rdi], rax
add rdi, 8
add rbp, 8
mov rax, qword [rbp]
cmp rax, r13
jne 0x140023ab0
mov qword [rdi], r13
mov rdi, qword [rsp + 0x70]
mov ebp, dword [rsp + 0x78]
mov qword [0x1401384c0], rsi
cmp rsi, r13
jne 0x140023b94
cmp ebp, r13d
je 0x140023b36
cmp qword [0x1401384d0], r13
je 0x140023b36
call fcn.140022ec4
cmp eax, r13d
je 0x140023b8d
call fcn.140019fc2
mov dword [rax], 0x16
or eax, 0xffffffff
mov rbx, qword [rsp + 0x80]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
cmp r15d, r13d
je 0x140023b46
xor eax, eax
jmp 0x140023b1e
mov ecx, 8
call fcn.14001eadf
mov qword [0x1401384c0], rax
cmp rax, r13
je 0x140023b1b
mov qword [rax], r13
cmp qword [0x1401384d0], r13
jne 0x140023b8d
mov ecx, 8
call fcn.14001eadf
mov qword [0x1401384d0], rax
cmp rax, r13
je 0x140023b1b
mov qword [rax], r13
mov rsi, qword [0x1401384c0]
mov rbp, rsi
cmp rsi, r13
je 0x140023b1b
mov rcx, qword [rsi]
mov eax, edi
mov rdi, rsi
sub eax, r12d
movsxd r13, eax
test rcx, rcx
je 0x140023bfe
mov rdx, rcx
mov r8, r13
mov rcx, r12
call fcn.140022ebc
test eax, eax
jne 0x140023be7
mov rax, qword [rdi]
cmp byte [r13 + rax], 0x3d
je 0x140023c95
cmp byte [r13 + rax], bl
je 0x140023c95
add rdi, 8
mov rcx, qword [rdi]
test rcx, rcx
jne 0x140023bb7
mov rsi, qword [0x1401384c0]
sub rdi, rsi
sar rdi, 3
neg edi
xor r13d, r13d
cmp edi, r13d
jl 0x140023cb5
cmp qword [rbp], r13
je 0x140023cb5
movsxd rsi, edi
mov rcx, qword [rbp + rsi*8]
call fcn.1400186be
cmp r15d, r13d
je 0x140023ca8
cmp qword [rbp + rsi*8], r13
je 0x140023c5f
lea rcx, [rbp + rsi*8 + 8]
mov rax, qword [rcx]
inc edi
add rcx, 8
mov qword [rbp + rsi*8], rax
inc rsi
cmp qword [rbp + rsi*8], r13
jne 0x140023c43
movsxd rdx, edi
movabs rax, 0x1fffffffffffffff
cmp rdx, rax
jae 0x140023d16
mov rcx, qword [0x1401384c0]
mov r8d, 8
call fcn.14001ec7f
cmp rax, r13
je 0x140023d16
jmp 0x140023d0f
mov rsi, qword [0x1401384c0]
sub rdi, rsi
sar rdi, 3
jmp 0x140023c07
mov qword [rbp + rsi*8], r12
mov qword [r14], r13
jmp 0x140023d16
cmp r15d, r13d
jne 0x140023dd2
cmp edi, r13d
jge 0x140023cc9
neg edi
lea eax, [rdi + 2]
cmp eax, edi
jl 0x140023b1b
movsxd r8, eax
movabs rax, 0x1fffffffffffffff
cmp r8, rax
jae 0x140023b1b
mov edx, 8
mov rcx, rsi
call fcn.14001ec7f
cmp rax, r13
je 0x140023b1b
movsxd rcx, edi
mov qword [rax + rcx*8], r12
mov qword [rax + rcx*8 + 8], r13
mov qword [r14], r13
mov qword [0x1401384c0], rax
cmp dword [rsp + 0x78], r13d
je 0x140023db7
mov rcx, r12
call fcn.140015251
mov edx, 1
lea rcx, [rax + 2]
call fcn.14001eb57
mov rdi, rax
cmp rax, r13
je 0x140023db7
mov rcx, r12
call fcn.140015251
mov r8, r12
mov rcx, rdi
lea rdx, [rax + 2]
call fcn.14001a77b
cmp eax, r13d
je 0x140023d77
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], r13
call fcn.140015b16
mov rdx, rdi
mov rcx, rdi
sub rdx, r12
add rdx, qword [rsp + 0x70]
mov byte [rdx], r13b
inc rdx
cmp r15d, r13d
cmovne rdx, r13
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
cmp eax, r13d
jne 0x140023daf
or ebx, 0xffffffff
call fcn.140019fc2
mov dword [rax], 0x2a
mov rcx, rdi
call fcn.1400186be
cmp r15d, r13d
je 0x140023dcb
mov rcx, r12
call fcn.1400186be
mov qword [r14], r13
mov eax, ebx
jmp 0x140023b1e
mov rcx, r12
call fcn.1400186be
mov qword [r14], r13
jmp 0x140023b3f