Files
sbot_archive/h.java
T
wes c30e839b64 SBoT 1.0 decompiled with CFR 0.152
Full source recovered from SBoT.jar (July 2004) plus the three bundled
example scripts (BoneBury, GuildFish, GuildFisher). Class names are the
original RSC-era single-letter obfuscation (a.java-z.java); mudclient.java
and Script.java kept their real names since those weren't obfuscated.
2026-08-25 13:11:31 -04:00

6360 lines
493 KiB
Java

/*
* Decompiled with CFR 0.152.
*/
import java.awt.Color;
import java.awt.Component;
import java.awt.Font;
import java.awt.FontMetrics;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.image.ColorModel;
import java.awt.image.DirectColorModel;
import java.awt.image.ImageConsumer;
import java.awt.image.ImageObserver;
import java.awt.image.ImageProducer;
import java.awt.image.PixelGrabber;
public class h
implements ImageProducer,
ImageObserver {
public int a;
public int b;
public int c;
public int d;
public int e;
ColorModel f;
public int[] g;
ImageConsumer h;
private Component i;
public Image j;
public int[][] k;
public byte[][] l;
public int[][] m;
public int[] n;
public int[] o;
public int[] p;
public int[] q;
public int[] r;
public int[] s;
public boolean[] t;
private int u;
private int v;
private int w;
private int x;
public boolean y;
static byte[][] z;
static int[] A;
public boolean B;
int[] C;
int[] D;
int[] E;
int[] F;
int[] G;
int[] H;
int[] I;
public static int J;
public static int K;
public static int L;
private static boolean[] M;
private static int N;
private static byte[] O;
public static int P;
private static String[] Q;
public h(int n2, int n3, int n4, Component component) {
block7: {
int n5;
int n6;
boolean bl;
block6: {
bl = q.d;
this.y = false;
this.B = false;
this.i = component;
this.v = n3;
this.x = n2;
this.d = this.a = n2;
this.e = this.b = n3;
this.c = n2 * n3;
this.g = new int[n2 * n3];
this.k = new int[n4][];
this.t = new boolean[n4];
this.l = new byte[n4][];
this.m = new int[n4][];
this.n = new int[n4];
this.o = new int[n4];
this.r = new int[n4];
this.s = new int[n4];
this.p = new int[n4];
this.q = new int[n4];
n6 = n2;
n5 = 1;
if (bl) break block6;
if (n6 <= n5) break block7;
n6 = n3;
n5 = 1;
}
if (n6 > n5 && component != null) {
block5: {
this.f = new DirectColorModel(32, 0xFF0000, 65280, 255);
int n7 = this.a * this.b;
for (int i2 = 0; i2 < n7; ++i2) {
this.g[i2] = 0;
if (!bl) {
if (!bl) continue;
}
break block5;
}
this.j = component.createImage(this);
this.a();
component.prepareImage(this.j, component);
this.a();
component.prepareImage(this.j, component);
this.a();
}
component.prepareImage(this.j, component);
}
}
}
public synchronized void addConsumer(ImageConsumer imageConsumer) {
this.h = imageConsumer;
imageConsumer.setDimensions(this.a, this.b);
imageConsumer.setProperties(null);
imageConsumer.setColorModel(this.f);
imageConsumer.setHints(14);
}
public synchronized boolean isConsumer(ImageConsumer imageConsumer) {
return this.h == imageConsumer;
}
public synchronized void removeConsumer(ImageConsumer imageConsumer) {
block3: {
block2: {
h h2 = this;
if (q.d) break block2;
if (h2.h != imageConsumer) break block3;
h2 = this;
}
h2.h = null;
}
}
public void startProduction(ImageConsumer imageConsumer) {
this.addConsumer(imageConsumer);
}
public void requestTopDownLeftRightResend(ImageConsumer imageConsumer) {
System.out.println(Q[2]);
}
public synchronized void a() {
ImageConsumer imageConsumer = this.h;
if (!q.d) {
if (imageConsumer == null) {
return;
}
this.h.setPixels(0, 0, this.a, this.b, this.f, this.g, 0, this.a);
imageConsumer = this.h;
}
imageConsumer.imageComplete(2);
}
public void a(int n2, int n3, int n4, int n5) {
block10: {
int n6;
block9: {
int n7;
block8: {
boolean bl = q.d;
n6 = n2;
if (!bl) {
if (n6 < 0) {
n2 = 0;
}
n6 = n3;
}
if (!bl) {
if (n6 < 0) {
n3 = 0;
}
n6 = n4;
}
n7 = this.a;
if (bl) break block8;
if (n6 > n7) {
n4 = this.a;
}
n6 = n5;
if (bl) break block9;
n7 = this.b;
}
if (n6 <= n7) break block10;
n6 = this.b;
}
n5 = n6;
}
this.w = n2;
this.u = n3;
this.x = n4;
this.v = n5;
}
public void b() {
this.w = 0;
this.u = 0;
this.x = this.a;
this.v = this.b;
}
public void a(Graphics graphics, int n2, int n3) {
this.a();
graphics.drawImage(this.j, n2, n3, this);
}
public void c() {
boolean bl = q.d;
boolean bl2 = false;
int n2 = this.a * this.b;
int n3 = this.y;
if (!bl) {
if (n3 == 0) {
for (int i2 = 0; i2 < n2; ++i2) {
this.g[i2] = 0;
if (!bl) continue;
}
return;
}
n3 = 0;
}
int n4 = n3;
int n5 = -this.b;
while (n5 < 0) {
block6: {
for (int i3 = -this.a; i3 < 0; ++i3) {
this.g[n4++] = 0;
if (!bl) {
if (!bl) continue;
}
break block6;
}
n4 += this.a;
n5 += 2;
}
if (!bl) continue;
}
}
public void a(int n2, int n3, int n4, int n5, int n6) {
int n7;
int n8;
int n9;
int n10;
int n11;
int n12;
int n13;
boolean bl;
block17: {
int n14;
int n15;
block18: {
bl = q.d;
boolean bl2 = false;
n13 = 256 - n6;
n12 = (n5 >> 16 & 0xFF) * n6;
n11 = (n5 >> 8 & 0xFF) * n6;
n10 = (n5 & 0xFF) * n6;
int n16 = n15 = n3 - n4;
if (!bl) {
if (n16 < 0) {
n15 = 0;
}
n16 = n3 + n4;
}
int n17 = n9 = n16;
if (!bl) {
if (n17 >= this.b) {
n9 = this.b - 1;
}
n17 = 1;
}
n8 = n17;
n14 = this.y;
if (bl) break block17;
if (n14 == 0) break block18;
n8 = 2;
n14 = n15 & 1;
if (bl) break block17;
if (n14 != 0) {
// empty if block
}
}
n14 = n7 = ++n15;
}
while (n7 <= n9) {
block16: {
int n18;
int n19;
int n20 = n7 - n3;
int n21 = (int)Math.sqrt(n4 * n4 - n20 * n20);
int n22 = n19 = n2 - n21;
if (!bl) {
if (n22 < 0) {
n19 = 0;
}
n22 = n2 + n21;
}
int n23 = n18 = n22;
int n24 = this.a;
if (!bl) {
if (n23 >= n24) {
n18 = this.a - 1;
}
n23 = n19;
n24 = n7 * this.a;
}
int n25 = n23 + n24;
for (int i2 = n19; i2 <= n18; ++i2) {
int n26 = (this.g[n25] >> 16 & 0xFF) * n13;
int n27 = (this.g[n25] >> 8 & 0xFF) * n13;
int n28 = (this.g[n25] & 0xFF) * n13;
int n29 = (n12 + n26 >> 8 << 16) + (n11 + n27 >> 8 << 8) + (n10 + n28 >> 8);
this.g[n25++] = n29;
if (!bl) {
if (!bl) continue;
}
break block16;
}
n7 += n8;
}
if (!bl) continue;
}
}
public void a(int n2, int n3, int n4, int n5, int n6, int n7) {
int n8;
int n9;
int n10;
int n11;
int n12;
int n13;
int n14;
boolean bl;
block17: {
block18: {
bl = q.d;
boolean bl2 = false;
int n15 = n2;
int n16 = this.w;
if (!bl) {
if (n15 < n16) {
n4 -= this.w - n2;
n2 = this.w;
}
n15 = n3;
n16 = this.u;
}
if (!bl) {
if (n15 < n16) {
n5 -= this.u - n3;
n3 = this.u;
}
n15 = n2 + n4;
n16 = this.x;
}
if (!bl) {
if (n15 > n16) {
n4 = this.x - n2;
}
n15 = n3 + n5;
n16 = this.v;
}
if (!bl) {
if (n15 > n16) {
n5 = this.v - n3;
}
n15 = 256;
n16 = n7;
}
n14 = n15 - n16;
n13 = (n6 >> 16 & 0xFF) * n7;
n12 = (n6 >> 8 & 0xFF) * n7;
n11 = (n6 & 0xFF) * n7;
n10 = this.a - n4;
n9 = 1;
n8 = this.y;
if (bl) break block17;
if (n8 == 0) break block18;
n9 = 2;
n10 += this.a;
n8 = n3 & 1;
if (bl) break block17;
if (n8 != 0) {
++n3;
--n5;
}
}
n8 = n2 + n3 * this.a;
}
int n17 = n8;
int n18 = 0;
while (n18 < n5) {
block16: {
for (int i2 = -n4; i2 < 0; ++i2) {
int n19 = (this.g[n17] >> 16 & 0xFF) * n14;
int n20 = (this.g[n17] >> 8 & 0xFF) * n14;
int n21 = (this.g[n17] & 0xFF) * n14;
int n22 = (n13 + n19 >> 8 << 16) + (n12 + n20 >> 8 << 8) + (n11 + n21 >> 8);
this.g[n17++] = n22;
if (!bl) {
if (!bl) continue;
}
break block16;
}
n17 += n10;
n18 += n9;
}
if (!bl) continue;
}
}
/*
* Enabled aggressive block sorting
* Lifted jumps to return sites
*/
public void b(int n2, int n3, int n4, int n5, int n6, int n7) {
int n8;
int n9;
int n10;
int n11;
int n12;
int n13;
int n14;
int n15;
int n16;
boolean bl;
block17: {
block18: {
bl = q.d;
boolean bl2 = false;
int n17 = n2;
int n18 = this.w;
if (!bl) {
if (n17 < n18) {
n4 -= this.w - n2;
n2 = this.w;
}
n17 = n2 + n4;
n18 = this.x;
}
if (!bl) {
if (n17 > n18) {
n4 = this.x - n2;
}
n17 = n7 >> 16;
n18 = 255;
}
n16 = n17 & n18;
n15 = n7 >> 8 & 0xFF;
n14 = n7 & 0xFF;
n13 = n6 >> 16 & 0xFF;
n12 = n6 >> 8 & 0xFF;
n11 = n6 & 0xFF;
n10 = this.a - n4;
n9 = 1;
n8 = this.y;
if (bl) break block17;
if (n8 == 0) break block18;
n9 = 2;
n10 += this.a;
n8 = n3 & 1;
if (bl) break block17;
if (n8 != 0) {
++n3;
--n5;
}
}
n8 = n2 + n3 * this.a;
}
int n19 = n8;
int n20 = 0;
do {
block21: {
int n21;
int n22;
block19: {
block20: {
block16: {
if (n20 >= n5) return;
n22 = n20 + n3;
n21 = this.u;
if (bl) break block19;
if (n22 < n21) break block20;
n22 = n20 + n3;
n21 = this.v;
if (bl) break block19;
if (n22 >= n21) break block20;
int n23 = ((n16 * n20 + n13 * (n5 - n20)) / n5 << 16) + ((n15 * n20 + n12 * (n5 - n20)) / n5 << 8) + (n14 * n20 + n11 * (n5 - n20)) / n5;
for (int i2 = -n4; i2 < 0; ++i2) {
this.g[n19++] = n23;
if (!bl) {
if (!bl) continue;
}
break block16;
}
n19 += n10;
}
if (!bl) break block21;
}
n22 = n19;
n21 = this.a;
}
n19 = n22 + n21;
}
n20 += n9;
} while (!bl);
}
public void b(int n2, int n3, int n4, int n5, int n6) {
int n7;
int n8;
int n9;
boolean bl;
block17: {
block18: {
bl = q.d;
boolean bl2 = false;
int n10 = n2;
int n11 = this.w;
if (!bl) {
if (n10 < n11) {
n4 -= this.w - n2;
n2 = this.w;
}
n10 = n3;
n11 = this.u;
}
if (!bl) {
if (n10 < n11) {
n5 -= this.u - n3;
n3 = this.u;
}
n10 = n2 + n4;
n11 = this.x;
}
if (!bl) {
if (n10 > n11) {
n4 = this.x - n2;
}
n10 = n3 + n5;
n11 = this.v;
}
if (!bl) {
if (n10 > n11) {
n5 = this.v - n3;
}
n10 = this.a;
n11 = n4;
}
n9 = n10 - n11;
n8 = 1;
n7 = this.y;
if (bl) break block17;
if (n7 == 0) break block18;
n8 = 2;
n9 += this.a;
n7 = n3 & 1;
if (bl) break block17;
if (n7 != 0) {
++n3;
--n5;
}
}
n7 = n2 + n3 * this.a;
}
int n12 = n7;
int n13 = -n5;
while (n13 < 0) {
block16: {
for (int i2 = -n4; i2 < 0; ++i2) {
this.g[n12++] = n6;
if (!bl) {
if (!bl) continue;
}
break block16;
}
n12 += n9;
n13 += n8;
}
if (!bl) continue;
}
}
public void c(int n2, int n3, int n4, int n5, int n6) {
this.b(n2, n3, n4, n6);
this.b(n2, n3 + n5 - 1, n4, n6);
this.c(n2, n3, n5, n6);
this.c(n2 + n4 - 1, n3, n5, n6);
}
public void b(int n2, int n3, int n4, int n5) {
int n6;
int n7;
boolean bl;
block10: {
block11: {
block9: {
block8: {
bl = q.d;
n7 = n3;
n6 = this.u;
if (bl) break block8;
if (n7 < n6) break block9;
n7 = n3;
n6 = this.v;
}
if (bl) break block10;
if (n7 < n6) break block11;
}
return;
}
n7 = n2;
n6 = this.w;
}
if (!bl) {
if (n7 < n6) {
n4 -= this.w - n2;
n2 = this.w;
}
n7 = n2 + n4;
n6 = this.x;
}
if (!bl) {
if (n7 > n6) {
n4 = this.x - n2;
}
n7 = n2;
n6 = n3 * this.a;
}
int n8 = n7 + n6;
for (int i2 = 0; i2 < n4; ++i2) {
this.g[n8 + i2] = n5;
if (!bl) continue;
}
}
public void c(int n2, int n3, int n4, int n5) {
int n6;
int n7;
boolean bl;
block10: {
block11: {
block9: {
block8: {
bl = q.d;
n7 = n2;
n6 = this.w;
if (bl) break block8;
if (n7 < n6) break block9;
n7 = n2;
n6 = this.x;
}
if (bl) break block10;
if (n7 < n6) break block11;
}
return;
}
n7 = n3;
n6 = this.u;
}
if (!bl) {
if (n7 < n6) {
n4 -= this.u - n3;
n3 = this.u;
}
n7 = n3 + n4;
n6 = this.x;
}
if (!bl) {
if (n7 > n6) {
n4 = this.v - n3;
}
n7 = n2;
n6 = n3 * this.a;
}
int n8 = n7 + n6;
for (int i2 = 0; i2 < n4; ++i2) {
this.g[n8 + i2 * this.a] = n5;
if (!bl) continue;
}
}
public void a(int n2, int n3, int n4) {
block6: {
block3: {
int n5;
int n6;
block5: {
boolean bl;
block4: {
block2: {
bl = q.d;
n6 = n2;
n5 = this.w;
if (bl) break block2;
if (n6 < n5) break block3;
n6 = n3;
n5 = this.u;
}
if (bl) break block4;
if (n6 < n5) break block3;
n6 = n2;
n5 = this.x;
}
if (bl) break block5;
if (n6 >= n5) break block3;
n6 = n3;
n5 = this.v;
}
if (n6 < n5) break block6;
}
return;
}
this.g[n2 + n3 * this.a] = n4;
}
public void d() {
int n2 = this.a * this.b;
for (int i2 = 0; i2 < n2; ++i2) {
int n3 = this.g[i2] & 0xFFFFFF;
this.g[i2] = (n3 >>> 1 & 0x7F7F7F) + (n3 >>> 2 & 0x3F3F3F) + (n3 >>> 3 & 0x1F1F1F) + (n3 >>> 4 & 0xF0F0F);
if (!q.d) continue;
}
}
public void c(int n2, int n3, int n4, int n5, int n6, int n7) {
boolean bl = q.d;
boolean bl2 = false;
int n8 = n4;
block0: while (true) {
int n9 = n8;
block1: while (n9 < n4 + n6) {
int n10 = n5;
block2: while (true) {
int n11 = n10;
block3: while (n11 < n5 + n7) {
int n12 = 0;
int n13 = 0;
int n14 = 0;
int n15 = 0;
n9 = n8 - n2;
if (bl) continue block1;
int n16 = n9;
block4: while (true) {
int n17 = n16;
block5: while (n17 <= n8 + n2) {
block13: {
block14: {
int n18;
block12: {
n11 = n16;
if (bl) continue block3;
if (bl) break block12;
if (n11 < 0) break block13;
n18 = n16;
}
int n19 = this.a;
if (bl) break block14;
if (n18 >= n19) break block13;
n18 = n10;
n19 = n3;
}
for (int i2 = (v132029) - (v132030); i2 <= n10 + n3; ++i2) {
int n20;
n17 = i2;
if (bl) continue block5;
if (!bl) {
if (n17 < 0) continue;
n20 = i2;
}
if (!bl) {
if (n20 >= this.b) continue;
n20 = this.g[n16 + this.a * i2];
}
int n21 = n20;
n12 += n21 >> 16 & 0xFF;
n13 += n21 >> 8 & 0xFF;
n14 += n21 & 0xFF;
++n15;
if (!bl) continue;
}
}
++n16;
if (!bl) continue block4;
}
break;
}
this.g[n8 + this.a * n10] = (n12 / n15 << 16) + (n13 / n15 << 8) + n14 / n15;
++n10;
if (!bl) continue block2;
}
break;
}
++n8;
if (!bl) continue block0;
}
break;
}
}
public static int b(int n2, int n3, int n4) {
return (n2 << 16) + (n3 << 8) + n4;
}
public void e() {
for (int i2 = 0; i2 < this.k.length; ++i2) {
this.k[i2] = null;
this.n[i2] = 0;
this.o[i2] = 0;
this.l[i2] = null;
this.m[i2] = null;
if (!q.d) continue;
}
}
/*
* Unable to fully structure code
*/
public void a(int var1_1, byte[] var2_2, byte[] var3_3, int var4_4) {
block17: {
var17_5 = q.d;
var5_6 = false;
var6_7 = q.a(var2_2, 0);
var7_8 = q.a(var3_3, var6_7);
var8_9 = q.a(var3_3, var6_7 += 2);
var6_7 += 2;
var9_10 = var3_3[var6_7++] & 255;
var10_11 = new int[var9_10];
var10_11[0] = 0xFF00FF;
for (var11_12 = 0; var11_12 < var9_10 - 1; ++var11_12) {
var10_11[var11_12 + 1] = ((var3_3[var6_7] & 255) << 16) + ((var3_3[var6_7 + 1] & 255) << 8) + (var3_3[var6_7 + 2] & 255);
var6_7 += 3;
if (!var17_5) {
if (!var17_5) continue;
}
break block17;
}
var11_12 = 2;
}
var12_13 = var1_1;
block1: while (true) {
v0 = var12_13;
block2: while (v0 < var1_1 + var4_4) {
block20: {
block21: {
block18: {
block19: {
this.p[var12_13] = var3_3[var6_7++] & 255;
this.q[var12_13] = var3_3[var6_7++] & 255;
this.n[var12_13] = q.a(var3_3, var6_7);
this.o[var12_13] = q.a(var3_3, var6_7 += 2);
var6_7 += 2;
var13_14 = var3_3[var6_7++] & 255;
var14_15 = this.n[var12_13] * this.o[var12_13];
this.l[var12_13] = new byte[var14_15];
this.m[var12_13] = var10_11;
this.r[var12_13] = var7_8;
this.s[var12_13] = var8_9;
this.k[var12_13] = null;
this.t[var12_13] = false;
v1 = this;
if (var17_5) break block18;
if (v1.p[var12_13] != 0) break block19;
v2 = this.q[var12_13];
if (var17_5) break block20;
if (v2 == 0) break block21;
}
v1 = this;
}
v1.t[var12_13] = true;
}
v2 = var13_14;
}
if (var17_5) ** GOTO lbl61
if (v2 != 0) ** GOTO lbl60
var15_16 = 0;
while (var15_16 < var14_15) {
this.l[var12_13][var15_16] = var2_2[var11_12++];
if (!var17_5) {
v0 = this.l[var12_13][var15_16];
if (var17_5) continue block2;
if (v0 == 0) {
this.t[var12_13] = true;
}
++var15_16;
}
if (!var17_5) continue;
lbl60:
// 2 sources
v2 = var13_14;
lbl61:
// 2 sources
if (!var17_5) {
if (v2 != 1) break;
v2 = 0;
}
var15_16 = v2;
block4: while (true) {
v3 = var15_16;
block5: while (v3 < this.n[var12_13]) {
v0 = 0;
if (var17_5) continue block2;
var16_17 = v0;
while (var16_17 < this.o[var12_13]) {
this.l[var12_13][var15_16 + var16_17 * this.n[var12_13]] = var2_2[var11_12++];
if (!var17_5) {
v3 = this.l[var12_13][var15_16 + var16_17 * this.n[var12_13]];
if (var17_5) continue block5;
if (v3 == 0) {
this.t[var12_13] = true;
}
++var16_17;
}
if (!var17_5) continue;
}
++var15_16;
if (!var17_5) continue block4;
}
break block3;
break;
}
}
++var12_13;
if (!var17_5) continue block1;
}
break;
}
}
public void a(int n2, byte[] byArray) {
int n3;
int n4;
int n5;
int n6;
int[] nArray;
boolean bl;
block7: {
int n7;
bl = q.d;
boolean bl2 = false;
this.k[n2] = new int[10200];
nArray = this.k[n2];
this.n[n2] = 255;
this.o[n2] = 40;
this.p[n2] = 0;
this.q[n2] = 0;
this.r[n2] = 255;
this.s[n2] = 40;
this.t[n2] = false;
int n8 = 0;
n6 = 1;
n5 = 0;
while (n5 < 255) {
block8: {
n4 = byArray[n6++] & 0xFF;
n7 = 0;
if (bl) break block7;
for (n3 = v134617; n3 < n4; ++n3) {
nArray[n5++] = n8;
if (!bl) {
if (!bl) continue;
}
break block8;
}
n8 = 0xFFFFFF - n8;
}
if (!bl) continue;
}
n7 = n4 = 1;
}
while (n4 < 40) {
block9: {
n3 = 0;
block3: while (n3 < 255) {
int n9 = byArray[n6++] & 0xFF;
for (int i2 = 0; i2 < n9; ++i2) {
nArray[n5] = nArray[n5 - 255];
++n5;
++n3;
if (bl) continue block3;
if (!bl) continue;
}
if (n3 >= 255) continue;
nArray[n5] = 0xFFFFFF - nArray[n5 - 255];
++n5;
++n3;
if (!bl) {
if (!bl) continue;
}
break block9;
}
++n4;
}
if (!bl) continue;
}
}
public void a(int n2) {
block18: {
int n3;
int n4;
int n5;
int n6;
int[] nArray;
int[] nArray2;
int[] nArray3;
int n7;
boolean bl;
block16: {
int[] nArray4;
block15: {
bl = q.d;
boolean bl2 = false;
n7 = this.n[n2] * this.o[n2];
nArray3 = this.k[n2];
nArray2 = new int[32768];
for (int i2 = 0; i2 < n7; ++i2) {
int n8 = nArray3[i2];
nArray4 = nArray2;
if (!bl) {
int n9 = ((n8 & 0xF80000) >> 9) + ((n8 & 0xF800) >> 6) + ((n8 & 0xF8) >> 3);
nArray4[n9] = nArray4[n9] + 1;
if (!bl) continue;
}
break block15;
}
nArray4 = new int[256];
}
nArray = nArray4;
nArray[0] = 0xFF00FF;
int[] nArray5 = new int[256];
int n10 = 0;
block1: while (true) {
int n11 = n10;
int n12 = 32768;
block2: while (n11 < n12) {
n6 = nArray2[n10];
if (bl) continue block1;
n5 = n6;
if (bl) break block16;
if (n5 > nArray5[255]) {
for (n4 = 1; n4 < 256; ++n4) {
block17: {
int n13 = n6;
if (!bl) {
n12 = nArray5[n4];
if (bl) continue block2;
if (n13 <= n12 && !bl) continue;
n13 = n3 = 255;
}
while (n3 > n4) {
nArray[n3] = nArray[n3 - 1];
nArray5[n3] = nArray5[n3 - 1];
--n3;
if (!bl) {
if (!bl) continue;
}
break block17;
}
nArray[n4] = ((n10 & 0x7C00) << 9) + ((n10 & 0x3E0) << 6) + ((n10 & 0x1F) << 3) + 263172;
nArray5[n4] = n6;
}
if (!bl) break;
if (!bl) continue;
}
}
nArray2[n10] = -1;
++n10;
if (!bl) continue block1;
}
break;
}
n5 = n7;
}
byte[] byArray = new byte[n5];
n6 = 0;
block5: while (true) {
int n14 = n6;
int n15 = n7;
block6: while (n14 < n15) {
n4 = nArray3[n6];
n3 = ((n4 & 0xF80000) >> 9) + ((n4 & 0xF800) >> 6) + ((n4 & 0xF8) >> 3);
int n16 = nArray2[n3];
if (bl) break block18;
if (bl) continue block5;
if (n16 == -1) {
int n17 = 999999999;
int n18 = n4 >> 16 & 0xFF;
int n19 = n4 >> 8 & 0xFF;
int n20 = n4 & 0xFF;
int n21 = 0;
while (n21 < 256) {
int n22 = nArray[n21];
int n23 = n22 >> 16 & 0xFF;
int n24 = n22 >> 8 & 0xFF;
int n25 = n22 & 0xFF;
int n26 = (n18 - n23) * (n18 - n23) + (n19 - n24) * (n19 - n24) + (n20 - n25) * (n20 - n25);
if (!bl) {
n14 = n26;
n15 = n17;
if (bl) continue block6;
if (n14 < n15) {
n17 = n26;
n16 = n21;
}
++n21;
}
if (!bl) continue;
}
nArray2[n3] = n16;
}
byArray[n6] = (byte)n16;
++n6;
if (!bl) continue block5;
}
break;
}
this.l[n2] = byArray;
this.m[n2] = nArray;
this.k[n2] = null;
}
}
public void b(int n2) {
block6: {
boolean bl = q.d;
boolean bl2 = false;
h h2 = this;
if (!bl) {
if (h2.l[n2] == null) {
return;
}
h2 = this;
}
int n3 = h2.n[n2] * this.o[n2];
byte[] byArray = this.l[n2];
int[] nArray = this.m[n2];
int[] nArray2 = new int[n3];
for (int i2 = 0; i2 < n3; ++i2) {
int n4;
block9: {
int n5;
block10: {
block7: {
block8: {
n4 = nArray[byArray[i2] & 0xFF];
if (bl) break block6;
n5 = n4;
if (bl) break block7;
if (n5 != 0) break block8;
n4 = 1;
if (!bl) break block9;
}
n5 = n4;
}
if (bl) break block10;
if (n5 != 0xFF00FF) break block9;
n5 = 0;
}
n4 = n5;
}
nArray2[i2] = n4;
if (!bl) continue;
}
this.k[n2] = nArray2;
this.l[n2] = null;
this.m[n2] = null;
}
}
public void d(int n2, int n3, int n4, int n5, int n6) {
boolean bl = q.d;
boolean bl2 = false;
this.n[n2] = n5;
this.o[n2] = n6;
this.t[n2] = false;
this.p[n2] = 0;
this.q[n2] = 0;
this.r[n2] = n5;
this.s[n2] = n6;
int n7 = n5 * n6;
int n8 = 0;
this.k[n2] = new int[n7];
int n9 = n3;
while (n9 < n3 + n5) {
block3: {
for (int i2 = n4; i2 < n4 + n6; ++i2) {
this.k[n2][n8++] = this.g[n9 + i2 * this.a];
if (!bl) {
if (!bl) continue;
}
break block3;
}
++n9;
}
if (!bl) continue;
}
}
public void e(int n2, int n3, int n4, int n5, int n6) {
boolean bl = q.d;
boolean bl2 = false;
this.n[n2] = n5;
this.o[n2] = n6;
this.t[n2] = false;
this.p[n2] = 0;
this.q[n2] = 0;
this.r[n2] = n5;
this.s[n2] = n6;
int n7 = n5 * n6;
int n8 = 0;
this.k[n2] = new int[n7];
int n9 = n4;
while (n9 < n4 + n6) {
block3: {
for (int i2 = n3; i2 < n3 + n5; ++i2) {
this.k[n2][n8++] = this.g[i2 + n9 * this.a];
if (!bl) {
if (!bl) continue;
}
break block3;
}
++n9;
}
if (!bl) continue;
}
}
public void c(int n2, int n3, int n4) {
h h2;
int n5;
int n6;
int n7;
int n8;
int n9;
int n10;
int n11;
boolean bl;
block25: {
block26: {
int n12;
block27: {
int n13;
block23: {
block24: {
block22: {
block21: {
block20: {
int n14;
block19: {
bl = q.d;
int n15 = this.t[n4];
if (!bl) {
if (n15 != 0) {
n2 += this.p[n4];
n3 += this.q[n4];
}
n15 = n2 + n3 * this.a;
}
n11 = n15;
n10 = 0;
n9 = this.o[n4];
n8 = this.n[n4];
n7 = this.a - n8;
n6 = 0;
n13 = n3;
n14 = this.u;
if (!bl) {
if (n13 < n14) {
n5 = this.u - n3;
n9 -= n5;
n3 = this.u;
n10 = 0 + n5 * n8;
n11 += n5 * this.a;
}
n13 = n3 + n9;
n14 = this.v;
}
if (!bl) {
if (n13 >= n14) {
n9 -= n3 + n9 - this.v + 1;
}
n13 = n2;
n14 = this.w;
}
if (bl) break block19;
if (n13 < n14) {
n5 = this.w - n2;
n8 -= n5;
n2 = this.w;
n10 += n5;
n11 += n5;
n6 = 0 + n5;
n7 += n5;
}
n13 = n2 + n8;
if (bl) break block20;
n14 = this.x;
}
if (n13 >= n14) {
n5 = n2 + n8 - this.x + 1;
n8 -= n5;
n6 += n5;
n7 += n5;
}
n13 = n8;
}
if (bl) break block21;
if (n13 <= 0) break block22;
n13 = n9;
}
if (bl) break block23;
if (n13 > 0) break block24;
}
return;
}
n13 = 1;
}
n5 = n13;
h2 = this;
if (bl) break block25;
if (!h2.y) break block26;
n5 = 2;
n7 += this.a;
n6 += this.n[n4];
n12 = n3 & 1;
if (bl) break block27;
if (n12 == 0) break block26;
n12 = n11 + this.a;
}
n11 = n12;
--n9;
}
h2 = this;
}
if (!bl) {
if (h2.k[n4] == null) {
this.a(this.g, this.l[n4], this.m[n4], n10, n11, n8, n9, n7, n6, n5);
return;
}
h2 = this;
}
h2.a(this.g, this.k[n4], 0, n10, n11, n8, n9, n7, n6, n5);
}
public void f(int n2, int n3, int n4, int n5, int n6) {
boolean bl = q.d;
try {
block25: {
h h2;
int n7;
int n8;
int n9;
int n10;
int n11;
int n12;
int n13;
int n14;
block23: {
block24: {
int n15;
block22: {
int n16;
block21: {
n14 = this.n[n6];
int n17 = this.o[n6];
n13 = 0;
n12 = 0;
n11 = (n14 << 16) / n4;
n10 = (n17 << 16) / n5;
int n18 = this.t[n6];
if (!bl) {
if (n18 != 0) {
n9 = this.r[n6];
n8 = this.s[n6];
n11 = (n9 << 16) / n4;
n10 = (n8 << 16) / n5;
n2 += (this.p[n6] * n4 + n9 - 1) / n9;
n3 += (this.q[n6] * n5 + n8 - 1) / n8;
int n19 = this.p[n6] * n4 % n9;
if (!bl) {
if (n19 != 0) {
n13 = (n9 - this.p[n6] * n4 % n9 << 16) / n4;
}
n19 = this.q[n6] * n5 % n8;
}
if (!bl) {
if (n19 != 0) {
n12 = (n8 - this.q[n6] * n5 % n8 << 16) / n5;
}
n4 = n4 * (this.n[n6] - (n13 >> 16)) / n9;
n19 = n5 * (this.o[n6] - (n12 >> 16)) / n8;
}
n5 = n19;
}
n18 = n2 + n3 * this.a;
}
n9 = n18;
n8 = this.a - n4;
n15 = n3;
n16 = this.u;
if (!bl) {
if (n15 < n16) {
n7 = this.u - n3;
n5 -= n7;
n3 = 0;
n9 += n7 * this.a;
n12 += n10 * n7;
}
n15 = n3 + n5;
n16 = this.v;
}
if (!bl) {
if (n15 >= n16) {
n5 -= n3 + n5 - this.v + 1;
}
n15 = n2;
n16 = this.w;
}
if (bl) break block21;
if (n15 < n16) {
n7 = this.w - n2;
n4 -= n7;
n2 = 0;
n9 += n7;
n13 += n11 * n7;
n8 += n7;
}
n15 = n2 + n4;
if (bl) break block22;
n16 = this.x;
}
if (n15 >= n16) {
n7 = n2 + n4 - this.x + 1;
n4 -= n7;
n8 += n7;
}
n15 = 1;
}
n7 = n15;
h2 = this;
if (bl) break block23;
if (!h2.y) break block24;
n7 = 2;
n8 += this.a;
n10 += n10;
if (bl) break block25;
if ((n3 & 1) != 0) {
n9 += this.a;
--n5;
}
}
h2 = this;
}
h2.a(this.g, this.k[n6], 0, n13, n12, n9, n8, n4, n5, n11, n10, n14, n7);
}
return;
}
catch (Exception exception) {
System.out.println(Q[0]);
return;
}
}
public void d(int n2, int n3, int n4, int n5) {
h h2;
int n6;
int n7;
int n8;
int n9;
int n10;
int n11;
int n12;
boolean bl;
block25: {
block26: {
int n13;
block27: {
int n14;
block23: {
block24: {
block22: {
block21: {
block20: {
int n15;
block19: {
bl = q.d;
int n16 = this.t[n4];
if (!bl) {
if (n16 != 0) {
n2 += this.p[n4];
n3 += this.q[n4];
}
n16 = n2 + n3 * this.a;
}
n12 = n16;
n11 = 0;
n10 = this.o[n4];
n9 = this.n[n4];
n8 = this.a - n9;
n7 = 0;
n14 = n3;
n15 = this.u;
if (!bl) {
if (n14 < n15) {
n6 = this.u - n3;
n10 -= n6;
n3 = this.u;
n11 = 0 + n6 * n9;
n12 += n6 * this.a;
}
n14 = n3 + n10;
n15 = this.v;
}
if (!bl) {
if (n14 >= n15) {
n10 -= n3 + n10 - this.v + 1;
}
n14 = n2;
n15 = this.w;
}
if (bl) break block19;
if (n14 < n15) {
n6 = this.w - n2;
n9 -= n6;
n2 = this.w;
n11 += n6;
n12 += n6;
n7 = 0 + n6;
n8 += n6;
}
n14 = n2 + n9;
if (bl) break block20;
n15 = this.x;
}
if (n14 >= n15) {
n6 = n2 + n9 - this.x + 1;
n9 -= n6;
n7 += n6;
n8 += n6;
}
n14 = n9;
}
if (bl) break block21;
if (n14 <= 0) break block22;
n14 = n10;
}
if (bl) break block23;
if (n14 > 0) break block24;
}
return;
}
n14 = 1;
}
n6 = n14;
h2 = this;
if (bl) break block25;
if (!h2.y) break block26;
n6 = 2;
n8 += this.a;
n7 += this.n[n4];
n13 = n3 & 1;
if (bl) break block27;
if (n13 == 0) break block26;
n13 = n12 + this.a;
}
n12 = n13;
--n10;
}
h2 = this;
}
if (!bl) {
if (h2.k[n4] == null) {
this.a(this.g, this.l[n4], this.m[n4], n11, n12, n9, n10, n8, n7, n6, n5);
return;
}
h2 = this;
}
h2.a(this.g, this.k[n4], 0, n11, n12, n9, n10, n8, n7, n6, n5);
}
public void d(int n2, int n3, int n4, int n5, int n6, int n7) {
boolean bl = q.d;
try {
block25: {
h h2;
int n8;
int n9;
int n10;
int n11;
int n12;
int n13;
int n14;
int n15;
block23: {
block24: {
int n16;
block22: {
int n17;
block21: {
n15 = this.n[n6];
int n18 = this.o[n6];
n14 = 0;
n13 = 0;
n12 = (n15 << 16) / n4;
n11 = (n18 << 16) / n5;
int n19 = this.t[n6];
if (!bl) {
if (n19 != 0) {
n10 = this.r[n6];
n9 = this.s[n6];
n12 = (n10 << 16) / n4;
n11 = (n9 << 16) / n5;
n2 += (this.p[n6] * n4 + n10 - 1) / n10;
n3 += (this.q[n6] * n5 + n9 - 1) / n9;
int n20 = this.p[n6] * n4 % n10;
if (!bl) {
if (n20 != 0) {
n14 = (n10 - this.p[n6] * n4 % n10 << 16) / n4;
}
n20 = this.q[n6] * n5 % n9;
}
if (!bl) {
if (n20 != 0) {
n13 = (n9 - this.q[n6] * n5 % n9 << 16) / n5;
}
n4 = n4 * (this.n[n6] - (n14 >> 16)) / n10;
n20 = n5 * (this.o[n6] - (n13 >> 16)) / n9;
}
n5 = n20;
}
n19 = n2 + n3 * this.a;
}
n10 = n19;
n9 = this.a - n4;
n16 = n3;
n17 = this.u;
if (!bl) {
if (n16 < n17) {
n8 = this.u - n3;
n5 -= n8;
n3 = 0;
n10 += n8 * this.a;
n13 += n11 * n8;
}
n16 = n3 + n5;
n17 = this.v;
}
if (!bl) {
if (n16 >= n17) {
n5 -= n3 + n5 - this.v + 1;
}
n16 = n2;
n17 = this.w;
}
if (bl) break block21;
if (n16 < n17) {
n8 = this.w - n2;
n4 -= n8;
n2 = 0;
n10 += n8;
n14 += n12 * n8;
n9 += n8;
}
n16 = n2 + n4;
if (bl) break block22;
n17 = this.x;
}
if (n16 >= n17) {
n8 = n2 + n4 - this.x + 1;
n4 -= n8;
n9 += n8;
}
n16 = 1;
}
n8 = n16;
h2 = this;
if (bl) break block23;
if (!h2.y) break block24;
n8 = 2;
n9 += this.a;
n11 += n11;
if (bl) break block25;
if ((n3 & 1) != 0) {
n10 += this.a;
--n5;
}
}
h2 = this;
}
h2.a(this.g, this.k[n6], 0, n14, n13, n10, n9, n4, n5, n12, n11, n15, n8, n7);
}
return;
}
catch (Exception exception) {
System.out.println(Q[0]);
return;
}
}
public void e(int n2, int n3, int n4, int n5, int n6, int n7) {
boolean bl = q.d;
try {
block25: {
h h2;
int n8;
int n9;
int n10;
int n11;
int n12;
int n13;
int n14;
int n15;
block23: {
block24: {
int n16;
block22: {
int n17;
block21: {
n15 = this.n[n6];
int n18 = this.o[n6];
n14 = 0;
n13 = 0;
n12 = (n15 << 16) / n4;
n11 = (n18 << 16) / n5;
int n19 = this.t[n6];
if (!bl) {
if (n19 != 0) {
n10 = this.r[n6];
n9 = this.s[n6];
n12 = (n10 << 16) / n4;
n11 = (n9 << 16) / n5;
n2 += (this.p[n6] * n4 + n10 - 1) / n10;
n3 += (this.q[n6] * n5 + n9 - 1) / n9;
int n20 = this.p[n6] * n4 % n10;
if (!bl) {
if (n20 != 0) {
n14 = (n10 - this.p[n6] * n4 % n10 << 16) / n4;
}
n20 = this.q[n6] * n5 % n9;
}
if (!bl) {
if (n20 != 0) {
n13 = (n9 - this.q[n6] * n5 % n9 << 16) / n5;
}
n4 = n4 * (this.n[n6] - (n14 >> 16)) / n10;
n20 = n5 * (this.o[n6] - (n13 >> 16)) / n9;
}
n5 = n20;
}
n19 = n2 + n3 * this.a;
}
n10 = n19;
n9 = this.a - n4;
n16 = n3;
n17 = this.u;
if (!bl) {
if (n16 < n17) {
n8 = this.u - n3;
n5 -= n8;
n3 = 0;
n10 += n8 * this.a;
n13 += n11 * n8;
}
n16 = n3 + n5;
n17 = this.v;
}
if (!bl) {
if (n16 >= n17) {
n5 -= n3 + n5 - this.v + 1;
}
n16 = n2;
n17 = this.w;
}
if (bl) break block21;
if (n16 < n17) {
n8 = this.w - n2;
n4 -= n8;
n2 = 0;
n10 += n8;
n14 += n12 * n8;
n9 += n8;
}
n16 = n2 + n4;
if (bl) break block22;
n17 = this.x;
}
if (n16 >= n17) {
n8 = n2 + n4 - this.x + 1;
n4 -= n8;
n9 += n8;
}
n16 = 1;
}
n8 = n16;
h2 = this;
if (bl) break block23;
if (!h2.y) break block24;
n8 = 2;
n9 += this.a;
n11 += n11;
if (bl) break block25;
if ((n3 & 1) != 0) {
n10 += this.a;
--n5;
}
}
h2 = this;
}
h2.b(this.g, this.k[n6], 0, n14, n13, n10, n9, n4, n5, n12, n11, n15, n8, n7);
}
return;
}
catch (Exception exception) {
System.out.println(Q[0]);
return;
}
}
private void a(int[] nArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9) {
boolean bl = q.d;
boolean bl2 = false;
int n10 = -(n5 >> 2);
n5 = -(n5 & 3);
int n11 = -n6;
while (n11 < 0) {
block14: {
int n12;
int n13;
block13: {
int n14;
for (n13 = n10; n13 < 0; ++n13) {
block25: {
block24: {
block23: {
block22: {
block21: {
block20: {
block19: {
block18: {
block17: {
block16: {
block15: {
n2 = nArray2[n3++];
if (bl) break block15;
n14 = n2;
if (bl) break block13;
if (n14 == 0) break block16;
nArray[n4++] = n2;
}
if (!bl) break block17;
}
++n4;
}
n2 = nArray2[n3++];
if (bl) break block18;
if (n2 == 0) break block19;
nArray[n4++] = n2;
}
if (!bl) break block20;
}
++n4;
}
n2 = nArray2[n3++];
if (bl) break block21;
if (n2 == 0) break block22;
nArray[n4++] = n2;
}
if (!bl) break block23;
}
++n4;
}
n2 = nArray2[n3++];
if (bl) break block24;
if (n2 == 0) break block25;
nArray[n4++] = n2;
}
if (!bl) continue;
}
++n4;
if (!bl) continue;
}
n14 = n13 = n5;
}
while (n13 < 0) {
block28: {
block27: {
block26: {
n2 = nArray2[n3++];
if (bl) break block26;
n12 = n2;
if (bl) break block14;
if (n12 == 0) break block27;
nArray[n4++] = n2;
}
if (!bl) break block28;
}
++n4;
}
++n13;
if (!bl) continue;
}
n4 += n7;
n3 += n8;
n12 = n11 = n11 + n9;
}
if (!bl) continue;
}
}
private void a(int[] nArray, byte[] byArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8) {
boolean bl = q.d;
boolean bl2 = false;
int n9 = -(n4 >> 2);
n4 = -(n4 & 3);
int n10 = -n5;
while (n10 < 0) {
block14: {
int n11;
int n12;
int n13;
block13: {
int n14;
for (n13 = n9; n13 < 0; ++n13) {
block25: {
block24: {
block23: {
block22: {
block21: {
block20: {
block19: {
block18: {
block17: {
block16: {
block15: {
n12 = byArray[n2++];
if (bl) break block15;
n14 = n12;
if (bl) break block13;
if (n14 == 0) break block16;
nArray[n3++] = nArray2[n12 & 0xFF];
}
if (!bl) break block17;
}
++n3;
}
n12 = byArray[n2++];
if (bl) break block18;
if (n12 == 0) break block19;
nArray[n3++] = nArray2[n12 & 0xFF];
}
if (!bl) break block20;
}
++n3;
}
n12 = byArray[n2++];
if (bl) break block21;
if (n12 == 0) break block22;
nArray[n3++] = nArray2[n12 & 0xFF];
}
if (!bl) break block23;
}
++n3;
}
n12 = byArray[n2++];
if (bl) break block24;
if (n12 == 0) break block25;
nArray[n3++] = nArray2[n12 & 0xFF];
}
if (!bl) continue;
}
++n3;
if (!bl) continue;
}
n14 = n13 = n4;
}
while (n13 < 0) {
block28: {
block27: {
block26: {
n12 = byArray[n2++];
if (bl) break block26;
n11 = n12;
if (bl) break block14;
if (n11 == 0) break block27;
nArray[n3++] = nArray2[n12 & 0xFF];
}
if (!bl) break block28;
}
++n3;
}
++n13;
if (!bl) continue;
}
n3 += n6;
n2 += n7;
n11 = n10 = n10 + n8;
}
if (!bl) continue;
}
}
private void a(int[] nArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9, int n10, int n11, int n12) {
boolean bl = q.d;
boolean bl2 = false;
try {
int n13 = n3;
int n14 = -n8;
while (n14 < 0) {
block6: {
int n15;
int n16 = (n4 >> 16) * n11;
for (int i2 = -n7; i2 < 0; ++i2) {
block9: {
block8: {
block7: {
n2 = nArray2[(n3 >> 16) + n16];
if (bl) break block7;
n15 = n2;
if (bl) break block6;
if (n15 == 0) break block8;
nArray[n5++] = n2;
}
if (!bl) break block9;
}
++n5;
}
n3 += n9;
if (!bl) continue;
}
n4 += n10;
n3 = n13;
n5 += n6;
n15 = n14 = n14 + n12;
}
if (!bl) continue;
}
return;
}
catch (Exception exception) {
System.out.println(Q[1]);
return;
}
}
private void a(int[] nArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9, int n10) {
boolean bl = q.d;
boolean bl2 = false;
int n11 = 256 - n10;
int n12 = -n6;
while (n12 < 0) {
block4: {
int n13;
for (int i2 = -n5; i2 < 0; ++i2) {
block6: {
int n14;
block5: {
n13 = n2 = nArray2[n3++];
if (bl) break block4;
if (bl) break block5;
if (n13 == 0) break block6;
n14 = nArray[n4];
}
void var16_17 = n14;
nArray[n4++] = ((n2 & 0xFF00FF) * n10 + (var16_17 & 0xFF00FF) * n11 & 0xFF00FF00) + ((n2 & 0xFF00) * n10 + (var16_17 & 0xFF00) * n11 & 0xFF0000) >> 8;
if (!bl) continue;
}
++n4;
if (!bl) continue;
}
n4 += n7;
n3 += n8;
n13 = n12 = n12 + n9;
}
if (!bl) continue;
}
}
private void a(int[] nArray, byte[] byArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9) {
boolean bl = q.d;
boolean bl2 = false;
int n10 = 256 - n9;
int n11 = -n5;
while (n11 < 0) {
block4: {
int n12;
for (int i2 = -n4; i2 < 0; ++i2) {
block6: {
int n13;
int n14;
block5: {
n12 = n14 = byArray[n2++];
if (bl) break block4;
if (bl) break block5;
if (n12 == 0) break block6;
n14 = nArray2[n14 & 0xFF];
n13 = nArray[n3];
}
void var17_18 = n13;
nArray[n3++] = ((n14 & 0xFF00FF) * n9 + (var17_18 & 0xFF00FF) * n10 & 0xFF00FF00) + ((n14 & 0xFF00) * n9 + (var17_18 & 0xFF00) * n10 & 0xFF0000) >> 8;
if (!bl) continue;
}
++n3;
if (!bl) continue;
}
n3 += n6;
n2 += n7;
n12 = n11 = n11 + n8;
}
if (!bl) continue;
}
}
private void a(int[] nArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9, int n10, int n11, int n12, int n13) {
boolean bl = q.d;
boolean bl2 = false;
int n14 = 256 - n13;
try {
int n15 = n3;
int n16 = -n8;
while (n16 < 0) {
block6: {
int n17;
int n18 = (n4 >> 16) * n11;
for (int i2 = -n7; i2 < 0; ++i2) {
block9: {
block8: {
int n19;
block7: {
n17 = n2 = nArray2[(n3 >> 16) + n18];
if (bl) break block6;
if (bl) break block7;
if (n17 == 0) break block8;
n19 = nArray[n5];
}
void var21_23 = n19;
nArray[n5++] = ((n2 & 0xFF00FF) * n13 + (var21_23 & 0xFF00FF) * n14 & 0xFF00FF00) + ((n2 & 0xFF00) * n13 + (var21_23 & 0xFF00) * n14 & 0xFF0000) >> 8;
if (!bl) break block9;
}
++n5;
}
n3 += n9;
if (!bl) continue;
}
n4 += n10;
n3 = n15;
n5 += n6;
n17 = n16 = n16 + n12;
}
if (!bl) continue;
}
return;
}
catch (Exception exception) {
System.out.println(Q[8]);
return;
}
}
private void b(int[] nArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9, int n10, int n11, int n12, int n13) {
boolean bl = q.d;
boolean bl2 = false;
int n14 = n13 >> 16 & 0xFF;
int n15 = n13 >> 8 & 0xFF;
int n16 = n13 & 0xFF;
try {
int n17 = n3;
int n18 = -n8;
while (n18 < 0) {
block6: {
int n19;
int n20 = (n4 >> 16) * n11;
for (int i2 = -n7; i2 < 0; ++i2) {
block11: {
block8: {
block9: {
block10: {
int n21;
block7: {
n19 = n2 = nArray2[(n3 >> 16) + n20];
if (bl) break block6;
if (bl) break block7;
if (n19 == 0) break block8;
n21 = n2 >> 16 & 0xFF;
}
void var23_25 = n21;
int n22 = n2 >> 8 & 0xFF;
int n23 = n2 & 0xFF;
if (bl) break block9;
if (var23_25 != n22 || n22 != n23) break block10;
nArray[n5++] = (var23_25 * n14 >> 8 << 16) + (n22 * n15 >> 8 << 8) + (n23 * n16 >> 8);
if (!bl) break block11;
}
nArray[n5++] = n2;
}
if (!bl) break block11;
}
++n5;
}
n3 += n9;
if (!bl) continue;
}
n4 += n10;
n3 = n17;
n5 += n6;
n19 = n18 = n18 + n12;
}
if (!bl) continue;
}
return;
}
catch (Exception exception) {
System.out.println(Q[1]);
return;
}
}
/*
* Unable to fully structure code
*/
public void g(int var1_1, int var2_2, int var3_3, int var4_4, int var5_5) {
block116: {
block153: {
block151: {
block152: {
block115: {
block150: {
block148: {
block149: {
block114: {
block147: {
block145: {
block146: {
block144: {
block113: {
block143: {
block141: {
block142: {
block112: {
block139: {
block140: {
block137: {
block138: {
block136: {
block135: {
block134: {
block133: {
block132: {
block130: {
block131: {
block129: {
block128: {
block126: {
block127: {
block125: {
block124: {
block122: {
block123: {
block119: {
block120: {
block121: {
block117: {
block118: {
var48_6 = q.d;
var6_7 = false;
var7_8 = this.a;
var8_9 = this.b;
v0 = this.C;
if (var48_6) ** GOTO lbl16
if (v0 == null) {
this.C = new int[512];
for (var9_10 = 0; var9_10 < 256; ++var9_10) {
this.C[var9_10] = (int)(Math.sin((double)var9_10 * 0.02454369) * 32768.0);
this.C[var9_10 + 256] = (int)(Math.cos((double)var9_10 * 0.02454369) * 32768.0);
if (!var48_6) {
if (!var48_6) continue;
}
break;
}
} else {
v0 = this.r;
lbl16:
// 2 sources
var9_10 = -v0[var3_3] / 2;
}
var10_11 = -this.s[var3_3] / 2;
v1 = this.t[var3_3];
if (!var48_6) {
if (v1 != 0) {
var9_10 += this.p[var3_3];
var10_11 += this.q[var3_3];
}
v1 = var9_10 + this.n[var3_3];
}
var11_12 = v1;
var12_13 = var10_11 + this.o[var3_3];
var13_14 = var11_12;
var14_15 = var10_11;
var15_16 = var9_10;
var16_17 = var12_13;
var17_18 = this.C[var4_4 &= 255] * var5_5;
var18_19 = this.C[var4_4 + 256] * var5_5;
var19_20 = var1_1 + (var10_11 * var17_18 + var9_10 * var18_19 >> 22);
var20_21 = var2_2 + (var10_11 * var18_19 - var9_10 * var17_18 >> 22);
var21_22 = var1_1 + (var14_15 * var17_18 + var13_14 * var18_19 >> 22);
var22_23 = var2_2 + (var14_15 * var18_19 - var13_14 * var17_18 >> 22);
var23_24 = var1_1 + (var12_13 * var17_18 + var11_12 * var18_19 >> 22);
var24_25 = var2_2 + (var12_13 * var18_19 - var11_12 * var17_18 >> 22);
var25_26 = var1_1 + (var16_17 * var17_18 + var15_16 * var18_19 >> 22);
var26_27 = var2_2 + (var16_17 * var18_19 - var15_16 * var17_18 >> 22);
v2 = var5_5;
v3 = 192;
if (var48_6) break block117;
if (v2 != v3) break block118;
v2 = var4_4 & 63;
v3 = h.L & 63;
if (var48_6) break block117;
if (v2 != v3) break block118;
++h.J;
if (!var48_6) break block119;
}
v2 = var5_5;
v3 = 128;
}
if (var48_6) break block120;
if (v2 != v3) break block121;
h.L = var4_4;
if (!var48_6) break block119;
}
v2 = h.K;
v3 = 1;
}
h.K = v2 + v3;
}
var27_28 = var20_21;
var28_29 = var20_21;
v4 = var22_23;
v5 = var27_28;
if (var48_6) break block122;
if (v4 >= v5) break block123;
var27_28 = var22_23;
if (!var48_6) break block124;
}
v4 = var22_23;
v5 = var28_29;
}
if (var48_6) break block125;
if (v4 > v5) {
var28_29 = var22_23;
}
}
v4 = var24_25;
v5 = var27_28;
}
if (var48_6) break block126;
if (v4 >= v5) break block127;
var27_28 = var24_25;
if (!var48_6) break block128;
}
v4 = var24_25;
v5 = var28_29;
}
if (var48_6) break block129;
if (v4 > v5) {
var28_29 = var24_25;
}
}
v4 = var26_27;
v5 = var27_28;
}
if (var48_6) break block130;
if (v4 >= v5) break block131;
var27_28 = var26_27;
if (!var48_6) break block132;
}
v4 = var26_27;
v5 = var28_29;
}
if (var48_6) break block133;
if (v4 > v5) {
var28_29 = var26_27;
}
}
v4 = var27_28;
v5 = this.u;
}
if (var48_6) break block134;
if (v4 < v5) {
var27_28 = this.u;
}
v4 = var28_29;
if (var48_6) break block135;
v5 = this.v;
}
if (v4 <= v5) break block136;
v4 = this.v;
}
var28_29 = v4;
}
v6 = this;
if (var48_6) break block137;
if (v6.D == null) break block138;
v7 = this.D.length;
if (var48_6) break block139;
if (v7 == var8_9 + 1) break block140;
}
this.D = new int[var8_9 + 1];
this.E = new int[var8_9 + 1];
this.F = new int[var8_9 + 1];
this.G = new int[var8_9 + 1];
this.H = new int[var8_9 + 1];
v6 = this;
}
v6.I = new int[var8_9 + 1];
}
v7 = var29_30 = var27_28;
}
while (var29_30 <= var28_29) {
this.D[var29_30] = 99999999;
this.E[var29_30] = -99999999;
++var29_30;
if (!var48_6) {
if (!var48_6) continue;
}
break block112;
}
var29_30 = 0;
}
var30_31 = 0;
var31_32 = 0;
var32_33 = this.n[var3_3];
var33_34 = this.o[var3_3];
var9_10 = 0;
var10_11 = 0;
var13_14 = var32_33 - 1;
var14_15 = 0;
var11_12 = var32_33 - 1;
var12_13 = var33_34 - 1;
var15_16 = 0;
var16_17 = var33_34 - 1;
v8 = var26_27;
v9 = var20_21;
if (!var48_6) {
if (v8 != v9) {
var29_30 = (var25_26 - var19_20 << 8) / (var26_27 - var20_21);
var31_32 = (var16_17 - 0 << 8) / (var26_27 - var20_21);
}
v8 = var20_21;
v9 = var26_27;
}
if (var48_6) break block141;
if (v8 <= v9) break block142;
var36_35 = var25_26 << 8;
var37_36 = var16_17 << 8;
var34_37 = var26_27;
var35_38 = var20_21;
if (!var48_6) break block143;
}
v8 = var19_20;
v9 = 8;
}
var36_35 = v8 << v9;
var37_36 = 0;
var34_37 = var20_21;
var35_38 = var26_27;
}
v10 = var34_37;
if (!var48_6) {
if (v10 < 0) {
var36_35 -= var29_30 * var34_37;
var37_36 -= var31_32 * var34_37;
var34_37 = 0;
}
v10 = var35_38;
}
if (!var48_6) {
if (v10 > var8_9 - 1) {
var35_38 = var8_9 - 1;
}
v10 = var38_39 = var34_37;
}
while (var38_39 <= var35_38) {
this.D[var38_39] = this.E[var38_39] = var36_35;
var36_35 += var29_30;
this.G[var38_39] = 0;
this.F[var38_39] = 0;
this.H[var38_39] = this.I[var38_39] = var37_36;
var37_36 += var31_32;
++var38_39;
if (!var48_6) {
if (!var48_6) continue;
}
break block113;
}
v11 = var22_23;
v12 = var20_21;
if (var48_6) break block144;
if (v11 != v12) {
var29_30 = (var21_22 - var19_20 << 8) / (var22_23 - var20_21);
var30_31 = (var13_14 - 0 << 8) / (var22_23 - var20_21);
}
}
v11 = var20_21;
v12 = var22_23;
}
if (var48_6) break block145;
if (v11 <= v12) break block146;
var36_35 = var21_22 << 8;
var38_39 = var13_14 << 8;
var34_37 = var22_23;
var35_38 = var20_21;
if (!var48_6) break block147;
}
v11 = var19_20;
v12 = 8;
}
var36_35 = v11 << v12;
var38_39 = 0;
var34_37 = var20_21;
var35_38 = var22_23;
}
v13 = var34_37;
if (!var48_6) {
if (v13 < 0) {
var36_35 -= var29_30 * var34_37;
var38_39 -= var30_31 * var34_37;
var34_37 = 0;
}
v13 = var35_38;
}
if (!var48_6) {
if (v13 > var8_9 - 1) {
var35_38 = var8_9 - 1;
}
v13 = var39_40 = var34_37;
}
while (var39_40 <= var35_38) {
v14 = var36_35;
v15 = this.D[var39_40];
if (!var48_6) {
if (!var48_6) {
if (v14 < v15) {
this.D[var39_40] = var36_35;
this.F[var39_40] = var38_39;
this.H[var39_40] = 0;
}
v16 = var36_35;
v17 = this.E[var39_40];
}
if (!var48_6) {
if (v16 > v17) {
this.E[var39_40] = var36_35;
this.G[var39_40] = var38_39;
this.I[var39_40] = 0;
}
var36_35 += var29_30;
v16 = var38_39;
v17 = var30_31;
}
var38_39 = v16 + v17;
++var39_40;
if (!var48_6) continue;
}
break block114;
}
v14 = var24_25;
v15 = var22_23;
}
if (!var48_6) {
if (v14 != v15) {
var29_30 = (var23_24 - var21_22 << 8) / (var24_25 - var22_23);
var31_32 = (var12_13 - 0 << 8) / (var24_25 - var22_23);
}
v14 = var22_23;
v15 = var24_25;
}
if (var48_6) break block148;
if (v14 <= v15) break block149;
var36_35 = var23_24 << 8;
var38_39 = var11_12 << 8;
var37_36 = var12_13 << 8;
var34_37 = var24_25;
var35_38 = var22_23;
if (!var48_6) break block150;
}
var36_35 = var21_22 << 8;
v14 = var13_14;
v15 = 8;
}
var38_39 = v14 << v15;
var37_36 = 0;
var34_37 = var22_23;
var35_38 = var24_25;
}
v18 = var34_37;
if (!var48_6) {
if (v18 < 0) {
var36_35 -= var29_30 * var34_37;
var37_36 -= var31_32 * var34_37;
var34_37 = 0;
}
v18 = var35_38;
}
if (!var48_6) {
if (v18 > var8_9 - 1) {
var35_38 = var8_9 - 1;
}
v18 = var39_40 = var34_37;
}
while (var39_40 <= var35_38) {
v19 = var36_35;
v20 = this.D[var39_40];
if (!var48_6) {
if (!var48_6) {
if (v19 < v20) {
this.D[var39_40] = var36_35;
this.F[var39_40] = var38_39;
this.H[var39_40] = var37_36;
}
v21 = var36_35;
v22 = this.E[var39_40];
}
if (!var48_6) {
if (v21 > v22) {
this.E[var39_40] = var36_35;
this.G[var39_40] = var38_39;
this.I[var39_40] = var37_36;
}
var36_35 += var29_30;
v21 = var37_36;
v22 = var31_32;
}
var37_36 = v21 + v22;
++var39_40;
if (!var48_6) continue;
}
break block115;
}
v19 = var26_27;
v20 = var24_25;
}
if (!var48_6) {
if (v19 != v20) {
var29_30 = (var25_26 - var23_24 << 8) / (var26_27 - var24_25);
var30_31 = (0 - var11_12 << 8) / (var26_27 - var24_25);
}
v19 = var24_25;
v20 = var26_27;
}
if (var48_6) break block151;
if (v19 <= v20) break block152;
var36_35 = var25_26 << 8;
var38_39 = 0;
var37_36 = var16_17 << 8;
var34_37 = var26_27;
var35_38 = var24_25;
if (!var48_6) break block153;
}
var36_35 = var23_24 << 8;
var38_39 = var11_12 << 8;
v19 = var12_13;
v20 = 8;
}
var37_36 = v19 << v20;
var34_37 = var24_25;
var35_38 = var26_27;
}
v23 = var34_37;
if (!var48_6) {
if (v23 < 0) {
var36_35 -= var29_30 * var34_37;
var38_39 -= var30_31 * var34_37;
var34_37 = 0;
}
v23 = var35_38;
}
if (!var48_6) {
if (v23 > var8_9 - 1) {
var35_38 = var8_9 - 1;
}
v23 = var39_40 = var34_37;
}
while (var39_40 <= var35_38) {
v24 = var36_35;
v25 = this.D[var39_40];
if (!var48_6) {
if (!var48_6) {
if (v24 < v25) {
this.D[var39_40] = var36_35;
this.F[var39_40] = var38_39;
this.H[var39_40] = var37_36;
}
v26 = var36_35;
v27 = this.E[var39_40];
}
if (!var48_6) {
if (v26 > v27) {
this.E[var39_40] = var36_35;
this.G[var39_40] = var38_39;
this.I[var39_40] = var37_36;
}
var36_35 += var29_30;
v26 = var38_39;
v27 = var30_31;
}
var38_39 = v26 + v27;
++var39_40;
if (!var48_6) continue;
}
break block116;
}
v24 = var27_28;
v25 = var7_8;
}
var39_40 = v24 * v25;
var40_41 = this.k[var3_3];
for (var41_42 = var27_28; var41_42 < var28_29; ++var41_42) {
block158: {
block159: {
block160: {
block161: {
block156: {
block157: {
block155: {
block154: {
var42_43 = this.D[var41_42] >> 8;
var43_44 = this.E[var41_42] >> 8;
v28 = var43_44 - var42_43;
if (!var48_6) {
if (v28 <= 0) {
var39_40 += var7_8;
if (!var48_6) continue;
}
v28 = this.F[var41_42] << 9;
}
var44_45 = v28;
var45_46 = ((this.G[var41_42] << 9) - var44_45) / (var43_44 - var42_43);
var46_47 = this.H[var41_42] << 9;
var47_48 = ((this.I[var41_42] << 9) - var46_47) / (var43_44 - var42_43);
v29 = var42_43;
v30 = this.w;
if (var48_6) break block154;
if (v29 < v30) {
var44_45 += (this.w - var42_43) * var45_46;
var46_47 += (this.w - var42_43) * var47_48;
var42_43 = this.w;
}
v29 = var43_44;
if (var48_6) break block155;
v30 = this.x;
}
if (v29 > v30) {
var43_44 = this.x;
}
v29 = (int)this.y;
}
if (var48_6) break block156;
if (v29 == 0) break block157;
v31 = var41_42 & 1;
if (var48_6) break block158;
if (v31 != 0) break block159;
}
v32 = this;
if (var48_6) break block160;
v29 = v32.t[var3_3];
}
if (v29 != 0) break block161;
this.b(this.g, var40_41, 0, var39_40 + var42_43, var44_45, var46_47, var45_46, var47_48, var42_43 - var43_44, var32_33);
if (!var48_6) break block159;
}
v32 = this;
}
v32.c(this.g, var40_41, 0, var39_40 + var42_43, var44_45, var46_47, var45_46, var47_48, var42_43 - var43_44, var32_33);
}
v31 = var39_40 + var7_8;
}
var39_40 = v31;
if (!var48_6) continue;
}
}
private void b(int[] nArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9) {
for (n2 = n8; n2 < 0; ++n2) {
this.g[n3++] = nArray2[(n4 >> 17) + (n5 >> 17) * n9];
n4 += n6;
n5 += n7;
if (!q.d) continue;
}
}
private void c(int[] nArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9) {
boolean bl = q.d;
boolean bl2 = false;
for (int i2 = n8; i2 < 0; ++i2) {
block5: {
block4: {
block3: {
n2 = nArray2[(n4 >> 17) + (n5 >> 17) * n9];
if (bl) break block3;
if (n2 == 0) break block4;
this.g[n3++] = n2;
}
if (!bl) break block5;
}
++n3;
}
n4 += n6;
n5 += n7;
if (!bl) continue;
}
}
public void a(int n2, int n3, int n4, int n5, int n6, int n7, int n8) {
this.f(n2, n3, n4, n5, n6);
}
public void a(int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9, boolean bl) {
boolean bl2 = q.d;
try {
int n10;
int n11;
int n12 = n7;
if (!bl2) {
if (n12 == 0) {
n7 = 0xFFFFFF;
}
n12 = n8;
}
if (!bl2) {
if (n12 == 0) {
n8 = 0xFFFFFF;
}
n12 = this.n[n6];
}
int n13 = n12;
int n14 = this.o[n6];
int n15 = 0;
int n16 = 0;
int n17 = n9 << 16;
int n18 = (n13 << 16) / n4;
int n19 = (n14 << 16) / n5;
int n20 = -(n9 << 16) / n5;
int n21 = this.t[n6];
if (!bl2) {
if (n21 != 0) {
n11 = this.r[n6];
n10 = this.s[n6];
n18 = (n11 << 16) / n4;
n19 = (n10 << 16) / n5;
int n22 = this.p[n6];
int n23 = this.q[n6];
int n24 = bl;
if (!bl2) {
if (n24 != 0) {
n22 = n11 - this.n[n6] - n22;
}
n2 += (n22 * n4 + n11 - 1) / n11;
n24 = (n23 * n5 + n10 - 1) / n10;
}
int n25 = n24;
n3 += n25;
n17 += n25 * n20;
int n26 = n22 * n4 % n11;
if (!bl2) {
if (n26 != 0) {
n15 = (n11 - n22 * n4 % n11 << 16) / n4;
}
n26 = n23 * n5 % n10;
}
if (!bl2) {
if (n26 != 0) {
n16 = (n10 - n23 * n5 % n10 << 16) / n5;
}
n4 = ((this.n[n6] << 16) - n15 + n18 - 1) / n18;
n26 = ((this.o[n6] << 16) - n16 + n19 - 1) / n19;
}
n5 = n26;
}
n21 = n3 * this.a;
}
n11 = n21;
n17 += n2 << 16;
int n28 = n3;
n28 = this.u;
if (!bl2) {
if (n27 < n28) {
n10 = this.u - n3;
n5 -= n10;
n3 = this.u;
n11 += n10 * this.a;
n16 += n19 * n10;
n17 += n20 * n10;
}
int n28 = n3 + n5;
n28 = this.v;
}
if (!bl2) {
if (n27 >= n28) {
n5 -= n3 + n5 - this.v + 1;
}
int n28 = n11 / this.a;
n28 = 1;
}
n10 = n27 & n28;
int n29 = this.y;
if (!bl2) {
if (n29 == 0) {
n10 = 2;
}
n29 = n8;
}
if (n29 == 0xFFFFFF) {
if (this.k[n6] != null) {
if (!bl) {
this.a(this.g, this.k[n6], 0, n15, n16, n11, n4, n5, n18, n19, n13, n7, n17, n20, n10);
return;
}
this.a(this.g, this.k[n6], 0, (this.n[n6] << 16) - n15 - 1, n16, n11, n4, n5, -n18, n19, n13, n7, n17, n20, n10);
return;
}
if (!bl) {
this.a(this.g, this.l[n6], this.m[n6], 0, n15, n16, n11, n4, n5, n18, n19, n13, n7, n17, n20, n10);
return;
}
this.a(this.g, this.l[n6], this.m[n6], 0, (this.n[n6] << 16) - n15 - 1, n16, n11, n4, n5, -n18, n19, n13, n7, n17, n20, n10);
return;
}
if (this.k[n6] != null) {
if (!bl) {
this.a(this.g, this.k[n6], 0, n15, n16, n11, n4, n5, n18, n19, n13, n7, n8, n17, n20, n10);
return;
}
this.a(this.g, this.k[n6], 0, (this.n[n6] << 16) - n15 - 1, n16, n11, n4, n5, -n18, n19, n13, n7, n8, n17, n20, n10);
return;
}
if (!bl) {
this.a(this.g, this.l[n6], this.m[n6], 0, n15, n16, n11, n4, n5, n18, n19, n13, n7, n8, n17, n20, n10);
return;
}
this.a(this.g, this.l[n6], this.m[n6], 0, (this.n[n6] << 16) - n15 - 1, n16, n11, n4, n5, -n18, n19, n13, n7, n8, n17, n20, n10);
return;
}
catch (Exception exception) {
System.out.println(Q[0]);
return;
}
}
private void a(int[] nArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9, int n10, int n11, int n12, int n13, int n14) {
boolean bl = q.d;
boolean bl2 = false;
int n15 = n11 >> 16 & 0xFF;
int n16 = n11 >> 8 & 0xFF;
int n17 = n11 & 0xFF;
try {
int n18 = n3;
for (int i2 = -n7; i2 < 0; ++i2) {
int n19;
block11: {
block12: {
int n20;
int n21 = (n4 >> 16) * n10;
int n22 = n12 >> 16;
int n23 = n6;
int n24 = n22;
int n25 = this.w;
if (!bl) {
if (n24 < n25) {
n20 = this.w - n22;
n23 -= n20;
n22 = this.w;
n3 += n8 * n20;
}
n24 = n22 + n23;
n25 = this.x;
}
if (!bl) {
if (n24 >= n25) {
n20 = n22 + n23 - this.x;
n23 -= n20;
}
n24 = 1;
n25 = n14;
}
n19 = n14 = n24 - n25;
if (bl) break block11;
if (n19 == 0) break block12;
for (n20 = n22; n20 < n22 + n23; ++n20) {
int n26;
block13: {
block14: {
block16: {
int n27;
int n28;
int n29;
int n30;
int n31;
block15: {
n19 = n2 = nArray2[(n3 >> 16) + n21];
if (bl) break block11;
if (bl) break block13;
if (n19 == 0) break block14;
n31 = n2 >> 16 & 0xFF;
n30 = n2 >> 8 & 0xFF;
n29 = n2 & 0xFF;
n28 = n31;
n27 = n30;
if (bl) break block15;
if (n28 != n27) break block16;
n28 = n30;
n27 = n29;
}
if (n28 != n27) break block16;
nArray[n20 + n5] = (n31 * n15 >> 8 << 16) + (n30 * n16 >> 8 << 8) + (n29 * n17 >> 8);
if (!bl) break block14;
}
nArray[n20 + n5] = n2;
}
n26 = n3 + n8;
}
n3 = n26;
if (!bl) continue;
}
}
n4 += n9;
n3 = n18;
n5 += this.a;
n19 = n12 + n13;
}
n12 = n19;
if (!bl) continue;
}
return;
}
catch (Exception exception) {
System.out.println(Q[3]);
return;
}
}
private void a(int[] nArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9, int n10, int n11, int n12, int n13, int n14, int n15) {
boolean bl = q.d;
boolean bl2 = false;
int n16 = n11 >> 16 & 0xFF;
int n17 = n11 >> 8 & 0xFF;
int n18 = n11 & 0xFF;
int n19 = n12 >> 16 & 0xFF;
int n20 = n12 >> 8 & 0xFF;
int n21 = n12 & 0xFF;
try {
int n22 = n3;
for (int i2 = -n7; i2 < 0; ++i2) {
int n23;
block11: {
block12: {
int n24;
int n25 = (n4 >> 16) * n10;
int n26 = n13 >> 16;
int n27 = n6;
int n28 = n26;
int n29 = this.w;
if (!bl) {
if (n28 < n29) {
n24 = this.w - n26;
n27 -= n24;
n26 = this.w;
n3 += n8 * n24;
}
n28 = n26 + n27;
n29 = this.x;
}
if (!bl) {
if (n28 >= n29) {
n24 = n26 + n27 - this.x;
n27 -= n24;
}
n28 = 1;
n29 = n15;
}
n23 = n15 = n28 - n29;
if (bl) break block11;
if (n23 == 0) break block12;
for (n24 = n26; n24 < n26 + n27; ++n24) {
int n30;
block13: {
block14: {
block18: {
int n31;
int n32;
int n33;
int n34;
int n35;
block17: {
block15: {
block16: {
n23 = n2 = nArray2[(n3 >> 16) + n25];
if (bl) break block11;
if (bl) break block13;
if (n23 == 0) break block14;
n35 = n2 >> 16 & 0xFF;
n34 = n2 >> 8 & 0xFF;
n33 = n2 & 0xFF;
n32 = n35;
n31 = n34;
if (bl) break block15;
if (n32 != n31) break block16;
n32 = n34;
n31 = n33;
if (bl) break block15;
if (n32 != n31) break block16;
nArray[n24 + n5] = (n35 * n16 >> 8 << 16) + (n34 * n17 >> 8 << 8) + (n33 * n18 >> 8);
if (!bl) break block14;
}
n32 = n35;
n31 = 255;
}
if (bl) break block17;
if (n32 != n31) break block18;
n32 = n34;
n31 = n33;
}
if (n32 != n31) break block18;
nArray[n24 + n5] = (n35 * n19 >> 8 << 16) + (n34 * n20 >> 8 << 8) + (n33 * n21 >> 8);
if (!bl) break block14;
}
nArray[n24 + n5] = n2;
}
n30 = n3 + n8;
}
n3 = n30;
if (!bl) continue;
}
}
n4 += n9;
n3 = n22;
n5 += this.a;
n23 = n13 + n14;
}
n13 = n23;
if (!bl) continue;
}
return;
}
catch (Exception exception) {
System.out.println(Q[3]);
return;
}
}
private void a(int[] nArray, byte[] byArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9, int n10, int n11, int n12, int n13, int n14) {
boolean bl = q.d;
boolean bl2 = false;
int n15 = n11 >> 16 & 0xFF;
int n16 = n11 >> 8 & 0xFF;
int n17 = n11 & 0xFF;
try {
int n18 = n3;
for (int i2 = -n7; i2 < 0; ++i2) {
int n19;
block11: {
block12: {
int n20;
int n21 = (n4 >> 16) * n10;
int n22 = n12 >> 16;
int n23 = n6;
int n24 = n22;
int n25 = this.w;
if (!bl) {
if (n24 < n25) {
n20 = this.w - n22;
n23 -= n20;
n22 = this.w;
n3 += n8 * n20;
}
n24 = n22 + n23;
n25 = this.x;
}
if (!bl) {
if (n24 >= n25) {
n20 = n22 + n23 - this.x;
n23 -= n20;
}
n24 = 1;
n25 = n14;
}
n19 = n14 = n24 - n25;
if (bl) break block11;
if (n19 == 0) break block12;
for (n20 = n22; n20 < n22 + n23; ++n20) {
int n26;
block13: {
block14: {
block16: {
int n27;
int n28;
int n29;
int n30;
int n31;
block15: {
n19 = n2 = byArray[(n3 >> 16) + n21] & 0xFF;
if (bl) break block11;
if (bl) break block13;
if (n19 == 0) break block14;
n2 = nArray2[n2];
n31 = n2 >> 16 & 0xFF;
n30 = n2 >> 8 & 0xFF;
n29 = n2 & 0xFF;
n28 = n31;
n27 = n30;
if (bl) break block15;
if (n28 != n27) break block16;
n28 = n30;
n27 = n29;
}
if (n28 != n27) break block16;
nArray[n20 + n5] = (n31 * n15 >> 8 << 16) + (n30 * n16 >> 8 << 8) + (n29 * n17 >> 8);
if (!bl) break block14;
}
nArray[n20 + n5] = n2;
}
n26 = n3 + n8;
}
n3 = n26;
if (!bl) continue;
}
}
n4 += n9;
n3 = n18;
n5 += this.a;
n19 = n12 + n13;
}
n12 = n19;
if (!bl) continue;
}
return;
}
catch (Exception exception) {
System.out.println(Q[3]);
return;
}
}
private void a(int[] nArray, byte[] byArray, int[] nArray2, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9, int n10, int n11, int n12, int n13, int n14, int n15) {
boolean bl = q.d;
boolean bl2 = false;
int n16 = n11 >> 16 & 0xFF;
int n17 = n11 >> 8 & 0xFF;
int n18 = n11 & 0xFF;
int n19 = n12 >> 16 & 0xFF;
int n20 = n12 >> 8 & 0xFF;
int n21 = n12 & 0xFF;
try {
int n22 = n3;
for (int i2 = -n7; i2 < 0; ++i2) {
int n23;
block11: {
block12: {
int n24;
int n25 = (n4 >> 16) * n10;
int n26 = n13 >> 16;
int n27 = n6;
int n28 = n26;
int n29 = this.w;
if (!bl) {
if (n28 < n29) {
n24 = this.w - n26;
n27 -= n24;
n26 = this.w;
n3 += n8 * n24;
}
n28 = n26 + n27;
n29 = this.x;
}
if (!bl) {
if (n28 >= n29) {
n24 = n26 + n27 - this.x;
n27 -= n24;
}
n28 = 1;
n29 = n15;
}
n23 = n15 = n28 - n29;
if (bl) break block11;
if (n23 == 0) break block12;
for (n24 = n26; n24 < n26 + n27; ++n24) {
int n30;
block13: {
block14: {
block18: {
int n31;
int n32;
int n33;
int n34;
int n35;
block17: {
block15: {
block16: {
n23 = n2 = byArray[(n3 >> 16) + n25] & 0xFF;
if (bl) break block11;
if (bl) break block13;
if (n23 == 0) break block14;
n2 = nArray2[n2];
n35 = n2 >> 16 & 0xFF;
n34 = n2 >> 8 & 0xFF;
n33 = n2 & 0xFF;
n32 = n35;
n31 = n34;
if (bl) break block15;
if (n32 != n31) break block16;
n32 = n34;
n31 = n33;
if (bl) break block15;
if (n32 != n31) break block16;
nArray[n24 + n5] = (n35 * n16 >> 8 << 16) + (n34 * n17 >> 8 << 8) + (n33 * n18 >> 8);
if (!bl) break block14;
}
n32 = n35;
n31 = 255;
}
if (bl) break block17;
if (n32 != n31) break block18;
n32 = n34;
n31 = n33;
}
if (n32 != n31) break block18;
nArray[n24 + n5] = (n35 * n19 >> 8 << 16) + (n34 * n20 >> 8 << 8) + (n33 * n21 >> 8);
if (!bl) break block14;
}
nArray[n24 + n5] = n2;
}
n30 = n3 + n8;
}
n3 = n30;
if (!bl) continue;
}
}
n4 += n9;
n3 = n22;
n5 += this.a;
n23 = n13 + n14;
}
n13 = n23;
if (!bl) continue;
}
return;
}
catch (Exception exception) {
System.out.println(Q[3]);
return;
}
}
public static void a(String string, int n2, a a2) {
block31: {
int n3;
block32: {
int n4;
boolean[] blArray;
int n5;
block30: {
boolean bl;
block29: {
int n6;
block28: {
int n7;
int n8;
block27: {
bl = q.d;
boolean bl2 = false;
n6 = 0;
boolean bl3 = false;
string = string.toLowerCase();
int n9 = string.startsWith(Q[5]);
if (!bl) {
if (n9 != 0) {
string = string.substring(9);
}
n9 = string.startsWith("h");
}
if (!bl) {
if (n9 != 0) {
string = string.substring(1);
}
n9 = string.startsWith("f");
}
if (!bl) {
if (n9 != 0) {
string = string.substring(1);
n6 = 1;
}
n9 = string.startsWith("d");
}
if (!bl) {
if (n9 != 0) {
string = string.substring(1);
bl3 = true;
}
n9 = string.endsWith(Q[6]);
}
if (!bl) {
if (n9 != 0) {
string = string.substring(0, string.length() - 3);
}
n9 = 0;
}
n8 = n9;
int n10 = string.endsWith("b");
if (!bl) {
if (n10 != 0) {
n8 = 1;
string = string.substring(0, string.length() - 1);
}
n10 = string.endsWith("p");
}
if (!bl) {
if (n10 != 0) {
string = string.substring(0, string.length() - 1);
}
n10 = Integer.parseInt(string);
}
n3 = n10;
Font font = new Font(Q[4], n8, n3);
FontMetrics fontMetrics = a2.getFontMetrics(font);
String string2 = Q[7];
N = 855;
for (n7 = 0; n7 < 95; ++n7) {
h.a(font, fontMetrics, Q[7].charAt(n7), n7, a2, n2, bl3);
if (!bl) {
if (!bl) continue;
}
break block27;
}
h.z[n2] = new byte[N];
}
for (n7 = 0; n7 < N; ++n7) {
h.z[n2][n7] = O[n7];
if (!bl) {
if (!bl) continue;
}
break block28;
}
n5 = n8;
if (bl) break block29;
if (n5 != 1) break block28;
n5 = M[n2];
if (bl) break block29;
if (n5 != 0) {
h.M[n2] = false;
h.a("f" + n3 + "p", n2, a2);
}
}
n5 = n6;
}
if (bl) break block30;
if (n5 == 0) break block31;
blArray = M;
n4 = n2;
if (bl) break block32;
n5 = blArray[n4];
}
if (n5 != 0) break block31;
blArray = M;
n4 = n2;
}
blArray[n4] = false;
h.a("d" + n3 + "p", n2, a2);
}
}
public static void a(Font font, FontMetrics fontMetrics, char n2, int n3, a a2, int n4, boolean n5) {
int n6;
int n7;
int n8;
int n9;
int n10;
int n11;
int n12;
int[] nArray;
int n13;
boolean bl;
block35: {
int n14;
int n15;
int n16;
int n17;
int n18;
int n19;
block34: {
int n20;
block33: {
int n21;
block32: {
int n22;
block36: {
block31: {
bl = q.d;
boolean bl2 = false;
n19 = n13 = fontMetrics.charWidth((char)n2);
n22 = n5;
if (bl) break block36;
if (n22 == 0) break block31;
try {
block38: {
int n23;
int n24;
block46: {
block45: {
block44: {
block43: {
block42: {
block41: {
block40: {
block39: {
block37: {
n24 = n2;
n23 = 47;
if (!bl) {
if (n24 == n23) {
n5 = 0;
}
n24 = n2;
n23 = 102;
}
if (bl) break block37;
if (n24 == n23) break block38;
n24 = n2;
n23 = 116;
}
if (bl) break block39;
if (n24 == n23) break block38;
n24 = n2;
n23 = 119;
}
if (bl) break block40;
if (n24 == n23) break block38;
n24 = n2;
n23 = 118;
}
if (bl) break block41;
if (n24 == n23) break block38;
n24 = n2;
n23 = 107;
}
if (bl) break block42;
if (n24 == n23) break block38;
n24 = n2;
n23 = 120;
}
if (bl) break block43;
if (n24 == n23) break block38;
n24 = n2;
n23 = 121;
}
if (bl) break block44;
if (n24 == n23) break block38;
n24 = n2;
n23 = 65;
}
if (bl) break block45;
if (n24 == n23) break block38;
n24 = n2;
n23 = 86;
}
if (bl) break block46;
if (n24 == n23) break block38;
n24 = n2;
n23 = 87;
}
if (n24 != n23) break block31;
}
++n13;
}
catch (Exception exception) {
// empty catch block
}
}
n22 = fontMetrics.getMaxAscent();
}
n18 = n22;
n17 = fontMetrics.getMaxAscent() + fontMetrics.getMaxDescent();
n16 = fontMetrics.getHeight();
Image image = a2.createImage(n13, n17);
Graphics graphics = image.getGraphics();
graphics.setColor(Color.black);
graphics.fillRect(0, 0, n13, n17);
graphics.setColor(Color.white);
graphics.setFont(font);
graphics.drawString(String.valueOf((char)n2), 0, n18);
int n25 = n5;
if (!bl) {
if (n25 != 0) {
graphics.drawString(String.valueOf((char)n2), 1, n18);
}
n25 = n13 * n17;
}
nArray = new int[n25];
PixelGrabber pixelGrabber = new PixelGrabber(image, 0, 0, n13, n17, nArray, 0, n13);
try {
pixelGrabber.grabPixels();
}
catch (InterruptedException interruptedException) {
return;
}
image.flush();
image = null;
n12 = 0;
n15 = 0;
n11 = n13;
n10 = n17;
n9 = 0;
block4: while (true) {
int n26 = n9;
block5: while (n26 < n17) {
n21 = 0;
if (bl) break block32;
for (n8 = v149491; n8 < n13; ++n8) {
n7 = nArray[n8 + n9 * n13];
n26 = n7 & 0xFFFFFF;
if (bl) continue block5;
if (!bl) {
if (n26 == 0 && !bl) continue;
int n27 = n15 = n9;
}
if (!bl) break block4;
if (!bl) continue;
}
++n9;
if (!bl) continue block4;
}
break;
}
n21 = 0;
}
n9 = n21;
block7: while (true) {
int n28 = n9;
block8: while (n28 < n13) {
n20 = 0;
if (bl) break block33;
for (n8 = v149517; n8 < n17; ++n8) {
n7 = nArray[n9 + n8 * n13];
n28 = n7 & 0xFFFFFF;
if (bl) continue block8;
if (!bl) {
if (n28 == 0 && !bl) continue;
int n29 = n12 = n9;
}
if (!bl) break block7;
if (!bl) continue;
}
++n9;
if (!bl) continue block7;
}
break;
}
n20 = n17 - 1;
}
n9 = n20;
block10: while (true) {
int n30 = n9;
block11: while (n30 >= 0) {
n14 = 0;
if (bl) break block34;
for (n8 = v149544; n8 < n13; ++n8) {
n7 = nArray[n8 + n9 * n13];
n30 = n7 & 0xFFFFFF;
if (bl) continue block11;
if (!bl) {
if (n30 == 0 && !bl) continue;
int n31 = n10 = n9 + 1;
}
if (!bl) break block10;
if (!bl) continue;
}
--n9;
if (!bl) continue block10;
}
break;
}
n14 = n13 - 1;
}
n9 = n14;
block13: while (true) {
int n32 = n9;
block14: while (n32 >= 0) {
n6 = 0;
if (bl) break block35;
for (n8 = v149653; n8 < n17; ++n8) {
n7 = nArray[n9 + n8 * n13];
n32 = n7 & 0xFFFFFF;
if (bl) continue block14;
if (!bl) {
if (n32 == 0 && !bl) continue;
int n33 = n11 = n9 + 1;
}
if (!bl) break block13;
if (!bl) continue;
}
--n9;
if (!bl) continue block13;
}
break;
}
h.O[n3 * 9] = (byte)(N / 16384);
h.O[n3 * 9 + 1] = (byte)(N / 128 & 0x7F);
h.O[n3 * 9 + 2] = (byte)(N & 0x7F);
h.O[n3 * 9 + 3] = (byte)(n11 - n12);
h.O[n3 * 9 + 4] = (byte)(n10 - n15);
h.O[n3 * 9 + 5] = (byte)n12;
h.O[n3 * 9 + 6] = (byte)(n18 - n15);
h.O[n3 * 9 + 7] = (byte)n19;
h.O[n3 * 9 + 8] = (byte)n16;
n6 = n15;
}
n9 = n6;
block16: while (true) {
int n34 = n9;
int n35 = n10;
block17: while (n34 < n35) {
n8 = n12;
while (n8 < n11) {
n7 = nArray[n8 + n9 * n13] & 0xFF;
if (!bl) {
n34 = n7;
n35 = 30;
if (bl) continue block17;
if (n34 > n35 && n7 < 230) {
h.M[n4] = true;
}
h.O[h.N++] = (byte)n7;
++n8;
}
if (!bl) continue;
}
++n9;
if (!bl) continue block16;
}
break;
}
}
public void a(String string, int n2, int n3, int n4, int n5) {
this.c(string, n2 - this.a(string, n4), n3, n4, n5);
}
public void b(String string, int n2, int n3, int n4, int n5) {
this.c(string, n2 - this.a(string, n4) / 2, n3, n4, n5);
}
public void a(String string, int n2, int n3, int n4, int n5, int n6) {
boolean bl = q.d;
boolean bl2 = false;
try {
int n7;
int n8;
block15: {
int n9 = 0;
byte[] byArray = z[n4];
n8 = 0;
int n10 = 0;
for (int i2 = 0; i2 < string.length(); ++i2) {
block18: {
int n11;
int n12;
block19: {
block20: {
block16: {
block17: {
n7 = string.charAt(i2);
if (bl) break block15;
n12 = 64;
if (bl) break block16;
if (n7 != n12) break block17;
n11 = i2 + 4;
n12 = string.length();
if (bl) break block16;
if (n11 >= n12) break block17;
n11 = string.charAt(i2 + 4);
n12 = 64;
if (bl) break block16;
if (n11 != n12) break block17;
i2 += 4;
if (!bl) break block18;
}
n11 = string.charAt(i2);
n12 = 126;
}
if (bl) break block19;
if (n11 != n12) break block20;
n11 = i2 + 4;
n12 = string.length();
if (bl) break block19;
if (n11 >= n12) break block20;
n11 = string.charAt(i2 + 4);
n12 = 126;
if (bl) break block19;
if (n11 != n12) break block20;
i2 += 4;
if (!bl) break block18;
}
n11 = n9;
n12 = byArray[A[string.charAt(i2)] + 7];
}
n9 = n11 + n12;
}
int n13 = string.charAt(i2);
int n14 = 32;
if (!bl) {
if (n13 == n14) {
n10 = i2;
}
n13 = string.charAt(i2);
n14 = 37;
}
if (!bl) {
if (n13 == n14) {
n10 = i2;
n9 = 1000;
}
n13 = n9;
n14 = n6;
}
if (!bl) {
if (n13 <= n14) continue;
n13 = n10;
n14 = n8;
}
if (!bl) {
if (n13 <= n14) {
n10 = i2;
}
this.b(string.substring(n8, n10), n2, n3, n4, n5);
n9 = 0;
n8 = i2 = n10 + 1;
n13 = n3;
n14 = this.c(n4);
}
n3 = n13 + n14;
if (!bl) continue;
}
n7 = n9;
}
if (n7 > 0) {
this.b(string.substring(n8), n2, n3, n4, n5);
return;
}
}
catch (Exception exception) {
System.out.println(Q[28] + exception);
exception.printStackTrace();
}
}
public void c(String string, int n2, int n3, int n4, int n5) {
boolean bl = q.d;
boolean bl2 = false;
try {
byte[] byArray = z[n4];
for (int i2 = 0; i2 < string.length(); ++i2) {
int n6;
block66: {
int n7;
block67: {
block64: {
block65: {
int n8;
block55: {
block56: {
block57: {
block58: {
int n9;
block63: {
int n10;
block62: {
char c2;
block61: {
block60: {
char c3;
block59: {
int n11;
block17: {
block18: {
block21: {
int n12;
block54: {
block52: {
block53: {
block50: {
block51: {
block48: {
block49: {
block46: {
block47: {
block44: {
block45: {
block42: {
block43: {
block40: {
block41: {
block38: {
block39: {
block36: {
block37: {
block34: {
block35: {
block32: {
block33: {
block30: {
block31: {
block28: {
block29: {
block26: {
block27: {
block24: {
block25: {
block22: {
block23: {
block19: {
block20: {
int n11 = string.charAt(i2);
n11 = 64;
if (bl) break block17;
if (n8 != n11) break block18;
int n11 = i2 + 4;
n11 = string.length();
if (bl) break block17;
if (n8 >= n11) break block18;
int n11 = string.charAt(i2 + 4);
n11 = 64;
if (bl) break block17;
if (n8 != n11) break block18;
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[23]);
if (bl) break block19;
if (n12 == 0) break block20;
n5 = 0xFF0000;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[10]);
}
if (bl) break block22;
if (n12 == 0) break block23;
n5 = 16748608;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[13]);
}
if (bl) break block24;
if (n12 == 0) break block25;
n5 = 0xFFFF00;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[25]);
}
if (bl) break block26;
if (n12 == 0) break block27;
n5 = 65280;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[26]);
}
if (bl) break block28;
if (n12 == 0) break block29;
n5 = 255;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[24]);
}
if (bl) break block30;
if (n12 == 0) break block31;
n5 = 65535;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[20]);
}
if (bl) break block32;
if (n12 == 0) break block33;
n5 = 0xFF00FF;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[21]);
}
if (bl) break block34;
if (n12 == 0) break block35;
n5 = 0xFFFFFF;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[9]);
}
if (bl) break block36;
if (n12 == 0) break block37;
n5 = 0;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[14]);
}
if (bl) break block38;
if (n12 == 0) break block39;
n5 = 0xC00000;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[17]);
}
if (bl) break block40;
if (n12 == 0) break block41;
n5 = 16748608;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[22]);
}
if (bl) break block42;
if (n12 == 0) break block43;
n5 = (int)(Math.random() * 1.6777215E7);
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[27]);
}
if (bl) break block44;
if (n12 == 0) break block45;
n5 = 0xFFB000;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[15]) ? 1 : 0;
}
if (bl) break block46;
if (n12 == 0) break block47;
n5 = 0xFF7000;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[12]) ? 1 : 0;
}
if (bl) break block48;
if (n12 == 0) break block49;
n5 = 0xFF3000;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[11]) ? 1 : 0;
}
if (bl) break block50;
if (n12 == 0) break block51;
n5 = 0xC0FF00;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[16]) ? 1 : 0;
}
if (bl) break block52;
if (n12 == 0) break block53;
n5 = 0x80FF00;
if (!bl) break block21;
}
n12 = string.substring(i2 + 1, i2 + 4).equalsIgnoreCase(Q[19]) ? 1 : 0;
}
if (bl) break block54;
if (n12 == 0) break block21;
n12 = 0x40FF00;
}
n5 = n12;
}
i2 += 4;
if (!bl) continue;
}
n8 = string.charAt(i2);
if (bl) break block55;
n11 = 126;
}
if (n8 != n11) break block56;
n8 = i2 + 4;
if (bl) break block55;
if (n8 >= string.length()) break block56;
n8 = string.charAt(i2 + 4);
if (bl) break block55;
if (n8 != 126) break block56;
n7 = string.charAt(i2 + 1);
c3 = string.charAt(i2 + 2);
c2 = string.charAt(i2 + 3);
if (bl) break block57;
if (n7 < 48) break block58;
int n10 = n7;
n10 = 57;
if (bl) break block59;
if (n9 > n10) break block58;
int n10 = c3;
n10 = 48;
}
if (bl) break block60;
if (n9 < n10) break block58;
int n10 = c3;
n10 = 57;
}
if (bl) break block61;
if (n9 > n10) break block58;
int n10 = c2;
n10 = 48;
}
if (bl) break block62;
if (n9 < n10) break block58;
n9 = c2;
if (bl) break block63;
n10 = 57;
}
if (n9 > n10) break block58;
n9 = Integer.parseInt(string.substring(i2 + 1, i2 + 4));
}
n2 = n9;
}
i2 += 4;
}
if (!bl) continue;
}
n8 = A[string.charAt(i2)];
}
n7 = n8;
n6 = this.B;
if (bl) break block64;
if (n6 == 0) break block65;
n6 = M[n4];
if (bl) break block64;
if (n6 != 0) break block65;
n6 = n5;
if (bl) break block64;
if (n6 != 0) {
this.a(n7, n2 + 1, n3, 0, byArray, M[n4]);
}
}
n6 = this.B;
}
if (bl) break block66;
if (n6 == 0) break block67;
n6 = M[n4];
if (bl) break block66;
if (n6 != 0) break block67;
n6 = n5;
if (bl) break block66;
if (n6 != 0) {
this.a(n7, n2, n3 + 1, 0, byArray, M[n4]);
}
}
this.a(n7, n2, n3, n5, byArray, M[n4]);
n6 = n2 + byArray[n7 + 7];
}
n2 = n6;
if (!bl) continue;
}
return;
}
catch (Exception exception) {
System.out.println(Q[18] + exception);
exception.printStackTrace();
return;
}
}
private void a(int n2, int n3, int n4, int n5, byte[] byArray, boolean bl) {
block16: {
int n6;
int n7;
int n8;
int n9;
int n10;
int n11;
int n12;
block17: {
boolean bl2;
block15: {
block14: {
int n13;
int n14;
int n15;
block13: {
bl2 = q.d;
n15 = n3 + byArray[n2 + 5];
int n16 = n4 - byArray[n2 + 6];
n12 = byArray[n2 + 3];
n11 = byArray[n2 + 4];
n10 = byArray[n2] * 16384 + byArray[n2 + 1] * 128 + byArray[n2 + 2];
n9 = n15 + n16 * this.a;
n8 = this.a - n12;
n7 = 0;
n6 = n16;
n14 = this.u;
if (!bl2) {
if (n6 < n14) {
n13 = this.u - n16;
n11 -= n13;
n16 = this.u;
n10 += n13 * n12;
n9 += n13 * this.a;
}
n6 = n16 + n11;
n14 = this.v;
}
if (!bl2) {
if (n6 >= n14) {
n11 -= n16 + n11 - this.v + 1;
}
n6 = n15;
n14 = this.w;
}
if (bl2) break block13;
if (n6 < n14) {
n13 = this.w - n15;
n12 -= n13;
n15 = this.w;
n10 += n13;
n9 += n13;
n7 = 0 + n13;
n8 += n13;
}
n6 = n15 + n12;
if (bl2) break block14;
n14 = this.x;
}
if (n6 >= n14) {
n13 = n15 + n12 - this.x + 1;
n12 -= n13;
n7 += n13;
n8 += n13;
}
n6 = n12;
}
if (bl2) break block15;
if (n6 <= 0) break block16;
n6 = n11;
}
if (bl2) break block17;
if (n6 <= 0) break block16;
n6 = bl ? 1 : 0;
}
if (n6 != 0) {
this.b(this.g, byArray, n5, n10, n9, n12, n11, n8, n7);
return;
}
this.a(this.g, byArray, n5, n10, n9, n12, n11, n8, n7);
}
}
private void a(int[] nArray, byte[] byArray, int n2, int n3, int n4, int n5, int n6, int n7, int n8) {
boolean bl = q.d;
boolean bl2 = false;
try {
int n9 = -(n5 >> 2);
n5 = -(n5 & 3);
for (int i2 = -n6; i2 < 0; ++i2) {
int n10;
block19: {
int n11;
block18: {
int n12;
for (n11 = n9; n11 < 0; ++n11) {
block25: {
block24: {
block23: {
block22: {
block21: {
block20: {
n12 = byArray[n3++];
if (bl) break block18;
if (n12 == 0) break block20;
nArray[n4++] = n2;
if (!bl) break block21;
}
++n4;
}
if (byArray[n3++] == 0) break block22;
nArray[n4++] = n2;
if (!bl) break block23;
}
++n4;
}
if (byArray[n3++] == 0) break block24;
nArray[n4++] = n2;
if (!bl) break block25;
}
++n4;
}
if (byArray[n3++] != 0) {
nArray[n4++] = n2;
if (!bl) continue;
}
++n4;
if (!bl) continue;
}
n12 = n11 = n5;
}
while (n11 < 0) {
block27: {
block26: {
n10 = byArray[n3++];
if (bl) break block19;
if (n10 == 0) break block26;
nArray[n4++] = n2;
if (!bl) break block27;
}
++n4;
}
++n11;
if (!bl) continue;
}
n4 += n7;
n10 = n3 + n8;
}
n3 = n10;
if (!bl) continue;
}
return;
}
catch (Exception exception) {
System.out.println(Q[29] + exception);
exception.printStackTrace();
return;
}
}
private void b(int[] nArray, byte[] byArray, int n2, int n3, int n4, int n5, int n6, int n7, int n8) {
boolean bl = q.d;
boolean bl2 = false;
for (int i2 = -n6; i2 < 0; ++i2) {
int n9;
int n10;
block6: {
for (int i3 = -n5; i3 < 0; ++i3) {
block8: {
int n11;
int n12;
block9: {
int n13;
block7: {
n10 = n12 = byArray[n3++] & 0xFF;
n9 = 30;
if (bl) break block6;
if (bl) break block7;
if (n10 <= n9) break block8;
n11 = n12;
if (bl) break block9;
n13 = 230;
}
if (n11 >= n13) {
nArray[n4++] = n2;
if (!bl) continue;
}
n11 = nArray[n4];
}
int n14 = n11;
nArray[n4++] = ((n2 & 0xFF00FF) * n12 + (n14 & 0xFF00FF) * (256 - n12) & 0xFF00FF00) + ((n2 & 0xFF00) * n12 + (n14 & 0xFF00) * (256 - n12) & 0xFF0000) >> 8;
if (!bl) continue;
}
++n4;
if (!bl) continue;
}
n4 += n7;
n10 = n3;
n9 = n8;
}
n3 = n10 + n9;
if (!bl) continue;
}
}
public int c(int n2) {
int n3;
block18: {
int n4;
block17: {
boolean bl = q.d;
n3 = n2;
if (!bl) {
if (n3 == 0) {
return 12;
}
n3 = n2;
}
n4 = 1;
if (!bl) {
if (n3 == n4) {
return 14;
}
n3 = n2;
n4 = 2;
}
if (!bl) {
if (n3 == n4) {
return 14;
}
n3 = n2;
n4 = 3;
}
if (!bl) {
if (n3 == n4) {
return 15;
}
n3 = n2;
n4 = 4;
}
if (!bl) {
if (n3 == n4) {
return 15;
}
n3 = n2;
n4 = 5;
}
if (!bl) {
if (n3 == n4) {
return 19;
}
n3 = n2;
n4 = 6;
}
if (bl) break block17;
if (n3 == n4) {
return 24;
}
n3 = n2;
if (bl) break block18;
n4 = 7;
}
if (n3 == n4) {
return 29;
}
n3 = this.d(n2);
}
return n3;
}
public int d(int n2) {
int n3 = n2;
if (!q.d) {
if (n3 == 0) {
return z[n2][8] - 2;
}
n3 = z[n2][8] - 1;
}
return n3;
}
/*
* Unable to fully structure code
*/
public int a(String var1_1, int var2_2) {
block7: {
var7_3 = q.d;
var3_4 = false;
var4_5 = 0;
var5_6 = h.z[var2_2];
for (var6_7 = 0; var6_7 < var1_1.length(); ++var6_7) {
block10: {
block11: {
block8: {
block9: {
v0 = var1_1.charAt(var6_7);
if (var7_3) break block7;
v1 = 64;
if (var7_3) break block8;
if (v0 != v1) break block9;
v2 = var6_7 + 4;
v1 = var1_1.length();
if (var7_3) break block8;
if (v2 < v1) {
v2 = var1_1.charAt(var6_7 + 4);
v1 = 64;
if (!var7_3) {
if (v2 == v1) {
var6_7 += 4;
if (!var7_3) continue;
} else {
** GOTO lbl23
}
} else {
** GOTO lbl22
}
}
break block9;
lbl22:
// 2 sources
break block8;
}
v2 = var1_1.charAt(var6_7);
v1 = 126;
}
if (var7_3) break block10;
if (v2 != v1) break block11;
v2 = var6_7 + 4;
v1 = var1_1.length();
if (var7_3) break block10;
if (v2 < v1) {
v2 = var1_1.charAt(var6_7 + 4);
v1 = 126;
if (!var7_3) {
if (v2 == v1) {
var6_7 += 4;
if (!var7_3) continue;
} else {
** GOTO lbl41
}
} else {
** GOTO lbl40
}
}
break block11;
lbl40:
// 2 sources
break block10;
}
v2 = var4_5;
v1 = var5_6[h.A[var1_1.charAt(var6_7)] + 7];
}
var4_5 = v2 + v1;
if (!var7_3) continue;
}
v0 = var4_5;
}
return v0;
}
public boolean imageUpdate(Image image, int n2, int n3, int n4, int n5, int n6) {
return true;
}
/*
* Handled impossible loop by duplicating code
* Enabled aggressive block sorting
*/
static {
char[] cArray;
String[] stringArray;
block332: {
int n2;
int n3;
char[] cArray2;
int n4;
block331: {
char[] cArray3;
Object var3;
block330: {
int n5;
int n6;
char[] cArray4;
block329: {
char[] cArray5;
block328: {
int n7;
int n8;
char[] cArray6;
block327: {
char[] cArray7;
block326: {
int n9;
int n10;
char[] cArray8;
block325: {
char[] cArray9;
block324: {
int n11;
int n12;
char[] cArray10;
block323: {
char[] cArray11;
block322: {
int n13;
int n14;
char[] cArray12;
block321: {
char[] cArray13;
block320: {
int n15;
int n16;
char[] cArray14;
block319: {
char[] cArray15;
block318: {
int n17;
int n18;
char[] cArray16;
block317: {
char[] cArray17;
block316: {
int n19;
int n20;
char[] cArray18;
block315: {
char[] cArray19;
block314: {
int n21;
int n22;
char[] cArray20;
block313: {
char[] cArray21;
block312: {
int n23;
int n24;
char[] cArray22;
block311: {
char[] cArray23;
block310: {
int n25;
int n26;
char[] cArray24;
block309: {
char[] cArray25;
block308: {
int n27;
int n28;
char[] cArray26;
block307: {
char[] cArray27;
block306: {
int n29;
int n30;
char[] cArray28;
block305: {
char[] cArray29;
block304: {
int n31;
int n32;
char[] cArray30;
block303: {
char[] cArray31;
block302: {
int n33;
int n34;
char[] cArray32;
block301: {
char[] cArray33;
block300: {
int n35;
int n36;
char[] cArray34;
block299: {
char[] cArray35;
block298: {
int n37;
int n38;
char[] cArray36;
block297: {
char[] cArray37;
block296: {
int n39;
int n40;
char[] cArray38;
block295: {
char[] cArray39;
block294: {
int n41;
int n42;
char[] cArray40;
block293: {
char[] cArray41;
block292: {
int n43;
int n44;
char[] cArray42;
block291: {
char[] cArray43;
block290: {
int n45;
int n46;
char[] cArray44;
block289: {
char[] cArray45;
block288: {
int n47;
int n48;
char[] cArray46;
block287: {
char[] cArray47;
block286: {
int n49;
int n50;
char[] cArray48;
block285: {
char[] cArray49;
block284: {
int n51;
int n52;
char[] cArray50;
block283: {
char[] cArray51;
block282: {
int n53;
int n54;
char[] cArray52;
block281: {
char[] cArray53;
block280: {
int n55;
int n56;
char[] cArray54;
block279: {
char[] cArray55;
block278: {
int n57;
int n58;
char[] cArray56;
block277: {
char[] cArray57;
block276: {
int n59;
int n60;
char[] cArray58;
block275: {
char[] cArray59;
block274: {
int n61;
int n62;
char[] cArray60;
block273: {
stringArray = new String[30];
var3 = null;
char[] cArray61 = "ik\u0000g2,p\u001c(3|k\u001b|%,z\u001ea0|p\u001co`~v\u0007|)b|".toCharArray();
n4 = 0;
int n63 = cArray61.length;
cArray60 = cArray61;
n62 = n63;
if (n63 <= 1) break block273;
cArray59 = cArray60;
n61 = n62;
if (n62 <= n4) break block274;
}
do {
char[] cArray62 = cArray60;
char[] cArray63 = cArray60;
int n64 = n4;
while (true) {
int n65;
char c2 = cArray62[n64];
switch (n4 % 5) {
case 0: {
n65 = 12;
break;
}
case 1: {
n65 = 25;
break;
}
case 2: {
n65 = 114;
break;
}
case 3: {
n65 = 8;
break;
}
default: {
n65 = 64;
}
}
cArray62[n64] = (char)(c2 ^ n65);
++n4;
cArray60 = cArray63;
n62 = n62;
if (n62 != 0) break;
cArray63 = cArray60;
n61 = n62;
n64 = n62;
cArray62 = cArray60;
}
cArray59 = cArray60;
n61 = n62;
} while (n62 > n4);
}
stringArray[0] = new String(cArray59).intern();
var3 = null;
char[] cArray64 = "ik\u0000g2,p\u001c(0`v\u0006W3ox\u001em".toCharArray();
n4 = 0;
int n66 = cArray64.length;
cArray58 = cArray64;
n60 = n66;
if (n66 <= 1) break block275;
cArray57 = cArray58;
n59 = n60;
if (n60 <= n4) break block276;
}
do {
char[] cArray65 = cArray58;
char[] cArray66 = cArray58;
int n67 = n4;
while (true) {
int n68;
char c3 = cArray65[n67];
switch (n4 % 5) {
case 0: {
n68 = 12;
break;
}
case 1: {
n68 = 25;
break;
}
case 2: {
n68 = 114;
break;
}
case 3: {
n68 = 8;
break;
}
default: {
n68 = 64;
}
}
cArray65[n67] = (char)(c3 ^ n68);
++n4;
cArray58 = cArray66;
n60 = n60;
if (n60 != 0) break;
cArray66 = cArray58;
n59 = n60;
n67 = n60;
cArray65 = cArray58;
}
cArray57 = cArray58;
n59 = n60;
} while (n60 > n4);
}
stringArray[1] = new String(cArray57).intern();
var3 = null;
char[] cArray67 = "X]>Z".toCharArray();
n4 = 0;
int n69 = cArray67.length;
cArray56 = cArray67;
n58 = n69;
if (n69 <= 1) break block277;
cArray55 = cArray56;
n57 = n58;
if (n58 <= n4) break block278;
}
do {
char[] cArray68 = cArray56;
char[] cArray69 = cArray56;
int n70 = n4;
while (true) {
int n71;
char c4 = cArray68[n70];
switch (n4 % 5) {
case 0: {
n71 = 12;
break;
}
case 1: {
n71 = 25;
break;
}
case 2: {
n71 = 114;
break;
}
case 3: {
n71 = 8;
break;
}
default: {
n71 = 64;
}
}
cArray68[n70] = (char)(c4 ^ n71);
++n4;
cArray56 = cArray69;
n58 = n58;
if (n58 != 0) break;
cArray69 = cArray56;
n57 = n58;
n70 = n58;
cArray68 = cArray56;
}
cArray55 = cArray56;
n57 = n58;
} while (n58 > n4);
}
stringArray[2] = new String(cArray55).intern();
var3 = null;
char[] cArray70 = "ik\u0000g2,p\u001c(4~x\u001c{0mk\u0017f4,j\u0002z)x|Rx,cmRz/ym\u001bf%".toCharArray();
n4 = 0;
int n72 = cArray70.length;
cArray54 = cArray70;
n56 = n72;
if (n72 <= 1) break block279;
cArray53 = cArray54;
n55 = n56;
if (n56 <= n4) break block280;
}
do {
char[] cArray71 = cArray54;
char[] cArray72 = cArray54;
int n73 = n4;
while (true) {
int n74;
char c5 = cArray71[n73];
switch (n4 % 5) {
case 0: {
n74 = 12;
break;
}
case 1: {
n74 = 25;
break;
}
case 2: {
n74 = 114;
break;
}
case 3: {
n74 = 8;
break;
}
default: {
n74 = 64;
}
}
cArray71[n73] = (char)(c5 ^ n74);
++n4;
cArray54 = cArray72;
n56 = n56;
if (n56 != 0) break;
cArray72 = cArray54;
n55 = n56;
n73 = n56;
cArray71 = cArray54;
}
cArray53 = cArray54;
n55 = n56;
} while (n56 > n4);
}
stringArray[3] = new String(cArray53).intern();
var3 = null;
char[] cArray73 = "D|\u001e~%xp\u0011i".toCharArray();
n4 = 0;
int n75 = cArray73.length;
cArray52 = cArray73;
n54 = n75;
if (n75 <= 1) break block281;
cArray51 = cArray52;
n53 = n54;
if (n54 <= n4) break block282;
}
do {
char[] cArray74 = cArray52;
char[] cArray75 = cArray52;
int n76 = n4;
while (true) {
int n77;
char c6 = cArray74[n76];
switch (n4 % 5) {
case 0: {
n77 = 12;
break;
}
case 1: {
n77 = 25;
break;
}
case 2: {
n77 = 114;
break;
}
case 3: {
n77 = 8;
break;
}
default: {
n77 = 64;
}
}
cArray74[n76] = (char)(c6 ^ n77);
++n4;
cArray52 = cArray75;
n54 = n54;
if (n54 != 0) break;
cArray75 = cArray52;
n53 = n54;
n76 = n54;
cArray74 = cArray52;
}
cArray51 = cArray52;
n53 = n54;
} while (n54 > n4);
}
stringArray[4] = new String(cArray51).intern();
var3 = null;
char[] cArray76 = "d|\u001e~%xp\u0011i".toCharArray();
n4 = 0;
int n78 = cArray76.length;
cArray50 = cArray76;
n52 = n78;
if (n78 <= 1) break block283;
cArray49 = cArray50;
n51 = n52;
if (n52 <= n4) break block284;
}
do {
char[] cArray77 = cArray50;
char[] cArray78 = cArray50;
int n79 = n4;
while (true) {
int n80;
char c7 = cArray77[n79];
switch (n4 % 5) {
case 0: {
n80 = 12;
break;
}
case 1: {
n80 = 25;
break;
}
case 2: {
n80 = 114;
break;
}
case 3: {
n80 = 8;
break;
}
default: {
n80 = 64;
}
}
cArray77[n79] = (char)(c7 ^ n80);
++n4;
cArray50 = cArray78;
n52 = n52;
if (n52 != 0) break;
cArray78 = cArray50;
n51 = n52;
n79 = n52;
cArray77 = cArray50;
}
cArray49 = cArray50;
n51 = n52;
} while (n52 > n4);
}
stringArray[5] = new String(cArray49).intern();
var3 = null;
char[] cArray79 = "\"s\u0014".toCharArray();
n4 = 0;
int n81 = cArray79.length;
cArray48 = cArray79;
n50 = n81;
if (n81 <= 1) break block285;
cArray47 = cArray48;
n49 = n50;
if (n50 <= n4) break block286;
}
do {
char[] cArray80 = cArray48;
char[] cArray81 = cArray48;
int n82 = n4;
while (true) {
int n83;
char c8 = cArray80[n82];
switch (n4 % 5) {
case 0: {
n83 = 12;
break;
}
case 1: {
n83 = 25;
break;
}
case 2: {
n83 = 114;
break;
}
case 3: {
n83 = 8;
break;
}
default: {
n83 = 64;
}
}
cArray80[n82] = (char)(c8 ^ n83);
++n4;
cArray48 = cArray81;
n50 = n50;
if (n50 != 0) break;
cArray81 = cArray48;
n49 = n50;
n82 = n50;
cArray80 = cArray48;
}
cArray47 = cArray48;
n49 = n50;
} while (n50 > n4);
}
stringArray[6] = new String(cArray47).intern();
var3 = null;
char[] cArray82 = "M[1L\u0005J^:A\nGU?F\u000f\\H [\u0014YO%P\u0019Vx\u0010k$i\u007f\u0015`)fr\u001ee.ci\u0003z3xl\u0004\u007f8ucB9r?-G>w4 S*\u00e3(<,.j$0_W}'B\tU=7#UHcr5N&~#&.t`".toCharArray();
n4 = 0;
int n84 = cArray82.length;
cArray46 = cArray82;
n48 = n84;
if (n84 <= 1) break block287;
cArray45 = cArray46;
n47 = n48;
if (n48 <= n4) break block288;
}
do {
char[] cArray83 = cArray46;
char[] cArray84 = cArray46;
int n85 = n4;
while (true) {
int n86;
char c9 = cArray83[n85];
switch (n4 % 5) {
case 0: {
n86 = 12;
break;
}
case 1: {
n86 = 25;
break;
}
case 2: {
n86 = 114;
break;
}
case 3: {
n86 = 8;
break;
}
default: {
n86 = 64;
}
}
cArray83[n85] = (char)(c9 ^ n86);
++n4;
cArray46 = cArray84;
n48 = n48;
if (n48 != 0) break;
cArray84 = cArray46;
n47 = n48;
n85 = n48;
cArray83 = cArray46;
}
cArray45 = cArray46;
n47 = n48;
} while (n48 > n4);
}
stringArray[7] = new String(cArray45).intern();
var3 = null;
char[] cArray85 = "ik\u0000g2,p\u001c(4~x\u001cW3ox\u001em".toCharArray();
n4 = 0;
int n87 = cArray85.length;
cArray44 = cArray85;
n46 = n87;
if (n87 <= 1) break block289;
cArray43 = cArray44;
n45 = n46;
if (n46 <= n4) break block290;
}
do {
char[] cArray86 = cArray44;
char[] cArray87 = cArray44;
int n88 = n4;
while (true) {
int n89;
char c10 = cArray86[n88];
switch (n4 % 5) {
case 0: {
n89 = 12;
break;
}
case 1: {
n89 = 25;
break;
}
case 2: {
n89 = 114;
break;
}
case 3: {
n89 = 8;
break;
}
default: {
n89 = 64;
}
}
cArray86[n88] = (char)(c10 ^ n89);
++n4;
cArray44 = cArray87;
n46 = n46;
if (n46 != 0) break;
cArray87 = cArray44;
n45 = n46;
n88 = n46;
cArray86 = cArray44;
}
cArray43 = cArray44;
n45 = n46;
} while (n46 > n4);
}
stringArray[8] = new String(cArray43).intern();
var3 = null;
char[] cArray88 = "nu\u0013".toCharArray();
n4 = 0;
int n90 = cArray88.length;
cArray42 = cArray88;
n44 = n90;
if (n90 <= 1) break block291;
cArray41 = cArray42;
n43 = n44;
if (n44 <= n4) break block292;
}
do {
char[] cArray89 = cArray42;
char[] cArray90 = cArray42;
int n91 = n4;
while (true) {
int n92;
char c11 = cArray89[n91];
switch (n4 % 5) {
case 0: {
n92 = 12;
break;
}
case 1: {
n92 = 25;
break;
}
case 2: {
n92 = 114;
break;
}
case 3: {
n92 = 8;
break;
}
default: {
n92 = 64;
}
}
cArray89[n91] = (char)(c11 ^ n92);
++n4;
cArray42 = cArray90;
n44 = n44;
if (n44 != 0) break;
cArray90 = cArray42;
n43 = n44;
n91 = n44;
cArray89 = cArray42;
}
cArray41 = cArray42;
n43 = n44;
} while (n44 > n4);
}
stringArray[9] = new String(cArray41).intern();
var3 = null;
char[] cArray91 = "`k\u0017".toCharArray();
n4 = 0;
int n93 = cArray91.length;
cArray40 = cArray91;
n42 = n93;
if (n93 <= 1) break block293;
cArray39 = cArray40;
n41 = n42;
if (n42 <= n4) break block294;
}
do {
char[] cArray92 = cArray40;
char[] cArray93 = cArray40;
int n94 = n4;
while (true) {
int n95;
char c12 = cArray92[n94];
switch (n4 % 5) {
case 0: {
n95 = 12;
break;
}
case 1: {
n95 = 25;
break;
}
case 2: {
n95 = 114;
break;
}
case 3: {
n95 = 8;
break;
}
default: {
n95 = 64;
}
}
cArray92[n94] = (char)(c12 ^ n95);
++n4;
cArray40 = cArray93;
n42 = n42;
if (n42 != 0) break;
cArray93 = cArray40;
n41 = n42;
n94 = n42;
cArray92 = cArray40;
}
cArray39 = cArray40;
n41 = n42;
} while (n42 > n4);
}
stringArray[10] = new String(cArray39).intern();
var3 = null;
char[] cArray94 = "kkC".toCharArray();
n4 = 0;
int n96 = cArray94.length;
cArray38 = cArray94;
n40 = n96;
if (n96 <= 1) break block295;
cArray37 = cArray38;
n39 = n40;
if (n40 <= n4) break block296;
}
do {
char[] cArray95 = cArray38;
char[] cArray96 = cArray38;
int n97 = n4;
while (true) {
int n98;
char c13 = cArray95[n97];
switch (n4 % 5) {
case 0: {
n98 = 12;
break;
}
case 1: {
n98 = 25;
break;
}
case 2: {
n98 = 114;
break;
}
case 3: {
n98 = 8;
break;
}
default: {
n98 = 64;
}
}
cArray95[n97] = (char)(c13 ^ n98);
++n4;
cArray38 = cArray96;
n40 = n40;
if (n40 != 0) break;
cArray96 = cArray38;
n39 = n40;
n97 = n40;
cArray95 = cArray38;
}
cArray37 = cArray38;
n39 = n40;
} while (n40 > n4);
}
stringArray[11] = new String(cArray37).intern();
var3 = null;
char[] cArray97 = "ckA".toCharArray();
n4 = 0;
int n99 = cArray97.length;
cArray36 = cArray97;
n38 = n99;
if (n99 <= 1) break block297;
cArray35 = cArray36;
n37 = n38;
if (n38 <= n4) break block298;
}
do {
char[] cArray98 = cArray36;
char[] cArray99 = cArray36;
int n100 = n4;
while (true) {
int n101;
char c14 = cArray98[n100];
switch (n4 % 5) {
case 0: {
n101 = 12;
break;
}
case 1: {
n101 = 25;
break;
}
case 2: {
n101 = 114;
break;
}
case 3: {
n101 = 8;
break;
}
default: {
n101 = 64;
}
}
cArray98[n100] = (char)(c14 ^ n101);
++n4;
cArray36 = cArray99;
n38 = n38;
if (n38 != 0) break;
cArray99 = cArray36;
n37 = n38;
n100 = n38;
cArray98 = cArray36;
}
cArray35 = cArray36;
n37 = n38;
} while (n38 > n4);
}
stringArray[12] = new String(cArray35).intern();
var3 = null;
char[] cArray100 = "u|\u001e".toCharArray();
n4 = 0;
int n102 = cArray100.length;
cArray34 = cArray100;
n36 = n102;
if (n102 <= 1) break block299;
cArray33 = cArray34;
n35 = n36;
if (n36 <= n4) break block300;
}
do {
char[] cArray101 = cArray34;
char[] cArray102 = cArray34;
int n103 = n4;
while (true) {
int n104;
char c15 = cArray101[n103];
switch (n4 % 5) {
case 0: {
n104 = 12;
break;
}
case 1: {
n104 = 25;
break;
}
case 2: {
n104 = 114;
break;
}
case 3: {
n104 = 8;
break;
}
default: {
n104 = 64;
}
}
cArray101[n103] = (char)(c15 ^ n104);
++n4;
cArray34 = cArray102;
n36 = n36;
if (n36 != 0) break;
cArray102 = cArray34;
n35 = n36;
n103 = n36;
cArray101 = cArray34;
}
cArray33 = cArray34;
n35 = n36;
} while (n36 > n4);
}
stringArray[13] = new String(cArray33).intern();
var3 = null;
char[] cArray103 = "hk\u0017".toCharArray();
n4 = 0;
int n105 = cArray103.length;
cArray32 = cArray103;
n34 = n105;
if (n105 <= 1) break block301;
cArray31 = cArray32;
n33 = n34;
if (n34 <= n4) break block302;
}
do {
char[] cArray104 = cArray32;
char[] cArray105 = cArray32;
int n106 = n4;
while (true) {
int n107;
char c16 = cArray104[n106];
switch (n4 % 5) {
case 0: {
n107 = 12;
break;
}
case 1: {
n107 = 25;
break;
}
case 2: {
n107 = 114;
break;
}
case 3: {
n107 = 8;
break;
}
default: {
n107 = 64;
}
}
cArray104[n106] = (char)(c16 ^ n107);
++n4;
cArray32 = cArray105;
n34 = n34;
if (n34 != 0) break;
cArray105 = cArray32;
n33 = n34;
n106 = n34;
cArray104 = cArray32;
}
cArray31 = cArray32;
n33 = n34;
} while (n34 > n4);
}
stringArray[14] = new String(cArray31).intern();
var3 = null;
char[] cArray106 = "ck@".toCharArray();
n4 = 0;
int n108 = cArray106.length;
cArray30 = cArray106;
n32 = n108;
if (n108 <= 1) break block303;
cArray29 = cArray30;
n31 = n32;
if (n32 <= n4) break block304;
}
do {
char[] cArray107 = cArray30;
char[] cArray108 = cArray30;
int n109 = n4;
while (true) {
int n110;
char c17 = cArray107[n109];
switch (n4 % 5) {
case 0: {
n110 = 12;
break;
}
case 1: {
n110 = 25;
break;
}
case 2: {
n110 = 114;
break;
}
case 3: {
n110 = 8;
break;
}
default: {
n110 = 64;
}
}
cArray107[n109] = (char)(c17 ^ n110);
++n4;
cArray30 = cArray108;
n32 = n32;
if (n32 != 0) break;
cArray108 = cArray30;
n31 = n32;
n109 = n32;
cArray107 = cArray30;
}
cArray29 = cArray30;
n31 = n32;
} while (n32 > n4);
}
stringArray[15] = new String(cArray29).intern();
var3 = null;
char[] cArray109 = "kk@".toCharArray();
n4 = 0;
int n111 = cArray109.length;
cArray28 = cArray109;
n30 = n111;
if (n111 <= 1) break block305;
cArray27 = cArray28;
n29 = n30;
if (n30 <= n4) break block306;
}
do {
char[] cArray110 = cArray28;
char[] cArray111 = cArray28;
int n112 = n4;
while (true) {
int n113;
char c18 = cArray110[n112];
switch (n4 % 5) {
case 0: {
n113 = 12;
break;
}
case 1: {
n113 = 25;
break;
}
case 2: {
n113 = 114;
break;
}
case 3: {
n113 = 8;
break;
}
default: {
n113 = 64;
}
}
cArray110[n112] = (char)(c18 ^ n113);
++n4;
cArray28 = cArray111;
n30 = n30;
if (n30 != 0) break;
cArray111 = cArray28;
n29 = n30;
n112 = n30;
cArray110 = cArray28;
}
cArray27 = cArray28;
n29 = n30;
} while (n30 > n4);
}
stringArray[16] = new String(cArray27).intern();
var3 = null;
char[] cArray112 = "ck\u0013".toCharArray();
n4 = 0;
int n114 = cArray112.length;
cArray26 = cArray112;
n28 = n114;
if (n114 <= 1) break block307;
cArray25 = cArray26;
n27 = n28;
if (n28 <= n4) break block308;
}
do {
char[] cArray113 = cArray26;
char[] cArray114 = cArray26;
int n115 = n4;
while (true) {
int n116;
char c19 = cArray113[n115];
switch (n4 % 5) {
case 0: {
n116 = 12;
break;
}
case 1: {
n116 = 25;
break;
}
case 2: {
n116 = 114;
break;
}
case 3: {
n116 = 8;
break;
}
default: {
n116 = 64;
}
}
cArray113[n115] = (char)(c19 ^ n116);
++n4;
cArray26 = cArray114;
n28 = n28;
if (n28 != 0) break;
cArray114 = cArray26;
n27 = n28;
n115 = n28;
cArray113 = cArray26;
}
cArray25 = cArray26;
n27 = n28;
} while (n28 > n4);
}
stringArray[17] = new String(cArray25).intern();
var3 = null;
char[] cArray115 = "hk\u0013\u007f3xk\u001bf'69".toCharArray();
n4 = 0;
int n117 = cArray115.length;
cArray24 = cArray115;
n26 = n117;
if (n117 <= 1) break block309;
cArray23 = cArray24;
n25 = n26;
if (n26 <= n4) break block310;
}
do {
char[] cArray116 = cArray24;
char[] cArray117 = cArray24;
int n118 = n4;
while (true) {
int n119;
char c20 = cArray116[n118];
switch (n4 % 5) {
case 0: {
n119 = 12;
break;
}
case 1: {
n119 = 25;
break;
}
case 2: {
n119 = 114;
break;
}
case 3: {
n119 = 8;
break;
}
default: {
n119 = 64;
}
}
cArray116[n118] = (char)(c20 ^ n119);
++n4;
cArray24 = cArray117;
n26 = n26;
if (n26 != 0) break;
cArray117 = cArray24;
n25 = n26;
n118 = n26;
cArray116 = cArray24;
}
cArray23 = cArray24;
n25 = n26;
} while (n26 > n4);
}
stringArray[18] = new String(cArray23).intern();
var3 = null;
char[] cArray118 = "kkA".toCharArray();
n4 = 0;
int n120 = cArray118.length;
cArray22 = cArray118;
n24 = n120;
if (n120 <= 1) break block311;
cArray21 = cArray22;
n23 = n24;
if (n24 <= n4) break block312;
}
do {
char[] cArray119 = cArray22;
char[] cArray120 = cArray22;
int n121 = n4;
while (true) {
int n122;
char c21 = cArray119[n121];
switch (n4 % 5) {
case 0: {
n122 = 12;
break;
}
case 1: {
n122 = 25;
break;
}
case 2: {
n122 = 114;
break;
}
case 3: {
n122 = 8;
break;
}
default: {
n122 = 64;
}
}
cArray119[n121] = (char)(c21 ^ n122);
++n4;
cArray22 = cArray120;
n24 = n24;
if (n24 != 0) break;
cArray120 = cArray22;
n23 = n24;
n121 = n24;
cArray119 = cArray22;
}
cArray21 = cArray22;
n23 = n24;
} while (n24 > n4);
}
stringArray[19] = new String(cArray21).intern();
var3 = null;
char[] cArray121 = "ax\u0015".toCharArray();
n4 = 0;
int n123 = cArray121.length;
cArray20 = cArray121;
n22 = n123;
if (n123 <= 1) break block313;
cArray19 = cArray20;
n21 = n22;
if (n22 <= n4) break block314;
}
do {
char[] cArray122 = cArray20;
char[] cArray123 = cArray20;
int n124 = n4;
while (true) {
int n125;
char c22 = cArray122[n124];
switch (n4 % 5) {
case 0: {
n125 = 12;
break;
}
case 1: {
n125 = 25;
break;
}
case 2: {
n125 = 114;
break;
}
case 3: {
n125 = 8;
break;
}
default: {
n125 = 64;
}
}
cArray122[n124] = (char)(c22 ^ n125);
++n4;
cArray20 = cArray123;
n22 = n22;
if (n22 != 0) break;
cArray123 = cArray20;
n21 = n22;
n124 = n22;
cArray122 = cArray20;
}
cArray19 = cArray20;
n21 = n22;
} while (n22 > n4);
}
stringArray[20] = new String(cArray19).intern();
var3 = null;
char[] cArray124 = "{q\u001b".toCharArray();
n4 = 0;
int n126 = cArray124.length;
cArray18 = cArray124;
n20 = n126;
if (n126 <= 1) break block315;
cArray17 = cArray18;
n19 = n20;
if (n20 <= n4) break block316;
}
do {
char[] cArray125 = cArray18;
char[] cArray126 = cArray18;
int n127 = n4;
while (true) {
int n128;
char c23 = cArray125[n127];
switch (n4 % 5) {
case 0: {
n128 = 12;
break;
}
case 1: {
n128 = 25;
break;
}
case 2: {
n128 = 114;
break;
}
case 3: {
n128 = 8;
break;
}
default: {
n128 = 64;
}
}
cArray125[n127] = (char)(c23 ^ n128);
++n4;
cArray18 = cArray126;
n20 = n20;
if (n20 != 0) break;
cArray126 = cArray18;
n19 = n20;
n127 = n20;
cArray125 = cArray18;
}
cArray17 = cArray18;
n19 = n20;
} while (n20 > n4);
}
stringArray[21] = new String(cArray17).intern();
var3 = null;
char[] cArray127 = "~x\u001c".toCharArray();
n4 = 0;
int n129 = cArray127.length;
cArray16 = cArray127;
n18 = n129;
if (n129 <= 1) break block317;
cArray15 = cArray16;
n17 = n18;
if (n18 <= n4) break block318;
}
do {
char[] cArray128 = cArray16;
char[] cArray129 = cArray16;
int n130 = n4;
while (true) {
int n131;
char c24 = cArray128[n130];
switch (n4 % 5) {
case 0: {
n131 = 12;
break;
}
case 1: {
n131 = 25;
break;
}
case 2: {
n131 = 114;
break;
}
case 3: {
n131 = 8;
break;
}
default: {
n131 = 64;
}
}
cArray128[n130] = (char)(c24 ^ n131);
++n4;
cArray16 = cArray129;
n18 = n18;
if (n18 != 0) break;
cArray129 = cArray16;
n17 = n18;
n130 = n18;
cArray128 = cArray16;
}
cArray15 = cArray16;
n17 = n18;
} while (n18 > n4);
}
stringArray[22] = new String(cArray15).intern();
var3 = null;
char[] cArray130 = "~|\u0016".toCharArray();
n4 = 0;
int n132 = cArray130.length;
cArray14 = cArray130;
n16 = n132;
if (n132 <= 1) break block319;
cArray13 = cArray14;
n15 = n16;
if (n16 <= n4) break block320;
}
do {
char[] cArray131 = cArray14;
char[] cArray132 = cArray14;
int n133 = n4;
while (true) {
int n134;
char c25 = cArray131[n133];
switch (n4 % 5) {
case 0: {
n134 = 12;
break;
}
case 1: {
n134 = 25;
break;
}
case 2: {
n134 = 114;
break;
}
case 3: {
n134 = 8;
break;
}
default: {
n134 = 64;
}
}
cArray131[n133] = (char)(c25 ^ n134);
++n4;
cArray14 = cArray132;
n16 = n16;
if (n16 != 0) break;
cArray132 = cArray14;
n15 = n16;
n133 = n16;
cArray131 = cArray14;
}
cArray13 = cArray14;
n15 = n16;
} while (n16 > n4);
}
stringArray[23] = new String(cArray13).intern();
var3 = null;
char[] cArray133 = "o`\u0013".toCharArray();
n4 = 0;
int n135 = cArray133.length;
cArray12 = cArray133;
n14 = n135;
if (n135 <= 1) break block321;
cArray11 = cArray12;
n13 = n14;
if (n14 <= n4) break block322;
}
do {
char[] cArray134 = cArray12;
char[] cArray135 = cArray12;
int n136 = n4;
while (true) {
int n137;
char c26 = cArray134[n136];
switch (n4 % 5) {
case 0: {
n137 = 12;
break;
}
case 1: {
n137 = 25;
break;
}
case 2: {
n137 = 114;
break;
}
case 3: {
n137 = 8;
break;
}
default: {
n137 = 64;
}
}
cArray134[n136] = (char)(c26 ^ n137);
++n4;
cArray12 = cArray135;
n14 = n14;
if (n14 != 0) break;
cArray135 = cArray12;
n13 = n14;
n136 = n14;
cArray134 = cArray12;
}
cArray11 = cArray12;
n13 = n14;
} while (n14 > n4);
}
stringArray[24] = new String(cArray11).intern();
var3 = null;
char[] cArray136 = "kk\u0017".toCharArray();
n4 = 0;
int n138 = cArray136.length;
cArray10 = cArray136;
n12 = n138;
if (n138 <= 1) break block323;
cArray9 = cArray10;
n11 = n12;
if (n12 <= n4) break block324;
}
do {
char[] cArray137 = cArray10;
char[] cArray138 = cArray10;
int n139 = n4;
while (true) {
int n140;
char c27 = cArray137[n139];
switch (n4 % 5) {
case 0: {
n140 = 12;
break;
}
case 1: {
n140 = 25;
break;
}
case 2: {
n140 = 114;
break;
}
case 3: {
n140 = 8;
break;
}
default: {
n140 = 64;
}
}
cArray137[n139] = (char)(c27 ^ n140);
++n4;
cArray10 = cArray138;
n12 = n12;
if (n12 != 0) break;
cArray138 = cArray10;
n11 = n12;
n139 = n12;
cArray137 = cArray10;
}
cArray9 = cArray10;
n11 = n12;
} while (n12 > n4);
}
stringArray[25] = new String(cArray9).intern();
var3 = null;
char[] cArray139 = "nu\u0007".toCharArray();
n4 = 0;
int n141 = cArray139.length;
cArray8 = cArray139;
n10 = n141;
if (n141 <= 1) break block325;
cArray7 = cArray8;
n9 = n10;
if (n10 <= n4) break block326;
}
do {
char[] cArray140 = cArray8;
char[] cArray141 = cArray8;
int n142 = n4;
while (true) {
int n143;
char c28 = cArray140[n142];
switch (n4 % 5) {
case 0: {
n143 = 12;
break;
}
case 1: {
n143 = 25;
break;
}
case 2: {
n143 = 114;
break;
}
case 3: {
n143 = 8;
break;
}
default: {
n143 = 64;
}
}
cArray140[n142] = (char)(c28 ^ n143);
++n4;
cArray8 = cArray141;
n10 = n10;
if (n10 != 0) break;
cArray141 = cArray8;
n9 = n10;
n142 = n10;
cArray140 = cArray8;
}
cArray7 = cArray8;
n9 = n10;
} while (n10 > n4);
}
stringArray[26] = new String(cArray7).intern();
var3 = null;
char[] cArray142 = "ckC".toCharArray();
n4 = 0;
int n144 = cArray142.length;
cArray6 = cArray142;
n8 = n144;
if (n144 <= 1) break block327;
cArray5 = cArray6;
n7 = n8;
if (n8 <= n4) break block328;
}
do {
char[] cArray143 = cArray6;
char[] cArray144 = cArray6;
int n145 = n4;
while (true) {
int n146;
char c29 = cArray143[n145];
switch (n4 % 5) {
case 0: {
n146 = 12;
break;
}
case 1: {
n146 = 25;
break;
}
case 2: {
n146 = 114;
break;
}
case 3: {
n146 = 8;
break;
}
default: {
n146 = 64;
}
}
cArray143[n145] = (char)(c29 ^ n146);
++n4;
cArray6 = cArray144;
n8 = n8;
if (n8 != 0) break;
cArray144 = cArray6;
n7 = n8;
n145 = n8;
cArray143 = cArray6;
}
cArray5 = cArray6;
n7 = n8;
} while (n8 > n4);
}
stringArray[27] = new String(cArray5).intern();
var3 = null;
char[] cArray145 = "o|\u001c|2ii\u0013z!69".toCharArray();
n4 = 0;
int n147 = cArray145.length;
cArray4 = cArray145;
n6 = n147;
if (n147 <= 1) break block329;
cArray3 = cArray4;
n5 = n6;
if (n6 <= n4) break block330;
}
do {
char[] cArray146 = cArray4;
char[] cArray147 = cArray4;
int n148 = n4;
while (true) {
int n149;
char c30 = cArray146[n148];
switch (n4 % 5) {
case 0: {
n149 = 12;
break;
}
case 1: {
n149 = 25;
break;
}
case 2: {
n149 = 114;
break;
}
case 3: {
n149 = 8;
break;
}
default: {
n149 = 64;
}
}
cArray146[n148] = (char)(c30 ^ n149);
++n4;
cArray4 = cArray147;
n6 = n6;
if (n6 != 0) break;
cArray147 = cArray4;
n5 = n6;
n148 = n6;
cArray146 = cArray4;
}
cArray3 = cArray4;
n5 = n6;
} while (n6 > n4);
}
stringArray[28] = new String(cArray3).intern();
var3 = null;
char[] cArray148 = "|u\u001d|,im\u0006m269".toCharArray();
n4 = 0;
int n150 = cArray148.length;
cArray2 = cArray148;
n3 = n150;
if (n150 <= 1) break block331;
cArray = cArray2;
n2 = n3;
if (n3 <= n4) break block332;
}
do {
char[] cArray149 = cArray2;
char[] cArray150 = cArray2;
int n151 = n4;
while (true) {
int n152;
char c31 = cArray149[n151];
switch (n4 % 5) {
case 0: {
n152 = 12;
break;
}
case 1: {
n152 = 25;
break;
}
case 2: {
n152 = 114;
break;
}
case 3: {
n152 = 8;
break;
}
default: {
n152 = 64;
}
}
cArray149[n151] = (char)(c31 ^ n152);
++n4;
cArray2 = cArray150;
n3 = n3;
if (n3 != 0) break;
cArray150 = cArray2;
n2 = n3;
n151 = n3;
cArray149 = cArray2;
}
cArray = cArray2;
n2 = n3;
} while (n3 > n4);
}
stringArray[29] = new String(cArray).intern();
Q = stringArray;
z = new byte[50][];
M = new boolean[12];
O = new byte[100000];
String string = Q[7];
A = new int[256];
int n153 = 0;
while (n153 < 256) {
int n154 = Q[7].indexOf(n153);
if (n154 == -1) {
n154 = 74;
}
h.A[n153] = n154 * 9;
++n153;
}
return;
}
}