public class org.bouncycastle.math.ec.custom.sec.SecT571K1Point extends org.bouncycastle.math.ec.ECPoint$AbstractF2m
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.math.ec.custom.sec.SecT571K1Point
super_class: org.bouncycastle.math.ec.ECPoint$AbstractF2m
{
public void <init>(org.bouncycastle.math.ec.ECCurve, org.bouncycastle.math.ec.ECFieldElement, org.bouncycastle.math.ec.ECFieldElement);
descriptor: (Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
iconst_0
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571K1Point.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT571K1Point;
0 2 1 curve Lorg/bouncycastle/math/ec/ECCurve;
0 2 2 x Lorg/bouncycastle/math/ec/ECFieldElement;
0 2 3 y Lorg/bouncycastle/math/ec/ECFieldElement;
MethodParameters:
Name Flags
curve
x
y
public void <init>(org.bouncycastle.math.ec.ECCurve, org.bouncycastle.math.ec.ECFieldElement, org.bouncycastle.math.ec.ECFieldElement, boolean);
descriptor: (Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
invokespecial org.bouncycastle.math.ec.ECPoint$AbstractF2m.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;)V
1: aload 2
ifnonnull 2
iconst_1
goto 3
StackMap locals: org.bouncycastle.math.ec.custom.sec.SecT571K1Point org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement int
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: aload 3
ifnonnull 4
iconst_1
goto 5
StackMap locals:
StackMap stack: int
4: iconst_0
StackMap locals: org.bouncycastle.math.ec.custom.sec.SecT571K1Point org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement int
StackMap stack: int int
5: if_icmpeq 7
6: new java.lang.IllegalArgumentException
dup
ldc "Exactly one of the field elements is null"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
iload 4
putfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.withCompression:Z
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT571K1Point;
0 9 1 curve Lorg/bouncycastle/math/ec/ECCurve;
0 9 2 x Lorg/bouncycastle/math/ec/ECFieldElement;
0 9 3 y Lorg/bouncycastle/math/ec/ECFieldElement;
0 9 4 withCompression Z
MethodParameters:
Name Flags
curve
x
y
withCompression
void <init>(org.bouncycastle.math.ec.ECCurve, org.bouncycastle.math.ec.ECFieldElement, org.bouncycastle.math.ec.ECFieldElement, org.bouncycastle.math.ec.ECFieldElement[], boolean);
descriptor: (Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;[Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
flags: (0x0000)
Code:
stack=5, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokespecial org.bouncycastle.math.ec.ECPoint$AbstractF2m.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;[Lorg/bouncycastle/math/ec/ECFieldElement;)V
1: aload 0
iload 5
putfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.withCompression:Z
2: return
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 3 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT571K1Point;
0 3 1 curve Lorg/bouncycastle/math/ec/ECCurve;
0 3 2 x Lorg/bouncycastle/math/ec/ECFieldElement;
0 3 3 y Lorg/bouncycastle/math/ec/ECFieldElement;
0 3 4 zs [Lorg/bouncycastle/math/ec/ECFieldElement;
0 3 5 withCompression Z
MethodParameters:
Name Flags
curve
x
y
zs
withCompression
protected org.bouncycastle.math.ec.ECPoint detach();
descriptor: ()Lorg/bouncycastle/math/ec/ECPoint;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=1, args_size=1
start local 0 0: new org.bouncycastle.math.ec.custom.sec.SecT571K1Point
dup
aconst_null
aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.getAffineXCoord:()Lorg/bouncycastle/math/ec/ECFieldElement;
aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.getAffineYCoord:()Lorg/bouncycastle/math/ec/ECFieldElement;
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571K1Point.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT571K1Point;
public org.bouncycastle.math.ec.ECFieldElement getYCoord();
descriptor: ()Lorg/bouncycastle/math/ec/ECFieldElement;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.x:Lorg/bouncycastle/math/ec/ECFieldElement;
astore 1
start local 1 1: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.y:Lorg/bouncycastle/math/ec/ECFieldElement;
astore 2
start local 2 2: aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.isInfinity:()Z
ifne 3
aload 1
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isZero:()Z
ifeq 4
3: StackMap locals: org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 2
areturn
4: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 1
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 3
start local 3 5: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.zs:[Lorg/bouncycastle/math/ec/ECFieldElement;
iconst_0
aaload
astore 4
start local 4 6: aload 4
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isOne:()Z
ifne 8
7: aload 3
aload 4
invokevirtual org.bouncycastle.math.ec.ECFieldElement.divide:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 3
8: StackMap locals: org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT571K1Point;
1 9 1 X Lorg/bouncycastle/math/ec/ECFieldElement;
2 9 2 L Lorg/bouncycastle/math/ec/ECFieldElement;
5 9 3 Y Lorg/bouncycastle/math/ec/ECFieldElement;
6 9 4 Z Lorg/bouncycastle/math/ec/ECFieldElement;
protected boolean getCompressionYTilde();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.getRawXCoord:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 1
start local 1 1: aload 1
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isZero:()Z
ifeq 3
2: iconst_0
ireturn
3: StackMap locals: org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.getRawYCoord:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 2
start local 2 4: aload 2
invokevirtual org.bouncycastle.math.ec.ECFieldElement.testBitZero:()Z
aload 1
invokevirtual org.bouncycastle.math.ec.ECFieldElement.testBitZero:()Z
ixor
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT571K1Point;
1 5 1 X Lorg/bouncycastle/math/ec/ECFieldElement;
4 5 2 Y Lorg/bouncycastle/math/ec/ECFieldElement;
public org.bouncycastle.math.ec.ECPoint add(org.bouncycastle.math.ec.ECPoint);
descriptor: (Lorg/bouncycastle/math/ec/ECPoint;)Lorg/bouncycastle/math/ec/ECPoint;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=29, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.isInfinity:()Z
ifeq 2
1: aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.bouncycastle.math.ec.ECPoint.isInfinity:()Z
ifeq 4
3: aload 0
areturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.getCurve:()Lorg/bouncycastle/math/ec/ECCurve;
astore 2
start local 2 5: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.x:Lorg/bouncycastle/math/ec/ECFieldElement;
checkcast org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
astore 3
start local 3 6: aload 1
invokevirtual org.bouncycastle.math.ec.ECPoint.getRawXCoord:()Lorg/bouncycastle/math/ec/ECFieldElement;
checkcast org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
astore 4
start local 4 7: aload 3
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.isZero:()Z
ifeq 11
8: aload 4
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.isZero:()Z
ifeq 10
9: aload 2
invokevirtual org.bouncycastle.math.ec.ECCurve.getInfinity:()Lorg/bouncycastle/math/ec/ECPoint;
areturn
10: StackMap locals: org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
StackMap stack:
aload 1
aload 0
invokevirtual org.bouncycastle.math.ec.ECPoint.add:(Lorg/bouncycastle/math/ec/ECPoint;)Lorg/bouncycastle/math/ec/ECPoint;
areturn
11: StackMap locals:
StackMap stack:
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.y:Lorg/bouncycastle/math/ec/ECFieldElement;
checkcast org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
astore 5
start local 5 12: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.zs:[Lorg/bouncycastle/math/ec/ECFieldElement;
iconst_0
aaload
checkcast org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
astore 6
start local 6 13: aload 1
invokevirtual org.bouncycastle.math.ec.ECPoint.getRawYCoord:()Lorg/bouncycastle/math/ec/ECFieldElement;
checkcast org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
astore 7
start local 7 14: aload 1
iconst_0
invokevirtual org.bouncycastle.math.ec.ECPoint.getZCoord:(I)Lorg/bouncycastle/math/ec/ECFieldElement;
checkcast org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
astore 8
start local 8 15: invokestatic org.bouncycastle.math.raw.Nat576.create64:()[J
astore 9
start local 9 16: invokestatic org.bouncycastle.math.raw.Nat576.create64:()[J
astore 10
start local 10 17: invokestatic org.bouncycastle.math.raw.Nat576.create64:()[J
astore 11
start local 11 18: invokestatic org.bouncycastle.math.raw.Nat576.create64:()[J
astore 12
start local 12 19: aload 6
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.isOne:()Z
ifeq 20
aconst_null
goto 21
StackMap locals: org.bouncycastle.math.ec.custom.sec.SecT571K1Point org.bouncycastle.math.ec.ECPoint org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement long[] long[] long[] long[]
StackMap stack:
20: aload 6
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.precompMultiplicand:([J)[J
StackMap locals:
StackMap stack: long[]
21: astore 13
start local 13 22: aload 13
ifnonnull 26
23: aload 4
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
astore 14
start local 14 24: aload 7
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
astore 15
start local 15 25: goto 30
end local 15 end local 14 26: StackMap locals: long[]
StackMap stack:
aload 4
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
aload 13
aload 10
dup
astore 14
start local 14 27: invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiplyPrecomp:([J[J[J)V
28: aload 7
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
aload 13
aload 12
dup
astore 15
start local 15 29: invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiplyPrecomp:([J[J[J)V
30: StackMap locals: long[] long[]
StackMap stack:
aload 8
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.isOne:()Z
ifeq 31
aconst_null
goto 32
StackMap locals:
StackMap stack:
31: aload 8
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.precompMultiplicand:([J)[J
StackMap locals:
StackMap stack: long[]
32: astore 16
start local 16 33: aload 16
ifnonnull 37
34: aload 3
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
astore 17
start local 17 35: aload 5
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
astore 18
start local 18 36: goto 41
end local 18 end local 17 37: StackMap locals: long[]
StackMap stack:
aload 3
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
aload 16
aload 9
dup
astore 17
start local 17 38: invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiplyPrecomp:([J[J[J)V
39: aload 5
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
aload 16
aload 11
dup
astore 18
start local 18 40: invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiplyPrecomp:([J[J[J)V
41: StackMap locals: long[] long[]
StackMap stack:
aload 11
astore 19
start local 19 42: aload 18
aload 15
aload 19
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.add:([J[J[J)V
43: aload 12
astore 20
start local 20 44: aload 17
aload 14
aload 20
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.add:([J[J[J)V
45: aload 20
invokestatic org.bouncycastle.math.raw.Nat576.isZero64:([J)Z
ifeq 49
46: aload 19
invokestatic org.bouncycastle.math.raw.Nat576.isZero64:([J)Z
ifeq 48
47: aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.twice:()Lorg/bouncycastle/math/ec/ECPoint;
areturn
48: StackMap locals: long[] long[]
StackMap stack:
aload 2
invokevirtual org.bouncycastle.math.ec.ECCurve.getInfinity:()Lorg/bouncycastle/math/ec/ECPoint;
areturn
49: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.isZero:()Z
ifeq 62
50: aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.normalize:()Lorg/bouncycastle/math/ec/ECPoint;
astore 24
start local 24 51: aload 24
invokevirtual org.bouncycastle.math.ec.ECPoint.getXCoord:()Lorg/bouncycastle/math/ec/ECFieldElement;
checkcast org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
astore 3
52: aload 24
invokevirtual org.bouncycastle.math.ec.ECPoint.getYCoord:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 25
start local 25 53: aload 7
astore 26
start local 26 54: aload 25
aload 26
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 3
invokevirtual org.bouncycastle.math.ec.ECFieldElement.divide:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 27
start local 27 55: aload 27
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
aload 27
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 3
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
checkcast org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
astore 21
start local 21 56: aload 21
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.isZero:()Z
ifeq 58
57: new org.bouncycastle.math.ec.custom.sec.SecT571K1Point
dup
aload 2
aload 21
aload 2
invokevirtual org.bouncycastle.math.ec.ECCurve.getB:()Lorg/bouncycastle/math/ec/ECFieldElement;
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.withCompression:Z
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571K1Point.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
areturn
58: StackMap locals: org.bouncycastle.math.ec.custom.sec.SecT571K1Point org.bouncycastle.math.ec.ECPoint org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] org.bouncycastle.math.ec.custom.sec.SecT571FieldElement top top org.bouncycastle.math.ec.ECPoint org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 27
aload 3
aload 21
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 21
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 25
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 28
start local 28 59: aload 28
aload 21
invokevirtual org.bouncycastle.math.ec.ECFieldElement.divide:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 21
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
checkcast org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
astore 22
start local 22 60: aload 2
getstatic org.bouncycastle.math.ec.ECConstants.ONE:Ljava/math/BigInteger;
invokevirtual org.bouncycastle.math.ec.ECCurve.fromBigInteger:(Ljava/math/BigInteger;)Lorg/bouncycastle/math/ec/ECFieldElement;
checkcast org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
astore 23
end local 28 end local 27 end local 26 end local 25 end local 24 start local 23 61: goto 85
end local 23 end local 22 end local 21 62: StackMap locals: org.bouncycastle.math.ec.custom.sec.SecT571K1Point org.bouncycastle.math.ec.ECPoint org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] long[]
StackMap stack:
aload 20
aload 20
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.square:([J[J)V
63: aload 19
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.precompMultiplicand:([J)[J
astore 24
start local 24 64: aload 9
astore 25
start local 25 65: aload 10
astore 26
start local 26 66: aload 17
aload 24
aload 25
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiplyPrecomp:([J[J[J)V
67: aload 14
aload 24
aload 26
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiplyPrecomp:([J[J[J)V
68: new org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
dup
aload 9
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.<init>:([J)V
astore 21
start local 21 69: aload 25
aload 26
aload 21
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiply:([J[J[J)V
70: aload 21
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.isZero:()Z
ifeq 72
71: new org.bouncycastle.math.ec.custom.sec.SecT571K1Point
dup
aload 2
aload 21
aload 2
invokevirtual org.bouncycastle.math.ec.ECCurve.getB:()Lorg/bouncycastle/math/ec/ECFieldElement;
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.withCompression:Z
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571K1Point.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
areturn
72: StackMap locals: org.bouncycastle.math.ec.custom.sec.SecT571K1Point org.bouncycastle.math.ec.ECPoint org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] org.bouncycastle.math.ec.custom.sec.SecT571FieldElement top top long[] long[] long[]
StackMap stack:
new org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
dup
aload 11
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.<init>:([J)V
astore 23
start local 23 73: aload 20
aload 24
aload 23
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiplyPrecomp:([J[J[J)V
74: aload 16
ifnull 76
75: aload 23
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
aload 16
aload 23
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiplyPrecomp:([J[J[J)V
76: StackMap locals: org.bouncycastle.math.ec.custom.sec.SecT571K1Point org.bouncycastle.math.ec.ECPoint org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] org.bouncycastle.math.ec.custom.sec.SecT571FieldElement top org.bouncycastle.math.ec.custom.sec.SecT571FieldElement long[] long[] long[]
StackMap stack:
invokestatic org.bouncycastle.math.raw.Nat576.createExt64:()[J
astore 27
start local 27 77: aload 26
aload 20
aload 12
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.add:([J[J[J)V
78: aload 12
aload 27
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.squareAddToExt:([J[J)V
79: aload 5
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
aload 6
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
aload 12
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.add:([J[J[J)V
80: aload 12
aload 23
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
aload 27
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiplyAddToExt:([J[J[J)V
81: new org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
dup
aload 12
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.<init>:([J)V
astore 22
start local 22 82: aload 27
aload 22
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.reduce:([J[J)V
83: aload 13
ifnull 85
84: aload 23
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
aload 13
aload 23
getfield org.bouncycastle.math.ec.custom.sec.SecT571FieldElement.x:[J
invokestatic org.bouncycastle.math.ec.custom.sec.SecT571Field.multiplyPrecomp:([J[J[J)V
end local 27 end local 26 end local 25 end local 24 85: StackMap locals: org.bouncycastle.math.ec.custom.sec.SecT571K1Point org.bouncycastle.math.ec.ECPoint org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] long[] org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement org.bouncycastle.math.ec.custom.sec.SecT571FieldElement
StackMap stack:
new org.bouncycastle.math.ec.custom.sec.SecT571K1Point
dup
aload 2
aload 21
aload 22
iconst_1
anewarray org.bouncycastle.math.ec.ECFieldElement
dup
iconst_0
aload 23
aastore
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.withCompression:Z
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571K1Point.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;[Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
areturn
end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 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 86 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT571K1Point;
0 86 1 b Lorg/bouncycastle/math/ec/ECPoint;
5 86 2 curve Lorg/bouncycastle/math/ec/ECCurve;
6 86 3 X1 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
7 86 4 X2 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
12 86 5 L1 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
13 86 6 Z1 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
14 86 7 L2 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
15 86 8 Z2 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
16 86 9 t1 [J
17 86 10 t2 [J
18 86 11 t3 [J
19 86 12 t4 [J
22 86 13 Z1Precomp [J
24 26 14 U2 [J
27 86 14 U2 [J
25 26 15 S2 [J
29 86 15 S2 [J
33 86 16 Z2Precomp [J
35 37 17 U1 [J
38 86 17 U1 [J
36 37 18 S1 [J
40 86 18 S1 [J
42 86 19 A [J
44 86 20 B [J
56 62 21 X3 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
69 86 21 X3 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
60 62 22 L3 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
82 86 22 L3 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
61 62 23 Z3 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
73 86 23 Z3 Lorg/bouncycastle/math/ec/custom/sec/SecT571FieldElement;
51 61 24 p Lorg/bouncycastle/math/ec/ECPoint;
53 61 25 Y1 Lorg/bouncycastle/math/ec/ECFieldElement;
54 61 26 Y2 Lorg/bouncycastle/math/ec/ECFieldElement;
55 61 27 L Lorg/bouncycastle/math/ec/ECFieldElement;
59 61 28 Y3 Lorg/bouncycastle/math/ec/ECFieldElement;
64 85 24 APrecomp [J
65 85 25 AU1 [J
66 85 26 AU2 [J
77 85 27 tt [J
MethodParameters:
Name Flags
b
public org.bouncycastle.math.ec.ECPoint twice();
descriptor: ()Lorg/bouncycastle/math/ec/ECPoint;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=13, args_size=1
start local 0 0: aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.isInfinity:()Z
ifeq 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.getCurve:()Lorg/bouncycastle/math/ec/ECCurve;
astore 1
start local 1 3: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.x:Lorg/bouncycastle/math/ec/ECFieldElement;
astore 2
start local 2 4: aload 2
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isZero:()Z
ifeq 6
5: aload 1
invokevirtual org.bouncycastle.math.ec.ECCurve.getInfinity:()Lorg/bouncycastle/math/ec/ECPoint;
areturn
6: StackMap locals: org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.y:Lorg/bouncycastle/math/ec/ECFieldElement;
astore 3
start local 3 7: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.zs:[Lorg/bouncycastle/math/ec/ECFieldElement;
iconst_0
aaload
astore 4
start local 4 8: aload 4
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isOne:()Z
istore 5
start local 5 9: iload 5
ifeq 10
aload 4
goto 11
StackMap locals: org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement int
StackMap stack:
10: aload 4
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
StackMap locals:
StackMap stack: org.bouncycastle.math.ec.ECFieldElement
11: astore 6
start local 6 12: iload 5
ifeq 15
13: aload 3
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
aload 3
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 7
start local 7 14: goto 16
end local 7 15: StackMap locals: org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 3
aload 4
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 3
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 7
start local 7 16: StackMap locals: org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 7
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isZero:()Z
ifeq 18
17: new org.bouncycastle.math.ec.custom.sec.SecT571K1Point
dup
aload 1
aload 7
aload 1
invokevirtual org.bouncycastle.math.ec.ECCurve.getB:()Lorg/bouncycastle/math/ec/ECFieldElement;
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.withCompression:Z
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571K1Point.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
areturn
18: StackMap locals:
StackMap stack:
aload 7
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 8
start local 8 19: iload 5
ifeq 20
aload 7
goto 21
StackMap locals: org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
20: aload 7
aload 6
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
StackMap locals:
StackMap stack: org.bouncycastle.math.ec.ECFieldElement
21: astore 9
start local 9 22: aload 3
aload 2
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 10
start local 10 23: iload 5
ifeq 24
aload 4
goto 25
StackMap locals: org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
24: aload 6
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
StackMap locals:
StackMap stack: org.bouncycastle.math.ec.ECFieldElement
25: astore 11
start local 11 26: aload 10
aload 7
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 6
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 10
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 11
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 8
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 9
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 12
start local 12 27: new org.bouncycastle.math.ec.custom.sec.SecT571K1Point
dup
aload 1
aload 8
aload 12
iconst_1
anewarray org.bouncycastle.math.ec.ECFieldElement
dup
iconst_0
aload 9
aastore
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.withCompression:Z
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571K1Point.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;[Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
areturn
end local 12 end local 11 end local 10 end local 9 end local 8 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 28 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT571K1Point;
3 28 1 curve Lorg/bouncycastle/math/ec/ECCurve;
4 28 2 X1 Lorg/bouncycastle/math/ec/ECFieldElement;
7 28 3 L1 Lorg/bouncycastle/math/ec/ECFieldElement;
8 28 4 Z1 Lorg/bouncycastle/math/ec/ECFieldElement;
9 28 5 Z1IsOne Z
12 28 6 Z1Sq Lorg/bouncycastle/math/ec/ECFieldElement;
14 15 7 T Lorg/bouncycastle/math/ec/ECFieldElement;
16 28 7 T Lorg/bouncycastle/math/ec/ECFieldElement;
19 28 8 X3 Lorg/bouncycastle/math/ec/ECFieldElement;
22 28 9 Z3 Lorg/bouncycastle/math/ec/ECFieldElement;
23 28 10 t1 Lorg/bouncycastle/math/ec/ECFieldElement;
26 28 11 t2 Lorg/bouncycastle/math/ec/ECFieldElement;
27 28 12 L3 Lorg/bouncycastle/math/ec/ECFieldElement;
public org.bouncycastle.math.ec.ECPoint twicePlus(org.bouncycastle.math.ec.ECPoint);
descriptor: (Lorg/bouncycastle/math/ec/ECPoint;)Lorg/bouncycastle/math/ec/ECPoint;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=21, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.isInfinity:()Z
ifeq 2
1: aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.bouncycastle.math.ec.ECPoint.isInfinity:()Z
ifeq 4
3: aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.twice:()Lorg/bouncycastle/math/ec/ECPoint;
areturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.getCurve:()Lorg/bouncycastle/math/ec/ECCurve;
astore 2
start local 2 5: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.x:Lorg/bouncycastle/math/ec/ECFieldElement;
astore 3
start local 3 6: aload 3
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isZero:()Z
ifeq 8
7: aload 1
areturn
8: StackMap locals: org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 1
invokevirtual org.bouncycastle.math.ec.ECPoint.getRawXCoord:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 4
start local 4 9: aload 1
iconst_0
invokevirtual org.bouncycastle.math.ec.ECPoint.getZCoord:(I)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 5
start local 5 10: aload 4
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isZero:()Z
ifne 11
aload 5
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isOne:()Z
ifne 12
11: StackMap locals: org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.twice:()Lorg/bouncycastle/math/ec/ECPoint;
aload 1
invokevirtual org.bouncycastle.math.ec.ECPoint.add:(Lorg/bouncycastle/math/ec/ECPoint;)Lorg/bouncycastle/math/ec/ECPoint;
areturn
12: StackMap locals:
StackMap stack:
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.y:Lorg/bouncycastle/math/ec/ECFieldElement;
astore 6
start local 6 13: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.zs:[Lorg/bouncycastle/math/ec/ECFieldElement;
iconst_0
aaload
astore 7
start local 7 14: aload 1
invokevirtual org.bouncycastle.math.ec.ECPoint.getRawYCoord:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 8
start local 8 15: aload 3
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 9
start local 9 16: aload 6
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 10
start local 10 17: aload 7
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 11
start local 11 18: aload 6
aload 7
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 12
start local 12 19: aload 10
aload 12
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 13
start local 13 20: aload 8
invokevirtual org.bouncycastle.math.ec.ECFieldElement.addOne:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 14
start local 14 21: aload 14
aload 11
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 10
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 13
aload 9
aload 11
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiplyPlusProduct:(Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 15
start local 15 22: aload 4
aload 11
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 16
start local 16 23: aload 16
aload 13
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
astore 17
start local 17 24: aload 17
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isZero:()Z
ifeq 28
25: aload 15
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isZero:()Z
ifeq 27
26: aload 1
invokevirtual org.bouncycastle.math.ec.ECPoint.twice:()Lorg/bouncycastle/math/ec/ECPoint;
areturn
27: StackMap locals: org.bouncycastle.math.ec.custom.sec.SecT571K1Point org.bouncycastle.math.ec.ECPoint org.bouncycastle.math.ec.ECCurve org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 2
invokevirtual org.bouncycastle.math.ec.ECCurve.getInfinity:()Lorg/bouncycastle/math/ec/ECPoint;
areturn
28: StackMap locals:
StackMap stack:
aload 15
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isZero:()Z
ifeq 30
29: new org.bouncycastle.math.ec.custom.sec.SecT571K1Point
dup
aload 2
aload 15
aload 2
invokevirtual org.bouncycastle.math.ec.ECCurve.getB:()Lorg/bouncycastle/math/ec/ECFieldElement;
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.withCompression:Z
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571K1Point.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
areturn
30: StackMap locals:
StackMap stack:
aload 15
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
aload 16
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 18
start local 18 31: aload 15
aload 17
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
aload 11
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiply:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 19
start local 19 32: aload 15
aload 17
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
invokevirtual org.bouncycastle.math.ec.ECFieldElement.square:()Lorg/bouncycastle/math/ec/ECFieldElement;
aload 13
aload 14
aload 19
invokevirtual org.bouncycastle.math.ec.ECFieldElement.multiplyPlusProduct:(Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
astore 20
start local 20 33: new org.bouncycastle.math.ec.custom.sec.SecT571K1Point
dup
aload 2
aload 18
aload 20
iconst_1
anewarray org.bouncycastle.math.ec.ECFieldElement
dup
iconst_0
aload 19
aastore
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.withCompression:Z
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571K1Point.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;[Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
areturn
end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 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 34 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT571K1Point;
0 34 1 b Lorg/bouncycastle/math/ec/ECPoint;
5 34 2 curve Lorg/bouncycastle/math/ec/ECCurve;
6 34 3 X1 Lorg/bouncycastle/math/ec/ECFieldElement;
9 34 4 X2 Lorg/bouncycastle/math/ec/ECFieldElement;
10 34 5 Z2 Lorg/bouncycastle/math/ec/ECFieldElement;
13 34 6 L1 Lorg/bouncycastle/math/ec/ECFieldElement;
14 34 7 Z1 Lorg/bouncycastle/math/ec/ECFieldElement;
15 34 8 L2 Lorg/bouncycastle/math/ec/ECFieldElement;
16 34 9 X1Sq Lorg/bouncycastle/math/ec/ECFieldElement;
17 34 10 L1Sq Lorg/bouncycastle/math/ec/ECFieldElement;
18 34 11 Z1Sq Lorg/bouncycastle/math/ec/ECFieldElement;
19 34 12 L1Z1 Lorg/bouncycastle/math/ec/ECFieldElement;
20 34 13 T Lorg/bouncycastle/math/ec/ECFieldElement;
21 34 14 L2plus1 Lorg/bouncycastle/math/ec/ECFieldElement;
22 34 15 A Lorg/bouncycastle/math/ec/ECFieldElement;
23 34 16 X2Z1Sq Lorg/bouncycastle/math/ec/ECFieldElement;
24 34 17 B Lorg/bouncycastle/math/ec/ECFieldElement;
31 34 18 X3 Lorg/bouncycastle/math/ec/ECFieldElement;
32 34 19 Z3 Lorg/bouncycastle/math/ec/ECFieldElement;
33 34 20 L3 Lorg/bouncycastle/math/ec/ECFieldElement;
MethodParameters:
Name Flags
b
public org.bouncycastle.math.ec.ECPoint negate();
descriptor: ()Lorg/bouncycastle/math/ec/ECPoint;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual org.bouncycastle.math.ec.custom.sec.SecT571K1Point.isInfinity:()Z
ifeq 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.x:Lorg/bouncycastle/math/ec/ECFieldElement;
astore 1
start local 1 3: aload 1
invokevirtual org.bouncycastle.math.ec.ECFieldElement.isZero:()Z
ifeq 5
4: aload 0
areturn
5: StackMap locals: org.bouncycastle.math.ec.ECFieldElement
StackMap stack:
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.y:Lorg/bouncycastle/math/ec/ECFieldElement;
astore 2
start local 2 6: aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.zs:[Lorg/bouncycastle/math/ec/ECFieldElement;
iconst_0
aaload
astore 3
start local 3 7: new org.bouncycastle.math.ec.custom.sec.SecT571K1Point
dup
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.curve:Lorg/bouncycastle/math/ec/ECCurve;
aload 1
aload 2
aload 3
invokevirtual org.bouncycastle.math.ec.ECFieldElement.add:(Lorg/bouncycastle/math/ec/ECFieldElement;)Lorg/bouncycastle/math/ec/ECFieldElement;
iconst_1
anewarray org.bouncycastle.math.ec.ECFieldElement
dup
iconst_0
aload 3
aastore
aload 0
getfield org.bouncycastle.math.ec.custom.sec.SecT571K1Point.withCompression:Z
invokespecial org.bouncycastle.math.ec.custom.sec.SecT571K1Point.<init>:(Lorg/bouncycastle/math/ec/ECCurve;Lorg/bouncycastle/math/ec/ECFieldElement;Lorg/bouncycastle/math/ec/ECFieldElement;[Lorg/bouncycastle/math/ec/ECFieldElement;Z)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/bouncycastle/math/ec/custom/sec/SecT571K1Point;
3 8 1 X Lorg/bouncycastle/math/ec/ECFieldElement;
6 8 2 L Lorg/bouncycastle/math/ec/ECFieldElement;
7 8 3 Z Lorg/bouncycastle/math/ec/ECFieldElement;
}
SourceFile: "SecT571K1Point.java"
InnerClasses:
public abstract AbstractF2m = org.bouncycastle.math.ec.ECPoint$AbstractF2m of org.bouncycastle.math.ec.ECPoint