import { inflate } from 'pako' import { LZMA } from './lzma/LZMA' import { MEMORY } from './lzma/MEMORY' export async function decompressZlib (input: ArrayBuffer) { return inflate(new Uint8Array(input)).buffer as ArrayBuffer } export async function decompressLZMA (input: ArrayBuffer, unpackLength: number) { const lzma = new LZMA() const ret = lzma.decodeSWF(new Uint8Array(input), unpackLength).buffer as ArrayBuffer MEMORY.u8 = MEMORY.u16 = MEMORY.u32 = undefined MEMORY.u8Index = MEMORY.u16Index = MEMORY.u32Index = 0 return ret }