Function at 0x45dee0
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 0x45df1c
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 0x45df29
add ecx, ecx
jmp 0x45df32
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
inc eax
test ecx, 0x100
je 0x45df59
cmp eax, ebx
jae 0x45e12c
cmp esi, edx
jae 0x45e13d
cmp esi, eax
ja 0x45e14e
inc esi
mov dword [ebp + 0xc], esi
inc eax
jmp 0x45df20
mov edx, 1
mov edi, edi
test cl, 0x7f
je 0x45df69
add ecx, ecx
jmp 0x45df72
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 0x45e15f
cmp esi, 0x1000002
ja 0x45e173
test cl, 0x7f
je 0x45df9b
lea edx, [ecx + ecx]
jmp 0x45dfa4
movzx edx, byte [eax + edi]
lea edx, [edx + edx + 1]
inc eax
test edx, 0x100
jne 0x45dfd9
test dl, 0x7f
je 0x45dfc2
lea ecx, [edx + edx]
mov edx, ecx
shr edx, 8
and edx, 1
lea edx, [edx + esi*2 - 2]
jmp 0x45df60
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 0x45df60
cmp esi, 2
jne 0x45e005
mov ebx, dword [ebp - 8]
test dl, 0x7f
je 0x45dff2
add edx, edx
mov esi, edx
shr esi, 8
and esi, 1
jmp 0x45e032
movzx edx, byte [eax + edi]
lea edx, [edx + edx + 1]
mov esi, edx
shr esi, 8
inc eax
and esi, 1
jmp 0x45e032
cmp eax, ebx
jae 0x45e187
movzx ecx, byte [eax + edi]
add esi, 0xfffffffd
shl esi, 8
add ecx, esi
inc eax
cmp ecx, 0xffffffff
je 0x45e19b
mov esi, ecx
not esi
and esi, 1
shr ecx, 1
lea ebx, [ecx + 1]
mov dword [ebp - 8], ebx
test esi, esi
je 0x45e063
test dl, 0x7f
je 0x45e04c
lea ecx, [edx + edx]
mov edx, ecx
shr edx, 8
and edx, 1
inc edx
jmp 0x45e0f3
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
mov edx, ecx
shr edx, 8
and edx, 1
inc eax
inc edx
jmp 0x45e0f3
test dl, 0x7f
je 0x45e06d
lea ecx, [edx + edx]
jmp 0x45e076
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
inc eax
test ecx, 0x100
je 0x45e0a2
test cl, 0x7f
je 0x45e08f
add ecx, ecx
mov edx, ecx
shr edx, 8
and edx, 1
jmp 0x45e0f0
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
mov edx, ecx
shr edx, 8
inc eax
and edx, 1
jmp 0x45e0f0
mov edx, 1
test cl, 0x7f
je 0x45e0b0
add ecx, ecx
jmp 0x45e0b9
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 0x45e15f
cmp edx, dword [ebp - 4]
jae 0x45e1c1
test cl, 0x7f
je 0x45e0df
add ecx, ecx
jmp 0x45e0e8
movzx ecx, byte [eax + edi]
lea ecx, [ecx + ecx + 1]
inc eax
test ecx, 0x100
je 0x45e0a7
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 0x45e13d
cmp ebx, esi
ja 0x45e1d5
inc edx
mov dword [ebp + 0xc], edx
cmp edx, eax
ja 0x45e1e6
mov ebx, dword [ebp + 0x10]
mov edx, dword [ebp - 4]
mov esi, dword [ebp + 0xc]
jmp 0x45df20
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 0x45e1b0
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