Cantor's diagonal and describable sets



Could someone help me understand the flaw in the following logic?

A) Suppose you construct a set of all describable sets over the
integers and these consist of sentences of some finite length in some
language and call them {E}. This collection is countable.

B) Now define a function f that takes the description of each E into a
number n - say by taking the binary representation of the description.
And you have f(En) = n.

C) Define the Cantor diagonal complement Ec = {n is an integer: n =
f(En) is not an element of En}

D) Ec then should appear somewhere in the enumeration using f. And
f(Ec) = c.

E) Ec then generates a contradicition. If c is an element of Ec, then
by the definition in C) it's not an element of Ec. Likewise of c is
not an element of Ec, then by the definition in C) it is an element of
Ec.

F) So that appears to say that Ec can't possibly be in the enumeration
En. But En lists all finite sentences about sets of integers and Ec is
a finite sentence about integers.

G) So the conclusion is that Ec can't possibly be a set.

H) And if you look at the finite sentences that remain in En and
construct the Cantor Diagonal Complement - that's some sort of
collection of integers. But it can't be a set because of G.

I) So that says that there are some possible 'subsets' of integers
that aren't really sets.

In responding to this and showing the flaw in the logic, can one avoid
circular logic, like 'all subsets of integers are sets so the
conclusion in I) must have a flaw'. I would like to know where the
flaw actually exists. Thanks in advance for any insight you can
provide.

.