Skip to content

Instantly share code, notes, and snippets.

@winocm
Created January 28, 2014 23:11
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save winocm/8678607 to your computer and use it in GitHub Desktop.
Save winocm/8678607 to your computer and use it in GitHub Desktop.
Happy birthday @M1sp! <3
#include <stdio.h>
#include <stdint.h>
#include <strings.h>
#include <stdlib.h>
#define __t uint32_t
#define __r return
typedef struct _$n{union{struct{__t o:5;__t rt:4;__t ra:4;__t z:4;__t sreg:8;__t _rs$v:7;}____;__t e;}u;} _$n;typedef struct _$i {
union{struct{__t o:5;__t z:4;__t _:16;__t __:7;}____;__t e;}u;}_$i;typedef struct _$l {union{struct{__t o:5;__t rt:4;__t ra:4;
__t u:1;__t off:14;__t z:4;} ____;__t e;} u;} _$l;typedef struct _b$ {union{struct{__t o:5;__t rt:4;__t i:1;__t imm:16;__t z:4;
__t _rs$v:2;}____;__t e;} u;}_b$;typedef struct _$p {union{struct{__t o:5;__t rt:4;__t ra:4;__t i:1;__t imm:8;__t s_v:5;__t z:4;
__t s:1;}____;__t e;}u;} _$p;typedef struct _o$ {union{struct{__t o:5;__t x:27;}____;__t e;}u;}_o$;int _o(__t ____){_o$ *x=
(_o$*)&____;__r x->u.____.o;}static int _zb(__t ____){_b$ *x=(_b$*)&____;__r x->u.____.z;}static int _zl(__t ____){_$l *x=
(_$l*)&____;__r x->u.____.z;}static int _zs(__t ____){_$i *x=(_$i*)&____;__r x->u.____.z;}static int _zn(__t ____){_$p *x=
(_$p*)&____;__r x->u.____.z;}static int _zs$(__t ____){_$n *x=(_$n*)&____;__r x->u.____.z;}int _z(__t ____){int op=_o(____), z=0;
switch(op){case 0x10:case 0x11:case 0x12:z=_zb(____);break;case 0x16:case 0x17:z=_zl(____);break;case 0x15:case 0x18:
z=_zs(____);break;case 0x13:case 0x14:z=_zs$(____);break;default:z=_zn(____);break;}__r z;}struct _${struct {__t r[16];
__t z;__t sr[256];} n;uint8_t *m;};static struct _$ _c;static int _z$(int _){switch(_){case 0x00:__r 0;case 0x01:
__r(_c.n.z&0x40000000);case 0x02:__r(!(_c.n.z&0x40000000));case 0x03:__r(_c.n.z&0x20000000);case 0x04:
__r(!(_c.n.z&0x20000000));case 0x05:__r(_c.n.z&0x80000000);case 0x06:__r(!(_c.n.z&0x80000000));case 0x07:__r (_c.n.z&
0x10000000);case 0x08:__r (!(_c.n.z & 0x10000000));}__r 0;}static inline __t _o$$(__t a,__t b){int s=a+b;if (((a&(1<<31))
==(b&(1<<31))) && ((s&(1<<31)) !=(a&(1<<31))))__r 1;__r 0;}static inline __t _b$$(__t a,__t b){__r(a<b)?1:0;}static inline
__t _c$$(__t a,__t b){__r((a+b)<a)?1:0;}static inline __t _ps$(__t a,__t b){__t _rs$=a-b;if(_b$$(a,b))_c.n.z |=0x20000000;
else _c.n.z&=~(0x20000000);if(_o$$(a, b))_c.n.z|=0x10000000;else _c.n.z&=~(0x10000000);if(!_rs$)_c.n.z |=0x40000000;
else _c.n.z&=~(0x40000000);if((_rs$>>31)==1)_c.n.z|=0x40000000;else _c.n.z&=~(0x40000000);__r _rs$;}static void ee(__t *__$$)
{bzero(&_c, sizeof(struct _$));_c.n.z=0x13;_c.m=(uint8_t*)__$$;while(1) {__t ____=__$$[_c.n.r[15]/sizeof(__t)];
int o=_o(____);int z=_z(____);if(_z$(z)) {_c.n.r[15]+=sizeof(__t);continue;}switch(o){case 0x17:{_$l *_D=
(_$l*)&____;bcopy(&_c.n.r[_D->u.____.rt], &_c.m[_c.n.r[_D->u.____.ra] + _D->u.____.off], sizeof(__t));if(_D->u.____.u) {
_c.n.r[_D->u.____.ra]+=4;}break;}case 0x18:{_$i *_D=(_$i*)&____;__t _$_=0;if(_D->u.____._&0x02||_D->u.____._&0x01) {
if(_D->u.____._ & 0x02)_$_|=0x00000040;if(_D->u.____._&0x01)_$_|=0x00000080;_c.n.z|=_$_;}else if(_D->u.____._&0x08||_D->u.____._
& 0x08){if(_D->u.____._ & 0x08)_$_|=~0x00000040;if(_D->u.____._&0x01)_$_ |=~0x00000080;_c.n.z&=_$_;}_c.n.z |=_D->u.____.__;
break;}case 0x09: {_$p* _D=(_$p*)&____;int rt=_D->u.____.rt, ra=_D->u.____.ra, _$i=_D->u.____.i;if(_$i) {
_c.n.r[rt]|=_D->u.____.imm<<_D->u.____.s_v;}else{_c.n.r[rt] |=_c.n.r[ra];}if(_D->u.____.s){_c.n.z&=~(0x40000000|0x80000000);
_c.n.z|=(_c.n.r[rt]==0) ? 0x40000000 : 0;_c.n.z |=((_c.n.r[rt] >> 31) !=0) ? 0x80000000 : 0;}break;}case 0x0A: {_$p* _D=(_$p*)&____;
int rt=_D->u.____.rt, ra=_D->u.____.ra, _$i=_D->u.____.i;if(_$i) {_c.n.r[rt]=_D->u.____.imm << _D->u.____.s_v;} else {
_c.n.r[rt]=_c.n.r[ra];}if(_D->u.____.s){_c.n.z&=~(0x40000000|0x80000000);_c.n.z |=(_c.n.r[rt]==0) ? 0x40000000 : 0;
_c.n.z |=((_c.n.r[rt]>>31)!=0)?0x80000000:0;}break;}case 0x12:{_b$* _D=(_b$*)&____;_c.n.r[15]=_c.n.r[_D->u.____.rt];
break;}case 0x10:{_b$* _D=(_b$*)&____;_c.n.r[15] +=(int16_t)_D->u.____.imm;if(____==0x03fff010) {FILE *fp=fopen("m.dmp", "wb");
fwrite(_c.m,8192,1,fp);fclose(fp);exit(-1);}break;}case 0x07: {_$p* _D=(_$p*)&____;int rt=_D->u.____.rt, ra=_D->u.____.ra, _$i=
_D->u.____.i;__t _v;if(_$i)_v=_D->u.____.imm<<_D->u.____.s_v;else _v=_c.n.r[ra]; _ps$(_c.n.r[rt], _v);break;}default:exit(-1);
break;}_c.n.r[15] +=sizeof(__t);}__r;}int main(void){__t _L[]={0x26000618,0x0204202a,0x0002206a,0x0013600a,0x021a6009,0x041ce009,
0x061c2009,0x02046027,0x20002217,0x08000072,0x04001210,0x03fff010,0x00122089,0x02186089,0x041c2089,0x061c2089,0x001e60a9,0x020820a9,
0x0418a0a9,0x061a60a9,0x001ca0c9,0x021d20c9,0x041a20c9,0x061920c9,0x001860e9,0x021e60e9,0x040860e9,0x0602a0e9,0x00002297,
0x000022b7,0x000022d7,0x000022f7,0x001de0ea,0x021a60e9,0x041ba0e9,0x061be0e9,0x000022f7,0x03fff010,};__t *m=malloc(8192);if(!m)
abort();bzero((void*)m, 8192);bcopy(_L,m,sizeof(_L));ee(m);__r 0;}
@Syriamanal
Copy link

what is this? i know C++ but this is just junk put togetor!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment