Function at 0x48659a
Capabilities:
Delete file
Get file attributes
Set file attributes

Disassembly:
push 0x1c
mov eax, 0x683dfa
call fcn.005b852e
mov esi, ecx
xor eax, eax
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
call fcn.004b8afa
push eax
lea ecx, [ebp - 0x24]
call fcn.004015a6
xor ebx, ebx
push 0x69c5b8
lea ecx, [ebp - 0x1c]
mov dword [ebp - 4], ebx
call fcn.00401b65
mov eax, dword [esi + 0x2c]
mov byte [ebp - 4], 1
mov dword [esi + 0x44], eax
mov dword [ebp - 0x10], ebx
cmp eax, ebx
jle 0x48683d
cmp dword [ebp - 0x14], 0
je 0x48683d
cmp dword [ebp - 0x10], 0
jl 0x4868ef
mov eax, dword [ebp - 0x10]
cmp eax, dword [esi + 0x2c]
jge 0x4868ef
mov eax, dword [esi + 0x28]
test byte [eax + ebx + 8], 0x10
jne 0x48682b
mov eax, dword [eax + ebx + 4]
push ecx
sub eax, 0x10
mov dword [ebp - 0x28], esp
mov edi, esp
push eax
call fcn.0040149c
add eax, 0x10
pop ecx
mov dword [edi], eax
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov eax, dword [ebp - 0x10]
inc dword [esi + 0x48]
push dword [esi + 0x1c]
cmp eax, dword [esi + 0x2c]
jge 0x4868ef
mov eax, dword [esi + 0x28]
mov eax, dword [eax + ebx + 4]
push ecx
sub eax, 0x10
mov dword [ebp - 0x28], esp
mov edi, esp
push eax
call fcn.0040149c
add eax, 0x10
pop ecx
mov dword [edi], eax
lea eax, [ebp - 0x20]
push eax
mov ecx, esi
call fcn.0048609b
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 2
call fcn.0040191c
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 1
call fcn.0040124d
mov eax, dword [ebp - 0x1c]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x28], esp
mov edi, esp
push eax
call fcn.0040149c
pop ecx
add eax, 0x10
mov ecx, esi
mov dword [edi], eax
call fcn.00485a38
xor edi, edi
cmp eax, edi
jne 0x4866b4
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x14], edi
mov ecx, esi
call fcn.0048591f
mov ecx, esi
call fcn.00485a8c
test eax, eax
je 0x4866cc
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x14], edi
mov eax, dword [ebp - 0x10]
cmp eax, dword [esi + 0x2c]
jge 0x4868ef
mov eax, dword [esi + 0x28]
push dword [eax + ebx + 4]
call dword [0x69b370]
cmp dword [ebp - 0x14], edi
je 0x48682b
cmp eax, 0xffffffff
jne 0x486715
and dword [ebp - 0x18], edi
and dword [ebp - 0x14], edi
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.Delete_failed
call fcn.00401b65
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
jmp 0x48682b
test al, 6
je 0x486724
cmp dword [esi + 0x10], edi
jne 0x486724
dec dword [esi + 0x44]
and dword [ebp - 0x14], edi
cmp dword [ebp - 0x14], edi
je 0x48682b
mov edi, dword [ebp - 0x10]
cmp edi, dword [esi + 0x2c]
jge 0x4868ef
mov eax, dword [esi + 0x28]
mov eax, dword [eax + ebx + 4]
push 0x80
push eax
call dword [0x69b35c]
test eax, eax
jne 0x486772
mov dword [ebp - 0x18], eax
cmp dword [esi + 0xc], eax
jne 0x486772
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.Delete_failed
mov dword [ebp - 0x14], eax
call fcn.00401b65
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
cmp dword [ebp - 0x14], 0
je 0x48682b
cmp edi, dword [esi + 0x2c]
jge 0x4868ef
mov eax, dword [esi + 0x28]
push dword [eax + ebx + 4]
call dword [0x69b358]
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
test eax, eax
jne 0x4867e8
push str.Delete_failed
call fcn.00401b65
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [esi + 0xc], eax
jne 0x4867ba
mov dword [ebp - 0x14], eax
push 0x69fd78
lea ecx, [esi + 0x20]
call fcn.00403d90
mov eax, dword [ebp - 0x10]
cmp eax, dword [esi + 0x2c]
jge 0x4868ef
mov eax, dword [esi + 0x28]
mov eax, dword [eax + ebx + 4]
push dword [eax - 0xc]
lea ecx, [esi + 0x20]
push eax
call fcn.00403c44
jmp 0x48682b
push str.Delete_successful
call fcn.00401b65
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
cmp dword [esi + 0x14], 0
je 0x48682b
cmp edi, dword [esi + 0x2c]
jge 0x4868ef
mov eax, dword [esi + 0x28]
mov eax, dword [eax + ebx + 4]
push ecx
sub eax, 0x10
mov dword [ebp - 0x28], esp
mov edi, esp
push eax
call fcn.0040149c
pop ecx
add eax, 0x10
mov ecx, esi
mov dword [edi], eax
call fcn.00485bc0
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
add ebx, 0x40
cmp eax, dword [esi + 0x2c]
jl 0x4865e6
xor ebx, ebx
xor ecx, ecx
mov dword [ebp - 0x10], ecx
cmp dword [esi + 0x2c], ebx
jle 0x486932
cmp dword [ebp - 0x14], 0
je 0x486932
test ecx, ecx
js 0x4868ef
cmp ecx, dword [esi + 0x2c]
jge 0x4868ef
mov eax, dword [esi + 0x28]
test byte [eax + ebx + 8], 0x10
je 0x48691f
inc dword [esi + 0x48]
push dword [esi + 0x1c]
cmp ecx, dword [esi + 0x2c]
jge 0x4868ef
mov eax, dword [esi + 0x28]
mov eax, dword [eax + ebx + 4]
push ecx
sub eax, 0x10
mov dword [ebp - 0x28], esp
mov edi, esp
push eax
call fcn.0040149c
add eax, 0x10
pop ecx
mov dword [edi], eax
lea eax, [ebp - 0x20]
push eax
mov ecx, esi
call fcn.0048609b
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 3
call fcn.0040191c
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
mov byte [ebp - 4], 1
call fcn.0040124d
mov eax, dword [ebp - 0x1c]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x28], esp
mov edi, esp
push eax
call fcn.0040149c
pop ecx
add eax, 0x10
mov ecx, esi
mov dword [edi], eax
call fcn.00485a38
test eax, eax
jne 0x4868f4
and dword [ebp - 0x18], eax
and dword [ebp - 0x14], eax
jmp 0x48691f
call fcn.004b8094
mov eax, dword [ebp - 0x10]
cmp eax, dword [esi + 0x2c]
jge 0x4868ef
mov eax, dword [esi + 0x28]
mov eax, dword [ebx + eax + 4]
push ecx
sub eax, 0x10
mov dword [ebp - 0x28], esp
mov edi, esp
push eax
call fcn.0040149c
pop ecx
add eax, 0x10
mov ecx, esi
mov dword [edi], eax
call fcn.00485cc4
mov ecx, dword [ebp - 0x10]
inc ecx
add ebx, 0x40
mov dword [ebp - 0x10], ecx
cmp ecx, dword [esi + 0x2c]
jl 0x48684d
lea ecx, [esi + 0x20]
push 0x69fd78
call fcn.0040cc50
mov ecx, dword [ebp - 0x1c]
add ecx, 0xfffffff0
call fcn.0040124d
mov ecx, dword [ebp - 0x24]
add ecx, 0xfffffff0
call fcn.0040124d
mov eax, dword [ebp - 0x18]
call fcn.005b8606
ret