Function at 0x4a4971
Capabilities:
Decompress data using quicklz

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
mov ebx, edx
mov dword [ebp - 8], ecx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 4], ebx
movzx eax, byte [ebx + 2]
cdq
mov edi, eax
mov esi, edx
movzx eax, byte [ebx + 3]
cdq
shld edx, eax, 8
shl eax, 8
or esi, edx
or edi, eax
movzx eax, byte [ebx]
cdq
shld esi, edi, 0x10
xor esi, esi
shl edi, 0x10
or edi, eax
movzx eax, byte [ebx + 1]
cdq
and edi, 0x3ffffff
and eax, 0x3ffff
shld ecx, eax, 8
shl eax, 8
or esi, ecx
or edi, eax
mov eax, dword [ebp - 8]
mov dword [eax], edi
xor edi, edi
mov dword [eax + 4], esi
movzx eax, byte [ebx + 5]
cdq
mov ebx, eax
mov eax, dword [ebp - 4]
and ebx, 0x7ff
mov cl, byte [eax + 6]
and cl, 7
movzx eax, cl
mov ecx, dword [ebp - 4]
cdq
shld edx, eax, 8
shl eax, 8
or edi, edx
or ebx, eax
movzx eax, byte [ecx + 4]
mov cl, byte [ecx + 3]
cdq
mov esi, eax
shr cl, 2
shld edx, esi, 6
shld edi, ebx, 0xe
movzx eax, cl
mov ecx, dword [ebp - 4]
cdq
shl esi, 6
or esi, eax
shl ebx, 0xe
mov eax, dword [ebp - 8]
and esi, 0x1ffffff
or ebx, esi
mov dword [eax + 0xc], edi
mov dword [eax + 8], ebx
mov al, byte [ecx + 9]
and al, 0x1f
movzx eax, al
cdq
mov edi, eax
mov ebx, edx
movzx eax, byte [ecx + 8]
shld ebx, edi, 8
cdq
shl edi, 8
and eax, 0x1fff
or edi, eax
shld ebx, edi, 0xd
shl edi, 0xd
movzx eax, byte [ecx + 7]
mov cl, byte [ecx + 6]
cdq
mov esi, eax
shr cl, 3
shld edx, esi, 5
movzx eax, cl
mov ecx, dword [ebp - 4]
cdq
shl esi, 5
or esi, eax
mov eax, dword [ebp - 8]
and esi, 0x3ffffff
or edi, esi
mov dword [eax + 0x10], edi
mov dword [eax + 0x14], ebx
mov al, byte [ecx + 0xc]
and al, 0x3f
movzx eax, al
cdq
mov edi, eax
mov ebx, edx
movzx eax, byte [ecx + 0xb]
cdq
shld ebx, edi, 8
and eax, 0x3fff
shl edi, 8
or edi, eax
movzx eax, byte [ecx + 0xa]
mov cl, byte [ecx + 9]
cdq
mov esi, eax
shr cl, 5
shld edx, esi, 3
shld ebx, edi, 0xb
shl esi, 3
movzx eax, cl
mov ecx, dword [ebp - 4]
cdq
or esi, eax
shl edi, 0xb
mov eax, dword [ebp - 8]
and esi, 0x1ffffff
or edi, esi
mov dword [eax + 0x18], edi
mov dword [eax + 0x1c], ebx
movzx eax, byte [ecx + 0xf]
cdq
mov edi, eax
mov ebx, edx
movzx eax, byte [ecx + 0xe]
shld ebx, edi, 8
cdq
and eax, 0xffff
shl edi, 8
or edi, eax
movzx eax, byte [ecx + 0xd]
mov cl, byte [ecx + 0xc]
cdq
mov esi, eax
shr cl, 6
shld edx, esi, 2
movzx eax, cl
cdq
shl esi, 2
or esi, eax
mov eax, dword [ebp - 8]
shld ebx, edi, 0xa
and esi, 0x3ffffff
shl edi, 0xa
mov dword [eax + 0x24], ebx
or edi, esi
mov ebx, dword [ebp - 4]
mov dword [eax + 0x20], edi
movzx eax, byte [ebx + 0x13]
cdq
mov edi, eax
mov ecx, edx
movzx eax, byte [ebx + 0x12]
shld ecx, edi, 8
shl edi, 8
cdq
xor esi, esi
or edi, eax
or ecx, edx
movzx eax, byte [ebx + 0x10]
cdq
shld ecx, edi, 0x10
xor ecx, ecx
shl edi, 0x10
or edi, eax
movzx eax, byte [ebx + 0x11]
cdq
and edi, 0x1ffffff
and eax, 0x1ffff
shld ecx, eax, 8
shl eax, 8
or esi, ecx
or edi, eax
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 8]
mov dword [eax + 0x28], edi
mov dword [eax + 0x2c], esi
mov al, byte [ebx + 0x16]
and al, 7
movzx eax, al
cdq
mov edi, eax
mov ebx, edx
movzx eax, byte [ecx + 0x15]
cdq
and eax, 0x7ff
shld ebx, edi, 8
shl edi, 8
or edi, eax
movzx eax, byte [ecx + 0x14]
mov cl, byte [ecx + 0x13]
cdq
mov esi, eax
shr cl, 1
shld edx, esi, 7
shld ebx, edi, 0xf
shl esi, 7
movzx eax, cl
mov ecx, dword [ebp - 4]
cdq
or esi, eax
shl edi, 0xf
mov eax, dword [ebp - 8]
and esi, 0x3ffffff
or edi, esi
mov dword [eax + 0x30], edi
mov dword [eax + 0x34], ebx
mov al, byte [ecx + 0x19]
and al, 0xf
movzx eax, al
cdq
mov edi, eax
mov ebx, edx
movzx eax, byte [ecx + 0x18]
shld ebx, edi, 8
cdq
and eax, 0xfff
shl edi, 8
or edi, eax
movzx eax, byte [ecx + 0x17]
mov cl, byte [ecx + 0x16]
cdq
mov esi, eax
shr cl, 3
shld edx, esi, 5
movzx eax, cl
shl esi, 5
shld ebx, edi, 0xd
cdq
or esi, eax
shl edi, 0xd
mov eax, dword [ebp - 8]
and esi, 0x1ffffff
or edi, esi
mov dword [eax + 0x38], edi
mov dword [eax + 0x3c], ebx
mov ecx, dword [ebp - 4]
mov al, byte [ecx + 0x1c]
and al, 0x3f
movzx eax, al
cdq
mov edi, eax
mov ebx, edx
movzx eax, byte [ecx + 0x1b]
shld ebx, edi, 8
cdq
and eax, 0x3fff
shl edi, 8
or edi, eax
movzx eax, byte [ecx + 0x1a]
mov cl, byte [ecx + 0x19]
cdq
mov esi, eax
shr cl, 4
shld edx, esi, 4
shld ebx, edi, 0xc
shl esi, 4
movzx eax, cl
mov ecx, dword [ebp - 4]
cdq
or esi, eax
shl edi, 0xc
mov eax, dword [ebp - 8]
and esi, 0x3ffffff
or edi, esi
mov dword [eax + 0x40], edi
mov dword [eax + 0x44], ebx
movzx eax, byte [ecx + 0x1f]
cdq
mov edi, eax
mov ebx, edx
movzx eax, byte [ecx + 0x1e]
shld ebx, edi, 8
cdq
and eax, 0xffff
shl edi, 8
or edi, eax
movzx eax, byte [ecx + 0x1d]
mov cl, byte [ecx + 0x1c]
cdq
mov esi, eax
shr cl, 6
shld edx, esi, 2
shld ebx, edi, 0xa
shl esi, 2
movzx eax, cl
cdq
or esi, eax
shl edi, 0xa
mov eax, dword [ebp - 8]
and esi, 0x3ffffff
or edi, esi
mov dword [eax + 0x48], edi
pop edi
pop esi
mov dword [eax + 0x4c], ebx
pop ebx
mov esp, ebp
pop ebp
ret