Function at 0x41b560
Capabilities:
Decompress data using lzo

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58
push ebx
push esi
push edi
mov eax, dword [ebp + 8]
add eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp + 0x14]
mov dword [ecx], 0
mov edx, dword [ebp + 0x10]
mov dword [ebp - 4], edx
mov eax, dword [ebp + 8]
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x11
jle 0x41b5e4
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cl, byte [eax]
sub ecx, 0x11
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
cmp dword [ebp - 0xc], 4
jae 0x41b5b4
jmp 0x41bb57
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 8]
add ecx, 1
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0xc]
sub edx, 1
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0
ja 0x41b5b4
jmp 0x41bb52
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cl, byte [eax]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
cmp dword [ebp - 0xc], 0x10
jb 0x41b602
jmp 0x41bb4d
cmp dword [ebp - 0xc], 0
jne 0x41b644
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cl, byte [eax]
test ecx, ecx
jne 0x41b62a
mov edx, dword [ebp - 0xc]
add edx, 0xff
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
jmp 0x41b608
mov ecx, dword [ebp - 8]
xor edx, edx
mov dl, byte [ecx]
mov eax, dword [ebp - 0xc]
lea ecx, [eax + edx + 0xf]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov edx, dword [ecx]
mov dword [eax], edx
mov eax, dword [ebp - 4]
add eax, 4
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 8]
add ecx, 4
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0xc]
sub edx, 1
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0
jbe 0x41b702
cmp dword [ebp - 0xc], 4
jb 0x41b6d7
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov edx, dword [ecx]
mov dword [eax], edx
mov eax, dword [ebp - 4]
add eax, 4
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 8]
add ecx, 4
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0xc]
sub edx, 4
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 4
jae 0x41b679
cmp dword [ebp - 0xc], 0
jbe 0x41b6d5
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 8]
add ecx, 1
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0xc]
sub edx, 1
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0
ja 0x41b6aa
jmp 0x41b702
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 8]
add ecx, 1
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0xc]
sub edx, 1
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0
ja 0x41b6d7
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cl, byte [eax]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
cmp dword [ebp - 0xc], 0x10
jb 0x41b720
jmp 0x41bb48
mov eax, dword [ebp - 4]
sub eax, 0x801
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
shr ecx, 2
mov edx, dword [ebp - 0x10]
sub edx, ecx
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cl, byte [eax]
shl ecx, 2
mov edx, dword [ebp - 0x10]
sub edx, ecx
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [edx]
mov byte [ecx], al
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x10]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov cl, byte [eax]
mov byte [edx], cl
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
jmp 0x41bb43
cmp dword [ebp - 0xc], 0x40
jb 0x41b7f0
mov eax, dword [ebp - 4]
sub eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
shr ecx, 2
and ecx, 7
mov edx, dword [ebp - 0x10]
sub edx, ecx
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cl, byte [eax]
shl ecx, 3
mov edx, dword [ebp - 0x10]
sub edx, ecx
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0xc]
shr ecx, 5
sub ecx, 1
mov dword [ebp - 0xc], ecx
jmp 0x41bb3e
cmp dword [ebp - 0xc], 0x20
jb 0x41b86b
mov edx, dword [ebp - 0xc]
and edx, 0x1f
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0
jne 0x41b841
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cl, byte [eax]
test ecx, ecx
jne 0x41b827
mov edx, dword [ebp - 0xc]
add edx, 0xff
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
jmp 0x41b805
mov ecx, dword [ebp - 8]
xor edx, edx
mov dl, byte [ecx]
mov eax, dword [ebp - 0xc]
lea ecx, [eax + edx + 0x1f]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 4]
sub eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 8]
xor edx, edx
mov dx, word [ecx]
sar edx, 2
mov eax, dword [ebp - 0x10]
sub eax, edx
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 8]
add ecx, 2
mov dword [ebp - 8], ecx
jmp 0x41b974
cmp dword [ebp - 0xc], 0x10
jb 0x41b90e
mov edx, dword [ebp - 4]
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0xc]
and eax, 8
shl eax, 0xb
mov ecx, dword [ebp - 0x10]
sub ecx, eax
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0xc]
and edx, 7
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0
jne 0x41b8d7
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cl, byte [eax]
test ecx, ecx
jne 0x41b8bd
mov edx, dword [ebp - 0xc]
add edx, 0xff
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
jmp 0x41b89b
mov ecx, dword [ebp - 8]
xor edx, edx
mov dl, byte [ecx]
mov eax, dword [ebp - 0xc]
lea ecx, [eax + edx + 7]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cx, word [eax]
sar ecx, 2
mov edx, dword [ebp - 0x10]
sub edx, ecx
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
add eax, 2
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 4]
jne 0x41b900
jmp 0x41bb3c
mov edx, dword [ebp - 0x10]
sub edx, 0x4000
mov dword [ebp - 0x10], edx
jmp 0x41b974
mov eax, dword [ebp - 4]
sub eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
shr ecx, 2
mov edx, dword [ebp - 0x10]
sub edx, ecx
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cl, byte [eax]
shl ecx, 2
mov edx, dword [ebp - 0x10]
sub edx, ecx
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [edx]
mov byte [ecx], al
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x10]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
jmp 0x41bb37
cmp dword [ebp - 0xc], 6
jb 0x41ba10
mov ecx, dword [ebp - 4]
sub ecx, dword [ebp - 0x10]
cmp ecx, 4
jl 0x41ba10
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
mov dword [edx], ecx
mov edx, dword [ebp - 4]
add edx, 4
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x10]
add eax, 4
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
sub ecx, 2
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
mov dword [edx], ecx
mov edx, dword [ebp - 4]
add edx, 4
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x10]
add eax, 4
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
sub ecx, 4
mov dword [ebp - 0xc], ecx
cmp dword [ebp - 0xc], 4
jae 0x41b9b2
cmp dword [ebp - 0xc], 0
jbe 0x41ba0e
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov cl, byte [eax]
mov byte [edx], cl
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
sub ecx, 1
mov dword [ebp - 0xc], ecx
cmp dword [ebp - 0xc], 0
ja 0x41b9e3
jmp 0x41ba73
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov cl, byte [eax]
mov byte [edx], cl
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [edx]
mov byte [ecx], al
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x10]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0xc]
sub edx, 1
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0
ja 0x41ba48
mov eax, dword [ebp - 8]
xor ecx, ecx
mov cl, byte [eax - 2]
and ecx, 3
mov dword [ebp - 0xc], ecx
cmp dword [ebp - 0xc], 0
jne 0x41ba89
jmp 0x41bb01
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 8]
mov cl, byte [eax]
mov byte [edx], cl
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
cmp dword [ebp - 0xc], 1
jbe 0x41bae9
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov al, byte [edx]
mov byte [ecx], al
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
cmp dword [ebp - 0xc], 2
jbe 0x41bae9
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov dl, byte [ecx]
mov byte [eax], dl
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 8]
add ecx, 1
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 8]
xor eax, eax
mov al, byte [edx]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 8]
add ecx, 1
mov dword [ebp - 8], ecx
jmp 0x41b7a4
jmp 0x41b5e4
mov edx, dword [ebp - 4]
sub edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x14]
mov dword [eax], edx
mov ecx, dword [ebp - 8]
cmp ecx, dword [ebp - 0x14]
jne 0x41bb22
mov dword [ebp - 0x18], 0
jmp 0x41bb32
mov edx, dword [ebp - 8]
cmp edx, dword [ebp - 0x14]
sbb eax, eax
and al, 0xfc
add eax, 0xfffffffc
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
jmp 0x41bb5c
jmp 0x41ba73
jmp 0x41bb06
jmp 0x41ba10
jmp 0x41ba73
jmp 0x41b7a4
jmp 0x41b7a4
jmp 0x41b702
jmp 0x41ba89
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret