/* Class386 - Decompiled by JODE
 * Visit http://jode.sourceforge.net/
 */
import java.nio.ByteBuffer;

public class Class386 {
	int[] anIntArray5670;
	Interface41 anInterface41_5671;
	Class363 aClass363_5672;
	Interface43 anInterface43_5673;
	int[] anIntArray5674;
	int anInt5675 = 768;
	int anInt5676 = 64;
	Class243_Sub6_Sub1[][] aClass243_Sub6_Sub1ArrayArray5677;
	int anInt5678 = 64;
	int[] anIntArray5679;
	Interface41 anInterface41_5680;
	int anInt5681;
	int anInt5682 = 1600;
	Class243_Sub6_Sub1[][] aClass243_Sub6_Sub1ArrayArray5683;
	int anInt5684;
	static float aFloat5685;

	void method7084(Class84_Sub1 class84_sub1, Class243_Sub6 class243_sub6, int i, int i_0_, int i_1_, Class356 class356) {
		Class243_Sub6 class243_sub6_2_ = class243_sub6.aClass243_Sub6_9996;
		int i_3_ = 0;
		int i_4_ = -2;
		boolean bool = true;
		boolean bool_5_ = true;
		while (class243_sub6_2_ != class243_sub6) {
			((Class386) this).anInt5684 = 0;
			for (int i_6_ = 0; i_6_ < i; i_6_++)
				((Class386) this).anIntArray5670[i_6_] = 0;
			for (int i_7_ = 0; i_7_ < 64; i_7_++)
				((Class386) this).anIntArray5674[i_7_] = 0;
			for (/**/; class243_sub6_2_ != class243_sub6; class243_sub6_2_ = class243_sub6_2_.aClass243_Sub6_9996) {
				Class243_Sub6_Sub1 class243_sub6_sub1 = (Class243_Sub6_Sub1) class243_sub6_2_;
				if (bool_5_) {
					i_4_ = class243_sub6_sub1.anInt10784;
					bool = class243_sub6_sub1.aBool10793;
					bool_5_ = false;
				}
				if (i_3_ > 0 && (i_4_ != class243_sub6_sub1.anInt10784 || bool != class243_sub6_sub1.aBool10793)) {
					bool_5_ = true;
					break;
				}
				method7099((((Class386) this).anIntArray5679[i_3_++] - i_0_ >> i_1_), class243_sub6_sub1);
			}
			class356.anInterface39_5491 = null;
			if (i_4_ >= 0) {
				Class104 class104 = class84_sub1.aClass101_1178.method2491(i_4_, 2103778817);
				if (class104.anInt1488 * -1560548051 != -1)
					class356.anInterface39_5491 = ((Class84_Sub1) class84_sub1).aClass381_8968.method7019(class104);
			}
			if (bool && class84_sub1.aFloat8951 != aFloat5685)
				class84_sub1.method1960(aFloat5685);
			else if (class84_sub1.aFloat8951 != 1.0F)
				class84_sub1.method1960(1.0F);
			method7089(class84_sub1, i);
		}
	}

	void method7085(Class84_Sub1 class84_sub1) {
		((Class386) this).anInterface41_5671.method289(786336, 24);
	}

	void method7086(Class84_Sub1 class84_sub1, Class160 class160) {
		class84_sub1.method1957(false);
		aFloat5685 = class84_sub1.aFloat8951;
		float f = class84_sub1.aClass288_8950.aFloatArray4285[2];
		float f_8_ = class84_sub1.aClass288_8950.aFloatArray4285[6];
		float f_9_ = class84_sub1.aClass288_8950.aFloatArray4285[10];
		float f_10_ = class84_sub1.aClass288_8950.aFloatArray4285[14];
		int i = 0;
		int i_11_ = 2147483647;
		int i_12_ = 0;
		Class243_Sub6 class243_sub6 = class160.aClass442_1885.aClass243_Sub6_6322;
		for (Class243_Sub6 class243_sub6_13_ = class243_sub6.aClass243_Sub6_9996; class243_sub6_13_ != class243_sub6; class243_sub6_13_ = class243_sub6_13_.aClass243_Sub6_9996) {
			Class243_Sub6_Sub1 class243_sub6_sub1 = (Class243_Sub6_Sub1) class243_sub6_13_;
			int i_14_ = (int) (f * (float) (class243_sub6_sub1.anInt10787 >> 12) + f_8_ * (float) (class243_sub6_sub1.anInt10788 >> 12) + f_9_ * (float) (class243_sub6_sub1.anInt10789 >> 12) + f_10_);
			if (i_14_ > i_12_)
				i_12_ = i_14_;
			if (i_14_ < i_11_)
				i_11_ = i_14_;
			((Class386) this).anIntArray5679[i++] = i_14_;
		}
		int i_15_ = i_12_ - i_11_;
		int i_16_;
		if (i_15_ + 2 > 1600) {
			i_16_ = (1 + Class508.method11502(i_15_, (byte) 0) - ((Class386) this).anInt5681);
			i_15_ = (i_15_ >> i_16_) + 2;
		} else {
			i_16_ = 0;
			i_15_ += 2;
		}
		class84_sub1.method14867(((Class386) this).anInterface43_5673);
		Class356 class356 = ((Class84_Sub1) class84_sub1).aClass356_8980;
		class356.method6843(Class288.aClass288_4284);
		class356.aClass288_5493.method5744();
		class356.anInt5494 = -1;
		method7088(class84_sub1, class243_sub6, i_15_, i_11_, i_16_, class356);
		if (class84_sub1.aFloat8951 != aFloat5685)
			class84_sub1.method1960(aFloat5685);
		class84_sub1.method1957(true);
	}

	void method7087(Class84_Sub1 class84_sub1, Class160 class160) {
		class84_sub1.method1957(false);
		aFloat5685 = class84_sub1.aFloat8951;
		float f = class84_sub1.aClass288_8950.aFloatArray4285[2];
		float f_17_ = class84_sub1.aClass288_8950.aFloatArray4285[6];
		float f_18_ = class84_sub1.aClass288_8950.aFloatArray4285[10];
		float f_19_ = class84_sub1.aClass288_8950.aFloatArray4285[14];
		int i = 0;
		int i_20_ = 2147483647;
		int i_21_ = 0;
		Class243_Sub6 class243_sub6 = class160.aClass442_1885.aClass243_Sub6_6322;
		for (Class243_Sub6 class243_sub6_22_ = class243_sub6.aClass243_Sub6_9996; class243_sub6_22_ != class243_sub6; class243_sub6_22_ = class243_sub6_22_.aClass243_Sub6_9996) {
			Class243_Sub6_Sub1 class243_sub6_sub1 = (Class243_Sub6_Sub1) class243_sub6_22_;
			int i_23_ = (int) (f * (float) (class243_sub6_sub1.anInt10787 >> 12) + f_17_ * (float) (class243_sub6_sub1.anInt10788 >> 12) + f_18_ * (float) (class243_sub6_sub1.anInt10789 >> 12) + f_19_);
			if (i_23_ > i_21_)
				i_21_ = i_23_;
			if (i_23_ < i_20_)
				i_20_ = i_23_;
			((Class386) this).anIntArray5679[i++] = i_23_;
		}
		int i_24_ = i_21_ - i_20_;
		int i_25_;
		if (i_24_ + 2 > 1600) {
			i_25_ = (1 + Class508.method11502(i_24_, (byte) 0) - ((Class386) this).anInt5681);
			i_24_ = (i_24_ >> i_25_) + 2;
		} else {
			i_25_ = 0;
			i_24_ += 2;
		}
		class84_sub1.method14867(((Class386) this).anInterface43_5673);
		Class356 class356 = ((Class84_Sub1) class84_sub1).aClass356_8980;
		class356.method6843(Class288.aClass288_4284);
		class356.aClass288_5493.method5744();
		class356.anInt5494 = -1;
		method7088(class84_sub1, class243_sub6, i_24_, i_20_, i_25_, class356);
		if (class84_sub1.aFloat8951 != aFloat5685)
			class84_sub1.method1960(aFloat5685);
		class84_sub1.method1957(true);
	}

	void method7088(Class84_Sub1 class84_sub1, Class243_Sub6 class243_sub6, int i, int i_26_, int i_27_, Class356 class356) {
		Class243_Sub6 class243_sub6_28_ = class243_sub6.aClass243_Sub6_9996;
		int i_29_ = 0;
		int i_30_ = -2;
		boolean bool = true;
		boolean bool_31_ = true;
		while (class243_sub6_28_ != class243_sub6) {
			((Class386) this).anInt5684 = 0;
			for (int i_32_ = 0; i_32_ < i; i_32_++)
				((Class386) this).anIntArray5670[i_32_] = 0;
			for (int i_33_ = 0; i_33_ < 64; i_33_++)
				((Class386) this).anIntArray5674[i_33_] = 0;
			for (/**/; class243_sub6_28_ != class243_sub6; class243_sub6_28_ = class243_sub6_28_.aClass243_Sub6_9996) {
				Class243_Sub6_Sub1 class243_sub6_sub1 = (Class243_Sub6_Sub1) class243_sub6_28_;
				if (bool_31_) {
					i_30_ = class243_sub6_sub1.anInt10784;
					bool = class243_sub6_sub1.aBool10793;
					bool_31_ = false;
				}
				if (i_29_ > 0 && (i_30_ != class243_sub6_sub1.anInt10784 || bool != class243_sub6_sub1.aBool10793)) {
					bool_31_ = true;
					break;
				}
				method7099((((Class386) this).anIntArray5679[i_29_++] - i_26_ >> i_27_), class243_sub6_sub1);
			}
			class356.anInterface39_5491 = null;
			if (i_30_ >= 0) {
				Class104 class104 = class84_sub1.aClass101_1178.method2491(i_30_, 2065202564);
				if (class104.anInt1488 * -1560548051 != -1)
					class356.anInterface39_5491 = ((Class84_Sub1) class84_sub1).aClass381_8968.method7019(class104);
			}
			if (bool && class84_sub1.aFloat8951 != aFloat5685)
				class84_sub1.method1960(aFloat5685);
			else if (class84_sub1.aFloat8951 != 1.0F)
				class84_sub1.method1960(1.0F);
			method7089(class84_sub1, i);
		}
	}

	Class386(Class84_Sub1 class84_sub1) {
		((Class386) this).anInt5675 = 768;
		((Class386) this).anInt5682 = 1600;
		((Class386) this).anInt5681 = Class508.method11502(1600, (byte) 0);
		((Class386) this).anInt5678 = 64;
		((Class386) this).anIntArray5679 = new int[8191];
		((Class386) this).anIntArray5670 = new int[1600];
		((Class386) this).anIntArray5674 = new int[64];
		((Class386) this).aClass243_Sub6_Sub1ArrayArray5677 = new Class243_Sub6_Sub1[1600][64];
		((Class386) this).aClass243_Sub6_Sub1ArrayArray5683 = new Class243_Sub6_Sub1[64][768];
		((Class386) this).anInt5684 = 0;
		((Class386) this).aClass363_5672 = (class84_sub1.method14864(new Class384[] { new Class384(new Class371[] { Class371.aClass371_5581, Class371.aClass371_5570, Class371.aClass371_5568 }), new Class384(Class371.aClass371_5569) }));
		((Class386) this).anInterface41_5671 = class84_sub1.method14973(true);
		((Class386) this).anInterface41_5680 = class84_sub1.method14973(false);
		((Class386) this).anInterface41_5680.method289(393168, 12);
		((Class386) this).anInterface43_5673 = class84_sub1.method14862(false);
		((Class386) this).anInterface43_5673.method295(49146);
		ByteBuffer bytebuffer = class84_sub1.aByteBuffer8876;
		bytebuffer.clear();
		for (int i = 0; i < 8191; i++) {
			int i_34_ = i * 4;
			bytebuffer.putShort((short) i_34_);
			bytebuffer.putShort((short) (i_34_ + 1));
			bytebuffer.putShort((short) (i_34_ + 2));
			bytebuffer.putShort((short) (i_34_ + 2));
			bytebuffer.putShort((short) (i_34_ + 3));
			bytebuffer.putShort((short) i_34_);
		}
		((Class386) this).anInterface43_5673.method302(0, bytebuffer.position(), class84_sub1.aLong8893);
		bytebuffer.clear();
		for (int i = 0; i < 8191; i++) {
			bytebuffer.putFloat(0.0F);
			bytebuffer.putFloat(-1.0F);
			bytebuffer.putFloat(0.0F);
			bytebuffer.putFloat(0.0F);
			bytebuffer.putFloat(-1.0F);
			bytebuffer.putFloat(0.0F);
			bytebuffer.putFloat(0.0F);
			bytebuffer.putFloat(-1.0F);
			bytebuffer.putFloat(0.0F);
			bytebuffer.putFloat(0.0F);
			bytebuffer.putFloat(-1.0F);
			bytebuffer.putFloat(0.0F);
		}
		((Class386) this).anInterface41_5680.method302(0, bytebuffer.position(), class84_sub1.aLong8893);
	}

