📄 de.c
字号:
#include <stdio.h>#include <stdlib.h>unsigned char rev(char t){ if(t>='A' && t<='Z') return t-'A'; if(t>='a' && t<='z') return t-'a'+26; if(t>='0' && t<='9') return t-'0'+52; if(t=='+') return 62; if(t=='/') return 63; printf("\nRead %c, error\n",t);}void Usage(void){ printf("\nUsage: debase64 inputfilename outputfilename\n"); printf("Note: to use debase64, you need first edit your file,\n" " leave only the code part.\n"); printf("For Example, if you have a file with contents:\n" "Content-Type: APPLICATION/octet-stream; name=\"ping.exe\"\n" "Content-Transfer-Encoding: BASE64\n" "Content-Description:\n" "\n" "TVrnAS4AAAAJAAMH//+/BQAEAAAAAfD/UAAAAAUhUEtMSVRFIENvcHIuIDE5\n" "/Ou8HfwA/F/HFfzfsSr8dmyk/B17ufzOx9H843F2/PjcHfwN/E/HIvzb8Tf8\n" "dfxM/B1/Yfz/x9/8//F3/P/8Hfz//H/H//zf8f/8d/z//B1///z/x9/8//F3\n" "/P/8Hfz//H/H//zf8f/8d/z/XB0A//8BAAABAACxC4AAAAAAAA==\n" "--944387211-851401618-859988490=:5693--\n"); printf("\nYou need to edit it, just leave the following:\n" "TVrnAS4AAAAJAAMH//+/BQAEAAAAAfD/UAAAAAUhUEtMSVRFIENvcHIuIDE5\n" "/Ou8HfwA/F/HFfzfsSr8dmyk/B17ufzOx9H843F2/PjcHfwN/E/HIvzb8Tf8\n" "dfxM/B1/Yfz/x9/8//F3/P/8Hfz//H/H//zf8f/8d/z//B1///z/x9/8//F3\n" "/P/8Hfz//H/H//zf8f/8d/z/XB0A//8BAAABAACxC4AAAAAAAA==\n"); exit(0);}main(int argc, char *argv[]){ FILE * fpin,*fpout; unsigned char buff[500]; int len,i; unsigned long tmp; if(argc!=3) Usage(); fpin=fopen(argv[1],"r"); if(fpin==NULL) { printf("\nOpen input file %s error\n",argv[1]); exit(2); } fpout=fopen(argv[2],"wb"); if(fpout==NULL) { printf("\nOpen output file %s error\n",argv[2]); exit(2); } while(fgets(buff,400,fpin)!=NULL) { len=strlen(buff); if(len<4) break; if(buff[len-1]=='\n') len--; tmp=0; for(i=0;i+4<=len;i+=4) { tmp=rev(*(buff+i)); tmp=(tmp<<6)+rev(*(buff+i+1)); tmp=(tmp<<6)+rev(*(buff+i+2)); tmp=(tmp<<6)+rev(*(buff+i+3)); *(buff)=(tmp>>16)&0xff; *(buff+1)=(tmp>>8)&0xff; *(buff+2)=tmp &0xff; fwrite(buff,1,3,fpout); } } fclose(fpin); fclose(fpout);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -