The JsonUtility.UnEscapeString() method removes double quotes at the start and at end of passed text. However, if the double quote is escaped with a backslash (\), the backslash is left, but the double quote is removed.
Line 120 of JsonUtility.cs should read:
if (text.EndsWith("\"") && !text.EndsWith("\\\""))