Flags are stored in a bitfield, 8 flags per byte. There's a CheckFlag function, and it's used as such:
PUSH (Flag num, hex)
CALL 40E930
ADD ESP, 4
TEST EAX, EAX
JZ (code to execute if flag not set)
(Code to execute if flag set)
You could do it as you suggested, or you could test if the flag is...