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

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x708
mov qword [rsp + 0x80], 0xfffffffffffffffe
mov rax, qword [0x1404f5550]
xor rax, rsp
mov qword [rsp + CPagerCtrl::CreateEx], rax
mov rdi, r9
mov rbx, r8
mov rsi, rdx
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x70], r9
mov rbp, qword [rsp + 0x750]
lea rdx, [0x140415208]
mov rcx, r8
call qword [sym.imp.MSVCR90.dll_wcscmp]
xor ecx, ecx
cmp eax, ecx
je 0x14001afef
lea rdx, [0x140415200]
mov rcx, rbx
call qword [sym.imp.MSVCR90.dll_wcscmp]
xor ebx, ebx
cmp eax, ebx
je 0x14001afef
mov rcx, rbp
call qword [sym.imp.mfc90u.dll_CStatusBar::GetThisMessageMap]
cmp al, bl
je 0x14001afef
mov rbx, qword [rsp + 0x38]
mov rdx, rbx
lea rcx, [rsp + 0x4f0]
call qword [sym.imp.MSVCR90.dll_wcscpy]
mov rdx, rsi
lea rcx, [rsp + 0x4f0]
call qword [sym.imp.MSVCR90.dll_wcscat]
lea rcx, [rsp + 0x40]
call qword [0x140409500]
nop
lea r8, [rsp + 0x4f0]
lea rdx, str.Directory____s
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc90u.dll_COleServerDoc::XOleObject::EnumAdvise]
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x4f0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rsi, rax
cmp rax, 0xffffffffffffffff
je 0x14001afce
mov rdx, rbx
lea rcx, [rsp + 0x30]
call qword [0x1404094a8]
nop
lea rdx, [0x140414e8c]
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc90u.dll_AfxWinInit]
lea rdx, [rsp + 0xbc]
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc90u.dll_AfxWinInit]
xor eax, eax
mov word [rsp + 0x2e0], ax
xor edx, edx
mov r8d, COleVariant::COleVariant
lea rcx, [rsp + 0x2e2]
call sub.MSVCR90.dll_memset
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc90u.dll_CDumpContext::operator___1]
mov rdx, rax
lea rcx, [rsp + 0x2e0]
call qword [sym.imp.MSVCR90.dll_wcscpy]
mov rcx, rbp
call qword [sym.imp.mfc90u.dll_CStatusBar::GetThisMessageMap]
test al, al
je 0x14001afc3
test byte [rsp + 0x90], 0x10
je 0x14001af26
lea rax, [rsp + 0x58]
mov qword [rsp + 0x60], rax
mov rdx, rdi
lea rcx, [rsp + 0x58]
call qword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_class]
nop
mov qword [rsp + 0x20], rbp
mov r9, rax
lea r8, [rsp + 0xbc]
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x2e0]
call fcn.14001ad60
jmp 0x14001af84
lea rax, [rsp + 0x50]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x78], rax
mov rdx, rdi
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_class]
mov rbx, rax
lea rdx, [rsp + 0x2e0]
lea rcx, [rsp + 0x48]
call qword [0x1404094a8]
nop
mov r9, rbp
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x90]
call fcn.14001aca0
test al, al
jne 0x14001afb6
inc dword [0x1404f68d8]
mov rbx, qword [rsp + 0x38]
lea rdx, [rsp + 0x90]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x14001afa9
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc90u.dll_CView::CView]
jmp 0x14001ae5f
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc90u.dll_CView::CView]
jmp 0x14001afce
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc90u.dll_CView::CView]
jmp 0x14001afce
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc90u.dll_CView::CView]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc90u.dll_CView::CView]
nop
mov rcx, rdi
call qword [sym.imp.mfc90u.dll_CView::CView]
jmp 0x14001aff8
mov rcx, rdi
call qword [sym.imp.mfc90u.dll_CView::CView]
mov rcx, qword [rsp + 0x6f0]
xor rcx, rsp
call fcn.1403c2380
add rsp, 0x708
pop rdi
pop rsi
pop rbp
pop rbx
ret