Извращенный UPX и размер упакованной проги

Тема в разделе "WASM.RESEARCH", создана пользователем diogen, 17 мар 2005.

Статус темы:
Закрыта.
  1. diogen

    diogen New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2004
    Сообщения:
    26
    Есть прога (сервер от TWD Remote-Anything) см. аттач, прекрасно распаковывается UPX Ripper 1.3, но пробовал запаковать разными UPX - размер получается всегда больше. Каким извратным UPX'ом она упакована и как упаковать до исходного размера.



    [​IMG] 623638658__Slave.part1.rar
     
  2. diogen

    diogen New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2004
    Сообщения:
    26
  3. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    Возможно, после упаковки использован rebuilder - размер уменьшается на несколько байт :)

    UPX 1.9b пробовали?
     
  4. diogen

    diogen New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2004
    Сообщения:
    26
    Пробовал UPX'ы разные от 0.7 до 1.93, получается больше килобайта на 4-8. Кстати прогу просто распаковывал и, ничего не меняя, запаковывал с максимальной степенью сжатия.
     
  5. diogen

    diogen New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2004
    Сообщения:
    26
    Пардон! Этот файл упаковывается (не обратил внимание, он маленький поэтому и запостил), а вот второй из комплекта "TWD Remote-Anything" - Master.exe ну никак. Если кто использует эту прогу может посмотрите, а то отправить сюда 320kB проблематично.
     
  6. CyberManiac

    CyberManiac New Member

    Публикаций:
    0
    Регистрация:
    2 сен 2003
    Сообщения:
    2.473
    Адрес:
    Russia
    В параметрах командной строки --crp-ms=999999 не забыл?
     
  7. diogen

    diogen New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2004
    Сообщения:
    26
    Паковал с параметрами --best --crp-ms=999999. РАзмер файла получается минимум на 3kB больше.
     
  8. CyberManiac

    CyberManiac New Member

    Публикаций:
    0
    Регистрация:
    2 сен 2003
    Сообщения:
    2.473
    Адрес:
    Russia
    Тогда можно еще попробовать алгоритм сжатия переключить с NRV2D на NRV2B. Обычно, правда, от этого только хуже становится, но вдруг тут какой-нибудь частный случай, где все наоборот.
     
  9. diogen

    diogen New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2004
    Сообщения:
    26
    NRV тоже пробовал менять, с 2B еще хуже.
     
  10. WELL

    WELL New Member

    Публикаций:
    0
    Регистрация:
    24 фев 2004
    Сообщения:
    12
    Может проще инлайн-патч сделать?
     
  11. Jupiter

    Jupiter Jupiter

    Публикаций:
    0
    Регистрация:
    12 авг 2004
    Сообщения:
    532
    Адрес:
    Russia
    diogen

    скачал с http://www.remote-anything.com/en/downloads.htm архив http://www.remote-anything.com/archives/remote-trial.zip (500 кило)



    в архиве присутствуют все упомянутые тобой файлы

    ни со slave.exe, ни с master.exe никаких проблем не возникло:

    меняем названия секций обратно на UPX0 и UPX1 сответственно, правим UPX заголовок и перед байтами OC O9 O5 OA вбиваем UPX!

    после этого распаковывается обычным UPX без проблем



    далее:

    запаковываем прогу обратно:

    upx.exe --best --compress-icons=1



    получаем:

    778240 -> 322048 41.38% win32/pe Master.exe



    размер файла такой же, как и у оригинала



    вывод:

    то, что ты при упаковке имел "лишние" 4 кило, было вызвано наличием в файле большого количества неупакованных иконок как раз на эти 4 кило



    параметр командной строки --compress-icons=1 указывает UPX на то, что нужно упаковать все иконки, кроме первой (чтобы она была видна в виндузовом эксплорере)
     
  12. diogen

    diogen New Member

    Публикаций:
    0
    Регистрация:
    26 сен 2004
    Сообщения:
    26
    Да! Век живи - век учись, а все равно дураком помрешь!

    Спасибо Jupiter за помощь! А я и не додумался до этого ключика. Все как надо! На этом тему можно закрывать. Спасибо всем за помощь!
     
Статус темы:
Закрыта.