What does it mean that a semi-honest adversary can look at the internal state of a controlled party?
Yes, this is what it means. A semi-honest adversary knows the entire state of each corrupted party, including its input, any random coin tosses, and all incoming messages from all other parties. However, it cannot deviate from the specified protocol instructions. Note that in the multiparty setting, the semi-honest adversary may corrupt multiple parties. In this case, it sees all of the corrupted parties' states together.