Index: wp-admin/js/common.js
===================================================================
--- wp-admin/js/common.js	(revision 25112)
+++ wp-admin/js/common.js	(working copy)
@@ -286,13 +286,21 @@
 			last = checks.index( this );
 			checked = $(this).prop('checked');
 			if ( 0 < first && 0 < last && first != last ) {
-				checks.slice( first, last ).prop( 'checked', function(){
-					if ( $(this).closest('tr').is(':visible') )
-						return checked;
+				if ( last > first ) {
+					checks.slice( first, last ).prop( 'checked', function(){
+						if ( $(this).closest('tr').is(':visible') )
+							return checked;
+						return false;
+					});
+				} else {
+					checks.slice(last, first).prop('checked', function () {
+						if ($(this).closest('tr').is(':visible'))
+							return checked;
+						return false;
+					});
+				}
+			}
 
-					return false;
-				});
-			}
 		}
 		lastClicked = this;
 
