Hi hennaj,
A 640 is a solid score (it's just shy of the 80th percentile overall), so it might be enough to get you into your first-choice Business School.
The choice to retest or not comes down to a few issues:
1) What Schools are you planning to apply to (and when?)?
2) Do you plan to apply for any Scholarships (and what are the 'requirements' for those Scholarships?)?
Considering that Round 1 for most Schools is fairly close, if you haven't started working on your applications yet, then I would recommend that you hold off and apply for Round 2. It takes time to put together the proper application(s), so you wouldn't want to rush through that critical part of the process.
GMAT assassins aren't born, they're made,
Rich