final void method982(int i, int i_598_, int i_599_, int i_600_, int i_601_,
			 int i_602_, int i_603_, int i_604_) {
	if (((AbstractSoftwareRaster) this).softwareToolkit.method3716())
	    throw new IllegalStateException();
	if (i_599_ > 0 && i_600_ > 0) {
	    int i_605_ = 0;
	    int i_606_ = 0;
	    int i_607_
		= ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).maxWidth;
	    int i_608_ = (((AbstractSoftwareRaster) this).anInt8461
			  + ((AbstractSoftwareRaster) this).width
			  + ((AbstractSoftwareRaster) this).anInt8454);
	    int i_609_ = (((AbstractSoftwareRaster) this).anInt8464
			  + ((AbstractSoftwareRaster) this).height
			  + ((AbstractSoftwareRaster) this).anInt8456);
	    int i_610_ = (i_608_ << 16) / i_599_;
	    int i_611_ = (i_609_ << 16) / i_600_;
	    if (((AbstractSoftwareRaster) this).anInt8461 > 0) {
		int i_612_
		    = (((((AbstractSoftwareRaster) this).anInt8461 << 16) + i_610_ - 1)
		       / i_610_);
		i += i_612_;
		i_605_ += i_612_ * i_610_ - (((AbstractSoftwareRaster) this).anInt8461
					     << 16);
	    }
	    if (((AbstractSoftwareRaster) this).anInt8464 > 0) {
		int i_613_
		    = (((((AbstractSoftwareRaster) this).anInt8464 << 16) + i_611_ - 1)
		       / i_611_);
		i_598_ += i_613_;
		i_606_ += i_613_ * i_611_ - (((AbstractSoftwareRaster) this).anInt8464
					     << 16);
	    }
	    if (((AbstractSoftwareRaster) this).width < i_608_)
		i_599_ = ((((AbstractSoftwareRaster) this).width << 16) - i_605_
			  + i_610_ - 1) / i_610_;
	    if (((AbstractSoftwareRaster) this).height < i_609_)
		i_600_ = ((((AbstractSoftwareRaster) this).height << 16) - i_606_
			  + i_611_ - 1) / i_611_;
	    int i_614_ = i + i_598_ * i_607_;
	    int i_615_ = i_607_ - i_599_;
	    if (i_598_ + i_600_
		> ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).height)
		i_600_ -= (i_598_ + i_600_
			   - (((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			      .height));
	    if (i_598_
		< ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).heightOffset) {
		int i_616_ = ((((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			       .heightOffset)
			      - i_598_);
		i_600_ -= i_616_;
		i_614_ += i_616_ * i_607_;
		i_606_ += i_611_ * i_616_;
	    }
	    if (i + i_599_
		> ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).width) {
		int i_617_
		    = (i + i_599_
		       - (((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			  .width));
		i_599_ -= i_617_;
		i_615_ += i_617_;
	    }
	    if (i
		< ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).widthOffset) {
		int i_618_ = ((((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			       .widthOffset)
			      - i);
		i_599_ -= i_618_;
		i_614_ += i_618_;
		i_605_ += i_610_ * i_618_;
		i_615_ += i_618_;
	    }
	    int[] is = (((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			.pixelBuffer);
	    if (i_603_ == 0) {
		if (i_601_ == 1) {
		    int i_619_ = i_605_;
		    for (int i_620_ = -i_600_; i_620_ < 0; i_620_++) {
			int i_621_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_622_ = -i_599_; i_622_ < 0; i_622_++) {
			    is[i_614_++]
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_621_]);
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_619_;
			i_614_ += i_615_;
		    }
		    return;
		}
		if (i_601_ == 0) {
		    int i_623_ = (i_602_ & 0xff0000) >> 16;
		    int i_624_ = (i_602_ & 0xff00) >> 8;
		    int i_625_ = i_602_ & 0xff;
		    int i_626_ = i_605_;
		    for (int i_627_ = -i_600_; i_627_ < 0; i_627_++) {
			int i_628_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_629_ = -i_599_; i_629_ < 0; i_629_++) {
			    int i_630_
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_628_]);
			    int i_631_
				= (i_630_ & 0xff0000) * i_623_ & ~0xffffff;
			    int i_632_ = (i_630_ & 0xff00) * i_624_ & 0xff0000;
			    int i_633_ = (i_630_ & 0xff) * i_625_ & 0xff00;
			    is[i_614_++] = (i_631_ | i_632_ | i_633_) >>> 8;
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_626_;
			i_614_ += i_615_;
		    }
		    return;
		}
		if (i_601_ == 3) {
		    int i_634_ = i_605_;
		    for (int i_635_ = -i_600_; i_635_ < 0; i_635_++) {
			int i_636_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_637_ = -i_599_; i_637_ < 0; i_637_++) {
			    int i_638_
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_636_]);
			    int i_639_ = i_638_ + i_602_;
			    int i_640_
				= (i_638_ & 0xff00ff) + (i_602_ & 0xff00ff);
			    int i_641_ = ((i_640_ & 0x1000100)
					  + (i_639_ - i_640_ & 0x10000));
			    is[i_614_++]
				= i_639_ - i_641_ | i_641_ - (i_641_ >>> 8);
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_634_;
			i_614_ += i_615_;
		    }
		    return;
		}
		if (i_601_ == 2) {
		    int i_642_ = i_602_ >>> 24;
		    int i_643_ = 256 - i_642_;
		    int i_644_ = (i_602_ & 0xff00ff) * i_643_ & ~0xff00ff;
		    int i_645_ = (i_602_ & 0xff00) * i_643_ & 0xff0000;
		    i_602_ = (i_644_ | i_645_) >>> 8;
		    int i_646_ = i_605_;
		    for (int i_647_ = -i_600_; i_647_ < 0; i_647_++) {
			int i_648_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_649_ = -i_599_; i_649_ < 0; i_649_++) {
			    int i_650_
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_648_]);
			    i_644_ = (i_650_ & 0xff00ff) * i_642_ & ~0xff00ff;
			    i_645_ = (i_650_ & 0xff00) * i_642_ & 0xff0000;
			    is[i_614_++] = ((i_644_ | i_645_) >>> 8) + i_602_;
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_646_;
			i_614_ += i_615_;
		    }
		    return;
		}
		throw new IllegalArgumentException();
	    }
	    if (i_603_ == 1) {
		if (i_601_ == 1) {
		    int i_651_ = i_605_;
		    for (int i_652_ = -i_600_; i_652_ < 0; i_652_++) {
			int i_653_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_654_ = -i_599_; i_654_ < 0; i_654_++) {
			    int i_655_
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_653_]);
			    if (i_655_ != 0)
				is[i_614_++] = i_655_;
			    else
				i_614_++;
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_651_;
			i_614_ += i_615_;
		    }
		    return;
		}
		if (i_601_ == 0) {
		    int i_656_ = i_605_;
		    if ((i_602_ & 0xffffff) == 16777215) {
			int i_657_ = i_602_ >>> 24;
			int i_658_ = 256 - i_657_;
			for (int i_659_ = -i_600_; i_659_ < 0; i_659_++) {
			    int i_660_ = ((i_606_ >> 16)
					  * ((AbstractSoftwareRaster) this).width);
			    for (int i_661_ = -i_599_; i_661_ < 0; i_661_++) {
				int i_662_ = (((SoftwareRaster) this)
					      .anIntArray9933
					      [(i_605_ >> 16) + i_660_]);
				if (i_662_ != 0) {
				    int i_663_ = is[i_614_];
				    is[i_614_++]
					= ((((i_662_ & 0xff00ff) * i_657_
					     + (i_663_ & 0xff00ff) * i_658_)
					    & ~0xff00ff)
					   + (((i_662_ & 0xff00) * i_657_
					       + (i_663_ & 0xff00) * i_658_)
					      & 0xff0000)) >> 8;
				} else
				    i_614_++;
				i_605_ += i_610_;
			    }
			    i_606_ += i_611_;
			    i_605_ = i_656_;
			    i_614_ += i_615_;
			}
		    } else {
			int i_664_ = (i_602_ & 0xff0000) >> 16;
			int i_665_ = (i_602_ & 0xff00) >> 8;
			int i_666_ = i_602_ & 0xff;
			int i_667_ = i_602_ >>> 24;
			int i_668_ = 256 - i_667_;
			for (int i_669_ = -i_600_; i_669_ < 0; i_669_++) {
			    int i_670_ = ((i_606_ >> 16)
					  * ((AbstractSoftwareRaster) this).width);
			    for (int i_671_ = -i_599_; i_671_ < 0; i_671_++) {
				int i_672_ = (((SoftwareRaster) this)
					      .anIntArray9933
					      [(i_605_ >> 16) + i_670_]);
				if (i_672_ != 0) {
				    if (i_667_ != 255) {
					int i_673_
					    = ((i_672_ & 0xff0000) * i_664_
					       & ~0xffffff);
					int i_674_
					    = ((i_672_ & 0xff00) * i_665_
					       & 0xff0000);
					int i_675_ = ((i_672_ & 0xff) * i_666_
						      & 0xff00);
					i_672_
					    = (i_673_ | i_674_ | i_675_) >>> 8;
					int i_676_ = is[i_614_];
					is[i_614_++]
					    = ((((i_672_ & 0xff00ff) * i_667_
						 + ((i_676_ & 0xff00ff)
						    * i_668_))
						& ~0xff00ff)
					       + (((i_672_ & 0xff00) * i_667_
						   + ((i_676_ & 0xff00)
						      * i_668_))
						  & 0xff0000)) >> 8;
				    } else {
					int i_677_
					    = ((i_672_ & 0xff0000) * i_664_
					       & ~0xffffff);
					int i_678_
					    = ((i_672_ & 0xff00) * i_665_
					       & 0xff0000);
					int i_679_ = ((i_672_ & 0xff) * i_666_
						      & 0xff00);
					is[i_614_++]
					    = (i_677_ | i_678_ | i_679_) >>> 8;
				    }
				} else
				    i_614_++;
				i_605_ += i_610_;
			    }
			    i_606_ += i_611_;
			    i_605_ = i_656_;
			    i_614_ += i_615_;
			}
			return;
		    }
		    return;
		}
		if (i_601_ == 3) {
		    int i_680_ = i_605_;
		    int i_681_ = i_602_ >>> 24;
		    int i_682_ = 256 - i_681_;
		    for (int i_683_ = -i_600_; i_683_ < 0; i_683_++) {
			int i_684_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_685_ = -i_599_; i_685_ < 0; i_685_++) {
			    int i_686_
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_684_]);
			    int i_687_ = i_686_ + i_602_;
			    int i_688_
				= (i_686_ & 0xff00ff) + (i_602_ & 0xff00ff);
			    int i_689_ = ((i_688_ & 0x1000100)
					  + (i_687_ - i_688_ & 0x10000));
			    i_689_ = i_687_ - i_689_ | i_689_ - (i_689_ >>> 8);
			    if (i_686_ == 0 && i_681_ != 255) {
				i_686_ = i_689_;
				i_689_ = is[i_614_];
				i_689_ = ((((i_686_ & 0xff00ff) * i_681_
					    + (i_689_ & 0xff00ff) * i_682_)
					   & ~0xff00ff)
					  + (((i_686_ & 0xff00) * i_681_
					      + (i_689_ & 0xff00) * i_682_)
					     & 0xff0000)) >> 8;
			    }
			    is[i_614_++] = i_689_;
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_680_;
			i_614_ += i_615_;
		    }
		    return;
		}
		if (i_601_ == 2) {
		    int i_690_ = i_602_ >>> 24;
		    int i_691_ = 256 - i_690_;
		    int i_692_ = (i_602_ & 0xff00ff) * i_691_ & ~0xff00ff;
		    int i_693_ = (i_602_ & 0xff00) * i_691_ & 0xff0000;
		    i_602_ = (i_692_ | i_693_) >>> 8;
		    int i_694_ = i_605_;
		    for (int i_695_ = -i_600_; i_695_ < 0; i_695_++) {
			int i_696_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_697_ = -i_599_; i_697_ < 0; i_697_++) {
			    int i_698_
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_696_]);
			    if (i_698_ != 0) {
				i_692_
				    = (i_698_ & 0xff00ff) * i_690_ & ~0xff00ff;
				i_693_ = (i_698_ & 0xff00) * i_690_ & 0xff0000;
				is[i_614_++]
				    = ((i_692_ | i_693_) >>> 8) + i_602_;
			    } else
				i_614_++;
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_694_;
			i_614_ += i_615_;
		    }
		    return;
		}
		throw new IllegalArgumentException();
	    }
	    if (i_603_ == 2) {
		if (i_601_ == 1) {
		    int i_699_ = i_605_;
		    for (int i_700_ = -i_600_; i_700_ < 0; i_700_++) {
			int i_701_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_702_ = -i_599_; i_702_ < 0; i_702_++) {
			    int i_703_
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_701_]);
			    if (i_703_ != 0) {
				int i_704_ = is[i_614_];
				int i_705_ = i_703_ + i_704_;
				int i_706_ = ((i_703_ & 0xff00ff)
					      + (i_704_ & 0xff00ff));
				i_704_
				    = (i_706_ & 0x1000100) + (i_705_ - i_706_
							      & 0x10000);
				is[i_614_++]
				    = i_705_ - i_704_ | i_704_ - (i_704_
								  >>> 8);
			    } else
				i_614_++;
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_699_;
			i_614_ += i_615_;
		    }
		    return;
		}
		if (i_601_ == 0) {
		    int i_707_ = i_605_;
		    int i_708_ = (i_602_ & 0xff0000) >> 16;
		    int i_709_ = (i_602_ & 0xff00) >> 8;
		    int i_710_ = i_602_ & 0xff;
		    for (int i_711_ = -i_600_; i_711_ < 0; i_711_++) {
			int i_712_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_713_ = -i_599_; i_713_ < 0; i_713_++) {
			    int i_714_
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_712_]);
			    if (i_714_ != 0) {
				int i_715_
				    = (i_714_ & 0xff0000) * i_708_ & ~0xffffff;
				int i_716_
				    = (i_714_ & 0xff00) * i_709_ & 0xff0000;
				int i_717_ = (i_714_ & 0xff) * i_710_ & 0xff00;
				i_714_ = (i_715_ | i_716_ | i_717_) >>> 8;
				int i_718_ = is[i_614_];
				int i_719_ = i_714_ + i_718_;
				int i_720_ = ((i_714_ & 0xff00ff)
					      + (i_718_ & 0xff00ff));
				i_718_
				    = (i_720_ & 0x1000100) + (i_719_ - i_720_
							      & 0x10000);
				is[i_614_++]
				    = i_719_ - i_718_ | i_718_ - (i_718_
								  >>> 8);
			    } else
				i_614_++;
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_707_;
			i_614_ += i_615_;
		    }
		    return;
		}
		if (i_601_ == 3) {
		    int i_721_ = i_605_;
		    for (int i_722_ = -i_600_; i_722_ < 0; i_722_++) {
			int i_723_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_724_ = -i_599_; i_724_ < 0; i_724_++) {
			    int i_725_
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_723_]);
			    int i_726_ = i_725_ + i_602_;
			    int i_727_
				= (i_725_ & 0xff00ff) + (i_602_ & 0xff00ff);
			    int i_728_ = ((i_727_ & 0x1000100)
					  + (i_726_ - i_727_ & 0x10000));
			    i_725_ = i_726_ - i_728_ | i_728_ - (i_728_ >>> 8);
			    i_728_ = is[i_614_];
			    i_726_ = i_725_ + i_728_;
			    i_727_ = (i_725_ & 0xff00ff) + (i_728_ & 0xff00ff);
			    i_728_ = (i_727_ & 0x1000100) + (i_726_ - i_727_
							     & 0x10000);
			    is[i_614_++]
				= i_726_ - i_728_ | i_728_ - (i_728_ >>> 8);
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_721_;
			i_614_ += i_615_;
		    }
		    return;
		}
		if (i_601_ == 2) {
		    int i_729_ = i_602_ >>> 24;
		    int i_730_ = 256 - i_729_;
		    int i_731_ = (i_602_ & 0xff00ff) * i_730_ & ~0xff00ff;
		    int i_732_ = (i_602_ & 0xff00) * i_730_ & 0xff0000;
		    i_602_ = (i_731_ | i_732_) >>> 8;
		    int i_733_ = i_605_;
		    for (int i_734_ = -i_600_; i_734_ < 0; i_734_++) {
			int i_735_ = ((i_606_ >> 16)
				      * ((AbstractSoftwareRaster) this).width);
			for (int i_736_ = -i_599_; i_736_ < 0; i_736_++) {
			    int i_737_
				= (((SoftwareRaster) this).anIntArray9933
				   [(i_605_ >> 16) + i_735_]);
			    if (i_737_ != 0) {
				i_731_
				    = (i_737_ & 0xff00ff) * i_729_ & ~0xff00ff;
				i_732_ = (i_737_ & 0xff00) * i_729_ & 0xff0000;
				i_737_ = ((i_731_ | i_732_) >>> 8) + i_602_;
				int i_738_ = is[i_614_];
				int i_739_ = i_737_ + i_738_;
				int i_740_ = ((i_737_ & 0xff00ff)
					      + (i_738_ & 0xff00ff));
				i_738_
				    = (i_740_ & 0x1000100) + (i_739_ - i_740_
							      & 0x10000);
				is[i_614_++]
				    = i_739_ - i_738_ | i_738_ - (i_738_
								  >>> 8);
			    } else
				i_614_++;
			    i_605_ += i_610_;
			}
			i_606_ += i_611_;
			i_605_ = i_733_;
			i_614_ += i_615_;
		    }
		    return;
		}
		throw new IllegalArgumentException();
	    }
	    throw new IllegalArgumentException();
	}
    }