Language: TypeScript
Label: safe
CWE: CWE-331 \u2014 Insufficient Entropy
The product uses an algorithm or scheme that produces insufficient entropy, leaving patterns or clusters of values that are more likely to occur than others.

Code:
    this.decrypt = function (data, key) {
      if (typeof key === 'undefined' && cryptoModule) {
        const decrypted = modules.cryptoModule.decrypt(data);
        return decrypted instanceof ArrayBuffer ? encode(decrypted) : decrypted;
      } else {
        return crypto.decrypt(data, key);
      }
    };