В Windows, если вы используете формальный ассемблер (например, MASM), вы можете просто вызвать следующее:
.386
.model flat, stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\kernel32.lib
.data
.code
start:
invoke ExitProcess,0
end start
Если вы не используете ассемблер и хотите просто выполнить фрагмент двоичного кода, выполните следующее:
push xxx
push -1
push 0
mov eax, yyy
mov edx, 7FFE0300
call dword ptr ds:[edx]
где xxx - код завершения процесса, а yyy - номер системного вызова для NtTerminateProcess
(используйте http://www.pediy.com/document/Windows_System_Call_Table/Windows_System_Call_Table.htm для определения номера вызова для соответствующей ОС. Это 0x172 для Windows 7)