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

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x2a8
mov rax, qword [0x140027008]
xor rax, rsp
mov qword [rsp + 0x290], rax
mov byte [rsp + 0x20], 0
mov rax, qword [rsp + 0x2b0]
add rax, 8
mov rcx, rax
call fcn.140004a90
movzx eax, al
test eax, eax
jne 0x14000487b
cmp qword [rsp + 0x2b8], 0
je 0x14000487b
mov rax, qword [rsp + 0x2b0]
add rax, 8
mov rcx, rax
call fcn.1400049d0
cmp qword [rax], 0
jne 0x14000465e
mov rax, qword [rsp + 0x2b0]
add rax, 0x28
lea rdx, [0x1400233e0]
mov rcx, rax
call fcn.1400040e0
mov rax, qword [rsp + 0x2b0]
add rax, 0x28
mov rcx, rax
call fcn.140004300
lea rdx, [rsp + 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x28], 0xffffffffffffffff
je 0x140004648
mov rax, qword [rsp + 0x2b0]
add rax, 8
mov rcx, rax
call fcn.1400049d0
mov rcx, qword [rsp + 0x28]
mov qword [rax], rcx
mov rax, qword [rsp + 0x2b0]
add rax, 0x18
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.140004990
mov byte [rsp + 0x20], 1
mov rax, qword [rsp + 0x2b0]
add rax, 0x28
mov rcx, rax
call fcn.140004220
jmp 0x14000469f
mov rax, qword [rsp + 0x2b0]
add rax, 8
mov rcx, rax
call fcn.1400049d0
lea rdx, [rsp + 0x40]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x14000468e
mov dword [rsp + 0x24], 1
jmp 0x140004696
mov dword [rsp + 0x24], 0
movzx eax, byte [rsp + 0x24]
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x20]
test eax, eax
je 0x14000479c
lea rdx, [rsp + 0x40]
mov rcx, qword [rsp + 0x2b0]
call fcn.140004310
movzx eax, al
test eax, eax
je 0x140004734
lea rdx, [rsp + 0x40]
mov rcx, qword [rsp + 0x2b0]
call fcn.1400048a0
movzx eax, al
test eax, eax
jne 0x140004719
mov qword [rsp + 0x30], 0
mov rax, qword [rsp + 0x2b0]
add rax, 8
lea rdx, [rsp + 0x30]
mov rcx, rax
call fcn.140004ad0
mov rax, qword [rsp + 0x2b0]
add rax, 0x28
lea rdx, [rsp + 0x6c]
mov rcx, rax
call fcn.1400040e0
mov rdx, qword [rsp + 0x2b8]
mov rcx, qword [rsp + 0x2b0]
call fcn.140004550
mov byte [rsp + 0x20], al
jmp 0x140004797
mov rax, qword [rsp + 0x2b0]
add rax, 0x28
lea rdx, [rsp + 0x6c]
mov rcx, rax
call fcn.1400040e0
mov rax, qword [rsp + 0x2b0]
add rax, 0x28
mov rcx, rax
call fcn.140004300
mov rcx, qword [rsp + 0x2b8]
mov rdx, rax
call fcn.1400042d0
mov rax, qword [rsp + 0x2b8]
mov ecx, dword [rsp + 0x40]
mov dword [rax + 0x10000], ecx
mov rax, qword [rsp + 0x2b0]
add rax, 0x28
mov rcx, rax
call fcn.140004220
jmp 0x14000487b
mov rax, qword [rsp + 0x2b0]
add rax, 8
mov rcx, rax
call fcn.1400049d0
cmp qword [rax], 0
je 0x14000487b
mov rax, qword [rsp + 0x2b0]
add rax, 0x28
mov rcx, rax
call fcn.140004300
mov rcx, qword [rsp + 0x2b8]
mov rdx, rax
call fcn.1400042d0
mov rax, qword [rsp + 0x2b0]
add rax, 0x18
mov rcx, rax
call fcn.1400049d0
mov rcx, qword [rsp + 0x2b8]
mov eax, dword [rax]
mov dword [rcx + 0x10000], eax
mov rax, qword [rsp + 0x2b0]
add rax, 8
mov rcx, rax
call fcn.1400049d0
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rax, qword [rsp + 0x2b0]
add rax, 8
mov rcx, rax
call fcn.140004940
mov rax, qword [rsp + 0x2b0]
add rax, 0x18
mov rcx, rax
call fcn.140004940
mov rax, qword [rsp + 0x2b0]
add rax, 8
mov rcx, rax
call fcn.140004a90
movzx eax, al
test eax, eax
jne 0x140004876
mov rax, qword [rsp + 0x2b0]
add rax, 0x28
mov rcx, rax
call fcn.140004220
mov byte [rsp + 0x20], 1
movzx eax, byte [rsp + 0x20]
mov rcx, qword [rsp + 0x290]
xor rcx, rsp
call fcn.140009590
add rsp, 0x2a8
ret