To start, you must have one side completely matching. Note that the sides match their appropriate middle colors. We won't go into how to get this far. If you can't get one side all matching, go play Quake.
Pick one of the sides whose right middle edge piece is located on the bottom edge. Rotate the bottom of the cube if need be to align the piece either bottom-right or bottom-front of where it needs to go. Follow the directions below depending upon which configuration you are looking at. Repeat the process for every middle edge on the cube until they are all in their correct positions. Notice that you must align the bottom row so that the color of the bottom edge matches the color of the middle piece.
B+ F+ B- F- B- R- B+ R+
B- R- B+ R+ B+ F+ B- F-
Next, get all four bottom corners in the correct spots, but not necessarily in their correct orientation. This will be done in step IV.
R- B- R+ F+ B+ F- R- B+ R+ B2
R- B- R+ F+ B2 F- R- B+ R+ B+
Looking at the bottom, determine which configuration you are looking at from the picture below. The blue squares represent the color of the bottom. Once you have determined which combination you have, orient the bottom of the cube like shown in the picture below. Now, no matter what you have been considering left, front, and right previously, this becomes your new orientation. With the cube held in your hand this way, follow the directions below. (Repeat this procedure until all four bottom corners are aligned correctly.)
R- B- R+ B- R- B2 R+ B2
Lastly, position the bottom edges. The way you hold the cube is determined by the pattern formed by the bottom color positions as shown in the pictures below.
(L- R+) F+ (L+ R-) B2 (L- R+) F+ (L+ R-)
* One Positioned (Hold BF) same as Zero Positioned
(L- R+) F2 (L+ R-) B2 (L- R+) F+ (L+ R-) B2 (L- R+) F2 (L+ R-) B-
(L- R+) F+ (L+ R-) B+ (L- R+) F+ (L+ R-) B+ (L- R+) F2 (L+ R-) B+ (L- R+) F+ (L+ R-) B+ (L- R+) F+ (L+ R-) B2
(L- R+) F+ (L+ R-) B- (L- R+) F- (L+ R-) B- (L- R+) F2 (L+ R-)