DEV Community

Gealber Morales
Gealber Morales

Posted on • Originally published at gealber.com

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
Enter fullscreen mode Exit fullscreen mode

whereas, in the case of AT&T, the general format is

mnemonic    source, destination
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

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 function f. That's it.

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay