Bonjour,
ce SWF est un RawDataMessage permettant de bypass la connexion.
Les identifiants sont envoyés dans le credentials directement en byte.
Tu as de la chance je l'avais récupéré.
Cliquez pour révéler
Cliquez pour masquer
package
{
import flash.display.Sprite;
import flash.utils.*;
import flash.filesystem.*;
public class StumpPatch extends Sprite
{
public function StumpPatch()
{
var BuildInfos:* = undefined;
var AirScanner:* = undefined;
var ClientInstallTypeEnum:* = undefined;
var XmlConfig:* = undefined;
var AuthentificationManager:* = undefined;
var ConnectionsHandler:* = undefined;
var ClientTechnologyEnum:* = undefined;
var password:* = undefined;
var username:* = undefined;
var serverId:* = undefined;
var autoSelectServer:* = undefined;
var version:* = undefined;
var credentials:ByteArray = null;
var vector:Vector.<int> = null;
var message:* = undefined;
var file:File = null;
var stream:FileStream = null;
super();
try
{
BuildInfos = getDefinitionByName("com.ankamagames.dofus::BuildInfos");
AirScanner = getDefinitionByName("com.ankamagames.jerakine.utils.system::AirScanner");
ClientInstallTypeEnum = getDefinitionByName("com.ankamagames.dofus.network.enums::ClientInstallTypeEnum");
XmlConfig = getDefinitionByName("com.ankamagames.jerakine.data::XmlConfig");
AuthentificationManager = getDefinitionByName("com.ankamagames.dofus.logic.connection.managers::AuthentificationManager").getInstance();
ConnectionsHandler = getDefinitionByName("com.ankamagames.dofus.kernel.net::ConnectionsHandler");
ClientTechnologyEnum = getDefinitionByName("com.ankamagames.dofus.network.enums::ClientTechnologyEnum");
password = AuthentificationManager.loginValidationAction.password;
username = AuthentificationManager.loginValidationAction.username;
serverId = AuthentificationManager.loginValidationAction.serverId;
autoSelectServer = AuthentificationManager.loginValidationAction.autoSelectServer;
version = new (getDefinitionByName("com.ankamagames.dofus.network.types.version::VersionExtended") as Class)();
version.initVersionExtended(BuildInfos.BUILD_VERSION.major,BuildInfos.BUILD_VERSION.minor,BuildInfos.BUILD_VERSION.release,AirScanner.isStreamingVersion()?70000:BuildInfos.BUILD_REVISION,BuildInfos.BUILD_PATCH,BuildInfos.BUILD_VERSION.buildType,AirScanner.isStreamingVersion()?ClientInstallTypeEnum.CLIENT_STREAMING:ClientInstallTypeEnum.CLIENT_BUNDLE,AirScanner.hasAir()?ClientTechnologyEnum.CLIENT_AIR:ClientTechnologyEnum.CLIENT_FLASH);
credentials = new ByteArray();
credentials.writeUTF(username);
credentials.writeUTF(password);
vector = new Vector.<int>();
credentials.position = 0;
while(credentials.bytesAvailable != 0)
{
vector.push(credentials.readByte());
}
message = new (getDefinitionByName("com.ankamagames.dofus.network.messages.connection::IdentificationMessage") as Class)();
message.initIdentificationMessage(version,XmlConfig.getInstance().getEntry("config.lang.current"),vector,serverId,autoSelectServer,false,false);
ConnectionsHandler.getConnection().send(message);
}
catch(error:Error)
{
file = File.applicationDirectory.resolvePath("error.txt");
stream = new FileStream();
stream.open(file,FileMode.WRITE);
stream.writeUTFBytes("toString() = " + error.toString() + "\n");
stream.writeUTFBytes("message = " + error.message + "\n");
stream.writeUTFBytes("name = " + error.name + "\n");
stream.writeUTFBytes("id = " + error.errorID + "\n");
stream.close();
}
}
}
}