Author Topic: Winamp is apparently fucked.  (Read 7122 times)

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Winamp is apparently fucked.
« on: December 08, 2010, 12:15:51 AM »
I just posted a thread on the winamp forums. I did some digging, but came up with nothing, and I'm really confused as to what's going on here. I REALLY hope I don't have a virus or something :/ Both the important DLLs are trusted, according to process hacker.

I know I have enough programs that I could use for music (Media player classic, WMP, Foobar2000, VLC, GomPlayer, and Zoomplayer) but I prefer winamp over all those when it comes to music, especially streams, like di.fm...

halp!
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: Winamp is apparently fucked.
« Reply #1 on: December 08, 2010, 12:34:05 AM »
Based on your call stack, I'd say that the main thread is waiting for a thread to finish.  APC is a method for managing asynchronous threads in Windows.  Considering it's happening on load, I'd say it's either having an issue loading your settings, your library, or your plugins.  Something's getting the thread stuck in a tight loop (I'm guessing you have a dual core processor, hence why it's locked at 50%).

I had something similar happen to me (I believe my issue was with loading my library) and going into %appdata% and killing Winamp's directory fixed it.  Failing that, it wouldn't hurt to kill Winamp completely (uninstall and remove its directory) then reinstall it.
"This is a machine for making cows."

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: Winamp is apparently fucked.
« Reply #2 on: December 08, 2010, 01:53:26 AM »
Done both of those, still not working :<

I've actually considered attaching ollydbg and seeing what is going on, but knowing my skills with a debugger, it'll probably take me 3 hours to figure out something that would have taken anyone with actual skill about a minute to figure out :/

And yes, thank god for having a dual core system.
« Last Edit: December 08, 2010, 02:05:58 AM by Bobbias »
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: Winamp is apparently fucked.
« Reply #3 on: December 08, 2010, 02:22:04 AM »
When Winamp took a shit on me, I was running a single core Pentium 4.  Luckily, it seems like Justin Frankel designed the threading code and it managed to remain untouched from the other chuckleheads that worked on it, since it was designed competently enough to not bring my system to its knees.

Odds that it didn't work.  That's pretty much the ultimate CTRL-ALT-DEL when it comes to Winamp (and Firefox).  Maybe there's something left in the registry.  Also, make sure to check both your local and roaming application data directories, since things sometimes hide among both of those.  Also, make sure that it didn't put anything into "Common Files" under your application data and program files directories; that can sometimes cause issues.

Also, see if you can hunt down an earlier version just for testing purposes.  There might be a shiny new bug in the latest version.
"This is a machine for making cows."

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: Winamp is apparently fucked.
« Reply #4 on: December 08, 2010, 06:08:38 PM »
Solved! (sorta)

Apparently there was a gen_winamp.dll plugin that shouldn't have been there. I have no idea what it was for, though I recall seeing it in my old setup. But when I loaded winamp up in ollydbg I got a message saying that the entry point in that dll was not in the code section, and then after clicking through that there was an Access Violation caused by that module. Deleting the file seems to have solved that.
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: Winamp is apparently fucked.
« Reply #5 on: December 08, 2010, 06:28:10 PM »
Odd.  I don't even see any mention of gen_winamp.dll from a Google search, outside of your post on the Winamp forums.

I kind of wonder what it is.  Would you mind sending a copy over to me so that I can check it out?
"This is a machine for making cows."

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: Winamp is apparently fucked.
« Reply #6 on: December 08, 2010, 07:21:18 PM »
Here you go. Your lucky I didn't just clear out my recycling bin. I'd be interested in figuring out what it is too.

