Hola.
Encontré este código buscando por Google y me parece tremendo.
Es un fizzbuzz y está terrible.
¿FizzBuzz, qué es?
CitarEscribe, en el lenguaje de programación que desees, un programa que muestre en pantalla los números del 1 al 100, sustituyendo los múltiplos de 3 por el palabro "Fizz" y, a su vez, los múltiplos de 5 por "Buzz". Si son múltiplos de 3 y 5, imprimir el índice.
#include <stdio.h>
int main() {
int i;
for (i=1; i<=100; i++) {
if (i%3==0) {
printf("Fizz");
}
if (i%5==0) {
printf("Buzz");
}
if (i%3!=0 && i%5!=0) {
printf("%d", i);
}
printf("\n");
}
return 0;
}
Ofuscado:
int main(__,_)
int __;long unsigned _;
{
if(exit((asprintf((void**)&_,&(14*!(__%15)+!!(__%15)*!(__%3)*2+!!(__%3)*!(__%5)*8+!!(__%5)*!!(__%3)*24)[(const char*)&(short[]){0,'if','zz',256,'ub','zz',512,'if','zz','ub','zz',1024,'d%',2048}],__),free((puts((void*)_),_)),__<100?(**main)(__+1):0)),1){}
}
¿Alguno tendrá algún consejo o alguna guia para aprender a ofuscar código en C? Encontré cosas interesantes de todos modos quería dejar este código hermoso acá.
Saludos.
Lo principal es conocer muy bien C para saber toda su sintaxis.
Después creas un programa normal y trabajas a partir de él transformando las senten ias simples en un grupo equivalente que hagan lo mismo. Este último punto lo repites hasta que quedes satisfe o mientras sigas sin liarte.