// Token: 0x0600019F RID: 415 RVA: 0x00007578 File Offset: 0x00005778 private bool IsQuotingRequired(MimeString mimeStr, bool allowUTF8) { AddressItem.WriteState writeState = AddressItem.WriteState.Begin; MimeString mimeString = new MimeString(AddressItem.WordBreakBytes, 0, AddressItem.WordBreakBytes.Length); int num; int num2; byte[] data = mimeStr.GetData(out num, out num2); while (num2 != 0) { switch (writeState) { case AddressItem.WriteState.Begin: { int num3 = 0; int num4 = MimeScan.FindEndOf(MimeScan.Token.Atom, data, num, num2, out num3, allowUTF8); if (num4 == 0) { if (num2 <= 3 || num != 0 || !mimeString.HasPrefixEq(data, 0, 3)) { return(true); } num += 3; num2 -= 3; writeState = AddressItem.WriteState.Begin; } else { num += num4; num2 -= num4; writeState = AddressItem.WriteState.Atom; } break; } case AddressItem.WriteState.Atom: if ((num2 < 2 || data[num] != 32) && (num2 < 1 || data[num] != 46)) { return(true); } num++; num2--; writeState = AddressItem.WriteState.Begin; break; } } return(false); }
// Token: 0x06000325 RID: 805 RVA: 0x00011B14 File Offset: 0x0000FD14 private static bool IsUUEncodeBegin(byte[] data, int line, int nextNL) { MimeString mimeString = new MimeString(data, line, nextNL - line); if (mimeString.Length < 13 || !mimeString.HasPrefixEq(MimeParser.UUBegin, 0, 6)) { return(false); } int num = 6; while (num < 10 && 48 <= mimeString[num] && 55 >= mimeString[num]) { num++; } return(num != 6 && 32 == mimeString[num]); }
// Token: 0x06000326 RID: 806 RVA: 0x00011B84 File Offset: 0x0000FD84 private static bool IsUUEncodeEnd(byte[] data, int line, int nextNL) { MimeString mimeString = new MimeString(data, line, nextNL - line); return(mimeString.Length >= 3 && mimeString.HasPrefixEq(MimeParser.UUEnd, 0, 3)); }