Function at 0x18000aa60
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 [0x180044078]
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 [0x18002d6d0]
movdqu xmmword [rbp + 8], xmm0
mov byte [rbp - 8], 0
xor r8d, r8d
lea rdx, [0x18002d6b2]
lea rcx, [rbp - 8]
call fcn.180001760
nop
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x270]
call fcn.180013680
mov r8, r13
cmp qword [r13 + 0x18], 8
jb 0x18000ab01
mov r8, qword [r13]
lea rcx, [rbp + 0x270]
sub rcx, 2
nop dword [rax]
lea rcx, [rcx + 2]
cmp word [rcx], 0
jne 0x18000ab10
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 0x18000ab20
lea rax, [rbp + 0x270]
sub rax, 2
nop dword [rax]
lea rax, [rax + 2]
cmp word [rax], 0
jne 0x18000ab40
movsd xmm0, qword [0x18002e180]
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 0x18000abbf
mov rdx, qword [rbp + 0x10]
cmp rdx, 0x10
jb 0x18000abae
inc rdx
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000aba8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b0c5
call fcn.180011494
nop
mov rcx, r13
call fcn.180002720
nop
mov rcx, rbx
jmp 0x18000b090
lea r14, [0x18002e18c]
lea rsi, [0x18002e188]
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 0x18000adfa
lea rax, [rbp + 0x4c]
inc r8
cmp word [rax + r8*2], 0
jne 0x18000abf1
lea rdx, [rbp + 0x4c]
lea rcx, [rbp - 0x48]
call fcn.180002980
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 0x18000ac4a
mov rdx, r12
mov rcx, rsi
sub r8, rsi
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x18000ac4a
add rcx, 2
sub rdx, 1
jne 0x18000ac31
jmp 0x18000adbb
lea r8, [rbp - 0x48]
cmp r15, 8
cmovae r8, rdi
cmp r12, 2
jne 0x18000ac7d
mov rdx, r12
mov rcx, r14
sub r8, r14
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x18000ac7d
add rcx, 2
sub rdx, 1
jne 0x18000ac65
mov al, 1
jmp 0x18000ac7f
xor al, al
test al, al
jne 0x18000adbb
mov rsi, qword [r13 + 0x10]
mov r14, r13
cmp qword [r13 + 0x18], 8
jb 0x18000ac99
mov r14, qword [r13]
cmp rsi, 8
jae 0x18000acb1
movups xmm0, xmmword [r14]
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x10], 7
jmp 0x18000acf6
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.180002790
mov qword [rbp - 0x28], rax
lea r8, [rsi*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.180013220
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.180002800
mov r8d, 1
lea rdx, [0x18002d910]
lea rcx, [rbp - 0x28]
call fcn.180002800
cmp dword [rsp + 0x30], 0
jne 0x18000ad73
lea rax, [rsp + 0x68]
mov qword [rsp + 0x58], rax
mov rdx, rbx
lea rcx, [rsp + 0x68]
call fcn.180002cb0
mov rbx, rax
lea rdx, [rbp - 0x28]
lea rcx, [rbp - 0x78]
call fcn.180002cb0
nop
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x40]
mov rdx, rbx
mov rcx, rax
call fcn.18000aa60
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 8
jb 0x18000adb3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000adae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b0cb
call fcn.180011494
mov rdi, qword [rbp - 0x48]
mov r15, qword [rbp - 0x30]
cmp r15, 8
jb 0x18000b020
lea rdx, [r15*2 + 2]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18000adf2
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b0d1
mov rcx, rdi
jmp 0x18000b01b
mov esi, eax
lea rax, [rbp + 0x4c]
inc r8
cmp word [rax + r8*2], 0
jne 0x18000ae00
lea rdx, [rbp + 0x4c]
lea rcx, [rbp - 0x48]
call fcn.180002980
nop
mov r11, rbx
cmp qword [rbx + 0x18], 8
jb 0x18000ae26
mov r11, qword [rbx]
mov r10, 0xffffffffffffffff
nop dword [rax]
inc r10
cmp word [r11 + r10*2], 0
jne 0x18000ae30
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 0x18000aed5
test r10, r10
je 0x18000aed0
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 0x18000aed5
movzx ecx, word [r11]
nop
cmp word [rdx], cx
je 0x18000ae91
add rdx, 2
sub rax, 1
je 0x18000aed5
jmp 0x18000ae80
test rdx, rdx
je 0x18000aed5
mov r8, r10
mov rax, r11
test r10, r10
je 0x18000aec4
mov r9, rdx
sub r9, r11
nop word [rax + rax]
movzx ecx, word [rax]
cmp word [rax + r9], cx
jne 0x18000af06
add rax, 2
sub r8, 1
jne 0x18000aeb0
sub rdx, rbx
sar rdx, 1
cmp rdx, 0xffffffffffffffff
je 0x18000aed5
mov esi, 1
test esi, esi
je 0x18000afe5
mov rdi, qword [r13 + 0x10]
mov rsi, r13
cmp qword [r13 + 0x18], 8
jb 0x18000aeef
mov rsi, qword [r13]
cmp rdi, 8
jae 0x18000af0f
movups xmm0, xmmword [rsi]
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x10], 7
jmp 0x18000af4f
add rdx, 2
jmp 0x18000ae70
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.180002790
mov qword [rbp - 0x28], rax
lea r8, [rdi*2 + 2]
mov rdx, rsi
mov rcx, rax
call fcn.180013220
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.180002800
mov rbx, qword [rsp + 0x40]
mov rax, qword [rbx + 8]
cmp qword [rbx + 0x10], rax
je 0x18000af8d
lea rdx, [rbp - 0x28]
mov rcx, rax
call fcn.180002cb0
add qword [rbx + 8], 0x20
jmp 0x18000af9d
lea r8, [rbp - 0x28]
mov rdx, rax
mov rcx, rbx
call fcn.18000a760
nop
mov rdx, qword [rbp - 0x10]
cmp rdx, 8
jb 0x18000afdd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000afd8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b0d7
call fcn.180011494
mov r14, qword [rbp - 0x48]
mov r15, qword [rbp - 0x30]
cmp r15, 8
jb 0x18000b020
lea rdx, [r15*2 + 2]
mov rax, r14
cmp rdx, 0x1000
jb 0x18000b018
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b0dd
mov rcx, r14
call fcn.180011494
lea rdx, [rbp + 0x20]
mov rdi, qword [rsp + 0x48]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x18000b040
mov rbx, qword [rsp + 0x38]
jmp 0x18000abbf
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
mov rdx, qword [rbp + 0x10]
cmp rdx, 0x10
jb 0x18000b082
inc rdx
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000b07c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000b0bf
call fcn.180011494
nop
mov rcx, r13
call fcn.180002720
nop
mov rcx, qword [rsp + 0x38]
call fcn.180002720
mov rcx, qword [rbp + 0x480]
xor rcx, rsp
call fcn.1800115b0
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.180015e04
nop
call fcn.180015e04
nop
call fcn.180015e04
nop
call fcn.180015e04
nop
call fcn.180015e04
nop
call fcn.180015e04
int3