Function at 0x4059b5
Capabilities:
Delete file

Disassembly:
push 0x228
mov eax, 0x419e2c
call fcn.0040d5c6
mov eax, dword [ebp + 8]
xor ebx, ebx
mov esi, ecx
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x120], esi
cmp eax, ebx
je 0x405c2b
cmp esi, ebx
je 0x405c2b
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
xor eax, eax
mov dword [ebp - 0x158], ebx
lea edi, [ebp - 0x154]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x234]
push eax
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesExW]
test eax, eax
je 0x405a8c
lea eax, [ebp - 0x168]
push eax
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
lea eax, [ebp - 0x140]
push eax
lea eax, [ebp - 0x168]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_SystemTimeToTzSpecificLocalTime]
movzx eax, word [ebp - 0x140]
mov dword [ebp - 0x144], eax
movzx eax, word [ebp - 0x13e]
dec eax
mov dword [ebp - 0x148], eax
movzx eax, word [ebp - 0x13a]
mov dword [ebp - 0x14c], eax
movzx eax, word [ebp - 0x138]
mov dword [ebp - 0x150], eax
movzx eax, word [ebp - 0x136]
mov dword [ebp - 0x154], eax
movzx eax, word [ebp - 0x134]
mov dword [ebp - 0x158], eax
push 0x103
lea eax, [ebp - 0x11b]
push ebx
push eax
mov byte [ebp - 0x11c], bl
call fcn.0040d620
add esp, 0xc
lea eax, [ebp - 0x11c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jne 0x405b05
push esi
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push 3
push eax
lea eax, [ebp - 0x1ec]
lea ecx, [ebp - 0x1e8]
push eax
mov dword [ebp - 0x1ec], ecx
call fcn.00403a16
mov edx, dword [ebp - 0x1ec]
lea ecx, [ebp - 0x11c]
call fcn.00405981
lea eax, [ebp - 0x1e8]
cmp dword [ebp - 0x1ec], eax
je 0x405b05
push dword [ebp - 0x1ec]
call fcn.0040bb5c
pop ecx
push 3
push dword [ebp - 0x12c]
lea eax, [ebp - 0x1e8]
mov dword [ebp - 0x1ec], eax
lea eax, [ebp - 0x1ec]
push eax
mov dword [ebp - 0x128], ebx
call fcn.00403a16
mov dword [ebp - 4], ebx
mov ecx, dword [ebp - 0x1ec]
call fcn.00408df5
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x124], eax
lea eax, [ebp - 0x1e8]
cmp dword [ebp - 0x1ec], eax
je 0x405b5d
push dword [ebp - 0x1ec]
call fcn.0040bb5c
pop ecx
cmp dword [ebp - 0x124], ebx
je 0x405c17
push 8
pop ecx
xor eax, eax
push 6
lea edi, [ebp - 0x20c]
rep stosd dword es:[edi], eax
pop ecx
lea eax, [ebp - 0x210]
push eax
lea esi, [ebp - 0x158]
lea edi, [ebp - 0x210]
lea eax, [ebp - 0x11c]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x124]
push eax
call fcn.00408ebe
pop ecx
pop ecx
test eax, eax
jne 0x405c04
push dword [ebp - 0x120]
lea esi, [ebp - 0x130]
lea edi, [ebp - 0x120]
call fcn.00402621
pop ecx
cmp dword [ebp - 0x120], ebx
je 0x405bf7
mov ecx, dword [ebp - 0x130]
mov edx, dword [ebp - 0x120]
mov eax, dword [ebp - 0x124]
call fcn.004092d6
test eax, eax
jne 0x405beb
mov dword [ebp - 0x128], 1
push dword [ebp - 0x120]
call fcn.0040b6f5
pop ecx
mov ebx, dword [ebp - 0x124]
call fcn.004093bc
xor ebx, ebx
mov eax, dword [ebp - 0x124]
call fcn.0040958d
cmp dword [ebp - 0x128], ebx
jne 0x405c23
push dword [ebp - 0x12c]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [ebp - 0x128]
jmp 0x405c2d
xor eax, eax
call fcn.0040d610
ret