Function at 0x58b6b0
Capabilities:
Enumerate files on windows
Enumerate files recursively

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
sub rsp, 0x3e0
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
lea r8, [0x007b3e80]
mov rdx, rcx
lea rcx, [rax - 0x370]
call fcn.00402658
nop
mov rdx, rax
lea rcx, [rsp + 0x138]
call fcn.00401f00
lea rdx, [rsp + 0x190]
mov rcx, qword [rax + 0x48]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rbp, rax
lea rax, [rsp + 0x138]
mov rcx, qword [rsp + 0x180]
cmp rcx, rax
je 0x58b74b
test rcx, rcx
je 0x58b74b
mov rdx, qword [rsp + 0x138]
sub rdx, rcx
sar rdx, 1
add rdx, rdx
cmp rdx, 0x100
jbe 0x58b745
call fcn.006a4944
jmp 0x58b74b
call fcn.006a3610
nop
lea rax, [rsp + 0x88]
mov rcx, qword [rsp + 0xb0]
cmp rcx, rax
je 0x58b785
test rcx, rcx
je 0x58b785
mov rdx, qword [rsp + 0x88]
sub rdx, rcx
cmp rdx, 0x100
jbe 0x58b780
call fcn.006a4944
jmp 0x58b785
call fcn.006a3610
cmp rbp, 0xffffffffffffffff
jne 0x58b792
xor eax, eax
jmp 0x58ba7d
xor esi, esi
lea r8, [rsp + 0x408]
lea rdx, [rsp + 0x1bc]
lea rcx, [rsp + 0xe8]
call fcn.004023b4
lea rdx, [rsp + 0xe8]
lea rcx, [rsp + 0x20]
call fcn.00402190
nop
lea rax, [rsp + 0xe8]
mov rcx, qword [rsp + 0x130]
cmp rcx, rax
je 0x58b805
test rcx, rcx
je 0x58b805
mov rax, qword [rsp + 0xe8]
sub rax, rcx
sar rax, 1
lea rdx, [rax + rax]
cmp rdx, 0x100
jbe 0x58b800
call fcn.006a4944
jmp 0x58b805
call fcn.006a3610
mov rdi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
sub rdi, rbx
cmp rdi, 1
jne 0x58b822
mov al, byte [rbx]
cmp al, byte [0x0079876c]
je 0x58b834
cmp rdi, 2
jne 0x58b876
mov ax, word [rbx]
cmp ax, word [0x007b3e84]
jne 0x58b876
lea rax, [rsp + 0x20]
cmp rbx, rax
je 0x58ba58
test rbx, rbx
je 0x58ba58
mov rdx, qword [rsp + 0x20]
sub rdx, rbx
cmp rdx, 0x100
jbe 0x58b869
mov rcx, rbx
call fcn.006a4944
jmp 0x58ba58
mov rcx, rbx
call fcn.006a3610
jmp 0x58ba58
mov rax, qword [0x00862cb8]
cmp byte [rax + 0x3205], 0
jne 0x58b89e
mov rcx, qword [rax + 0xb8]
test rcx, rcx
je 0x58b89e
mov edx, 0x385
call fcn.0041024c
jmp 0x58b8a4
mov al, byte [rax + 0x2e26]
test al, al
jne 0x58b8f4
test byte [rsp + 0x190], 2
je 0x58b8f4
lea rax, [rsp + 0x20]
cmp rbx, rax
je 0x58ba58
test rbx, rbx
je 0x58ba58
mov rdx, qword [rsp + 0x20]
sub rdx, rbx
cmp rdx, 0x100
jbe 0x58b8e7
mov rcx, rbx
call fcn.006a4944
jmp 0x58ba58
mov rcx, rbx
call fcn.006a3610
jmp 0x58ba58
test byte [rsp + 0x190], 0x10
je 0x58b9bb
mov r8b, 0x5c
mov rdx, qword [rsp + 0x400]
lea rcx, [rsp + 0xb8]
call fcn.004211f0
nop
lea r8, [rsp + 0x20]
mov rdx, rax
lea rcx, [rsp + 0x58]
call fcn.00402448
nop
mov rcx, rax
call fcn.0058b6b0
add rsi, rax
lea rax, [rsp + 0x58]
mov rcx, qword [rsp + 0x80]
cmp rcx, rax
je 0x58b96e
test rcx, rcx
je 0x58b96e
mov rdx, qword [rsp + 0x58]
sub rdx, rcx
cmp rdx, 0x100
jbe 0x58b968
call fcn.006a4944
jmp 0x58b96e
call fcn.006a3610
nop
lea rax, [rsp + 0xb8]
mov rcx, qword [rsp + 0xe0]
cmp rcx, rax
je 0x58b9b4
test rcx, rcx
je 0x58b9b4
mov rdx, qword [rsp + 0xb8]
sub rdx, rcx
cmp rdx, 0x100
jbe 0x58b9a8
call fcn.006a4944
mov rbx, qword [rsp + 0x48]
jmp 0x58ba26
call fcn.006a3610
mov rbx, qword [rsp + 0x48]
jmp 0x58ba26
mov rbx, qword [rsp + 0x48]
jmp 0x58ba26
cmp rdi, 6
jb 0x58ba0e
lea rcx, [rbx + rdi - 6]
lea rdx, str..dctmp
call fcn.006a525c
test eax, eax
jne 0x58ba09
lea rax, [rsp + 0x20]
mov rcx, qword [rsp + 0x48]
cmp rcx, rax
je 0x58ba58
test rcx, rcx
je 0x58ba58
mov rdx, qword [rsp + 0x20]
sub rdx, rcx
cmp rdx, 0x100
jbe 0x58ba02
call fcn.006a4944
jmp 0x58ba58
call fcn.006a3610
jmp 0x58ba58
mov rbx, qword [rsp + 0x48]
mov ecx, dword [rsp + 0x1ac]
shl rcx, 0x20
mov eax, dword [rsp + 0x1b0]
add rsi, rax
add rsi, rcx
lea rax, [rsp + 0x20]
cmp rbx, rax
je 0x58ba58
test rbx, rbx
je 0x58ba58
mov rdx, qword [rsp + 0x20]
sub rdx, rbx
cmp rdx, 0x100
jbe 0x58ba50
mov rcx, rbx
call fcn.006a4944
jmp 0x58ba58
mov rcx, rbx
call fcn.006a3610
lea rdx, [rsp + 0x190]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x58b794
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rax, rsi
mov rbx, qword [rsp + 0x410]
add rsp, 0x3e0
pop rdi
pop rsi
pop rbp
ret