This commit is contained in:
zeruth
2019-06-16 22:31:48 -04:00
parent 2e873af898
commit 39a9ae35ab
218 changed files with 16857 additions and 16879 deletions

View File

@@ -37,10 +37,6 @@ public final class IndexStore {
@Export("maxEntrySize")
int maxEntrySize;
static {
IndexStore_buffer = new byte[520];
}
@ObfuscatedSignature(
signature = "(ILdy;Ldy;I)V"
)
@@ -62,71 +58,82 @@ public final class IndexStore {
@Export("read")
public byte[] read(int var1) {
BufferedFile var2 = this.dataFile;
BufferedFile var3 = this.dataFile;
synchronized(this.dataFile) {
byte[] var10000;
try {
Object var10000;
Object var4;
if(this.indexFile.length() < (long)(var1 * 6 + 6)) {
var10000 = null;
return (byte[])var10000;
} else {
this.indexFile.seek((long)(var1 * 6));
this.indexFile.read(IndexStore_buffer, 0, 6);
int var3 = ((IndexStore_buffer[0] & 255) << 16) + (IndexStore_buffer[2] & 255) + ((IndexStore_buffer[1] & 255) << 8);
int var4 = (IndexStore_buffer[5] & 255) + ((IndexStore_buffer[3] & 255) << 16) + ((IndexStore_buffer[4] & 255) << 8);
if(var3 < 0 || var3 > this.maxEntrySize) {
var10000 = null;
return (byte[])var10000;
} else if(var4 <= 0 || (long)var4 > this.dataFile.length() / 520L) {
var10000 = null;
return (byte[])var10000;
} else {
byte[] var5 = new byte[var3];
int var6 = 0;
int var7 = 0;
var4 = null;
var10000 = (byte[])((byte[])var4);
return var10000;
}
while(var6 < var3) {
if(var4 == 0) {
var10000 = null;
return (byte[])var10000;
}
this.indexFile.seek((long)(var1 * 6));
this.indexFile.read(IndexStore_buffer, 0, 6);
int var5 = ((IndexStore_buffer[0] & 255) << 16) + (IndexStore_buffer[2] & 255) + ((IndexStore_buffer[1] & 255) << 8);
int var6 = (IndexStore_buffer[5] & 255) + ((IndexStore_buffer[3] & 255) << 16) + ((IndexStore_buffer[4] & 255) << 8);
if(var5 < 0 || var5 > this.maxEntrySize) {
var4 = null;
var10000 = (byte[])((byte[])var4);
return var10000;
}
this.dataFile.seek((long)(var4 * 520));
int var8 = var3 - var6;
if(var8 > 512) {
var8 = 512;
}
if(var6 > 0 && (long)var6 <= this.dataFile.length() / 520L) {
byte[] var7 = new byte[var5];
int var8 = 0;
int var9 = 0;
this.dataFile.read(IndexStore_buffer, 0, var8 + 8);
int var9 = (IndexStore_buffer[1] & 255) + ((IndexStore_buffer[0] & 255) << 8);
int var10 = (IndexStore_buffer[3] & 255) + ((IndexStore_buffer[2] & 255) << 8);
int var11 = ((IndexStore_buffer[5] & 255) << 8) + ((IndexStore_buffer[4] & 255) << 16) + (IndexStore_buffer[6] & 255);
int var12 = IndexStore_buffer[7] & 255;
if(var9 == var1 && var7 == var10 && var12 == this.index) {
if(var11 >= 0 && (long)var11 <= this.dataFile.length() / 520L) {
for(int var13 = 0; var13 < var8; ++var13) {
var5[var6++] = IndexStore_buffer[var13 + 8];
}
var4 = var11;
++var7;
continue;
}
var10000 = null;
return (byte[])var10000;
}
var10000 = null;
return (byte[])var10000;
while(var8 < var5) {
if(var6 == 0) {
var4 = null;
var10000 = (byte[])((byte[])var4);
return var10000;
}
byte[] var18 = var5;
return var18;
this.dataFile.seek((long)(var6 * 520));
int var10 = var5 - var8;
if(var10 > 512) {
var10 = 512;
}
this.dataFile.read(IndexStore_buffer, 0, var10 + 8);
int var11 = (IndexStore_buffer[1] & 255) + ((IndexStore_buffer[0] & 255) << 8);
int var12 = (IndexStore_buffer[3] & 255) + ((IndexStore_buffer[2] & 255) << 8);
int var13 = ((IndexStore_buffer[5] & 255) << 8) + ((IndexStore_buffer[4] & 255) << 16) + (IndexStore_buffer[6] & 255);
int var14 = IndexStore_buffer[7] & 255;
if(var11 == var1 && var9 == var12 && var14 == this.index) {
if(var13 >= 0 && (long)var13 <= this.dataFile.length() / 520L) {
for(int var15 = 0; var15 < var10; ++var15) {
var7[var8++] = IndexStore_buffer[var15 + 8];
}
var6 = var13;
++var9;
continue;
}
var4 = null;
var10000 = (byte[])((byte[])var4);
return var10000;
}
var4 = null;
var10000 = (byte[])((byte[])var4);
return var10000;
}
var10000 = var7;
return var10000;
}
} catch (IOException var16) {
var4 = null;
var10000 = (byte[])((byte[])var4);
} catch (IOException var17) {
return null;
}
return var10000;
}
}
@@ -138,14 +145,15 @@ public final class IndexStore {
@Export("write")
public boolean write(int var1, byte[] var2, int var3) {
BufferedFile var4 = this.dataFile;
BufferedFile var5 = this.dataFile;
synchronized(this.dataFile) {
if(var3 >= 0 && var3 <= this.maxEntrySize) {
boolean var5 = this.write0(var1, var2, var3, true);
if(!var5) {
var5 = this.write0(var1, var2, var3, false);
boolean var6 = this.write0(var1, var2, var3, true);
if(!var6) {
var6 = this.write0(var1, var2, var3, false);
}
return var5;
return var6;
} else {
throw new IllegalArgumentException();
}
@@ -160,110 +168,117 @@ public final class IndexStore {
@Export("write0")
boolean write0(int var1, byte[] var2, int var3, boolean var4) {
BufferedFile var5 = this.dataFile;
BufferedFile var6 = this.dataFile;
synchronized(this.dataFile) {
try {
int var6;
int var7;
boolean var8;
boolean var10000;
if(var4) {
if(this.indexFile.length() < (long)(var1 * 6 + 6)) {
var10000 = false;
var8 = false;
var10000 = var8;
return var10000;
}
this.indexFile.seek((long)(var1 * 6));
this.indexFile.read(IndexStore_buffer, 0, 6);
var6 = (IndexStore_buffer[5] & 255) + ((IndexStore_buffer[3] & 255) << 16) + ((IndexStore_buffer[4] & 255) << 8);
if(var6 <= 0 || (long)var6 > this.dataFile.length() / 520L) {
var10000 = false;
var7 = (IndexStore_buffer[5] & 255) + ((IndexStore_buffer[3] & 255) << 16) + ((IndexStore_buffer[4] & 255) << 8);
if(var7 <= 0 || (long)var7 > this.dataFile.length() / 520L) {
var8 = false;
var10000 = var8;
return var10000;
}
} else {
var6 = (int)((this.dataFile.length() + 519L) / 520L);
if(var6 == 0) {
var6 = 1;
var7 = (int)((this.dataFile.length() + 519L) / 520L);
if(var7 == 0) {
var7 = 1;
}
}
IndexStore_buffer[0] = (byte)(var3 >> 16);
IndexStore_buffer[1] = (byte)(var3 >> 8);
IndexStore_buffer[2] = (byte)var3;
IndexStore_buffer[3] = (byte)(var6 >> 16);
IndexStore_buffer[4] = (byte)(var6 >> 8);
IndexStore_buffer[5] = (byte)var6;
IndexStore_buffer[3] = (byte)(var7 >> 16);
IndexStore_buffer[4] = (byte)(var7 >> 8);
IndexStore_buffer[5] = (byte)var7;
this.indexFile.seek((long)(var1 * 6));
this.indexFile.write(IndexStore_buffer, 0, 6);
int var7 = 0;
int var8 = 0;
int var9 = 0;
int var10 = 0;
while(true) {
if(var7 < var3) {
label142: {
int var9 = 0;
int var14;
if(var9 < var3) {
label129: {
int var11 = 0;
int var12;
if(var4) {
this.dataFile.seek((long)(var6 * 520));
this.dataFile.seek((long)(var7 * 520));
try {
this.dataFile.read(IndexStore_buffer, 0, 8);
} catch (EOFException var16) {
break label142;
break label129;
}
var14 = (IndexStore_buffer[1] & 255) + ((IndexStore_buffer[0] & 255) << 8);
int var11 = (IndexStore_buffer[3] & 255) + ((IndexStore_buffer[2] & 255) << 8);
var9 = ((IndexStore_buffer[5] & 255) << 8) + ((IndexStore_buffer[4] & 255) << 16) + (IndexStore_buffer[6] & 255);
int var12 = IndexStore_buffer[7] & 255;
if(var14 != var1 || var11 != var8 || var12 != this.index) {
var10000 = false;
var12 = (IndexStore_buffer[1] & 255) + ((IndexStore_buffer[0] & 255) << 8);
int var13 = (IndexStore_buffer[3] & 255) + ((IndexStore_buffer[2] & 255) << 8);
var11 = ((IndexStore_buffer[5] & 255) << 8) + ((IndexStore_buffer[4] & 255) << 16) + (IndexStore_buffer[6] & 255);
int var14 = IndexStore_buffer[7] & 255;
if(var12 != var1 || var13 != var10 || var14 != this.index) {
var8 = false;
var10000 = var8;
return var10000;
}
if(var9 < 0 || (long)var9 > this.dataFile.length() / 520L) {
var10000 = false;
if(var11 < 0 || (long)var11 > this.dataFile.length() / 520L) {
var8 = false;
var10000 = var8;
return var10000;
}
}
if(var9 == 0) {
if(var11 == 0) {
var4 = false;
var9 = (int)((this.dataFile.length() + 519L) / 520L);
if(var9 == 0) {
++var9;
var11 = (int)((this.dataFile.length() + 519L) / 520L);
if(var11 == 0) {
++var11;
}
if(var6 == var9) {
++var9;
if(var7 == var11) {
++var11;
}
}
if(var3 - var7 <= 512) {
var9 = 0;
if(var3 - var9 <= 512) {
var11 = 0;
}
IndexStore_buffer[0] = (byte)(var1 >> 8);
IndexStore_buffer[1] = (byte)var1;
IndexStore_buffer[2] = (byte)(var8 >> 8);
IndexStore_buffer[3] = (byte)var8;
IndexStore_buffer[4] = (byte)(var9 >> 16);
IndexStore_buffer[5] = (byte)(var9 >> 8);
IndexStore_buffer[6] = (byte)var9;
IndexStore_buffer[2] = (byte)(var10 >> 8);
IndexStore_buffer[3] = (byte)var10;
IndexStore_buffer[4] = (byte)(var11 >> 16);
IndexStore_buffer[5] = (byte)(var11 >> 8);
IndexStore_buffer[6] = (byte)var11;
IndexStore_buffer[7] = (byte)this.index;
this.dataFile.seek((long)(var6 * 520));
this.dataFile.seek((long)(var7 * 520));
this.dataFile.write(IndexStore_buffer, 0, 8);
var14 = var3 - var7;
if(var14 > 512) {
var14 = 512;
var12 = var3 - var9;
if(var12 > 512) {
var12 = 512;
}
this.dataFile.write(var2, var7, var14);
var7 += var14;
var6 = var9;
++var8;
this.dataFile.write(var2, var9, var12);
var9 += var12;
var7 = var11;
++var10;
continue;
}
}
var10000 = true;
var8 = true;
var10000 = var8;
return var10000;
}
} catch (IOException var17) {
@@ -289,200 +304,195 @@ public final class IndexStore {
byte var11 = 0;
int var12 = 0;
class178.__fi_l[var11] = var0;
int var20 = var11 + 1;
int var13 = var11 + 1;
class178.__fi_e[var11] = var1;
int[][] var13 = var4.flags;
int[][] var14 = var4.flags;
while(true) {
label300:
while(true) {
int var14;
int var15;
int var16;
int var17;
int var18;
int var19;
do {
do {
do {
label277:
do {
if(var20 == var12) {
WidgetGroupParent.__bx_o = var5;
UrlRequester.__eo_u = var6;
return false;
}
label204:
while(var13 != var12) {
var5 = class178.__fi_l[var12];
var6 = class178.__fi_e[var12];
var12 = var12 + 1 & 4095;
int var19 = var5 - var9;
int var20 = var6 - var10;
int var15 = var5 - var4.xInset;
int var16 = var6 - var4.yInset;
if(var3.vmethod3644(var2, var5, var6, var4)) {
WidgetGroupParent.__bx_o = var5;
UrlRequester.__eo_u = var6;
return true;
}
var5 = class178.__fi_l[var12];
var6 = class178.__fi_e[var12];
var12 = var12 + 1 & 4095;
var18 = var5 - var9;
var19 = var6 - var10;
var14 = var5 - var4.xInset;
var15 = var6 - var4.yInset;
if(var3.vmethod3644(var2, var5, var6, var4)) {
WidgetGroupParent.__bx_o = var5;
UrlRequester.__eo_u = var6;
return true;
}
int var17 = class178.__fi_w[var19][var20] + 1;
int var18;
if(var19 > 0 && class178.__fi_q[var19 - 1][var20] == 0 && (var14[var15 - 1][var16] & 19136782) == 0 && (var14[var15 - 1][var16 + var2 - 1] & 19136824) == 0) {
var18 = 1;
var16 = class178.__fi_w[var18][var19] + 1;
if(var18 > 0 && class178.__fi_q[var18 - 1][var19] == 0 && (var13[var14 - 1][var15] & 19136782) == 0 && (var13[var14 - 1][var15 + var2 - 1] & 19136824) == 0) {
var17 = 1;
while(true) {
if(var18 >= var2 - 1) {
class178.__fi_l[var13] = var5 - 1;
class178.__fi_e[var13] = var6;
var13 = var13 + 1 & 4095;
class178.__fi_q[var19 - 1][var20] = 2;
class178.__fi_w[var19 - 1][var20] = var17;
break;
}
while(true) {
if(var17 >= var2 - 1) {
class178.__fi_l[var20] = var5 - 1;
class178.__fi_e[var20] = var6;
var20 = var20 + 1 & 4095;
class178.__fi_q[var18 - 1][var19] = 2;
class178.__fi_w[var18 - 1][var19] = var16;
break;
}
if((var14[var15 - 1][var18 + var16] & 19136830) != 0) {
break;
}
if((var13[var14 - 1][var17 + var15] & 19136830) != 0) {
break;
}
++var18;
}
}
++var17;
}
}
if(var19 < 128 - var2 && class178.__fi_q[var19 + 1][var20] == 0 && (var14[var15 + var2][var16] & 19136899) == 0 && (var14[var15 + var2][var16 + var2 - 1] & 19136992) == 0) {
var18 = 1;
if(var18 < 128 - var2 && class178.__fi_q[var18 + 1][var19] == 0 && (var13[var14 + var2][var15] & 19136899) == 0 && (var13[var14 + var2][var15 + var2 - 1] & 19136992) == 0) {
var17 = 1;
while(true) {
if(var18 >= var2 - 1) {
class178.__fi_l[var13] = var5 + 1;
class178.__fi_e[var13] = var6;
var13 = var13 + 1 & 4095;
class178.__fi_q[var19 + 1][var20] = 8;
class178.__fi_w[var19 + 1][var20] = var17;
break;
}
while(true) {
if(var17 >= var2 - 1) {
class178.__fi_l[var20] = var5 + 1;
class178.__fi_e[var20] = var6;
var20 = var20 + 1 & 4095;
class178.__fi_q[var18 + 1][var19] = 8;
class178.__fi_w[var18 + 1][var19] = var16;
break;
}
if((var14[var15 + var2][var16 + var18] & 19136995) != 0) {
break;
}
if((var13[var14 + var2][var15 + var17] & 19136995) != 0) {
break;
}
++var18;
}
}
++var17;
}
}
if(var20 > 0 && class178.__fi_q[var19][var20 - 1] == 0 && (var14[var15][var16 - 1] & 19136782) == 0 && (var14[var15 + var2 - 1][var16 - 1] & 19136899) == 0) {
var18 = 1;
if(var19 > 0 && class178.__fi_q[var18][var19 - 1] == 0 && (var13[var14][var15 - 1] & 19136782) == 0 && (var13[var14 + var2 - 1][var15 - 1] & 19136899) == 0) {
var17 = 1;
while(true) {
if(var18 >= var2 - 1) {
class178.__fi_l[var13] = var5;
class178.__fi_e[var13] = var6 - 1;
var13 = var13 + 1 & 4095;
class178.__fi_q[var19][var20 - 1] = 1;
class178.__fi_w[var19][var20 - 1] = var17;
break;
}
while(true) {
if(var17 >= var2 - 1) {
class178.__fi_l[var20] = var5;
class178.__fi_e[var20] = var6 - 1;
var20 = var20 + 1 & 4095;
class178.__fi_q[var18][var19 - 1] = 1;
class178.__fi_w[var18][var19 - 1] = var16;
break;
}
if((var14[var18 + var15][var16 - 1] & 19136911) != 0) {
break;
}
if((var13[var17 + var14][var15 - 1] & 19136911) != 0) {
break;
}
++var18;
}
}
++var17;
}
}
if(var20 < 128 - var2 && class178.__fi_q[var19][var20 + 1] == 0 && (var14[var15][var16 + var2] & 19136824) == 0 && (var14[var15 + var2 - 1][var16 + var2] & 19136992) == 0) {
var18 = 1;
if(var19 < 128 - var2 && class178.__fi_q[var18][var19 + 1] == 0 && (var13[var14][var15 + var2] & 19136824) == 0 && (var13[var14 + var2 - 1][var15 + var2] & 19136992) == 0) {
var17 = 1;
while(true) {
if(var18 >= var2 - 1) {
class178.__fi_l[var13] = var5;
class178.__fi_e[var13] = var6 + 1;
var13 = var13 + 1 & 4095;
class178.__fi_q[var19][var20 + 1] = 4;
class178.__fi_w[var19][var20 + 1] = var17;
break;
}
while(true) {
if(var17 >= var2 - 1) {
class178.__fi_l[var20] = var5;
class178.__fi_e[var20] = var6 + 1;
var20 = var20 + 1 & 4095;
class178.__fi_q[var18][var19 + 1] = 4;
class178.__fi_w[var18][var19 + 1] = var16;
break;
}
if((var14[var18 + var15][var16 + var2] & 19137016) != 0) {
break;
}
if((var13[var17 + var14][var15 + var2] & 19137016) != 0) {
break;
}
++var18;
}
}
++var17;
}
}
if(var19 > 0 && var20 > 0 && class178.__fi_q[var19 - 1][var20 - 1] == 0 && (var14[var15 - 1][var16 - 1] & 19136782) == 0) {
var18 = 1;
if(var18 > 0 && var19 > 0 && class178.__fi_q[var18 - 1][var19 - 1] == 0 && (var13[var14 - 1][var15 - 1] & 19136782) == 0) {
var17 = 1;
while(true) {
if(var18 >= var2) {
class178.__fi_l[var13] = var5 - 1;
class178.__fi_e[var13] = var6 - 1;
var13 = var13 + 1 & 4095;
class178.__fi_q[var19 - 1][var20 - 1] = 3;
class178.__fi_w[var19 - 1][var20 - 1] = var17;
break;
}
while(true) {
if(var17 >= var2) {
class178.__fi_l[var20] = var5 - 1;
class178.__fi_e[var20] = var6 - 1;
var20 = var20 + 1 & 4095;
class178.__fi_q[var18 - 1][var19 - 1] = 3;
class178.__fi_w[var18 - 1][var19 - 1] = var16;
break;
}
if((var14[var15 - 1][var18 + (var16 - 1)] & 19136830) != 0 || (var14[var18 + (var15 - 1)][var16 - 1] & 19136911) != 0) {
break;
}
if((var13[var14 - 1][var17 + (var15 - 1)] & 19136830) != 0 || (var13[var17 + (var14 - 1)][var15 - 1] & 19136911) != 0) {
break;
}
++var18;
}
}
++var17;
}
}
if(var19 < 128 - var2 && var20 > 0 && class178.__fi_q[var19 + 1][var20 - 1] == 0 && (var14[var15 + var2][var16 - 1] & 19136899) == 0) {
var18 = 1;
if(var18 < 128 - var2 && var19 > 0 && class178.__fi_q[var18 + 1][var19 - 1] == 0 && (var13[var14 + var2][var15 - 1] & 19136899) == 0) {
var17 = 1;
while(true) {
if(var18 >= var2) {
class178.__fi_l[var13] = var5 + 1;
class178.__fi_e[var13] = var6 - 1;
var13 = var13 + 1 & 4095;
class178.__fi_q[var19 + 1][var20 - 1] = 9;
class178.__fi_w[var19 + 1][var20 - 1] = var17;
break;
}
while(true) {
if(var17 >= var2) {
class178.__fi_l[var20] = var5 + 1;
class178.__fi_e[var20] = var6 - 1;
var20 = var20 + 1 & 4095;
class178.__fi_q[var18 + 1][var19 - 1] = 9;
class178.__fi_w[var18 + 1][var19 - 1] = var16;
break;
}
if((var14[var15 + var2][var18 + (var16 - 1)] & 19136995) != 0 || (var14[var18 + var15][var16 - 1] & 19136911) != 0) {
break;
}
if((var13[var14 + var2][var17 + (var15 - 1)] & 19136995) != 0 || (var13[var17 + var14][var15 - 1] & 19136911) != 0) {
break;
}
++var18;
}
}
++var17;
}
}
if(var19 > 0 && var20 < 128 - var2 && class178.__fi_q[var19 - 1][var20 + 1] == 0 && (var14[var15 - 1][var16 + var2] & 19136824) == 0) {
var18 = 1;
if(var18 > 0 && var19 < 128 - var2 && class178.__fi_q[var18 - 1][var19 + 1] == 0 && (var13[var14 - 1][var15 + var2] & 19136824) == 0) {
for(var17 = 1; var17 < var2; ++var17) {
if((var13[var14 - 1][var15 + var17] & 19136830) != 0 || (var13[var17 + (var14 - 1)][var15 + var2] & 19137016) != 0) {
continue label277;
}
}
while(true) {
if(var18 >= var2) {
class178.__fi_l[var13] = var5 - 1;
class178.__fi_e[var13] = var6 + 1;
var13 = var13 + 1 & 4095;
class178.__fi_q[var19 - 1][var20 + 1] = 6;
class178.__fi_w[var19 - 1][var20 + 1] = var17;
break;
}
class178.__fi_l[var20] = var5 - 1;
class178.__fi_e[var20] = var6 + 1;
var20 = var20 + 1 & 4095;
class178.__fi_q[var18 - 1][var19 + 1] = 6;
class178.__fi_w[var18 - 1][var19 + 1] = var16;
}
} while(var18 >= 128 - var2);
} while(var19 >= 128 - var2);
} while(class178.__fi_q[var18 + 1][var19 + 1] != 0);
} while((var13[var14 + var2][var15 + var2] & 19136992) != 0);
if((var14[var15 - 1][var16 + var18] & 19136830) != 0 || (var14[var18 + (var15 - 1)][var16 + var2] & 19137016) != 0) {
break;
}
for(var17 = 1; var17 < var2; ++var17) {
if((var13[var14 + var17][var15 + var2] & 19137016) != 0 || (var13[var14 + var2][var17 + var15] & 19136995) != 0) {
continue label300;
++var18;
}
}
if(var19 < 128 - var2 && var20 < 128 - var2 && class178.__fi_q[var19 + 1][var20 + 1] == 0 && (var14[var15 + var2][var16 + var2] & 19136992) == 0) {
for(var18 = 1; var18 < var2; ++var18) {
if((var14[var15 + var18][var16 + var2] & 19137016) != 0 || (var14[var15 + var2][var18 + var16] & 19136995) != 0) {
continue label204;
}
}
class178.__fi_l[var20] = var5 + 1;
class178.__fi_e[var20] = var6 + 1;
var20 = var20 + 1 & 4095;
class178.__fi_q[var18 + 1][var19 + 1] = 12;
class178.__fi_w[var18 + 1][var19 + 1] = var16;
class178.__fi_l[var13] = var5 + 1;
class178.__fi_e[var13] = var6 + 1;
var13 = var13 + 1 & 4095;
class178.__fi_q[var19 + 1][var20 + 1] = 12;
class178.__fi_w[var19 + 1][var20 + 1] = var17;
}
}
WidgetGroupParent.__bx_o = var5;
UrlRequester.__eo_u = var6;
return false;
}
static {
IndexStore_buffer = new byte[520];
}
}