PDA

View Full Version : Reverse Engineering Hotlink-Resistant .swf Games



Serpent Rider
04-12-2018, 06:53 AM
Hi all, I've been doing some work recently in tweaking Flash games ripped straight from Neopets' image and swf subdomains in order to circumvent what I have observed to be anti-piracy features. They seem to affect most older non-Games Graveyard games and some newer ones, and rely on some sort of anti-piracy subroutine such as authentication failure to disrupt play in such a fashion to make it undesirable for usage. I'm inexperienced with viewing the guts of Flash files so I was wondering if anyone else intrigued by this phenomenon could please offer advice as to how to proceed.

An example, a lost legend, Omelette Defender: [Only registered and activated users can see links]

An example of authentication failure impacting play, Hot Grilled Neggs (through restriction to mysingtel customers only):
[Only registered and activated users can see links]

Oftentimes a game failing to load past the initialization frames has these features, so I wouldn't be surprised if the problem lies somewhere in those frames' scripts.

I've used JPEXS Free Flash Decompiler to take a look under the hood of most of these games to find something impactful and it feels almost as if code is being hidden from me (which I wouldn't be surprised is a tactic used by developers) or perhaps I'm not looking hard enough. Any tips or insight into this conundrum is greatly appreciated. B)

j03
04-12-2018, 06:58 AM
Hi all, I've been doing some work recently in tweaking Flash games ripped straight from Neopets' image and swf subdomains in order to circumvent what I have observed to be anti-piracy features. They seem to affect most older non-Games Graveyard games and some newer ones, and rely on some sort of anti-piracy subroutine such as authentication failure to disrupt play in such a fashion to make it undesirable for usage. I'm inexperienced with viewing the guts of Flash files so I was wondering if anyone else intrigued by this phenomenon could please offer advice as to how to proceed.

An example, a lost legend, Omelette Defender: [Only registered and activated users can see links]

An example of authentication failure impacting play, Hot Grilled Neggs (through restriction to mysingtel customers only):
[Only registered and activated users can see links]

Oftentimes a game failing to load past the initialization frames has these features, so I wouldn't be surprised if the problem lies somewhere in those frames' scripts.

I've used JPEXS Free Flash Decompiler to take a look under the hood of most of these games to find something impactful and it feels almost as if code is being hidden from me (which I wouldn't be surprised is a tactic used by developers) or perhaps I'm not looking hard enough. Any tips or insight into this conundrum is greatly appreciated. B)

I used to decompile SWF/actionscript files over 10 years ago to make trainers for Neopets flash games. This is how I found variables to hack. :)

I used SoThink SWF Decompiler. Used it recently and it still works. Most of the code is usually under the MainMovie branch but not only there.


Sent from my iPhone using Tapatalk

Serpent Rider
04-12-2018, 07:34 AM
Thanks! I might switch decompilers since my current one seems to not like debugging. I've never heard of a MainMovie branch - is this an ActionScript thing? Goes to show how much I have to learn!

Interesting note: I ran OmeDef through a standard Flash projector just then and while it denied all connection to Internet resources, it entered a non-functional game mode where I could actually walk around and shoot. I suspect what may affect many of these games truly is authentication failure.

Zachafer
04-13-2018, 10:06 PM
bigboy check out [Only registered and activated users can see links]

MainMovie is just where the main Actionscript resides for Neo flash games