.class public Lv0/b;
.super Ljava/lang/Object;
.source ""


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lv0/b$b;,
        Lv0/b$d;,
        Lv0/b$c;,
        Lv0/b$e;
    }
.end annotation


# static fields
.field public static final A:[B

.field public static final B:[B

.field public static final C:[B

.field public static final D:[B

.field public static final E:[B

.field public static final F:[Ljava/lang/String;

.field public static final G:[I

.field public static final H:[B

.field public static final I:Lv0/b$d;

.field public static final J:[[Lv0/b$d;

.field public static final K:[Lv0/b$d;

.field public static final L:[Ljava/util/HashMap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "[",
            "Ljava/util/HashMap<",
            "Ljava/lang/Integer;",
            "Landroidx/exifinterface/media/ExifInterface$ExifTag;",
            ">;"
        }
    .end annotation
.end field

.field public static final M:[Ljava/util/HashMap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "[",
            "Ljava/util/HashMap<",
            "Ljava/lang/String;",
            "Landroidx/exifinterface/media/ExifInterface$ExifTag;",
            ">;"
        }
    .end annotation
.end field

.field public static final N:Ljava/util/HashSet;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/HashSet<",
            "Ljava/lang/String;",
            ">;"
        }
    .end annotation
.end field

.field public static final O:Ljava/util/HashMap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/HashMap<",
            "Ljava/lang/Integer;",
            "Ljava/lang/Integer;",
            ">;"
        }
    .end annotation
.end field

.field public static final P:Ljava/nio/charset/Charset;

.field public static final Q:[B

.field public static final R:[B

.field public static final n:Z

.field public static final o:Ljava/util/List;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/List<",
            "Ljava/lang/Integer;",
            ">;"
        }
    .end annotation
.end field

.field public static final p:Ljava/util/List;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/List<",
            "Ljava/lang/Integer;",
            ">;"
        }
    .end annotation
.end field

.field public static final q:[I

.field public static final r:[I

.field public static final s:[B

.field public static final t:[B

.field public static final u:[B

.field public static final v:[B

.field public static final w:[B

.field public static final x:[B

.field public static final y:[B

.field public static final z:[B


# instance fields
.field public a:Ljava/io/FileDescriptor;

.field public b:Landroid/content/res/AssetManager$AssetInputStream;

.field public c:I

.field public d:Z

.field public final e:[Ljava/util/HashMap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "[",
            "Ljava/util/HashMap<",
            "Ljava/lang/String;",
            "Landroidx/exifinterface/media/ExifInterface$ExifAttribute;",
            ">;"
        }
    .end annotation
.end field

.field public f:Ljava/util/Set;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Set<",
            "Ljava/lang/Integer;",
            ">;"
        }
    .end annotation
.end field

.field public g:Ljava/nio/ByteOrder;

.field public h:Z

.field public i:I

.field public j:I

.field public k:I

.field public l:I

.field public m:I


# direct methods
.method public static constructor <clinit>()V
    .registers 30

    const/4 v0, 0x3

    invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    const-string v2, "ExifInterface"

    invoke-static {v2, v0}, Landroid/util/Log;->isLoggable(Ljava/lang/String;I)Z

    move-result v2

    sput-boolean v2, Lv0/b;->n:Z

    const/4 v2, 0x4

    new-array v3, v2, [Ljava/lang/Integer;

    const/4 v4, 0x1

    invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v5

    const/4 v6, 0x0

    aput-object v5, v3, v6

    const/4 v7, 0x6

    invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v8

    aput-object v8, v3, v4

    const/4 v8, 0x2

    invoke-static {v8}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v9

    aput-object v1, v3, v8

    const/16 v10, 0x8

    invoke-static {v10}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v11

    aput-object v11, v3, v0

    invoke-static {v3}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;

    move-result-object v3

    sput-object v3, Lv0/b;->o:Ljava/util/List;

    new-array v3, v2, [Ljava/lang/Integer;

    aput-object v9, v3, v6

    const/4 v12, 0x7

    invoke-static {v12}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v13

    aput-object v13, v3, v4

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v14

    aput-object v14, v3, v8

    const/4 v14, 0x5

    invoke-static {v14}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v15

    aput-object v15, v3, v0

    invoke-static {v3}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;

    move-result-object v3

    sput-object v3, Lv0/b;->p:Ljava/util/List;

    new-array v3, v0, [I

    fill-array-data v3, :array_c6c

    sput-object v3, Lv0/b;->q:[I

    new-array v3, v4, [I

    aput v10, v3, v6

    sput-object v3, Lv0/b;->r:[I

    new-array v3, v0, [B

    fill-array-data v3, :array_c76

    sput-object v3, Lv0/b;->s:[B

    new-array v3, v2, [B

    fill-array-data v3, :array_c7c

    sput-object v3, Lv0/b;->t:[B

    new-array v3, v2, [B

    fill-array-data v3, :array_c82

    sput-object v3, Lv0/b;->u:[B

    new-array v3, v2, [B

    fill-array-data v3, :array_c88

    sput-object v3, Lv0/b;->v:[B

    new-array v3, v7, [B

    fill-array-data v3, :array_c8e

    sput-object v3, Lv0/b;->w:[B

    const/16 v3, 0xa

    new-array v12, v3, [B

    fill-array-data v12, :array_c96

    sput-object v12, Lv0/b;->x:[B

    new-array v12, v10, [B

    fill-array-data v12, :array_ca0

    sput-object v12, Lv0/b;->y:[B

    new-array v12, v2, [B

    fill-array-data v12, :array_ca8

    sput-object v12, Lv0/b;->z:[B

    new-array v12, v2, [B

    fill-array-data v12, :array_cae

    sput-object v12, Lv0/b;->A:[B

    new-array v12, v2, [B

    fill-array-data v12, :array_cb4

    sput-object v12, Lv0/b;->B:[B

    new-array v12, v2, [B

    fill-array-data v12, :array_cba

    sput-object v12, Lv0/b;->C:[B

    new-array v12, v2, [B

    fill-array-data v12, :array_cc0

    sput-object v12, Lv0/b;->D:[B

    new-array v12, v2, [B

    fill-array-data v12, :array_cc6

    sput-object v12, Lv0/b;->E:[B

    invoke-static {}, Ljava/nio/charset/Charset;->defaultCharset()Ljava/nio/charset/Charset;

    move-result-object v12

    const-string v3, "VP8X"

    invoke-virtual {v3, v12}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B

    invoke-static {}, Ljava/nio/charset/Charset;->defaultCharset()Ljava/nio/charset/Charset;

    move-result-object v3

    const-string v12, "VP8L"

    invoke-virtual {v12, v3}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B

    invoke-static {}, Ljava/nio/charset/Charset;->defaultCharset()Ljava/nio/charset/Charset;

    move-result-object v3

    const-string v12, "VP8 "

    invoke-virtual {v12, v3}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B

    invoke-static {}, Ljava/nio/charset/Charset;->defaultCharset()Ljava/nio/charset/Charset;

    move-result-object v3

    const-string v12, "ANIM"

    invoke-virtual {v12, v3}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B

    invoke-static {}, Ljava/nio/charset/Charset;->defaultCharset()Ljava/nio/charset/Charset;

    move-result-object v3

    const-string v12, "ANMF"

    invoke-virtual {v12, v3}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B

    invoke-static {}, Ljava/nio/charset/Charset;->defaultCharset()Ljava/nio/charset/Charset;

    move-result-object v3

    const-string v12, "XMP "

    invoke-virtual {v12, v3}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B

    const-string v16, ""

    const-string v17, "BYTE"

    const-string v18, "STRING"

    const-string v19, "USHORT"

    const-string v20, "ULONG"

    const-string v21, "URATIONAL"

    const-string v22, "SBYTE"

    const-string v23, "UNDEFINED"

    const-string v24, "SSHORT"

    const-string v25, "SLONG"

    const-string v26, "SRATIONAL"

    const-string v27, "SINGLE"

    const-string v28, "DOUBLE"

    const-string v29, "IFD"

    filled-new-array/range {v16 .. v29}, [Ljava/lang/String;

    move-result-object v3

    sput-object v3, Lv0/b;->F:[Ljava/lang/String;

    const/16 v3, 0xe

    new-array v12, v3, [I

    fill-array-data v12, :array_ccc

    sput-object v12, Lv0/b;->G:[I

    new-array v12, v10, [B

    fill-array-data v12, :array_cec

    sput-object v12, Lv0/b;->H:[B

    const/16 v12, 0x2a

    new-array v12, v12, [Lv0/b$d;

    new-instance v3, Lv0/b$d;

    const-string v10, "NewSubfileType"

    const/16 v7, 0xfe

    invoke-direct {v3, v10, v7, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v7, "SubfileType"

    const/16 v10, 0xff

    invoke-direct {v3, v7, v10, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v3, v12, v4

    new-instance v3, Lv0/b$d;

    const-string v7, "ImageWidth"

    const/16 v10, 0x100

    invoke-direct {v3, v7, v10, v0, v2}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    aput-object v3, v12, v8

    new-instance v3, Lv0/b$d;

    const-string v7, "ImageLength"

    const/16 v10, 0x101

    invoke-direct {v3, v7, v10, v0, v2}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    aput-object v3, v12, v0

    new-instance v3, Lv0/b$d;

    const-string v7, "BitsPerSample"

    const/16 v10, 0x102

    invoke-direct {v3, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v3, v12, v2

    new-instance v3, Lv0/b$d;

    const-string v7, "Compression"

    const/16 v10, 0x103

    invoke-direct {v3, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v3, v12, v14

    new-instance v3, Lv0/b$d;

    const-string v7, "PhotometricInterpretation"

    const/16 v10, 0x106

    invoke-direct {v3, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v7, 0x6

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "ImageDescription"

    const/16 v10, 0x10e

    invoke-direct {v3, v7, v10, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v7, 0x7

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "Make"

    const/16 v10, 0x10f

    invoke-direct {v3, v7, v10, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0x8

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "Model"

    const/16 v10, 0x110

    invoke-direct {v3, v7, v10, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0x9

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v10, "StripOffsets"

    const/16 v7, 0x111

    invoke-direct {v3, v10, v7, v0, v2}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/16 v7, 0xa

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "Orientation"

    const/16 v10, 0x112

    invoke-direct {v3, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0xb

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "SamplesPerPixel"

    const/16 v10, 0x115

    invoke-direct {v3, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0xc

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "RowsPerStrip"

    const/16 v10, 0x116

    invoke-direct {v3, v7, v10, v0, v2}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/16 v7, 0xd

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "StripByteCounts"

    const/16 v10, 0x117

    invoke-direct {v3, v7, v10, v0, v2}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/16 v7, 0xe

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "XResolution"

    const/16 v10, 0x11a

    invoke-direct {v3, v7, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0xf

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "YResolution"

    const/16 v10, 0x11b

    invoke-direct {v3, v7, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0x10

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "PlanarConfiguration"

    const/16 v10, 0x11c

    invoke-direct {v3, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0x11

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "ResolutionUnit"

    const/16 v10, 0x128

    invoke-direct {v3, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0x12

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "TransferFunction"

    const/16 v10, 0x12d

    invoke-direct {v3, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0x13

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "Software"

    const/16 v10, 0x131

    invoke-direct {v3, v7, v10, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0x14

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v7, "DateTime"

    const/16 v10, 0x132

    invoke-direct {v3, v7, v10, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0x15

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v10, "Artist"

    const/16 v7, 0x13b

    invoke-direct {v3, v10, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0x16

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v10, "WhitePoint"

    const/16 v7, 0x13e

    invoke-direct {v3, v10, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v7, 0x17

    aput-object v3, v12, v7

    new-instance v3, Lv0/b$d;

    const-string v10, "PrimaryChromaticities"

    const/16 v6, 0x13f

    invoke-direct {v3, v10, v6, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x18

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v10, "SubIFDPointer"

    const/16 v6, 0x14a

    invoke-direct {v3, v10, v6, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x19

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v10, "JPEGInterchangeFormat"

    const/16 v6, 0x201

    invoke-direct {v3, v10, v6, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1a

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v10, "JPEGInterchangeFormatLength"

    const/16 v6, 0x202

    invoke-direct {v3, v10, v6, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1b

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v10, "YCbCrCoefficients"

    const/16 v6, 0x211

    invoke-direct {v3, v10, v6, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1c

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v10, "YCbCrSubSampling"

    const/16 v6, 0x212

    invoke-direct {v3, v10, v6, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1d

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v10, "YCbCrPositioning"

    const/16 v6, 0x213

    invoke-direct {v3, v10, v6, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1e

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v10, "ReferenceBlackWhite"

    const/16 v6, 0x214

    invoke-direct {v3, v10, v6, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1f

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v10, "Copyright"

    const v6, 0x8298

    invoke-direct {v3, v10, v6, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x20

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v6, "ExifIFDPointer"

    const v10, 0x8769

    invoke-direct {v3, v6, v10, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x21

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v6, "GPSInfoIFDPointer"

    const v10, 0x8825

    invoke-direct {v3, v6, v10, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x22

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v6, "SensorTopBorder"

    invoke-direct {v3, v6, v2, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x23

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v6, "SensorLeftBorder"

    invoke-direct {v3, v6, v14, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x24

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v6, "SensorBottomBorder"

    const/4 v10, 0x6

    invoke-direct {v3, v6, v10, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x25

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v6, "SensorRightBorder"

    const/4 v10, 0x7

    invoke-direct {v3, v6, v10, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x26

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v6, "ISO"

    invoke-direct {v3, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x27

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v6, "JpgFromRaw"

    const/16 v7, 0x2e

    invoke-direct {v3, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x28

    aput-object v3, v12, v6

    new-instance v3, Lv0/b$d;

    const-string v6, "Xmp"

    const/16 v7, 0x2bc

    invoke-direct {v3, v6, v7, v4}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x29

    aput-object v3, v12, v6

    const/16 v3, 0x4a

    new-array v3, v3, [Lv0/b$d;

    new-instance v6, Lv0/b$d;

    const-string v7, "ExposureTime"

    const v10, 0x829a

    invoke-direct {v6, v7, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v7, 0x0

    aput-object v6, v3, v7

    new-instance v6, Lv0/b$d;

    const-string v7, "FNumber"

    const v10, 0x829d

    invoke-direct {v6, v7, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v6, v3, v4

    new-instance v6, Lv0/b$d;

    const-string v7, "ExposureProgram"

    const v10, 0x8822

    invoke-direct {v6, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v6, v3, v8

    new-instance v6, Lv0/b$d;

    const-string v7, "SpectralSensitivity"

    const v10, 0x8824

    invoke-direct {v6, v7, v10, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v6, v3, v0

    new-instance v6, Lv0/b$d;

    const-string v7, "PhotographicSensitivity"

    const v10, 0x8827

    invoke-direct {v6, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v6, v3, v2

    new-instance v6, Lv0/b$d;

    const-string v7, "OECF"

    const v10, 0x8828

    const/4 v4, 0x7

    invoke-direct {v6, v7, v10, v4}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v6, v3, v14

    new-instance v6, Lv0/b$d;

    const-string v7, "SensitivityType"

    const v10, 0x8830

    invoke-direct {v6, v7, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v7, 0x6

    aput-object v6, v3, v7

    new-instance v6, Lv0/b$d;

    const-string v7, "StandardOutputSensitivity"

    const v10, 0x8831

    invoke-direct {v6, v7, v10, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v6, v3, v4

    new-instance v4, Lv0/b$d;

    const-string v6, "RecommendedExposureIndex"

    const v7, 0x8832

    invoke-direct {v4, v6, v7, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x8

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ISOSpeed"

    const v7, 0x8833

    invoke-direct {v4, v6, v7, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x9

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ISOSpeedLatitudeyyy"

    const v7, 0x8834

    invoke-direct {v4, v6, v7, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0xa

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ISOSpeedLatitudezzz"

    const v7, 0x8835

    invoke-direct {v4, v6, v7, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0xb

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ExifVersion"

    const v7, 0x9000

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0xc

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "DateTimeOriginal"

    const v7, 0x9003

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0xd

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "DateTimeDigitized"

    const v7, 0x9004

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0xe

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "OffsetTime"

    const v7, 0x9010

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0xf

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "OffsetTimeOriginal"

    const v7, 0x9011

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x10

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "OffsetTimeDigitized"

    const v7, 0x9012

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x11

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ComponentsConfiguration"

    const v7, 0x9101

    const/4 v10, 0x7

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x12

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "CompressedBitsPerPixel"

    const v7, 0x9102

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x13

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ShutterSpeedValue"

    const v7, 0x9201

    const/16 v10, 0xa

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x14

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ApertureValue"

    const v7, 0x9202

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x15

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "BrightnessValue"

    const v7, 0x9203

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x16

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ExposureBiasValue"

    const v7, 0x9204

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x17

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "MaxApertureValue"

    const v7, 0x9205

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x18

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SubjectDistance"

    const v7, 0x9206

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x19

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "MeteringMode"

    const v7, 0x9207

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1a

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "LightSource"

    const v7, 0x9208

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1b

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "Flash"

    const v7, 0x9209

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1c

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "FocalLength"

    const v7, 0x920a

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1d

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SubjectArea"

    const v7, 0x9214

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1e

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "MakerNote"

    const v7, 0x927c

    const/4 v10, 0x7

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x1f

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "UserComment"

    const v7, 0x9286

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x20

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SubSecTime"

    const v7, 0x9290

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x21

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SubSecTimeOriginal"

    const v7, 0x9291

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x22

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SubSecTimeDigitized"

    const v7, 0x9292

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x23

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "FlashpixVersion"

    const v7, 0xa000

    const/4 v10, 0x7

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x24

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ColorSpace"

    const v7, 0xa001

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x25

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "PixelXDimension"

    const v7, 0xa002

    invoke-direct {v4, v6, v7, v0, v2}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/16 v6, 0x26

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "PixelYDimension"

    const v7, 0xa003

    invoke-direct {v4, v6, v7, v0, v2}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/16 v6, 0x27

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "RelatedSoundFile"

    const v7, 0xa004

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x28

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "InteroperabilityIFDPointer"

    const v7, 0xa005

    invoke-direct {v4, v6, v7, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x29

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "FlashEnergy"

    const v7, 0xa20b

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x2a

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SpatialFrequencyResponse"

    const v7, 0xa20c

    const/4 v10, 0x7

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x2b

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "FocalPlaneXResolution"

    const v7, 0xa20e

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x2c

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "FocalPlaneYResolution"

    const v7, 0xa20f

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x2d

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "FocalPlaneResolutionUnit"

    const v7, 0xa210

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x2e

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SubjectLocation"

    const v7, 0xa214

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x2f

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ExposureIndex"

    const v7, 0xa215

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x30

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SensingMethod"

    const v7, 0xa217

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x31

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "FileSource"

    const v7, 0xa300

    const/4 v10, 0x7

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x32

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SceneType"

    const v7, 0xa301

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x33

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "CFAPattern"

    const v7, 0xa302

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x34

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "CustomRendered"

    const v7, 0xa401

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x35

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ExposureMode"

    const v7, 0xa402

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x36

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "WhiteBalance"

    const v7, 0xa403

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x37

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "DigitalZoomRatio"

    const v7, 0xa404

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x38

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "FocalLengthIn35mmFilm"

    const v7, 0xa405

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x39

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SceneCaptureType"

    const v7, 0xa406

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x3a

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "GainControl"

    const v7, 0xa407

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x3b

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "Contrast"

    const v7, 0xa408

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x3c

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "Saturation"

    const v7, 0xa409

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x3d

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "Sharpness"

    const v7, 0xa40a

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x3e

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "DeviceSettingDescription"

    const v7, 0xa40b

    const/4 v10, 0x7

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x3f

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "SubjectDistanceRange"

    const v7, 0xa40c

    invoke-direct {v4, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x40

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "ImageUniqueID"

    const v7, 0xa420

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x41

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "CameraOwnerName"

    const v7, 0xa430

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x42

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "BodySerialNumber"

    const v7, 0xa431

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x43

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "LensSpecification"

    const v7, 0xa432

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x44

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "LensMake"

    const v7, 0xa433

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x45

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "LensModel"

    const v7, 0xa434

    invoke-direct {v4, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x46

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "Gamma"

    const v7, 0xa500

    invoke-direct {v4, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x47

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "DNGVersion"

    const v7, 0xc612

    const/4 v10, 0x1

    invoke-direct {v4, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v6, 0x48

    aput-object v4, v3, v6

    new-instance v4, Lv0/b$d;

    const-string v6, "DefaultCropSize"

    const v7, 0xc620

    invoke-direct {v4, v6, v7, v0, v2}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/16 v6, 0x49

    aput-object v4, v3, v6

    const/16 v4, 0x20

    new-array v4, v4, [Lv0/b$d;

    new-instance v6, Lv0/b$d;

    const-string v7, "GPSVersionID"

    const/4 v2, 0x1

    const/4 v10, 0x0

    invoke-direct {v6, v7, v10, v2}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v6, v4, v10

    new-instance v6, Lv0/b$d;

    const-string v7, "GPSLatitudeRef"

    invoke-direct {v6, v7, v2, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v6, v4, v2

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSLatitude"

    invoke-direct {v2, v6, v8, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v8

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSLongitudeRef"

    invoke-direct {v2, v6, v0, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v0

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSLongitude"

    const/4 v7, 0x4

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSAltitudeRef"

    const/4 v7, 0x1

    invoke-direct {v2, v6, v14, v7}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v14

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSAltitude"

    const/4 v7, 0x6

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSTimeStamp"

    const/4 v7, 0x7

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSSatellites"

    const/16 v7, 0x8

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSStatus"

    const/16 v7, 0x9

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSMeasureMode"

    const/16 v7, 0xa

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDOP"

    const/16 v7, 0xb

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSSpeedRef"

    const/16 v7, 0xc

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSSpeed"

    const/16 v7, 0xd

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSTrackRef"

    const/16 v7, 0xe

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSTrack"

    const/16 v7, 0xf

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSImgDirectionRef"

    const/16 v7, 0x10

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSImgDirection"

    const/16 v7, 0x11

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSMapDatum"

    const/16 v7, 0x12

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDestLatitudeRef"

    const/16 v7, 0x13

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDestLatitude"

    const/16 v7, 0x14

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDestLongitudeRef"

    const/16 v7, 0x15

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDestLongitude"

    const/16 v7, 0x16

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDestBearingRef"

    const/16 v7, 0x17

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDestBearing"

    const/16 v7, 0x18

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDestDistanceRef"

    const/16 v7, 0x19

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDestDistance"

    const/16 v7, 0x1a

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSProcessingMethod"

    const/16 v7, 0x1b

    const/4 v10, 0x7

    invoke-direct {v2, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSAreaInformation"

    const/16 v7, 0x1c

    invoke-direct {v2, v6, v7, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDateStamp"

    const/16 v7, 0x1d

    invoke-direct {v2, v6, v7, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSDifferential"

    const/16 v7, 0x1e

    invoke-direct {v2, v6, v7, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    new-instance v2, Lv0/b$d;

    const-string v6, "GPSHPositioningError"

    const/16 v7, 0x1f

    invoke-direct {v2, v6, v7, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v4, v7

    const/4 v2, 0x1

    new-array v6, v2, [Lv0/b$d;

    new-instance v7, Lv0/b$d;

    const-string v10, "InteroperabilityIndex"

    invoke-direct {v7, v10, v2, v8}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v2, 0x0

    aput-object v7, v6, v2

    const/16 v7, 0x25

    new-array v7, v7, [Lv0/b$d;

    new-instance v10, Lv0/b$d;

    const-string v14, "NewSubfileType"

    const/16 v8, 0xfe

    const/4 v0, 0x4

    invoke-direct {v10, v14, v8, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v10, v7, v2

    new-instance v2, Lv0/b$d;

    const-string v8, "SubfileType"

    const/16 v10, 0xff

    invoke-direct {v2, v8, v10, v0}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v8, 0x1

    aput-object v2, v7, v8

    new-instance v2, Lv0/b$d;

    const-string v8, "ThumbnailImageWidth"

    const/16 v10, 0x100

    const/4 v14, 0x3

    invoke-direct {v2, v8, v10, v14, v0}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/4 v8, 0x2

    aput-object v2, v7, v8

    new-instance v2, Lv0/b$d;

    const-string v8, "ThumbnailImageLength"

    const/16 v10, 0x101

    invoke-direct {v2, v8, v10, v14, v0}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    aput-object v2, v7, v14

    new-instance v2, Lv0/b$d;

    const-string v8, "BitsPerSample"

    const/16 v10, 0x102

    invoke-direct {v2, v8, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v7, v0

    new-instance v0, Lv0/b$d;

    const-string v2, "Compression"

    const/16 v8, 0x103

    invoke-direct {v0, v2, v8, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v2, 0x5

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "PhotometricInterpretation"

    const/16 v8, 0x106

    invoke-direct {v0, v2, v8, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v2, 0x6

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "ImageDescription"

    const/16 v8, 0x10e

    const/4 v10, 0x2

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v2, 0x7

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "Make"

    const/16 v8, 0x10f

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x8

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "Model"

    const/16 v8, 0x110

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x9

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "StripOffsets"

    const/16 v8, 0x111

    const/4 v10, 0x3

    const/4 v14, 0x4

    invoke-direct {v0, v2, v8, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/16 v2, 0xa

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "ThumbnailOrientation"

    const/16 v8, 0x112

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0xb

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "SamplesPerPixel"

    const/16 v8, 0x115

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0xc

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "RowsPerStrip"

    const/16 v8, 0x116

    const/4 v14, 0x4

    invoke-direct {v0, v2, v8, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/16 v2, 0xd

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "StripByteCounts"

    const/16 v8, 0x117

    invoke-direct {v0, v2, v8, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/16 v2, 0xe

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "XResolution"

    const/16 v8, 0x11a

    const/4 v10, 0x5

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0xf

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "YResolution"

    const/16 v8, 0x11b

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x10

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "PlanarConfiguration"

    const/16 v8, 0x11c

    const/4 v10, 0x3

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x11

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "ResolutionUnit"

    const/16 v8, 0x128

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x12

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "TransferFunction"

    const/16 v8, 0x12d

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x13

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "Software"

    const/16 v8, 0x131

    const/4 v10, 0x2

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x14

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "DateTime"

    const/16 v8, 0x132

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x15

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "Artist"

    const/16 v8, 0x13b

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x16

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "WhitePoint"

    const/16 v8, 0x13e

    const/4 v10, 0x5

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x17

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "PrimaryChromaticities"

    const/16 v8, 0x13f

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x18

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "SubIFDPointer"

    const/16 v8, 0x14a

    const/4 v10, 0x4

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x19

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "JPEGInterchangeFormat"

    const/16 v8, 0x201

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x1a

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "JPEGInterchangeFormatLength"

    const/16 v8, 0x202

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x1b

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "YCbCrCoefficients"

    const/16 v8, 0x211

    const/4 v10, 0x5

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x1c

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "YCbCrSubSampling"

    const/16 v8, 0x212

    const/4 v10, 0x3

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x1d

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "YCbCrPositioning"

    const/16 v8, 0x213

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x1e

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "ReferenceBlackWhite"

    const/16 v8, 0x214

    const/4 v10, 0x5

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x1f

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "Copyright"

    const v8, 0x8298

    const/4 v10, 0x2

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x20

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "ExifIFDPointer"

    const v8, 0x8769

    const/4 v10, 0x4

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x21

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "GPSInfoIFDPointer"

    const v8, 0x8825

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x22

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "DNGVersion"

    const v8, 0xc612

    const/4 v10, 0x1

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/16 v2, 0x23

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "DefaultCropSize"

    const v8, 0xc620

    const/4 v10, 0x3

    const/4 v14, 0x4

    invoke-direct {v0, v2, v8, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;III)V

    const/16 v2, 0x24

    aput-object v0, v7, v2

    new-instance v0, Lv0/b$d;

    const-string v2, "StripOffsets"

    const/16 v8, 0x111

    invoke-direct {v0, v2, v8, v10}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    sput-object v0, Lv0/b;->I:Lv0/b$d;

    new-array v0, v10, [Lv0/b$d;

    new-instance v2, Lv0/b$d;

    const-string v8, "ThumbnailImage"

    const/16 v10, 0x100

    const/4 v14, 0x7

    invoke-direct {v2, v8, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v8, 0x0

    aput-object v2, v0, v8

    new-instance v2, Lv0/b$d;

    const-string v8, "CameraSettingsIFDPointer"

    const/16 v10, 0x2020

    const/4 v14, 0x4

    invoke-direct {v2, v8, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v8, 0x1

    aput-object v2, v0, v8

    new-instance v2, Lv0/b$d;

    const-string v8, "ImageProcessingIFDPointer"

    const/16 v10, 0x2040

    invoke-direct {v2, v8, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v8, 0x2

    aput-object v2, v0, v8

    new-array v2, v8, [Lv0/b$d;

    new-instance v8, Lv0/b$d;

    const-string v10, "PreviewImageStart"

    move-object/from16 v16, v11

    const/16 v11, 0x101

    invoke-direct {v8, v10, v11, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v10, 0x0

    aput-object v8, v2, v10

    new-instance v8, Lv0/b$d;

    const-string v11, "PreviewImageLength"

    const/16 v10, 0x102

    invoke-direct {v8, v11, v10, v14}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v10, 0x1

    aput-object v8, v2, v10

    new-array v8, v10, [Lv0/b$d;

    new-instance v11, Lv0/b$d;

    const-string v14, "AspectFrame"

    const/16 v10, 0x1113

    move-object/from16 v20, v13

    const/4 v13, 0x3

    invoke-direct {v11, v14, v10, v13}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v10, 0x0

    aput-object v11, v8, v10

    const/4 v11, 0x1

    new-array v14, v11, [Lv0/b$d;

    new-instance v11, Lv0/b$d;

    const-string v10, "ColorSpace"

    move-object/from16 v21, v1

    const/16 v1, 0x37

    invoke-direct {v11, v10, v1, v13}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v1, 0x0

    aput-object v11, v14, v1

    const/16 v10, 0xa

    new-array v11, v10, [[Lv0/b$d;

    aput-object v12, v11, v1

    const/4 v1, 0x1

    aput-object v3, v11, v1

    const/4 v1, 0x2

    aput-object v4, v11, v1

    aput-object v6, v11, v13

    const/4 v1, 0x4

    aput-object v7, v11, v1

    const/4 v3, 0x5

    aput-object v12, v11, v3

    const/4 v3, 0x6

    aput-object v0, v11, v3

    const/4 v0, 0x7

    aput-object v2, v11, v0

    const/16 v0, 0x8

    aput-object v8, v11, v0

    const/16 v0, 0x9

    aput-object v14, v11, v0

    sput-object v11, Lv0/b;->J:[[Lv0/b$d;

    new-array v0, v3, [Lv0/b$d;

    new-instance v2, Lv0/b$d;

    const-string v3, "SubIFDPointer"

    const/16 v4, 0x14a

    invoke-direct {v2, v3, v4, v1}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v3, 0x0

    aput-object v2, v0, v3

    new-instance v2, Lv0/b$d;

    const-string v3, "ExifIFDPointer"

    const v4, 0x8769

    invoke-direct {v2, v3, v4, v1}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v3, 0x1

    aput-object v2, v0, v3

    new-instance v2, Lv0/b$d;

    const-string v3, "GPSInfoIFDPointer"

    const v4, 0x8825

    invoke-direct {v2, v3, v4, v1}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v3, 0x2

    aput-object v2, v0, v3

    new-instance v2, Lv0/b$d;

    const-string v3, "InteroperabilityIFDPointer"

    const v4, 0xa005

    invoke-direct {v2, v3, v4, v1}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v3, 0x3

    aput-object v2, v0, v3

    new-instance v2, Lv0/b$d;

    const-string v3, "CameraSettingsIFDPointer"

    const/16 v4, 0x2020

    const/4 v6, 0x1

    invoke-direct {v2, v3, v4, v6}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    aput-object v2, v0, v1

    new-instance v1, Lv0/b$d;

    const-string v2, "ImageProcessingIFDPointer"

    const/16 v3, 0x2040

    invoke-direct {v1, v2, v3, v6}, Lv0/b$d;-><init>(Ljava/lang/String;II)V

    const/4 v2, 0x5

    aput-object v1, v0, v2

    sput-object v0, Lv0/b;->K:[Lv0/b$d;

    const/16 v0, 0xa

    new-array v1, v0, [Ljava/util/HashMap;

    sput-object v1, Lv0/b;->L:[Ljava/util/HashMap;

    new-array v0, v0, [Ljava/util/HashMap;

    sput-object v0, Lv0/b;->M:[Ljava/util/HashMap;

    new-instance v0, Ljava/util/HashSet;

    const-string v1, "FNumber"

    const-string v2, "DigitalZoomRatio"

    const-string v3, "ExposureTime"

    const-string v4, "SubjectDistance"

    const-string v6, "GPSTimeStamp"

    filled-new-array {v1, v2, v3, v4, v6}, [Ljava/lang/String;

    move-result-object v1

    invoke-static {v1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;

    move-result-object v1

    invoke-direct {v0, v1}, Ljava/util/HashSet;-><init>(Ljava/util/Collection;)V

    sput-object v0, Lv0/b;->N:Ljava/util/HashSet;

    new-instance v0, Ljava/util/HashMap;

    invoke-direct {v0}, Ljava/util/HashMap;-><init>()V

    sput-object v0, Lv0/b;->O:Ljava/util/HashMap;

    const-string v0, "US-ASCII"

    invoke-static {v0}, Ljava/nio/charset/Charset;->forName(Ljava/lang/String;)Ljava/nio/charset/Charset;

    move-result-object v0

    sput-object v0, Lv0/b;->P:Ljava/nio/charset/Charset;

    const-string v1, "Exif\u0000\u0000"

    invoke-virtual {v1, v0}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B

    move-result-object v1

    sput-object v1, Lv0/b;->Q:[B

    const-string v1, "http://ns.adobe.com/xap/1.0/\u0000"

    invoke-virtual {v1, v0}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B

    move-result-object v0

    sput-object v0, Lv0/b;->R:[B

    new-instance v0, Ljava/text/SimpleDateFormat;

    const-string v1, "yyyy:MM:dd HH:mm:ss"

    invoke-direct {v0, v1}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V

    const-string v1, "UTC"

    invoke-static {v1}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/text/SimpleDateFormat;->setTimeZone(Ljava/util/TimeZone;)V

    const/4 v7, 0x0

    :goto_bd4
    sget-object v0, Lv0/b;->J:[[Lv0/b$d;

    array-length v1, v0

    if-ge v7, v1, :cond_c0f

    sget-object v1, Lv0/b;->L:[Ljava/util/HashMap;

    new-instance v2, Ljava/util/HashMap;

    invoke-direct {v2}, Ljava/util/HashMap;-><init>()V

    aput-object v2, v1, v7

    sget-object v1, Lv0/b;->M:[Ljava/util/HashMap;

    new-instance v2, Ljava/util/HashMap;

    invoke-direct {v2}, Ljava/util/HashMap;-><init>()V

    aput-object v2, v1, v7

    aget-object v0, v0, v7

    array-length v1, v0

    const/4 v2, 0x0

    :goto_bef
    if-ge v2, v1, :cond_c0c

    aget-object v3, v0, v2

    sget-object v4, Lv0/b;->L:[Ljava/util/HashMap;

    aget-object v4, v4, v7

    iget v6, v3, Lv0/b$d;->a:I

    invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v6

    invoke-virtual {v4, v6, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    sget-object v4, Lv0/b;->M:[Ljava/util/HashMap;

    aget-object v4, v4, v7

    iget-object v6, v3, Lv0/b$d;->b:Ljava/lang/String;

    invoke-virtual {v4, v6, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    add-int/lit8 v2, v2, 0x1

    goto :goto_bef

    :cond_c0c
    add-int/lit8 v7, v7, 0x1

    goto :goto_bd4

    :cond_c0f
    sget-object v0, Lv0/b;->O:Ljava/util/HashMap;

    sget-object v1, Lv0/b;->K:[Lv0/b$d;

    const/4 v2, 0x0

    aget-object v2, v1, v2

    iget v2, v2, Lv0/b$d;->a:I

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    invoke-virtual {v0, v2, v15}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    const/4 v2, 0x1

    aget-object v2, v1, v2

    iget v2, v2, Lv0/b$d;->a:I

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    invoke-virtual {v0, v2, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    const/4 v2, 0x2

    aget-object v2, v1, v2

    iget v2, v2, Lv0/b$d;->a:I

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    invoke-virtual {v0, v2, v9}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    const/4 v2, 0x3

    aget-object v2, v1, v2

    iget v2, v2, Lv0/b$d;->a:I

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    move-object/from16 v3, v21

    invoke-virtual {v0, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    const/4 v2, 0x4

    aget-object v2, v1, v2

    iget v2, v2, Lv0/b$d;->a:I

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    move-object/from16 v3, v20

    invoke-virtual {v0, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    const/4 v2, 0x5

    aget-object v1, v1, v2

    iget v1, v1, Lv0/b$d;->a:I

    invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    move-object/from16 v2, v16

    invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    const-string v0, ".*[1-9].*"

    invoke-static {v0}, Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern;

    const-string v0, "^([0-9][0-9]):([0-9][0-9]):([0-9][0-9])$"

    invoke-static {v0}, Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern;

    return-void

    :array_c6c
    .array-data 4
        0x8
        0x8
        0x8
    .end array-data

    :array_c76
    .array-data 1
        -0x1t
        -0x28t
        -0x1t
    .end array-data

    :array_c7c
    .array-data 1
        0x66t
        0x74t
        0x79t
        0x70t
    .end array-data

    :array_c82
    .array-data 1
        0x6dt
        0x69t
        0x66t
        0x31t
    .end array-data

    :array_c88
    .array-data 1
        0x68t
        0x65t
        0x69t
        0x63t
    .end array-data

    :array_c8e
    .array-data 1
        0x4ft
        0x4ct
        0x59t
        0x4dt
        0x50t
        0x0t
    .end array-data

    nop

    :array_c96
    .array-data 1
        0x4ft
        0x4ct
        0x59t
        0x4dt
        0x50t
        0x55t
        0x53t
        0x0t
        0x49t
        0x49t
    .end array-data

    nop

    :array_ca0
    .array-data 1
        -0x77t
        0x50t
        0x4et
        0x47t
        0xdt
        0xat
        0x1at
        0xat
    .end array-data

    :array_ca8
    .array-data 1
        0x65t
        0x58t
        0x49t
        0x66t
    .end array-data

    :array_cae
    .array-data 1
        0x49t
        0x48t
        0x44t
        0x52t
    .end array-data

    :array_cb4
    .array-data 1
        0x49t
        0x45t
        0x4et
        0x44t
    .end array-data

    :array_cba
    .array-data 1
        0x52t
        0x49t
        0x46t
        0x46t
    .end array-data

    :array_cc0
    .array-data 1
        0x57t
        0x45t
        0x42t
        0x50t
    .end array-data

    :array_cc6
    .array-data 1
        0x45t
        0x58t
        0x49t
        0x46t
    .end array-data

    :array_ccc
    .array-data 4
        0x0
        0x1
        0x1
        0x2
        0x4
        0x8
        0x1
        0x1
        0x2
        0x4
        0x8
        0x4
        0x8
        0x1
    .end array-data

    :array_cec
    .array-data 1
        0x41t
        0x53t
        0x43t
        0x49t
        0x49t
        0x0t
        0x0t
        0x0t
    .end array-data
.end method

.method public constructor <init>(Ljava/io/InputStream;)V
    .registers 10

    .line 1
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    sget-object v0, Lv0/b;->J:[[Lv0/b$d;

    array-length v1, v0

    new-array v1, v1, [Ljava/util/HashMap;

    iput-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    new-instance v1, Ljava/util/HashSet;

    array-length v0, v0

    invoke-direct {v1, v0}, Ljava/util/HashSet;-><init>(I)V

    iput-object v1, p0, Lv0/b;->f:Ljava/util/Set;

    sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;

    iput-object v0, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    const-string v0, "inputStream cannot be null"

    invoke-static {p1, v0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;

    instance-of v0, p1, Landroid/content/res/AssetManager$AssetInputStream;

    const/4 v1, 0x0

    const-string v2, "ExifInterface"

    const/4 v3, 0x0

    if-eqz v0, :cond_29

    move-object v0, p1

    check-cast v0, Landroid/content/res/AssetManager$AssetInputStream;

    iput-object v0, p0, Lv0/b;->b:Landroid/content/res/AssetManager$AssetInputStream;

    goto :goto_52

    :cond_29
    instance-of v0, p1, Ljava/io/FileInputStream;

    if-eqz v0, :cond_50

    move-object v0, p1

    check-cast v0, Ljava/io/FileInputStream;

    invoke-virtual {v0}, Ljava/io/FileInputStream;->getFD()Ljava/io/FileDescriptor;

    move-result-object v4

    const-wide/16 v5, 0x0

    .line 2
    :try_start_36
    sget v7, Landroid/system/OsConstants;->SEEK_CUR:I

    invoke-static {v4, v5, v6, v7}, Landroid/system/Os;->lseek(Ljava/io/FileDescriptor;JI)J
    :try_end_3b
    .catch Ljava/lang/Exception; {:try_start_36 .. :try_end_3b} :catch_3d

    const/4 v4, 0x1

    goto :goto_47

    :catch_3d
    sget-boolean v4, Lv0/b;->n:Z

    if-eqz v4, :cond_46

    const-string v4, "The file descriptor for the given input is not seekable"

    invoke-static {v2, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_46
    move v4, v3

    :goto_47
    if-eqz v4, :cond_50

    .line 3
    iput-object v1, p0, Lv0/b;->b:Landroid/content/res/AssetManager$AssetInputStream;

    invoke-virtual {v0}, Ljava/io/FileInputStream;->getFD()Ljava/io/FileDescriptor;

    move-result-object v1

    goto :goto_52

    :cond_50
    iput-object v1, p0, Lv0/b;->b:Landroid/content/res/AssetManager$AssetInputStream;

    :goto_52
    iput-object v1, p0, Lv0/b;->a:Ljava/io/FileDescriptor;

    move v0, v3

    .line 4
    :goto_55
    :try_start_55
    sget-object v1, Lv0/b;->J:[[Lv0/b$d;

    array-length v1, v1

    if-ge v0, v1, :cond_66

    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    new-instance v4, Ljava/util/HashMap;

    invoke-direct {v4}, Ljava/util/HashMap;-><init>()V

    aput-object v4, v1, v0

    add-int/lit8 v0, v0, 0x1

    goto :goto_55

    :cond_66
    iget-boolean v0, p0, Lv0/b;->d:Z

    if-nez v0, :cond_78

    new-instance v0, Ljava/io/BufferedInputStream;

    const/16 v1, 0x1388

    invoke-direct {v0, p1, v1}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;I)V

    invoke-virtual {p0, v0}, Lv0/b;->h(Ljava/io/BufferedInputStream;)I

    move-result p1

    iput p1, p0, Lv0/b;->c:I

    move-object p1, v0

    :cond_78
    new-instance v0, Lv0/b$b;

    invoke-direct {v0, p1}, Lv0/b$b;-><init>(Ljava/io/InputStream;)V

    iget-boolean p1, p0, Lv0/b;->d:Z

    if-nez p1, :cond_a7

    iget p1, p0, Lv0/b;->c:I

    packed-switch p1, :pswitch_data_d6

    goto :goto_aa

    :pswitch_87
    invoke-virtual {p0, v0}, Lv0/b;->o(Lv0/b$b;)V

    goto :goto_aa

    :pswitch_8b
    invoke-virtual {p0, v0}, Lv0/b;->j(Lv0/b$b;)V

    goto :goto_aa

    :pswitch_8f
    invoke-virtual {p0, v0}, Lv0/b;->f(Lv0/b$b;)V

    goto :goto_aa

    :pswitch_93
    invoke-virtual {p0, v0}, Lv0/b;->m(Lv0/b$b;)V

    goto :goto_aa

    :pswitch_97
    invoke-virtual {p0, v0}, Lv0/b;->k(Lv0/b$b;)V

    goto :goto_aa

    :pswitch_9b
    invoke-virtual {p0, v0}, Lv0/b;->i(Lv0/b$b;)V

    goto :goto_aa

    :pswitch_9f
    invoke-virtual {p0, v0, v3, v3}, Lv0/b;->g(Lv0/b$b;II)V

    goto :goto_aa

    :pswitch_a3
    invoke-virtual {p0, v0}, Lv0/b;->l(Lv0/b$b;)V

    goto :goto_aa

    :cond_a7
    invoke-virtual {p0, v0}, Lv0/b;->n(Lv0/b$b;)V

    :goto_aa
    invoke-virtual {p0, v0}, Lv0/b;->w(Lv0/b$b;)V
    :try_end_ad
    .catch Ljava/io/IOException; {:try_start_55 .. :try_end_ad} :catch_b7
    .catchall {:try_start_55 .. :try_end_ad} :catchall_b5

    invoke-virtual {p0}, Lv0/b;->a()V

    sget-boolean p1, Lv0/b;->n:Z

    if-eqz p1, :cond_c9

    goto :goto_c6

    :catchall_b5
    move-exception p1

    goto :goto_ca

    :catch_b7
    move-exception p1

    :try_start_b8
    sget-boolean v0, Lv0/b;->n:Z

    if-eqz v0, :cond_c1

    const-string v1, "Invalid image: ExifInterface got an unsupported image format file(ExifInterface supports JPEG and some RAW image formats only) or a corrupted JPEG file to ExifInterface."

    invoke-static {v2, v1, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
    :try_end_c1
    .catchall {:try_start_b8 .. :try_end_c1} :catchall_b5

    :cond_c1
    invoke-virtual {p0}, Lv0/b;->a()V

    if-eqz v0, :cond_c9

    :goto_c6
    invoke-virtual {p0}, Lv0/b;->s()V

    :cond_c9
    return-void

    :goto_ca
    invoke-virtual {p0}, Lv0/b;->a()V

    sget-boolean v0, Lv0/b;->n:Z

    if-eqz v0, :cond_d4

    invoke-virtual {p0}, Lv0/b;->s()V

    :cond_d4
    throw p1

    nop

    :pswitch_data_d6
    .packed-switch 0x0
        :pswitch_a3
        :pswitch_a3
        :pswitch_a3
        :pswitch_a3
        :pswitch_9f
        :pswitch_a3
        :pswitch_a3
        :pswitch_9b
        :pswitch_a3
        :pswitch_97
        :pswitch_93
        :pswitch_a3
        :pswitch_8f
        :pswitch_8b
        :pswitch_87
    .end packed-switch
.end method

.method public static b([B)Ljava/lang/String;
    .registers 6

    new-instance v0, Ljava/lang/StringBuilder;

    array-length v1, p0

    mul-int/lit8 v1, v1, 0x2

    invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V

    const/4 v1, 0x0

    move v2, v1

    :goto_a
    array-length v3, p0

    if-ge v2, v3, :cond_24

    const/4 v3, 0x1

    new-array v3, v3, [Ljava/lang/Object;

    aget-byte v4, p0, v2

    invoke-static {v4}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;

    move-result-object v4

    aput-object v4, v3, v1

    const-string v4, "%02x"

    invoke-static {v4, v3}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    add-int/lit8 v2, v2, 0x1

    goto :goto_a

    :cond_24
    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p0

    return-object p0
.end method

.method public static c(Ljava/lang/Object;)[J
    .registers 5

    instance-of v0, p0, [I

    if-eqz v0, :cond_16

    check-cast p0, [I

    array-length v0, p0

    new-array v0, v0, [J

    const/4 v1, 0x0

    :goto_a
    array-length v2, p0

    if-ge v1, v2, :cond_15

    aget v2, p0, v1

    int-to-long v2, v2

    aput-wide v2, v0, v1

    add-int/lit8 v1, v1, 0x1

    goto :goto_a

    :cond_15
    return-object v0

    :cond_16
    instance-of v0, p0, [J

    if-eqz v0, :cond_1d

    check-cast p0, [J

    return-object p0

    :cond_1d
    const/4 p0, 0x0

    return-object p0
.end method

.method public static x([B[B)Z
    .registers 6

    const/4 v0, 0x0

    if-nez p1, :cond_4

    return v0

    :cond_4
    array-length v1, p0

    array-length v2, p1

    if-ge v1, v2, :cond_9

    return v0

    :cond_9
    move v1, v0

    :goto_a
    array-length v2, p1

    if-ge v1, v2, :cond_17

    aget-byte v2, p0, v1

    aget-byte v3, p1, v1

    if-eq v2, v3, :cond_14

    return v0

    :cond_14
    add-int/lit8 v1, v1, 0x1

    goto :goto_a

    :cond_17
    const/4 p0, 0x1

    return p0
.end method


# virtual methods
.method public final A()V
    .registers 8

    const/4 v0, 0x0

    const/4 v1, 0x5

    invoke-virtual {p0, v0, v1}, Lv0/b;->y(II)V

    const/4 v2, 0x4

    invoke-virtual {p0, v0, v2}, Lv0/b;->y(II)V

    invoke-virtual {p0, v1, v2}, Lv0/b;->y(II)V

    iget-object v3, p0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v4, 0x1

    aget-object v3, v3, v4

    const-string v5, "PixelXDimension"

    invoke-virtual {v3, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Lv0/b$c;

    iget-object v5, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v4, v5, v4

    const-string v5, "PixelYDimension"

    invoke-virtual {v4, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v4

    check-cast v4, Lv0/b$c;

    if-eqz v3, :cond_3b

    if-eqz v4, :cond_3b

    iget-object v5, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v5, v5, v0

    const-string v6, "ImageWidth"

    invoke-virtual {v5, v6, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    iget-object v3, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v3, v0

    const-string v3, "ImageLength"

    invoke-virtual {v0, v3, v4}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_3b
    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v0, v2

    invoke-virtual {v0}, Ljava/util/HashMap;->isEmpty()Z

    move-result v0

    if-eqz v0, :cond_5c

    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v0, v1

    invoke-virtual {p0, v0}, Lv0/b;->q(Ljava/util/HashMap;)Z

    move-result v0

    if-eqz v0, :cond_5c

    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v3, v0, v1

    aput-object v3, v0, v2

    new-instance v3, Ljava/util/HashMap;

    invoke-direct {v3}, Ljava/util/HashMap;-><init>()V

    aput-object v3, v0, v1

    :cond_5c
    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v0, v2

    invoke-virtual {p0, v0}, Lv0/b;->q(Ljava/util/HashMap;)Z

    move-result v0

    if-nez v0, :cond_6d

    const-string v0, "ExifInterface"

    const-string v1, "No image meets the size requirements of a thumbnail image."

    invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_6d
    return-void
.end method

.method public final a()V
    .registers 7

    const-string v0, "DateTimeOriginal"

    invoke-virtual {p0, v0}, Lv0/b;->d(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    const/4 v1, 0x0

    if-eqz v0, :cond_1c

    const-string v2, "DateTime"

    invoke-virtual {p0, v2}, Lv0/b;->d(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    if-nez v3, :cond_1c

    iget-object v3, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v3, v3, v1

    invoke-static {v0}, Lv0/b$c;->a(Ljava/lang/String;)Lv0/b$c;

    move-result-object v0

    invoke-virtual {v3, v2, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_1c
    const-string v0, "ImageWidth"

    invoke-virtual {p0, v0}, Lv0/b;->d(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    const-wide/16 v3, 0x0

    if-nez v2, :cond_33

    iget-object v2, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v2, v2, v1

    iget-object v5, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v3, v4, v5}, Lv0/b$c;->b(JLjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v5

    invoke-virtual {v2, v0, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_33
    const-string v0, "ImageLength"

    invoke-virtual {p0, v0}, Lv0/b;->d(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    if-nez v2, :cond_48

    iget-object v2, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v2, v2, v1

    iget-object v5, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v3, v4, v5}, Lv0/b$c;->b(JLjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v5

    invoke-virtual {v2, v0, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_48
    const-string v0, "Orientation"

    invoke-virtual {p0, v0}, Lv0/b;->d(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    if-nez v2, :cond_5d

    iget-object v2, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v2, v1

    iget-object v2, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v3, v4, v2}, Lv0/b$c;->b(JLjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v2

    invoke-virtual {v1, v0, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_5d
    const-string v0, "LightSource"

    invoke-virtual {p0, v0}, Lv0/b;->d(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v1

    if-nez v1, :cond_73

    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v2, 0x1

    aget-object v1, v1, v2

    iget-object v2, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v3, v4, v2}, Lv0/b$c;->b(JLjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v2

    invoke-virtual {v1, v0, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_73
    return-void
.end method

.method public d(Ljava/lang/String;)Ljava/lang/String;
    .registers 7

    invoke-virtual {p0, p1}, Lv0/b;->e(Ljava/lang/String;)Lv0/b$c;

    move-result-object v0

    const/4 v1, 0x0

    if-eqz v0, :cond_aa

    sget-object v2, Lv0/b;->N:Ljava/util/HashSet;

    invoke-virtual {v2, p1}, Ljava/util/HashSet;->contains(Ljava/lang/Object;)Z

    move-result v2

    if-nez v2, :cond_16

    iget-object p1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v0, p1}, Lv0/b$c;->g(Ljava/nio/ByteOrder;)Ljava/lang/String;

    move-result-object p1

    return-object p1

    :cond_16
    const-string v2, "GPSTimeStamp"

    invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p1

    if-eqz p1, :cond_9f

    iget p1, v0, Lv0/b$c;->a:I

    const/4 v2, 0x5

    if-eq p1, v2, :cond_37

    const/16 v2, 0xa

    if-eq p1, v2, :cond_37

    const-string p1, "GPS Timestamp format is not rational. format="

    invoke-static {p1}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object p1

    iget v0, v0, Lv0/b$c;->a:I

    invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    goto :goto_99

    :cond_37
    iget-object p1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v0, p1}, Lv0/b$c;->h(Ljava/nio/ByteOrder;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, [Lv0/b$e;

    if-eqz p1, :cond_88

    array-length v0, p1

    const/4 v2, 0x3

    if-eq v0, v2, :cond_46

    goto :goto_88

    :cond_46
    new-array v0, v2, [Ljava/lang/Object;

    const/4 v1, 0x0

    aget-object v2, p1, v1

    iget-wide v2, v2, Lv0/b$e;->a:J

    long-to-float v2, v2

    aget-object v3, p1, v1

    iget-wide v3, v3, Lv0/b$e;->b:J

    long-to-float v3, v3

    div-float/2addr v2, v3

    float-to-int v2, v2

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    aput-object v2, v0, v1

    const/4 v1, 0x1

    aget-object v2, p1, v1

    iget-wide v2, v2, Lv0/b$e;->a:J

    long-to-float v2, v2

    aget-object v3, p1, v1

    iget-wide v3, v3, Lv0/b$e;->b:J

    long-to-float v3, v3

    div-float/2addr v2, v3

    float-to-int v2, v2

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    aput-object v2, v0, v1

    const/4 v1, 0x2

    aget-object v2, p1, v1

    iget-wide v2, v2, Lv0/b$e;->a:J

    long-to-float v2, v2

    aget-object p1, p1, v1

    iget-wide v3, p1, Lv0/b$e;->b:J

    long-to-float p1, v3

    div-float/2addr v2, p1

    float-to-int p1, v2

    invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object p1

    aput-object p1, v0, v1

    const-string p1, "%02d:%02d:%02d"

    invoke-static {p1, v0}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    move-result-object p1

    return-object p1

    :cond_88
    :goto_88
    const-string v0, "Invalid GPS Timestamp array. array="

    invoke-static {v0}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-static {p1}, Ljava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    :goto_99
    const-string v0, "ExifInterface"

    invoke-static {v0, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I

    return-object v1

    :cond_9f
    :try_start_9f
    iget-object p1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v0, p1}, Lv0/b$c;->e(Ljava/nio/ByteOrder;)D

    move-result-wide v2

    invoke-static {v2, v3}, Ljava/lang/Double;->toString(D)Ljava/lang/String;

    move-result-object p1
    :try_end_a9
    .catch Ljava/lang/NumberFormatException; {:try_start_9f .. :try_end_a9} :catch_aa

    return-object p1

    :catch_aa
    :cond_aa
    return-object v1
.end method

.method public final e(Ljava/lang/String;)Lv0/b$c;
    .registers 4

    const-string v0, "ISOSpeedRatings"

    invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_15

    sget-boolean p1, Lv0/b;->n:Z

    if-eqz p1, :cond_13

    const-string p1, "ExifInterface"

    const-string v0, "getExifAttribute: Replacing TAG_ISO_SPEED_RATINGS with TAG_PHOTOGRAPHIC_SENSITIVITY."

    invoke-static {p1, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_13
    const-string p1, "PhotographicSensitivity"

    :cond_15
    const/4 v0, 0x0

    :goto_16
    sget-object v1, Lv0/b;->J:[[Lv0/b$d;

    array-length v1, v1

    if-ge v0, v1, :cond_2b

    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v1, v0

    invoke-virtual {v1, p1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lv0/b$c;

    if-eqz v1, :cond_28

    return-object v1

    :cond_28
    add-int/lit8 v0, v0, 0x1

    goto :goto_16

    :cond_2b
    const/4 p1, 0x0

    return-object p1
.end method

.method public final f(Lv0/b$b;)V
    .registers 14

    const-string v0, "yes"

    new-instance v1, Landroid/media/MediaMetadataRetriever;

    invoke-direct {v1}, Landroid/media/MediaMetadataRetriever;-><init>()V

    :try_start_7
    new-instance v2, Lv0/b$a;

    invoke-direct {v2, p0, p1}, Lv0/b$a;-><init>(Lv0/b;Lv0/b$b;)V

    invoke-virtual {v1, v2}, Landroid/media/MediaMetadataRetriever;->setDataSource(Landroid/media/MediaDataSource;)V

    const/16 v2, 0x21

    invoke-virtual {v1, v2}, Landroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String;

    move-result-object v2

    const/16 v3, 0x22

    invoke-virtual {v1, v3}, Landroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String;

    move-result-object v3

    const/16 v4, 0x1a

    invoke-virtual {v1, v4}, Landroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String;

    move-result-object v4

    const/16 v5, 0x11

    invoke-virtual {v1, v5}, Landroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String;

    move-result-object v5

    invoke-virtual {v0, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v4

    const/4 v6, 0x0

    if-eqz v4, :cond_41

    const/16 v0, 0x1d

    invoke-virtual {v1, v0}, Landroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String;

    move-result-object v6

    const/16 v0, 0x1e

    invoke-virtual {v1, v0}, Landroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String;

    move-result-object v0

    const/16 v4, 0x1f

    invoke-virtual {v1, v4}, Landroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String;

    move-result-object v4

    goto :goto_5c

    :cond_41
    invoke-virtual {v0, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_5a

    const/16 v0, 0x12

    invoke-virtual {v1, v0}, Landroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String;

    move-result-object v6

    const/16 v0, 0x13

    invoke-virtual {v1, v0}, Landroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String;

    move-result-object v0

    const/16 v4, 0x18

    invoke-virtual {v1, v4}, Landroid/media/MediaMetadataRetriever;->extractMetadata(I)Ljava/lang/String;

    move-result-object v4

    goto :goto_5c

    :cond_5a
    move-object v0, v6

    move-object v4, v0

    :goto_5c
    const/4 v5, 0x0

    if-eqz v6, :cond_72

    iget-object v7, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v7, v7, v5

    const-string v8, "ImageWidth"

    invoke-static {v6}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v9

    iget-object v10, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v9, v10}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v9

    invoke-virtual {v7, v8, v9}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_72
    if-eqz v0, :cond_87

    iget-object v7, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v7, v7, v5

    const-string v8, "ImageLength"

    invoke-static {v0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v9

    iget-object v10, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v9, v10}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v9

    invoke-virtual {v7, v8, v9}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_87
    const/4 v7, 0x6

    if-eqz v4, :cond_b1

    const/4 v8, 0x1

    invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v9

    const/16 v10, 0x5a

    if-eq v9, v10, :cond_a1

    const/16 v10, 0xb4

    if-eq v9, v10, :cond_9f

    const/16 v10, 0x10e

    if-eq v9, v10, :cond_9c

    goto :goto_a2

    :cond_9c
    const/16 v8, 0x8

    goto :goto_a2

    :cond_9f
    const/4 v8, 0x3

    goto :goto_a2

    :cond_a1
    move v8, v7

    :goto_a2
    iget-object v9, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v9, v9, v5

    const-string v10, "Orientation"

    iget-object v11, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v8, v11}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v8

    invoke-virtual {v9, v10, v8}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_b1
    if-eqz v2, :cond_104

    if-eqz v3, :cond_104

    invoke-static {v2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v2

    invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v3

    if-le v3, v7, :cond_fc

    int-to-long v8, v2

    invoke-virtual {p1, v8, v9}, Lv0/b$b;->e(J)V

    new-array v8, v7, [B

    invoke-virtual {p1, v8}, Ljava/io/InputStream;->read([B)I

    move-result v9

    if-ne v9, v7, :cond_f4

    add-int/2addr v2, v7

    add-int/lit8 v3, v3, -0x6

    sget-object v7, Lv0/b;->Q:[B

    invoke-static {v8, v7}, Ljava/util/Arrays;->equals([B[B)Z

    move-result v7

    if-eqz v7, :cond_ec

    new-array v7, v3, [B

    invoke-virtual {p1, v7}, Ljava/io/InputStream;->read([B)I

    move-result p1

    if-ne p1, v3, :cond_e4

    iput v2, p0, Lv0/b;->i:I

    invoke-virtual {p0, v7, v5}, Lv0/b;->u([BI)V

    goto :goto_104

    :cond_e4
    new-instance p1, Ljava/io/IOException;

    const-string v0, "Can\'t read exif"

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_ec
    new-instance p1, Ljava/io/IOException;

    const-string v0, "Invalid identifier"

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_f4
    new-instance p1, Ljava/io/IOException;

    const-string v0, "Can\'t read identifier"

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_fc
    new-instance p1, Ljava/io/IOException;

    const-string v0, "Invalid exif length"

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_104
    :goto_104
    sget-boolean p1, Lv0/b;->n:Z

    if-eqz p1, :cond_12e

    const-string p1, "ExifInterface"

    new-instance v2, Ljava/lang/StringBuilder;

    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V

    const-string v3, "Heif meta: "

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v3, "x"

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v0, ", rotation "

    invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {p1, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
    :try_end_12e
    .catchall {:try_start_7 .. :try_end_12e} :catchall_132

    :cond_12e
    invoke-virtual {v1}, Landroid/media/MediaMetadataRetriever;->release()V

    return-void

    :catchall_132
    move-exception p1

    invoke-virtual {v1}, Landroid/media/MediaMetadataRetriever;->release()V

    throw p1
.end method

.method public final g(Lv0/b$b;II)V
    .registers 21

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move/from16 v2, p2

    move/from16 v3, p3

    sget-boolean v4, Lv0/b;->n:Z

    const-string v5, "ExifInterface"

    if-eqz v4, :cond_22

    new-instance v4, Ljava/lang/StringBuilder;

    invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V

    const-string v6, "getJpegAttributes starting with: "

    invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

    invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v4

    invoke-static {v5, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_22
    sget-object v4, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;

    .line 1
    iput-object v4, v1, Lv0/b$b;->s:Ljava/nio/ByteOrder;

    int-to-long v6, v2

    .line 2
    invoke-virtual {v1, v6, v7}, Lv0/b$b;->e(J)V

    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readByte()B

    move-result v4

    const-string v6, "Invalid marker: "

    const/4 v7, -0x1

    if-ne v4, v7, :cond_1ba

    const/4 v8, 0x1

    add-int/2addr v2, v8

    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readByte()B

    move-result v9

    const/16 v10, -0x28

    if-ne v9, v10, :cond_1a3

    add-int/2addr v2, v8

    :goto_3e
    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readByte()B

    move-result v4

    if-ne v4, v7, :cond_18a

    add-int/2addr v2, v8

    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readByte()B

    move-result v4

    sget-boolean v6, Lv0/b;->n:Z

    if-eqz v6, :cond_63

    const-string v7, "Found JPEG segment indicator: "

    invoke-static {v7}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v7

    and-int/lit16 v9, v4, 0xff

    invoke-static {v9}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;

    move-result-object v9

    invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v7

    invoke-static {v5, v7}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_63
    add-int/2addr v2, v8

    const/16 v7, -0x27

    if-eq v4, v7, :cond_185

    const/16 v7, -0x26

    if-ne v4, v7, :cond_6e

    goto/16 :goto_185

    :cond_6e
    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readUnsignedShort()I

    move-result v7

    add-int/lit8 v7, v7, -0x2

    add-int/lit8 v2, v2, 0x2

    if-eqz v6, :cond_9d

    const-string v6, "JPEG segment: "

    invoke-static {v6}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v6

    and-int/lit16 v9, v4, 0xff

    invoke-static {v9}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;

    move-result-object v9

    invoke-virtual {v6, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v9, " (length: "

    invoke-virtual {v6, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    add-int/lit8 v9, v7, 0x2

    invoke-virtual {v6, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    const-string v9, ")"

    invoke-virtual {v6, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v6

    invoke-static {v5, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_9d
    const-string v6, "Invalid length"

    if-ltz v7, :cond_17f

    const/16 v9, -0x1f

    const/4 v10, 0x0

    if-eq v4, v9, :cond_11d

    const/4 v9, -0x2

    if-eq v4, v9, :cond_f1

    packed-switch v4, :pswitch_data_1d2

    packed-switch v4, :pswitch_data_1de

    packed-switch v4, :pswitch_data_1e8

    packed-switch v4, :pswitch_data_1f2

    goto/16 :goto_164

    :pswitch_b7
    invoke-virtual {v1, v8}, Lv0/b$b;->skipBytes(I)I

    move-result v4

    if-ne v4, v8, :cond_e9

    iget-object v4, v0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v4, v4, v3

    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readUnsignedShort()I

    move-result v8

    int-to-long v8, v8

    iget-object v10, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v8, v9, v10}, Lv0/b$c;->b(JLjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v8

    const-string v9, "ImageLength"

    invoke-virtual {v4, v9, v8}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    iget-object v4, v0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v4, v4, v3

    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readUnsignedShort()I

    move-result v8

    int-to-long v8, v8

    iget-object v10, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v8, v9, v10}, Lv0/b$c;->b(JLjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v8

    const-string v9, "ImageWidth"

    invoke-virtual {v4, v9, v8}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    add-int/lit8 v7, v7, -0x5

    goto/16 :goto_164

    :cond_e9
    new-instance v1, Ljava/io/IOException;

    const-string v2, "Invalid SOFx"

    invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw v1

    :cond_f1
    new-array v4, v7, [B

    invoke-virtual {v1, v4}, Ljava/io/InputStream;->read([B)I

    move-result v9

    if-ne v9, v7, :cond_115

    const-string v7, "UserComment"

    invoke-virtual {v0, v7}, Lv0/b;->d(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v9

    if-nez v9, :cond_113

    iget-object v9, v0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v8, v9, v8

    new-instance v9, Ljava/lang/String;

    sget-object v11, Lv0/b;->P:Ljava/nio/charset/Charset;

    invoke-direct {v9, v4, v11}, Ljava/lang/String;-><init>([BLjava/nio/charset/Charset;)V

    invoke-static {v9}, Lv0/b$c;->a(Ljava/lang/String;)Lv0/b$c;

    move-result-object v4

    invoke-virtual {v8, v7, v4}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_113
    move v7, v10

    goto :goto_164

    :cond_115
    new-instance v1, Ljava/io/IOException;

    const-string v2, "Invalid exif"

    invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw v1

    :cond_11d
    new-array v4, v7, [B

    invoke-virtual {v1, v4}, Lv0/b$b;->readFully([B)V

    add-int v8, v2, v7

    sget-object v9, Lv0/b;->Q:[B

    invoke-static {v4, v9}, Lv0/b;->x([B[B)Z

    move-result v11

    if-eqz v11, :cond_139

    array-length v10, v9

    add-int/2addr v2, v10

    array-length v9, v9

    invoke-static {v4, v9, v7}, Ljava/util/Arrays;->copyOfRange([BII)[B

    move-result-object v4

    iput v2, v0, Lv0/b;->i:I

    invoke-virtual {v0, v4, v3}, Lv0/b;->u([BI)V

    goto :goto_162

    :cond_139
    sget-object v9, Lv0/b;->R:[B

    invoke-static {v4, v9}, Lv0/b;->x([B[B)Z

    move-result v11

    if-eqz v11, :cond_162

    array-length v11, v9

    add-int/2addr v2, v11

    array-length v9, v9

    invoke-static {v4, v9, v7}, Ljava/util/Arrays;->copyOfRange([BII)[B

    move-result-object v4

    const-string v7, "Xmp"

    invoke-virtual {v0, v7}, Lv0/b;->d(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v9

    if-nez v9, :cond_162

    iget-object v9, v0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v9, v9, v10

    new-instance v10, Lv0/b$c;

    const/4 v12, 0x1

    array-length v13, v4

    int-to-long v14, v2

    move-object v11, v10

    move-object/from16 v16, v4

    invoke-direct/range {v11 .. v16}, Lv0/b$c;-><init>(IIJ[B)V

    invoke-virtual {v9, v7, v10}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_162
    :goto_162
    const/4 v7, 0x0

    move v2, v8

    :goto_164
    if-ltz v7, :cond_179

    invoke-virtual {v1, v7}, Lv0/b$b;->skipBytes(I)I

    move-result v4

    if-ne v4, v7, :cond_171

    add-int/2addr v2, v7

    const/4 v7, -0x1

    const/4 v8, 0x1

    goto/16 :goto_3e

    :cond_171
    new-instance v1, Ljava/io/IOException;

    const-string v2, "Invalid JPEG segment"

    invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw v1

    :cond_179
    new-instance v1, Ljava/io/IOException;

    invoke-direct {v1, v6}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw v1

    :cond_17f
    new-instance v1, Ljava/io/IOException;

    invoke-direct {v1, v6}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw v1

    :cond_185
    :goto_185
    iget-object v2, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    .line 3
    iput-object v2, v1, Lv0/b$b;->s:Ljava/nio/ByteOrder;

    return-void

    .line 4
    :cond_18a
    new-instance v1, Ljava/io/IOException;

    const-string v2, "Invalid marker:"

    invoke-static {v2}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    and-int/lit16 v3, v4, 0xff

    invoke-static {v3}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2

    invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw v1

    :cond_1a3
    new-instance v1, Ljava/io/IOException;

    invoke-static {v6}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    and-int/lit16 v3, v4, 0xff

    invoke-static {v3}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2

    invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw v1

    :cond_1ba
    new-instance v1, Ljava/io/IOException;

    invoke-static {v6}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    and-int/lit16 v3, v4, 0xff

    invoke-static {v3}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2

    invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw v1

    nop

    :pswitch_data_1d2
    .packed-switch -0x40
        :pswitch_b7
        :pswitch_b7
        :pswitch_b7
        :pswitch_b7
    .end packed-switch

    :pswitch_data_1de
    .packed-switch -0x3b
        :pswitch_b7
        :pswitch_b7
        :pswitch_b7
    .end packed-switch

    :pswitch_data_1e8
    .packed-switch -0x37
        :pswitch_b7
        :pswitch_b7
        :pswitch_b7
    .end packed-switch

    :pswitch_data_1f2
    .packed-switch -0x33
        :pswitch_b7
        :pswitch_b7
        :pswitch_b7
    .end packed-switch
.end method

.method public final h(Ljava/io/BufferedInputStream;)I
    .registers 19

    move-object/from16 v1, p0

    move-object/from16 v0, p1

    const/16 v2, 0x1388

    invoke-virtual {v0, v2}, Ljava/io/BufferedInputStream;->mark(I)V

    new-array v3, v2, [B

    invoke-virtual {v0, v3}, Ljava/io/BufferedInputStream;->read([B)I

    invoke-virtual/range {p1 .. p1}, Ljava/io/BufferedInputStream;->reset()V

    const/4 v4, 0x0

    move v0, v4

    .line 1
    :goto_13
    sget-object v5, Lv0/b;->s:[B

    array-length v6, v5

    if-ge v0, v6, :cond_23

    aget-byte v6, v3, v0

    aget-byte v5, v5, v0

    if-eq v6, v5, :cond_20

    move v0, v4

    goto :goto_24

    :cond_20
    add-int/lit8 v0, v0, 0x1

    goto :goto_13

    :cond_23
    const/4 v0, 0x1

    :goto_24
    const/4 v5, 0x4

    if-eqz v0, :cond_28

    return v5

    .line 2
    :cond_28
    invoke-static {}, Ljava/nio/charset/Charset;->defaultCharset()Ljava/nio/charset/Charset;

    move-result-object v0

    const-string v6, "FUJIFILMCCD-RAW"

    invoke-virtual {v6, v0}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B

    move-result-object v0

    move v6, v4

    :goto_33
    array-length v8, v0

    if-ge v6, v8, :cond_41

    aget-byte v8, v3, v6

    aget-byte v9, v0, v6

    if-eq v8, v9, :cond_3e

    move v0, v4

    goto :goto_42

    :cond_3e
    add-int/lit8 v6, v6, 0x1

    goto :goto_33

    :cond_41
    const/4 v0, 0x1

    :goto_42
    if-eqz v0, :cond_47

    const/16 v0, 0x9

    return v0

    .line 3
    :cond_47
    :try_start_47
    new-instance v8, Lv0/b$b;

    invoke-direct {v8, v3}, Lv0/b$b;-><init>([B)V
    :try_end_4c
    .catch Ljava/lang/Exception; {:try_start_47 .. :try_end_4c} :catch_c2
    .catchall {:try_start_47 .. :try_end_4c} :catchall_be

    :try_start_4c
    invoke-virtual {v8}, Lv0/b$b;->readInt()I

    move-result v0

    int-to-long v9, v0

    new-array v0, v5, [B

    invoke-virtual {v8, v0}, Ljava/io/InputStream;->read([B)I

    sget-object v11, Lv0/b;->t:[B

    invoke-static {v0, v11}, Ljava/util/Arrays;->equals([B[B)Z

    move-result v0

    if-nez v0, :cond_60

    goto/16 :goto_d1

    :cond_60
    const-wide/16 v11, 0x1

    cmp-long v0, v9, v11

    const-wide/16 v13, 0x10

    const-wide/16 v15, 0x8

    if-nez v0, :cond_74

    invoke-virtual {v8}, Lv0/b$b;->readLong()J

    move-result-wide v9

    cmp-long v0, v9, v13

    if-gez v0, :cond_75

    goto/16 :goto_d1

    :cond_74
    move-wide v13, v15

    :cond_75
    int-to-long v6, v2

    cmp-long v0, v9, v6

    if-lez v0, :cond_7b

    move-wide v9, v6

    :cond_7b
    sub-long/2addr v9, v13

    cmp-long v0, v9, v15

    if-gez v0, :cond_81

    goto :goto_d1

    :cond_81
    new-array v0, v5, [B

    const-wide/16 v6, 0x0

    move v2, v4

    move v13, v2

    :goto_87
    const-wide/16 v14, 0x4

    div-long v14, v9, v14

    cmp-long v14, v6, v14

    if-gez v14, :cond_d1

    invoke-virtual {v8, v0}, Ljava/io/InputStream;->read([B)I

    move-result v14

    if-eq v14, v5, :cond_96

    goto :goto_d1

    :cond_96
    cmp-long v14, v6, v11

    if-nez v14, :cond_9b

    goto :goto_b7

    :cond_9b
    sget-object v14, Lv0/b;->u:[B

    invoke-static {v0, v14}, Ljava/util/Arrays;->equals([B[B)Z

    move-result v14

    if-eqz v14, :cond_a5

    const/4 v2, 0x1

    goto :goto_ae

    :cond_a5
    sget-object v14, Lv0/b;->v:[B

    invoke-static {v0, v14}, Ljava/util/Arrays;->equals([B[B)Z

    move-result v14
    :try_end_ab
    .catch Ljava/lang/Exception; {:try_start_4c .. :try_end_ab} :catch_bc
    .catchall {:try_start_4c .. :try_end_ab} :catchall_b9

    if-eqz v14, :cond_ae

    const/4 v13, 0x1

    :cond_ae
    :goto_ae
    if-eqz v2, :cond_b7

    if-eqz v13, :cond_b7

    invoke-virtual {v8}, Ljava/io/InputStream;->close()V

    const/4 v0, 0x1

    goto :goto_d5

    :cond_b7
    :goto_b7
    add-long/2addr v6, v11

    goto :goto_87

    :catchall_b9
    move-exception v0

    goto/16 :goto_18d

    :catch_bc
    move-exception v0

    goto :goto_c4

    :catchall_be
    move-exception v0

    const/4 v6, 0x0

    goto/16 :goto_18c

    :catch_c2
    move-exception v0

    const/4 v8, 0x0

    :goto_c4
    :try_start_c4
    sget-boolean v2, Lv0/b;->n:Z

    if-eqz v2, :cond_cf

    const-string v2, "ExifInterface"

    const-string v6, "Exception parsing HEIF file type box."

    invoke-static {v2, v6, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
    :try_end_cf
    .catchall {:try_start_c4 .. :try_end_cf} :catchall_18a

    :cond_cf
    if-eqz v8, :cond_d4

    :cond_d1
    :goto_d1
    invoke-virtual {v8}, Ljava/io/InputStream;->close()V

    :cond_d4
    move v0, v4

    :goto_d5
    if-eqz v0, :cond_da

    const/16 v0, 0xc

    return v0

    .line 4
    :cond_da
    :try_start_da
    new-instance v2, Lv0/b$b;

    invoke-direct {v2, v3}, Lv0/b$b;-><init>([B)V
    :try_end_df
    .catch Ljava/lang/Exception; {:try_start_da .. :try_end_df} :catch_106
    .catchall {:try_start_da .. :try_end_df} :catchall_fe

    :try_start_df
    invoke-virtual {v1, v2}, Lv0/b;->t(Lv0/b$b;)Ljava/nio/ByteOrder;

    move-result-object v0

    iput-object v0, v1, Lv0/b;->g:Ljava/nio/ByteOrder;

    .line 5
    iput-object v0, v2, Lv0/b$b;->s:Ljava/nio/ByteOrder;

    .line 6
    invoke-virtual {v2}, Lv0/b$b;->readShort()S

    move-result v0
    :try_end_eb
    .catch Ljava/lang/Exception; {:try_start_df .. :try_end_eb} :catch_107
    .catchall {:try_start_df .. :try_end_eb} :catchall_fb

    const/16 v6, 0x4f52

    if-eq v0, v6, :cond_f6

    const/16 v6, 0x5352

    if-ne v0, v6, :cond_f4

    goto :goto_f6

    :cond_f4
    move v0, v4

    goto :goto_f7

    :cond_f6
    :goto_f6
    const/4 v0, 0x1

    :goto_f7
    invoke-virtual {v2}, Ljava/io/InputStream;->close()V

    goto :goto_10d

    :catchall_fb
    move-exception v0

    move-object v6, v2

    goto :goto_100

    :catchall_fe
    move-exception v0

    const/4 v6, 0x0

    :goto_100
    if-eqz v6, :cond_105

    invoke-virtual {v6}, Ljava/io/InputStream;->close()V

    :cond_105
    throw v0

    :catch_106
    const/4 v2, 0x0

    :catch_107
    if-eqz v2, :cond_10c

    invoke-virtual {v2}, Ljava/io/InputStream;->close()V

    :cond_10c
    move v0, v4

    :goto_10d
    if-eqz v0, :cond_111

    const/4 v0, 0x7

    return v0

    .line 7
    :cond_111
    :try_start_111
    new-instance v2, Lv0/b$b;

    invoke-direct {v2, v3}, Lv0/b$b;-><init>([B)V
    :try_end_116
    .catch Ljava/lang/Exception; {:try_start_111 .. :try_end_116} :catch_13a
    .catchall {:try_start_111 .. :try_end_116} :catchall_132

    :try_start_116
    invoke-virtual {v1, v2}, Lv0/b;->t(Lv0/b$b;)Ljava/nio/ByteOrder;

    move-result-object v0

    iput-object v0, v1, Lv0/b;->g:Ljava/nio/ByteOrder;

    .line 8
    iput-object v0, v2, Lv0/b$b;->s:Ljava/nio/ByteOrder;

    .line 9
    invoke-virtual {v2}, Lv0/b$b;->readShort()S

    move-result v0
    :try_end_122
    .catch Ljava/lang/Exception; {:try_start_116 .. :try_end_122} :catch_130
    .catchall {:try_start_116 .. :try_end_122} :catchall_12d

    const/16 v6, 0x55

    if-ne v0, v6, :cond_128

    const/4 v0, 0x1

    goto :goto_129

    :cond_128
    move v0, v4

    :goto_129
    invoke-virtual {v2}, Ljava/io/InputStream;->close()V

    goto :goto_141

    :catchall_12d
    move-exception v0

    move-object v6, v2

    goto :goto_134

    :catch_130
    move-object v6, v2

    goto :goto_13b

    :catchall_132
    move-exception v0

    const/4 v6, 0x0

    :goto_134
    if-eqz v6, :cond_139

    invoke-virtual {v6}, Ljava/io/InputStream;->close()V

    :cond_139
    throw v0

    :catch_13a
    const/4 v6, 0x0

    :goto_13b
    if-eqz v6, :cond_140

    invoke-virtual {v6}, Ljava/io/InputStream;->close()V

    :cond_140
    move v0, v4

    :goto_141
    if-eqz v0, :cond_146

    const/16 v0, 0xa

    return v0

    :cond_146
    move v0, v4

    .line 10
    :goto_147
    sget-object v2, Lv0/b;->y:[B

    array-length v6, v2

    if-ge v0, v6, :cond_157

    aget-byte v6, v3, v0

    aget-byte v2, v2, v0

    if-eq v6, v2, :cond_154

    move v0, v4

    goto :goto_158

    :cond_154
    add-int/lit8 v0, v0, 0x1

    goto :goto_147

    :cond_157
    const/4 v0, 0x1

    :goto_158
    if-eqz v0, :cond_15d

    const/16 v0, 0xd

    return v0

    :cond_15d
    move v0, v4

    .line 11
    :goto_15e
    sget-object v2, Lv0/b;->C:[B

    array-length v6, v2

    if-ge v0, v6, :cond_16d

    aget-byte v6, v3, v0

    aget-byte v2, v2, v0

    if-eq v6, v2, :cond_16a

    goto :goto_17e

    :cond_16a
    add-int/lit8 v0, v0, 0x1

    goto :goto_15e

    :cond_16d
    move v0, v4

    :goto_16e
    sget-object v2, Lv0/b;->D:[B

    array-length v6, v2

    if-ge v0, v6, :cond_183

    sget-object v6, Lv0/b;->C:[B

    array-length v6, v6

    add-int/2addr v6, v0

    add-int/2addr v6, v5

    aget-byte v6, v3, v6

    aget-byte v2, v2, v0

    if-eq v6, v2, :cond_180

    :goto_17e
    move v7, v4

    goto :goto_184

    :cond_180
    add-int/lit8 v0, v0, 0x1

    goto :goto_16e

    :cond_183
    const/4 v7, 0x1

    :goto_184
    if-eqz v7, :cond_189

    const/16 v0, 0xe

    return v0

    :cond_189
    return v4

    :catchall_18a
    move-exception v0

    move-object v6, v8

    :goto_18c
    move-object v8, v6

    :goto_18d
    if-eqz v8, :cond_192

    .line 12
    invoke-virtual {v8}, Ljava/io/InputStream;->close()V

    :cond_192
    throw v0
.end method

.method public final i(Lv0/b$b;)V
    .registers 8

    invoke-virtual {p0, p1}, Lv0/b;->l(Lv0/b$b;)V

    iget-object p1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v0, 0x1

    aget-object p1, p1, v0

    const-string v1, "MakerNote"

    invoke-virtual {p1, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Lv0/b$c;

    if-eqz p1, :cond_ef

    new-instance v1, Lv0/b$b;

    iget-object p1, p1, Lv0/b$c;->c:[B

    invoke-direct {v1, p1}, Lv0/b$b;-><init>([B)V

    iget-object p1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    .line 1
    iput-object p1, v1, Lv0/b$b;->s:Ljava/nio/ByteOrder;

    .line 2
    sget-object p1, Lv0/b;->w:[B

    array-length v2, p1

    new-array v2, v2, [B

    invoke-virtual {v1, v2}, Lv0/b$b;->readFully([B)V

    const-wide/16 v3, 0x0

    invoke-virtual {v1, v3, v4}, Lv0/b$b;->e(J)V

    sget-object v3, Lv0/b;->x:[B

    array-length v4, v3

    new-array v4, v4, [B

    invoke-virtual {v1, v4}, Lv0/b$b;->readFully([B)V

    invoke-static {v2, p1}, Ljava/util/Arrays;->equals([B[B)Z

    move-result p1

    if-eqz p1, :cond_3b

    const-wide/16 v2, 0x8

    goto :goto_43

    :cond_3b
    invoke-static {v4, v3}, Ljava/util/Arrays;->equals([B[B)Z

    move-result p1

    if-eqz p1, :cond_46

    const-wide/16 v2, 0xc

    :goto_43
    invoke-virtual {v1, v2, v3}, Lv0/b$b;->e(J)V

    :cond_46
    const/4 p1, 0x6

    invoke-virtual {p0, v1, p1}, Lv0/b;->v(Lv0/b$b;I)V

    iget-object p1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v1, 0x7

    aget-object p1, p1, v1

    const-string v2, "PreviewImageStart"

    invoke-virtual {p1, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Lv0/b$c;

    iget-object v2, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v2, v1

    const-string v2, "PreviewImageLength"

    invoke-virtual {v1, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lv0/b$c;

    if-eqz p1, :cond_7a

    if-eqz v1, :cond_7a

    iget-object v2, p0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v3, 0x5

    aget-object v2, v2, v3

    const-string v4, "JPEGInterchangeFormat"

    invoke-virtual {v2, v4, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    iget-object p1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object p1, p1, v3

    const-string v2, "JPEGInterchangeFormatLength"

    invoke-virtual {p1, v2, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_7a
    iget-object p1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    const/16 v1, 0x8

    aget-object p1, p1, v1

    const-string v1, "AspectFrame"

    invoke-virtual {p1, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Lv0/b$c;

    if-eqz p1, :cond_ef

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {p1, v1}, Lv0/b$c;->h(Ljava/nio/ByteOrder;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, [I

    if-eqz p1, :cond_d9

    array-length v1, p1

    const/4 v2, 0x4

    if-eq v1, v2, :cond_99

    goto :goto_d9

    :cond_99
    const/4 v1, 0x2

    aget v2, p1, v1

    const/4 v3, 0x0

    aget v4, p1, v3

    if-le v2, v4, :cond_ef

    const/4 v2, 0x3

    aget v4, p1, v2

    aget v5, p1, v0

    if-le v4, v5, :cond_ef

    aget v1, p1, v1

    aget v4, p1, v3

    sub-int/2addr v1, v4

    add-int/2addr v1, v0

    aget v2, p1, v2

    aget p1, p1, v0

    sub-int/2addr v2, p1

    add-int/2addr v2, v0

    if-ge v1, v2, :cond_ba

    add-int/2addr v1, v2

    sub-int v2, v1, v2

    sub-int/2addr v1, v2

    :cond_ba
    iget-object p1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v1, p1}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object p1

    iget-object v0, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v2, v0}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v0

    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v1, v3

    const-string v2, "ImageWidth"

    invoke-virtual {v1, v2, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    iget-object p1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object p1, p1, v3

    const-string v1, "ImageLength"

    invoke-virtual {p1, v1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_ef

    :cond_d9
    :goto_d9
    const-string v0, "Invalid aspect frame values. frame="

    invoke-static {v0}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-static {p1}, Ljava/util/Arrays;->toString([I)Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    const-string v0, "ExifInterface"

    invoke-static {v0, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I

    :cond_ef
    :goto_ef
    return-void
.end method

.method public final j(Lv0/b$b;)V
    .registers 8

    sget-boolean v0, Lv0/b;->n:Z

    if-eqz v0, :cond_1a

    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "getPngAttributes starting with: "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    const-string v1, "ExifInterface"

    invoke-static {v1, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_1a
    sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;

    .line 1
    iput-object v0, p1, Lv0/b$b;->s:Ljava/nio/ByteOrder;

    .line 2
    sget-object v0, Lv0/b;->y:[B

    array-length v1, v0

    invoke-virtual {p1, v1}, Lv0/b$b;->skipBytes(I)I

    array-length v0, v0

    const/4 v1, 0x0

    add-int/2addr v0, v1

    :goto_27
    :try_start_27
    invoke-virtual {p1}, Lv0/b$b;->readInt()I

    move-result v2

    const/4 v3, 0x4

    add-int/2addr v0, v3

    new-array v4, v3, [B

    invoke-virtual {p1, v4}, Ljava/io/InputStream;->read([B)I

    move-result v5

    if-ne v5, v3, :cond_c9

    add-int/2addr v0, v3

    const/16 v3, 0x10

    if-ne v0, v3, :cond_4b

    sget-object v3, Lv0/b;->A:[B

    invoke-static {v4, v3}, Ljava/util/Arrays;->equals([B[B)Z

    move-result v3

    if-eqz v3, :cond_43

    goto :goto_4b

    :cond_43
    new-instance p1, Ljava/io/IOException;

    const-string v0, "Encountered invalid PNG file--IHDR chunk should appearas the first chunk"

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_4b
    :goto_4b
    sget-object v3, Lv0/b;->B:[B

    invoke-static {v4, v3}, Ljava/util/Arrays;->equals([B[B)Z

    move-result v3

    if-eqz v3, :cond_54

    goto :goto_82

    :cond_54
    sget-object v3, Lv0/b;->z:[B

    invoke-static {v4, v3}, Ljava/util/Arrays;->equals([B[B)Z

    move-result v3

    if-eqz v3, :cond_c1

    new-array v3, v2, [B

    invoke-virtual {p1, v3}, Ljava/io/InputStream;->read([B)I

    move-result v5

    if-ne v5, v2, :cond_a6

    invoke-virtual {p1}, Lv0/b$b;->readInt()I

    move-result p1

    new-instance v2, Ljava/util/zip/CRC32;

    invoke-direct {v2}, Ljava/util/zip/CRC32;-><init>()V

    invoke-virtual {v2, v4}, Ljava/util/zip/CRC32;->update([B)V

    invoke-virtual {v2, v3}, Ljava/util/zip/CRC32;->update([B)V

    invoke-virtual {v2}, Ljava/util/zip/CRC32;->getValue()J

    move-result-wide v4

    long-to-int v4, v4

    if-ne v4, p1, :cond_83

    iput v0, p0, Lv0/b;->i:I

    invoke-virtual {p0, v3, v1}, Lv0/b;->u([BI)V

    invoke-virtual {p0}, Lv0/b;->A()V

    :goto_82
    return-void

    :cond_83
    new-instance v0, Ljava/io/IOException;

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v3, "Encountered invalid CRC value for PNG-EXIF chunk.\n recorded CRC value: "

    invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    const-string p1, ", calculated CRC value: "

    invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/util/zip/CRC32;->getValue()J

    move-result-wide v2

    invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    invoke-direct {v0, p1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw v0

    :cond_a6
    new-instance p1, Ljava/io/IOException;

    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "Failed to read given length for given PNG chunk type: "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-static {v4}, Lv0/b;->b([B)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_c1
    add-int/lit8 v2, v2, 0x4

    invoke-virtual {p1, v2}, Lv0/b$b;->skipBytes(I)I

    add-int/2addr v0, v2

    goto/16 :goto_27

    :cond_c9
    new-instance p1, Ljava/io/IOException;

    const-string v0, "Encountered invalid length while parsing PNG chunktype"

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1
    :try_end_d1
    .catch Ljava/io/EOFException; {:try_start_27 .. :try_end_d1} :catch_d1

    :catch_d1
    new-instance p1, Ljava/io/IOException;

    const-string v0, "Encountered corrupt PNG file."

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public final k(Lv0/b$b;)V
    .registers 9

    const/16 v0, 0x54

    invoke-virtual {p1, v0}, Lv0/b$b;->skipBytes(I)I

    const/4 v0, 0x4

    new-array v1, v0, [B

    new-array v2, v0, [B

    invoke-virtual {p1, v1}, Ljava/io/InputStream;->read([B)I

    invoke-virtual {p1, v0}, Lv0/b$b;->skipBytes(I)I

    invoke-virtual {p1, v2}, Ljava/io/InputStream;->read([B)I

    invoke-static {v1}, Ljava/nio/ByteBuffer;->wrap([B)Ljava/nio/ByteBuffer;

    move-result-object v0

    invoke-virtual {v0}, Ljava/nio/ByteBuffer;->getInt()I

    move-result v0

    invoke-static {v2}, Ljava/nio/ByteBuffer;->wrap([B)Ljava/nio/ByteBuffer;

    move-result-object v1

    invoke-virtual {v1}, Ljava/nio/ByteBuffer;->getInt()I

    move-result v1

    const/4 v2, 0x5

    invoke-virtual {p0, p1, v0, v2}, Lv0/b;->g(Lv0/b$b;II)V

    int-to-long v0, v1

    invoke-virtual {p1, v0, v1}, Lv0/b$b;->e(J)V

    sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;

    .line 1
    iput-object v0, p1, Lv0/b$b;->s:Ljava/nio/ByteOrder;

    .line 2
    invoke-virtual {p1}, Lv0/b$b;->readInt()I

    move-result v0

    sget-boolean v1, Lv0/b;->n:Z

    const-string v2, "ExifInterface"

    if-eqz v1, :cond_4d

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v3, "numberOfDirectoryEntry: "

    invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v2, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_4d
    const/4 v1, 0x0

    move v3, v1

    :goto_4f
    if-ge v3, v0, :cond_ac

    invoke-virtual {p1}, Lv0/b$b;->readUnsignedShort()I

    move-result v4

    invoke-virtual {p1}, Lv0/b$b;->readUnsignedShort()I

    move-result v5

    sget-object v6, Lv0/b;->I:Lv0/b$d;

    iget v6, v6, Lv0/b$d;->a:I

    if-ne v4, v6, :cond_a6

    invoke-virtual {p1}, Lv0/b$b;->readShort()S

    move-result v0

    invoke-virtual {p1}, Lv0/b$b;->readShort()S

    move-result p1

    iget-object v3, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v0, v3}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v3

    iget-object v4, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {p1, v4}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v4

    iget-object v5, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v5, v5, v1

    const-string v6, "ImageLength"

    invoke-virtual {v5, v6, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    iget-object v3, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v3, v1

    const-string v3, "ImageWidth"

    invoke-virtual {v1, v3, v4}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    sget-boolean v1, Lv0/b;->n:Z

    if-eqz v1, :cond_a5

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v3, "Updated to length: "

    invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    const-string v0, ", width: "

    invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    invoke-static {v2, p1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_a5
    return-void

    :cond_a6
    invoke-virtual {p1, v5}, Lv0/b$b;->skipBytes(I)I

    add-int/lit8 v3, v3, 0x1

    goto :goto_4f

    :cond_ac
    return-void
.end method

.method public final l(Lv0/b$b;)V
    .registers 6

    invoke-virtual {p1}, Lv0/b$b;->available()I

    move-result v0

    invoke-virtual {p0, p1, v0}, Lv0/b;->r(Lv0/b$b;I)V

    const/4 v0, 0x0

    invoke-virtual {p0, p1, v0}, Lv0/b;->v(Lv0/b$b;I)V

    invoke-virtual {p0, p1, v0}, Lv0/b;->z(Lv0/b$b;I)V

    const/4 v0, 0x5

    invoke-virtual {p0, p1, v0}, Lv0/b;->z(Lv0/b$b;I)V

    const/4 v0, 0x4

    invoke-virtual {p0, p1, v0}, Lv0/b;->z(Lv0/b$b;I)V

    invoke-virtual {p0}, Lv0/b;->A()V

    iget p1, p0, Lv0/b;->c:I

    const/16 v0, 0x8

    if-ne p1, v0, :cond_58

    iget-object p1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v0, 0x1

    aget-object p1, p1, v0

    const-string v1, "MakerNote"

    invoke-virtual {p1, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Lv0/b$c;

    if-eqz p1, :cond_58

    new-instance v1, Lv0/b$b;

    iget-object p1, p1, Lv0/b$c;->c:[B

    invoke-direct {v1, p1}, Lv0/b$b;-><init>([B)V

    iget-object p1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    .line 1
    iput-object p1, v1, Lv0/b$b;->s:Ljava/nio/ByteOrder;

    const-wide/16 v2, 0x6

    .line 2
    invoke-virtual {v1, v2, v3}, Lv0/b$b;->e(J)V

    const/16 p1, 0x9

    invoke-virtual {p0, v1, p1}, Lv0/b;->v(Lv0/b$b;I)V

    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object p1, v1, p1

    const-string v1, "ColorSpace"

    invoke-virtual {p1, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Lv0/b$c;

    if-eqz p1, :cond_58

    iget-object v2, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v2, v0

    invoke-virtual {v0, v1, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_58
    return-void
.end method

.method public final m(Lv0/b$b;)V
    .registers 5

    invoke-virtual {p0, p1}, Lv0/b;->l(Lv0/b$b;)V

    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v1, 0x0

    aget-object v0, v0, v1

    const-string v2, "JpgFromRaw"

    invoke-virtual {v0, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lv0/b$c;

    if-eqz v0, :cond_18

    iget v0, p0, Lv0/b;->m:I

    const/4 v2, 0x5

    invoke-virtual {p0, p1, v0, v2}, Lv0/b;->g(Lv0/b$b;II)V

    :cond_18
    iget-object p1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object p1, p1, v1

    const-string v0, "ISO"

    invoke-virtual {p1, v0}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Lv0/b$c;

    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v1, 0x1

    aget-object v0, v0, v1

    const-string v2, "PhotographicSensitivity"

    invoke-virtual {v0, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lv0/b$c;

    if-eqz p1, :cond_3c

    if-nez v0, :cond_3c

    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v0, v1

    invoke-virtual {v0, v2, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_3c
    return-void
.end method

.method public final n(Lv0/b$b;)V
    .registers 4

    sget-object v0, Lv0/b;->Q:[B

    array-length v1, v0

    invoke-virtual {p1, v1}, Lv0/b$b;->skipBytes(I)I

    invoke-virtual {p1}, Lv0/b$b;->available()I

    move-result v1

    new-array v1, v1, [B

    invoke-virtual {p1, v1}, Lv0/b$b;->readFully([B)V

    array-length p1, v0

    iput p1, p0, Lv0/b;->i:I

    const/4 p1, 0x0

    invoke-virtual {p0, v1, p1}, Lv0/b;->u([BI)V

    return-void
.end method

.method public final o(Lv0/b$b;)V
    .registers 7

    sget-boolean v0, Lv0/b;->n:Z

    if-eqz v0, :cond_1a

    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "getWebpAttributes starting with: "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    const-string v1, "ExifInterface"

    invoke-static {v1, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_1a
    sget-object v0, Ljava/nio/ByteOrder;->LITTLE_ENDIAN:Ljava/nio/ByteOrder;

    .line 1
    iput-object v0, p1, Lv0/b$b;->s:Ljava/nio/ByteOrder;

    .line 2
    sget-object v0, Lv0/b;->C:[B

    array-length v0, v0

    invoke-virtual {p1, v0}, Lv0/b$b;->skipBytes(I)I

    invoke-virtual {p1}, Lv0/b$b;->readInt()I

    move-result v0

    add-int/lit8 v0, v0, 0x8

    sget-object v1, Lv0/b;->D:[B

    array-length v1, v1

    invoke-virtual {p1, v1}, Lv0/b$b;->skipBytes(I)I

    move-result v1

    add-int/lit8 v1, v1, 0x8

    :goto_33
    const/4 v2, 0x4

    :try_start_34
    new-array v3, v2, [B

    invoke-virtual {p1, v3}, Ljava/io/InputStream;->read([B)I

    move-result v4

    if-ne v4, v2, :cond_9a

    add-int/2addr v1, v2

    invoke-virtual {p1}, Lv0/b$b;->readInt()I

    move-result v4

    add-int/2addr v1, v2

    sget-object v2, Lv0/b;->E:[B

    invoke-static {v2, v3}, Ljava/util/Arrays;->equals([B[B)Z

    move-result v2

    if-eqz v2, :cond_76

    new-array v0, v4, [B

    invoke-virtual {p1, v0}, Ljava/io/InputStream;->read([B)I

    move-result p1

    if-ne p1, v4, :cond_5b

    iput v1, p0, Lv0/b;->i:I

    const/4 p1, 0x0

    invoke-virtual {p0, v0, p1}, Lv0/b;->u([BI)V

    iput v1, p0, Lv0/b;->i:I

    goto :goto_81

    :cond_5b
    new-instance p1, Ljava/io/IOException;

    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "Failed to read given length for given PNG chunk type: "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-static {v3}, Lv0/b;->b([B)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_76
    rem-int/lit8 v2, v4, 0x2
    :try_end_78
    .catch Ljava/io/EOFException; {:try_start_34 .. :try_end_78} :catch_a2

    const/4 v3, 0x1

    if-ne v2, v3, :cond_7d

    add-int/lit8 v4, v4, 0x1

    :cond_7d
    add-int v2, v1, v4

    if-ne v2, v0, :cond_82

    :goto_81
    return-void

    :cond_82
    const-string v3, "Encountered WebP file with invalid chunk size"

    if-gt v2, v0, :cond_94

    :try_start_86
    invoke-virtual {p1, v4}, Lv0/b$b;->skipBytes(I)I

    move-result v2

    if-ne v2, v4, :cond_8e

    add-int/2addr v1, v2

    goto :goto_33

    :cond_8e
    new-instance p1, Ljava/io/IOException;

    invoke-direct {p1, v3}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_94
    new-instance p1, Ljava/io/IOException;

    invoke-direct {p1, v3}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_9a
    new-instance p1, Ljava/io/IOException;

    const-string v0, "Encountered invalid length while parsing WebP chunktype"

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1
    :try_end_a2
    .catch Ljava/io/EOFException; {:try_start_86 .. :try_end_a2} :catch_a2

    :catch_a2
    new-instance p1, Ljava/io/IOException;

    const-string v0, "Encountered corrupt WebP file."

    invoke-direct {p1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public final p(Lv0/b$b;Ljava/util/HashMap;)V
    .registers 8

    const-string v0, "JPEGInterchangeFormat"

    invoke-virtual {p2, v0}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lv0/b$c;

    const-string v1, "JPEGInterchangeFormatLength"

    invoke-virtual {p2, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p2

    check-cast p2, Lv0/b$c;

    if-eqz v0, :cond_69

    if-eqz p2, :cond_69

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v0, v1}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v0

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {p2, v1}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result p2

    iget v1, p0, Lv0/b;->c:I

    const/4 v2, 0x7

    if-ne v1, v2, :cond_28

    iget v1, p0, Lv0/b;->j:I

    add-int/2addr v0, v1

    .line 1
    :cond_28
    iget v1, p1, Lv0/b$b;->t:I

    sub-int/2addr v1, v0

    .line 2
    invoke-static {p2, v1}, Ljava/lang/Math;->min(II)I

    move-result p2

    if-lez v0, :cond_47

    if-lez p2, :cond_47

    iget v1, p0, Lv0/b;->i:I

    add-int/2addr v1, v0

    iget-object v2, p0, Lv0/b;->b:Landroid/content/res/AssetManager$AssetInputStream;

    if-nez v2, :cond_47

    iget-object v2, p0, Lv0/b;->a:Ljava/io/FileDescriptor;

    if-nez v2, :cond_47

    new-array v2, p2, [B

    int-to-long v3, v1

    invoke-virtual {p1, v3, v4}, Lv0/b$b;->e(J)V

    invoke-virtual {p1, v2}, Lv0/b$b;->readFully([B)V

    :cond_47
    sget-boolean p1, Lv0/b;->n:Z

    if-eqz p1, :cond_69

    new-instance p1, Ljava/lang/StringBuilder;

    invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "Setting thumbnail attributes with offset: "

    invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    const-string v0, ", length: "

    invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    const-string p2, "ExifInterface"

    invoke-static {p2, p1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_69
    return-void
.end method

.method public final q(Ljava/util/HashMap;)Z
    .registers 4

    const-string v0, "ImageLength"

    invoke-virtual {p1, v0}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lv0/b$c;

    const-string v1, "ImageWidth"

    invoke-virtual {p1, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Lv0/b$c;

    if-eqz v0, :cond_28

    if-eqz p1, :cond_28

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v0, v1}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v0

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {p1, v1}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result p1

    const/16 v1, 0x200

    if-gt v0, v1, :cond_28

    if-gt p1, v1, :cond_28

    const/4 p1, 0x1

    return p1

    :cond_28
    const/4 p1, 0x0

    return p1
.end method

.method public final r(Lv0/b$b;I)V
    .registers 6

    invoke-virtual {p0, p1}, Lv0/b;->t(Lv0/b$b;)Ljava/nio/ByteOrder;

    move-result-object v0

    iput-object v0, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    .line 1
    iput-object v0, p1, Lv0/b$b;->s:Ljava/nio/ByteOrder;

    .line 2
    invoke-virtual {p1}, Lv0/b$b;->readUnsignedShort()I

    move-result v0

    iget v1, p0, Lv0/b;->c:I

    const/4 v2, 0x7

    if-eq v1, v2, :cond_31

    const/16 v2, 0xa

    if-eq v1, v2, :cond_31

    const/16 v1, 0x2a

    if-ne v0, v1, :cond_1a

    goto :goto_31

    :cond_1a
    new-instance p1, Ljava/io/IOException;

    const-string p2, "Invalid start code: "

    invoke-static {p2}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object p2

    invoke-static {v0}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p2

    invoke-direct {p1, p2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_31
    :goto_31
    invoke-virtual {p1}, Lv0/b$b;->readInt()I

    move-result v0

    const/16 v1, 0x8

    if-lt v0, v1, :cond_53

    if-ge v0, p2, :cond_53

    add-int/lit8 v0, v0, -0x8

    if-lez v0, :cond_52

    invoke-virtual {p1, v0}, Lv0/b$b;->skipBytes(I)I

    move-result p1

    if-ne p1, v0, :cond_46

    goto :goto_52

    :cond_46
    new-instance p1, Ljava/io/IOException;

    const-string p2, "Couldn\'t jump to first Ifd: "

    invoke-static {p2, v0}, Landroidx/appcompat/widget/e0;->a(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object p2

    invoke-direct {p1, p2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_52
    :goto_52
    return-void

    :cond_53
    new-instance p1, Ljava/io/IOException;

    const-string p2, "Invalid first Ifd offset: "

    invoke-static {p2, v0}, Landroidx/appcompat/widget/e0;->a(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object p2

    invoke-direct {p1, p2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public final s()V
    .registers 7

    const/4 v0, 0x0

    :goto_1
    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    array-length v1, v1

    if-ge v0, v1, :cond_79

    const-string v1, "The size of tag group["

    const-string v2, "]: "

    invoke-static {v1, v0, v2}, Landroidx/appcompat/widget/a1;->a(Ljava/lang/String;ILjava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    iget-object v2, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v2, v2, v0

    invoke-virtual {v2}, Ljava/util/HashMap;->size()I

    move-result v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    const-string v2, "ExifInterface"

    invoke-static {v2, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v1, v0

    invoke-virtual {v1}, Ljava/util/HashMap;->entrySet()Ljava/util/Set;

    move-result-object v1

    invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v1

    :goto_2e
    invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z

    move-result v3

    if-eqz v3, :cond_76

    invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Ljava/util/Map$Entry;

    invoke-interface {v3}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;

    move-result-object v4

    check-cast v4, Lv0/b$c;

    const-string v5, "tagName: "

    invoke-static {v5}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v5

    invoke-interface {v3}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Ljava/lang/String;

    invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v3, ", tagType: "

    invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v4}, Lv0/b$c;->toString()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v3, ", tagValue: \'"

    invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    iget-object v3, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v4, v3}, Lv0/b$c;->g(Ljava/nio/ByteOrder;)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v3, "\'"

    invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v3

    invoke-static {v2, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_2e

    :cond_76
    add-int/lit8 v0, v0, 0x1

    goto :goto_1

    :cond_79
    return-void
.end method

.method public final t(Lv0/b$b;)Ljava/nio/ByteOrder;
    .registers 4

    invoke-virtual {p1}, Lv0/b$b;->readShort()S

    move-result p1

    const/16 v0, 0x4949

    const-string v1, "ExifInterface"

    if-eq p1, v0, :cond_31

    const/16 v0, 0x4d4d

    if-ne p1, v0, :cond_1a

    sget-boolean p1, Lv0/b;->n:Z

    if-eqz p1, :cond_17

    const-string p1, "readExifSegment: Byte Align MM"

    invoke-static {v1, p1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_17
    sget-object p1, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;

    return-object p1

    :cond_1a
    new-instance v0, Ljava/io/IOException;

    const-string v1, "Invalid byte order: "

    invoke-static {v1}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-static {p1}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    invoke-direct {v0, p1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V

    throw v0

    :cond_31
    sget-boolean p1, Lv0/b;->n:Z

    if-eqz p1, :cond_3a

    const-string p1, "readExifSegment: Byte Align II"

    invoke-static {v1, p1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_3a
    sget-object p1, Ljava/nio/ByteOrder;->LITTLE_ENDIAN:Ljava/nio/ByteOrder;

    return-object p1
.end method

.method public final u([BI)V
    .registers 4

    new-instance v0, Lv0/b$b;

    invoke-direct {v0, p1}, Lv0/b$b;-><init>([B)V

    array-length p1, p1

    invoke-virtual {p0, v0, p1}, Lv0/b;->r(Lv0/b$b;I)V

    invoke-virtual {p0, v0, p2}, Lv0/b;->v(Lv0/b$b;I)V

    return-void
.end method

.method public final v(Lv0/b$b;I)V
    .registers 26

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move/from16 v2, p2

    iget-object v3, v0, Lv0/b;->f:Ljava/util/Set;

    iget v4, v1, Lv0/b$b;->u:I

    invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

    invoke-interface {v3, v4}, Ljava/util/Set;->add(Ljava/lang/Object;)Z

    iget v3, v1, Lv0/b$b;->u:I

    add-int/lit8 v3, v3, 0x2

    iget v4, v1, Lv0/b$b;->t:I

    if-le v3, v4, :cond_1a

    return-void

    :cond_1a
    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readShort()S

    move-result v3

    sget-boolean v4, Lv0/b;->n:Z

    const-string v5, "ExifInterface"

    if-eqz v4, :cond_38

    new-instance v4, Ljava/lang/StringBuilder;

    invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V

    const-string v6, "numberOfDirectoryEntry: "

    invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v4

    invoke-static {v5, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_38
    iget v4, v1, Lv0/b$b;->u:I

    mul-int/lit8 v6, v3, 0xc

    add-int/2addr v6, v4

    iget v4, v1, Lv0/b$b;->t:I

    if-gt v6, v4, :cond_40a

    if-gtz v3, :cond_45

    goto/16 :goto_40a

    :cond_45
    const/4 v4, 0x0

    move v6, v4

    :goto_47
    const/4 v7, 0x5

    if-ge v4, v3, :cond_38f

    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readUnsignedShort()I

    move-result v8

    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readUnsignedShort()I

    move-result v9

    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readInt()I

    move-result v12

    .line 1
    iget v10, v1, Lv0/b$b;->u:I

    int-to-long v10, v10

    const-wide/16 v13, 0x4

    add-long/2addr v10, v13

    .line 2
    sget-object v15, Lv0/b;->L:[Ljava/util/HashMap;

    aget-object v15, v15, v2

    invoke-static {v8}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v13

    invoke-virtual {v15, v13}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v13

    move-object v15, v13

    check-cast v15, Lv0/b$d;

    sget-boolean v13, Lv0/b;->n:Z

    const/4 v14, 0x3

    if-eqz v13, :cond_a0

    new-array v7, v7, [Ljava/lang/Object;

    invoke-static/range {p2 .. p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v18

    aput-object v18, v7, v6

    invoke-static {v8}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v6

    const/16 v18, 0x1

    aput-object v6, v7, v18

    if-eqz v15, :cond_85

    iget-object v6, v15, Lv0/b$d;->b:Ljava/lang/String;

    goto :goto_86

    :cond_85
    const/4 v6, 0x0

    :goto_86
    const/16 v18, 0x2

    aput-object v6, v7, v18

    invoke-static {v9}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v6

    aput-object v6, v7, v14

    invoke-static {v12}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v6

    const/4 v14, 0x4

    aput-object v6, v7, v14

    const-string v6, "ifdType: %d, tagNumber: %d, tagName: %s, dataFormat: %d, numberOfComponents: %d"

    invoke-static {v6, v7}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v6

    invoke-static {v5, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_a0
    const/4 v6, 0x7

    if-nez v15, :cond_bd

    if-eqz v13, :cond_b9

    new-instance v6, Ljava/lang/StringBuilder;

    invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V

    const-string v7, "Skip the tag entry since tag number is not defined: "

    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v6

    invoke-static {v5, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_b9
    move/from16 v18, v3

    goto/16 :goto_11c

    :cond_bd
    if-lez v9, :cond_153

    sget-object v7, Lv0/b;->G:[I

    array-length v14, v7

    if-lt v9, v14, :cond_c6

    goto/16 :goto_153

    .line 3
    :cond_c6
    iget v14, v15, Lv0/b$d;->c:I

    if-eq v14, v6, :cond_f7

    if-ne v9, v6, :cond_cd

    goto :goto_f7

    :cond_cd
    if-eq v14, v9, :cond_f7

    iget v6, v15, Lv0/b$d;->d:I

    if-ne v6, v9, :cond_d4

    goto :goto_f7

    :cond_d4
    move/from16 v18, v3

    const/4 v3, 0x4

    if-eq v14, v3, :cond_db

    if-ne v6, v3, :cond_df

    :cond_db
    const/4 v3, 0x3

    if-ne v9, v3, :cond_df

    goto :goto_f9

    :cond_df
    const/16 v3, 0x9

    if-eq v14, v3, :cond_e5

    if-ne v6, v3, :cond_ea

    :cond_e5
    const/16 v3, 0x8

    if-ne v9, v3, :cond_ea

    goto :goto_f9

    :cond_ea
    const/16 v3, 0xc

    if-eq v14, v3, :cond_f0

    if-ne v6, v3, :cond_f5

    :cond_f0
    const/16 v3, 0xb

    if-ne v9, v3, :cond_f5

    goto :goto_f9

    :cond_f5
    const/4 v3, 0x0

    goto :goto_fa

    :cond_f7
    :goto_f7
    move/from16 v18, v3

    :goto_f9
    const/4 v3, 0x1

    :goto_fa
    if-nez v3, :cond_11f

    if-eqz v13, :cond_11c

    const-string v3, "Skip the tag entry since data format ("

    .line 4
    invoke-static {v3}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v3

    sget-object v6, Lv0/b;->F:[Ljava/lang/String;

    aget-object v6, v6, v9

    invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v6, ") is unexpected for tag: "

    invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    iget-object v6, v15, Lv0/b$d;->b:Ljava/lang/String;

    invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v3

    invoke-static {v5, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_11c
    :goto_11c
    move/from16 v19, v4

    goto :goto_16d

    :cond_11f
    const/4 v3, 0x7

    move v6, v4

    if-ne v9, v3, :cond_124

    move v9, v14

    :cond_124
    int-to-long v3, v12

    aget v7, v7, v9

    move/from16 v19, v6

    int-to-long v6, v7

    mul-long/2addr v3, v6

    const-wide/16 v6, 0x0

    cmp-long v6, v3, v6

    if-ltz v6, :cond_13b

    const-wide/32 v6, 0x7fffffff

    cmp-long v6, v3, v6

    if-lez v6, :cond_139

    goto :goto_13b

    :cond_139
    const/4 v6, 0x1

    goto :goto_170

    :cond_13b
    :goto_13b
    if-eqz v13, :cond_151

    new-instance v6, Ljava/lang/StringBuilder;

    invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V

    const-string v7, "Skip the tag entry since the number of components is invalid: "

    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v6, v12}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v6

    invoke-static {v5, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_151
    const/4 v6, 0x0

    goto :goto_170

    :cond_153
    :goto_153
    move/from16 v18, v3

    move/from16 v19, v4

    if-eqz v13, :cond_16d

    new-instance v3, Ljava/lang/StringBuilder;

    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

    const-string v4, "Skip the tag entry since data format is invalid: "

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v3, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v3

    invoke-static {v5, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_16d
    :goto_16d
    const/4 v6, 0x0

    const-wide/16 v3, 0x0

    :goto_170
    if-nez v6, :cond_177

    :goto_172
    invoke-virtual {v1, v10, v11}, Lv0/b$b;->e(J)V

    goto/16 :goto_23d

    :cond_177
    const-wide/16 v6, 0x4

    cmp-long v6, v3, v6

    const-string v7, "Compression"

    if-lez v6, :cond_240

    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readInt()I

    move-result v6

    if-eqz v13, :cond_19c

    new-instance v14, Ljava/lang/StringBuilder;

    invoke-direct {v14}, Ljava/lang/StringBuilder;-><init>()V

    move/from16 v16, v9

    const-string v9, "seek to data offset: "

    invoke-virtual {v14, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v14, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v14}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v9

    invoke-static {v5, v9}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_19e

    :cond_19c
    move/from16 v16, v9

    :goto_19e
    iget v9, v0, Lv0/b;->c:I

    const/4 v14, 0x7

    if-ne v9, v14, :cond_1fc

    iget-object v9, v15, Lv0/b$d;->b:Ljava/lang/String;

    const-string v14, "MakerNote"

    invoke-virtual {v14, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v9

    if-eqz v9, :cond_1b0

    iput v6, v0, Lv0/b;->j:I

    goto :goto_1f8

    :cond_1b0
    const/4 v9, 0x6

    if-ne v2, v9, :cond_1f8

    iget-object v9, v15, Lv0/b$d;->b:Ljava/lang/String;

    const-string v14, "ThumbnailImage"

    invoke-virtual {v14, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v9

    if-eqz v9, :cond_1f8

    iput v6, v0, Lv0/b;->k:I

    iput v12, v0, Lv0/b;->l:I

    iget-object v9, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    const/4 v14, 0x6

    invoke-static {v14, v9}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v9

    iget v14, v0, Lv0/b;->k:I

    move-wide/from16 v20, v10

    int-to-long v10, v14

    iget-object v14, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v10, v11, v14}, Lv0/b$c;->b(JLjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v10

    iget v11, v0, Lv0/b;->l:I

    move v14, v12

    int-to-long v11, v11

    iget-object v2, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v11, v12, v2}, Lv0/b$c;->b(JLjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v2

    iget-object v11, v0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v12, 0x4

    aget-object v11, v11, v12

    invoke-virtual {v11, v7, v9}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    iget-object v9, v0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v9, v9, v12

    const-string v11, "JPEGInterchangeFormat"

    invoke-virtual {v9, v11, v10}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    iget-object v9, v0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v9, v9, v12

    const-string v10, "JPEGInterchangeFormatLength"

    invoke-virtual {v9, v10, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_20f

    :cond_1f8
    :goto_1f8
    move-wide/from16 v20, v10

    move v14, v12

    goto :goto_20f

    :cond_1fc
    move-wide/from16 v20, v10

    move v14, v12

    const/16 v2, 0xa

    if-ne v9, v2, :cond_20f

    iget-object v2, v15, Lv0/b$d;->b:Ljava/lang/String;

    const-string v9, "JpgFromRaw"

    invoke-virtual {v9, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v2

    if-eqz v2, :cond_20f

    iput v6, v0, Lv0/b;->m:I

    :cond_20f
    :goto_20f
    int-to-long v9, v6

    add-long v11, v9, v3

    iget v2, v1, Lv0/b$b;->t:I

    move/from16 v22, v14

    move-object/from16 v17, v15

    int-to-long v14, v2

    cmp-long v2, v11, v14

    if-gtz v2, :cond_223

    invoke-virtual {v1, v9, v10}, Lv0/b$b;->e(J)V

    move-wide/from16 v10, v20

    goto :goto_246

    :cond_223
    if-eqz v13, :cond_239

    new-instance v2, Ljava/lang/StringBuilder;

    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V

    const-string v3, "Skip the tag entry since data offset is invalid: "

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2

    invoke-static {v5, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_239
    move-wide/from16 v10, v20

    goto/16 :goto_172

    :goto_23d
    move-object v2, v5

    goto/16 :goto_384

    :cond_240
    move/from16 v16, v9

    move/from16 v22, v12

    move-object/from16 v17, v15

    :goto_246
    sget-object v2, Lv0/b;->O:Ljava/util/HashMap;

    invoke-static {v8}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v6

    invoke-virtual {v2, v6}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Ljava/lang/Integer;

    if-eqz v13, :cond_270

    new-instance v6, Ljava/lang/StringBuilder;

    invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V

    const-string v8, "nextIfdType: "

    invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

    const-string v8, " byteCount: "

    invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v6, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v6

    invoke-static {v5, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_270
    if-eqz v2, :cond_30e

    const-wide/16 v3, -0x1

    const/4 v6, 0x3

    move/from16 v9, v16

    if-eq v9, v6, :cond_298

    const/4 v6, 0x4

    if-eq v9, v6, :cond_293

    const/16 v6, 0x8

    if-eq v9, v6, :cond_28e

    const/16 v6, 0x9

    if-eq v9, v6, :cond_289

    const/16 v6, 0xd

    if-eq v9, v6, :cond_289

    goto :goto_29d

    :cond_289
    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readInt()I

    move-result v3

    goto :goto_29c

    :cond_28e
    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readShort()S

    move-result v3

    goto :goto_29c

    :cond_293
    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->b()J

    move-result-wide v3

    goto :goto_29d

    :cond_298
    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readUnsignedShort()I

    move-result v3

    :goto_29c
    int-to-long v3, v3

    :goto_29d
    const/4 v6, 0x2

    if-eqz v13, :cond_2b9

    new-array v6, v6, [Ljava/lang/Object;

    invoke-static {v3, v4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;

    move-result-object v7

    const/4 v8, 0x0

    aput-object v7, v6, v8

    move-object/from16 v8, v17

    iget-object v7, v8, Lv0/b$d;->b:Ljava/lang/String;

    const/4 v8, 0x1

    aput-object v7, v6, v8

    const-string v7, "Offset: %d, tagName: %s"

    invoke-static {v7, v6}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v6

    invoke-static {v5, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_2b9
    const-wide/16 v6, 0x0

    cmp-long v6, v3, v6

    if-lez v6, :cond_2ff

    iget v6, v1, Lv0/b$b;->t:I

    int-to-long v6, v6

    cmp-long v6, v3, v6

    if-gez v6, :cond_2ff

    iget-object v6, v0, Lv0/b;->f:Ljava/util/Set;

    long-to-int v7, v3

    invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v7

    invoke-interface {v6, v7}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z

    move-result v6

    if-nez v6, :cond_2de

    invoke-virtual {v1, v3, v4}, Lv0/b$b;->e(J)V

    invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I

    move-result v2

    invoke-virtual {v0, v1, v2}, Lv0/b;->v(Lv0/b$b;I)V

    goto :goto_30a

    :cond_2de
    if-eqz v13, :cond_30a

    new-instance v6, Ljava/lang/StringBuilder;

    invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V

    const-string v7, "Skip jump into the IFD since it has already been read: IfdType "

    invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

    const-string v2, " (at "

    invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v6, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    const-string v2, ")"

    invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2

    goto :goto_307

    :cond_2ff
    if-eqz v13, :cond_30a

    const-string v2, "Skip jump into the IFD since its offset is invalid: "

    invoke-static {v2, v3, v4}, Lv0/a;->a(Ljava/lang/String;J)Ljava/lang/String;

    move-result-object v2

    :goto_307
    invoke-static {v5, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_30a
    :goto_30a
    move-object v2, v5

    move-wide v4, v10

    goto/16 :goto_381

    :cond_30e
    move/from16 v9, v16

    move-object/from16 v8, v17

    .line 5
    iget v2, v1, Lv0/b$b;->u:I

    .line 6
    iget v6, v0, Lv0/b;->i:I

    add-int/2addr v2, v6

    long-to-int v3, v3

    new-array v15, v3, [B

    invoke-virtual {v1, v15}, Lv0/b$b;->readFully([B)V

    new-instance v3, Lv0/b$c;

    int-to-long v13, v2

    move-wide v11, v10

    move-object v10, v3

    move-object v2, v5

    move-wide v4, v11

    move v11, v9

    move/from16 v12, v22

    move-object v6, v8

    invoke-direct/range {v10 .. v15}, Lv0/b$c;-><init>(IIJ[B)V

    iget-object v8, v0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v8, v8, p2

    iget-object v9, v6, Lv0/b$d;->b:Ljava/lang/String;

    invoke-virtual {v8, v9, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    iget-object v8, v6, Lv0/b$d;->b:Ljava/lang/String;

    const-string v9, "DNGVersion"

    invoke-virtual {v9, v8}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v8

    if-eqz v8, :cond_341

    const/4 v8, 0x3

    iput v8, v0, Lv0/b;->c:I

    :cond_341
    iget-object v8, v6, Lv0/b$d;->b:Ljava/lang/String;

    const-string v9, "Make"

    invoke-virtual {v9, v8}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v8

    if-nez v8, :cond_355

    iget-object v8, v6, Lv0/b$d;->b:Ljava/lang/String;

    const-string v9, "Model"

    invoke-virtual {v9, v8}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v8

    if-eqz v8, :cond_363

    :cond_355
    iget-object v8, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v3, v8}, Lv0/b$c;->g(Ljava/nio/ByteOrder;)Ljava/lang/String;

    move-result-object v8

    const-string v9, "PENTAX"

    invoke-virtual {v8, v9}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

    move-result v8

    if-nez v8, :cond_376

    :cond_363
    iget-object v6, v6, Lv0/b$d;->b:Ljava/lang/String;

    invoke-virtual {v7, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v6

    if-eqz v6, :cond_37a

    iget-object v6, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v3, v6}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v3

    const v6, 0xffff

    if-ne v3, v6, :cond_37a

    :cond_376
    const/16 v3, 0x8

    iput v3, v0, Lv0/b;->c:I

    .line 7
    :cond_37a
    iget v3, v1, Lv0/b$b;->u:I

    int-to-long v6, v3

    cmp-long v3, v6, v4

    if-eqz v3, :cond_384

    .line 8
    :goto_381
    invoke-virtual {v1, v4, v5}, Lv0/b$b;->e(J)V

    :cond_384
    :goto_384
    add-int/lit8 v4, v19, 0x1

    int-to-short v4, v4

    const/4 v6, 0x0

    move-object v5, v2

    move/from16 v3, v18

    move/from16 v2, p2

    goto/16 :goto_47

    :cond_38f
    move-object v2, v5

    .line 9
    iget v3, v1, Lv0/b$b;->u:I

    add-int/lit8 v3, v3, 0x4

    .line 10
    iget v4, v1, Lv0/b$b;->t:I

    if-gt v3, v4, :cond_40a

    invoke-virtual/range {p1 .. p1}, Lv0/b$b;->readInt()I

    move-result v3

    sget-boolean v4, Lv0/b;->n:Z

    if-eqz v4, :cond_3b3

    const/4 v5, 0x1

    new-array v5, v5, [Ljava/lang/Object;

    invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v6

    const/4 v8, 0x0

    aput-object v6, v5, v8

    const-string v6, "nextIfdOffset: %d"

    invoke-static {v6, v5}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v5

    invoke-static {v2, v5}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_3b3
    int-to-long v5, v3

    const-wide/16 v8, 0x0

    cmp-long v8, v5, v8

    if-lez v8, :cond_3f4

    iget v8, v1, Lv0/b$b;->t:I

    if-ge v3, v8, :cond_3f4

    iget-object v8, v0, Lv0/b;->f:Ljava/util/Set;

    invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v9

    invoke-interface {v8, v9}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z

    move-result v8

    if-nez v8, :cond_3ea

    invoke-virtual {v1, v5, v6}, Lv0/b$b;->e(J)V

    iget-object v2, v0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v3, 0x4

    aget-object v2, v2, v3

    invoke-virtual {v2}, Ljava/util/HashMap;->isEmpty()Z

    move-result v2

    if-eqz v2, :cond_3dc

    invoke-virtual {v0, v1, v3}, Lv0/b;->v(Lv0/b$b;I)V

    goto :goto_40a

    :cond_3dc
    iget-object v2, v0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v2, v2, v7

    invoke-virtual {v2}, Ljava/util/HashMap;->isEmpty()Z

    move-result v2

    if-eqz v2, :cond_40a

    invoke-virtual {v0, v1, v7}, Lv0/b;->v(Lv0/b$b;I)V

    goto :goto_40a

    :cond_3ea
    if-eqz v4, :cond_40a

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v4, "Stop reading file since re-reading an IFD may cause an infinite loop: "

    goto :goto_3fd

    :cond_3f4
    if-eqz v4, :cond_40a

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v4, "Stop reading file since a wrong offset may cause an infinite loop: "

    :goto_3fd
    invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v2, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_40a
    :goto_40a
    return-void
.end method

.method public final w(Lv0/b$b;)V
    .registers 19

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    iget-object v2, v0, Lv0/b;->e:[Ljava/util/HashMap;

    const/4 v3, 0x4

    aget-object v2, v2, v3

    const-string v3, "Compression"

    invoke-virtual {v2, v3}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Lv0/b$c;

    if-eqz v3, :cond_10a

    iget-object v4, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v3, v4}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v3

    const/4 v4, 0x1

    const/4 v5, 0x6

    if-eq v3, v4, :cond_24

    if-eq v3, v5, :cond_10a

    const/4 v6, 0x7

    if-eq v3, v6, :cond_24

    goto/16 :goto_10d

    :cond_24
    const-string v3, "BitsPerSample"

    .line 1
    invoke-virtual {v2, v3}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Lv0/b$c;

    const-string v6, "ExifInterface"

    const/4 v7, 0x0

    if-eqz v3, :cond_6b

    iget-object v8, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v3, v8}, Lv0/b$c;->h(Ljava/nio/ByteOrder;)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, [I

    sget-object v8, Lv0/b;->q:[I

    invoke-static {v8, v3}, Ljava/util/Arrays;->equals([I[I)Z

    move-result v9

    if-eqz v9, :cond_42

    goto :goto_69

    :cond_42
    iget v9, v0, Lv0/b;->c:I

    const/4 v10, 0x3

    if-ne v9, v10, :cond_6b

    const-string v9, "PhotometricInterpretation"

    invoke-virtual {v2, v9}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v9

    check-cast v9, Lv0/b$c;

    if-eqz v9, :cond_6b

    iget-object v10, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v9, v10}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v9

    if-ne v9, v4, :cond_61

    sget-object v10, Lv0/b;->r:[I

    invoke-static {v3, v10}, Ljava/util/Arrays;->equals([I[I)Z

    move-result v10

    if-nez v10, :cond_69

    :cond_61
    if-ne v9, v5, :cond_6b

    invoke-static {v3, v8}, Ljava/util/Arrays;->equals([I[I)Z

    move-result v3

    if-eqz v3, :cond_6b

    :cond_69
    :goto_69
    move v3, v4

    goto :goto_75

    :cond_6b
    sget-boolean v3, Lv0/b;->n:Z

    if-eqz v3, :cond_74

    const-string v3, "Unsupported data type value"

    invoke-static {v6, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_74
    move v3, v7

    :goto_75
    if-eqz v3, :cond_10d

    const-string v3, "StripOffsets"

    .line 2
    invoke-virtual {v2, v3}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Lv0/b$c;

    const-string v5, "StripByteCounts"

    invoke-virtual {v2, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Lv0/b$c;

    if-eqz v3, :cond_10d

    if-eqz v2, :cond_10d

    iget-object v5, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v3, v5}, Lv0/b$c;->h(Ljava/nio/ByteOrder;)Ljava/lang/Object;

    move-result-object v3

    invoke-static {v3}, Lv0/b;->c(Ljava/lang/Object;)[J

    move-result-object v3

    iget-object v5, v0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v2, v5}, Lv0/b$c;->h(Ljava/nio/ByteOrder;)Ljava/lang/Object;

    move-result-object v2

    invoke-static {v2}, Lv0/b;->c(Ljava/lang/Object;)[J

    move-result-object v2

    if-eqz v3, :cond_104

    array-length v5, v3

    if-nez v5, :cond_a5

    goto :goto_104

    :cond_a5
    if-eqz v2, :cond_101

    array-length v5, v2

    if-nez v5, :cond_ab

    goto :goto_101

    :cond_ab
    array-length v5, v3

    array-length v8, v2

    if-eq v5, v8, :cond_b2

    const-string v1, "stripOffsets and stripByteCounts should have same length."

    goto :goto_106

    :cond_b2
    const-wide/16 v8, 0x0

    array-length v5, v2

    move v10, v7

    :goto_b6
    if-ge v10, v5, :cond_be

    aget-wide v11, v2, v10

    add-long/2addr v8, v11

    add-int/lit8 v10, v10, 0x1

    goto :goto_b6

    :cond_be
    long-to-int v5, v8

    new-array v5, v5, [B

    iput-boolean v4, v0, Lv0/b;->h:Z

    move v8, v7

    move v9, v8

    move v10, v9

    :goto_c6
    array-length v11, v3

    if-ge v8, v11, :cond_fa

    aget-wide v11, v3, v8

    long-to-int v11, v11

    aget-wide v12, v2, v8

    long-to-int v12, v12

    array-length v13, v3

    sub-int/2addr v13, v4

    if-ge v8, v13, :cond_e0

    add-int v13, v11, v12

    int-to-long v13, v13

    add-int/lit8 v15, v8, 0x1

    aget-wide v15, v3, v15

    cmp-long v13, v13, v15

    if-eqz v13, :cond_e0

    iput-boolean v7, v0, Lv0/b;->h:Z

    :cond_e0
    sub-int/2addr v11, v9

    if-gez v11, :cond_e8

    const-string v13, "Invalid strip offset value"

    invoke-static {v6, v13}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_e8
    int-to-long v13, v11

    invoke-virtual {v1, v13, v14}, Lv0/b$b;->e(J)V

    add-int/2addr v9, v11

    new-array v11, v12, [B

    invoke-virtual {v1, v11}, Ljava/io/InputStream;->read([B)I

    add-int/2addr v9, v12

    invoke-static {v11, v7, v5, v10, v12}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    add-int/2addr v10, v12

    add-int/lit8 v8, v8, 0x1

    goto :goto_c6

    :cond_fa
    iget-boolean v1, v0, Lv0/b;->h:Z

    if-eqz v1, :cond_10d

    aget-wide v1, v3, v7

    goto :goto_10d

    :cond_101
    :goto_101
    const-string v1, "stripByteCounts should not be null or have zero length."

    goto :goto_106

    :cond_104
    :goto_104
    const-string v1, "stripOffsets should not be null or have zero length."

    :goto_106
    invoke-static {v6, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_10d

    .line 3
    :cond_10a
    invoke-virtual {v0, v1, v2}, Lv0/b;->p(Lv0/b$b;Ljava/util/HashMap;)V

    :cond_10d
    :goto_10d
    return-void
.end method

.method public final y(II)V
    .registers 9

    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v0, p1

    invoke-virtual {v0}, Ljava/util/HashMap;->isEmpty()Z

    move-result v0

    const-string v1, "ExifInterface"

    if-nez v0, :cond_86

    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v0, p2

    invoke-virtual {v0}, Ljava/util/HashMap;->isEmpty()Z

    move-result v0

    if-eqz v0, :cond_18

    goto/16 :goto_86

    :cond_18
    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v0, p1

    const-string v2, "ImageLength"

    invoke-virtual {v0, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lv0/b$c;

    iget-object v3, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v3, v3, p1

    const-string v4, "ImageWidth"

    invoke-virtual {v3, v4}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Lv0/b$c;

    iget-object v5, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v5, v5, p2

    invoke-virtual {v5, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Lv0/b$c;

    iget-object v5, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v5, v5, p2

    invoke-virtual {v5, v4}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v4

    check-cast v4, Lv0/b$c;

    if-eqz v0, :cond_7c

    if-nez v3, :cond_49

    goto :goto_7c

    :cond_49
    if-eqz v2, :cond_75

    if-nez v4, :cond_4e

    goto :goto_75

    :cond_4e
    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v0, v1}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v0

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v3, v1}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v1

    iget-object v3, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v2, v3}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v2

    iget-object v3, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v4, v3}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v3

    if-ge v0, v2, :cond_85

    if-ge v1, v3, :cond_85

    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v0, p1

    aget-object v2, v0, p2

    aput-object v2, v0, p1

    aput-object v1, v0, p2

    goto :goto_85

    :cond_75
    :goto_75
    sget-boolean p1, Lv0/b;->n:Z

    if-eqz p1, :cond_85

    const-string p1, "Second image does not contain valid size information"

    goto :goto_82

    :cond_7c
    :goto_7c
    sget-boolean p1, Lv0/b;->n:Z

    if-eqz p1, :cond_85

    const-string p1, "First image does not contain valid size information"

    :goto_82
    invoke-static {v1, p1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_85
    :goto_85
    return-void

    :cond_86
    :goto_86
    sget-boolean p1, Lv0/b;->n:Z

    if-eqz p1, :cond_8f

    const-string p1, "Cannot perform swap since only one image data exists"

    invoke-static {v1, p1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_8f
    return-void
.end method

.method public final z(Lv0/b$b;I)V
    .registers 11

    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v0, p2

    const-string v1, "DefaultCropSize"

    invoke-virtual {v0, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lv0/b$c;

    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v1, p2

    const-string v2, "SensorTopBorder"

    invoke-virtual {v1, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lv0/b$c;

    iget-object v2, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v2, v2, p2

    const-string v3, "SensorLeftBorder"

    invoke-virtual {v2, v3}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Lv0/b$c;

    iget-object v3, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v3, v3, p2

    const-string v4, "SensorBottomBorder"

    invoke-virtual {v3, v4}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Lv0/b$c;

    iget-object v4, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v4, v4, p2

    const-string v5, "SensorRightBorder"

    invoke-virtual {v4, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v4

    check-cast v4, Lv0/b$c;

    const-string v5, "ImageWidth"

    const-string v6, "ImageLength"

    if-eqz v0, :cond_b7

    iget p1, v0, Lv0/b$c;->a:I

    const/4 v1, 0x5

    const/4 v2, 0x1

    const/4 v3, 0x0

    const/4 v4, 0x2

    const-string v7, "Invalid crop size values. cropSize="

    if-ne p1, v1, :cond_74

    iget-object p1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v0, p1}, Lv0/b$c;->h(Ljava/nio/ByteOrder;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, [Lv0/b$e;

    if-eqz p1, :cond_6b

    array-length v0, p1

    if-eq v0, v4, :cond_5a

    goto :goto_6b

    :cond_5a
    aget-object v0, p1, v3

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v0, v1}, Lv0/b$c;->c(Lv0/b$e;Ljava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v0

    aget-object p1, p1, v2

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {p1, v1}, Lv0/b$c;->c(Lv0/b$e;Ljava/nio/ByteOrder;)Lv0/b$c;

    move-result-object p1

    goto :goto_92

    :cond_6b
    :goto_6b
    invoke-static {v7}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object p2

    invoke-static {p1}, Ljava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String;

    move-result-object p1

    goto :goto_aa

    :cond_74
    iget-object p1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v0, p1}, Lv0/b$c;->h(Ljava/nio/ByteOrder;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, [I

    if-eqz p1, :cond_a2

    array-length v0, p1

    if-eq v0, v4, :cond_82

    goto :goto_a2

    :cond_82
    aget v0, p1, v3

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v0, v1}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v0

    aget p1, p1, v2

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {p1, v1}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object p1

    :goto_92
    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v1, p2

    invoke-virtual {v1, v5, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object p2, v0, p2

    invoke-virtual {p2, v6, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto/16 :goto_127

    :cond_a2
    :goto_a2
    invoke-static {v7}, Landroidx/activity/c;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object p2

    invoke-static {p1}, Ljava/util/Arrays;->toString([I)Ljava/lang/String;

    move-result-object p1

    :goto_aa
    invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    const-string p2, "ExifInterface"

    invoke-static {p2, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    :cond_b7
    if-eqz v1, :cond_f8

    if-eqz v2, :cond_f8

    if-eqz v3, :cond_f8

    if-eqz v4, :cond_f8

    iget-object p1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v1, p1}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result p1

    iget-object v0, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v3, v0}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v0

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v4, v1}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v1

    iget-object v3, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v2, v3}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v2

    if-le v0, p1, :cond_127

    if-le v1, v2, :cond_127

    sub-int/2addr v0, p1

    sub-int/2addr v1, v2

    iget-object p1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v0, p1}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object p1

    iget-object v0, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-static {v1, v0}, Lv0/b$c;->d(ILjava/nio/ByteOrder;)Lv0/b$c;

    move-result-object v0

    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v1, p2

    invoke-virtual {v1, v6, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    iget-object p1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object p1, p1, p2

    invoke-virtual {p1, v5, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_127

    .line 1
    :cond_f8
    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v0, p2

    invoke-virtual {v0, v6}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lv0/b$c;

    iget-object v1, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v1, v1, p2

    invoke-virtual {v1, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lv0/b$c;

    if-eqz v0, :cond_110

    if-nez v1, :cond_127

    :cond_110
    iget-object v0, p0, Lv0/b;->e:[Ljava/util/HashMap;

    aget-object v0, v0, p2

    const-string v1, "JPEGInterchangeFormat"

    invoke-virtual {v0, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lv0/b$c;

    if-eqz v0, :cond_127

    iget-object v1, p0, Lv0/b;->g:Ljava/nio/ByteOrder;

    invoke-virtual {v0, v1}, Lv0/b$c;->f(Ljava/nio/ByteOrder;)I

    move-result v0

    invoke-virtual {p0, p1, v0, p2}, Lv0/b;->g(Lv0/b$b;II)V

    :cond_127
    :goto_127
    return-void
.end method
