Function at 0x18000af30
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 - 0x490]
sub rsp, 0x590
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x5e8], rbx
mov rax, qword [0x18004a0a8]
xor rax, rsp
mov qword [rbp + 0x480], rax
mov dword [rsp + 0x30], r9d
mov qword [rsp + 0x40], r8
mov rbx, rdx
mov qword [rsp + 0x38], rdx
mov r13, rcx
mov qword [rbp - 0x58], rcx
mov qword [rbp - 0x50], rdx
movdqa xmm0, xmmword [0x180031740]
movdqu xmmword [rbp + 8], xmm0
mov byte [rbp - 8], 0
lea rdx, [0x180031722]
lea rcx, [rbp - 8]
call fcn.1800018a0
nop
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x270]
call fcn.1800174c0
mov r8, r13
cmp qword [r13 + 0x18], 8
jb 0x18000afce
mov r8, qword [r13]
lea rcx, [rbp + 0x270]
sub rcx, 2
nop dword [rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x18000afe0
xor edx, edx
nop dword [rax]
movzx eax, word [r8 + rdx*2]
mov word [rcx + rdx*2], ax
lea rdx, [rdx + 1]
test ax, ax
jne 0x18000aff0
lea rax, [rbp + 0x270]
sub rax, 2
nop dword [rax]
lea rax, [rax + 2]
cmp word [rax], 0
jne 0x18000b010
movsd xmm0, qword [0x1800321e0]
movsd qword [rax], xmm0
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x270]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov qword [rsp + 0x48], rax
cmp rax, 0xffffffffffffffff
jne 0x18000b08f
mov rdx, qword [rbp + 0x10]
cmp rdx, 0x10
jb 0x18000b07e
inc rdx
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000b078
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b595
call fcn.1800153bc
nop
mov rcx, r13
call fcn.180002a00
nop
mov rcx, rbx
jmp 0x18000b560
lea r14, [0x1800321ec]
lea rsi, [0x1800321e8]
xor eax, eax
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], 7
mov word [rbp - 0x48], ax
lea r8, [rax - 1]
test byte [rbp + 0x20], 0x10
je 0x18000b2ca
lea rax, [rbp + 0x4c]
inc r8
cmp word [rax + r8*2], 0
jne 0x18000b0c1
lea rdx, [rbp + 0x4c]
lea rcx, [rbp - 0x48]
call fcn.180006750
nop
lea r8, [rbp - 0x48]
mov rdi, qword [rbp - 0x48]
mov r15, qword [rbp - 0x30]
cmp r15, 8
cmovae r8, rdi
mov r12, qword [rbp - 0x38]
cmp r12, 1
jne 0x18000b11a
mov rdx, r12
mov rcx, rsi
sub r8, rsi
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x18000b11a
add rcx, 2
sub rdx, 1
jne 0x18000b101
jmp 0x18000b28b
lea r8, [rbp - 0x48]
cmp r15, 8
cmovae r8, rdi
cmp r12, 2
jne 0x18000b14d
mov rdx, r12
mov rcx, r14
sub r8, r14
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x18000b14d
add rcx, 2
sub rdx, 1
jne 0x18000b135
mov al, 1
jmp 0x18000b14f
xor al, al
test al, al
jne 0x18000b28b
mov rsi, qword [r13 + 0x10]
mov r14, r13
cmp qword [r13 + 0x18], 8
jb 0x18000b169
mov r14, qword [r13]
cmp rsi, 8
jae 0x18000b181
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x10], 7
jmp 0x18000b1c6
mov rbx, rsi
or rbx, 7
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x28]
call fcn.180002a70
mov qword [rbp - 0x28], rax
lea r8, [rsi*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.180017060
mov qword [rbp - 0x10], rbx
mov rbx, qword [rsp + 0x38]
mov qword [rbp - 0x18], rsi
lea rdx, [rbp - 0x48]
cmp r15, 8
cmovae rdx, rdi
mov r8, r12
lea rcx, [rbp - 0x28]
call fcn.180002ae0
mov r8d, 1
lea rdx, [0x180031944]
lea rcx, [rbp - 0x28]
call fcn.180002ae0
cmp dword [rsp + 0x30], 0
jne 0x18000b243
lea rax, [rsp + 0x68]
mov qword [rsp + 0x58], rax
mov rdx, rbx
lea rcx, [rsp + 0x68]
call fcn.180002d80
mov rbx, rax
lea rdx, [rbp - 0x28]
lea rcx, [rbp - 0x78]
call fcn.180002d80
nop
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x40]
mov rdx, rbx
mov rcx, rax
call fcn.18000af30
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 8
jb 0x18000b283
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000b27e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b59b
call fcn.1800153bc
mov rdi, qword [rbp - 0x48]
mov r15, qword [rbp - 0x30]
cmp r15, 8
jb 0x18000b4f0
lea rdx, [r15*2 + 2]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18000b2c2
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b5a1
mov rcx, rdi
jmp 0x18000b4eb
mov esi, eax
lea rax, [rbp + 0x4c]
inc r8
cmp word [rax + r8*2], 0
jne 0x18000b2d0
lea rdx, [rbp + 0x4c]
lea rcx, [rbp - 0x48]
call fcn.180006750
nop
mov r11, rbx
cmp qword [rbx + 0x18], 8
jb 0x18000b2f6
mov r11, qword [rbx]
mov r10, 0xffffffffffffffff
nop dword [rax]
inc r10
cmp word [r11 + r10*2], 0
jne 0x18000b300
lea rbx, [rbp - 0x48]
mov r14, qword [rbp - 0x48]
mov r15, qword [rbp - 0x30]
cmp r15, 8
cmovae rbx, r14
mov r12, qword [rbp - 0x38]
cmp r10, r12
ja 0x18000b3a5
test r10, r10
je 0x18000b3a0
mov rdi, r12
sub rdi, r10
inc rdi
lea rdi, [rbx + rdi*2]
mov rdx, rbx
nop dword [rax]
mov rax, rdi
sub rax, rdx
sar rax, 1
je 0x18000b3a5
movzx ecx, word [r11]
nop
cmp word [rdx], cx
je 0x18000b361
add rdx, 2
sub rax, 1
je 0x18000b3a5
jmp 0x18000b350
test rdx, rdx
je 0x18000b3a5
mov r8, r10
mov rax, r11
test r10, r10
je 0x18000b394
mov r9, rdx
sub r9, r11
nop word [rax + rax]
movzx ecx, word [rax]
cmp word [rax + r9], cx
jne 0x18000b3d6
add rax, 2
sub r8, 1
jne 0x18000b380
sub rdx, rbx
sar rdx, 1
cmp rdx, 0xffffffffffffffff
je 0x18000b3a5
mov esi, 1
test esi, esi
je 0x18000b4b5
mov rdi, qword [r13 + 0x10]
mov rsi, r13
cmp qword [r13 + 0x18], 8
jb 0x18000b3bf
mov rsi, qword [r13]
cmp rdi, 8
jae 0x18000b3df
movups xmm0, xmmword [rsi]
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x10], 7
jmp 0x18000b41f
add rdx, 2
jmp 0x18000b340
mov rbx, rdi
or rbx, 7
movabs rax, 0x7ffffffffffffffe
cmp rbx, rax
cmova rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x28]
call fcn.180002a70
mov qword [rbp - 0x28], rax
lea r8, [rdi*2 + 2]
mov rdx, rsi
mov rcx, rax
call fcn.180017060
mov qword [rbp - 0x10], rbx
mov qword [rbp - 0x18], rdi
lea rdx, [rbp - 0x48]
cmp r15, 8
cmovae rdx, r14
mov r8, r12
lea rcx, [rbp - 0x28]
call fcn.180002ae0
mov rbx, qword [rsp + 0x40]
mov rax, qword [rbx + 8]
cmp qword [rbx + 0x10], rax
je 0x18000b45d
lea rdx, [rbp - 0x28]
mov rcx, rax
call fcn.180002d80
add qword [rbx + 8], 0x20
jmp 0x18000b46d
lea r8, [rbp - 0x28]
mov rdx, rax
mov rcx, rbx
call fcn.18000ac30
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 8
jb 0x18000b4ad
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000b4a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b5a7
call fcn.1800153bc
mov r14, qword [rbp - 0x48]
mov r15, qword [rbp - 0x30]
cmp r15, 8
jb 0x18000b4f0
lea rdx, [r15*2 + 2]
mov rax, r14
cmp rdx, 0x1000
jb 0x18000b4e8
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b5ad
mov rcx, r14
call fcn.1800153bc
lea rdx, [rbp + 0x20]
mov rdi, qword [rsp + 0x48]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x18000b510
mov rbx, qword [rsp + 0x38]
jmp 0x18000b08f
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
mov rdx, qword [rbp + 0x10]
cmp rdx, 0x10
jb 0x18000b552
inc rdx
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000b54c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b58f
call fcn.1800153bc
nop
mov rcx, r13
call fcn.180002a00
nop
mov rcx, qword [rsp + 0x38]
call fcn.180002a00
mov rcx, qword [rbp + 0x480]
xor rcx, rsp
call fcn.1800154d0
mov rbx, qword [rsp + 0x5e8]
add rsp, 0x590
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180019c44
nop
call fcn.180019c44
nop
call fcn.180019c44
nop
call fcn.180019c44
nop
call fcn.180019c44
nop
call fcn.180019c44
int3