MCPcopy Create free account
hub / github.com/defold/defold / xtea_decrypt

Function xtea_decrypt

scripts/unpack_arc.py:36–46  ·  view source on GitHub ↗
(v, key, n=32)

Source from the content-addressed store, hash-verified

34
35XTEA_BLOCK_SIZE = 8
36def xtea_decrypt(v, key, n=32):
37 v0 = (v >> 32) & 0xFFFFFFFF;
38 v1 = (v >> 0) & 0xFFFFFFFF;
39 k = struct.unpack(">4L", key)
40 sum = 0
41 delta = 0x9e3779b9
42 for round in range(n):
43 v0 = (v0 + ((((v1 << 4) ^ (v1 >> 5)) + v1) ^ (sum + k[sum & 3]))) & 0xFFFFFFFF;
44 sum = (sum + delta) & 0xFFFFFFFF;
45 v1 = (v1 + ((((v0 << 4) ^ (v0 >> 5)) + v0) ^ (sum + k[(sum>>11) & 3]))) & 0xFFFFFFFF;
46 return struct.pack(">2L", v0, v1)
47def xtea_decryptCTR(key, data, n=32):
48 global XTEA_BLOCK_SIZE
49 counter = 0;

Callers 1

xtea_decryptCTRFunction · 0.85

Calls 2

unpackMethod · 0.80
packMethod · 0.80

Tested by

no test coverage detected