1. Если вы только начинаете программировать на ассемблере и не знаете с чего начать, тогда попробуйте среду разработки ASM Visual IDE
    (c) на правах рекламы
    Скрыть объявление

Объединение exe программ

Тема в разделе "WASM.BEGINNERS", создана пользователем Mountaineer, 28 ноя 2010.

  1. skomarov

    skomarov New Member

    Публикаций:
    0
    Регистрация:
    14 май 2008
    Сообщения:
    389
    _sheva740
    Морочь - не морочь, а делать все-равно придется.
     
  2. _sheva740

    _sheva740 New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2005
    Сообщения:
    1.540
    Адрес:
    Poland
    skomarov
    Неправда. Обо всем можно договориться.
    Не верят в чудо только "прямолинейщики".
     
  3. skomarov

    skomarov New Member

    Публикаций:
    0
    Регистрация:
    14 май 2008
    Сообщения:
    389
    _sheva740
    Одно дело уточнить задание, другое - договориться.

    Mountaineer
    Советы бывают хорошие и не очень хорошие.
     
  4. Mountaineer

    Mountaineer New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2010
    Сообщения:
    125
    skomarov

    :D
     
  5. Mountaineer

    Mountaineer New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2010
    Сообщения:
    125
    Что то затихли.
     
  6. baldr

    baldr New Member

    Публикаций:
    0
    Регистрация:
    29 апр 2010
    Сообщения:
    327
    Mountaineer,

    Здесь действуют тёмные электромагнитные силы, наверняка. :derisive:
     
  7. Semiono

    Semiono New Member

    Публикаций:
    0
    Регистрация:
    27 ноя 2005
    Сообщения:
    752
    а что за стаб, специальный какой чтоль?

    Какой исходник тут проверенный? Я это тему никак найти не мог, пока не обновилась.
    Мне тоже надо из одного фасм1 запустить другой фасм2.
    Желательно чтобы первый модуль перед запуском второго выполнял какойнибудь полезный код.
    Хотяб MessageBox() и второй модуль тоже MessageBox() итп.
    Наверное кроме размера модулей тут ничего более критичного нет?
    Со стабом я так и не понял, мне кстати PE64 тоже интересно на эту тему.

    Ага! =)

    Кароче попробую #121 сурс
     
  8. Mikl___

    Mikl___ Супермодератор Команда форума

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    2.764
    Решаем поставленную Вами задачу, о Великий Белый Господин... Достал этот цирк на 8 страниц!
     
  9. _sheva740

    _sheva740 New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2005
    Сообщения:
    1.540
    Адрес:
    Poland
    Semiono
    Код стаба:
    Код (Text):
    1. ;stub.asm
    2. ; start file ----------------------------------------
    3. DOS_Header:
    4.    .e_magic dw "MZ"      ;IMAGE_DOS_SIGNATURE
    5.    .e_cblp  dw 0x0080
    6.    .e_cp        dw 0x0001
    7.    .e_crlc  dw 0x0000
    8.    .e_cparhdr   dw 0x0004
    9.    .e_minalloc  dw 0x0010
    10.    .e_maxalloc  dw 0xFFFF
    11.    .e_ss        dw 0x0000
    12.    .e_sp        dw 0x0140
    13.    .e_csum  dw 0x0000
    14.    .e_ip        dw 0x0000
    15.    .e_cs        dw 0x0000
    16.    .e_lfarlc    dw 0x0040
    17.    .e_ovno  dw 0x0000
    18.    .e_res       rw 4
    19.    .e_oemid dw 0x0000
    20.    .e_oeminfo   dw 0x0000
    21.    .e_res2  rw 10
    22.    .e_lfanew    dd PE_header  ;PE header Offset
    23.  
    24. DOS_Stub:
    25.  org $+DOS_Stub
    26. rb 160-(DOS_Stub-$)
    27. PE_header:
    28. ; end file ----------------------------------------
    Так собираешь:
    Код (Text):
    1. rem ---- makebin.bat
    2. @echo on
    3. c:\fasmw\fasm.exe stub.asm stub.bin
    4. pause
    Только пропиши путь к fasm.exe свой.
    Получишь stub.bin положи рядом с glue.asm из #121
    Ну дальше по порядку ...

    Теперь можно писать в glue.asm с "on 'stub_64.bin' "
    Код (Text):
    1. format PE GUI 4.0 on 'stub_64.bin'             ; Создаем PE EXE
    2. .
    3. .
    4. .
    И пере собрать glue.asm.
     
  10. Mountaineer

    Mountaineer New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2010
    Сообщения:
    125
    _sheva740
    Кстати в вашей программе там нужно вроде как скрывать goo.cmd.
    А преподаватель то код программы будет смотреть и по нему вопросы задавать=)
     
  11. Mountaineer

    Mountaineer New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2010
    Сообщения:
    125
  12. _sheva740

    _sheva740 New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2005
    Сообщения:
    1.540
    Адрес:
    Poland
    Mountaineer
    Да не нужно его скрывать, goo.cmd сам с атрибутами
    "скрытый" из glue.exe выскочит ))
    Просто, если ты будешь демонстрировать свою прожку,
    ты в свойствах проводника установи " Не показывать скрытые ..."
    [​IMG]
    Потом
    [​IMG]

    Скрываешь скрытые ))) файлы и демонстрируешь преподу.
    Но перечитай внимательно #121 и #122 !!
    Ты же помнишь что демонстрировать не надо в той же папке где собирал!
    Чтобы не было подозрений ))

    Ну и прожка - http://webfile.ru/5007120

    Защитишься - хоть отпишись, уже интересно стало как защита прошла )))
     
  13. FatMoon

    FatMoon New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2002
    Сообщения:
    954
    Адрес:
    Russia
    да никак не пройдет, все равно в исходник смотреть сначала. А в идеале еще и компилировать на месте - может студент такую фигню написал, что она даже в исполняемый не превратится? А готовые экзешники я бы от студентов не запускал в принципе - хто из знает, гениев - он на одном форуме спрашивает как курсовую сделать, а на другом в это же время допытывается об антиэвристике, шоб его не попалило. А потом хабах - и компы лежат... :D всем зачет автоматом.
     
  14. Mountaineer

    Mountaineer New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2010
    Сообщения:
    125
    _sheva740
    Вы меня не поняли. =)

    Он же будет смотреть ккод программы, а там:

    mov dword [buf-9+eax],'\goo' ; Добавим к буферу
    mov dword [buf-9+eax+4],'.cmd' ; имя
    mov byte [buf-9+eax+8],0 ; goo.cmd

    и типа тогo...
     
  15. Mountaineer

    Mountaineer New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2010
    Сообщения:
    125
  16. _sheva740

    _sheva740 New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2005
    Сообщения:
    1.540
    Адрес:
    Poland
    Ну покажи ему
    Код (Text):
    1. @echo off
    2. 001.exe
    3. 002.exe
    4. pause ...
     
  17. Mountaineer

    Mountaineer New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2010
    Сообщения:
    125
    _sheva740
    В смысле?
     
  18. _sheva740

    _sheva740 New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2005
    Сообщения:
    1.540
    Адрес:
    Poland
    Mountaineer
    Ну покажи ему код, естественно, он же тебе зачет не поставит :))
     
  19. Mountaineer

    Mountaineer New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2010
    Сообщения:
    125
    _sheva740
    У там же будет видно что работаем с файлом goo.cmd
     
  20. _sheva740

    _sheva740 New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2005
    Сообщения:
    1.540
    Адрес:
    Poland
    НУ так и что? Там видно что работаем и с 001.exe и 002.exe.
    Более того тебя просили склеить 2 файла (001.exe и 002.exe)
    а ты, подумал да склеил ТРИ! 001.exe, 002.exe и goo.cmd.
    Три! Ты ли не гений в неприглядной обертке?!!
    ))