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

Disassembly:
push r14
push r13
push r12
push rdi
push rsi
sub rsp, 0x40
mov r8d, dword [rcx + 0xc8]
mov r12, rcx
test r8d, r8d
jne 0x6feeb0
call fcn.00701cd0
lea rcx, str.HWLOC_XML_USERDATA_NOT_DECODED
call sub.msvcrt.dll_getenv
test rax, rax
je 0x6fe4f1
mov dword [r12 + 0x2b0], 1
lea rcx, [0x0095d17f]
call sub.msvcrt.dll_getenv
test rax, rax
je 0x6fec20
mov qword [rsp + 0x38], 0
lea rcx, str.HWLOC_ALLOW
call sub.msvcrt.dll_getenv
mov rsi, rax
test rax, rax
je 0x6fe53f
mov ecx, 4
lea rdi, [0x0095d1e2]
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
test al, al
jne 0x6fe53f
or dword [rsp + 0x3c], 2
mov rcx, r12
call fcn.00704210
mov rcx, r12
call fcn.00704670
mov rcx, r12
call fcn.007047b0
mov rcx, r12
call fcn.007060d0
mov rcx, r12
call fcn.007096f0
mov dword [r12 + 0xcc], 0
call fcn.007065a0
mov qword [r12 + 0x1b8], rax
call fcn.007065a0
mov esi, dword [r12 + 0x300]
mov qword [r12 + 0x1c0], rax
test sil, 1
jne 0x6fe938
test sil, 2
jne 0x6fe98e
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov rax, qword [rax]
mov rcx, qword [rax + 0xb8]
test rcx, rcx
je 0x6fee78
call fcn.007079a0
test eax, eax
jne 0x6fee78
and esi, 4
jne 0x6feb40
mov rax, qword [r12 + 0x280]
test rax, rax
je 0x6fe610
mov ecx, dword [r12 + 0xc4]
test ecx, ecx
je 0x6fe610
test byte [rsp + 0x3c], 2
jne 0x6fe610
test byte [r12 + 0x20], 4
je 0x6fee00
mov rcx, r12
call rax
or dword [rsp + 0x3c], 2
mov rax, qword [r12 + 0x18]
lea r13, [r12 + 0x310]
mov rax, qword [rax]
mov rax, qword [rax]
mov rcx, qword [rax + 0xd0]
call fcn.007079a0
test eax, eax
jne 0x6fe9b8
mov rcx, qword [r12 + 0x320]
call fcn.00745380
mov qword [r12 + 0x310], 0
mov qword [r12 + 0x318], 0
mov qword [r13 + 0x10], 0
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov rax, qword [rax]
mov rcx, qword [rax + 0xb8]
mov r8, qword [rax + 0xc0]
mov rdx, rcx
call fcn.00707ec0
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov rax, qword [rax]
mov rcx, qword [rax + 0xc8]
mov r8, qword [rax + 0xd0]
mov rdx, rcx
call fcn.00707ec0
mov rax, qword [r12 + 0x18]
mov rcx, qword [r12 + 0x1b8]
mov rax, qword [rax]
mov rdx, rcx
mov rax, qword [rax]
mov r8, qword [rax + 0xb8]
call fcn.00707ec0
mov rax, qword [r12 + 0x18]
mov rcx, qword [r12 + 0x1c0]
mov rax, qword [rax]
mov rdx, rcx
mov rax, qword [rax]
mov r8, qword [rax + 0xc8]
call fcn.00707ec0
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov rcx, qword [rax]
call fcn.006f5840
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov rcx, qword [rax]
call fcn.006f5980
test byte [r12 + 0x20], 1
je 0x6feb60
mov rax, qword [r12 + 0x18]
mov rcx, qword [rax]
mov r13, qword [rcx]
mov eax, dword [r13]
cmp eax, 0x13
ja 0x6feef7
mov edx, eax
mov edx, dword [r12 + rdx*4 + 0x74]
cmp edx, 1
je 0x6fea80
cmp edx, 3
je 0x6fea58
mov edx, dword [r12 + 0xcc]
test edx, edx
je 0x6fe78f
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov rcx, qword [rax]
call fcn.006f53b0
mov rcx, r12
call fcn.006f81f0
test eax, eax
js 0x6fee84
mov rcx, r12
call fcn.006f5590
test eax, eax
js 0x6fee84
mov dword [r12 + 0xcc], 0
mov eax, dword [r12 + 0x300]
test al, 8
jne 0x6feb80
test al, 0x10
jne 0x6febaa
test al, 0x20
jne 0x6febd4
test al, 0x40
jne 0x6febfe
lea rcx, str.HWLOC_DEBUG_SORT_CHILDREN
call sub.msvcrt.dll_getenv
test rax, rax
je 0x6fe7d8
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov rcx, qword [rax]
call fcn.006f5ff0
mov rax, qword [r12 + 0x18]
mov rcx, r12
mov rax, qword [rax]
mov rdx, qword [rax]
call fcn.006f9570
mov rax, qword [r12 + 0x18]
mov rcx, r12
mov rdx, qword [rax]
call fcn.006f9710
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov r14, qword [rax]
test r14, r14
je 0x6fef3d
mov rcx, qword [r14 + 0xb8]
call fcn.007079a0
test eax, eax
jne 0x6fef13
mov rcx, qword [r14 + 0xc8]
call fcn.007079a0
mov r13d, eax
test eax, eax
jne 0x6feed0
mov eax, dword [r12 + 0xcc]
test eax, eax
je 0x6fe87a
mov rcx, r14
call fcn.006f53b0
mov rcx, r12
call fcn.006f81f0
test eax, eax
js 0x6fee84
mov rcx, r12
call fcn.006f5590
test eax, eax
js 0x6fee84
mov dword [r12 + 0xcc], 0
mov rcx, r12
call fcn.006f87b0
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov rcx, qword [rax]
call fcn.006f5ac0
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov rcx, qword [rax]
call fcn.006f7590
mov rcx, r12
call fcn.006f4de0
mov rax, qword [r12 + 0x2f0]
test rax, rax
je 0x6fe8d8
mov rax, qword [rax]
mov ecx, 4
lea rdi, [0x0095ca2f]
mov rsi, qword [rax]
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
test al, al
jne 0x6fed50
mov rcx, r12
call fcn.00709810
lea rcx, str.HWLOC_DEBUG_CHECK
call sub.msvcrt.dll_getenv
test rax, rax
je 0x6fe8f9
mov rcx, r12
call fcn.006fd1e0
mov rcx, r12
call fcn.007031a0
mov rcx, r12
call fcn.00702bc0
mov dword [r12 + 0xc8], 1
test byte [r12 + 0x300], 0x80
jne 0x6feb10
mov eax, r13d
add rsp, 0x40
pop rsi
pop rdi
pop r12
pop r13
pop r14
ret
mov rsi, qword [r12 + 0x2f0]
test rsi, rsi
je 0x6fede0
cmp dword [rsi + 0x20], 1
je 0x6fe969
mov r8d, 0xcd4
lea rdx, str.topology.c
lea rcx, str.global_backend__phases__HWLOC_DISC_PHASE_GLOBAL
call qword [sym.imp.msvcrt.dll__assert]
mov rcx, rsi
mov dword [rsp + 0x34], 1
lea rdx, [rsp + 0x34]
call qword [rsi + 0x40]
mov esi, dword [r12 + 0x300]
test sil, 2
je 0x6fe5a9
mov rcx, qword [r12 + 0x2f0]
lea rdx, [rsp + 0x34]
mov dword [rsp + 0x34], 2
call fcn.006f6460
mov esi, dword [r12 + 0x300]
jmp 0x6fe5a9
xor r8d, r8d
mov edx, 0xd
mov rcx, r12
call fcn.006fa9e0
mov rsi, rax
mov rax, qword [r12 + 0x18]
mov rax, qword [rax]
mov rax, qword [rax]
mov rcx, qword [rax + 0xb8]
call fcn.007066c0
mov qword [rsi + 0xb8], rax
call fcn.00706540
xor edx, edx
mov qword [rsi + 0xc8], rax
mov rcx, rax
call fcn.00707430
mov rax, qword [rsi + 0x28]
mov r8, rsi
mov rcx, r12
movdqu xmm0, xmmword [r12 + 0x310]
lea r9, [0x006f78c0]
movups xmmword [rax], xmm0
mov rdx, qword [r13 + 0x10]
mov qword [rax + 0x10], rdx
xor edx, edx
mov qword [r12 + 0x310], 0
mov qword [r12 + 0x318], 0
mov qword [r13 + 0x10], 0
call fcn.006fb3d0
jmp 0x6fe664
cmp eax, 0xf
je 0x6fee38
cmp eax, 0x10
jne 0x6fe747
mov rax, qword [r13 + 0x28]
cmp dword [rax], 4
jne 0x6fe747
nop word [rax + rax]
mov r11, qword [r13 + 0x78]
test r11, r11
je 0x6fe747
cmp qword [r11 + 0x58], 0
jne 0x6fe747
mov qword [r11 + 0x48], 0
mov qword [rcx], r11
mov rdx, qword [r13 + 0x90]
test rdx, rdx
je 0x6feabe
lea rcx, [r11 + 0x90]
mov r8, r11
call fcn.006f4d40
mov rdx, qword [r13 + 0xa0]
test rdx, rdx
je 0x6fead9
lea rcx, [r11 + 0xa0]
mov r8, r11
call fcn.006f4d40
mov rdx, qword [r13 + 0xb0]
test rdx, rdx
je 0x6feaf4
lea rcx, [r11 + 0xb0]
mov r8, r11
call fcn.006f4d40
mov rcx, r13
call fcn.006f76b0
mov rcx, r13
call fcn.00745380
jmp 0x6fe747
mov rcx, qword [r12 + 0x2f0]
lea rdx, [rsp + 0x34]
mov dword [rsp + 0x34], pe_nt_image_headers64
call fcn.006f6460
mov eax, r13d
add rsp, 0x40
pop rsi
pop rdi
pop r12
pop r13
pop r14
ret
mov rcx, qword [r12 + 0x2f0]
lea rdx, [rsp + 0x34]
mov dword [rsp + 0x34], 4
call fcn.006f6460
jmp 0x6fe5da
mov rax, qword [r12 + 0x18]
mov rcx, r12
mov rax, qword [rax]
mov rdx, qword [rax]
call fcn.006f57c0
jmp 0x6fe716
mov rcx, qword [r12 + 0x2f0]
lea rdx, [rsp + 0x34]
mov dword [rsp + 0x34], 8
call fcn.006f6460
mov eax, dword [r12 + 0x300]
test al, 0x10
je 0x6fe7a7
mov rcx, qword [r12 + 0x2f0]
lea rdx, [rsp + 0x34]
mov dword [rsp + 0x34], 0x10
call fcn.006f6460
mov eax, dword [r12 + 0x300]
test al, 0x20
je 0x6fe7af
mov rcx, qword [r12 + 0x2f0]
lea rdx, [rsp + 0x34]
mov dword [rsp + 0x34], 0x20
call fcn.006f6460
mov eax, dword [r12 + 0x300]
test al, 0x40
je 0x6fe7b7
mov rcx, qword [r12 + 0x2f0]
lea rdx, [rsp + 0x34]
mov dword [rsp + 0x34], 0x40
call fcn.006f6460
jmp 0x6fe7b7
cmp qword [r12 + 0x2f0], 0
jne 0x6fe506
lea rcx, str.HWLOC_FSROOT
call sub.msvcrt.dll_getenv
test rax, rax
je 0x6fec69
mov qword [rsp + 0x28], 0
xor r9d, r9d
mov edx, 1
mov rcx, r12
mov qword [rsp + 0x20], 0
lea r8, [0x0095d19d]
call fcn.007048a0
cmp qword [r12 + 0x2f0], 0
jne 0x6fe506
lea rcx, [0x0095d1a3]
call sub.msvcrt.dll_getenv
test rax, rax
je 0x6fecb2
mov qword [rsp + 0x28], 0
xor r9d, r9d
mov edx, 1
mov rcx, r12
mov qword [rsp + 0x20], 0
lea r8, [0x0095d1b4]
call fcn.007048a0
cmp qword [r12 + 0x2f0], 0
jne 0x6fe506
lea rcx, [0x0095d1b8]
call sub.msvcrt.dll_getenv
mov r9, rax
test rax, rax
je 0x6fecfb
lea r8, [0x0095ca25]
mov edx, 1
mov rcx, r12
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call fcn.007048a0
cmp qword [r12 + 0x2f0], 0
jne 0x6fe506
lea rcx, [0x0095d1c8]
call sub.msvcrt.dll_getenv
mov r9, rax
test rax, rax
je 0x6fe506
lea r8, [0x0095ca2f]
mov edx, 1
mov rcx, r12
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call fcn.007048a0
jmp 0x6fe506
lea rcx, str.HWLOC_DONT_ADD_VERSION_INFO
call sub.msvcrt.dll_getenv
test rax, rax
jne 0x6fe8d8
mov rax, qword [r12 + 0x18]
lea r9, [0x0095c2a6]
lea r8, [0x0095d318]
mov rax, qword [rax]
mov rcx, qword [rax]
lea rdx, [rcx + 0xe0]
add rcx, 0xd8
call fcn.006f9910
mov rcx, r12
call fcn.0070a7e0
mov r14, rax
test rax, rax
je 0x6fe8d8
mov rax, qword [r12 + 0x18]
mov r9, r14
lea r8, [0x0095d325]
mov rax, qword [rax]
mov rcx, qword [rax]
lea rdx, [rcx + 0xe0]
add rcx, 0xd8
call fcn.006f9910
mov rcx, r14
call fcn.00745380
jmp 0x6fe8d8
mov r8d, 0xcd3
lea rdx, str.topology.c
lea rcx, str.global_backend
call qword [sym.imp.msvcrt.dll__assert]
jmp 0x6fe949
lea rcx, str.HWLOC_THISSYSTEM_ALLOWED_RESOURCES
call sub.msvcrt.dll_getenv
mov rcx, rax
test rax, rax
je 0x6fe610
call sub.msvcrt.dll_atoi
test eax, eax
je 0x6fe610
mov rax, qword [r12 + 0x280]
jmp 0x6fe606
mov rax, qword [r13 + 0x28]
movzx eax, word [rax + 6]
movzx edx, ah
cmp edx, 0x12
ja 0x6fee60
mov r8d, 0x4080e
bt r8, rdx
jb 0x6fe747
nop dword [rax + rax]
and eax, 0xfffffffd
cmp ax, 0xc04
je 0x6fe747
jmp 0x6fea80
call qword [sym.imp.msvcrt.dll__errno]
mov dword [rax], 0x16
mov rcx, r12
mov r13d, 0xffffffff
call fcn.00709810
mov rcx, r12
call fcn.006fcda0
mov rcx, r12
call fcn.006fc390
mov rcx, r12
call fcn.007047f0
jmp 0x6fe924
call qword [sym.imp.msvcrt.dll__errno]
mov r13d, 0xffffffff
mov dword [rax], 0x10
jmp 0x6fe924
mov ecx, 2
call qword [fcn.00745b20]
mov r8d, 0x33
mov edx, 1
lea rcx, str.Topology_does_not_contain_any_NUMA_node__aborting__n
mov r9, rax
call sub.msvcrt.dll_fwrite
jmp 0x6fee84
call qword [sym.imp.msvcrt.dll__errno]
mov dword [rax], 0x16
mov rax, qword [r12 + 0x18]
mov rcx, qword [rax]
mov r13, qword [rcx]
jmp 0x6fea80
mov ecx, 2
call qword [fcn.00745b20]
mov r8d, 0x2c
mov edx, 1
lea rcx, str.Topology_does_not_contain_any_PU__aborting__n
mov r9, rax
call sub.msvcrt.dll_fwrite
jmp 0x6fee84
mov ecx, 2
call qword [fcn.00745b20]
mov r8d, 0x21
mov edx, 1
lea rcx, str.Topology_became_empty__aborting__n
mov r9, rax
call sub.msvcrt.dll_fwrite
jmp 0x6fee84