MCPcopy Create free account
hub / github.com/S3N4T0R-0X0/PixelCode-Attack / encode

Method encode

payload.cpp:692–732  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

690
691public:
692 static std::string encode(const std::string& input) {
693 std::string ret;
694 int i = 0;
695 unsigned char char_array_3[3], char_array_4[4];
696
697 for (size_t n = 0; n < input.size(); n++) {
698 char_array_3[i++] = input[n];
699 if (i == 3) {
700 char_array_4[0] = (char_array_3[0] & 0xfc) >> 2;
701 char_array_4[1] = ((char_array_3[0] & 0x03) << 4) + ((char_array_3[1] & 0xf0) >> 4);
702 char_array_4[2] = ((char_array_3[1] & 0x0f) << 2) + ((char_array_3[2] & 0xc0) >> 6);
703 char_array_4[3] = char_array_3[2] & 0x3f;
704
705 for (i = 0; i < 4; i++) {
706 ret += BASE64_CHARS[char_array_4[i]];
707 }
708 i = 0;
709 }
710 }
711
712 if (i) {
713 for (int j = i; j < 3; j++) {
714 char_array_3[j] = '\0';
715 }
716
717 char_array_4[0] = (char_array_3[0] & 0xfc) >> 2;
718 char_array_4[1] = ((char_array_3[0] & 0x03) << 4) + ((char_array_3[1] & 0xf0) >> 4);
719 char_array_4[2] = ((char_array_3[1] & 0x0f) << 2) + ((char_array_3[2] & 0xc0) >> 6);
720 char_array_4[3] = char_array_3[2] & 0x3f;
721
722 for (int j = 0; j < i + 1; j++) {
723 ret += BASE64_CHARS[char_array_4[j]];
724 }
725
726 while (i++ < 3) {
727 ret += '=';
728 }
729 }
730
731 return ret;
732 }
733
734 static std::string decode(const std::string& encoded_string) {
735 int in_len = encoded_string.size();

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected