Function at 0x45eee0
Capabilities:
Decompress data using ucl

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov eax, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push edi
mov edi, dword [ebp + 0x14]
mov edx, dword [edi]
add ebx, eax
xor esi, esi
xor ecx, ecx
mov dword [ebp + 0xc], esi
mov dword [ebp - 8], 1
mov dword [ebp - 4], edx
mov dword [ebp + 0x10], ebx
cmp edx, ebx
jb 0x45ef1c
mov dword [edi], ecx
pop edi
pop esi
mov eax, 0xffffff32
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp + 8]
nop
test cl, 0x7f
je 0x45ef29
add ecx, ecx
jmp 0x45ef32
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
inc eax
test ecx, 0x100
je 0x45ef59
cmp eax, ebx
jae 0x45f12c
cmp esi, edx
jae 0x45f13d
cmp esi, eax
ja 0x45f14e
inc esi
mov dword [ebp + 0xc], esi
inc eax
jmp 0x45ef20
mov edx, 1
mov edi, edi
test cl, 0x7f
je 0x45ef69
add ecx, ecx
jmp 0x45ef72
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
inc eax
mov esi, ecx
shr esi, 8
and esi, 1
lea esi, [esi + edx*2]
cmp eax, ebx
jae 0x45f15f
cmp esi, 0x1000002
ja 0x45f173
test cl, 0x7f
je 0x45ef9b
lea edx, [ecx + ecx]
jmp 0x45efa4
movzx edx, byte [eax + edi]
lea edx, [edx + edx + 1]
inc eax
test edx, 0x100
jne 0x45efd9
test dl, 0x7f
je 0x45efc2
lea ecx, [edx + edx]
mov edx, ecx
shr edx, 8
and edx, 1
lea edx, [edx + esi*2 - 2]
jmp 0x45ef60
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
mov edx, ecx
shr edx, 8
inc eax
and edx, 1
lea edx, [edx + esi*2 - 2]
jmp 0x45ef60
cmp esi, 2
jne 0x45f005
mov ebx, dword [ebp - 8]
test dl, 0x7f
je 0x45eff2
add edx, edx
mov esi, edx
shr esi, 8
and esi, 1
jmp 0x45f032
movzx edx, byte [eax + edi]
lea edx, [edx + edx + 1]
mov esi, edx
shr esi, 8
inc eax
and esi, 1
jmp 0x45f032
cmp eax, ebx
jae 0x45f187
movzx ecx, byte [eax + edi]
add esi, 0xfffffffd
shl esi, 8
add ecx, esi
inc eax
cmp ecx, 0xffffffff
je 0x45f19b
mov esi, ecx
not esi
and esi, 1
shr ecx, 1
lea ebx, [ecx + 1]
mov dword [ebp - 8], ebx
test esi, esi
je 0x45f063
test dl, 0x7f
je 0x45f04c
lea ecx, [edx + edx]
mov edx, ecx
shr edx, 8
and edx, 1
inc edx
jmp 0x45f0f3
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
mov edx, ecx
shr edx, 8
and edx, 1
inc eax
inc edx
jmp 0x45f0f3
test dl, 0x7f
je 0x45f06d
lea ecx, [edx + edx]
jmp 0x45f076
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
inc eax
test ecx, 0x100
je 0x45f0a2
test cl, 0x7f
je 0x45f08f
add ecx, ecx
mov edx, ecx
shr edx, 8
and edx, 1
jmp 0x45f0f0
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
mov edx, ecx
shr edx, 8
inc eax
and edx, 1
jmp 0x45f0f0
mov edx, 1
test cl, 0x7f
je 0x45f0b0
add ecx, ecx
jmp 0x45f0b9
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
inc eax
mov esi, ecx
shr esi, 8
and esi, 1
lea edx, [esi + edx*2]
cmp eax, dword [ebp + 0x10]
jae 0x45f15f
cmp edx, dword [ebp - 4]
jae 0x45f1c1
test cl, 0x7f
je 0x45f0df
add ecx, ecx
jmp 0x45f0e8
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
inc eax
test ecx, 0x100
je 0x45f0a7
add edx, 3
mov esi, 0x500
cmp esi, ebx
sbb esi, esi
neg esi
add edx, esi
mov esi, dword [ebp + 0xc]
add edx, esi
cmp edx, dword [ebp - 4]
ja 0x45f13d
cmp ebx, esi
ja 0x45f1d5
inc edx
mov dword [ebp + 0xc], edx
cmp edx, eax
ja 0x45f1e6
mov ebx, dword [ebp + 0x10]
mov edx, dword [ebp - 4]
mov esi, dword [ebp + 0xc]
jmp 0x45ef20
mov eax, dword [ebp + 0x14]
pop edi
mov dword [eax], esi
pop esi
mov eax, 0xffffff37
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x14]
pop edi
mov dword [ecx], esi
pop esi
mov eax, 0xffffff36
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x14]
pop edi
mov dword [edx], esi
pop esi
mov eax, 0xffffff32
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x14]
pop edi
pop esi
mov dword [ecx], eax
mov eax, 0xffffff37
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp + 0xc]
pop edi
pop esi
mov dword [eax], edx
mov eax, 0xffffff35
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x14]
pop edi
pop esi
mov dword [edx], ecx
mov eax, 0xffffff37
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x14]
mov dword [edx], ecx
cmp eax, ebx
jne 0x45f1b0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
sbb eax, eax
pop edi
and eax, 0xfffffffc
pop esi
add eax, 0xffffff37
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp + 0xc]
pop edi
pop esi
mov dword [eax], edx
mov eax, 0xffffff36
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x14]
pop edi
mov dword [edx], esi
pop esi
mov eax, 0xffffff35
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
pop edi
pop esi
mov dword [eax], edx
mov eax, 0xffffff32
pop ebx
mov esp, ebp
pop ebp
ret