That's right. The global var will keep its value untill an instruction is executed where other events can be processed. For example, wait(), c_move(), etc. process events.

So to answer the original question "//Are we sure varGlobal is the same here as when event was raised?" yes, as long as there was not an event processing instruction in the event function before this function was called. "//varGlobal may not contain the same value now as wait continues other functions" correct.