Сейчас на форуме: ==DJ==[ZLO], Magister Yoda, Rio (+6 невидимых)

 eXeL@B —› Основной форум —› Распаковка French Layor 1.81
Посл.ответ Сообщение

Ранг: 2.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 10 февраля 2005 23:53
· Личное сообщение · #1

Народ кто знает как, ну или чем мона рапаковать этого зверя?



Ранг: 192.3 (ветеран), 18thx
Активность: 0.120
Статус: Участник
stoned machine-gunner

Создано: 11 февраля 2005 00:18
· Личное сообщение · #2

anemyX
ссылку!

-----
once you have tried it, you will never want anything else




Ранг: 2.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 11 февраля 2005 00:28
· Личное сообщение · #3

gloom пишет:
ссылку!

Ну на посмотри?


cef1_cocaine_crackme.cab



Ранг: 2.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 11 февраля 2005 00:29
· Личное сообщение · #4

Какие мысли? Как убить?




Ранг: 199.6 (ветеран), 12thx
Активность: 0.10
Статус: Участник
www.uinc.ru

Создано: 11 февраля 2005 00:39
· Личное сообщение · #5

Гы! Фтыкай! Остальные посты можно считать грязным плагиатом неа мой распаковщик =)
  DupeFiles();
  Size = *(DWORD*)(&OEP[0x51]);
  Offs = *(DWORD*)(&OEP[0x37]);
  Offs = Offs ^ *(DWORD*)(&OEP[0x3F]);
  Offs = Offs ^ *(DWORD*)(&OEP[0x45]);
  CKey = (BYTE)OEP[0x4A];

  // seek to data
  Offs = Offs - PE->OptionalHeader.ImageBase;
  Offs = RVAToRawP(Offs);
  PackedSeek(Offs, SEEK_SET);
  UnpackedSeek(Offs);

  // decrypt
  while( Size != 0 )
  {
    Cnt = (WORD)MIN(Size, BUFF_SIZE);
    if ( Cnt != PackRead(Buff, Cnt) )
      return(ERR);
    for ( I = 0; I < Cnt; I++ )
      Buff[I] ^= CKey;
    if ( Cnt != UnpackWrite(Buff, Cnt) )
      return(DISK);
    Size -= Cnt;
  }

  // rebuild import table
  IDirOfs = PE->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].
    VirtualAddress = PE->OptionalHeader.AddressOfEntryPoint;
  ISize = sizeof(IMPORT_DIRECTORY_ENTRY);
  IRVA = PE->OptionalHeader.AddressOfEntryPoint + 0x27D;
  IRaw = RVAToRawP(IRVA);
  IDirOfs = RVAToRawP(IDirOfs);

  // read names offset and dll count
  PackSeek(IRaw, SEEK_SET);
  if ( 4 != PackRead((BYTE*)(&Offs), 4) )
    return(ERR);
  if ( 4 != PackRead((BYTE*)(&DCnt), 4) )
    return(ERR);

  // make names ptr
  NRVA =  (IRVA + Offs);
  NRaw =  (IRaw + Offs);
  IRaw += (2 * 4);
  IRVA += (2 * 4);

  // process modules
  while( DCnt-- )
  {
    ISize += sizeof(IMPORT_DIRECTORY_ENTRY);

    // read iat value & proc count
    PackSeek(NRaw, SEEK_SET);
    if ( 4 != PackRead((BYTE*)(&Offs), 4) )
      return(ERR);
    if ( 4 != PackRead((BYTE*)(&NCnt), 4) )
      return(ERR);
    NRaw += (2 * 4);
    NRVA += (2 * 4);

    // create directory
    memset(&IDir, 0, sizeof(IDir));
    IDir.AddressTableRVA = Offs;
    IDir.ForwardChain = 0xFFFFFFFFU;
    IDir.NameRVA = IRVA;
    UnpackSeek(IDirOfs);
    if ( sizeof(IDir) != UnpackWrite(&IDir, sizeof(IDir)) )
      return(ERR);
    IDirOfs += sizeof(IDir);

    // read dll name
    PackSeek(IRaw, SEEK_SET);
    Len = PackRead(Buff, 0x100);
    Buff[Len] = '\0';
    if ( 0 == (Len = strlen(Buff)) )
      return(ERR);
    IRVA += (Len + 1);
    IRaw += (Len + 1);

    // process procs
    Offs = RVAToRawP(Offs);
    while( NCnt-- )
    {
      PackSeek(NRaw, SEEK_SET);
      Len = PackRead(Buff, 0x100);
      Buff[Len] = '\0';
      if ( 0 == (Len = strlen(Page_C)) )
        return(ERR);

      // update iat
      UnpackSeek(Offs);
      DVal = (NRVA - 2);
      if ( 4 != UnpackWrite(&DVal, 4) )
        return(ERR);
      Offs += 4;
      NRVA += (Len + 1);
      NRaw += (Len + 1);
    }

    // write zero iat
    DVal = 0;
    if ( 4 != UnpackWrite(&DVal, 4) )
      return(ERR);
  }

  // write last zero entry
  memset(&IDir, 0, sizeof(IDir));
  UnpackSeek(IDirOfs);
  if ( sizeof(IDir) != UnpackWrite(&IDir, sizeof(IDir)) )
    return(ERR);

  // update header
  Offs = *(DWORD*)(&OEP[0x65]);
  Offs = Offs ^ *(DWORD*)(&OEP[0x70]);
  Offs = Offs - PE->OptionalHeader.ImageBase;
  PE->OptionalHeader.AddressOfEntryPoint = Offs;
  PE->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].Size = ISize;
  UnpackSeek(PEHeaderOffset);
  if ( PE_HEADER_SIZE != UnpackWrite(PE, PE_HEADER_SIZE) )
    return(ERR);




