VirusCodeImpl.smali

.class Lcom/cm/plugincluster/softmgr/interfaces/scan/VirusCodeImpl;
.super Ljava/lang/Object;
.source "VirusCodeImpl.java"

# interfaces
.implements Lcom/cm/plugincluster/softmgr/interfaces/scan/CodeInterface$IVirusCode;


# static fields
.field private static sBehaivor:[I


# instance fields
.field private mCodePaser:Lcom/cm/plugincluster/softmgr/interfaces/scan/ICodeBitPaser;

.field private mListInteger:Ljava/util/List;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/List",
            "<",
            "Ljava/lang/Integer;",
            ">;"
        }
    .end annotation
.end field


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

    .prologue
    .line 13
    const/16 v0, 0x1d

    new-array v0, v0, [I

    fill-array-data v0, :array_a

    sput-object v0, Lcom/cm/plugincluster/softmgr/interfaces/scan/VirusCodeImpl;->sBehaivor:[I

    return-void

    :array_a
    .array-data 4
        0x5df
        0x5de
        0x3ed
        0x453
        0x452
        0x4b6
        0x451
        0x450
        0x44f
        0x3eb
        0x3ea
        0x3e9
        0x3ec
        0x4b5
        0x4b3
        0x4b2
        0x4b4
        0x3ee
        0x44e
        0x44d
        0x579
        0x515
        0x641
        0x5dd
        0x643
        0x642
        0x454
        0x709
        0x76d
    .end array-data
.end method

.method public constructor <init>(Lcom/cm/plugincluster/softmgr/interfaces/scan/ICodeBitPaser;)V
    .registers 2

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

    .line 49
    iput-object p1, p0, Lcom/cm/plugincluster/softmgr/interfaces/scan/VirusCodeImpl;->mCodePaser:Lcom/cm/plugincluster/softmgr/interfaces/scan/ICodeBitPaser;

    .line 50
    invoke-direct {p0}, Lcom/cm/plugincluster/softmgr/interfaces/scan/VirusCodeImpl;->initListInteger()V

    .line 51
    return-void
.end method

.method private initListInteger()V
    .registers 4

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

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

    iput-object v0, p0, Lcom/cm/plugincluster/softmgr/interfaces/scan/VirusCodeImpl;->mListInteger:Ljava/util/List;

    .line 55
    const/4 v0, 0x0

    :goto_8
    const/16 v1, 0x40

    if-ge v0, v1, :cond_24

    .line 56
    iget-object v1, p0, Lcom/cm/plugincluster/softmgr/interfaces/scan/VirusCodeImpl;->mCodePaser:Lcom/cm/plugincluster/softmgr/interfaces/scan/ICodeBitPaser;

    invoke-interface {v1, v0}, Lcom/cm/plugincluster/softmgr/interfaces/scan/ICodeBitPaser;->isHave(I)Z

    move-result v1

    if-eqz v1, :cond_21

    .line 57
    iget-object v1, p0, Lcom/cm/plugincluster/softmgr/interfaces/scan/VirusCodeImpl;->mListInteger:Ljava/util/List;

    sget-object v2, Lcom/cm/plugincluster/softmgr/interfaces/scan/VirusCodeImpl;->sBehaivor:[I

    aget v2, v2, v0

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

    move-result-object v2

    invoke-interface {v1, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 55
    :cond_21
    add-int/lit8 v0, v0, 0x1

    goto :goto_8

    .line 60
    :cond_24
    return-void
.end method


# virtual methods
.method public getVirusBehavor()Ljava/util/List;
    .registers 2
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Ljava/util/List",
            "<",
            "Ljava/lang/Integer;",
            ">;"
        }
    .end annotation

    .prologue
    .line 64
    iget-object v0, p0, Lcom/cm/plugincluster/softmgr/interfaces/scan/VirusCodeImpl;->mListInteger:Ljava/util/List;

    return-object v0
.end method

.method public isVirus()Z
    .registers 2

    .prologue
    .line 69
    iget-object v0, p0, Lcom/cm/plugincluster/softmgr/interfaces/scan/VirusCodeImpl;->mListInteger:Ljava/util/List;

    invoke-interface {v0}, Ljava/util/List;->size()I

    move-result v0

    if-lez v0, :cond_a

    const/4 v0, 0x1

    :goto_9
    return v0

    :cond_a
    const/4 v0, 0x0

    goto :goto_9
.end method