Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save msm-code/126d7d06dfa1f871a2caca737a0de4d6 to your computer and use it in GitHub Desktop.
Save msm-code/126d7d06dfa1f871a2caca737a0de4d6 to your computer and use it in GitHub Desktop.
paper.python.3c816792f60044320ba90ebb036db304
def nymaim_decrypt(self, raw, from_raw, length):
from_va = from_raw + self.image_base
xsize = from_va - self.off
cur_key = self.key
if xsize < 0:
raise RuntimeError("raw too small - min is " + hex(self.off - self.image_base))
for _ in range(xsize / 4):
cur_key = (cur_key + self.xstep) & 0xffffffff
r = ''
length = min(length, len(raw) - from_raw)
for i in range(length):
r += chr(raw[from_raw + i] ^ (ror(cur_key, (xsize & 3) * 8) & 0xff))
xsize += 1
if xsize % 4 == 0:
cur_key = (cur_key + self.xstep) & 0xffffffff
return r
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment