Function at 0x140064110
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x90
xor ebx, ebx
mov byte [rbp + 0xf], 0
cmp byte [0x140211261], bl
mov r15, r9
mov r13, r8
mov byte [rbp + 0xa], 0
mov esi, edx
mov byte [rbp + 8], 0
mov r14, rcx
mov byte [rbp + 9], 0
jne 0x1400641dd
cmp byte [0x140211255], bl
jne 0x140064d89
mov byte [0x140211261], 1
call fcn.140010cb0
test eax, eax
jns 0x1400641c9
lea rax, str.interface_initialization_failed
mov byte [0x140211261], bl
mov qword [rsp + 0x38], rax
lea r8, str.H5F_open
mov rax, qword [0x14020e398]
lea rdx, str.C:_srcosgeo4whdf5_srcH5Fint.c
mov qword [rsp + 0x30], rax
mov r9d, 0x5de
mov rax, qword [0x14020e168]
xor ecx, ecx
mov qword [rsp + 0x28], rax
mov rax, qword [0x14020e0d8]
mov qword [rsp + 0x20], rax
call fcn.140060100
jmp 0x140064d89
cmp byte [0x140211261], bl
jne 0x1400641dd
cmp byte [0x140211255], bl
jne 0x140064d89
mov rcx, r15
mov qword [rsp + 0xd0], r12
call fcn.140057160
mov r12, rax
test rax, rax
jne 0x140064245
lea rax, str.unable_to_retrieve_VFL_class
mov r9d, 0x5e9
mov qword [rsp + 0x38], rax
lea r8, str.H5F_open
mov rax, qword [0x14020e360]
lea rdx, str.C:_srcosgeo4whdf5_srcH5Fint.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14020e100]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14020e0d8]
mov qword [rsp + 0x20], rax
call fcn.140060100
jmp 0x140064d81
lea rcx, str.HDF5_USE_FILE_LOCKING
mov qword [rsp + 0xc8], rdi
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x140064289
xor edx, edx
lea r8, str.FALSE
nop dword [rax + rax]
movzx ecx, byte [rax + rdx]
inc rdx
cmp cl, byte [r8 + rdx - 1]
jne 0x140064289
cmp rdx, 6
jne 0x140064270
mov byte [rbp + 7], bl
jmp 0x14006428d
mov byte [rbp + 7], 1
mov edi, esi
cmp qword [r12 + 0x80], rbx
je 0x14006429c
and edi, 0xffffffe9
or r9, 0xffffffffffffffff
mov r8, r15
mov edx, edi
mov rcx, r14
call fcn.1400577a0
mov rbx, rax
test rax, rax
jne 0x140064375
xor ecx, ecx
cmp edi, esi
jne 0x1400642df
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
lea rcx, [rbp + 0xf]
mov qword [rbp + 0xf], rax
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__ctime64]
mov r9d, 0x60a
mov dword [rsp + 0x50], edi
jmp 0x14006431f
call fcn.14005fda0
or r9, 0xffffffffffffffff
mov r8, r15
mov edx, esi
mov rcx, r14
mov edi, esi
call fcn.1400577a0
mov rbx, rax
test rax, rax
jne 0x140064375
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
lea rcx, [rbp + 0xf]
mov qword [rbp + 0xf], rax
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__ctime64]
mov r9d, 0x615
mov dword [rsp + 0x50], esi
mov qword [rsp + 0x48], r14
lea r8, str.H5F_open
mov qword [rsp + 0x40], rax
lea rdx, str.C:_srcosgeo4whdf5_srcH5Fint.c
lea rax, str.unable_to_open_file:_time___s__name___s__tent_flags___x
xor ecx, ecx
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14020e100]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14020e0d8]
mov qword [rsp + 0x20], rax
call fcn.140060100
xor ebx, ebx
jmp 0x140064d79
mov rcx, rbx
call fcn.1400661b0
mov r14, rax
test rax, rax
je 0x1400644c7
mov rcx, rbx
call fcn.140056b30
test eax, eax
jns 0x1400643b3
lea rax, str.unable_to_close_low_level_file_info
mov r9d, 0x629
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
test sil, 2
je 0x1400643d7
lea rax, str.unable_to_truncate_a_file_which_is_already_open
mov r9d, 0x62b
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
test sil, 4
je 0x1400643fb
lea rax, str.file_exists
mov r9d, 0x62d
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
test sil, 1
je 0x14006442a
mov eax, dword [r14 + 0x20]
and eax, 1
test al, al
jne 0x14006442a
lea rax, str.file_is_already_open_for_read_only
mov r9d, 0x62f
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
test sil, 0x20
je 0x140064459
mov eax, dword [r14 + 0x20]
and eax, 0x20
test al, al
jne 0x140064459
lea rax, str.SWMR_write_access_flag_not_the_same_for_file_that_is_already_open
mov r9d, 0x632
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
test sil, 0x40
je 0x140064484
test byte [r14 + 0x20], 0x61
jne 0x140064484
lea rax, str.SWMR_read_access_flag_not_the_same_for_file_that_is_already_open
mov r9d, 0x634
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
mov r9, r15
mov qword [rsp + 0x20], 0
mov r8, r13
mov edx, esi
mov rcx, r14
call fcn.140061fc0
mov rdi, rax
test rax, rax
jne 0x14006466c
lea rax, str.unable_to_create_new_file_object
mov r9d, 0x638
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
cmp esi, edi
je 0x14006452d
mov rcx, rbx
call fcn.140056b30
test eax, eax
jns 0x1400644f5
lea rax, str.unable_to_close_low_level_file_info
mov r9d, 0x643
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
mov rcx, qword [rbp + 0x67]
or r9, 0xffffffffffffffff
mov r8, r15
mov edx, esi
call fcn.1400577a0
mov rbx, rax
test rax, rax
jne 0x14006452d
lea rax, str.unable_to_open_file
mov r9d, 0x646
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
cmp byte [rbp + 7], 0
je 0x1400645bf
movzx edx, sil
mov rcx, rbx
and dl, 1
call fcn.140057690
test eax, eax
jns 0x1400645bf
mov rcx, rbx
call fcn.140056b30
test eax, eax
jns 0x1400645a1
lea rax, str.unable_to_close_low_level_file_info
mov r9d, 0x64e
mov qword [rsp + 0x38], rax
lea r8, str.H5F_open
mov rax, qword [0x14020e248]
lea rdx, str.C:_srcosgeo4whdf5_srcH5Fint.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14020e100]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14020e0d8]
mov qword [rsp + 0x20], rax
call fcn.140060100
lea rax, str.unable_to_lock_the_file
mov r9d, 0x64f
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
mov r9, r15
mov qword [rsp + 0x20], rbx
mov r8, r13
mov edx, esi
xor ecx, ecx
call fcn.140061fc0
mov rdi, rax
test rax, rax
jne 0x140064650
mov rcx, rbx
call fcn.140056b30
test eax, eax
jns 0x140064632
lea rax, str.unable_to_close_low_level_file_info
mov r9d, 0x659
mov qword [rsp + 0x38], rax
lea r8, str.H5F_open
mov rax, qword [0x14020e248]
lea rdx, str.C:_srcosgeo4whdf5_srcH5Fint.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14020e100]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14020e0d8]
mov qword [rsp + 0x20], rax
call fcn.140060100
lea rax, str.unable_to_initialize_file_structure
mov r9d, 0x65a
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
jmp 0x140064d40
mov eax, dword [rbp + 0xf]
mov ebx, 1
cmp qword [r12 + 0xe8], 0
movzx eax, al
cmovne eax, ebx
mov dword [rbp + 0xf], eax
jmp 0x140064671
mov ebx, 1
lea r8, [rbp + 9]
mov rcx, rdi
lea rdx, [rbp + 8]
call fcn.1401286a0
test eax, eax
jns 0x1400646a3
lea rax, str.cant_get_MDC_cache_image_status
mov r9d, 0x664
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e360]
jmp 0x140064ce5
cmp byte [rbp + 8], 0
jne 0x1400646af
cmp byte [rbp + 9], 0
je 0x1400646d3
test sil, 0x60
je 0x1400646d3
lea rax, str.cant_have_both_SWMR_and_cache_image
mov r9d, 0x666
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e510]
jmp 0x140064ce5
mov r12, qword [rbp + 0x67]
mov rcx, r12
call fcn.140060c40
mov r14, qword [rdi + 0x18]
mov rcx, r15
mov qword [rdi], rax
mov r13, qword [r14]
call fcn.14005cf10
mov r15, rax
test rax, rax
jne 0x140064723
lea rax, str.not_file_access_property_list
mov r9d, 0x671
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e518]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14020e1b8]
jmp 0x140064cf1
lea r8, [rbp + 0x27]
mov rcx, r15
lea rdx, str.page_buffer_size
call fcn.140039ce0
test eax, eax
jns 0x140064758
lea rax, str.cant_get_page_buffer_size
mov r9d, 0x675
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e360]
jmp 0x140064ce5
cmp qword [rbp + 0x27], 0
je 0x1400647c9
lea r8, [rbp + 0x1b]
mov rcx, r15
lea rdx, str.page_buffer_min_meta_perc
call fcn.140039ce0
test eax, eax
jns 0x140064794
lea rax, str.cant_get_minimum_metadata_fraction_of_page_buffer
mov r9d, 0x681
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e360]
jmp 0x140064ce5
lea r8, [rbp + 0x17]
mov rcx, r15
lea rdx, str.page_buffer_min_raw_perc
call fcn.140039ce0
test eax, eax
jns 0x1400647c9
lea rax, str.cant_get_minimum_raw_data_fraction_of_page_buffer
mov r9d, 0x683
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e360]
jmp 0x140064ce5
mov edx, ebx
mov rcx, r13
call fcn.14006b900
mov edx, 1
mov rcx, r13
mov rbx, rax
call fcn.14006b7f0
mov edx, 1
mov rcx, r13
cmp rbx, rax
jbe 0x1400647f7
call fcn.14006b900
jmp 0x1400647fc
call fcn.14006b7f0
test rax, rax
jne 0x1400648a4
test sil, 1
je 0x1400648a4
mov rdx, qword [rbp + 0x27]
test rdx, rdx
je 0x14006484a
mov r9d, dword [rbp + 0x17]
mov rcx, rdi
mov r8d, dword [rbp + 0x1b]
call fcn.14006ca00
test eax, eax
jns 0x14006484a
lea rax, str.unable_to_create_page_buffer
mov r9d, 0x693
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e398]
jmp 0x140064ce5
mov rcx, rdi
call fcn.140141fc0
test eax, eax
jns 0x140064874
lea rax, str.unable_to_allocate_file_superblock
mov r9d, 0x698
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e398]
jmp 0x140064ce5
mov dl, 1
mov rcx, rdi
call fcn.140105270
test eax, eax
jns 0x14006493a
lea rax, str.unable_to_create_open_root_group
mov r9d, 0x69f
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e398]
jmp 0x140064ce5
cmp dword [r14 + 0x1c], 1
jne 0x14006493a
mov r8b, 1
mov rdx, r15
mov rcx, rdi
call fcn.140142cb0
test eax, eax
jns 0x1400648df
lea rax, str.unable_to_read_superblock
mov r9d, 0x6a4
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e208]
jmp 0x140064ce5
mov rdx, qword [rbp + 0x27]
test rdx, rdx
je 0x14006491a
mov r9d, dword [rbp + 0x17]
mov rcx, rdi
mov r8d, dword [rbp + 0x1b]
call fcn.14006ca00
test eax, eax
jns 0x14006491a
lea rax, str.unable_to_create_page_buffer
mov r9d, 0x6a9
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e398]
jmp 0x140064ce5
xor edx, edx
mov rcx, rdi
call fcn.140105270
test eax, eax
jns 0x14006493a
lea rax, str.unable_to_read_root_group
mov r9d, 0x6ad
jmp 0x140064cd9
lea r8, [rbp + 0x1f]
mov rcx, r15
lea rdx, str.close_degree
call fcn.140039ce0
test eax, eax
jns 0x14006497b
lea rax, str.cant_get_file_close_degree
mov r9d, 0x6b7
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e360]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14020e1a8]
jmp 0x140064cf1
lea rdx, str.clear_status_flags
mov rcx, r15
call fcn.140039b30
test eax, eax
jle 0x1400649e4
lea r8, [rbp + 0xa]
mov rcx, r15
lea rdx, str.clear_status_flags
call fcn.140039ce0
test eax, eax
jns 0x1400649cf
lea rax, str.cant_get_clearance_for_status_flags
mov r9d, 0x6bd
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e360]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14020e1a8]
jmp 0x140064cf1
cmp byte [rbp + 0xa], 0
je 0x1400649e4
mov rax, qword [rdi + 0x18]
mov rcx, qword [rax + 8]
mov byte [rcx + 0x106], 0
mov eax, dword [r14 + 0x1c]
cmp eax, 1
jne 0x140064a50
mov eax, dword [rbp + 0x1f]
test eax, eax
jne 0x140064a47
mov rax, qword [r13 + 8]
mov ecx, dword [rax + 0x10]
mov dword [r14 + 0x550], ecx
lea r8, [rbp + 0xb]
mov rcx, r15
lea rdx, str.evict_on_close_flag
call fcn.140039ce0
test eax, eax
jns 0x140064ab2
lea rax, str.cant_get_evict_on_close_value
mov r9d, 0x6d5
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e360]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14020e1a8]
jmp 0x140064cf1
mov dword [r14 + 0x550], eax
jmp 0x140064a02
jbe 0x140064a02
mov eax, dword [rbp + 0x1f]
test eax, eax
jne 0x140064a87
mov rax, qword [r13 + 8]
mov ecx, dword [rax + 0x10]
cmp dword [r14 + 0x550], ecx
je 0x140064a02
lea rax, str.file_close_degree_doesnt_match
mov r9d, 0x6ca
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e398]
jmp 0x140064ce5
cmp eax, dword [r14 + 0x550]
je 0x140064a02
lea rax, str.file_close_degree_doesnt_match
mov r9d, 0x6cc
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e398]
jmp 0x140064ce5
mov eax, dword [r14 + 0x1c]
cmp eax, 1
jne 0x140064af4
movzx eax, byte [rbp + 0xb]
mov byte [r14 + 0x554], al
lea rdx, [rdi + 0x10]
mov rcx, r12
call fcn.140012840
test eax, eax
jns 0x140064b21
lea rax, str.unable_to_build_extpath
mov r9d, 0x6df
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e398]
jmp 0x140064ce5
jbe 0x140064ac6
movzx eax, byte [rbp + 0xb]
cmp byte [r14 + 0x554], al
je 0x140064ac6
lea rax, str.file_evict_on_close_value_doesnt_match
mov r9d, 0x6da
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e528]
jmp 0x140064ce5
lea r9, [rdi + 8]
mov r8, r12
mov rdx, r15
mov rcx, rdi
call fcn.140063200
test eax, eax
jns 0x140064b55
lea rax, str.unable_to_build_actual_name
mov r9d, 0x6e3
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e398]
jmp 0x140064ce5
cmp byte [rbp + 0xf], 0
je 0x140064d76
mov rax, qword [rdi + 0x18]
mov ecx, dword [rax + 0x20]
mov rax, qword [rax + 8]
test cl, 1
je 0x140064c7c
cmp dword [rax + 0x100], 3
jb 0x140064b97
test byte [rax + 0x106], 5
je 0x140064b97
lea rax, str.file_is_already_open_for_write_SWMR_write__may_use__h5clear_file__to_clear_file_consistency_flags_
mov r9d, 0x6ec
jmp 0x140064cd9
or byte [rax + 0x106], 1
mov rax, qword [rdi + 0x18]
test byte [rax + 0x20], 0x20
je 0x140064bb3
mov rax, qword [rax + 8]
or byte [rax + 0x106], 4
mov rcx, rdi
call fcn.1401443a0
test eax, eax
jns 0x140064bdd
lea rax, str.unable_to_mark_superblock_as_dirty
mov r9d, 0x6f5
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e5a0]
jmp 0x140064ce5
mov edx, 3
mov rcx, rdi
call fcn.14012ad80
test eax, eax
jns 0x140064c0c
lea rax, str.unable_to_flush_superblock
mov r9d, 0x6f7
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e538]
jmp 0x140064ce5
mov rax, qword [rdi + 0x18]
mov rcx, rdi
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 0x120]
call fcn.14012ad80
test eax, eax
jns 0x140064c45
lea rax, str.unable_to_flush_superblock_extension
mov r9d, 0x6f9
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e538]
jmp 0x140064ce5
cmp byte [rbp + 7], 0
je 0x140064d76
mov rcx, qword [rdi + 0x18]
test byte [rcx + 0x20], 0x20
je 0x140064d76
mov rcx, qword [rcx]
call fcn.1400583b0
test eax, eax
jns 0x140064d76
lea rax, str.unable_to_unlock_the_file
mov r9d, 0x6fe
jmp 0x140064cd9
cmp dword [rax + 0x100], 3
jb 0x140064d76
test cl, 0x40
je 0x140064cbf
movzx ecx, byte [rax + 0x106]
movzx eax, cl
and al, 5
cmp al, 1
je 0x140064cb0
test cl, 1
jne 0x140064d76
test cl, 4
je 0x140064d76
lea rax, str.file_is_not_already_open_for_SWMR_writing
mov r9d, 0x70a
jmp 0x140064cd9
test byte [rax + 0x106], 5
je 0x140064d76
lea rax, str.file_is_already_open_for_write__may_use__h5clear_file__to_clear_file_consistency_flags_
mov r9d, 0x70e
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e248]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14020e100]
mov qword [rsp + 0x28], rax
lea r8, str.H5F_open
mov rax, qword [0x14020e0d8]
lea rdx, str.C:_srcosgeo4whdf5_srcH5Fint.c
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.140060100
xor edx, edx
mov rcx, rdi
xor ebx, ebx
call fcn.140061080
test eax, eax
jns 0x140064d79
lea rax, str.problems_closing_file
mov r9d, 0x719
mov qword [rsp + 0x38], rax
mov rax, qword [0x14020e250]
mov qword [rsp + 0x30], rax
lea r8, str.H5F_open
mov rax, qword [0x14020e100]
lea rdx, str.C:_srcosgeo4whdf5_srcH5Fint.c
mov qword [rsp + 0x28], rax
xor ecx, ecx
mov rax, qword [0x14020e0d8]
mov qword [rsp + 0x20], rax
call fcn.140060100
xor ebx, ebx
jmp 0x140064d79
mov rbx, rdi
mov rdi, qword [rsp + 0xc8]
mov r12, qword [rsp + 0xd0]
mov rax, rbx
mov rbx, qword [rsp + 0xd8]
add rsp, 0x90
pop r15
pop r14
pop r13
pop rsi
pop rbp
ret