Function at 0x1400d84c0
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r13
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x90
xor ebx, ebx
mov byte [rbp + 0xf], 0
cmp byte [0x14022ea53], bl
mov r15, r9
mov r13, r8
mov byte [rbp + 0xa], 0
mov esi, edx
mov byte [rbp + 8], 0
mov rdi, rcx
mov byte [rbp + 9], 0
jne 0x1400d858c
cmp byte [0x14022ea5d], bl
jne 0x1400d915e
mov byte [0x14022ea53], 1
call fcn.140017f80
test eax, eax
jns 0x1400d8578
lea rax, str.interface_initialization_failed
mov byte [0x14022ea53], bl
mov qword [rsp + 0x38], rax
lea r8, str.H5F_open
mov rax, qword [0x14022b658]
lea rdx, str.C:cihdf5_1655187604574work_srcH5Fint.c
mov qword [rsp + 0x30], rax
mov r9d, 0x5ae
mov rax, qword [0x14022b490]
xor ecx, ecx
mov qword [rsp + 0x28], rax
mov rax, qword [0x14022b488]
mov qword [rsp + 0x20], rax
call fcn.140050180
jmp 0x1400d915e
cmp byte [0x14022ea53], bl
jne 0x1400d858c
cmp byte [0x14022ea5d], bl
jne 0x1400d915e
mov rcx, r15
mov qword [rsp + 0xc8], r12
call fcn.1400e12d0
mov r12, rax
test rax, rax
jne 0x1400d85f4
lea rax, str.unable_to_retrieve_VFL_class
mov r9d, 0x5b9
mov qword [rsp + 0x38], rax
lea r8, str.H5F_open
mov rax, qword [0x14022b670]
lea rdx, str.C:cihdf5_1655187604574work_srcH5Fint.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14022b498]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14022b488]
mov qword [rsp + 0x20], rax
call fcn.140050180
jmp 0x1400d9156
lea rcx, str.HDF5_USE_FILE_LOCKING
mov qword [rsp + 0xd0], r14
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x1400d8639
xor edx, edx
lea r8, str.FALSE
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
inc rdx
cmp cl, byte [r8 + rdx - 1]
jne 0x1400d8639
cmp rdx, 6
jne 0x1400d8620
mov byte [rbp + 7], bl
jmp 0x1400d863d
mov byte [rbp + 7], 1
mov r14d, esi
mov r9, 0xffffffffffffffff
and r14d, 0xffffffe9
mov r8, r15
cmp qword [r12 + 0x80], rbx
mov rcx, rdi
cmove r14d, esi
mov edx, r14d
call fcn.1400e1930
mov rbx, rax
test rax, rax
jne 0x1400d8733
xor ecx, ecx
cmp r14d, esi
jne 0x1400d8699
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, 0x5da
mov dword [rsp + 0x50], r14d
jmp 0x1400d86dd
call fcn.14004fe20
mov r9, 0xffffffffffffffff
mov r8, r15
mov edx, esi
mov rcx, rdi
mov r14d, esi
call fcn.1400e1930
mov rbx, rax
test rax, rax
jne 0x1400d8733
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, 0x5e5
mov dword [rsp + 0x50], esi
mov qword [rsp + 0x48], rdi
lea r8, str.H5F_open
mov qword [rsp + 0x40], rax
lea rdx, str.C:cihdf5_1655187604574work_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 [0x14022b770]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14022b498]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14022b488]
mov qword [rsp + 0x20], rax
call fcn.140050180
xor ebx, ebx
jmp 0x1400d914e
mov rcx, rbx
call fcn.1400da4c0
mov rdi, rax
test rax, rax
je 0x1400d882e
mov rcx, rbx
call fcn.1400e0c80
test eax, eax
jns 0x1400d8765
lea rax, str.unable_to_close_low_level_file_info
mov r9d, 0x5f9
jmp 0x1400d8986
test sil, 2
je 0x1400d877d
lea rax, str.unable_to_truncate_a_file_which_is_already_open
mov r9d, 0x5fb
jmp 0x1400d8986
test sil, 4
je 0x1400d8795
lea rax, str.file_exists
mov r9d, 0x5fd
jmp 0x1400d8986
test sil, 1
je 0x1400d87b7
mov eax, dword [rdi + 0x20]
and eax, 1
test al, al
jne 0x1400d87b7
lea rax, str.file_is_already_open_for_read_only
mov r9d, 0x5ff
jmp 0x1400d8986
test sil, 0x20
je 0x1400d87d9
mov eax, dword [rdi + 0x20]
and eax, 0x20
test al, al
jne 0x1400d87d9
lea rax, str.SWMR_write_access_flag_not_the_same_for_file_that_is_already_open
mov r9d, 0x602
jmp 0x1400d8986
test sil, 0x40
je 0x1400d87f7
test byte [rdi + 0x20], 0x61
jne 0x1400d87f7
lea rax, str.SWMR_read_access_flag_not_the_same_for_file_that_is_already_open
mov r9d, 0x604
jmp 0x1400d8986
mov r9, r15
mov qword [rsp + 0x20], 0
mov r8, r13
mov edx, esi
mov rcx, rdi
call fcn.1400d62b0
mov rdi, rax
test rax, rax
jne 0x1400d89e7
lea rax, str.unable_to_create_new_file_object
mov r9d, 0x608
jmp 0x1400d8986
cmp esi, r14d
je 0x1400d8880
mov rcx, rbx
call fcn.1400e0c80
test eax, eax
jns 0x1400d8851
lea rax, str.unable_to_close_low_level_file_info
mov r9d, 0x613
jmp 0x1400d8986
mov rcx, qword [rbp + 0x67]
mov r9, 0xffffffffffffffff
mov r8, r15
mov edx, esi
call fcn.1400e1930
mov rbx, rax
test rax, rax
jne 0x1400d8880
lea rax, str.unable_to_open_file
mov r9d, 0x616
jmp 0x1400d8986
cmp byte [rbp + 7], 0
je 0x1400d8902
movzx edx, sil
mov rcx, rbx
and dl, 1
call fcn.1400e1820
test eax, eax
jns 0x1400d8902
mov rcx, rbx
call fcn.1400e0c80
test eax, eax
jns 0x1400d88f0
lea rax, str.unable_to_close_low_level_file_info
mov r9d, 0x61e
mov qword [rsp + 0x38], rax
lea r8, str.H5F_open
mov rax, qword [0x14022b770]
lea rdx, str.C:cihdf5_1655187604574work_srcH5Fint.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14022b498]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14022b488]
mov qword [rsp + 0x20], rax
call fcn.140050180
lea rax, str.unable_to_lock_the_file
mov r9d, 0x61f
jmp 0x1400d8986
mov r9, r15
mov qword [rsp + 0x20], rbx
mov r8, r13
mov edx, esi
xor ecx, ecx
call fcn.1400d62b0
mov rdi, rax
test rax, rax
jne 0x1400d89cb
mov rcx, rbx
call fcn.1400e0c80
test eax, eax
jns 0x1400d8979
lea rax, str.unable_to_close_low_level_file_info
mov r9d, 0x629
mov qword [rsp + 0x38], rax
lea r8, str.H5F_open
mov rax, qword [0x14022b770]
lea rdx, str.C:cihdf5_1655187604574work_srcH5Fint.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14022b498]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14022b488]
mov qword [rsp + 0x20], rax
call fcn.140050180
lea rax, str.unable_to_initialize_file_structure
mov r9d, 0x62a
mov qword [rsp + 0x38], rax
lea r8, str.H5F_open
mov rax, qword [0x14022b770]
lea rdx, str.C:cihdf5_1655187604574work_srcH5Fint.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14022b498]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14022b488]
mov qword [rsp + 0x20], rax
call fcn.140050180
xor ebx, ebx
jmp 0x1400d914e
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 0x1400d89ec
mov ebx, 1
lea r8, [rbp + 9]
mov rcx, rdi
lea rdx, [rbp + 8]
call fcn.14013a720
test eax, eax
jns 0x1400d8a1e
lea rax, str.cant_get_MDC_cache_image_status
mov r9d, 0x634
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b670]
jmp 0x1400d90bc
cmp byte [rbp + 8], 0
jne 0x1400d8a2a
cmp byte [rbp + 9], 0
je 0x1400d8a4e
test sil, 0x60
je 0x1400d8a4e
lea rax, str.cant_have_both_SWMR_and_cache_image
mov r9d, 0x636
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b940]
jmp 0x1400d90bc
mov r12, qword [rbp + 0x67]
mov rcx, r12
call fcn.140050c60
mov r14, qword [rdi + 0x18]
mov rcx, r15
mov qword [rdi], rax
mov r13, qword [r14]
call fcn.1400692e0
mov r15, rax
test rax, rax
jne 0x1400d8a9e
lea rax, str.not_file_access_property_list
mov r9d, 0x641
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b948]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14022b578]
jmp 0x1400d90c8
lea r8, [rbp + 0x27]
mov rcx, r15
lea rdx, str.page_buffer_size
call fcn.14003fb70
test eax, eax
jns 0x1400d8ad3
lea rax, str.cant_get_page_buffer_size
mov r9d, 0x645
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b670]
jmp 0x1400d90bc
cmp qword [rbp + 0x27], 0
je 0x1400d8b44
lea r8, [rbp + 0x1b]
mov rcx, r15
lea rdx, str.page_buffer_min_meta_perc
call fcn.14003fb70
test eax, eax
jns 0x1400d8b0f
lea rax, str.cant_get_minimum_metadata_fraction_of_page_buffer
mov r9d, 0x651
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b670]
jmp 0x1400d90bc
lea r8, [rbp + 0x17]
mov rcx, r15
lea rdx, str.page_buffer_min_raw_perc
call fcn.14003fb70
test eax, eax
jns 0x1400d8b44
lea rax, str.cant_get_minimum_raw_data_fraction_of_page_buffer
mov r9d, 0x653
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b670]
jmp 0x1400d90bc
mov edx, ebx
mov rcx, r13
call fcn.1400dfee0
mov edx, 1
mov rcx, r13
mov rbx, rax
call fcn.1400dfdd0
mov edx, 1
mov rcx, r13
cmp rbx, rax
jbe 0x1400d8b72
call fcn.1400dfee0
jmp 0x1400d8b77
call fcn.1400dfdd0
test rax, rax
jne 0x1400d8c1f
test sil, 1
je 0x1400d8c1f
mov rdx, qword [rbp + 0x27]
test rdx, rdx
je 0x1400d8bc5
mov r9d, dword [rbp + 0x17]
mov rcx, rdi
mov r8d, dword [rbp + 0x1b]
call fcn.1400e52d0
test eax, eax
jns 0x1400d8bc5
lea rax, str.unable_to_create_page_buffer
mov r9d, 0x663
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b658]
jmp 0x1400d90bc
mov rcx, rdi
call fcn.140161390
test eax, eax
jns 0x1400d8bef
lea rax, str.unable_to_allocate_file_superblock
mov r9d, 0x668
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b658]
jmp 0x1400d90bc
mov dl, 1
mov rcx, rdi
call fcn.1401166e0
test eax, eax
jns 0x1400d8cb5
lea rax, str.unable_to_create_open_root_group
mov r9d, 0x66f
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b658]
jmp 0x1400d90bc
cmp dword [r14 + 0x1c], 1
jne 0x1400d8cb5
mov r8b, 1
mov rdx, r15
mov rcx, rdi
call fcn.1401621f0
test eax, eax
jns 0x1400d8c5a
lea rax, str.unable_to_read_superblock
mov r9d, 0x674
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b5b0]
jmp 0x1400d90bc
mov rdx, qword [rbp + 0x27]
test rdx, rdx
je 0x1400d8c95
mov r9d, dword [rbp + 0x17]
mov rcx, rdi
mov r8d, dword [rbp + 0x1b]
call fcn.1400e52d0
test eax, eax
jns 0x1400d8c95
lea rax, str.unable_to_create_page_buffer
mov r9d, 0x679
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b658]
jmp 0x1400d90bc
xor edx, edx
mov rcx, rdi
call fcn.1401166e0
test eax, eax
jns 0x1400d8cb5
lea rax, str.unable_to_read_root_group
mov r9d, 0x67d
jmp 0x1400d90b0
lea r8, [rbp + 0x1f]
mov rcx, r15
lea rdx, str.close_degree
call fcn.14003fb70
test eax, eax
jns 0x1400d8cf6
lea rax, str.cant_get_file_close_degree
mov r9d, 0x687
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b670]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14022b548]
jmp 0x1400d90c8
lea rdx, str.clear_status_flags
mov rcx, r15
call fcn.14003f9c0
test eax, eax
jle 0x1400d8d5f
lea r8, [rbp + 0xa]
mov rcx, r15
lea rdx, str.clear_status_flags
call fcn.14003fb70
test eax, eax
jns 0x1400d8d4a
lea rax, str.cant_get_clearance_for_status_flags
mov r9d, 0x68d
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b670]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14022b548]
jmp 0x1400d90c8
cmp byte [rbp + 0xa], 0
je 0x1400d8d5f
mov rax, qword [rdi + 0x18]
mov rcx, qword [rax + 8]
mov byte [rcx + 0x106], 0
cmp dword [r14 + 0x1c], 1
jne 0x1400d8dc9
mov eax, dword [rbp + 0x1f]
test eax, eax
jne 0x1400d8dc0
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.14003fb70
test eax, eax
jns 0x1400d8e2b
lea rax, str.cant_get_evict_on_close_value
mov r9d, 0x6a5
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b670]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14022b548]
jmp 0x1400d90c8
mov dword [r14 + 0x550], eax
jmp 0x1400d8d7b
jbe 0x1400d8d7b
mov eax, dword [rbp + 0x1f]
test eax, eax
jne 0x1400d8e00
mov rax, qword [r13 + 8]
mov ecx, dword [rax + 0x10]
cmp dword [r14 + 0x550], ecx
je 0x1400d8d7b
lea rax, str.file_close_degree_doesnt_match
mov r9d, 0x69a
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b658]
jmp 0x1400d90bc
cmp eax, dword [r14 + 0x550]
je 0x1400d8d7b
lea rax, str.file_close_degree_doesnt_match
mov r9d, 0x69c
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b658]
jmp 0x1400d90bc
cmp dword [r14 + 0x1c], 1
jne 0x1400d8e6b
movzx eax, byte [rbp + 0xb]
mov byte [r14 + 0x554], al
lea rdx, [rdi + 0x10]
mov rcx, r12
call fcn.140004da0
test eax, eax
jns 0x1400d8e98
lea rax, str.unable_to_build_extpath
mov r9d, 0x6af
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b658]
jmp 0x1400d90bc
jbe 0x1400d8e3d
movzx eax, byte [rbp + 0xb]
cmp byte [r14 + 0x554], al
je 0x1400d8e3d
lea rax, str.file_evict_on_close_value_doesnt_match
mov r9d, 0x6aa
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b958]
jmp 0x1400d90bc
cmp byte [0x14022ea53], 0
jne 0x1400d8eae
cmp byte [0x14022ea5d], 0
jne 0x1400d8f30
mov rcx, r12
mov qword [rdi + 8], 0
call fcn.140050b60
mov qword [rdi + 8], rax
test rax, rax
jne 0x1400d8f30
lea rax, str.cant_duplicate_open_name
mov r9d, 0x946
mov qword [rsp + 0x38], rax
lea r8, str.H5F_build_actual_name
mov rax, qword [0x14022b5e0]
lea rdx, str.C:cihdf5_1655187604574work_srcH5Fint.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14022b498]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14022b488]
mov qword [rsp + 0x20], rax
call fcn.140050180
lea rax, str.unable_to_build_actual_name
mov r9d, 0x6b3
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b658]
jmp 0x1400d90bc
cmp byte [rbp + 0xf], 0
je 0x1400d914b
mov rax, qword [rdi + 0x18]
mov r8d, dword [rax + 0x20]
mov rcx, qword [rax + 8]
mov eax, dword [rcx + 0x100]
test r8b, 1
je 0x1400d905b
cmp eax, 3
jb 0x1400d8f76
test byte [rcx + 0x106], 5
je 0x1400d8f76
lea rax, str.file_is_already_open_for_write_SWMR_write__may_use__h5clear_file__to_clear_file_consistency_flags_
mov r9d, 0x6bc
jmp 0x1400d90b0
or byte [rcx + 0x106], 1
mov rax, qword [rdi + 0x18]
test byte [rax + 0x20], 0x20
je 0x1400d8f92
mov rax, qword [rax + 8]
or byte [rax + 0x106], 4
mov rcx, rdi
call fcn.140163ce0
test eax, eax
jns 0x1400d8fbc
lea rax, str.unable_to_mark_superblock_as_dirty
mov r9d, 0x6c5
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b838]
jmp 0x1400d90bc
mov edx, 3
mov rcx, rdi
call fcn.14015a510
test eax, eax
jns 0x1400d8feb
lea rax, str.unable_to_flush_superblock
mov r9d, 0x6c7
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b7d0]
jmp 0x1400d90bc
mov rax, qword [rdi + 0x18]
mov rcx, rdi
mov rdx, qword [rax + 8]
mov rdx, qword [rdx + 0x120]
call fcn.14015a510
test eax, eax
jns 0x1400d9024
lea rax, str.unable_to_flush_superblock_extension
mov r9d, 0x6c9
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b7d0]
jmp 0x1400d90bc
cmp byte [rbp + 7], 0
je 0x1400d914b
mov rcx, qword [rdi + 0x18]
test byte [rcx + 0x20], 0x20
je 0x1400d914b
mov rcx, qword [rcx]
call fcn.1400e2590
test eax, eax
jns 0x1400d914b
lea rax, str.unable_to_unlock_the_file
mov r9d, 0x6ce
jmp 0x1400d90b0
cmp eax, 3
jb 0x1400d914b
movzx edx, byte [rcx + 0x106]
movzx eax, dl
and al, 5
test r8b, 0x40
je 0x1400d909b
cmp al, 1
je 0x1400d908c
test dl, 1
jne 0x1400d914b
test dl, 4
je 0x1400d914b
lea rax, str.file_is_not_already_open_for_SWMR_writing
mov r9d, 0x6da
jmp 0x1400d90b0
test al, al
je 0x1400d914b
lea rax, str.file_is_already_open_for_write__may_use__h5clear_file__to_clear_file_consistency_flags_
mov r9d, 0x6de
mov qword [rsp + 0x38], rax
mov rax, qword [0x14022b770]
mov qword [rsp + 0x30], rax
mov rax, qword [0x14022b498]
mov qword [rsp + 0x28], rax
lea r8, str.H5F_open
mov rax, qword [0x14022b488]
lea rdx, str.C:cihdf5_1655187604574work_srcH5Fint.c
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.140050180
xor edx, edx
mov rcx, rdi
xor ebx, ebx
call fcn.1400d52b0
test eax, eax
jns 0x1400d914e
lea rax, str.problems_closing_file
mov r9d, 0x6e9
mov qword [rsp + 0x38], rax
lea r8, str.H5F_open
mov rax, qword [0x14022b778]
lea rdx, str.C:cihdf5_1655187604574work_srcH5Fint.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14022b498]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14022b488]
mov qword [rsp + 0x20], rax
call fcn.140050180
jmp 0x1400d914e
mov rbx, rdi
mov r14, qword [rsp + 0xd0]
mov r12, qword [rsp + 0xc8]
mov rax, rbx
mov rbx, qword [rsp + 0xd8]
add rsp, 0x90
pop r15
pop r13
pop rdi
pop rsi
pop rbp
ret