Function at 0x18010238c
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 ebp, ebp
mov edi, edx
mov r13, rcx
mov dword [rsp + 0x70], ebp
cmp rcx, rbp
jne 0x1801023d8
call fcn.1800ee48c
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rbp
mov dword [rax], 0x16
call fcn.1800f19ac
jmp 0x1801024b4
mov r12, qword [rcx]
cmp r12, rbp
je 0x1801024a9
mov edx, 0x3d
mov rcx, r12
call fcn.1801028e8
mov r15, rax
cmp rax, rbp
je 0x1801024a9
cmp r12, rax
je 0x1801024a9
cmp byte [rax + 1], bpl
mov rbx, qword [0x180163de0]
mov r14d, ebp
sete r14b
cmp rbx, qword [0x180163de8]
jne 0x18010248a
mov rsi, rbx
mov eax, ebp
cmp rbx, rbp
jne 0x180102436
mov rbx, rbp
jmp 0x180102483
add rbx, 8
inc eax
cmp qword [rbx], rbp
jne 0x180102430
inc eax
mov edx, 8
movsxd rcx, eax
call fcn.1800ed904
mov rdi, rax
mov rbx, rax
cmp rax, rbp
jne 0x180102474
mov ecx, 9
call fcn.1800ef66c
jmp 0x180102474
mov rcx, rax
call fcn.180102770
mov qword [rdi], rax
add rdi, 8
add rsi, 8
mov rax, qword [rsi]
cmp rax, rbp
jne 0x180102461
mov qword [rdi], rbp
mov edi, dword [rsp + 0x78]
mov qword [0x180163de0], rbx
cmp rbx, rbp
jne 0x18010251a
cmp edi, ebp
je 0x1801024cf
cmp qword [0x180163df0], rbp
je 0x1801024cf
call fcn.1800ff5d4
cmp eax, ebp
je 0x180102513
call fcn.1800ee48c
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 r14d, ebp
je 0x1801024d8
xor eax, eax
jmp 0x1801024b7
mov ecx, 8
call fcn.1800eca10
mov qword [0x180163de0], rax
cmp rax, rbp
je 0x1801024b4
mov qword [rax], rbp
cmp qword [0x180163df0], rbp
jne 0x180102513
mov ecx, 8
call fcn.1800eca10
mov qword [0x180163df0], rax
cmp rax, rbp
je 0x1801024b4
mov qword [rax], rbp
mov rbx, qword [0x180163de0]
mov rbp, rbx
test rbx, rbx
je 0x1801024b4
mov rcx, qword [rbx]
mov eax, r15d
mov rdi, rbx
sub eax, r12d
movsxd rsi, eax
test rcx, rcx
je 0x180102572
mov rdx, rcx
mov r8, rsi
mov rcx, r12
call fcn.1800ff5c4
test eax, eax
jne 0x18010255f
mov rax, qword [rdi]
cmp byte [rsi + rax], 0x3d
je 0x18010261f
cmp byte [rsi + rax], 0
je 0x18010261f
add rdi, 8
mov rcx, qword [rdi]
test rcx, rcx
jne 0x180102536
mov rbx, qword [0x180163de0]
sub rdi, rbx
sar rdi, 3
neg edi
xor esi, esi
cmp edi, esi
jl 0x18010263f
cmp qword [rbp], rsi
je 0x18010263f
movsxd rsi, edi
mov rcx, qword [rbp + rsi*8]
cmp rcx, qword [0x180163de8]
jb 0x1801025a9
cmp rcx, qword [0x180175b60]
jbe 0x1801025b5
call fcn.1800ecacc
mov rbx, qword [0x180163de0]
test r14d, r14d
je 0x180102632
cmp qword [rbp + rsi*8], 0
je 0x1801025e7
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], 0
jne 0x1801025c7
mov rbx, qword [0x180163de0]
movsxd rdx, edi
movabs rax, 0x1fffffffffffffff
cmp rdx, rax
jae 0x18010269a
mov r8d, 8
mov rcx, rbx
call fcn.1800ff22c
xor esi, esi
cmp rax, rsi
je 0x18010269c
mov qword [0x180163de0], rax
jmp 0x18010269c
mov rbx, qword [0x180163de0]
sub rdi, rbx
sar rdi, 3
jmp 0x18010257b
mov qword [rbp + rsi*8], r12
xor esi, esi
mov qword [r13], rsi
jmp 0x18010269c
cmp r14d, esi
jne 0x180102757
cmp edi, esi
jge 0x18010264e
neg edi
lea eax, [rdi + 2]
cmp eax, edi
jl 0x1801024b4
movsxd r8, eax
movabs rax, 0x1fffffffffffffff
cmp r8, rax
jae 0x1801024b4
mov edx, 8
mov rcx, rbx
call fcn.1800ff22c
cmp rax, rsi
je 0x1801024b4
movsxd rcx, edi
mov qword [rax + rcx*8], r12
mov qword [rax + rcx*8 + 8], rsi
mov qword [r13], rsi
jmp 0x180102616
xor esi, esi
cmp dword [rsp + 0x78], esi
je 0x180102741
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r12
repne scasb al, byte [rdi]
lea ebp, [rax + 1]
not rcx
mov rdx, rbp
sub rcx, rbp
add rcx, 2
call fcn.1800ed904
mov rbx, rax
cmp rax, rsi
je 0x180102741
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r12
repne scasb al, byte [rdi]
mov r8, r12
not rcx
sub rcx, rbp
lea rdx, [rcx + 2]
mov rcx, rbx
call fcn.1800ecd58
cmp eax, esi
je 0x180102706
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rsi
call fcn.1800f1904
mov rdx, rbx
mov rcx, rbx
sub rdx, r12
add rdx, r15
mov byte [rdx], sil
add rdx, rbp
cmp r14d, esi
cmovne rdx, rsi
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
cmp eax, esi
jne 0x180102739
or dword [rsp + 0x70], 0xffffffff
call fcn.1800ee48c
mov dword [rax], 0x2a
mov rcx, rbx
call fcn.1800ecacc
cmp r14d, esi
je 0x18010274e
mov rcx, r12
call fcn.1800ecacc
mov eax, dword [rsp + 0x70]
jmp 0x1801024b7
mov rcx, r12
call fcn.1800ecacc
mov qword [r13], rsi
jmp 0x1801024d4