From 974a5a16f22e8960bd3c2bdc1ce8958da5d925bb Mon Sep 17 00:00:00 2001 From: davtur19 Date: Mon, 30 Oct 2023 01:38:23 +0100 Subject: [PATCH] Update figa.asm --- figa.asm | 51 +++++++++++++-------------------------------------- 1 file changed, 13 insertions(+), 38 deletions(-) diff --git a/figa.asm b/figa.asm index 1f2e82a..163573a 100644 --- a/figa.asm +++ b/figa.asm @@ -1,41 +1,16 @@ - ; Console Message, 64 bit. V1.03 -NULL EQU 0 ; Constants -STD_OUTPUT_HANDLE EQU -11 +section .data +text1 db "Che schifo la figa.",10,"Meglio Linux",10 -extern GetStdHandle ; Import external symbols -extern WriteFile ; Windows API functions, not decorated -extern ExitProcess +section .text +global _start -global Start ; Export symbols. The entry point +_start: +mov rax, 1 +mov rdi, 1 +mov rsi, text1 +mov rdx, 33 +syscall -section .data ; Initialized data segment - Message db "Che schifo la figa.", 0Dh, 0Ah,"Meglio Windows", 0Dh, 0Ah - MessageLength EQU $-Message ; Address of this line ($) - address of Message - -section .bss ; Uninitialized data segment -alignb 8 - StandardHandle resq 1 - Written resq 1 - -section .text ; Code segment -Start: - sub RSP, 8 ; Align the stack to a multiple of 16 bytes - - sub RSP, 32 ; 32 bytes of shadow space - mov ECX, STD_OUTPUT_HANDLE - call GetStdHandle - mov qword [REL StandardHandle], RAX - add RSP, 32 ; Remove the 32 bytes - - sub RSP, 32 + 8 + 8 ; Shadow space + 5th parameter + align stack - ; to a multiple of 16 bytes - mov RCX, qword [REL StandardHandle] ; 1st parameter - lea RDX, [REL Message] ; 2nd parameter - mov R8, MessageLength ; 3rd parameter - lea R9, [REL Written] ; 4th parameter - mov qword [RSP + 4 * 8], NULL ; 5th parameter - call WriteFile ; Output can be redirect to a file using > - add RSP, 48 ; Remove the 48 bytes - - xor ECX, ECX - call ExitProcess +mov rax, 60 +mov rdi, 0 +syscall