Challenge #15
Super simple, the only difference here is that the only assembly syntax provided it’s AT&T syntax, so it forced me too look again. There’s no too much difference, for example in INTEL-syntax it’s in this way
mnemonic destination, source
whereas, in the case of AT&T, the general format is
mnemonic source, destination
Analysis
The assembly code it’s quite short as well.
f: # @f
xorps %xmm0, %xmm0
movups %xmm0, 240(%rdi)
movups %xmm0, 224(%rdi)
movups %xmm0, 208(%rdi)
movups %xmm0, 192(%rdi)
movups %xmm0, 176(%rdi)
movups %xmm0, 160(%rdi)
movups %xmm0, 144(%rdi)
movups %xmm0, 128(%rdi)
movups %xmm0, 112(%rdi)
movups %xmm0, 96(%rdi)
movups %xmm0, 80(%rdi)
movups %xmm0, 64(%rdi)
movups %xmm0, 48(%rdi)
movups %xmm0, 32(%rdi)
movups %xmm0, 16(%rdi)
movups %xmm0, (%rdi)
ret
In this case the analysis it’s straight forward, we are basically
Formal description
making zero the first 256-bits of
rdi
register, that it’s a buffer provided to the functionf
. That’s it.