static final void method2178(Class318_Sub1 class318_sub1, int i,
				 AnimationDefinition class17, int i_0_) {
	try {
	    anInt3694++;
	    if (Message.anInt2021 < 50
		&& (class17 != null
		    && ((AnimationDefinition) class17).anIntArrayArray264 != null
		    && ((i ^ 0xffffffff)
			> (((AnimationDefinition) class17).anIntArrayArray264.length
			   ^ 0xffffffff))
		    && ((AnimationDefinition) class17).anIntArrayArray264[i] != null)) {
		int i_1_ = ((AnimationDefinition) class17).anIntArrayArray264[i][0];
		int i_2_ = i_1_ >> 572505608;
		int i_3_ = (i_1_ & 0xf1) >> 1350926597;
		if (i_0_ > -13)
		    anInt3695 = 0;
		if ((((AnimationDefinition) class17).anIntArrayArray264[i].length
		     ^ 0xffffffff)
		    < -2) {
		    int i_4_ = (int) ((double) (((AnimationDefinition) class17)
						.anIntArrayArray264[i]).length
				      * Math.random());
		    if (i_4_ > 0)
			i_2_ = ((AnimationDefinition) class17).anIntArrayArray264[i][i_4_];
		}
		int i_5_ = i_1_ & 0x1f;
		int i_6_ = 256;
		if (((AnimationDefinition) class17).anIntArray236 != null
		    && ((AnimationDefinition) class17).anIntArray265 != null)
		    i_6_ = ((int) (Math.random()
				   * (double) (-(((AnimationDefinition) class17)
						 .anIntArray236[i])
					       + (((AnimationDefinition) class17)
						  .anIntArray265[i])))
			    + ((AnimationDefinition) class17).anIntArray236[i]);
		int i_7_ = (((AnimationDefinition) class17).anIntArray253 == null ? 255
			    : ((AnimationDefinition) class17).anIntArray253[i]);
		if (i_5_ == 0) {
		    if (Class132.localPlayer
			== class318_sub1) {
			if (!((AnimationDefinition) class17).aBoolean268)
			    Class348_Sub20.method2947(true, i_7_, i_2_, i_3_,
						      0, i_6_);
			else
			    Class279.method2090(i_3_, i_6_, false, (byte) -35,
						i_7_, 0, i_2_);
		    }
		} else if ((((Class348_Sub51) BitmapTable.aClass348_Sub51_3959)
				.aClass239_Sub26_7234.method1838(-32350)
			    ^ 0xffffffff)
			   != -1) {
		    int i_8_
			= (((Class318_Sub1) class318_sub1).xHash + -256
			   >> -301859767);
		    int i_9_ = (((Class318_Sub1) class318_sub1).anInt6388 - 256
				>> -2115417367);
		    int i_10_
			= ((Class132.localPlayer
			    != class318_sub1)
			   ? ((((Class318_Sub1) class318_sub1).heightLevel
			       << 111160376)
			      + ((i_8_ << 1221818896) + (i_9_ << -395896696))
			      + i_5_)
			   : 0);
		    Class258_Sub2.aClass10Array8531[Message.anInt2021++]
			= new Class10((((AnimationDefinition) class17).aBoolean268
				       ? (byte) 2 : (byte) 1),
				      i_2_, i_3_, 0, i_7_, i_10_, i_6_,
				      class318_sub1);
		}
	    }
	} catch (RuntimeException runtimeexception) {
	    throw Class348_Sub17.method2929(runtimeexception,
					    ("vp.A("
					     + (class318_sub1 != null ? "{...}"
						: "null")
					     + ',' + i + ','
					     + (class17 != null ? "{...}"
						: "null")
					     + ',' + i_0_ + ')'));
	}
    }