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

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2a0]
sub rsp, 0x3a0
mov qword [rbp - 0x60], 0xfffffffffffffffe
mov qword [rsp + 0x3f8], rbx
mov rax, qword [0x140228058]
xor rax, rsp
mov qword [rbp + 0x290], rax
mov r12, r8
mov r13, rdx
mov rdi, rcx
mov qword [rbp - 0x70], rcx
xor esi, esi
mov r15d, esi
mov dword [r8], esi
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], si
mov qword [rbp - 0x40], 1
lea r8d, [rsi + 2]
lea rdx, [0x1401d537c]
lea rcx, [rbp - 0x50]
call fcn.14015c680
mov word [rbp - 0x4e], si
mov rdx, rdi
lea rcx, [rsp + 0x60]
call fcn.14002e350
nop
lea r8, [rbp - 0x50]
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.14002f310
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x140047cfe
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140047cf9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140048374
call fcn.14013db80
movdqa xmm0, xmmword [0x1401d8170]
movdqu xmmword [rsp + 0x70], xmm0
mov word [rsp + 0x60], si
mov rdx, qword [rbp - 0x38]
cmp rdx, 8
jb 0x140047d51
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140047d4c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004837a
call fcn.14013db80
movdqa xmm0, xmmword [0x1401d8170]
movdqu xmmword [rbp - 0x40], xmm0
mov word [rbp - 0x50], si
xor eax, eax
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], rax
mov qword [rbp], rax
mov qword [rbp + 8], rax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rax
mov qword [rsp + 0x58], rsi
cmp qword [sym.imp.KERNEL32.dll_FindClose], rax
je 0x140047db8
lea rax, vtable.std::_Func_impl_no_alloc_int____cdecl___void____ptr64___int__void____ptr64_.0
mov qword [rsp + 0x20], rax
mov rax, qword [sym.imp.KERNEL32.dll_FindClose]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x20]
mov qword [rsp + 0x58], rax
lea rcx, [rbp - 0x30]
cmp qword [rbp - 0x18], 8
cmovae rcx, qword [rbp - 0x30]
lea rdx, [rbp + 0x40]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rdx, rax
lea r8, [rsp + 0x20]
lea rcx, [rbp - 0x10]
call fcn.1400152b0
nop
cmp qword [rbp - 0x10], 0xffffffffffffffff
je 0x1400482fb
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], si
mov r14, 0xffffffffffffffff
lea rbx, [0x1401d5b18]
nop dword [rax + rax]
test byte [rbp + 0x40], 0x10
je 0x140048290
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], 7
mov word [rsp + 0x20], si
lea rax, [rbp + 0x6c]
mov rdx, r14
inc rdx
cmp word [rax + rdx*2], 0
jne 0x140047e34
lea rcx, [rsp + 0x20]
cmp rdx, 7
ja 0x140047e6c
mov qword [rsp + 0x30], rdx
lea rbx, [rdx + rdx]
mov r8, rbx
lea rdx, [rbp + 0x6c]
call fcn.14015c680
mov word [rsp + rbx + 0x20], si
lea rbx, [0x1401d5b18]
jmp 0x140047e78
lea r9, [rbp + 0x6c]
xor r8d, r8d
call fcn.140015860
lea r8, [rsp + 0x20]
mov r9, qword [rsp + 0x20]
mov r11, qword [rsp + 0x38]
cmp r11, 8
cmovae r8, r9
mov r10, qword [rsp + 0x30]
cmp r10, 1
jne 0x140047ec8
mov rdx, r10
lea rax, [0x1401d538c]
mov rcx, rax
sub r8, rax
nop word [rax + rax]
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x140047ec8
add rcx, 2
sub rdx, 1
jne 0x140047eb0
xor bl, bl
jmp 0x140047efe
lea r8, [rsp + 0x20]
cmp r11, 8
cmovae r8, r9
cmp r10, 2
jne 0x140047efc
mov rdx, r10
mov rcx, rbx
sub r8, rbx
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x140047efc
add rcx, 2
sub rdx, 1
jne 0x140047ee4
xor bl, bl
jmp 0x140047efe
mov bl, 1
cmp r11, 8
jb 0x140047f39
lea rdx, [r11*2 + 2]
mov rax, r9
cmp rdx, 0x1000
jb 0x140047f31
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140048386
mov rcx, r9
call fcn.14013db80
test bl, bl
je 0x140048287
mov dword [rbp - 0x58], esi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], 7
mov word [rsp + 0x20], si
lea rax, [rbp + 0x6c]
mov rdx, r14
nop
inc rdx
cmp word [rax + rdx*2], 0
jne 0x140047f60
lea rcx, [rsp + 0x20]
cmp rdx, 7
ja 0x140047f91
mov qword [rsp + 0x30], rdx
lea rbx, [rdx + rdx]
mov r8, rbx
lea rdx, [rbp + 0x6c]
call fcn.14015c680
mov word [rsp + rbx + 0x20], si
jmp 0x140047f9e
lea r9, [rbp + 0x6c]
xor r8d, r8d
call fcn.140015860
nop
lea r8, [rsp + 0x20]
mov rdx, rdi
lea rcx, [rsp + 0x60]
call fcn.14002f310
mov rbx, rax
lea rax, [rbp - 0x50]
cmp rax, rbx
je 0x140047fe3
lea rcx, [rbp - 0x50]
call fcn.140015ad0
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x40], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 7
mov word [rbx], si
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x140048025
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048020
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004838c
call fcn.14013db80
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], 7
mov word [rsp + 0x60], si
mov rdx, qword [rsp + 0x38]
cmp rdx, 8
jb 0x14004807a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048075
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140048392
call fcn.14013db80
xor r9d, r9d
lea r8, [rbp - 0x58]
mov rdx, r13
lea rcx, [rbp - 0x50]
call fcn.140047c20
mov r14, rax
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], rsi
mov rdi, qword [rbp - 0x40]
lea rsi, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rsi, qword [rbp - 0x50]
cmp rdi, 8
jae 0x1400480c8
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x38], 7
jmp 0x14004816b
mov rbx, rdi
or rbx, 7
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
cmova rbx, rax
lea rax, [rbx + 1]
lea rdx, [rax + rax]
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
jbe 0x140048103
mov rax, 0xffffffffffffffff
mov rdx, rax
jmp 0x140048113
cmp rdx, 0x1000
jb 0x14004813d
mov rax, 0xffffffffffffffff
lea rcx, [rdx + 0x27]
cmp rcx, rdx
cmovbe rcx, rax
call fcn.14013db44
mov rcx, rax
test rax, rax
je 0x140048398
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14004814e
test rdx, rdx
je 0x14004814c
mov rcx, rdx
call fcn.14013db44
jmp 0x14004814e
xor eax, eax
mov qword [rsp + 0x20], rax
lea r8, [rdi*2 + 2]
mov rdx, rsi
mov rcx, rax
call fcn.14015c680
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x20]
mov qword [rbp - 0x68], rax
mov ebx, dword [rbp - 0x58]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x60]
call fcn.14001f0e0
mov qword [rbp - 0x80], r14
mov dword [rbp - 0x78], ebx
mov rdx, qword [rsp + 0x38]
cmp rdx, 8
jb 0x1400481d4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400481cf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004839e
call fcn.14013db80
xor esi, esi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], 7
mov word [rsp + 0x20], si
mov rbx, qword [r13]
mov rdi, qword [rbx + 8]
lea r9, [rsp + 0x60]
mov r8, rdi
mov rdx, rbx
call fcn.1400483c0
mov rcx, rax
mov rdx, qword [r13 + 8]
movabs rax, 0x3fffffffffffffe
sub rax, rdx
cmp rax, 1
jb 0x1400483aa
lea rax, [rdx + 1]
mov qword [r13 + 8], rax
mov qword [rbx + 8], rcx
mov qword [rdi], rcx
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x140048270
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004826b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400483a4
call fcn.14013db80
add r15, r14
mov rdi, qword [rbp - 0x70]
mov r14, 0xffffffffffffffff
lea rbx, [0x1401d5b18]
jmp 0x1400482a0
lea rbx, [0x1401d5b18]
jmp 0x1400482a4
mov ecx, dword [rbp + 0x5c]
shl rcx, 0x20
mov eax, dword [rbp + 0x60]
add r15, rax
add r15, rcx
inc dword [r12]
lea rdx, [rbp + 0x40]
mov rcx, qword [rbp - 0x10]
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x140047e10
mov rdx, qword [rbp - 0x38]
cmp rdx, 8
jb 0x1400482fb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400482f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140048380
call fcn.14013db80
nop
lea rcx, [rbp - 0x10]
call fcn.1400151c0
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 8
jb 0x140048341
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004833c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004836e
call fcn.14013db80
mov rax, r15
mov rcx, qword [rbp + 0x290]
xor rcx, rsp
call fcn.14013df50
mov rbx, qword [rsp + 0x3f8]
add rsp, 0x3a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14015fb1c
nop
call fcn.14015fb1c
nop
call fcn.14015fb1c
nop
call fcn.14015fb1c
nop
call fcn.14015fb1c
nop
call fcn.14015fb1c
nop
call fcn.14015fb1c
int3
call fcn.14015fb1c
int3
call fcn.14015fb1c
int3
call fcn.14015fb1c
nop
lea rcx, str.list_T__too_long
call fcn.14011ba24
int3