From ce251e3c9efb1820469e0d42b0fe479efdf9e35b Mon Sep 17 00:00:00 2001 From: MengYX Date: Tue, 11 Feb 2020 17:03:46 +0800 Subject: [PATCH] Fix Decrypt Algorithm Error --- src/decrypt/qmcMask.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/decrypt/qmcMask.js b/src/decrypt/qmcMask.js index e66a104..02097d4 100644 --- a/src/decrypt/qmcMask.js +++ b/src/decrypt/qmcMask.js @@ -90,10 +90,15 @@ class QmcMask { Decrypt(data) { let dst = data.slice(0); + let index = -1; let maskIdx = -1; for (let cur = 0; cur < data.length; cur++) { + index++; maskIdx++; - if (cur === 0x8001 || (cur > 0x8001 && cur % 0x8000 === 0)) maskIdx++; + if (index === 0x8000 || (index > 0x8000 && (index + 1) % 0x8000 === 0)) { + index++; + maskIdx++; + } if (maskIdx >= 128) maskIdx -= 128; dst[cur] ^= this.Matrix128[maskIdx]; }