Function at 0x14002b980
Capabilities:
Query environment variable

Disassembly:
push r14
push r15
sub rsp, 0x458
movzx eax, byte [rcx + 2]
movzx r15d, r8b
mov r14, rcx
cmp edx, eax
jl 0x14002b9a8
xor eax, eax
add rsp, 0x458
pop r15
pop r14
ret
mov qword [rsp + 0x430], r13
movsxd r13, edx
shl r13, 5
add r13, qword [rcx + 0x10]
cmp byte [r13], 0
jne 0x14002b9d8
xor eax, eax
mov r13, qword [rsp + 0x430]
add rsp, 0x458
pop r15
pop r14
ret
mov qword [rsp + 0x480], rbx
mov rbx, qword [r13 + 8]
cmp word [rbx], 0
jne 0x14002b9f3
mov rax, qword [r13 + 0x10]
jmp 0x14002bde7
mov qword [rsp + 0x450], rbp
mov rbp, qword [r13 + 0x10]
mov qword [rsp + 0x448], rsi
mov qword [rsp + 0x440], rdi
mov qword [rsp + 0x438], r12
xor r12d, r12d
lea rdx, [0x1401762b0]
mov edi, r12d
test rbp, rbp
je 0x14002bb72
mov rax, qword [rbp]
test rax, rax
je 0x14002bb72
cmp rbx, rax
jae 0x14002ba5e
nop
cmp rdi, 0xfd
jae 0x14002ba67
movzx eax, word [rbx]
add rbx, 2
inc rdi
mov word [rdx + rdi*2 - 2], ax
cmp rbx, qword [rbp]
jb 0x14002ba40
cmp rdi, 0xfd
jb 0x14002ba71
cmp rbx, qword [rbp]
jb 0x14002bb5d
mov rsi, qword [rbp + 8]
movzx ecx, byte [rsi + 0x23]
test ecx, ecx
je 0x14002bb13
dec ecx
je 0x14002baba
dec ecx
je 0x14002ba9b
dec ecx
je 0x14002bb05
mov rdx, qword [rsi + 0x28]
xor ecx, ecx
call qword [rsi + reloc.OLEAUT32.dll_SafeArrayGetElement]
jmp 0x14002bb1e
lea rcx, [0x140171f30]
xor edx, edx
call fcn.1400056e0
mov r11, rax
mov eax, 0xffffffff
cmp r11, rax
cmove r11, r12
jmp 0x14002bb21
mov rcx, rsi
call fcn.140001410
cmp dword [0x14016f9f4], r12d
jne 0x14002bb0a
cmp qword [rsi + 0x10], r12
jne 0x14002bb0a
mov rcx, qword [rsi + 0x28]
lea rdx, [rsp + 0x478]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
lea rdx, [0x1401762b0]
test eax, eax
je 0x14002bafe
mov qword [0x140176058], r12
lea r11d, [rax - 1]
jmp 0x14002bb28
mov qword [0x140176058], rsi
mov r11, r12
jmp 0x14002bb28
mov r11, qword [rsi + 0x10]
shr r11, 1
jmp 0x14002bb21
mov rcx, qword [rsi + 0x10]
xor edx, edx
call fcn.1400ea020
mov r11, rax
lea rdx, [0x1401762b0]
mov eax, 0xfd
sub rax, rdi
cmp r11, rax
ja 0x14002bb5d
mov rcx, qword [rbp + 8]
lea rdx, [rdx + rdi*2]
call fcn.1400ea020
lea rdx, [0x1401762b0]
add rdi, rax
movzx eax, word [rbp + 0x12]
add rbp, 0x18
lea rbx, [rbx + rax*2]
jmp 0x14002ba2d
lea rcx, [0x140133520]
call fcn.1400dd2e0
mov r9, qword [r13 + 8]
jmp 0x14002bdb7
movzx eax, word [rbx]
test ax, ax
je 0x14002bb9c
nop word [rax + rax]
cmp rdi, 0xfd
jae 0x14002bba5
add rbx, 2
mov word [rdx + rdi*2], ax
inc rdi
movzx eax, word [rbx]
test ax, ax
jne 0x14002bb80
cmp rdi, 0xfd
jb 0x14002bbab
cmp word [rbx], r12w
jne 0x14002bb5d
test rdi, rdi
jne 0x14002bbc5
lea rcx, [0x140133640]
call fcn.1400dd2e0
mov r9, qword [r13 + 8]
jmp 0x14002bdb7
mov eax, dword [0x1401762a8]
mov word [rdx + rdi*2], r12w
test al, 1
jne 0x14002bc0a
or eax, 1
mov qword [0x140176288], r12
mov qword [0x1401762a0], rdx
mov dword [0x1401762a8], eax
lea rax, [0x140171290]
mov dword [0x140176298], 0x1000400
mov qword [0x140176280], rax
mov qword [0x140176290], r12
test r15b, r15b
jne 0x14002bd13
cmp word [0x1401762b0], r12w
je 0x14002bdc5
mov rbx, rdx
movzx ebp, word [rbx]
mov esi, ebp
mov ecx, ebp
and esi, 0xffffff80
jne 0x14002bc3e
mov edx, 0x107
call fcn.140109968
test eax, eax
jne 0x14002bc56
test esi, esi
jne 0x14002bc56
lea rcx, [0x140152880]
movzx edx, bp
call fcn.140109434
test rax, rax
je 0x14002bcab
add rbx, 2
cmp word [rbx], r12w
jne 0x14002bc24
lea rsi, [0x1401762b0]
lea rcx, [0x1401712e0]
xor r9d, r9d
mov r8, rdi
mov rdx, rsi
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 3
call fcn.14002be90
test rax, rax
jne 0x14002bdc7
mov rcx, rsi
call fcn.14002c860
test rax, rax
jne 0x14002bd0c
lea rax, [0x140176278]
jmp 0x14002bdc7
lea rcx, str.___3_86_
call fcn.1400dd2e0
lea rcx, [0x1401528e0]
mov rbx, rax
call fcn.1400dd2e0
lea rsi, [0x1401762b0]
lea rcx, [rsp + 0x30]
mov r9, rbx
mov edx, 0x200
mov r8, rax
mov qword [rsp + 0x20], rsi
call fcn.1400e6100
lea r8, [0x1401295d4]
lea rdx, [rsp + 0x30]
lea rcx, [0x1401712e0]
call fcn.1400a5580
test eax, eax
jne 0x14002bc67
jmp 0x14002bdc5
lea rdx, [0x1401762b0]
cmp word [0x1401762b0], r12w
je 0x14002bdc5
lea rax, [rsp + 0x478]
lea r9, [rsp + 0x470]
lea rcx, [0x1401712e0]
mov qword [rsp + 0x28], rax
mov r8, rdi
mov dword [rsp + 0x20], 3
call fcn.14002be90
lea rsi, [0x1401762b0]
test rax, rax
jne 0x14002bd8c
cmp byte [rsp + 0x478], r12b
mov r9d, dword [rsp + 0x470]
lea rcx, [0x1401712e0]
setne r12b
mov r8, rdi
mov rdx, rsi
inc r12d
mov dword [rsp + 0x20], r12d
call fcn.14002c190
test rax, rax
je 0x14002bdc5
cmp byte [r13], 2
jne 0x14002bdc7
movzx ecx, byte [rax + 0x23]
test cl, cl
jne 0x14002bda3
mov rcx, qword [rax + 0x10]
movzx ecx, byte [rcx + 0x23]
cmp cl, 2
jbe 0x14002bdc7
lea rcx, [0x140133730]
call fcn.1400dd2e0
mov r9, rsi
xor r8d, r8d
mov rdx, rax
mov rcx, r14
call fcn.14003d490
xor eax, eax
mov r12, qword [rsp + 0x438]
mov rdi, qword [rsp + 0x440]
mov rsi, qword [rsp + 0x448]
mov rbp, qword [rsp + 0x450]
mov rbx, qword [rsp + 0x480]
mov r13, qword [rsp + 0x430]
add rsp, 0x458
pop r15
pop r14
ret