Function at 0x14017a1f0
Capabilities:
Query environment variable
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rbx, rcx
lea rcx, str.HWLOC_COMPONENTS
call sub.msvcrt.dll_getenv
mov rcx, rax
test rax, rax
je 0x14017a3b0
call qword [sym.imp.msvcrt.dll__strdup_1]
mov r12, rax
test rax, rax
je 0x14017a3b0
movzx r15d, byte [rax]
test r15b, r15b
je 0x14017a3b8
mov r14, rax
lea rsi, [0x14047719f]
nop dword [rax]
mov rdx, rsi
mov rcx, r14
call sub.msvcrt.dll_strcspn
lea r13, [r14 + rax]
mov rbp, rax
movzx edi, byte [r13]
test rax, rax
je 0x14017a26e
cmp r15b, 0x2d
je 0x14017a608
test dil, dil
jne 0x14017a4c8
cmp byte [r12], 0
je 0x14017a3b8
mov r14, r12
lea rbp, str.stop
jmp 0x14017a2af
movzx r13d, byte [r14]
mov r15, r14
test r13b, r13b
je 0x14017a3b8
cmp byte [r15 + 1], 0
lea r14, [r15 + 1]
je 0x14017a3b8
lea rdx, [0x14047719f]
mov rcx, r14
call sub.msvcrt.dll_strcspn
test rax, rax
je 0x14017a290
cmp rax, 5
mov ecx, 5
mov rsi, r14
mov rdi, rbp
cmovbe rcx, rax
cmp rcx, rcx
repe cmpsb byte [rsi], byte [rdi]
seta dl
sbb dl, 0
test dl, dl
je 0x14017a478
lea r15, [r14 + rax]
mov ecx, 9
mov rsi, r14
movzx r13d, byte [r15]
mov byte [r15], 0
lea rdi, str.linuxpci
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
test al, al
je 0x14017a329
mov ecx, 8
lea rdi, str.linuxio
mov rsi, r14
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
test al, al
jne 0x14017a340
mov r8d, dword [0x1407b2e54]
test r8d, r8d
jne 0x14017a530
lea r14, str.linux
xor edx, edx
mov rcx, r14
call fcn.1401793a0
mov r11, rax
test rax, rax
je 0x14017a4e0
mov r9d, dword [rbx + 0x338]
test r9d, r9d
je 0x14017a639
mov rax, qword [rbx + 0x340]
lea edx, [r9 - 1]
shl rdx, 4
lea rdx, [rax + rdx + 0x10]
jmp 0x14017a38d
add rax, 0x10
cmp rdx, rax
je 0x14017a508
cmp qword [rax], r11
jne 0x14017a380
mov r9d, dword [rax + 8]
mov eax, r9d
not eax
and eax, dword [r11 + 8]
jne 0x14017a51a
mov byte [r15], r13b
jmp 0x14017a297
xor r12d, r12d
nop dword [rax + rax]
mov rbp, qword [0x1407b2e60]
test rbp, rbp
je 0x14017a478
lea r13, str.Excluding_blacklisted_discovery_component___s_phases_0x_x_n
jmp 0x14017a3e5
mov rbp, qword [rbp + 0x20]
test rbp, rbp
je 0x14017a478
mov ecx, dword [rbp + 0x1c]
test ecx, ecx
je 0x14017a3d8
mov r9d, dword [rbx + 0x338]
test r9d, r9d
je 0x14017a643
mov rax, qword [rbx + 0x340]
lea edx, [r9 - 1]
shl rdx, 4
lea rdx, [rax + rdx + 0x10]
jmp 0x14017a425
add rax, 0x10
cmp rdx, rax
je 0x14017a4b8
cmp qword [rax], rbp
jne 0x14017a418
mov r9d, dword [rax + 8]
mov eax, r9d
not eax
mov esi, dword [rbp + 8]
test esi, eax
jne 0x14017a4a0
mov edx, dword [0x1407b2e54]
test edx, edx
je 0x14017a3d8
mov rdi, qword [rbp]
mov ecx, 2
call qword [fcn.140225420]
mov r9d, esi
mov rdx, r13
mov rcx, rax
mov r8, rdi
call sub.msvcrt.dll_fprintf
mov rbp, qword [rbp + 0x20]
test rbp, rbp
jne 0x14017a3e5
nop dword [rax]
mov eax, dword [0x1407b2e54]
test eax, eax
jne 0x14017a560
mov rcx, r12
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.140225b60
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.14017a110
jmp 0x14017a3d8
mov eax, 0xffffffff
xor r9d, r9d
jmp 0x14017a433
movzx r15d, byte [r13 + 1]
lea r14, [r13 + 1]
test r15b, r15b
jne 0x14017a248
jmp 0x14017a277
mov ecx, 2
call qword [fcn.140225420]
mov r8, r14
lea rdx, str.Cannot_find_discovery_component___s_n
mov rcx, rax
call sub.msvcrt.dll_fprintf
jmp 0x14017a3a5
mov eax, 0xffffffff
xor r9d, r9d
and eax, dword [r11 + 8]
je 0x14017a3a5
mov r8d, 1
mov rdx, r11
mov rcx, rbx
call fcn.14017a110
jmp 0x14017a3a5
mov ecx, 2
call qword [fcn.140225420]
mov r8, r14
lea rdx, str.Replacing_deprecated_component___s_with__linux_in_envvar_forcing_n
lea r14, str.linux
mov rcx, rax
call sub.msvcrt.dll_fprintf
jmp 0x14017a340
mov rbx, qword [rbx + 0x2f0]
mov ecx, 2
mov rdi, qword [fcn.140225420]
call rdi
mov r8d, 0x2c
mov edx, 1
lea rcx, str.Final_list_of_enabled_discovery_components:
mov r9, rax
call sub.msvcrt.dll_fwrite
test rbx, rbx
je 0x14017a5e9
mov rax, qword [rbx]
mov esi, dword [rbx + 0x20]
lea r14, [0x140477359]
lea rbp, str._s_s_0x_x_
lea r13, [0x14047719f]
mov r15, qword [rax]
jmp 0x14017a5c4
mov rax, qword [rbx]
mov esi, dword [rbx + 0x20]
mov r14, r13
mov r15, qword [rax]
mov ecx, 2
call rdi
mov dword [rsp + 0x20], esi
mov r9, r15
mov r8, r14
mov rcx, rax
mov rdx, rbp
call sub.msvcrt.dll_fprintf
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x14017a5b8
mov ecx, 2
call rdi
mov ecx, 0xa
mov rdx, rax
call sub.msvcrt.dll_fputc
jmp 0x14017a486
mov byte [r13], 0
lea rdx, [r14 + 1]
mov rcx, rbx
call fcn.140179560
xor edx, edx
xor eax, eax
nop dword [rax]
mov byte [r14 + rax], 0x2c
lea eax, [rdx + 1]
mov rdx, rax
cmp rax, rbp
jb 0x14017a620
mov byte [r13], dil
jmp 0x14017a26e
mov eax, 0xffffffff
jmp 0x14017a39b
mov eax, 0xffffffff
jmp 0x14017a433