Memory.smali
.class public final Lcom/tencent/tinker/ziputils/ziputil/Memory;
.super Ljava/lang/Object;
# direct methods
.method private constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static peekInt([BILjava/nio/ByteOrder;)I
.registers 6
sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;
if-ne p2, v0, :cond_26
add-int/lit8 v0, p1, 0x1
aget-byte v1, p0, p1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x18
add-int/lit8 v2, v0, 0x1
aget-byte v0, p0, v0
and-int/lit16 v0, v0, 0xff
shl-int/lit8 v0, v0, 0x10
or-int/2addr v0, v1
add-int/lit8 v1, v2, 0x1
aget-byte v2, p0, v2
and-int/lit16 v2, v2, 0xff
shl-int/lit8 v2, v2, 0x8
or-int/2addr v0, v2
aget-byte v1, p0, v1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x0
or-int/2addr v0, v1
:goto_25
return v0
:cond_26
add-int/lit8 v0, p1, 0x1
aget-byte v1, p0, p1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x0
add-int/lit8 v2, v0, 0x1
aget-byte v0, p0, v0
and-int/lit16 v0, v0, 0xff
shl-int/lit8 v0, v0, 0x8
or-int/2addr v0, v1
add-int/lit8 v1, v2, 0x1
aget-byte v2, p0, v2
and-int/lit16 v2, v2, 0xff
shl-int/lit8 v2, v2, 0x10
or-int/2addr v0, v2
aget-byte v1, p0, v1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x18
or-int/2addr v0, v1
goto :goto_25
.end method
.method public static peekLong([BILjava/nio/ByteOrder;)J
.registers 11
const-wide v6, 0xffffffffL
const/16 v4, 0x20
sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;
if-ne p2, v0, :cond_55
add-int/lit8 v0, p1, 0x1
aget-byte v1, p0, p1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x18
add-int/lit8 v2, v0, 0x1
aget-byte v0, p0, v0
and-int/lit16 v0, v0, 0xff
shl-int/lit8 v0, v0, 0x10
or-int/2addr v0, v1
add-int/lit8 v1, v2, 0x1
aget-byte v2, p0, v2
and-int/lit16 v2, v2, 0xff
shl-int/lit8 v2, v2, 0x8
or-int/2addr v0, v2
add-int/lit8 v2, v1, 0x1
aget-byte v1, p0, v1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x0
or-int/2addr v0, v1
add-int/lit8 v1, v2, 0x1
aget-byte v2, p0, v2
and-int/lit16 v2, v2, 0xff
shl-int/lit8 v2, v2, 0x18
add-int/lit8 v3, v1, 0x1
aget-byte v1, p0, v1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x10
or-int/2addr v1, v2
add-int/lit8 v2, v3, 0x1
aget-byte v3, p0, v3
and-int/lit16 v3, v3, 0xff
shl-int/lit8 v3, v3, 0x8
or-int/2addr v1, v3
aget-byte v2, p0, v2
and-int/lit16 v2, v2, 0xff
shl-int/lit8 v2, v2, 0x0
or-int/2addr v1, v2
int-to-long v2, v0
shl-long/2addr v2, v4
int-to-long v0, v1
and-long/2addr v0, v6
or-long/2addr v0, v2
:goto_54
return-wide v0
:cond_55
add-int/lit8 v0, p1, 0x1
aget-byte v1, p0, p1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x0
add-int/lit8 v2, v0, 0x1
aget-byte v0, p0, v0
and-int/lit16 v0, v0, 0xff
shl-int/lit8 v0, v0, 0x8
or-int/2addr v0, v1
add-int/lit8 v1, v2, 0x1
aget-byte v2, p0, v2
and-int/lit16 v2, v2, 0xff
shl-int/lit8 v2, v2, 0x10
or-int/2addr v0, v2
add-int/lit8 v2, v1, 0x1
aget-byte v1, p0, v1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x18
or-int/2addr v0, v1
add-int/lit8 v1, v2, 0x1
aget-byte v2, p0, v2
and-int/lit16 v2, v2, 0xff
shl-int/lit8 v2, v2, 0x0
add-int/lit8 v3, v1, 0x1
aget-byte v1, p0, v1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x8
or-int/2addr v1, v2
add-int/lit8 v2, v3, 0x1
aget-byte v3, p0, v3
and-int/lit16 v3, v3, 0xff
shl-int/lit8 v3, v3, 0x10
or-int/2addr v1, v3
aget-byte v2, p0, v2
and-int/lit16 v2, v2, 0xff
shl-int/lit8 v2, v2, 0x18
or-int/2addr v1, v2
int-to-long v2, v1
shl-long/2addr v2, v4
int-to-long v0, v0
and-long/2addr v0, v6
or-long/2addr v0, v2
goto :goto_54
.end method
.method public static peekShort([BILjava/nio/ByteOrder;)S
.registers 5
sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;
if-ne p2, v0, :cond_11
aget-byte v0, p0, p1
shl-int/lit8 v0, v0, 0x8
add-int/lit8 v1, p1, 0x1
aget-byte v1, p0, v1
and-int/lit16 v1, v1, 0xff
or-int/2addr v0, v1
int-to-short v0, v0
:goto_10
return v0
:cond_11
add-int/lit8 v0, p1, 0x1
aget-byte v0, p0, v0
shl-int/lit8 v0, v0, 0x8
aget-byte v1, p0, p1
and-int/lit16 v1, v1, 0xff
or-int/2addr v0, v1
int-to-short v0, v0
goto :goto_10
.end method
.method public static pokeInt([BIILjava/nio/ByteOrder;)V
.registers 7
sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;
if-ne p3, v0, :cond_27
add-int/lit8 v0, p1, 0x1
shr-int/lit8 v1, p2, 0x18
and-int/lit16 v1, v1, 0xff
int-to-byte v1, v1
aput-byte v1, p0, p1
add-int/lit8 v1, v0, 0x1
shr-int/lit8 v2, p2, 0x10
and-int/lit16 v2, v2, 0xff
int-to-byte v2, v2
aput-byte v2, p0, v0
add-int/lit8 v0, v1, 0x1
shr-int/lit8 v2, p2, 0x8
and-int/lit16 v2, v2, 0xff
int-to-byte v2, v2
aput-byte v2, p0, v1
shr-int/lit8 v1, p2, 0x0
and-int/lit16 v1, v1, 0xff
int-to-byte v1, v1
aput-byte v1, p0, v0
:goto_26
return-void
:cond_27
add-int/lit8 v0, p1, 0x1
shr-int/lit8 v1, p2, 0x0
and-int/lit16 v1, v1, 0xff
int-to-byte v1, v1
aput-byte v1, p0, p1
add-int/lit8 v1, v0, 0x1
shr-int/lit8 v2, p2, 0x8
and-int/lit16 v2, v2, 0xff
int-to-byte v2, v2
aput-byte v2, p0, v0
add-int/lit8 v0, v1, 0x1
shr-int/lit8 v2, p2, 0x10
and-int/lit16 v2, v2, 0xff
int-to-byte v2, v2
aput-byte v2, p0, v1
shr-int/lit8 v1, p2, 0x18
and-int/lit16 v1, v1, 0xff
int-to-byte v1, v1
aput-byte v1, p0, v0
goto :goto_26
.end method
.method public static pokeLong([BIJLjava/nio/ByteOrder;)V
.registers 11
const/16 v4, 0x20
sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;
if-ne p4, v0, :cond_51
shr-long v0, p2, v4
long-to-int v0, v0
add-int/lit8 v1, p1, 0x1
shr-int/lit8 v2, v0, 0x18
and-int/lit16 v2, v2, 0xff
int-to-byte v2, v2
aput-byte v2, p0, p1
add-int/lit8 v2, v1, 0x1
shr-int/lit8 v3, v0, 0x10
and-int/lit16 v3, v3, 0xff
int-to-byte v3, v3
aput-byte v3, p0, v1
add-int/lit8 v1, v2, 0x1
shr-int/lit8 v3, v0, 0x8
and-int/lit16 v3, v3, 0xff
int-to-byte v3, v3
aput-byte v3, p0, v2
add-int/lit8 v2, v1, 0x1
shr-int/lit8 v0, v0, 0x0
and-int/lit16 v0, v0, 0xff
int-to-byte v0, v0
aput-byte v0, p0, v1
long-to-int v0, p2
add-int/lit8 v1, v2, 0x1
shr-int/lit8 v3, v0, 0x18
and-int/lit16 v3, v3, 0xff
int-to-byte v3, v3
aput-byte v3, p0, v2
add-int/lit8 v2, v1, 0x1
shr-int/lit8 v3, v0, 0x10
and-int/lit16 v3, v3, 0xff
int-to-byte v3, v3
aput-byte v3, p0, v1
add-int/lit8 v1, v2, 0x1
shr-int/lit8 v3, v0, 0x8
and-int/lit16 v3, v3, 0xff
int-to-byte v3, v3
aput-byte v3, p0, v2
shr-int/lit8 v0, v0, 0x0
and-int/lit16 v0, v0, 0xff
int-to-byte v0, v0
aput-byte v0, p0, v1
:goto_50
return-void
:cond_51
long-to-int v0, p2
add-int/lit8 v1, p1, 0x1
shr-int/lit8 v2, v0, 0x0
and-int/lit16 v2, v2, 0xff
int-to-byte v2, v2
aput-byte v2, p0, p1
add-int/lit8 v2, v1, 0x1
shr-int/lit8 v3, v0, 0x8
and-int/lit16 v3, v3, 0xff
int-to-byte v3, v3
aput-byte v3, p0, v1
add-int/lit8 v1, v2, 0x1
shr-int/lit8 v3, v0, 0x10
and-int/lit16 v3, v3, 0xff
int-to-byte v3, v3
aput-byte v3, p0, v2
add-int/lit8 v2, v1, 0x1
shr-int/lit8 v0, v0, 0x18
and-int/lit16 v0, v0, 0xff
int-to-byte v0, v0
aput-byte v0, p0, v1
shr-long v0, p2, v4
long-to-int v0, v0
add-int/lit8 v1, v2, 0x1
shr-int/lit8 v3, v0, 0x0
and-int/lit16 v3, v3, 0xff
int-to-byte v3, v3
aput-byte v3, p0, v2
add-int/lit8 v2, v1, 0x1
shr-int/lit8 v3, v0, 0x8
and-int/lit16 v3, v3, 0xff
int-to-byte v3, v3
aput-byte v3, p0, v1
add-int/lit8 v1, v2, 0x1
shr-int/lit8 v3, v0, 0x10
and-int/lit16 v3, v3, 0xff
int-to-byte v3, v3
aput-byte v3, p0, v2
shr-int/lit8 v0, v0, 0x18
and-int/lit16 v0, v0, 0xff
int-to-byte v0, v0
aput-byte v0, p0, v1
goto :goto_50
.end method
.method public static pokeShort([BISLjava/nio/ByteOrder;)V
.registers 6
sget-object v0, Ljava/nio/ByteOrder;->BIG_ENDIAN:Ljava/nio/ByteOrder;
if-ne p3, v0, :cond_15
add-int/lit8 v0, p1, 0x1
shr-int/lit8 v1, p2, 0x8
and-int/lit16 v1, v1, 0xff
int-to-byte v1, v1
aput-byte v1, p0, p1
shr-int/lit8 v1, p2, 0x0
and-int/lit16 v1, v1, 0xff
int-to-byte v1, v1
aput-byte v1, p0, v0
:goto_14
return-void
:cond_15
add-int/lit8 v0, p1, 0x1
shr-int/lit8 v1, p2, 0x0
and-int/lit16 v1, v1, 0xff
int-to-byte v1, v1
aput-byte v1, p0, p1
shr-int/lit8 v1, p2, 0x8
and-int/lit16 v1, v1, 0xff
int-to-byte v1, v1
aput-byte v1, p0, v0
goto :goto_14
.end method