I guess it's not really necessary, but be careful that this isn't a virus or something, lol.
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: Winamp is apparently fucked.
« Reply #7 on: December 09, 2010, 12:28:38 AM »
Here's a list of exported functions and COM stuff:
Function NameAddressRelative AddressOrdinalFilenameType
DllCanUnloadNow0x00417e800x00017e803 (0x3)gen_Winamp[0].dllExported Function
DllGetClassObject0x00417e380x00017e384 (0x4)gen_Winamp[0].dllExported Function
DllRegisterServer0x00417ea80x00017ea82 (0x2)gen_Winamp[0].dllExported Function
DllUnregisterServer0x00417eec0x00017eec1 (0x1)gen_Winamp[0].dllExported Function
IWinampApplication::AddToBookmarks 240 (0xf0)gen_Winamp[0].dllCOM Method
IWinampApplication::AddToPlaylist 233 (0xe9)gen_Winamp[0].dllCOM Method
IWinampApplication::Application 234 (0xea)gen_Winamp[0].dllCOM Property
IWinampApplication::BitRate 218 (0xda)gen_Winamp[0].dllCOM Property
IWinampApplication::BringToFront 236 (0xec)gen_Winamp[0].dllCOM Method
IWinampApplication::Channels 219 (0xdb)gen_Winamp[0].dllCOM Property
IWinampApplication::ClearPlaylist 204 (0xcc)gen_Winamp[0].dllCOM Method
IWinampApplication::Duration 208 (0xd0)gen_Winamp[0].dllCOM Property
IWinampApplication::EqualizerAutoload 221 (0xdd)gen_Winamp[0].dllCOM Property
IWinampApplication::EqualizerEnabled 220 (0xdc)gen_Winamp[0].dllCOM Property
IWinampApplication::Execute 246 (0xf6)gen_Winamp[0].dllCOM Method
IWinampApplication::ExecuteVisualization 214 (0xd6)gen_Winamp[0].dllCOM Method
IWinampApplication::FF 226 (0xe2)gen_Winamp[0].dllCOM Method
IWinampApplication::GetEqualizer 222 (0xde)gen_Winamp[0].dllCOM Method
IWinampApplication::GetFileNameAt 215 (0xd7)gen_Winamp[0].dllCOM Method
IWinampApplication::GetTitleAt 216 (0xd8)gen_Winamp[0].dllCOM Method
IWinampApplication::IsRunning 245 (0xf5)gen_Winamp[0].dllCOM Property
IWinampApplication::NavigateMB 244 (0xf4)gen_Winamp[0].dllCOM Method
IWinampApplication::Next 247 (0xf7)gen_Winamp[0].dllCOM Method
IWinampApplication::Pause 235 (0xeb)gen_Winamp[0].dllCOM Method
IWinampApplication::Play 205 (0xcd)gen_Winamp[0].dllCOM Method
IWinampApplication::PlayFile 224 (0xe0)gen_Winamp[0].dllCOM Method
IWinampApplication::PlayingStatus 206 (0xce)gen_Winamp[0].dllCOM Property
IWinampApplication::PlaylistIndex 209 (0xd1)gen_Winamp[0].dllCOM Property
IWinampApplication::PlaylistLength 212 (0xd4)gen_Winamp[0].dllCOM Property
IWinampApplication::PopupAboutBox 232 (0xe8)gen_Winamp[0].dllCOM Method
IWinampApplication::PopupLoadDir 237 (0xed)gen_Winamp[0].dllCOM Method
IWinampApplication::PopupLoadFile 230 (0xe6)gen_Winamp[0].dllCOM Method
IWinampApplication::PopupPreferences 231 (0xe7)gen_Winamp[0].dllCOM Method
IWinampApplication::Position 207 (0xcf)gen_Winamp[0].dllCOM Property
IWinampApplication::Prev 248 (0xf8)gen_Winamp[0].dllCOM Method
IWinampApplication::RepeatEnabled 243 (0xf3)gen_Winamp[0].dllCOM Property
IWinampApplication::Restart 241 (0xf1)gen_Winamp[0].dllCOM Method
IWinampApplication::Rew 227 (0xe3)gen_Winamp[0].dllCOM Method
IWinampApplication::SampleRate 217 (0xd9)gen_Winamp[0].dllCOM Property
IWinampApplication::SetDir 225 (0xe1)gen_Winamp[0].dllCOM Method
IWinampApplication::SetEqualizer 223 (0xdf)gen_Winamp[0].dllCOM Method
IWinampApplication::SetPanning 211 (0xd3)gen_Winamp[0].dllCOM Method
IWinampApplication::Shuffle 242 (0xf2)gen_Winamp[0].dllCOM Property
IWinampApplication::Skin 213 (0xd5)gen_Winamp[0].dllCOM Property
IWinampApplication::Stop 202 (0xca)gen_Winamp[0].dllCOM Method
IWinampApplication::ToggleEqualizer 229 (0xe5)gen_Winamp[0].dllCOM Method
IWinampApplication::TogglePlaylist 228 (0xe4)gen_Winamp[0].dllCOM Method
IWinampApplication::Version 201 (0xc9)gen_Winamp[0].dllCOM Property
IWinampApplication::Visible 203 (0xcb)gen_Winamp[0].dllCOM Property
IWinampApplication::Volume 210 (0xd2)gen_Winamp[0].dllCOM Property
IWinampApplication::VolumeDown 239 (0xef)gen_Winamp[0].dllCOM Method
IWinampApplication::VolumeUp 238 (0xee)gen_Winamp[0].dllCOM Method
winampGetGeneralPurposePlugin0x0045ddd00x0005ddd05 (0x5)gen_Winamp[0].dllExported Function

