Помогите преобразовать код фасм в масм

Тема в разделе "WASM.HEAP", создана пользователем Ирина Барсова, 20 сен 2006.

  1. Ирина Барсова

    Ирина Барсова New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2006
    Сообщения:
    11
    Уважаемые специалисты асмы.
    Я новичок в асме.
    Очень нужна Ваша помощь!!!
    У меня тут 2 процедуры - зашифровки и расшифровки.
    Некий автор писал их на FASM.
    Я пишу на MASM, и хочу разместить эти процедуры
    в своей программе.
    Но компилятор ругается. (МАСМ).
    Что делать? Где неправильно?
    Файл прикрепляю...
    С уважением, Ирина.
    Пожалуйста, если можно киньте правильный вариант на мой ящик
    bars_tdm@mail.ru
     
  2. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    никто не запрещает скомпилить процедуры в .lib и использовать в masm
     
  3. Ирина Барсова

    Ирина Барсова New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2006
    Сообщения:
    11
    Что это такое? (Извиняюсь за безграмотность...)
    Мне значит не вставить эти процедуры в мою программу?
     
  4. asmfan

    asmfan New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2006
    Сообщения:
    1.004
    Адрес:
    Abaddon
    да эт ваще-то Тасм походу
     
  5. Quantum

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

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    Ирина Барсова
    Вот он:
    Код (Text):
    1. db 0fh,31h;;инструкция rdtsc
    2. add eax,051298173h;
    Т.е. ключ = rdtsc() + 0x51298173. rdtsc возвращает текущее "время" в тиках, т.е. используется в качестве генератора случайных чисел.

    32 бит

    Чтоб использовать API-функции (вроде CreateFile, GetFileSize, GlobalAlloc и т.д.) нужно включить соответствующие *.inc и *.lib файлы:
    Код (Text):
    1. include \masm32\include\kernel32.inc
    2. includelib \masm32\lib\kernel32.lib
    3. ; и т.д.
    Почему этикетка start обьявлена 2 раза?!

    Убрать слово arg в директивах proc, которые, кстати, разумнее писать в одну строчку.

    Это уже наглость.
     
  6. Ирина Барсова

    Ирина Барсова New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2006
    Сообщения:
    11
    Стоп... Вопрос - ключ задаётся с помощью генератора случайных чисел...
    Так он выбирается случайно?

    А как же тогда потом расшифровать файл, ключ-то будет неизвестен?
    Или я опять что-то недопонимаю?
     
  7. Quantum

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

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    Ключ попадает в файл.
     
  8. Ирина Барсова

    Ирина Барсова New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2006
    Сообщения:
    11
    Тогда самый важный вопрос, уважаемый Квантум - Вы сами эту процедуру компилили? Она рабочая вообще? (Не сочтите за наглость, пожалуйста... :)
    Просто мне очень она нужна.
    И огромное спасибо за помощь!!!
     
  9. Quantum

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

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    Нет.

    В смысле, "шифрует" ли она файл и может ли потом обратно "расшифровать"? - Да, в этом смысле её можно назвать рабочей.

    Ни в коем случае! Наглость - это просить рабочий исходник почтой.
     
  10. Ирина Барсова

    Ирина Барсова New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2006
    Сообщения:
    11
    Уважаемый Квантум - у меня выскакивают ошибки...
    Во-первых, компилятор говорит, что он не понимает, что такое fn
    Да и я тоже... Может это опечатка? Нужно писать fh (хендл) или fnh ?
    И ещё - можно Вам на личный майл написать - проконсультироваться лично?
    По поводу моей небольшой программки...
    У Вас есть ведь почта?
    (Троян не пришлю, как тут одному сегодня... :)
    Если у вас конечно свободное время бывает помогать кому-то советами...
    Просто Вы очень грамотный в этом вопросе, а к кому ещё обращаться с просьбой помочь,
    как не к таким специалистам как Вы...
    С уважением, Ирина.
     
  11. masquer

    masquer wasm.ru

    Публикаций:
    0
    Регистрация:
    13 сен 2002
    Сообщения:
    890
    Адрес:
    Николаев
    лучше в WASM.COMMERCIAL с указанием суммы
     
  12. Ирина Барсова

    Ирина Барсова New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2006
    Сообщения:
    11
    Вот тут... К сожалению... Не смогу...
    Я - бедный человек...
     
  13. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Публикаций:
    0
    Регистрация:
    28 окт 2003
    Сообщения:
    2.428
    Адрес:
    Russia
    Ирина Барсова
    Имеет такое сво-во в криптографии, если в ГПСЧ подать в качестве seed свое число, то генерация ПС чисел повторится, и вдругой раз, если в такой же алгоритм подать такой же seed! т.е. это можно использовать для зашифровки\расшифровки.(Это на будущее, но сейчас это не подходит!)

    По задаче:
    1. Срочность?
    2. Почему не фасм?
     
  14. masquer

    masquer wasm.ru

    Публикаций:
    0
    Регистрация:
    13 сен 2002
    Сообщения:
    890
    Адрес:
    Николаев
    у бедных людей нет компьютера и особенности трансляции крипто с одного языка на другой их точно не волнуют...
     
  15. Ирина Барсова

    Ирина Барсова New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2006
    Сообщения:
    11
    Да не то что срочность... Просто я уже деньги у дяденьки взяла - 1000 рублей...
    Ну не отдавать же обратно из-за загвоздки этой...
    Почему не на фасм - потому что я пишу на масм.
    (Хотя и подумываю освоить эту среду разработки... Там вроде сразу три в одном, и линковка, и ексешник, и прочее... Только побаиваюсь...
     
  16. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Публикаций:
    0
    Регистрация:
    28 окт 2003
    Сообщения:
    2.428
    Адрес:
    Russia
    Ирина Барсова
    Личку проверь, если не выход! То будем думать! :)))
     
  17. Ирина Барсова

    Ирина Барсова New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2006
    Сообщения:
    11
    Вообще-то мне всего15 лет. а компьютер папа купил.
    И не нужно тут меня разоблачать... Умник какой...
     
  18. masquer

    masquer wasm.ru

    Публикаций:
    0
    Регистрация:
    13 сен 2002
    Сообщения:
    890
    Адрес:
    Николаев
    Я щас матом начну ругатся, чесслово. Засек время - на получение компилируемого кода на масме у меня ушло около 15 секунд (чот именно надо сделать - вам уже указали). Если мозгов нет (особенно после фразы "я пишу на масм"), либо совести и так нагло врать - такое наказать рублем самое оно.
     
  19. Ирина Барсова

    Ирина Барсова New Member

    Публикаций:
    0
    Регистрация:
    20 сен 2006
    Сообщения:
    11
    Ну а зачем кричать? Вот попробую сейчас, господин масквер.
    Если действительно скомпилится - очень хорошо.
    И не сердитесь на меня... Я иногда дурой бываю...
    Вы когда-то учили это, тоже наверное не всё понимали. Правильно?
     
  20. Quantum

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

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    Ирина Барсова
    И он абсолютно прав, как обычно. Я же говорил, что нужно убрать arg и соединить строчки, т.е. хотя бы так:
    Код (Text):
    1. shifrator proc fn:DWORD, fnh:DWORD ; процедура шифрования
    Личные подробности по поводу данной программы меня не интересуют (сколько лет разработчику(це), состояние бюджета и т.д.) Поэтому нет смысла консультироваться лично. Обычно новички цепляют в топик полный исходник (sifr.txt трудно назвать полным), приводят сообщения ошибки компилятора и кто-нибудь берётся им всё подробно (или не очень) разьяснять.