Главная » Статьи » Assembler

В категории материалов: 21
Показано материалов: 11-20
Страницы: « 1 2 3 »

Сортировать по: Дате · Названию · Рейтингу · Комментариям · Просмотрам
Приведу набор разбавленных описаниями кусков антиотладочных фич. В общем кому надо они уже давно известны, но я их прокомпилирую, и думаю кое-кому это будет полезно. Замечания по сути материала приветствуются и полезны не только мне, но и вам. Зачем нужна антиотладка? Чтобы такие чмошники как Неокс и его одноклассники не смогли пробраться внутрь вашего злого кода. Т.е. чтобы их грязные ванючие лапы не добрались до святости. Отформатируя диск при попытке отладки мы эти лапы им отпилим, а заодно научим, что им в программировании и реверсинге делать нечего. Конечно, на пабликовские антиотладочные трюки имеются пабликовские способы их обнаружения, но это будет пищей для того, чтобы сгенерировать что-то свое. Если переход, значит отладчик найден. Синтаксис FASM.
Assembler | Просмотров: 3789 | Author: miksayer | Добавил: -=Hellsing=- | Дата: 22.06.2009 | Комментарии (0) | Читать далее...

Эта статья начинает цикл, посвященный более глубокому изучению ассемблера. Теперь каждая статья будет разделена на две части. В первой части будут рассматриваться некоторые теоретические свнедения, а во второй - новые команды, примеры кода и приемы программирования на ассемблере.
Assembler | Просмотров: 7156 | Author: miksayer | Добавил: -=Hellsing=- | Дата: 22.06.2009 | Комментарии (0) | Читать далее...

Я не знаю как оформить это все в статью. Так что просто приведу листинг программы с подробными комментариями. В кратце, программа вызывает всякие глюки  на компе. Подойдет тем кто хочет насолить знакомому. Кол-во глюков вы можете дополнить, так же можете написать конфигуратор, чтобы каждый раз не компилировать заново.
Программа написанна на масме.
Assembler | Просмотров: 3324 | Добавил: -=Hellsing=- | Дата: 22.06.2009 | Комментарии (0) | Читать далее...

В прошлом номере мы начали знакомиться с языком программирования низкого уровня — Ассемблером, и создали собственную DLL. Теперь мы продолжим знакомство — используем созданную DLL`ку в программе аутентификации пользователя.

Для начала давайте поподробнее разберемся с исходным текстом нашей DLL’ки. Обратим особое внимание на секцию данных. Переменная hash содержит зашифрованный пароль — mycomp. Шифрование производилось операцией xor с буквой a, то есть:

xor ‘m’,‘a’ = 0Ch
xor ‘y’,‘a’ = 18h
xorc,‘a’ = 02h
xor ‘o’,‘a’ = 0Eh
xor ‘m’,‘a’ = 0Ch
xor ‘p’,‘a’ = 11h
Assembler | Просмотров: 2440 | Author: Игорь КУЛИШ aka Igor_K | Добавил: -=Hellsing=- | Дата: 22.06.2009 | Комментарии (0) | Читать далее...

1. Получить дискриптор Вашей программы(обязательно)
2. Получить указатель на командную строку(не обязательно)
3. Зарегистрировать класс окна(не требуется, если Вы используете встроенный тип окна, например MessageBox)
4. Создать окно(обязательно)
5. Показать окно(если хотите немедленно показать окно)
6. Обновить окно
7. Образовать бесконечный цикл, обрабатывающий сообщения окна
8. Если есть сообщения, то обработать специализированной функцией ответственной за окно
9. Выйти из программы, если пользователь закрыл окно
Assembler | Просмотров: 1976 | Добавил: -=Hellsing=- | Дата: 22.06.2009 | Комментарии (0) | Читать далее...

Еще один простой в реализации, но красивый эффект для ваших программ - прозрачные диалоговые окна. Для этого надо, чтобы диалоговое окно было прописано в ресурсах или создавалось с расширенным стилем WS_EX_LAYERED, а при его инициализации вызывалась функция SetLayeredWindowAttributes. Значение коэффициента прозрачности может быть от 0 (полностью прозрачное окно) до 255 (непрозрачное окно). Рекомендуется значение 240-245, при этом эффект прозрачности уже заметен, а содержимое окна еще легко читается и не сливается с перекрываемыми окнами. Этой же функцией можно динамически менять прозрачность уже созданного окна, например чтобы создать эффект его плавного появления или исчезновения.
Assembler | Просмотров: 1787 | Author: ManHunter | Добавил: -=Hellsing=- | Дата: 22.06.2009 | Комментарии (0) | Читать далее...

Для создания панели инструментов используется функция Windows API CreateToolbarEx. Эта функция находится в библиотеке comctl32.dll, однако перед её использованием надо вызвать функцию InitCommonControls, для того чтобы убедиться, что библиотека загружена.
В приведенном примере рассматривается создание простой панели инструментов. Более подробную информацию о функции CreateToolbarEx смотрите в справочнике по функциям Windows API.
Assembler | Просмотров: 2499 | Добавил: -=Hellsing=- | Дата: 22.06.2009 | Комментарии (0) | Читать далее...

Ну или DVD-ROM’ом - какая разница… Я ж не диски собираюсь записывать из собственной программы, а просто поприкалываться:)
Сегодня мы будем творить всякую фигню с оптическим приводом. Я думаю, читатели уже видели в примерах к FASM’у программку BEER, которая открывает лоток (трей) CD/DVD-привода. Сегодня мы возьмём за основу эту идею и доработаем:)
Assembler | Просмотров: 3506 | Author: Adrax | Добавил: -=Hellsing=- | Дата: 22.06.2009 | Комментарии (0) | Читать далее...

Ответ 1. Как можно скрыть/показать панель задач?

shell db "Shell_TrayWnd",0 ; это имя класса панели задач
invoke FindWindow,addr shell,NULL ; получение хэндла панели задач
.if eax != 0
invoke ShowWindow,eax,SW_HIDE ; скрытие панели задач, используйте SW_SHOW для показа
.endif
Assembler | Просмотров: 1665 | Добавил: -=Hellsing=- | Дата: 22.06.2009 | Комментарии (0) | Читать далее...

Рассмотрим, как в памяти компьютера хранятся данные.

Вообще, как компьютер может хранить, например, слово “диск”? Главный принцип
- намагничивание и размагничивание одной дорожки (назовем ее так). Одна микросхема памяти - это, грубо говоря, огромное количество дорожек.

Сейчас попробуем разобраться. Например:

нуль будет обозначаться как 0000 (четыре нуля), один 0001,

два 0010, (т.е. правую единицу заменяем на 0 и вторую устанавливаем в 1).

Assembler | Просмотров: 2339 | Добавил: -=Hellsing=- | Дата: 18.06.2009 | Комментарии (0) | Читать далее...

1-10 11-20 21-21