Function at 0x100f161
Capabilities:
Copy file
Delete file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x434
mov eax, dword [0x10161d4]
mov ecx, dword [ebp + 8]
push edi
mov dword [ebp - 4], eax
xor eax, eax
lea edi, [ebp - 0x434]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
test ecx, ecx
lea edi, [ebp - 0x42c]
stosd dword es:[edi], eax
mov dword [ebp - 0x424], ecx
stosd dword es:[edi], eax
jne 0x100f1a0
mov eax, 0x80070057
jmp 0x100f22a
push ecx
call fcn.01010233
test eax, eax
jne 0x100f1b1
mov eax, 0x80070003
jmp 0x100f22a
push ebx
push esi
push 1
mov edi, 0x105
push edi
lea eax, [ebp - 0x41c]
push eax
call fcn.0100fc30
test eax, eax
jne 0x100f237
mov esi, 0x80070003
mov eax, dword [ebp - 0x430]
cmp dword [ebp - 0x428], eax
jne 0x100f1ec
mov eax, dword [ebp - 0x434]
cmp dword [ebp - 0x42c], eax
je 0x100f1f8
push dword [ebp - 0x424]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0x1002848
lea eax, [ebp - 0x41c]
push eax
push 0x105
lea eax, [ebp - 0x210]
push eax
call fcn.0100e6d7
test eax, eax
jl 0x100f226
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
pop edi
call fcn.0100c0c3
leave
ret 4
push 0x100286c
lea eax, [ebp - 0x41c]
push eax
push edi
lea eax, [ebp - 0x210]
push eax
call fcn.0100e6d7
mov esi, eax
test esi, esi
jl 0x100f1d0
lea eax, [ebp - 0x210]
push eax
call fcn.01010233
test eax, eax
je 0x100f2d4
mov esi, 0x1002848
push esi
lea eax, [ebp - 0x41c]
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.01010266
test eax, eax
je 0x100f2d4
push esi
lea eax, [ebp - 0x41c]
push eax
push edi
lea eax, [ebp - 0x210]
push eax
call fcn.0100e6d7
mov esi, eax
test esi, esi
jl 0x100f1d0
mov esi, dword [sym.imp.KERNEL32.dll_CreateFileW]
push 0
mov ebx, 0x80
push ebx
push 3
push 0
push 1
mov edi, 0x80000000
push edi
lea eax, [ebp - 0x210]
push eax
call esi
cmp eax, 0xffffffff
mov dword [ebp - 0x420], eax
jne 0x100f2d8
xor esi, esi
jmp 0x100f30d
lea ecx, [ebp - 0x434]
push ecx
push 0
push 0
push eax
call dword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
jne 0x100f35c
xor esi, esi
cmp dword [ebp - 0x420], 0xffffffff
je 0x100f305
push dword [ebp - 0x420]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test esi, esi
jne 0x100f1d0
push 0x100286c
lea eax, [ebp - 0x41c]
push eax
push 0x105
lea eax, [ebp - 0x210]
push eax
call fcn.0100e6d7
push 0
lea eax, [ebp - 0x210]
push eax
push dword [ebp - 0x424]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x100f1f8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jg 0x100f449
mov esi, eax
jmp 0x100f1f8
push dword [ebp - 0x420]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0x1002848
lea eax, [ebp - 0x41c]
push eax
push dword [ebp - 0x424]
call fcn.01010266
test eax, eax
jne 0x100f3a1
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jg 0x100f3e8
mov esi, eax
jmp 0x100f305
push 0
push ebx
push 3
push 0
push 1
push edi
lea eax, [ebp - 0x210]
push eax
call esi
mov edi, eax
cmp edi, 0xffffffff
mov dword [ebp - 0x420], edi
je 0x100f390
lea eax, [ebp - 0x42c]
push eax
xor esi, esi
push esi
push esi
push edi
call dword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
jne 0x100f400
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, esi
jg 0x100f3f4
mov esi, eax
jmp 0x100f2f0
and eax, 0xffff
or eax, 0x80070000
jmp 0x100f39a
and eax, 0xffff
or eax, 0x80070000
jmp 0x100f3e1
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
or dword [ebp - 0x420], 0xffffffff
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [ebp - 0x430]
cmp dword [ebp - 0x428], eax
ja 0x100f2f0
jne 0x100f441
mov eax, dword [ebp - 0x42c]
cmp eax, dword [ebp - 0x434]
ja 0x100f2f0
xor esi, esi
inc esi
jmp 0x100f1d0
and eax, 0xffff
or eax, 0x80070000
jmp 0x100f355