Making Quads square - a few ideas
main page
Making quads square

Using Vert | Deform -> Inflate and / or Vert | Tighten might produce something suitable if you don't want to bother with the following methods. It all depends on how accurate you want stuff to be, etc ..
Using a reference cube to make a quad square
1). Select problem poly (pp) and apply Face | Flatten -> Normal
2). Create a cube, scale uniform cube (sensible size)
3). Use Face | Put On to locate cube on pp. (Change mess tray, bottom of cage)
4). Situation after cube been 'Put On' pp.
5). Select first vert on pp to be aligned.
6). Apply Vert | Scale -> Uniform (Use RMB option, pick a point)
7). Select nearest cube vert as the destination (shown here in blue)
8). Drag constrained (use shft) to 0% This aligns the (first) poly vert to the cube corner vert.
9). Repeat (and simmer under low grill) with other 3 verts
Remove cube.
Scale / Rotate square face to suit.
Will work with any shape - just a matter of creating a suitable object (primitive)

Eyeball only method.

If you don't want to bother with the Scale etc method, just use Put On and use Tweak to move the pp verts to the cube corner verts - ie use the cube as a visual ref only - make sure you view true, or select pp face and apply View | Align to Selection (ortho).
Method of making any quad square without using external references.
1) Quad / problem poly in question. Apply Face | Flatten -> Normal.
Decide which of the 4 edges of the original poly you want to use as the reference for the side of the square. Here, I've chosen the right hand (nearly) vertical edge.
2) Select a vert which doesn't lie on the reference edge. (I chose lower left corner vert)
3) Apply Vert | Scale Uniform (Use RMB option, pick a point) - choose the vert as shown in blue as the 'destination' point.
4) Execute the command by dragging to 0% (use shft to constrain). There are now 2 edges (of equal length) on top of each other.
5) Keeping the vert just moved selected, apply Vert | Rotate -> Y (Use RMB option, Pick point to rotate through) - choose the vert shown in blue as the 'anchor' point for this local Y axis.
6) Execute Vert | Rotate and drag the (selected, red) vert anti-clockwise 90 deg (shft constraint again) - blue centre disappears during op. At this stage of the procedure there are now 2 edges (of equal length) with a right angle between them :)
7) Basically repeat the previous stuff with the last remaining (unsorted) vert.
8) Select the vert (red) select destination point (blue)
9) Execute the scale op to 0% as before.
10) Rotate this vert back with a rotate op, centre where blue is.(again, anticlockwise)
11) Situation after executing rotate op
12) Finished square - very accurate.

Whilst this looks complicated, it's actually easier (and quicker) to do than write about - especially once you're used to the scale and vector rotate commands as used here.

I used Rotate Y because this set up was done on the top of a modified cube - in a 'real' situation, not aligned to XYZ axes, click on the poly to get a normal for the rotate axis.

Somewhat less accurate eyeball version of above.
Rather than using Scale (to a point) - just use Tweak or Move Free to move the appropriate verts to the destination verts. You'll still have to use Rotate -> 90 deg.
The accuracy of the resulting square will completely depend on how precisely you align one vert on top of another.
Make sure you use View XYZ (if relevant) or select the (flattened) poly and apply View | Align to Selection - otherwise you'll distort stuff.
Still probably much better than a 'pure' eyeballing job, imo
Method of making any quad square without using external references.
Using a reference cube to make a quad square
1). The quad in need of being made into a square. I chose a face on a default sphere and messed it around a bit with Tweak.
I applied Face | Flatten Normal to this face to ensure we had a flat poly to play around with - other than that, it doesn't align with any axis.
2). Select a pair of (opposing) verts - either pair will do.
3). Apply Vert | Flatten (MMB option) - note how the selected verts are now displayed.
4). Select the other pair of verts (smaller, in red) to define the flatten (vector) axis (shown in blue). The verts chosen in (2) will end up on a plane that is perpendicular to this axis after the op is completed. Using the MMB option allows us to also define a point along the vector axis thro' which this plane will pass. In this case, this facility is essential, since we wish to specify the mid-point between these (same) 2 verts used for specifying the vector.
5). Select the same 2 verts (as in (4)) to define the anchor point (shown in blue) - which is the required mid point.
6). Execute the Flatten op. The verts selected in (2) now lie on the required plane (perpendicular to the blue arrow shown in (4))
A general method for making any quad square without recourse to maths.
Overview
Flatten Normal
2 x Flatten MMB ops
Inflate RMB
7). We now have to repeat the Flatten op with the other 2 verts of the quad.
Select the other pair of (opposing) verts
8). Apply Vert | Flatten (MMB) again and select verts shown (smaller, in red) to define axis - note that the verts actually being flattened are now displayed bigger with less opacity.
(Since the previous op. was also Flatten, you can press Cntrl + D to repeat the last op - but with the option of defining a different vector / anchor point)
9). Re-select the same verts (as in (8)) to define the vector anchor point.
10). Situation after the second flatten op - the quad is now a rhombus - all sides of equal length, but diagonals (crossing at 90deg) of differing lengths.
11). Select either pair of verts (I kept those selected in (10) ) and apply Vert | Deform Inflate (RMB option)
Select the 2 verts shown (or face of the quad) to define the centre of operations for Inflate
12). Select either of these verts (again) to define the radius of operations and execute / drag -> 100%. Dragging to 100% places all selected verts onto a circular arc.
13). Finished quad - all sides of the same length, with diagonals of equal length - which, in my book, is a square.


Comments
This is easier to do than describe - imo.
The method should work with any quad - irrespective of its orientation in 3D space - just ensure the first Flatten Normal op is carried out first.
Using Flatten RMB will flatten stuff along the defined axis - but Wings will choose an anchor point that is the average of the selected verts - this won't do for this procedure. (try it and see what happens :) )

Example of the essence of this method in use
here.
A couple of older methods left in for historical reasons / interest.
1