blau hizo un sacacorchos para darckomet y esto es lo mismo,
lamentablemente no sirve de nada, si el server esta encryptado no se puede extraer nada.
server encriptado----->desenpacar----> extraer datos
los mas osados a la hora de programar en tiempos remotos (creo que se llamaba pysmera )hizo un kill runpe(orlando tambien lo explico en un post
el programa tiene 3 botones , 2memos,1 open dialog
selecion de ejecutables
volcado de recurso en memo
y desencriptado
(no tiene muchas comprobaciones , )
unit Unit1;
{la contraseña dependen de la version
se pueden buscar las cadenas del ejecutable volcandolo en un notepad o con una funcion
AsciiDump coded by steve10120
claves segun version(sacado de un source de python)
#KCMDDC2#------------->-#KCMDDC2#-890
#KCMDDC4#----------------------->#KCMDDC4#-890
#KCMDDC42#--------------->#KCMDDC42#-890
#KCMDDC42F#-------------->#KCMDDC42F#-890
#KCMDDC5#-------------->#KCMDDC5#-890
#KCMDDC51#---------------->#KCMDDC51#-890}
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,unit3, StdCtrls;
type
TForm1 = class(TForm)
Memo2: TMemo;
Memo3: TMemo;
Button1: TButton;
Edit1: TEdit;
Label1: TLabel;
Button2: TButton;
OpenDialog1: TOpenDialog;
Button7: TButton;
procedure Button2Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
//***********************autor michael puff*****************************************
function LoadTextFromResourceByName(ResourceName: ansiString): AnsiString;
var
ResourceStream: TResourceStream;
begin
hInstance := LoadLibrary(pchar(form1.edit1.text));
ResourceStream := TResourceStream.Create(HInstance, ResourceName, RT_RCDATA);
try
try
SetLength(Result, ResourceStream.Size);
ResourceStream.ReadBuffer(Result[1], ResourceStream.Size);
except
raise;
end;
finally
ResourceStream.Free;
end;
end;
**********************fin riped********************
function HexToString(H: String): String;
var I : Integer;
begin
Result:= '';
for I := 1 to length (H) div 2 do
Result:= Result+Char(StrToInt('$'+Copy(H,(I-1)*2+1,2)));
end;
//*********************desencriptando
procedure TForm1.Button2Click(Sender: TObject);
begin
memo3.text:=RC4(memo2.Text,'#KCMDDC51#-890');
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if opendialog1.execute then
edit1.Text:=opendialog1.filename;
end;
//*****volcando los datos**********
procedure TForm1.Button7Click(Sender: TObject);
var
s:string;
begin
if edit1.Text ='' then begin
showmessage ('elegi el ejecutable papa!');
end
else begin
s:= LoadTextFromResourceByName('DCDATA');
memo2.Text:=hextostring(s);
end;
end;
end.
unit rc4