/* Class84_Sub1_Sub1 - Decompiled by JODE
 * Visit http://jode.sourceforge.net/
 */
import java.awt.Canvas;

import jaclib.memory.Stream;

import jaggl.MapBuffer;
import jaggl.OpenGL;

public final class Class84_Sub1_Sub1 extends Class84_Sub1 {
	boolean aBool10358;
	int anInt10359;
	Class413 aClass413_10360;
	Class413 aClass413_10361;
	Class413 aClass413_10362;
	boolean aBool10363;
	Class413 aClass413_10364;
	boolean aBool10365;
	long aLong10366;
	int[] anIntArray10367;
	float[] aFloatArray10368;
	boolean aBool10369;
	boolean aBool10370;
	int anInt10371;
	Class220_Sub2[] aClass220_Sub2Array10372;
	Class220_Sub1 aClass220_Sub1_10373;
	int[] anIntArray10374;
	boolean aBool10375;
	String aString10376;
	String aString10377;
	Class114_Sub2 aClass114_Sub2_10378;
	boolean aBool10379;
	Class413 aClass413_10380;
	int anInt10381;
	boolean aBool10382;
	boolean aBool10383;
	OpenGL anOpenGL10384;
	Class413 aClass413_10385 = new Class413();
	float[] aFloatArray10386;
	Class413 aClass413_10387;

	final synchronized void method16555(int i, int i_0_) {
		Class587_Sub17 class587_sub17 = new Class587_Sub17(i_0_);
		class587_sub17.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10380.method7337(class587_sub17, -1494579106);
	}

	public Class57 method14756(String string) {
		byte[] is = method16575(string);
		if (is == null)
			return null;
		Class34 class34 = method14884(is);
		return new Class57_Sub2(this, class34);
	}

	public boolean method14753() {
		return ((Class84_Sub1_Sub1) this).aBool10382;
	}

	static int method16556(Class172 class172) {
		switch (class172.anInt2143 * 1259837281) {
		case 7:
			return 6402;
		case 0:
			return 6409;
		case 4:
			return 6407;
		case 9:
			return 6408;
		case 5:
			return 6406;
		case 8:
			return 6410;
		default:
			throw new IllegalStateException();
		}
	}

