diff options
Diffstat (limited to 'asm/jo_c_args.asm')
| -rw-r--r-- | asm/jo_c_args.asm | 47 | 
1 files changed, 0 insertions, 47 deletions
diff --git a/asm/jo_c_args.asm b/asm/jo_c_args.asm deleted file mode 100644 index 67a83c8..0000000 --- a/asm/jo_c_args.asm +++ /dev/null @@ -1,47 +0,0 @@ -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;;                                                                                      ;; -;;  File     : jo_c_args.asm                                              /_________/   ;; -;;  Author   : Joe                                                              |       ;; -;;  Date     : 04/2020                                                          |       ;; -;;  Info     : Check args                                                       |       ;; -;;                                                                      /       |       ;; -;;                                                                      \       /       ;; -;;                                                                       \_____/        ;; -;;                                                                                      ;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -;; jo_c_args(argc: rdi, *argv[]: rsi) -;; ---------------------------------- -;; returns 0 if args are invalid -;; returns 1 if args are valid - -section .text -	extern strncmp -	global jo_c_args - -jo_c_args: -	cmp		rdi, 0x2 -	jle		no_args -	mov		rax, [rsi + 0x8 * 0x2] -	cmp		byte [rax + 0x0], 0x0 -	je		no_args -	push	rdi -	mov		rdi, [rsi + 0x8 * 0x1] -	push	rsi -	mov		rsi, reference -	mov		rdx, reflen -	call	strncmp -	pop		rsi -	pop		rdi -	cmp		rax, 0x0 -	jne		no_args -	mov		rax, 0x1 -	retq - -no_args: -	xor		rax, rax -	retq - -section .data -	reference:	db "--say", 0x0 -	reflen:		equ $ - reference  | 
