l.smali
.class public final Lcom/subgraph/orchid/crypto/l;
.super Ljava/lang/Object;
.source "TorKeyDerivation.java"
# instance fields
.field private final bFZ:[B
.field private bGa:I
# direct methods
.method public constructor <init>([B)V
.registers 5
.prologue
const/4 v2, 0x0
.line 10
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 11
array-length v0, p1
add-int/lit8 v0, v0, 0x1
new-array v0, v0, [B
iput-object v0, p0, Lcom/subgraph/orchid/crypto/l;->bFZ:[B
.line 12
iget-object v0, p0, Lcom/subgraph/orchid/crypto/l;->bFZ:[B
array-length v1, p1
invoke-static {p1, v2, v0, v2, v1}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 13
return-void
.end method
# virtual methods
.method public final g([B[B)V
.registers 9
.prologue
const/4 v5, 0x0
.line 15
array-length v0, p1
array-length v1, p2
add-int/2addr v0, v1
.line 1021
invoke-static {v0}, Ljava/nio/ByteBuffer;->allocate(I)Ljava/nio/ByteBuffer;
move-result-object v0
.line 1022
iput v5, p0, Lcom/subgraph/orchid/crypto/l;->bGa:I
.line 1023
:goto_a
invoke-virtual {v0}, Ljava/nio/ByteBuffer;->hasRemaining()Z
move-result v1
if-eqz v1, :cond_3d
.line 1034
new-instance v1, Lcom/subgraph/orchid/crypto/m;
invoke-direct {v1}, Lcom/subgraph/orchid/crypto/m;-><init>()V
.line 1035
iget-object v2, p0, Lcom/subgraph/orchid/crypto/l;->bFZ:[B
iget-object v3, p0, Lcom/subgraph/orchid/crypto/l;->bFZ:[B
array-length v3, v3
add-int/lit8 v3, v3, -0x1
iget v4, p0, Lcom/subgraph/orchid/crypto/l;->bGa:I
int-to-byte v4, v4
aput-byte v4, v2, v3
.line 1036
iget v2, p0, Lcom/subgraph/orchid/crypto/l;->bGa:I
add-int/lit8 v2, v2, 0x1
iput v2, p0, Lcom/subgraph/orchid/crypto/l;->bGa:I
.line 1037
iget-object v2, p0, Lcom/subgraph/orchid/crypto/l;->bFZ:[B
invoke-virtual {v1, v2}, Lcom/subgraph/orchid/crypto/m;->update([B)V
.line 1038
invoke-virtual {v1}, Lcom/subgraph/orchid/crypto/m;->Mb()[B
move-result-object v1
.line 1025
invoke-virtual {v0}, Ljava/nio/ByteBuffer;->remaining()I
move-result v2
array-length v3, v1
invoke-static {v2, v3}, Ljava/lang/Math;->min(II)I
move-result v2
.line 1026
invoke-virtual {v0, v1, v5, v2}, Ljava/nio/ByteBuffer;->put([BII)Ljava/nio/ByteBuffer;
goto :goto_a
.line 1029
:cond_3d
invoke-virtual {v0}, Ljava/nio/ByteBuffer;->flip()Ljava/nio/Buffer;
.line 16
invoke-virtual {v0, p2}, Ljava/nio/ByteBuffer;->get([B)Ljava/nio/ByteBuffer;
.line 17
invoke-virtual {v0, p1}, Ljava/nio/ByteBuffer;->get([B)Ljava/nio/ByteBuffer;
.line 18
return-void
.end method