Function at 0x180003dd0
Capabilities:
Check if file exists
Delete file

Disassembly:
test rdx, rdx
je 0x180005137
mov rax, rsp
mov dword [rax + 0x20], r9d
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x198]
sub rsp, 0x258
mov qword [rbp + 0x100], 0xfffffffffffffffe
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
mov r12d, r9d
mov r15d, r8d
mov r14, rdx
mov rsi, rcx
lea rdx, [0x1800866ac]
lea rcx, [rsp + 0x30]
call qword [0x18007ff50]
nop
lea rdx, [0x1800866ac]
lea rcx, [rbp - 0x28]
call qword [0x18007ff50]
nop
lea rcx, [rsp + 0x50]
call qword [0x18007ff70]
nop
lea rcx, [rbp - 0x68]
call qword [0x18007ff70]
nop
lea rdx, [0x1800866ac]
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CVSListBoxBase::CVSListBoxBase]
mov dword [rsp + 0x58], 0xffffffff
xor eax, eax
mov dword [rsp + 0x5c], eax
mov qword [rsp + 0x60], 0xffffff
mov qword [rsp + 0x68], 1
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], 1
mov qword [rbp - 0x70], rax
lea rdx, [0x1800866ac]
lea rcx, [rbp - 0x68]
call qword [sym.imp.mfc100u.dll_CVSListBoxBase::CVSListBoxBase]
nop
mov r13d, r15d
mov dword [rsp + 0x38], r15d
mov ebx, dword [rbp + 0x1c0]
mov edi, dword [rbp + 0x1c8]
cmp r15d, r12d
jg 0x1800046cf
mov r15, qword [rbp + 0x1d0]
movsd xmm6, qword [0x18008c670]
mov r12d, ebx
mov dword [rsp + 0x40], ebx
cmp ebx, edi
jg 0x180004677
nop
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x38]
lea rdx, [rbp - 0x38]
mov rcx, r14
call sym.HgPreviewU.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_CHgPreViewGridCtrl::GetCellTextExcel_int_const____ptr64__int_const____ptr64____ptr64
nop
mov rdx, rax
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CView::CView]
nop
lea rcx, [rbp - 0x38]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
lea rdx, [0x1800866ac]
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CDatabase::Close]
test eax, eax
jne 0x180003f76
mov rax, qword [r14]
mov r9d, r12d
mov r8d, r13d
lea rdx, [rbp - 0x10]
mov rcx, r14
call qword [rax + 0x2e8]
nop
mov rdx, rax
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CView::CView]
nop
lea rcx, [rbp - 0x10]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
xor r8d, r8d
lea rdx, [0x1800866b4]
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CArchive::EnsureSchemaMapExists]
cmp eax, 0xffffffff
je 0x180004232
lea rcx, [rbp + 0x28]
call qword [sym.imp.mfc100u.dll_CSmartDockingManager::CSmartDockingManager]
nop
or r8, 0xffffffffffffffff
xor edx, edx
lea rcx, [rbp + 0x28]
call qword [sym.imp.mfc100u.dll_CMFCPropertyGridCtrl::SetGroupNameFullWidth]
xor edx, edx
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CTaskDialog::FreeStruct]
mov rdx, rax
lea r8, [rbp + 0x28]
mov rcx, rsi
call sym.HgPreviewU.dll_private:_void___cdecl_HgPreviewXLControl::GetRefSheetName_wchar_t____ptr64__class_CStringArray____ptr64____ptr64
lea rcx, [rbp]
call qword [sym.imp.mfc100u.dll_CPropertyPage::CPropertyPage]
nop
lea rax, vtable.CSimpleTypedArray_int_.0
mov qword [rbp], rax
xor edx, edx
lea r8d, [rdx + 0x10]
lea rcx, [rbp]
call qword [sym.imp.mfc100u.dll_CMFCTasksPane::SetGroupName]
nop
lea rax, vtable.CBOOLArray.0
mov qword [rbp], rax
xor edi, edi
mov rax, qword [rbp + 0x10]
movsxd rbx, eax
test eax, eax
jle 0x18000403e
nop word [rax + rax]
test rdi, rdi
js 0x180004690
cmp rdi, rax
jge 0x180004690
mov rax, qword [rbp + 8]
mov rcx, qword [rax + rdi*8]
call qword [sym.imp.mfc100u.dll_CThreadLocalObject::CThreadLocalObject]
inc rdi
cmp rdi, rbx
jge 0x18000403e
mov rax, qword [rbp + 0x10]
jmp 0x180004010
or r8, 0xffffffffffffffff
xor edx, edx
lea rcx, [rbp]
call qword [sym.imp.mfc100u.dll_CMFCTasksPane::SetGroupName]
xor edi, edi
cmp qword [rbp + 0x38], rdi
jle 0x18000408d
nop word [rax + rax]
mov ecx, 4
call qword [sym.imp.mfc100u.dll_CTagManager::CTagManager]
mov dword [rax], 0
mov r8, rax
mov rdx, qword [rbp + 0x10]
lea rcx, [rbp]
call qword [sym.imp.mfc100u.dll_RFX_Single]
inc edi
movsxd rax, edi
cmp rax, qword [rbp + 0x38]
jl 0x180004060
xor esi, esi
mov rax, qword [r15 + 0x10]
test rax, rax
jle 0x18000414c
xor ecx, ecx
nop
test rcx, rcx
js 0x1800046a5
cmp rcx, rax
jge 0x1800046a5
mov rax, qword [r15 + 8]
lea rdx, [rax + rcx*8]
lea rcx, [rbp - 0x50]
call qword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
nop
xor edi, edi
xor ebx, ebx
mov rax, qword [rbp + 0x38]
test rax, rax
jle 0x180004130
xor ecx, ecx
test rcx, rcx
js 0x18000469e
cmp rcx, rax
jge 0x18000469e
mov rax, qword [rbp + 0x30]
lea rcx, [rax + rcx*8]
mov rdx, qword [rbp - 0x50]
call qword [sym.imp.mfc100u.dll_CMemFile::Close]
test eax, eax
je 0x18000410f
inc edi
inc rbx
movsxd rcx, edi
mov rax, qword [rbp + 0x38]
cmp rcx, rax
jl 0x1800040d4
jmp 0x180004130
test rbx, rbx
js 0x180004697
cmp rbx, qword [rbp + 0x10]
jge 0x180004697
mov rax, qword [rbp + 8]
mov rcx, qword [rax + rbx*8]
mov dword [rcx], 1
lea rcx, [rbp - 0x50]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
inc esi
mov rax, qword [r15 + 0x10]
movsxd rcx, esi
cmp rcx, rax
jl 0x1800040a0
xor edi, edi
xor edx, edx
mov r8, qword [rbp + 0x10]
test r8, r8
jle 0x1800041c2
nop dword [rax]
test rdx, rdx
js 0x1800046ac
cmp rdx, r8
jge 0x1800046ac
mov rax, qword [rbp + 8]
mov rcx, qword [rax + rdx*8]
cmp dword [rcx], 0
je 0x18000418e
inc edi
inc rdx
movsxd rax, edi
cmp rax, r8
jl 0x180004160
jmp 0x1800041c2
mov rax, qword [r14]
mov r9d, r12d
mov r8d, r13d
lea rdx, [rbp - 0x18]
mov rcx, r14
call qword [rax + 0x2f0]
nop
mov rdx, rax
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CView::CView]
nop
lea rcx, [rbp - 0x18]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
mov r8, qword [rbp + 0x10]
lea rax, vtable.CSimpleTypedArray_int_.0
mov qword [rbp], rax
xor edi, edi
movsxd rbx, r8d
test r8d, r8d
jle 0x180004205
test rdi, rdi
js 0x1800046b3
cmp rdi, r8
jge 0x1800046b3
mov rax, qword [rbp + 8]
mov rcx, qword [rax + rdi*8]
call qword [sym.imp.mfc100u.dll_CThreadLocalObject::CThreadLocalObject]
inc rdi
cmp rdi, rbx
jge 0x180004205
mov r8, qword [rbp + 0x10]
jmp 0x1800041d7
or r8, 0xffffffffffffffff
xor edx, edx
lea rcx, [rbp]
call qword [sym.imp.mfc100u.dll_CMFCTasksPane::SetGroupName]
nop
lea rcx, [rbp]
call qword [sym.imp.mfc100u.dll_COleUpdateDialog::COleUpdateDialog]
nop
lea rcx, [rbp + 0x28]
call qword [sym.imp.mfc100u.dll_CSemaphore::CSemaphore]
mov rsi, qword [rbp + 0x1a0]
lea rdx, [0x1800866ac]
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CVSListBoxBase::CVSListBoxBase]
mov dword [rsp + 0x58], 0xffffffff
xor ebx, ebx
mov dword [rsp + 0x5c], ebx
mov qword [rsp + 0x60], 0xffffff
mov qword [rsp + 0x68], 1
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x78], 1
mov qword [rbp - 0x70], rbx
lea rdx, [0x1800866ac]
lea rcx, [rbp - 0x68]
call qword [sym.imp.mfc100u.dll_CVSListBoxBase::CVSListBoxBase]
mov r8d, r12d
mov edx, r13d
mov rcx, r14
call qword [sym.imp.ShGridU.dll_public:_struct_tagLOGFONTW____ptr64___cdecl_CGridCtrl::GetItemFont_int__int____ptr64]
mov rdi, rax
test rax, rax
je 0x180004358
movd xmm0, dword [rax]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm6
cvttsd2si ecx, xmm0
mov dword [rsp + 0x58], ecx
test r13d, r13d
js 0x180004338
cmp r13d, dword [r14 + 0x418]
jge 0x180004338
test r12d, r12d
js 0x180004338
cmp r12d, dword [r14 + 0x420]
jge 0x180004338
movsxd rcx, r13d
test r13d, r13d
js 0x1800046c1
cmp rcx, qword [r14 + 0x530]
jge 0x1800046c1
mov rax, qword [r14 + 0x528]
mov rax, qword [rax + rcx*8]
test rax, rax
je 0x180004338
movsxd rcx, r12d
test r12d, r12d
js 0x1800046ba
cmp rcx, qword [rax + 0x10]
jge 0x1800046ba
mov rax, qword [rax + 8]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x180004338
cmp dword [rdx + 0x14c], ebx
je 0x180004338
mov eax, dword [rdx + 0x148]
mov dword [rsp + 0x58], eax
lea rdx, [0x1800866b8]
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CVSListBoxBase::CVSListBoxBase]
cmp dword [rdi + 0x10], 0x2bc
jne 0x180004358
or dword [rsp + 0x64], 1
mov r8d, r12d
mov edx, r13d
mov rcx, r14
call qword [sym.imp.ShGridU.dll_public:_unsigned_long_int___cdecl_CGridCtrl::GetItemFgColour_int__int_const___ptr64]
mov dword [rsp + 0x5c], eax
mov r8d, r12d
mov edx, r13d
mov rcx, r14
call qword [sym.imp.ShGridU.dll_public:_unsigned_long_int___cdecl_CGridCtrl::GetItemBkColour_int__int_const___ptr64]
mov dword [rsp + 0x60], eax
mov rcx, qword [rsp + 0x30]
cmp dword [rcx - 0x10], ebx
mov ecx, 0xffffff
cmove eax, ecx
mov dword [rsp + 0x60], eax
mov r8d, r12d
mov edx, r13d
mov rcx, r14
call qword [sym.imp.ShGridU.dll_public:_unsigned_int___cdecl_CGridCtrl::GetItemFormat_int__int_const___ptr64]
mov edx, eax
test al, 1
je 0x1800043b1
mov dword [rsp + 0x68], 2
jmp 0x1800043be
movzx eax, al
and eax, 2
or eax, 1
mov dword [rsp + 0x68], eax
test dl, 8
mov eax, ebx
setne al
inc eax
mov dword [rsp + 0x6c], eax
bt edx, 0x19
mov eax, dword [rbp - 0x74]
mov ebx, 1
cmovb eax, ebx
mov dword [rbp - 0x74], eax
mov r8d, r12d
mov edx, r13d
mov rcx, r14
call qword [sym.imp.ShGridU.dll_public:_unsigned_int___cdecl_CGridCtrl::GetCellLineType_int__int____ptr64]
mov edi, eax
test al, 4
je 0x1800043f9
mov dword [rsp + 0x74], ebx
jmp 0x180004409
and eax, 0x200
neg eax
sbb eax, eax
and eax, 5
mov dword [rsp + 0x74], eax
test dil, 0x10
je 0x180004415
mov dword [rsp + 0x78], ebx
jmp 0x180004427
mov eax, edi
and eax, 0x400
neg eax
sbb eax, eax
and eax, 5
mov dword [rsp + 0x78], eax
test dil, 8
je 0x180004433
mov dword [rsp + 0x7c], ebx
jmp 0x180004445
mov eax, edi
and eax, 0x800
neg eax
sbb eax, eax
and eax, 5
mov dword [rsp + 0x7c], eax
test dil, 0x20
je 0x180004450
mov dword [rbp - 0x80], ebx
jmp 0x180004461
mov eax, edi
and eax, 0x1000
neg eax
sbb eax, eax
and eax, 5
mov dword [rbp - 0x80], eax
mov ebx, edi
and ebx, 1
je 0x180004471
mov dword [rbp - 0x7c], 2
jmp 0x18000447d
movzx eax, dil
shr eax, 1
and eax, 1
mov dword [rbp - 0x7c], eax
xor r8d, r8d
lea rdx, [0x1800866c0]
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CArchive::EnsureSchemaMapExists]
cmp eax, 0xffffffff
je 0x180004555
test ebx, ebx
jne 0x1800044a9
test dil, 2
je 0x180004555
xor r8d, r8d
lea rdx, [0x1800866c0]
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CArchive::EnsureSchemaMapExists]
mov edi, eax
mov r8d, eax
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CDWordArray::InsertAt]
nop
mov rcx, qword [rsp + 0x30]
mov r8d, dword [rcx - 0x10]
sub r8d, edi
dec r8d
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_ATL::CStringT_char_class_StrTraitMFC_DLL_char_class_ATL::ChTraitsCRT_char_____::Remove]
nop
lea r8, [0x1800866c4]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 8]
call fcn.180006d80
nop
lea r8, [rbp - 0x60]
mov rdx, rax
lea rcx, [rbp - 0x20]
call fcn.180006e10
nop
mov rdx, rax
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CView::CView]
nop
lea rcx, [rbp - 0x20]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
nop
lea rcx, [rbp - 8]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
nop
lea rcx, [rsp + 0x48]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
nop
lea rcx, [rbp - 0x60]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
lea r8, [0x1800866c4]
lea rdx, [0x1800868c4]
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CRecentFileList::ReadList]
mov eax, 1
mov dword [rbp - 0x78], eax
mov dword [rbp - 0x74], eax
mov rdi, qword [rsp + 0x30]
cmp dword [rdi - 0x10], 0
je 0x18000463d
mov ebx, eax
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasw ax, word [rdi]
not rcx
dec rcx
mov rsi, rcx
test ecx, ecx
je 0x1800045e7
xor edi, edi
test ecx, ecx
jle 0x1800045fa
nop word [rax + rax]
mov edx, edi
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CFixedAllocNoSync::Free]
test edi, edi
jne 0x1800045c7
cmp ax, 0x2d
je 0x1800045df
cmp ax, 0x2e
jne 0x1800045d5
test ebx, ebx
je 0x1800045e7
xor ebx, ebx
jmp 0x1800045df
sub ax, 0x30
cmp ax, 9
ja 0x1800045e7
inc edi
cmp edi, esi
jl 0x1800045b0
jmp 0x1800045fa
xor edx, edx
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CFixedAllocNoSync::Free]
cmp ax, 0x3d
jne 0x180004636
mov r8d, r12d
mov edx, r13d
mov rcx, r14
call qword [sym.imp.ShGridU.dll_public:_long_int___cdecl_CGridCtrl::GetDecimalPoint_int__int_const___ptr64]
mov dword [rbp - 0x70], eax
cmp eax, 0xffffffff
jne 0x180004636
lea rdx, [rbp - 0x40]
mov rcx, r14
call sym.HgPreviewU.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_CHgPreViewGridCtrl::GetNumberFormatW_void____ptr64
nop
mov rdx, rax
lea rcx, [rbp - 0x68]
call qword [sym.imp.mfc100u.dll_CView::CView]
nop
lea rcx, [rbp - 0x40]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
mov rsi, qword [rbp + 0x1a0]
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x30]
mov r8d, r12d
mov edx, r13d
mov rcx, rsi
call sym.HgPreviewU.dll_public:_void___cdecl_CHgLibXL::SetXL_long_int__long_int__class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t____const____ptr64__class_CellFormat_const____ptr64____ptr64
inc r12d
mov dword [rsp + 0x40], r12d
mov edi, dword [rbp + 0x1c8]
cmp r12d, edi
jle 0x180003f00
mov ebx, dword [rbp + 0x1c0]
inc r13d
mov dword [rsp + 0x38], r13d
mov r12d, dword [rbp + 0x1b8]
cmp r13d, r12d
jg 0x1800046c8
jmp 0x180003ef0
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
nop
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
int3
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
nop
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
int3
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
nop
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
nop
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
int3
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
int3
mov r15d, dword [rbp + 0x1b0]
lea rcx, [rbp - 0x68]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
nop
lea rcx, [rbp - 0x28]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
nop
lea rcx, [rsp + 0x30]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
mov r13d, r15d
movsxd rcx, r15d
mov qword [rbp - 0x50], rcx
mov r15, rcx
mov qword [rsp + 0x48], rcx
movsxd rax, ebx
mov qword [rbp - 0x38], rax
cmp dword [rbp + 0x1b0], r12d
jg 0x1800048f8
mov r12d, ebx
mov r14, rax
cmp ebx, edi
jg 0x1800048c3
mov eax, dword [rbp + 0x1c8]
test r13d, r13d
js 0x1800048a4
mov rdi, qword [rbp + 0x1a8]
cmp r13d, dword [rdi + 0x418]
jge 0x1800048a4
test r12d, r12d
js 0x1800048a4
cmp r12d, dword [rdi + 0x420]
jge 0x1800048a4
test r15, r15
js 0x1800048e6
cmp r15, qword [rdi + 0x530]
jge 0x1800048e6
mov rax, qword [rdi + 0x528]
mov rax, qword [rax + r15*8]
test rax, rax
je 0x18000489e
test r14, r14
js 0x1800048df
cmp r14, qword [rax + 0x10]
jge 0x1800048df
mov rax, qword [rax + 8]
cmp qword [rax + r14*8], 0
je 0x18000489e
mov r9d, r12d
mov r8d, r13d
lea rdx, [rsp + 0x30]
mov rcx, rdi
call qword [sym.imp.ShGridU.dll_public:_class_CCellID___cdecl_CGridCtrl::GetCellMergeHead_int__int____ptr64]
mov r9d, r12d
mov r8d, r13d
lea rdx, [rsp + 0x38]
mov rcx, rdi
call qword [sym.imp.ShGridU.dll_public:_class_CCellID___cdecl_CGridCtrl::GetCellMergeTail_int__int____ptr64]
mov r8d, dword [rsp + 0x34]
mov rax, qword [rsp + 0x30]
cmp eax, dword [rsp + 0x38]
jne 0x1800047f7
cmp r8d, dword [rsp + 0x3c]
je 0x18000489e
cmp eax, r13d
jne 0x18000489e
cmp r8d, r12d
jne 0x18000489e
mov edx, eax
mov rcx, qword [rsi + 0x50]
call qword [sym.imp.libxl.dll_xlSheetCellFormatW]
mov rsi, rax
mov rdi, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov ebx, dword [rsp + 0x34]
mov edx, dword [rsp + 0x3c]
test rax, rax
je 0x180004879
cmp edi, ecx
jg 0x180004879
mov r15, qword [rbp + 0x1a0]
nop word [rax + rax]
cmp ebx, edx
jg 0x180004869
mov r9, rsi
mov r8d, ebx
mov edx, edi
mov rcx, qword [r15 + 0x50]
call qword [sym.imp.libxl.dll_xlSheetSetCellFormatW]
inc ebx
mov edx, dword [rsp + 0x3c]
cmp ebx, edx
jle 0x180004844
mov ebx, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x38]
inc edi
cmp edi, ecx
jle 0x180004840
mov rdi, qword [rsp + 0x30]
mov r15, qword [rsp + 0x48]
mov rsi, qword [rbp + 0x1a0]
mov rax, qword [rsi + 0x50]
test rax, rax
je 0x18000489e
mov dword [rsp + 0x20], edx
mov r9d, ebx
mov r8d, ecx
mov edx, edi
mov rcx, rax
call qword [sym.imp.libxl.dll_xlSheetSetMergeW]
mov eax, dword [rbp + 0x1c8]
inc r12d
inc r14
cmp r12d, eax
jle 0x180004735
mov rax, qword [rbp - 0x38]
mov edi, dword [rbp + 0x1c8]
mov ebx, dword [rbp + 0x1c0]
inc r13d
inc r15
mov qword [rsp + 0x48], r15
mov r12d, dword [rbp + 0x1b8]
cmp r13d, r12d
jg 0x1800048ed
jmp 0x180004721
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
int3
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
int3
mov r14, qword [rbp + 0x1a8]
mov rcx, qword [rbp - 0x50]
mov r15d, dword [rbp + 0x1b0]
mov ebx, r15d
mov dword [rsp + 0x40], ebx
mov r13d, dword [rbp + 0x1c8]
cmp r15d, r12d
jg 0x1800050b5
xorpd xmm8, xmm8
mov edx, dword [rbp + 0x1c0]
mov r12d, edx
mov dword [rsp + 0x38], edx
mov rdi, rax
mov qword [rbp - 0x10], rax
cmp edx, r13d
jg 0x180005082
test ebx, ebx
js 0x180004996
cmp ebx, dword [r14 + 0x418]
jge 0x180004996
test r12d, r12d
js 0x180004996
cmp r12d, dword [r14 + 0x420]
jge 0x180004996
test rcx, rcx
js 0x1800050a7
cmp rcx, qword [r14 + 0x530]
jge 0x1800050a7
mov rax, qword [r14 + 0x528]
mov rax, qword [rax + rcx*8]
test rax, rax
je 0x180004996
test rdi, rdi
js 0x1800050a0
cmp rdi, qword [rax + 0x10]
jge 0x1800050a0
mov rax, qword [rax + 8]
mov r15, qword [rax + rdi*8]
jmp 0x180004999
xor r15d, r15d
mov r15, qword [r15 + 0xb0]
test r15, r15
je 0x18000505c
cmp qword [r15], 0
je 0x18000505c
mov r9d, r12d
mov r8d, ebx
lea rdx, [rbp - 0x48]
mov rcx, r14
call qword [sym.imp.ShGridU.dll_public:_class_CCellID___cdecl_CGridCtrl::GetCellMergeHead_int__int____ptr64]
mov r9d, r12d
mov r8d, ebx
lea rdx, [rsp + 0x30]
mov rcx, r14
call qword [sym.imp.ShGridU.dll_public:_class_CCellID___cdecl_CGridCtrl::GetCellMergeTail_int__int____ptr64]
lea rdx, [r15 + 0x28]
lea rcx, [rsp + 0x48]
call qword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
nop
lea rdx, [0x1800866ac]
lea rcx, [rsp + 0x48]
call qword [sym.imp.mfc100u.dll_CDatabase::Close]
test eax, eax
je 0x180004ade
mov rax, qword [r15 + 0x10]
sub rax, qword [r15 + 8]
test rax, 0xfffffffffffffff8
jne 0x180004ade
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x30]
call qword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
nop
mov rcx, qword [rbp - 0x30]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x180004a9a
lea rcx, [rbp + 0x88]
call sym.HgPreviewU.dll_public:_static_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_CHgPreViewGridCtrl::GetExePath_void_
nop
lea r8, [0x18008679c]
mov rdx, rax
lea rcx, [rbp + 0x78]
call fcn.180006d80
nop
lea r8, [rsp + 0x48]
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.180006e10
nop
mov rdx, rax
lea rcx, [rbp - 0x30]
call qword [sym.imp.mfc100u.dll_CView::CView]
nop
lea rcx, [rbp + 0x70]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
nop
lea rcx, [rbp + 0x78]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
nop
lea rcx, [rbp + 0x88]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x110]
call qword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov ecx, dword [rsp + 0x34]
mov dword [rsp + 0x28], ecx
mov ecx, dword [rsp + 0x30]
mov dword [rsp + 0x20], ecx
mov r9d, dword [rbp - 0x44]
mov r8d, dword [rbp - 0x48]
mov rdx, rax
mov rcx, rsi
call sym.HgPreviewU.dll_public:_void___cdecl_CHgLibXL::SetInsertImage_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t_____long_int__long_int__long_int__long_int____ptr64
nop
lea rcx, [rbp - 0x30]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
jmp 0x180005051
mov rcx, qword [r14 + 0x40]
call qword [sym.imp.USER32.dll_GetDC]
mov rcx, rax
call qword [sym.imp.mfc100u.dll_CMFCToolBar::FindDropIndex]
mov r13, rax
mov qword [rbp + 0xa8], rax
mov r8, qword [r15]
mov rdx, rax
mov rcx, rsi
call sym.HgPreviewU.dll_private:_struct_HBITMAP______ptr64___cdecl_HgPreviewXLControl::GetBitmapToIPicture_class_CDC____ptr64__struct_IPicture____ptr64____ptr64
mov r14, rax
mov qword [rbp + 0xa0], rax
test rax, rax
je 0x180005043
mov rcx, qword [r15 + 0x10]
sub rcx, qword [r15 + 8]
sar rcx, 3
test rcx, rcx
je 0x180004e34
mov rcx, rax
call qword [sym.imp.mfc100u.dll_CMFCRibbonStatusBar::FindElement]
lea r8, [rbp]
mov edx, 0x20
mov rcx, qword [rax + 8]
call qword [sym.imp.GDI32.dll_GetObjectW]
mov esi, dword [rbp + 4]
mov ebx, dword [rbp + 8]
mov edx, dword [rsp + 0x40]
mov rcx, qword [rbp + 0x1a8]
call qword [sym.imp.ShGridU.dll_public:_int___cdecl_CGridCtrl::GetRowHeight_int_const___ptr64]
mov edi, eax
mov edx, r12d
mov rcx, qword [rbp + 0x1a8]
call qword [sym.imp.ShGridU.dll_public:_int___cdecl_CGridCtrl::GetColumnWidth_int_const___ptr64]
mov edx, dword [rsp + 0x30]
sub edx, dword [rbp - 0x48]
inc edx
imul edx, edi
mov ecx, dword [rsp + 0x34]
sub ecx, dword [rbp - 0x44]
inc ecx
imul ecx, eax
movd xmm6, ebx
cvtdq2pd xmm6, xmm6
movd xmm0, edx
cvtdq2pd xmm0, xmm0
divsd xmm6, xmm0
movd xmm7, esi
cvtdq2pd xmm7, xmm7
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
divsd xmm7, xmm0
lea rcx, [rbp + 0x28]
call qword [sym.imp.mfc100u.dll_CDaoRecordView::CDaoRecordView]
nop
xor esi, esi
test r13, r13
mov ecx, esi
je 0x180004bce
mov rcx, qword [r13 + 8]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov rdx, rax
lea rcx, [rbp + 0x28]
call qword [sym.imp.mfc100u.dll_ATL::CSimpleStringT_wchar_t_1_::Append]
mov rcx, r14
call qword [sym.imp.mfc100u.dll_CMFCRibbonStatusBar::FindElement]
test rax, rax
mov rdx, rsi
je 0x180004bf6
mov rdx, qword [rax + 8]
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.mfc100u.dll_CDataBoundProperty::RemoveSource]
mov rbx, rax
mov qword [rbp + 0x90], rax
mov qword [rbp + 0x58], rsi
lea rax, vtable.CFont.0
mov qword [rbp + 0x50], rax
xor r9d, r9d
lea r8, [0x1800866b8]
lea edx, [r9 + 0xf]
lea rcx, [rbp + 0x50]
call qword [sym.imp.mfc100u.dll_CMFCRibbonGallery::CreateObject]
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x28]
call qword [sym.imp.mfc100u.dll_CFtpConnection::Rename]
mov qword [rbp + 0x80], rax
mov edx, 1
lea rcx, [rbp + 0x28]
call qword [sym.imp.mfc100u.dll_COleControl::XPersistStreamInit::Save]
mov rdi, qword [r15 + 8]
cmp rdi, qword [r15 + 0x10]
je 0x180004dd8
mov qword [rbp - 0x28], 0
mov qword [rbp - 0x40], 0
mov qword [rbp - 8], 0
mov qword [rbp - 0x20], 0
mov rbx, qword [rbp - 0x28]
mov rsi, qword [rbp - 0x40]
mov r12, qword [rbp - 8]
mov r13, qword [rbp - 0x20]
nop word [rax + rax]
mov r14, qword [rdi]
lea rcx, [rsp + 0x50]
call qword [0x18007ff70]
nop
xor eax, eax
mov qword [rsp + 0x5c], rax
mov qword [rsp + 0x64], rax
lea rdx, [0x1800866ac]
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CVSListBoxBase::CVSListBoxBase]
xor eax, eax
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x5c], rbx
mov qword [rsp + 0x64], rsi
movsd qword [rsp + 0x70], xmm8
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x7c], 0xc
lea rdx, [0x1800866ac]
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CVSListBoxBase::CVSListBoxBase]
xor eax, eax
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x5c], r12
mov qword [rsp + 0x64], r13
movsd qword [rsp + 0x70], xmm8
mov qword [rsp + 0x78], rax
mov rdx, r14
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CView::CView]
mov r11d, dword [r14 + 0x28]
mov dword [rsp + 0x78], r11d
mov eax, dword [r14 + 8]
mov dword [rsp + 0x58], eax
movsd xmm0, qword [r14 + 0x20]
movsd qword [rsp + 0x70], xmm0
mov rax, qword [r14 + 0x14]
mov qword [rsp + 0x64], rax
mov eax, dword [r14 + 0x2c]
mov dword [rsp + 0x7c], eax
movd xmm0, dword [r14 + 0x10]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm6
cvttsd2si ecx, xmm0
movd xmm1, dword [r14 + 0xc]
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm7
cvttsd2si eax, xmm1
mov dword [rbp - 0x18], eax
mov dword [rbp - 0x14], ecx
mov rax, qword [rbp - 0x18]
mov qword [rsp + 0x5c], rax
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x28]
mov rcx, qword [rbp + 0x1a0]
call sym.HgPreviewU.dll_private:_void___cdecl_HgPreviewXLControl::ImageDrawText_class_CDC____ptr64__class_HgPreViewImageText____ptr64____ptr64
nop
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
add rdi, 8
cmp rdi, qword [r15 + 0x10]
jne 0x180004ca0
mov r12d, dword [rsp + 0x38]
mov rbx, qword [rbp + 0x90]
mov r13, qword [rbp + 0xa8]
mov r14, qword [rbp + 0xa0]
xor esi, esi
mov rdx, qword [rbp + 0x80]
lea rcx, [rbp + 0x28]
call qword [sym.imp.mfc100u.dll_CFtpConnection::Rename]
test rbx, rbx
mov rdx, rsi
je 0x180004df5
mov rdx, qword [rbx + 8]
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.mfc100u.dll_CDataBoundProperty::RemoveSource]
lea rcx, [rbp + 0x28]
call qword [sym.imp.mfc100u.dll_DDX_FieldLBIndex]
nop
lea rax, vtable.CFont.0
mov qword [rbp + 0x50], rax
lea rcx, [rbp + 0x50]
call fcn.180006c60
nop
lea rcx, [rbp + 0x28]
call qword [sym.imp.mfc100u.dll_CCommandLineInfo::CCommandLineInfo]
mov ebx, dword [rsp + 0x40]
mov rsi, qword [rbp + 0x1a0]
lea rcx, [rbp + 0x98]
call sym.HgPreviewU.dll_public:_static_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_CHgPreViewGridCtrl::GetExePath_void_
nop
lea r8, [0x1800866c8]
mov rdx, rax
lea rcx, [rbp - 0x58]
call fcn.180006d80
nop
lea rcx, [rbp + 0x98]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
mov r9, r14
lea r8, [rbp - 0x58]
mov rdx, r13
mov rcx, rsi
call sym.HgPreviewU.dll_private:_void___cdecl_HgPreviewXLControl::SaveBitmap_class_CDC____ptr64__class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t_______ptr64__struct_HBITMAP______ptr64____ptr64
mov dword [rsp + 0x28], 0x2010
xor r13d, r13d
mov dword [rsp + 0x20], r13d
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbp - 0x58]
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadImageW]
mov rdi, rax
mov qword [rbp + 0x68], r13
lea r14, vtable.CBitmap.0
mov qword [rbp + 0x60], r14
mov rdx, rax
lea rcx, [rbp + 0x60]
call qword [sym.imp.mfc100u.dll_ATL::CSimpleStringT_char_1_::Append]
lea rax, vtable.ATL::CImage.0
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
mov qword [rbp + 0xd0], r13
mov word [rbp + 0xd8], r13w
mov qword [rbp + 0xdc], 0xffffffffffffffff
mov qword [rbp + 0xe8], r13
mov dword [rbp + 0xf0], r13d
mov qword [rbp + 0xf8], r13
lea rcx, [0x1800b46b8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
inc dword [0x1800b46e0]
lea rcx, [0x1800b46b8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
mov qword [rbp + 0xb8], rdi
lea rcx, [rbp + 0xb0]
call fcn.180006a10
lea r8, str..jpg
lea rdx, str..bmp
lea rcx, [rbp - 0x58]
call qword [sym.imp.mfc100u.dll_CRecentFileList::ReadList]
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x60]
call qword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
nop
mov rdx, qword [rbp - 0x60]
lea rcx, [rbp + 0xb0]
call fcn.1800066b0
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x108]
call qword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov ecx, dword [rsp + 0x34]
mov dword [rsp + 0x28], ecx
mov ecx, dword [rsp + 0x30]
mov dword [rsp + 0x20], ecx
mov r9d, dword [rbp - 0x44]
mov r8d, dword [rbp - 0x48]
mov rdx, rax
mov rcx, rsi
call sym.HgPreviewU.dll_public:_void___cdecl_CHgLibXL::SetInsertImage_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t_____long_int__long_int__long_int__long_int____ptr64
mov rcx, qword [rbp - 0x58]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rcx, qword [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
nop
lea rcx, [rbp - 0x60]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
nop
mov rcx, qword [rbp + 0xb8]
test rcx, rcx
je 0x180004fd1
call qword [sym.imp.GDI32.dll_DeleteObject]
lea rcx, [0x1800b46b8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
dec dword [0x1800b46e0]
jne 0x180005019
lea rcx, [0x1800b46b8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rcx, qword [0x1800b46b0]
test rcx, rcx
je 0x180005005
call qword [sym.imp.gdiplus.dll_GdiplusShutdown]
mov qword [0x1800b46b0], r13
lea rcx, [0x1800b46b8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [0x1800b46b8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
mov qword [rbp + 0x60], r14
lea rcx, [rbp + 0x60]
call fcn.180006c60
nop
lea rcx, [rbp - 0x58]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
mov rdi, qword [rbp - 0x10]
mov r13d, dword [rbp + 0x1c8]
mov r14, qword [rbp + 0x1a8]
lea rcx, [rsp + 0x48]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
inc r12d
mov dword [rsp + 0x38], r12d
inc rdi
mov qword [rbp - 0x10], rdi
cmp r12d, r13d
mov rcx, qword [rbp - 0x50]
jle 0x180004938
mov rax, qword [rbp - 0x38]
mov edx, dword [rbp + 0x1c0]
inc ebx
mov dword [rsp + 0x40], ebx
inc rcx
mov qword [rbp - 0x50], rcx
mov r12d, dword [rbp + 0x1b8]
cmp ebx, r12d
jg 0x1800050ae
jmp 0x180004921
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
int3
call qword [sym.imp.mfc100u.dll_AfxPropSheetCallback]
int3
mov r15d, dword [rbp + 0x1b0]
lea rdx, [rbp + 0x1a8]
mov rcx, rsi
call sym.HgPreviewU.dll_public:_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t______cdecl_CHgLibXL::GetSheetName_void____ptr64
xor r8d, r8d
lea rdx, [0x180086704]
mov rcx, rax
call qword [sym.imp.mfc100u.dll_CArchive::EnsureSchemaMapExists]
cmp eax, 0xffffffff
sete dil
lea rcx, [rbp + 0x1a8]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
test dil, dil
je 0x180005111
mov rcx, qword [rsi + 0x50]
test rcx, rcx
je 0x180005111
mov dword [rsp + 0x20], r13d
mov r9d, dword [rbp + 0x1c0]
mov r8d, r12d
mov edx, r15d
call qword [sym.imp.libxl.dll_xlSheetSetPrintAreaW]
lea r11, [rsp + 0x258]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
repz ret