Function at 0x140042920
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
push rbx
push rbp
push rsi
push r13
push r14
sub rsp, 0x60
xor esi, esi
mov r14, r9
cmp byte [0x140285b68], sil
mov ebx, edx
mov r13, rcx
mov qword [rsp + 0x40], rsi
mov ebp, esi
mov qword [rsp + 0x48], rsi
jne 0x140042960
cmp byte [0x140284511], sil
jne 0x140042edd
mov qword [rsp + 0x58], r12
mov rcx, r14
mov r12d, dword [rsp + 0xb0]
and r12d, 0x61
mov qword [rsp + 0x50], r15
call fcn.14005f570
mov r15, rax
test rax, rax
jne 0x1400429d6
lea rax, str.memory_allocation_failed
mov r9d, 0x358
mov qword [rsp + 0x38], rax
lea r8, str.H5F_prefix_open_file
mov rax, qword [0x14027dd20]
lea rdx, str.C:_b_abs_e4nt8ttmb0croothdf5_1686163951797work_srcH5Fint.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14027dc18]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14027dbb8]
mov qword [rsp + 0x20], rax
call fcn.1400603f0
jmp 0x140042ed3
mov qword [rsp + 0x90], rdi
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], sil
jne 0x1400429e5
movsx ecx, byte [r14]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isalpha]
test eax, eax
je 0x140042a10
cmp byte [r14 + 1], 0x3a
jne 0x140042a10
movzx eax, byte [r14 + 2]
cmp al, 0x5c
je 0x140042a7f
cmp al, 0x2f
je 0x140042a7f
movzx eax, byte [r14]
cmp al, 0x5c
je 0x140042a7f
cmp al, 0x2f
je 0x140042a7f
movsx ecx, al
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isalpha]
test eax, eax
je 0x140042af0
cmp byte [r14 + 1], 0x3a
jne 0x140042af0
mov rax, qword [rsp + 0xb8]
mov r8d, r12d
mov r9, qword [0x14027d770]
mov rdx, r14
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.140155330
mov rbp, rax
test rax, rax
jne 0x140042e9f
xor ecx, ecx
call fcn.140060200
lea rdx, [r14 + 2]
mov r8, rdi
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
jmp 0x140042aeb
mov rax, qword [rsp + 0xb8]
mov r8d, r12d
mov r9, qword [0x14027d770]
mov rdx, r14
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.140155330
mov rbp, rax
test rax, rax
jne 0x140042e9f
xor ecx, ecx
call fcn.140060200
lea edx, [rbp + 0x2f]
mov rcx, r14
call sub.VCRUNTIME140.dll_strrchr
lea edx, [rbp + 0x5c]
mov rcx, r14
mov rbx, rax
call sub.VCRUNTIME140.dll_strrchr
cmp rax, rbx
mov r8, rdi
mov rcx, r15
cmova rbx, rax
lea rdx, [rbx + 1]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov ebx, dword [rsp + 0x98]
mov byte [rdi + r15 - 1], sil
test ebx, ebx
jne 0x140042afd
lea rcx, str.HDF5_VDS_PREFIX
jmp 0x140042b0d
cmp ebx, 1
jne 0x140042eec
lea rcx, str.HDF5_EXT_PREFIX
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x140042c45
mov rcx, rax
call fcn.14005f570
mov rdi, rax
mov r14, rax
test rax, rax
jne 0x140042b80
lea rax, str.memory_allocation_failed
mov r9d, 0x394
mov qword [rsp + 0x38], rax
mov rax, qword [0x14027dd20]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14027dc18]
mov qword [rsp + 0x28], rax
lea r8, str.H5F_prefix_open_file
mov rax, qword [0x14027dbb8]
lea rdx, str.C:_b_abs_e4nt8ttmb0croothdf5_1686163951797work_srcH5Fint.c
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.1400603f0
jmp 0x140042eb1
cmp byte [rdi], sil
je 0x140042c34
cmp byte [0x140285b68], sil
jne 0x140042b9f
cmp byte [0x140284511], sil
jne 0x140042c2b
mov edx, 0x3a
mov rcx, rdi
mov rbx, rdi
call sub.VCRUNTIME140.dll_strchr
test rax, rax
jne 0x140042bb9
mov rdi, rsi
jmp 0x140042bc0
lea rdi, [rax + 1]
mov byte [rax], sil
test rbx, rbx
je 0x140042c2b
cmp byte [rbx], sil
je 0x140042c2b
lea r8, [rsp + 0x40]
mov rdx, r15
mov rcx, rbx
call fcn.14003c770
test eax, eax
js 0x140042c72
mov rax, qword [rsp + 0xb8]
mov r8d, r12d
mov r9, qword [0x14027d770]
mov rcx, r13
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x20], rax
call fcn.140155330
mov rcx, qword [rsp + 0x40]
mov rbp, rax
call fcn.14005f600
mov qword [rsp + 0x40], rax
test rbp, rbp
jne 0x140042c34
xor ecx, ecx
call fcn.140060200
xor ecx, ecx
call fcn.140060200
test rdi, rdi
jne 0x140042b80
mov rcx, r14
call fcn.14005f600
test rbp, rbp
jne 0x140042e9f
mov rax, qword [rsp + 0xa0]
test rax, rax
je 0x140042d12
lea r8, [rsp + 0x40]
mov rdx, r15
mov rcx, rax
call fcn.14003c770
test eax, eax
jns 0x140042cca
mov r9d, 0x3bb
jmp 0x140042c80
mov rcx, r14
call fcn.14005f600
mov r9d, 0x39e
lea rax, str.cant_prepend_prefix_to_filename
mov qword [rsp + 0x38], rax
mov rax, qword [0x14027ddb8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14027dbc8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14027dbb8]
mov qword [rsp + 0x20], rax
lea r8, str.H5F_prefix_open_file
xor ecx, ecx
lea rdx, str.C:_b_abs_e4nt8ttmb0croothdf5_1686163951797work_srcH5Fint.c
call fcn.1400603f0
jmp 0x140042ea2
mov rdi, qword [rsp + 0xb8]
mov r8d, r12d
mov r9, qword [0x14027d770]
mov rcx, r13
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x20], rdi
call fcn.140155330
mov rcx, qword [rsp + 0x40]
mov rbp, rax
call fcn.14005f600
mov qword [rsp + 0x40], rax
test rbp, rbp
jne 0x140042e9f
xor ecx, ecx
call fcn.140060200
jmp 0x140042d1a
mov rdi, qword [rsp + 0xb8]
mov rax, qword [r13 + 0x10]
mov rcx, qword [rax + 0x908]
test rcx, rcx
je 0x140042d84
lea r8, [rsp + 0x40]
mov rdx, r15
call fcn.14003c770
test eax, eax
jns 0x140042d46
mov r9d, 0x3d0
jmp 0x140042c80
mov r9, qword [0x14027d770]
mov r8d, r12d
mov rdx, qword [rsp + 0x40]
mov rcx, r13
mov qword [rsp + 0x20], rdi
call fcn.140155330
mov rcx, qword [rsp + 0x40]
mov rbp, rax
call fcn.14005f600
mov qword [rsp + 0x40], rax
test rbp, rbp
jne 0x140042e9f
xor ecx, ecx
call fcn.140060200
mov r9, qword [0x14027d770]
mov r8d, r12d
mov rdx, r15
mov qword [rsp + 0x20], rdi
mov rcx, r13
call fcn.140155330
mov rbp, rax
test rax, rax
jne 0x140042e9f
xor ecx, ecx
call fcn.140060200
mov rcx, qword [r13 + 8]
call fcn.14005f570
mov qword [rsp + 0x48], rax
mov r14, rax
test rax, rax
jne 0x140042e02
mov rcx, qword [0x14027dd28]
lea rax, str.cant_duplicate_resolved_file_name_string
mov qword [rsp + 0x38], rax
mov r9d, 0x3f0
mov qword [rsp + 0x30], rcx
mov rcx, qword [0x14027dbc8]
mov qword [rsp + 0x28], rcx
mov rcx, qword [0x14027dbb8]
mov qword [rsp + 0x20], rcx
jmp 0x140042cb0
mov edx, 0x2f
mov rcx, r14
call sub.VCRUNTIME140.dll_strrchr
mov edx, 0x5c
mov rcx, r14
mov rbx, rax
call sub.VCRUNTIME140.dll_strrchr
cmp rax, rbx
cmova rbx, rax
test rbx, rbx
je 0x140042e2e
mov byte [rbx], sil
test rbx, rbx
lea rcx, [0x1401fd152]
lea r8, [rsp + 0x40]
mov rdx, r15
cmovne rcx, r14
call fcn.14003c770
test eax, eax
jns 0x140042e58
mov r9d, 0x3fa
jmp 0x140042c80
mov rcx, r14
call fcn.14005f600
mov r9, qword [0x14027d770]
mov r8d, r12d
mov rdx, qword [rsp + 0x40]
mov rcx, r13
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x20], rdi
call fcn.140155330
mov rcx, qword [rsp + 0x40]
mov rbp, rax
call fcn.14005f600
mov qword [rsp + 0x40], rax
test rbp, rbp
jne 0x140042e9f
xor ecx, ecx
call fcn.140060200
mov rsi, rbp
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x140042eb1
call fcn.14005f600
mov rcx, r15
call fcn.14005f600
mov rax, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x90]
test rax, rax
je 0x140042ed3
mov rcx, rax
call fcn.14005f600
mov r12, qword [rsp + 0x58]
mov r15, qword [rsp + 0x50]
mov rax, rsi
add rsp, 0x60
pop r14
pop r13
pop rsi
pop rbp
pop rbx
ret
lea rax, str.prefix_type_is_not_sensible
mov r9d, 0x38c
mov qword [rsp + 0x38], rax
mov rax, qword [0x14027e0a8]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14027dbc8]
jmp 0x140042b54