File format of an $2048$ bits RSA public key
You've mostly pieced it out.  This is a DER encoding the the public key, and consists of a sequence of two integers (the first being the modulus, and the second being the exponent).

Here is the breakdown of the encoding:

30


The value 30 is used to signify 'sequence'; this is a container that carries a list of DER-encoded objects.

82 01 0a


Whenever we have an object (including a sequence), we always encode the length of the object (that is, how many bytes are in the DER-encoding of the object, not counting the object type and the length field); here, the 82 signifies that the length itself is 2 bytes long, and that the total length is 0x010a = 266 bytes.

02


Now, we get to the first object in the sequence; the value 02 is used to signify 'integer'.

82 01 01


And this is the length of the integer; again, the 82 signifies that the length itself is 2 bytes long, and that the total length is 0x0101 = 257 bytes.

00 8e a3 d1 c7 ... ab 23 39 2d


These 257 bytes are the actual integer, in bigendian format.  Note that the first byte is a 00; that is required because of the rules of DER encoding.  Specifically, the 02 format encodes an integer, and it is allowed to encode a negative integer (remember, DER is a general format, and is not targetted specifically to encoding public keys).  The rule is that the integer is negative if the msbit of the encoded value is a 1.  We need to encode a positive integer; the top byte of the value we encode is 8e, which has a msbit of 1.  To prevent this from confusing the decoder, we prepend a 00 on top to make the msbit 0.

And, while you didn't ask about the end part, here are the last 5 bytes:

02


This signifies that the second element in the sequence encodes an integer

03


This signifies that this integer is encoded in 3 bytes

01 00 01


This signifies that the encoded integer is 0x10001 == 65537