class org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1 implements org.bouncycastle.math.ec.ECLookupTable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1
super_class: java.lang.Object
{
final org.bouncycastle.math.ec.custom.sec.SecT283R1Curve this$0;
descriptor: Lorg/bouncycastle/math/ec/custom/sec/SecT283R1Curve;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final int val$len;
descriptor: I
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final long[] val$table;
descriptor: [J
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.bouncycastle.math.ec.custom.sec.SecT283R1Curve, int, long[]);
descriptor: (Lorg/bouncycastle/math/ec/custom/sec/SecT283R1Curve;I[J)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 0: aload 0
aload 1
putfield org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1.this$0:Lorg/bouncycastle/math/ec/custom/sec/SecT283R1Curve;
aload 0
iload 2
putfield org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1.val$len:I
aload 0
aload 3
putfield org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1.val$table:[J
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT283R1Curve$1;
MethodParameters:
Name Flags
this$0 final
val$len final
val$table final
public int getSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1.val$len:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT283R1Curve$1;
public org.bouncycastle.math.ec.ECPoint lookup(int);
descriptor: (I)Lorg/bouncycastle/math/ec/ECPoint;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=9, args_size=2
start local 0 start local 1 0: invokestatic org.bouncycastle.math.raw.Nat320.create64:()[J
astore 2
start local 2 1: invokestatic org.bouncycastle.math.raw.Nat320.create64:()[J
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: iconst_0
istore 5
start local 5 4: goto 14
5: StackMap locals: org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1 int long[] long[] int int
StackMap stack:
iload 5
iload 1
ixor
iconst_1
isub
bipush 31
ishr
i2l
lstore 6
start local 6 6: iconst_0
istore 8
start local 8 7: goto 11
8: StackMap locals: long int
StackMap stack:
aload 2
iload 8
dup2
laload
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1.val$table:[J
iload 4
iload 8
iadd
laload
lload 6
land
lxor
lastore
9: aload 3
iload 8
dup2
laload
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1.val$table:[J
iload 4
iconst_5
iadd
iload 8
iadd
laload
lload 6
land
lxor
lastore
10: iinc 8 1
StackMap locals:
StackMap stack:
11: iload 8
iconst_5
if_icmplt 8
end local 8 12: iinc 4 10
end local 6 13: iinc 5 1
StackMap locals:
StackMap stack:
14: iload 5
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1.val$len:I
if_icmplt 5
end local 5 15: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1.this$0:Lorg/bouncycastle/math/ec/custom/sec/SecT283R1Curve;
new org.bouncycastle.math.ec.custom.sec.SecT283FieldElement
dup
aload 2
invokespecial org.bouncycastle.math.ec.custom.sec.SecT283FieldElement.<init>:([J)V
new org.bouncycastle.math.ec.custom.sec.SecT283FieldElement
dup
aload 3
invokespecial org.bouncycastle.math.ec.custom.sec.SecT283FieldElement.<init>:([J)V
iconst_0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT283R1Curve.createRawPoint:(Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;Z)Lorg/bouncycastle/math/ec/ECPoint;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT283R1Curve$1;
0 16 1 index I
1 16 2 x [J
2 16 3 y [J
3 16 4 pos I
4 15 5 i I
6 13 6 MASK J
7 12 8 j I
MethodParameters:
Name Flags
index
}
SourceFile: "SecT283R1Curve.java"
EnclosingMethod: org.bouncycastle.math.ec.custom.sec.SecT283R1Curve.createCacheSafeLookupTable:([Lorg/bouncycastle/math/ec/ECPoint;II)Lorg/bouncycastle/math/ec/ECLookupTable;
NestHost: org.bouncycastle.math.ec.custom.sec.SecT283R1Curve
InnerClasses:
org.bouncycastle.math.ec.custom.sec.SecT283R1Curve$1