h.smali
.class public Lcom/google/zxing/common/h;
.super Lcom/google/zxing/b;
.source "SourceFile"
# static fields
.field private static final a:[B
# instance fields
.field private b:[B
.field private final c:[I
# direct methods
.method static constructor <clinit>()V
.registers 1
const/4 v0, 0x0
new-array v0, v0, [B
.line 39
sput-object v0, Lcom/google/zxing/common/h;->a:[B
return-void
.end method
.method public constructor <init>(Lcom/google/zxing/f;)V
.registers 2
.line 45
invoke-direct {p0, p1}, Lcom/google/zxing/b;-><init>(Lcom/google/zxing/f;)V
.line 46
sget-object p1, Lcom/google/zxing/common/h;->a:[B
iput-object p1, p0, Lcom/google/zxing/common/h;->b:[B
const/16 p1, 0x20
new-array p1, p1, [I
.line 47
iput-object p1, p0, Lcom/google/zxing/common/h;->c:[I
return-void
.end method
# virtual methods
.method public b()Lcom/google/zxing/common/b;
.registers 16
.annotation system Ldalvik/annotation/Throws;
value = {
Lcom/google/zxing/NotFoundException;
}
.end annotation
.line 95
invoke-virtual {p0}, Lcom/google/zxing/common/h;->a()Lcom/google/zxing/f;
move-result-object v0
.line 1066
iget v1, v0, Lcom/google/zxing/f;->a:I
.line 1073
iget v2, v0, Lcom/google/zxing/f;->b:I
.line 98
new-instance v3, Lcom/google/zxing/common/b;
invoke-direct {v3, v1, v2}, Lcom/google/zxing/common/b;-><init>(II)V
.line 1138
iget-object v4, p0, Lcom/google/zxing/common/h;->b:[B
array-length v4, v4
if-ge v4, v1, :cond_16
.line 1139
new-array v4, v1, [B
iput-object v4, p0, Lcom/google/zxing/common/h;->b:[B
:cond_16
const/4 v4, 0x0
const/4 v5, 0x0
:goto_18
const/16 v6, 0x20
if-ge v5, v6, :cond_23
.line 1142
iget-object v6, p0, Lcom/google/zxing/common/h;->c:[I
aput v4, v6, v5
add-int/lit8 v5, v5, 0x1
goto :goto_18
.line 103
:cond_23
iget-object v5, p0, Lcom/google/zxing/common/h;->c:[I
const/4 v6, 0x1
const/4 v7, 0x1
:goto_27
const/4 v8, 0x5
if-ge v7, v8, :cond_4b
mul-int v9, v2, v7
.line 105
div-int/2addr v9, v8
.line 106
iget-object v10, p0, Lcom/google/zxing/common/h;->b:[B
invoke-virtual {v0, v9, v10}, Lcom/google/zxing/f;->a(I[B)[B
move-result-object v9
shl-int/lit8 v10, v1, 0x2
.line 107
div-int/2addr v10, v8
.line 108
div-int/lit8 v8, v1, 0x5
:goto_38
if-ge v8, v10, :cond_48
.line 109
aget-byte v11, v9, v8
and-int/lit16 v11, v11, 0xff
shr-int/lit8 v11, v11, 0x3
.line 110
aget v12, v5, v11
add-int/2addr v12, v6
aput v12, v5, v11
add-int/lit8 v8, v8, 0x1
goto :goto_38
:cond_48
add-int/lit8 v7, v7, 0x1
goto :goto_27
.line 1148
:cond_4b
array-length v6, v5
const/4 v7, 0x0
const/4 v8, 0x0
const/4 v9, 0x0
const/4 v10, 0x0
:goto_50
if-ge v7, v6, :cond_62
.line 1153
aget v11, v5, v7
if-le v11, v8, :cond_59
.line 1155
aget v8, v5, v7
move v10, v7
.line 1157
:cond_59
aget v11, v5, v7
if-le v11, v9, :cond_5f
.line 1158
aget v9, v5, v7
:cond_5f
add-int/lit8 v7, v7, 0x1
goto :goto_50
:cond_62
const/4 v7, 0x0
const/4 v8, 0x0
const/4 v11, 0x0
:goto_65
if-ge v7, v6, :cond_76
sub-int v12, v7, v10
.line 1168
aget v13, v5, v7
mul-int v13, v13, v12
mul-int v13, v13, v12
if-le v13, v11, :cond_73
move v8, v7
move v11, v13
:cond_73
add-int/lit8 v7, v7, 0x1
goto :goto_65
:cond_76
if-le v10, v8, :cond_79
goto :goto_7c
:cond_79
move v14, v10
move v10, v8
move v8, v14
:goto_7c
sub-int v7, v10, v8
.line 1184
div-int/lit8 v6, v6, 0x10
if-le v7, v6, :cond_be
add-int/lit8 v6, v10, -0x1
const/4 v7, -0x1
move v7, v6
const/4 v11, -0x1
:goto_87
if-le v6, v8, :cond_9e
sub-int v12, v6, v8
mul-int v12, v12, v12
sub-int v13, v10, v6
mul-int v12, v12, v13
.line 1193
aget v13, v5, v6
sub-int v13, v9, v13
mul-int v12, v12, v13
if-le v12, v11, :cond_9b
move v7, v6
move v11, v12
:cond_9b
add-int/lit8 v6, v6, -0x1
goto :goto_87
:cond_9e
shl-int/lit8 v5, v7, 0x3
.line 118
invoke-virtual {v0}, Lcom/google/zxing/f;->a()[B
move-result-object v0
const/4 v6, 0x0
:goto_a5
if-ge v6, v2, :cond_bd
mul-int v7, v6, v1
const/4 v8, 0x0
:goto_aa
if-ge v8, v1, :cond_ba
add-int v9, v7, v8
.line 122
aget-byte v9, v0, v9
and-int/lit16 v9, v9, 0xff
if-ge v9, v5, :cond_b7
.line 124
invoke-virtual {v3, v8, v6}, Lcom/google/zxing/common/b;->b(II)V
:cond_b7
add-int/lit8 v8, v8, 0x1
goto :goto_aa
:cond_ba
add-int/lit8 v6, v6, 0x1
goto :goto_a5
:cond_bd
return-object v3
.line 2037
:cond_be
sget-object v0, Lcom/google/zxing/NotFoundException;->a:Lcom/google/zxing/NotFoundException;
.line 1185
goto :goto_c2
:goto_c1
throw v0
:goto_c2
goto :goto_c1
.end method