	void method7089(Class84_Sub1 class84_sub1, int i) {
		int i_35_ = 0;
		Class288 class288 = class84_sub1.aClass288_8950;
		float f = class288.aFloatArray4285[0];
		float f_36_ = class288.aFloatArray4285[4];
		float f_37_ = class288.aFloatArray4285[8];
		float f_38_ = class288.aFloatArray4285[1];
		float f_39_ = class288.aFloatArray4285[5];
		float f_40_ = class288.aFloatArray4285[9];
		float f_41_ = f + f_38_;
		float f_42_ = f_36_ + f_39_;
		float f_43_ = f_37_ + f_40_;
		float f_44_ = f - f_38_;
		float f_45_ = f_36_ - f_39_;
		float f_46_ = f_37_ - f_40_;
		float f_47_ = f_38_ - f;
		float f_48_ = f_39_ - f_36_;
		float f_49_ = f_40_ - f_37_;
		float[] fs = new float[3];
		float[] fs_50_ = new float[3];
		class84_sub1.aClass288_8901.method5746(((Class84_Sub1) class84_sub1).aClass288_8877);
		ByteBuffer bytebuffer = class84_sub1.aByteBuffer8876;
		bytebuffer.clear();
		for (int i_51_ = i - 1; i_51_ >= 0; i_51_--) {
			int i_52_ = (((Class386) this).anIntArray5670[i_51_] > 64 ? 64 : ((Class386) this).anIntArray5670[i_51_]);
			if (i_52_ > 0) {
				for (int i_53_ = i_52_ - 1; i_53_ >= 0; i_53_--) {
					Class243_Sub6_Sub1 class243_sub6_sub1 = (((Class386) this).aClass243_Sub6_Sub1ArrayArray5677[i_51_][i_53_]);
					int i_54_ = class243_sub6_sub1.anInt10791;
					byte i_55_ = (byte) (i_54_ >> 16);
					byte i_56_ = (byte) (i_54_ >> 8);
					byte i_57_ = (byte) i_54_;
					byte i_58_ = (byte) (i_54_ >>> 24);
					if (((Class84_Sub1) class84_sub1).anInt9030 == 0) {
						byte i_59_ = i_55_;
						i_55_ = i_57_;
						i_57_ = i_59_;
					}
					float f_60_ = (float) (class243_sub6_sub1.anInt10787 >> 12);
					float f_61_ = (float) (class243_sub6_sub1.anInt10788 >> 12);
					float f_62_ = (float) (class243_sub6_sub1.anInt10789 >> 12);
					int i_63_ = class243_sub6_sub1.anInt10786 >> 12;
					if (class243_sub6_sub1.aShort10792 != 0) {
						((Class84_Sub1) class84_sub1).aClass288_8878.method5778(class243_sub6_sub1.aShort10792, i_63_, i_63_, 0.0F, 0.0F, 0.0F);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5835(class84_sub1.aClass288_8901);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5754(1.0F, 0.0F, 0.0F, fs);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5754(0.0F, 1.0F, 0.0F, fs_50_);
						bytebuffer.putFloat(f_60_ - fs[0] - fs_50_[0]);
						bytebuffer.putFloat(f_61_ - fs[1] - fs_50_[1]);
						bytebuffer.putFloat(f_62_ - fs[2] - fs_50_[2]);
						bytebuffer.put(i_55_);
						bytebuffer.put(i_56_);
						bytebuffer.put(i_57_);
						bytebuffer.put(i_58_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(f_60_ - fs[0] + fs_50_[0]);
						bytebuffer.putFloat(f_61_ - fs[1] + fs_50_[1]);
						bytebuffer.putFloat(f_62_ - fs[2] + fs_50_[2]);
						bytebuffer.put(i_55_);
						bytebuffer.put(i_56_);
						bytebuffer.put(i_57_);
						bytebuffer.put(i_58_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_60_ + fs[0] + fs_50_[0]);
						bytebuffer.putFloat(f_61_ + fs[1] + fs_50_[1]);
						bytebuffer.putFloat(f_62_ + fs[2] + fs_50_[2]);
						bytebuffer.put(i_55_);
						bytebuffer.put(i_56_);
						bytebuffer.put(i_57_);
						bytebuffer.put(i_58_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_60_ + fs[0] - fs_50_[0]);
						bytebuffer.putFloat(f_61_ + fs[1] - fs_50_[1]);
						bytebuffer.putFloat(f_62_ + fs[2] - fs_50_[2]);
						bytebuffer.put(i_55_);
						bytebuffer.put(i_56_);
						bytebuffer.put(i_57_);
						bytebuffer.put(i_58_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(0.0F);
					} else {
						bytebuffer.putFloat(f_60_ + f_41_ * (float) -i_63_);
						bytebuffer.putFloat(f_61_ + f_42_ * (float) -i_63_);
						bytebuffer.putFloat(f_62_ + f_43_ * (float) -i_63_);
						bytebuffer.put(i_55_);
						bytebuffer.put(i_56_);
						bytebuffer.put(i_57_);
						bytebuffer.put(i_58_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(f_60_ + f_47_ * (float) i_63_);
						bytebuffer.putFloat(f_61_ + f_48_ * (float) i_63_);
						bytebuffer.putFloat(f_62_ + f_49_ * (float) i_63_);
						bytebuffer.put(i_55_);
						bytebuffer.put(i_56_);
						bytebuffer.put(i_57_);
						bytebuffer.put(i_58_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_60_ + f_41_ * (float) i_63_);
						bytebuffer.putFloat(f_61_ + f_42_ * (float) i_63_);
						bytebuffer.putFloat(f_62_ + f_43_ * (float) i_63_);
						bytebuffer.put(i_55_);
						bytebuffer.put(i_56_);
						bytebuffer.put(i_57_);
						bytebuffer.put(i_58_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_60_ + f_44_ * (float) i_63_);
						bytebuffer.putFloat(f_61_ + f_45_ * (float) i_63_);
						bytebuffer.putFloat(f_62_ + f_46_ * (float) i_63_);
						bytebuffer.put(i_55_);
						bytebuffer.put(i_56_);
						bytebuffer.put(i_57_);
						bytebuffer.put(i_58_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(0.0F);
					}
					i_35_++;
				}
				if (((Class386) this).anIntArray5670[i_51_] > 64) {
					int i_64_ = ((Class386) this).anIntArray5670[i_51_] - 64 - 1;
					for (int i_65_ = ((Class386) this).anIntArray5674[i_64_] - 1; i_65_ >= 0; i_65_--) {
						Class243_Sub6_Sub1 class243_sub6_sub1 = (((Class386) this).aClass243_Sub6_Sub1ArrayArray5683[i_64_][i_65_]);
						int i_66_ = class243_sub6_sub1.anInt10791;
						byte i_67_ = (byte) (i_66_ >> 16);
						byte i_68_ = (byte) (i_66_ >> 8);
						byte i_69_ = (byte) i_66_;
						byte i_70_ = (byte) (i_66_ >>> 24);
						float f_71_ = (float) (class243_sub6_sub1.anInt10787 >> 12);
						float f_72_ = (float) (class243_sub6_sub1.anInt10788 >> 12);
						float f_73_ = (float) (class243_sub6_sub1.anInt10789 >> 12);
						int i_74_ = class243_sub6_sub1.anInt10786 >> 12;
						if (((Class84_Sub1) class84_sub1).anInt9030 == 0) {
							byte i_75_ = i_67_;
							i_67_ = i_69_;
							i_69_ = i_75_;
						}
						if (class243_sub6_sub1.aShort10792 != 0) {
							((Class84_Sub1) class84_sub1).aClass288_8878.method5778(class243_sub6_sub1.aShort10792, i_74_, i_74_, 0.0F, 0.0F, 0.0F);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5835(class84_sub1.aClass288_8901);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5754(1.0F, 0.0F, 0.0F, fs);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5754(0.0F, 1.0F, 0.0F, fs_50_);
							bytebuffer.putFloat(f_71_ - fs[0] - fs_50_[0]);
							bytebuffer.putFloat(f_72_ - fs[1] - fs_50_[1]);
							bytebuffer.putFloat(f_73_ - fs[2] - fs_50_[2]);
							bytebuffer.put(i_67_);
							bytebuffer.put(i_68_);
							bytebuffer.put(i_69_);
							bytebuffer.put(i_70_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(f_71_ - fs[0] + fs_50_[0]);
							bytebuffer.putFloat(f_72_ - fs[1] + fs_50_[1]);
							bytebuffer.putFloat(f_73_ - fs[2] + fs_50_[2]);
							bytebuffer.put(i_67_);
							bytebuffer.put(i_68_);
							bytebuffer.put(i_69_);
							bytebuffer.put(i_70_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_71_ + fs[0] + fs_50_[0]);
							bytebuffer.putFloat(f_72_ + fs[1] + fs_50_[1]);
							bytebuffer.putFloat(f_73_ + fs[2] + fs_50_[2]);
							bytebuffer.put(i_67_);
							bytebuffer.put(i_68_);
							bytebuffer.put(i_69_);
							bytebuffer.put(i_70_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_71_ + fs[0] - fs_50_[0]);
							bytebuffer.putFloat(f_72_ + fs[1] - fs_50_[1]);
							bytebuffer.putFloat(f_73_ + fs[2] - fs_50_[2]);
							bytebuffer.put(i_67_);
							bytebuffer.put(i_68_);
							bytebuffer.put(i_69_);
							bytebuffer.put(i_70_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(0.0F);
						} else {
							bytebuffer.putFloat(f_71_ + f_41_ * (float) -i_74_);
							bytebuffer.putFloat(f_72_ + f_42_ * (float) -i_74_);
							bytebuffer.putFloat(f_73_ + f_43_ * (float) -i_74_);
							bytebuffer.put(i_67_);
							bytebuffer.put(i_68_);
							bytebuffer.put(i_69_);
							bytebuffer.put(i_70_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(f_71_ + f_47_ * (float) i_74_);
							bytebuffer.putFloat(f_72_ + f_48_ * (float) i_74_);
							bytebuffer.putFloat(f_73_ + f_49_ * (float) i_74_);
							bytebuffer.put(i_67_);
							bytebuffer.put(i_68_);
							bytebuffer.put(i_69_);
							bytebuffer.put(i_70_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_71_ + f_41_ * (float) i_74_);
							bytebuffer.putFloat(f_72_ + f_42_ * (float) i_74_);
							bytebuffer.putFloat(f_73_ + f_43_ * (float) i_74_);
							bytebuffer.put(i_67_);
							bytebuffer.put(i_68_);
							bytebuffer.put(i_69_);
							bytebuffer.put(i_70_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_71_ + f_44_ * (float) i_74_);
							bytebuffer.putFloat(f_72_ + f_45_ * (float) i_74_);
							bytebuffer.putFloat(f_73_ + f_46_ * (float) i_74_);
							bytebuffer.put(i_67_);
							bytebuffer.put(i_68_);
							bytebuffer.put(i_69_);
							bytebuffer.put(i_70_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(0.0F);
						}
						i_35_++;
					}
				}
			}
		}
		((Class386) this).anInterface41_5671.method302(0, bytebuffer.position(), class84_sub1.aLong8893);
		class84_sub1.method14866(0, ((Class386) this).anInterface41_5671);
		class84_sub1.method14866(1, ((Class386) this).anInterface41_5680);
		class84_sub1.method14865(((Class386) this).aClass363_5672);
		Class356 class356 = ((Class84_Sub1) class84_sub1).aClass356_8980;
		class356.method6840(i_35_);
	}

	void method7090(Class84_Sub1 class84_sub1) {
		((Class386) this).anInterface41_5671.method289(786336, 24);
	}

	void method7091(Class84_Sub1 class84_sub1) {
		((Class386) this).anInterface41_5671.method289(786336, 24);
	}

	void method7092() {
		((Class386) this).anInterface41_5671.method54();
	}

	void method7093(Class84_Sub1 class84_sub1, Class160 class160) {
		class84_sub1.method1957(false);
		aFloat5685 = class84_sub1.aFloat8951;
		float f = class84_sub1.aClass288_8950.aFloatArray4285[2];
		float f_76_ = class84_sub1.aClass288_8950.aFloatArray4285[6];
		float f_77_ = class84_sub1.aClass288_8950.aFloatArray4285[10];
		float f_78_ = class84_sub1.aClass288_8950.aFloatArray4285[14];
		int i = 0;
		int i_79_ = 2147483647;
		int i_80_ = 0;
		Class243_Sub6 class243_sub6 = class160.aClass442_1885.aClass243_Sub6_6322;
		for (Class243_Sub6 class243_sub6_81_ = class243_sub6.aClass243_Sub6_9996; class243_sub6_81_ != class243_sub6; class243_sub6_81_ = class243_sub6_81_.aClass243_Sub6_9996) {
			Class243_Sub6_Sub1 class243_sub6_sub1 = (Class243_Sub6_Sub1) class243_sub6_81_;
			int i_82_ = (int) (f * (float) (class243_sub6_sub1.anInt10787 >> 12) + f_76_ * (float) (class243_sub6_sub1.anInt10788 >> 12) + f_77_ * (float) (class243_sub6_sub1.anInt10789 >> 12) + f_78_);
			if (i_82_ > i_80_)
				i_80_ = i_82_;
			if (i_82_ < i_79_)
				i_79_ = i_82_;
			((Class386) this).anIntArray5679[i++] = i_82_;
		}
		int i_83_ = i_80_ - i_79_;
		int i_84_;
		if (i_83_ + 2 > 1600) {
			i_84_ = (1 + Class508.method11502(i_83_, (byte) 0) - ((Class386) this).anInt5681);
			i_83_ = (i_83_ >> i_84_) + 2;
		} else {
			i_84_ = 0;
			i_83_ += 2;
		}
		class84_sub1.method14867(((Class386) this).anInterface43_5673);
		Class356 class356 = ((Class84_Sub1) class84_sub1).aClass356_8980;
		class356.method6843(Class288.aClass288_4284);
		class356.aClass288_5493.method5744();
		class356.anInt5494 = -1;
		method7088(class84_sub1, class243_sub6, i_83_, i_79_, i_84_, class356);
		if (class84_sub1.aFloat8951 != aFloat5685)
			class84_sub1.method1960(aFloat5685);
		class84_sub1.method1957(true);
	}

	void method7094(Class84_Sub1 class84_sub1, int i) {
		int i_85_ = 0;
		Class288 class288 = class84_sub1.aClass288_8950;
		float f = class288.aFloatArray4285[0];
		float f_86_ = class288.aFloatArray4285[4];
		float f_87_ = class288.aFloatArray4285[8];
		float f_88_ = class288.aFloatArray4285[1];
		float f_89_ = class288.aFloatArray4285[5];
		float f_90_ = class288.aFloatArray4285[9];
		float f_91_ = f + f_88_;
		float f_92_ = f_86_ + f_89_;
		float f_93_ = f_87_ + f_90_;
		float f_94_ = f - f_88_;
		float f_95_ = f_86_ - f_89_;
		float f_96_ = f_87_ - f_90_;
		float f_97_ = f_88_ - f;
		float f_98_ = f_89_ - f_86_;
		float f_99_ = f_90_ - f_87_;
		float[] fs = new float[3];
		float[] fs_100_ = new float[3];
		class84_sub1.aClass288_8901.method5746(((Class84_Sub1) class84_sub1).aClass288_8877);
		ByteBuffer bytebuffer = class84_sub1.aByteBuffer8876;
		bytebuffer.clear();
		for (int i_101_ = i - 1; i_101_ >= 0; i_101_--) {
			int i_102_ = (((Class386) this).anIntArray5670[i_101_] > 64 ? 64 : ((Class386) this).anIntArray5670[i_101_]);
			if (i_102_ > 0) {
				for (int i_103_ = i_102_ - 1; i_103_ >= 0; i_103_--) {
					Class243_Sub6_Sub1 class243_sub6_sub1 = (((Class386) this).aClass243_Sub6_Sub1ArrayArray5677[i_101_][i_103_]);
					int i_104_ = class243_sub6_sub1.anInt10791;
					byte i_105_ = (byte) (i_104_ >> 16);
					byte i_106_ = (byte) (i_104_ >> 8);
					byte i_107_ = (byte) i_104_;
					byte i_108_ = (byte) (i_104_ >>> 24);
					if (((Class84_Sub1) class84_sub1).anInt9030 == 0) {
						byte i_109_ = i_105_;
						i_105_ = i_107_;
						i_107_ = i_109_;
					}
					float f_110_ = (float) (class243_sub6_sub1.anInt10787 >> 12);
					float f_111_ = (float) (class243_sub6_sub1.anInt10788 >> 12);
					float f_112_ = (float) (class243_sub6_sub1.anInt10789 >> 12);
					int i_113_ = class243_sub6_sub1.anInt10786 >> 12;
					if (class243_sub6_sub1.aShort10792 != 0) {
						((Class84_Sub1) class84_sub1).aClass288_8878.method5778(class243_sub6_sub1.aShort10792, i_113_, i_113_, 0.0F, 0.0F, 0.0F);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5835(class84_sub1.aClass288_8901);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5754(1.0F, 0.0F, 0.0F, fs);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5754(0.0F, 1.0F, 0.0F, fs_100_);
						bytebuffer.putFloat(f_110_ - fs[0] - fs_100_[0]);
						bytebuffer.putFloat(f_111_ - fs[1] - fs_100_[1]);
						bytebuffer.putFloat(f_112_ - fs[2] - fs_100_[2]);
						bytebuffer.put(i_105_);
						bytebuffer.put(i_106_);
						bytebuffer.put(i_107_);
						bytebuffer.put(i_108_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(f_110_ - fs[0] + fs_100_[0]);
						bytebuffer.putFloat(f_111_ - fs[1] + fs_100_[1]);
						bytebuffer.putFloat(f_112_ - fs[2] + fs_100_[2]);
						bytebuffer.put(i_105_);
						bytebuffer.put(i_106_);
						bytebuffer.put(i_107_);
						bytebuffer.put(i_108_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_110_ + fs[0] + fs_100_[0]);
						bytebuffer.putFloat(f_111_ + fs[1] + fs_100_[1]);
						bytebuffer.putFloat(f_112_ + fs[2] + fs_100_[2]);
						bytebuffer.put(i_105_);
						bytebuffer.put(i_106_);
						bytebuffer.put(i_107_);
						bytebuffer.put(i_108_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_110_ + fs[0] - fs_100_[0]);
						bytebuffer.putFloat(f_111_ + fs[1] - fs_100_[1]);
						bytebuffer.putFloat(f_112_ + fs[2] - fs_100_[2]);
						bytebuffer.put(i_105_);
						bytebuffer.put(i_106_);
						bytebuffer.put(i_107_);
						bytebuffer.put(i_108_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(0.0F);
					} else {
						bytebuffer.putFloat(f_110_ + f_91_ * (float) -i_113_);
						bytebuffer.putFloat(f_111_ + f_92_ * (float) -i_113_);
						bytebuffer.putFloat(f_112_ + f_93_ * (float) -i_113_);
						bytebuffer.put(i_105_);
						bytebuffer.put(i_106_);
						bytebuffer.put(i_107_);
						bytebuffer.put(i_108_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(f_110_ + f_97_ * (float) i_113_);
						bytebuffer.putFloat(f_111_ + f_98_ * (float) i_113_);
						bytebuffer.putFloat(f_112_ + f_99_ * (float) i_113_);
						bytebuffer.put(i_105_);
						bytebuffer.put(i_106_);
						bytebuffer.put(i_107_);
						bytebuffer.put(i_108_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_110_ + f_91_ * (float) i_113_);
						bytebuffer.putFloat(f_111_ + f_92_ * (float) i_113_);
						bytebuffer.putFloat(f_112_ + f_93_ * (float) i_113_);
						bytebuffer.put(i_105_);
						bytebuffer.put(i_106_);
						bytebuffer.put(i_107_);
						bytebuffer.put(i_108_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_110_ + f_94_ * (float) i_113_);
						bytebuffer.putFloat(f_111_ + f_95_ * (float) i_113_);
						bytebuffer.putFloat(f_112_ + f_96_ * (float) i_113_);
						bytebuffer.put(i_105_);
						bytebuffer.put(i_106_);
						bytebuffer.put(i_107_);
						bytebuffer.put(i_108_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(0.0F);
					}
					i_85_++;
				}
				if (((Class386) this).anIntArray5670[i_101_] > 64) {
					int i_114_ = ((Class386) this).anIntArray5670[i_101_] - 64 - 1;
					for (int i_115_ = ((Class386) this).anIntArray5674[i_114_] - 1; i_115_ >= 0; i_115_--) {
						Class243_Sub6_Sub1 class243_sub6_sub1 = (((Class386) this).aClass243_Sub6_Sub1ArrayArray5683[i_114_][i_115_]);
						int i_116_ = class243_sub6_sub1.anInt10791;
						byte i_117_ = (byte) (i_116_ >> 16);
						byte i_118_ = (byte) (i_116_ >> 8);
						byte i_119_ = (byte) i_116_;
						byte i_120_ = (byte) (i_116_ >>> 24);
						float f_121_ = (float) (class243_sub6_sub1.anInt10787 >> 12);
						float f_122_ = (float) (class243_sub6_sub1.anInt10788 >> 12);
						float f_123_ = (float) (class243_sub6_sub1.anInt10789 >> 12);
						int i_124_ = class243_sub6_sub1.anInt10786 >> 12;
						if (((Class84_Sub1) class84_sub1).anInt9030 == 0) {
							byte i_125_ = i_117_;
							i_117_ = i_119_;
							i_119_ = i_125_;
						}
						if (class243_sub6_sub1.aShort10792 != 0) {
							((Class84_Sub1) class84_sub1).aClass288_8878.method5778(class243_sub6_sub1.aShort10792, i_124_, i_124_, 0.0F, 0.0F, 0.0F);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5835(class84_sub1.aClass288_8901);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5754(1.0F, 0.0F, 0.0F, fs);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5754(0.0F, 1.0F, 0.0F, fs_100_);
							bytebuffer.putFloat(f_121_ - fs[0] - fs_100_[0]);
							bytebuffer.putFloat(f_122_ - fs[1] - fs_100_[1]);
							bytebuffer.putFloat(f_123_ - fs[2] - fs_100_[2]);
							bytebuffer.put(i_117_);
							bytebuffer.put(i_118_);
							bytebuffer.put(i_119_);
							bytebuffer.put(i_120_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(f_121_ - fs[0] + fs_100_[0]);
							bytebuffer.putFloat(f_122_ - fs[1] + fs_100_[1]);
							bytebuffer.putFloat(f_123_ - fs[2] + fs_100_[2]);
							bytebuffer.put(i_117_);
							bytebuffer.put(i_118_);
							bytebuffer.put(i_119_);
							bytebuffer.put(i_120_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_121_ + fs[0] + fs_100_[0]);
							bytebuffer.putFloat(f_122_ + fs[1] + fs_100_[1]);
							bytebuffer.putFloat(f_123_ + fs[2] + fs_100_[2]);
							bytebuffer.put(i_117_);
							bytebuffer.put(i_118_);
							bytebuffer.put(i_119_);
							bytebuffer.put(i_120_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_121_ + fs[0] - fs_100_[0]);
							bytebuffer.putFloat(f_122_ + fs[1] - fs_100_[1]);
							bytebuffer.putFloat(f_123_ + fs[2] - fs_100_[2]);
							bytebuffer.put(i_117_);
							bytebuffer.put(i_118_);
							bytebuffer.put(i_119_);
							bytebuffer.put(i_120_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(0.0F);
						} else {
							bytebuffer.putFloat(f_121_ + f_91_ * (float) -i_124_);
							bytebuffer.putFloat(f_122_ + f_92_ * (float) -i_124_);
							bytebuffer.putFloat(f_123_ + f_93_ * (float) -i_124_);
							bytebuffer.put(i_117_);
							bytebuffer.put(i_118_);
							bytebuffer.put(i_119_);
							bytebuffer.put(i_120_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(f_121_ + f_97_ * (float) i_124_);
							bytebuffer.putFloat(f_122_ + f_98_ * (float) i_124_);
							bytebuffer.putFloat(f_123_ + f_99_ * (float) i_124_);
							bytebuffer.put(i_117_);
							bytebuffer.put(i_118_);
							bytebuffer.put(i_119_);
							bytebuffer.put(i_120_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_121_ + f_91_ * (float) i_124_);
							bytebuffer.putFloat(f_122_ + f_92_ * (float) i_124_);
							bytebuffer.putFloat(f_123_ + f_93_ * (float) i_124_);
							bytebuffer.put(i_117_);
							bytebuffer.put(i_118_);
							bytebuffer.put(i_119_);
							bytebuffer.put(i_120_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_121_ + f_94_ * (float) i_124_);
							bytebuffer.putFloat(f_122_ + f_95_ * (float) i_124_);
							bytebuffer.putFloat(f_123_ + f_96_ * (float) i_124_);
							bytebuffer.put(i_117_);
							bytebuffer.put(i_118_);
							bytebuffer.put(i_119_);
							bytebuffer.put(i_120_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(0.0F);
						}
						i_85_++;
					}
				}
			}
		}
		((Class386) this).anInterface41_5671.method302(0, bytebuffer.position(), class84_sub1.aLong8893);
		class84_sub1.method14866(0, ((Class386) this).anInterface41_5671);
		class84_sub1.method14866(1, ((Class386) this).anInterface41_5680);
		class84_sub1.method14865(((Class386) this).aClass363_5672);
		Class356 class356 = ((Class84_Sub1) class84_sub1).aClass356_8980;
		class356.method6840(i_85_);
	}

	void method7095(Class84_Sub1 class84_sub1, Class160 class160) {
		class84_sub1.method1957(false);
		aFloat5685 = class84_sub1.aFloat8951;
		float f = class84_sub1.aClass288_8950.aFloatArray4285[2];
		float f_126_ = class84_sub1.aClass288_8950.aFloatArray4285[6];
		float f_127_ = class84_sub1.aClass288_8950.aFloatArray4285[10];
		float f_128_ = class84_sub1.aClass288_8950.aFloatArray4285[14];
		int i = 0;
		int i_129_ = 2147483647;
		int i_130_ = 0;
		Class243_Sub6 class243_sub6 = class160.aClass442_1885.aClass243_Sub6_6322;
		for (Class243_Sub6 class243_sub6_131_ = class243_sub6.aClass243_Sub6_9996; class243_sub6_131_ != class243_sub6; class243_sub6_131_ = class243_sub6_131_.aClass243_Sub6_9996) {
			Class243_Sub6_Sub1 class243_sub6_sub1 = (Class243_Sub6_Sub1) class243_sub6_131_;
			int i_132_ = (int) (f * (float) (class243_sub6_sub1.anInt10787 >> 12) + f_126_ * (float) (class243_sub6_sub1.anInt10788 >> 12) + f_127_ * (float) (class243_sub6_sub1.anInt10789 >> 12) + f_128_);
			if (i_132_ > i_130_)
				i_130_ = i_132_;
			if (i_132_ < i_129_)
				i_129_ = i_132_;
			((Class386) this).anIntArray5679[i++] = i_132_;
		}
		int i_133_ = i_130_ - i_129_;
		int i_134_;
		if (i_133_ + 2 > 1600) {
			i_134_ = (1 + Class508.method11502(i_133_, (byte) 0) - ((Class386) this).anInt5681);
			i_133_ = (i_133_ >> i_134_) + 2;
		} else {
			i_134_ = 0;
			i_133_ += 2;
		}
		class84_sub1.method14867(((Class386) this).anInterface43_5673);
		Class356 class356 = ((Class84_Sub1) class84_sub1).aClass356_8980;
		class356.method6843(Class288.aClass288_4284);
		class356.aClass288_5493.method5744();
		class356.anInt5494 = -1;
		method7088(class84_sub1, class243_sub6, i_133_, i_129_, i_134_, class356);
		if (class84_sub1.aFloat8951 != aFloat5685)
			class84_sub1.method1960(aFloat5685);
		class84_sub1.method1957(true);
	}

	void method7096(Class84_Sub1 class84_sub1, Class243_Sub6 class243_sub6, int i, int i_135_, int i_136_, Class356 class356) {
		Class243_Sub6 class243_sub6_137_ = class243_sub6.aClass243_Sub6_9996;
		int i_138_ = 0;
		int i_139_ = -2;
		boolean bool = true;
		boolean bool_140_ = true;
		while (class243_sub6_137_ != class243_sub6) {
			((Class386) this).anInt5684 = 0;
			for (int i_141_ = 0; i_141_ < i; i_141_++)
				((Class386) this).anIntArray5670[i_141_] = 0;
			for (int i_142_ = 0; i_142_ < 64; i_142_++)
				((Class386) this).anIntArray5674[i_142_] = 0;
			for (/**/; class243_sub6_137_ != class243_sub6; class243_sub6_137_ = class243_sub6_137_.aClass243_Sub6_9996) {
				Class243_Sub6_Sub1 class243_sub6_sub1 = (Class243_Sub6_Sub1) class243_sub6_137_;
				if (bool_140_) {
					i_139_ = class243_sub6_sub1.anInt10784;
					bool = class243_sub6_sub1.aBool10793;
					bool_140_ = false;
				}
				if (i_138_ > 0 && (i_139_ != class243_sub6_sub1.anInt10784 || bool != class243_sub6_sub1.aBool10793)) {
					bool_140_ = true;
					break;
				}
				method7099((((Class386) this).anIntArray5679[i_138_++] - i_135_ >> i_136_), class243_sub6_sub1);
			}
			class356.anInterface39_5491 = null;
			if (i_139_ >= 0) {
				Class104 class104 = class84_sub1.aClass101_1178.method2491(i_139_, 1955492901);
				if (class104.anInt1488 * -1560548051 != -1)
					class356.anInterface39_5491 = ((Class84_Sub1) class84_sub1).aClass381_8968.method7019(class104);
			}
			if (bool && class84_sub1.aFloat8951 != aFloat5685)
				class84_sub1.method1960(aFloat5685);
			else if (class84_sub1.aFloat8951 != 1.0F)
				class84_sub1.method1960(1.0F);
			method7089(class84_sub1, i);
		}
	}

	void method7097(Class84_Sub1 class84_sub1, int i) {
		int i_143_ = 0;
		Class288 class288 = class84_sub1.aClass288_8950;
		float f = class288.aFloatArray4285[0];
		float f_144_ = class288.aFloatArray4285[4];
		float f_145_ = class288.aFloatArray4285[8];
		float f_146_ = class288.aFloatArray4285[1];
		float f_147_ = class288.aFloatArray4285[5];
		float f_148_ = class288.aFloatArray4285[9];
		float f_149_ = f + f_146_;
		float f_150_ = f_144_ + f_147_;
		float f_151_ = f_145_ + f_148_;
		float f_152_ = f - f_146_;
		float f_153_ = f_144_ - f_147_;
		float f_154_ = f_145_ - f_148_;
		float f_155_ = f_146_ - f;
		float f_156_ = f_147_ - f_144_;
		float f_157_ = f_148_ - f_145_;
		float[] fs = new float[3];
		float[] fs_158_ = new float[3];
		class84_sub1.aClass288_8901.method5746(((Class84_Sub1) class84_sub1).aClass288_8877);
		ByteBuffer bytebuffer = class84_sub1.aByteBuffer8876;
		bytebuffer.clear();
		for (int i_159_ = i - 1; i_159_ >= 0; i_159_--) {
			int i_160_ = (((Class386) this).anIntArray5670[i_159_] > 64 ? 64 : ((Class386) this).anIntArray5670[i_159_]);
			if (i_160_ > 0) {
				for (int i_161_ = i_160_ - 1; i_161_ >= 0; i_161_--) {
					Class243_Sub6_Sub1 class243_sub6_sub1 = (((Class386) this).aClass243_Sub6_Sub1ArrayArray5677[i_159_][i_161_]);
					int i_162_ = class243_sub6_sub1.anInt10791;
					byte i_163_ = (byte) (i_162_ >> 16);
					byte i_164_ = (byte) (i_162_ >> 8);
					byte i_165_ = (byte) i_162_;
					byte i_166_ = (byte) (i_162_ >>> 24);
					if (((Class84_Sub1) class84_sub1).anInt9030 == 0) {
						byte i_167_ = i_163_;
						i_163_ = i_165_;
						i_165_ = i_167_;
					}
					float f_168_ = (float) (class243_sub6_sub1.anInt10787 >> 12);
					float f_169_ = (float) (class243_sub6_sub1.anInt10788 >> 12);
					float f_170_ = (float) (class243_sub6_sub1.anInt10789 >> 12);
					int i_171_ = class243_sub6_sub1.anInt10786 >> 12;
					if (class243_sub6_sub1.aShort10792 != 0) {
						((Class84_Sub1) class84_sub1).aClass288_8878.method5778(class243_sub6_sub1.aShort10792, i_171_, i_171_, 0.0F, 0.0F, 0.0F);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5835(class84_sub1.aClass288_8901);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5754(1.0F, 0.0F, 0.0F, fs);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5754(0.0F, 1.0F, 0.0F, fs_158_);
						bytebuffer.putFloat(f_168_ - fs[0] - fs_158_[0]);
						bytebuffer.putFloat(f_169_ - fs[1] - fs_158_[1]);
						bytebuffer.putFloat(f_170_ - fs[2] - fs_158_[2]);
						bytebuffer.put(i_163_);
						bytebuffer.put(i_164_);
						bytebuffer.put(i_165_);
						bytebuffer.put(i_166_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(f_168_ - fs[0] + fs_158_[0]);
						bytebuffer.putFloat(f_169_ - fs[1] + fs_158_[1]);
						bytebuffer.putFloat(f_170_ - fs[2] + fs_158_[2]);
						bytebuffer.put(i_163_);
						bytebuffer.put(i_164_);
						bytebuffer.put(i_165_);
						bytebuffer.put(i_166_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_168_ + fs[0] + fs_158_[0]);
						bytebuffer.putFloat(f_169_ + fs[1] + fs_158_[1]);
						bytebuffer.putFloat(f_170_ + fs[2] + fs_158_[2]);
						bytebuffer.put(i_163_);
						bytebuffer.put(i_164_);
						bytebuffer.put(i_165_);
						bytebuffer.put(i_166_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_168_ + fs[0] - fs_158_[0]);
						bytebuffer.putFloat(f_169_ + fs[1] - fs_158_[1]);
						bytebuffer.putFloat(f_170_ + fs[2] - fs_158_[2]);
						bytebuffer.put(i_163_);
						bytebuffer.put(i_164_);
						bytebuffer.put(i_165_);
						bytebuffer.put(i_166_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(0.0F);
					} else {
						bytebuffer.putFloat(f_168_ + f_149_ * (float) -i_171_);
						bytebuffer.putFloat(f_169_ + f_150_ * (float) -i_171_);
						bytebuffer.putFloat(f_170_ + f_151_ * (float) -i_171_);
						bytebuffer.put(i_163_);
						bytebuffer.put(i_164_);
						bytebuffer.put(i_165_);
						bytebuffer.put(i_166_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(f_168_ + f_155_ * (float) i_171_);
						bytebuffer.putFloat(f_169_ + f_156_ * (float) i_171_);
						bytebuffer.putFloat(f_170_ + f_157_ * (float) i_171_);
						bytebuffer.put(i_163_);
						bytebuffer.put(i_164_);
						bytebuffer.put(i_165_);
						bytebuffer.put(i_166_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_168_ + f_149_ * (float) i_171_);
						bytebuffer.putFloat(f_169_ + f_150_ * (float) i_171_);
						bytebuffer.putFloat(f_170_ + f_151_ * (float) i_171_);
						bytebuffer.put(i_163_);
						bytebuffer.put(i_164_);
						bytebuffer.put(i_165_);
						bytebuffer.put(i_166_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_168_ + f_152_ * (float) i_171_);
						bytebuffer.putFloat(f_169_ + f_153_ * (float) i_171_);
						bytebuffer.putFloat(f_170_ + f_154_ * (float) i_171_);
						bytebuffer.put(i_163_);
						bytebuffer.put(i_164_);
						bytebuffer.put(i_165_);
						bytebuffer.put(i_166_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(0.0F);
					}
					i_143_++;
				}
				if (((Class386) this).anIntArray5670[i_159_] > 64) {
					int i_172_ = ((Class386) this).anIntArray5670[i_159_] - 64 - 1;
					for (int i_173_ = ((Class386) this).anIntArray5674[i_172_] - 1; i_173_ >= 0; i_173_--) {
						Class243_Sub6_Sub1 class243_sub6_sub1 = (((Class386) this).aClass243_Sub6_Sub1ArrayArray5683[i_172_][i_173_]);
						int i_174_ = class243_sub6_sub1.anInt10791;
						byte i_175_ = (byte) (i_174_ >> 16);
						byte i_176_ = (byte) (i_174_ >> 8);
						byte i_177_ = (byte) i_174_;
						byte i_178_ = (byte) (i_174_ >>> 24);
						float f_179_ = (float) (class243_sub6_sub1.anInt10787 >> 12);
						float f_180_ = (float) (class243_sub6_sub1.anInt10788 >> 12);
						float f_181_ = (float) (class243_sub6_sub1.anInt10789 >> 12);
						int i_182_ = class243_sub6_sub1.anInt10786 >> 12;
						if (((Class84_Sub1) class84_sub1).anInt9030 == 0) {
							byte i_183_ = i_175_;
							i_175_ = i_177_;
							i_177_ = i_183_;
						}
						if (class243_sub6_sub1.aShort10792 != 0) {
							((Class84_Sub1) class84_sub1).aClass288_8878.method5778(class243_sub6_sub1.aShort10792, i_182_, i_182_, 0.0F, 0.0F, 0.0F);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5835(class84_sub1.aClass288_8901);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5754(1.0F, 0.0F, 0.0F, fs);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5754(0.0F, 1.0F, 0.0F, fs_158_);
							bytebuffer.putFloat(f_179_ - fs[0] - fs_158_[0]);
							bytebuffer.putFloat(f_180_ - fs[1] - fs_158_[1]);
							bytebuffer.putFloat(f_181_ - fs[2] - fs_158_[2]);
							bytebuffer.put(i_175_);
							bytebuffer.put(i_176_);
							bytebuffer.put(i_177_);
							bytebuffer.put(i_178_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(f_179_ - fs[0] + fs_158_[0]);
							bytebuffer.putFloat(f_180_ - fs[1] + fs_158_[1]);
							bytebuffer.putFloat(f_181_ - fs[2] + fs_158_[2]);
							bytebuffer.put(i_175_);
							bytebuffer.put(i_176_);
							bytebuffer.put(i_177_);
							bytebuffer.put(i_178_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_179_ + fs[0] + fs_158_[0]);
							bytebuffer.putFloat(f_180_ + fs[1] + fs_158_[1]);
							bytebuffer.putFloat(f_181_ + fs[2] + fs_158_[2]);
							bytebuffer.put(i_175_);
							bytebuffer.put(i_176_);
							bytebuffer.put(i_177_);
							bytebuffer.put(i_178_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_179_ + fs[0] - fs_158_[0]);
							bytebuffer.putFloat(f_180_ + fs[1] - fs_158_[1]);
							bytebuffer.putFloat(f_181_ + fs[2] - fs_158_[2]);
							bytebuffer.put(i_175_);
							bytebuffer.put(i_176_);
							bytebuffer.put(i_177_);
							bytebuffer.put(i_178_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(0.0F);
						} else {
							bytebuffer.putFloat(f_179_ + f_149_ * (float) -i_182_);
							bytebuffer.putFloat(f_180_ + f_150_ * (float) -i_182_);
							bytebuffer.putFloat(f_181_ + f_151_ * (float) -i_182_);
							bytebuffer.put(i_175_);
							bytebuffer.put(i_176_);
							bytebuffer.put(i_177_);
							bytebuffer.put(i_178_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(f_179_ + f_155_ * (float) i_182_);
							bytebuffer.putFloat(f_180_ + f_156_ * (float) i_182_);
							bytebuffer.putFloat(f_181_ + f_157_ * (float) i_182_);
							bytebuffer.put(i_175_);
							bytebuffer.put(i_176_);
							bytebuffer.put(i_177_);
							bytebuffer.put(i_178_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_179_ + f_149_ * (float) i_182_);
							bytebuffer.putFloat(f_180_ + f_150_ * (float) i_182_);
							bytebuffer.putFloat(f_181_ + f_151_ * (float) i_182_);
							bytebuffer.put(i_175_);
							bytebuffer.put(i_176_);
							bytebuffer.put(i_177_);
							bytebuffer.put(i_178_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_179_ + f_152_ * (float) i_182_);
							bytebuffer.putFloat(f_180_ + f_153_ * (float) i_182_);
							bytebuffer.putFloat(f_181_ + f_154_ * (float) i_182_);
							bytebuffer.put(i_175_);
							bytebuffer.put(i_176_);
							bytebuffer.put(i_177_);
							bytebuffer.put(i_178_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(0.0F);
						}
						i_143_++;
					}
				}
			}
		}
		((Class386) this).anInterface41_5671.method302(0, bytebuffer.position(), class84_sub1.aLong8893);
		class84_sub1.method14866(0, ((Class386) this).anInterface41_5671);
		class84_sub1.method14866(1, ((Class386) this).anInterface41_5680);
		class84_sub1.method14865(((Class386) this).aClass363_5672);
		Class356 class356 = ((Class84_Sub1) class84_sub1).aClass356_8980;
		class356.method6840(i_143_);
	}

	void method7098(Class84_Sub1 class84_sub1, Class243_Sub6 class243_sub6, int i, int i_184_, int i_185_, Class356 class356) {
		Class243_Sub6 class243_sub6_186_ = class243_sub6.aClass243_Sub6_9996;
		int i_187_ = 0;
		int i_188_ = -2;
		boolean bool = true;
		boolean bool_189_ = true;
		while (class243_sub6_186_ != class243_sub6) {
			((Class386) this).anInt5684 = 0;
			for (int i_190_ = 0; i_190_ < i; i_190_++)
				((Class386) this).anIntArray5670[i_190_] = 0;
			for (int i_191_ = 0; i_191_ < 64; i_191_++)
				((Class386) this).anIntArray5674[i_191_] = 0;
			for (/**/; class243_sub6_186_ != class243_sub6; class243_sub6_186_ = class243_sub6_186_.aClass243_Sub6_9996) {
				Class243_Sub6_Sub1 class243_sub6_sub1 = (Class243_Sub6_Sub1) class243_sub6_186_;
				if (bool_189_) {
					i_188_ = class243_sub6_sub1.anInt10784;
					bool = class243_sub6_sub1.aBool10793;
					bool_189_ = false;
				}
				if (i_187_ > 0 && (i_188_ != class243_sub6_sub1.anInt10784 || bool != class243_sub6_sub1.aBool10793)) {
					bool_189_ = true;
					break;
				}
				method7099((((Class386) this).anIntArray5679[i_187_++] - i_184_ >> i_185_), class243_sub6_sub1);
			}
			class356.anInterface39_5491 = null;
			if (i_188_ >= 0) {
				Class104 class104 = class84_sub1.aClass101_1178.method2491(i_188_, 1413657833);
				if (class104.anInt1488 * -1560548051 != -1)
					class356.anInterface39_5491 = ((Class84_Sub1) class84_sub1).aClass381_8968.method7019(class104);
			}
			if (bool && class84_sub1.aFloat8951 != aFloat5685)
				class84_sub1.method1960(aFloat5685);
			else if (class84_sub1.aFloat8951 != 1.0F)
				class84_sub1.method1960(1.0F);
			method7089(class84_sub1, i);
		}
	}

	void method7099(int i, Class243_Sub6_Sub1 class243_sub6_sub1) {
		if (i < 1600) {
			if (((Class386) this).anIntArray5670[i] < 64)
				((Class386) this).aClass243_Sub6_Sub1ArrayArray5677[i][((Class386) this).anIntArray5670[i]++] = class243_sub6_sub1;
			else {
				if (((Class386) this).anIntArray5670[i] == 64) {
					if (((Class386) this).anInt5684 == 64)
						return;
					((Class386) this).anIntArray5670[i] += 1 + ((Class386) this).anInt5684++;
				}
				((Class386) this).aClass243_Sub6_Sub1ArrayArray5683[((Class386) this).anIntArray5670[i] - 64 - 1][((Class386) this).anIntArray5674[((Class386) this).anIntArray5670[i] - 64 - 1]++] = class243_sub6_sub1;
			}
		}
	}

	void method7100() {
		((Class386) this).anInterface41_5671.method54();
	}

	void method7101(Class84_Sub1 class84_sub1, int i) {
		int i_192_ = 0;
		Class288 class288 = class84_sub1.aClass288_8950;
		float f = class288.aFloatArray4285[0];
		float f_193_ = class288.aFloatArray4285[4];
		float f_194_ = class288.aFloatArray4285[8];
		float f_195_ = class288.aFloatArray4285[1];
		float f_196_ = class288.aFloatArray4285[5];
		float f_197_ = class288.aFloatArray4285[9];
		float f_198_ = f + f_195_;
		float f_199_ = f_193_ + f_196_;
		float f_200_ = f_194_ + f_197_;
		float f_201_ = f - f_195_;
		float f_202_ = f_193_ - f_196_;
		float f_203_ = f_194_ - f_197_;
		float f_204_ = f_195_ - f;
		float f_205_ = f_196_ - f_193_;
		float f_206_ = f_197_ - f_194_;
		float[] fs = new float[3];
		float[] fs_207_ = new float[3];
		class84_sub1.aClass288_8901.method5746(((Class84_Sub1) class84_sub1).aClass288_8877);
		ByteBuffer bytebuffer = class84_sub1.aByteBuffer8876;
		bytebuffer.clear();
		for (int i_208_ = i - 1; i_208_ >= 0; i_208_--) {
			int i_209_ = (((Class386) this).anIntArray5670[i_208_] > 64 ? 64 : ((Class386) this).anIntArray5670[i_208_]);
			if (i_209_ > 0) {
				for (int i_210_ = i_209_ - 1; i_210_ >= 0; i_210_--) {
					Class243_Sub6_Sub1 class243_sub6_sub1 = (((Class386) this).aClass243_Sub6_Sub1ArrayArray5677[i_208_][i_210_]);
					int i_211_ = class243_sub6_sub1.anInt10791;
					byte i_212_ = (byte) (i_211_ >> 16);
					byte i_213_ = (byte) (i_211_ >> 8);
					byte i_214_ = (byte) i_211_;
					byte i_215_ = (byte) (i_211_ >>> 24);
					if (((Class84_Sub1) class84_sub1).anInt9030 == 0) {
						byte i_216_ = i_212_;
						i_212_ = i_214_;
						i_214_ = i_216_;
					}
					float f_217_ = (float) (class243_sub6_sub1.anInt10787 >> 12);
					float f_218_ = (float) (class243_sub6_sub1.anInt10788 >> 12);
					float f_219_ = (float) (class243_sub6_sub1.anInt10789 >> 12);
					int i_220_ = class243_sub6_sub1.anInt10786 >> 12;
					if (class243_sub6_sub1.aShort10792 != 0) {
						((Class84_Sub1) class84_sub1).aClass288_8878.method5778(class243_sub6_sub1.aShort10792, i_220_, i_220_, 0.0F, 0.0F, 0.0F);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5835(class84_sub1.aClass288_8901);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5754(1.0F, 0.0F, 0.0F, fs);
						((Class84_Sub1) class84_sub1).aClass288_8878.method5754(0.0F, 1.0F, 0.0F, fs_207_);
						bytebuffer.putFloat(f_217_ - fs[0] - fs_207_[0]);
						bytebuffer.putFloat(f_218_ - fs[1] - fs_207_[1]);
						bytebuffer.putFloat(f_219_ - fs[2] - fs_207_[2]);
						bytebuffer.put(i_212_);
						bytebuffer.put(i_213_);
						bytebuffer.put(i_214_);
						bytebuffer.put(i_215_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(f_217_ - fs[0] + fs_207_[0]);
						bytebuffer.putFloat(f_218_ - fs[1] + fs_207_[1]);
						bytebuffer.putFloat(f_219_ - fs[2] + fs_207_[2]);
						bytebuffer.put(i_212_);
						bytebuffer.put(i_213_);
						bytebuffer.put(i_214_);
						bytebuffer.put(i_215_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_217_ + fs[0] + fs_207_[0]);
						bytebuffer.putFloat(f_218_ + fs[1] + fs_207_[1]);
						bytebuffer.putFloat(f_219_ + fs[2] + fs_207_[2]);
						bytebuffer.put(i_212_);
						bytebuffer.put(i_213_);
						bytebuffer.put(i_214_);
						bytebuffer.put(i_215_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_217_ + fs[0] - fs_207_[0]);
						bytebuffer.putFloat(f_218_ + fs[1] - fs_207_[1]);
						bytebuffer.putFloat(f_219_ + fs[2] - fs_207_[2]);
						bytebuffer.put(i_212_);
						bytebuffer.put(i_213_);
						bytebuffer.put(i_214_);
						bytebuffer.put(i_215_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(0.0F);
					} else {
						bytebuffer.putFloat(f_217_ + f_198_ * (float) -i_220_);
						bytebuffer.putFloat(f_218_ + f_199_ * (float) -i_220_);
						bytebuffer.putFloat(f_219_ + f_200_ * (float) -i_220_);
						bytebuffer.put(i_212_);
						bytebuffer.put(i_213_);
						bytebuffer.put(i_214_);
						bytebuffer.put(i_215_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(f_217_ + f_204_ * (float) i_220_);
						bytebuffer.putFloat(f_218_ + f_205_ * (float) i_220_);
						bytebuffer.putFloat(f_219_ + f_206_ * (float) i_220_);
						bytebuffer.put(i_212_);
						bytebuffer.put(i_213_);
						bytebuffer.put(i_214_);
						bytebuffer.put(i_215_);
						bytebuffer.putFloat(0.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_217_ + f_198_ * (float) i_220_);
						bytebuffer.putFloat(f_218_ + f_199_ * (float) i_220_);
						bytebuffer.putFloat(f_219_ + f_200_ * (float) i_220_);
						bytebuffer.put(i_212_);
						bytebuffer.put(i_213_);
						bytebuffer.put(i_214_);
						bytebuffer.put(i_215_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(f_217_ + f_201_ * (float) i_220_);
						bytebuffer.putFloat(f_218_ + f_202_ * (float) i_220_);
						bytebuffer.putFloat(f_219_ + f_203_ * (float) i_220_);
						bytebuffer.put(i_212_);
						bytebuffer.put(i_213_);
						bytebuffer.put(i_214_);
						bytebuffer.put(i_215_);
						bytebuffer.putFloat(1.0F);
						bytebuffer.putFloat(0.0F);
					}
					i_192_++;
				}
				if (((Class386) this).anIntArray5670[i_208_] > 64) {
					int i_221_ = ((Class386) this).anIntArray5670[i_208_] - 64 - 1;
					for (int i_222_ = ((Class386) this).anIntArray5674[i_221_] - 1; i_222_ >= 0; i_222_--) {
						Class243_Sub6_Sub1 class243_sub6_sub1 = (((Class386) this).aClass243_Sub6_Sub1ArrayArray5683[i_221_][i_222_]);
						int i_223_ = class243_sub6_sub1.anInt10791;
						byte i_224_ = (byte) (i_223_ >> 16);
						byte i_225_ = (byte) (i_223_ >> 8);
						byte i_226_ = (byte) i_223_;
						byte i_227_ = (byte) (i_223_ >>> 24);
						float f_228_ = (float) (class243_sub6_sub1.anInt10787 >> 12);
						float f_229_ = (float) (class243_sub6_sub1.anInt10788 >> 12);
						float f_230_ = (float) (class243_sub6_sub1.anInt10789 >> 12);
						int i_231_ = class243_sub6_sub1.anInt10786 >> 12;
						if (((Class84_Sub1) class84_sub1).anInt9030 == 0) {
							byte i_232_ = i_224_;
							i_224_ = i_226_;
							i_226_ = i_232_;
						}
						if (class243_sub6_sub1.aShort10792 != 0) {
							((Class84_Sub1) class84_sub1).aClass288_8878.method5778(class243_sub6_sub1.aShort10792, i_231_, i_231_, 0.0F, 0.0F, 0.0F);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5835(class84_sub1.aClass288_8901);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5754(1.0F, 0.0F, 0.0F, fs);
							((Class84_Sub1) class84_sub1).aClass288_8878.method5754(0.0F, 1.0F, 0.0F, fs_207_);
							bytebuffer.putFloat(f_228_ - fs[0] - fs_207_[0]);
							bytebuffer.putFloat(f_229_ - fs[1] - fs_207_[1]);
							bytebuffer.putFloat(f_230_ - fs[2] - fs_207_[2]);
							bytebuffer.put(i_224_);
							bytebuffer.put(i_225_);
							bytebuffer.put(i_226_);
							bytebuffer.put(i_227_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(f_228_ - fs[0] + fs_207_[0]);
							bytebuffer.putFloat(f_229_ - fs[1] + fs_207_[1]);
							bytebuffer.putFloat(f_230_ - fs[2] + fs_207_[2]);
							bytebuffer.put(i_224_);
							bytebuffer.put(i_225_);
							bytebuffer.put(i_226_);
							bytebuffer.put(i_227_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_228_ + fs[0] + fs_207_[0]);
							bytebuffer.putFloat(f_229_ + fs[1] + fs_207_[1]);
							bytebuffer.putFloat(f_230_ + fs[2] + fs_207_[2]);
							bytebuffer.put(i_224_);
							bytebuffer.put(i_225_);
							bytebuffer.put(i_226_);
							bytebuffer.put(i_227_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_228_ + fs[0] - fs_207_[0]);
							bytebuffer.putFloat(f_229_ + fs[1] - fs_207_[1]);
							bytebuffer.putFloat(f_230_ + fs[2] - fs_207_[2]);
							bytebuffer.put(i_224_);
							bytebuffer.put(i_225_);
							bytebuffer.put(i_226_);
							bytebuffer.put(i_227_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(0.0F);
						} else {
							bytebuffer.putFloat(f_228_ + f_198_ * (float) -i_231_);
							bytebuffer.putFloat(f_229_ + f_199_ * (float) -i_231_);
							bytebuffer.putFloat(f_230_ + f_200_ * (float) -i_231_);
							bytebuffer.put(i_224_);
							bytebuffer.put(i_225_);
							bytebuffer.put(i_226_);
							bytebuffer.put(i_227_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(f_228_ + f_204_ * (float) i_231_);
							bytebuffer.putFloat(f_229_ + f_205_ * (float) i_231_);
							bytebuffer.putFloat(f_230_ + f_206_ * (float) i_231_);
							bytebuffer.put(i_224_);
							bytebuffer.put(i_225_);
							bytebuffer.put(i_226_);
							bytebuffer.put(i_227_);
							bytebuffer.putFloat(0.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_228_ + f_198_ * (float) i_231_);
							bytebuffer.putFloat(f_229_ + f_199_ * (float) i_231_);
							bytebuffer.putFloat(f_230_ + f_200_ * (float) i_231_);
							bytebuffer.put(i_224_);
							bytebuffer.put(i_225_);
							bytebuffer.put(i_226_);
							bytebuffer.put(i_227_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(f_228_ + f_201_ * (float) i_231_);
							bytebuffer.putFloat(f_229_ + f_202_ * (float) i_231_);
							bytebuffer.putFloat(f_230_ + f_203_ * (float) i_231_);
							bytebuffer.put(i_224_);
							bytebuffer.put(i_225_);
							bytebuffer.put(i_226_);
							bytebuffer.put(i_227_);
							bytebuffer.putFloat(1.0F);
							bytebuffer.putFloat(0.0F);
						}
						i_192_++;
					}
				}
			}
		}
		((Class386) this).anInterface41_5671.method302(0, bytebuffer.position(), class84_sub1.aLong8893);
		class84_sub1.method14866(0, ((Class386) this).anInterface41_5671);
		class84_sub1.method14866(1, ((Class386) this).anInterface41_5680);
		class84_sub1.method14865(((Class386) this).aClass363_5672);
		Class356 class356 = ((Class84_Sub1) class84_sub1).aClass356_8980;
		class356.method6840(i_192_);
	}
}
