Solution for SQL2005
;WITH cte AS
(
SELECT [dbo].[CaseAssignments].[Rank1],
[NEW_RANK] = (ROW_NUMBER() OVER( ORDER BY [dbo].[LawFirms].[FirmName], [dbo].[CaseAssignments].[Rank] )) - 1
FROM [dbo].[CaseAssignments]
JOIN [dbo].[LawFirms]
ON [dbo].[CaseAssignments].[FirmID] = [dbo].[LawFirms].[FirmID]
JOIN [dbo].[v_Lawyers]
ON [dbo].[CaseAssignments].[LawyerID] = [dbo].[v_Lawyers].[LawyerID]
AND
[dbo].[LawFirms].[FirmID] = [dbo].[v_Lawyers].[FirmID]
JOIN [dbo].[Cases]
ON [dbo].[CaseAssignments].[CaseID] = [dbo].[Cases].[CaseID]
WHERE [dbo].[CaseAssignments].[CaseID] = 144
AND
[dbo].[CaseAssignments].[FormFilterPDC] = 1
)
UPDATE cte
SET [Rank1] = [NEW_RANK]