I have a Cisco WS-C412 Ethernet hub. Am I correct that internally all the Rx and Tx ports connect to a single wire/bus? Like here, where three NIC's are connected to first, fifth and ninth hub port:
Yes. A hub is a giant virtual wire. Tx from each port is tied to the Rx of all other ports. (through some rather complicated circuitry that's unimportant to anyone but an EE)
It's a little more complex than that.
The hub has to have circuitry to decode the wire-level encoding of incoming data and encode outgoing data in the correct wire-level encoding. This includes handling special cases like preambles and idle ports.
The core logic of the hub waits for incoming data to be detected by one of the receivers. If it detects incoming data on a port then it sends that data out of all the other ports (but not out of the port it came from). If it detects incoming data on more than one port at a time then it outputs a jam signal to ensure the collision is seen throughout the collision domain.