Ранг: 2.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 11 февраля 2005 00:46
· Личное сообщение · #6

DrGolova пишет:
Гы! Фтыкай! Остальные посты можно считать грязным плагиатом неа мой распаковщик =)

а exe-шником не поделишся?




Ранг: 199.6 (ветеран), 12thx
Активность: 0.10
Статус: Участник
www.uinc.ru

Создано: 11 февраля 2005 00:47
· Личное сообщение · #7

Ах ну да, традиционный аттач.
И заметьте, никаких трейсеров, никаких дамперов, и никакого импрека. А отладчик я вообще забыл когда последний раз запускал, чего и всем желаю =)

136a_unpacked.rar




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 11 февраля 2005 00:52
· Личное сообщение · #8

DrGolova пишет:
И заметьте, никаких трейсеров, никаких дамперов, и никакого импрека

Ага, заметили...



Ранг: 2.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 11 февраля 2005 01:20
· Личное сообщение · #9

DrGolova пишет:
Ах ну да

Бошое пасибо!



Ранг: 384.1 (мудрец)
Активность: 0.250
Статус: Участник
www.int3.net

Создано: 11 февраля 2005 06:48
· Личное сообщение · #10

DrGolova
В дизасм и думать?

-----
Подписи - ЗЛО! Нужно убирать!




Ранг: 28.6 (посетитель)
Активность: 0.010
Статус: Участник

Создано: 12 февраля 2005 21:33
· Личное сообщение · #11

DrGolova
> заметьте, никаких трейсеров, никаких дамперов, и никакого импрека.
Да-да, я наслушавшись про твою коллекцию приватных анпакеров загорелся и вчера решил создавать собственную.
Начал с аспака, благо там не сложно, теперь в копилке 1 распаковщик.

p.s. Аффтар, пеши еще. Вдохновляешь



Ранг: 3.4 (гость)
Активность: 0.010
Статус: Участник

Создано: 12 февраля 2005 23:33
· Личное сообщение · #12

inferno_mteam пишет:
Аффтар, пеши еще

2 минуты думал, что это значит, потом допёрло: "Автор, пиши ещё".


 eXeL@B —› Основной форум —› Распаковка French Layor 1.81
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати