48 lines
724 B
NASM
48 lines
724 B
NASM
global _start
|
|
|
|
section .data
|
|
align 16
|
|
|
|
dquad0:
|
|
dq 0x1234567890abcdef
|
|
dq 0xfedcba0987654321
|
|
dquad1:
|
|
dq 0xffffffffffffffff
|
|
dq 0xffffffffffffffff
|
|
mask0:
|
|
dq 0x8081828384858687
|
|
dq 0x88898a8b8c8d8e8f
|
|
mask1:
|
|
dq 0x10203080405080ff
|
|
dq 0x1234567890abcdef
|
|
|
|
%include "header.inc"
|
|
|
|
movdqu xmm0, [dquad0]
|
|
movdqu xmm1, [dquad1]
|
|
movdqu xmm2, [dquad0]
|
|
movdqu xmm3, [dquad1]
|
|
movdqu xmm6, [mask0]
|
|
movdqu xmm7, [mask1]
|
|
|
|
;; Look out for size of extracted memory region
|
|
mov esp, stack_top - 16
|
|
|
|
mov edi, esp
|
|
maskmovdqu xmm0, xmm6
|
|
sub esp, 16
|
|
|
|
mov edi, esp
|
|
maskmovdqu xmm1, xmm6
|
|
sub esp, 16
|
|
|
|
mov edi, esp
|
|
maskmovdqu xmm2, xmm7
|
|
sub esp, 16
|
|
|
|
mov edi, esp
|
|
maskmovdqu xmm3, xmm7
|
|
sub esp, 16
|
|
|
|
%include "footer.inc"
|