static final void method2028(int i, ObjectDefinition class51, int i_0_, AbstractToolkit var_ha,
				 int i_1_, int i_2_) {
	try {
	    anInt3395++;
	    Class218 class218
		= Class2.aClass141_117
		      .method1173((byte) 31, ((ObjectDefinition) class51).anInt875);
	    if ((((Class218) class218).anInt2853 ^ 0xffffffff) != 0) {
		if (((ObjectDefinition) class51).aBoolean912) {
		    i_1_ += ((ObjectDefinition) class51).anInt923;
		    i_1_ &= 0x3;
		} else
		    i_1_ = 0;
		RasterToolkit class105
		    = class218.method1596(i_1_,
					  ((ObjectDefinition) class51).aBoolean925, 82,
					  var_ha);
		if (class105 != null) {
		    int i_3_ = ((ObjectDefinition) class51).anInt961;
		    int i_4_ = ((ObjectDefinition) class51).anInt926;
		    int i_5_ = 60 % ((52 - i_2_) / 56);
		    if ((0x1 & i_1_) == 1) {
			i_3_ = ((ObjectDefinition) class51).anInt926;
			i_4_ = ((ObjectDefinition) class51).anInt961;
		    }
		    int i_6_ = class105.method966();
		    int i_7_ = class105.method980();
		    if (((Class218) class218).aBoolean2854) {
			i_7_ = i_4_ * 4;
			i_6_ = i_3_ * 4;
		    }
		    if (((Class218) class218).anInt2856 == 0)
			class105.method973(i, -((i_4_ + -1) * 4) + i_0_, i_6_,
					   i_7_);
		    else
			class105.method970(i, i_0_ - 4 * (-1 + i_4_), i_6_,
					   i_7_, 0,
					   (((Class218) class218).anInt2856
					    | ~0xffffff),
					   1);
		}
	    }
	} catch (RuntimeException runtimeexception) {
	    throw Class348_Sub17.method2929(runtimeexception,
					    ("up.C(" + i + ','
					     + (class51 != null ? "{...}"
						: "null")
					     + ',' + i_0_ + ','
					     + (var_ha != null ? "{...}"
						: "null")
					     + ',' + i_1_ + ',' + i_2_ + ')'));
	}
    }