Function at 0x14002c570
Capabilities:
Enumerate files on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1c0]
sub rsp, 0x2c0
mov rax, qword [0x140057108]
xor rax, rsp
mov qword [rbp + 0x1b8], rax
xor r13d, r13d
mov qword [rsp + 0x50], rdx
mov r12, rcx
test rdx, rdx
jne 0x14002c03b
call fcn.14001b6b0
lea ebx, [r13 + 0x16]
mov dword [rax], ebx
call fcn.14001b544
mov eax, ebx
jmp 0x14002c3a7
xorps xmm0, xmm0
mov qword [rdx], r13
mov rax, qword [rcx]
movdqu xmmword [rsp + 0x30], xmm0
mov rdi, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x30]
mov qword [rsp + 0x40], r13
test rax, rax
je 0x14002c27f
lea rdx, [rbp + 0x1b0]
mov dword [rbp + 0x1b0], 0x3f002a
mov rcx, rax
mov word [rbp + 0x1b4], r13w
movabs rbx, 0x200000000801
call fcn.14002e7cc
mov r15, qword [r12]
mov rcx, rax
test rax, rax
jne 0x14002c0c4
lea r9, [rsp + 0x30]
xor r8d, r8d
xor edx, edx
mov rcx, r15
call fcn.14002c3e4
mov rsi, qword [rsp + 0x30]
mov edi, eax
test eax, eax
jne 0x14002c23b
mov rdi, qword [rsp + 0x38]
jmp 0x14002c22e
cmp rax, r15
je 0x14002c0e8
movzx eax, word [rcx]
sub ax, 0x2f
cmp ax, 0x2d
ja 0x14002c0df
movzx eax, ax
bt rbx, rax
jb 0x14002c0e8
sub rcx, 2
cmp rcx, r15
jne 0x14002c0c9
movzx edx, word [rcx]
cmp dx, 0x3a
jne 0x14002c114
lea rax, [r15 + 2]
cmp rcx, rax
je 0x14002c114
lea r9, [rsp + 0x30]
xor r8d, r8d
xor edx, edx
mov rcx, r15
call fcn.14002c3e4
mov r14d, eax
jmp 0x14002c21f
sub dx, 0x2f
cmp dx, 0x2d
ja 0x14002c129
movzx eax, dx
bt rbx, rax
mov al, 1
jb 0x14002c12c
mov al, r13b
sub rcx, r15
mov dword [rsp + 0x28], r13d
sar rcx, 1
lea r8, [rsp + 0x60]
inc rcx
mov qword [rsp + 0x20], r13
neg al
sbb r14, r14
xor r9d, r9d
and r14, rcx
xor edx, edx
mov rcx, r15
mov qword [rsp + 0x48], r14
call qword [sym.imp.KERNEL32.dll_FindFirstFileExW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x14002c0fa
sub rdi, rsi
sar rdi, 3
mov r13, rdi
xor edi, edi
cmp word [rbp - 0x74], 0x2e
jne 0x14002c190
movzx eax, word [rbp - 0x72]
test ax, ax
je 0x14002c1b0
cmp ax, 0x2e
jne 0x14002c190
cmp word [rbp - 0x70], di
je 0x14002c1b0
lea r9, [rsp + 0x30]
mov r8, r14
mov rdx, r15
lea rcx, [rbp - 0x74]
call fcn.14002c3e4
mov r14d, eax
test eax, eax
jne 0x14002c213
mov r14, qword [rsp + 0x48]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x14002c174
mov rdi, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x30]
mov rdx, rdi
sub rdx, rsi
sar rdx, 3
cmp r13, rdx
jne 0x14002c1e9
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
xor r13d, r13d
jmp 0x14002c22e
sub rdx, r13
lea rcx, [rsi + r13*8]
lea r9, [0x14002bfd0]
mov r8d, 8
call fcn.1400347a0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
xor r13d, r13d
mov r14d, r13d
jmp 0x14002c229
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
xor r13d, r13d
mov rdi, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x30]
test r14d, r14d
jne 0x14002c261
add r12, 8
mov rax, qword [r12]
jmp 0x14002c059
mov rbx, rsi
cmp rsi, qword [rsp + 0x38]
je 0x14002c2fa
mov rcx, qword [rbx]
call fcn.14002719c
add rbx, 8
cmp rbx, qword [rsp + 0x38]
jne 0x14002c249
jmp 0x14002c2fa
mov rbx, rsi
cmp rsi, rdi
je 0x14002c27a
mov rcx, qword [rbx]
call fcn.14002719c
add rbx, 8
cmp rbx, rdi
jne 0x14002c269
mov edi, r14d
jmp 0x14002c2fa
mov r14, rdi
mov rdx, r13
sub r14, rsi
mov qword [rsp + 0x48], rdx
sar r14, 3
mov rax, rsi
inc r14
cmp rsi, rdi
je 0x14002c2c1
mov r9, qword [rax]
or rcx, 0xffffffffffffffff
inc rcx
cmp word [r9 + rcx*2], r13w
jne 0x14002c2a3
inc rdx
add rax, 8
add rdx, rcx
cmp rax, rdi
jne 0x14002c29c
mov qword [rsp + 0x48], rdx
mov r8d, 2
mov rcx, r14
call fcn.140020a74
mov rbx, rax
test rax, rax
jne 0x14002c309
xor ecx, ecx
call fcn.14002719c
mov rbx, rsi
cmp rsi, rdi
je 0x14002c2f7
mov rcx, qword [rbx]
call fcn.14002719c
add rbx, 8
cmp rbx, rdi
jne 0x14002c2e6
or edi, 0xffffffff
mov rcx, rsi
call fcn.14002719c
mov eax, edi
jmp 0x14002c3a7
lea rcx, [rax + r14*8]
mov r14, rsi
mov qword [rbp + 0x1b0], rcx
mov r12, rcx
cmp rsi, rdi
je 0x14002c375
mov r13, rbx
sub r13, rsi
mov r8, qword [r14]
or r15, 0xffffffffffffffff
xor eax, eax
inc r15
cmp word [r8 + r15*2], ax
jne 0x14002c32e
mov rdx, qword [rsp + 0x48]
mov rax, r12
sub rax, rcx
inc r15
sar rax, 1
mov r9, r15
sub rdx, rax
mov rcx, r12
call fcn.14001b860
xor ecx, ecx
test eax, eax
jne 0x14002c3d1
mov rcx, qword [rbp + 0x1b0]
mov qword [r14 + r13], r12
add r14, 8
lea r12, [r12 + r15*2]
cmp r14, rdi
jne 0x14002c325
mov rax, qword [rsp + 0x50]
xor ecx, ecx
mov qword [rax], rbx
call fcn.14002719c
mov rbx, rsi
cmp rsi, rdi
je 0x14002c39d
mov rcx, qword [rbx]
call fcn.14002719c
add rbx, 8
cmp rbx, rdi
jne 0x14002c38c
mov rcx, rsi
call fcn.14002719c
xor eax, eax
mov rcx, qword [rbp + 0x1b8]
xor rcx, rsp
call fcn.140013c60
mov rbx, qword [rsp + 0x310]
add rsp, 0x2c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
xor r9d, r9d
mov qword [rsp + 0x20], rcx
xor r8d, r8d
xor edx, edx
call fcn.14001b594
int3
jmp 0x14002bfe4