Function at 0x1400016a0
Capabilities:
Copy file
Create directory
Enumerate files on windows
Enumerate files recursively

Disassembly:
push rbp
push rsi
push rbx
sub rsp, 0x320
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x2c0], rcx
mov qword [rbp + 0x2c8], rdx
lea rax, [rbp + 0x230]
lea r8, [0x1400bc00a]
mov rdx, qword [rbp + 0x2c0]
mov rcx, rax
call sym.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____std::operator_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____const__wchar_t_const_
lea rax, [rbp + 0x230]
mov rcx, rax
call method.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___.c_str___const
mov rcx, rax
lea rax, [rbp - 0x20]
mov rdx, rax
mov rax, qword [sym.imp.KERNEL32.dll_FindFirstFileW]
call rax
mov qword [rbp + 0x298], rax
cmp qword [rbp + 0x298], 0xffffffffffffffff
jne 0x14000171a
mov esi, 0
jmp 0x1400018f9
lea rax, [rbp - 0x20]
add rax, 0x2c
lea rdx, [0x1400bc010]
mov rcx, rax
call sym.wcscmp
test eax, eax
je 0x140001757
lea rax, [rbp - 0x20]
add rax, 0x2c
lea rdx, [0x1400bc014]
mov rcx, rax
call sym.wcscmp
test eax, eax
je 0x140001757
mov eax, 1
jmp 0x14000175c
mov eax, 0
test al, al
je 0x1400018bc
lea rax, [rbp + 0x250]
lea r8, [0x1400bc01a]
mov rdx, qword [rbp + 0x2c0]
mov rcx, rax
call sym.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____std::operator_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____const__wchar_t_const_
lea rax, [rbp - 0x60]
lea rdx, [rbp - 0x20]
lea rcx, [rdx + 0x2c]
lea rdx, [rbp + 0x250]
mov r8, rcx
mov rcx, rax
call sym.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____std::operator_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t_____wchar_t_const_
lea rax, [rbp + 0x250]
mov rcx, rax
call sym.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___::basic_string__
lea rax, [rbp + 0x270]
mov rdx, qword [rbp + 0x2c8]
lea r8, [0x1400bc01a]
mov rcx, rax
call sym.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____std::operator_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____const__wchar_t_const_
lea rax, [rbp - 0x40]
lea rdx, [rbp - 0x20]
lea rcx, [rdx + 0x2c]
lea rdx, [rbp + 0x270]
mov r8, rcx
mov rcx, rax
call sym.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____std::operator_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t_____wchar_t_const_
lea rax, [rbp + 0x270]
mov rcx, rax
call sym.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___::basic_string__
mov eax, dword [rbp - 0x20]
and eax, 0x10
test eax, eax
je 0x140001831
lea rax, [rbp - 0x40]
mov rcx, rax
call method.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___.c_str___const
mov edx, 0
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
call rax
lea rdx, [rbp - 0x40]
lea rax, [rbp - 0x60]
mov rcx, rax
call sym.CopyDirTo_std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____const__std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t____const_
jmp 0x140001889
lea rax, [rbp - 0x40]
mov rcx, rax
call method.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___.c_str___const
mov rbx, rax
lea rax, [rbp - 0x60]
mov rcx, rax
call method.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___.c_str___const
mov r8d, 0
mov rdx, rbx
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CopyFileW]
call rax
test eax, eax
sete al
test al, al
je 0x140001889
mov rax, qword [rbp + 0x298]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_FindClose]
call rax
mov esi, 0
mov ebx, 0
jmp 0x14000188e
mov ebx, 1
lea rax, [rbp - 0x40]
mov rcx, rax
call sym.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___::basic_string__
cmp ebx, 1
je 0x1400018a6
mov ebx, 0
jmp 0x1400018ab
mov ebx, 1
lea rax, [rbp - 0x60]
mov rcx, rax
call sym.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___::basic_string__
cmp ebx, 1
jne 0x1400018f9
lea rdx, [rbp - 0x20]
mov rax, qword [rbp + 0x298]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_FindNextFileW]
call rax
test eax, eax
setne al
test al, al
je 0x1400018e1
jmp 0x14000171a
mov rax, qword [rbp + 0x298]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_FindClose]
call rax
mov esi, 1
lea rax, [rbp + 0x230]
mov rcx, rax
call sym.std::__cxx11::basic_string_wchar_t__std::char_traits_wchar_t___std::allocator_wchar_t___::basic_string__
mov eax, esi
jmp 0x140001973
add rsp, 0x320
pop rbx
pop rsi
pop rbp
ret