Function at 0x14002ee70
Capabilities:
Move file

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3e0]
sub rsp, 0x4e0
mov rax, qword [0x140174940]
xor rax, rsp
mov qword [rbp + 0x3d0], rax
mov rdi, rdx
mov rbx, rcx
xor r12d, r12d
mov r15d, r12d
mov dword [rbp - 0x70], r12d
mov rcx, rdx
call fcn.14009b9b0
test eax, eax
je 0x14002f83b
mov rax, qword [rdi]
lea rdx, [rbp - 0x60]
mov rcx, rdi
call qword [rax + 0x40]
nop
lea rcx, [rbp - 0x68]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rbp - 0x48]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
xor r9d, r9d
lea r8, [rbp - 0x68]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x60]
call fcn.14009b8d0
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x1a0], xmm0
mov qword [rbp + 0x1b0], r12
mov r13d, r12d
lea rdx, [rbp + 0x1a0]
mov rcx, rdi
call sub.mfc140u.dll_Ordinal_6706
test eax, eax
je 0x14002ef51
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov rcx, rax
sub rcx, qword [rbp + 0x1a0]
movabs rax, 0x8888888888888889
imul rcx
lea r13, [rcx + rdx]
sar r13, 5
mov rax, r13
shr rax, 0x3f
add r13, rax
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0xb0]
lea rcx, [rsp + 0x70]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rbp - 0x50]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rbp - 0x80]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsp + 0x60]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
lea rcx, [rsp + 0x68]
call qword [sym.imp.mfc140u.dll_Ordinal_296]
nop
mov rdx, rbx
lea rcx, [rbp - 0x10]
call fcn.140089280
nop
mov r9d, 1
xor r8d, r8d
mov rdx, qword [rbp - 0x60]
lea rcx, [rbp - 0x10]
mov rax, qword [rbp - 0x10]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test eax, eax
je 0x14002f7ca
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x20]
test eax, eax
jne 0x14002f709
lea r14d, [rax + 2]
nop dword [rax]
lea rcx, [rbp - 0x10]
call fcn.140087d00
test eax, eax
jne 0x14002f709
lea rcx, [rbp - 0x10]
call fcn.140087d50
mov rdi, rax
mov rcx, qword [rbx + 8]
cmp dword [rcx + 0x20], 2
jne 0x14002f128
mov rsi, qword [rax + 0x250]
sub rsi, 1
js 0x14002f080
nop dword [rax + rax]
test rsi, rsi
js 0x14002f86a
cmp rsi, qword [rdi + 0x250]
jge 0x14002f86a
mov rax, qword [rdi + 0x248]
mov r9, qword [rax + rsi*8]
mov r8, qword [rbp - 0x68]
lea rdx, [0x1400f90b0]
lea rcx, [rsp + 0x70]
call qword [sym.imp.mfc140u.dll_CMFCZoomKernel::Filter]
cmp rsi, qword [rdi + 0x250]
jge 0x14002f86a
mov rax, qword [rdi + 0x248]
lea rcx, [rax + rsi*8]
lea rdx, [rsp + 0x70]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
sub rsi, 1
jns 0x14002f020
mov rsi, qword [rdi + 0x278]
sub rsi, 1
js 0x14002f0f0
nop dword [rax]
test rsi, rsi
js 0x14002f86a
cmp rsi, qword [rdi + 0x278]
jge 0x14002f86a
mov rax, qword [rdi + 0x270]
mov r9, qword [rax + rsi*8]
mov r8, qword [rbp - 0x68]
lea rdx, [0x1400f90b0]
lea rcx, [rsp + 0x70]
call qword [sym.imp.mfc140u.dll_CMFCZoomKernel::Filter]
cmp rsi, qword [rdi + 0x278]
jge 0x14002f86a
mov rax, qword [rdi + 0x270]
lea rcx, [rax + rsi*8]
lea rdx, [rsp + 0x70]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
sub rsi, 1
jns 0x14002f090
mov rax, qword [rdi + 0x230]
cmp dword [rax - 0x10], 0
je 0x14002f128
mov r9, rax
mov r8, qword [rbp - 0x68]
lea rdx, [0x1400f90b0]
lea rcx, [rsp + 0x70]
call qword [sym.imp.mfc140u.dll_CMFCZoomKernel::Filter]
lea rdx, [rsp + 0x70]
lea rcx, [rdi + 0x230]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x80]
lea rcx, [rbx + 0x10]
mov rax, qword [rcx]
lea rdx, [rdi + 0x10]
call qword [rax + gethostname]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.OLEAUT32.dll_SetErrorInfo]
mov rsi, qword [rdi + reloc.mfc140u.dll_CInternetFile::CInternetFile]
movzx ecx, word [rsi]
test cx, cx
je 0x14002f187
nop dword [rax]
mov rax, qword [rbx]
movzx edx, cx
mov rcx, rbx
call qword [rax + 0x78]
mov rax, qword [rbx]
movzx edx, word [rsi]
mov rcx, rbx
call qword [rax + 0xe8]
lea rsi, [rsi + 2]
movzx ecx, word [rsi]
test cx, cx
jne 0x14002f160
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xc0]
lea rsi, [rdi + 0x230]
mov rax, qword [rsi]
cmp dword [rax - 0x10], 0
je 0x14002f6d0
mov rdx, rsi
lea rcx, [rsp + 0x78]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__6]
nop
mov edx, VarDateFromDisp
mov rcx, rsi
call qword [sym.imp.mfc140u.dll_COleControl::ReleaseCaches]
test eax, eax
jle 0x14002f1f3
lea r8d, [rax + 1]
lea rdx, [rbp - 0x20]
mov rcx, rsi
call qword [sym.imp.mfc140u.dll_CMFCToolBar::LoadState]
nop
mov rdx, rax
lea rcx, [rsp + 0x78]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
nop
lea rcx, [rbp - 0x20]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov rdx, rsi
lea rcx, [rsp + 0x68]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
mov rdx, rdi
mov rcx, rbx
call fcn.14002ec30
test eax, eax
jne 0x14002f2c9
mov rdx, rsi
lea rcx, [rsp + 0x68]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x20]
test eax, eax
jne 0x14002f795
cmp r13d, 0xf
jb 0x14002f751
xor edx, edx
mov rcx, qword [rsp + 0x68]
call fcn.14009cff0
test eax, eax
jne 0x14002f2c9
mov rax, qword [rbx + 8]
movzx r8d, word [rax + 0xc]
mov dword [rsp + 0x40], r13d
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x30], rax
mov rax, qword [rdi + 0xc0]
mov qword [rsp + 0x28], rax
mov rax, qword [rdi + 0x230]
mov qword [rsp + 0x20], rax
lea r9, str.Timeout_waiting_for_Photo_upload___s__for_caption__s__sig:_s___path:_s___mins_d
mov edx, r14d
mov rcx, qword [0x1401776d0]
call fcn.1400a5ff0
mov r8, qword [rsp + 0x78]
lea rdx, str._r_n_t_r_n_tQuickWire:_Timeout_waiting_for_photo_from_Reuters_r_n_t__s_
lea rcx, [rsp + 0x70]
call qword [sym.imp.mfc140u.dll_CMFCZoomKernel::Filter]
mov rax, qword [rbx]
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
call qword [rax + 0xe0]
jmp 0x14002f6c5
lea rdx, [rdi + 0x230]
lea rcx, [rsp + 0x68]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
mov dword [rbx + 0x138], 0x64
mov dword [rbp - 0x78], r12d
mov dword [rbp - 0x74], r12d
lea rcx, [rbp - 0x40]
call fcn.140004b90
nop
xor r8d, r8d
lea rdx, [rbp - 0x40]
mov rcx, qword [rsp + 0x68]
call fcn.140005010
test eax, eax
jne 0x14002f33a
mov rax, qword [rbx + 8]
movzx r8d, word [rax + 0xc]
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, str.Error_reading_image__s
mov edx, r14d
mov rcx, qword [0x1401776d0]
call fcn.1400a5ff0
jmp 0x14002f623
mov r9, qword [rbx + 0x28]
mov r8d, dword [rbx + 0x138]
lea rdx, [rbp - 0x18]
mov rcx, qword [0x1401776e0]
call fcn.14006ba60
nop
mov rdx, rax
lea rcx, [rbp - 0x80]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
nop
lea rcx, [rbp - 0x18]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
lea rdx, [0x1401042b8]
lea rcx, [rsp + 0x60]
call qword [sym.imp.mfc140u.dll_COleCurrency::operator__1]
mov rax, qword [rbx + 8]
movzx r8d, word [rax + 0xc]
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0xc0]
mov qword [rsp + 0x20], rax
lea r9, str.Creating_thumbnail_file__s____s_
mov edx, 4
mov rcx, qword [0x1401776d0]
call fcn.1400a5ff0
mov rax, qword [rbp - 0x38]
mov rdx, qword [rax]
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r12
mov rcx, qword [0x1401776e0]
mov eax, dword [rcx + 0x4c4]
mov dword [rsp + 0x38], eax
mov eax, dword [rcx + 0x4c8]
mov dword [rsp + 0x30], eax
mov eax, dword [rcx + 0x4cc]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbx + 0x138]
mov r8d, dword [rbp - 0x30]
lea rcx, [rbx + 0x348]
call fcn.1400b2010
test al, al
jne 0x14002f460
mov rax, qword [rbx + 8]
movzx r8d, word [rax + 0xc]
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x350]
mov qword [rsp + 0x20], rax
lea r9, str.Thumbnail_creation_error:__s___s_
mov edx, r14d
mov rcx, qword [0x1401776d0]
call fcn.1400a5ff0
jmp 0x14002f623
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
lea rdx, str..lrez
lea rcx, [rsp + 0x60]
call qword [sym.imp.mfc140u.dll_COleCurrency::operator__1]
mov rax, qword [rbx + 8]
movzx r8d, word [rax + 0xc]
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0xc0]
mov qword [rsp + 0x20], rax
lea r9, str.Creating_low_rez_file__s____s_
mov edx, 4
mov rcx, qword [0x1401776d0]
call fcn.1400a5ff0
mov rax, qword [rbp - 0x38]
mov rdx, qword [rax]
mov qword [rsp + 0x50], r12
lea rax, [rbp - 0x74]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x40], rax
mov rcx, qword [0x1401776e0]
mov eax, dword [rcx + 0x4b8]
mov dword [rsp + 0x38], eax
mov eax, dword [rcx + 0x4bc]
mov dword [rsp + 0x30], eax
mov eax, dword [rcx + 0x4c0]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbx + 0x138]
mov r8d, dword [rbp - 0x30]
lea rcx, [rbx + 0x348]
call fcn.1400b2010
test al, al
jne 0x14002f55a
mov rax, qword [rbx + 8]
movzx r8d, word [rax + 0xc]
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x350]
mov qword [rsp + 0x20], rax
lea r9, str.Low_rez_creation_error:__s___s_
mov edx, r14d
mov rcx, qword [0x1401776d0]
call fcn.1400a5ff0
jmp 0x14002f623
lea rcx, [rbx + 0x10]
mov r8d, dword [rbp - 0x78]
lea rdx, str.img_w
call fcn.1400af8c0
lea rcx, [rbx + 0x10]
mov r8d, dword [rbp - 0x74]
lea rdx, str.img_h
call fcn.1400af8c0
lea rcx, [rbp + 0xa0]
call fcn.140007ac0
nop
mov rax, qword [rbp - 0x38]
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], r12
lea r9, [rsp + 0x60]
mov r8d, dword [rbp - 0x30]
mov rdx, qword [rax]
lea rcx, [rbp + 0xa0]
call fcn.140008280
test al, al
jne 0x14002f617
lea rdx, [rbp + 0x190]
lea rcx, [rbp - 0x58]
call qword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__6]
or r15d, 1
mov dword [rbp - 0x70], r15d
mov rax, qword [rbx + 8]
movzx r8d, word [rax + 0xc]
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x20], rax
lea r9, str.CopyAndWriteInfo__low_res_creation_meta_copy_failed:__s___s_
mov edx, r14d
mov rcx, qword [0x1401776d0]
call fcn.1400a5ff0
and r15d, 0xfffffffe
mov dword [rbp - 0x70], r15d
lea rcx, [rbp - 0x58]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp + 0xa0]
call fcn.140007f30
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call qword [sym.imp.mfc140u.dll_Ordinal_1501]
mov rax, qword [rbx + 8]
movzx r8d, word [rax + 0xc]
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0xc0]
mov qword [rsp + 0x20], rax
lea r9, str.Creating_image_file__s____s_
mov edx, 4
mov rcx, qword [0x1401776d0]
call fcn.1400a5ff0
mov r8d, 3
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
jne 0x14002f6bb
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [rbx + 8]
movzx r8d, word [rcx + 0xc]
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
lea r9, str.Error__d__0x_x__creating_image__s__::MoveFileEx_
mov edx, r14d
mov rcx, qword [0x1401776d0]
call fcn.1400a5ff0
nop
lea rcx, [rbp - 0x40]
call fcn.140004c10
nop
lea rcx, [rsp + 0x78]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xd8]
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
call qword [rax + 0xd0]
mov rax, qword [rdi]
mov edx, 1
mov rcx, rdi
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x20]
test eax, eax
je 0x14002efe0
lea rcx, [rbp - 0x10]
call fcn.1400892d0
nop
lea rcx, [rsp + 0x68]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rsp + 0x60]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x80]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x50]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rsp + 0x70]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
jmp 0x14002f816
mov rax, qword [rbx + 8]
movzx r8d, word [rax + 0xc]
mov dword [rsp + 0x38], reloc.OLEAUT32.dll_SafeArrayDestroy
mov dword [rsp + 0x30], r13d
mov rax, qword [rdi + 0xc0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r9, str.Waiting_for_Photo_upload___s__for_caption__s__will_check_next_poll___age:__d_mins___d_max_
mov edx, 5
mov rcx, qword [0x1401776d0]
call fcn.1400a5ff0
mov rcx, rdi
call fcn.14002ee20
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax + 0xb0]
mov rax, qword [rdi]
mov edx, 1
mov rcx, rdi
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x78]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
jmp 0x14002f7d0
mov r14d, 3
lea rcx, [rbp - 0x10]
call fcn.1400892d0
nop
lea rcx, [rsp + 0x68]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rsp + 0x60]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x80]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x50]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rsp + 0x70]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov r12d, r14d
lea rcx, [rbp - 0x48]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x68]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
nop
lea rcx, [rbp - 0x60]
call qword [sym.imp.mfc140u.dll_CMFCRibbonInfo::XElementButtonGallery::XGalleryGroup::XGalleryGroup]
mov eax, r12d
jmp 0x14002f840
mov eax, 3
mov rcx, qword [rbp + 0x3d0]
xor rcx, rsp
call fcn.1400c7c30
mov rbx, qword [rsp + reloc.mfc140u.dll_CMFCToolBarsMenuPropertyPage::CMFCToolBarsMenuPropertyPage]
add rsp, 0x4e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call sub.mfc140u.dll_AfxRegDeleteKey
nop