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

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x2a8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x250], rcx
lea rax, [rbp + 0x120]
mov rdx, qword [rbp + 0x250]
lea r8, [0x140008272]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____std::operator_char__std::char_traits_char___std.allocator_char____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__char_const_
lea rax, [rbp + 0x120]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::c_str___const
mov rcx, rax
lea rax, [rbp - 0x20]
mov rdx, rax
mov rax, qword [sym.imp.KERNEL32.dll_FindFirstFileA]
call rax
mov qword [rbp + 0x218], rax
lea rax, [rbp + 0x120]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
cmp qword [rbp + 0x218], 0xffffffffffffffff
jne 0x140002650
mov ecx, 0x10
call sym.__cxa_allocate_exception
mov rbx, rax
lea rax, str.FindFirstFile_failed.
mov rdx, rax
mov rcx, rbx
call sym.std::runtime_error::runtime_error_char_const_
mov r8, qword [0x140008a80]
lea rax, sym.imp.libstdc_6.dll_operator_delete_void__unsigned_long_long_
mov rdx, rax
mov rcx, rbx
call sym.__cxa_throw
lea rax, [rbp + 0x14f]
mov qword [rbp + 0x208], rax
nop
nop
lea rcx, [rbp + 0x14f]
lea rax, [rbp - 0x20]
lea rdx, [rax + 0x2c]
lea rax, [rbp - 0x60]
mov r8, rcx
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const_
lea rax, [rbp + 0x14f]
mov rcx, rax
call method.std::__new_allocator_char_.__new_allocator__
nop
lea rax, [rbp - 0x60]
lea rdx, [0x14000828b]
mov rcx, rax
call method.bool_std::operator_char__std::char_traits_char___std.allocator_char____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__char_const_
test al, al
jne 0x1400026bc
lea rax, [rbp - 0x60]
lea rdx, [0x14000828d]
mov rcx, rax
call method.bool_std::operator_char__std::char_traits_char___std.allocator_char____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__char_const_
test al, al
je 0x1400026c3
mov eax, 1
jmp 0x1400026c8
mov eax, 0
test al, al
je 0x1400026d6
mov ebx, 0
jmp 0x1400027bb
lea rax, [rbp + 0x150]
mov rdx, qword [rbp + 0x250]
lea r8, [0x140008290]
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____std::operator_char__std::char_traits_char___std.allocator_char____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__char_const_
lea rax, [rbp - 0x40]
lea rcx, [rbp - 0x60]
lea rdx, [rbp + 0x150]
mov r8, rcx
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____std::operator_char__std::char_traits_char___std.allocator_char____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____std::__cxx11::basi
lea rax, [rbp + 0x150]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
mov eax, dword [rbp - 0x20]
and eax, 0x10
test eax, eax
je 0x14000276f
lea rax, [rbp + 0x170]
lea rdx, [rbp - 0x40]
mov r8, rdx
lea rdx, str.Directory:
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____std::operator_char__std::char_traits_char___std.allocator_char____char_const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
lea rax, [rbp + 0x170]
mov rcx, rax
call sym.Log_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
lea rax, [rbp + 0x170]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
lea rax, [rbp - 0x40]
mov rcx, rax
call sym.ListFilesAndDirectories_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
jmp 0x1400027aa
lea rax, [rbp + 0x190]
lea rdx, [rbp - 0x40]
mov r8, rdx
lea rdx, str.File:
mov rcx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____std::operator_char__std::char_traits_char___std.allocator_char____char_const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
lea rax, [rbp + 0x190]
mov rcx, rax
call sym.Log_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
lea rax, [rbp + 0x190]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
lea rax, [rbp - 0x40]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
mov ebx, 1
lea rax, [rbp - 0x60]
mov rcx, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
cmp ebx, 1
lea rdx, [rbp - 0x20]
mov rax, qword [rbp + 0x218]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_FindNextFileA]
call rax
test eax, eax
setne al
test al, al
jne 0x140002650
mov rax, qword [rbp + 0x218]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_FindClose]
call rax
jmp 0x1400029e6
add rsp, 0x2a8
pop rbx
pop rsi
pop rdi
pop rbp
ret