Function at 0x140161b20
Capabilities:
Enumerate files on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x9b8
mov rax, qword [0x140282ff8]
xor rax, rsp
mov qword [rsp + 0x9a0], rax
xor edi, edi
mov qword [rsp + 0x58], 0
xor ebp, ebp
mov r13, r9
cmp byte [0x140285bc6], dil
mov r12, r8
mov r14d, edx
mov rsi, rcx
jne 0x140161b72
cmp byte [0x140284511], dil
jne 0x140161e97
mov r8, rsi
mov qword [rsp + 0x9b0], r15
lea rdx, str._s.dll
lea rcx, [rsp + 0x1a0]
call fcn.140004690
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x1a0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov r15, rax
cmp rax, 0xffffffffffffffff
jne 0x140161c00
lea rax, str.cant_open_directory
mov r9d, 0x2c8
mov qword [rsp + 0x38], rax
lea r8, str.H5PL__path_table_iterate_process_path
mov rax, qword [0x14027de98]
lea rdx, str.C:_b_abs_e4nt8ttmb0croothdf5_1686163951797work_srcH5PLpath.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14027dbe8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14027dbb8]
mov qword [rsp + 0x20], rax
call fcn.1400603f0
mov ebp, r15d
jmp 0x140161e87
mov qword [rsp + 0x9f8], rbx
nop dword [rax + rax]
movzx ecx, byte [rsp + 0x8c]
cmp cl, byte [0x1401fb7f4]
movzx eax, byte [rsp + 0x8d]
jne 0x140161c34
cmp al, byte [0x1401fb7f5]
je 0x140161d66
cmp cl, byte [0x14023dda8]
jne 0x140161c58
cmp al, byte [0x14023dda9]
jne 0x140161c58
movzx eax, byte [rsp + 0x8e]
cmp al, byte [0x14023ddaa]
je 0x140161d66
mov rax, 0xffffffffffffffff
nop
cmp byte [rsi + rax + 1], 0
lea rax, [rax + 1]
jne 0x140161c60
lea rdx, [rsp + 0x8c]
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
cmp byte [rdx + rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x140161c80
lea rbx, [rax + rcx]
lea rcx, [rbx + 2]
call fcn.14005f4e0
mov rdi, rax
test rax, rax
je 0x140161e26
lea rax, [rsp + 0x8c]
mov r9, rsi
lea r8, str._s_s
mov qword [rsp + 0x20], rax
lea rdx, [rbx + 2]
mov rcx, rdi
call fcn.1400028f0
test byte [rsp + 0x60], 0x10
jne 0x140161d66
xor r8d, r8d
mov dword [rsp + 0x54], 0xffffffff
lea rax, [rsp + 0x58]
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x50]
lea rax, [rsp + 0x54]
mov byte [rsp + 0x50], 0
lea edx, [r8 + 2]
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.14004c3b0
test eax, eax
js 0x140161dd4
mov ecx, dword [rsp + 0x54]
cmp r14d, 2
je 0x140161d3a
test r14d, r14d
jne 0x140161d2b
test ecx, ecx
jmp 0x140161d34
cmp r14d, 1
jne 0x140161d36
cmp ecx, r14d
je 0x140161d3a
xor eax, eax
jmp 0x140161d3f
mov eax, 1
cmp byte [rsp + 0x50], 0
je 0x140161d5b
test eax, eax
je 0x140161d5b
mov rdx, qword [rsp + 0x58]
mov r8, r13
call r12
mov ebp, eax
test eax, eax
jne 0x140161d7c
mov rcx, rdi
call fcn.14005f600
mov rdi, rax
lea rdx, [rsp + 0x60]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x140161c10
test ebp, ebp
jns 0x140161e76
lea rax, str.callback_operator_function_returned_failure
mov r9d, 0x2f2
mov qword [rsp + 0x38], rax
lea r8, str.H5PL__path_table_iterate_process_path
mov rax, qword [0x14027de48]
lea rdx, str.C:_b_abs_e4nt8ttmb0croothdf5_1686163951797work_srcH5PLpath.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14027dbe8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14027dbb8]
mov qword [rsp + 0x20], rax
call fcn.1400603f0
jmp 0x140161e76
mov qword [rsp + 0x40], rdi
lea rax, str.failed_to_open_plugin__s
mov qword [rsp + 0x38], rax
lea r8, str.H5PL__path_table_iterate_process_path
mov rax, qword [0x14027ddb8]
lea rdx, str.C:_b_abs_e4nt8ttmb0croothdf5_1686163951797work_srcH5PLpath.c
mov qword [rsp + 0x30], rax
mov r9d, 0x2e2
mov rax, qword [0x14027dbe8]
xor ecx, ecx
mov qword [rsp + 0x28], rax
mov rax, qword [0x14027dbb8]
mov qword [rsp + 0x20], rax
call fcn.1400603f0
jmp 0x140161e71
lea rax, str.cant_allocate_memory_for_path
mov r9d, 0x2d5
mov qword [rsp + 0x38], rax
lea r8, str.H5PL__path_table_iterate_process_path
mov rax, qword [0x14027dd28]
lea rdx, str.C:_b_abs_e4nt8ttmb0croothdf5_1686163951797work_srcH5PLpath.c
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov rax, qword [0x14027dbe8]
mov qword [rsp + 0x28], rax
mov rax, qword [0x14027dbb8]
mov qword [rsp + 0x20], rax
call fcn.1400603f0
mov ebp, 0xffffffff
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rbx, qword [rsp + 0x9f8]
mov rcx, rdi
call fcn.14005f600
mov r15, qword [rsp + 0x9b0]
mov eax, ebp
mov rcx, qword [rsp + 0x9a0]
xor rcx, rsp
call fcn.1401f0130
add rsp, 0x9b8
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret