blob: 47a20320a1dd984526add5f5b4181f1faa4e9965 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ;;
;; File : jo_c_args.asm /_________/ ;;
;; Author : Joe | ;;
;; Date : 04/2020 | ;;
;; Info : Check args | ;;
;; / | ;;
;; \ / ;;
;; \_____/ ;;
;; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
section .text
extern strncmp
global jo_c_args
jo_c_args: ; jo_c_args(argc: rdi, *argv[]: rdi)
cmp rdi, 0x2
jle no_args
push rdi
mov rdi, [rsi + 4 * 0]
push rsi
mov rsi, reference
mov rdx, len
call strncmp
pop rsi
pop rdi
cmp rax, 0x0
jne no_args
mov rax, [rsi + 4 * 0]
retq
no_args:
xor rax, rax
retq
section .data
reference: db "--say", 0x0
len: equ $ - reference ; reference len
|