CrackMe.apk
Download file
package com.facebook.imagepipeline.bitmaps;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.RectF;
import android.os.Build;
import android.util.DisplayMetrics;
import androidx.core.view.ViewCompat;
import com.facebook.common.internal.Preconditions;
import com.facebook.common.references.CloseableReference;
import javax.annotation.Nullable;
public abstract class PlatformBitmapFactory {
public abstract CloseableReference<Bitmap> createBitmapInternal(int i, int i2, Bitmap.Config config);
public CloseableReference<Bitmap> createBitmap(int i, int i2, Bitmap.Config config) {
return createBitmap(i, i2, config, (Object) null);
}
public CloseableReference<Bitmap> createBitmap(int i, int i2) {
return createBitmap(i, i2, Bitmap.Config.ARGB_8888);
}
public CloseableReference<Bitmap> createBitmap(int i, int i2, Bitmap.Config config, @Nullable Object obj) {
return createBitmapInternal(i, i2, config);
}
public CloseableReference<Bitmap> createBitmap(int i, int i2, @Nullable Object obj) {
return createBitmap(i, i2, Bitmap.Config.ARGB_8888, obj);
}
public CloseableReference<Bitmap> createBitmap(Bitmap bitmap) {
return createBitmap(bitmap, (Object) null);
}
public CloseableReference<Bitmap> createBitmap(Bitmap bitmap, @Nullable Object obj) {
return createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), obj);
}
public CloseableReference<Bitmap> createBitmap(Bitmap bitmap, int i, int i2, int i3, int i4) {
return createBitmap(bitmap, i, i2, i3, i4, (Object) null);
}
public CloseableReference<Bitmap> createBitmap(Bitmap bitmap, int i, int i2, int i3, int i4, @Nullable Object obj) {
return createBitmap(bitmap, i, i2, i3, i4, (Matrix) null, false, obj);
}
public CloseableReference<Bitmap> createBitmap(Bitmap bitmap, int i, int i2, int i3, int i4, @Nullable Matrix matrix, boolean z) {
return createBitmap(bitmap, i, i2, i3, i4, matrix, z, (Object) null);
}
public CloseableReference<Bitmap> createScaledBitmap(Bitmap bitmap, int i, int i2, boolean z) {
return createScaledBitmap(bitmap, i, i2, z, (Object) null);
}
public CloseableReference<Bitmap> createScaledBitmap(Bitmap bitmap, int i, int i2, boolean z, @Nullable Object obj) {
checkWidthHeight(i, i2);
Matrix matrix = new Matrix();
int width = bitmap.getWidth();
int height = bitmap.getHeight();
matrix.setScale(((float) i) / ((float) width), ((float) i2) / ((float) height));
return createBitmap(bitmap, 0, 0, width, height, matrix, z, obj);
}
public CloseableReference<Bitmap> createBitmap(Bitmap bitmap, int i, int i2, int i3, int i4, @Nullable Matrix matrix, boolean z, @Nullable Object obj) {
Canvas canvas;
CloseableReference<Bitmap> closeableReference;
Paint paint;
Bitmap bitmap2 = bitmap;
int i5 = i;
int i6 = i2;
int i7 = i3;
int i8 = i4;
Matrix matrix2 = matrix;
Preconditions.checkNotNull(bitmap2, "Source bitmap cannot be null");
checkXYSign(i, i2);
checkWidthHeight(i3, i4);
checkFinalImageBounds(bitmap, i, i2, i3, i4);
Rect rect = new Rect(i5, i6, i5 + i7, i6 + i8);
RectF rectF = new RectF(0.0f, 0.0f, (float) i7, (float) i8);
Bitmap.Config suitableBitmapConfig = getSuitableBitmapConfig(bitmap);
if (matrix2 == null || matrix.isIdentity()) {
closeableReference = createBitmap(i3, i4, suitableBitmapConfig, bitmap.hasAlpha(), obj);
setPropertyFromSourceBitmap(bitmap2, closeableReference.get());
canvas = new Canvas(closeableReference.get());
paint = null;
} else {
boolean z2 = !matrix.rectStaysRect();
RectF rectF2 = new RectF();
matrix2.mapRect(rectF2, rectF);
int round = Math.round(rectF2.width());
int round2 = Math.round(rectF2.height());
if (z2) {
suitableBitmapConfig = Bitmap.Config.ARGB_8888;
}
closeableReference = createBitmap(round, round2, suitableBitmapConfig, z2 || bitmap.hasAlpha(), obj);
setPropertyFromSourceBitmap(bitmap2, closeableReference.get());
canvas = new Canvas(closeableReference.get());
canvas.translate(-rectF2.left, -rectF2.top);
canvas.concat(matrix2);
paint = new Paint();
paint.setFilterBitmap(z);
if (z2) {
paint.setAntiAlias(true);
}
}
canvas.drawBitmap(bitmap2, rect, rectF, paint);
canvas.setBitmap((Bitmap) null);
return closeableReference;
}
public CloseableReference<Bitmap> createBitmap(DisplayMetrics displayMetrics, int i, int i2, Bitmap.Config config) {
return createBitmap(displayMetrics, i, i2, config, (Object) null);
}
public CloseableReference<Bitmap> createBitmap(DisplayMetrics displayMetrics, int i, int i2, Bitmap.Config config, @Nullable Object obj) {
return createBitmap(displayMetrics, i, i2, config, true, obj);
}
private CloseableReference<Bitmap> createBitmap(int i, int i2, Bitmap.Config config, boolean z) {
return createBitmap(i, i2, config, z, (Object) null);
}
private CloseableReference<Bitmap> createBitmap(int i, int i2, Bitmap.Config config, boolean z, @Nullable Object obj) {
return createBitmap((DisplayMetrics) null, i, i2, config, z, obj);
}
private CloseableReference<Bitmap> createBitmap(DisplayMetrics displayMetrics, int i, int i2, Bitmap.Config config, boolean z) {
return createBitmap(displayMetrics, i, i2, config, z, (Object) null);
}
private CloseableReference<Bitmap> createBitmap(@Nullable DisplayMetrics displayMetrics, int i, int i2, Bitmap.Config config, boolean z, @Nullable Object obj) {
checkWidthHeight(i, i2);
CloseableReference<Bitmap> createBitmapInternal = createBitmapInternal(i, i2, config);
Bitmap bitmap = createBitmapInternal.get();
if (displayMetrics != null) {
bitmap.setDensity(displayMetrics.densityDpi);
}
if (Build.VERSION.SDK_INT >= 12) {
bitmap.setHasAlpha(z);
}
if (config == Bitmap.Config.ARGB_8888 && !z) {
bitmap.eraseColor(ViewCompat.MEASURED_STATE_MASK);
}
return createBitmapInternal;
}
public CloseableReference<Bitmap> createBitmap(int[] iArr, int i, int i2, Bitmap.Config config) {
return createBitmap(iArr, i, i2, config, (Object) null);
}
public CloseableReference<Bitmap> createBitmap(int[] iArr, int i, int i2, Bitmap.Config config, @Nullable Object obj) {
CloseableReference<Bitmap> createBitmapInternal = createBitmapInternal(i, i2, config);
createBitmapInternal.get().setPixels(iArr, 0, i, 0, 0, i, i2);
return createBitmapInternal;
}
public CloseableReference<Bitmap> createBitmap(DisplayMetrics displayMetrics, int[] iArr, int i, int i2, Bitmap.Config config) {
return createBitmap(displayMetrics, iArr, i, i2, config, (Object) null);
}
public CloseableReference<Bitmap> createBitmap(DisplayMetrics displayMetrics, int[] iArr, int i, int i2, Bitmap.Config config, @Nullable Object obj) {
return createBitmap(displayMetrics, iArr, 0, i, i, i2, config, obj);
}
public CloseableReference<Bitmap> createBitmap(DisplayMetrics displayMetrics, int[] iArr, int i, int i2, int i3, int i4, Bitmap.Config config) {
return createBitmap(displayMetrics, iArr, i, i2, i3, i4, config, (Object) null);
}
public CloseableReference<Bitmap> createBitmap(DisplayMetrics displayMetrics, int[] iArr, int i, int i2, int i3, int i4, Bitmap.Config config, @Nullable Object obj) {
CloseableReference<Bitmap> createBitmap = createBitmap(displayMetrics, i3, i4, config, obj);
createBitmap.get().setPixels(iArr, i, i2, 0, 0, i3, i4);
return createBitmap;
}
private static Bitmap.Config getSuitableBitmapConfig(Bitmap bitmap) {
Bitmap.Config config = Bitmap.Config.ARGB_8888;
Bitmap.Config config2 = bitmap.getConfig();
if (config2 == null) {
return config;
}
int i = AnonymousClass1.$SwitchMap$android$graphics$Bitmap$Config[config2.ordinal()];
if (i == 1) {
return Bitmap.Config.RGB_565;
}
if (i != 2) {
return Bitmap.Config.ARGB_8888;
}
return Bitmap.Config.ALPHA_8;
}
/* renamed from: com.facebook.imagepipeline.bitmaps.PlatformBitmapFactory$1 reason: invalid class name */
static /* synthetic */ class AnonymousClass1 {
static final /* synthetic */ int[] $SwitchMap$android$graphics$Bitmap$Config;
/* JADX WARNING: Can't wrap try/catch for region: R(8:0|1|2|3|4|5|6|(3:7|8|10)) */
/* JADX WARNING: Failed to process nested try/catch */
/* JADX WARNING: Missing exception handler attribute for start block: B:3:0x0012 */
/* JADX WARNING: Missing exception handler attribute for start block: B:5:0x001d */
/* JADX WARNING: Missing exception handler attribute for start block: B:7:0x0028 */
static {
/*
android.graphics.Bitmap$Config[] r0 = android.graphics.Bitmap.Config.values()
int r0 = r0.length
int[] r0 = new int[r0]
$SwitchMap$android$graphics$Bitmap$Config = r0
android.graphics.Bitmap$Config r1 = android.graphics.Bitmap.Config.RGB_565 // Catch:{ NoSuchFieldError -> 0x0012 }
int r1 = r1.ordinal() // Catch:{ NoSuchFieldError -> 0x0012 }
r2 = 1
r0[r1] = r2 // Catch:{ NoSuchFieldError -> 0x0012 }
L_0x0012:
int[] r0 = $SwitchMap$android$graphics$Bitmap$Config // Catch:{ NoSuchFieldError -> 0x001d }
android.graphics.Bitmap$Config r1 = android.graphics.Bitmap.Config.ALPHA_8 // Catch:{ NoSuchFieldError -> 0x001d }
int r1 = r1.ordinal() // Catch:{ NoSuchFieldError -> 0x001d }
r2 = 2
r0[r1] = r2 // Catch:{ NoSuchFieldError -> 0x001d }
L_0x001d:
int[] r0 = $SwitchMap$android$graphics$Bitmap$Config // Catch:{ NoSuchFieldError -> 0x0028 }
android.graphics.Bitmap$Config r1 = android.graphics.Bitmap.Config.ARGB_4444 // Catch:{ NoSuchFieldError -> 0x0028 }
int r1 = r1.ordinal() // Catch:{ NoSuchFieldError -> 0x0028 }
r2 = 3
r0[r1] = r2 // Catch:{ NoSuchFieldError -> 0x0028 }
L_0x0028:
int[] r0 = $SwitchMap$android$graphics$Bitmap$Config // Catch:{ NoSuchFieldError -> 0x0033 }
android.graphics.Bitmap$Config r1 = android.graphics.Bitmap.Config.ARGB_8888 // Catch:{ NoSuchFieldError -> 0x0033 }
int r1 = r1.ordinal() // Catch:{ NoSuchFieldError -> 0x0033 }
r2 = 4
r0[r1] = r2 // Catch:{ NoSuchFieldError -> 0x0033 }
L_0x0033:
return
*/
throw new UnsupportedOperationException("Method not decompiled: com.facebook.imagepipeline.bitmaps.PlatformBitmapFactory.AnonymousClass1.<clinit>():void");
}
}
private static void checkWidthHeight(int i, int i2) {
boolean z = true;
Preconditions.checkArgument(i > 0, "width must be > 0");
if (i2 <= 0) {
z = false;
}
Preconditions.checkArgument(z, "height must be > 0");
}
private static void checkXYSign(int i, int i2) {
boolean z = true;
Preconditions.checkArgument(i >= 0, "x must be >= 0");
if (i2 < 0) {
z = false;
}
Preconditions.checkArgument(z, "y must be >= 0");
}
private static void checkFinalImageBounds(Bitmap bitmap, int i, int i2, int i3, int i4) {
boolean z = true;
Preconditions.checkArgument(i + i3 <= bitmap.getWidth(), "x + width must be <= bitmap.width()");
if (i2 + i4 > bitmap.getHeight()) {
z = false;
}
Preconditions.checkArgument(z, "y + height must be <= bitmap.height()");
}
private static void setPropertyFromSourceBitmap(Bitmap bitmap, Bitmap bitmap2) {
bitmap2.setDensity(bitmap.getDensity());
if (Build.VERSION.SDK_INT >= 12) {
bitmap2.setHasAlpha(bitmap.hasAlpha());
}
if (Build.VERSION.SDK_INT >= 19) {
bitmap2.setPremultiplied(bitmap.isPremultiplied());
}
}
}
Download file