Function at 0x45ac1f
Capabilities:
Delete file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x3c
push ebx
push esi
push edi
push 0
push 0
mov ebx, edx
mov edi, ecx
call fcn.0043fbb5
mov esi, eax
test esi, esi
jns 0x45ac71
cmp dword [0x463f58], 0
je 0x45af01
push 0
push 0x438a28
mov edx, esi
mov cl, 1
call fcn.0043b847
cmp dword [0x463f58], 0
je 0x45af01
call fcn.0043b9da
jmp 0x45af01
and dword [ebp - 0xc], 0
lea eax, [ebp - 0xc]
push eax
push 0x4244e0
mov edx, 0x434e58
mov ecx, edi
call fcn.00455c7e
mov esi, eax
test esi, esi
jns 0x45acb2
cmp dword [0x463f58], 0
je 0x45aee9
push 0
push 0x438a48
mov edx, esi
mov cl, 1
call fcn.0043b847
jmp 0x45aee9
and dword [ebp - 8], 0
lea eax, [ebp - 8]
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
call fcn.0043e6c6
mov ecx, eax
call fcn.0045ab17
mov esi, eax
test esi, esi
jns 0x45ad05
cmp dword [0x463f58], 0
je 0x45aee1
push 0
push 0x438ab0
mov edx, esi
mov cl, 1
call fcn.0043b847
cmp dword [0x463f58], 0
je 0x45aee1
call fcn.0043b9da
jmp 0x45aee1
xor eax, eax
mov word [ebp - 4], ax
lea eax, [ebp - 0x38]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push dword [ebp - 0xc]
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x24], eax
test eax, eax
jne 0x45ad42
mov ecx, dword [ebp + 4]
mov esi, 0x8007000e
push esi
push 0x435ea0
mov edx, 0x522
call fcn.0043c390
jmp 0x45aed8
push 8
pop ecx
lea edx, [ebp - 4]
mov word [ebp - 0x38], cx
push edx
sub esp, 0x10
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 8]
lea esi, [ebp - 0x38]
mov edi, esp
push eax
mov ecx, dword [eax]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ecx + 0xe8]
mov ecx, esi
call dword [0x464258]
call esi
mov esi, eax
test esi, esi
jns 0x45adac
cmp dword [0x463f58], 0
je 0x45aed8
push 0
push 0x438ad0
mov edx, esi
mov cl, 1
call fcn.0043b847
cmp dword [0x463f58], 0
je 0x45aed8
call fcn.0043b9da
jmp 0x45aed8
cmp word [ebp - 4], 0xffff
je 0x45ae7c
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x18]
xor ebx, ebx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], ebx
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x14], ebx
mov edi, dword [esi]
call fcn.0043e6c6
mov ecx, dword [edi + 0xf0]
push eax
push esi
call dword [0x464258]
call dword [edi + 0xf0]
mov esi, eax
test esi, esi
jns 0x45adfc
cmp dword [0x463f58], ebx
je 0x45ae69
push ebx
push 0x438afc
jmp 0x45ae27
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x14]
push edx
push eax
mov ecx, dword [eax]
mov esi, dword [ecx + 0x24]
mov ecx, esi
call dword [0x464258]
call esi
mov esi, eax
test esi, esi
jns 0x45ae3f
cmp dword [0x463f58], ebx
je 0x45ae69
push ebx
push 0x438b24
mov edx, esi
mov cl, 1
call fcn.0043b847
cmp dword [0x463f58], ebx
je 0x45ae69
call fcn.0043b9da
jmp 0x45ae69
push dword [ebp - 0x14]
push 0x438b48
push 1
call fcn.00451fa0
mov ecx, dword [ebp + 4]
add esp, 0xc
mov esi, 0x8000ffff
mov edx, 0x531
push esi
push 0x435ea0
call fcn.0043c390
push dword [ebp - 0x14]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
lea ecx, [ebp - 0x18]
call fcn.0043e6ea
jmp 0x45aed8
mov eax, dword [ebp - 8]
lea ecx, [ebp - 0x10]
xor edi, edi
push ecx
mov dword [ebp - 0x10], edi
mov esi, dword [eax]
push 0x4390bc
push eax
mov ecx, dword [esi]
call dword [0x464258]
call dword [esi]
mov esi, eax
test esi, esi
jns 0x45aec6
cmp dword [0x463f58], edi
je 0x45aed0
push edi
push 0x438ba4
mov edx, esi
mov cl, 1
call fcn.0043b847
cmp dword [0x463f58], edi
je 0x45aed0
call fcn.0043b9da
jmp 0x45aed0
mov eax, dword [ebp - 0x10]
mov esi, edi
mov dword [ebp - 0x10], edi
mov dword [ebx], eax
lea ecx, [ebp - 0x10]
call fcn.0043e6ea
push dword [ebp - 0x24]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
lea ecx, [ebp - 8]
call fcn.0043e6ea
cmp dword [ebp - 0xc], 0
je 0x45aef8
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push dword [ebp - 0xc]
call dword [sym.imp.OLE32.dll_CoTaskMemFree]
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret