final void method982(int i, int i_159_, int i_160_, int i_161_, int i_162_,
			 int i_163_, int i_164_, int i_165_) {
	if (((AbstractSoftwareRaster) this).softwareToolkit.method3716())
	    throw new IllegalStateException();
	if (i_160_ > 0 && i_161_ > 0) {
	    int i_166_ = 0;
	    int i_167_ = 0;
	    int i_168_
		= ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).maxWidth;
	    int i_169_ = (((AbstractSoftwareRaster) this).anInt8461
			  + ((AbstractSoftwareRaster) this).width
			  + ((AbstractSoftwareRaster) this).anInt8454);
	    int i_170_ = (((AbstractSoftwareRaster) this).anInt8464
			  + ((AbstractSoftwareRaster) this).height
			  + ((AbstractSoftwareRaster) this).anInt8456);
	    int i_171_ = (i_169_ << 16) / i_160_;
	    int i_172_ = (i_170_ << 16) / i_161_;
	    if (((AbstractSoftwareRaster) this).anInt8461 > 0) {
		int i_173_
		    = (((((AbstractSoftwareRaster) this).anInt8461 << 16) + i_171_ - 1)
		       / i_171_);
		i += i_173_;
		i_166_ += i_173_ * i_171_ - (((AbstractSoftwareRaster) this).anInt8461
					     << 16);
	    }
	    if (((AbstractSoftwareRaster) this).anInt8464 > 0) {
		int i_174_
		    = (((((AbstractSoftwareRaster) this).anInt8464 << 16) + i_172_ - 1)
		       / i_172_);
		i_159_ += i_174_;
		i_167_ += i_174_ * i_172_ - (((AbstractSoftwareRaster) this).anInt8464
					     << 16);
	    }
	    if (((AbstractSoftwareRaster) this).width < i_169_)
		i_160_ = ((((AbstractSoftwareRaster) this).width << 16) - i_166_
			  + i_171_ - 1) / i_171_;
	    if (((AbstractSoftwareRaster) this).height < i_170_)
		i_161_ = ((((AbstractSoftwareRaster) this).height << 16) - i_167_
			  + i_172_ - 1) / i_172_;
	    int i_175_ = i + i_159_ * i_168_;
	    int i_176_ = i_168_ - i_160_;
	    if (i_159_ + i_161_
		> ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).height)
		i_161_ -= (i_159_ + i_161_
			   - (((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			      .height));
	    if (i_159_
		< ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).heightOffset) {
		int i_177_ = ((((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			       .heightOffset)
			      - i_159_);
		i_161_ -= i_177_;
		i_175_ += i_177_ * i_168_;
		i_167_ += i_172_ * i_177_;
	    }
	    if (i + i_160_
		> ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).width) {
		int i_178_
		    = (i + i_160_
		       - (((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			  .width));
		i_160_ -= i_178_;
		i_176_ += i_178_;
	    }
	    if (i
		< ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).widthOffset) {
		int i_179_ = ((((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			       .widthOffset)
			      - i);
		i_160_ -= i_179_;
		i_175_ += i_179_;
		i_166_ += i_171_ * i_179_;
		i_176_ += i_179_;
	    }
	    int[] is = (((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			.pixelBuffer);
	    if (i_164_ == 0) {
		if (i_162_ == 1) {
		    int i_180_ = i_166_;
		    for (int i_181_ = -i_161_; i_181_ < 0; i_181_++) {
			int i_182_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_183_ = -i_160_; i_183_ < 0; i_183_++) {
			    is[i_175_++]
				= (anIntArray9935
				   [(aByteArray9934[(i_166_ >> 16) + i_182_]
				     & 0xff)]);
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_180_;
			i_175_ += i_176_;
		    }
		    return;
		}
		if (i_162_ == 0) {
		    int i_184_ = (i_163_ & 0xff0000) >> 16;
		    int i_185_ = (i_163_ & 0xff00) >> 8;
		    int i_186_ = i_163_ & 0xff;
		    int i_187_ = i_166_;
		    for (int i_188_ = -i_161_; i_188_ < 0; i_188_++) {
			int i_189_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_190_ = -i_160_; i_190_ < 0; i_190_++) {
			    int i_191_
				= (anIntArray9935
				   [(aByteArray9934[(i_166_ >> 16) + i_189_]
				     & 0xff)]);
			    int i_192_
				= (i_191_ & 0xff0000) * i_184_ & ~0xffffff;
			    int i_193_ = (i_191_ & 0xff00) * i_185_ & 0xff0000;
			    int i_194_ = (i_191_ & 0xff) * i_186_ & 0xff00;
			    is[i_175_++] = (i_192_ | i_193_ | i_194_) >>> 8;
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_187_;
			i_175_ += i_176_;
		    }
		    return;
		}
		if (i_162_ == 3) {
		    int i_195_ = i_166_;
		    for (int i_196_ = -i_161_; i_196_ < 0; i_196_++) {
			int i_197_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_198_ = -i_160_; i_198_ < 0; i_198_++) {
			    byte i_199_
				= aByteArray9934[(i_166_ >> 16) + i_197_];
			    int i_200_
				= i_199_ > 0 ? anIntArray9935[i_199_] : 0;
			    int i_201_ = i_200_ + i_163_;
			    int i_202_
				= (i_200_ & 0xff00ff) + (i_163_ & 0xff00ff);
			    int i_203_ = ((i_202_ & 0x1000100)
					  + (i_201_ - i_202_ & 0x10000));
			    is[i_175_++]
				= i_201_ - i_203_ | i_203_ - (i_203_ >>> 8);
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_195_;
			i_175_ += i_176_;
		    }
		    return;
		}
		if (i_162_ == 2) {
		    int i_204_ = i_163_ >>> 24;
		    int i_205_ = 256 - i_204_;
		    int i_206_ = (i_163_ & 0xff00ff) * i_205_ & ~0xff00ff;
		    int i_207_ = (i_163_ & 0xff00) * i_205_ & 0xff0000;
		    i_163_ = (i_206_ | i_207_) >>> 8;
		    int i_208_ = i_166_;
		    for (int i_209_ = -i_161_; i_209_ < 0; i_209_++) {
			int i_210_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_211_ = -i_160_; i_211_ < 0; i_211_++) {
			    int i_212_
				= (anIntArray9935
				   [(aByteArray9934[(i_166_ >> 16) + i_210_]
				     & 0xff)]);
			    i_206_ = (i_212_ & 0xff00ff) * i_204_ & ~0xff00ff;
			    i_207_ = (i_212_ & 0xff00) * i_204_ & 0xff0000;
			    is[i_175_++] = ((i_206_ | i_207_) >>> 8) + i_163_;
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_208_;
			i_175_ += i_176_;
		    }
		    return;
		}
		throw new IllegalArgumentException();
	    }
	    if (i_164_ == 1) {
		if (i_162_ == 1) {
		    int i_213_ = i_166_;
		    for (int i_214_ = -i_161_; i_214_ < 0; i_214_++) {
			int i_215_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_216_ = -i_160_; i_216_ < 0; i_216_++) {
			    int i_217_
				= aByteArray9934[(i_166_ >> 16) + i_215_];
			    if (i_217_ != 0)
				is[i_175_++] = anIntArray9935[i_217_ & 0xff];
			    else
				i_175_++;
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_213_;
			i_175_ += i_176_;
		    }
		    return;
		}
		if (i_162_ == 0) {
		    int i_218_ = i_166_;
		    if ((i_163_ & 0xffffff) == 16777215) {
			int i_219_ = i_163_ >>> 24;
			int i_220_ = 256 - i_219_;
			for (int i_221_ = -i_161_; i_221_ < 0; i_221_++) {
			    int i_222_ = ((i_167_ >> 16)
					  * ((AbstractSoftwareRaster) this).width);
			    for (int i_223_ = -i_160_; i_223_ < 0; i_223_++) {
				int i_224_
				    = aByteArray9934[(i_166_ >> 16) + i_222_];
				if (i_224_ != 0) {
				    int i_225_ = anIntArray9935[i_224_ & 0xff];
				    int i_226_ = is[i_175_];
				    is[i_175_++]
					= ((((i_225_ & 0xff00ff) * i_219_
					     + (i_226_ & 0xff00ff) * i_220_)
					    & ~0xff00ff)
					   + (((i_225_ & 0xff00) * i_219_
					       + (i_226_ & 0xff00) * i_220_)
					      & 0xff0000)) >> 8;
				} else
				    i_175_++;
				i_166_ += i_171_;
			    }
			    i_167_ += i_172_;
			    i_166_ = i_218_;
			    i_175_ += i_176_;
			}
		    } else {
			int i_227_ = (i_163_ & 0xff0000) >> 16;
			int i_228_ = (i_163_ & 0xff00) >> 8;
			int i_229_ = i_163_ & 0xff;
			int i_230_ = i_163_ >>> 24;
			int i_231_ = 256 - i_230_;
			for (int i_232_ = -i_161_; i_232_ < 0; i_232_++) {
			    int i_233_ = ((i_167_ >> 16)
					  * ((AbstractSoftwareRaster) this).width);
			    for (int i_234_ = -i_160_; i_234_ < 0; i_234_++) {
				int i_235_
				    = aByteArray9934[(i_166_ >> 16) + i_233_];
				if (i_235_ != 0) {
				    int i_236_ = anIntArray9935[i_235_ & 0xff];
				    if (i_230_ != 255) {
					int i_237_
					    = ((i_236_ & 0xff0000) * i_227_
					       & ~0xffffff);
					int i_238_
					    = ((i_236_ & 0xff00) * i_228_
					       & 0xff0000);
					int i_239_ = ((i_236_ & 0xff) * i_229_
						      & 0xff00);
					i_236_
					    = (i_237_ | i_238_ | i_239_) >>> 8;
					int i_240_ = is[i_175_];
					is[i_175_++]
					    = ((((i_236_ & 0xff00ff) * i_230_
						 + ((i_240_ & 0xff00ff)
						    * i_231_))
						& ~0xff00ff)
					       + (((i_236_ & 0xff00) * i_230_
						   + ((i_240_ & 0xff00)
						      * i_231_))
						  & 0xff0000)) >> 8;
				    } else {
					int i_241_
					    = ((i_236_ & 0xff0000) * i_227_
					       & ~0xffffff);
					int i_242_
					    = ((i_236_ & 0xff00) * i_228_
					       & 0xff0000);
					int i_243_ = ((i_236_ & 0xff) * i_229_
						      & 0xff00);
					is[i_175_++]
					    = (i_241_ | i_242_ | i_243_) >>> 8;
				    }
				} else
				    i_175_++;
				i_166_ += i_171_;
			    }
			    i_167_ += i_172_;
			    i_166_ = i_218_;
			    i_175_ += i_176_;
			}
			return;
		    }
		    return;
		}
		if (i_162_ == 3) {
		    int i_244_ = i_166_;
		    int i_245_ = i_163_ >>> 24;
		    int i_246_ = 256 - i_245_;
		    for (int i_247_ = -i_161_; i_247_ < 0; i_247_++) {
			int i_248_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_249_ = -i_160_; i_249_ < 0; i_249_++) {
			    byte i_250_
				= aByteArray9934[(i_166_ >> 16) + i_248_];
			    int i_251_
				= i_250_ > 0 ? anIntArray9935[i_250_] : 0;
			    int i_252_ = i_251_ + i_163_;
			    int i_253_
				= (i_251_ & 0xff00ff) + (i_163_ & 0xff00ff);
			    int i_254_ = ((i_253_ & 0x1000100)
					  + (i_252_ - i_253_ & 0x10000));
			    i_254_ = i_252_ - i_254_ | i_254_ - (i_254_ >>> 8);
			    if (i_251_ == 0 && i_245_ != 255) {
				i_251_ = i_254_;
				i_254_ = is[i_175_];
				i_254_ = ((((i_251_ & 0xff00ff) * i_245_
					    + (i_254_ & 0xff00ff) * i_246_)
					   & ~0xff00ff)
					  + (((i_251_ & 0xff00) * i_245_
					      + (i_254_ & 0xff00) * i_246_)
					     & 0xff0000)) >> 8;
			    }
			    is[i_175_++] = i_254_;
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_244_;
			i_175_ += i_176_;
		    }
		    return;
		}
		if (i_162_ == 2) {
		    int i_255_ = i_163_ >>> 24;
		    int i_256_ = 256 - i_255_;
		    int i_257_ = (i_163_ & 0xff00ff) * i_256_ & ~0xff00ff;
		    int i_258_ = (i_163_ & 0xff00) * i_256_ & 0xff0000;
		    i_163_ = (i_257_ | i_258_) >>> 8;
		    int i_259_ = i_166_;
		    for (int i_260_ = -i_161_; i_260_ < 0; i_260_++) {
			int i_261_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_262_ = -i_160_; i_262_ < 0; i_262_++) {
			    int i_263_
				= aByteArray9934[(i_166_ >> 16) + i_261_];
			    if (i_263_ != 0) {
				int i_264_ = anIntArray9935[i_263_ & 0xff];
				i_257_
				    = (i_264_ & 0xff00ff) * i_255_ & ~0xff00ff;
				i_258_ = (i_264_ & 0xff00) * i_255_ & 0xff0000;
				is[i_175_++]
				    = ((i_257_ | i_258_) >>> 8) + i_163_;
			    } else
				i_175_++;
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_259_;
			i_175_ += i_176_;
		    }
		    return;
		}
		throw new IllegalArgumentException();
	    }
	    if (i_164_ == 2) {
		if (i_162_ == 1) {
		    int i_265_ = i_166_;
		    for (int i_266_ = -i_161_; i_266_ < 0; i_266_++) {
			int i_267_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_268_ = -i_160_; i_268_ < 0; i_268_++) {
			    int i_269_
				= aByteArray9934[(i_166_ >> 16) + i_267_];
			    if (i_269_ != 0) {
				int i_270_ = anIntArray9935[i_269_ & 0xff];
				int i_271_ = is[i_175_];
				int i_272_ = i_270_ + i_271_;
				int i_273_ = ((i_270_ & 0xff00ff)
					      + (i_271_ & 0xff00ff));
				i_271_
				    = (i_273_ & 0x1000100) + (i_272_ - i_273_
							      & 0x10000);
				is[i_175_++]
				    = i_272_ - i_271_ | i_271_ - (i_271_
								  >>> 8);
			    } else
				i_175_++;
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_265_;
			i_175_ += i_176_;
		    }
		    return;
		}
		if (i_162_ == 0) {
		    int i_274_ = i_166_;
		    int i_275_ = (i_163_ & 0xff0000) >> 16;
		    int i_276_ = (i_163_ & 0xff00) >> 8;
		    int i_277_ = i_163_ & 0xff;
		    for (int i_278_ = -i_161_; i_278_ < 0; i_278_++) {
			int i_279_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_280_ = -i_160_; i_280_ < 0; i_280_++) {
			    int i_281_
				= aByteArray9934[(i_166_ >> 16) + i_279_];
			    if (i_281_ != 0) {
				int i_282_ = anIntArray9935[i_281_ & 0xff];
				int i_283_
				    = (i_282_ & 0xff0000) * i_275_ & ~0xffffff;
				int i_284_
				    = (i_282_ & 0xff00) * i_276_ & 0xff0000;
				int i_285_ = (i_282_ & 0xff) * i_277_ & 0xff00;
				i_282_ = (i_283_ | i_284_ | i_285_) >>> 8;
				int i_286_ = is[i_175_];
				int i_287_ = i_282_ + i_286_;
				int i_288_ = ((i_282_ & 0xff00ff)
					      + (i_286_ & 0xff00ff));
				i_286_
				    = (i_288_ & 0x1000100) + (i_287_ - i_288_
							      & 0x10000);
				is[i_175_++]
				    = i_287_ - i_286_ | i_286_ - (i_286_
								  >>> 8);
			    } else
				i_175_++;
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_274_;
			i_175_ += i_176_;
		    }
		    return;
		}
		if (i_162_ == 3) {
		    int i_289_ = i_166_;
		    for (int i_290_ = -i_161_; i_290_ < 0; i_290_++) {
			int i_291_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_292_ = -i_160_; i_292_ < 0; i_292_++) {
			    byte i_293_
				= aByteArray9934[(i_166_ >> 16) + i_291_];
			    int i_294_
				= i_293_ > 0 ? anIntArray9935[i_293_] : 0;
			    int i_295_ = i_294_ + i_163_;
			    int i_296_
				= (i_294_ & 0xff00ff) + (i_163_ & 0xff00ff);
			    int i_297_ = ((i_296_ & 0x1000100)
					  + (i_295_ - i_296_ & 0x10000));
			    i_294_ = i_295_ - i_297_ | i_297_ - (i_297_ >>> 8);
			    i_297_ = is[i_175_];
			    i_295_ = i_294_ + i_297_;
			    i_296_ = (i_294_ & 0xff00ff) + (i_297_ & 0xff00ff);
			    i_297_ = (i_296_ & 0x1000100) + (i_295_ - i_296_
							     & 0x10000);
			    is[i_175_++]
				= i_295_ - i_297_ | i_297_ - (i_297_ >>> 8);
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_289_;
			i_175_ += i_176_;
		    }
		    return;
		}
		if (i_162_ == 2) {
		    int i_298_ = i_163_ >>> 24;
		    int i_299_ = 256 - i_298_;
		    int i_300_ = (i_163_ & 0xff00ff) * i_299_ & ~0xff00ff;
		    int i_301_ = (i_163_ & 0xff00) * i_299_ & 0xff0000;
		    i_163_ = (i_300_ | i_301_) >>> 8;
		    int i_302_ = i_166_;
		    for (int i_303_ = -i_161_; i_303_ < 0; i_303_++) {
			int i_304_ = ((i_167_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_305_ = -i_160_; i_305_ < 0; i_305_++) {
			    int i_306_
				= aByteArray9934[(i_166_ >> 16) + i_304_];
			    if (i_306_ != 0) {
				int i_307_ = anIntArray9935[i_306_ & 0xff];
				i_300_
				    = (i_307_ & 0xff00ff) * i_298_ & ~0xff00ff;
				i_301_ = (i_307_ & 0xff00) * i_298_ & 0xff0000;
				i_307_ = ((i_300_ | i_301_) >>> 8) + i_163_;
				int i_308_ = is[i_175_];
				int i_309_ = i_307_ + i_308_;
				int i_310_ = ((i_307_ & 0xff00ff)
					      + (i_308_ & 0xff00ff));
				i_308_
				    = (i_310_ & 0x1000100) + (i_309_ - i_310_
							      & 0x10000);
				is[i_175_++]
				    = i_309_ - i_308_ | i_308_ - (i_308_
								  >>> 8);
			    } else
				i_175_++;
			    i_166_ += i_171_;
			}
			i_167_ += i_172_;
			i_166_ = i_302_;
			i_175_ += i_176_;
		    }
		    return;
		}
		throw new IllegalArgumentException();
	    }
	    throw new IllegalArgumentException();
	}
    }