Petar anum es XOR (in cpp - operator ^ )
Erku angam XOR-y beruma nachal'nyj vichaki, itogo du yntrum es password iran hash anum, kam prosto krknum irar hetevic, u tar ar tar xor anum, that's it. Code ev decode functionnery klinen identik.
Code:
for ( int i = 0; i < stringLen; i++ ) {
newString[ i ] = oldString[ i ] ^ password[ i % passwordLen ];
}