final void method963(int i, int i_1070_, aa var_aa, int i_1071_,
			 int i_1072_) {
	if (((AbstractSoftwareRaster) this).softwareToolkit.method3716())
	    throw new IllegalStateException();
	i += ((AbstractSoftwareRaster) this).anInt8461;
	i_1070_ += ((AbstractSoftwareRaster) this).anInt8464;
	int i_1073_ = 0;
	int i_1074_
	    = ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).maxWidth;
	int i_1075_ = ((AbstractSoftwareRaster) this).width;
	int i_1076_ = ((AbstractSoftwareRaster) this).height;
	int i_1077_ = i_1074_ - i_1075_;
	int i_1078_ = 0;
	int i_1079_ = i + i_1070_ * i_1074_;
	if (i_1070_
	    < ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).heightOffset) {
	    int i_1080_
		= (((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).heightOffset
		   - i_1070_);
	    i_1076_ -= i_1080_;
	    i_1070_
		= ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).heightOffset;
	    i_1073_ += i_1080_ * i_1075_;
	    i_1079_ += i_1080_ * i_1074_;
	}
	if (i_1070_ + i_1076_
	    > ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).height)
	    i_1076_
		-= i_1070_ + i_1076_ - ((SoftwareToolkit) (((AbstractSoftwareRaster) this)
						   .softwareToolkit)).height;
	if (i < ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).widthOffset) {
	    int i_1081_
		= (((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).widthOffset
		   - i);
	    i_1075_ -= i_1081_;
	    i = ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).widthOffset;
	    i_1073_ += i_1081_;
	    i_1079_ += i_1081_;
	    i_1078_ += i_1081_;
	    i_1077_ += i_1081_;
	}
	if (i + i_1075_
	    > ((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit).width) {
	    int i_1082_ = (i + i_1075_
			   - (((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			      .width));
	    i_1075_ -= i_1082_;
	    i_1078_ += i_1082_;
	    i_1077_ += i_1082_;
	}
	if (i_1075_ > 0 && i_1076_ > 0) {
	    aa_Sub3 var_aa_Sub3 = (aa_Sub3) var_aa;
	    int[] is = ((aa_Sub3) var_aa_Sub3).anIntArray5201;
	    int[] is_1083_ = ((aa_Sub3) var_aa_Sub3).anIntArray5202;
	    int[] is_1084_ = (((SoftwareToolkit) ((AbstractSoftwareRaster) this).softwareToolkit)
			      .pixelBuffer);
	    int i_1085_ = i_1070_;
	    if (i_1072_ > i_1085_) {
		i_1085_ = i_1072_;
		i_1079_ += (i_1072_ - i_1070_) * i_1074_;
		i_1073_
		    += (i_1072_ - i_1070_) * ((AbstractSoftwareRaster) this).width;
	    }
	    int i_1086_ = (i_1072_ + is.length < i_1070_ + i_1076_
			   ? i_1072_ + is.length : i_1070_ + i_1076_);
	    for (int i_1087_ = i_1085_; i_1087_ < i_1086_; i_1087_++) {
		int i_1088_ = is[i_1087_ - i_1072_] + i_1071_;
		int i_1089_ = is_1083_[i_1087_ - i_1072_];
		int i_1090_ = i_1075_;
		if (i > i_1088_) {
		    int i_1091_ = i - i_1088_;
		    if (i_1091_ >= i_1089_) {
			i_1073_ += i_1075_ + i_1078_;
			i_1079_ += i_1075_ + i_1077_;
			continue;
		    }
		    i_1089_ -= i_1091_;
		} else {
		    int i_1092_ = i_1088_ - i;
		    if (i_1092_ >= i_1075_) {
			i_1073_ += i_1075_ + i_1078_;
			i_1079_ += i_1075_ + i_1077_;
			continue;
		    }
		    i_1073_ += i_1092_;
		    i_1090_ -= i_1092_;
		    i_1079_ += i_1092_;
		}
		int i_1093_ = 0;
		if (i_1090_ < i_1089_)
		    i_1089_ = i_1090_;
		else
		    i_1093_ = i_1090_ - i_1089_;
		for (int i_1094_ = -i_1089_; i_1094_ < 0; i_1094_++) {
		    int i_1095_ = aByteArray9934[i_1073_++];
		    if (i_1095_ != 0)
			is_1084_[i_1079_++] = anIntArray9935[i_1095_ & 0xff];
		    else
			i_1079_++;
		}
		i_1073_ += i_1093_ + i_1078_;
		i_1079_ += i_1093_ + i_1077_;
	    }
	}
    }