public class org.bouncycastle.util.encoders.BufferedDecoder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.util.encoders.BufferedDecoder
super_class: java.lang.Object
{
protected byte[] buf;
descriptor: [B
flags: (0x0004) ACC_PROTECTED
protected int bufOff;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected org.bouncycastle.util.encoders.Translator translator;
descriptor: Lorg/bouncycastle/util/encoders/Translator;
flags: (0x0004) ACC_PROTECTED
public void <init>(org.bouncycastle.util.encoders.Translator, int);
descriptor: (Lorg/bouncycastle/util/encoders/Translator;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.bouncycastle.util.encoders.BufferedDecoder.translator:Lorg/bouncycastle/util/encoders/Translator;
2: iload 2
aload 1
invokeinterface org.bouncycastle.util.encoders.Translator.getEncodedBlockSize:()I
irem
ifeq 4
3: new java.lang.IllegalArgumentException
dup
ldc "buffer size not multiple of input block size"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: org.bouncycastle.util.encoders.BufferedDecoder org.bouncycastle.util.encoders.Translator int
StackMap stack:
aload 0
iload 2
newarray 8
putfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
5: aload 0
iconst_0
putfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/bouncycastle/util/encoders/BufferedDecoder;
0 7 1 translator Lorg/bouncycastle/util/encoders/Translator;
0 7 2 bufSize I
MethodParameters:
Name Flags
translator
bufSize
public int processByte(byte, byte[], int);
descriptor: (B[BI)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
aload 0
dup
getfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
dup_x1
iconst_1
iadd
putfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
iload 1
bastore
2: aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
arraylength
if_icmpne 5
3: aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.translator:Lorg/bouncycastle/util/encoders/Translator;
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
iconst_0
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
arraylength
aload 2
iload 3
invokeinterface org.bouncycastle.util.encoders.Translator.decode:([BII[BI)I
istore 4
4: aload 0
iconst_0
putfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
5: StackMap locals: int
StackMap stack:
iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/bouncycastle/util/encoders/BufferedDecoder;
0 6 1 in B
0 6 2 out [B
0 6 3 outOff I
1 6 4 resultLen I
MethodParameters:
Name Flags
in
out
outOff
public int processBytes(byte[], int, int, byte[], int);
descriptor: ([BII[BI)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iload 3
ifge 2
1: new java.lang.IllegalArgumentException
dup
ldc "Can't have a negative input length!"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iconst_0
istore 6
start local 6 3: aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
arraylength
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
isub
istore 7
start local 7 4: iload 3
iload 7
if_icmple 15
5: aload 1
iload 2
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
iload 7
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
6: iload 6
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.translator:Lorg/bouncycastle/util/encoders/Translator;
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
iconst_0
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
arraylength
aload 4
iload 5
invokeinterface org.bouncycastle.util.encoders.Translator.decode:([BII[BI)I
iadd
istore 6
7: aload 0
iconst_0
putfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
8: iload 3
iload 7
isub
istore 3
9: iload 2
iload 7
iadd
istore 2
10: iload 5
iload 6
iadd
istore 5
11: iload 3
iload 3
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
arraylength
irem
isub
istore 8
start local 8 12: iload 6
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.translator:Lorg/bouncycastle/util/encoders/Translator;
aload 1
iload 2
iload 8
aload 4
iload 5
invokeinterface org.bouncycastle.util.encoders.Translator.decode:([BII[BI)I
iadd
istore 6
13: iload 3
iload 8
isub
istore 3
14: iload 2
iload 8
iadd
istore 2
end local 8 15: StackMap locals: int int
StackMap stack:
iload 3
ifeq 18
16: aload 1
iload 2
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.buf:[B
aload 0
getfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
17: aload 0
dup
getfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
iload 3
iadd
putfield org.bouncycastle.util.encoders.BufferedDecoder.bufOff:I
18: StackMap locals:
StackMap stack:
iload 6
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/bouncycastle/util/encoders/BufferedDecoder;
0 19 1 in [B
0 19 2 inOff I
0 19 3 len I
0 19 4 out [B
0 19 5 outOff I
3 19 6 resultLen I
4 19 7 gapLen I
12 15 8 chunkSize I
MethodParameters:
Name Flags
in
inOff
len
out
outOff
}
SourceFile: "BufferedDecoder.java"