Function at 0x4152b0
Capabilities:
Decompress data using lzo

Disassembly:
push ebp
push esi
push edi
mov edi, ecx
mov dl, byte [edi]
cmp dl, 0x11
lea ebp, [edi + eax]
mov eax, dword [esp + 0x10]
mov dword [ebx], 0
jbe 0x4152f4
movzx esi, dl
sub esi, 0x11
cmp esi, 4
lea ecx, [edi + 1]
jb 0x4153c9
jmp 0x4152e0
mov dl, byte [ecx]
mov byte [eax], dl
add eax, 1
add ecx, 1
sub esi, 1
jne 0x4152e0
jmp 0x415376
movzx esi, byte [ecx]
add ecx, 1
cmp esi, 0x10
jae 0x4153f7
test esi, esi
jne 0x415328
cmp byte [ecx], 0
jne 0x41531e
lea esp, [esp]
add ecx, 1
add esi, 0xff
cmp byte [ecx], 0
je 0x415310
movzx edx, byte [ecx]
lea esi, [esi + edx + 0xf]
add ecx, 1
mov edx, dword [ecx]
mov dword [eax], edx
add eax, 4
add ecx, 4
sub esi, 1
je 0x415376
cmp esi, 4
jb 0x415367
lea esp, [esp]
mov edx, dword [ecx]
mov dword [eax], edx
sub esi, 4
add eax, 4
add ecx, 4
cmp esi, 4
jae 0x415340
test esi, esi
jbe 0x415376
mov dl, byte [ecx]
mov byte [eax], dl
add eax, 1
add ecx, 1
sub esi, 1
jne 0x415356
jmp 0x415376
mov dl, byte [ecx]
mov byte [eax], dl
add eax, 1
add ecx, 1
sub esi, 1
jne 0x415367
movzx esi, byte [ecx]
add ecx, 1
cmp esi, 0x10
jae 0x4153f7
movzx edx, byte [ecx]
add edx, edx
shr esi, 2
mov edi, eax
sub edi, esi
add edx, edx
sub edi, edx
movzx edx, byte [edi - 0x801]
sub edi, 0x801
mov byte [eax], dl
add eax, 1
add edi, 1
movzx edx, byte [edi]
mov byte [eax], dl
movzx edx, byte [edi + 1]
add eax, 1
add ecx, 1
mov byte [eax], dl
add eax, 1
movzx edx, byte [ecx - 2]
and edx, 3
mov esi, edx
je 0x4152f4
mov dl, byte [ecx]
mov byte [eax], dl
add eax, 1
add ecx, 1
cmp esi, 1
jbe 0x4153f1
mov dl, byte [ecx]
mov byte [eax], dl
add eax, 1
add ecx, 1
cmp esi, 2
jbe 0x4153f1
mov dl, byte [ecx]
mov byte [eax], dl
add eax, 1
add ecx, 1
movzx esi, byte [ecx]
add ecx, 1
cmp esi, 0x40
jb 0x41544a
mov edx, esi
shr edx, 2
and edx, 7
mov edi, eax
sub edi, edx
movzx edx, byte [ecx]
add edx, edx
add edx, edx
add edx, edx
sub edi, edx
shr esi, 5
sub edi, 1
add ecx, 1
sub esi, 1
movzx edx, byte [edi]
mov byte [eax], dl
movzx edx, byte [edi + 1]
add edi, 1
add eax, 1
mov byte [eax], dl
add eax, 1
add edi, 1
mov dl, byte [edi]
mov byte [eax], dl
add eax, 1
add edi, 1
sub esi, 1
jne 0x415436
jmp 0x4153ba
cmp esi, 0x20
jb 0x41548a
and esi, 0x1f
jne 0x415478
cmp byte [ecx], 0
jne 0x41546e
lea esp, [esp]
add ecx, 1
add esi, 0xff
cmp byte [ecx], 0
je 0x415460
movzx edx, byte [ecx]
lea esi, [esi + edx + 0x1f]
add ecx, 1
movzx edx, word [ecx]
shr edx, 2
mov edi, eax
sub edi, edx
sub edi, 1
add ecx, 2
jmp 0x4154dd
cmp esi, 0x10
mov edi, eax
jb 0x415534
mov edx, esi
and edx, 8
shl edx, 0xb
sub edi, edx
and esi, 7
jne 0x4154c8
cmp byte [ecx], 0
jne 0x4154be
lea esp, [esp]
add ecx, 1
add esi, 0xff
cmp byte [ecx], 0
je 0x4154b0
movzx edx, byte [ecx]
lea esi, [esi + edx + 7]
add ecx, 1
movzx edx, word [ecx]
shr edx, 2
sub edi, edx
add ecx, 2
cmp edi, eax
je 0x41554a
sub edi, 0x4000
cmp esi, 6
jb 0x41541f
mov edx, eax
sub edx, edi
cmp edx, 4
jl 0x41541f
mov edx, dword [edi]
mov dword [eax], edx
add eax, 4
add edi, 4
sub esi, 2
mov edx, dword [edi]
mov dword [eax], edx
sub esi, 4
add eax, 4
add edi, 4
cmp esi, 4
jae 0x415500
test esi, esi
jbe 0x4153ba
lea ebx, [ebx]
mov dl, byte [edi]
mov byte [eax], dl
add eax, 1
add edi, 1
sub esi, 1
jne 0x415520
jmp 0x4153ba
movzx edx, byte [ecx]
shr esi, 2
add edx, edx
sub edi, esi
add edx, edx
sub edi, edx
sub edi, 1
jmp 0x4153a6
sub eax, dword [esp + 0x10]
cmp ecx, ebp
mov dword [ebx], eax
jne 0x41555a
pop edi
pop esi
xor eax, eax
pop ebp
ret
sbb eax, eax
pop edi
and eax, 0xfffffffc
pop esi
add eax, 0xfffffffc
pop ebp
ret