private int method_16(int A_0, int A_1, int A_2, Class939 A_3) { int num = -1; if (A_1 == A_2) { return(A_0); } if (A_1 < A_2) { for (int j = (A_0 >= 0) ? A_3.method_2(A_0) : A_0; j >= 0; j = A_3.method_2(A_0)) { A_0 = j; } int num3 = A_3.method_4(A_0, A_2 - A_1); if (A_0 < 0) { num = num3; } return(num); } for (int i = 0; i < (A_2 - 1); i++) { A_0 = A_3.method_2(A_0); } A_3.method_3(A_0); return(num); }
private void method_14(Stream A_0, int A_1, Stream A_2, Class939 A_3) { int num3; int num = 3; if (A_2 == null) { throw new ArgumentNullException(BookmarkStart.b("娨弪弬䨮倰帲", num)); } long num2 = A_3.method_16(A_1); int count = A_3.method_0(); byte[] buffer = new byte[count]; long position = A_2.Position; A_2.Position = 0L; while ((num3 = A_2.Read(buffer, 0, count)) > 0) { A_0.Position = num2; A_0.Write(buffer, 0, num3); A_1 = A_3.method_2(A_1); if (A_1 < 0) { break; } num2 = A_3.method_16(A_1); } A_2.Position = position; }