White screen fix - New versions
So Habbo decided to include yet another code in their SWF.
The code is the following:
Code:
if (_local_11.time >= 1452556800000){
_local_12 = [99, 111, 110, 110, 101, 99, 116, 105, 111, 110, 46, 105, 110, 102, 111, 46, 104, 111, 115, 116];
_local_13 = [[118, 97, 114, 111, 107, 101, 46, 110, 101, 116], [104, 97, 98, 98, 111, 46, 99, 111, 109]];
_local_15 = new ByteArray();
_local_15.writeShort(_local_12.length);
_local_16 = 0;
while (_local_16 < _local_12.length) {
_local_15.writeByte(_local_12[_local_16]);
_local_16++;
};
_local_15.position = 0;
_local_14 = _local_15.readUTF();
_local_17 = stage.loaderInfo.parameters[_local_14];
if (_local_17 == null){
return;
};
_local_18 = false;
_local_16 = 0;
while (_local_16 < _local_13.length) {
_local_19 = _local_13[_local_16];
_local_20 = new ByteArray();
_local_20.writeShort(_local_19.length);
_local_21 = 0;
while (_local_21 < _local_19.length) {
_local_20.writeByte(_local_19[_local_21]);
_local_21++;
};
_local_20.position = 0;
if (_local_17.indexOf(_local_20.readUTF()) >= 0){
if (_local_16 == 0){
_local_18 = true;
break;
};
_local_23 = new ByteArray();
_local_24 = [103, 97, 109, 101, 45];
_local_23.writeShort(_local_24.length);
_local_25 = 0;
while (_local_25 < _local_24.length) {
_local_23.writeByte(_local_24[_local_25]);
_local_25++;
};
_local_23.position = 0;
_local_22 = _local_23.readUTF();
_local_26 = [[100, 101], [100, 107], [101, 115], [102, 105], [102, 114], [105, 116], [110, 108], [110, 111], [115, 101], [117, 115], [98, 114], [116, 114], [115, 49], [115, 50], [115, 49, 45, 116, 101, 115, 116]];
_local_27 = 0;
while (_local_27 < _local_26.length) {
_local_28 = new ByteArray();
_local_29 = _local_26[_local_27];
_local_28.writeShort(_local_29.length);
_local_30 = 0;
while (_local_30 < _local_29.length) {
_local_28.writeByte(_local_29[_local_30]);
_local_30++;
};
_local_28.position = 0;
if (_local_17.indexOf((_local_22 + _local_28.readUTF())) >= 0){
_local_18 = true;
break;
};
_local_27++;
};
};
_local_16++;
};
if (!_local_18){
_local_31 = new Sprite();
(this._SafeStr_13508.getDisplayObject() as Sprite).addChild(_local_31);
_local_31.graphics.beginFill(0xFFFFFF);
_local_31.graphics.drawRect(0, 0, (_arg_9.width * 50), (_arg_9.height * 50));
_local_31.graphics.endFill();
};
};
What this does basically is check if the date is higher than Tue, 12 Jan 2016 00:00:00 GMT and then makes the screen white, to what I assume it is another anti retro server tactic.
If has a way too easy fix. Find 1452556800000 using RABCDasm and change it to a higher number. I myself put 9452556800000 since that day will never come.
The following steps are:
- Using the command line prompt input the following code:
Code:
abcexport Habbo.swf
rabcdasm Habbo-2.abc
swfdecompress Habbo.swf
- After this using a text search software (you can use notepad++ in the tab "Search in files"), look for the string 1452556800000
- Change it to your desired date
- Recompile the SWF file using the following
Code:
rabcasm Habbo-2/Habbo-2.main.asasm
abcreplace Habbo.swf 2 Habbo-2/Habbo-2.main.abc
Don't forget to compress the SWF file if you would to do so after this.
Thats it, please remember to clear your cache files and/or use a different file name.
What do you think that Sulake implemented this method? I think it is very smart of them and yet very dumb since its way to
Re: White screen fix - New versions
Doesnt work here, even when i changed the number... can you help me?
Re: White screen fix - New versions
Thank you for the fix, no more white client screen + works like a charm.
Their new method was smart IMO but it can be fixable lol..
Re: White screen fix - New versions
Instead of changing the data you can also change the ifnge to ifge. Note that this only works if the data has already been passed.
- - - Updated - - -
Quote:
Originally Posted by
JerryCool
Thank you for the fix, no more white client screen + works like a charm.
Their new method was smart IMO but it can be fixable lol..
Its not smart, its stupid.
The only way for them to prevent this is if they wrote their own client in C++ or something. But even then.
Re: White screen fix - New versions
Quote:
Originally Posted by
The General
Instead of changing the data you can also change the ifnge to ifge. Note that this only works if the data has already been passed.
- - - Updated - - -
Its not smart, its stupid.
The only way for them to prevent this is if they wrote their own client in C++ or something. But even then.
Thank you for the fast fix!
Re: White screen fix - New versions
Yeah this is a stupid attempt for trying to stop retro hotels with using Habbo's swf but failing everytime. Better they stop with their hopeless attempts because if they still using SWF it would everytime patched, just a matter of time to find out.
Re: White screen fix - New versions
Not sure what they do with it though but:
_local_12 = [99, 111, 110, 110, 101, 99, 116, 105, 111, 110, 46, 105, 110, 102, 111, 46, 104, 111, 115, 116];
Is connection.info.host which they then request from the variables.
Tried wiresharking. Maybe they forward this data to their servers? If so we should remove the whole block of code. Locally but nothing came up.
Re: White screen fix - New versions
Another option is keep your emulator (The SWF build) uptodate
Re: White screen fix - New versions
SWF could get off this and put this fix because I could not find the exact number: http://178.33.115.100/swfhelandia/gordon/PRODUCTION-201511031204-354454376/Crackedx.swf even if the folder is otherwise RELEASE .swf and last January but I snapshot white
Re: White screen fix - New versions
Pseudocode for the check:
PHP Code:
if (timenow >= expiretime)
{
if(host.contains("varoke.net")
{
// client is allowed to load
}
else if(host.contains("habbo.com"))
{
if(host.contains("game-xx")) // xx being de,dk,es,fi,fr,it,nl,no,se,us,br,tr,s1,s2, or s1-test
{
// client is allowed to load
}
}
// a white layer gets drawn over the client
}
So it's basically a new domain check, and there's no sign of the info being sent anywhere.
Re: White screen fix - New versions
Quote:
Originally Posted by
AWA
Pseudocode for the check:
PHP Code:
if (timenow >= expiretime)
{
if(host.contains("varoke.net")
{
// client is allowed to load
}
else if(host.contains("habbo.com"))
{
if(host.contains("game-xx")) // xx being de,dk,es,fi,fr,it,nl,no,se,us,br,tr,s1,s2, or s1-test
{
// client is allowed to load
}
}
// a white layer gets drawn over the client
}
So it's basically a new domain check, and there's no sign of the info being sent anywhere.
I was too lazy to decode all the bytes.
Re: White screen fix - New versions
Requesting to @anthony93260 Add this on SulkaDasm.
I already changed my Habbo.swf with this.
Sulake is going more worse.
Re: White screen fix - New versions
Quote:
Originally Posted by
ovflowd
Requesting to @
anthony93260 Add this on SulkaDasm.
I already changed my Habbo.swf with this.
Sulake is going more worse.
Already did two months ago or something but never got a reply.
Re: White screen fix - New versions
Ping @Arachis to add this on HabBit.
And ping @BurakDev to add this on BurakSwfCracker 2.0 :sleep:
Re: White screen fix - New versions
Quote:
Originally Posted by
BurakDev
Ping @
Arachis to add this on HabBit.
And ping @
BurakDev to add this on BurakSwfCracker 2.0 :sleep:
Arachis already added that, before tis thread being created.
But idk when i use his swf cracker, the emulator receive no one connection/socket, nothing.