Function at 0x1400f62c0
Capabilities:
Query environment variable

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xc8
lea r15, str.type
lea rax, [rsp + 0x78]
mov qword [rsp + 0x110], rcx
lea r14, [rsp + 0x90]
mov qword [rsp + 0x118], rdx
mov qword [rdx], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x58], rax
nop dword [rax]
mov rax, qword [rsp + 0x110]
mov r8, qword [rsp + 0x58]
mov rdx, r14
mov rcx, qword [rsp + 0x110]
mov rax, qword [rax + 8]
call qword [rax + 0x20]
test eax, eax
js 0x1400f664e
je 0x1400f677b
mov rcx, qword [rsp + 0x78]
lea rdx, str.diff
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1400f664e
mov qword [rsp + 0x50], 0
xor r12d, r12d
lea rsi, [rsp + 0x88]
lea rbx, [rsp + 0x80]
mov qword [rsp + 0x48], 0
lea rdi, str.obj_depth
lea rbp, str.obj_index
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
nop dword [rax]
mov rax, qword [rsp + 0x98]
mov r8, rsi
mov rdx, rbx
mov rcx, r14
call qword [rax + 0x18]
test eax, eax
js 0x1400f64b0
mov r13, qword [rsp + 0x80]
mov rdx, r15
mov rcx, r13
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1400f63f8
mov r12, qword [rsp + 0x88]
jmp 0x1400f63b8
mov rdx, rdi
mov rcx, r13
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1400f6420
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x28], rax
jmp 0x1400f63b8
mov rdx, rbp
mov rcx, r13
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1400f6448
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x30], rax
jmp 0x1400f63b8
lea rdx, str.obj_attr_type
mov rcx, r13
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1400f6470
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x38], rax
jmp 0x1400f63b8
lea rdx, str.obj_attr_index
mov rcx, r13
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x1400f63b8
lea rdx, str.obj_attr_name
mov rcx, r13
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1400f65a0
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x40], rax
jmp 0x1400f63b8
test r12, r12
je 0x1400f6570
mov rcx, r12
call sub.msvcrt.dll_atoi
test eax, eax
jne 0x1400f6570
cmp qword [rsp + 0x28], 0
sete al
cmp qword [rsp + 0x30], 0
sete dl
or al, dl
jne 0x1400f65c5
cmp qword [rsp + 0x38], 0
je 0x1400f65c5
cmp qword [rsp + 0x48], 0
je 0x1400f6667
cmp qword [rsp + 0x50], 0
je 0x1400f6667
mov rcx, qword [rsp + 0x38]
call sub.msvcrt.dll_atoi
mov esi, eax
cmp eax, 2
jne 0x1400f66b1
cmp qword [rsp + 0x40], 0
jne 0x1400f66b1
mov eax, dword [0x140584930]
test eax, eax
je 0x1400f67cc
mov eax, dword [0x14058492c]
test eax, eax
je 0x1400f6570
mov rax, qword [rsp + 0x98]
mov ecx, 2
mov rbx, qword [rax + 0x48]
call qword [fcn.140119ad0]
lea rdx, str._s:_missing_mandatory_obj_attr_info_name_attribute_n
mov rcx, rax
mov r8, rbx
call fcn.1400edab0
nop dword [rax]
mov rax, qword [rsp + 0x98]
mov rcx, r14
call qword [rax + 0x28]
test eax, eax
js 0x1400f6653
mov rax, qword [rsp + 0x110]
mov rcx, r14
mov rax, qword [rax + 8]
call qword [rax + 0x30]
jmp 0x1400f6318
lea rdx, str.obj_attr_oldvalue
mov rcx, r13
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1400f660b
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x48], rax
jmp 0x1400f63b8
mov ecx, dword [0x140584930]
mov eax, dword [0x14058492c]
test ecx, ecx
je 0x1400f6747
test eax, eax
je 0x1400f6570
mov rax, qword [rsp + 0x98]
mov ecx, 2
mov rbx, qword [rax + 0x48]
call qword [fcn.140119ad0]
lea rdx, str._s:_missing_mandatory_obj_attr_generic_attributes_n
mov rcx, rax
mov r8, rbx
call fcn.1400edab0
jmp 0x1400f6570
lea rdx, str.obj_attr_newvalue
mov rcx, r13
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1400f6630
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x50], rax
jmp 0x1400f63b8
mov r8d, dword [0x140584930]
mov eax, dword [0x14058492c]
test r8d, r8d
je 0x1400f68ab
test eax, eax
jne 0x1400f6872
mov eax, 0xffffffff
add rsp, 0xc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov edx, dword [0x140584930]
mov eax, dword [0x14058492c]
test edx, edx
je 0x1400f6790
test eax, eax
je 0x1400f6570
mov rax, qword [rsp + 0x98]
mov ecx, 2
mov rbx, qword [rax + 0x48]
call qword [fcn.140119ad0]
lea rdx, str._s:_missing_mandatory_obj_attr_value_attributes_n
mov rcx, rax
mov r8, rbx
call fcn.1400edab0
jmp 0x1400f6570
mov ecx, 0x38
call sub.msvcrt.dll_malloc
mov rbx, rax
test rax, rax
je 0x1400f664e
mov dword [rax], 0
mov rcx, qword [rsp + 0x28]
call sub.msvcrt.dll_atoi
mov rcx, qword [rsp + 0x30]
mov dword [rbx + 0x10], eax
call sub.msvcrt.dll_atoi
mov qword [rbx + 0x18], 0
mov dword [rbx + 0x14], eax
mov qword [rbx + 0x20], 0
mov qword [rbx + 0x28], 0
mov qword [rbx + 0x30], 0
mov dword [rbx + 0x18], esi
cmp esi, 1
je 0x1400f6869
cmp esi, 2
je 0x1400f682b
test esi, esi
je 0x1400f6800
cmp qword [rsp + 0x60], 0
je 0x1400f685f
mov rax, qword [rsp + 0x68]
mov qword [rax + 8], rbx
mov qword [rbx + 8], 0
mov qword [rsp + 0x68], rbx
jmp 0x1400f6570
lea rcx, str.HWLOC_XML_VERBOSE
call sub.msvcrt.dll_getenv
mov rcx, rax
mov eax, dword [0x14058492c]
test rcx, rcx
je 0x1400f676c
call sub.msvcrt.dll_atoi
mov dword [0x14058492c], eax
mov dword [0x140584930], 1
jmp 0x1400f65d9
mov rdi, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x60]
mov qword [rdi], rsi
jmp 0x1400f6653
lea rcx, str.HWLOC_XML_VERBOSE
call sub.msvcrt.dll_getenv
mov rcx, rax
mov eax, dword [0x14058492c]
test rcx, rcx
je 0x1400f67b5
call sub.msvcrt.dll_atoi
mov dword [0x14058492c], eax
mov dword [0x140584930], 1
test eax, eax
je 0x1400f6570
jmp 0x1400f6683
lea rcx, str.HWLOC_XML_VERBOSE
call sub.msvcrt.dll_getenv
mov rcx, rax
mov eax, dword [0x14058492c]
test rcx, rcx
je 0x1400f67f1
call sub.msvcrt.dll_atoi
mov dword [0x14058492c], eax
mov dword [0x140584930], 1
jmp 0x1400f653c
mov rcx, qword [rsp + 0x48]
xor r8d, r8d
xor edx, edx
call sub.msvcrt.dll__strtoui64
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
xor edx, edx
mov qword [rbx + 0x28], rax
call sub.msvcrt.dll__strtoui64
mov qword [rbx + 0x30], rax
jmp 0x1400f6720
mov rcx, qword [rsp + 0x40]
mov rsi, qword [sym.imp.msvcrt.dll__strdup_1]
call rsi
mov qword [rbx + 0x20], rax
mov rcx, qword [rsp + 0x48]
call rsi
mov rcx, qword [rsp + 0x50]
mov qword [rbx + 0x28], rax
call rsi
cmp qword [rsp + 0x60], 0
mov qword [rbx + 0x30], rax
jne 0x1400f672c
mov qword [rsp + 0x60], rbx
jmp 0x1400f6735
mov rsi, qword [sym.imp.msvcrt.dll__strdup_1]
jmp 0x1400f683d
mov rax, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x80]
mov ecx, 2
mov rbx, qword [rax + 0x48]
call qword [fcn.140119ad0]
mov r9, rsi
lea rdx, str._s:_ignoring_unknown_diff_attribute__s_n
mov rcx, rax
mov r8, rbx
call fcn.1400edab0
jmp 0x1400f664e
lea rcx, str.HWLOC_XML_VERBOSE
call sub.msvcrt.dll_getenv
mov rcx, rax
mov eax, dword [0x14058492c]
test rcx, rcx
je 0x1400f68d0
call sub.msvcrt.dll_atoi
mov dword [0x14058492c], eax
mov dword [0x140584930], 1
jmp 0x1400f6646