<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__GetPrivateKeyRegex_5
sealed class <RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__GetPrivateKeyRegex_5 : Regex
using System.CodeDom.Compiler;
using System.Collections;
using System.Runtime.CompilerServices;
namespace System.Text.RegularExpressions.Generated
{
[GeneratedCode("System.Text.RegularExpressions.Generator", "8.0.12.16413")]
internal sealed class <RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__GetPrivateKeyRegex_5 : Regex
{
private sealed class RunnerFactory : RegexRunnerFactory
{
private sealed class Runner : RegexRunner
{
protected override void Scan(ReadOnlySpan<char> inputSpan)
{
while (TryFindNextPossibleStartingPosition(inputSpan) && !TryMatchAtCurrentPosition(inputSpan) && runtextpos != inputSpan.Length) {
runtextpos++;
if (<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.s_hasTimeout)
CheckTimeout();
}
}
private bool TryFindNextPossibleStartingPosition(ReadOnlySpan<char> inputSpan)
{
int num = runtextpos;
if (num <= inputSpan.Length - 18) {
if (num <= 0 || inputSpan[num - 1] == '\n')
goto IL_005a;
int num2 = inputSpan.Slice(num).IndexOf('\n');
if ((uint)num2 <= inputSpan.Length - num - 1) {
num += num2 + 1;
if (num <= inputSpan.Length - 18)
goto IL_005a;
}
}
goto IL_0079;
IL_005a:
int num3 = inputSpan.Slice(num).IndexOf('-');
if (num3 >= 0) {
runtextpos = num + num3;
return true;
}
goto IL_0079;
IL_0079:
runtextpos = inputSpan.Length;
return false;
}
private bool TryMatchAtCurrentPosition(ReadOnlySpan<char> inputSpan)
{
int runtextpos = base.runtextpos;
int start = runtextpos;
int num = 0;
int num2 = 0;
int num3 = 0;
int num4 = 0;
int num5 = 0;
int arg = 0;
int arg2 = 0;
int arg3 = 0;
int arg4 = 0;
int num6 = 0;
int num7 = 0;
int num8 = 0;
int num9 = 0;
int num10 = 0;
int pos = 0;
ReadOnlySpan<char> span = inputSpan.Slice(runtextpos);
if (runtextpos > 0 && inputSpan[runtextpos - 1] != '\n') {
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(0);
return false;
}
int num11 = span.IndexOfAnyExcept('-');
if (num11 < 0)
num11 = span.Length;
if (num11 == 0) {
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(0);
return false;
}
span = span.Slice(num11);
runtextpos += num11;
int num12 = span.IndexOfAnyExcept(' ');
if (num12 < 0)
num12 = span.Length;
span = span.Slice(num12);
runtextpos += num12;
if (!span.StartsWith("BEGIN ")) {
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(0);
return false;
}
runtextpos += 6;
span = inputSpan.Slice(runtextpos);
num = runtextpos;
num4 = runtextpos;
int i;
for (i = 0; (uint)i < (uint)span.Length && <RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.IsWordChar(span[i]); i++) {
}
if (i == 0) {
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(0);
return false;
}
span = span.Slice(i);
runtextpos += i;
num5 = runtextpos;
num4++;
while (true) {
num3 = Crawlpos();
num6 = 0;
while (true) {
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPush(ref runstack, ref pos, Crawlpos(), runtextpos);
num6++;
if (span.IsEmpty || span[0] != ' ')
break;
runtextpos++;
span = inputSpan.Slice(runtextpos);
int j;
for (j = 0; (uint)j < (uint)span.Length && <RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.IsWordChar(span[j]); j++) {
}
if (j == 0)
break;
span = span.Slice(j);
runtextpos += j;
}
while (--num6 >= 0) {
runtextpos = runstack[--pos];
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(runstack[--pos]);
span = inputSpan.Slice(runtextpos);
Capture(1, num, runtextpos);
int num13 = span.IndexOfAnyExcept(' ');
if (num13 < 0)
num13 = span.Length;
span = span.Slice(num13);
runtextpos += num13;
int num14 = span.IndexOfAnyExcept('-');
if (num14 < 0)
num14 = span.Length;
if (num14 != 0) {
span = span.Slice(num14);
runtextpos += num14;
if (!span.IsEmpty && span[0] == '\r') {
span = span.Slice(1);
runtextpos++;
}
if (!span.IsEmpty && span[0] == '\n') {
runtextpos++;
span = inputSpan.Slice(runtextpos);
num7 = 0;
while (true) {
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPush(ref runstack, ref pos, Crawlpos(), runtextpos);
num7++;
int arg5 = runtextpos;
int arg6 = Crawlpos();
if (span.StartsWith("Proc-Type: 4,ENCRYPTED")) {
if ((uint)span.Length > 22 && span[22] == '\r') {
span = span.Slice(1);
runtextpos++;
}
if (span.Slice(22).StartsWith("\nDEK-Info: ")) {
runtextpos += 33;
span = inputSpan.Slice(runtextpos);
int start2 = runtextpos;
int num15 = span.IndexOfAnyExcept(<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.s_ascii_20FF03FEFFFF0700000000);
if (num15 < 0)
num15 = span.Length;
if (num15 != 0) {
span = span.Slice(num15);
runtextpos += num15;
Capture(2, start2, runtextpos);
if (!span.IsEmpty && span[0] == ',') {
runtextpos++;
span = inputSpan.Slice(runtextpos);
int start3 = runtextpos;
int num16 = span.IndexOfAnyExcept(<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.s_asciiHexDigits);
if (num16 < 0)
num16 = span.Length;
if (num16 != 0) {
span = span.Slice(num16);
runtextpos += num16;
Capture(3, start3, runtextpos);
if (!span.IsEmpty && span[0] == '\r') {
span = span.Slice(1);
runtextpos++;
}
if (!span.IsEmpty && span[0] == '\n') {
if ((uint)span.Length > 1 && span[1] == '\r') {
span = span.Slice(1);
runtextpos++;
}
if ((uint)span.Length >= 2 && span[1] == '\n') {
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPush(ref runstack, ref pos, 0, arg5, arg6);
runtextpos += 2;
span = inputSpan.Slice(runtextpos);
goto IL_06d8;
}
}
}
}
}
}
}
goto IL_04b4;
IL_05b1:
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(runstack[--pos]);
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPop(runstack, ref pos, out arg4, out arg3);
if (<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.s_hasTimeout)
CheckTimeout();
if (arg3 < arg4) {
runtextpos = --arg4;
span = inputSpan.Slice(runtextpos);
goto IL_05fe;
}
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(runstack[--pos]);
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPop(runstack, ref pos, out arg2, out arg);
if (<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.s_hasTimeout)
CheckTimeout();
if (arg < arg2) {
runtextpos = --arg2;
span = inputSpan.Slice(runtextpos);
goto IL_0567;
}
goto IL_06e1;
IL_04b4:
runtextpos = arg5;
span = inputSpan.Slice(runtextpos);
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(arg6);
if (span.StartsWith("Comment: ")) {
runtextpos += 9;
span = inputSpan.Slice(runtextpos);
arg = runtextpos;
if (!span.IsEmpty && span[0] == '"') {
span = span.Slice(1);
runtextpos++;
}
arg2 = runtextpos;
goto IL_0567;
}
goto IL_06e1;
IL_0567:
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPush(ref runstack, ref pos, arg, arg2, Crawlpos());
arg3 = runtextpos;
int num17 = span.IndexOfAny('\n', '\r');
if (num17 < 0)
num17 = span.Length;
span = span.Slice(num17);
runtextpos += num17;
arg4 = runtextpos;
goto IL_05fe;
IL_06d8:
if (num7 == 0)
continue;
goto IL_0736;
IL_0736:
num2 = runtextpos;
num8 = 0;
while (true) {
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPush(ref runstack, ref pos, Crawlpos(), runtextpos);
num8++;
int k;
for (k = 0; k < 80 && (uint)k < (uint)span.Length; k++) {
char c;
if ((c = span[k]) >= '{')
break;
if ((" 蠀⏿߿߿"[(int)c >> 4] & (1 << (c & 15))) == 0)
break;
}
if (k == 0)
break;
span = span.Slice(k);
runtextpos += k;
if (!span.IsEmpty && span[0] == '\r') {
span = span.Slice(1);
runtextpos++;
}
if (span.IsEmpty || span[0] != '\n')
break;
runtextpos++;
span = inputSpan.Slice(runtextpos);
}
while (--num8 >= 0) {
runtextpos = runstack[--pos];
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(runstack[--pos]);
span = inputSpan.Slice(runtextpos);
if (num8 == 0)
break;
Capture(4, num2, runtextpos);
num9 = 0;
while (true) {
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPush(ref runstack, ref pos, Crawlpos(), runtextpos);
num9++;
if (!span.IsEmpty && span[0] == '\r') {
span = span.Slice(1);
runtextpos++;
}
if (span.IsEmpty || span[0] != '\n')
goto IL_08b2;
runtextpos++;
span = inputSpan.Slice(runtextpos);
if (num9 == 0)
continue;
goto IL_08ec;
IL_08b2:
if (--num9 < 0)
break;
runtextpos = runstack[--pos];
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(runstack[--pos]);
span = inputSpan.Slice(runtextpos);
goto IL_08ec;
IL_08ec:
int num18 = span.IndexOfAnyExcept('-');
if (num18 < 0)
num18 = span.Length;
if (num18 != 0) {
span = span.Slice(num18);
runtextpos += num18;
int num19 = span.IndexOfAnyExcept(' ');
if (num19 < 0)
num19 = span.Length;
span = span.Slice(num19);
runtextpos += num19;
if (span.StartsWith("END ")) {
runtextpos += 4;
span = inputSpan.Slice(runtextpos);
if (IsMatched(1)) {
num10 = MatchLength(1);
if (span.Length >= num10 && inputSpan.Slice(MatchIndex(1), num10).SequenceEqual(span.Slice(0, num10))) {
runtextpos += num10;
span = inputSpan.Slice(runtextpos);
int num20 = span.IndexOfAnyExcept(' ');
if (num20 < 0)
num20 = span.Length;
span = span.Slice(num20);
runtextpos += num20;
int num21 = span.IndexOfAnyExcept('-');
if (num21 < 0)
num21 = span.Length;
if (num21 != 0) {
span = span.Slice(num21);
Capture(0, start, base.runtextpos = runtextpos + num21);
return true;
}
}
}
}
}
goto IL_08b2;
}
}
if (<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.s_hasTimeout)
CheckTimeout();
if (num7 == 0)
break;
if (<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.s_hasTimeout)
CheckTimeout();
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPop(runstack, ref pos, out arg6, out arg5);
switch (runstack[--pos]) {
case 0:
break;
case 1:
goto IL_05b1;
default:
goto IL_06d8;
}
goto IL_04b4;
IL_06e1:
if (--num7 < 0)
break;
runtextpos = runstack[--pos];
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(runstack[--pos]);
span = inputSpan.Slice(runtextpos);
goto IL_0736;
IL_05fe:
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPush(ref runstack, ref pos, arg3, arg4, Crawlpos());
if (!span.IsEmpty && span[0] == '"') {
span = span.Slice(1);
runtextpos++;
}
if (!span.IsEmpty && span[0] == '\r') {
span = span.Slice(1);
runtextpos++;
}
if (span.IsEmpty || span[0] != '\n')
goto IL_05b1;
<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.StackPush(ref runstack, ref pos, 1, arg5, arg6);
runtextpos++;
span = inputSpan.Slice(runtextpos);
goto IL_06d8;
}
}
}
}
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(num3);
if (<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.s_hasTimeout)
CheckTimeout();
if (num4 >= num5)
break;
runtextpos = --num5;
span = inputSpan.Slice(runtextpos);
}
<TryMatchAtCurrentPosition>g__UncaptureUntil|2_0(0);
return false;
}
}
[NullableContext(1)]
protected override RegexRunner CreateInstance()
{
return new Runner();
}
}
[Nullable(1)]
internal static readonly <RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__GetPrivateKeyRegex_5 Instance = new <RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__GetPrivateKeyRegex_5();
private <RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__GetPrivateKeyRegex_5()
{
pattern = "^-+ *BEGIN (?<keyName>\\w+( \\w+)*) *-+\\r?\\n((Proc-Type: 4,ENCRYPTED\\r?\\nDEK-Info: (?<cipherName>[A-Z0-9-]+),(?<salt>[a-fA-F0-9]+)\\r?\\n\\r?\\n)|(Comment: \"?[^\\r\\n]*\"?\\r?\\n))?(?<data>([a-zA-Z0-9/+=]{1,80}\\r?\\n)+)(\\r?\\n)?-+ *END \\k<keyName> *-+";
roptions = (RegexOptions.Multiline | RegexOptions.ExplicitCapture);
Regex.ValidateMatchTimeout(<RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.s_defaultTimeout);
internalMatchTimeout = <RegexGenerator_g>FF02E8C37B99F41659B0026E2B1005AC8CE9F303D9F9E176C498C4EA009567923__Utilities.s_defaultTimeout;
factory = new RunnerFactory();
base.CapNames = new Hashtable {
{
"0",
0
},
{
"cipherName",
2
},
{
"data",
4
},
{
"keyName",
1
},
{
"salt",
3
}
};
capslist = new string[5] {
"0",
"keyName",
"cipherName",
"salt",
"data"
};
capsize = 5;
}
}
}