	Class84_Sub1_Sub1(OpenGL opengl, Canvas canvas, long l, Class101 class101, Interface5 interface5, Class279 class279, int i) {
		super(class101, interface5, class279, i, 1);
		((Class84_Sub1_Sub1) this).aClass413_10360 = new Class413();
		((Class84_Sub1_Sub1) this).aClass413_10361 = new Class413();
		((Class84_Sub1_Sub1) this).aClass413_10362 = new Class413();
		((Class84_Sub1_Sub1) this).aClass413_10380 = new Class413();
		((Class84_Sub1_Sub1) this).aClass413_10364 = new Class413();
		((Class84_Sub1_Sub1) this).aClass413_10387 = new Class413();
		((Class84_Sub1_Sub1) this).anIntArray10367 = new int[1000];
		((Class84_Sub1_Sub1) this).aClass220_Sub2Array10372 = new Class220_Sub2[16];
		new MapBuffer();
		new MapBuffer();
		((Class84_Sub1_Sub1) this).aFloatArray10386 = new float[4];
		((Class84_Sub1_Sub1) this).aFloatArray10368 = new float[16];
		int[] is = new int[1];
		try {
			((Class84_Sub1_Sub1) this).anOpenGL10384 = opengl;
			((Class84_Sub1_Sub1) this).anOpenGL10384.method3469();
			((Class84_Sub1_Sub1) this).aString10376 = OpenGL.glGetString(7936).toLowerCase();
			((Class84_Sub1_Sub1) this).aString10377 = OpenGL.glGetString(7937).toLowerCase();
			if ((((Class84_Sub1_Sub1) this).aString10376.indexOf("microsoft") != -1) || ((Class84_Sub1_Sub1) this).aString10376.indexOf("brian paul") != -1 || (((Class84_Sub1_Sub1) this).aString10376.indexOf("mesa") != -1))
				throw new RuntimeException("");
			String string = OpenGL.glGetString(7938);
			String[] strings = Class490.method11125(string.replace('.', ' '), ' ', 1738526254);
			if (strings.length >= 2) {
				try {
					int i_1_ = Class508.method11501(strings[0], 978496270);
					int i_2_ = Class508.method11501(strings[1], -808035912);
					((Class84_Sub1_Sub1) this).anInt10381 = i_1_ * 10 + i_2_;
				} catch (NumberFormatException numberformatexception) {
					throw new RuntimeException("");
				}
			} else
				throw new RuntimeException("");
			if (((Class84_Sub1_Sub1) this).anInt10381 < 12)
				throw new RuntimeException("");
			OpenGL.glGetIntegerv(34018, is, 0);
			anInt9010 = is[0];
			if (anInt9010 < 2)
				throw new RuntimeException("");
			anInt8889 = 8;
			((Class84_Sub1_Sub1) this).aBool10379 = ((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_vertex_buffer_object");
			aBool9015 = ((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_multisample");
			((Class84_Sub1_Sub1) this).aBool10383 = ((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_texture_rectangle");
			((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_texture_cube_map");
			((Class84_Sub1_Sub1) this).aBool10375 = ((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_texture_non_power_of_two");
			aBool8935 = true;
			((Class84_Sub1_Sub1) this).aBool10382 = ((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_vertex_shader");
			((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_vertex_program");
			((Class84_Sub1_Sub1) this).aBool10365 = ((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_fragment_shader");
			((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_fragment_program");
			((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_EXT_framebuffer_object");
			((Class84_Sub1_Sub1) this).anIntArray10374 = new int[anInt9010];
			aBool9012 = ((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_EXT_framebuffer_object");
			aBool9013 = ((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_EXT_framebuffer_blit");
			aBool9014 = ((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_EXT_framebuffer_multisample");
			if (!method14753() || !method14754()) {
				if (!((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_multitexture"))
					throw new RuntimeException("");
				if (!((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_texture_env_combine"))
					throw new RuntimeException("");
			}
			((Class84_Sub1_Sub1) this).anInt10359 = Stream.method3872() ? 33639 : 5121;
			if (((Class84_Sub1_Sub1) this).aString10377.indexOf("radeon") != -1) {
				int i_3_ = 0;
				boolean bool = false;
				boolean bool_4_ = false;
				String[] strings_5_ = Class490.method11125(((Class84_Sub1_Sub1) this).aString10377.replace('/', ' '), ' ', 1738526254);
				for (int i_6_ = 0; i_6_ < strings_5_.length; i_6_++) {
					String string_7_ = strings_5_[i_6_];
					try {
						if (string_7_.length() <= 0)
							continue;
						if (string_7_.charAt(0) == 'x' && string_7_.length() >= 3 && Class203.method4135(string_7_.substring(1, 3), 19463209)) {
							string_7_ = string_7_.substring(1);
							bool_4_ = true;
						}
						if (string_7_.equals("hd")) {
							bool = true;
							continue;
						}
						if (string_7_.startsWith("hd")) {
							string_7_ = string_7_.substring(2);
							bool = true;
						}
						if (string_7_.length() < 4 || !Class203.method4135(string_7_.substring(0, 4), 19463209))
							continue;
						i_3_ = Class508.method11501(string_7_.substring(0, 4), -115697907);
					} catch (Exception exception) {
						continue;
					}
					break;
				}
				if (!bool_4_ && !bool) {
					if (i_3_ >= 7000 && i_3_ <= 7999)
						((Class84_Sub1_Sub1) this).aBool10379 = false;
					if (i_3_ >= 7000 && i_3_ <= 9250)
						aBool8935 = false;
				}
				((Class84_Sub1_Sub1) this).aBool10383 &= ((Class84_Sub1_Sub1) this).anOpenGL10384.method3468("GL_ARB_half_float_pixel");
			}
			if (((Class84_Sub1_Sub1) this).aString10376.indexOf("intel") == -1) {
				/* empty */
			}
			if (((Class84_Sub1_Sub1) this).aBool10379) {
				try {
					int[] is_8_ = new int[1];
					OpenGL.glGenBuffersARB(1, is_8_, 0);
				} catch (Throwable throwable) {
					throw new RuntimeException("");
				}
			}
			method1891(canvas, new Class171_Sub2_Sub2_Sub1(this, canvas, l), 1151875275);
			method1893(canvas, -1530184420);
			method14902(32768, false);
			method14902(32768, false);
		} catch (Throwable throwable) {
			throwable.printStackTrace();
			method2135((byte) -18);
			if (throwable instanceof OutOfMemoryError)
				throw (OutOfMemoryError) throwable;
			throw new RuntimeException("");
		}
	}

	void method14763() {
		OpenGL.glDepthFunc(515);
		OpenGL.glEnable(2884);
		OpenGL.glCullFace(1029);
		OpenGL.glClearDepth(1.0F);
		OpenGL.glAlphaFunc(516, 0.0F);
		OpenGL.glPolygonMode(1028, 6914);
		for (int i = anInt9010 - 1; i >= 0; i--) {
			OpenGL.glActiveTexture(33984 + i);
			OpenGL.glTexEnvi(8960, 8704, 34160);
			OpenGL.glTexEnvi(8960, 34161, 8448);
			OpenGL.glTexEnvi(8960, 34178, 34166);
			OpenGL.glTexEnvi(8960, 34162, 8448);
			OpenGL.glTexEnvi(8960, 34186, 34166);
		}
		OpenGL.glTexEnvi(8960, 34186, 34168);
		OpenGL.glShadeModel(7425);
		OpenGL.glMatrixMode(5888);
		OpenGL.glLoadIdentity();
		OpenGL.glColorMaterial(1028, 5634);
		OpenGL.glEnable(2903);
		float[] fs = { 0.0F, 0.0F, 0.0F, 1.0F };
		for (int i = 0; i < 8; i++) {
			int i_9_ = 16384 + i;
			OpenGL.glLightfv(i_9_, 4608, fs, 0);
			OpenGL.glLightf(i_9_, 4615, 0.0F);
			OpenGL.glLightf(i_9_, 4616, 0.0F);
		}
		OpenGL.glFogf(2914, 0.95F);
		OpenGL.glFogi(2917, 9729);
		OpenGL.glHint(3156, 4353);
		((Class84_Sub1_Sub1) this).anOpenGL10384.setSwapInterval(0);
		super.method14763();
	}

	public Class170 method1914() {
		int i = -1;
		if (((Class84_Sub1_Sub1) this).aString10376.indexOf("nvidia") != -1)
			i = 4318;
		else if (((Class84_Sub1_Sub1) this).aString10376.indexOf("intel") != -1)
			i = 32902;
		else if (((Class84_Sub1_Sub1) this).aString10376.indexOf("ati") != -1)
			i = 4098;
		return new Class170(i, "OpenGL", ((Class84_Sub1_Sub1) this).anInt10381, ((Class84_Sub1_Sub1) this).aString10377, 0L);
	}

	public final void method14876(Class392 class392, int i, int i_10_) {
		int i_11_;
		int i_12_;
		if (class392 == Class392.aClass392_5711) {
			i_11_ = 1;
			i_12_ = i_10_ * 2;
		} else if (class392 == Class392.aClass392_5710) {
			i_11_ = 3;
			i_12_ = i_10_ + 1;
		} else if (class392 == Class392.aClass392_5712) {
			i_11_ = 4;
			i_12_ = i_10_ * 3;
		} else if (class392 == Class392.aClass392_5709) {
			i_11_ = 6;
			i_12_ = i_10_ + 2;
		} else if (class392 == Class392.aClass392_5714) {
			i_11_ = 5;
			i_12_ = i_10_ + 2;
		} else {
			i_11_ = 0;
			i_12_ = i_10_;
		}
		OpenGL.glDrawArrays(i_11_, i, i_12_);
	}

	Interface32 method15042(Class172 class172, Class96 class96, int i, int i_13_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, 887601970) && Class449.method8057(i_13_, -373012430)))
			return new Class217_Sub4(this, class172, class96, i, i_13_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, class172, class96, i, i_13_);
		return new Class217_Sub4(this, class172, class96, Class71.method1628(i, (byte) 13), Class71.method1628(i_13_, (byte) 115));
	}

	void method1875() {
		super.method1875();
		if (((Class84_Sub1_Sub1) this).anOpenGL10384 != null) {
			((Class84_Sub1_Sub1) this).anOpenGL10384.method3470();
			((Class84_Sub1_Sub1) this).anOpenGL10384.release();
			((Class84_Sub1_Sub1) this).anOpenGL10384 = null;
		}
	}

	public float method14773() {
		return 0.0F;
	}

	static final int method16557(Class96 class96) {
		switch (class96.anInt1392 * 1138620733) {
		case 2:
			return 5123;
		case 7:
			return 5122;
		case 3:
			return 5125;
		case 6:
			return 5126;
		case 1:
			return 5121;
		default:
			return 5121;
		case 4:
			return 5120;
		case 5:
			return 5124;
		case 0:
			return 5131;
		}
	}

	void method14978() {
		if (aClass171_1190 != null) {
			int i = anInt8940 + anInt8925;
			int i_14_ = anInt8933 + aClass171_1190.method3755() - anInt8992;
			int i_15_ = anInt8926 - anInt8925;
			int i_16_ = anInt8992 - anInt9024;
			if (i_15_ < 0)
				i_15_ = 0;
			if (i_16_ < 0)
				i_16_ = 0;
			OpenGL.glScissor(i, i_14_, i_15_, i_16_);
		}
	}

	public Interface11 method1899(int i, int i_17_, Class172 class172, Class96 class96, int i_18_) {
		return new Class228(this, class172, class96, i, i_17_, i_18_);
	}

	public Interface7 method1900(int i, int i_19_) {
		return new Class228(this, Class172.aClass172_2152, Class96.aClass96_1388, i, i_19_);
	}

	public Interface7 method1901(int i, int i_20_, int i_21_) {
		return new Class228(this, Class172.aClass172_2152, Class96.aClass96_1388, i, i_20_, i_21_);
	}

	public int[] method1902(int i, int i_22_, int i_23_, int i_24_) {
		int[] is = new int[i_23_ * i_24_];
		int i_25_ = aClass171_1190.method3755();
		for (int i_26_ = 0; i_26_ < i_24_; i_26_++)
			OpenGL.glReadPixelsi(i, i_25_ - i_22_ - i_26_ - 1, i_23_, 1, 32993, ((Class84_Sub1_Sub1) this).anInt10359, is, i_26_ * i_23_);
		return is;
	}

	void method15082() {
		OpenGL.glTexEnvi(8960, 34161, method16559(aClass391Array8965[anInt8961]));
	}

	static final int method16558(Class391 class391) {
		if (class391 == Class391.aClass391_5708)
			return 7681;
		if (class391 == Class391.aClass391_5704)
			return 8448;
		if (class391 == Class391.aClass391_5707)
			return 34165;
		if (class391 == Class391.aClass391_5705)
			return 260;
		if (class391 == Class391.aClass391_5706)
			return 34023;
		throw new IllegalArgumentException();
	}

	void method15079() {
		OpenGL.glActiveTexture(33984 + anInt8961);
	}

	void method14787() {
		if (aClass171_1190 != null)
			OpenGL.glViewport(anInt8940 + anInt8931, (anInt8933 + aClass171_1190.method3755() - anInt8932 - anInt8934), anInt8972, anInt8934);
		OpenGL.glDepthRange(aFloat8984, aFloat8921);
	}

	void method15018() {
		OpenGL.glMatrixMode(5888);
		OpenGL.glLoadMatrixf(aClass288_8950.aFloatArray4285, 0);
		OpenGL.glLightfv(16384, 4611, aFloatArray8943, 0);
		OpenGL.glLightfv(16385, 4611, aFloatArray8879, 0);
	}

	void method14789() {
		if (aBool9031)
			OpenGL.glEnable(3089);
		else
			OpenGL.glDisable(3089);
	}

	public void method14759(Class288 class288, Class288 class288_27_, Class288 class288_28_) {
		OpenGL.glMatrixMode(5888);
		aClass288_8901.method5787(class288, class288_27_);
		OpenGL.glLoadMatrixf(aClass288_8901.aFloatArray4285, 0);
		OpenGL.glMatrixMode(5889);
		OpenGL.glLoadMatrixf(class288_28_.aFloatArray4285, 0);
	}

	public void method14799(Class288 class288) {
		float[] fs = class288.aFloatArray4285;
		fs[1] = -fs[1];
		fs[5] = -fs[5];
		fs[9] = -fs[9];
		fs[13] = -fs[13];
	}

	void method14915() {
		OpenGL.glDepthMask(aBool8937 && aBool8938);
	}

	void method14809() {
		OpenGL.glDepthMask(aBool8937 && aBool8938);
	}

	void method15095() {
		int i = 0;
		int i_29_ = 0;
		if (anInt9032 == 0) {
			i = 0;
			i_29_ = 0;
		} else if (anInt9032 == 1) {
			i = 1;
			i_29_ = 0;
		} else if (anInt9032 == 2) {
			i = 1;
			i_29_ = 1;
		}
		if (aClass373_9027 == Class373.aClass373_5611)
			OpenGL.glBlendFuncSeparate(770, 771, i, i_29_);
		else if (aClass373_9027 == Class373.aClass373_5608)
			OpenGL.glBlendFuncSeparate(1, 1, i, i_29_);
		else if (aClass373_9027 == Class373.aClass373_5612)
			OpenGL.glBlendFuncSeparate(774, 1, i, i_29_);
	}

	void method14815() {
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = aFloat8951 * aFloat8948;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = aFloat8951 * aFloat8949;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = aFloat8951 * aFloat8975;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = 1.0F;
		OpenGL.glLightModelfv(2899, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
	}

	Interface38 method15096(Class172 class172, int i, int i_30_, int i_31_, boolean bool, byte[] is) {
		return new Class217_Sub3(this, class172, i, i_30_, i_31_, bool, is);
	}

	void method14817() {
		OpenGL.glMatrixMode(5888);
		OpenGL.glLoadMatrixf(aClass288_8950.aFloatArray4285, 0);
		OpenGL.glLightfv(16384, 4611, aFloatArray8943, 0);
		OpenGL.glLightfv(16385, 4611, aFloatArray8879, 0);
	}

	void method14887() {
		if (aBool8924) {
			OpenGL.glEnable(16384);
			OpenGL.glEnable(16385);
		} else {
			OpenGL.glDisable(16384);
			OpenGL.glDisable(16385);
		}
	}

	void method15125() {
		/* empty */
	}

	void method14820() {
		OpenGL.glMatrixMode(5888);
		OpenGL.glLoadMatrixf(aClass288_8950.aFloatArray4285, 0);
		int i;
		for (i = 0; i < anInt8896; i++) {
			Class587_Sub12 class587_sub12 = aClass587_Sub12Array8954[i];
			int i_32_ = class587_sub12.method15729(-745485347);
			int i_33_ = 16386 + i;
			float f = class587_sub12.method15742(1426842195) / 255.0F;
			((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) class587_sub12.method15725((byte) 43);
			((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) class587_sub12.method15726(488609939);
			((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) class587_sub12.method15747(-691924906);
			((Class84_Sub1_Sub1) this).aFloatArray10386[3] = 1.0F;
			OpenGL.glLightfv(i_33_, 4611, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
			((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (i_32_ >> 16 & 0xff) * f;
			((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (i_32_ >> 8 & 0xff) * f;
			((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (i_32_ & 0xff) * f;
			((Class84_Sub1_Sub1) this).aFloatArray10386[3] = 1.0F;
			OpenGL.glLightfv(i_33_, 4609, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
			OpenGL.glLightf(i_33_, 4617, (1.0F / (float) (class587_sub12.method15728(-698999924) * class587_sub12.method15728(-1589066161))));
			OpenGL.glEnable(i_33_);
		}
		for (/**/; i < anInt8955; i++)
			OpenGL.glDisable(16386 + i);
	}

	boolean method14812(Class172 class172, Class96 class96) {
		return true;
	}

	boolean method14822(Class172 class172, Class96 class96) {
		return aBool8935;
	}

	Interface39 method14826(Class172 class172, Class96 class96, int i, int i_34_) {
		return method14895(class172, class96, i, i_34_);
	}

	Interface39 method14829(int i, int i_35_, boolean bool, int[] is, int i_36_, int i_37_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, 633548316) && Class449.method8057(i_35_, 1787601479)))
			return new Class217_Sub4(this, i, i_35_, bool, is, i_36_, i_37_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, i, i_35_, is, i_36_, i_37_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, Class172.aClass172_2145, Class96.aClass96_1386, Class71.method1628(i, (byte) 92), Class71.method1628(i_35_, (byte) 42));
		class217_sub4.method264(0, 0, i, i_35_, is, i_36_, i_37_);
		return class217_sub4;
	}

	public Interface7 method2247(int i, int i_38_) {
		return new Class228(this, Class172.aClass172_2152, Class96.aClass96_1388, i, i_38_);
	}

	Interface39 method14828(Class172 class172, int i, int i_39_, boolean bool, float[] fs, int i_40_, int i_41_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, -507355559) && Class449.method8057(i_39_, 606307608)))
			return new Class217_Sub4(this, class172, i, i_39_, bool, fs, i_40_, i_41_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, class172, i, i_39_, fs, i_40_, i_41_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, class172, Class96.aClass96_1393, Class71.method1628(i, (byte) 93), Class71.method1628(i_39_, (byte) 14));
		class217_sub4.method16262(0, 0, i, i_39_, fs, class172, i_40_, i_41_);
		return class217_sub4;
	}

	public void method2018(int i, int i_42_) {
		int i_43_ = 0;
		if ((i & 0x1) != 0) {
			OpenGL.glClearColor((float) (i_42_ & 0xff0000) / 1.671168E7F, (float) (i_42_ & 0xff00) / 65280.0F, (float) (i_42_ & 0xff) / 255.0F, (float) (i_42_ >>> 24) / 255.0F);
			i_43_ = 16384;
		}
		if ((i & 0x2) != 0) {
			method14808(true);
			i_43_ |= 0x100;
		}
		if ((i & 0x4) != 0)
			i_43_ |= 0x400;
		OpenGL.glClear(i_43_);
	}

	void method15088() {
		/* empty */
	}

	Class363 method14890(Class384[] class384s) {
		return new Class363_Sub1(class384s);
	}

	void method14860() {
		if (aBool8994 && aBool8993 && anInt8910 >= 0)
			OpenGL.glEnable(2912);
		else
			OpenGL.glDisable(2912);
	}

	Interface39 method15040(int i, int i_44_, boolean bool, int[] is, int i_45_, int i_46_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, 431425236) && Class449.method8057(i_44_, -982817004)))
			return new Class217_Sub4(this, i, i_44_, bool, is, i_45_, i_46_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, i, i_44_, is, i_45_, i_46_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, Class172.aClass172_2145, Class96.aClass96_1386, Class71.method1628(i, (byte) 26), Class71.method1628(i_44_, (byte) 8));
		class217_sub4.method264(0, 0, i, i_44_, is, i_45_, i_46_);
		return class217_sub4;
	}

	void method14847() {
		OpenGL.glActiveTexture(33984 + anInt8961);
	}

	void method15053() {
		OpenGL.glTexEnvi(8960, 34161, method16559(aClass391Array8965[anInt8961]));
	}

	void method14848() {
		OpenGL.glTexEnvi(8960, 34162, method16559(aClass391Array9006[anInt8961]));
	}

	final void method14838(int i, Class365 class365, boolean bool, boolean bool_47_) {
		OpenGL.glTexEnvi(8960, 34176 + i, method16560(class365));
		if (bool)
			OpenGL.glTexEnvi(8960, 34192 + i, bool_47_ ? 771 : 770);
		else
			OpenGL.glTexEnvi(8960, 34192 + i, bool_47_ ? 769 : 768);
	}

	final void method14798(int i, Class365 class365, boolean bool) {
		OpenGL.glTexEnvi(8960, 34184 + i, method16560(class365));
		OpenGL.glTexEnvi(8960, 34200 + i, bool ? 771 : 770);
	}

	final void method14845() {
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (anInt8958 & 0xff0000) / 1.671168E7F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (anInt8958 & 0xff00) / 65280.0F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (anInt8958 & 0xff) / 255.0F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = (float) (anInt8958 >>> 24) / 255.0F;
		OpenGL.glTexEnvfv(8960, 8705, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
	}

	static final int method16559(Class391 class391) {
		if (class391 == Class391.aClass391_5708)
			return 7681;
		if (class391 == Class391.aClass391_5704)
			return 8448;
		if (class391 == Class391.aClass391_5707)
			return 34165;
		if (class391 == Class391.aClass391_5705)
			return 260;
		if (class391 == Class391.aClass391_5706)
			return 34023;
		throw new IllegalArgumentException();
	}

	static final int method16560(Class365 class365) {
		if (class365 == Class365.aClass365_5536)
			return 5890;
		if (class365 == Class365.aClass365_5537)
			return 34167;
		if (class365 == Class365.aClass365_5538)
			return 34168;
		if (class365 == Class365.aClass365_5535)
			return 34166;
		throw new IllegalArgumentException();
	}

	public Class171_Sub1 method2156() {
		return new Class171_Sub1_Sub2_Sub2(this);
	}

	public final void method15124(Class392 class392, int i, int i_48_) {
		int i_49_;
		int i_50_;
		if (class392 == Class392.aClass392_5711) {
			i_49_ = 1;
			i_50_ = i_48_ * 2;
		} else if (class392 == Class392.aClass392_5710) {
			i_49_ = 3;
			i_50_ = i_48_ + 1;
		} else if (class392 == Class392.aClass392_5712) {
			i_49_ = 4;
			i_50_ = i_48_ * 3;
		} else if (class392 == Class392.aClass392_5709) {
			i_49_ = 6;
			i_50_ = i_48_ + 2;
		} else if (class392 == Class392.aClass392_5714) {
			i_49_ = 5;
			i_50_ = i_48_ + 2;
		} else {
			i_49_ = 0;
			i_50_ = i_48_;
		}
		OpenGL.glDrawArrays(i_49_, i, i_50_);
	}

	void method14854() {
		int i = 0;
		int i_51_ = 0;
		if (anInt9032 == 0) {
			i = 0;
			i_51_ = 0;
		} else if (anInt9032 == 1) {
			i = 1;
			i_51_ = 0;
		} else if (anInt9032 == 2) {
			i = 1;
			i_51_ = 1;
		}
		if (aClass373_9027 == Class373.aClass373_5611)
			OpenGL.glBlendFuncSeparate(770, 771, i, i_51_);
		else if (aClass373_9027 == Class373.aClass373_5608)
			OpenGL.glBlendFuncSeparate(1, 1, i, i_51_);
		else if (aClass373_9027 == Class373.aClass373_5612)
			OpenGL.glBlendFuncSeparate(774, 1, i, i_51_);
	}

	void method14855() {
		if (aBool9002)
			OpenGL.glEnable(3042);
		else
			OpenGL.glDisable(3042);
	}

	public Interface7 method2162(int i, int i_52_) {
		return new Class228(this, Class172.aClass172_2152, Class96.aClass96_1388, i, i_52_);
	}

	void method14859() {
		aFloat8999 = aFloat8922 - (float) anInt8997;
		aFloat8998 = aFloat8999 - (float) anInt8910;
		if (aFloat8998 < aFloat8911)
			aFloat8998 = aFloat8911;
		if (aBool8874) {
			OpenGL.glFogf(2915, aFloat8998);
			OpenGL.glFogf(2916, aFloat8999);
			((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (anInt8919 & 0xff0000) / 1.671168E7F;
			((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (anInt8919 & 0xff00) / 65280.0F;
			((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (anInt8919 & 0xff) / 255.0F;
			OpenGL.glFogfv(2918, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
		}
	}

	public void method15050() {
		int i = ((Class84_Sub1_Sub1) this).anIntArray10374[anInt8961];
		if (i != 0) {
			((Class84_Sub1_Sub1) this).anIntArray10374[anInt8961] = 0;
			OpenGL.glBindTexture(i, 0);
			OpenGL.glDisable(i);
		}
	}

	Interface32 method14895(Class172 class172, Class96 class96, int i, int i_53_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, 1388411808) && Class449.method8057(i_53_, 958626446)))
			return new Class217_Sub4(this, class172, class96, i, i_53_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, class172, class96, i, i_53_);
		return new Class217_Sub4(this, class172, class96, Class71.method1628(i, (byte) 21), Class71.method1628(i_53_, (byte) 49));
	}

	void method15021() {
		OpenGL.glMatrixMode(5888);
		OpenGL.glLoadMatrixf(aClass288_8950.aFloatArray4285, 0);
		int i;
		for (i = 0; i < anInt8896; i++) {
			Class587_Sub12 class587_sub12 = aClass587_Sub12Array8954[i];
			int i_54_ = class587_sub12.method15729(-1508899359);
			int i_55_ = 16386 + i;
			float f = class587_sub12.method15742(1120991200) / 255.0F;
			((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) class587_sub12.method15725((byte) 54);
			((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) class587_sub12.method15726(1122902566);
			((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) class587_sub12.method15747(755049505);
			((Class84_Sub1_Sub1) this).aFloatArray10386[3] = 1.0F;
			OpenGL.glLightfv(i_55_, 4611, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
			((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (i_54_ >> 16 & 0xff) * f;
			((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (i_54_ >> 8 & 0xff) * f;
			((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (i_54_ & 0xff) * f;
			((Class84_Sub1_Sub1) this).aFloatArray10386[3] = 1.0F;
			OpenGL.glLightfv(i_55_, 4609, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
			OpenGL.glLightf(i_55_, 4617, (1.0F / (float) (class587_sub12.method15728(-1759741391) * class587_sub12.method15728(-767768087))));
			OpenGL.glEnable(i_55_);
		}
		for (/**/; i < anInt8955; i++)
			OpenGL.glDisable(16386 + i);
	}

	Class171_Sub2 method2090(Canvas canvas, int i, int i_56_) {
		return new Class171_Sub2_Sub2_Sub1(this, canvas);
	}

	final void method14818(Interface43 interface43, Class392 class392, int i, int i_57_, int i_58_, int i_59_) {
		int i_60_;
		int i_61_;
		if (class392 == Class392.aClass392_5711) {
			i_60_ = 1;
			i_61_ = i_59_ * 2;
		} else if (class392 == Class392.aClass392_5710) {
			i_60_ = 3;
			i_61_ = i_59_ + 1;
		} else if (class392 == Class392.aClass392_5712) {
			i_60_ = 4;
			i_61_ = i_59_ * 3;
		} else if (class392 == Class392.aClass392_5709) {
			i_60_ = 6;
			i_61_ = i_59_ + 2;
		} else if (class392 == Class392.aClass392_5714) {
			i_60_ = 5;
			i_61_ = i_59_ + 2;
		} else {
			i_60_ = 0;
			i_61_ = i_59_;
		}
		Class96 class96 = interface43.method294();
		Class220_Sub1 class220_sub1 = (Class220_Sub1) interface43;
		class220_sub1.method4527();
		OpenGL.glDrawElements(i_60_, i_61_, method16567(class96), (class220_sub1.method4526() + (long) (i_58_ * (class96.anInt1387 * 881930587))));
	}

	void method14867(Interface43 interface43) {
		((Class84_Sub1_Sub1) this).aClass220_Sub1_10373 = (Class220_Sub1) interface43;
		((Class84_Sub1_Sub1) this).aClass220_Sub1_10373.method4527();
	}

	public void method14865(Class363 class363) {
		Class384[] class384s = class363.aClass384Array5525;
		int i = 0;
		boolean bool = false;
		boolean bool_62_ = false;
		boolean bool_63_ = false;
		for (int i_64_ = 0; i_64_ < class384s.length; i_64_++) {
			Class384 class384 = class384s[i_64_];
			Class220_Sub2 class220_sub2 = ((Class84_Sub1_Sub1) this).aClass220_Sub2Array10372[i_64_];
			int i_65_ = 0;
			int i_66_ = class220_sub2.method16208();
			long l = class220_sub2.method4526();
			class220_sub2.method4527();
			for (int i_67_ = 0; i_67_ < class384.method7073(); i_67_++) {
				Class371 class371 = class384.method7074(i_67_);
				switch (class371.anInt5580) {
				case 9:
					OpenGL.glNormalPointer(5126, i_66_, l + (long) i_65_);
					bool_62_ = true;
					break;
				default:
					break;
				case 1:
					OpenGL.glClientActiveTexture(33984 + i++);
					OpenGL.glTexCoordPointer(4, 5126, i_66_, l + (long) i_65_);
					break;
				case 4:
					OpenGL.glColorPointer(4, 5121, i_66_, l + (long) i_65_);
					bool = true;
					break;
				case 0:
					OpenGL.glClientActiveTexture(33984 + i++);
					OpenGL.glTexCoordPointer(3, 5126, i_66_, l + (long) i_65_);
					break;
				case 11:
					OpenGL.glVertexPointer(3, 5126, i_66_, l + (long) i_65_);
					bool_63_ = true;
					break;
				case 2:
					OpenGL.glClientActiveTexture(33984 + i++);
					OpenGL.glTexCoordPointer(1, 5126, i_66_, l + (long) i_65_);
					break;
				case 5:
					OpenGL.glClientActiveTexture(33984 + i++);
					OpenGL.glTexCoordPointer(2, 5126, i_66_, l + (long) i_65_);
				}
				i_65_ += class371.anInt5579;
			}
		}
		if (((Class84_Sub1_Sub1) this).aBool10370 != bool_63_) {
			if (bool_63_)
				OpenGL.glEnableClientState(32884);
			else
				OpenGL.glDisableClientState(32884);
			((Class84_Sub1_Sub1) this).aBool10370 = bool_63_;
		}
		if (((Class84_Sub1_Sub1) this).aBool10363 != bool_62_) {
			if (bool_62_)
				OpenGL.glEnableClientState(32885);
			else
				OpenGL.glDisableClientState(32885);
			((Class84_Sub1_Sub1) this).aBool10363 = bool_62_;
		}
		if (((Class84_Sub1_Sub1) this).aBool10369 != bool) {
			if (bool)
				OpenGL.glEnableClientState(32886);
			else
				OpenGL.glDisableClientState(32886);
			((Class84_Sub1_Sub1) this).aBool10369 = bool;
		}
		if (((Class84_Sub1_Sub1) this).anInt10371 < i) {
			for (int i_68_ = ((Class84_Sub1_Sub1) this).anInt10371; i_68_ < i; i_68_++) {
				OpenGL.glClientActiveTexture(33984 + i_68_);
				OpenGL.glEnableClientState(32888);
			}
			((Class84_Sub1_Sub1) this).anInt10371 = i;
		} else if (((Class84_Sub1_Sub1) this).anInt10371 > i) {
			for (int i_69_ = i; i_69_ < ((Class84_Sub1_Sub1) this).anInt10371; i_69_++) {
				OpenGL.glClientActiveTexture(33984 + i_69_);
				OpenGL.glDisableClientState(32888);
			}
			((Class84_Sub1_Sub1) this).anInt10371 = i;
		}
	}

	void method15080() {
		OpenGL.glActiveTexture(33984 + anInt8961);
	}

	boolean method14770(Class172 class172, Class96 class96) {
		return true;
	}

	public final void method14878(Class392 class392, int i, int i_70_, int i_71_, int i_72_) {
		int i_73_;
		int i_74_;
		if (class392 == Class392.aClass392_5711) {
			i_73_ = 1;
			i_74_ = i_72_ * 2;
		} else if (class392 == Class392.aClass392_5710) {
			i_73_ = 3;
			i_74_ = i_72_ + 1;
		} else if (class392 == Class392.aClass392_5712) {
			i_73_ = 4;
			i_74_ = i_72_ * 3;
		} else if (class392 == Class392.aClass392_5709) {
			i_73_ = 6;
			i_74_ = i_72_ + 2;
		} else if (class392 == Class392.aClass392_5714) {
			i_73_ = 5;
			i_74_ = i_72_ + 2;
		} else {
			i_73_ = 0;
			i_74_ = i_72_;
		}
		Class96 class96 = ((Class84_Sub1_Sub1) this).aClass220_Sub1_10373.method294();
		OpenGL.glDrawElements(i_73_, i_74_, method16567(class96), (((Class84_Sub1_Sub1) this).aClass220_Sub1_10373.method4526() + (long) (i_71_ * (class96.anInt1387 * 881930587))));
	}

	public final synchronized void method1883(int i) {
		int i_75_ = 0;
		i &= 0x7fffffff;
		while (!((Class84_Sub1_Sub1) this).aClass413_10360.method7383(-1194647943)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10360.method7338(-487158117);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_75_++] = (int) (class587_sub17.aLong7674 * 3401098856066297101L);
			anInt8884 -= class587_sub17.anInt9630 * -1022666323;
			if (i_75_ == 1000) {
				OpenGL.glDeleteBuffersARB(i_75_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_75_ = 0;
			}
		}
		if (i_75_ > 0) {
			OpenGL.glDeleteBuffersARB(i_75_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
			i_75_ = 0;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10361.method7383(-1924056095)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10361.method7338(-1386013089);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_75_++] = (int) (class587_sub17.aLong7674 * 3401098856066297101L);
			anInt8883 -= class587_sub17.anInt9630 * -1022666323;
			if (i_75_ == 1000) {
				OpenGL.glDeleteTextures(i_75_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_75_ = 0;
			}
		}
		if (i_75_ > 0) {
			OpenGL.glDeleteTextures(i_75_, ((Class84_Sub1_Sub1) this).anIntArray10367, 0);
			i_75_ = 0;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10362.method7383(940362730)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10362.method7338(-392342516);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_75_++] = class587_sub17.anInt9630 * -1022666323;
			if (i_75_ == 1000) {
				OpenGL.glDeleteFramebuffersEXT(i_75_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_75_ = 0;
			}
		}
		if (i_75_ > 0) {
			OpenGL.glDeleteFramebuffersEXT(i_75_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
			i_75_ = 0;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10380.method7383(-1013750975)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10380.method7338(-126654869);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_75_++] = (int) (class587_sub17.aLong7674 * 3401098856066297101L);
			anInt8929 -= class587_sub17.anInt9630 * -1022666323;
			if (i_75_ == 1000) {
				OpenGL.glDeleteRenderbuffersEXT(i_75_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_75_ = 0;
			}
		}
		if (i_75_ > 0) {
			OpenGL.glDeleteRenderbuffersEXT(i_75_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
			boolean bool = false;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10385.method7383(656965860)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10385.method7338(-1015549478);
			OpenGL.glDeleteLists((int) (class587_sub17.aLong7674 * 3401098856066297101L), class587_sub17.anInt9630 * -1022666323);
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10364.method7383(-1897274911)) {
			Class587 class587 = ((Class84_Sub1_Sub1) this).aClass413_10364.method7338(-1037852085);
			OpenGL.glDeleteProgram((int) (class587.aLong7674 * 3401098856066297101L));
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10387.method7383(1936941132)) {
			Class587 class587 = ((Class84_Sub1_Sub1) this).aClass413_10387.method7338(119057883);
			OpenGL.glDeleteShader((int) (class587.aLong7674 * 3401098856066297101L));
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10385.method7383(947581574)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10385.method7338(321226072);
			OpenGL.glDeleteLists((int) (class587_sub17.aLong7674 * 3401098856066297101L), class587_sub17.anInt9630 * -1022666323);
		}
		if (method1877() > 100663296 && (Class121.method2891(63729721) > ((Class84_Sub1_Sub1) this).aLong10366 + 60000L)) {
			System.gc();
			((Class84_Sub1_Sub1) this).aLong10366 = Class121.method2891(-442358039);
		}
		super.method1883(i);
	}

	final synchronized void method16561(int i, int i_76_) {
		Class587_Sub17 class587_sub17 = new Class587_Sub17(i_76_);
		class587_sub17.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10360.method7337(class587_sub17, -480317311);
	}

	final synchronized void method16562(int i, int i_77_) {
		Class587_Sub17 class587_sub17 = new Class587_Sub17(i_77_);
		class587_sub17.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10361.method7337(class587_sub17, -1690150751);
	}

	final synchronized void method16563(int i) {
		Class587_Sub17 class587_sub17 = new Class587_Sub17(i);
		((Class84_Sub1_Sub1) this).aClass413_10362.method7337(class587_sub17, -159603108);
	}

	final synchronized void method16564(int i, int i_78_) {
		Class587_Sub17 class587_sub17 = new Class587_Sub17(i_78_);
		class587_sub17.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10380.method7337(class587_sub17, -1473609764);
	}

	final synchronized void method16565(long l) {
		Class587 class587 = new Class587();
		class587.aLong7674 = l * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10387.method7337(class587, -322443767);
	}

	final synchronized void method16566(int i) {
		Class587 class587 = new Class587();
		class587.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10364.method7337(class587, -185237920);
	}

	static final int method16567(Class96 class96) {
		switch (class96.anInt1392 * 1138620733) {
		case 2:
			return 5123;
		case 7:
			return 5122;
		case 3:
			return 5125;
		case 6:
			return 5126;
		case 1:
			return 5121;
		default:
			return 5121;
		case 4:
			return 5120;
		case 5:
			return 5124;
		case 0:
			return 5131;
		}
	}

	public void method14997(Class288 class288) {
		float[] fs = class288.aFloatArray4285;
		fs[1] = -fs[1];
		fs[5] = -fs[5];
		fs[9] = -fs[9];
		fs[13] = -fs[13];
	}

	static int method16568(Class172 class172, Class96 class96) {
		if (class96 == Class96.aClass96_1386) {
			switch (class172.anInt2143 * 1259837281) {
			case 6:
				return 33777;
			case 9:
				return 6408;
			case 8:
				return 6410;
			case 1:
				return 33779;
			default:
				throw new IllegalArgumentException();
			case 0:
				return 6409;
			case 4:
				return 6407;
			case 5:
				return 6406;
			}
		}
		if (class96 == Class96.aClass96_1389) {
			switch (class172.anInt2143 * 1259837281) {
			case 4:
				return 32852;
			default:
				throw new IllegalArgumentException();
			case 5:
				return 32830;
			case 8:
				return 36219;
			case 7:
				return 33189;
			case 9:
				return 32859;
			case 0:
				return 32834;
			}
		}
		if (class96 == Class96.aClass96_1388) {
			switch (class172.anInt2143 * 1259837281) {
			case 7:
				return 33190;
			default:
				throw new IllegalArgumentException();
			}
		}
		if (class96 == Class96.aClass96_1390) {
			switch (class172.anInt2143 * 1259837281) {
			case 4:
				return 34843;
			case 5:
				return 34844;
			case 9:
				return 34842;
			case 8:
				return 34847;
			case 0:
				return 34846;
			default:
				throw new IllegalArgumentException();
			}
		}
		if (class96 == Class96.aClass96_1393) {
			switch (class172.anInt2143 * 1259837281) {
			default:
				throw new IllegalArgumentException();
			case 0:
				return 34840;
			case 4:
				return 34837;
			case 8:
				return 34841;
			case 9:
				return 34836;
			case 5:
				return 34838;
			}
		}
		throw new IllegalArgumentException();
	}

	public void method1962(boolean bool) {
		/* empty */
	}

	public void method14910() {
		int i = ((Class84_Sub1_Sub1) this).anIntArray10374[anInt8961];
		if (i != 0) {
			((Class84_Sub1_Sub1) this).anIntArray10374[anInt8961] = 0;
			OpenGL.glBindTexture(i, 0);
			OpenGL.glDisable(i);
		}
	}

	void method1872(int i, int i_79_) throws Exception_Sub7 {
		aClass171_Sub2_1188.method15383();
		if (anInterface5_1177 != null)
			anInterface5_1177.method37(-538989593);
	}

	public Class170 method1985() {
		int i = -1;
		if (((Class84_Sub1_Sub1) this).aString10376.indexOf("nvidia") != -1)
			i = 4318;
		else if (((Class84_Sub1_Sub1) this).aString10376.indexOf("intel") != -1)
			i = 32902;
		else if (((Class84_Sub1_Sub1) this).aString10376.indexOf("ati") != -1)
			i = 4098;
		return new Class170(i, "OpenGL", ((Class84_Sub1_Sub1) this).anInt10381, ((Class84_Sub1_Sub1) this).aString10377, 0L);
	}

	public Class170 method1930() {
		int i = -1;
		if (((Class84_Sub1_Sub1) this).aString10376.indexOf("nvidia") != -1)
			i = 4318;
		else if (((Class84_Sub1_Sub1) this).aString10376.indexOf("intel") != -1)
			i = 32902;
		else if (((Class84_Sub1_Sub1) this).aString10376.indexOf("ati") != -1)
			i = 4098;
		return new Class170(i, "OpenGL", ((Class84_Sub1_Sub1) this).anInt10381, ((Class84_Sub1_Sub1) this).aString10377, 0L);
	}

	public Class170 method1987() {
		int i = -1;
		if (((Class84_Sub1_Sub1) this).aString10376.indexOf("nvidia") != -1)
			i = 4318;
		else if (((Class84_Sub1_Sub1) this).aString10376.indexOf("intel") != -1)
			i = 32902;
		else if (((Class84_Sub1_Sub1) this).aString10376.indexOf("ati") != -1)
			i = 4098;
		return new Class170(i, "OpenGL", ((Class84_Sub1_Sub1) this).anInt10381, ((Class84_Sub1_Sub1) this).aString10377, 0L);
	}

	Class363 method14864(Class384[] class384s) {
		return new Class363_Sub1(class384s);
	}

	public void method2185() {
		OpenGL.glFinish();
	}

	void method1909(int i, int i_80_) throws Exception_Sub7 {
		aClass171_Sub2_1188.method15383();
		if (anInterface5_1177 != null)
			anInterface5_1177.method37(-1891497557);
	}

	void method1991() {
		super.method1875();
		if (((Class84_Sub1_Sub1) this).anOpenGL10384 != null) {
			((Class84_Sub1_Sub1) this).anOpenGL10384.method3470();
			((Class84_Sub1_Sub1) this).anOpenGL10384.release();
			((Class84_Sub1_Sub1) this).anOpenGL10384 = null;
		}
	}

	public final synchronized void method1992(int i) {
		int i_81_ = 0;
		i &= 0x7fffffff;
		while (!((Class84_Sub1_Sub1) this).aClass413_10360.method7383(133510395)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10360.method7338(-541336661);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_81_++] = (int) (class587_sub17.aLong7674 * 3401098856066297101L);
			anInt8884 -= class587_sub17.anInt9630 * -1022666323;
			if (i_81_ == 1000) {
				OpenGL.glDeleteBuffersARB(i_81_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_81_ = 0;
			}
		}
		if (i_81_ > 0) {
			OpenGL.glDeleteBuffersARB(i_81_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
			i_81_ = 0;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10361.method7383(1378043250)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10361.method7338(-1474364081);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_81_++] = (int) (class587_sub17.aLong7674 * 3401098856066297101L);
			anInt8883 -= class587_sub17.anInt9630 * -1022666323;
			if (i_81_ == 1000) {
				OpenGL.glDeleteTextures(i_81_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_81_ = 0;
			}
		}
		if (i_81_ > 0) {
			OpenGL.glDeleteTextures(i_81_, ((Class84_Sub1_Sub1) this).anIntArray10367, 0);
			i_81_ = 0;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10362.method7383(-1241326576)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10362.method7338(-450177483);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_81_++] = class587_sub17.anInt9630 * -1022666323;
			if (i_81_ == 1000) {
				OpenGL.glDeleteFramebuffersEXT(i_81_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_81_ = 0;
			}
		}
		if (i_81_ > 0) {
			OpenGL.glDeleteFramebuffersEXT(i_81_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
			i_81_ = 0;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10380.method7383(1139981107)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10380.method7338(657168301);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_81_++] = (int) (class587_sub17.aLong7674 * 3401098856066297101L);
			anInt8929 -= class587_sub17.anInt9630 * -1022666323;
			if (i_81_ == 1000) {
				OpenGL.glDeleteRenderbuffersEXT(i_81_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_81_ = 0;
			}
		}
		if (i_81_ > 0) {
			OpenGL.glDeleteRenderbuffersEXT(i_81_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
			boolean bool = false;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10385.method7383(1790116926)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10385.method7338(135618695);
			OpenGL.glDeleteLists((int) (class587_sub17.aLong7674 * 3401098856066297101L), class587_sub17.anInt9630 * -1022666323);
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10364.method7383(-964166538)) {
			Class587 class587 = ((Class84_Sub1_Sub1) this).aClass413_10364.method7338(-1596825622);
			OpenGL.glDeleteProgram((int) (class587.aLong7674 * 3401098856066297101L));
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10387.method7383(543003164)) {
			Class587 class587 = ((Class84_Sub1_Sub1) this).aClass413_10387.method7338(-1493891823);
			OpenGL.glDeleteShader((int) (class587.aLong7674 * 3401098856066297101L));
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10385.method7383(-935608621)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10385.method7338(-679374698);
			OpenGL.glDeleteLists((int) (class587_sub17.aLong7674 * 3401098856066297101L), class587_sub17.anInt9630 * -1022666323);
		}
		if (method1877() > 100663296 && (Class121.method2891(-2023421026) > ((Class84_Sub1_Sub1) this).aLong10366 + 60000L)) {
			System.gc();
			((Class84_Sub1_Sub1) this).aLong10366 = Class121.method2891(851555536);
		}
		super.method1883(i);
	}

	public final synchronized void method1993(int i) {
		int i_82_ = 0;
		i &= 0x7fffffff;
		while (!((Class84_Sub1_Sub1) this).aClass413_10360.method7383(-1677002374)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10360.method7338(-1850759979);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_82_++] = (int) (class587_sub17.aLong7674 * 3401098856066297101L);
			anInt8884 -= class587_sub17.anInt9630 * -1022666323;
			if (i_82_ == 1000) {
				OpenGL.glDeleteBuffersARB(i_82_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_82_ = 0;
			}
		}
		if (i_82_ > 0) {
			OpenGL.glDeleteBuffersARB(i_82_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
			i_82_ = 0;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10361.method7383(927565472)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10361.method7338(-1614179598);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_82_++] = (int) (class587_sub17.aLong7674 * 3401098856066297101L);
			anInt8883 -= class587_sub17.anInt9630 * -1022666323;
			if (i_82_ == 1000) {
				OpenGL.glDeleteTextures(i_82_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_82_ = 0;
			}
		}
		if (i_82_ > 0) {
			OpenGL.glDeleteTextures(i_82_, ((Class84_Sub1_Sub1) this).anIntArray10367, 0);
			i_82_ = 0;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10362.method7383(-574760025)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10362.method7338(-695437129);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_82_++] = class587_sub17.anInt9630 * -1022666323;
			if (i_82_ == 1000) {
				OpenGL.glDeleteFramebuffersEXT(i_82_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_82_ = 0;
			}
		}
		if (i_82_ > 0) {
			OpenGL.glDeleteFramebuffersEXT(i_82_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
			i_82_ = 0;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10380.method7383(-1909410368)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10380.method7338(1085056658);
			((Class84_Sub1_Sub1) this).anIntArray10367[i_82_++] = (int) (class587_sub17.aLong7674 * 3401098856066297101L);
			anInt8929 -= class587_sub17.anInt9630 * -1022666323;
			if (i_82_ == 1000) {
				OpenGL.glDeleteRenderbuffersEXT(i_82_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
				i_82_ = 0;
			}
		}
		if (i_82_ > 0) {
			OpenGL.glDeleteRenderbuffersEXT(i_82_, (((Class84_Sub1_Sub1) this).anIntArray10367), 0);
			boolean bool = false;
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10385.method7383(1289108174)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10385.method7338(-1130261965);
			OpenGL.glDeleteLists((int) (class587_sub17.aLong7674 * 3401098856066297101L), class587_sub17.anInt9630 * -1022666323);
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10364.method7383(1717942130)) {
			Class587 class587 = ((Class84_Sub1_Sub1) this).aClass413_10364.method7338(-798550276);
			OpenGL.glDeleteProgram((int) (class587.aLong7674 * 3401098856066297101L));
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10387.method7383(2087883320)) {
			Class587 class587 = ((Class84_Sub1_Sub1) this).aClass413_10387.method7338(394176426);
			OpenGL.glDeleteShader((int) (class587.aLong7674 * 3401098856066297101L));
		}
		while (!((Class84_Sub1_Sub1) this).aClass413_10385.method7383(756554020)) {
			Class587_Sub17 class587_sub17 = (Class587_Sub17) ((Class84_Sub1_Sub1) this).aClass413_10385.method7338(1408455184);
			OpenGL.glDeleteLists((int) (class587_sub17.aLong7674 * 3401098856066297101L), class587_sub17.anInt9630 * -1022666323);
		}
		if (method1877() > 100663296 && (Class121.method2891(-1796910193) > ((Class84_Sub1_Sub1) this).aLong10366 + 60000L)) {
			System.gc();
			((Class84_Sub1_Sub1) this).aLong10366 = Class121.method2891(-647733327);
		}
		super.method1883(i);
	}

	public void method2016(boolean bool) {
		/* empty */
	}

	public int[] method2017(int i, int i_83_, int i_84_, int i_85_) {
		int[] is = new int[i_84_ * i_85_];
		int i_86_ = aClass171_1190.method3755();
		for (int i_87_ = 0; i_87_ < i_85_; i_87_++)
			OpenGL.glReadPixelsi(i, i_86_ - i_83_ - i_87_ - 1, i_84_, 1, 32993, ((Class84_Sub1_Sub1) this).anInt10359, is, i_87_ * i_84_);
		return is;
	}

	void method15029() {
		OpenGL.glMatrixMode(5890);
		if (aClass367Array8964[anInt8961] != Class367.aClass367_5540)
			OpenGL.glLoadMatrixf(aClass288Array8963[anInt8961].method5771(((Class84_Sub1_Sub1) this).aFloatArray10368), 0);
		else
			OpenGL.glLoadIdentity();
		OpenGL.glMatrixMode(5888);
	}

	public void method1884() {
		if (aClass171_1190 != null) {
			int i = aClass171_1190.method3754();
			int i_88_ = aClass171_1190.method3755();
			if (i > 0 || i_88_ > 0) {
				int i_89_ = anInt8931;
				int i_90_ = anInt8932;
				int i_91_ = anInt8972;
				int i_92_ = anInt8934;
				method1904();
				int i_93_ = anInt8925;
				int i_94_ = anInt8926;
				int i_95_ = anInt9024;
				int i_96_ = anInt8992;
				method1917();
				OpenGL.glReadBuffer(1028);
				OpenGL.glDrawBuffer(1029);
				method15146();
				method14856(false);
				method14813(false);
				method14807(false);
				method14808(false);
				method14834(null);
				method14921(1);
				method14851(0);
				OpenGL.glMatrixMode(5889);
				OpenGL.glLoadIdentity();
				OpenGL.glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
				OpenGL.glMatrixMode(5888);
				OpenGL.glLoadIdentity();
				OpenGL.glRasterPos2i(0, 0);
				OpenGL.glCopyPixels(0, 0, i, i_88_, 6144);
				OpenGL.glFlush();
				OpenGL.glReadBuffer(1029);
				OpenGL.glDrawBuffer(1029);
				method1907(i_93_, i_95_, i_94_, i_96_);
				method1905(i_89_, i_90_, i_91_, i_92_);
			}
		}
	}

	void method14769() {
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = aFloat8952 * aFloat8948;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = aFloat8952 * aFloat8949;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = aFloat8952 * aFloat8975;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = 1.0F;
		OpenGL.glLightfv(16384, 4609, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = -aFloat8917 * aFloat8948;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = -aFloat8917 * aFloat8949;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = -aFloat8917 * aFloat8975;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = 1.0F;
		OpenGL.glLightfv(16385, 4609, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
	}

	void method15038(Interface43 interface43) {
		((Class84_Sub1_Sub1) this).aClass220_Sub1_10373 = (Class220_Sub1) interface43;
		((Class84_Sub1_Sub1) this).aClass220_Sub1_10373.method4527();
	}

	public void method2203(int i, int i_97_) {
		int i_98_ = 0;
		if ((i & 0x1) != 0) {
			OpenGL.glClearColor((float) (i_97_ & 0xff0000) / 1.671168E7F, (float) (i_97_ & 0xff00) / 65280.0F, (float) (i_97_ & 0xff) / 255.0F, (float) (i_97_ >>> 24) / 255.0F);
			i_98_ = 16384;
		}
		if ((i & 0x2) != 0) {
			method14808(true);
			i_98_ |= 0x100;
		}
		if ((i & 0x4) != 0)
			i_98_ |= 0x400;
		OpenGL.glClear(i_98_);
	}

	public Class159 method2030(Class159 class159, Class159 class159_99_, float f, Class159 class159_100_) {
		return f < 0.5F ? class159 : class159_99_;
	}

	void method15098() {
		if (aBool9002)
			OpenGL.glEnable(3042);
		else
			OpenGL.glDisable(3042);
	}

	void method15081() {
		OpenGL.glActiveTexture(33984 + anInt8961);
	}

	final synchronized void method16569(int i, int i_101_) {
		Class587_Sub17 class587_sub17 = new Class587_Sub17(i_101_);
		class587_sub17.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10360.method7337(class587_sub17, -1101409540);
	}

	public Interface11 method2085(int i, int i_102_, Class172 class172, Class96 class96, int i_103_) {
		return new Class228(this, class172, class96, i, i_102_, i_103_);
	}

	public Interface11 method2159(int i, int i_104_, Class172 class172, Class96 class96, int i_105_) {
		return new Class228(this, class172, class96, i, i_104_, i_105_);
	}

	public Interface11 method2103(int i, int i_106_, Class172 class172, Class96 class96, int i_107_) {
		return new Class228(this, class172, class96, i, i_106_, i_107_);
	}

	final void method15072() {
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (anInt8958 & 0xff0000) / 1.671168E7F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (anInt8958 & 0xff00) / 65280.0F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (anInt8958 & 0xff) / 255.0F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = (float) (anInt8958 >>> 24) / 255.0F;
		OpenGL.glTexEnvfv(8960, 8705, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
	}

	static final int method16570(Class96 class96) {
		switch (class96.anInt1392 * 1138620733) {
		case 2:
			return 5123;
		case 7:
			return 5122;
		case 3:
			return 5125;
		case 6:
			return 5126;
		case 1:
			return 5121;
		default:
			return 5121;
		case 4:
			return 5120;
		case 5:
			return 5124;
		case 0:
			return 5131;
		}
	}

	void method14875(int i) {
		OpenGL.glColorMask((i & 0x1) != 0, (i & 0x2) != 0, (i & 0x4) != 0, (i & 0x8) != 0);
	}

	void method14853() {
		if (aBool9018)
			OpenGL.glEnable(3008);
		else
			OpenGL.glDisable(3008);
	}

	public Interface7 method2165(int i, int i_108_, int i_109_) {
		return new Class228(this, Class172.aClass172_2152, Class96.aClass96_1388, i, i_108_, i_109_);
	}

	public Interface7 method2166(int i, int i_110_, int i_111_) {
		return new Class228(this, Class172.aClass172_2152, Class96.aClass96_1388, i, i_110_, i_111_);
	}

	public Interface7 method2167(int i, int i_112_, int i_113_) {
		return new Class228(this, Class172.aClass172_2152, Class96.aClass96_1388, i, i_112_, i_113_);
	}

	Class171_Sub2 method2170(Canvas canvas, int i, int i_114_) {
		return new Class171_Sub2_Sub2_Sub1(this, canvas);
	}

	Class171_Sub2 method1894(Canvas canvas, int i, int i_115_) {
		return new Class171_Sub2_Sub2_Sub1(this, canvas);
	}

	public boolean method14930() {
		return ((Class84_Sub1_Sub1) this).aBool10382;
	}

	public void method1977() {
		if (aClass171_1190 != null) {
			int i = aClass171_1190.method3754();
			int i_116_ = aClass171_1190.method3755();
			if (i > 0 || i_116_ > 0) {
				int i_117_ = anInt8931;
				int i_118_ = anInt8932;
				int i_119_ = anInt8972;
				int i_120_ = anInt8934;
				method1904();
				int i_121_ = anInt8925;
				int i_122_ = anInt8926;
				int i_123_ = anInt9024;
				int i_124_ = anInt8992;
				method1917();
				OpenGL.glReadBuffer(1028);
				OpenGL.glDrawBuffer(1029);
				method15146();
				method14856(false);
				method14813(false);
				method14807(false);
				method14808(false);
				method14834(null);
				method14921(1);
				method14851(0);
				OpenGL.glMatrixMode(5889);
				OpenGL.glLoadIdentity();
				OpenGL.glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
				OpenGL.glMatrixMode(5888);
				OpenGL.glLoadIdentity();
				OpenGL.glRasterPos2i(0, 0);
				OpenGL.glCopyPixels(0, 0, i, i_116_, 6144);
				OpenGL.glFlush();
				OpenGL.glReadBuffer(1029);
				OpenGL.glDrawBuffer(1029);
				method1907(i_121_, i_123_, i_122_, i_124_);
				method1905(i_117_, i_118_, i_119_, i_120_);
			}
		}
	}

	void method14880(int i) {
		if (!((Class84_Sub1_Sub1) this).aBool10358)
			OpenGL.glPolygonMode(1028, (i & 0x2) != 0 ? 6913 : 6914);
	}

	public boolean method14780() {
		return ((Class84_Sub1_Sub1) this).aBool10365;
	}

	public boolean method14934() {
		return ((Class84_Sub1_Sub1) this).aBool10365;
	}

	public void method14886(Class288 class288, Class288 class288_125_, Class288 class288_126_) {
		OpenGL.glMatrixMode(5888);
		aClass288_8901.method5787(class288, class288_125_);
		OpenGL.glLoadMatrixf(aClass288_8901.aFloatArray4285, 0);
		OpenGL.glMatrixMode(5889);
		OpenGL.glLoadMatrixf(class288_126_.aFloatArray4285, 0);
	}

	public void method14940(Class288 class288, Class288 class288_127_, Class288 class288_128_) {
		OpenGL.glMatrixMode(5888);
		aClass288_8901.method5787(class288, class288_127_);
		OpenGL.glLoadMatrixf(aClass288_8901.aFloatArray4285, 0);
		OpenGL.glMatrixMode(5889);
		OpenGL.glLoadMatrixf(class288_128_.aFloatArray4285, 0);
	}

	public void method14941(Class288 class288, Class288 class288_129_, Class288 class288_130_) {
		OpenGL.glMatrixMode(5888);
		aClass288_8901.method5787(class288, class288_129_);
		OpenGL.glLoadMatrixf(aClass288_8901.aFloatArray4285, 0);
		OpenGL.glMatrixMode(5889);
		OpenGL.glLoadMatrixf(class288_130_.aFloatArray4285, 0);
	}

	public void method14942(Class288 class288, Class288 class288_131_, Class288 class288_132_) {
		OpenGL.glMatrixMode(5888);
		aClass288_8901.method5787(class288, class288_131_);
		OpenGL.glLoadMatrixf(aClass288_8901.aFloatArray4285, 0);
		OpenGL.glMatrixMode(5889);
		OpenGL.glLoadMatrixf(class288_132_.aFloatArray4285, 0);
	}

	public float method14962() {
		return 0.0F;
	}

	public float method15044() {
		return 0.0F;
	}

	final void method14877(Interface43 interface43, Class392 class392, int i, int i_133_, int i_134_, int i_135_) {
		int i_136_;
		int i_137_;
		if (class392 == Class392.aClass392_5711) {
			i_136_ = 1;
			i_137_ = i_135_ * 2;
		} else if (class392 == Class392.aClass392_5710) {
			i_136_ = 3;
			i_137_ = i_135_ + 1;
		} else if (class392 == Class392.aClass392_5712) {
			i_136_ = 4;
			i_137_ = i_135_ * 3;
		} else if (class392 == Class392.aClass392_5709) {
			i_136_ = 6;
			i_137_ = i_135_ + 2;
		} else if (class392 == Class392.aClass392_5714) {
			i_136_ = 5;
			i_137_ = i_135_ + 2;
		} else {
			i_136_ = 0;
			i_137_ = i_135_;
		}
		Class96 class96 = interface43.method294();
		Class220_Sub1 class220_sub1 = (Class220_Sub1) interface43;
		class220_sub1.method4527();
		OpenGL.glDrawElements(i_136_, i_137_, method16567(class96), (class220_sub1.method4526() + (long) (i_134_ * (class96.anInt1387 * 881930587))));
	}

	void method14913() {
		if (aClass171_1190 != null)
			OpenGL.glViewport(anInt8940 + anInt8931, (anInt8933 + aClass171_1190.method3755() - anInt8932 - anInt8934), anInt8972, anInt8934);
		OpenGL.glDepthRange(aFloat8984, aFloat8921);
	}

	void method14977() {
		if (aClass171_1190 != null)
			OpenGL.glViewport(anInt8940 + anInt8931, (anInt8933 + aClass171_1190.method3755() - anInt8932 - anInt8934), anInt8972, anInt8934);
		OpenGL.glDepthRange(aFloat8984, aFloat8921);
	}

	Interface31 method14830(int i, boolean bool, int[][] is) {
		return new Class217_Sub2(this, i, bool, is);
	}

	void method15070() {
		if (aClass171_1190 != null) {
			int i = anInt8940 + anInt8925;
			int i_138_ = anInt8933 + aClass171_1190.method3755() - anInt8992;
			int i_139_ = anInt8926 - anInt8925;
			int i_140_ = anInt8992 - anInt9024;
			if (i_139_ < 0)
				i_139_ = 0;
			if (i_140_ < 0)
				i_140_ = 0;
			OpenGL.glScissor(i, i_138_, i_139_, i_140_);
		}
	}

	void method14991() {
		if (aClass171_1190 != null) {
			int i = anInt8940 + anInt8925;
			int i_141_ = anInt8933 + aClass171_1190.method3755() - anInt8992;
			int i_142_ = anInt8926 - anInt8925;
			int i_143_ = anInt8992 - anInt9024;
			if (i_142_ < 0)
				i_142_ = 0;
			if (i_143_ < 0)
				i_143_ = 0;
			OpenGL.glScissor(i, i_141_, i_142_, i_143_);
		}
	}

	void method14846() {
		OpenGL.glMatrixMode(5890);
		if (aClass367Array8964[anInt8961] != Class367.aClass367_5540)
			OpenGL.glLoadMatrixf(aClass288Array8963[anInt8961].method5771(((Class84_Sub1_Sub1) this).aFloatArray10368), 0);
		else
			OpenGL.glLoadIdentity();
		OpenGL.glMatrixMode(5888);
	}

	public void method15128(Class288 class288) {
		float[] fs = class288.aFloatArray4285;
		fs[1] = -fs[1];
		fs[5] = -fs[5];
		fs[9] = -fs[9];
		fs[13] = -fs[13];
	}

	byte[] method16571(String string) {
		return method14757("gl", string);
	}

	public Class170 method1984() {
		int i = -1;
		if (((Class84_Sub1_Sub1) this).aString10376.indexOf("nvidia") != -1)
			i = 4318;
		else if (((Class84_Sub1_Sub1) this).aString10376.indexOf("intel") != -1)
			i = 32902;
		else if (((Class84_Sub1_Sub1) this).aString10376.indexOf("ati") != -1)
			i = 4098;
		return new Class170(i, "OpenGL", ((Class84_Sub1_Sub1) this).anInt10381, ((Class84_Sub1_Sub1) this).aString10377, 0L);
	}

	void method15014() {
		OpenGL.glDepthMask(aBool8937 && aBool8938);
	}

	final Interface41 method15108(boolean bool) {
		return new Class220_Sub2(this, bool);
	}

	public Interface7 method2132(int i, int i_144_) {
		return new Class228(this, Class172.aClass172_2152, Class96.aClass96_1388, i, i_144_);
	}

	void method15094() {
		if (aBool9018)
			OpenGL.glEnable(3008);
		else
			OpenGL.glDisable(3008);
	}

	void method15016() {
		if (aBool8946 && !aBool8942)
			OpenGL.glEnable(2896);
		else
			OpenGL.glDisable(2896);
	}

	void method15017() {
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = aFloat8951 * aFloat8948;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = aFloat8951 * aFloat8949;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = aFloat8951 * aFloat8975;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = 1.0F;
		OpenGL.glLightModelfv(2899, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
	}

	public void method15049() {
		int i = ((Class84_Sub1_Sub1) this).anIntArray10374[anInt8961];
		if (i != 0) {
			((Class84_Sub1_Sub1) this).anIntArray10374[anInt8961] = 0;
			OpenGL.glBindTexture(i, 0);
			OpenGL.glDisable(i);
		}
	}

	void method1990() {
		super.method1875();
		if (((Class84_Sub1_Sub1) this).anOpenGL10384 != null) {
			((Class84_Sub1_Sub1) this).anOpenGL10384.method3470();
			((Class84_Sub1_Sub1) this).anOpenGL10384.release();
			((Class84_Sub1_Sub1) this).anOpenGL10384 = null;
		}
	}

	void method15083() {
		OpenGL.glTexEnvi(8960, 34162, method16559(aClass391Array9006[anInt8961]));
	}

	void method14861(boolean bool) {
		if (bool)
			OpenGL.glEnable(32925);
		else
			OpenGL.glDisable(32925);
	}

	boolean method15022(Class172 class172, Class96 class96) {
		return true;
	}

	void method14922(int i) {
		if (!((Class84_Sub1_Sub1) this).aBool10358)
			OpenGL.glPolygonMode(1028, (i & 0x2) != 0 ? 6913 : 6914);
	}

	static final int method16572(Class391 class391) {
		if (class391 == Class391.aClass391_5708)
			return 7681;
		if (class391 == Class391.aClass391_5704)
			return 8448;
		if (class391 == Class391.aClass391_5707)
			return 34165;
		if (class391 == Class391.aClass391_5705)
			return 260;
		if (class391 == Class391.aClass391_5706)
			return 34023;
		throw new IllegalArgumentException();
	}

	boolean method14891(Class172 class172, Class96 class96) {
		return aBool8935;
	}

	boolean method15145(Class172 class172, Class96 class96) {
		return aBool8935;
	}

	Interface39 method15012(Class172 class172, Class96 class96, int i, int i_145_) {
		return method14895(class172, class96, i, i_145_);
	}

	public boolean method14932() {
		return ((Class84_Sub1_Sub1) this).aBool10382;
	}

	public void method14999(Class288 class288) {
		float[] fs = class288.aFloatArray4285;
		fs[1] = -fs[1];
		fs[5] = -fs[5];
		fs[9] = -fs[9];
		fs[13] = -fs[13];
	}

	public float method14964() {
		return 0.0F;
	}

	Interface39 method14911(Class172 class172, int i, int i_146_, boolean bool, byte[] is, int i_147_, int i_148_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, 1564969256) && Class449.method8057(i_146_, 207889032)))
			return new Class217_Sub4(this, class172, i, i_146_, bool, is, i_147_, i_148_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, class172, i, i_146_, is, i_147_, i_148_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, class172, Class96.aClass96_1386, Class71.method1628(i, (byte) 120), Class71.method1628(i_146_, (byte) 2));
		class217_sub4.method256(0, 0, i, i_146_, is, class172, i_147_, i_148_);
		return class217_sub4;
	}

	Interface39 method15037(Class172 class172, int i, int i_149_, boolean bool, float[] fs, int i_150_, int i_151_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, 905654346) && Class449.method8057(i_149_, 1312470743)))
			return new Class217_Sub4(this, class172, i, i_149_, bool, fs, i_150_, i_151_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, class172, i, i_149_, fs, i_150_, i_151_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, class172, Class96.aClass96_1393, Class71.method1628(i, (byte) 105), Class71.method1628(i_149_, (byte) 117));
		class217_sub4.method16262(0, 0, i, i_149_, fs, class172, i_150_, i_151_);
		return class217_sub4;
	}

	Interface39 method14985(Class172 class172, int i, int i_152_, boolean bool, float[] fs, int i_153_, int i_154_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, -1441566656) && Class449.method8057(i_152_, 500765110)))
			return new Class217_Sub4(this, class172, i, i_152_, bool, fs, i_153_, i_154_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, class172, i, i_152_, fs, i_153_, i_154_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, class172, Class96.aClass96_1393, Class71.method1628(i, (byte) 127), Class71.method1628(i_152_, (byte) 51));
		class217_sub4.method16262(0, 0, i, i_152_, fs, class172, i_153_, i_154_);
		return class217_sub4;
	}

	Interface39 method15039(int i, int i_155_, boolean bool, int[] is, int i_156_, int i_157_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, -395990880) && Class449.method8057(i_155_, 107834204)))
			return new Class217_Sub4(this, i, i_155_, bool, is, i_156_, i_157_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, i, i_155_, is, i_156_, i_157_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, Class172.aClass172_2145, Class96.aClass96_1386, Class71.method1628(i, (byte) 61), Class71.method1628(i_155_, (byte) 77));
		class217_sub4.method264(0, 0, i, i_155_, is, i_156_, i_157_);
		return class217_sub4;
	}

	void method15132() {
		OpenGL.glDepthFunc(515);
		OpenGL.glEnable(2884);
		OpenGL.glCullFace(1029);
		OpenGL.glClearDepth(1.0F);
		OpenGL.glAlphaFunc(516, 0.0F);
		OpenGL.glPolygonMode(1028, 6914);
		for (int i = anInt9010 - 1; i >= 0; i--) {
			OpenGL.glActiveTexture(33984 + i);
			OpenGL.glTexEnvi(8960, 8704, 34160);
			OpenGL.glTexEnvi(8960, 34161, 8448);
			OpenGL.glTexEnvi(8960, 34178, 34166);
			OpenGL.glTexEnvi(8960, 34162, 8448);
			OpenGL.glTexEnvi(8960, 34186, 34166);
		}
		OpenGL.glTexEnvi(8960, 34186, 34168);
		OpenGL.glShadeModel(7425);
		OpenGL.glMatrixMode(5888);
		OpenGL.glLoadIdentity();
		OpenGL.glColorMaterial(1028, 5634);
		OpenGL.glEnable(2903);
		float[] fs = { 0.0F, 0.0F, 0.0F, 1.0F };
		for (int i = 0; i < 8; i++) {
			int i_158_ = 16384 + i;
			OpenGL.glLightfv(i_158_, 4608, fs, 0);
			OpenGL.glLightf(i_158_, 4615, 0.0F);
			OpenGL.glLightf(i_158_, 4616, 0.0F);
		}
		OpenGL.glFogf(2914, 0.95F);
		OpenGL.glFogi(2917, 9729);
		OpenGL.glHint(3156, 4353);
		((Class84_Sub1_Sub1) this).anOpenGL10384.setSwapInterval(0);
		super.method14763();
	}

	Interface39 method15041(int i, int i_159_, boolean bool, int[] is, int i_160_, int i_161_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, -1487637024) && Class449.method8057(i_159_, 1547407247)))
			return new Class217_Sub4(this, i, i_159_, bool, is, i_160_, i_161_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, i, i_159_, is, i_160_, i_161_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, Class172.aClass172_2145, Class96.aClass96_1386, Class71.method1628(i, (byte) 55), Class71.method1628(i_159_, (byte) 71));
		class217_sub4.method264(0, 0, i, i_159_, is, i_160_, i_161_);
		return class217_sub4;
	}

	boolean method15024(Class172 class172, Class96 class96) {
		return aBool8935;
	}

	public void method15048() {
		int i = ((Class84_Sub1_Sub1) this).anIntArray10374[anInt8961];
		if (i != 0) {
			((Class84_Sub1_Sub1) this).anIntArray10374[anInt8961] = 0;
			OpenGL.glBindTexture(i, 0);
			OpenGL.glDisable(i);
		}
	}

	void method15140() {
		aFloat8999 = aFloat8922 - (float) anInt8997;
		aFloat8998 = aFloat8999 - (float) anInt8910;
		if (aFloat8998 < aFloat8911)
			aFloat8998 = aFloat8911;
		if (aBool8874) {
			OpenGL.glFogf(2915, aFloat8998);
			OpenGL.glFogf(2916, aFloat8999);
			((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (anInt8919 & 0xff0000) / 1.671168E7F;
			((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (anInt8919 & 0xff00) / 65280.0F;
			((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (anInt8919 & 0xff) / 255.0F;
			OpenGL.glFogfv(2918, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
		}
	}

	final Interface41 method14973(boolean bool) {
		return new Class220_Sub2(this, bool);
	}

	public boolean method14931() {
		return ((Class84_Sub1_Sub1) this).aBool10382;
	}

	final void method15056(int i, Class365 class365, boolean bool, boolean bool_162_) {
		OpenGL.glTexEnvi(8960, 34176 + i, method16560(class365));
		if (bool)
			OpenGL.glTexEnvi(8960, 34192 + i, bool_162_ ? 771 : 770);
		else
			OpenGL.glTexEnvi(8960, 34192 + i, bool_162_ ? 769 : 768);
	}

	void method14788() {
		if (aClass171_1190 != null) {
			int i = anInt8940 + anInt8925;
			int i_163_ = anInt8933 + aClass171_1190.method3755() - anInt8992;
			int i_164_ = anInt8926 - anInt8925;
			int i_165_ = anInt8992 - anInt9024;
			if (i_164_ < 0)
				i_164_ = 0;
			if (i_165_ < 0)
				i_165_ = 0;
			OpenGL.glScissor(i, i_163_, i_164_, i_165_);
		}
	}

	final void method15073() {
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (anInt8958 & 0xff0000) / 1.671168E7F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (anInt8958 & 0xff00) / 65280.0F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (anInt8958 & 0xff) / 255.0F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = (float) (anInt8958 >>> 24) / 255.0F;
		OpenGL.glTexEnvfv(8960, 8705, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
	}

	void method14857() {
		if (aBool8924) {
			OpenGL.glEnable(16384);
			OpenGL.glEnable(16385);
		} else {
			OpenGL.glDisable(16384);
			OpenGL.glDisable(16385);
		}
	}

	final void method14837() {
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (anInt8958 & 0xff0000) / 1.671168E7F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (anInt8958 & 0xff00) / 65280.0F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (anInt8958 & 0xff) / 255.0F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = (float) (anInt8958 >>> 24) / 255.0F;
		OpenGL.glTexEnvfv(8960, 8705, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
	}

	void method15076() {
		OpenGL.glMatrixMode(5890);
		if (aClass367Array8964[anInt8961] != Class367.aClass367_5540)
			OpenGL.glLoadMatrixf(aClass288Array8963[anInt8961].method5771(((Class84_Sub1_Sub1) this).aFloatArray10368), 0);
		else
			OpenGL.glLoadIdentity();
		OpenGL.glMatrixMode(5888);
	}

	void method15077() {
		OpenGL.glMatrixMode(5890);
		if (aClass367Array8964[anInt8961] != Class367.aClass367_5540)
			OpenGL.glLoadMatrixf(aClass288Array8963[anInt8961].method5771(((Class84_Sub1_Sub1) this).aFloatArray10368), 0);
		else
			OpenGL.glLoadIdentity();
		OpenGL.glMatrixMode(5888);
	}

	public Class159 method1968(Class159 class159, Class159 class159_166_, float f, Class159 class159_167_) {
		return f < 0.5F ? class159 : class159_166_;
	}

	void method15090(int i) {
		OpenGL.glColorMask((i & 0x1) != 0, (i & 0x2) != 0, (i & 0x4) != 0, (i & 0x8) != 0);
	}

	final Interface41 method15109(boolean bool) {
		return new Class220_Sub2(this, bool);
	}

	public void method1912(int i, int i_168_) {
		int i_169_ = 0;
		if ((i & 0x1) != 0) {
			OpenGL.glClearColor((float) (i_168_ & 0xff0000) / 1.671168E7F, (float) (i_168_ & 0xff00) / 65280.0F, (float) (i_168_ & 0xff) / 255.0F, (float) (i_168_ >>> 24) / 255.0F);
			i_169_ = 16384;
		}
		if ((i & 0x2) != 0) {
			method14808(true);
			i_169_ |= 0x100;
		}
		if ((i & 0x4) != 0)
			i_169_ |= 0x400;
		OpenGL.glClear(i_169_);
	}

	void method14872() {
		OpenGL.glActiveTexture(33984 + anInt8961);
	}

	void method14919() {
		OpenGL.glTexEnvi(8960, 34161, method16559(aClass391Array8965[anInt8961]));
	}

	public Class159 method2129(Class159 class159, Class159 class159_170_, float f, Class159 class159_171_) {
		return f < 0.5F ? class159 : class159_170_;
	}

	public void method1903() {
		if (aClass171_1190 != null) {
			int i = aClass171_1190.method3754();
			int i_172_ = aClass171_1190.method3755();
			if (i > 0 || i_172_ > 0) {
				int i_173_ = anInt8931;
				int i_174_ = anInt8932;
				int i_175_ = anInt8972;
				int i_176_ = anInt8934;
				method1904();
				int i_177_ = anInt8925;
				int i_178_ = anInt8926;
				int i_179_ = anInt9024;
				int i_180_ = anInt8992;
				method1917();
				OpenGL.glReadBuffer(1028);
				OpenGL.glDrawBuffer(1029);
				method15146();
				method14856(false);
				method14813(false);
				method14807(false);
				method14808(false);
				method14834(null);
				method14921(1);
				method14851(0);
				OpenGL.glMatrixMode(5889);
				OpenGL.glLoadIdentity();
				OpenGL.glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
				OpenGL.glMatrixMode(5888);
				OpenGL.glLoadIdentity();
				OpenGL.glRasterPos2i(0, 0);
				OpenGL.glCopyPixels(0, 0, i, i_172_, 6144);
				OpenGL.glFlush();
				OpenGL.glReadBuffer(1029);
				OpenGL.glDrawBuffer(1029);
				method1907(i_177_, i_179_, i_178_, i_180_);
				method1905(i_173_, i_174_, i_175_, i_176_);
			}
		}
	}

	Interface39 method14821(Class172 class172, Class96 class96, int i, int i_181_) {
		return method14895(class172, class96, i, i_181_);
	}

	void method15089(int i) {
		OpenGL.glColorMask((i & 0x1) != 0, (i & 0x2) != 0, (i & 0x4) != 0, (i & 0x8) != 0);
	}

	void method14924() {
		OpenGL.glDepthMask(aBool8937 && aBool8938);
	}

	void method15091() {
		if (aBool9018)
			OpenGL.glEnable(3008);
		else
			OpenGL.glDisable(3008);
	}

	void method14894() {
		OpenGL.glMatrixMode(5888);
		OpenGL.glLoadMatrixf(aClass288_8950.aFloatArray4285, 0);
		OpenGL.glLightfv(16384, 4611, aFloatArray8943, 0);
		OpenGL.glLightfv(16385, 4611, aFloatArray8879, 0);
	}

	void method15093() {
		if (aBool9018)
			OpenGL.glEnable(3008);
		else
			OpenGL.glDisable(3008);
	}

	public void method1873() {
		OpenGL.glFinish();
	}

	void method15019() {
		if (aBool9031)
			OpenGL.glEnable(3089);
		else
			OpenGL.glDisable(3089);
	}

	void method14796() {
		int i = 0;
		int i_182_ = 0;
		if (anInt9032 == 0) {
			i = 0;
			i_182_ = 0;
		} else if (anInt9032 == 1) {
			i = 1;
			i_182_ = 0;
		} else if (anInt9032 == 2) {
			i = 1;
			i_182_ = 1;
		}
		if (aClass373_9027 == Class373.aClass373_5611)
			OpenGL.glBlendFuncSeparate(770, 771, i, i_182_);
		else if (aClass373_9027 == Class373.aClass373_5608)
			OpenGL.glBlendFuncSeparate(1, 1, i, i_182_);
		else if (aClass373_9027 == Class373.aClass373_5612)
			OpenGL.glBlendFuncSeparate(774, 1, i, i_182_);
	}

	void method15097() {
		int i = 0;
		int i_183_ = 0;
		if (anInt9032 == 0) {
			i = 0;
			i_183_ = 0;
		} else if (anInt9032 == 1) {
			i = 1;
			i_183_ = 0;
		} else if (anInt9032 == 2) {
			i = 1;
			i_183_ = 1;
		}
		if (aClass373_9027 == Class373.aClass373_5611)
			OpenGL.glBlendFuncSeparate(770, 771, i, i_183_);
		else if (aClass373_9027 == Class373.aClass373_5608)
			OpenGL.glBlendFuncSeparate(1, 1, i, i_183_);
		else if (aClass373_9027 == Class373.aClass373_5612)
			OpenGL.glBlendFuncSeparate(774, 1, i, i_183_);
	}

	public Interface7 method2164(int i, int i_184_, int i_185_) {
		return new Class228(this, Class172.aClass172_2152, Class96.aClass96_1388, i, i_184_, i_185_);
	}

	void method14933() {
		if (aBool8994 && aBool8993 && anInt8910 >= 0)
			OpenGL.glEnable(2912);
		else
			OpenGL.glDisable(2912);
	}

	void method15006(boolean bool) {
		if (bool)
			OpenGL.glEnable(32925);
		else
			OpenGL.glDisable(32925);
	}

	void method14900(boolean bool) {
		if (bool)
			OpenGL.glEnable(32925);
		else
			OpenGL.glDisable(32925);
	}

	final Interface43 method15141(boolean bool) {
		return new Class220_Sub1(this, Class96.aClass96_1389, bool);
	}

	final void method15055(int i, Class365 class365, boolean bool, boolean bool_186_) {
		OpenGL.glTexEnvi(8960, 34176 + i, method16560(class365));
		if (bool)
			OpenGL.glTexEnvi(8960, 34192 + i, bool_186_ ? 771 : 770);
		else
			OpenGL.glTexEnvi(8960, 34192 + i, bool_186_ ? 769 : 768);
	}

	Interface39 method14827(Class172 class172, int i, int i_187_, boolean bool, byte[] is, int i_188_, int i_189_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, 1403793270) && Class449.method8057(i_187_, -788258195)))
			return new Class217_Sub4(this, class172, i, i_187_, bool, is, i_188_, i_189_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, class172, i, i_187_, is, i_188_, i_189_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, class172, Class96.aClass96_1386, Class71.method1628(i, (byte) 17), Class71.method1628(i_187_, (byte) 63));
		class217_sub4.method256(0, 0, i, i_187_, is, class172, i_188_, i_189_);
		return class217_sub4;
	}

	public Class171_Sub1 method1898() {
		return new Class171_Sub1_Sub2_Sub2(this);
	}

	final void method15074() {
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (anInt8958 & 0xff0000) / 1.671168E7F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (anInt8958 & 0xff00) / 65280.0F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (anInt8958 & 0xff) / 255.0F;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = (float) (anInt8958 >>> 24) / 255.0F;
		OpenGL.glTexEnvfv(8960, 8705, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
	}

	public void method15111(int i, Interface41 interface41) {
		((Class84_Sub1_Sub1) this).aClass220_Sub2Array10372[i] = (Class220_Sub2) interface41;
	}

	public void method15112(int i, Interface41 interface41) {
		((Class84_Sub1_Sub1) this).aClass220_Sub2Array10372[i] = (Class220_Sub2) interface41;
	}

	void method15015() {
		OpenGL.glDepthMask(aBool8937 && aBool8938);
	}

	static int method16573(Class172 class172) {
		switch (class172.anInt2143 * 1259837281) {
		case 7:
			return 6402;
		case 0:
			return 6409;
		case 4:
			return 6407;
		case 9:
			return 6408;
		case 5:
			return 6406;
		case 8:
			return 6410;
		default:
			throw new IllegalStateException();
		}
	}

	void method15115(Interface43 interface43) {
		((Class84_Sub1_Sub1) this).aClass220_Sub1_10373 = (Class220_Sub1) interface43;
		((Class84_Sub1_Sub1) this).aClass220_Sub1_10373.method4527();
	}

	final Interface43 method14862(boolean bool) {
		return new Class220_Sub1(this, Class96.aClass96_1389, bool);
	}

	public final void method14969(Class392 class392, int i, int i_190_) {
		int i_191_;
		int i_192_;
		if (class392 == Class392.aClass392_5711) {
			i_191_ = 1;
			i_192_ = i_190_ * 2;
		} else if (class392 == Class392.aClass392_5710) {
			i_191_ = 3;
			i_192_ = i_190_ + 1;
		} else if (class392 == Class392.aClass392_5712) {
			i_191_ = 4;
			i_192_ = i_190_ * 3;
		} else if (class392 == Class392.aClass392_5709) {
			i_191_ = 6;
			i_192_ = i_190_ + 2;
		} else if (class392 == Class392.aClass392_5714) {
			i_191_ = 5;
			i_192_ = i_190_ + 2;
		} else {
			i_191_ = 0;
			i_192_ = i_190_;
		}
		OpenGL.glDrawArrays(i_191_, i, i_192_);
	}

	byte[] method16574(String string) {
		return method14757("gl", string);
	}

	final void method15126(Interface43 interface43, Class392 class392, int i, int i_193_, int i_194_, int i_195_) {
		int i_196_;
		int i_197_;
		if (class392 == Class392.aClass392_5711) {
			i_196_ = 1;
			i_197_ = i_195_ * 2;
		} else if (class392 == Class392.aClass392_5710) {
			i_196_ = 3;
			i_197_ = i_195_ + 1;
		} else if (class392 == Class392.aClass392_5712) {
			i_196_ = 4;
			i_197_ = i_195_ * 3;
		} else if (class392 == Class392.aClass392_5709) {
			i_196_ = 6;
			i_197_ = i_195_ + 2;
		} else if (class392 == Class392.aClass392_5714) {
			i_196_ = 5;
			i_197_ = i_195_ + 2;
		} else {
			i_196_ = 0;
			i_197_ = i_195_;
		}
		Class96 class96 = interface43.method294();
		Class220_Sub1 class220_sub1 = (Class220_Sub1) interface43;
		class220_sub1.method4527();
		OpenGL.glDrawElements(i_196_, i_197_, method16567(class96), (class220_sub1.method4526() + (long) (i_194_ * (class96.anInt1387 * 881930587))));
	}

	void method14814() {
		if (aBool8946 && !aBool8942)
			OpenGL.glEnable(2896);
		else
			OpenGL.glDisable(2896);
	}

	void method14881() {
		if (aBool8869)
			OpenGL.glEnable(2929);
		else
			OpenGL.glDisable(2929);
	}

	void method15033() {
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = aFloat8952 * aFloat8948;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = aFloat8952 * aFloat8949;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = aFloat8952 * aFloat8975;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = 1.0F;
		OpenGL.glLightfv(16384, 4609, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
		((Class84_Sub1_Sub1) this).aFloatArray10386[0] = -aFloat8917 * aFloat8948;
		((Class84_Sub1_Sub1) this).aFloatArray10386[1] = -aFloat8917 * aFloat8949;
		((Class84_Sub1_Sub1) this).aFloatArray10386[2] = -aFloat8917 * aFloat8975;
		((Class84_Sub1_Sub1) this).aFloatArray10386[3] = 1.0F;
		OpenGL.glLightfv(16385, 4609, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
	}

	void method15133() {
		/* empty */
	}

	void method15134() {
		/* empty */
	}

	void method15113() {
		if (aBool9018)
			OpenGL.glEnable(3008);
		else
			OpenGL.glDisable(3008);
	}

	void method15136() {
		/* empty */
	}

	Interface31 method14883(int i, boolean bool, int[][] is) {
		return new Class217_Sub2(this, i, bool, is);
	}

	Interface38 method15137(Class172 class172, int i, int i_198_, int i_199_, boolean bool, byte[] is) {
		return new Class217_Sub3(this, class172, i, i_198_, i_199_, bool, is);
	}

	Interface38 method15138(Class172 class172, int i, int i_200_, int i_201_, boolean bool, byte[] is) {
		return new Class217_Sub3(this, class172, i, i_200_, i_201_, bool, is);
	}

	Interface38 method14882(Class172 class172, int i, int i_202_, int i_203_, boolean bool, byte[] is) {
		return new Class217_Sub3(this, class172, i, i_202_, i_203_, bool, is);
	}

	final void method15139(int i, Class365 class365, boolean bool) {
		OpenGL.glTexEnvi(8960, 34184 + i, method16560(class365));
		OpenGL.glTexEnvi(8960, 34200 + i, bool ? 771 : 770);
	}

	void method14832() {
		aFloat8999 = aFloat8922 - (float) anInt8997;
		aFloat8998 = aFloat8999 - (float) anInt8910;
		if (aFloat8998 < aFloat8911)
			aFloat8998 = aFloat8911;
		if (aBool8874) {
			OpenGL.glFogf(2915, aFloat8998);
			OpenGL.glFogf(2916, aFloat8999);
			((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (anInt8919 & 0xff0000) / 1.671168E7F;
			((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (anInt8919 & 0xff00) / 65280.0F;
			((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (anInt8919 & 0xff) / 255.0F;
			OpenGL.glFogfv(2918, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
		}
	}

	byte[] method16575(String string) {
		return method14757("gl", string);
	}

	void method14892() {
		aFloat8999 = aFloat8922 - (float) anInt8997;
		aFloat8998 = aFloat8999 - (float) anInt8910;
		if (aFloat8998 < aFloat8911)
			aFloat8998 = aFloat8911;
		if (aBool8874) {
			OpenGL.glFogf(2915, aFloat8998);
			OpenGL.glFogf(2916, aFloat8999);
			((Class84_Sub1_Sub1) this).aFloatArray10386[0] = (float) (anInt8919 & 0xff0000) / 1.671168E7F;
			((Class84_Sub1_Sub1) this).aFloatArray10386[1] = (float) (anInt8919 & 0xff00) / 65280.0F;
			((Class84_Sub1_Sub1) this).aFloatArray10386[2] = (float) (anInt8919 & 0xff) / 255.0F;
			OpenGL.glFogfv(2918, ((Class84_Sub1_Sub1) this).aFloatArray10386, 0);
		}
	}

	public final void method15142(Class392 class392, int i, int i_204_, int i_205_, int i_206_) {
		int i_207_;
		int i_208_;
		if (class392 == Class392.aClass392_5711) {
			i_207_ = 1;
			i_208_ = i_206_ * 2;
		} else if (class392 == Class392.aClass392_5710) {
			i_207_ = 3;
			i_208_ = i_206_ + 1;
		} else if (class392 == Class392.aClass392_5712) {
			i_207_ = 4;
			i_208_ = i_206_ * 3;
		} else if (class392 == Class392.aClass392_5709) {
			i_207_ = 6;
			i_208_ = i_206_ + 2;
		} else if (class392 == Class392.aClass392_5714) {
			i_207_ = 5;
			i_208_ = i_206_ + 2;
		} else {
			i_207_ = 0;
			i_208_ = i_206_;
		}
		Class96 class96 = ((Class84_Sub1_Sub1) this).aClass220_Sub1_10373.method294();
		OpenGL.glDrawElements(i_207_, i_208_, method16567(class96), (((Class84_Sub1_Sub1) this).aClass220_Sub1_10373.method4526() + (long) (i_205_ * (class96.anInt1387 * 881930587))));
	}

	public final void method15143(Class392 class392, int i, int i_209_, int i_210_, int i_211_) {
		int i_212_;
		int i_213_;
		if (class392 == Class392.aClass392_5711) {
			i_212_ = 1;
			i_213_ = i_211_ * 2;
		} else if (class392 == Class392.aClass392_5710) {
			i_212_ = 3;
			i_213_ = i_211_ + 1;
		} else if (class392 == Class392.aClass392_5712) {
			i_212_ = 4;
			i_213_ = i_211_ * 3;
		} else if (class392 == Class392.aClass392_5709) {
			i_212_ = 6;
			i_213_ = i_211_ + 2;
		} else if (class392 == Class392.aClass392_5714) {
			i_212_ = 5;
			i_213_ = i_211_ + 2;
		} else {
			i_212_ = 0;
			i_213_ = i_211_;
		}
		Class96 class96 = ((Class84_Sub1_Sub1) this).aClass220_Sub1_10373.method294();
		OpenGL.glDrawElements(i_212_, i_213_, method16567(class96), (((Class84_Sub1_Sub1) this).aClass220_Sub1_10373.method4526() + (long) (i_210_ * (class96.anInt1387 * 881930587))));
	}

	public Class57 method15144(String string) {
		byte[] is = method16575(string);
		if (is == null)
			return null;
		Class34 class34 = method14884(is);
		return new Class57_Sub2(this, class34);
	}

	public Class57 method15071(String string) {
		byte[] is = method16575(string);
		if (is == null)
			return null;
		Class34 class34 = method14884(is);
		return new Class57_Sub2(this, class34);
	}

	byte[] method16576(String string) {
		return method14757("gl", string);
	}

	Interface39 method15034(Class172 class172, int i, int i_214_, boolean bool, byte[] is, int i_215_, int i_216_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, 1160423444) && Class449.method8057(i_214_, -1680847538)))
			return new Class217_Sub4(this, class172, i, i_214_, bool, is, i_215_, i_216_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, class172, i, i_214_, is, i_215_, i_216_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, class172, Class96.aClass96_1386, Class71.method1628(i, (byte) 93), Class71.method1628(i_214_, (byte) 106));
		class217_sub4.method256(0, 0, i, i_214_, is, class172, i_215_, i_216_);
		return class217_sub4;
	}

	public void method14785(Class363 class363) {
		Class384[] class384s = class363.aClass384Array5525;
		int i = 0;
		boolean bool = false;
		boolean bool_217_ = false;
		boolean bool_218_ = false;
		for (int i_219_ = 0; i_219_ < class384s.length; i_219_++) {
			Class384 class384 = class384s[i_219_];
			Class220_Sub2 class220_sub2 = ((Class84_Sub1_Sub1) this).aClass220_Sub2Array10372[i_219_];
			int i_220_ = 0;
			int i_221_ = class220_sub2.method16208();
			long l = class220_sub2.method4526();
			class220_sub2.method4527();
			for (int i_222_ = 0; i_222_ < class384.method7073(); i_222_++) {
				Class371 class371 = class384.method7074(i_222_);
				switch (class371.anInt5580) {
				case 9:
					OpenGL.glNormalPointer(5126, i_221_, l + (long) i_220_);
					bool_217_ = true;
					break;
				default:
					break;
				case 1:
					OpenGL.glClientActiveTexture(33984 + i++);
					OpenGL.glTexCoordPointer(4, 5126, i_221_, l + (long) i_220_);
					break;
				case 4:
					OpenGL.glColorPointer(4, 5121, i_221_, l + (long) i_220_);
					bool = true;
					break;
				case 0:
					OpenGL.glClientActiveTexture(33984 + i++);
					OpenGL.glTexCoordPointer(3, 5126, i_221_, l + (long) i_220_);
					break;
				case 11:
					OpenGL.glVertexPointer(3, 5126, i_221_, l + (long) i_220_);
					bool_218_ = true;
					break;
				case 2:
					OpenGL.glClientActiveTexture(33984 + i++);
					OpenGL.glTexCoordPointer(1, 5126, i_221_, l + (long) i_220_);
					break;
				case 5:
					OpenGL.glClientActiveTexture(33984 + i++);
					OpenGL.glTexCoordPointer(2, 5126, i_221_, l + (long) i_220_);
				}
				i_220_ += class371.anInt5579;
			}
		}
		if (((Class84_Sub1_Sub1) this).aBool10370 != bool_218_) {
			if (bool_218_)
				OpenGL.glEnableClientState(32884);
			else
				OpenGL.glDisableClientState(32884);
			((Class84_Sub1_Sub1) this).aBool10370 = bool_218_;
		}
		if (((Class84_Sub1_Sub1) this).aBool10363 != bool_217_) {
			if (bool_217_)
				OpenGL.glEnableClientState(32885);
			else
				OpenGL.glDisableClientState(32885);
			((Class84_Sub1_Sub1) this).aBool10363 = bool_217_;
		}
		if (((Class84_Sub1_Sub1) this).aBool10369 != bool) {
			if (bool)
				OpenGL.glEnableClientState(32886);
			else
				OpenGL.glDisableClientState(32886);
			((Class84_Sub1_Sub1) this).aBool10369 = bool;
		}
		if (((Class84_Sub1_Sub1) this).anInt10371 < i) {
			for (int i_223_ = ((Class84_Sub1_Sub1) this).anInt10371; i_223_ < i; i_223_++) {
				OpenGL.glClientActiveTexture(33984 + i_223_);
				OpenGL.glEnableClientState(32888);
			}
			((Class84_Sub1_Sub1) this).anInt10371 = i;
		} else if (((Class84_Sub1_Sub1) this).anInt10371 > i) {
			for (int i_224_ = i; i_224_ < ((Class84_Sub1_Sub1) this).anInt10371; i_224_++) {
				OpenGL.glClientActiveTexture(33984 + i_224_);
				OpenGL.glDisableClientState(32888);
			}
			((Class84_Sub1_Sub1) this).anInt10371 = i;
		}
	}

	byte[] method16577(String string) {
		return method14757("gl", string);
	}

	void method14771(Interface43 interface43) {
		((Class84_Sub1_Sub1) this).aClass220_Sub1_10373 = (Class220_Sub1) interface43;
		((Class84_Sub1_Sub1) this).aClass220_Sub1_10373.method4527();
	}

	void method15147() {
		if (aBool9031)
			OpenGL.glEnable(3089);
		else
			OpenGL.glDisable(3089);
	}

	public void method14866(int i, Interface41 interface41) {
		((Class84_Sub1_Sub1) this).aClass220_Sub2Array10372[i] = (Class220_Sub2) interface41;
	}

	static final int method16578(Class391 class391) {
		if (class391 == Class391.aClass391_5708)
			return 7681;
		if (class391 == Class391.aClass391_5704)
			return 8448;
		if (class391 == Class391.aClass391_5707)
			return 34165;
		if (class391 == Class391.aClass391_5705)
			return 260;
		if (class391 == Class391.aClass391_5706)
			return 34023;
		throw new IllegalArgumentException();
	}

	static final int method16579(Class391 class391) {
		if (class391 == Class391.aClass391_5708)
			return 7681;
		if (class391 == Class391.aClass391_5704)
			return 8448;
		if (class391 == Class391.aClass391_5707)
			return 34165;
		if (class391 == Class391.aClass391_5705)
			return 260;
		if (class391 == Class391.aClass391_5706)
			return 34023;
		throw new IllegalArgumentException();
	}

	static final int method16580(Class391 class391) {
		if (class391 == Class391.aClass391_5708)
			return 7681;
		if (class391 == Class391.aClass391_5704)
			return 8448;
		if (class391 == Class391.aClass391_5707)
			return 34165;
		if (class391 == Class391.aClass391_5705)
			return 260;
		if (class391 == Class391.aClass391_5706)
			return 34023;
		throw new IllegalArgumentException();
	}

	void method15036(int i) {
		OpenGL.glColorMask((i & 0x1) != 0, (i & 0x2) != 0, (i & 0x4) != 0, (i & 0x8) != 0);
	}

	static final int method16581(Class365 class365) {
		if (class365 == Class365.aClass365_5536)
			return 5890;
		if (class365 == Class365.aClass365_5537)
			return 34167;
		if (class365 == Class365.aClass365_5538)
			return 34168;
		if (class365 == Class365.aClass365_5535)
			return 34166;
		throw new IllegalArgumentException();
	}

	void method14850() {
		if (aBool8869)
			OpenGL.glEnable(2929);
		else
			OpenGL.glDisable(2929);
	}

	final synchronized void method16582(int i, int i_225_) {
		Class587_Sub17 class587_sub17 = new Class587_Sub17(i_225_);
		class587_sub17.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10360.method7337(class587_sub17, -1022096660);
	}

	final synchronized void method16583(int i, int i_226_) {
		Class587_Sub17 class587_sub17 = new Class587_Sub17(i_226_);
		class587_sub17.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10361.method7337(class587_sub17, -311500916);
	}

	final synchronized void method16584(int i) {
		Class587_Sub17 class587_sub17 = new Class587_Sub17(i);
		((Class84_Sub1_Sub1) this).aClass413_10362.method7337(class587_sub17, -1630361001);
	}

	public void method2039(int i, int i_227_) {
		int i_228_ = 0;
		if ((i & 0x1) != 0) {
			OpenGL.glClearColor((float) (i_227_ & 0xff0000) / 1.671168E7F, (float) (i_227_ & 0xff00) / 65280.0F, (float) (i_227_ & 0xff) / 255.0F, (float) (i_227_ >>> 24) / 255.0F);
			i_228_ = 16384;
		}
		if ((i & 0x2) != 0) {
			method14808(true);
			i_228_ |= 0x100;
		}
		if ((i & 0x4) != 0)
			i_228_ |= 0x400;
		OpenGL.glClear(i_228_);
	}

	final synchronized void method16585(long l) {
		Class587 class587 = new Class587();
		class587.aLong7674 = l * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10387.method7337(class587, -1308454267);
	}

	final synchronized void method16586(int i) {
		Class587 class587 = new Class587();
		class587.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10364.method7337(class587, -552644008);
	}

	final synchronized void method16587(int i) {
		Class587 class587 = new Class587();
		class587.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10364.method7337(class587, -1328682509);
	}

	final synchronized void method16588(int i) {
		Class587 class587 = new Class587();
		class587.aLong7674 = (long) i * 7798553346842421701L;
		((Class84_Sub1_Sub1) this).aClass413_10364.method7337(class587, -2084864373);
	}

	static final int method16589(Class96 class96) {
		switch (class96.anInt1392 * 1138620733) {
		case 2:
			return 5123;
		case 7:
			return 5122;
		case 3:
			return 5125;
		case 6:
			return 5126;
		case 1:
			return 5121;
		default:
			return 5121;
		case 4:
			return 5120;
		case 5:
			return 5124;
		case 0:
			return 5131;
		}
	}

	static final int method16590(Class96 class96) {
		switch (class96.anInt1392 * 1138620733) {
		case 2:
			return 5123;
		case 7:
			return 5122;
		case 3:
			return 5125;
		case 6:
			return 5126;
		case 1:
			return 5121;
		default:
			return 5121;
		case 4:
			return 5120;
		case 5:
			return 5124;
		case 0:
			return 5131;
		}
	}

	public Interface11 method2157(int i, int i_229_, Class172 class172, Class96 class96, int i_230_) {
		return new Class228(this, class172, class96, i, i_229_, i_230_);
	}

	public boolean method14754() {
		return ((Class84_Sub1_Sub1) this).aBool10365;
	}

	static int method16591(Class172 class172) {
		switch (class172.anInt2143 * 1259837281) {
		case 7:
			return 6402;
		case 0:
			return 6409;
		case 4:
			return 6407;
		case 9:
			return 6408;
		case 5:
			return 6406;
		case 8:
			return 6410;
		default:
			throw new IllegalStateException();
		}
	}

	Interface39 method15035(Class172 class172, int i, int i_231_, boolean bool, byte[] is, int i_232_, int i_233_) {
		if (((Class84_Sub1_Sub1) this).aBool10375 || (Class449.method8057(i, 368006715) && Class449.method8057(i_231_, -501665702)))
			return new Class217_Sub4(this, class172, i, i_231_, bool, is, i_232_, i_233_);
		if (((Class84_Sub1_Sub1) this).aBool10383)
			return new Class217_Sub1(this, class172, i, i_231_, is, i_232_, i_233_);
		Class217_Sub4 class217_sub4 = new Class217_Sub4(this, class172, Class96.aClass96_1386, Class71.method1628(i, (byte) 17), Class71.method1628(i_231_, (byte) 73));
		class217_sub4.method256(0, 0, i, i_231_, is, class172, i_232_, i_233_);
		return class217_sub4;
	}

	static int method16592(Class172 class172) {
		switch (class172.anInt2143 * 1259837281) {
		case 7:
			return 6402;
		case 0:
			return 6409;
		case 4:
			return 6407;
		case 9:
			return 6408;
		case 5:
			return 6406;
		case 8:
			return 6410;
		default:
			throw new IllegalStateException();
		}
	}

	static int method16593(Class172 class172, Class96 class96) {
		if (class96 == Class96.aClass96_1386) {
			switch (class172.anInt2143 * 1259837281) {
			case 6:
				return 33777;
			case 9:
				return 6408;
			case 8:
				return 6410;
			case 1:
				return 33779;
			default:
				throw new IllegalArgumentException();
			case 0:
				return 6409;
			case 4:
				return 6407;
			case 5:
				return 6406;
			}
		}
		if (class96 == Class96.aClass96_1389) {
			switch (class172.anInt2143 * 1259837281) {
			case 4:
				return 32852;
			default:
				throw new IllegalArgumentException();
			case 5:
				return 32830;
			case 8:
				return 36219;
			case 7:
				return 33189;
			case 9:
				return 32859;
			case 0:
				return 32834;
			}
		}
		if (class96 == Class96.aClass96_1388) {
			switch (class172.anInt2143 * 1259837281) {
			case 7:
				return 33190;
			default:
				throw new IllegalArgumentException();
			}
		}
		if (class96 == Class96.aClass96_1390) {
			switch (class172.anInt2143 * 1259837281) {
			case 4:
				return 34843;
			case 5:
				return 34844;
			case 9:
				return 34842;
			case 8:
				return 34847;
			case 0:
				return 34846;
			default:
				throw new IllegalArgumentException();
			}
		}
		if (class96 == Class96.aClass96_1393) {
			switch (class172.anInt2143 * 1259837281) {
			default:
				throw new IllegalArgumentException();
			case 0:
				return 34840;
			case 4:
				return 34837;
			case 8:
				return 34841;
			case 9:
				return 34836;
			case 5:
				return 34838;
			}
		}
		throw new IllegalArgumentException();
	}

	static int method16594(Class172 class172, Class96 class96) {
		if (class96 == Class96.aClass96_1386) {
			switch (class172.anInt2143 * 1259837281) {
			case 6:
				return 33777;
			case 9:
				return 6408;
			case 8:
				return 6410;
			case 1:
				return 33779;
			default:
				throw new IllegalArgumentException();
			case 0:
				return 6409;
			case 4:
				return 6407;
			case 5:
				return 6406;
			}
		}
		if (class96 == Class96.aClass96_1389) {
			switch (class172.anInt2143 * 1259837281) {
			case 4:
				return 32852;
			default:
				throw new IllegalArgumentException();
			case 5:
				return 32830;
			case 8:
				return 36219;
			case 7:
				return 33189;
			case 9:
				return 32859;
			case 0:
				return 32834;
			}
		}
		if (class96 == Class96.aClass96_1388) {
			switch (class172.anInt2143 * 1259837281) {
			case 7:
				return 33190;
			default:
				throw new IllegalArgumentException();
			}
		}
		if (class96 == Class96.aClass96_1390) {
			switch (class172.anInt2143 * 1259837281) {
			case 4:
				return 34843;
			case 5:
				return 34844;
			case 9:
				return 34842;
			case 8:
				return 34847;
			case 0:
				return 34846;
			default:
				throw new IllegalArgumentException();
			}
		}
		if (class96 == Class96.aClass96_1393) {
			switch (class172.anInt2143 * 1259837281) {
			default:
				throw new IllegalArgumentException();
			case 0:
				return 34840;
			case 4:
				return 34837;
			case 8:
				return 34841;
			case 9:
				return 34836;
			case 5:
				return 34838;
			}
		}
		throw new IllegalArgumentException();
	}
}
