private final void method650(boolean bool, boolean bool_616_, int i,
				 int i_617_) {
	if (aClass6Array5361 != null) {
	    for (int i_618_ = 0; i_618_ < amountPolygons; i_618_++) {
		Class6 class6 = aClass6Array5361[i_618_];
		anIntArray5400[((Class6) class6).anInt144] = i_618_;
	    }
	}
	if (aBoolean5382 || aClass6Array5361 != null) {
	    if ((mask & 0x100) == 0 && aShortArray5327 != null) {
		for (int i_619_ = 0; i_619_ < anInt5351; i_619_++) {
		    short i_620_ = aShortArray5327[i_619_];
		    method643(i_620_, bool, bool_616_);
		}
	    } else {
		for (int i_621_ = 0; i_621_ < anInt5351; i_621_++) {
		    if (!method629(i_621_) && !method638(i_621_))
			method643(i_621_, bool, bool_616_);
		}
		if (aByteArray5358 == null) {
		    for (int i_622_ = 0; i_622_ < anInt5351; i_622_++) {
			if (method629(i_622_) || method638(i_622_))
			    method643(i_622_, bool, bool_616_);
		    }
		} else {
		    for (int i_623_ = 0; i_623_ < 12; i_623_++) {
			for (int i_624_ = 0; i_624_ < anInt5351; i_624_++) {
			    if (aByteArray5358[i_624_] == i_623_
				&& (method629(i_624_) || method638(i_624_)))
				method643(i_624_, bool, bool_616_);
			}
		    }
		}
	    }
	} else {
	    for (int i_625_ = 0; i_625_ < anInt5351; i_625_++)
		method643(i_625_, bool, bool_616_);
	}
    }