Why the PUSHDATA is 65 in the first transaction in blk00000.dat? https://www.blockchain.com/btc/tx/4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b?show_adv=true  

The raw script is in the first transaction is:
  4104678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5fac   

0x41 -> 65 (PUSHDATA) # Why ?????
0xac -> 175 (OP_CHECKSIG)

The list of OP can be found here
https://github.com/bitcoin/bitcoin/blob/bffb35f876572737b175aa3620bbf3e62c20f444/test/functional/test_framework/script.py

There is no 0x41 OP at all~~~~
Opcodes between OP_0 (0x00) and OP_PUSHDATA1 (0x4c, 76) (exclusive range) are push opcodes.

To push data smaller than 76 bytes, data's length, which is an opcode within that range should be used.

For example, to push 0x01020304, which has four bytes, 0x04 should be used: 0x0401020304.

To push 0x12, which has one byte, prepend with 0x01: 0x0112