Function at 0x18000f2b0
Capabilities:
Set environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xa0
lea eax, [r9 + 0xb]
mov r13d, r9d
mov dword [rbp + 7], eax
mov r12, r8
mov r14, rdx
mov r15, rcx
cmp r9d, eax
jae case.0x18000f31f.131
mov ebx, dword [rbp + 0x7f]
lea rdx, [0x180000000]
xor esi, esi
nop dword [rax]
lea eax, [r13 - 0x7f]
cmp eax, 0x37
ja case.0x18000f31f.137
movzx eax, byte [rdx + rax + 0xf7cc]
mov ecx, dword [rdx + rax*4 + 0xf7a0]
add rcx, rdx
jmp rcx
mov dword [rbp - 0x21], ebx
jmp case.0x18000f31f.137
mov qword [rbp - 0x21], rsi
jmp case.0x18000f31f.137
test r14, r14
je 0x18000f4e5
test dword [r14 + 0x10], 0x1c1
je 0x18000f4e5
mov edi, 0xb5
nop
mov eax, edi
sub eax, 0xb5
je 0x18000f4b4
sub eax, 0x4c
je 0x18000f370
cmp eax, 0x4c
je case.0x18000f31f.131
jmp 0x18000f4cb
cmp dword [r14 + 0x30], 1
jb 0x18000f4e1
lea rcx, [r14 + 0x20]
mov r9d, 0xc8
xor r8d, r8d
xor edx, edx
call fcn.1800ed620
test eax, eax
jne 0x18000f4dc
mov eax, dword [r14 + 0x30]
lea r9, [rbp + 0x7f]
mov dword [rbp + 0x7f], eax
xor r8d, r8d
mov rax, qword [r14 + 0x28]
mov rdx, r15
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x19]
mov qword [rsp + 0x20], rax
lea ecx, [r8 + 0x4f]
call fcn.180026830
test eax, eax
jne 0x18000f45a
mov ebx, 0x23
mov eax, ebx
sub eax, 0x21
je case.0x18000f31f.131
sub eax, 1
je 0x18000f44c
cmp eax, 1
jne 0x18000f44f
mov r8, qword [rbp - 0x19]
xor r9d, r9d
mov edx, 0x86
xor ecx, ecx
mov eax, dword [r8 + 0x38]
mov dword [rbp - 9], eax
mov rax, qword [r15]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 9]
mov qword [rsp + 0x20], rax
call fcn.180015040
mov rax, qword [rbp - 0x19]
lea r8, [rbp - 0x11]
mov ecx, dword [r12]
mov edx, 0xe5
mov dword [rbp - 0x11], esi
mov dword [rax + 0x38], ecx
xor ecx, ecx
mov eax, dword [r12]
mov r9, qword [rbp - 0x19]
mov dword [rbp + 0x7f], eax
mov rax, qword [r15]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x7f]
mov qword [rsp + 0x20], rax
call fcn.180062a00
jmp 0x18000f44f
mov dword [rbp - 0x21], esi
dec ebx
cmp ebx, 0x20
ja 0x18000f3d0
mov eax, dword [r12]
lea r9, [rbp - 0x29]
mov rdx, qword [r14 + 0x28]
lea rcx, [rbp + 0xf]
mov dword [rbp + 0x7f], eax
mov r8d, 0xab
mov eax, dword [r14 + 0x30]
mov dword [rbp - 0x11], eax
lea rax, [rbp + 0x7f]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x11]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rsi
mov dword [rbp - 0x29], 1
call fcn.18004c960
movups xmm1, xmmword [rax]
movups xmm0, xmmword [rax + 0x10]
movd dword [rbp - 0x21], xmm1
movups xmmword [rbp + 0x1f], xmm0
jmp 0x18000f4cb
test byte [r14 + 0x10], 1
jne 0x18000f4cb
xor r8d, r8d
mov edx, StrCmpICW
mov rcx, r14
call fcn.18000c100
add edi, 0x4c
cmp edi, 0x199
jb 0x18000f350
jmp 0x18000f4e5
cmp dword [r14 + 0x30], 1
cmovb r14, rsi
mov r13d, 0x8b
test r14, r14
je 0x18000f6a1
test byte [r14 + 0x10], 2
jne 0x18000f50b
xor edx, edx
mov r9, r14
xor r8d, r8d
lea ecx, [rdx + 0x69]
call fcn.1800b0aa0
mov rax, qword [r14 + 8]
lea r9, [rbp - 0x19]
xor r8d, r8d
mov qword [rbp - 0x29], rax
lea rax, [rbp - 0x29]
mov rcx, r15
mov qword [rsp + 0x20], rax
lea edx, [r8 + 1]
call fcn.18002dea0
test eax, eax
jne 0x18000f5ee
mov ebx, 0xae
nop dword [rax]
mov eax, ebx
sub eax, 0xae
je 0x18000f57a
cmp eax, 0x5b
jne 0x18000f5df
mov dword [rbp - 0x21], esi
mov rax, qword [rbp - 0x21]
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov r8, qword [rbp - 0x19]
xor r9d, r9d
mov edx, 0x86
xor ecx, ecx
mov eax, dword [r8 + 0x38]
mov dword [rbp - 1], eax
mov rax, qword [r15]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 1]
mov qword [rsp + 0x20], rax
call fcn.180015040
mov rax, qword [rbp - 0x19]
lea r8, [rbp - 0x29]
mov ecx, dword [r12]
mov edx, 0xe5
mov dword [rbp - 0x29], esi
mov dword [rax + 0x38], ecx
xor ecx, ecx
mov eax, dword [r12]
mov r9, qword [rbp - 0x19]
mov dword [rbp + 0x7f], eax
mov rax, qword [r15]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x7f]
mov qword [rsp + 0x20], rax
call fcn.180062a00
add ebx, 0x5b
cmp ebx, 0x164
jb 0x18000f540
mov eax, dword [r12]
lea r8, [rbp - 0x29]
mov dword [rbp + 0x7f], eax
xor r9d, r9d
mov rax, qword [r14 + 8]
mov rdx, r15
mov qword [rbp - 0x11], rax
mov ecx, 0x83
lea rax, [rbp - 0x11]
mov dword [rbp - 0x29], 1
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x7f]
mov qword [rsp + 0x20], rax
call fcn.180026830
mov rbx, rax
test eax, eax
jne 0x18000f723
mov rax, qword [r14 + 8]
cmp rax, qword [r15 + 0x40]
jl 0x18000f723
inc rax
xor r9d, r9d
mov qword [r15 + 0x40], rax
xor r8d, r8d
mov qword [rbp - 0x29], rax
mov rcx, r15
lea rax, [rbp - 0x29]
lea edx, [r9 + 1]
mov qword [rsp + 0x20], rax
call fcn.18002dea0
test eax, eax
jne 0x18000f723
inc qword [r15 + 0x40]
xor r9d, r9d
mov rax, qword [r15 + 0x40]
xor r8d, r8d
mov qword [rbp - 0x29], rax
mov rcx, r15
lea rax, [rbp - 0x29]
lea edx, [r9 + 1]
mov qword [rsp + 0x20], rax
call fcn.18002dea0
test eax, eax
je 0x18000f671
jmp 0x18000f723
mov eax, dword [r12]
lea r8, [rbp - 0x29]
mov dword [rbp + 0x7f], eax
xor r9d, r9d
mov rax, qword [r15 + 0x40]
mov rdx, r15
mov qword [rbp - 0x11], rax
mov ecx, 0x83
lea rax, [rbp - 0x11]
mov dword [rbp - 0x29], 1
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x7f]
mov qword [rsp + 0x20], rax
call fcn.180026830
mov ebx, eax
test eax, eax
jne 0x18000f723
inc qword [r15 + 0x40]
jmp 0x18000f723
mov qword [rbp - 0x19], rsi
jmp case.0x18000f31f.137
mov rdi, qword [r15]
mov rsi, qword [r15 + 8]
cmp rdi, rsi
je 0x18000f73c
nop dword [rax + rax]
xor r9d, r9d
mov r8d, 0xdf
mov rdx, rdi
xor ecx, ecx
call fcn.18001f690
cmp eax, dword [r14]
je 0x18000f740
add rdi, 0x10
cmp rdi, rsi
jne 0x18000f700
xor esi, esi
lea rdx, [0x180000000]
inc r13d
cmp r13d, dword [rbp + 7]
jb 0x18000f300
jmp case.0x18000f31f.131
xor esi, esi
jmp case.0x18000f31f.137
mov rax, rdi
jmp 0x18000f559
mov eax, dword [r14]
lea rdx, [rbp + 0x7f]
mov r9, r15
mov dword [rbp + 0x7f], eax
xor r8d, r8d
mov qword [rbp - 0x21], rsi
lea rcx, [rbp - 0x21]
mov dword [rsp + 0x20], 0x50
call fcn.180089ec0
jmp 0x18000f559
mov rdx, r14
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
neg eax
sbb ecx, ecx
neg ecx
dec ecx
mov dword [rbp - 0x21], ecx
jmp case.0x18000f31f.131
movzx eax, byte [0x180131aa1]
mov byte [rbp - 0x21], al
jmp case.0x18000f31f.131