Function at 0x48ea11
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x43c
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
lea esi, [ebp + 0xb]
call fcn.00424032
push dword [ebp + 0xc]
xor eax, eax
lea esi, [ebp - 0xc]
mov dword [ebp - 8], eax
mov dword [ebp - 4], eax
mov dword [ebp - 0xc], eax
call fcn.004dec35
test al, al
jne 0x48ea5c
mov eax, esi
call fcn.004dec09
cmp byte [ebp + 0xb], 0
je 0x48ea55
call dword [sym.imp.ole32.dll_CoUninitialize]
xor al, al
jmp 0x48f073
lea eax, [ebp - 0x230]
push eax
push str.Title
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ea8a
lea eax, [ebp - 0x230]
push eax
push str.TITLE
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_AlbumTitle
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48eab8
lea eax, [ebp - 0x230]
push eax
push str.ALBUM
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.Author
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48eae6
lea eax, [ebp - 0x230]
push eax
push str.ARTIST
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_AlbumArtist
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48eb14
lea eax, [ebp - 0x230]
push eax
push str.ALBUMARTIST
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_Genre
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48eb42
lea eax, [ebp - 0x230]
push eax
push str.GENRE
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_TrackNumber
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
jne 0x48eb74
lea eax, [ebp - 0x230]
push eax
push str.WM_Track
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ebac
cmp word [ebp - 0x230], 0x30
jae 0x48eb97
push 0xa
lea eax, [ebp - 0x230]
push eax
movzx eax, byte [ebp - 0x230]
push eax
call fcn.00520adb
add esp, 0xc
lea eax, [ebp - 0x230]
push eax
push str.TRACKNUMBER
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
mov esi, str.WM_Is_Protected
push esi
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ebd9
push 0x582f10
lea eax, [ebp - 0x230]
push eax
push esi
push ebx
call fcn.00440956
lea eax, [ebp - 0x230]
push eax
push str.Description
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ec07
lea eax, [ebp - 0x230]
push eax
push str.COMMENT
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
mov edi, str.WM_Category
push edi
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
mov esi, str.CATEGORY
je 0x48ec37
lea eax, [ebp - 0x230]
push eax
push esi
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_Year
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ec5c
push ebx
lea edx, [ebp - 0x230]
call fcn.0048b541
lea eax, [ebp - 0x230]
push eax
push str.Copyright
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ec8a
lea eax, [ebp - 0x230]
push eax
push str.COPYRIGHT
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push edi
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ecb0
lea eax, [ebp - 0x230]
push eax
push esi
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_Producer
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ecde
lea eax, [ebp - 0x230]
push eax
push str.PRODUCER
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_BeatsPerMinute
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ed0c
lea eax, [ebp - 0x230]
push eax
push 0x559918
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_Composer
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ed3a
lea eax, [ebp - 0x230]
push eax
push str.COMPOSER
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_PartOfSet
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ed68
lea eax, [ebp - 0x230]
push eax
push str.DISKNUMBER
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_EncodedBy
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ed96
lea eax, [ebp - 0x230]
push eax
push str.ENCODEDBY
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_ToolName
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48edc4
lea eax, [ebp - 0x230]
push eax
push str.ENCODER
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_AudioFileURL
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48edf2
lea eax, [ebp - 0x230]
push eax
push 0x567c50
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_OriginalReleaseTime
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ee20
lea eax, [ebp - 0x230]
push eax
push str.TIME
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_OriginalReleaseDate
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ee4e
lea eax, [ebp - 0x230]
push eax
push str.DATE
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x230]
push eax
push str.WM_isrc
lea eax, [ebp - 0xc]
push eax
call fcn.004decd7
test al, al
je 0x48ee7c
lea eax, [ebp - 0x230]
push eax
push str.ISRC
lea eax, [ebx + 4]
push eax
call fcn.0041ec22
lea eax, [ebp - 0x24]
push eax
xor edi, edi
lea eax, [ebp - 0xc]
push eax
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], edi
call fcn.004ded75
test al, al
je 0x48eea9
push dword [ebp - 0x24]
lea eax, [ebx + 4]
push str.LYRICS
push eax
call fcn.0041ec22
push edi
lea eax, [ebp - 0x14]
push eax
push str.WM_SharedUserRating
lea eax, [ebp - 0xc]
push eax
xor esi, esi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x10], edi
call fcn.004dee5a
test al, al
mov eax, dword [ebp - 0x14]
je 0x48eecd
mov esi, dword [eax]
push eax
call fcn.00520947
xor eax, eax
cmp esi, edi
pop ecx
je 0x48ef27
inc eax
cmp esi, eax
je 0x48ef27
cmp esi, 0x19
jne 0x48eee9
push 0x40
pop eax
jmp 0x48ef27
cmp esi, 0x32
jne 0x48eef3
lea eax, [esi + 0x4e]
jmp 0x48ef27
cmp esi, 0x4b
jne 0x48eefd
lea eax, [esi + 0x79]
jmp 0x48ef27
cmp esi, 0x63
jne 0x48ef09
mov eax, 0xff
jmp 0x48ef27
test esi, esi
mov dword [ebp + 0xc], esi
fild dword [ebp + 0xc]
jge 0x48ef19
fadd qword [0x5997e0]
fmul qword [0x599cc0]
call fcn.00536026
movzx eax, al
push eax
push 0x548bec
push 4
pop esi
lea edi, [ebp - 0x230]
call fcn.0044b138
pop ecx
pop ecx
mov eax, edi
push eax
push str.RATING
lea esi, [ebx + 4]
push esi
call fcn.0041ec22
lea eax, [ebp - 0xc]
push eax
call fcn.004dee19
xor edi, edi
push edi
push 0x2710
push edx
push eax
call fcn.005245d0
push 0xa
lea ecx, [ebp - 0x230]
push ecx
push eax
call fcn.00520adb
add esp, 0xc
cmp word [ebp - 0x230], di
je 0x48ef93
lea eax, [ebp - 0x230]
push eax
push str.LENGTH
push esi
call fcn.0041ec22
push edi
lea eax, [ebp - 0x14]
push eax
push str.WM_Picture
lea eax, [ebp - 0xc]
push eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x18], edi
call fcn.004dee5a
test al, al
je 0x48f04b
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
inc dword [ebp - 0x18]
push str..jpg
lea eax, [ebp - 0x438]
push eax
call fcn.00401ce3
lea eax, [ebp - 0x438]
push eax
lea esi, [ebp + 0xc]
call fcn.00401f09
mov esi, dword [ebp - 0x14]
push dword [esi + 9]
lea eax, [ebp + 0xc]
push dword [esi + 0xd]
push eax
call fcn.00401eb7
cmp dword [ebp + 0xc], 0xffffffff
je 0x48f001
push dword [ebp + 0xc]
call edi
or dword [ebp + 0xc], 0xffffffff
movzx eax, byte [esi + 4]
push eax
push dword [esi + 5]
lea eax, [ebp - 0x438]
push eax
push ebx
call fcn.0048c7b2
lea eax, [ebp - 0x438]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp + 0xc], 0xffffffff
je 0x48f02e
push dword [ebp + 0xc]
call edi
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
push eax
push str.WM_Picture
lea eax, [ebp - 0xc]
push eax
call fcn.004dee5a
test al, al
jne 0x48efbd
push dword [ebp - 0x14]
call fcn.00520947
pop ecx
push dword [ebp - 0x24]
call fcn.00520947
pop ecx
lea eax, [ebp - 0xc]
call fcn.004dec09
cmp byte [ebp + 0xb], 0
je 0x48f071
call dword [sym.imp.ole32.dll_CoUninitialize]
mov al, 1
pop edi
pop esi
pop ebx
leave
ret 8