Function at 0x10009e7f
Capabilities:
Delete file

Disassembly:
push ebp
push ebx
push edi
mov edx, 0x10
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x10009e87
call fcn.1001c490
push 1
push dword [0x10023f74]
call fcn.10019234
mov ebx, eax
and ebx, ebx
jne 0x10009eb4
jmp 0x1000a215
push 0
push 0
push 0
call sub.KERNEL32.dll_HeapCreate
mov dword [esp + 0x10], eax
push 4
push 8
push dword [esp + 0x18]
call sub.KERNEL32.dll_HeapAlloc
mov dword [esp + 0x14], eax
lea eax, str.Debug
push eax
call fcn.100195c4
and eax, eax
je 0x10009f09
push 0
lea eax, str.Cleanup
push eax
call fcn.100196b8
mov dword [0x10024124], eax
lea eax, str.Portable
push eax
call fcn.100195c4
and eax, eax
je 0x10009f60
push edx
call fcn.1001c2f0
pop edx
push eax
push 0x1001f028
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c2f0
pop edx
push eax
lea eax, [0x1001f028]
push eax
lea eax, str.CleanupDirectory
push eax
call fcn.1001988f
call fcn.10016182
add dword [esp], edx
call fcn.100121b7
lea eax, [esp + 0x1c]
push eax
call fcn.1001c390
push dword [esp + 0x18]
lea edx, [0x1001f028]
pop ecx
call fcn.10016130
je 0x10009f90
mov edx, dword [0x10023e84]
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c330
lea eax, [esp + 0x1c]
push eax
call fcn.1001c390
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c2f0
pop edx
push eax
lea edx, str.CleanupDirectory:
push edx
call fcn.1001c330
mov edx, dword [esp + 0x20]
push edx
call fcn.1001c330
call fcn.10016182
add dword [esp], edx
call fcn.1000bae7
call fcn.100161a0
push dword [esp + 0x18]
call fcn.10019eba
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c2f0
pop edx
push eax
mov edx, dword [esp + 0x20]
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c330
lea edx, [0x1001f5d6]
push edx
call fcn.1001c330
call fcn.10016182
add dword [esp], edx
call fcn.100187e0
lea eax, [esp + 0x1c]
push eax
call fcn.1001c390
push dword [esp + 0x18]
call fcn.100182e0
mov dword [esp + 0x1c], eax
lea eax, str.Cleanup
push eax
call fcn.100195c4
and eax, eax
je 0x1000a20e
call fcn.100196ed
call fcn.10019717
and eax, eax
je 0x1000a20e
push edx
call fcn.1001c2f0
pop edx
push eax
push 0x1001f028
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c2f0
pop edx
push eax
call fcn.10019767
call fcn.10016182
add dword [esp], edx
call fcn.100121b7
lea eax, [esp + 0xc]
push eax
call fcn.1001c390
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c2f0
pop edx
push eax
lea edx, str.Cleanup:
push edx
call fcn.1001c330
mov edx, dword [esp + 0x10]
push edx
call fcn.1001c330
call fcn.10016182
add dword [esp], edx
call fcn.1000bae7
call fcn.100161a0
push 0
push dword [esp + 0x1c]
push dword [esp + 0x10]
call fcn.10003b08
and eax, eax
je 0x1000a0d4
xor eax, eax
jmp 0x1000a0d9
mov eax, 1
and eax, eax
je 0x1000a109
push 0
push dword [0x10023f44]
push dword [esp + 0x10]
call fcn.10003b08
and eax, eax
je 0x1000a0f9
xor eax, eax
jmp 0x1000a0fe
mov eax, 1
and eax, eax
je 0x1000a109
mov eax, 1
jmp 0x1000a10b
xor eax, eax
and eax, eax
je 0x1000a14c
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c2f0
pop edx
push eax
lea edx, str.Cleanup:_Wrong_path_
push edx
call fcn.1001c330
mov edx, dword [esp + 0x10]
push edx
call fcn.1001c330
call fcn.10016182
add dword [esp], edx
call fcn.1000bae7
call fcn.100161a0
jmp 0x1000a03c
mov edx, dword [esp + 8]
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c330
lea edx, [0x1001f22a]
push edx
call fcn.1001c330
lea eax, [esp + 8]
push eax
call fcn.1001c390
push 0
mov eax, dword [esp + 8]
mov ebx, eax
push dword [esp + 8]
call fcn.100182e0
mov edi, eax
add edi, edi
add ebx, edi
add ebx, 0xfffffffe
mov eax, ebx
call fcn.10016100
lea ebp, [esp + 0x20]
mov dword [ebp + 4], 3
mov word [ebp + 0x10], 0x414
mov eax, dword [esp + 4]
mov dword [ebp + 8], eax
lea eax, [esp + 0x20]
push eax
call sub.SHELL32.dll_SHFileOperationW
mov dword [esp + 0xc], eax
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c2f0
pop edx
push eax
lea edx, str.Cleanup:
push edx
call fcn.1001c330
push edx
call fcn.1001c2f0
pop edx
push eax
push edx
call fcn.1001c2f0
pop edx
push eax
mov eax, dword [esp + 0x1c]
cdq
push edx
push eax
call fcn.10018180
pop eax
call fcn.10016182
add dword [esp], edx
call fcn.1000bae7
call fcn.100161a0
jmp 0x1000a03c
call fcn.10019983
xor eax, eax
push dword [esp + 0x18]
call fcn.1001c4f0
push dword [esp]
call fcn.1001c4f0
push dword [esp + 8]
call fcn.1001c4f0
push dword [esp + 4]
call fcn.1001c4f0
add esp, 0x40
pop edi
pop ebx
pop ebp
ret 0x10