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

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov edx, dword [rcx + 0xb8]
mov rbx, rcx
test edx, edx
jne 0x69f180
call fcn.006a1740
lea rcx, str.HWLOC_XML_USERDATA_NOT_DECODED
call sub.msvcrt.dll_getenv
test rax, rax
je 0x69ea29
mov dword [rbx + 0x280], 1
lea rcx, [0x00aec86f]
call sub.msvcrt.dll_getenv
test rax, rax
je 0x69ef10
mov rcx, rbx
call fcn.006a3290
mov rcx, rbx
call fcn.006a3610
mov rcx, rbx
call fcn.006a3740
mov rcx, rbx
call fcn.006a4e80
mov rcx, rbx
call fcn.006a8150
mov dword [rbx + 0xbc], 0
call fcn.006a5330
mov qword [rbx + 0x188], rax
call fcn.006a5330
mov rsi, qword [rbx + 0x2c0]
mov qword [rbx + 0x190], rax
test rsi, rsi
je 0x69eab8
mov rax, qword [rsi]
mov eax, dword [rax]
sub eax, 1
cmp eax, 1
ja 0x69eaaf
mov rax, qword [rsi + 0x38]
test rax, rax
je 0x69eaaf
mov rcx, rsi
call rax
mov rsi, qword [rsi + 0x18]
test rsi, rsi
jne 0x69ea94
mov rax, qword [rbx + 0x18]
mov rax, qword [rax]
mov rsi, qword [rax]
mov rcx, qword [rsi + 0xb8]
test rcx, rcx
je 0x69f142
call fcn.006a64f0
test eax, eax
jne 0x69f142
cmp qword [rbx + 0x250], 0
je 0x69eaf7
mov eax, dword [rbx + 0xb4]
test eax, eax
jne 0x69ee05
mov rcx, qword [rsi + 0xd0]
lea rsi, [rbx + 0x2e0]
call fcn.006a64f0
test eax, eax
jne 0x69ed71
mov rcx, qword [rbx + 0x2f0]
call fcn.00701710
mov qword [rbx + 0x2e0], 0
mov qword [rbx + 0x2e8], 0
mov qword [rsi + 0x10], 0
mov rax, qword [rbx + 0x18]
mov rax, qword [rax]
mov rax, qword [rax]
mov rcx, qword [rax + 0xb8]
mov r8, qword [rax + 0xc0]
mov rdx, rcx
call fcn.006a6a40
mov rax, qword [rbx + 0x18]
mov rax, qword [rax]
mov rax, qword [rax]
mov rcx, qword [rax + 0xc8]
mov r8, qword [rax + 0xd0]
mov rdx, rcx
call fcn.006a6a40
mov rax, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x188]
mov rax, qword [rax]
mov rdx, rcx
mov rax, qword [rax]
mov r8, qword [rax + 0xb8]
call fcn.006a6a40
mov rax, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x190]
mov rax, qword [rax]
mov rdx, rcx
mov rax, qword [rax]
mov r8, qword [rax + 0xc8]
call fcn.006a6a40
mov rax, qword [rbx + 0x18]
mov rax, qword [rax]
mov rcx, qword [rax]
call fcn.00697530
mov rax, qword [rbx + 0x18]
mov rax, qword [rax]
mov rcx, qword [rax]
call fcn.00697280
test byte [rbx + 0x20], 1
je 0x69eef0
mov rax, qword [rbx + 0x18]
mov rcx, qword [rax]
mov rsi, qword [rcx]
mov eax, dword [rsi]
cmp eax, 0x11
ja 0x69ee42
mov edx, eax
mov edx, dword [rbx + rdx*4 + 0x6c]
cmp edx, 1
je 0x69ee60
cmp edx, 3
je 0x69f061
xor edx, edx
mov rcx, rbx
call fcn.0069c850
test eax, eax
js 0x69f14e
mov rsi, qword [rbx + 0x2c0]
test rsi, rsi
je 0x69ec54
nop
mov rax, qword [rsi]
mov eax, dword [rax]
sub eax, 1
cmp eax, 1
jbe 0x69ec4b
mov rax, qword [rsi + 0x38]
test rax, rax
je 0x69ec4b
mov rcx, rsi
call rax
mov rsi, qword [rsi + 0x18]
test rsi, rsi
jne 0x69ec30
mov rcx, rbx
call fcn.006a8570
mov rax, qword [rbx + 0x18]
mov rcx, rbx
mov rax, qword [rax]
mov rdx, qword [rax]
call fcn.00699e40
mov rax, qword [rbx + 0x18]
mov rcx, rbx
mov rdx, qword [rax]
call fcn.00699e80
mov rax, qword [rbx + 0x18]
mov rax, qword [rax]
mov rsi, qword [rax]
test rsi, rsi
je 0x69f1f1
mov rcx, qword [rsi + 0xb8]
call fcn.006a64f0
test eax, eax
jne 0x69f1c7
mov rcx, qword [rsi + 0xc8]
call fcn.006a64f0
mov ebp, eax
test eax, eax
jne 0x69f1a0
xor edx, edx
mov rcx, rbx
call fcn.0069c850
test eax, eax
js 0x69f14e
mov rcx, rbx
call fcn.00699fa0
mov rax, qword [rbx + 0x18]
mov rax, qword [rax]
mov rcx, qword [rax]
call fcn.00697bf0
mov rax, qword [rbx + 0x18]
mov rcx, rbx
mov rax, qword [rax]
mov rdx, qword [rax]
call fcn.006973e0
mov rcx, rbx
call fcn.00696950
mov rax, qword [rbx + 0x2c0]
test rax, rax
je 0x69ed2b
mov rax, qword [rax]
mov ecx, 4
lea rdi, [0x00aec18e]
mov rsi, qword [rax + 8]
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
test al, al
jne 0x69f085
mov rcx, rbx
call fcn.006a8250
lea rcx, str.HWLOC_DEBUG_CHECK
call sub.msvcrt.dll_getenv
test rax, rax
je 0x69ed4c
mov rcx, rbx
call fcn.0069d970
mov rcx, rbx
call fcn.006a24d0
mov rcx, rbx
call fcn.006a2160
mov dword [rbx + 0xb8], 1
mov eax, ebp
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
ret
xor r8d, r8d
mov edx, 0xd
mov rcx, rbx
call fcn.0069b480
mov rbp, rax
mov rax, qword [rbx + 0x18]
mov rax, qword [rax]
mov rax, qword [rax]
mov rcx, qword [rax + 0xb8]
call fcn.006a5440
mov qword [rbp + 0xb8], rax
call fcn.006a52d0
xor edx, edx
mov qword [rbp + 0xc8], rax
mov rcx, rax
call fcn.006a6000
mov rax, qword [rbp + 0x28]
mov r8, rbp
mov rcx, rbx
movdqu xmm0, xmmword [rbx + 0x2e0]
lea r9, [0x006993e0]
movups xmmword [rax], xmm0
mov rdx, qword [rsi + 0x10]
mov qword [rax + 0x10], rdx
xor edx, edx
mov qword [rbx + 0x2e0], 0
mov qword [rbx + 0x2e8], 0
mov qword [rsi + 0x10], 0
call fcn.0069bda0
jmp 0x69eb3c
lea rcx, str.HWLOC_THISSYSTEM_ALLOWED_RESOURCES
call sub.msvcrt.dll_getenv
test rax, rax
je 0x69f100
mov rcx, rax
call sub.msvcrt.dll_atoi
test eax, eax
je 0x69f100
mov rcx, rbx
call qword [rbx + 0x250]
mov rax, qword [rbx + 0x18]
mov rax, qword [rax]
mov rsi, qword [rax]
jmp 0x69eaf7
call qword [sym.imp.msvcrt.dll__errno]
mov dword [rax], 0x16
mov rax, qword [rbx + 0x18]
mov rcx, qword [rax]
mov rsi, qword [rcx]
nop dword [rax + rax]
mov rdi, qword [rsi + 0x78]
test rdi, rdi
je 0x69ec11
cmp qword [rdi + 0x58], 0
jne 0x69ec11
mov qword [rdi + 0x48], 0
mov qword [rcx], rdi
mov rdx, qword [rsi + 0x90]
test rdx, rdx
je 0x69ee9e
lea rcx, [rdi + 0x90]
mov r8, rdi
call fcn.006968c0
mov rdx, qword [rsi + 0xa0]
test rdx, rdx
je 0x69eeb9
lea rcx, [rdi + 0xa0]
mov r8, rdi
call fcn.006968c0
mov rdx, qword [rsi + 0xb0]
test rdx, rdx
je 0x69eed4
lea rcx, [rdi + 0xb0]
mov r8, rdi
call fcn.006968c0
mov rcx, rsi
call fcn.00699610
mov rcx, rsi
call fcn.00701710
jmp 0x69ec11
mov rax, qword [rbx + 0x18]
mov rcx, rbx
mov rax, qword [rax]
mov rdx, qword [rax]
call fcn.00697360
jmp 0x69ebe4
cmp qword [rbx + 0x2c0], 0
jne 0x69ea3e
lea rcx, str.HWLOC_FSROOT
call sub.msvcrt.dll_getenv
test rax, rax
je 0x69ef64
lea r9, str.linux
mov r8d, 1
mov edx, 1
mov rcx, rbx
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call fcn.006a3870
cmp qword [rbx + 0x2c0], 0
jne 0x69ea3e
lea rcx, [0x00aec893]
call sub.msvcrt.dll_getenv
test rax, rax
je 0x69efb8
lea r9, [0x00aec8a4]
mov r8d, 1
mov edx, 1
mov rcx, rbx
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call fcn.006a3870
cmp qword [rbx + 0x2c0], 0
jne 0x69ea3e
lea rcx, [0x00aec8a8]
call sub.msvcrt.dll_getenv
test rax, rax
je 0x69f008
mov qword [rsp + 0x20], rax
mov r8d, 0xffffffff
mov edx, 1
mov rcx, rbx
mov qword [rsp + 0x30], 0
lea r9, [0x00aec184]
mov qword [rsp + 0x28], 0
call fcn.006a3870
cmp qword [rbx + 0x2c0], 0
jne 0x69ea3e
lea rcx, [0x00aec8b8]
call sub.msvcrt.dll_getenv
test rax, rax
je 0x69ea3e
mov qword [rsp + 0x20], rax
mov r8d, 0xffffffff
mov edx, 1
mov rcx, rbx
mov qword [rsp + 0x30], 0
lea r9, [0x00aec18e]
mov qword [rsp + 0x28], 0
call fcn.006a3870
jmp 0x69ea3e
cmp eax, 0xf
je 0x69f110
cmp eax, 0x10
jne 0x69ec11
mov rax, qword [rsi + 0x28]
cmp dword [rax], 4
je 0x69ee60
jmp 0x69ec11
mov rax, qword [rbx + 0x18]
lea r9, [0x00aebc8e]
lea r8, [0x00aec97c]
mov rax, qword [rax]
mov rcx, qword [rax]
lea rdx, [rcx + 0xe0]
add rcx, 0xd8
call fcn.0069a8a0
mov rcx, rbx
call fcn.006a9080
mov rsi, rax
test rax, rax
je 0x69ed2b
mov rax, qword [rbx + 0x18]
mov r9, rsi
lea r8, [0x00aec989]
mov rax, qword [rax]
mov rcx, qword [rax]
lea rdx, [rcx + 0xe0]
add rcx, 0xd8
call fcn.0069a8a0
mov rcx, rsi
call fcn.00701710
jmp 0x69ed2b
test byte [rbx + 0x20], 4
jne 0x69ee2a
jmp 0x69ee33
mov rax, qword [rsi + 0x28]
movzx eax, word [rax + 6]
movzx edx, ah
cmp edx, 0x12
ja 0x69f130
mov r8d, 0x4080e
bt r8, rdx
jb 0x69ec11
and eax, 0xfffffffd
cmp ax, 0xc04
je 0x69ec11
jmp 0x69ee60
call qword [sym.imp.msvcrt.dll__errno]
mov dword [rax], 0x16
mov rcx, rbx
mov ebp, 0xffffffff
call fcn.006a8250
mov rcx, rbx
call fcn.0069d760
mov rcx, rbx
call fcn.0069cfe0
mov rcx, rbx
call fcn.006a3780
jmp 0x69ed66
call qword [sym.imp.msvcrt.dll__errno]
mov ebp, 0xffffffff
mov dword [rax], 0x10
jmp 0x69ed66
mov ecx, 2
call qword [fcn.00701940]
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 0x69f14e
mov ecx, 2
call qword [fcn.00701940]
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 0x69f14e
mov ecx, 2
call qword [fcn.00701940]
mov r8d, 0x21
mov edx, 1
lea rcx, str.Topology_became_empty__aborting__n
mov r9, rax
call sub.msvcrt.dll_fwrite
jmp 0x69f14e