TLRPC$TL_secureValue.smali

.class public Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;
.super Lim/tpelyyftgw/tgnet/TLObject;
.source "TLRPC.java"


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lim/tpelyyftgw/tgnet/TLRPC;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x9
    name = "TL_secureValue"
.end annotation


# static fields
.field public static constructor:I


# instance fields
.field public data:Lim/tpelyyftgw/tgnet/TLRPC$TL_secureData;

.field public files:Ljava/util/ArrayList;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/ArrayList<",
            "Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;",
            ">;"
        }
    .end annotation
.end field

.field public flags:I

.field public front_side:Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

.field public hash:[B

.field public plain_data:Lim/tpelyyftgw/tgnet/TLRPC$SecurePlainData;

.field public reverse_side:Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

.field public selfie:Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

.field public translation:Ljava/util/ArrayList;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/ArrayList<",
            "Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;",
            ">;"
        }
    .end annotation
.end field

.field public type:Lim/tpelyyftgw/tgnet/TLRPC$SecureValueType;


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

    .line 12053
    const v0, 0x187fa0ca

    sput v0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->constructor:I

    return-void
.end method

.method public constructor <init>()V
    .registers 2

    .line 12052
    invoke-direct {p0}, Lim/tpelyyftgw/tgnet/TLObject;-><init>()V

    .line 12061
    new-instance v0, Ljava/util/ArrayList;

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

    iput-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->translation:Ljava/util/ArrayList;

    .line 12062
    new-instance v0, Ljava/util/ArrayList;

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

    iput-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->files:Ljava/util/ArrayList;

    return-void
.end method

.method public static TLdeserialize(Lim/tpelyyftgw/tgnet/AbstractSerializedData;IZ)Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;
    .registers 7
    .param p0, "stream"    # Lim/tpelyyftgw/tgnet/AbstractSerializedData;
    .param p1, "constructor"    # I
    .param p2, "exception"    # Z

    .line 12067
    sget v0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->constructor:I

    if-eq v0, p1, :cond_1e

    .line 12068
    if-nez p2, :cond_8

    .line 12071
    const/4 v0, 0x0

    return-object v0

    .line 12069
    :cond_8
    new-instance v0, Ljava/lang/RuntimeException;

    const/4 v1, 0x1

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

    const/4 v2, 0x0

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

    move-result-object v3

    aput-object v3, v1, v2

    const-string v2, "can\'t parse magic %x in TL_secureValue"

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

    move-result-object v1

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

    throw v0

    .line 12074
    :cond_1e
    new-instance v0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;

    invoke-direct {v0}, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;-><init>()V

    .line 12075
    .local v0, "result":Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;
    invoke-virtual {v0, p0, p2}, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->readParams(Lim/tpelyyftgw/tgnet/AbstractSerializedData;Z)V

    .line 12076
    return-object v0
.end method


