rt4-client/client/src/main/java/rt4/ArrayUtils.java

457 lines
14 KiB
Java

package rt4;
import org.openrs2.deob.annotation.OriginalArg;
import org.openrs2.deob.annotation.OriginalMember;
import org.openrs2.deob.annotation.Pc;
public final class ArrayUtils {
@OriginalMember(owner = "client!kg", name = "a", descriptor = "([JI[JII)V")
public static void copy(@OriginalArg(0) long[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) long[] arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
@Pc(15) int local15;
if (arg0 == arg2) {
if (arg1 == arg3) {
return;
}
if (arg3 > arg1 && arg3 < arg1 + arg4) {
local15 = arg4 - 1;
@Pc(19) int local19 = arg1 + local15;
@Pc(23) int local23 = arg3 + local15;
local15 = local19 - local15;
local15 += 3;
while (local19 >= local15) {
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
}
local15 -= 3;
while (local19 >= local15) {
arg2[local23--] = arg0[local19--];
}
return;
}
}
local15 = arg4 + arg1;
@Pc(83) int local83 = local15 - 3;
while (arg1 < local83) {
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
}
local15 = local83 + 3;
while (arg1 < local15) {
arg2[arg3++] = arg0[arg1++];
}
}
@OriginalMember(owner = "client!kg", name = "a", descriptor = "([II[III)V")
public static void copy(@OriginalArg(0) int[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int[] arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
@Pc(15) int local15;
if (arg0 == arg2) {
if (arg1 == arg3) {
return;
}
if (arg3 > arg1 && arg3 < arg1 + arg4) {
local15 = arg4 - 1;
@Pc(19) int local19 = arg1 + local15;
@Pc(23) int local23 = arg3 + local15;
local15 = local19 - local15;
local15 += 7;
while (local19 >= local15) {
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
}
local15 -= 7;
while (local19 >= local15) {
arg2[local23--] = arg0[local19--];
}
return;
}
}
local15 = arg4 + arg1;
@Pc(115) int local115 = local15 - 7;
while (arg1 < local115) {
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
}
local15 = local115 + 7;
while (arg1 < local15) {
arg2[arg3++] = arg0[arg1++];
}
}
@OriginalMember(owner = "client!kg", name = "a", descriptor = "([IIII)V")
public static void fill(@OriginalArg(0) int[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) int arg2, @OriginalArg(3) int arg3) {
@Pc(5) int local5 = arg1 + arg2 - 7;
while (arg1 < local5) {
arg0[arg1++] = arg3;
arg0[arg1++] = arg3;
arg0[arg1++] = arg3;
arg0[arg1++] = arg3;
arg0[arg1++] = arg3;
arg0[arg1++] = arg3;
arg0[arg1++] = arg3;
arg0[arg1++] = arg3;
}
local5 += 7;
while (arg1 < local5) {
arg0[arg1++] = arg3;
}
}
@OriginalMember(owner = "client!kg", name = "a", descriptor = "([FI[FII)V")
public static void copy(@OriginalArg(0) float[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) float[] arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
if (arg0 == arg2) {
return;
}
@Pc(114) int local114 = arg4;
@Pc(115) int local115 = local114 - 7;
while (arg1 < local115) {
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
}
local114 = local115 + 7;
while (arg1 < local114) {
arg2[arg3++] = arg0[arg1++];
}
}
@OriginalMember(owner = "client!kg", name = "a", descriptor = "([SI[SII)V")
public static void copy(@OriginalArg(0) short[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) short[] arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
@Pc(15) int local15;
if (arg0 == arg2) {
if (arg1 == arg3) {
return;
}
if (arg3 > arg1 && arg3 < arg1 + arg4) {
local15 = arg4 - 1;
@Pc(19) int local19 = arg1 + local15;
@Pc(23) int local23 = arg3 + local15;
local15 = local19 - local15;
local15 += 7;
while (local19 >= local15) {
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
}
local15 -= 7;
while (local19 >= local15) {
arg2[local23--] = arg0[local19--];
}
return;
}
}
local15 = arg4 + arg1;
@Pc(115) int local115 = local15 - 7;
while (arg1 < local115) {
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
}
local15 = local115 + 7;
while (arg1 < local15) {
arg2[arg3++] = arg0[arg1++];
}
}
@OriginalMember(owner = "client!kg", name = "a", descriptor = "([Ljava/lang/Object;I[Ljava/lang/Object;II)V")
public static void copy(@OriginalArg(0) Object[] arg0, @OriginalArg(1) int arg1, @OriginalArg(2) Object[] arg2, @OriginalArg(3) int arg3, @OriginalArg(4) int arg4) {
@Pc(15) int local15;
if (arg0 == arg2) {
if (arg1 == arg3) {
return;
}
if (arg3 > arg1 && arg3 < arg1 + arg4) {
local15 = arg4 - 1;
@Pc(19) int local19 = arg1 + local15;
@Pc(23) int local23 = arg3 + local15;
local15 = local19 - local15;
local15 += 7;
while (local19 >= local15) {
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
arg2[local23--] = arg0[local19--];
}
local15 -= 7;
while (local19 >= local15) {
arg2[local23--] = arg0[local19--];
}
return;
}
}
local15 = arg4 + arg1;
@Pc(115) int local115 = local15 - 7;
while (arg1 < local115) {
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
arg2[arg3++] = arg0[arg1++];
}
local15 = local115 + 7;
while (arg1 < local15) {
arg2[arg3++] = arg0[arg1++];
}
}
@OriginalMember(owner = "client!kg", name = "a", descriptor = "([III)V")
public static void clear(@OriginalArg(0) int[] dest, @OriginalArg(1) int off, @OriginalArg(2) int length) {
@Pc(5) int len = length - 7;
while (off < len) {
dest[off++] = 0;
dest[off++] = 0;
dest[off++] = 0;
dest[off++] = 0;
dest[off++] = 0;
dest[off++] = 0;
dest[off++] = 0;
dest[off++] = 0;
}
len += 7;
while (off < len) {
dest[off++] = 0;
}
}
@OriginalMember(owner = "client!nk", name = "a", descriptor = "(Z[J[I)V")
public static void sort(@OriginalArg(1) long[] arg0, @OriginalArg(2) int[] arg1) {
sort(arg0, 0, arg0.length - 1, arg1);
}
@OriginalMember(owner = "client!gj", name = "a", descriptor = "([JII[II)V")
public static void sort(@OriginalArg(0) long[] keys, @OriginalArg(1) int lo, @OriginalArg(2) int hi, @OriginalArg(3) int[] values) {
if (lo >= hi) {
return;
}
@Pc(20) int i = lo;
@Pc(26) int mid = (hi + lo) / 2;
@Pc(30) long pivotKey = keys[mid];
keys[mid] = keys[hi];
keys[hi] = pivotKey;
@Pc(44) int pivotValue = values[mid];
values[mid] = values[hi];
values[hi] = pivotValue;
for (@Pc(56) int j = lo; j < hi; j++) {
if (keys[j] < pivotKey + (long) (j & 0x1)) {
@Pc(76) long key = keys[j];
keys[j] = keys[i];
keys[i] = key;
@Pc(90) int value = values[j];
values[j] = values[i];
values[i++] = value;
}
}
keys[hi] = keys[i];
keys[i] = pivotKey;
values[hi] = values[i];
values[i] = pivotValue;
sort(keys, lo, i - 1, values);
sort(keys, i + 1, hi, values);
}
@OriginalMember(owner = "client!ja", name = "a", descriptor = "([II)[I")
public static int[] copyOfNullable(@OriginalArg(0) int[] arg0) {
if (arg0 == null) {
return null;
} else {
@Pc(18) int[] local18 = new int[arg0.length];
copy(arg0, 0, local18, 0, arg0.length);
return local18;
}
}
@OriginalMember(owner = "client!vg", name = "a", descriptor = "(I[S)[S")
public static short[] copyOfNullable(@OriginalArg(1) short[] arg0) {
if (arg0 == null) {
return null;
} else {
@Pc(19) short[] local19 = new short[arg0.length];
copy(arg0, 0, local19, 0, arg0.length);
return local19;
}
}
@OriginalMember(owner = "client!td", name = "a", descriptor = "([SI)[S")
public static short[] copyOf(@OriginalArg(0) short[] arg0, @OriginalArg(1) int arg1) {
@Pc(2) short[] local2 = new short[arg1];
copy(arg0, 0, local2, 0, arg1);
return local2;
}
@OriginalMember(owner = "client!td", name = "a", descriptor = "([FI)[F")
public static float[] copyOf(@OriginalArg(0) float[] arg0, @OriginalArg(1) int arg1) {
@Pc(2) float[] local2 = new float[arg1];
copy(arg0, 0, local2, 0, arg1);
return local2;
}
@OriginalMember(owner = "client!kd", name = "a", descriptor = "([IIIII)V")
public static void fillRange(@OriginalArg(0) int[] arg0, @OriginalArg(1) int arg1, @OriginalArg(3) int arg2, @OriginalArg(4) int arg3) {
arg1--;
@Pc(14) int local14 = arg2 - 1;
@Pc(17) int local17 = local14 - 7;
while (local17 > arg1) {
@Pc(22) int local22 = arg1 + 1;
arg0[local22] = arg3;
@Pc(27) int local27 = local22 + 1;
arg0[local27] = arg3;
@Pc(32) int local32 = local27 + 1;
arg0[local32] = arg3;
@Pc(37) int local37 = local32 + 1;
arg0[local37] = arg3;
@Pc(42) int local42 = local37 + 1;
arg0[local42] = arg3;
@Pc(47) int local47 = local42 + 1;
arg0[local47] = arg3;
@Pc(52) int local52 = local47 + 1;
arg0[local52] = arg3;
arg1 = local52 + 1;
arg0[arg1] = arg3;
}
while (local14 > arg1) {
arg1++;
arg0[arg1] = arg3;
}
}
@OriginalMember(owner = "client!ec", name = "a", descriptor = "([Ljava/lang/Object;I[III)V")
public static void sort(@OriginalArg(0) Object[] values, @OriginalArg(1) int hi, @OriginalArg(2) int[] keys, @OriginalArg(4) int lo) {
if (lo >= hi) {
return;
}
@Pc(11) int mid = (lo + hi) / 2;
@Pc(15) int pivotKey = keys[mid];
@Pc(17) int i = lo;
keys[mid] = keys[hi];
keys[hi] = pivotKey;
@Pc(31) Object pivotValue = values[mid];
values[mid] = values[hi];
values[hi] = pivotValue;
for (@Pc(43) int j = lo; j < hi; j++) {
if ((j & 0x1) + pivotKey > keys[j]) {
@Pc(67) int key = keys[j];
keys[j] = keys[i];
keys[i] = key;
@Pc(81) Object value = values[j];
values[j] = values[i];
values[i++] = value;
}
}
keys[hi] = keys[i];
keys[i] = pivotKey;
values[hi] = values[i];
values[i] = pivotValue;
sort(values, i - 1, keys, lo);
sort(values, hi, keys, i + 1);
}
@OriginalMember(owner = "client!oi", name = "a", descriptor = "(I[I[Ljava/lang/Object;)V")
public static void sort(@OriginalArg(1) int[] arg0, @OriginalArg(2) Object[] arg1) {
sort(arg1, arg0.length - 1, arg0, 0);
}
@OriginalMember(owner = "client!nj", name = "a", descriptor = "(IIZ[I[I)V")
public static void sort(@OriginalArg(0) int lo, @OriginalArg(1) int hi, @OriginalArg(3) int[] keys, @OriginalArg(4) int[] values) {
if (lo >= hi) {
return;
}
@Pc(22) int mid = (hi + lo) / 2;
@Pc(24) int i = lo;
@Pc(28) int pivotKey = keys[mid];
keys[mid] = keys[hi];
keys[hi] = pivotKey;
@Pc(42) int pivotValue = values[mid];
values[mid] = values[hi];
values[hi] = pivotValue;
for (@Pc(54) int j = lo; j < hi; j++) {
if (keys[j] > (j & 0x1) + pivotKey) {
@Pc(79) int key = keys[j];
keys[j] = keys[i];
keys[i] = key;
@Pc(93) int value = values[j];
values[j] = values[i];
values[i++] = value;
}
}
keys[hi] = keys[i];
keys[i] = pivotKey;
values[hi] = values[i];
values[i] = pivotValue;
sort(lo, i - 1, keys, values);
sort(i + 1, hi, keys, values);
}
@OriginalMember(owner = "client!sh", name = "a", descriptor = "(I[JII[Ljava/lang/Object;)V")
public static void sort(@OriginalArg(0) int hi, @OriginalArg(1) long[] keys, @OriginalArg(3) int lo, @OriginalArg(4) Object[] values) {
if (lo >= hi) {
return;
}
@Pc(16) int i = lo;
@Pc(23) int mid = (lo + hi) / 2;
@Pc(27) long pivotKey = keys[mid];
keys[mid] = keys[hi];
keys[hi] = pivotKey;
@Pc(41) Object pivotValue = values[mid];
values[mid] = values[hi];
values[hi] = pivotValue;
for (@Pc(53) int j = lo; j < hi; j++) {
if (pivotKey + (long) (j & 0x1) > keys[j]) {
@Pc(72) long key = keys[j];
keys[j] = keys[i];
keys[i] = key;
@Pc(86) Object value = values[j];
values[j] = values[i];
values[i++] = value;
}
}
keys[hi] = keys[i];
keys[i] = pivotKey;
values[hi] = values[i];
values[i] = pivotValue;
sort(i - 1, keys, lo, values);
sort(hi, keys, i + 1, values);
}
@OriginalMember(owner = "client!ac", name = "a", descriptor = "([J[Ljava/lang/Object;I)V")
public static void sort(@OriginalArg(0) long[] arg0, @OriginalArg(1) Object[] arg1) {
sort(arg0.length - 1, arg0, 0, arg1);
}
}