Function at 0x417c80
Capabilities:
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x59720c
mov eax, dword fs:[0]
push eax
sub esp, 0x45c
mov eax, dword [0x60dfd4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
cmp dword [edi + 0x1b14], 0
je 0x4180bf
cmp dword [ebp + 8], 0
je 0x417d50
mov eax, 0x14
mov dword [ebp - 0x440], 0
mov word [ebp - 0x430], ax
lea eax, [edi + 0x14ec]
mov dword [ebp - 0x438], eax
lea eax, [ebp - 0x440]
push eax
mov dword [ebp - 0x42e], 0
mov dword [ebp - 0x42a], 0
mov dword [ebp - 0x426], 0
mov dword [ebp - 0x43c], 3
mov dword [ebp - 0x434], 0
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
test eax, eax
je 0x418299
push dword [ebp - 0x434]
push dword [ebp - 0x438]
push str.Setup___DeleteInstallerFiles_Copy_from___s__to___s__fails_
call fcn.0041c4c0
add esp, 0xc
xor eax, eax
jmp 0x41829e
mov eax, dword [edi + 0x68]
test eax, eax
je 0x4180ab
mov eax, dword [eax]
test eax, eax
je 0x4180ab
push eax
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x4180ab
mov ebx, dword [edi + 0x68]
test ebx, ebx
jne 0x417dc9
push 0xc
call fcn.0041d1b5
mov ebx, eax
add esp, 4
mov dword [ebp - 0x464], ebx
test ebx, ebx
je 0x417db5
xorps xmm0, xmm0
movq qword [ebx], xmm0
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 1
mov dword [ebx], 0
jmp 0x417db7
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [edi + 0x68], ebx
test ebx, ebx
je 0x4182bc
lea eax, [edi + 0xabc]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push dword [ebx]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea ebx, [esi + eax]
lea esi, [ebx + ebx]
lea eax, [esi + 6]
push eax
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.0056eeb0
mov ecx, dword [edi + 0x68]
add esp, 0xc
test ecx, ecx
jne 0x417e50
push 0xc
call fcn.0041d1b5
mov ecx, eax
add esp, 4
mov dword [ebp - 0x464], ecx
test ecx, ecx
je 0x417e3c
xorps xmm0, xmm0
movq qword [ecx], xmm0
mov dword [ecx + 8], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 1
mov dword [ecx], 0
jmp 0x417e3e
xor ecx, ecx
mov dword [ebp - 4], 0xffffffff
mov dword [edi + 0x68], ecx
test ecx, ecx
je 0x4182bc
push dword [ecx]
lea ecx, [edi + 0xabc]
push ecx
lea eax, [ebx + 3]
push 0x5eba10
push eax
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0041c410
add esp, 0x18
cmp esi, 0x208
jae 0x4182c6
xor eax, eax
mov word [ebp + esi - 0x218], ax
add esi, 2
cmp esi, 0x208
jae 0x4182c6
mov word [ebp + esi - 0x218], ax
mov dword [ebp - 0x440], eax
lea eax, [ebp - 0x218]
mov dword [ebp - 0x438], eax
mov eax, 0x14
mov word [ebp - 0x430], ax
lea eax, [ebp - 0x440]
push eax
mov dword [ebp - 0x43c], 3
mov dword [ebp - 0x434], 0
mov dword [ebp - 0x42e], 0
mov dword [ebp - 0x42a], 0
mov dword [ebp - 0x426], 0
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
test eax, eax
je 0x417f20
push dword [ebp - 0x434]
push dword [ebp - 0x438]
push str.Setup___DeleteInstallerFiles_delete_from___s__to___s__failed_
call fcn.0041c4c0
add esp, 0xc
xor eax, eax
jmp 0x41829e
mov ebx, dword [edi + 0x68]
test ebx, ebx
jne 0x417f75
push 0xc
call fcn.0041d1b5
mov ebx, eax
add esp, 4
mov dword [ebp - 0x464], ebx
test ebx, ebx
je 0x417f61
xorps xmm0, xmm0
movq qword [ebx], xmm0
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 1
mov dword [ebx], 0
jmp 0x417f63
xor ebx, ebx
mov dword [ebp - 4], 0xffffffff
mov dword [edi + 0x68], ebx
test ebx, ebx
je 0x4182bc
lea eax, [edi + 0x14ec]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push dword [ebx]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add esi, eax
lea eax, [esi*2 + 8]
push eax
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.0056eeb0
mov ecx, dword [edi + 0x68]
add esp, 0xc
test ecx, ecx
jne 0x417ffc
push 0xc
call fcn.0041d1b5
mov ecx, eax
add esp, 4
mov dword [ebp - 0x464], ecx
test ecx, ecx
je 0x417fe8
xorps xmm0, xmm0
movq qword [ecx], xmm0
mov dword [ecx + 8], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 1
mov dword [ecx], 0
jmp 0x417fea
xor ecx, ecx
mov dword [ebp - 4], 0xffffffff
mov dword [edi + 0x68], ecx
test ecx, ecx
je 0x4182bc
push dword [ecx]
lea ecx, [edi + 0x14ec]
push ecx
lea eax, [esi + 4]
push str._s_s
push eax
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0041c410
lea eax, [esi*2 + 2]
add esp, 0x18
cmp eax, 0x208
jae 0x4182c6
xor ecx, ecx
mov word [ebp + eax - 0x218], cx
lea eax, [esi*2 + 4]
cmp eax, 0x208
jae 0x4182c6
mov word [ebp + eax - 0x218], cx
lea eax, [ebp - 0x218]
mov dword [ebp - 0x438], eax
lea eax, [edi + 0x18fc]
mov dword [ebp - 0x434], eax
lea eax, [ebp - 0x440]
push eax
mov dword [ebp - 0x43c], 1
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
test eax, eax
je 0x418299
push dword [ebp - 0x434]
push dword [ebp - 0x438]
push str.Setup___DeleteInstallerFiles_move_from___s__to___s__failed_
call fcn.0041c4c0
add esp, 0xc
xor eax, eax
jmp 0x41829e
push str.Setup___DeleteInstallerFiles_File_name_not_present_in_the_xml_file_
call fcn.0041c4c0
add esp, 4
xor eax, eax
jmp 0x41829e
cmp dword [ebp + 8], 0
jne 0x418299
mov eax, dword [edi + 0x68]
test eax, eax
je 0x417d49
mov eax, dword [eax]
test eax, eax
je 0x417d49
push eax
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x417d49
mov eax, dword [edi + 0x68]
test eax, eax
jne 0x418140
push 0xc
call fcn.0041d1b5
add esp, 4
mov dword [ebp - 0x464], eax
test eax, eax
je 0x41812c
xorps xmm0, xmm0
movq qword [eax], xmm0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 1
mov dword [eax], 0
jmp 0x41812e
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [edi + 0x68], eax
test eax, eax
je 0x4182cb
push dword [eax]
lea ebx, [edi + 0xabc]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push ebx
mov esi, eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, esi
mov dword [ebp - 0x464], eax
lea esi, [eax + eax]
lea eax, [esi + 6]
push eax
lea eax, [ebp - 0x420]
push 0
push eax
call fcn.0056eeb0
mov ecx, dword [edi + 0x68]
add esp, 0xc
test ecx, ecx
jne 0x4181cc
push 0xc
call fcn.0041d1b5
mov ecx, eax
add esp, 4
mov dword [ebp - 0x468], ecx
test ecx, ecx
je 0x4181b8
xorps xmm0, xmm0
movq qword [ecx], xmm0
mov dword [ecx + 8], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 1
mov dword [ecx], 0
jmp 0x4181ba
xor ecx, ecx
mov dword [ebp - 4], 0xffffffff
mov dword [edi + 0x68], ecx
test ecx, ecx
je 0x4182cb
push dword [ecx]
mov eax, dword [ebp - 0x464]
push ebx
add eax, 3
push 0x5eba10
push eax
push eax
lea eax, [ebp - 0x420]
push eax
call fcn.0041c410
add esp, 0x18
cmp esi, 0x208
jae 0x4182c6
xor eax, eax
mov word [ebp + esi - 0x420], ax
add esi, 2
cmp esi, 0x208
jae 0x4182c6
mov word [ebp + esi - 0x420], ax
mov dword [ebp - 0x460], eax
lea eax, [ebp - 0x420]
mov dword [ebp - 0x458], eax
mov eax, 0x14
mov word [ebp - 0x450], ax
lea eax, [ebp - 0x460]
push eax
mov dword [ebp - 0x45c], 3
mov dword [ebp - 0x454], 0
mov dword [ebp - 0x44e], 0
mov dword [ebp - 0x44a], 0
mov dword [ebp - 0x446], 0
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
test eax, eax
je 0x418299
push dword [ebp - 0x454]
push dword [ebp - 0x458]
push str.Setup___DeleteInstallerFiles_delete_from___s__to___s__fails_
call fcn.0041c4c0
add esp, 0xc
xor eax, eax
jmp 0x41829e
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0056a6fa
mov esp, ebp
pop ebp
ret 4
push 0x8007000e
call fcn.0056db90
call fcn.0056ac65
push 0x8007000e
call fcn.0056db90
int3