private final int method642(int i, short i_305_, int i_306_) {
	int i_307_ = Class10.anIntArray179[method637(i, i_306_)];
	TextureDefinition class12
	    = ((AbstractToolkit) aHa_Sub1_5353).aD4579.getTexture(i_305_ & 0xffff, -6662);
	int i_308_ = ((TextureDefinition) class12).aByte201 & 0xff;
	if (i_308_ != 0) {
	    int i_309_ = 131586 * i_306_;
	    if (i_308_ == 256)
		i_307_ = i_309_;
	    else {
		int i_310_ = i_308_;
		int i_311_ = 256 - i_308_;
		i_307_ = ((((i_309_ & 0xff00ff) * i_310_
			    + (i_307_ & 0xff00ff) * i_311_)
			   & ~0xff00ff)
			  + (((i_309_ & 0xff00) * i_310_
			      + (i_307_ & 0xff00) * i_311_)
			     & 0xff0000)) >> 8;
	    }
	}
	int i_312_ = ((TextureDefinition) class12).aByte216 & 0xff;
	if (i_312_ != 0) {
	    i_312_ += 256;
	    int i_313_ = ((i_307_ & 0xff0000) >> 16) * i_312_;
	    if (i_313_ > 65535)
		i_313_ = 65535;
	    int i_314_ = ((i_307_ & 0xff00) >> 8) * i_312_;
	    if (i_314_ > 65535)
		i_314_ = 65535;
	    int i_315_ = (i_307_ & 0xff) * i_312_;
	    if (i_315_ > 65535)
		i_315_ = 65535;
	    i_307_
		= (i_313_ << 8 & 0xff0000) + (i_314_ & 0xff00) + (i_315_ >> 8);
	}
	return i_307_;
    }