Function at 0x688cd0
Capabilities:
Delete file
Set file attributes

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd8
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x10], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x688fe6
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 5], 1
mov eax, dword [ebp - 4]
cmp dword [eax + 0x80], 1
jle 0x688fc3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x80]
dec eax
push eax
mov eax, dword [ebp - 4]
add eax, 0xa0
mov ecx, 1
mov edx, dword [0x683140]
call fcn.00408964
add esp, 4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
call fcn.0040879c
dec eax
test eax, eax
jl 0x688ee1
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xc], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x9c]
push dword [eax + 8]
push 0x689004
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0xc]
inc eax
call fcn.00479c10
push dword [ebp - 0x20]
lea eax, [ebp - 0x10]
mov edx, 3
call fcn.00407348
mov eax, dword [ebp - 0x10]
call fcn.0047a474
test al, al
je 0x688e3f
xor eax, eax
push ebp
push 0x688ddf
push dword fs:[eax]
mov dword fs:[eax], esp
push 0xa0
mov eax, dword [ebp - 0x10]
call fcn.00406e0c
push eax
call sub.kernel32.dll_SetFileAttributesW
push 1
mov ecx, dword [ebp - 0x10]
mov dl, 1
mov eax, dword [0x490c94]
call fcn.004971fc
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0xa0]
mov ecx, dword [ebp - 0xc]
mov dword [edx + ecx*4], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x688ed5
xor eax, eax
push ebp
push 0x688e7a
push dword fs:[eax]
mov dword fs:[eax], esp
push 0xffff
mov ecx, dword [ebp - 0x10]
mov dl, 1
mov eax, dword [0x490c94]
call fcn.004971fc
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0xa0]
mov ecx, dword [ebp - 0xc]
mov dword [edx + ecx*4], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x688ed5
inc dword [ebp - 0xc]
dec dword [ebp - 0x14]
jne 0x688d54
cmp byte [ebp - 5], 0
jne 0x688fc3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
call fcn.0040879c
dec eax
test eax, eax
jl 0x688fa6
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xc], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
mov edx, dword [ebp - 0xc]
cmp dword [eax + edx*4], 0
je 0x688f9a
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0xa0]
mov ecx, dword [ebp - 0xc]
mov edx, dword [edx + ecx*4]
mov edx, dword [edx + 8]
call fcn.00406dd4
xor eax, eax
push ebp
push 0x688f76
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
mov edx, dword [ebp - 0xc]
mov eax, dword [eax + edx*4]
call fcn.004044bc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0]
mov edx, dword [ebp - 0xc]
xor ecx, ecx
mov dword [eax + edx*4], ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x688f80
mov eax, dword [ebp - 0x10]
call fcn.0047a474
test al, al
je 0x688f9a
mov eax, dword [ebp - 0x10]
call fcn.00406e0c
push eax
call sub.kernel32.dll_DeleteFileW
inc dword [ebp - 0xc]
dec dword [ebp - 0x14]
jne 0x688f0d
push 0
mov eax, dword [ebp - 4]
add eax, 0xa0
mov ecx, 1
mov edx, dword [0x683140]
call fcn.00408964
add esp, 4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x688fed
lea eax, [ebp - 0x28]
mov edx, 3
call fcn.00406d78
lea eax, [ebp - 0x10]
call fcn.00406d70
ret