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

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x7d0
mov rax, qword [0x14010bfc0]
xor rax, rsp
mov qword [rsp + 0x7c0], rax
mov rsi, rcx
mov rcx, r8
mov rbx, r8
mov rdi, rdx
call fcn.1400980d0
cmp rax, 0x104
jb 0x14000bdc4
mov eax, SafeArrayGetUBound
jmp 0x14000c0be
lea rcx, [rsp + 0x5b1]
xor edx, edx
mov r8d, 0x207
mov byte [rsp + 0x5b0], 0
call fcn.1400988d0
mov r8, rbx
mov ebx, 0x208
lea rcx, [rsp + 0x5b0]
mov rdx, rbx
call fcn.1400986e0
lea rcx, [rsp + 0x5b0]
mov r8, rdi
mov rdx, rbx
call fcn.140098ed8
lea r9, [rsp + 0x5b0]
lea r8, str.DeleteFilesRecursively_path_is_now_for__s_n
lea rcx, [0x14010f570]
mov edx, 0x20
call fcn.140001000
lea rcx, [rsp + 0x171]
xor edx, edx
mov r8d, 0x103
mov byte [rsp + 0x170], 0
call fcn.1400988d0
lea rdx, [rsp + 0x170]
lea rcx, [rsp + 0x5b0]
mov r8d, 0x104
call fcn.140054e54
lea rcx, [rsp + 0x170]
lea rbx, [rsp + 0x170]
call fcn.1400980d0
cmp byte [rax + rbx - 1], 0x5c
jne 0x14000be92
lea rcx, [rsp + 0x170]
call fcn.1400980d0
mov byte [rax + rbx - 1], 0
lea rcx, [rsp + 0x281]
xor edx, edx
mov r8d, 0x103
mov byte [rsp + 0x280], 0
call fcn.1400988d0
mov ebx, 0x104
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x5b0]
mov r8d, ebx
call fcn.14000bcd0
test eax, eax
jne 0x14000bee3
lea rcx, [rsp + 0x280]
mov r8, rdi
mov rdx, rbx
call fcn.1400986e0
lea r8, [rsp + 0x170]
lea rdx, [rsp + 0x280]
mov rcx, rsi
call fcn.140041e68
mov edi, 0x103
lea rcx, [rsp + 0x391]
mov r8, rdi
xor edx, edx
mov byte [rsp + 0x390], 0
call fcn.1400988d0
lea rcx, [rsp + 0x4a1]
mov r8, rdi
xor edx, edx
mov byte [rsp + 0x4a0], 0
call fcn.1400988d0
lea r11, [0x1400c63c0]
lea r9, [rsp + 0x170]
lea r8, [0x1400c63b8]
lea rcx, [rsp + 0x390]
mov rdx, rbx
mov qword [rsp + 0x20], r11
call fcn.14009841c
lea r9, [rsp + 0x390]
lea r8, str.DeleteFilesRecursively_looking_for__s_n
lea rcx, [0x14010f570]
mov edx, 0x20
call fcn.140001000
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x390]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
lea r8, str.DeleteFilesRecursively_handle_IS__d_n
lea rcx, [0x14010f570]
mov r9, rax
mov edx, 0x20
mov rdi, rax
call fcn.140001000
cmp rdi, 0xffffffffffffffff
jne 0x14000bfc0
jmp 0x14000c0b9
mov ebx, 0x104
lea rdx, [0x1400c6360]
lea rcx, [rsp + 0x5c]
call qword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
je 0x14000c054
lea rdx, [0x1400c635c]
lea rcx, [rsp + 0x5c]
call qword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
je 0x14000c054
lea rax, [rsp + 0x5c]
lea r9, [rsp + 0x170]
lea r8, str._s_s_
lea rcx, [rsp + 0x4a0]
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.14009841c
lea r9, [rsp + 0x4a0]
lea r8, str.DeleteFilesRecursively_looking_for_SUBFOLDER__s_n
lea rcx, [0x14010f570]
mov edx, 0x20
call fcn.140001000
test byte [rsp + 0x30], 0x10
je 0x14000c054
lea r8, [rsp + 0x4a0]
lea rdx, [rsp + 0x280]
mov rcx, rsi
call fcn.14000bd84
lea rdx, [rsp + 0x30]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x14000c073
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x14000bfc0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
cmp eax, 0x12
je 0x14000c0b0
test eax, eax
je 0x14000bfbb
mov ecx, eax
call fcn.14004d8f0
lea r8, str.FindNextFile
lea rdx, str._s_failed_returning__s_n
lea rcx, [0x14010f570]
mov r9, rax
call fcn.14004b7ec
mov eax, ebx
jmp 0x14000c0be
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
mov eax, reloc.OLEAUT32.dll_SafeArrayGetUBound
mov rcx, qword [rsp + 0x7c0]
xor rcx, rsp
call fcn.140061100
add rsp, 0x7d0
pop rdi
pop rsi
pop rbx
ret