Function at 0x140058600
Capabilities:
Check if file exists
Create directory
Get file attributes

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x60
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov rsi, rcx
mov r8, rdx
mov edx, 0x66
call sub.mfc140u.dll_CDataRecoveryHandler::CDataRecoveryHandler
nop
lea rax, vtable.CHookDlg.0
mov qword [rsi], rax
lea rcx, [rsi + 0x130]
call fcn.1400a3640
nop
lea rbx, [rsi + 0x290]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
lea r14, vtable.CStatic.0
mov qword [rbx], r14
lea rbx, [rsi + 0x378]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
lea r15, vtable.CButton.0
mov qword [rbx], r15
lea rbx, [rsi + reloc.mfc140u.dll_CDockingManager::CDockingManager]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r15
lea rbx, [rsi + 0x548]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r15
lea rbx, [rsi + 0x630]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r15
lea rbx, [rsi + 0x718]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r15
lea rbx, [rsi + 0x800]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r15
lea rbx, [rsi + 0x8e8]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r15
lea rbx, [rsi + 0x9d0]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r15
mov byte [rsi + 0xab8], 0
lea rcx, [rsi + 0xac0]
call sub.mfc140u.dll_CHandleMap::CHandleMap
nop
xor r12d, r12d
mov qword [rsi + 0xad8], r12
lea rbp, vtable.CBitmap.0
mov qword [rsi + 0xad0], rbp
mov qword [rsi + CDatabase::classCDatabase], r12
mov qword [rsi + CPaneDivider::CheckVisibility], rbp
mov qword [rsi + 0xaf8], r12
mov qword [rsi + CMFCVisualManagerOffice2007::CleanStyle], rbp
mov qword [rsi + 0xb08], r12
mov qword [rsi + 0xb00], rbp
mov qword [rsi + 0xb18], r12
mov qword [rsi + 0xb10], rbp
mov qword [rsi + 0xb28], r12
mov qword [rsi + 0xb20], rbp
mov qword [rsi + 0xb38], r12
mov qword [rsi + 0xb30], rbp
mov qword [rsi + 0xb48], r12
mov qword [rsi + 0xb40], rbp
mov qword [rsi + CWinApp::CloseAllDocuments], r12
mov qword [rsi + 0xb50], rbp
mov qword [rsi + CMFCTasksPane::CollapseAllGroups], r12
mov qword [rsi + 0xb60], rbp
mov qword [rsi + 0xb78], r12
mov qword [rsi + 0xb70], rbp
mov qword [rsi + 0xb88], r12
mov qword [rsi + 0xb80], rbp
mov qword [rsi + 0xb98], r12
mov qword [rsi + 0xb90], rbp
mov qword [rsi + 0xba8], r12
mov qword [rsi + 0xba0], rbp
lea rcx, [rsi + 0xbb0]
lea rbx, [fcn.1400a39f0]
mov qword [rsp + 0x20], rbx
lea r9, [fcn.1400a3640]
mov edx, 0x160
mov r8d, 0x1f4
call fcn.1400f6f8c
nop
lea rcx, [rsi + 0x2bb30]
mov qword [rsp + 0x20], rbx
lea r9, [fcn.1400a3640]
mov edx, 0x160
mov r8d, 0x1f4
call fcn.1400f6f8c
nop
lea rcx, [rsi + 0x56ab0]
mov rax, qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov qword [rsp + 0x20], rax
mov r9, qword [sym.imp.mfc140u.dll_Ordinal_296]
lea edx, [r12 + 8]
lea r8d, [r12 + 0x64]
call fcn.1400f6f8c
nop
lea rcx, [rsi + 0x56de0]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsi + 0x56de8]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
mov byte [rsi + 0x56df0], r12b
lea rcx, [rsi + 0x56e00]
call fcn.140075920
nop
lea rcx, [rsi + 0x56ec0]
call fcn.1400c7910
nop
lea rcx, [rsi + 0x58908]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
mov qword [rsi + 0x58978], r12
lea rbx, vtable.CBrush.0
mov qword [rsi + 0x58970], rbx
lea rcx, [rsi + 0x58988]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsi + 0x58990]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsi + 0x58998]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsi + 0x589a0]
call fcn.140038ce0
nop
lea rcx, [rsi + 0x589e0]
lea rdx, [0x1401398e0]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__8]
nop
lea rcx, [rsi + 0x589e8]
lea rdx, [0x1401398e0]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__8]
nop
lea rcx, [rsi + 0x589f0]
lea rdx, [0x1401398e0]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__8]
nop
mov word [rsi + 0x589f8], r12w
mov byte [rsi + 0x589fa], 1
mov qword [rsi + 0x59680], r12
lea rcx, [rsi + 0x596b0]
lea rdx, [0x14012c468]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__9]
nop
lea rcx, [rsi + 0x596b8]
lea rdx, str.Blue_Border
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__8]
nop
mov word [rsi + 0x596c0], 0x101
mov byte [rsi + 0x596c2], 1
mov qword [rsi + 0x599f8], r12
lea rax, vtable.CFont.0
mov qword [rsi + 0x599f0], rax
mov qword [rsi + 0x59a08], r12
mov qword [rsi + 0x59a00], rax
mov byte [rsi + 0x59a25], r12b
mov qword [rsi + 0x59a30], r12
mov qword [rsi + 0x59a28], rax
lea rcx, [rsi + 0x59a38]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
mov qword [rsi + 0x59a50], r12
mov qword [rsi + 0x59a48], rbx
lea rbx, [rsi + 0x59a58]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
lea rdi, vtable.CListBox.0
mov qword [rbx], rdi
lea rbx, [rsi + 0x59b40]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], rdi
lea rcx, [rsi + 0x59c28]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsi + 0x59c30]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rbx, [rsi + 0x59c38]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], rdi
mov byte [rsi + 0x59d24], r12b
lea rcx, [rsi + 0x59d30]
mov rax, qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov qword [rsp + 0x20], rax
mov r9, qword [sym.imp.mfc140u.dll_Ordinal_296]
lea edx, [r12 + 8]
lea r8d, [r12 + 0x64]
call fcn.1400f6f8c
nop
lea rcx, [rsi + 0x5a058]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsi + 0x5a060]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsi + 0x5a068]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rbx, [rsi + 0x5a078]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r15
mov qword [rsi + 0x5a160], r12
mov qword [rsi + 0x5a168], r12
lea rcx, [rsi + 0x5a170]
call sub.mfc140u.dll_CDaoRecordView::CDaoRecordView
nop
mov qword [rsi + 0x5a198], r12
mov qword [rsi + 0x5a190], rbp
lea rcx, [rsi + 0x5a1b0]
call fcn.14008c860
nop
lea rbx, [rsi + 0x5a838]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r14
lea rbx, [rsi + 0x5a920]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r15
lea rbx, [rsi + 0x5aa10]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
lea rax, vtable.CComboBox.0
mov qword [rbx], rax
lea rbx, [rsi + 0x5aaf8]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], r15
lea rbx, [rsi + 0x5abe0]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
lea rax, vtable.CTreeCtrl.0
mov qword [rbx], rax
lea rbx, [rsi + 0x5acc8]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
lea rax, vtable.CRichEditCtrl.0
mov qword [rbx], rax
lea rcx, [rsi + 0x5adb0]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsi + 0x5adb8]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsi + 0x5adc0]
call fcn.14007df90
nop
lea rcx, [rsi + 0x5b0f8]
lea rdx, [0x14012c468]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__9]
nop
lea rbx, [rsi + 0x5b100]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
lea rax, vtable.CEdit.0
mov qword [rbx], rax
lea rbx, [rsi + 0x5b1e8]
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call sub.mfc140u.dll_CUserToolsManager::CUserToolsManager
mov qword [rbx], rdi
lea rcx, [rsi + 0x5b2d0]
lea rdx, [0x14012c468]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__9]
nop
lea rcx, [rsi + 0x5b2e0]
mov rax, qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov qword [rsp + 0x20], rax
mov r9, qword [sym.imp.mfc140u.dll_Ordinal_296]
lea edx, [r12 + 8]
mov r8d, 0x1f4
call fcn.1400f6f8c
nop
mov dword [rsi + 0x5b2d8], r12d
call fcn.14004c330
mov qword [0x1401b6e80], rax
mov r8, qword [rax]
mov edx, 0xe5caa9
mov rcx, rax
call qword [r8 + gethostname]
mov rcx, qword [0x1401b6e80]
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x30]
call sub.mfc140u.dll_AfxFieldText
lea edx, [r12 + 0xe]
lea ecx, [rdx + 0x64]
call sub.mfc140u.dll_AfxCriticalNewHandler
mov rcx, rax
lea edx, [r12 + 0x72]
call qword [sym.imp.USER32.dll_LoadIconW]
mov qword [rsi + 0x59a40], rax
mov byte [rsi + 0x588e0], r12b
mov byte [rsi + 0x59a12], 1
lea rcx, [rsp + 0xb8]
call fcn.1400e91b0
nop
lea rcx, [rsp + 0xb8]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x140058d01
lea rcx, [rsp + 0xb8]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea rcx, [rsp + 0xb0]
call fcn.1400e8ea0
nop
lea rcx, [rsp + 0xb0]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x140058d44
lea rcx, [rsp + 0xb0]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov rcx, rsi
call fcn.140070020
mov dword [rsi + 0x56dd4], r12d
mov qword [rsi + 0x588f0], 0xffffffffffffffff
mov dword [rsi + 0x588c8], 0xffffffff
mov dword [rsi + 0x5a1a8], r12d
mov dword [rsi + 0x599e8], r12d
mov word [rsi + 0x59a10], 0x100
mov dword [rsi + 0x5aa08], r12d
mov dword [rsi + 0x59d20], 0xffffffff
mov rcx, rsi
call fcn.14006bbb0
lea rax, [rsp + 0x30]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x50], rax
lea rdx, [0x14013e710]
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__8]
mov rdi, rax
lea rdx, str.in_chookdlg_constructor
lea rcx, [rsp + 0x38]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__8]
mov rbx, rax
call sub.mfc140u.dll_AfxFieldText
nop
mov r9d, 0xffffffff
mov r8, rdi
mov rdx, rbx
mov rcx, qword [rax + 8]
call fcn.140058140
nop
lea rcx, [rsp + 0xb0]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rsp + 0xb8]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
mov rax, rsi
add rsp, 0x60
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret