final void parseMapArchive(ByteBuffer buffer, int mX, int mY, int baseRx, int baseRy, Class361[] class361s) {
	try {
	    anInt3107++;
	    if (!aBoolean3109) {
		for (int z = 0; (z ^ 0xffffffff) > -5; z++) {
		    Class361 class361 = class361s[z];
		    for (int xOff = 0; xOff < 64; xOff++) {
			for (int yOff = 0; yOff < 64; yOff++) {
			    int x = xOff + mX;
			    int y = mY + yOff;
			    if (x >= 0 && ((maximumX ^ 0xffffffff) < (x ^ 0xffffffff)) && (y ^ 0xffffffff) <= -1 && ((y ^ 0xffffffff) > (maximumY ^ 0xffffffff)))
				class361.method3501((byte) 107, y, x);
			}
		    }
		}
	    }
	    int cX = mX + baseRx;
	    int cY = baseRy + mY;
	    for (int z = 0; maximumZ > z; z++) {
		for (int xOff = 0; xOff < 64; xOff++) {
		    for (int yOff = 0; yOff < 64; yOff++)
			parseMapArchive(buffer, mX + xOff, yOff + mY, z, 0, 0, cX + xOff, cY + yOff, 0, false);
		}
	    }
	} catch (RuntimeException runtimeexception) {
	    throw Class348_Sub17.method2929(runtimeexception,
					    ("sr.I("
					     + (buffer != null
						? "{...}" : "null")
					     + ',' + mX + ','
					     + (class361s != null ? "{...}"
						: "null")
					     + ',' + baseRy + ',' + baseRx
					     + ',' + mY 
					     + ')'));
	}
    }