Yes, Contracts can be assigned to School Accepted Candidates who have not yet submitted their Candidate Decision, and whether or not these Candidates will be able to see their Contracts is determined through settings within the Decision.
  1. Navigate to Enrollment Management > Admissions > Admissions Setup > Decision Types.
  2. Click Edit to the right of your Accept Decision.
  3. Next to Display Options, you can select "Display Contract only when \Candidate has accepted" - which means that you can assign the Contract before they Accept (Candidate Decision), but the Contract will not display to the Candidate until they accept. If not, the Contract will display when published and generated, regardless of the Candidate not yet submitting a Decision. 

User-added image