Function at 0x140004aa0
Capabilities:
Get file size
Get file system object information

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x330
mov rax, qword [0x140013010]
xor rax, rsp
mov qword [rsp + 0x320], rax
mov r12, r8
mov r14, rdx
mov r15, rcx
xor esi, esi
mov dword [rsp + 0x310], esi
lea rbx, [rcx + 0xe8]
mov qword [rsp + 0x48], rbx
mov rcx, rbx
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x140004afd
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
nop
mov rcx, r14
call qword [sym.imp.mfc140u.dll_CMFCRibbonUndoButton::GetIconSize]
mov rdx, rax
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc140u.dll_Ordinal_285]
mov dword [rsp + 0x310], 1
lea r9, [0x14000cda8]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp word [r9 + rax*2], 0
jne 0x140004b30
mov rdx, qword [r14]
mov dword [rsp + 0x20], eax
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc140u.dll_CMFCTasksPane::CollapseAllGroups]
mov r8, r12
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x318]
call fcn.140006270
nop
lea rcx, [rsp + 0x40]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
mov rcx, qword [rsp + 0x318]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x140004baf
mov rbp, rsi
jmp 0x140004bf1
xor eax, eax
mov qword [rsp + 0x310], rax
lea rdx, [rsp + 0x310]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
mov rcx, qword [rsp + 0x310]
test eax, eax
cmove rcx, rsi
mov qword [rsp + 0x310], rcx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rbp, qword [rsp + 0x310]
lea r9, [0x14000b614]
xor r8d, r8d
mov edx, 0x180
mov rcx, qword [r15 + 0x40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r13, rax
mov ecx, 0x30
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonLinkCtrl::XElementButtonLinkCtrl]
mov rdi, rax
mov qword [rsp + 0x310], rax
test rax, rax
je 0x140004c4f
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
mov qword [rax], rsi
mov qword [rax + 8], rsi
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rsi
mov qword [rax + 0x28], rsi
jmp 0x140004c52
mov rdi, rsi
mov ecx, 8
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonLinkCtrl::XElementButtonLinkCtrl]
mov qword [rsp + 0x310], rax
test rax, rax
je 0x140004c78
mov rdx, r14
mov rcx, rax
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__1]
jmp 0x140004c7b
mov rax, rsi
mov qword [rdi], rax
mov ecx, 8
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonLinkCtrl::XElementButtonLinkCtrl]
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140004ca2
mov rdx, r12
mov rcx, rax
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__1]
mov rsi, rax
mov qword [rdi + 8], rsi
xor edx, edx
mov r8d, 0x2b8
lea rcx, [rsp + 0x50]
call sub.VCRUNTIME140.dll_memset
mov dword [rsp + 0x20], ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>
mov r9d, 0x2b8
lea r8, [rsp + 0x50]
mov edx, 0x80
mov rcx, qword [rsp + 0x318]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov rax, qword [rsp + 0x50]
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], rbp
movsxd r8, r13d
mov r9, rdi
mov edx, 0x19a
mov rcx, qword [r15 + 0x40]
call qword [sym.imp.USER32.dll_SendMessageW]
nop
lea rcx, [rsp + 0x318]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
mov rcx, rbx
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
xor eax, eax
mov rcx, qword [rsp + 0x320]
xor rcx, rsp
call fcn.1400080a0
mov rbx, qword [rsp + 0x388]
add rsp, 0x330
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret