Function at 0x140009ef4
Capabilities:
Query environment variable

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x2f60
call fcn.14002d110
sub rsp, rax
mov qword [rsp + 0x60], 0xfffffffffffffffe
mov qword [rsp + 0x2fb0], rbx
mov rax, qword [0x14003b9c0]
xor rax, rsp
mov qword [rsp + 0x2f50], rax
mov rsi, rdx
movsxd rdi, ecx
mov ebx, 0x1770
mov rcx, rbx
call fcn.140013a90
mov r12, rax
mov r8d, ebx
mov rdx, rax
mov ecx, edi
call fcn.140004500
mov rdx, r12
lea rcx, str.entry__S
call fcn.14000ff78
mov ecx, 8
call fcn.1400144d8
test rax, rax
je 0x140009f7b
lea rcx, [rsp + 0x28]
mov qword [rax], rcx
jmp 0x140009f7d
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, [0x14003019c]
mov rcx, r12
call fcn.140014e2c
mov rbx, rax
test rax, rax
je 0x140009ffe
mov rcx, rbx
call fcn.140013bc0
test rax, rax
je 0x140009ffe
mov rcx, rbx
call fcn.140013bc0
lea rcx, [rax + 1]
call fcn.140013a90
mov qword [rsp + 0x58], rax
mov rdx, rbx
mov rcx, rax
call fcn.140014190
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x28]
call fcn.140007824
lea rdx, [0x14003019c]
xor ecx, ecx
call fcn.140014e2c
mov rbx, rax
test rax, rax
jne 0x140009fab
mov rdx, qword [rsp + 0x48]
sub rdx, qword [rsp + 0x40]
sar rdx, 3
lea rcx, [0x140031a38]
call fcn.14000ff78
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 0x14000a2bb
mov bl, byte [rsp + 0x20]
cmp rbp, rcx
jb 0x14000a04d
call fcn.1400144b8
mov rdx, qword [rsp + 0x40]
mov rdi, qword [rdx + rbp*8]
lea rdx, [rdi + 2]
lea rcx, [rsp + 0x17e0]
call fcn.140014190
lea rcx, [rsp + 0x17e0]
call fcn.140008440
cmp byte [rdi + 1], 0x31
sete r13b
movsx ecx, byte [rdi]
sub ecx, 0x41
je 0x14000a21c
sub ecx, 3
je 0x14000a21c
sub ecx, 1
je 0x14000a133
cmp ecx, 0xe
jne 0x14000a275
xor r8d, r8d
lea rdx, [rsp + 0x17e0]
lea rcx, [rsp + 0x70]
call fcn.14000664c
cmp r15, 0x79
jne 0x14000a0ea
lea r8, [0x140031a34]
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.14000907c
mov bl, al
lea r8, [0x140031a30]
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.14000907c
or bl, al
jmp 0x14000a275
lea rcx, [rsp + 0x70]
call fcn.1400057d4
mov bl, al
lea rcx, [rsp + 0x70]
call fcn.140013bc0
mov r8, rax
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.140006afc
lea rcx, [0x14003019c]
call fcn.140013bc0
mov r8, rax
lea rdx, [0x14003019c]
mov rcx, rsi
call fcn.140006afc
jmp 0x14000a275
mov r8d, 0x1770
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x17e0]
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
test eax, eax
je 0x14000a1f2
cmp byte [rsp + 0x70], 0x22
jne 0x14000a19d
lea rbx, [rsp + 0x70]
dec rbx
lea rcx, [rsp + 0x70]
call fcn.140013bc0
cmp byte [rax + rbx], 0x22
jne 0x14000a19d
lea rcx, [rsp + 0x70]
call fcn.140013bc0
mov byte [rax + rbx], 0
lea rcx, [rsp + 0x71]
call fcn.140013bc0
mov r8, rax
lea rdx, [rsp + 0x71]
mov rcx, rsi
call fcn.140006afc
jmp 0x14000a1b7
lea rcx, [rsp + 0x70]
call fcn.140013bc0
mov r8, rax
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.140006afc
lea rcx, [rsp + 0x70]
call fcn.140013bc0
lea rcx, [rsp + 0x70]
cmp byte [rax + rcx - 1], 0x3b
je 0x14000a1eb
lea rcx, [0x14003019c]
call fcn.140013bc0
mov r8, rax
lea rdx, [0x14003019c]
mov rcx, rsi
call fcn.140006afc
mov bl, 1
jmp 0x14000a275
test r13b, r13b
je 0x14000a290
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xcb
jne 0x14000a275
lea rdx, [rsp + 0x17e0]
mov ecx, 0x3f0
call fcn.140004ee8
jmp 0x14000a275
xor r8d, r8d
lea rdx, [rsp + 0x17e0]
lea rcx, [rsp + 0x70]
call fcn.1400068a8
lea rcx, [rsp + 0x70]
call fcn.1400057d4
mov bl, al
lea rcx, [rsp + 0x70]
call fcn.140013bc0
mov r8, rax
lea rdx, [rsp + 0x70]
mov rcx, rsi
call fcn.140006afc
lea rcx, [0x14003019c]
call fcn.140013bc0
mov r8, rax
lea rdx, [0x14003019c]
mov rcx, rsi
call fcn.140006afc
test r13b, r13b
je 0x14000a290
test bl, bl
jne 0x14000a290
lea rdx, [rsp + 0x17e0]
mov ecx, 0x3ee
call fcn.140004ee8
mov rcx, rdi
call fcn.140013f50
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 0x14000a03e
mov rcx, r12
call fcn.140013f50
nop
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x14000a2d3
call fcn.140013f50
and qword [rsp + 0x40], 0
and qword [rsp + 0x48], 0
and qword [rsp + 0x50], 0
mov rcx, qword [rsp + 0x28]
call fcn.140013f50
mov rcx, qword [rsp + 0x2f50]
xor rcx, rsp
call fcn.1400142e0
mov rbx, qword [rsp + 0x2fb0]
add rsp, 0x2f60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret