Function at 0x140016b40
Capabilities:
Query environment variable

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
mov qword [rbp + 0xf], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov r13, rcx
lea rcx, [rbp - 0x59]
call fcn.140038bc0
nop
mov rax, qword [rbp - 0x59]
mov rbx, qword [rax]
xor r15d, r15d
cmp rbx, rax
je 0x140016e83
nop dword [rax + rax]
lea rdi, [rbx + 0x20]
lea r8, [rdi + 0x20]
lea rdx, [rbp - 0x49]
mov rcx, r13
call fcn.140014f60
nop
mov rcx, qword [rdi + 0x18]
cmp rcx, 0x10
jb 0x140016bb4
mov rax, qword [rdi]
jmp 0x140016bb7
mov rax, rdi
mov qword [rbp - 9], rax
mov qword [rbp - 1], rax
cmp rcx, 0x10
jb 0x140016bca
mov rcx, qword [rdi]
jmp 0x140016bcd
mov rcx, rdi
add rcx, qword [rdi + 0x10]
mov qword [rbp + 7], rcx
mov rdx, qword [0x140081ca8]
lea rcx, [rbp - 9]
call fcn.14003c5a0
mov rcx, qword [rax + 8]
cmp qword [rax], rcx
setne dil
lea rdx, [rbp - 0x79]
lea rcx, [rbp - 9]
call fcn.140018560
nop
lea rcx, [rbp - 0x79]
cmp qword [rbp - 0x61], 0x10
cmovae rcx, qword [rbp - 0x79]
call fcn.14004ee64
mov rsi, rax
test rax, rax
je 0x140016d7f
test dil, dil
je 0x140016cca
lea rcx, [rbp - 0x49]
mov r14, qword [rbp - 0x49]
mov rdi, qword [rbp - 0x31]
cmp rdi, 0x10
cmovae rcx, r14
mov r8, qword [rbp - 0x39]
test r8, r8
jne 0x140016c48
mov eax, r15d
jmp 0x140016c50
mov rdx, rax
call fcn.14004e1e0
cdqe
test rax, rax
je 0x140016c8b
test eax, eax
je 0x140016c8b
cmp byte [rsi], 0
jne 0x140016c65
mov r8, r15
jmp 0x140016c7a
or r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rsi + r8], 0
jne 0x140016c70
mov rdx, rsi
lea rcx, [rbp - 0x49]
call fcn.140002110
jmp 0x140016d7f
cmp qword [rbp - 0x61], 0x10
jb 0x140016ca3
mov rcx, qword [rbp - 0x79]
call fcn.14004cc48
mov rdi, qword [rbp - 0x31]
mov r14, qword [rbp - 0x49]
mov qword [rbp - 0x61], 0xf
mov qword [rbp - 0x69], r15
mov byte [rbp - 0x79], 0
cmp rdi, 0x10
jb 0x140016e25
mov rcx, r14
call fcn.14004cc48
jmp 0x140016e25
cmp byte [rax], 0
jne 0x140016cd4
mov rdi, r15
jmp 0x140016ce9
or rdi, 0xffffffffffffffff
nop dword [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x140016ce0
lea rcx, [rbp - 0x49]
mov r12, qword [rbp - 0x49]
mov r15, qword [rbp - 0x31]
cmp r15, 0x10
cmovae rcx, r12
mov r8, rdi
mov r14, qword [rbp - 0x39]
cmp r14, rdi
cmovb r8, r14
test r8, r8
jne 0x140016d14
xor eax, eax
jmp 0x140016d1c
mov rdx, rax
call fcn.14004e1e0
cdqe
test rax, rax
jne 0x140016d35
cmp r14, rdi
jae 0x140016d2d
or eax, 0xffffffff
jmp 0x140016d35
xor eax, eax
cmp r14, rdi
setne al
test eax, eax
jne 0x140016d7c
cmp qword [rbp - 0x61], 0x10
jb 0x140016d51
mov rcx, qword [rbp - 0x79]
call fcn.14004cc48
mov r15, qword [rbp - 0x31]
mov r12, qword [rbp - 0x49]
mov qword [rbp - 0x61], 0xf
mov qword [rbp - 0x69], 0
mov byte [rbp - 0x79], 0
cmp r15, 0x10
jb 0x140016e22
mov rcx, r12
call fcn.14004cc48
jmp 0x140016e22
xor r15d, r15d
lea r8, [0x140077d20]
lea rdx, [rbp - 0x79]
lea rcx, [rbp + 0x17]
call fcn.140017ac0
nop
lea r8, [rbp - 0x49]
mov rdx, rax
lea rcx, [rbp - 0x29]
call fcn.140001760
nop
cmp qword [rbp + 0x2f], 0x10
jb 0x140016db5
mov rcx, qword [rbp + 0x17]
call fcn.14004cc48
lea rcx, [rbp - 0x29]
cmp qword [rbp - 0x11], 0x10
cmovae rcx, qword [rbp - 0x29]
call fcn.14006ad04
mov rcx, rax
call fcn.14006b748
cmp qword [rbp - 0x11], 0x10
jb 0x140016de0
mov rcx, qword [rbp - 0x29]
call fcn.14004cc48
mov qword [rbp - 0x11], 0xf
mov qword [rbp - 0x19], r15
mov byte [rbp - 0x29], 0
cmp qword [rbp - 0x61], 0x10
jb 0x140016e00
mov rcx, qword [rbp - 0x79]
call fcn.14004cc48
mov qword [rbp - 0x61], 0xf
mov qword [rbp - 0x69], r15
mov byte [rbp - 0x79], 0
cmp qword [rbp - 0x31], 0x10
jb 0x140016e25
mov rcx, qword [rbp - 0x49]
call fcn.14004cc48
jmp 0x140016e25
xor r15d, r15d
cmp byte [rbx + 0x19], 0
jne 0x140016e76
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x140016e4f
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x140016e76
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140016e41
jmp 0x140016e76
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x140016e73
nop dword [rax]
cmp rbx, qword [rax + 0x10]
jne 0x140016e73
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140016e60
mov rbx, rax
mov rax, qword [rbp - 0x59]
cmp rbx, rax
jne 0x140016b90
mov rbx, qword [rax + 8]
mov rdi, rbx
cmp byte [rbx + 0x19], 0
jne 0x140016ef5
mov rdx, qword [rdi + 0x10]
lea rcx, [rbp - 0x59]
call fcn.140017e80
mov rdi, qword [rdi]
cmp qword [rbx + 0x58], 0x10
jb 0x140016eb0
mov rcx, qword [rbx + 0x40]
call fcn.14004cc48
mov qword [rbx + 0x58], 0xf
mov qword [rbx + 0x50], r15
mov byte [rbx + 0x40], 0
cmp qword [rbx + 0x38], 0x10
jb 0x140016ed0
mov rcx, qword [rbx + 0x20]
call fcn.14004cc48
mov qword [rbx + 0x38], 0xf
mov qword [rbx + 0x30], r15
mov byte [rbx + 0x20], 0
mov rcx, rbx
call fcn.14004cc48
mov rbx, rdi
cmp byte [rdi + 0x19], 0
je 0x140016e90
mov rax, qword [rbp - 0x59]
mov qword [rax + 8], rax
mov rax, qword [rbp - 0x59]
mov qword [rax], rax
mov rax, qword [rbp - 0x59]
mov qword [rax + 0x10], rax
mov qword [rbp - 0x51], r15
mov rcx, qword [rbp - 0x59]
call fcn.14004cc48
lea r11, [rsp + 0xd0]
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