Looks almost like it's a com interface for winamp or osmething.
« Last Edit: December 09, 2010, 12:35:06 AM by Bobbias »
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Sneaky

  • Windows 8 Knowledge Base
  • Hero Member
  • *****
  • Posts: 1297
  • Where I come from they call it the Hibbity Dibbity
    • View Profile
Re: Winamp is apparently fucked.
« Reply #8 on: December 09, 2010, 12:58:29 AM »
Could this dll be part of an old skin you had downloaded? maybe very incompatible with the new winamp
I wish that cake was a lie. :(

I guess he never figured out what Willis was saying :/

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: Winamp is apparently fucked.
« Reply #9 on: December 09, 2010, 01:50:14 AM »
Nope. First, it's named like a plugin, second, I don't use skins other than the classic skin (I usually install with modern skin support disabled).

My money's on it being an old COM interface for controlling Winamp with those COM methods. Doesn't explain it exploding when winamp tried to load it though.
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: Winamp is apparently fucked.
« Reply #10 on: December 09, 2010, 02:04:38 AM »
My money's on it being an old COM interface for controlling Winamp with those COM methods.

Yeah, I'd have to agree.  I do remember there being an interface for getting general information from COM-aware applications, so perhaps this is it.

Still sort of odd how Google turned up zilch for it, though.
"This is a machine for making cows."

Bobbias

  • #1 Poster
  • Hero Member
  • *****
  • Posts: 7210
  • 404 Avatar not found.
    • View Profile
    • Magnetic Architect
Re: Winamp is apparently fucked.
« Reply #11 on: December 09, 2010, 02:57:26 AM »
Agreed (I googled it as well). I even tried googling for a COM interface, but google seemed to be ignoring my intentions and not looking for COM related stuff (or at least not turning any up... Google needs to recognize more upper-case abbreviations and prioritize them when searching... It's a pain when I search for say, C# and get stuff for regular old C, etc.)

AHA! http://forums.shoutcast.com/showpost.php?s=420c9c8eec57443aa44b3f5eaa8c7095&p=2572123&postcount=5

And googling "Winamp COM Interface" brings up the odd mention of itamong a lot of "Winamp.com) interface"... Google needs to realize that sometimes I want to exclude anything that isn't EXACTLY what I have in quotes :/

« Last Edit: December 09, 2010, 03:34:57 AM by Bobbias »
This is going in my sig. :)

BANNED FOR BAD PUNS X_x

Spectere

  • \m/ (-_-) \m/
  • Administrator
  • Hero Member
  • *****
  • Posts: 5716
  • printf("%s\n", "Hi!");
    • View Profile
    • spectere.net
Re: Winamp is apparently fucked.
« Reply #12 on: December 09, 2010, 07:31:38 PM »
Oh, to force Google to take what you type almost verbatim (it doesn't make it case-sensitive), use +"this format".  If I search for, say, "Spectere," I would have to use that to make sure that "spectre" and "specter" don't show up.
"This is a machine for making cows."