Function at 0x45785b
Capabilities:
Delete file
Move file

Disassembly:
mov eax, 0x4c51ed
call fcn.004bf97c
sub esp, 0x278
push ebx
push esi
push edi
xor esi, esi
push 0x4e5c24
lea edi, [ebp - 0x18]
mov dword [ebp - 0x1c], esi
call fcn.00402faf
push str.PlayList
mov eax, edi
push eax
mov dword [ebp - 4], esi
call fcn.00403081
push dword [ebp - 0x18]
call fcn.00401978
pop ecx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], esi
mov byte [ebp - 4], 1
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 4]
mov dword [ebp - 0x10], esi
cmp ebx, esi
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x24], ebx
jle 0x457963
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 8]
call fcn.004ad145
mov ebx, dword [eax]
mov eax, dword [0x4e4150]
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 2
push dword [ebp - 0x10]
lea eax, [ebp - 0x14]
push dword [ebp - 0x18]
push str._s_03d.ttbl.tmp
push eax
call fcn.004058d5
add esp, 0x10
lea eax, [ebp - 0x14]
push eax
lea edi, [ebp - 0x34]
call fcn.0040893c
cmp dword [ebx + 0x20], 0
mov edi, dword [ebp - 0x14]
jne 0x45793c
push edi
call esi
lea eax, [ebp - 0x20]
mov ecx, ebx
call fcn.0043671d
mov eax, dword [eax]
push edi
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileA]
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff4
cmp eax, dword [0x4e4154]
je 0x457933
push eax
call fcn.00401377
push edi
lea eax, [ebx + 0x14]
call fcn.0040305d
lea eax, [edi - 0xc]
mov byte [ebp - 4], 1
cmp eax, dword [0x4e4154]
je 0x457951
push eax
call fcn.00401377
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x24]
jl 0x4578c3
mov ebx, dword [ebp - 0x24]
and dword [ebp - 0x10], 0
test ebx, ebx
jle 0x457a05
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 8]
call fcn.004ad145
mov edi, dword [eax]
mov eax, dword [0x4e4150]
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 3
push dword [ebp - 0x10]
lea eax, [ebp - 0x14]
push dword [ebp - 0x18]
push str._s_03d.ttbl
push eax
call fcn.004058d5
add esp, 0x10
cmp dword [edi + 0x20], 0
je 0x4579b2
push 1
push dword [ebp - 0x14]
push edi
call fcn.00455db0
jmp 0x4579e1
push dword [ebp - 0x14]
call esi
lea eax, [ebp - 0x20]
mov ecx, edi
call fcn.0043671d
push dword [ebp - 0x14]
mov eax, dword [eax]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileA]
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff4
cmp eax, dword [0x4e4154]
je 0x4579e1
push eax
call fcn.00401377
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff4
cmp eax, dword [0x4e4154]
je 0x4579f9
push eax
call fcn.00401377
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x45796f
xor edi, edi
cmp ebx, edi
mov dword [ebp - 0x10], edi
jle 0x457a2a
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x30]
jae 0x457ab4
mov ecx, dword [ebp - 0x34]
push dword [ecx + eax*4]
call esi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x457a0e
push 0x4cda68
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp + 8]
push eax
mov byte [ebp - 0x40], 0x5c
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x38], edi
mov byte [ebp - 0x144], 0
call fcn.004031be
mov eax, dword [eax]
lea ebx, [ebp - 0x284]
call fcn.004079d4
mov edi, eax
mov eax, dword [ebp + 8]
add eax, 0xfffffff4
cmp eax, dword [0x4e4154]
je 0x457a70
push eax
call fcn.00401377
test edi, edi
je 0x457b1c
lea ecx, [ebp + 8]
lea eax, [ebp - 0x284]
call fcn.004078fc
mov eax, dword [eax]
or dword [ebp - 0x1c], 1
lea ecx, [ebp - 0x10]
push ecx
push str._d.ttbl
push eax
call dword [sym.imp.MSVCRT.dll_sscanf]
add esp, 0xc
cmp eax, 1
jne 0x457abe
mov eax, dword [ebp - 0x10]
test eax, eax
jl 0x457abe
cmp eax, dword [ebp - 0x24]
jge 0x457abe
mov bl, 1
jmp 0x457ac0
push 0x80070057
call fcn.004010a4
xor bl, bl
test byte [ebp - 0x1c], 1
je 0x457ade
mov eax, dword [ebp + 8]
and dword [ebp - 0x1c], 0xfffffffe
add eax, 0xfffffff4
cmp eax, dword [0x4e4154]
je 0x457ade
push eax
call fcn.00401377
test bl, bl
jne 0x457b09
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x284]
call fcn.00407946
push dword [eax]
call esi
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff4
cmp eax, dword [0x4e4154]
je 0x457b09
push eax
call fcn.00401377
lea eax, [ebp - 0x284]
call fcn.00407a89
test eax, eax
jne 0x457a78
push str..ttbl.tmp
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp + 8]
push eax
call fcn.004031be
mov eax, dword [eax]
lea ebx, [ebp - 0x284]
call fcn.004079d4
mov edi, eax
mov eax, dword [ebp + 8]
add eax, 0xfffffff4
cmp eax, dword [0x4e4154]
je 0x457b51
push eax
call fcn.00401377
test edi, edi
je 0x457b8b
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x284]
call fcn.00407946
push dword [eax]
call esi
mov eax, dword [ebp + 8]
add eax, 0xfffffff4
cmp eax, dword [0x4e4154]
je 0x457b7c
push eax
call fcn.00401377
lea eax, [ebp - 0x284]
call fcn.00407a89
test eax, eax
jne 0x457b55
lea eax, [ebp - 0x284]
call fcn.00407ab2
lea esi, [ebp - 0x34]
call fcn.004062ad
mov eax, dword [ebp - 0x18]
pop edi
add eax, 0xfffffff4
cmp eax, dword [0x4e4154]
pop esi
pop ebx
je 0x457bb5
push eax
call fcn.00401377
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
leave
ret 4