Function at 0x1000f338
Capabilities:
Delete file

Disassembly:
push 0x58
mov eax, 0x1002f01f
call fcn.1001b6e1
mov ebx, ecx
mov dword [ebp - 0x10], ebx
lea ecx, [ebp - 0x44]
call fcn.10007b05
xor esi, esi
mov dword [ebp - 4], esi
mov dword [ebp - 0x34], esi
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x44]
push eax
mov byte [ebp - 4], 1
call fcn.10009152
pop ecx
pop ecx
mov edi, eax
mov dword [ebp - 0x30], esi
cmp edi, esi
mov byte [ebp - 4], 2
jl 0x1000f388
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
lea edx, [ebp - 0x30]
push edx
push eax
call dword [ecx + 0x10]
mov edi, eax
mov dword [ebp - 0x20], esi
cmp edi, esi
mov byte [ebp - 4], 3
jl 0x1000f3a8
push dword [ebp - 0x30]
lea ecx, [ebp - 0x20]
call fcn.1000ad60
cmp dword [ebp - 0x20], esi
jne 0x1000f3a8
mov edi, 0x80004003
add ebx, 8
push ebx
lea ecx, [ebp - 0x14]
call fcn.100077cb
mov dword [ebp - 0x2c], esi
cmp edi, esi
mov esi, dword [sym.imp.OLEAUT32.dll_VarBstrFromR4]
mov ebx, 0x800
jl 0x1000f3d7
lea eax, [ebp - 0x2c]
push eax
push SysReAllocString
push ebx
push dword [ebp + 0xc]
call esi
mov edi, eax
and dword [ebp - 0x28], 0
test edi, edi
jl 0x1000f3f0
lea eax, [ebp - 0x28]
push eax
push SysReAllocString
push ebx
push dword [ebp + 0x10]
call esi
mov edi, eax
and dword [ebp - 0x24], 0
test edi, edi
jl 0x1000f409
lea eax, [ebp - 0x24]
push eax
push SysReAllocString
push ebx
push dword [ebp + 8]
call esi
mov edi, eax
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
xor ebx, ebx
push str.Content_Type:_text_plain
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 8
mov word [ebp - 0x64], bx
call fcn.1000b40a
cmp edi, ebx
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 9
jl 0x1000f4ed
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x14]
call fcn.10001178
mov edi, 0x10033bb4
push edi
lea ecx, [ebp - 0x1c]
call fcn.10001b3a
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xa
call fcn.10001178
push dword [ebp - 0x1c]
mov byte [ebp - 4], 9
call esi
cmp dword [ebp + 0xc], ebx
jle 0x1000f49c
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x14]
call fcn.10001178
push edi
lea ecx, [ebp - 0x1c]
call fcn.10001b3a
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xb
call fcn.10001178
push dword [ebp - 0x1c]
mov byte [ebp - 4], 9
call esi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x14]
call fcn.10001178
push 0x10033ba8
lea ecx, [ebp - 0x38]
call fcn.10001b3a
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xc
call fcn.10001178
push dword [ebp - 0x38]
mov byte [ebp - 4], 9
call esi
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x54]
push edx
push 2
push ebx
lea edx, [ebp - 0x64]
push edx
push ebx
push 2
push dword [ebp - 0x14]
mov word [ebp - 0x54], 8
mov ecx, dword [eax]
push eax
call dword [ecx + 0x24]
mov edi, eax
mov dword [ebp - 0x1c], ebx
cmp edi, ebx
mov byte [ebp - 4], 0xd
jl 0x1000f52a
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x1c]
call fcn.10001b6a
push dword [ebp - 0x1c]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
jne 0x1000f517
mov edi, 0x8000ffff
jmp 0x1000f52e
mov ecx, dword [ebp - 0x10]
call fcn.1000a440
test al, al
je 0x1000f52e
mov edi, 0x80004004
jmp 0x1000f52e
mov word [ebp - 0x54], bx
mov dword [ebp - 0x18], ebx
cmp edi, ebx
mov byte [ebp - 4], 0xe
jl 0x1000f54a
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 0x18]
push eax
push dword [ebp - 0x1c]
call fcn.1000b1c3
mov edi, eax
mov ecx, dword [ebp - 0x10]
call fcn.1000a440
test al, al
je 0x1000f55b
mov edi, 0x80004004
cmp edi, ebx
jl 0x1000f5b8
cmp dword [ebp + 0xc], ebx
push dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
jle 0x1000f571
call fcn.1000ec37
jmp 0x1000f576
call fcn.1000ea23
mov edi, eax
cmp edi, ebx
jl 0x1000f5b8
mov ecx, dword [ebp - 0x10]
call fcn.1000dd69
mov edi, eax
cmp edi, ebx
jl 0x1000f5b8
mov ecx, dword [ebp - 0x10]
call fcn.1000ac52
cmp eax, ebx
jne 0x1000f5ab
push dword [ebp + 0x10]
mov ecx, dword [ebp - 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.1000ee95
mov edi, eax
jmp 0x1000f5b0
mov edi, 0x80004004
mov ecx, dword [ebp - 0x10]
call fcn.1000ac25
push dword [ebp - 0x1c]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileW]
je 0x1000f5d0
push dword [ebp - 0x1c]
call ebx
push dword [ebp - 0x18]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x1000f5e2
push dword [ebp - 0x18]
call ebx
push dword [ebp - 0x18]
call esi
push dword [ebp - 0x1c]
call esi
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x64]
push eax
call ebx
lea eax, [ebp - 0x54]
push eax
call ebx
push dword [ebp - 0x24]
call esi
push dword [ebp - 0x28]
call esi
push dword [ebp - 0x2c]
call esi
push dword [ebp - 0x14]
call esi
mov eax, dword [ebp - 0x20]
test eax, eax
mov byte [ebp - 4], 2
je 0x1000f623
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x30]
test eax, eax
mov byte [ebp - 4], 1
je 0x1000f634
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x34]
test eax, eax
mov byte [ebp - 4], 0
je 0x1000f645
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x44]
call fcn.10007b1e
mov eax, edi
call fcn.1001b7b9
ret 0xc