final Class133 method343(int ai[][], boolean flag, int i, int j, Class27_Sub1 class27Sub1, int k, int l, int i1, int j1, int k1, int ai1[][], int l1, Animation animation, int i2) {
        long l2;
        if (anIntArray574 != null) {
            l2 = ((k << 3) + (id << 10)) - -l1;
        } else {
            l2 = l1 + (id << 10);
        }
        Model model = (Model) CacheFileWorker.aMRUNodes_3737.getObjectForID(l2);
        if (model == null) {
            Class39_Sub2 class39Sub2 = method342(l1, k, (byte) -55);
            if (class39Sub2 == null) {
                return null;
            }
            model = new Model(class39Sub2, 64 + anInt557, 768 - -(5 * anInt617), -50, -10, -50);
            CacheFileWorker.aMRUNodes_3737.addObject(l2, model);
        }
        boolean flag1 = false;
        if (animation != null) {
            flag1 = true;
            model = (Model) animation.method968(model, l, j, l1, -100, k1);
        }
        if (k == 10 && l1 > 3) {
            if (!flag1) {
                model = (Model) model.method502(true, true, true);
                flag1 = true;
            }
            model.method504(256);
        }
        if (aByte606 != 0) {
            if (!flag1) {
                model = (Model) model.method502(true, true, true);
                boolean flag2 = true;
            }
            model = model.method519(aByte606, aShort585, ai, ai1, j1, i2, i, false);
        }
        Class142_Sub8_Sub5.aClass133_3997.aGameObject_2206 = model;
        return Class142_Sub8_Sub5.aClass133_3997;
    }