Function at 0x14000aa35
Capabilities:
Query environment variable

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x2f60
call fcn.140031fcd
sub rsp, rax
mov qword [rsp + 0x60], 0xfffffffffffffffe
mov qword [rsp + 0x2fb0], rbx
mov rax, qword [0x1401279c0]
xor rax, rsp
mov qword [rsp + 0x2f50], rax
mov rsi, rdx
movsxd rdi, ecx
mov ebx, 0x1770
mov rcx, rbx
call fcn.140015112
mov r12, rax
mov r8d, ebx
mov rdx, rax
mov ecx, edi
call fcn.1400048ef
mov rdx, r12
lea rcx, str.entry__S
call fcn.140011192
mov ecx, 8
call fcn.140015cfc
test rax, rax
je 0x14000aac3
lea rcx, [rsp + 0x28]
mov qword [rax], rcx
jmp 0x14000aac5
xor eax, eax
mov qword [rsp + 0x28], rax
and qword [rsp + 0x40], 0
and qword [rsp + 0x48], 0
and qword [rsp + 0x50], 0
lea rdx, [0x14003d1fc]
mov rcx, r12
call fcn.140016755
mov rbx, rax
test rax, rax
je 0x14000ab52
mov rcx, rbx
call fcn.140015251
test rax, rax
je 0x14000ab52
mov rcx, rbx
call fcn.140015251
lea rcx, [rax + 1]
call fcn.140015112
mov qword [rsp + 0x58], rax
mov rdx, rbx
mov rcx, rax
call fcn.14001595b
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x28]
call fcn.14000806b
lea rdx, [0x14003d1fc]
xor ecx, ecx
call fcn.140016755
mov rbx, rax
test rax, rax
jne 0x14000aaf7
mov rdx, qword [rsp + 0x48]
sub rdx, qword [rsp + 0x40]
sar rdx, 3
lea rcx, [0x14003ea98]
call fcn.140011192
xor r14d, r14d
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
sub rcx, rdx
sar rcx, 3
xor ebp, ebp
mov r15, rdi
test rcx, rcx
je 0x14000ae35
mov bl, byte [rsp + 0x20]
cmp rbp, rcx
jb 0x14000aba5
call fcn.140015cdc
mov rdx, qword [rsp + 0x40]
mov rdi, qword [rdx + rbp*8]
lea rdx, [rdi + 2]
lea rcx, [rsp + 0x17e0]
call fcn.14001595b
lea rcx, [rsp + 0x17e0]
call fcn.140008d2f
cmp byte [rdi + 1], 0x31
sete r13b
movsx ecx, byte [rdi]
sub ecx, 0x41
je 0x14000ad8e
sub ecx, 3
je 0x14000ad8e
sub ecx, 1
je 0x14000ac8f
cmp ecx, 0xe
jne 0x14000ade7
xor r8d, r8d
lea rdx, [rsp + 0x17e0]
lea rcx, [rsp + 0x70]
call fcn.140006cca
cmp r15, 0x79
jne 0x14000ac46
lea r8, [0x14003ea94]
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.140009af7
mov bl, al
lea r8, [0x14003ea90]
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.140009af7
or bl, al
jmp 0x14000ade7
lea rcx, [rsp + 0x70]
call fcn.140005d05
mov bl, al
lea rcx, [rsp + 0x70]
call fcn.140015251
mov r8, rax
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.1400071f8
lea rcx, [0x14003d1fc]
call fcn.140015251
mov r8, rax
lea rdx, [0x14003d1fc]
mov rcx, rsi
call fcn.1400071f8
jmp 0x14000ade7
mov r8d, 0x1770
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x17e0]
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
test eax, eax
je 0x14000ad5d
cmp byte [rsp + 0x70], 0x22
jne 0x14000ad04
lea rbx, [rsp + 0x70]
dec rbx
lea rcx, [rsp + 0x70]
call fcn.140015251
cmp byte [rax + rbx], 0x22
jne 0x14000ad04
lea rcx, [rsp + 0x70]
call fcn.140015251
mov byte [rax + rbx], 0
lea rcx, [rsp + 0x71]
call fcn.140015251
mov r8, rax
lea rdx, [rsp + 0x71]
mov rcx, rsi
call fcn.1400071f8
jmp 0x14000ad1e
lea rcx, [rsp + 0x70]
call fcn.140015251
mov r8, rax
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.1400071f8
lea rcx, [rsp + 0x70]
call fcn.140015251
lea rcx, [rsp + 0x70]
cmp byte [rax + rcx - 1], 0x3b
je 0x14000ad56
lea rcx, [0x14003d1fc]
call fcn.140015251
mov r8, rax
lea rdx, [0x14003d1fc]
mov rcx, rsi
call fcn.1400071f8
mov bl, 1
jmp 0x14000ade7
test r13b, r13b
je 0x14000ae0a
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xcb
jne 0x14000ade7
lea rdx, [rsp + 0x17e0]
mov ecx, 0x3f0
call fcn.140005370
jmp 0x14000ade7
xor r8d, r8d
lea rdx, [rsp + 0x17e0]
lea rcx, [rsp + 0x70]
call fcn.140006f4d
lea rcx, [rsp + 0x70]
call fcn.140005d05
mov bl, al
lea rcx, [rsp + 0x70]
call fcn.140015251
mov r8, rax
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.1400071f8
lea rcx, [0x14003d1fc]
call fcn.140015251
mov r8, rax
lea rdx, [0x14003d1fc]
mov rcx, rsi
call fcn.1400071f8
test r13b, r13b
je 0x14000ae0a
test bl, bl
jne 0x14000ae0a
lea rdx, [rsp + 0x17e0]
mov ecx, 0x3ee
call fcn.140005370
mov rcx, rdi
call fcn.140015678
inc r14d
inc rbp
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
sub rcx, rdx
sar rcx, 3
movsxd rax, r14d
cmp rax, rcx
jb 0x14000ab92
mov rcx, r12
call fcn.140015678
nop
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x14000ae51
call fcn.140015678
and qword [rsp + 0x40], 0
and qword [rsp + 0x48], 0
and qword [rsp + 0x50], 0
mov rcx, qword [rsp + 0x28]
call fcn.140015678
mov rcx, qword [rsp + 0x2f50]
xor rcx, rsp
call fcn.140015ae6
mov rbx, qword [rsp + 0x2fb0]
add rsp, 0x2f60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret