It's a while since I did this but surely DUP is used to declare arrays. It's angle brackets for structure initialisation.
CRITICAL_SECTION STRUCT
DebugInfo DWORD ?
LockCount LONG ?
RecursionCount LONG ?
OwningThread HANDLE ?
LockSemaphore HANDLE ?
SpinCount DWORD ?
CRITICAL_SECTION ENDS
; explicit initialisation of all fields
WndCritical1 CRITICAL_SECTION <0, 0, 0, 0, 0, 0>
; use default values
WndCritical2 CRITICAL_SECTION < ? >
; array of 8 critical sections
WndCriticalArray CRITICAL_SECTION 8 DUP (< ? >)
Alan.