Function at 0x180016060
Capabilities:
Enumerate files on windows

Disassembly:
push r12
push r14
push r15
sub rsp, 0x7f0
mov rax, qword [0x18008b0c0]
xor rax, rsp
mov qword [rsp + 0x7d0], rax
mov qword [rsp + 0x40], rcx
lea rax, [rsp + 0x3b0]
mov r8, rcx
mov dword [rsp + 0x28], 0x104
mov r12, 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov r9d, r12d
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea r9, [rsp + 0x3b0]
mov edx, 0x104
lea r8, str._s
lea rcx, [rsp + 0x5c0]
call fcn.180002170
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x5c0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov r14, rax
cmp rax, r12
jne 0x180016108
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [0x180071f80]
call fcn.180001330
jmp 0x180016314
mov qword [rsp + 0x818], rbx
mov edx, 2
mov qword [rsp + 0x820], rbp
xor ecx, ecx
mov qword [rsp + 0x828], rsi
mov qword [rsp + 0x7e8], rdi
mov qword [rsp + 0x7e0], r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov ebx, 1
lea r15, str.directory
mov rsi, rax
movzx ebp, bl
xor r13d, r13d
mov word [rax], 0x5b
nop word [rax + rax]
mov qword [rsp + 0x38], r13
lea rax, [rsp + 0x2a0]
mov qword [rsp + 0x30], r13
lea r8, [rsp + 0x7c]
mov dword [rsp + 0x28], 0x104
mov r9d, r12d
xor edx, edx
mov qword [rsp + 0x20], rax
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movzx ecx, byte [rsp + 0x2a0]
movzx eax, byte [rsp + 0x2a1]
cmp cl, 0x2e
jne 0x1800161c7
test al, al
je 0x18001627c
cmp cl, cl
jne 0x1800161c7
cmp al, cl
jne 0x1800161c7
cmp byte [rsp + 0x2a2], r13b
je 0x18001627c
test bpl, bpl
jne 0x1800161ec
mov rdx, rbx
mov rcx, rsi
add rdx, 1
cmovb rdx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov rsi, rax
mov byte [rbx + rax], 0x2c
inc rbx
jmp 0x1800161ef
xor bpl, bpl
lea rcx, [rsp + 0x2a0]
mov rax, r12
nop word [rax + rax]
cmp byte [rcx + rax + 1], r13b
lea rax, [rax + 1]
jne 0x180016200
lea rdx, [rax + 0x25]
mov rcx, rsi
add rdx, rbx
add rdx, 0x20
cmovb rdx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov ecx, dword [rsp + 0x6c]
lea r9, str.file
shl rcx, 0x20
lea r8, [rsp + 0x2a0]
mov rsi, rax
lea rdx, str._name_:__s___type_:__s___size_:_llu
lea rdi, [rbx + rax]
mov eax, dword [rsp + 0x70]
add rcx, rax
test byte [rsp + 0x50], 0x10
mov qword [rsp + 0x20], rcx
mov rcx, rdi
cmovne r9, r15
call fcn.1800021d0
mov rax, r12
nop dword [rax + rax]
inc rax
cmp byte [rdi + rax], r13b
jne 0x180016270
add rbx, rax
lea rdx, [rsp + 0x50]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x180016160
mov r13, qword [rsp + 0x7e0]
add rbx, 2
mov rdi, qword [rsp + 0x7e8]
mov rcx, rsi
mov rbp, qword [rsp + 0x820]
cmovb rbx, r12
mov rdx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov r15, qword [rsp + 0x40]
mov rbx, rax
mov rsi, qword [rsp + 0x828]
lea r8, [rax - 1]
cmp byte [r8 + 1], 0
lea r8, [r8 + 1]
jne 0x1800162d2
movzx ecx, word [0x180071320]
mov rdx, r15
mov word [r8], cx
mov r8, rbx
lea rcx, [0x180071fe8]
call fcn.180015b00
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rbx, qword [rsp + 0x818]
mov rcx, qword [rsp + 0x7d0]
xor rcx, rsp
call fcn.180061d10
add rsp, 0x7f0
pop r15
pop r14
pop r12
ret