a.smali
.class public Le/l/a/a;
.super Ljava/lang/Object;
.source ""
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Le/l/a/a$b;,
Le/l/a/a$d;,
Le/l/a/a$c;,
Le/l/a/a$e;
}
.end annotation
# static fields
.field private static final A:[B
.field private static final B:[B
.field private static final C:[B
.field private static final D:[B
.field private static final E:[B
.field private static final F:[B
.field private static final G:[B
.field private static final H:[B
.field private static final I:[B
.field private static J:Ljava/text/SimpleDateFormat;
.field static final K:[Ljava/lang/String;
.field static final L:[I
.field static final M:[B
.field private static final N:[Le/l/a/a$d;
.field private static final O:[Le/l/a/a$d;
.field private static final P:[Le/l/a/a$d;
.field private static final Q:[Le/l/a/a$d;
.field private static final R:[Le/l/a/a$d;
.field private static final S:Le/l/a/a$d;
.field private static final T:[Le/l/a/a$d;
.field private static final U:[Le/l/a/a$d;
.field private static final V:[Le/l/a/a$d;
.field private static final W:[Le/l/a/a$d;
.field static final X:[[Le/l/a/a$d;
.field private static final Y:[Le/l/a/a$d;
.field private static final Z:[Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"[",
"Ljava/util/HashMap<",
"Ljava/lang/Integer;",
"Le/l/a/a$d;",
">;"
}
.end annotation
.end field
.field private static final a0:[Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"[",
"Ljava/util/HashMap<",
"Ljava/lang/String;",
"Le/l/a/a$d;",
">;"
}
.end annotation
.end field
.field private static final b0:Ljava/util/HashSet;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/HashSet<",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
.field private static final c0:Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/HashMap<",
"Ljava/lang/Integer;",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field static final d0:Ljava/nio/charset/Charset;
.field static final e0:[B
.field private static final f0:[B
.field private static final r:Z
.field private static final s:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field private static final t:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field public static final u:[I
.field public static final v:[I
.field static final w:[B
.field private static final x:[B
.field private static final y:[B
.field private static final z:[B
# instance fields
.field private a:Ljava/lang/String;
.field private b:Ljava/io/FileDescriptor;
.field private c:Landroid/content/res/AssetManager$AssetInputStream;
.field private d:I
.field private e:Z
.field private final f:[Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"[",
"Ljava/util/HashMap<",
"Ljava/lang/String;",
"Le/l/a/a$c;",
">;"
}
.end annotation
.end field
.field private g:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field private h:Ljava/nio/ByteOrder;
.field private i:Z
.field private j:I
.field private k:I
.field private l:I
.field private m:I
.field private n:I
.field private o:I
.field private p:I
.field private q:I
# direct methods
.method static constructor <clinit>()V
.registers 21
const-string v0, "ExifInterface"
const/4 v1, 0x3
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-static {v0, v1}, Landroid/util/Log;->isLoggable(Ljava/lang/String;I)Z
move-result v0
sput-boolean v0, Le/l/a/a;->r:Z
const/4 v0, 0x4
new-array v3, v0, [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 v2, 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, v1
invoke-static {v3}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object v3
sput-object v3, Le/l/a/a;->s:Ljava/util/List;
new-array v3, v0, [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 {v0}, 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, v1
invoke-static {v3}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object v3
sput-object v3, Le/l/a/a;->t:Ljava/util/List;
new-array v3, v1, [I
fill-array-data v3, :array_cc8
sput-object v3, Le/l/a/a;->u:[I
new-array v3, v4, [I
aput v10, v3, v6
sput-object v3, Le/l/a/a;->v:[I
new-array v3, v1, [B
fill-array-data v3, :array_cd2
sput-object v3, Le/l/a/a;->w:[B
new-array v3, v0, [B
fill-array-data v3, :array_cd8
sput-object v3, Le/l/a/a;->x:[B
new-array v3, v0, [B
fill-array-data v3, :array_cde
sput-object v3, Le/l/a/a;->y:[B
new-array v3, v0, [B
fill-array-data v3, :array_ce4
sput-object v3, Le/l/a/a;->z:[B
new-array v3, v7, [B
fill-array-data v3, :array_cea
sput-object v3, Le/l/a/a;->A:[B
const/16 v3, 0xa
new-array v12, v3, [B
fill-array-data v12, :array_cf2
sput-object v12, Le/l/a/a;->B:[B
new-array v12, v10, [B
fill-array-data v12, :array_cfc
sput-object v12, Le/l/a/a;->C:[B
new-array v12, v0, [B
fill-array-data v12, :array_d04
sput-object v12, Le/l/a/a;->D:[B
new-array v12, v0, [B
fill-array-data v12, :array_d0a
sput-object v12, Le/l/a/a;->E:[B
new-array v12, v0, [B
fill-array-data v12, :array_d10
sput-object v12, Le/l/a/a;->F:[B
new-array v12, v0, [B
fill-array-data v12, :array_d16
sput-object v12, Le/l/a/a;->G:[B
new-array v12, v0, [B
fill-array-data v12, :array_d1c
sput-object v12, Le/l/a/a;->H:[B
new-array v12, v0, [B
fill-array-data v12, :array_d22
sput-object v12, Le/l/a/a;->I:[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/16 v3, 0xe
new-array v12, v3, [Ljava/lang/String;
const-string v18, ""
aput-object v18, v12, v6
const-string v18, "BYTE"
aput-object v18, v12, v4
const-string v18, "STRING"
aput-object v18, v12, v8
const-string v18, "USHORT"
aput-object v18, v12, v1
const-string v18, "ULONG"
aput-object v18, v12, v0
const-string v18, "URATIONAL"
aput-object v18, v12, v14
const-string v18, "SBYTE"
aput-object v18, v12, v7
const-string v18, "UNDEFINED"
const/16 v16, 0x7
aput-object v18, v12, v16
const-string v18, "SSHORT"
aput-object v18, v12, v10
const-string v18, "SLONG"
const/16 v7, 0x9
aput-object v18, v12, v7
const-string v18, "SRATIONAL"
const/16 v17, 0xa
aput-object v18, v12, v17
const-string v18, "SINGLE"
const/16 v7, 0xb
aput-object v18, v12, v7
const-string v18, "DOUBLE"
const/16 v7, 0xc
aput-object v18, v12, v7
const-string v18, "IFD"
const/16 v7, 0xd
aput-object v18, v12, v7
sput-object v12, Le/l/a/a;->K:[Ljava/lang/String;
new-array v12, v3, [I
fill-array-data v12, :array_d28
sput-object v12, Le/l/a/a;->L:[I
new-array v12, v10, [B
fill-array-data v12, :array_d48
sput-object v12, Le/l/a/a;->M:[B
const/16 v12, 0x2a
new-array v12, v12, [Le/l/a/a$d;
new-instance v3, Le/l/a/a$d;
const-string v7, "NewSubfileType"
const/16 v10, 0xfe
invoke-direct {v3, v7, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v7, "SubfileType"
const/16 v10, 0xff
invoke-direct {v3, v7, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v3, v12, v4
new-instance v3, Le/l/a/a$d;
const-string v7, "ImageWidth"
const/16 v10, 0x100
invoke-direct {v3, v7, v10, v1, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
aput-object v3, v12, v8
new-instance v3, Le/l/a/a$d;
const-string v7, "ImageLength"
const/16 v10, 0x101
invoke-direct {v3, v7, v10, v1, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
aput-object v3, v12, v1
new-instance v3, Le/l/a/a$d;
const-string v7, "BitsPerSample"
const/16 v10, 0x102
invoke-direct {v3, v7, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v3, v12, v0
new-instance v3, Le/l/a/a$d;
const-string v7, "Compression"
const/16 v10, 0x103
invoke-direct {v3, v7, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v3, v12, v14
new-instance v3, Le/l/a/a$d;
const-string v7, "PhotometricInterpretation"
const/16 v10, 0x106
invoke-direct {v3, v7, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v7, 0x6
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "ImageDescription"
const/16 v10, 0x10e
invoke-direct {v3, v7, v10, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v7, 0x7
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "Make"
const/16 v10, 0x10f
invoke-direct {v3, v7, v10, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0x8
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "Model"
const/16 v10, 0x110
invoke-direct {v3, v7, v10, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0x9
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "StripOffsets"
const/16 v10, 0x111
invoke-direct {v3, v7, v10, v1, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/16 v7, 0xa
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "Orientation"
const/16 v10, 0x112
invoke-direct {v3, v7, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0xb
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "SamplesPerPixel"
const/16 v10, 0x115
invoke-direct {v3, v7, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0xc
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "RowsPerStrip"
const/16 v10, 0x116
invoke-direct {v3, v7, v10, v1, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/16 v7, 0xd
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "StripByteCounts"
const/16 v10, 0x117
invoke-direct {v3, v7, v10, v1, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/16 v7, 0xe
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "XResolution"
const/16 v10, 0x11a
invoke-direct {v3, v7, v10, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0xf
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v10, "YResolution"
const/16 v7, 0x11b
invoke-direct {v3, v10, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0x10
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v10, "PlanarConfiguration"
const/16 v7, 0x11c
invoke-direct {v3, v10, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0x11
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v10, "ResolutionUnit"
const/16 v7, 0x128
invoke-direct {v3, v10, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0x12
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v10, "TransferFunction"
const/16 v7, 0x12d
invoke-direct {v3, v10, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0x13
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v10, "Software"
const/16 v7, 0x131
invoke-direct {v3, v10, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0x14
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v10, "DateTime"
const/16 v7, 0x132
invoke-direct {v3, v10, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0x15
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "Artist"
const/16 v10, 0x13b
invoke-direct {v3, v7, v10, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0x16
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v7, "WhitePoint"
const/16 v10, 0x13e
invoke-direct {v3, v7, v10, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v7, 0x17
aput-object v3, v12, v7
new-instance v3, Le/l/a/a$d;
const-string v10, "PrimaryChromaticities"
const/16 v6, 0x13f
invoke-direct {v3, v10, v6, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x18
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "SubIFDPointer"
const/16 v10, 0x14a
invoke-direct {v3, v6, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x19
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "JPEGInterchangeFormat"
const/16 v10, 0x201
invoke-direct {v3, v6, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1a
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "JPEGInterchangeFormatLength"
const/16 v10, 0x202
invoke-direct {v3, v6, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1b
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "YCbCrCoefficients"
const/16 v10, 0x211
invoke-direct {v3, v6, v10, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1c
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "YCbCrSubSampling"
const/16 v10, 0x212
invoke-direct {v3, v6, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1d
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "YCbCrPositioning"
const/16 v10, 0x213
invoke-direct {v3, v6, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1e
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "ReferenceBlackWhite"
const/16 v10, 0x214
invoke-direct {v3, v6, v10, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1f
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "Copyright"
const v10, 0x8298
invoke-direct {v3, v6, v10, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x20
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "ExifIFDPointer"
const v10, 0x8769
invoke-direct {v3, v6, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x21
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "GPSInfoIFDPointer"
const v10, 0x8825
invoke-direct {v3, v6, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x22
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "SensorTopBorder"
invoke-direct {v3, v6, v0, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x23
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "SensorLeftBorder"
invoke-direct {v3, v6, v14, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x24
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "SensorBottomBorder"
const/4 v10, 0x6
invoke-direct {v3, v6, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x25
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "SensorRightBorder"
const/4 v10, 0x7
invoke-direct {v3, v6, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x26
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "ISO"
invoke-direct {v3, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x27
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "JpgFromRaw"
const/16 v7, 0x2e
invoke-direct {v3, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x28
aput-object v3, v12, v6
new-instance v3, Le/l/a/a$d;
const-string v6, "Xmp"
const/16 v7, 0x2bc
invoke-direct {v3, v6, v7, v4}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x29
aput-object v3, v12, v6
sput-object v12, Le/l/a/a;->N:[Le/l/a/a$d;
const/16 v3, 0x4a
new-array v3, v3, [Le/l/a/a$d;
new-instance v6, Le/l/a/a$d;
const-string v7, "ExposureTime"
const v10, 0x829a
invoke-direct {v6, v7, v10, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v7, 0x0
aput-object v6, v3, v7
new-instance v6, Le/l/a/a$d;
const-string v7, "FNumber"
const v10, 0x829d
invoke-direct {v6, v7, v10, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v6, v3, v4
new-instance v6, Le/l/a/a$d;
const-string v7, "ExposureProgram"
const v10, 0x8822
invoke-direct {v6, v7, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v6, v3, v8
new-instance v6, Le/l/a/a$d;
const-string v7, "SpectralSensitivity"
const v10, 0x8824
invoke-direct {v6, v7, v10, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v6, v3, v1
new-instance v6, Le/l/a/a$d;
const-string v7, "PhotographicSensitivity"
const v10, 0x8827
invoke-direct {v6, v7, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v6, v3, v0
new-instance v6, Le/l/a/a$d;
const-string v7, "OECF"
const v10, 0x8828
const/4 v4, 0x7
invoke-direct {v6, v7, v10, v4}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v6, v3, v14
new-instance v6, Le/l/a/a$d;
const-string v7, "SensitivityType"
const v10, 0x8830
invoke-direct {v6, v7, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v7, 0x6
aput-object v6, v3, v7
new-instance v6, Le/l/a/a$d;
const-string v7, "StandardOutputSensitivity"
const v10, 0x8831
invoke-direct {v6, v7, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v6, v3, v4
new-instance v4, Le/l/a/a$d;
const-string v6, "RecommendedExposureIndex"
const v7, 0x8832
invoke-direct {v4, v6, v7, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x8
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ISOSpeed"
const v7, 0x8833
invoke-direct {v4, v6, v7, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x9
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ISOSpeedLatitudeyyy"
const v7, 0x8834
invoke-direct {v4, v6, v7, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0xa
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ISOSpeedLatitudezzz"
const v7, 0x8835
invoke-direct {v4, v6, v7, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0xb
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ExifVersion"
const v7, 0x9000
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0xc
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "DateTimeOriginal"
const v7, 0x9003
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0xd
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "DateTimeDigitized"
const v7, 0x9004
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0xe
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "OffsetTime"
const v7, 0x9010
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0xf
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "OffsetTimeOriginal"
const v7, 0x9011
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x10
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "OffsetTimeDigitized"
const v7, 0x9012
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x11
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ComponentsConfiguration"
const v7, 0x9101
const/4 v10, 0x7
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x12
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "CompressedBitsPerPixel"
const v7, 0x9102
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x13
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ShutterSpeedValue"
const v7, 0x9201
const/16 v10, 0xa
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x14
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ApertureValue"
const v7, 0x9202
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x15
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "BrightnessValue"
const v7, 0x9203
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x16
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ExposureBiasValue"
const v7, 0x9204
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x17
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "MaxApertureValue"
const v7, 0x9205
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x18
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SubjectDistance"
const v7, 0x9206
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x19
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "MeteringMode"
const v7, 0x9207
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1a
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "LightSource"
const v7, 0x9208
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1b
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "Flash"
const v7, 0x9209
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1c
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "FocalLength"
const v7, 0x920a
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1d
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SubjectArea"
const v7, 0x9214
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1e
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "MakerNote"
const v7, 0x927c
const/4 v10, 0x7
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1f
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "UserComment"
const v7, 0x9286
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x20
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SubSecTime"
const v7, 0x9290
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x21
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SubSecTimeOriginal"
const v7, 0x9291
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x22
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SubSecTimeDigitized"
const v7, 0x9292
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x23
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "FlashpixVersion"
const v7, 0xa000
const/4 v10, 0x7
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x24
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ColorSpace"
const v7, 0xa001
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x25
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "PixelXDimension"
const v7, 0xa002
invoke-direct {v4, v6, v7, v1, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/16 v6, 0x26
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "PixelYDimension"
const v7, 0xa003
invoke-direct {v4, v6, v7, v1, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/16 v6, 0x27
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "RelatedSoundFile"
const v7, 0xa004
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x28
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "InteroperabilityIFDPointer"
const v7, 0xa005
invoke-direct {v4, v6, v7, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x29
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "FlashEnergy"
const v7, 0xa20b
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x2a
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SpatialFrequencyResponse"
const v7, 0xa20c
const/4 v10, 0x7
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x2b
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "FocalPlaneXResolution"
const v7, 0xa20e
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x2c
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "FocalPlaneYResolution"
const v7, 0xa20f
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x2d
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "FocalPlaneResolutionUnit"
const v7, 0xa210
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x2e
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SubjectLocation"
const v7, 0xa214
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x2f
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ExposureIndex"
const v7, 0xa215
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x30
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SensingMethod"
const v7, 0xa217
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x31
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "FileSource"
const v7, 0xa300
const/4 v10, 0x7
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x32
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SceneType"
const v7, 0xa301
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x33
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "CFAPattern"
const v7, 0xa302
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x34
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "CustomRendered"
const v7, 0xa401
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x35
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ExposureMode"
const v7, 0xa402
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x36
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "WhiteBalance"
const v7, 0xa403
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x37
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "DigitalZoomRatio"
const v7, 0xa404
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x38
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "FocalLengthIn35mmFilm"
const v7, 0xa405
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x39
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SceneCaptureType"
const v7, 0xa406
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x3a
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "GainControl"
const v7, 0xa407
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x3b
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "Contrast"
const v7, 0xa408
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x3c
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "Saturation"
const v7, 0xa409
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x3d
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "Sharpness"
const v7, 0xa40a
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x3e
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "DeviceSettingDescription"
const v7, 0xa40b
const/4 v10, 0x7
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x3f
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "SubjectDistanceRange"
const v7, 0xa40c
invoke-direct {v4, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x40
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "ImageUniqueID"
const v7, 0xa420
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x41
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "CameraOwnerName"
const v7, 0xa430
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x42
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "BodySerialNumber"
const v7, 0xa431
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x43
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "LensSpecification"
const v7, 0xa432
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x44
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "LensMake"
const v7, 0xa433
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x45
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "LensModel"
const v7, 0xa434
invoke-direct {v4, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x46
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "Gamma"
const v7, 0xa500
invoke-direct {v4, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x47
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "DNGVersion"
const v7, 0xc612
const/4 v10, 0x1
invoke-direct {v4, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x48
aput-object v4, v3, v6
new-instance v4, Le/l/a/a$d;
const-string v6, "DefaultCropSize"
const v7, 0xc620
invoke-direct {v4, v6, v7, v1, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/16 v6, 0x49
aput-object v4, v3, v6
sput-object v3, Le/l/a/a;->O:[Le/l/a/a$d;
const/16 v4, 0x20
new-array v4, v4, [Le/l/a/a$d;
new-instance v6, Le/l/a/a$d;
const-string v7, "GPSVersionID"
const/4 v0, 0x1
const/4 v10, 0x0
invoke-direct {v6, v7, v10, v0}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v6, v4, v10
new-instance v6, Le/l/a/a$d;
const-string v7, "GPSLatitudeRef"
invoke-direct {v6, v7, v0, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v6, v4, v0
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSLatitude"
invoke-direct {v0, v6, v8, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v8
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSLongitudeRef"
invoke-direct {v0, v6, v1, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v1
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSLongitude"
const/4 v7, 0x4
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSAltitudeRef"
const/4 v7, 0x1
invoke-direct {v0, v6, v14, v7}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v14
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSAltitude"
const/4 v7, 0x6
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSTimeStamp"
const/4 v7, 0x7
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSSatellites"
const/16 v7, 0x8
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSStatus"
const/16 v7, 0x9
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSMeasureMode"
const/16 v7, 0xa
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDOP"
const/16 v7, 0xb
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSSpeedRef"
const/16 v7, 0xc
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSSpeed"
const/16 v7, 0xd
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSTrackRef"
const/16 v7, 0xe
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSTrack"
const/16 v7, 0xf
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSImgDirectionRef"
const/16 v7, 0x10
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSImgDirection"
const/16 v7, 0x11
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSMapDatum"
const/16 v7, 0x12
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDestLatitudeRef"
const/16 v7, 0x13
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDestLatitude"
const/16 v7, 0x14
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDestLongitudeRef"
const/16 v7, 0x15
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x15
aput-object v0, v4, v6
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDestLongitude"
const/16 v7, 0x16
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x16
aput-object v0, v4, v6
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDestBearingRef"
const/16 v7, 0x17
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v4, v7
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDestBearing"
const/16 v7, 0x18
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x18
aput-object v0, v4, v6
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDestDistanceRef"
const/16 v7, 0x19
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x19
aput-object v0, v4, v6
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDestDistance"
const/16 v7, 0x1a
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1a
aput-object v0, v4, v6
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSProcessingMethod"
const/16 v7, 0x1b
const/4 v10, 0x7
invoke-direct {v0, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1b
aput-object v0, v4, v6
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSAreaInformation"
const/16 v7, 0x1c
invoke-direct {v0, v6, v7, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1c
aput-object v0, v4, v6
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDateStamp"
const/16 v7, 0x1d
invoke-direct {v0, v6, v7, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1d
aput-object v0, v4, v6
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSDifferential"
const/16 v7, 0x1e
invoke-direct {v0, v6, v7, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1e
aput-object v0, v4, v6
new-instance v0, Le/l/a/a$d;
const-string v6, "GPSHPositioningError"
const/16 v7, 0x1f
invoke-direct {v0, v6, v7, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v6, 0x1f
aput-object v0, v4, v6
sput-object v4, Le/l/a/a;->P:[Le/l/a/a$d;
const/4 v0, 0x1
new-array v6, v0, [Le/l/a/a$d;
new-instance v7, Le/l/a/a$d;
const-string v10, "InteroperabilityIndex"
invoke-direct {v7, v10, v0, v8}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v0, 0x0
aput-object v7, v6, v0
sput-object v6, Le/l/a/a;->Q:[Le/l/a/a$d;
const/16 v7, 0x25
new-array v7, v7, [Le/l/a/a$d;
new-instance v10, Le/l/a/a$d;
const-string v14, "NewSubfileType"
const/16 v8, 0xfe
const/4 v1, 0x4
invoke-direct {v10, v14, v8, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v10, v7, v0
new-instance v0, Le/l/a/a$d;
const-string v8, "SubfileType"
const/16 v10, 0xff
invoke-direct {v0, v8, v10, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v8, 0x1
aput-object v0, v7, v8
new-instance v0, Le/l/a/a$d;
const-string v8, "ThumbnailImageWidth"
const/16 v10, 0x100
const/4 v14, 0x3
invoke-direct {v0, v8, v10, v14, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/4 v8, 0x2
aput-object v0, v7, v8
new-instance v0, Le/l/a/a$d;
const-string v8, "ThumbnailImageLength"
const/16 v10, 0x101
invoke-direct {v0, v8, v10, v14, v1}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
aput-object v0, v7, v14
new-instance v0, Le/l/a/a$d;
const-string v8, "BitsPerSample"
const/16 v10, 0x102
invoke-direct {v0, v8, v10, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "Compression"
const/16 v8, 0x103
invoke-direct {v0, v1, v8, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v1, 0x5
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "PhotometricInterpretation"
const/16 v8, 0x106
invoke-direct {v0, v1, v8, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v1, 0x6
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "ImageDescription"
const/16 v8, 0x10e
const/4 v10, 0x2
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v1, 0x7
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "Make"
const/16 v8, 0x10f
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x8
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "Model"
const/16 v8, 0x110
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x9
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "StripOffsets"
const/16 v8, 0x111
const/4 v10, 0x4
const/4 v14, 0x3
invoke-direct {v0, v1, v8, v14, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/16 v1, 0xa
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "ThumbnailOrientation"
const/16 v8, 0x112
invoke-direct {v0, v1, v8, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0xb
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "SamplesPerPixel"
const/16 v8, 0x115
invoke-direct {v0, v1, v8, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0xc
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "RowsPerStrip"
const/16 v8, 0x116
const/4 v10, 0x4
invoke-direct {v0, v1, v8, v14, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/16 v1, 0xd
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "StripByteCounts"
const/16 v8, 0x117
invoke-direct {v0, v1, v8, v14, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/16 v1, 0xe
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "XResolution"
const/16 v8, 0x11a
const/4 v10, 0x5
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0xf
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "YResolution"
const/16 v8, 0x11b
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x10
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "PlanarConfiguration"
const/16 v8, 0x11c
const/4 v10, 0x3
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x11
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "ResolutionUnit"
const/16 v8, 0x128
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x12
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "TransferFunction"
const/16 v8, 0x12d
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x13
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "Software"
const/16 v8, 0x131
const/4 v10, 0x2
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x14
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "DateTime"
const/16 v8, 0x132
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x15
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "Artist"
const/16 v8, 0x13b
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x16
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "WhitePoint"
const/16 v8, 0x13e
const/4 v10, 0x5
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x17
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "PrimaryChromaticities"
const/16 v8, 0x13f
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x18
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "SubIFDPointer"
const/16 v8, 0x14a
const/4 v10, 0x4
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x19
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "JPEGInterchangeFormat"
const/16 v8, 0x201
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x1a
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "JPEGInterchangeFormatLength"
const/16 v8, 0x202
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x1b
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "YCbCrCoefficients"
const/16 v8, 0x211
const/4 v10, 0x5
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x1c
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "YCbCrSubSampling"
const/16 v8, 0x212
const/4 v10, 0x3
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x1d
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "YCbCrPositioning"
const/16 v8, 0x213
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x1e
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "ReferenceBlackWhite"
const/16 v8, 0x214
const/4 v10, 0x5
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x1f
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "Copyright"
const v8, 0x8298
const/4 v10, 0x2
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x20
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "ExifIFDPointer"
const v8, 0x8769
const/4 v10, 0x4
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x21
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "GPSInfoIFDPointer"
const v8, 0x8825
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x22
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "DNGVersion"
const v8, 0xc612
const/4 v10, 0x1
invoke-direct {v0, v1, v8, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/16 v1, 0x23
aput-object v0, v7, v1
new-instance v0, Le/l/a/a$d;
const-string v1, "DefaultCropSize"
const v8, 0xc620
const/4 v10, 0x4
const/4 v14, 0x3
invoke-direct {v0, v1, v8, v14, v10}, Le/l/a/a$d;-><init>(Ljava/lang/String;III)V
const/16 v1, 0x24
aput-object v0, v7, v1
sput-object v7, Le/l/a/a;->R:[Le/l/a/a$d;
new-instance v0, Le/l/a/a$d;
const-string v1, "StripOffsets"
const/16 v8, 0x111
invoke-direct {v0, v1, v8, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
sput-object v0, Le/l/a/a;->S:Le/l/a/a$d;
new-array v0, v14, [Le/l/a/a$d;
new-instance v1, Le/l/a/a$d;
const-string v8, "ThumbnailImage"
const/16 v10, 0x100
const/4 v14, 0x7
invoke-direct {v1, v8, v10, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v8, 0x0
aput-object v1, v0, v8
new-instance v1, Le/l/a/a$d;
const-string v8, "CameraSettingsIFDPointer"
const/16 v10, 0x2020
const/4 v14, 0x4
invoke-direct {v1, v8, v10, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v8, 0x1
aput-object v1, v0, v8
new-instance v1, Le/l/a/a$d;
const-string v8, "ImageProcessingIFDPointer"
const/16 v10, 0x2040
invoke-direct {v1, v8, v10, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v8, 0x2
aput-object v1, v0, v8
sput-object v0, Le/l/a/a;->T:[Le/l/a/a$d;
new-array v1, v8, [Le/l/a/a$d;
new-instance v8, Le/l/a/a$d;
const-string v10, "PreviewImageStart"
move-object/from16 v18, v11
const/16 v11, 0x101
invoke-direct {v8, v10, v11, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v10, 0x0
aput-object v8, v1, v10
new-instance v8, Le/l/a/a$d;
const-string v10, "PreviewImageLength"
const/16 v11, 0x102
invoke-direct {v8, v10, v11, v14}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v10, 0x1
aput-object v8, v1, v10
sput-object v1, Le/l/a/a;->U:[Le/l/a/a$d;
new-array v8, v10, [Le/l/a/a$d;
new-instance v11, Le/l/a/a$d;
const-string v14, "AspectFrame"
const/16 v10, 0x1113
move-object/from16 v19, v13
const/4 v13, 0x3
invoke-direct {v11, v14, v10, v13}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v10, 0x0
aput-object v11, v8, v10
sput-object v8, Le/l/a/a;->V:[Le/l/a/a$d;
const/4 v11, 0x1
new-array v14, v11, [Le/l/a/a$d;
new-instance v11, Le/l/a/a$d;
const-string v10, "ColorSpace"
move-object/from16 v20, v2
const/16 v2, 0x37
invoke-direct {v11, v10, v2, v13}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v2, 0x0
aput-object v11, v14, v2
sput-object v14, Le/l/a/a;->W:[Le/l/a/a$d;
const/16 v10, 0xa
new-array v10, v10, [[Le/l/a/a$d;
aput-object v12, v10, v2
const/4 v2, 0x1
aput-object v3, v10, v2
const/4 v2, 0x2
aput-object v4, v10, v2
aput-object v6, v10, v13
const/4 v2, 0x4
aput-object v7, v10, v2
const/4 v3, 0x5
aput-object v12, v10, v3
const/4 v3, 0x6
aput-object v0, v10, v3
const/4 v0, 0x7
aput-object v1, v10, v0
const/16 v0, 0x8
aput-object v8, v10, v0
const/16 v0, 0x9
aput-object v14, v10, v0
sput-object v10, Le/l/a/a;->X:[[Le/l/a/a$d;
new-array v0, v3, [Le/l/a/a$d;
new-instance v1, Le/l/a/a$d;
const-string v3, "SubIFDPointer"
const/16 v4, 0x14a
invoke-direct {v1, v3, v4, v2}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v3, 0x0
aput-object v1, v0, v3
new-instance v1, Le/l/a/a$d;
const-string v3, "ExifIFDPointer"
const v4, 0x8769
invoke-direct {v1, v3, v4, v2}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v3, 0x1
aput-object v1, v0, v3
new-instance v1, Le/l/a/a$d;
const-string v3, "GPSInfoIFDPointer"
const v4, 0x8825
invoke-direct {v1, v3, v4, v2}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v3, 0x2
aput-object v1, v0, v3
new-instance v1, Le/l/a/a$d;
const-string v3, "InteroperabilityIFDPointer"
const v4, 0xa005
invoke-direct {v1, v3, v4, v2}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v3, 0x3
aput-object v1, v0, v3
new-instance v1, Le/l/a/a$d;
const-string v3, "CameraSettingsIFDPointer"
const/16 v4, 0x2020
const/4 v6, 0x1
invoke-direct {v1, v3, v4, v6}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
aput-object v1, v0, v2
new-instance v1, Le/l/a/a$d;
const-string v2, "ImageProcessingIFDPointer"
const/16 v3, 0x2040
invoke-direct {v1, v2, v3, v6}, Le/l/a/a$d;-><init>(Ljava/lang/String;II)V
const/4 v2, 0x5
aput-object v1, v0, v2
sput-object v0, Le/l/a/a;->Y:[Le/l/a/a$d;
array-length v0, v10
new-array v0, v0, [Ljava/util/HashMap;
sput-object v0, Le/l/a/a;->Z:[Ljava/util/HashMap;
array-length v0, v10
new-array v0, v0, [Ljava/util/HashMap;
sput-object v0, Le/l/a/a;->a0:[Ljava/util/HashMap;
new-instance v0, Ljava/util/HashSet;
new-array v1, v2, [Ljava/lang/String;
const-string v2, "FNumber"
const/4 v3, 0x0
aput-object v2, v1, v3
const-string v2, "DigitalZoomRatio"
const/4 v3, 0x1
aput-object v2, v1, v3
const-string v2, "ExposureTime"
const/4 v3, 0x2
aput-object v2, v1, v3
const-string v2, "SubjectDistance"
const/4 v3, 0x3
aput-object v2, v1, v3
const-string v2, "GPSTimeStamp"
const/4 v3, 0x4
aput-object v2, v1, v3
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, Le/l/a/a;->b0:Ljava/util/HashSet;
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
sput-object v0, Le/l/a/a;->c0: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, Le/l/a/a;->d0: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, Le/l/a/a;->e0:[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, Le/l/a/a;->f0:[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
sput-object v0, Le/l/a/a;->J:Ljava/text/SimpleDateFormat;
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_c2f
sget-object v0, Le/l/a/a;->X:[[Le/l/a/a$d;
array-length v1, v0
if-ge v7, v1, :cond_c6a
sget-object v1, Le/l/a/a;->Z:[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, Le/l/a/a;->a0:[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_c4a
if-ge v2, v1, :cond_c67
aget-object v3, v0, v2
sget-object v4, Le/l/a/a;->Z:[Ljava/util/HashMap;
aget-object v4, v4, v7
iget v6, v3, Le/l/a/a$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, Le/l/a/a;->a0:[Ljava/util/HashMap;
aget-object v4, v4, v7
iget-object v6, v3, Le/l/a/a$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_c4a
:cond_c67
add-int/lit8 v7, v7, 0x1
goto :goto_c2f
:cond_c6a
sget-object v0, Le/l/a/a;->c0:Ljava/util/HashMap;
sget-object v1, Le/l/a/a;->Y:[Le/l/a/a$d;
const/4 v2, 0x0
aget-object v2, v1, v2
iget v2, v2, Le/l/a/a$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, Le/l/a/a$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, Le/l/a/a$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, Le/l/a/a$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, 0x4
aget-object v2, v1, v2
iget v2, v2, Le/l/a/a$d;->a:I
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
move-object/from16 v3, v19
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, Le/l/a/a$d;->a:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
move-object/from16 v2, v18
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
nop
:array_cc8
.array-data 4
0x8
0x8
0x8
.end array-data
:array_cd2
.array-data 1
-0x1t
-0x28t
-0x1t
.end array-data
:array_cd8
.array-data 1
0x66t
0x74t
0x79t
0x70t
.end array-data
:array_cde
.array-data 1
0x6dt
0x69t
0x66t
0x31t
.end array-data
:array_ce4
.array-data 1
0x68t
0x65t
0x69t
0x63t
.end array-data
:array_cea
.array-data 1
0x4ft
0x4ct
0x59t
0x4dt
0x50t
0x0t
.end array-data
nop
:array_cf2
.array-data 1
0x4ft
0x4ct
0x59t
0x4dt
0x50t
0x55t
0x53t
0x0t
0x49t
0x49t
.end array-data
nop
:array_cfc
.array-data 1
-0x77t
0x50t
0x4et
0x47t
0xdt
0xat
0x1at
0xat
.end array-data
:array_d04
.array-data 1
0x65t
0x58t
0x49t
0x66t
.end array-data
:array_d0a
.array-data 1
0x49t
0x48t
0x44t
0x52t
.end array-data
:array_d10
.array-data 1
0x49t
0x45t
0x4et
0x44t
.end array-data
:array_d16
.array-data 1
0x52t
0x49t
0x46t
0x46t
.end array-data
:array_d1c
.array-data 1
0x57t
0x45t
0x42t
0x50t
.end array-data
:array_d22
.array-data 1
0x45t
0x58t
0x49t
0x46t
.end array-data
:array_d28
.array-data 4
0x0
0x1
0x1
0x2
0x4
0x8
0x1
0x1
0x2
0x4
0x8
0x4
0x8
0x1
.end array-data
:array_d48
.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 3
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Le/l/a/a;-><init>(Ljava/io/InputStream;Z)V
return-void
.end method
.method private constructor <init>(Ljava/io/InputStream;Z)V
.registers 5
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
sget-object v0, Le/l/a/a;->X:[[Le/l/a/a$d;
array-length v1, v0
new-array v1, v1, [Ljava/util/HashMap;
iput-object v1, p0, Le/l/a/a;->f:[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, Le/l/a/a;->g:Ljava/util/Set;
sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;
iput-object v0, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
if-eqz p1, :cond_68
const/4 v0, 0x0
iput-object v0, p0, Le/l/a/a;->a:Ljava/lang/String;
if-eqz p2, :cond_3b
new-instance p2, Ljava/io/BufferedInputStream;
const/16 v1, 0x1388
invoke-direct {p2, p1, v1}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;I)V
invoke-static {p2}, Le/l/a/a;->u(Ljava/io/BufferedInputStream;)Z
move-result p1
if-nez p1, :cond_32
const-string p1, "ExifInterface"
const-string p2, "Given data does not follow the structure of an Exif-only data."
invoke-static {p1, p2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
return-void
:cond_32
const/4 p1, 0x1
iput-boolean p1, p0, Le/l/a/a;->e:Z
iput-object v0, p0, Le/l/a/a;->c:Landroid/content/res/AssetManager$AssetInputStream;
iput-object v0, p0, Le/l/a/a;->b:Ljava/io/FileDescriptor;
move-object p1, p2
goto :goto_64
:cond_3b
instance-of p2, p1, Landroid/content/res/AssetManager$AssetInputStream;
if-eqz p2, :cond_47
move-object p2, p1
check-cast p2, Landroid/content/res/AssetManager$AssetInputStream;
iput-object p2, p0, Le/l/a/a;->c:Landroid/content/res/AssetManager$AssetInputStream;
:goto_44
iput-object v0, p0, Le/l/a/a;->b:Ljava/io/FileDescriptor;
goto :goto_64
:cond_47
instance-of p2, p1, Ljava/io/FileInputStream;
if-eqz p2, :cond_61
move-object p2, p1
check-cast p2, Ljava/io/FileInputStream;
invoke-virtual {p2}, Ljava/io/FileInputStream;->getFD()Ljava/io/FileDescriptor;
move-result-object v1
invoke-static {v1}, Le/l/a/a;->B(Ljava/io/FileDescriptor;)Z
move-result v1
if-eqz v1, :cond_61
iput-object v0, p0, Le/l/a/a;->c:Landroid/content/res/AssetManager$AssetInputStream;
invoke-virtual {p2}, Ljava/io/FileInputStream;->getFD()Ljava/io/FileDescriptor;
move-result-object p2
iput-object p2, p0, Le/l/a/a;->b:Ljava/io/FileDescriptor;
goto :goto_64
:cond_61
iput-object v0, p0, Le/l/a/a;->c:Landroid/content/res/AssetManager$AssetInputStream;
goto :goto_44
:goto_64
invoke-direct {p0, p1}, Le/l/a/a;->F(Ljava/io/InputStream;)V
return-void
:cond_68
new-instance p1, Ljava/lang/NullPointerException;
const-string p2, "inputStream cannot be null"
invoke-direct {p1, p2}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
goto :goto_71
:goto_70
throw p1
:goto_71
goto :goto_70
.end method
.method public constructor <init>(Ljava/lang/String;)V
.registers 4
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
sget-object v0, Le/l/a/a;->X:[[Le/l/a/a$d;
array-length v1, v0
new-array v1, v1, [Ljava/util/HashMap;
iput-object v1, p0, Le/l/a/a;->f:[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, Le/l/a/a;->g:Ljava/util/Set;
sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;
iput-object v0, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
if-eqz p1, :cond_1c
invoke-direct {p0, p1}, Le/l/a/a;->t(Ljava/lang/String;)V
return-void
:cond_1c
new-instance p1, Ljava/lang/NullPointerException;
const-string v0, "filename cannot be null"
invoke-direct {p1, v0}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method private A([B)Z
.registers 5
const/4 v0, 0x0
const/4 v1, 0x0
:try_start_2
new-instance v2, Le/l/a/a$b;
invoke-direct {v2, p1}, Le/l/a/a$b;-><init>([B)V
:try_end_7
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_7} :catch_29
.catchall {:try_start_2 .. :try_end_7} :catchall_22
:try_start_7
invoke-direct {p0, v2}, Le/l/a/a;->I(Le/l/a/a$b;)Ljava/nio/ByteOrder;
move-result-object p1
iput-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v2, p1}, Le/l/a/a$b;->G(Ljava/nio/ByteOrder;)V
invoke-virtual {v2}, Le/l/a/a$b;->readShort()S
move-result p1
:try_end_14
.catch Ljava/lang/Exception; {:try_start_7 .. :try_end_14} :catch_20
.catchall {:try_start_7 .. :try_end_14} :catchall_1d
const/16 v1, 0x55
if-ne p1, v1, :cond_19
const/4 v0, 0x1
:cond_19
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
return v0
:catchall_1d
move-exception p1
move-object v1, v2
goto :goto_23
:catch_20
move-object v1, v2
goto :goto_2a
:catchall_22
move-exception p1
:goto_23
if-eqz v1, :cond_28
invoke-virtual {v1}, Ljava/io/InputStream;->close()V
:cond_28
throw p1
:catch_29
nop
:goto_2a
if-eqz v1, :cond_2f
invoke-virtual {v1}, Ljava/io/InputStream;->close()V
:cond_2f
return v0
.end method
.method private static B(Ljava/io/FileDescriptor;)Z
.registers 5
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/4 v1, 0x0
const/16 v2, 0x15
if-lt v0, v2, :cond_1c
const-wide/16 v2, 0x0
:try_start_9
sget v0, Landroid/system/OsConstants;->SEEK_CUR:I
invoke-static {p0, v2, v3, v0}, Landroid/system/Os;->lseek(Ljava/io/FileDescriptor;JI)J
:try_end_e
.catch Ljava/lang/Exception; {:try_start_9 .. :try_end_e} :catch_10
const/4 p0, 0x1
return p0
:catch_10
nop
sget-boolean p0, Le/l/a/a;->r:Z
if-eqz p0, :cond_1c
const-string p0, "ExifInterface"
const-string v0, "The file descriptor for the given input is not seekable"
invoke-static {p0, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_1c
return v1
.end method
.method private C(Ljava/util/HashMap;)Z
.registers 7
const-string v0, "BitsPerSample"
invoke-virtual {p1, v0}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Le/l/a/a$c;
if-eqz v0, :cond_45
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v0, v1}, Le/l/a/a$c;->k(Ljava/nio/ByteOrder;)Ljava/lang/Object;
move-result-object v0
check-cast v0, [I
sget-object v1, Le/l/a/a;->u:[I
invoke-static {v1, v0}, Ljava/util/Arrays;->equals([I[I)Z
move-result v2
const/4 v3, 0x1
if-eqz v2, :cond_1c
return v3
:cond_1c
iget v2, p0, Le/l/a/a;->d:I
const/4 v4, 0x3
if-ne v2, v4, :cond_45
const-string v2, "PhotometricInterpretation"
invoke-virtual {p1, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Le/l/a/a$c;
if-eqz p1, :cond_45
iget-object v2, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {p1, v2}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result p1
if-ne p1, v3, :cond_3b
sget-object v2, Le/l/a/a;->v:[I
invoke-static {v0, v2}, Ljava/util/Arrays;->equals([I[I)Z
move-result v2
if-nez v2, :cond_44
:cond_3b
const/4 v2, 0x6
if-ne p1, v2, :cond_45
invoke-static {v0, v1}, Ljava/util/Arrays;->equals([I[I)Z
move-result p1
if-eqz p1, :cond_45
:cond_44
return v3
:cond_45
sget-boolean p1, Le/l/a/a;->r:Z
if-eqz p1, :cond_50
const-string p1, "ExifInterface"
const-string v0, "Unsupported data type value"
invoke-static {p1, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_50
const/4 p1, 0x0
return p1
.end method
.method private D(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, Le/l/a/a$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, Le/l/a/a$c;
if-eqz v0, :cond_28
if-eqz p1, :cond_28
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v0, v1}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v0
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {p1, v1}, Le/l/a/a$c;->i(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 private E([B)Z
.registers 6
const/4 v0, 0x0
const/4 v1, 0x0
:goto_2
sget-object v2, Le/l/a/a;->G:[B
array-length v3, v2
if-ge v1, v3, :cond_11
aget-byte v3, p1, v1
aget-byte v2, v2, v1
if-eq v3, v2, :cond_e
return v0
:cond_e
add-int/lit8 v1, v1, 0x1
goto :goto_2
:cond_11
const/4 v1, 0x0
:goto_12
sget-object v2, Le/l/a/a;->H:[B
array-length v3, v2
if-ge v1, v3, :cond_27
sget-object v3, Le/l/a/a;->G:[B
array-length v3, v3
add-int/2addr v3, v1
add-int/lit8 v3, v3, 0x4
aget-byte v3, p1, v3
aget-byte v2, v2, v1
if-eq v3, v2, :cond_24
return v0
:cond_24
add-int/lit8 v1, v1, 0x1
goto :goto_12
:cond_27
const/4 p1, 0x1
return p1
.end method
.method private F(Ljava/io/InputStream;)V
.registers 6
if-eqz p1, :cond_86
const/4 v0, 0x0
const/4 v1, 0x0
:goto_4
:try_start_4
sget-object v2, Le/l/a/a;->X:[[Le/l/a/a$d;
array-length v2, v2
if-ge v1, v2, :cond_15
iget-object v2, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
new-instance v3, Ljava/util/HashMap;
invoke-direct {v3}, Ljava/util/HashMap;-><init>()V
aput-object v3, v2, v1
add-int/lit8 v1, v1, 0x1
goto :goto_4
:cond_15
iget-boolean v1, p0, Le/l/a/a;->e:Z
if-nez v1, :cond_27
new-instance v1, Ljava/io/BufferedInputStream;
const/16 v2, 0x1388
invoke-direct {v1, p1, v2}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;I)V
invoke-direct {p0, v1}, Le/l/a/a;->j(Ljava/io/BufferedInputStream;)I
move-result p1
iput p1, p0, Le/l/a/a;->d:I
move-object p1, v1
:cond_27
new-instance v1, Le/l/a/a$b;
invoke-direct {v1, p1}, Le/l/a/a$b;-><init>(Ljava/io/InputStream;)V
iget-boolean p1, p0, Le/l/a/a;->e:Z
if-nez p1, :cond_56
iget p1, p0, Le/l/a/a;->d:I
packed-switch p1, :pswitch_data_90
goto :goto_59
:pswitch_36
invoke-direct {p0, v1}, Le/l/a/a;->q(Le/l/a/a$b;)V
goto :goto_59
:pswitch_3a
invoke-direct {p0, v1}, Le/l/a/a;->l(Le/l/a/a$b;)V
goto :goto_59
:pswitch_3e
invoke-direct {p0, v1}, Le/l/a/a;->h(Le/l/a/a$b;)V
goto :goto_59
:pswitch_42
invoke-direct {p0, v1}, Le/l/a/a;->o(Le/l/a/a$b;)V
goto :goto_59
:pswitch_46
invoke-direct {p0, v1}, Le/l/a/a;->m(Le/l/a/a$b;)V
goto :goto_59
:pswitch_4a
invoke-direct {p0, v1}, Le/l/a/a;->k(Le/l/a/a$b;)V
goto :goto_59
:pswitch_4e
invoke-direct {p0, v1, v0, v0}, Le/l/a/a;->i(Le/l/a/a$b;II)V
goto :goto_59
:pswitch_52
invoke-direct {p0, v1}, Le/l/a/a;->n(Le/l/a/a$b;)V
goto :goto_59
:cond_56
invoke-direct {p0, v1}, Le/l/a/a;->p(Le/l/a/a$b;)V
:goto_59
invoke-direct {p0, v1}, Le/l/a/a;->M(Le/l/a/a$b;)V
:try_end_5c
.catch Ljava/io/IOException; {:try_start_4 .. :try_end_5c} :catch_66
.catchall {:try_start_4 .. :try_end_5c} :catchall_64
invoke-direct {p0}, Le/l/a/a;->a()V
sget-boolean p1, Le/l/a/a;->r:Z
if-eqz p1, :cond_7a
goto :goto_77
:catchall_64
move-exception p1
goto :goto_7b
:catch_66
move-exception p1
:try_start_67
sget-boolean v0, Le/l/a/a;->r:Z
if-eqz v0, :cond_72
const-string v1, "ExifInterface"
const-string v2, "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 {v1, v2, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
:try_end_72
.catchall {:try_start_67 .. :try_end_72} :catchall_64
:cond_72
invoke-direct {p0}, Le/l/a/a;->a()V
if-eqz v0, :cond_7a
:goto_77
invoke-direct {p0}, Le/l/a/a;->H()V
:cond_7a
return-void
:goto_7b
invoke-direct {p0}, Le/l/a/a;->a()V
sget-boolean v0, Le/l/a/a;->r:Z
if-eqz v0, :cond_85
invoke-direct {p0}, Le/l/a/a;->H()V
:cond_85
throw p1
:cond_86
new-instance p1, Ljava/lang/NullPointerException;
const-string v0, "inputstream shouldn\'t be null"
invoke-direct {p1, v0}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
goto :goto_8f
:goto_8e
throw p1
:goto_8f
goto :goto_8e
:pswitch_data_90
.packed-switch 0x0
:pswitch_52
:pswitch_52
:pswitch_52
:pswitch_52
:pswitch_4e
:pswitch_52
:pswitch_52
:pswitch_4a
:pswitch_52
:pswitch_46
:pswitch_42
:pswitch_52
:pswitch_3e
:pswitch_3a
:pswitch_36
.end packed-switch
.end method
.method private G(Le/l/a/a$b;I)V
.registers 6
invoke-direct {p0, p1}, Le/l/a/a;->I(Le/l/a/a$b;)Ljava/nio/ByteOrder;
move-result-object v0
iput-object v0, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {p1, v0}, Le/l/a/a$b;->G(Ljava/nio/ByteOrder;)V
invoke-virtual {p1}, Le/l/a/a$b;->readUnsignedShort()I
move-result v0
iget v1, p0, Le/l/a/a;->d:I
const/4 v2, 0x7
if-eq v1, v2, :cond_36
const/16 v2, 0xa
if-eq v1, v2, :cond_36
const/16 v1, 0x2a
if-ne v0, v1, :cond_1b
goto :goto_36
:cond_1b
new-instance p1, Ljava/io/IOException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Invalid start code: "
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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_36
:goto_36
invoke-virtual {p1}, Le/l/a/a$b;->readInt()I
move-result v0
const/16 v1, 0x8
if-lt v0, v1, :cond_63
if-ge v0, p2, :cond_63
add-int/lit8 v0, v0, -0x8
if-lez v0, :cond_62
invoke-virtual {p1, v0}, Le/l/a/a$b;->skipBytes(I)I
move-result p1
if-ne p1, v0, :cond_4b
goto :goto_62
:cond_4b
new-instance p1, Ljava/io/IOException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Couldn\'t jump to first Ifd: "
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(I)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_62
:goto_62
return-void
:cond_63
new-instance p1, Ljava/io/IOException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Invalid first Ifd offset: "
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(I)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
.end method
.method private H()V
.registers 8
const/4 v0, 0x0
:goto_1
iget-object v1, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
array-length v1, v1
if-ge v0, v1, :cond_88
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "The size of tag group["
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v2, "]: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Le/l/a/a;->f:[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, Le/l/a/a;->f:[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_38
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_84
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, Le/l/a/a$c;
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "tagName: "
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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}, Le/l/a/a$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, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v4, v3}, Le/l/a/a$c;->j(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_38
:cond_84
add-int/lit8 v0, v0, 0x1
goto/16 :goto_1
:cond_88
return-void
.end method
.method private I(Le/l/a/a$b;)Ljava/nio/ByteOrder;
.registers 5
invoke-virtual {p1}, Le/l/a/a$b;->readShort()S
move-result p1
const/16 v0, 0x4949
const-string v1, "ExifInterface"
if-eq p1, v0, :cond_35
const/16 v0, 0x4d4d
if-ne p1, v0, :cond_1a
sget-boolean p1, Le/l/a/a;->r: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;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Invalid byte order: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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_35
sget-boolean p1, Le/l/a/a;->r:Z
if-eqz p1, :cond_3e
const-string p1, "readExifSegment: Byte Align II"
invoke-static {v1, p1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_3e
sget-object p1, Ljava/nio/ByteOrder;->LITTLE_ENDIAN:Ljava/nio/ByteOrder;
return-object p1
.end method
.method private J([BI)V
.registers 4
new-instance v0, Le/l/a/a$b;
invoke-direct {v0, p1}, Le/l/a/a$b;-><init>([B)V
array-length p1, p1
invoke-direct {p0, v0, p1}, Le/l/a/a;->G(Le/l/a/a$b;I)V
invoke-direct {p0, v0, p2}, Le/l/a/a;->K(Le/l/a/a$b;I)V
return-void
.end method
.method private K(Le/l/a/a$b;I)V
.registers 33
move-object/from16 v0, p0
move-object/from16 v1, p1
move/from16 v2, p2
iget-object v3, v0, Le/l/a/a;->g:Ljava/util/Set;
iget v4, v1, Le/l/a/a$b;->h: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, Le/l/a/a$b;->h:I
const/4 v4, 0x2
add-int/2addr v3, v4
iget v5, v1, Le/l/a/a$b;->g:I
if-le v3, v5, :cond_1a
return-void
:cond_1a
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readShort()S
move-result v3
sget-boolean v5, Le/l/a/a;->r:Z
const-string v6, "ExifInterface"
if-eqz v5, :cond_38
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
const-string v7, "numberOfDirectoryEntry: "
invoke-virtual {v5, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-static {v6, v5}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_38
iget v5, v1, Le/l/a/a$b;->h:I
mul-int/lit8 v7, v3, 0xc
add-int/2addr v5, v7
iget v7, v1, Le/l/a/a$b;->g:I
if-gt v5, v7, :cond_3fb
if-gtz v3, :cond_45
goto/16 :goto_3fb
:cond_45
const/4 v5, 0x0
const/4 v7, 0x0
:goto_47
const/4 v8, 0x5
if-ge v7, v3, :cond_37e
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readUnsignedShort()I
move-result v13
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readUnsignedShort()I
move-result v14
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readInt()I
move-result v15
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->m()I
move-result v9
int-to-long v9, v9
const-wide/16 v18, 0x4
add-long v9, v9, v18
sget-object v20, Le/l/a/a;->Z:[Ljava/util/HashMap;
aget-object v12, v20, v2
invoke-static {v13}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
invoke-virtual {v12, v4}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
check-cast v4, Le/l/a/a$d;
sget-boolean v12, Le/l/a/a;->r:Z
const/4 v11, 0x3
if-eqz v12, :cond_a3
new-array v8, v8, [Ljava/lang/Object;
invoke-static/range {p2 .. p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v23
aput-object v23, v8, v5
invoke-static {v13}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v23
const/16 v20, 0x1
aput-object v23, v8, v20
if-eqz v4, :cond_87
iget-object v5, v4, Le/l/a/a$d;->b:Ljava/lang/String;
goto :goto_88
:cond_87
const/4 v5, 0x0
:goto_88
const/16 v22, 0x2
aput-object v5, v8, v22
invoke-static {v14}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
aput-object v5, v8, v11
invoke-static {v15}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
const/16 v21, 0x4
aput-object v5, v8, v21
const-string v5, "ifdType: %d, tagNumber: %d, tagName: %s, dataFormat: %d, numberOfComponents: %d"
invoke-static {v5, v8}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v5
invoke-static {v6, v5}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_a3
const/4 v5, 0x7
if-nez v4, :cond_c1
if-eqz v12, :cond_bc
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const-string v11, "Skip the tag entry since tag number is not defined: "
invoke-virtual {v8, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v13}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
:goto_b5
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v8
invoke-static {v6, v8}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_bc
move-object v11, v6
move/from16 v25, v7
goto/16 :goto_13a
:cond_c1
if-lez v14, :cond_121
sget-object v8, Le/l/a/a;->L:[I
array-length v11, v8
if-lt v14, v11, :cond_c9
goto :goto_121
:cond_c9
invoke-virtual {v4, v14}, Le/l/a/a$d;->a(I)Z
move-result v11
if-nez v11, :cond_ed
if-eqz v12, :cond_bc
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const-string v11, "Skip the tag entry since data format ("
invoke-virtual {v8, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
sget-object v11, Le/l/a/a;->K:[Ljava/lang/String;
aget-object v11, v11, v14
invoke-virtual {v8, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v11, ") is unexpected for tag: "
invoke-virtual {v8, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v11, v4, Le/l/a/a$d;->b:Ljava/lang/String;
invoke-virtual {v8, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_b5
:cond_ed
if-ne v14, v5, :cond_f1
iget v14, v4, Le/l/a/a$d;->c:I
:cond_f1
move-object v11, v6
int-to-long v5, v15
aget v8, v8, v14
move/from16 v25, v7
int-to-long v7, v8
mul-long v5, v5, v7
const-wide/16 v7, 0x0
cmp-long v26, v5, v7
if-ltz v26, :cond_10a
const-wide/32 v7, 0x7fffffff
cmp-long v26, v5, v7
if-lez v26, :cond_108
goto :goto_10a
:cond_108
const/4 v7, 0x1
goto :goto_13d
:cond_10a
:goto_10a
if-eqz v12, :cond_13c
new-instance v7, Ljava/lang/StringBuilder;
invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
const-string v8, "Skip the tag entry since the number of components is invalid: "
invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v15}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v7
invoke-static {v11, v7}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_13c
:cond_121
:goto_121
move-object v11, v6
move/from16 v25, v7
if-eqz v12, :cond_13a
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "Skip the tag entry since data format is invalid: "
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5, v14}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-static {v11, v5}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_13a
:goto_13a
const-wide/16 v5, 0x0
:cond_13c
:goto_13c
const/4 v7, 0x0
:goto_13d
if-nez v7, :cond_147
invoke-virtual {v1, v9, v10}, Le/l/a/a$b;->x(J)V
move/from16 v26, v3
:goto_144
const/4 v13, 0x2
goto/16 :goto_372
:cond_147
const-string v7, "Compression"
cmp-long v8, v5, v18
if-lez v8, :cond_20f
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readInt()I
move-result v8
move/from16 v26, v3
if-eqz v12, :cond_16c
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
move/from16 v18, v14
const-string v14, "seek to data offset: "
invoke-virtual {v3, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v11, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_16e
:cond_16c
move/from16 v18, v14
:goto_16e
iget v3, v0, Le/l/a/a;->d:I
const/4 v14, 0x7
if-ne v3, v14, :cond_1ce
iget-object v3, v4, Le/l/a/a$d;->b:Ljava/lang/String;
const-string v14, "MakerNote"
invoke-virtual {v14, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_180
iput v8, v0, Le/l/a/a;->n:I
goto :goto_1c9
:cond_180
const/4 v3, 0x6
if-ne v2, v3, :cond_1c9
iget-object v14, v4, Le/l/a/a$d;->b:Ljava/lang/String;
const-string v3, "ThumbnailImage"
invoke-virtual {v3, v14}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_1c9
iput v8, v0, Le/l/a/a;->o:I
iput v15, v0, Le/l/a/a;->p:I
iget-object v3, v0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
const/4 v14, 0x6
invoke-static {v14, v3}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v3
iget v14, v0, Le/l/a/a;->o:I
move/from16 v19, v15
int-to-long v14, v14
iget-object v2, v0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v14, v15, v2}, Le/l/a/a$c;->b(JLjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v2
iget v14, v0, Le/l/a/a;->p:I
int-to-long v14, v14
move/from16 v24, v13
iget-object v13, v0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v14, v15, v13}, Le/l/a/a$c;->b(JLjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v13
iget-object v14, v0, Le/l/a/a;->f:[Ljava/util/HashMap;
const/4 v15, 0x4
aget-object v14, v14, v15
invoke-virtual {v14, v7, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
iget-object v3, v0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v3, v3, v15
const-string v14, "JPEGInterchangeFormat"
invoke-virtual {v3, v14, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
iget-object v2, v0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v2, v2, v15
const-string v3, "JPEGInterchangeFormatLength"
invoke-virtual {v2, v3, v13}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_1e2
:cond_1c9
:goto_1c9
move/from16 v24, v13
move/from16 v19, v15
goto :goto_1e2
:cond_1ce
move/from16 v24, v13
move/from16 v19, v15
const/16 v2, 0xa
if-ne v3, v2, :cond_1e2
iget-object v2, v4, Le/l/a/a$d;->b:Ljava/lang/String;
const-string v3, "JpgFromRaw"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_1e2
iput v8, v0, Le/l/a/a;->q:I
:cond_1e2
:goto_1e2
int-to-long v2, v8
add-long v13, v2, v5
iget v15, v1, Le/l/a/a$b;->g:I
move-object/from16 v27, v4
move-wide/from16 v28, v5
int-to-long v4, v15
cmp-long v6, v13, v4
if-gtz v6, :cond_1f4
invoke-virtual {v1, v2, v3}, Le/l/a/a$b;->x(J)V
goto :goto_21b
:cond_1f4
if-eqz v12, :cond_20a
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, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v11, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_20a
invoke-virtual {v1, v9, v10}, Le/l/a/a$b;->x(J)V
goto/16 :goto_144
:cond_20f
move/from16 v26, v3
move-object/from16 v27, v4
move-wide/from16 v28, v5
move/from16 v24, v13
move/from16 v18, v14
move/from16 v19, v15
:goto_21b
sget-object v2, Le/l/a/a;->c0:Ljava/util/HashMap;
invoke-static/range {v24 .. v24}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/Integer;
if-eqz v12, :cond_248
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "nextIfdType: "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v4, " byteCount: "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-wide/from16 v5, v28
invoke-virtual {v3, v5, v6}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v11, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_24a
:cond_248
move-wide/from16 v5, v28
:goto_24a
const/16 v3, 0x8
if-eqz v2, :cond_2f4
const-wide/16 v4, -0x1
move/from16 v14, v18
const/4 v6, 0x3
if-eq v14, v6, :cond_272
const/4 v6, 0x4
if-eq v14, v6, :cond_26d
if-eq v14, v3, :cond_268
const/16 v3, 0x9
if-eq v14, v3, :cond_263
const/16 v3, 0xd
if-eq v14, v3, :cond_263
goto :goto_277
:cond_263
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readInt()I
move-result v3
goto :goto_276
:cond_268
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readShort()S
move-result v3
goto :goto_276
:cond_26d
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->r()J
move-result-wide v4
goto :goto_277
:cond_272
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readUnsignedShort()I
move-result v3
:goto_276
int-to-long v4, v3
:goto_277
const/4 v13, 0x2
if-eqz v12, :cond_293
new-array v3, v13, [Ljava/lang/Object;
invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v6
const/4 v7, 0x0
aput-object v6, v3, v7
move-object/from16 v8, v27
iget-object v6, v8, Le/l/a/a$d;->b:Ljava/lang/String;
const/4 v7, 0x1
aput-object v6, v3, v7
const-string v6, "Offset: %d, tagName: %s"
invoke-static {v6, v3}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v3
invoke-static {v11, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_293
const-wide/16 v6, 0x0
cmp-long v3, v4, v6
if-lez v3, :cond_2d9
iget v3, v1, Le/l/a/a$b;->g:I
int-to-long v6, v3
cmp-long v3, v4, v6
if-gez v3, :cond_2d9
iget-object v3, v0, Le/l/a/a;->g:Ljava/util/Set;
long-to-int v6, v4
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v6
invoke-interface {v3, v6}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_2b8
invoke-virtual {v1, v4, v5}, Le/l/a/a$b;->x(J)V
invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
move-result v2
invoke-direct {v0, v1, v2}, Le/l/a/a;->K(Le/l/a/a$b;I)V
goto :goto_2ef
:cond_2b8
if-eqz v12, :cond_2ef
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "Skip jump into the IFD since it has already been read: IfdType "
invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v2, " (at "
invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
const-string v2, ")"
invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
goto :goto_2ec
:cond_2d9
if-eqz v12, :cond_2ef
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Skip jump into the IFD since its offset is invalid: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
:goto_2ec
invoke-static {v11, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_2ef
:goto_2ef
invoke-virtual {v1, v9, v10}, Le/l/a/a$b;->x(J)V
goto/16 :goto_372
:cond_2f4
move/from16 v14, v18
move-object/from16 v8, v27
const/4 v13, 0x2
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->m()I
move-result v2
iget v4, v0, Le/l/a/a;->m:I
add-int/2addr v2, v4
long-to-int v4, v5
new-array v4, v4, [B
invoke-virtual {v1, v4}, Le/l/a/a$b;->readFully([B)V
new-instance v5, Le/l/a/a$c;
move-object v12, v4
int-to-long v3, v2
move/from16 v2, v19
move-object v15, v5
move/from16 v16, v14
move/from16 v17, v2
move-wide/from16 v18, v3
move-object/from16 v20, v12
invoke-direct/range {v15 .. v20}, Le/l/a/a$c;-><init>(IIJ[B)V
iget-object v2, v0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v2, v2, p2
iget-object v3, v8, Le/l/a/a$d;->b:Ljava/lang/String;
invoke-virtual {v2, v3, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
iget-object v2, v8, Le/l/a/a$d;->b:Ljava/lang/String;
const-string v3, "DNGVersion"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_32e
const/4 v2, 0x3
iput v2, v0, Le/l/a/a;->d:I
:cond_32e
iget-object v2, v8, Le/l/a/a$d;->b:Ljava/lang/String;
const-string v3, "Make"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_342
iget-object v2, v8, Le/l/a/a$d;->b:Ljava/lang/String;
const-string v3, "Model"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_350
:cond_342
iget-object v2, v0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v5, v2}, Le/l/a/a$c;->j(Ljava/nio/ByteOrder;)Ljava/lang/String;
move-result-object v2
const-string v3, "PENTAX"
invoke-virtual {v2, v3}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_363
:cond_350
iget-object v2, v8, Le/l/a/a$d;->b:Ljava/lang/String;
invoke-virtual {v7, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_367
iget-object v2, v0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v5, v2}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v2
const v3, 0xffff
if-ne v2, v3, :cond_367
:cond_363
const/16 v2, 0x8
iput v2, v0, Le/l/a/a;->d:I
:cond_367
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->m()I
move-result v2
int-to-long v2, v2
cmp-long v4, v2, v9
if-eqz v4, :cond_372
goto/16 :goto_2ef
:cond_372
:goto_372
add-int/lit8 v7, v25, 0x1
int-to-short v7, v7
move/from16 v2, p2
move-object v6, v11
move/from16 v3, v26
const/4 v4, 0x2
const/4 v5, 0x0
goto/16 :goto_47
:cond_37e
move-object v11, v6
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->m()I
move-result v2
const/4 v3, 0x4
add-int/2addr v2, v3
iget v3, v1, Le/l/a/a$b;->g:I
if-gt v2, v3, :cond_3fb
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readInt()I
move-result v2
sget-boolean v3, Le/l/a/a;->r:Z
if-eqz v3, :cond_3a4
const/4 v4, 0x1
new-array v4, v4, [Ljava/lang/Object;
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
const/4 v6, 0x0
aput-object v5, v4, v6
const-string v5, "nextIfdOffset: %d"
invoke-static {v5, v4}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v4
invoke-static {v11, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_3a4
int-to-long v4, v2
const-wide/16 v6, 0x0
cmp-long v9, v4, v6
if-lez v9, :cond_3e5
iget v6, v1, Le/l/a/a$b;->g:I
if-ge v2, v6, :cond_3e5
iget-object v6, v0, Le/l/a/a;->g:Ljava/util/Set;
invoke-static {v2}, 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_3db
invoke-virtual {v1, v4, v5}, Le/l/a/a$b;->x(J)V
iget-object v2, v0, Le/l/a/a;->f:[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_3cd
invoke-direct {v0, v1, v3}, Le/l/a/a;->K(Le/l/a/a$b;I)V
goto :goto_3fb
:cond_3cd
iget-object v2, v0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v2, v2, v8
invoke-virtual {v2}, Ljava/util/HashMap;->isEmpty()Z
move-result v2
if-eqz v2, :cond_3fb
invoke-direct {v0, v1, v8}, Le/l/a/a;->K(Le/l/a/a$b;I)V
goto :goto_3fb
:cond_3db
if-eqz v3, :cond_3fb
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Stop reading file since re-reading an IFD may cause an infinite loop: "
goto :goto_3ee
:cond_3e5
if-eqz v3, :cond_3fb
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Stop reading file since a wrong offset may cause an infinite loop: "
:goto_3ee
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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
invoke-static {v11, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_3fb
:goto_3fb
return-void
.end method
.method private L(Le/l/a/a$b;I)V
.registers 6
iget-object v0, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v0, v0, p2
const-string v1, "ImageLength"
invoke-virtual {v0, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Le/l/a/a$c;
iget-object v1, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v1, v1, p2
const-string v2, "ImageWidth"
invoke-virtual {v1, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Le/l/a/a$c;
if-eqz v0, :cond_1c
if-nez v1, :cond_33
:cond_1c
iget-object v0, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
if-eqz v0, :cond_33
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v0, v1}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v0
invoke-direct {p0, p1, v0, p2}, Le/l/a/a;->i(Le/l/a/a$b;II)V
:cond_33
return-void
.end method
.method private M(Le/l/a/a$b;)V
.registers 6
iget-object v0, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
const/4 v1, 0x4
aget-object v0, v0, v1
const-string v1, "Compression"
invoke-virtual {v0, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Le/l/a/a$c;
const/4 v2, 0x6
if-eqz v1, :cond_2b
iget-object v3, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v1, v3}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v1
iput v1, p0, Le/l/a/a;->l:I
const/4 v3, 0x1
if-eq v1, v3, :cond_21
if-eq v1, v2, :cond_2d
const/4 v2, 0x7
if-eq v1, v2, :cond_21
goto :goto_30
:cond_21
invoke-direct {p0, v0}, Le/l/a/a;->C(Ljava/util/HashMap;)Z
move-result v1
if-eqz v1, :cond_30
invoke-direct {p0, p1, v0}, Le/l/a/a;->s(Le/l/a/a$b;Ljava/util/HashMap;)V
goto :goto_30
:cond_2b
iput v2, p0, Le/l/a/a;->l:I
:cond_2d
invoke-direct {p0, p1, v0}, Le/l/a/a;->r(Le/l/a/a$b;Ljava/util/HashMap;)V
:cond_30
:goto_30
return-void
.end method
.method private static N([B[B)Z
.registers 6
const/4 v0, 0x0
if-eqz p0, :cond_1b
if-nez p1, :cond_6
goto :goto_1b
:cond_6
array-length v1, p0
array-length v2, p1
if-ge v1, v2, :cond_b
return v0
:cond_b
const/4 v1, 0x0
:goto_c
array-length v2, p1
if-ge v1, v2, :cond_19
aget-byte v2, p0, v1
aget-byte v3, p1, v1
if-eq v2, v3, :cond_16
return v0
:cond_16
add-int/lit8 v1, v1, 0x1
goto :goto_c
:cond_19
const/4 p0, 0x1
return p0
:cond_1b
:goto_1b
return v0
.end method
.method private O(II)V
.registers 9
iget-object v0, p0, Le/l/a/a;->f:[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, Le/l/a/a;->f:[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, Le/l/a/a;->f:[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, Le/l/a/a$c;
iget-object v3, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
iget-object v5, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
iget-object v5, p0, Le/l/a/a;->f:[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, Le/l/a/a$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, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v0, v1}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v0
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v3, v1}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v1
iget-object v3, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v2, v3}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v2
iget-object v3, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v4, v3}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v3
if-ge v0, v2, :cond_85
if-ge v1, v3, :cond_85
iget-object v0, p0, Le/l/a/a;->f:[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, Le/l/a/a;->r: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, Le/l/a/a;->r: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, Le/l/a/a;->r: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 private P(Le/l/a/a$b;I)V
.registers 12
iget-object v0, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
iget-object v1, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
iget-object v2, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
iget-object v3, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
iget-object v4, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
const-string v5, "ImageLength"
const-string v6, "ImageWidth"
if-eqz v0, :cond_be
iget p1, v0, Le/l/a/a$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="
const-string v8, "ExifInterface"
if-ne p1, v1, :cond_84
iget-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v0, p1}, Le/l/a/a$c;->k(Ljava/nio/ByteOrder;)Ljava/lang/Object;
move-result-object p1
check-cast p1, [Le/l/a/a$e;
if-eqz p1, :cond_6d
array-length v0, p1
if-eq v0, v4, :cond_5c
goto :goto_6d
:cond_5c
aget-object v0, p1, v3
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v0, v1}, Le/l/a/a$c;->d(Le/l/a/a$e;Ljava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v0
aget-object p1, p1, v2
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {p1, v1}, Le/l/a/a$c;->d(Le/l/a/a$e;Ljava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object p1
goto :goto_a2
:cond_6d
:goto_6d
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p2, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {p1}, Ljava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
:goto_79
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
invoke-static {v8, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
return-void
:cond_84
iget-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v0, p1}, Le/l/a/a$c;->k(Ljava/nio/ByteOrder;)Ljava/lang/Object;
move-result-object p1
check-cast p1, [I
if-eqz p1, :cond_b1
array-length v0, p1
if-eq v0, v4, :cond_92
goto :goto_b1
:cond_92
aget v0, p1, v3
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v0, v1}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v0
aget p1, p1, v2
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {p1, v1}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object p1
:goto_a2
iget-object v1, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v1, v1, p2
invoke-virtual {v1, v6, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
iget-object v0, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object p2, v0, p2
invoke-virtual {p2, v5, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_102
:cond_b1
:goto_b1
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p2, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {p1}, Ljava/util/Arrays;->toString([I)Ljava/lang/String;
move-result-object p1
goto :goto_79
:cond_be
if-eqz v1, :cond_ff
if-eqz v2, :cond_ff
if-eqz v3, :cond_ff
if-eqz v4, :cond_ff
iget-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v1, p1}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result p1
iget-object v0, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v3, v0}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v0
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v4, v1}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v1
iget-object v3, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v2, v3}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v2
if-le v0, p1, :cond_102
if-le v1, v2, :cond_102
sub-int/2addr v0, p1
sub-int/2addr v1, v2
iget-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v0, p1}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object p1
iget-object v0, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v1, v0}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v0
iget-object v1, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v1, v1, p2
invoke-virtual {v1, v5, p1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
iget-object p1, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object p1, p1, p2
invoke-virtual {p1, v6, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_102
:cond_ff
invoke-direct {p0, p1, p2}, Le/l/a/a;->L(Le/l/a/a$b;I)V
:cond_102
:goto_102
return-void
.end method
.method private Q()V
.registers 8
const/4 v0, 0x0
const/4 v1, 0x5
invoke-direct {p0, v0, v1}, Le/l/a/a;->O(II)V
const/4 v2, 0x4
invoke-direct {p0, v0, v2}, Le/l/a/a;->O(II)V
invoke-direct {p0, v1, v2}, Le/l/a/a;->O(II)V
iget-object v3, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
iget-object v5, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
if-eqz v3, :cond_3b
if-eqz v4, :cond_3b
iget-object v5, p0, Le/l/a/a;->f:[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, Le/l/a/a;->f:[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, Le/l/a/a;->f:[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, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v0, v0, v1
invoke-direct {p0, v0}, Le/l/a/a;->D(Ljava/util/HashMap;)Z
move-result v0
if-eqz v0, :cond_5c
iget-object v0, p0, Le/l/a/a;->f:[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, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v0, v0, v2
invoke-direct {p0, v0}, Le/l/a/a;->D(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 private a()V
.registers 7
const-string v0, "DateTimeOriginal"
invoke-virtual {p0, v0}, Le/l/a/a;->e(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}, Le/l/a/a;->e(Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
if-nez v3, :cond_1c
iget-object v3, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v3, v3, v1
invoke-static {v0}, Le/l/a/a$c;->a(Ljava/lang/String;)Le/l/a/a$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}, Le/l/a/a;->e(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
const-wide/16 v3, 0x0
if-nez v2, :cond_33
iget-object v2, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v2, v2, v1
iget-object v5, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v3, v4, v5}, Le/l/a/a$c;->b(JLjava/nio/ByteOrder;)Le/l/a/a$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}, Le/l/a/a;->e(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
if-nez v2, :cond_48
iget-object v2, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v2, v2, v1
iget-object v5, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v3, v4, v5}, Le/l/a/a$c;->b(JLjava/nio/ByteOrder;)Le/l/a/a$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}, Le/l/a/a;->e(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
if-nez v2, :cond_5d
iget-object v2, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v1, v2, v1
iget-object v2, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v3, v4, v2}, Le/l/a/a$c;->b(JLjava/nio/ByteOrder;)Le/l/a/a$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}, Le/l/a/a;->e(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
if-nez v1, :cond_73
iget-object v1, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
const/4 v2, 0x1
aget-object v1, v1, v2
iget-object v2, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v3, v4, v2}, Le/l/a/a$c;->b(JLjava/nio/ByteOrder;)Le/l/a/a$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 private 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
const/4 v2, 0x0
: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 private static c(Ljava/io/Closeable;)V
.registers 1
if-eqz p0, :cond_8
:try_start_2
invoke-interface {p0}, Ljava/io/Closeable;->close()V
:try_end_5
.catch Ljava/lang/RuntimeException; {:try_start_2 .. :try_end_5} :catch_6
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_5} :catch_8
goto :goto_8
:catch_6
move-exception p0
throw p0
:catch_8
:cond_8
:goto_8
return-void
.end method
.method private static d(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 private g(Ljava/lang/String;)Le/l/a/a$c;
.registers 4
if-eqz p1, :cond_2f
const-string v0, "ISOSpeedRatings"
invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_17
sget-boolean p1, Le/l/a/a;->r:Z
if-eqz p1, :cond_15
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_15
const-string p1, "PhotographicSensitivity"
:cond_17
const/4 v0, 0x0
:goto_18
sget-object v1, Le/l/a/a;->X:[[Le/l/a/a$d;
array-length v1, v1
if-ge v0, v1, :cond_2d
iget-object v1, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
if-eqz v1, :cond_2a
return-object v1
:cond_2a
add-int/lit8 v0, v0, 0x1
goto :goto_18
:cond_2d
const/4 p1, 0x0
return-object p1
:cond_2f
new-instance p1, Ljava/lang/NullPointerException;
const-string v0, "tag shouldn\'t be null"
invoke-direct {p1, v0}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
goto :goto_38
:goto_37
throw p1
:goto_38
goto :goto_37
.end method
.method private h(Le/l/a/a$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
sget v2, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v3, 0x17
if-lt v2, v3, :cond_16
new-instance v2, Le/l/a/a$a;
invoke-direct {v2, p0, p1}, Le/l/a/a$a;-><init>(Le/l/a/a;Le/l/a/a$b;)V
invoke-virtual {v1, v2}, Landroid/media/MediaMetadataRetriever;->setDataSource(Landroid/media/MediaDataSource;)V
goto :goto_25
:cond_16
iget-object v2, p0, Le/l/a/a;->b:Ljava/io/FileDescriptor;
if-eqz v2, :cond_1e
invoke-virtual {v1, v2}, Landroid/media/MediaMetadataRetriever;->setDataSource(Ljava/io/FileDescriptor;)V
goto :goto_25
:cond_1e
iget-object v2, p0, Le/l/a/a;->a:Ljava/lang/String;
if-eqz v2, :cond_148
invoke-virtual {v1, v2}, Landroid/media/MediaMetadataRetriever;->setDataSource(Ljava/lang/String;)V
:goto_25
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_57
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_72
:cond_57
invoke-virtual {v0, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_70
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_72
:cond_70
move-object v0, v6
move-object v4, v0
:goto_72
const/4 v5, 0x0
if-eqz v6, :cond_88
iget-object v7, p0, Le/l/a/a;->f:[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, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v9, v10}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v9
invoke-virtual {v7, v8, v9}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_88
if-eqz v0, :cond_9d
iget-object v7, p0, Le/l/a/a;->f:[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, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v9, v10}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v9
invoke-virtual {v7, v8, v9}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_9d
const/4 v7, 0x6
if-eqz v4, :cond_c7
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_b7
const/16 v10, 0xb4
if-eq v9, v10, :cond_b5
const/16 v10, 0x10e
if-eq v9, v10, :cond_b2
goto :goto_b8
:cond_b2
const/16 v8, 0x8
goto :goto_b8
:cond_b5
const/4 v8, 0x3
goto :goto_b8
:cond_b7
const/4 v8, 0x6
:goto_b8
iget-object v9, p0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v9, v9, v5
const-string v10, "Orientation"
iget-object v11, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v8, v11}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v8
invoke-virtual {v9, v10, v8}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_c7
if-eqz v2, :cond_11a
if-eqz v3, :cond_11a
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_112
int-to-long v8, v2
invoke-virtual {p1, v8, v9}, Le/l/a/a$b;->x(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_10a
add-int/2addr v2, v7
add-int/lit8 v3, v3, -0x6
sget-object v7, Le/l/a/a;->e0:[B
invoke-static {v8, v7}, Ljava/util/Arrays;->equals([B[B)Z
move-result v7
if-eqz v7, :cond_102
new-array v7, v3, [B
invoke-virtual {p1, v7}, Ljava/io/InputStream;->read([B)I
move-result p1
if-ne p1, v3, :cond_fa
iput v2, p0, Le/l/a/a;->m:I
invoke-direct {p0, v7, v5}, Le/l/a/a;->J([BI)V
goto :goto_11a
:cond_fa
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_102
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_10a
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_112
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_11a
:goto_11a
sget-boolean p1, Le/l/a/a;->r:Z
if-eqz p1, :cond_144
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_144
.catchall {:try_start_7 .. :try_end_144} :catchall_14c
:cond_144
invoke-virtual {v1}, Landroid/media/MediaMetadataRetriever;->release()V
return-void
:cond_148
invoke-virtual {v1}, Landroid/media/MediaMetadataRetriever;->release()V
return-void
:catchall_14c
move-exception p1
invoke-virtual {v1}, Landroid/media/MediaMetadataRetriever;->release()V
throw p1
.end method
.method private i(Le/l/a/a$b;II)V
.registers 23
move-object/from16 v0, p0
move-object/from16 v1, p1
move/from16 v2, p2
move/from16 v3, p3
sget-boolean v4, Le/l/a/a;->r: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;
invoke-virtual {v1, v4}, Le/l/a/a$b;->G(Ljava/nio/ByteOrder;)V
int-to-long v6, v2
invoke-virtual {v1, v6, v7}, Le/l/a/a$b;->x(J)V
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readByte()B
move-result v4
const-string v6, "Invalid marker: "
const/4 v7, -0x1
if-ne v4, v7, :cond_1d0
const/4 v8, 0x1
add-int/2addr v2, v8
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readByte()B
move-result v9
const/16 v10, -0x28
if-ne v9, v10, :cond_1b5
add-int/2addr v2, v8
:goto_3f
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readByte()B
move-result v4
if-ne v4, v7, :cond_198
add-int/2addr v2, v8
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readByte()B
move-result v4
sget-boolean v6, Le/l/a/a;->r:Z
if-eqz v6, :cond_68
new-instance v9, Ljava/lang/StringBuilder;
invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
const-string v10, "Found JPEG segment indicator: "
invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
and-int/lit16 v10, v4, 0xff
invoke-static {v10}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object v10
invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v9}, 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
:cond_68
add-int/2addr v2, v8
const/16 v9, -0x27
if-eq v4, v9, :cond_192
const/16 v9, -0x26
if-ne v4, v9, :cond_73
goto/16 :goto_192
:cond_73
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readUnsignedShort()I
move-result v9
add-int/lit8 v9, v9, -0x2
add-int/lit8 v2, v2, 0x2
if-eqz v6, :cond_a6
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
const-string v10, "JPEG segment: "
invoke-virtual {v6, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
and-int/lit16 v10, v4, 0xff
invoke-static {v10}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object v10
invoke-virtual {v6, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v10, " (length: "
invoke-virtual {v6, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v10, v9, 0x2
invoke-virtual {v6, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v10, ")"
invoke-virtual {v6, v10}, 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_a6
const-string v6, "Invalid length"
if-ltz v9, :cond_18c
const/16 v10, -0x1f
const/4 v11, 0x0
if-eq v4, v10, :cond_125
const/4 v10, -0x2
if-eq v4, v10, :cond_fa
packed-switch v4, :pswitch_data_1ee
packed-switch v4, :pswitch_data_1fa
packed-switch v4, :pswitch_data_204
packed-switch v4, :pswitch_data_20e
goto/16 :goto_171
:pswitch_c0
invoke-virtual {v1, v8}, Le/l/a/a$b;->skipBytes(I)I
move-result v4
if-ne v4, v8, :cond_f2
iget-object v4, v0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v4, v4, v3
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readUnsignedShort()I
move-result v10
int-to-long v10, v10
iget-object v12, v0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v10, v11, v12}, Le/l/a/a$c;->b(JLjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v10
const-string v11, "ImageLength"
invoke-virtual {v4, v11, v10}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
iget-object v4, v0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v4, v4, v3
invoke-virtual/range {p1 .. p1}, Le/l/a/a$b;->readUnsignedShort()I
move-result v10
int-to-long v10, v10
iget-object v12, v0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v10, v11, v12}, Le/l/a/a$c;->b(JLjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v10
const-string v11, "ImageWidth"
invoke-virtual {v4, v11, v10}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
add-int/lit8 v9, v9, -0x5
goto/16 :goto_171
:cond_f2
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_fa
new-array v4, v9, [B
invoke-virtual {v1, v4}, Ljava/io/InputStream;->read([B)I
move-result v10
if-ne v10, v9, :cond_11d
const-string v9, "UserComment"
invoke-virtual {v0, v9}, Le/l/a/a;->e(Ljava/lang/String;)Ljava/lang/String;
move-result-object v10
if-nez v10, :cond_170
iget-object v10, v0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v10, v10, v8
new-instance v12, Ljava/lang/String;
sget-object v13, Le/l/a/a;->d0:Ljava/nio/charset/Charset;
invoke-direct {v12, v4, v13}, Ljava/lang/String;-><init>([BLjava/nio/charset/Charset;)V
invoke-static {v12}, Le/l/a/a$c;->a(Ljava/lang/String;)Le/l/a/a$c;
move-result-object v4
invoke-virtual {v10, v9, v4}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_170
:cond_11d
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_125
new-array v4, v9, [B
invoke-virtual {v1, v4}, Le/l/a/a$b;->readFully([B)V
add-int v10, v2, v9
sget-object v12, Le/l/a/a;->e0:[B
invoke-static {v4, v12}, Le/l/a/a;->N([B[B)Z
move-result v13
if-eqz v13, :cond_141
array-length v13, v12
add-int/2addr v2, v13
array-length v12, v12
invoke-static {v4, v12, v9}, Ljava/util/Arrays;->copyOfRange([BII)[B
move-result-object v4
iput v2, v0, Le/l/a/a;->m:I
invoke-direct {v0, v4, v3}, Le/l/a/a;->J([BI)V
goto :goto_16f
:cond_141
sget-object v12, Le/l/a/a;->f0:[B
invoke-static {v4, v12}, Le/l/a/a;->N([B[B)Z
move-result v13
if-eqz v13, :cond_16f
array-length v13, v12
add-int/2addr v2, v13
array-length v12, v12
invoke-static {v4, v12, v9}, Ljava/util/Arrays;->copyOfRange([BII)[B
move-result-object v4
const-string v9, "Xmp"
invoke-virtual {v0, v9}, Le/l/a/a;->e(Ljava/lang/String;)Ljava/lang/String;
move-result-object v12
if-nez v12, :cond_16f
iget-object v12, v0, Le/l/a/a;->f:[Ljava/util/HashMap;
aget-object v12, v12, v11
new-instance v15, Le/l/a/a$c;
const/4 v14, 0x1
array-length v13, v4
int-to-long v7, v2
move v2, v13
move-object v13, v15
move-object v11, v15
move v15, v2
move-wide/from16 v16, v7
move-object/from16 v18, v4
invoke-direct/range {v13 .. v18}, Le/l/a/a$c;-><init>(IIJ[B)V
invoke-virtual {v12, v9, v11}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_16f
:goto_16f
move v2, v10
:cond_170
:goto_170
const/4 v9, 0x0
:goto_171
if-ltz v9, :cond_186
invoke-virtual {v1, v9}, Le/l/a/a$b;->skipBytes(I)I
move-result v4
if-ne v4, v9, :cond_17e
add-int/2addr v2, v9
const/4 v7, -0x1
const/4 v8, 0x1
goto/16 :goto_3f
:cond_17e
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_186
new-instance v1, Ljava/io/IOException;
invoke-direct {v1, v6}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw v1
:cond_18c
new-instance v1, Ljava/io/IOException;
invoke-direct {v1, v6}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw v1
:cond_192
:goto_192
iget-object v2, v0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v1, v2}, Le/l/a/a$b;->G(Ljava/nio/ByteOrder;)V
return-void
:cond_198
new-instance v1, Ljava/io/IOException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Invalid marker:"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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_1b5
new-instance v1, Ljava/io/IOException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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_1d0
new-instance v1, Ljava/io/IOException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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
goto :goto_1ec
:goto_1eb
throw v1
:goto_1ec
goto :goto_1eb
nop
:pswitch_data_1ee
.packed-switch -0x40
:pswitch_c0
:pswitch_c0
:pswitch_c0
:pswitch_c0
.end packed-switch
:pswitch_data_1fa
.packed-switch -0x3b
:pswitch_c0
:pswitch_c0
:pswitch_c0
.end packed-switch
:pswitch_data_204
.packed-switch -0x37
:pswitch_c0
:pswitch_c0
:pswitch_c0
.end packed-switch
:pswitch_data_20e
.packed-switch -0x33
:pswitch_c0
:pswitch_c0
:pswitch_c0
.end packed-switch
.end method
.method private j(Ljava/io/BufferedInputStream;)I
.registers 3
const/16 v0, 0x1388
invoke-virtual {p1, v0}, Ljava/io/BufferedInputStream;->mark(I)V
new-array v0, v0, [B
invoke-virtual {p1, v0}, Ljava/io/BufferedInputStream;->read([B)I
invoke-virtual {p1}, Ljava/io/BufferedInputStream;->reset()V
invoke-static {v0}, Le/l/a/a;->w([B)Z
move-result p1
if-eqz p1, :cond_15
const/4 p1, 0x4
return p1
:cond_15
invoke-direct {p0, v0}, Le/l/a/a;->z([B)Z
move-result p1
if-eqz p1, :cond_1e
const/16 p1, 0x9
return p1
:cond_1e
invoke-direct {p0, v0}, Le/l/a/a;->v([B)Z
move-result p1
if-eqz p1, :cond_27
const/16 p1, 0xc
return p1
:cond_27
invoke-direct {p0, v0}, Le/l/a/a;->x([B)Z
move-result p1
if-eqz p1, :cond_2f
const/4 p1, 0x7
return p1
:cond_2f
invoke-direct {p0, v0}, Le/l/a/a;->A([B)Z
move-result p1
if-eqz p1, :cond_38
const/16 p1, 0xa
return p1
:cond_38
invoke-direct {p0, v0}, Le/l/a/a;->y([B)Z
move-result p1
if-eqz p1, :cond_41
const/16 p1, 0xd
return p1
:cond_41
invoke-direct {p0, v0}, Le/l/a/a;->E([B)Z
move-result p1
if-eqz p1, :cond_4a
const/16 p1, 0xe
return p1
:cond_4a
const/4 p1, 0x0
return p1
.end method
.method private k(Le/l/a/a$b;)V
.registers 8
invoke-direct {p0, p1}, Le/l/a/a;->n(Le/l/a/a$b;)V
iget-object p1, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
if-eqz p1, :cond_f5
new-instance v1, Le/l/a/a$b;
iget-object p1, p1, Le/l/a/a$c;->c:[B
invoke-direct {v1, p1}, Le/l/a/a$b;-><init>([B)V
iget-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v1, p1}, Le/l/a/a$b;->G(Ljava/nio/ByteOrder;)V
sget-object p1, Le/l/a/a;->A:[B
array-length v2, p1
new-array v2, v2, [B
invoke-virtual {v1, v2}, Le/l/a/a$b;->readFully([B)V
const-wide/16 v3, 0x0
invoke-virtual {v1, v3, v4}, Le/l/a/a$b;->x(J)V
sget-object v3, Le/l/a/a;->B:[B
array-length v4, v3
new-array v4, v4, [B
invoke-virtual {v1, v4}, Le/l/a/a$b;->readFully([B)V
invoke-static {v2, p1}, Ljava/util/Arrays;->equals([B[B)Z
move-result p1
if-eqz p1, :cond_3f
const-wide/16 v2, 0x8
:goto_3b
invoke-virtual {v1, v2, v3}, Le/l/a/a$b;->x(J)V
goto :goto_48
:cond_3f
invoke-static {v4, v3}, Ljava/util/Arrays;->equals([B[B)Z
move-result p1
if-eqz p1, :cond_48
const-wide/16 v2, 0xc
goto :goto_3b
:cond_48
:goto_48
const/4 p1, 0x6
invoke-direct {p0, v1, p1}, Le/l/a/a;->K(Le/l/a/a$b;I)V
iget-object p1, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
iget-object v2, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
if-eqz p1, :cond_7c
if-eqz v1, :cond_7c
iget-object v2, p0, Le/l/a/a;->f:[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, Le/l/a/a;->f:[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_7c
iget-object p1, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
if-eqz p1, :cond_f5
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {p1, v1}, Le/l/a/a$c;->k(Ljava/nio/ByteOrder;)Ljava/lang/Object;
move-result-object p1
check-cast p1, [I
if-eqz p1, :cond_db
array-length v1, p1
const/4 v2, 0x4
if-eq v1, v2, :cond_9b
goto :goto_db
:cond_9b
const/4 v1, 0x2
aget v2, p1, v1
const/4 v3, 0x0
aget v4, p1, v3
if-le v2, v4, :cond_f5
const/4 v2, 0x3
aget v4, p1, v2
aget v5, p1, v0
if-le v4, v5, :cond_f5
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_bc
add-int/2addr v1, v2
sub-int v2, v1, v2
sub-int/2addr v1, v2
:cond_bc
iget-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v1, p1}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object p1
iget-object v0, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v2, v0}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v0
iget-object v1, p0, Le/l/a/a;->f:[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, Le/l/a/a;->f:[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_f5
:cond_db
:goto_db
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Invalid aspect frame values. frame="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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_f5
:goto_f5
return-void
.end method
.method private l(Le/l/a/a$b;)V
.registers 8
sget-boolean v0, Le/l/a/a;->r: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;
invoke-virtual {p1, v0}, Le/l/a/a$b;->G(Ljava/nio/ByteOrder;)V
sget-object v0, Le/l/a/a;->C:[B
array-length v1, v0
invoke-virtual {p1, v1}, Le/l/a/a$b;->skipBytes(I)I
array-length v0, v0
const/4 v1, 0x0
add-int/2addr v0, v1
:goto_28
:try_start_28
invoke-virtual {p1}, Le/l/a/a$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_ca
add-int/2addr v0, v3
const/16 v3, 0x10
if-ne v0, v3, :cond_4c
sget-object v3, Le/l/a/a;->E:[B
invoke-static {v4, v3}, Ljava/util/Arrays;->equals([B[B)Z
move-result v3
if-eqz v3, :cond_44
goto :goto_4c
:cond_44
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_4c
:goto_4c
sget-object v3, Le/l/a/a;->F:[B
invoke-static {v4, v3}, Ljava/util/Arrays;->equals([B[B)Z
move-result v3
if-eqz v3, :cond_55
goto :goto_83
:cond_55
sget-object v3, Le/l/a/a;->D:[B
invoke-static {v4, v3}, Ljava/util/Arrays;->equals([B[B)Z
move-result v3
if-eqz v3, :cond_c2
new-array v3, v2, [B
invoke-virtual {p1, v3}, Ljava/io/InputStream;->read([B)I
move-result v5
if-ne v5, v2, :cond_a7
invoke-virtual {p1}, Le/l/a/a$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 v5, v4
if-ne v5, p1, :cond_84
iput v0, p0, Le/l/a/a;->m:I
invoke-direct {p0, v3, v1}, Le/l/a/a;->J([BI)V
invoke-direct {p0}, Le/l/a/a;->Q()V
:goto_83
return-void
:cond_84
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_a7
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}, Le/l/a/a;->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_c2
add-int/lit8 v2, v2, 0x4
invoke-virtual {p1, v2}, Le/l/a/a$b;->skipBytes(I)I
add-int/2addr v0, v2
goto/16 :goto_28
:cond_ca
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_d2
.catch Ljava/io/EOFException; {:try_start_28 .. :try_end_d2} :catch_d2
:catch_d2
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
goto :goto_db
:goto_da
throw p1
:goto_db
goto :goto_da
.end method
.method private m(Le/l/a/a$b;)V
.registers 9
const/16 v0, 0x54
invoke-virtual {p1, v0}, Le/l/a/a$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}, Le/l/a/a$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-direct {p0, p1, v0, v2}, Le/l/a/a;->i(Le/l/a/a$b;II)V
int-to-long v0, v1
invoke-virtual {p1, v0, v1}, Le/l/a/a$b;->x(J)V
sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;
invoke-virtual {p1, v0}, Le/l/a/a$b;->G(Ljava/nio/ByteOrder;)V
invoke-virtual {p1}, Le/l/a/a$b;->readInt()I
move-result v0
sget-boolean v1, Le/l/a/a;->r:Z
const-string v2, "ExifInterface"
if-eqz v1, :cond_4e
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_4e
const/4 v1, 0x0
const/4 v3, 0x0
:goto_50
if-ge v3, v0, :cond_ad
invoke-virtual {p1}, Le/l/a/a$b;->readUnsignedShort()I
move-result v4
invoke-virtual {p1}, Le/l/a/a$b;->readUnsignedShort()I
move-result v5
sget-object v6, Le/l/a/a;->S:Le/l/a/a$d;
iget v6, v6, Le/l/a/a$d;->a:I
if-ne v4, v6, :cond_a7
invoke-virtual {p1}, Le/l/a/a$b;->readShort()S
move-result v0
invoke-virtual {p1}, Le/l/a/a$b;->readShort()S
move-result p1
iget-object v3, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {v0, v3}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v3
iget-object v4, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-static {p1, v4}, Le/l/a/a$c;->f(ILjava/nio/ByteOrder;)Le/l/a/a$c;
move-result-object v4
iget-object v5, p0, Le/l/a/a;->f:[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, Le/l/a/a;->f:[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, Le/l/a/a;->r:Z
if-eqz v1, :cond_a6
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_a6
return-void
:cond_a7
invoke-virtual {p1, v5}, Le/l/a/a$b;->skipBytes(I)I
add-int/lit8 v3, v3, 0x1
goto :goto_50
:cond_ad
return-void
.end method
.method private n(Le/l/a/a$b;)V
.registers 6
invoke-virtual {p1}, Le/l/a/a$b;->available()I
move-result v0
invoke-direct {p0, p1, v0}, Le/l/a/a;->G(Le/l/a/a$b;I)V
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Le/l/a/a;->K(Le/l/a/a$b;I)V
invoke-direct {p0, p1, v0}, Le/l/a/a;->P(Le/l/a/a$b;I)V
const/4 v0, 0x5
invoke-direct {p0, p1, v0}, Le/l/a/a;->P(Le/l/a/a$b;I)V
const/4 v0, 0x4
invoke-direct {p0, p1, v0}, Le/l/a/a;->P(Le/l/a/a$b;I)V
invoke-direct {p0}, Le/l/a/a;->Q()V
iget p1, p0, Le/l/a/a;->d:I
const/16 v0, 0x8
if-ne p1, v0, :cond_59
iget-object p1, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
if-eqz p1, :cond_59
new-instance v1, Le/l/a/a$b;
iget-object p1, p1, Le/l/a/a$c;->c:[B
invoke-direct {v1, p1}, Le/l/a/a$b;-><init>([B)V
iget-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v1, p1}, Le/l/a/a$b;->G(Ljava/nio/ByteOrder;)V
const-wide/16 v2, 0x6
invoke-virtual {v1, v2, v3}, Le/l/a/a$b;->x(J)V
const/16 p1, 0x9
invoke-direct {p0, v1, p1}, Le/l/a/a;->K(Le/l/a/a$b;I)V
iget-object v1, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
if-eqz p1, :cond_59
iget-object v2, p0, Le/l/a/a;->f:[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_59
return-void
.end method
.method private o(Le/l/a/a$b;)V
.registers 5
invoke-direct {p0, p1}, Le/l/a/a;->n(Le/l/a/a$b;)V
iget-object v0, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
if-eqz v0, :cond_18
iget v0, p0, Le/l/a/a;->q:I
const/4 v2, 0x5
invoke-direct {p0, p1, v0, v2}, Le/l/a/a;->i(Le/l/a/a$b;II)V
:cond_18
iget-object p1, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
iget-object v0, p0, Le/l/a/a;->f:[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, Le/l/a/a$c;
if-eqz p1, :cond_3c
if-nez v0, :cond_3c
iget-object v0, p0, Le/l/a/a;->f:[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 private p(Le/l/a/a$b;)V
.registers 4
sget-object v0, Le/l/a/a;->e0:[B
array-length v1, v0
invoke-virtual {p1, v1}, Le/l/a/a$b;->skipBytes(I)I
invoke-virtual {p1}, Le/l/a/a$b;->available()I
move-result v1
new-array v1, v1, [B
invoke-virtual {p1, v1}, Le/l/a/a$b;->readFully([B)V
array-length p1, v0
iput p1, p0, Le/l/a/a;->m:I
const/4 p1, 0x0
invoke-direct {p0, v1, p1}, Le/l/a/a;->J([BI)V
return-void
.end method
.method private q(Le/l/a/a$b;)V
.registers 7
sget-boolean v0, Le/l/a/a;->r: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;
invoke-virtual {p1, v0}, Le/l/a/a$b;->G(Ljava/nio/ByteOrder;)V
sget-object v0, Le/l/a/a;->G:[B
array-length v0, v0
invoke-virtual {p1, v0}, Le/l/a/a$b;->skipBytes(I)I
invoke-virtual {p1}, Le/l/a/a$b;->readInt()I
move-result v0
add-int/lit8 v0, v0, 0x8
sget-object v1, Le/l/a/a;->H:[B
array-length v1, v1
invoke-virtual {p1, v1}, Le/l/a/a$b;->skipBytes(I)I
move-result v1
add-int/lit8 v1, v1, 0x8
:goto_34
const/4 v2, 0x4
:try_start_35
new-array v3, v2, [B
invoke-virtual {p1, v3}, Ljava/io/InputStream;->read([B)I
move-result v4
if-ne v4, v2, :cond_9b
add-int/2addr v1, v2
invoke-virtual {p1}, Le/l/a/a$b;->readInt()I
move-result v4
add-int/2addr v1, v2
sget-object v2, Le/l/a/a;->I:[B
invoke-static {v2, v3}, Ljava/util/Arrays;->equals([B[B)Z
move-result v2
if-eqz v2, :cond_77
new-array v0, v4, [B
invoke-virtual {p1, v0}, Ljava/io/InputStream;->read([B)I
move-result p1
if-ne p1, v4, :cond_5c
iput v1, p0, Le/l/a/a;->m:I
const/4 p1, 0x0
invoke-direct {p0, v0, p1}, Le/l/a/a;->J([BI)V
iput v1, p0, Le/l/a/a;->m:I
goto :goto_82
:cond_5c
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}, Le/l/a/a;->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_77
rem-int/lit8 v2, v4, 0x2
:try_end_79
.catch Ljava/io/EOFException; {:try_start_35 .. :try_end_79} :catch_a3
const/4 v3, 0x1
if-ne v2, v3, :cond_7e
add-int/lit8 v4, v4, 0x1
:cond_7e
add-int v2, v1, v4
if-ne v2, v0, :cond_83
:goto_82
return-void
:cond_83
const-string v3, "Encountered WebP file with invalid chunk size"
if-gt v2, v0, :cond_95
:try_start_87
invoke-virtual {p1, v4}, Le/l/a/a$b;->skipBytes(I)I
move-result v2
if-ne v2, v4, :cond_8f
add-int/2addr v1, v2
goto :goto_34
:cond_8f
new-instance p1, Ljava/io/IOException;
invoke-direct {p1, v3}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw p1
:cond_95
new-instance p1, Ljava/io/IOException;
invoke-direct {p1, v3}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw p1
:cond_9b
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_a3
.catch Ljava/io/EOFException; {:try_start_87 .. :try_end_a3} :catch_a3
:catch_a3
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
goto :goto_ac
:goto_ab
throw p1
:goto_ac
goto :goto_ab
.end method
.method private r(Le/l/a/a$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, Le/l/a/a$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, Le/l/a/a$c;
if-eqz v0, :cond_73
if-eqz p2, :cond_73
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v0, v1}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result v0
iget-object v1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {p2, v1}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result p2
iget v1, p0, Le/l/a/a;->d:I
const/4 v2, 0x7
if-ne v1, v2, :cond_28
iget v1, p0, Le/l/a/a;->n:I
add-int/2addr v0, v1
:cond_28
invoke-virtual {p1}, Le/l/a/a$b;->k()I
move-result v1
sub-int/2addr v1, v0
invoke-static {p2, v1}, Ljava/lang/Math;->min(II)I
move-result p2
if-lez v0, :cond_51
if-lez p2, :cond_51
iget v1, p0, Le/l/a/a;->m:I
add-int/2addr v1, v0
iput v1, p0, Le/l/a/a;->j:I
iput p2, p0, Le/l/a/a;->k:I
iget-object v2, p0, Le/l/a/a;->a:Ljava/lang/String;
if-nez v2, :cond_51
iget-object v2, p0, Le/l/a/a;->c:Landroid/content/res/AssetManager$AssetInputStream;
if-nez v2, :cond_51
iget-object v2, p0, Le/l/a/a;->b:Ljava/io/FileDescriptor;
if-nez v2, :cond_51
new-array v2, p2, [B
int-to-long v3, v1
invoke-virtual {p1, v3, v4}, Le/l/a/a$b;->x(J)V
invoke-virtual {p1, v2}, Le/l/a/a$b;->readFully([B)V
:cond_51
sget-boolean p1, Le/l/a/a;->r:Z
if-eqz p1, :cond_73
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_73
return-void
.end method
.method private s(Le/l/a/a$b;Ljava/util/HashMap;)V
.registers 22
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, p2
const-string v3, "StripOffsets"
invoke-virtual {v2, v3}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
check-cast v3, Le/l/a/a$c;
const-string v4, "StripByteCounts"
invoke-virtual {v2, v4}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Le/l/a/a$c;
if-eqz v3, :cond_a6
if-eqz v2, :cond_a6
iget-object v4, v0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v3, v4}, Le/l/a/a$c;->k(Ljava/nio/ByteOrder;)Ljava/lang/Object;
move-result-object v3
invoke-static {v3}, Le/l/a/a;->d(Ljava/lang/Object;)[J
move-result-object v3
iget-object v4, v0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v2, v4}, Le/l/a/a$c;->k(Ljava/nio/ByteOrder;)Ljava/lang/Object;
move-result-object v2
invoke-static {v2}, Le/l/a/a;->d(Ljava/lang/Object;)[J
move-result-object v2
const-string v4, "ExifInterface"
if-eqz v3, :cond_a3
array-length v5, v3
if-nez v5, :cond_37
goto/16 :goto_a3
:cond_37
if-eqz v2, :cond_a0
array-length v5, v2
if-nez v5, :cond_3d
goto :goto_a0
:cond_3d
array-length v5, v3
array-length v6, v2
if-eq v5, v6, :cond_47
const-string v1, "stripOffsets and stripByteCounts should have same length."
:goto_43
invoke-static {v4, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
return-void
:cond_47
const-wide/16 v5, 0x0
array-length v7, v2
const/4 v8, 0x0
const/4 v9, 0x0
:goto_4c
if-ge v9, v7, :cond_54
aget-wide v10, v2, v9
add-long/2addr v5, v10
add-int/lit8 v9, v9, 0x1
goto :goto_4c
:cond_54
long-to-int v6, v5
new-array v5, v6, [B
const/4 v7, 0x1
iput-boolean v7, v0, Le/l/a/a;->i:Z
const/4 v9, 0x0
const/4 v10, 0x0
const/4 v11, 0x0
:goto_5d
array-length v12, v3
if-ge v9, v12, :cond_91
aget-wide v12, v3, v9
long-to-int v13, v12
aget-wide v14, v2, v9
long-to-int v12, v14
array-length v14, v3
sub-int/2addr v14, v7
if-ge v9, v14, :cond_77
add-int v14, v13, v12
int-to-long v14, v14
add-int/lit8 v16, v9, 0x1
aget-wide v16, v3, v16
cmp-long v18, v14, v16
if-eqz v18, :cond_77
iput-boolean v8, v0, Le/l/a/a;->i:Z
:cond_77
sub-int/2addr v13, v10
if-gez v13, :cond_7f
const-string v14, "Invalid strip offset value"
invoke-static {v4, v14}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_7f
int-to-long v14, v13
invoke-virtual {v1, v14, v15}, Le/l/a/a$b;->x(J)V
add-int/2addr v10, v13
new-array v13, v12, [B
invoke-virtual {v1, v13}, Ljava/io/InputStream;->read([B)I
add-int/2addr v10, v12
invoke-static {v13, v8, v5, v11, v12}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
add-int/2addr v11, v12
add-int/lit8 v9, v9, 0x1
goto :goto_5d
:cond_91
iget-boolean v1, v0, Le/l/a/a;->i:Z
if-eqz v1, :cond_a6
aget-wide v1, v3, v8
long-to-int v2, v1
iget v1, v0, Le/l/a/a;->m:I
add-int/2addr v2, v1
iput v2, v0, Le/l/a/a;->j:I
iput v6, v0, Le/l/a/a;->k:I
goto :goto_a6
:cond_a0
:goto_a0
const-string v1, "stripByteCounts should not be null or have zero length."
goto :goto_43
:cond_a3
:goto_a3
const-string v1, "stripOffsets should not be null or have zero length."
goto :goto_43
:cond_a6
:goto_a6
return-void
.end method
.method private t(Ljava/lang/String;)V
.registers 4
if-eqz p1, :cond_2e
const/4 v0, 0x0
iput-object v0, p0, Le/l/a/a;->c:Landroid/content/res/AssetManager$AssetInputStream;
iput-object p1, p0, Le/l/a/a;->a:Ljava/lang/String;
:try_start_7
new-instance v1, Ljava/io/FileInputStream;
invoke-direct {v1, p1}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
:try_end_c
.catchall {:try_start_7 .. :try_end_c} :catchall_29
:try_start_c
invoke-virtual {v1}, Ljava/io/FileInputStream;->getFD()Ljava/io/FileDescriptor;
move-result-object p1
invoke-static {p1}, Le/l/a/a;->B(Ljava/io/FileDescriptor;)Z
move-result p1
if-eqz p1, :cond_1d
invoke-virtual {v1}, Ljava/io/FileInputStream;->getFD()Ljava/io/FileDescriptor;
move-result-object p1
iput-object p1, p0, Le/l/a/a;->b:Ljava/io/FileDescriptor;
goto :goto_1f
:cond_1d
iput-object v0, p0, Le/l/a/a;->b:Ljava/io/FileDescriptor;
:goto_1f
invoke-direct {p0, v1}, Le/l/a/a;->F(Ljava/io/InputStream;)V
:try_end_22
.catchall {:try_start_c .. :try_end_22} :catchall_26
invoke-static {v1}, Le/l/a/a;->c(Ljava/io/Closeable;)V
return-void
:catchall_26
move-exception p1
move-object v0, v1
goto :goto_2a
:catchall_29
move-exception p1
:goto_2a
invoke-static {v0}, Le/l/a/a;->c(Ljava/io/Closeable;)V
throw p1
:cond_2e
new-instance p1, Ljava/lang/NullPointerException;
const-string v0, "filename cannot be null"
invoke-direct {p1, v0}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method private static u(Ljava/io/BufferedInputStream;)Z
.registers 5
sget-object v0, Le/l/a/a;->e0:[B
array-length v1, v0
invoke-virtual {p0, v1}, Ljava/io/BufferedInputStream;->mark(I)V
array-length v0, v0
new-array v0, v0, [B
invoke-virtual {p0, v0}, Ljava/io/BufferedInputStream;->read([B)I
invoke-virtual {p0}, Ljava/io/BufferedInputStream;->reset()V
const/4 p0, 0x0
const/4 v1, 0x0
:goto_11
sget-object v2, Le/l/a/a;->e0:[B
array-length v3, v2
if-ge v1, v3, :cond_20
aget-byte v3, v0, v1
aget-byte v2, v2, v1
if-eq v3, v2, :cond_1d
return p0
:cond_1d
add-int/lit8 v1, v1, 0x1
goto :goto_11
:cond_20
const/4 p0, 0x1
return p0
.end method
.method private v([B)Z
.registers 16
const/4 v0, 0x0
const/4 v1, 0x0
:try_start_2
new-instance v2, Le/l/a/a$b;
invoke-direct {v2, p1}, Le/l/a/a$b;-><init>([B)V
:try_end_7
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_7} :catch_8d
.catchall {:try_start_2 .. :try_end_7} :catchall_8b
:try_start_7
invoke-virtual {v2}, Le/l/a/a$b;->readInt()I
move-result v1
int-to-long v3, v1
const/4 v1, 0x4
new-array v5, v1, [B
invoke-virtual {v2, v5}, Ljava/io/InputStream;->read([B)I
sget-object v6, Le/l/a/a;->x:[B
invoke-static {v5, v6}, Ljava/util/Arrays;->equals([B[B)Z
move-result v5
:try_end_18
.catch Ljava/lang/Exception; {:try_start_7 .. :try_end_18} :catch_88
.catchall {:try_start_7 .. :try_end_18} :catchall_85
if-nez v5, :cond_1e
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
return v0
:cond_1e
const-wide/16 v5, 0x10
const-wide/16 v7, 0x8
const-wide/16 v9, 0x1
cmp-long v11, v3, v9
if-nez v11, :cond_34
:try_start_28
invoke-virtual {v2}, Le/l/a/a$b;->readLong()J
move-result-wide v3
:try_end_2c
.catch Ljava/lang/Exception; {:try_start_28 .. :try_end_2c} :catch_88
.catchall {:try_start_28 .. :try_end_2c} :catchall_85
cmp-long v11, v3, v5
if-gez v11, :cond_35
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
return v0
:cond_34
move-wide v5, v7
:cond_35
:try_start_35
array-length v11, p1
int-to-long v11, v11
cmp-long v13, v3, v11
if-lez v13, :cond_3d
array-length p1, p1
:try_end_3c
.catch Ljava/lang/Exception; {:try_start_35 .. :try_end_3c} :catch_88
.catchall {:try_start_35 .. :try_end_3c} :catchall_85
int-to-long v3, p1
:cond_3d
sub-long/2addr v3, v5
cmp-long p1, v3, v7
if-gez p1, :cond_46
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
return v0
:cond_46
:try_start_46
new-array p1, v1, [B
const-wide/16 v5, 0x0
const/4 v7, 0x0
const/4 v8, 0x0
:goto_4c
const-wide/16 v11, 0x4
div-long v11, v3, v11
cmp-long v13, v5, v11
if-gez v13, :cond_81
invoke-virtual {v2, p1}, Ljava/io/InputStream;->read([B)I
move-result v11
:try_end_58
.catch Ljava/lang/Exception; {:try_start_46 .. :try_end_58} :catch_88
.catchall {:try_start_46 .. :try_end_58} :catchall_85
if-eq v11, v1, :cond_5e
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
return v0
:cond_5e
cmp-long v11, v5, v9
if-nez v11, :cond_63
goto :goto_7f
:cond_63
:try_start_63
sget-object v11, Le/l/a/a;->y:[B
invoke-static {p1, v11}, Ljava/util/Arrays;->equals([B[B)Z
move-result v11
const/4 v12, 0x1
if-eqz v11, :cond_6e
const/4 v7, 0x1
goto :goto_77
:cond_6e
sget-object v11, Le/l/a/a;->z:[B
invoke-static {p1, v11}, Ljava/util/Arrays;->equals([B[B)Z
move-result v11
:try_end_74
.catch Ljava/lang/Exception; {:try_start_63 .. :try_end_74} :catch_88
.catchall {:try_start_63 .. :try_end_74} :catchall_85
if-eqz v11, :cond_77
const/4 v8, 0x1
:cond_77
:goto_77
if-eqz v7, :cond_7f
if-eqz v8, :cond_7f
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
return v12
:cond_7f
:goto_7f
add-long/2addr v5, v9
goto :goto_4c
:cond_81
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
goto :goto_9e
:catchall_85
move-exception p1
move-object v1, v2
goto :goto_9f
:catch_88
move-exception p1
move-object v1, v2
goto :goto_8e
:catchall_8b
move-exception p1
goto :goto_9f
:catch_8d
move-exception p1
:goto_8e
:try_start_8e
sget-boolean v2, Le/l/a/a;->r:Z
if-eqz v2, :cond_99
const-string v2, "ExifInterface"
const-string v3, "Exception parsing HEIF file type box."
invoke-static {v2, v3, p1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
:try_end_99
.catchall {:try_start_8e .. :try_end_99} :catchall_8b
:cond_99
if-eqz v1, :cond_9e
invoke-virtual {v1}, Ljava/io/InputStream;->close()V
:cond_9e
:goto_9e
return v0
:goto_9f
if-eqz v1, :cond_a4
invoke-virtual {v1}, Ljava/io/InputStream;->close()V
:cond_a4
goto :goto_a6
:goto_a5
throw p1
:goto_a6
goto :goto_a5
.end method
.method private static w([B)Z
.registers 5
const/4 v0, 0x0
const/4 v1, 0x0
:goto_2
sget-object v2, Le/l/a/a;->w:[B
array-length v3, v2
if-ge v1, v3, :cond_11
aget-byte v3, p0, v1
aget-byte v2, v2, v1
if-eq v3, v2, :cond_e
return v0
:cond_e
add-int/lit8 v1, v1, 0x1
goto :goto_2
:cond_11
const/4 p0, 0x1
return p0
.end method
.method private x([B)Z
.registers 5
const/4 v0, 0x0
const/4 v1, 0x0
:try_start_2
new-instance v2, Le/l/a/a$b;
invoke-direct {v2, p1}, Le/l/a/a$b;-><init>([B)V
:try_end_7
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_7} :catch_2d
.catchall {:try_start_2 .. :try_end_7} :catchall_26
:try_start_7
invoke-direct {p0, v2}, Le/l/a/a;->I(Le/l/a/a$b;)Ljava/nio/ByteOrder;
move-result-object p1
iput-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v2, p1}, Le/l/a/a$b;->G(Ljava/nio/ByteOrder;)V
invoke-virtual {v2}, Le/l/a/a$b;->readShort()S
move-result p1
:try_end_14
.catch Ljava/lang/Exception; {:try_start_7 .. :try_end_14} :catch_24
.catchall {:try_start_7 .. :try_end_14} :catchall_21
const/16 v1, 0x4f52
if-eq p1, v1, :cond_1c
const/16 v1, 0x5352
if-ne p1, v1, :cond_1d
:cond_1c
const/4 v0, 0x1
:cond_1d
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
return v0
:catchall_21
move-exception p1
move-object v1, v2
goto :goto_27
:catch_24
move-object v1, v2
goto :goto_2e
:catchall_26
move-exception p1
:goto_27
if-eqz v1, :cond_2c
invoke-virtual {v1}, Ljava/io/InputStream;->close()V
:cond_2c
throw p1
:catch_2d
nop
:goto_2e
if-eqz v1, :cond_33
invoke-virtual {v1}, Ljava/io/InputStream;->close()V
:cond_33
return v0
.end method
.method private y([B)Z
.registers 6
const/4 v0, 0x0
const/4 v1, 0x0
:goto_2
sget-object v2, Le/l/a/a;->C:[B
array-length v3, v2
if-ge v1, v3, :cond_11
aget-byte v3, p1, v1
aget-byte v2, v2, v1
if-eq v3, v2, :cond_e
return v0
:cond_e
add-int/lit8 v1, v1, 0x1
goto :goto_2
:cond_11
const/4 p1, 0x1
return p1
.end method
.method private z([B)Z
.registers 7
invoke-static {}, Ljava/nio/charset/Charset;->defaultCharset()Ljava/nio/charset/Charset;
move-result-object v0
const-string v1, "FUJIFILMCCD-RAW"
invoke-virtual {v1, v0}, Ljava/lang/String;->getBytes(Ljava/nio/charset/Charset;)[B
move-result-object v0
const/4 v1, 0x0
const/4 v2, 0x0
:goto_c
array-length v3, v0
if-ge v2, v3, :cond_19
aget-byte v3, p1, v2
aget-byte v4, v0, v2
if-eq v3, v4, :cond_16
return v1
:cond_16
add-int/lit8 v2, v2, 0x1
goto :goto_c
:cond_19
const/4 p1, 0x1
return p1
.end method
# virtual methods
.method public e(Ljava/lang/String;)Ljava/lang/String;
.registers 7
if-eqz p1, :cond_b5
invoke-direct {p0, p1}, Le/l/a/a;->g(Ljava/lang/String;)Le/l/a/a$c;
move-result-object v0
const/4 v1, 0x0
if-eqz v0, :cond_b4
sget-object v2, Le/l/a/a;->b0:Ljava/util/HashSet;
invoke-virtual {v2, p1}, Ljava/util/HashSet;->contains(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_18
iget-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v0, p1}, Le/l/a/a$c;->j(Ljava/nio/ByteOrder;)Ljava/lang/String;
move-result-object p1
return-object p1
:cond_18
const-string v2, "GPSTimeStamp"
invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_a9
iget p1, v0, Le/l/a/a$c;->a:I
const/4 v2, 0x5
const-string v3, "ExifInterface"
if-eq p1, v2, :cond_42
const/16 v2, 0xa
if-eq p1, v2, :cond_42
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "GPS Timestamp format is not rational. format="
invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v0, v0, Le/l/a/a$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_3e
invoke-static {v3, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
return-object v1
:cond_42
iget-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v0, p1}, Le/l/a/a$c;->k(Ljava/nio/ByteOrder;)Ljava/lang/Object;
move-result-object p1
check-cast p1, [Le/l/a/a$e;
if-eqz p1, :cond_93
array-length v0, p1
const/4 v2, 0x3
if-eq v0, v2, :cond_51
goto :goto_93
:cond_51
new-array v0, v2, [Ljava/lang/Object;
const/4 v1, 0x0
aget-object v2, p1, v1
iget-wide v2, v2, Le/l/a/a$e;->a:J
long-to-float v2, v2
aget-object v3, p1, v1
iget-wide v3, v3, Le/l/a/a$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, Le/l/a/a$e;->a:J
long-to-float v2, v2
aget-object v3, p1, v1
iget-wide v3, v3, Le/l/a/a$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, Le/l/a/a$e;->a:J
long-to-float v2, v2
aget-object p1, p1, v1
iget-wide v3, p1, Le/l/a/a$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_93
:goto_93
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Invalid GPS Timestamp array. array="
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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 :goto_3e
:cond_a9
:try_start_a9
iget-object p1, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {v0, p1}, Le/l/a/a$c;->h(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_b3
.catch Ljava/lang/NumberFormatException; {:try_start_a9 .. :try_end_b3} :catch_b4
return-object p1
:catch_b4
:cond_b4
return-object v1
:cond_b5
new-instance p1, Ljava/lang/NullPointerException;
const-string v0, "tag shouldn\'t be null"
invoke-direct {p1, v0}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
goto :goto_be
:goto_bd
throw p1
:goto_be
goto :goto_bd
.end method
.method public f(Ljava/lang/String;I)I
.registers 4
if-eqz p1, :cond_11
invoke-direct {p0, p1}, Le/l/a/a;->g(Ljava/lang/String;)Le/l/a/a$c;
move-result-object p1
if-nez p1, :cond_9
return p2
:cond_9
:try_start_9
iget-object v0, p0, Le/l/a/a;->h:Ljava/nio/ByteOrder;
invoke-virtual {p1, v0}, Le/l/a/a$c;->i(Ljava/nio/ByteOrder;)I
move-result p1
:try_end_f
.catch Ljava/lang/NumberFormatException; {:try_start_9 .. :try_end_f} :catch_10
return p1
:catch_10
return p2
:cond_11
new-instance p1, Ljava/lang/NullPointerException;
const-string p2, "tag shouldn\'t be null"
invoke-direct {p1, p2}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw p1
.end method