# virtual methods
.method public readParams(Lim/tpelyyftgw/tgnet/AbstractSerializedData;Z)V
    .registers 12
    .param p1, "stream"    # Lim/tpelyyftgw/tgnet/AbstractSerializedData;
    .param p2, "exception"    # Z

    .line 12080
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v0

    iput v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    .line 12081
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v0

    invoke-static {p1, v0, p2}, Lim/tpelyyftgw/tgnet/TLRPC$SecureValueType;->TLdeserialize(Lim/tpelyyftgw/tgnet/AbstractSerializedData;IZ)Lim/tpelyyftgw/tgnet/TLRPC$SecureValueType;

    move-result-object v0

    iput-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->type:Lim/tpelyyftgw/tgnet/TLRPC$SecureValueType;

    .line 12082
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    const/4 v1, 0x1

    and-int/2addr v0, v1

    if-eqz v0, :cond_20

    .line 12083
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v0

    invoke-static {p1, v0, p2}, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureData;->TLdeserialize(Lim/tpelyyftgw/tgnet/AbstractSerializedData;IZ)Lim/tpelyyftgw/tgnet/TLRPC$TL_secureData;

    move-result-object v0

    iput-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->data:Lim/tpelyyftgw/tgnet/TLRPC$TL_secureData;

    .line 12085
    :cond_20
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x2

    if-eqz v0, :cond_30

    .line 12086
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v0

    invoke-static {p1, v0, p2}, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;->TLdeserialize(Lim/tpelyyftgw/tgnet/AbstractSerializedData;IZ)Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    move-result-object v0

    iput-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->front_side:Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    .line 12088
    :cond_30
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x4

    if-eqz v0, :cond_40

    .line 12089
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v0

    invoke-static {p1, v0, p2}, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;->TLdeserialize(Lim/tpelyyftgw/tgnet/AbstractSerializedData;IZ)Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    move-result-object v0

    iput-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->reverse_side:Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    .line 12091
    :cond_40
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x8

    if-eqz v0, :cond_50

    .line 12092
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v0

    invoke-static {p1, v0, p2}, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;->TLdeserialize(Lim/tpelyyftgw/tgnet/AbstractSerializedData;IZ)Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    move-result-object v0

    iput-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->selfie:Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    .line 12094
    :cond_50
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x40

    const/4 v2, 0x0

    const-string/jumbo v3, "wrong Vector magic, got %x"

    const v4, 0x1cb5c415

    if-eqz v0, :cond_92

    .line 12095
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v0

    .line 12096
    .local v0, "magic":I
    if-eq v0, v4, :cond_78

    .line 12097
    if-nez p2, :cond_66

    .line 12100
    return-void

    .line 12098
    :cond_66
    new-instance v4, Ljava/lang/RuntimeException;

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

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

    move-result-object v5

    aput-object v5, v1, v2

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

    move-result-object v1

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

    throw v4

    .line 12102
    :cond_78
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v5

    .line 12103
    .local v5, "count":I
    const/4 v6, 0x0

    .local v6, "a":I
    :goto_7d
    if-ge v6, v5, :cond_92

    .line 12104
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v7

    invoke-static {p1, v7, p2}, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;->TLdeserialize(Lim/tpelyyftgw/tgnet/AbstractSerializedData;IZ)Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    move-result-object v7

    .line 12105
    .local v7, "object":Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;
    if-nez v7, :cond_8a

    .line 12106
    return-void

    .line 12108
    :cond_8a
    iget-object v8, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->translation:Ljava/util/ArrayList;

    invoke-virtual {v8, v7}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 12103
    .end local v7    # "object":Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;
    add-int/lit8 v6, v6, 0x1

    goto :goto_7d

    .line 12111
    .end local v0    # "magic":I
    .end local v5    # "count":I
    .end local v6    # "a":I
    :cond_92
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x10

    if-eqz v0, :cond_cd

    .line 12112
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v0

    .line 12113
    .restart local v0    # "magic":I
    if-eq v0, v4, :cond_b3

    .line 12114
    if-nez p2, :cond_a1

    .line 12117
    return-void

    .line 12115
    :cond_a1
    new-instance v4, Ljava/lang/RuntimeException;

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

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

    move-result-object v5

    aput-object v5, v1, v2

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

    move-result-object v1

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

    throw v4

    .line 12119
    :cond_b3
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v1

    .line 12120
    .local v1, "count":I
    const/4 v2, 0x0

    .local v2, "a":I
    :goto_b8
    if-ge v2, v1, :cond_cd

    .line 12121
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v3

    invoke-static {p1, v3, p2}, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;->TLdeserialize(Lim/tpelyyftgw/tgnet/AbstractSerializedData;IZ)Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    move-result-object v3

    .line 12122
    .local v3, "object":Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;
    if-nez v3, :cond_c5

    .line 12123
    return-void

    .line 12125
    :cond_c5
    iget-object v4, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->files:Ljava/util/ArrayList;

    invoke-virtual {v4, v3}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 12120
    .end local v3    # "object":Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;
    add-int/lit8 v2, v2, 0x1

    goto :goto_b8

    .line 12128
    .end local v0    # "magic":I
    .end local v1    # "count":I
    .end local v2    # "a":I
    :cond_cd
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x20

    if-eqz v0, :cond_dd

    .line 12129
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readInt32(Z)I

    move-result v0

    invoke-static {p1, v0, p2}, Lim/tpelyyftgw/tgnet/TLRPC$SecurePlainData;->TLdeserialize(Lim/tpelyyftgw/tgnet/AbstractSerializedData;IZ)Lim/tpelyyftgw/tgnet/TLRPC$SecurePlainData;

    move-result-object v0

    iput-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->plain_data:Lim/tpelyyftgw/tgnet/TLRPC$SecurePlainData;

    .line 12131
    :cond_dd
    invoke-virtual {p1, p2}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->readByteArray(Z)[B

    move-result-object v0

    iput-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->hash:[B

    .line 12132
    return-void
.end method

.method public serializeToStream(Lim/tpelyyftgw/tgnet/AbstractSerializedData;)V
    .registers 6
    .param p1, "stream"    # Lim/tpelyyftgw/tgnet/AbstractSerializedData;

    .line 12135
    sget v0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->constructor:I

    invoke-virtual {p1, v0}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->writeInt32(I)V

    .line 12136
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    invoke-virtual {p1, v0}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->writeInt32(I)V

    .line 12137
    iget-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->type:Lim/tpelyyftgw/tgnet/TLRPC$SecureValueType;

    invoke-virtual {v0, p1}, Lim/tpelyyftgw/tgnet/TLRPC$SecureValueType;->serializeToStream(Lim/tpelyyftgw/tgnet/AbstractSerializedData;)V

    .line 12138
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x1

    if-eqz v0, :cond_1a

    .line 12139
    iget-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->data:Lim/tpelyyftgw/tgnet/TLRPC$TL_secureData;

    invoke-virtual {v0, p1}, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureData;->serializeToStream(Lim/tpelyyftgw/tgnet/AbstractSerializedData;)V

    .line 12141
    :cond_1a
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x2

    if-eqz v0, :cond_25

    .line 12142
    iget-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->front_side:Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    invoke-virtual {v0, p1}, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;->serializeToStream(Lim/tpelyyftgw/tgnet/AbstractSerializedData;)V

    .line 12144
    :cond_25
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x4

    if-eqz v0, :cond_30

    .line 12145
    iget-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->reverse_side:Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    invoke-virtual {v0, p1}, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;->serializeToStream(Lim/tpelyyftgw/tgnet/AbstractSerializedData;)V

    .line 12147
    :cond_30
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x8

    if-eqz v0, :cond_3b

    .line 12148
    iget-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->selfie:Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    invoke-virtual {v0, p1}, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;->serializeToStream(Lim/tpelyyftgw/tgnet/AbstractSerializedData;)V

    .line 12150
    :cond_3b
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x40

    const v1, 0x1cb5c415

    if-eqz v0, :cond_61

    .line 12151
    invoke-virtual {p1, v1}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->writeInt32(I)V

    .line 12152
    iget-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->translation:Ljava/util/ArrayList;

    invoke-virtual {v0}, Ljava/util/ArrayList;->size()I

    move-result v0

    .line 12153
    .local v0, "count":I
    invoke-virtual {p1, v0}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->writeInt32(I)V

    .line 12154
    const/4 v2, 0x0

    .local v2, "a":I
    :goto_51
    if-ge v2, v0, :cond_61

    .line 12155
    iget-object v3, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->translation:Ljava/util/ArrayList;

    invoke-virtual {v3, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    invoke-virtual {v3, p1}, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;->serializeToStream(Lim/tpelyyftgw/tgnet/AbstractSerializedData;)V

    .line 12154
    add-int/lit8 v2, v2, 0x1

    goto :goto_51

    .line 12158
    .end local v0    # "count":I
    .end local v2    # "a":I
    :cond_61
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x10

    if-eqz v0, :cond_84

    .line 12159
    invoke-virtual {p1, v1}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->writeInt32(I)V

    .line 12160
    iget-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->files:Ljava/util/ArrayList;

    invoke-virtual {v0}, Ljava/util/ArrayList;->size()I

    move-result v0

    .line 12161
    .restart local v0    # "count":I
    invoke-virtual {p1, v0}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->writeInt32(I)V

    .line 12162
    const/4 v1, 0x0

    .local v1, "a":I
    :goto_74
    if-ge v1, v0, :cond_84

    .line 12163
    iget-object v2, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->files:Ljava/util/ArrayList;

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

    move-result-object v2

    check-cast v2, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;

    invoke-virtual {v2, p1}, Lim/tpelyyftgw/tgnet/TLRPC$SecureFile;->serializeToStream(Lim/tpelyyftgw/tgnet/AbstractSerializedData;)V

    .line 12162
    add-int/lit8 v1, v1, 0x1

    goto :goto_74

    .line 12166
    .end local v0    # "count":I
    .end local v1    # "a":I
    :cond_84
    iget v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->flags:I

    and-int/lit8 v0, v0, 0x20

    if-eqz v0, :cond_8f

    .line 12167
    iget-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->plain_data:Lim/tpelyyftgw/tgnet/TLRPC$SecurePlainData;

    invoke-virtual {v0, p1}, Lim/tpelyyftgw/tgnet/TLRPC$SecurePlainData;->serializeToStream(Lim/tpelyyftgw/tgnet/AbstractSerializedData;)V

    .line 12169
    :cond_8f
    iget-object v0, p0, Lim/tpelyyftgw/tgnet/TLRPC$TL_secureValue;->hash:[B

    invoke-virtual {p1, v0}, Lim/tpelyyftgw/tgnet/AbstractSerializedData;->writeByteArray([B)V

    .line 12170
    return-void
.end method