.386
.model flat, stdcall
include kernel32.inc
include user32.inc
.code
Main:
	PUSH 0
	CALL OpenClipboard
	TEST EAX, EAX
	JZ   ERROR
	CALL EmptyClipboard
	PUSH 4 ; size of RTOL with nullchar
	PUSH 2 ; GMEM_MOVEABLE
	CALL GlobalAlloc
	TEST EAX,EAX
	JZ   ERROR
	MOV  EBX,EAX
	PUSH EBX
	CALL GlobalLock
	TEST EAX,EAX
	JZ   ERROR
	MOV  word ptr [EAX], 0202EH
	MOV  word ptr [EAX+2], 0
	PUSH EBX
	CALL GlobalUnlock
	PUSH EBX ; handle
	PUSH 0DH ; CF_UNICODETEXT
	CALL SetClipboardData
	MOV  EDX, EAX
	PUSH EBX
	CALL GlobalFree
	CALL CloseClipboard
	TEST EDX,EDX
	JZ   SUCCESS
ERROR:
 	PUSH 1
    JMP  BAIL
SUCCESS:
	PUSH 0
BAIL:
 	CALL ExitProcess
END Main
