File compilato + sorgente : kill.zip
; Questo programma ricevuto da dos il pid di un processo, lo killa.
; E voi tutti in coro direte ancora: ma a che minkia serve?
; L'idea di base e' che magari mentre stai facendo i cazzi tuoi puo'
; succedere che involontariamente (ma molto involontariamente) entri
; in un server che non ti appartiene allora per evitare di installare
; Remote Administrator Tool che sarebbe mooooooolto poco nascosto,
; per killare un processo e' consigliabile usare questo tool :)
.486
.model flat, stdcall
option casemap :none
; #########################################################################
include \masm32\include\windows.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc
include \masm32\include\gdi32.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\gdi32.lib
; #########################################################################
szText MACRO Name, Text:VARARG
LOCAL lbl
jmp lbl
Name db Text, 0
lbl:
ENDM
.code
start: invoke GetCommandLine
push eax
invoke lstrlen, eax
push ds
pop es
mov ecx, eax
mov ebx, eax
pop edi
mov al, 20h
repne scasb
add edx, ebx
cmp edi, edx
je fine
xor ebx, ebx
xor ecx, ecx
xor eax, eax
xor edx, edx
ciclo: mov bl, byte ptr [edi+eax]
cmp bl, 0
je fineciclo
sub bl, 30h
mov dl, bl
mov ebx, ecx
imul ebx, ebx, 10
add bl, dl
mov ecx, ebx
inc eax
jmp ciclo
fineciclo: invoke OpenProcess, PROCESS_ALL_ACCESS, TRUE, ecx
cmp eax, 0
je fine
invoke TerminateProcess, eax, 0
fine: invoke ExitProcess, 0
end start
|