Function at 0x14002a360
Capabilities:
Query environment variable
Set environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1b8]
sub rsp, 0x290
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x140089020]
xor rax, rsp
mov qword [rbp + 0x160], rax
xor r15d, r15d
mov dword [rsp + 0x40], r15d
xorps xmm0, xmm0
movups xmmword [rbp + 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x90], xmm1
lea r8d, [r15 + 0xb]
lea rdx, str.Environment
lea rcx, [rbp + 0x80]
call fcn.140003db0
nop
lea rcx, [rbp + 0x120]
call fcn.140022fa0
nop
lea r9, [rbp + 0x80]
mov r8, rax
mov rdx, 0xffffffff80000002
lea rcx, [rbp + 0xc0]
call fcn.14002b7b0
nop
mov rdx, qword [rbp + 0x138]
cmp rdx, 8
jb 0x14002a445
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a440
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1a4
call fcn.14003a0d0
movdqa xmm0, xmmword [0x14007c4f0]
movdqu xmmword [rbp + 0x130], xmm0
mov word [rbp + 0x120], r15w
mov rdx, qword [rbp + 0x98]
cmp rdx, 8
jb 0x14002a4a3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a49e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1aa
call fcn.14003a0d0
movdqa xmm0, xmmword [0x14007c4f0]
movdqu xmmword [rbp + 0x90], xmm0
mov word [rbp + 0x80], r15w
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r15
mov dword [rsp + 0x40], 4
cmp qword [rbp + 0xd0], 0
jne 0x14002a4e7
mov esi, r15d
mov dword [rsp + 0x40], r15d
jmp 0x14002a5e5
lea rdx, [rbp + 0xc0]
lea rcx, [rbp]
call fcn.140003790
nop
lea rcx, [rbp]
cmp qword [rbp + 0x18], 8
cmovae rcx, qword [rbp]
lea r8, [rsp + 0x48]
lea rdx, [0x140079904]
call fcn.140047cec
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14002a58b
mov rcx, qword [rsp + 0x78]
cmp rcx, qword [rbp - 0x80]
je 0x14002a55c
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], r15
mov qword [rcx + 0x18], r15
mov r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], 0
jne 0x14002a541
mov rdx, rax
call fcn.140003db0
add qword [rsp + 0x78], 0x20
jmp 0x14002a56e
lea r8, [rsp + 0x50]
mov rdx, rcx
lea rcx, [rsp + 0x70]
call fcn.14002ece0
lea r8, [rsp + 0x48]
lea rdx, [0x140079904]
xor ecx, ecx
call fcn.140047cec
mov qword [rsp + 0x50], rax
test rax, rax
jne 0x14002a521
mov esi, r15d
mov dword [rsp + 0x40], r15d
mov rdx, qword [rbp + 0x18]
cmp rdx, 8
jb 0x14002a5d3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a5ce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1b0
call fcn.14003a0d0
movdqa xmm0, xmmword [0x14007c4f0]
movdqu xmmword [rbp + 0x10], xmm0
mov word [rbp], r15w
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xb0], xmm1
mov r8d, 0xb
lea rdx, str.Environment
lea rcx, [rbp + 0xa0]
call fcn.140003db0
nop
lea r8, [rbp + 0xa0]
mov rdx, 0xffffffff80000001
lea rcx, [rsp + 0x58]
call fcn.14002bb80
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 8
jb 0x14002a673
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a66e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1b6
call fcn.14003a0d0
movdqa xmm0, xmmword [0x14007c4f0]
movdqu xmmword [rbp + 0xb0], xmm0
mov word [rbp + 0xa0], r15w
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x58]
cmp rbx, r14
je 0x14002a74c
add rbx, 0x20
mov r9, qword [rsp + 0x78]
nop word [rax + rax]
mov rdi, qword [rsp + 0x70]
cmp rdi, r9
je 0x14002a73b
mov r10, qword [rbx - 8]
mov r11, qword [rbx - 0x10]
lea rax, [rbx - 0x20]
cmp r10, 8
jb 0x14002a6d3
mov rax, qword [rax]
mov rdx, qword [rdi + 0x10]
mov r8, rdi
cmp qword [rdi + 0x18], 8
jb 0x14002a6e4
mov r8, qword [rdi]
cmp rdx, r11
jne 0x14002a707
test rdx, rdx
je 0x14002a710
sub r8, rax
movzx ecx, word [rax + r8]
cmp cx, word [rax]
jne 0x14002a707
add rax, 2
sub rdx, 1
je 0x14002a710
jmp 0x14002a6f1
add rdi, 0x20
cmp rdi, r9
jne 0x14002a6c6
cmp rdi, r9
je 0x14002a73b
mov rdx, rbx
cmp qword [rbx + 0x18], 8
jb 0x14002a722
mov rdx, qword [rbx]
lea rcx, [rbx - 0x20]
cmp qword [rbx - 8], 8
jb 0x14002a730
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov r9, qword [rsp + 0x78]
add rbx, 0x40
lea rax, [rbx - 0x20]
cmp rax, r14
jne 0x14002a6b0
lea rcx, [rbp + 0x140]
call fcn.140022fa0
mov rdi, rax
mov rcx, qword [rax + 0x10]
mov rdx, qword [rax + 0x18]
cmp rcx, rdx
jae 0x14002a785
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 8
jb 0x14002a77c
mov rax, qword [rdi]
mov dword [rax + rcx*2], 0x5c
jmp 0x14002a79d
mov r9d, 0x5c
movzx r8d, byte [rsp + 0x44]
lea edx, [r9 - 0x5b]
mov rcx, rdi
call fcn.14001bd70
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x10], xmm1
movups xmm0, xmmword [rdi]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbp + 0x10], xmm1
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], 7
mov word [rdi], r15w
or esi, 1
mov dword [rsp + 0x40], esi
lea rdx, str.Environment
lea rcx, [rbp]
call fcn.1400038f0
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x70], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x70], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
or esi, 2
mov dword [rsp + 0x40], esi
lea r8, [rbp + 0x60]
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x78]
call fcn.14002bb80
mov rdi, rax
lea rax, [rsp + 0x58]
cmp rax, rdi
je 0x14002a8be
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14002a899
mov rdx, qword [rsp + 0x60]
call fcn.14002dc40
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
sub rdx, rcx
and rdx, 0xffffffffffffffc0
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a886
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1bc
call fcn.14003a0d0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r15
mov rax, qword [rdi]
mov qword [rsp + 0x58], rax
mov rax, qword [rdi + 8]
mov qword [rsp + 0x60], rax
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x68], rax
mov qword [rdi], r15
mov qword [rdi + 8], r15
mov qword [rdi + 0x10], r15
lea rcx, [rbp - 0x78]
call fcn.14002d390
and esi, 0xfffffffd
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x14002a90e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a909
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1c2
call fcn.14003a0d0
movdqa xmm0, xmmword [0x14007c4f0]
movdqu xmmword [rbp + 0x70], xmm0
mov word [rbp + 0x60], r15w
and esi, 0xfffffffe
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp + 0x18]
cmp rdx, 8
jb 0x14002a967
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a962
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1c8
call fcn.14003a0d0
movdqa xmm0, xmmword [0x14007c4f0]
movdqu xmmword [rbp + 0x10], xmm0
mov word [rbp], r15w
mov rdx, qword [rbp + 0x158]
cmp rdx, 8
jb 0x14002a9bf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a9ba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1ce
call fcn.14003a0d0
movdqa xmm0, xmmword [0x14007c4f0]
movdqu xmmword [rbp + 0x150], xmm0
mov word [rbp + 0x140], r15w
mov r13, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
cmp r13, r12
je 0x14002ac02
movzx ebx, byte [rsp + 0x44]
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], r15
mov qword [rbp - 8], r15
mov qword [rbp - 0x10], r15
mov qword [rbp - 8], 7
mov word [rbp - 0x20], r15w
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], r15w
mov dword [rsp + 0x48], r15d
mov dword [rsp + 0x50], r15d
lea r8, [rsp + 0x48]
lea rdx, [rbp - 0x20]
mov rcx, r13
call fcn.14002c610
lea rcx, [r13 + 0x20]
lea r9, [rsp + 0x44]
lea r8, [rsp + 0x50]
lea rdx, [rbp - 0x60]
call fcn.14002c7a0
mov ecx, dword [rsp + 0x48]
test ecx, ecx
je 0x14002aae6
sub ecx, 1
je 0x14002aa90
cmp ecx, 1
jne 0x14002ab53
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae rcx, qword [rbp - 0x20]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
jmp 0x14002ab53
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae rcx, qword [rbp - 0x20]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
jne 0x14002ab53
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xcb
jne 0x14002ab53
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae rdx, qword [rbp - 0x60]
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae rcx, qword [rbp - 0x20]
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
jmp 0x14002ab53
mov r14d, dword [rsp + 0x50]
mov ecx, r14d
test r14d, r14d
je 0x14002aac2
sub ecx, 1
je 0x14002aafd
cmp ecx, 1
jne 0x14002ab53
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae rcx, qword [rbp - 0x20]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov r15d, eax
test eax, eax
jne 0x14002ad02
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xcb
jne 0x14002ab50
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae rdx, qword [rbp - 0x60]
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae rcx, qword [rbp - 0x20]
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
xor r15d, r15d
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x14002ab93
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ab8e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b204
call fcn.14003a0d0
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], r15w
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x14002abe4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002abdf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b20a
call fcn.14003a0d0
mov qword [rbp - 0x10], r15
mov qword [rbp - 8], 7
mov word [rbp - 0x20], r15w
add r13, 0x40
cmp r13, r12
jne 0x14002a9f0
lea rcx, [rsp + 0x58]
call fcn.14002d390
nop
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14002ac68
mov rdx, qword [rsp + 0x78]
call fcn.14002dd70
mov rdx, qword [rbp - 0x80]
mov rcx, qword [rsp + 0x70]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002ac56
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1d4
call fcn.14003a0d0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r15
mov rdx, qword [rbp + 0xd8]
cmp rdx, 8
jb 0x14002acae
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002aca9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b19e
call fcn.14003a0d0
mov qword [rbp + 0xd0], r15
mov qword [rbp + 0xd8], 7
mov word [rbp + 0xc0], r15w
mov rcx, qword [rbp + 0x160]
xor rcx, rsp
call fcn.14003a0b0
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
xor r10d, r10d
mov qword [rbp - 0x30], r10
mov qword [rbp - 0x28], r10
mov qword [rbp - 0x30], r10
mov qword [rbp - 0x28], 7
mov word [rbp - 0x40], r10w
mov rcx, qword [rbp - 0x30]
cmp r15, rcx
ja 0x14002ad47
lea rax, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rax, qword [rbp - 0x40]
mov qword [rbp - 0x30], r15
mov word [rax + r15*2], r10w
jmp 0x14002ad9d
mov rdx, r15
sub rdx, rcx
mov rdi, qword [rbp - 0x28]
mov rax, rdi
sub rax, rcx
cmp rdx, rax
ja 0x14002ad87
mov qword [rbp - 0x30], r15
lea r9, [rbp - 0x40]
cmp rdi, 8
cmovae r9, qword [rbp - 0x40]
lea rdi, [r9 + rcx*2]
test rdx, rdx
je 0x14002ad80
movzx eax, r10w
mov rcx, rdx
rep stosw word [rdi], ax
mov word [r9 + r15*2], r10w
jmp 0x14002ad9d
mov word [rsp + 0x20], r10w
mov r9, rdx
movzx r8d, bl
lea rcx, [rbp - 0x40]
call fcn.140003ee0
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rdx, qword [rbp - 0x40]
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae rcx, qword [rbp - 0x20]
mov r8d, r15d
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov rdi, qword [rbp - 0x30]
test rdi, rdi
je 0x14002ae03
lea rax, [rbp - 0x40]
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
cmovae rax, rcx
dec rdi
cmp word [rax + rdi*2], 0
jne 0x14002ae03
lea rax, [rbp - 0x40]
cmp rdx, 8
cmovae rax, rcx
mov qword [rbp - 0x30], rdi
xor r15d, r15d
mov word [rax + rdi*2], r15w
jmp 0x14002ae06
xor r15d, r15d
movzx eax, word [rsp + 0x44]
mov word [rsp + 0x48], ax
cmp r14d, 1
jne 0x14002afa4
mov rax, qword [rbp - 0x30]
movabs rcx, 0x7ffffffffffffffe
cmp rax, rcx
je 0x14002b1e6
lea r9, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae r9, qword [rbp - 0x40]
mov qword [rsp + 0x30], 1
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0xe0]
call fcn.14001d980
or esi, 0x40
mov dword [rsp + 0x40], esi
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae rdx, qword [rbp - 0x60]
mov r8, qword [rbp - 0x50]
lea rcx, [rbp + 0xe0]
call fcn.140003650
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x38], r15
movups xmm6, xmmword [rax]
movups xmmword [rbp + 0x20], xmm6
movups xmm7, xmmword [rax + 0x10]
movups xmmword [rbp + 0x30], xmm7
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
or esi, 8
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x14002aef6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002aef1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1da
call fcn.14003a0d0
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], r15w
movups xmmword [rbp - 0x60], xmm6
movups xmmword [rbp - 0x50], xmm7
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x38], 7
mov word [rbp + 0x20], r15w
and esi, 0xfffffff7
mov dword [rsp + 0x40], esi
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x38], 7
mov word [rbp + 0x20], r15w
and esi, 0xffffffbf
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp + 0xf8]
cmp rdx, 8
jb 0x14002af85
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002af80
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1e0
call fcn.14003a0d0
mov qword [rbp + 0xf0], r15
mov qword [rbp + 0xf8], 7
mov word [rbp + 0xe0], r15w
jmp 0x14002b129
mov rax, qword [rbp - 0x50]
movabs rcx, 0x7ffffffffffffffe
cmp rax, rcx
je 0x14002b1fe
lea r9, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae r9, qword [rbp - 0x60]
mov qword [rsp + 0x30], 1
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x100]
call fcn.14001d980
or esi, 0x10
mov dword [rsp + 0x40], esi
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rdx, qword [rbp - 0x40]
mov r8, qword [rbp - 0x30]
lea rcx, [rbp + 0x100]
call fcn.140003650
mov qword [rbp + 0x50], r15
mov qword [rbp + 0x58], r15
movups xmm6, xmmword [rax]
movups xmmword [rbp + 0x40], xmm6
movups xmm7, xmmword [rax + 0x10]
movups xmmword [rbp + 0x50], xmm7
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
or esi, 0x20
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x14002b080
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002b07b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1ec
call fcn.14003a0d0
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], r15w
movups xmmword [rbp - 0x60], xmm6
movups xmmword [rbp - 0x50], xmm7
mov qword [rbp + 0x50], r15
mov qword [rbp + 0x58], 7
mov word [rbp + 0x40], r15w
and esi, 0xffffffdf
mov dword [rsp + 0x40], esi
mov qword [rbp + 0x50], r15
mov qword [rbp + 0x58], 7
mov word [rbp + 0x40], r15w
and esi, 0xffffffef
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp + 0x118]
cmp rdx, 8
jb 0x14002b10f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002b10a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1f2
call fcn.14003a0d0
mov qword [rbp + 0x110], r15
mov qword [rbp + 0x118], 7
mov word [rbp + 0x100], r15w
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae rdx, qword [rbp - 0x60]
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae rcx, qword [rbp - 0x20]
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
nop
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
jb 0x14002b188
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002b183
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b1f8
call fcn.14003a0d0
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x28], 7
mov word [rbp - 0x40], r15w
jmp 0x14002ab53
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.140002310
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.14004638c
nop
call fcn.140002310
nop
call fcn.14004638c
nop
call fcn.14004638c
int3