f.smali
.class public final Lcom/cmcm/qrcodelib/b/f;
.super Ljava/lang/Object;
.source "DefaultBitmapPixelsGenerator.java"
# interfaces
.implements Lcom/cmcm/qrcodelib/b/b;
# direct methods
.method public constructor <init>()V
.registers 1
.prologue
.line 14
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final a(Lcom/cmcm/qrcodelib/b/c;Lcom/cmcm/qrcodelib/b/a;)[I
.registers 33
.prologue
.line 18
.line 1017
move-object/from16 v0, p2
iget-object v8, v0, Lcom/cmcm/qrcodelib/b/a;->Mo:Lcom/google/zxing/common/b;
.line 19
invoke-interface/range {p1 .. p1}, Lcom/cmcm/qrcodelib/b/c;->fy()[I
move-result-object v9
.line 20
invoke-interface/range {p1 .. p1}, Lcom/cmcm/qrcodelib/b/c;->fx()I
move-result v10
.line 22
const/4 v4, 0x0
aget v4, v9, v4
const/4 v5, 0x1
aget v5, v9, v5
add-int/2addr v4, v5
const/4 v5, 0x2
aget v5, v9, v5
add-int/2addr v4, v5
if-lez v4, :cond_35
const/4 v4, 0x1
.line 23
:goto_1a
mul-int v5, v10, v10
new-array v11, v5, [I
.line 1399
iget v12, v8, Lcom/google/zxing/common/b;->width:I
.line 1406
iget v13, v8, Lcom/google/zxing/common/b;->height:I
.line 2025
move-object/from16 v0, p2
iget-object v6, v0, Lcom/cmcm/qrcodelib/b/a;->Mp:Lcom/google/zxing/qrcode/decoder/g;
.line 2354
const/4 v5, 0x0
.line 2355
:goto_27
iget-object v7, v8, Lcom/google/zxing/common/b;->boB:[I
array-length v7, v7
if-ge v5, v7, :cond_37
iget-object v7, v8, Lcom/google/zxing/common/b;->boB:[I
aget v7, v7, v5
if-nez v7, :cond_37
.line 2356
add-int/lit8 v5, v5, 0x1
goto :goto_27
.line 22
:cond_35
const/4 v4, 0x0
goto :goto_1a
.line 2358
:cond_37
iget-object v7, v8, Lcom/google/zxing/common/b;->boB:[I
array-length v7, v7
if-ne v5, v7, :cond_b7
.line 2359
const/4 v5, 0x0
.line 3066
:goto_3d
iget v6, v6, Lcom/google/zxing/qrcode/decoder/g;->bpG:I
.line 45
add-int/lit8 v6, v6, -0x1
shl-int/lit8 v6, v6, 0x2
add-int/lit8 v6, v6, 0x5
add-int/lit8 v6, v6, 0x10
.line 46
const/4 v7, 0x0
aget v7, v5, v7
mul-int/lit8 v7, v7, 0x2
sub-int v7, v12, v7
.line 47
div-int/2addr v7, v6
.line 49
const/4 v14, 0x0
aget v14, v5, v14
mul-int/lit8 v15, v7, 0x5
add-int/2addr v14, v15
.line 50
const/4 v15, 0x0
aget v15, v5, v15
shl-int/lit8 v16, v7, 0x1
add-int v15, v15, v16
.line 51
const/16 v16, 0x0
aget v16, v5, v16
shl-int/lit8 v17, v7, 0x1
add-int v16, v16, v17
.line 52
const/16 v17, 0x0
aget v17, v5, v17
mul-int/lit8 v18, v7, 0x5
add-int v17, v17, v18
.line 53
add-int/lit8 v6, v6, -0x5
mul-int/2addr v6, v7
const/16 v18, 0x0
aget v18, v5, v18
add-int v18, v18, v6
.line 54
shl-int/lit8 v6, v7, 0x1
sub-int v6, v12, v6
const/16 v19, 0x0
aget v19, v5, v19
sub-int v19, v6, v19
.line 55
mul-int/lit8 v6, v7, 0x5
sub-int v6, v13, v6
const/16 v20, 0x1
aget v20, v5, v20
sub-int v20, v6, v20
.line 56
shl-int/lit8 v6, v7, 0x1
sub-int v6, v13, v6
const/4 v7, 0x1
aget v5, v5, v7
sub-int v21, v6, v5
.line 58
const/4 v5, 0x0
move v7, v5
:goto_94
if-ge v7, v12, :cond_1bb
.line 59
const/4 v5, 0x0
move v6, v5
:goto_98
if-ge v6, v13, :cond_1b6
.line 60
invoke-virtual {v8, v7, v6}, Lcom/google/zxing/common/b;->av(II)Z
move-result v5
if-eqz v5, :cond_1ad
.line 61
if-lt v7, v15, :cond_db
if-ge v7, v14, :cond_db
move/from16 v0, v16
if-lt v6, v0, :cond_db
move/from16 v0, v17
if-ge v6, v0, :cond_db
.line 63
mul-int v5, v6, v10
add-int/2addr v5, v7
const/high16 v22, -0x1000000
aput v22, v11, v5
.line 59
:goto_b3
add-int/lit8 v5, v6, 0x1
move v6, v5
goto :goto_98
.line 2361
:cond_b7
iget v7, v8, Lcom/google/zxing/common/b;->boC:I
div-int v7, v5, v7
.line 2362
iget v14, v8, Lcom/google/zxing/common/b;->boC:I
rem-int v14, v5, v14
shl-int/lit8 v14, v14, 0x5
.line 2364
iget-object v15, v8, Lcom/google/zxing/common/b;->boB:[I
aget v15, v15, v5
.line 2365
const/4 v5, 0x0
.line 2366
:goto_c6
rsub-int/lit8 v16, v5, 0x1f
shl-int v16, v15, v16
if-nez v16, :cond_cf
.line 2367
add-int/lit8 v5, v5, 0x1
goto :goto_c6
.line 2369
:cond_cf
add-int/2addr v14, v5
.line 2370
const/4 v5, 0x2
new-array v5, v5, [I
const/4 v15, 0x0
aput v14, v5, v15
const/4 v14, 0x1
aput v7, v5, v14
goto/16 :goto_3d
.line 64
:cond_db
move/from16 v0, v19
if-ge v7, v0, :cond_f3
move/from16 v0, v18
if-lt v7, v0, :cond_f3
move/from16 v0, v16
if-lt v6, v0, :cond_f3
move/from16 v0, v17
if-ge v6, v0, :cond_f3
.line 66
mul-int v5, v6, v10
add-int/2addr v5, v7
const/high16 v22, -0x1000000
aput v22, v11, v5
goto :goto_b3
.line 67
:cond_f3
if-lt v7, v15, :cond_107
if-ge v7, v14, :cond_107
move/from16 v0, v20
if-lt v6, v0, :cond_107
move/from16 v0, v21
if-ge v6, v0, :cond_107
.line 69
mul-int v5, v6, v10
add-int/2addr v5, v7
const/high16 v22, -0x1000000
aput v22, v11, v5
goto :goto_b3
.line 73
:cond_107
if-eqz v4, :cond_1aa
.line 74
const/4 v5, 0x0
aget v5, v9, v5
int-to-double v0, v5
move-wide/from16 v22, v0
const/4 v5, 0x0
aget v5, v9, v5
int-to-double v0, v5
move-wide/from16 v24, v0
const-wide/high16 v26, 0x402a000000000000L # 13.0
sub-double v24, v24, v26
.line 3406
iget v5, v8, Lcom/google/zxing/common/b;->height:I
.line 75
int-to-double v0, v5
move-wide/from16 v26, v0
div-double v24, v24, v26
add-int/lit8 v5, v6, 0x1
int-to-double v0, v5
move-wide/from16 v26, v0
mul-double v24, v24, v26
sub-double v22, v22, v24
move-wide/from16 v0, v22
double-to-int v5, v0
.line 76
const/16 v22, 0x1
aget v22, v9, v22
move/from16 v0, v22
int-to-double v0, v0
move-wide/from16 v22, v0
const/16 v24, 0x1
aget v24, v9, v24
move/from16 v0, v24
int-to-double v0, v0
move-wide/from16 v24, v0
const-wide/high16 v26, 0x4052000000000000L # 72.0
sub-double v24, v24, v26
.line 4406
iget v0, v8, Lcom/google/zxing/common/b;->height:I
move/from16 v26, v0
.line 77
move/from16 v0, v26
int-to-double v0, v0
move-wide/from16 v26, v0
div-double v24, v24, v26
add-int/lit8 v26, v6, 0x1
move/from16 v0, v26
int-to-double v0, v0
move-wide/from16 v26, v0
mul-double v24, v24, v26
sub-double v22, v22, v24
move-wide/from16 v0, v22
double-to-int v0, v0
move/from16 v22, v0
.line 78
const/16 v23, 0x2
aget v23, v9, v23
move/from16 v0, v23
int-to-double v0, v0
move-wide/from16 v24, v0
const/16 v23, 0x2
aget v23, v9, v23
move/from16 v0, v23
int-to-double v0, v0
move-wide/from16 v26, v0
const-wide v28, 0x405ac00000000000L # 107.0
sub-double v26, v26, v28
.line 5406
iget v0, v8, Lcom/google/zxing/common/b;->height:I
move/from16 v23, v0
.line 79
move/from16 v0, v23
int-to-double v0, v0
move-wide/from16 v28, v0
div-double v26, v26, v28
add-int/lit8 v23, v6, 0x1
move/from16 v0, v23
int-to-double v0, v0
move-wide/from16 v28, v0
mul-double v26, v26, v28
sub-double v24, v24, v26
move-wide/from16 v0, v24
double-to-int v0, v0
move/from16 v23, v0
.line 80
new-instance v24, Landroid/graphics/Color;
invoke-direct/range {v24 .. v24}, Landroid/graphics/Color;-><init>()V
.line 81
const/16 v24, 0xff
move/from16 v0, v24
move/from16 v1, v22
move/from16 v2, v23
invoke-static {v0, v5, v1, v2}, Landroid/graphics/Color;->argb(IIII)I
move-result v5
.line 85
:goto_1a2
mul-int v22, v6, v10
add-int v22, v22, v7
aput v5, v11, v22
goto/16 :goto_b3
.line 83
:cond_1aa
const/high16 v5, -0x1000000
goto :goto_1a2
.line 88
:cond_1ad
mul-int v5, v6, v10
add-int/2addr v5, v7
const/16 v22, -0x1
aput v22, v11, v5
goto/16 :goto_b3
.line 58
:cond_1b6
add-int/lit8 v5, v7, 0x1
move v7, v5
goto/16 :goto_94
.line 92
:cond_1bb
return-object v11
.end method