Text this: Translation of Algorithmic Descriptions of Discrete Functions to SAT with Applications to Cryptanalysis Problems