Twelve Days of Christmas – An Obfuscated C Code

Today when I was cleaning my a decade-old mails of my early college years, I came up with a mail received from my programming instructor. Just like the file name (mystery.c) the content of the file was quite mystery. He might be expecting us (students) to put it on compiler and hit run.

Ekte bir C programi yolluyorum. Durumun vehametini anlamak acisindan faydali
olabilir. Merat etmeyin sinavda cikmayacak :)
erkan

Code

#include &lt;stdio.h&gt;</p>
<p style="text-align: justify;">main(t,_,a)
char *a;
{return!0&lt;t?t&lt;3?main(-79,-13,a+main(-87,1-_,
main(-86, 0, a+1 )+a)):1,t&lt;_?main(t+1, _, a ):3,main ( -94, -27+t, a
)&amp;&amp;t == 2 ?_&lt;13 ?main ( 2, _+1, "%s %d %dn" ):9:16:t&lt;0?t&lt;-72?main(_,
t,"@n'+,#'/*{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l,+,/n{n+
,/+#n+,/#;#q#n+,/+k#;*+,/'r :'d*'3,}{w+K w'K:'+}e#';dq#'l q#'+d'K#!/
+k#;q#'r}eKK#}w'r}eKK{nl]'/#;#q#n'){)#}w'){){nl]'/+#n';d}rw' i;# ){n
l]!/n{n#'; r{#w'r nc{nl]'/#{l,+'K {rw' iK{;[{nl]'/w#q#
n'wk nw' iwk{KK{nl]!/w{%'l##w#' i; :{nl]'/*{q#'ld;r'}{nlwb!/*de}'c
;;{nl'-{}rw]'/+,}##'*}#nc,',#nw]'/+kd'+e}+;
#'rdq#w! nr'/ ') }+}{rl#'{n' ')# }'+}##(!!/")
:t&lt;-50?_==*a ?putchar(a[31]):main(-65,_,a+1):main((*a == '/')+t,_,a
+1 ):0&lt;t?main ( 2, 2 , "%s"):*a=='/'||main(0,main(-61,*a, "!ek;dc
i@bK'(q)-[w]*%n+r3#l,{}:nuwloca-O;m .vpbks,fxntdCeghiry"),a+1);}

The output is a poem. I am not going to share it, just put it on compiler and hit run. You can find online c compilers with a little effort.

If you are interested, see this web page for more obfuscated codes like this.

2 thoughts on “Twelve Days of Christmas – An Obfuscated C Code”

  1. Here is the well known example of obfuscated code in C generating lyrics of ’12 days of christmas’. I tried to figure out the logic of the code that explains how actually the text is printed. But I am not able to understand the same.

Comments are closed.