Function at 0x421f60
Capabilities:
Decompress data using lzo

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, ecx
mov dword [eax], 0
mov al, byte [esi]
lea ebx, [esi + edx]
mov edx, dword [ebp + 8]
push edi
cmp al, 0x11
jbe 0x421f9b
movzx ecx, al
sub ecx, 0x11
inc esi
cmp ecx, 4
jb 0x42217f
lea ecx, [ecx]
mov al, byte [esi]
mov byte [edx], al
inc edx
inc esi
dec ecx
jne 0x421f90
jmp 0x422009
movzx eax, byte [esi]
inc esi
cmp eax, 0x10
jae 0x422047
test eax, eax
jne 0x421fc4
cmp byte [esi], al
jne 0x421fbb
inc esi
add eax, 0xff
cmp byte [esi], 0
je 0x421fb0
movzx ecx, byte [esi]
add eax, 0xf
add eax, ecx
inc esi
mov ecx, dword [esi]
mov dword [edx], ecx
add edx, 4
add esi, 4
dec eax
je 0x422009
cmp eax, 4
jb 0x422000
mov ecx, dword [esi]
mov dword [edx], ecx
sub eax, 4
add edx, 4
add esi, 4
cmp eax, 4
jae 0x421fd6
test eax, eax
je 0x422009
lea esp, [esp]
mov cl, byte [esi]
mov byte [edx], cl
inc edx
inc esi
dec eax
jne 0x421ff0
jmp 0x422009
mov cl, byte [esi]
mov byte [edx], cl
inc edx
inc esi
dec eax
jne 0x422000
movzx eax, byte [esi]
inc esi
cmp eax, 0x10
jae 0x422047
shr eax, 2
mov ecx, edx
sub ecx, eax
movzx eax, byte [esi]
shl eax, 2
sub ecx, eax
inc esi
movzx eax, byte [ecx - 0x801]
mov byte [edx], al
movzx eax, byte [ecx - 0x800]
mov byte [edx + 1], al
movzx eax, byte [ecx - 0x7ff]
mov byte [edx + 2], al
add edx, 3
jmp 0x422172
cmp eax, 0x40
jb 0x422088
mov ecx, eax
shr ecx, 2
and ecx, 7
mov edi, edx
sub edi, ecx
movzx ecx, byte [esi]
shl ecx, 3
sub edi, ecx
shr eax, 5
dec edi
inc esi
dec eax
movzx ecx, byte [edi]
mov byte [edx], cl
movzx ecx, byte [edi + 1]
mov byte [edx + 1], cl
add edx, 2
add edi, 2
mov cl, byte [edi]
mov byte [edx], cl
inc edx
lea edi, [edi + 1]
dec eax
jne 0x422078
jmp 0x422172
cmp eax, 0x20
jb 0x4220ba
and eax, 0x1f
jne 0x4220aa
cmp byte [esi], al
jne 0x4220a1
inc esi
add eax, 0xff
cmp byte [esi], 0
je 0x422096
movzx ecx, byte [esi]
add eax, 0x1f
add eax, ecx
inc esi
movzx ecx, word [esi]
shr ecx, 2
lea edi, [edx - 1]
sub edi, ecx
add esi, 2
jmp 0x42210d
cmp eax, 0x10
jb 0x422153
mov ecx, eax
and ecx, 8
shl ecx, 0xb
mov edi, edx
sub edi, ecx
and eax, 7
jne 0x4220f4
cmp byte [esi], al
jne 0x4220eb
jmp 0x4220e0
inc esi
add eax, 0xff
cmp byte [esi], 0
je 0x4220e0
movzx ecx, byte [esi]
add eax, 7
add eax, ecx
inc esi
movzx ecx, word [esi]
shr ecx, 2
sub edi, ecx
add esi, 2
cmp edi, edx
je 0x4221a4
sub edi, 0x4000
cmp eax, 6
jb 0x422066
mov ecx, edx
sub ecx, edi
cmp ecx, 4
jl 0x422066
mov ecx, dword [edi]
mov dword [edx], ecx
add edx, 4
add edi, 4
sub eax, 2
mov ecx, dword [edi]
mov dword [edx], ecx
sub eax, 4
add edx, 4
add edi, 4
cmp eax, 4
jae 0x422130
test eax, eax
je 0x422172
mov cl, byte [edi]
mov byte [edx], cl
inc edx
lea edi, [edi + 1]
dec eax
jne 0x422146
jmp 0x422172
shr eax, 2
mov ecx, edx
sub ecx, eax
movzx eax, byte [esi]
shl eax, 2
sub ecx, eax
inc esi
movzx eax, byte [ecx - 1]
mov byte [edx], al
movzx eax, byte [ecx]
mov byte [edx + 1], al
add edx, 2
movzx ecx, byte [esi - 2]
and ecx, 3
je 0x421f9b
mov al, byte [esi]
mov byte [edx], al
inc edx
inc esi
cmp ecx, 1
jbe 0x42219b
mov al, byte [esi]
mov byte [edx], al
inc edx
inc esi
cmp ecx, 2
jbe 0x42219b
mov al, byte [esi]
mov byte [edx], al
inc edx
inc esi
movzx eax, byte [esi]
inc esi
jmp 0x422047
sub edx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [eax], edx
cmp esi, ebx
jne 0x4221b7
pop edi
pop esi
xor eax, eax
pop ebx
pop ebp
ret
sbb eax, eax
pop edi
and eax, 0xfffffffc
pop esi
add eax, 0xfffffffc
pop ebx
pop ebp
ret