A quick solution that uses common (though not standard) functions:
std::string input = MY_ENCODED_STRING;
unsigned long decoded_value = strtol(input.c_str(), NULL, 64);
char buffer[100] = {0};
std::string output = itoa(decoded_value, buffer, 16);
boost::lexical_cast
may be able to provide a more elegant solution (not sure on that one, though).
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…