Function at 0x1400aa590
Capabilities:
Copy file

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xf0
mov qword [rbp + 0x17], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov r13, r8
mov rbx, rdx
mov rdi, rcx
xor r12d, r12d
mov dword [rbp + 0x7f], r12d
lea rcx, [rbp - 0x21]
call sub.mfc140u.dll_CEnumFormatEtc::CEnumFormatEtc
nop
mov r8, rbx
lea rdx, [rbp - 0x39]
mov rcx, rdi
call fcn.1400ab320
nop
lea r8, [0x1401335f0]
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x41]
call fcn.1400a74a0
nop
lea rcx, [rbp - 0x41]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdx, rax
xor r8d, r8d
lea rcx, [rbp - 0x21]
call sub.mfc140u.dll_CResetPropExchange::ExchangePersistentProp
test eax, eax
je 0x1400aaa54
nop dword [rax]
lea rcx, [rbp - 0x21]
call sub.mfc140u.dll_Ordinal_4578
mov dword [rsp + 0x48], eax
lea rcx, [rbp - 0x21]
call sub.mfc140u.dll_CDC::HIMETRICtoDP
test eax, eax
jne 0x1400aaa49
lea edx, [rax + 0x10]
lea rcx, [rbp - 0x21]
mov r8, qword [rbp - 0x21]
call qword [r8 + 0x80]
test eax, eax
jne 0x1400aaa49
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x21]
call sub.mfc140u.dll_Ordinal_5385
nop
mov edx, 0x5c
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc140u.dll_COleControl::ReleaseCaches]
mov ebx, eax
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
sub eax, ebx
lea r8d, [rax - 1]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc140u.dll_Ordinal_12600]
nop
mov rcx, r13
call qword [sym.imp.mfc140u.dll_CMFCRibbonUndoButton::GetIconSize]
mov r8, rax
lea rdx, [0x140152ba8]
lea rcx, [rbp - 0x59]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__4]
nop
lea rcx, [rbp - 0x59]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdx, rax
mov rcx, r13
call qword [sym.imp.mfc140u.dll_Ordinal_2903]
mov ebx, eax
lea rcx, [rbp - 0x59]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
test ebx, ebx
jne 0x1400aa874
lea rdx, str.AnakageCoursespackagerfiles32bit_techselfsupport_
lea rcx, [rbp - 0x79]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__8]
nop
lea rcx, [rbp - 0x31]
call fcn.1400e91b0
mov r14, rax
mov rcx, rax
call qword [sym.imp.mfc140u.dll_CMFCRibbonUndoButton::GetIconSize]
mov rdx, rax
lea rcx, [rbp - 0x51]
call qword [sym.imp.mfc140u.dll_Ordinal_285]
mov r15, rax
or r12d, 2
mov dword [rbp + 0x7f], r12d
mov dword [rsp + 0x38], r12d
lea rcx, [rbp - 0x79]
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
mov esi, eax
lea rcx, [rbp - 0x79]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdi, rax
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
mov ebx, eax
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdx, rax
mov dword [rsp + 0x20], esi
mov r9, rdi
mov r8d, ebx
lea rcx, [rbp - 0x51]
call qword [sym.imp.mfc140u.dll_CMFCTasksPane::CollapseAllGroups]
nop
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonUndoButton::GetIconSize]
mov rdx, rax
lea rcx, [rbp - 0x71]
call qword [sym.imp.mfc140u.dll_Ordinal_285]
or r12d, 4
mov dword [rbp + 0x7f], r12d
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
mov esi, eax
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdi, rax
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
mov ebx, eax
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdx, rax
mov dword [rsp + 0x20], esi
mov r9, rdi
mov r8d, ebx
lea rcx, [rbp - 0x71]
call qword [sym.imp.mfc140u.dll_CMFCTasksPane::CollapseAllGroups]
and r12d, 0xfffffffd
mov dword [rbp + 0x7f], r12d
lea rcx, [rbp - 0x51]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x31]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x79]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
lea rcx, [rbp - 0x71]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rbx, rax
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rcx, rax
mov r8d, 1
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_CopyFileW]
mov rbx, qword [rbp + 0x67]
mov rax, qword [rbx + 0x2b660]
cmp qword [rbx + 0x2b668], rax
je 0x1400aa84e
lea rdx, [rsp + 0x30]
mov rcx, rax
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__5]
add qword [rbx + 0x2b660], 8
jmp 0x1400aa862
lea r8, [rsp + 0x30]
mov rdx, rax
lea rcx, [rbx + 0x2b658]
call fcn.1400a6b40
mov r12d, dword [rsp + 0x38]
and r12d, 0xfffffff9
lea rcx, [rbp - 0x71]
jmp 0x1400aaa00
lea rdx, str.AnakageCoursespackagerfiles64bit_techselfsupport_
lea rcx, [rbp - 0x69]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__8]
nop
lea rcx, [rbp - 0x29]
call fcn.1400e91b0
mov r14, rax
mov rcx, rax
call qword [sym.imp.mfc140u.dll_CMFCRibbonUndoButton::GetIconSize]
mov rdx, rax
lea rcx, [rbp - 0x49]
call qword [sym.imp.mfc140u.dll_Ordinal_285]
mov r15, rax
or r12d, 8
mov dword [rbp + 0x7f], r12d
mov dword [rsp + 0x38], r12d
lea rcx, [rbp - 0x69]
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
mov esi, eax
lea rcx, [rbp - 0x69]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdi, rax
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
mov ebx, eax
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdx, rax
mov dword [rsp + 0x20], esi
mov r9, rdi
mov r8d, ebx
lea rcx, [rbp - 0x49]
call qword [sym.imp.mfc140u.dll_CMFCTasksPane::CollapseAllGroups]
nop
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCRibbonUndoButton::GetIconSize]
mov rdx, rax
lea rcx, [rbp - 0x61]
call qword [sym.imp.mfc140u.dll_Ordinal_285]
or r12d, 0x10
mov dword [rbp + 0x7f], r12d
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
mov esi, eax
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdi, rax
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CMFCPropertyGridProperty::GetHierarchyLevel]
mov ebx, eax
mov rcx, r15
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdx, rax
mov dword [rsp + 0x20], esi
mov r9, rdi
mov r8d, ebx
lea rcx, [rbp - 0x61]
call qword [sym.imp.mfc140u.dll_CMFCTasksPane::CollapseAllGroups]
and r12d, 0xfffffff7
mov dword [rbp + 0x7f], r12d
lea rcx, [rbp - 0x49]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x29]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x69]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
lea rcx, [rbp - 0x61]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rbx, rax
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rcx, rax
mov r8d, 1
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_CopyFileW]
mov rbx, qword [rbp + 0x67]
mov rax, qword [rbx + 0x2b660]
cmp qword [rbx + 0x2b668], rax
je 0x1400aa9df
lea rdx, [rsp + 0x30]
mov rcx, rax
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__5]
add qword [rbx + 0x2b660], 8
jmp 0x1400aa9f3
lea r8, [rsp + 0x30]
mov rdx, rax
lea rcx, [rbx + 0x2b658]
call fcn.1400a6b40
mov r12d, dword [rsp + 0x38]
and r12d, 0xffffffe7
lea rcx, [rbp - 0x61]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc140u.dll_CDumpContext::operator___1]
mov rdx, rax
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___void_const____ptr64____ptr64]
mov rcx, rax
lea rdx, [0x14000f8e0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
cmp dword [rsp + 0x48], 0
jne 0x1400aa620
lea rcx, [rbp - 0x21]
call sub.mfc140u.dll_CMFCVisualManagerOffice2007::CleanStyle
nop
lea rcx, [rbp - 0x41]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x39]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x21]
call sub.mfc140u.dll_CDockSite::CDockSite
nop
mov rcx, r13
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov rbx, qword [rsp + 0x138]
add rsp, 0xf0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret