Code:
#include "windows.h"
#include <string>
#pragma warning( disable: 4996 )
using namespace std;
std::string cA = "218";
std::string cB = "168";
std::string cC = "948";
std::string cD = "318";
std::string cE = "456";
std::string cF = "978";
std::string cG = "154";
std::string cH = "324";
std::string cI = "138";
std::string cJ = "584";
std::string cK = "627";
std::string cL = "341";
std::string cM = "394";
std::string cN = "378";
std::string cO = "648";
std::string cP = "982";
std::string cQ = "367";
std::string cR = "589";
std::string cS = "308";
std::string cT = "628";
std::string cU = "312";
std::string cV = "158";
std::string cW = "782";
std::string cX = "234";
std::string cY = "549";
std::string cZ = "364";
std::string cAup = "119";
std::string cBup = "067";
std::string cCup = "847";
std::string cDup = "217";
std::string cEup = "355";
std::string cFup = "877";
std::string cGup = "055";
std::string cHup = "266";
std::string cIup = "035";
std::string cJup = "486";
std::string cKup = "528";
std::string cLup = "242";
std::string cMup = "296";
std::string cNup = "297";
std::string cOup = "546";
std::string cPup = "887";
std::string cQup = "263";
std::string cRup = "485";
std::string cSup = "613";
std::string cTup = "126";
std::string cUup = "219";
std::string cVup = "357";
std::string cWup = "885";
std::string cXup = "936";
std::string cYup = "741";
std::string cZup = "860";
std::string cOne = "003";
std::string cTwo = "004";
std::string cThree = "005";
std::string cFour = "006";
std::string cFive = "007";
std::string cSix = "008";
std::string cSeven = "009";
std::string cEight = "010";
std::string cNine = "011";
std::string cOh = "012";
std::string cSpace = "000";
std::string cDot = "001";
std::string cComma = "002";
std::string cArrowLeft = "013";
std::string cArrowRight = "014";
std::string cMinus = "015";
std::string cPlus = "016";
std::string cSlash = "017";
bool StartsWith(const std::string& text,const std::string& token){ if(text.length() < token.length())return false; return(tex*****mpare(0, token.length(), token) == 0);}
bool isStringEmpty(string s) {
return s.empty();
}
bool replace(std::string& str, const std::string& from, const std::string& to) {
size_t start_pos = str.find(from);
if(start_pos == std::string::npos)
return false;
str.replace(start_pos, from.length(), to);
return true;
}
char* Decrypt(char* src){
string Buffer=src;;
char OutBuffer[1024] = {""};
char* Out="";
while(!isStringEmpty(Buffer)==true){
if(StartsWith(Buffer, cA)){strcat(OutBuffer, "a"); replace(Buffer, cA, "");}
if(StartsWith(Buffer, cB)){strcat(OutBuffer, "b"); replace(Buffer, cB, "");}
if(StartsWith(Buffer, cC)){strcat(OutBuffer, "c"); replace(Buffer, cC, "");}
if(StartsWith(Buffer, cD)){strcat(OutBuffer, "d"); replace(Buffer, cD, "");}
if(StartsWith(Buffer, cE)){strcat(OutBuffer, "e"); replace(Buffer, cE, "");}
if(StartsWith(Buffer, cF)){strcat(OutBuffer, "f"); replace(Buffer, cF, "");}
if(StartsWith(Buffer, cG)){strcat(OutBuffer, "g"); replace(Buffer, cG, "");}
if(StartsWith(Buffer, cH)){strcat(OutBuffer, "h"); replace(Buffer, cH, "");}
if(StartsWith(Buffer, cI)){strcat(OutBuffer, "i"); replace(Buffer, cI, "");}
if(StartsWith(Buffer, cJ)){strcat(OutBuffer, "j"); replace(Buffer, cJ, "");}
if(StartsWith(Buffer, cK)){strcat(OutBuffer, "k"); replace(Buffer, cK, "");}
if(StartsWith(Buffer, cL)){strcat(OutBuffer, "l"); replace(Buffer, cL, "");}
if(StartsWith(Buffer, cM)){strcat(OutBuffer, "m"); replace(Buffer, cM, "");}
if(StartsWith(Buffer, cN)){strcat(OutBuffer, "n"); replace(Buffer, cN, "");}
if(StartsWith(Buffer, cO)){strcat(OutBuffer, "o"); replace(Buffer, cO, "");}
if(StartsWith(Buffer, cP)){strcat(OutBuffer, "p"); replace(Buffer, cP, "");}
if(StartsWith(Buffer, cQ)){strcat(OutBuffer, "q"); replace(Buffer, cQ, "");}
if(StartsWith(Buffer, cR)){strcat(OutBuffer, "r"); replace(Buffer, cR, "");}
if(StartsWith(Buffer, cS)){strcat(OutBuffer, "s"); replace(Buffer, cS, "");}
if(StartsWith(Buffer, cT)){strcat(OutBuffer, "t"); replace(Buffer, cT, "");}
if(StartsWith(Buffer, cU)){strcat(OutBuffer, "u"); replace(Buffer, cU, "");}
if(StartsWith(Buffer, cV)){strcat(OutBuffer, "v"); replace(Buffer, cV, "");}
if(StartsWith(Buffer, cW)){strcat(OutBuffer, "w"); replace(Buffer, cW, "");}
if(StartsWith(Buffer, cX)){strcat(OutBuffer, "x"); replace(Buffer, cX, "");}
if(StartsWith(Buffer, cY)){strcat(OutBuffer, "y"); replace(Buffer, cY, "");}
if(StartsWith(Buffer, cZ)){strcat(OutBuffer, "z"); replace(Buffer, cZ, "");}
if(StartsWith(Buffer, cAup)){strcat(OutBuffer, "A"); replace(Buffer, cAup, "");}
if(StartsWith(Buffer, cBup)){strcat(OutBuffer, "B"); replace(Buffer, cBup, "");}
if(StartsWith(Buffer, cCup)){strcat(OutBuffer, "C"); replace(Buffer, cCup, "");}
if(StartsWith(Buffer, cDup)){strcat(OutBuffer, "D"); replace(Buffer, cDup, "");}
if(StartsWith(Buffer, cEup)){strcat(OutBuffer, "E"); replace(Buffer, cEup, "");}
if(StartsWith(Buffer, cFup)){strcat(OutBuffer, "F"); replace(Buffer, cFup, "");}
if(StartsWith(Buffer, cGup)){strcat(OutBuffer, "G"); replace(Buffer, cGup, "");}
if(StartsWith(Buffer, cHup)){strcat(OutBuffer, "J"); replace(Buffer, cHup, "");}
if(StartsWith(Buffer, cIup)){strcat(OutBuffer, "I"); replace(Buffer, cIup, "");}
if(StartsWith(Buffer, cJup)){strcat(OutBuffer, "J"); replace(Buffer, cJup, "");}
if(StartsWith(Buffer, cKup)){strcat(OutBuffer, "K"); replace(Buffer, cKup, "");}
if(StartsWith(Buffer, cLup)){strcat(OutBuffer, "L"); replace(Buffer, cLup, "");}
if(StartsWith(Buffer, cMup)){strcat(OutBuffer, "M"); replace(Buffer, cMup, "");}
if(StartsWith(Buffer, cNup)){strcat(OutBuffer, "N"); replace(Buffer, cNup, "");}
if(StartsWith(Buffer, cOup)){strcat(OutBuffer, "O"); replace(Buffer, cOup, "");}
if(StartsWith(Buffer, cPup)){strcat(OutBuffer, "P"); replace(Buffer, cPup, "");}
if(StartsWith(Buffer, cQup)){strcat(OutBuffer, "Q"); replace(Buffer, cQup, "");}
if(StartsWith(Buffer, cRup)){strcat(OutBuffer, "R"); replace(Buffer, cRup, "");}
if(StartsWith(Buffer, cSup)){strcat(OutBuffer, "S"); replace(Buffer, cSup, "");}
if(StartsWith(Buffer, cTup)){strcat(OutBuffer, "T"); replace(Buffer, cTup, "");}
if(StartsWith(Buffer, cUup)){strcat(OutBuffer, "U"); replace(Buffer, cUup, "");}
if(StartsWith(Buffer, cVup)){strcat(OutBuffer, "V"); replace(Buffer, cVup, "");}
if(StartsWith(Buffer, cWup)){strcat(OutBuffer, "W"); replace(Buffer, cWup, "");}
if(StartsWith(Buffer, cXup)){strcat(OutBuffer, "X"); replace(Buffer, cXup, "");}
if(StartsWith(Buffer, cYup)){strcat(OutBuffer, "Y"); replace(Buffer, cYup, "");}
if(StartsWith(Buffer, cZup)){strcat(OutBuffer, "Z"); replace(Buffer, cZup, "");}
if(StartsWith(Buffer, cSpace)){strcat(OutBuffer, " "); replace(Buffer, cSpace, "");}
if(StartsWith(Buffer, cDot)){strcat(OutBuffer, "."); replace(Buffer, cDot, "");}
if(StartsWith(Buffer, cComma)){strcat(OutBuffer, ","); replace(Buffer, cComma, "");}
if(StartsWith(Buffer, cOne)){strcat(OutBuffer, "1"); replace(Buffer, cOne, "");}
if(StartsWith(Buffer, cTwo)){strcat(OutBuffer, "2"); replace(Buffer, cTwo, "");}
if(StartsWith(Buffer, cThree)){strcat(OutBuffer, "3"); replace(Buffer, cThree, "");}
if(StartsWith(Buffer, cFour)){strcat(OutBuffer, "4"); replace(Buffer, cFour, "");}
if(StartsWith(Buffer, cFive)){strcat(OutBuffer, "5"); replace(Buffer, cFive, "");}
if(StartsWith(Buffer, cSix)){strcat(OutBuffer, "6"); replace(Buffer, cSix, "");}
if(StartsWith(Buffer, cSeven)){strcat(OutBuffer, "7"); replace(Buffer, cSeven, "");}
if(StartsWith(Buffer, cEight)){strcat(OutBuffer, "8"); replace(Buffer, cEight, "");}
if(StartsWith(Buffer, cNine)){strcat(OutBuffer, "9"); replace(Buffer, cNine, "");}
if(StartsWith(Buffer, cOh)){strcat(OutBuffer, "0"); replace(Buffer, cOh, "");}
if(StartsWith(Buffer, cArrowLeft)){strcat(OutBuffer, "<"); replace(Buffer, cArrowLeft, "");}
if(StartsWith(Buffer, cArrowRight)){strcat(OutBuffer, ">"); replace(Buffer, cArrowRight, "");}
if(StartsWith(Buffer, cPlus)){strcat(OutBuffer, "+"); replace(Buffer, cPlus, "");}
if(StartsWith(Buffer, cMinus)){strcat(OutBuffer, "-"); replace(Buffer, cMinus, "");}
if(StartsWith(Buffer, cSlash)){strcat(OutBuffer, "/"); replace(Buffer, cSlash, "");}
}
return OutBuffer;
}
Just call it like that as example (same as picture) :