instead of referencing the data variable called spaces in the display PROC, how can i put the push OFFSET space into the main procedure then reference it like mov edx, [ebp +4]? This display procedure is used to show an array of random numbers. It works when I use the below but I need to write it different. a rough idea of what I have now .data spaces byte " ",0 display PROC mov eax,[esi] ;get number from array call WriteDec mov edx, OFFSET spaces ; add space after call WriteString displayList ENDP instead of referencing the data variable called spaces in the display PROC, how can i put the push OFFSET space into the main procedure then reference it like mov edx, [ebp +4]? This display procedure is used to show an array of random numbers. It works when I use the below but I need to write it different. a rough idea of what I have now .data spaces byte " ",0 display PROC mov eax,[esi] ;get number from array call WriteDec mov edx, OFFSET spaces ; add space after call WriteString displayList ENDP .