Re: Habbo.swf original source(structures and names, no code)
Quote:
Originally Posted by
Arachis
The actual AVM2(DoAbc) instructions are missing in the SWF anyways, it was mentioned earlier in this thread that it was all converted to ARM(?). Which is, not cool bro.
That's... partially true. There are DoAbc blocks in the SWF, I've decompressed and decompiled it already, but it just defines stubs for every class and function. It's kind of nice for seeing which libraries are being incorporated, but besides that it's pretty useless.
The stubs outline functions for the Air runtime and the function code itself runs as native instructions. They're located in an encrypted binary blob ("HabboAir" no file extension)
Sent from my iPhone using Tapatalk
Re: Habbo.swf original source(structures and names, no code)
Quote:
Originally Posted by
scottstamp851
That's... partially true. There are DoAbc blocks in the SWF, I've decompressed and decompiled it already, but it just defines stubs for every class and function. It's kind of nice for seeing which libraries are being incorporated, but besides that it's pretty useless.
The stubs outline functions for the Air runtime and the function code itself runs as native instructions. They're located in an encrypted binary blob ("HabboAir" no file extension)
Sent from my iPhone using Tapatalk
I couldn't find any DoAbc tags in the HabboTablet.swf, but I did see this in one of the downloads in this thread:
http://i.imgur.com/NFxdLsI.png
I didn't really understand where you guys even found those class names(couldn't find a .bin file containing them), but you can read the __DATA__abc file like any other .abc file:
http://i.imgur.com/piXhxSk.png
Sadly the method bodies are empty, but I had no idea until today that __DATA__abc was the actual .abc file(without the code).
Re: Habbo.swf original source(structures and names, no code)
Quote:
Originally Posted by
ovflowd
What the hell are you saying?
This thread is about Habbo Air. In this time no-one figured out how Decompress or Find the Habbo Air's SWF. That is literrally built-in with the APK Built Code.
We're trying to figure out where the SWF part begins and ends, to Decompress and have the source code. We don't know if Habbo's Air SWF is obfuscated likely Habbo's Desktop SWF, we don't know that, we trying to decompress it to see the source code and analyse. Maybe get the AS3 Source Code.
The fact is no-one already get that, and @
The General is right, that will be good for the community starting development of Habbo's Mobile Version.
And agains the "cat and rat" game will start over... @
Arachis
And the competition of who create the FIRST emulator of Habbo Air. Woah
This will be a really big war.
Just to clarify, if we didn't know whether it's obfuscated or not, how did @Wotsuba obtain these? http://forum.ragezone.com/f353/habbo...names-1085548/
Re: Habbo.swf original source(structures and names, no code)
Quote:
Originally Posted by
ppntn
Official Packet Names are given, in Habbo.swf, You only need see commented code. The AS3 dumped file shows in // comments, the PacketNames, but not their void names.
PacketName != Void Name in many times.
You need remember that the voids from Habbo.swf AS code are the structures.
Is like a normal software. The Habbo.swf AS3 voids aren't only packet handlers voids, are normal Habbo client structure code.
That means, you can see that the Habbo SWF works in a way similar from the Message system of a Habbo Emulator.
We have voids that Handle the Incoming request, sends to correspondent Handler, that can interacte with normal classes.
An emulator that really is similar as Habbo.swf is Plus Emulator.
Habbo.swf has a void for register all incoming (Client -> Emulator) Events, (Events are sended from Client to Emulator)
Plus is really similar.
The entire Message System of Plus is really similar. (in terms of designing)
Sorry if i explained bad, my engish is super worse, i can't explain correctly my point.
Will try explain better later.
Re: Habbo.swf original source(structures and names, no code)
Quote:
Originally Posted by
ovflowd
Official Packet Names are given, in Habbo.swf, You only need see commented code. The AS3 dumped file shows in // comments, the PacketNames, but not their void names.
PacketName != Void Name in many times.
You need remember that the voids from Habbo.swf AS code are the structures.
Is like a normal software. The Habbo.swf AS3 voids aren't only packet handlers voids, are normal Habbo client structure code.
That means, you can see that the Habbo SWF works in a way similar from the Message system of a Habbo Emulator.
We have voids that Handle the Incoming request, sends to correspondent Handler, that can interacte with normal classes.
An emulator that really is similar as Habbo.swf is Plus Emulator.
Habbo.swf has a void for register all incoming (Client -> Emulator) Events, (Events are sended from Client to Emulator)
Plus is really similar.
The entire Message System of Plus is really similar. (in terms of designing)
Sorry if i explained bad, my engish is super worse, i can't explain correctly my point.
Will try explain better later.
What you're explaining is essentially incorrect. The method stubs are missing, correct, though we're able to see the method stub names (init, load, startSocket and whatnot)
Re: Habbo.swf original source(structures and names, no code)
Quote:
Originally Posted by
Dominic
What you're explaining is essentially incorrect. The method stubs are missing, correct, though we're able to see the method stub names (init, load, startSocket and whatnot)
It's wait i tried to explain...
But my english is soo faaaaarrr to be understandable
Re: Habbo.swf original source(structures and names, no code)
I decided to pull the "hashes" for the message handlers from "__DATA__abc" that was in this download:
Quote:
Originally Posted by
AWA
I had to make HabBit a bit more "dumb", by not having it consume the instructions, since there are no method bodies in the top download.
In the end, it managed to spit out some unique hashes for most of them:
Unique Incoming Hashes: 102
Unique Outgoing Hashes: 122
HabboTablet Message Handlers
You can compare these hashes with the latest Habbo client build, but only with the "dumb" ones I produced:
HEADERS_PRODUCTION-201601191204-702719373
http://i.imgur.com/EISoDL5.png
Edit: Most of the matches, using the header ids of: PRODUCTION-201601191204-702719373
PRODUCTION-201601191204-702719373 ID Names - Pastebin.com
Re: Habbo.swf original source(structures and names, no code)
Quote:
Originally Posted by
TheOleg
@TheOleg
Could you upload a mirror somewhere else?
Re: Habbo.swf original source(structures and names, no code)
Quote:
Originally Posted by
KevinYates
@
TheOleg
Could you upload a mirror somewhere else?
Sure.
https://mega.nz/#!8stTBYhQ!532nidhRp...lw7dgLdw4FQ4TU
Re: Habbo.swf original source(structures and names, no code)
Many thanks to you for the speed of response.
Re: Habbo.swf original source(structures and names, no code)
Not sure whether it helps anyone, but I once "de-obfuscated" all method names, some class properties (the ones that got getters / setters) and class names of a Habbo SWF released in 2011 and uploaded it to Github now (please no DMCA takedown thxxxx). These used to have the original identifiers in the bytecode. The structure shouldn't be too different from the current version (regarding room rendering and stuff).
If I'm not the first one to share such a thing or if it isn't helpful to anyone.. I'm sorry for posting it :sleep:
https://github.com/StefanNemeth/habbo-client/
Cheers,
Steve Winfield