File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
00299400
00299400crypto/elliptic.(*CurveParams).polynomial: ; void crypto/elliptic.(*CurveParams).polynomial(crypto/elliptic.CurveParams * curve, math/big.Int * x)
00299400ldr x16, [x28+16]
00299404subs xzr, sp, x16
00299408b.ls 0x2994dc
0029940cstr x30, [sp-128]!
00299410stur x29, [sp-8]
00299414sub x29, sp, 8
00299418str x0, [sp+136]
0029941cstr x1, [sp+144]
00299420str xzr, [sp+40]
00299424adrp x0, 0x3ac000
00299428add x0, x0, 1024
0029942cbl runtime.newobject
00299430str x0, [sp+112]
00299434ldr x1, [sp+144]
00299438ldr x2, [sp+144]
0029943cbl math/big.(*Int).Mul
00299440str x0, [sp+48]
00299444ldr x2, [sp+144]
00299448mov x1, x0
0029944cbl math/big.(*Int).Mul
00299450strb wzr, [sp+80]
00299454str xzr, [sp+88]
00299458stp xzr, xzr, [sp+96]
0029945cadd x0, sp, 80
00299460str x0, [sp+112]
00299464ldr x1, [sp+144]
00299468orr x2, xzr, 1
0029946cbl math/big.(*Int).Lsh
00299470str x0, [sp+56]
00299474ldr x2, [sp+144]
00299478mov x1, x0
0029947cbl math/big.(*Int).Add
00299480ldr x1, [sp+48]
00299484ldr x2, [sp+56]
00299488ldr x0, [sp+48]
0029948cbl math/big.(*Int).Sub
00299490ldr x1, [sp+136]
00299494ldrsb x27, [x1]
00299498ldr x2, [x1+16]
0029949cstr x2, [sp+72]
002994a0ldr x0, [sp+48]
002994a4ldr x1, [sp+48]
002994a8bl math/big.(*Int).Add
002994acldr x1, [sp+136]
002994b0ldrsb x27, [x1]
002994b4ldr x2, [x1]
002994b8str x2, [sp+64]
002994bcldr x0, [sp+48]
002994c0ldr x1, [sp+48]
002994c4bl math/big.(*Int).Mod
002994c8ldr x0, [sp+48]
002994ccstr x0, [sp+40]
002994d0ldur x29, [sp-8]
002994d4ldr x30, [sp], 128
002994d8ret x30
002994dc
002994dcloc_2994dc:
002994dcstp x0, x1, [sp+8]
002994e0mov x3, x30
002994e4bl runtime.morestack_noctxt.abi0
002994e8ldp x0, x1, [sp+8]
002994ecb 0x299400
00299400
00299400crypto/elliptic.(*CurveParams).polynomial: ; void crypto/elliptic.(*CurveParams).polynomial(crypto/elliptic.CurveParams * curve, math/big.Int * x)
00299400ldr x16, [x28+16]
00299404subs xzr, sp, x16
00299408b.ls 0x2994dc
0029940cstr x30, [sp-128]!
00299410stur x29, [sp-8]
00299414sub x29, sp, 8
00299418str x0, [sp+136]
0029941cstr x1, [sp+144]
00299420str xzr, [sp+40]
00299424adrp x0, 0x3ac000
00299428add x0, x0, 1024
0029942cbl runtime.newobject
00299430str x0, [sp+112]
00299434ldr x1, [sp+144]
00299438ldr x2, [sp+144]
0029943cbl math/big.(*Int).Mul
00299440str x0, [sp+48]
00299444ldr x2, [sp+144]
00299448mov x1, x0
0029944cbl math/big.(*Int).Mul
00299450strb wzr, [sp+80]
00299454str xzr, [sp+88]
00299458stp xzr, xzr, [sp+96]
0029945cadd x0, sp, 80
00299460str x0, [sp+112]
00299464ldr x1, [sp+144]
00299468orr x2, xzr, 1
0029946cbl math/big.(*Int).Lsh
00299470str x0, [sp+56]
00299474ldr x2, [sp+144]
00299478mov x1, x0
0029947cbl math/big.(*Int).Add
00299480ldr x1, [sp+48]
00299484ldr x2, [sp+56]
00299488ldr x0, [sp+48]
0029948cbl math/big.(*Int).Sub
00299490ldr x1, [sp+136]
00299494ldrsb x27, [x1]
00299498ldr x2, [x1+16]
0029949cstr x2, [sp+72]
002994a0ldr x0, [sp+48]
002994a4ldr x1, [sp+48]
002994a8bl math/big.(*Int).Add
002994acldr x1, [sp+136]
002994b0ldrsb x27, [x1]
002994b4ldr x2, [x1]
002994b8str x2, [sp+64]
002994bcldr x0, [sp+48]
002994c0ldr x1, [sp+48]
002994c4bl math/big.(*Int).Mod
002994c8ldr x0, [sp+48]
002994ccstr x0, [sp+40]
002994d0ldur x29, [sp-8]
002994d4ldr x30, [sp], 128
002994d8ret x30
002994dc
002994dcloc_2994dc:
002994dcstp x0, x1, [sp+8]
002994e0mov x3, x30
002994e4bl runtime.morestack_noctxt.abi0
002994e8ldp x0, x1, [sp+8]
002994ecb 0x299400
00299400
002994f0
002994f0crypto/elliptic.(*CurveParams).IsOnCurve: ; void crypto/elliptic.(*CurveParams).IsOnCurve(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y)
002994f0ldr x16, [x28+16]
002994f4sub x17, sp, 64
002994f8subs xzr, x17, x16
002994fcb.ls 0x2996f0
00299500str x30, [sp-192]!
00299504stur x29, [sp-8]
00299508sub x29, sp, 8
0029950cstr x0, [sp+200]
00299510str x1, [sp+208]
00299514str x2, [sp+216]
00299518strb wzr, [sp+42]
0029951cstp xzr, xzr, [sp+88]
00299520ldr x0, [sp+200]
00299524bl crypto/elliptic.matchesSpecificCurve
00299528str x0, [sp+88]
0029952cstr x1, [sp+96]
00299530strb w2, [sp+47]
00299534ldr x1, [sp+88]
00299538ldr x2, [sp+96]
0029953cstr x1, [sp+104]
00299540str x2, [sp+112]
00299544ldrb w1, [sp+47]
00299548strb w1, [sp+44]
0029954cldr x1, [sp+104]
00299550ldr x2, [sp+112]
00299554str x1, [sp+72]
00299558str x2, [sp+80]
0029955cldrb w1, [sp+44]
00299560strb w1, [sp+43]
00299564tbnz w1, 0, 0x29956c
00299568b 0x29959c
0029956c
0029956cloc_29956c:
0029956cldr x1, [sp+208]
00299570ldr x2, [sp+216]
00299574ldr x3, [sp+72]
00299578ldrsb x27, [x3]
0029957cldr x3, [x3+40]
00299580ldr x0, [sp+80]
00299584blr x3
00299588strb w0, [sp+47]
0029958cstrb w0, [sp+42]
00299590ldur x29, [sp-8]
00299594ldr x30, [sp], 192
00299598ret x30
0029959c
0029959cloc_29959c:
0029959cldr x0, [sp+208]
002995a0bl math/big.(*Int).Sign
002995a4str x0, [sp+56]
002995a8subs xzr, x0, 0
002995accset x1, lt
002995b0strb w1, [sp+45]
002995b4tbnz x0, 63, 0x2995bc
002995b8b 0x2995c0
002995bc
002995bcloc_2995bc:
002995bcb 0x2995ec
002995c0
002995c0loc_2995c0:
002995c0ldr x2, [sp+200]
002995c4ldrsb x27, [x2]
002995c8ldr x1, [x2]
002995ccstr x1, [sp+168]
002995d0ldr x0, [sp+208]
002995d4bl math/big.(*Int).Cmp
002995d8str x0, [sp+48]
002995dcsubs xzr, x0, 0
002995e0cset x2, ge
002995e4strb w2, [sp+45]
002995e8b 0x2995ec
002995ec
002995ecloc_2995ec:
002995ecldrb w3, [sp+45]
002995f0strb w3, [sp+46]
002995f4tbnz w3, 0, 0x2995fc
002995f8b 0x299600
002995fc
002995fcloc_2995fc:
002995fcb 0x29961c
00299600
00299600loc_299600:
00299600ldr x0, [sp+216]
00299604bl math/big.(*Int).Sign
00299608str x0, [sp+48]
0029960csubs xzr, x0, 0
00299610cset x1, lt
00299614strb w1, [sp+46]
00299618b 0x29961c
0029961c
0029961cloc_29961c:
0029961cldrb w3, [sp+46]
00299620strb w3, [sp+47]
00299624tbnz w3, 0, 0x29962c
00299628b 0x299630
0029962c
0029962cloc_29962c:
0029962cb 0x29965c
00299630
00299630loc_299630:
00299630ldr x2, [sp+200]
00299634ldrsb x27, [x2]
00299638ldr x1, [x2]
0029963cstr x1, [sp+160]
00299640ldr x0, [sp+216]
00299644bl math/big.(*Int).Cmp
00299648str x0, [sp+48]
0029964csubs xzr, x0, 0
00299650cset x2, ge
00299654strb w2, [sp+47]
00299658b 0x29965c
0029965c
0029965cloc_29965c:
0029965cldrb w3, [sp+47]
00299660tbnz w3, 0, 0x299668
00299664b 0x29967c
00299668
00299668loc_299668:
00299668strb wzr, [sp+42]
0029966cmov x0, xzr
00299670ldur x29, [sp-8]
00299674ldr x30, [sp], 192
00299678ret x30
0029967c
0029967cloc_29967c:
0029967cstrb wzr, [sp+128]
00299680str xzr, [sp+136]
00299684stp xzr, xzr, [sp+144]
00299688add x0, sp, 128
0029968cstr x0, [sp+176]
00299690ldr x1, [sp+216]
00299694ldr x2, [sp+216]
00299698bl math/big.(*Int).Mul
0029969cstr x0, [sp+64]
002996a0ldr x3, [sp+200]
002996a4ldrsb x27, [x3]
002996a8ldr x2, [x3]
002996acstr x2, [sp+120]
002996b0ldr x0, [sp+64]
002996b4ldr x1, [sp+64]
002996b8bl math/big.(*Int).Mod
002996bcldr x1, [sp+208]
002996c0ldr x0, [sp+200]
002996c4bl crypto/elliptic.(*CurveParams).polynomial
002996c8str x0, [sp+176]
002996ccldr x1, [sp+64]
002996d0bl math/big.(*Int).Cmp
002996d4str x0, [sp+56]
002996d8subs xzr, x0, 0
002996dccset x0, eq
002996e0strb w0, [sp+42]
002996e4ldur x29, [sp-8]
002996e8ldr x30, [sp], 192
002996ecret x30
002996f0
002996f0loc_2996f0:
002996f0stp x0, x1, [sp+8]
002996f4str x2, [sp+24]
002996f8mov x3, x30
002996fcbl runtime.morestack_noctxt.abi0
00299700ldp x0, x1, [sp+8]
00299704ldr x2, [sp+24]
00299708b 0x2994f0
0029970cudf 0
002994f0
002994f0crypto/elliptic.(*CurveParams).IsOnCurve: ; void crypto/elliptic.(*CurveParams).IsOnCurve(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y)
002994f0ldr x16, [x28+16]
002994f4sub x17, sp, 64
002994f8subs xzr, x17, x16
002994fcb.ls 0x2996f0
00299500str x30, [sp-192]!
00299504stur x29, [sp-8]
00299508sub x29, sp, 8
0029950cstr x0, [sp+200]
00299510str x1, [sp+208]
00299514str x2, [sp+216]
00299518strb wzr, [sp+42]
0029951cstp xzr, xzr, [sp+88]
00299520ldr x0, [sp+200]
00299524bl crypto/elliptic.matchesSpecificCurve
00299528str x0, [sp+88]
0029952cstr x1, [sp+96]
00299530strb w2, [sp+47]
00299534ldr x1, [sp+88]
00299538ldr x2, [sp+96]
0029953cstr x1, [sp+104]
00299540str x2, [sp+112]
00299544ldrb w1, [sp+47]
00299548strb w1, [sp+44]
0029954cldr x1, [sp+104]
00299550ldr x2, [sp+112]
00299554str x1, [sp+72]
00299558str x2, [sp+80]
0029955cldrb w1, [sp+44]
00299560strb w1, [sp+43]
00299564tbnz w1, 0, 0x29956c
00299568b 0x29959c
0029956c
0029956cloc_29956c:
0029956cldr x1, [sp+208]
00299570ldr x2, [sp+216]
00299574ldr x3, [sp+72]
00299578ldrsb x27, [x3]
0029957cldr x3, [x3+40]
00299580ldr x0, [sp+80]
00299584blr x3
00299588strb w0, [sp+47]
0029958cstrb w0, [sp+42]
00299590ldur x29, [sp-8]
00299594ldr x30, [sp], 192
00299598ret x30
0029959c
0029959cloc_29959c:
0029959cldr x0, [sp+208]
002995a0bl math/big.(*Int).Sign
002995a4str x0, [sp+56]
002995a8subs xzr, x0, 0
002995accset x1, lt
002995b0strb w1, [sp+45]
002995b4tbnz x0, 63, 0x2995bc
002995b8b 0x2995c0
002995bc
002995bcloc_2995bc:
002995bcb 0x2995ec
002995c0
002995c0loc_2995c0:
002995c0ldr x2, [sp+200]
002995c4ldrsb x27, [x2]
002995c8ldr x1, [x2]
002995ccstr x1, [sp+168]
002995d0ldr x0, [sp+208]
002995d4bl math/big.(*Int).Cmp
002995d8str x0, [sp+48]
002995dcsubs xzr, x0, 0
002995e0cset x2, ge
002995e4strb w2, [sp+45]
002995e8b 0x2995ec
002995ec
002995ecloc_2995ec:
002995ecldrb w3, [sp+45]
002995f0strb w3, [sp+46]
002995f4tbnz w3, 0, 0x2995fc
002995f8b 0x299600
002995fc
002995fcloc_2995fc:
002995fcb 0x29961c
00299600
00299600loc_299600:
00299600ldr x0, [sp+216]
00299604bl math/big.(*Int).Sign
00299608str x0, [sp+48]
0029960csubs xzr, x0, 0
00299610cset x1, lt
00299614strb w1, [sp+46]
00299618b 0x29961c
0029961c
0029961cloc_29961c:
0029961cldrb w3, [sp+46]
00299620strb w3, [sp+47]
00299624tbnz w3, 0, 0x29962c
00299628b 0x299630
0029962c
0029962cloc_29962c:
0029962cb 0x29965c
00299630
00299630loc_299630:
00299630ldr x2, [sp+200]
00299634ldrsb x27, [x2]
00299638ldr x1, [x2]
0029963cstr x1, [sp+160]
00299640ldr x0, [sp+216]
00299644bl math/big.(*Int).Cmp
00299648str x0, [sp+48]
0029964csubs xzr, x0, 0
00299650cset x2, ge
00299654strb w2, [sp+47]
00299658b 0x29965c
0029965c
0029965cloc_29965c:
0029965cldrb w3, [sp+47]
00299660tbnz w3, 0, 0x299668
00299664b 0x29967c
00299668
00299668loc_299668:
00299668strb wzr, [sp+42]
0029966cmov x0, xzr
00299670ldur x29, [sp-8]
00299674ldr x30, [sp], 192
00299678ret x30
0029967c
0029967cloc_29967c:
0029967cstrb wzr, [sp+128]
00299680str xzr, [sp+136]
00299684stp xzr, xzr, [sp+144]
00299688add x0, sp, 128
0029968cstr x0, [sp+176]
00299690ldr x1, [sp+216]
00299694ldr x2, [sp+216]
00299698bl math/big.(*Int).Mul
0029969cstr x0, [sp+64]
002996a0ldr x3, [sp+200]
002996a4ldrsb x27, [x3]
002996a8ldr x2, [x3]
002996acstr x2, [sp+120]
002996b0ldr x0, [sp+64]
002996b4ldr x1, [sp+64]
002996b8bl math/big.(*Int).Mod
002996bcldr x1, [sp+208]
002996c0ldr x0, [sp+200]
002996c4bl crypto/elliptic.(*CurveParams).polynomial
002996c8str x0, [sp+176]
002996ccldr x1, [sp+64]
002996d0bl math/big.(*Int).Cmp
002996d4str x0, [sp+56]
002996d8subs xzr, x0, 0
002996dccset x0, eq
002996e0strb w0, [sp+42]
002996e4ldur x29, [sp-8]
002996e8ldr x30, [sp], 192
002996ecret x30
002996f0
002996f0loc_2996f0:
002996f0stp x0, x1, [sp+8]
002996f4str x2, [sp+24]
002996f8mov x3, x30
002996fcbl runtime.morestack_noctxt.abi0
00299700ldp x0, x1, [sp+8]
00299704ldr x2, [sp+24]
00299708b 0x2994f0
0029970cudf 0
002994f0
00299710
00299710crypto/elliptic.zForAffine: ; void crypto/elliptic.zForAffine(math/big.Int * x, math/big.Int * y)
00299710ldr x16, [x28+16]
00299714subs xzr, sp, x16
00299718b.ls 0x2997b8
0029971cstr x30, [sp-80]!
00299720stur x29, [sp-8]
00299724sub x29, sp, 8
00299728str x0, [sp+88]
0029972cstr x1, [sp+96]
00299730str xzr, [sp+56]
00299734adrp x0, 0x3ac000
00299738add x0, x0, 1024
0029973cbl runtime.newobject
00299740str x0, [sp+64]
00299744ldr x0, [sp+88]
00299748bl math/big.(*Int).Sign
0029974cstr x0, [sp+48]
00299750subs xzr, x0, 0
00299754cset x1, ne
00299758strb w1, [sp+39]
0029975ccbnz x0, 0x299764
00299760b 0x299768
00299764
00299764loc_299764:
00299764b 0x299784
00299768
00299768loc_299768:
00299768ldr x0, [sp+96]
0029976cbl math/big.(*Int).Sign
00299770str x0, [sp+40]
00299774subs xzr, x0, 0
00299778cset x1, ne
0029977cstrb w1, [sp+39]
00299780b 0x299784
00299784
00299784loc_299784:
00299784ldrb w2, [sp+39]
00299788tbnz w2, 0, 0x299790
0029978cb 0x2997a0
00299790
00299790loc_299790:
00299790ldr x0, [sp+64]
00299794orr x1, xzr, 1
00299798bl math/big.(*Int).SetInt64
0029979cb 0x2997a4
002997a0
002997a0loc_2997a0:
002997a0b 0x2997a4
002997a4
002997a4loc_2997a4:
002997a4ldr x0, [sp+64]
002997a8str x0, [sp+56]
002997acldur x29, [sp-8]
002997b0ldr x30, [sp], 80
002997b4ret x30
002997b8
002997b8loc_2997b8:
002997b8stp x0, x1, [sp+8]
002997bcmov x3, x30
002997c0bl runtime.morestack_noctxt.abi0
002997c4ldp x0, x1, [sp+8]
002997c8b 0x299710
002997ccudf 0
00299710
00299710crypto/elliptic.zForAffine: ; void crypto/elliptic.zForAffine(math/big.Int * x, math/big.Int * y)
00299710ldr x16, [x28+16]
00299714subs xzr, sp, x16
00299718b.ls 0x2997b8
0029971cstr x30, [sp-80]!
00299720stur x29, [sp-8]
00299724sub x29, sp, 8
00299728str x0, [sp+88]
0029972cstr x1, [sp+96]
00299730str xzr, [sp+56]
00299734adrp x0, 0x3ac000
00299738add x0, x0, 1024
0029973cbl runtime.newobject
00299740str x0, [sp+64]
00299744ldr x0, [sp+88]
00299748bl math/big.(*Int).Sign
0029974cstr x0, [sp+48]
00299750subs xzr, x0, 0
00299754cset x1, ne
00299758strb w1, [sp+39]
0029975ccbnz x0, 0x299764
00299760b 0x299768
00299764
00299764loc_299764:
00299764b 0x299784
00299768
00299768loc_299768:
00299768ldr x0, [sp+96]
0029976cbl math/big.(*Int).Sign
00299770str x0, [sp+40]
00299774subs xzr, x0, 0
00299778cset x1, ne
0029977cstrb w1, [sp+39]
00299780b 0x299784
00299784
00299784loc_299784:
00299784ldrb w2, [sp+39]
00299788tbnz w2, 0, 0x299790
0029978cb 0x2997a0
00299790
00299790loc_299790:
00299790ldr x0, [sp+64]
00299794orr x1, xzr, 1
00299798bl math/big.(*Int).SetInt64
0029979cb 0x2997a4
002997a0
002997a0loc_2997a0:
002997a0b 0x2997a4
002997a4
002997a4loc_2997a4:
002997a4ldr x0, [sp+64]
002997a8str x0, [sp+56]
002997acldur x29, [sp-8]
002997b0ldr x30, [sp], 80
002997b4ret x30
002997b8
002997b8loc_2997b8:
002997b8stp x0, x1, [sp+8]
002997bcmov x3, x30
002997c0bl runtime.morestack_noctxt.abi0
002997c4ldp x0, x1, [sp+8]
002997c8b 0x299710
002997ccudf 0
00299710
002997d0
002997d0crypto/elliptic.(*CurveParams).affineFromJacobian: ; void crypto/elliptic.(*CurveParams).affineFromJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y, math/big.Int * z)
002997d0ldr x16, [x28+16]
002997d4sub x17, sp, 64
002997d8subs xzr, x17, x16
002997dcb.ls 0x29994c
002997e0str x30, [sp-192]!
002997e4stur x29, [sp-8]
002997e8sub x29, sp, 8
002997ecstr x0, [sp+200]
002997f0str x1, [sp+208]
002997f4str x2, [sp+216]
002997f8str x3, [sp+224]
002997fcstr xzr, [sp+72]
00299800str xzr, [sp+64]
00299804ldr x0, [sp+224]
00299808bl math/big.(*Int).Sign
0029980cstr x0, [sp+40]
00299810cbz x0, 0x299818
00299814b 0x299858
00299818
00299818loc_299818:
00299818adrp x0, 0x3ac000
0029981cadd x0, x0, 1024
00299820bl runtime.newobject
00299824str x0, [sp+80]
00299828adrp x0, 0x3ac000
0029982cadd x0, x0, 1024
00299830bl runtime.newobject
00299834str x0, [sp+176]
00299838ldr x1, [sp+80]
0029983cstr x1, [sp+72]
00299840ldr x1, [sp+176]
00299844str x1, [sp+64]
00299848ldr x0, [sp+72]
0029984cldur x29, [sp-8]
00299850ldr x30, [sp], 192
00299854ret x30
00299858
00299858loc_299858:
00299858strb wzr, [sp+144]
0029985cstr xzr, [sp+152]
00299860stp xzr, xzr, [sp+160]
00299864add x3, sp, 144
00299868str x3, [sp+176]
0029986cldr x3, [sp+200]
00299870ldrsb x27, [x3]
00299874ldr x2, [x3]
00299878str x2, [sp+136]
0029987cldr x1, [sp+224]
00299880ldr x0, [sp+176]
00299884bl math/big.(*Int).ModInverse
00299888str x0, [sp+56]
0029988cstrb wzr, [sp+104]
00299890str xzr, [sp+112]
00299894stp xzr, xzr, [sp+120]
00299898add x0, sp, 104
0029989cstr x0, [sp+176]
002998a0ldr x1, [sp+56]
002998a4ldr x2, [sp+56]
002998a8bl math/big.(*Int).Mul
002998acstr x0, [sp+48]
002998b0adrp x0, 0x3ac000
002998b4add x0, x0, 1024
002998b8bl runtime.newobject
002998bcstr x0, [sp+176]
002998c0ldr x1, [sp+208]
002998c4ldr x2, [sp+48]
002998c8bl math/big.(*Int).Mul
002998ccstr x0, [sp+72]
002998d0ldr x3, [sp+200]
002998d4ldrsb x27, [x3]
002998d8ldr x2, [x3]
002998dcstr x2, [sp+96]
002998e0ldr x0, [sp+72]
002998e4ldr x1, [sp+72]
002998e8bl math/big.(*Int).Mod
002998ecldr x1, [sp+48]
002998f0ldr x2, [sp+56]
002998f4ldr x0, [sp+48]
002998f8bl math/big.(*Int).Mul
002998fcadrp x0, 0x3ac000
00299900add x0, x0, 1024
00299904bl runtime.newobject
00299908str x0, [sp+176]
0029990cldr x1, [sp+216]
00299910ldr x2, [sp+48]
00299914bl math/big.(*Int).Mul
00299918str x0, [sp+64]
0029991cldr x3, [sp+200]
00299920ldrsb x27, [x3]
00299924ldr x2, [x3]
00299928str x2, [sp+88]
0029992cldr x0, [sp+64]
00299930ldr x1, [sp+64]
00299934bl math/big.(*Int).Mod
00299938ldr x1, [sp+64]
0029993cldr x0, [sp+72]
00299940ldur x29, [sp-8]
00299944ldr x30, [sp], 192
00299948ret x30
0029994c
0029994cloc_29994c:
0029994cstp x0, x1, [sp+8]
00299950stp x2, x3, [sp+24]
00299954mov x3, x30
00299958bl runtime.morestack_noctxt.abi0
0029995cldp x0, x1, [sp+8]
00299960ldp x2, x3, [sp+24]
00299964b 0x2997d0
00299968udf 0
0029996cudf 0
002997d0
002997d0crypto/elliptic.(*CurveParams).affineFromJacobian: ; void crypto/elliptic.(*CurveParams).affineFromJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y, math/big.Int * z)
002997d0ldr x16, [x28+16]
002997d4sub x17, sp, 64
002997d8subs xzr, x17, x16
002997dcb.ls 0x29994c
002997e0str x30, [sp-192]!
002997e4stur x29, [sp-8]
002997e8sub x29, sp, 8
002997ecstr x0, [sp+200]
002997f0str x1, [sp+208]
002997f4str x2, [sp+216]
002997f8str x3, [sp+224]
002997fcstr xzr, [sp+72]
00299800str xzr, [sp+64]
00299804ldr x0, [sp+224]
00299808bl math/big.(*Int).Sign
0029980cstr x0, [sp+40]
00299810cbz x0, 0x299818
00299814b 0x299858
00299818
00299818loc_299818:
00299818adrp x0, 0x3ac000
0029981cadd x0, x0, 1024
00299820bl runtime.newobject
00299824str x0, [sp+80]
00299828adrp x0, 0x3ac000
0029982cadd x0, x0, 1024
00299830bl runtime.newobject
00299834str x0, [sp+176]
00299838ldr x1, [sp+80]
0029983cstr x1, [sp+72]
00299840ldr x1, [sp+176]
00299844str x1, [sp+64]
00299848ldr x0, [sp+72]
0029984cldur x29, [sp-8]
00299850ldr x30, [sp], 192
00299854ret x30
00299858
00299858loc_299858:
00299858strb wzr, [sp+144]
0029985cstr xzr, [sp+152]
00299860stp xzr, xzr, [sp+160]
00299864add x3, sp, 144
00299868str x3, [sp+176]
0029986cldr x3, [sp+200]
00299870ldrsb x27, [x3]
00299874ldr x2, [x3]
00299878str x2, [sp+136]
0029987cldr x1, [sp+224]
00299880ldr x0, [sp+176]
00299884bl math/big.(*Int).ModInverse
00299888str x0, [sp+56]
0029988cstrb wzr, [sp+104]
00299890str xzr, [sp+112]
00299894stp xzr, xzr, [sp+120]
00299898add x0, sp, 104
0029989cstr x0, [sp+176]
002998a0ldr x1, [sp+56]
002998a4ldr x2, [sp+56]
002998a8bl math/big.(*Int).Mul
002998acstr x0, [sp+48]
002998b0adrp x0, 0x3ac000
002998b4add x0, x0, 1024
002998b8bl runtime.newobject
002998bcstr x0, [sp+176]
002998c0ldr x1, [sp+208]
002998c4ldr x2, [sp+48]
002998c8bl math/big.(*Int).Mul
002998ccstr x0, [sp+72]
002998d0ldr x3, [sp+200]
002998d4ldrsb x27, [x3]
002998d8ldr x2, [x3]
002998dcstr x2, [sp+96]
002998e0ldr x0, [sp+72]
002998e4ldr x1, [sp+72]
002998e8bl math/big.(*Int).Mod
002998ecldr x1, [sp+48]
002998f0ldr x2, [sp+56]
002998f4ldr x0, [sp+48]
002998f8bl math/big.(*Int).Mul
002998fcadrp x0, 0x3ac000
00299900add x0, x0, 1024
00299904bl runtime.newobject
00299908str x0, [sp+176]
0029990cldr x1, [sp+216]
00299910ldr x2, [sp+48]
00299914bl math/big.(*Int).Mul
00299918str x0, [sp+64]
0029991cldr x3, [sp+200]
00299920ldrsb x27, [x3]
00299924ldr x2, [x3]
00299928str x2, [sp+88]
0029992cldr x0, [sp+64]
00299930ldr x1, [sp+64]
00299934bl math/big.(*Int).Mod
00299938ldr x1, [sp+64]
0029993cldr x0, [sp+72]
00299940ldur x29, [sp-8]
00299944ldr x30, [sp], 192
00299948ret x30
0029994c
0029994cloc_29994c:
0029994cstp x0, x1, [sp+8]
00299950stp x2, x3, [sp+24]
00299954mov x3, x30
00299958bl runtime.morestack_noctxt.abi0
0029995cldp x0, x1, [sp+8]
00299960ldp x2, x3, [sp+24]
00299964b 0x2997d0
00299968udf 0
0029996cudf 0
002997d0
00299970
00299970crypto/elliptic.(*CurveParams).Add: ; void crypto/elliptic.(*CurveParams).Add(crypto/elliptic.CurveParams * curve, math/big.Int * x1, math/big.Int * y1, math/big.Int * x2, math/big.Int * y2)
00299970ldr x16, [x28+16]
00299974sub x17, sp, 112
00299978subs xzr, x17, x16
0029997cb.ls 0x299b50
00299980str x30, [sp-240]!
00299984stur x29, [sp-8]
00299988sub x29, sp, 8
0029998cstr x0, [sp+248]
00299990str x1, [sp+256]
00299994str x2, [sp+264]
00299998str x3, [sp+272]
0029999cstr x4, [sp+280]
002999a0str xzr, [sp+80]
002999a4str xzr, [sp+72]
002999a8stp xzr, xzr, [sp+160]
002999acldr x0, [sp+248]
002999b0bl crypto/elliptic.matchesSpecificCurve
002999b4str x0, [sp+160]
002999b8str x1, [sp+168]
002999bcstrb w2, [sp+70]
002999c0ldr x1, [sp+160]
002999c4ldr x2, [sp+168]
002999c8str x1, [sp+120]
002999ccstr x2, [sp+128]
002999d0ldrb w1, [sp+70]
002999d4strb w1, [sp+71]
002999d8ldr x1, [sp+120]
002999dcldr x2, [sp+128]
002999e0str x1, [sp+104]
002999e4str x2, [sp+112]
002999e8ldrb w1, [sp+71]
002999ecstrb w1, [sp+69]
002999f0tbnz w1, 0, 0x2999f8
002999f4b 0x299a5c
002999f8
002999f8loc_2999f8:
002999f8str xzr, [sp+152]
002999fcstr xzr, [sp+144]
00299a00ldr x1, [sp+256]
00299a04ldr x2, [sp+264]
00299a08ldr x3, [sp+272]
00299a0cldr x4, [sp+280]
00299a10ldr x5, [sp+104]
00299a14ldrsb x27, [x5]
00299a18ldr x5, [x5+24]
00299a1cldr x0, [sp+112]
00299a20blr x5
00299a24str x0, [sp+152]
00299a28str x1, [sp+144]
00299a2cldr x5, [sp+152]
00299a30str x5, [sp+224]
00299a34ldr x5, [sp+144]
00299a38str x5, [sp+216]
00299a3cldr x5, [sp+224]
00299a40str x5, [sp+80]
00299a44ldr x1, [sp+216]
00299a48str x1, [sp+72]
00299a4cldr x0, [sp+80]
00299a50ldur x29, [sp-8]
00299a54ldr x30, [sp], 240
00299a58ret x30
00299a5c
00299a5cloc_299a5c:
00299a5cldr x2, [sp+256]
00299a60ldr x3, [sp+264]
00299a64ldr x1, [sp+248]
00299a68adrp x0, 0x481000
00299a6cadd x0, x0, 648
00299a70bl crypto/elliptic.panicIfNotOnCurve
00299a74ldr x2, [sp+272]
00299a78ldr x3, [sp+280]
00299a7cldr x1, [sp+248]
00299a80adrp x0, 0x481000
00299a84add x0, x0, 648
00299a88bl crypto/elliptic.panicIfNotOnCurve
00299a8cldr x1, [sp+264]
00299a90ldr x0, [sp+256]
00299a94bl crypto/elliptic.zForAffine
00299a98str x0, [sp+96]
00299a9cldr x1, [sp+280]
00299aa0ldr x0, [sp+272]
00299aa4bl crypto/elliptic.zForAffine
00299aa8str x0, [sp+88]
00299aacstr xzr, [sp+144]
00299ab0str xzr, [sp+152]
00299ab4str xzr, [sp+136]
00299ab8ldr x1, [sp+256]
00299abcldr x2, [sp+264]
00299ac0ldr x3, [sp+96]
00299ac4ldr x4, [sp+272]
00299ac8ldr x5, [sp+280]
00299accldr x6, [sp+88]
00299ad0ldr x0, [sp+248]
00299ad4bl crypto/elliptic.(*CurveParams).addJacobian
00299ad8str x0, [sp+144]
00299adcstr x1, [sp+152]
00299ae0str x2, [sp+136]
00299ae4ldr x4, [sp+144]
00299ae8str x4, [sp+208]
00299aecldr x4, [sp+152]
00299af0str x4, [sp+200]
00299af4ldr x4, [sp+136]
00299af8str x4, [sp+192]
00299afcstr xzr, [sp+136]
00299b00str xzr, [sp+152]
00299b04ldr x0, [sp+248]
00299b08ldr x1, [sp+208]
00299b0cldr x2, [sp+200]
00299b10ldr x3, [sp+192]
00299b14bl crypto/elliptic.(*CurveParams).affineFromJacobian
00299b18str x0, [sp+136]
00299b1cstr x1, [sp+152]
00299b20ldr x4, [sp+136]
00299b24str x4, [sp+184]
00299b28ldr x4, [sp+152]
00299b2cstr x4, [sp+176]
00299b30ldr x4, [sp+184]
00299b34str x4, [sp+80]
00299b38ldr x1, [sp+176]
00299b3cstr x1, [sp+72]
00299b40ldr x0, [sp+80]
00299b44ldur x29, [sp-8]
00299b48ldr x30, [sp], 240
00299b4cret x30
00299b50
00299b50loc_299b50:
00299b50stp x0, x1, [sp+8]
00299b54stp x2, x3, [sp+24]
00299b58str x4, [sp+40]
00299b5cmov x3, x30
00299b60bl runtime.morestack_noctxt.abi0
00299b64ldp x0, x1, [sp+8]
00299b68ldp x2, x3, [sp+24]
00299b6cldr x4, [sp+40]
00299b70b 0x299970
00299b74udf 0
00299b78udf 0
00299b7cudf 0
00299970
00299970crypto/elliptic.(*CurveParams).Add: ; void crypto/elliptic.(*CurveParams).Add(crypto/elliptic.CurveParams * curve, math/big.Int * x1, math/big.Int * y1, math/big.Int * x2, math/big.Int * y2)
00299970ldr x16, [x28+16]
00299974sub x17, sp, 112
00299978subs xzr, x17, x16
0029997cb.ls 0x299b50
00299980str x30, [sp-240]!
00299984stur x29, [sp-8]
00299988sub x29, sp, 8
0029998cstr x0, [sp+248]
00299990str x1, [sp+256]
00299994str x2, [sp+264]
00299998str x3, [sp+272]
0029999cstr x4, [sp+280]
002999a0str xzr, [sp+80]
002999a4str xzr, [sp+72]
002999a8stp xzr, xzr, [sp+160]
002999acldr x0, [sp+248]
002999b0bl crypto/elliptic.matchesSpecificCurve
002999b4str x0, [sp+160]
002999b8str x1, [sp+168]
002999bcstrb w2, [sp+70]
002999c0ldr x1, [sp+160]
002999c4ldr x2, [sp+168]
002999c8str x1, [sp+120]
002999ccstr x2, [sp+128]
002999d0ldrb w1, [sp+70]
002999d4strb w1, [sp+71]
002999d8ldr x1, [sp+120]
002999dcldr x2, [sp+128]
002999e0str x1, [sp+104]
002999e4str x2, [sp+112]
002999e8ldrb w1, [sp+71]
002999ecstrb w1, [sp+69]
002999f0tbnz w1, 0, 0x2999f8
002999f4b 0x299a5c
002999f8
002999f8loc_2999f8:
002999f8str xzr, [sp+152]
002999fcstr xzr, [sp+144]
00299a00ldr x1, [sp+256]
00299a04ldr x2, [sp+264]
00299a08ldr x3, [sp+272]
00299a0cldr x4, [sp+280]
00299a10ldr x5, [sp+104]
00299a14ldrsb x27, [x5]
00299a18ldr x5, [x5+24]
00299a1cldr x0, [sp+112]
00299a20blr x5
00299a24str x0, [sp+152]
00299a28str x1, [sp+144]
00299a2cldr x5, [sp+152]
00299a30str x5, [sp+224]
00299a34ldr x5, [sp+144]
00299a38str x5, [sp+216]
00299a3cldr x5, [sp+224]
00299a40str x5, [sp+80]
00299a44ldr x1, [sp+216]
00299a48str x1, [sp+72]
00299a4cldr x0, [sp+80]
00299a50ldur x29, [sp-8]
00299a54ldr x30, [sp], 240
00299a58ret x30
00299a5c
00299a5cloc_299a5c:
00299a5cldr x2, [sp+256]
00299a60ldr x3, [sp+264]
00299a64ldr x1, [sp+248]
00299a68adrp x0, 0x481000
00299a6cadd x0, x0, 648
00299a70bl crypto/elliptic.panicIfNotOnCurve
00299a74ldr x2, [sp+272]
00299a78ldr x3, [sp+280]
00299a7cldr x1, [sp+248]
00299a80adrp x0, 0x481000
00299a84add x0, x0, 648
00299a88bl crypto/elliptic.panicIfNotOnCurve
00299a8cldr x1, [sp+264]
00299a90ldr x0, [sp+256]
00299a94bl crypto/elliptic.zForAffine
00299a98str x0, [sp+96]
00299a9cldr x1, [sp+280]
00299aa0ldr x0, [sp+272]
00299aa4bl crypto/elliptic.zForAffine
00299aa8str x0, [sp+88]
00299aacstr xzr, [sp+144]
00299ab0str xzr, [sp+152]
00299ab4str xzr, [sp+136]
00299ab8ldr x1, [sp+256]
00299abcldr x2, [sp+264]
00299ac0ldr x3, [sp+96]
00299ac4ldr x4, [sp+272]
00299ac8ldr x5, [sp+280]
00299accldr x6, [sp+88]
00299ad0ldr x0, [sp+248]
00299ad4bl crypto/elliptic.(*CurveParams).addJacobian
00299ad8str x0, [sp+144]
00299adcstr x1, [sp+152]
00299ae0str x2, [sp+136]
00299ae4ldr x4, [sp+144]
00299ae8str x4, [sp+208]
00299aecldr x4, [sp+152]
00299af0str x4, [sp+200]
00299af4ldr x4, [sp+136]
00299af8str x4, [sp+192]
00299afcstr xzr, [sp+136]
00299b00str xzr, [sp+152]
00299b04ldr x0, [sp+248]
00299b08ldr x1, [sp+208]
00299b0cldr x2, [sp+200]
00299b10ldr x3, [sp+192]
00299b14bl crypto/elliptic.(*CurveParams).affineFromJacobian
00299b18str x0, [sp+136]
00299b1cstr x1, [sp+152]
00299b20ldr x4, [sp+136]
00299b24str x4, [sp+184]
00299b28ldr x4, [sp+152]
00299b2cstr x4, [sp+176]
00299b30ldr x4, [sp+184]
00299b34str x4, [sp+80]
00299b38ldr x1, [sp+176]
00299b3cstr x1, [sp+72]
00299b40ldr x0, [sp+80]
00299b44ldur x29, [sp-8]
00299b48ldr x30, [sp], 240
00299b4cret x30
00299b50
00299b50loc_299b50:
00299b50stp x0, x1, [sp+8]
00299b54stp x2, x3, [sp+24]
00299b58str x4, [sp+40]
00299b5cmov x3, x30
00299b60bl runtime.morestack_noctxt.abi0
00299b64ldp x0, x1, [sp+8]
00299b68ldp x2, x3, [sp+24]
00299b6cldr x4, [sp+40]
00299b70b 0x299970
00299b74udf 0
00299b78udf 0
00299b7cudf 0
00299970
00299b80
00299b80crypto/elliptic.(*CurveParams).addJacobian: ; void crypto/elliptic.(*CurveParams).addJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x1, math/big.Int * y1, math/big.Int * z1, math/big.Int * x2, math/big.Int * y2, math/big.Int * z2)
00299b80ldr x16, [x28+16]
00299b84sub x17, sp, 560
00299b88subs xzr, x17, x16
00299b8cb.ls 0x29a1fc
00299b90sub x20, sp, 688
00299b94stp x29, x30, [x20-8]
00299b98add sp, x20, 0
00299b9csub x29, sp, 8
00299ba0str x0, [sp+696]
00299ba4str x1, [sp+704]
00299ba8str x2, [sp+712]
00299bacstr x3, [sp+720]
00299bb0str x4, [sp+728]
00299bb4str x5, [sp+736]
00299bb8str x6, [sp+744]
00299bbcstr xzr, [sp+72]
00299bc0str xzr, [sp+64]
00299bc4str xzr, [sp+56]
00299bc8adrp x0, 0x3ac000
00299bccadd x0, x0, 1024
00299bd0bl runtime.newobject
00299bd4str x0, [sp+648]
00299bd8adrp x0, 0x3ac000
00299bdcadd x0, x0, 1024
00299be0bl runtime.newobject
00299be4str x0, [sp+640]
00299be8adrp x0, 0x3ac000
00299becadd x0, x0, 1024
00299bf0bl runtime.newobject
00299bf4str x0, [sp+632]
00299bf8ldr x1, [sp+648]
00299bfcstr x1, [sp+112]
00299c00ldr x1, [sp+640]
00299c04str x1, [sp+104]
00299c08ldr x1, [sp+632]
00299c0cstr x1, [sp+80]
00299c10ldr x0, [sp+720]
00299c14bl math/big.(*Int).Sign
00299c18str x0, [sp+48]
00299c1ccbz x0, 0x299c24
00299c20b 0x299c74
00299c24
00299c24loc_299c24:
00299c24ldr x1, [sp+728]
00299c28ldr x0, [sp+112]
00299c2cbl math/big.(*Int).Set
00299c30ldr x1, [sp+736]
00299c34ldr x0, [sp+104]
00299c38bl math/big.(*Int).Set
00299c3cldr x1, [sp+744]
00299c40ldr x0, [sp+80]
00299c44bl math/big.(*Int).Set
00299c48ldr x2, [sp+112]
00299c4cstr x2, [sp+72]
00299c50ldr x2, [sp+104]
00299c54str x2, [sp+64]
00299c58ldr x2, [sp+80]
00299c5cstr x2, [sp+56]
00299c60ldr x0, [sp+72]
00299c64ldr x1, [sp+64]
00299c68ldp x29, x30, [sp-8]
00299c6cadd sp, sp, 688
00299c70ret x30
00299c74
00299c74loc_299c74:
00299c74ldr x0, [sp+744]
00299c78bl math/big.(*Int).Sign
00299c7cstr x0, [sp+48]
00299c80cbz x0, 0x299c88
00299c84b 0x299cd8
00299c88
00299c88loc_299c88:
00299c88ldr x1, [sp+704]
00299c8cldr x0, [sp+112]
00299c90bl math/big.(*Int).Set
00299c94ldr x1, [sp+712]
00299c98ldr x0, [sp+104]
00299c9cbl math/big.(*Int).Set
00299ca0ldr x1, [sp+720]
00299ca4ldr x0, [sp+80]
00299ca8bl math/big.(*Int).Set
00299cacldr x2, [sp+112]
00299cb0str x2, [sp+72]
00299cb4ldr x2, [sp+104]
00299cb8str x2, [sp+64]
00299cbcldr x2, [sp+80]
00299cc0str x2, [sp+56]
00299cc4ldr x0, [sp+72]
00299cc8ldr x1, [sp+64]
00299cccldp x29, x30, [sp-8]
00299cd0add sp, sp, 688
00299cd4ret x30
00299cd8
00299cd8loc_299cd8:
00299cd8strb wzr, [sp+600]
00299cdcstr xzr, [sp+608]
00299ce0add x27, sp, 616
00299ce4stp xzr, xzr, [x27]
00299ce8add x0, sp, 600
00299cecstr x0, [sp+632]
00299cf0ldr x1, [sp+720]
00299cf4ldr x2, [sp+720]
00299cf8bl math/big.(*Int).Mul
00299cfcstr x0, [sp+96]
00299d00ldr x3, [sp+696]
00299d04ldrsb x27, [x3]
00299d08ldr x2, [x3]
00299d0cstr x2, [sp+592]
00299d10ldr x0, [sp+96]
00299d14ldr x1, [sp+96]
00299d18bl math/big.(*Int).Mod
00299d1cstrb wzr, [sp+560]
00299d20str xzr, [sp+568]
00299d24add x27, sp, 576
00299d28stp xzr, xzr, [x27]
00299d2cadd x0, sp, 560
00299d30str x0, [sp+632]
00299d34ldr x1, [sp+744]
00299d38ldr x2, [sp+744]
00299d3cbl math/big.(*Int).Mul
00299d40str x0, [sp+88]
00299d44ldr x3, [sp+696]
00299d48ldrsb x27, [x3]
00299d4cldr x2, [x3]
00299d50str x2, [sp+552]
00299d54ldr x0, [sp+88]
00299d58ldr x1, [sp+88]
00299d5cbl math/big.(*Int).Mod
00299d60strb wzr, [sp+520]
00299d64str xzr, [sp+528]
00299d68add x27, sp, 536
00299d6cstp xzr, xzr, [x27]
00299d70add x0, sp, 520
00299d74str x0, [sp+632]
00299d78ldr x1, [sp+704]
00299d7cldr x2, [sp+88]
00299d80bl math/big.(*Int).Mul
00299d84str x0, [sp+136]
00299d88ldr x3, [sp+696]
00299d8cldrsb x27, [x3]
00299d90ldr x2, [x3]
00299d94str x2, [sp+512]
00299d98ldr x0, [sp+136]
00299d9cldr x1, [sp+136]
00299da0bl math/big.(*Int).Mod
00299da4strb wzr, [sp+480]
00299da8str xzr, [sp+488]
00299dacstp xzr, xzr, [sp+496]
00299db0add x0, sp, 480
00299db4str x0, [sp+632]
00299db8ldr x1, [sp+728]
00299dbcldr x2, [sp+96]
00299dc0bl math/big.(*Int).Mul
00299dc4str x0, [sp+128]
00299dc8ldr x3, [sp+696]
00299dccldrsb x27, [x3]
00299dd0ldr x2, [x3]
00299dd4str x2, [sp+472]
00299dd8ldr x0, [sp+128]
00299ddcldr x1, [sp+128]
00299de0bl math/big.(*Int).Mod
00299de4strb wzr, [sp+440]
00299de8str xzr, [sp+448]
00299decstp xzr, xzr, [sp+456]
00299df0add x0, sp, 440
00299df4str x0, [sp+632]
00299df8ldr x1, [sp+128]
00299dfcldr x2, [sp+136]
00299e00bl math/big.(*Int).Sub
00299e04str x0, [sp+184]
00299e08bl math/big.(*Int).Sign
00299e0cstr x0, [sp+48]
00299e10subs xzr, x0, 0
00299e14cset x3, eq
00299e18strb w3, [sp+46]
00299e1cldr x0, [sp+184]
00299e20bl math/big.(*Int).Sign
00299e24str x0, [sp+48]
00299e28adds xzr, x0, 1
00299e2cb.eq 0x299e34
00299e30b 0x299e54
00299e34
00299e34loc_299e34:
00299e34ldr x3, [sp+696]
00299e38ldrsb x27, [x3]
00299e3cldr x2, [x3]
00299e40str x2, [sp+432]
00299e44ldr x0, [sp+184]
00299e48ldr x1, [sp+184]
00299e4cbl math/big.(*Int).Add
00299e50b 0x299e58
00299e54
00299e54loc_299e54:
00299e54b 0x299e58
00299e58
00299e58loc_299e58:
00299e58strb wzr, [sp+400]
00299e5cstr xzr, [sp+408]
00299e60stp xzr, xzr, [sp+416]
00299e64add x0, sp, 400
00299e68str x0, [sp+632]
00299e6cldr x1, [sp+184]
00299e70orr x2, xzr, 1
00299e74bl math/big.(*Int).Lsh
00299e78str x0, [sp+176]
00299e7cmov x1, x0
00299e80mov x2, x0
00299e84bl math/big.(*Int).Mul
00299e88strb wzr, [sp+368]
00299e8cstr xzr, [sp+376]
00299e90stp xzr, xzr, [sp+384]
00299e94add x0, sp, 368
00299e98str x0, [sp+632]
00299e9cldr x1, [sp+184]
00299ea0ldr x2, [sp+176]
00299ea4bl math/big.(*Int).Mul
00299ea8str x0, [sp+168]
00299eacstrb wzr, [sp+336]
00299eb0str xzr, [sp+344]
00299eb4stp xzr, xzr, [sp+352]
00299eb8add x0, sp, 336
00299ebcstr x0, [sp+632]
00299ec0ldr x1, [sp+712]
00299ec4ldr x2, [sp+744]
00299ec8bl math/big.(*Int).Mul
00299eccstr x0, [sp+152]
00299ed0ldr x2, [sp+88]
00299ed4mov x1, x0
00299ed8bl math/big.(*Int).Mul
00299edcldr x3, [sp+696]
00299ee0ldrsb x27, [x3]
00299ee4ldr x2, [x3]
00299ee8str x2, [sp+328]
00299eecldr x0, [sp+152]
00299ef0ldr x1, [sp+152]
00299ef4bl math/big.(*Int).Mod
00299ef8strb wzr, [sp+296]
00299efcstr xzr, [sp+304]
00299f00stp xzr, xzr, [sp+312]
00299f04add x0, sp, 296
00299f08str x0, [sp+632]
00299f0cldr x1, [sp+736]
00299f10ldr x2, [sp+720]
00299f14bl math/big.(*Int).Mul
00299f18str x0, [sp+144]
00299f1cldr x2, [sp+96]
00299f20mov x1, x0
00299f24bl math/big.(*Int).Mul
00299f28ldr x3, [sp+696]
00299f2cldrsb x27, [x3]
00299f30ldr x2, [x3]
00299f34str x2, [sp+288]
00299f38ldr x0, [sp+144]
00299f3cldr x1, [sp+144]
00299f40bl math/big.(*Int).Mod
00299f44strb wzr, [sp+256]
00299f48str xzr, [sp+264]
00299f4cstp xzr, xzr, [sp+272]
00299f50add x0, sp, 256
00299f54str x0, [sp+632]
00299f58ldr x1, [sp+144]
00299f5cldr x2, [sp+152]
00299f60bl math/big.(*Int).Sub
00299f64str x0, [sp+160]
00299f68bl math/big.(*Int).Sign
00299f6cstr x0, [sp+48]
00299f70adds xzr, x0, 1
00299f74b.eq 0x299f7c
00299f78b 0x299f9c
00299f7c
00299f7cloc_299f7c:
00299f7cldr x3, [sp+696]
00299f80ldrsb x27, [x3]
00299f84ldr x2, [x3]
00299f88str x2, [sp+248]
00299f8cldr x0, [sp+160]
00299f90ldr x1, [sp+160]
00299f94bl math/big.(*Int).Add
00299f98b 0x299fa0
00299f9c
00299f9cloc_299f9c:
00299f9cb 0x299fa0
00299fa0
00299fa0loc_299fa0:
00299fa0ldr x0, [sp+160]
00299fa4bl math/big.(*Int).Sign
00299fa8str x0, [sp+48]
00299facsubs xzr, x0, 0
00299fb0cset x1, eq
00299fb4strb w1, [sp+45]
00299fb8ldrb w2, [sp+46]
00299fbcstrb w2, [sp+47]
00299fc0tbnz w2, 0, 0x299fc8
00299fc4b 0x299fd0
00299fc8
00299fc8loc_299fc8:
00299fc8strb w1, [sp+47]
00299fccb 0x299fd4
00299fd0
00299fd0loc_299fd0:
00299fd0b 0x299fd4
00299fd4
00299fd4loc_299fd4:
00299fd4ldrb w4, [sp+47]
00299fd8tbnz w4, 0, 0x299fe0
00299fdcb 0x29a050
00299fe0
00299fe0loc_299fe0:
00299fe0str xzr, [sp+632]
00299fe4str xzr, [sp+640]
00299fe8str xzr, [sp+648]
00299fecldr x1, [sp+704]
00299ff0ldr x2, [sp+712]
00299ff4ldr x3, [sp+720]
00299ff8ldr x0, [sp+696]
00299ffcbl crypto/elliptic.(*CurveParams).doubleJacobian
0029a000str x0, [sp+632]
0029a004str x1, [sp+640]
0029a008str x2, [sp+648]
0029a00cldr x4, [sp+632]
0029a010str x4, [sp+672]
0029a014ldr x4, [sp+640]
0029a018str x4, [sp+664]
0029a01cldr x4, [sp+648]
0029a020str x4, [sp+656]
0029a024ldr x4, [sp+672]
0029a028str x4, [sp+72]
0029a02cldr x4, [sp+664]
0029a030str x4, [sp+64]
0029a034ldr x2, [sp+656]
0029a038str x2, [sp+56]
0029a03cldr x0, [sp+72]
0029a040ldr x1, [sp+64]
0029a044ldp x29, x30, [sp-8]
0029a048add sp, sp, 688
0029a04cret x30
0029a050
0029a050loc_29a050:
0029a050ldr x1, [sp+160]
0029a054ldr x0, [sp+160]
0029a058orr x2, xzr, 1
0029a05cbl math/big.(*Int).Lsh
0029a060strb wzr, [sp+216]
0029a064str xzr, [sp+224]
0029a068stp xzr, xzr, [sp+232]
0029a06cadd x0, sp, 216
0029a070str x0, [sp+648]
0029a074ldr x1, [sp+136]
0029a078ldr x2, [sp+176]
0029a07cbl math/big.(*Int).Mul
0029a080str x0, [sp+120]
0029a084ldr x1, [sp+160]
0029a088ldr x0, [sp+112]
0029a08cbl math/big.(*Int).Set
0029a090ldr x1, [sp+112]
0029a094ldr x2, [sp+112]
0029a098ldr x0, [sp+112]
0029a09cbl math/big.(*Int).Mul
0029a0a0ldr x1, [sp+112]
0029a0a4ldr x2, [sp+168]
0029a0a8ldr x0, [sp+112]
0029a0acbl math/big.(*Int).Sub
0029a0b0ldr x1, [sp+112]
0029a0b4ldr x2, [sp+120]
0029a0b8ldr x0, [sp+112]
0029a0bcbl math/big.(*Int).Sub
0029a0c0ldr x1, [sp+112]
0029a0c4ldr x2, [sp+120]
0029a0c8ldr x0, [sp+112]
0029a0ccbl math/big.(*Int).Sub
0029a0d0ldr x3, [sp+696]
0029a0d4ldrsb x27, [x3]
0029a0d8ldr x2, [x3]
0029a0dcstr x2, [sp+208]
0029a0e0ldr x0, [sp+112]
0029a0e4ldr x1, [sp+112]
0029a0e8bl math/big.(*Int).Mod
0029a0ecldr x1, [sp+160]
0029a0f0ldr x0, [sp+104]
0029a0f4bl math/big.(*Int).Set
0029a0f8ldr x1, [sp+120]
0029a0fcldr x2, [sp+112]
0029a100ldr x0, [sp+120]
0029a104bl math/big.(*Int).Sub
0029a108ldr x1, [sp+104]
0029a10cldr x2, [sp+120]
0029a110ldr x0, [sp+104]
0029a114bl math/big.(*Int).Mul
0029a118ldr x1, [sp+152]
0029a11cldr x2, [sp+168]
0029a120ldr x0, [sp+152]
0029a124bl math/big.(*Int).Mul
0029a128ldr x1, [sp+152]
0029a12cldr x0, [sp+152]
0029a130orr x2, xzr, 1
0029a134bl math/big.(*Int).Lsh
0029a138ldr x1, [sp+104]
0029a13cldr x2, [sp+152]
0029a140ldr x0, [sp+104]
0029a144bl math/big.(*Int).Sub
0029a148ldr x3, [sp+696]
0029a14cldrsb x27, [x3]
0029a150ldr x2, [x3]
0029a154str x2, [sp+200]
0029a158ldr x0, [sp+104]
0029a15cldr x1, [sp+104]
0029a160bl math/big.(*Int).Mod
0029a164ldr x1, [sp+720]
0029a168ldr x2, [sp+744]
0029a16cldr x0, [sp+80]
0029a170bl math/big.(*Int).Add
0029a174ldr x1, [sp+80]
0029a178ldr x2, [sp+80]
0029a17cldr x0, [sp+80]
0029a180bl math/big.(*Int).Mul
0029a184ldr x1, [sp+80]
0029a188ldr x2, [sp+96]
0029a18cldr x0, [sp+80]
0029a190bl math/big.(*Int).Sub
0029a194ldr x1, [sp+80]
0029a198ldr x2, [sp+88]
0029a19cldr x0, [sp+80]
0029a1a0bl math/big.(*Int).Sub
0029a1a4ldr x1, [sp+80]
0029a1a8ldr x2, [sp+184]
0029a1acldr x0, [sp+80]
0029a1b0bl math/big.(*Int).Mul
0029a1b4ldr x3, [sp+696]
0029a1b8ldrsb x27, [x3]
0029a1bcldr x2, [x3]
0029a1c0str x2, [sp+192]
0029a1c4ldr x0, [sp+80]
0029a1c8ldr x1, [sp+80]
0029a1ccbl math/big.(*Int).Mod
0029a1d0ldr x3, [sp+112]
0029a1d4str x3, [sp+72]
0029a1d8ldr x3, [sp+104]
0029a1dcstr x3, [sp+64]
0029a1e0ldr x2, [sp+80]
0029a1e4str x2, [sp+56]
0029a1e8ldr x0, [sp+72]
0029a1ecldr x1, [sp+64]
0029a1f0ldp x29, x30, [sp-8]
0029a1f4add sp, sp, 688
0029a1f8ret x30
0029a1fc
0029a1fcloc_29a1fc:
0029a1fcstp x0, x1, [sp+8]
0029a200stp x2, x3, [sp+24]
0029a204stp x4, x5, [sp+40]
0029a208str x6, [sp+56]
0029a20cmov x3, x30
0029a210bl runtime.morestack_noctxt.abi0
0029a214ldp x0, x1, [sp+8]
0029a218ldp x2, x3, [sp+24]
0029a21cldp x4, x5, [sp+40]
0029a220ldr x6, [sp+56]
0029a224b 0x299b80
0029a228udf 0
0029a22cudf 0
00299b80
00299b80crypto/elliptic.(*CurveParams).addJacobian: ; void crypto/elliptic.(*CurveParams).addJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x1, math/big.Int * y1, math/big.Int * z1, math/big.Int * x2, math/big.Int * y2, math/big.Int * z2)
00299b80ldr x16, [x28+16]
00299b84sub x17, sp, 560
00299b88subs xzr, x17, x16
00299b8cb.ls 0x29a1fc
00299b90sub x20, sp, 688
00299b94stp x29, x30, [x20-8]
00299b98add sp, x20, 0
00299b9csub x29, sp, 8
00299ba0str x0, [sp+696]
00299ba4str x1, [sp+704]
00299ba8str x2, [sp+712]
00299bacstr x3, [sp+720]
00299bb0str x4, [sp+728]
00299bb4str x5, [sp+736]
00299bb8str x6, [sp+744]
00299bbcstr xzr, [sp+72]
00299bc0str xzr, [sp+64]
00299bc4str xzr, [sp+56]
00299bc8adrp x0, 0x3ac000
00299bccadd x0, x0, 1024
00299bd0bl runtime.newobject
00299bd4str x0, [sp+648]
00299bd8adrp x0, 0x3ac000
00299bdcadd x0, x0, 1024
00299be0bl runtime.newobject
00299be4str x0, [sp+640]
00299be8adrp x0, 0x3ac000
00299becadd x0, x0, 1024
00299bf0bl runtime.newobject
00299bf4str x0, [sp+632]
00299bf8ldr x1, [sp+648]
00299bfcstr x1, [sp+112]
00299c00ldr x1, [sp+640]
00299c04str x1, [sp+104]
00299c08ldr x1, [sp+632]
00299c0cstr x1, [sp+80]
00299c10ldr x0, [sp+720]
00299c14bl math/big.(*Int).Sign
00299c18str x0, [sp+48]
00299c1ccbz x0, 0x299c24
00299c20b 0x299c74
00299c24
00299c24loc_299c24:
00299c24ldr x1, [sp+728]
00299c28ldr x0, [sp+112]
00299c2cbl math/big.(*Int).Set
00299c30ldr x1, [sp+736]
00299c34ldr x0, [sp+104]
00299c38bl math/big.(*Int).Set
00299c3cldr x1, [sp+744]
00299c40ldr x0, [sp+80]
00299c44bl math/big.(*Int).Set
00299c48ldr x2, [sp+112]
00299c4cstr x2, [sp+72]
00299c50ldr x2, [sp+104]
00299c54str x2, [sp+64]
00299c58ldr x2, [sp+80]
00299c5cstr x2, [sp+56]
00299c60ldr x0, [sp+72]
00299c64ldr x1, [sp+64]
00299c68ldp x29, x30, [sp-8]
00299c6cadd sp, sp, 688
00299c70ret x30
00299c74
00299c74loc_299c74:
00299c74ldr x0, [sp+744]
00299c78bl math/big.(*Int).Sign
00299c7cstr x0, [sp+48]
00299c80cbz x0, 0x299c88
00299c84b 0x299cd8
00299c88
00299c88loc_299c88:
00299c88ldr x1, [sp+704]
00299c8cldr x0, [sp+112]
00299c90bl math/big.(*Int).Set
00299c94ldr x1, [sp+712]
00299c98ldr x0, [sp+104]
00299c9cbl math/big.(*Int).Set
00299ca0ldr x1, [sp+720]
00299ca4ldr x0, [sp+80]
00299ca8bl math/big.(*Int).Set
00299cacldr x2, [sp+112]
00299cb0str x2, [sp+72]
00299cb4ldr x2, [sp+104]
00299cb8str x2, [sp+64]
00299cbcldr x2, [sp+80]
00299cc0str x2, [sp+56]
00299cc4ldr x0, [sp+72]
00299cc8ldr x1, [sp+64]
00299cccldp x29, x30, [sp-8]
00299cd0add sp, sp, 688
00299cd4ret x30
00299cd8
00299cd8loc_299cd8:
00299cd8strb wzr, [sp+600]
00299cdcstr xzr, [sp+608]
00299ce0add x27, sp, 616
00299ce4stp xzr, xzr, [x27]
00299ce8add x0, sp, 600
00299cecstr x0, [sp+632]
00299cf0ldr x1, [sp+720]
00299cf4ldr x2, [sp+720]
00299cf8bl math/big.(*Int).Mul
00299cfcstr x0, [sp+96]
00299d00ldr x3, [sp+696]
00299d04ldrsb x27, [x3]
00299d08ldr x2, [x3]
00299d0cstr x2, [sp+592]
00299d10ldr x0, [sp+96]
00299d14ldr x1, [sp+96]
00299d18bl math/big.(*Int).Mod
00299d1cstrb wzr, [sp+560]
00299d20str xzr, [sp+568]
00299d24add x27, sp, 576
00299d28stp xzr, xzr, [x27]
00299d2cadd x0, sp, 560
00299d30str x0, [sp+632]
00299d34ldr x1, [sp+744]
00299d38ldr x2, [sp+744]
00299d3cbl math/big.(*Int).Mul
00299d40str x0, [sp+88]
00299d44ldr x3, [sp+696]
00299d48ldrsb x27, [x3]
00299d4cldr x2, [x3]
00299d50str x2, [sp+552]
00299d54ldr x0, [sp+88]
00299d58ldr x1, [sp+88]
00299d5cbl math/big.(*Int).Mod
00299d60strb wzr, [sp+520]
00299d64str xzr, [sp+528]
00299d68add x27, sp, 536
00299d6cstp xzr, xzr, [x27]
00299d70add x0, sp, 520
00299d74str x0, [sp+632]
00299d78ldr x1, [sp+704]
00299d7cldr x2, [sp+88]
00299d80bl math/big.(*Int).Mul
00299d84str x0, [sp+136]
00299d88ldr x3, [sp+696]
00299d8cldrsb x27, [x3]
00299d90ldr x2, [x3]
00299d94str x2, [sp+512]
00299d98ldr x0, [sp+136]
00299d9cldr x1, [sp+136]
00299da0bl math/big.(*Int).Mod
00299da4strb wzr, [sp+480]
00299da8str xzr, [sp+488]
00299dacstp xzr, xzr, [sp+496]
00299db0add x0, sp, 480
00299db4str x0, [sp+632]
00299db8ldr x1, [sp+728]
00299dbcldr x2, [sp+96]
00299dc0bl math/big.(*Int).Mul
00299dc4str x0, [sp+128]
00299dc8ldr x3, [sp+696]
00299dccldrsb x27, [x3]
00299dd0ldr x2, [x3]
00299dd4str x2, [sp+472]
00299dd8ldr x0, [sp+128]
00299ddcldr x1, [sp+128]
00299de0bl math/big.(*Int).Mod
00299de4strb wzr, [sp+440]
00299de8str xzr, [sp+448]
00299decstp xzr, xzr, [sp+456]
00299df0add x0, sp, 440
00299df4str x0, [sp+632]
00299df8ldr x1, [sp+128]
00299dfcldr x2, [sp+136]
00299e00bl math/big.(*Int).Sub
00299e04str x0, [sp+184]
00299e08bl math/big.(*Int).Sign
00299e0cstr x0, [sp+48]
00299e10subs xzr, x0, 0
00299e14cset x3, eq
00299e18strb w3, [sp+46]
00299e1cldr x0, [sp+184]
00299e20bl math/big.(*Int).Sign
00299e24str x0, [sp+48]
00299e28adds xzr, x0, 1
00299e2cb.eq 0x299e34
00299e30b 0x299e54
00299e34
00299e34loc_299e34:
00299e34ldr x3, [sp+696]
00299e38ldrsb x27, [x3]
00299e3cldr x2, [x3]
00299e40str x2, [sp+432]
00299e44ldr x0, [sp+184]
00299e48ldr x1, [sp+184]
00299e4cbl math/big.(*Int).Add
00299e50b 0x299e58
00299e54
00299e54loc_299e54:
00299e54b 0x299e58
00299e58
00299e58loc_299e58:
00299e58strb wzr, [sp+400]
00299e5cstr xzr, [sp+408]
00299e60stp xzr, xzr, [sp+416]
00299e64add x0, sp, 400
00299e68str x0, [sp+632]
00299e6cldr x1, [sp+184]
00299e70orr x2, xzr, 1
00299e74bl math/big.(*Int).Lsh
00299e78str x0, [sp+176]
00299e7cmov x1, x0
00299e80mov x2, x0
00299e84bl math/big.(*Int).Mul
00299e88strb wzr, [sp+368]
00299e8cstr xzr, [sp+376]
00299e90stp xzr, xzr, [sp+384]
00299e94add x0, sp, 368
00299e98str x0, [sp+632]
00299e9cldr x1, [sp+184]
00299ea0ldr x2, [sp+176]
00299ea4bl math/big.(*Int).Mul
00299ea8str x0, [sp+168]
00299eacstrb wzr, [sp+336]
00299eb0str xzr, [sp+344]
00299eb4stp xzr, xzr, [sp+352]
00299eb8add x0, sp, 336
00299ebcstr x0, [sp+632]
00299ec0ldr x1, [sp+712]
00299ec4ldr x2, [sp+744]
00299ec8bl math/big.(*Int).Mul
00299eccstr x0, [sp+152]
00299ed0ldr x2, [sp+88]
00299ed4mov x1, x0
00299ed8bl math/big.(*Int).Mul
00299edcldr x3, [sp+696]
00299ee0ldrsb x27, [x3]
00299ee4ldr x2, [x3]
00299ee8str x2, [sp+328]
00299eecldr x0, [sp+152]
00299ef0ldr x1, [sp+152]
00299ef4bl math/big.(*Int).Mod
00299ef8strb wzr, [sp+296]
00299efcstr xzr, [sp+304]
00299f00stp xzr, xzr, [sp+312]
00299f04add x0, sp, 296
00299f08str x0, [sp+632]
00299f0cldr x1, [sp+736]
00299f10ldr x2, [sp+720]
00299f14bl math/big.(*Int).Mul
00299f18str x0, [sp+144]
00299f1cldr x2, [sp+96]
00299f20mov x1, x0
00299f24bl math/big.(*Int).Mul
00299f28ldr x3, [sp+696]
00299f2cldrsb x27, [x3]
00299f30ldr x2, [x3]
00299f34str x2, [sp+288]
00299f38ldr x0, [sp+144]
00299f3cldr x1, [sp+144]
00299f40bl math/big.(*Int).Mod
00299f44strb wzr, [sp+256]
00299f48str xzr, [sp+264]
00299f4cstp xzr, xzr, [sp+272]
00299f50add x0, sp, 256
00299f54str x0, [sp+632]
00299f58ldr x1, [sp+144]
00299f5cldr x2, [sp+152]
00299f60bl math/big.(*Int).Sub
00299f64str x0, [sp+160]
00299f68bl math/big.(*Int).Sign
00299f6cstr x0, [sp+48]
00299f70adds xzr, x0, 1
00299f74b.eq 0x299f7c
00299f78b 0x299f9c
00299f7c
00299f7cloc_299f7c:
00299f7cldr x3, [sp+696]
00299f80ldrsb x27, [x3]
00299f84ldr x2, [x3]
00299f88str x2, [sp+248]
00299f8cldr x0, [sp+160]
00299f90ldr x1, [sp+160]
00299f94bl math/big.(*Int).Add
00299f98b 0x299fa0
00299f9c
00299f9cloc_299f9c:
00299f9cb 0x299fa0
00299fa0
00299fa0loc_299fa0:
00299fa0ldr x0, [sp+160]
00299fa4bl math/big.(*Int).Sign
00299fa8str x0, [sp+48]
00299facsubs xzr, x0, 0
00299fb0cset x1, eq
00299fb4strb w1, [sp+45]
00299fb8ldrb w2, [sp+46]
00299fbcstrb w2, [sp+47]
00299fc0tbnz w2, 0, 0x299fc8
00299fc4b 0x299fd0
00299fc8
00299fc8loc_299fc8:
00299fc8strb w1, [sp+47]
00299fccb 0x299fd4
00299fd0
00299fd0loc_299fd0:
00299fd0b 0x299fd4
00299fd4
00299fd4loc_299fd4:
00299fd4ldrb w4, [sp+47]
00299fd8tbnz w4, 0, 0x299fe0
00299fdcb 0x29a050
00299fe0
00299fe0loc_299fe0:
00299fe0str xzr, [sp+632]
00299fe4str xzr, [sp+640]
00299fe8str xzr, [sp+648]
00299fecldr x1, [sp+704]
00299ff0ldr x2, [sp+712]
00299ff4ldr x3, [sp+720]
00299ff8ldr x0, [sp+696]
00299ffcbl crypto/elliptic.(*CurveParams).doubleJacobian
0029a000str x0, [sp+632]
0029a004str x1, [sp+640]
0029a008str x2, [sp+648]
0029a00cldr x4, [sp+632]
0029a010str x4, [sp+672]
0029a014ldr x4, [sp+640]
0029a018str x4, [sp+664]
0029a01cldr x4, [sp+648]
0029a020str x4, [sp+656]
0029a024ldr x4, [sp+672]
0029a028str x4, [sp+72]
0029a02cldr x4, [sp+664]
0029a030str x4, [sp+64]
0029a034ldr x2, [sp+656]
0029a038str x2, [sp+56]
0029a03cldr x0, [sp+72]
0029a040ldr x1, [sp+64]
0029a044ldp x29, x30, [sp-8]
0029a048add sp, sp, 688
0029a04cret x30
0029a050
0029a050loc_29a050:
0029a050ldr x1, [sp+160]
0029a054ldr x0, [sp+160]
0029a058orr x2, xzr, 1
0029a05cbl math/big.(*Int).Lsh
0029a060strb wzr, [sp+216]
0029a064str xzr, [sp+224]
0029a068stp xzr, xzr, [sp+232]
0029a06cadd x0, sp, 216
0029a070str x0, [sp+648]
0029a074ldr x1, [sp+136]
0029a078ldr x2, [sp+176]
0029a07cbl math/big.(*Int).Mul
0029a080str x0, [sp+120]
0029a084ldr x1, [sp+160]
0029a088ldr x0, [sp+112]
0029a08cbl math/big.(*Int).Set
0029a090ldr x1, [sp+112]
0029a094ldr x2, [sp+112]
0029a098ldr x0, [sp+112]
0029a09cbl math/big.(*Int).Mul
0029a0a0ldr x1, [sp+112]
0029a0a4ldr x2, [sp+168]
0029a0a8ldr x0, [sp+112]
0029a0acbl math/big.(*Int).Sub
0029a0b0ldr x1, [sp+112]
0029a0b4ldr x2, [sp+120]
0029a0b8ldr x0, [sp+112]
0029a0bcbl math/big.(*Int).Sub
0029a0c0ldr x1, [sp+112]
0029a0c4ldr x2, [sp+120]
0029a0c8ldr x0, [sp+112]
0029a0ccbl math/big.(*Int).Sub
0029a0d0ldr x3, [sp+696]
0029a0d4ldrsb x27, [x3]
0029a0d8ldr x2, [x3]
0029a0dcstr x2, [sp+208]
0029a0e0ldr x0, [sp+112]
0029a0e4ldr x1, [sp+112]
0029a0e8bl math/big.(*Int).Mod
0029a0ecldr x1, [sp+160]
0029a0f0ldr x0, [sp+104]
0029a0f4bl math/big.(*Int).Set
0029a0f8ldr x1, [sp+120]
0029a0fcldr x2, [sp+112]
0029a100ldr x0, [sp+120]
0029a104bl math/big.(*Int).Sub
0029a108ldr x1, [sp+104]
0029a10cldr x2, [sp+120]
0029a110ldr x0, [sp+104]
0029a114bl math/big.(*Int).Mul
0029a118ldr x1, [sp+152]
0029a11cldr x2, [sp+168]
0029a120ldr x0, [sp+152]
0029a124bl math/big.(*Int).Mul
0029a128ldr x1, [sp+152]
0029a12cldr x0, [sp+152]
0029a130orr x2, xzr, 1
0029a134bl math/big.(*Int).Lsh
0029a138ldr x1, [sp+104]
0029a13cldr x2, [sp+152]
0029a140ldr x0, [sp+104]
0029a144bl math/big.(*Int).Sub
0029a148ldr x3, [sp+696]
0029a14cldrsb x27, [x3]
0029a150ldr x2, [x3]
0029a154str x2, [sp+200]
0029a158ldr x0, [sp+104]
0029a15cldr x1, [sp+104]
0029a160bl math/big.(*Int).Mod
0029a164ldr x1, [sp+720]
0029a168ldr x2, [sp+744]
0029a16cldr x0, [sp+80]
0029a170bl math/big.(*Int).Add
0029a174ldr x1, [sp+80]
0029a178ldr x2, [sp+80]
0029a17cldr x0, [sp+80]
0029a180bl math/big.(*Int).Mul
0029a184ldr x1, [sp+80]
0029a188ldr x2, [sp+96]
0029a18cldr x0, [sp+80]
0029a190bl math/big.(*Int).Sub
0029a194ldr x1, [sp+80]
0029a198ldr x2, [sp+88]
0029a19cldr x0, [sp+80]
0029a1a0bl math/big.(*Int).Sub
0029a1a4ldr x1, [sp+80]
0029a1a8ldr x2, [sp+184]
0029a1acldr x0, [sp+80]
0029a1b0bl math/big.(*Int).Mul
0029a1b4ldr x3, [sp+696]
0029a1b8ldrsb x27, [x3]
0029a1bcldr x2, [x3]
0029a1c0str x2, [sp+192]
0029a1c4ldr x0, [sp+80]
0029a1c8ldr x1, [sp+80]
0029a1ccbl math/big.(*Int).Mod
0029a1d0ldr x3, [sp+112]
0029a1d4str x3, [sp+72]
0029a1d8ldr x3, [sp+104]
0029a1dcstr x3, [sp+64]
0029a1e0ldr x2, [sp+80]
0029a1e4str x2, [sp+56]
0029a1e8ldr x0, [sp+72]
0029a1ecldr x1, [sp+64]
0029a1f0ldp x29, x30, [sp-8]
0029a1f4add sp, sp, 688
0029a1f8ret x30
0029a1fc
0029a1fcloc_29a1fc:
0029a1fcstp x0, x1, [sp+8]
0029a200stp x2, x3, [sp+24]
0029a204stp x4, x5, [sp+40]
0029a208str x6, [sp+56]
0029a20cmov x3, x30
0029a210bl runtime.morestack_noctxt.abi0
0029a214ldp x0, x1, [sp+8]
0029a218ldp x2, x3, [sp+24]
0029a21cldp x4, x5, [sp+40]
0029a220ldr x6, [sp+56]
0029a224b 0x299b80
0029a228udf 0
0029a22cudf 0
00299b80
0029a230
0029a230crypto/elliptic.(*CurveParams).doubleJacobian: ; void crypto/elliptic.(*CurveParams).doubleJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y, math/big.Int * z)
0029a230ldr x16, [x28+16]
0029a234sub x17, sp, 256
0029a238subs xzr, x17, x16
0029a23cb.ls 0x29a6a4
0029a240sub x20, sp, 384
0029a244stp x29, x30, [x20-8]
0029a248add sp, x20, 0
0029a24csub x29, sp, 8
0029a250str x0, [sp+392]
0029a254str x1, [sp+400]
0029a258str x2, [sp+408]
0029a25cstr x3, [sp+416]
0029a260str xzr, [sp+56]
0029a264str xzr, [sp+48]
0029a268str xzr, [sp+40]
0029a26cstrb wzr, [sp+336]
0029a270str xzr, [sp+344]
0029a274stp xzr, xzr, [sp+352]
0029a278add x0, sp, 336
0029a27cstr x0, [sp+368]
0029a280ldr x1, [sp+416]
0029a284ldr x2, [sp+416]
0029a288bl math/big.(*Int).Mul
0029a28cstr x0, [sp+96]
0029a290ldr x3, [sp+392]
0029a294ldrsb x27, [x3]
0029a298ldr x2, [x3]
0029a29cstr x2, [sp+328]
0029a2a0ldr x0, [sp+96]
0029a2a4ldr x1, [sp+96]
0029a2a8bl math/big.(*Int).Mod
0029a2acstrb wzr, [sp+296]
0029a2b0str xzr, [sp+304]
0029a2b4stp xzr, xzr, [sp+312]
0029a2b8add x0, sp, 296
0029a2bcstr x0, [sp+368]
0029a2c0ldr x1, [sp+408]
0029a2c4ldr x2, [sp+408]
0029a2c8bl math/big.(*Int).Mul
0029a2ccstr x0, [sp+88]
0029a2d0ldr x3, [sp+392]
0029a2d4ldrsb x27, [x3]
0029a2d8ldr x2, [x3]
0029a2dcstr x2, [sp+288]
0029a2e0ldr x0, [sp+88]
0029a2e4ldr x1, [sp+88]
0029a2e8bl math/big.(*Int).Mod
0029a2ecadrp x0, 0x3ab000
0029a2f0add x0, x0, 1024
0029a2f4bl runtime.newobject
0029a2f8str x0, [sp+368]
0029a2fcldr x1, [sp+400]
0029a300ldr x2, [sp+96]
0029a304bl math/big.(*Int).Sub
0029a308str x0, [sp+128]
0029a30cbl math/big.(*Int).Sign
0029a310str x0, [sp+32]
0029a314adds xzr, x0, 1
0029a318b.eq 0x29a320
0029a31cb 0x29a340
0029a320
0029a320loc_29a320:
0029a320ldr x3, [sp+392]
0029a324ldrsb x27, [x3]
0029a328ldr x2, [x3]
0029a32cstr x2, [sp+280]
0029a330ldr x0, [sp+128]
0029a334ldr x1, [sp+128]
0029a338bl math/big.(*Int).Add
0029a33cb 0x29a344
0029a340
0029a340loc_29a340:
0029a340b 0x29a344
0029a344
0029a344loc_29a344:
0029a344strb wzr, [sp+248]
0029a348str xzr, [sp+256]
0029a34cstp xzr, xzr, [sp+264]
0029a350add x0, sp, 248
0029a354str x0, [sp+368]
0029a358ldr x1, [sp+400]
0029a35cldr x2, [sp+96]
0029a360bl math/big.(*Int).Add
0029a364str x0, [sp+120]
0029a368ldr x1, [sp+128]
0029a36cldr x3, [sp+128]
0029a370mov x2, x0
0029a374mov x0, x3
0029a378bl math/big.(*Int).Mul
0029a37cldr x1, [sp+128]
0029a380ldr x0, [sp+120]
0029a384bl math/big.(*Int).Set
0029a388ldr x1, [sp+128]
0029a38cldr x0, [sp+128]
0029a390orr x2, xzr, 1
0029a394bl math/big.(*Int).Lsh
0029a398ldr x1, [sp+128]
0029a39cldr x2, [sp+120]
0029a3a0ldr x0, [sp+128]
0029a3a4bl math/big.(*Int).Add
0029a3a8ldr x1, [sp+400]
0029a3acldr x2, [sp+88]
0029a3b0ldr x0, [sp+120]
0029a3b4bl math/big.(*Int).Mul
0029a3b8str x0, [sp+112]
0029a3bcadrp x0, 0x3ab000
0029a3c0add x0, x0, 1024
0029a3c4bl runtime.newobject
0029a3c8str x0, [sp+368]
0029a3ccldr x1, [sp+128]
0029a3d0ldr x2, [sp+128]
0029a3d4bl math/big.(*Int).Mul
0029a3d8str x0, [sp+80]
0029a3dcstrb wzr, [sp+216]
0029a3e0str xzr, [sp+224]
0029a3e4stp xzr, xzr, [sp+232]
0029a3e8add x0, sp, 216
0029a3ecstr x0, [sp+368]
0029a3f0ldr x1, [sp+112]
0029a3f4orr x2, xzr, 3
0029a3f8bl math/big.(*Int).Lsh
0029a3fcstr x0, [sp+104]
0029a400ldr x3, [sp+392]
0029a404ldrsb x27, [x3]
0029a408ldr x2, [x3]
0029a40cstr x2, [sp+208]
0029a410ldr x0, [sp+104]
0029a414ldr x1, [sp+104]
0029a418bl math/big.(*Int).Mod
0029a41cldr x1, [sp+80]
0029a420ldr x2, [sp+104]
0029a424ldr x0, [sp+80]
0029a428bl math/big.(*Int).Sub
0029a42cldr x0, [sp+80]
0029a430bl math/big.(*Int).Sign
0029a434str x0, [sp+32]
0029a438adds xzr, x0, 1
0029a43cb.eq 0x29a444
0029a440b 0x29a464
0029a444
0029a444loc_29a444:
0029a444ldr x3, [sp+392]
0029a448ldrsb x27, [x3]
0029a44cldr x2, [x3]
0029a450str x2, [sp+200]
0029a454ldr x0, [sp+80]
0029a458ldr x1, [sp+80]
0029a45cbl math/big.(*Int).Add
0029a460b 0x29a468
0029a464
0029a464loc_29a464:
0029a464b 0x29a468
0029a468
0029a468loc_29a468:
0029a468ldr x3, [sp+392]
0029a46cldrsb x27, [x3]
0029a470ldr x2, [x3]
0029a474str x2, [sp+192]
0029a478ldr x0, [sp+80]
0029a47cldr x1, [sp+80]
0029a480bl math/big.(*Int).Mod
0029a484adrp x0, 0x3ab000
0029a488add x0, x0, 1024
0029a48cbl runtime.newobject
0029a490str x0, [sp+368]
0029a494ldr x1, [sp+408]
0029a498ldr x2, [sp+416]
0029a49cbl math/big.(*Int).Add
0029a4a0str x0, [sp+64]
0029a4a4mov x1, x0
0029a4a8mov x2, x0
0029a4acbl math/big.(*Int).Mul
0029a4b0ldr x1, [sp+64]
0029a4b4ldr x2, [sp+88]
0029a4b8ldr x0, [sp+64]
0029a4bcbl math/big.(*Int).Sub
0029a4c0ldr x0, [sp+64]
0029a4c4bl math/big.(*Int).Sign
0029a4c8str x0, [sp+32]
0029a4ccadds xzr, x0, 1
0029a4d0b.eq 0x29a4d8
0029a4d4b 0x29a4f8
0029a4d8
0029a4d8loc_29a4d8:
0029a4d8ldr x3, [sp+392]
0029a4dcldrsb x27, [x3]
0029a4e0ldr x2, [x3]
0029a4e4str x2, [sp+184]
0029a4e8ldr x0, [sp+64]
0029a4ecldr x1, [sp+64]
0029a4f0bl math/big.(*Int).Add
0029a4f4b 0x29a4fc
0029a4f8
0029a4f8loc_29a4f8:
0029a4f8b 0x29a4fc
0029a4fc
0029a4fcloc_29a4fc:
0029a4fcldr x1, [sp+64]
0029a500ldr x2, [sp+96]
0029a504ldr x0, [sp+64]
0029a508bl math/big.(*Int).Sub
0029a50cldr x0, [sp+64]
0029a510bl math/big.(*Int).Sign
0029a514str x0, [sp+32]
0029a518adds xzr, x0, 1
0029a51cb.eq 0x29a524
0029a520b 0x29a544
0029a524
0029a524loc_29a524:
0029a524ldr x3, [sp+392]
0029a528ldrsb x27, [x3]
0029a52cldr x2, [x3]
0029a530str x2, [sp+176]
0029a534ldr x0, [sp+64]
0029a538ldr x1, [sp+64]
0029a53cbl math/big.(*Int).Add
0029a540b 0x29a548
0029a544
0029a544loc_29a544:
0029a544b 0x29a548
0029a548
0029a548loc_29a548:
0029a548ldr x3, [sp+392]
0029a54cldrsb x27, [x3]
0029a550ldr x2, [x3]
0029a554str x2, [sp+168]
0029a558ldr x0, [sp+64]
0029a55cldr x1, [sp+64]
0029a560bl math/big.(*Int).Mod
0029a564ldr x1, [sp+112]
0029a568ldr x0, [sp+112]
0029a56corr x2, xzr, 2
0029a570bl math/big.(*Int).Lsh
0029a574ldr x1, [sp+112]
0029a578ldr x2, [sp+80]
0029a57cldr x0, [sp+112]
0029a580bl math/big.(*Int).Sub
0029a584ldr x0, [sp+112]
0029a588bl math/big.(*Int).Sign
0029a58cstr x0, [sp+32]
0029a590adds xzr, x0, 1
0029a594b.eq 0x29a59c
0029a598b 0x29a5bc
0029a59c
0029a59cloc_29a59c:
0029a59cldr x3, [sp+392]
0029a5a0ldrsb x27, [x3]
0029a5a4ldr x2, [x3]
0029a5a8str x2, [sp+160]
0029a5acldr x0, [sp+112]
0029a5b0ldr x1, [sp+112]
0029a5b4bl math/big.(*Int).Add
0029a5b8b 0x29a5c0
0029a5bc
0029a5bcloc_29a5bc:
0029a5bcb 0x29a5c0
0029a5c0
0029a5c0loc_29a5c0:
0029a5c0ldr x1, [sp+128]
0029a5c4ldr x2, [sp+112]
0029a5c8ldr x0, [sp+128]
0029a5ccbl math/big.(*Int).Mul
0029a5d0str x0, [sp+72]
0029a5d4ldr x1, [sp+88]
0029a5d8ldr x2, [sp+88]
0029a5dcldr x0, [sp+88]
0029a5e0bl math/big.(*Int).Mul
0029a5e4ldr x1, [sp+88]
0029a5e8ldr x0, [sp+88]
0029a5ecorr x2, xzr, 3
0029a5f0bl math/big.(*Int).Lsh
0029a5f4ldr x3, [sp+392]
0029a5f8ldrsb x27, [x3]
0029a5fcldr x2, [x3]
0029a600str x2, [sp+152]
0029a604ldr x0, [sp+88]
0029a608ldr x1, [sp+88]
0029a60cbl math/big.(*Int).Mod
0029a610ldr x1, [sp+72]
0029a614ldr x2, [sp+88]
0029a618ldr x0, [sp+72]
0029a61cbl math/big.(*Int).Sub
0029a620ldr x0, [sp+72]
0029a624bl math/big.(*Int).Sign
0029a628str x0, [sp+32]
0029a62cadds xzr, x0, 1
0029a630b.eq 0x29a638
0029a634b 0x29a658
0029a638
0029a638loc_29a638:
0029a638ldr x3, [sp+392]
0029a63cldrsb x27, [x3]
0029a640ldr x2, [x3]
0029a644str x2, [sp+144]
0029a648ldr x0, [sp+72]
0029a64cldr x1, [sp+72]
0029a650bl math/big.(*Int).Add
0029a654b 0x29a65c
0029a658
0029a658loc_29a658:
0029a658b 0x29a65c
0029a65c
0029a65cloc_29a65c:
0029a65cldr x3, [sp+392]
0029a660ldrsb x27, [x3]
0029a664ldr x2, [x3]
0029a668str x2, [sp+136]
0029a66cldr x0, [sp+72]
0029a670ldr x1, [sp+72]
0029a674bl math/big.(*Int).Mod
0029a678ldr x3, [sp+80]
0029a67cstr x3, [sp+56]
0029a680ldr x3, [sp+72]
0029a684str x3, [sp+48]
0029a688ldr x2, [sp+64]
0029a68cstr x2, [sp+40]
0029a690ldr x0, [sp+56]
0029a694ldr x1, [sp+48]
0029a698ldp x29, x30, [sp-8]
0029a69cadd sp, sp, 384
0029a6a0ret x30
0029a6a4
0029a6a4loc_29a6a4:
0029a6a4stp x0, x1, [sp+8]
0029a6a8stp x2, x3, [sp+24]
0029a6acmov x3, x30
0029a6b0bl runtime.morestack_noctxt.abi0
0029a6b4ldp x0, x1, [sp+8]
0029a6b8ldp x2, x3, [sp+24]
0029a6bcb 0x29a230
0029a230
0029a230crypto/elliptic.(*CurveParams).doubleJacobian: ; void crypto/elliptic.(*CurveParams).doubleJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y, math/big.Int * z)
0029a230ldr x16, [x28+16]
0029a234sub x17, sp, 256
0029a238subs xzr, x17, x16
0029a23cb.ls 0x29a6a4
0029a240sub x20, sp, 384
0029a244stp x29, x30, [x20-8]
0029a248add sp, x20, 0
0029a24csub x29, sp, 8
0029a250str x0, [sp+392]
0029a254str x1, [sp+400]
0029a258str x2, [sp+408]
0029a25cstr x3, [sp+416]
0029a260str xzr, [sp+56]
0029a264str xzr, [sp+48]
0029a268str xzr, [sp+40]
0029a26cstrb wzr, [sp+336]
0029a270str xzr, [sp+344]
0029a274stp xzr, xzr, [sp+352]
0029a278add x0, sp, 336
0029a27cstr x0, [sp+368]
0029a280ldr x1, [sp+416]
0029a284ldr x2, [sp+416]
0029a288bl math/big.(*Int).Mul
0029a28cstr x0, [sp+96]
0029a290ldr x3, [sp+392]
0029a294ldrsb x27, [x3]
0029a298ldr x2, [x3]
0029a29cstr x2, [sp+328]
0029a2a0ldr x0, [sp+96]
0029a2a4ldr x1, [sp+96]
0029a2a8bl math/big.(*Int).Mod
0029a2acstrb wzr, [sp+296]
0029a2b0str xzr, [sp+304]
0029a2b4stp xzr, xzr, [sp+312]
0029a2b8add x0, sp, 296
0029a2bcstr x0, [sp+368]
0029a2c0ldr x1, [sp+408]
0029a2c4ldr x2, [sp+408]
0029a2c8bl math/big.(*Int).Mul
0029a2ccstr x0, [sp+88]
0029a2d0ldr x3, [sp+392]
0029a2d4ldrsb x27, [x3]
0029a2d8ldr x2, [x3]
0029a2dcstr x2, [sp+288]
0029a2e0ldr x0, [sp+88]
0029a2e4ldr x1, [sp+88]
0029a2e8bl math/big.(*Int).Mod
0029a2ecadrp x0, 0x3ab000
0029a2f0add x0, x0, 1024
0029a2f4bl runtime.newobject
0029a2f8str x0, [sp+368]
0029a2fcldr x1, [sp+400]
0029a300ldr x2, [sp+96]
0029a304bl math/big.(*Int).Sub
0029a308str x0, [sp+128]
0029a30cbl math/big.(*Int).Sign
0029a310str x0, [sp+32]
0029a314adds xzr, x0, 1
0029a318b.eq 0x29a320
0029a31cb 0x29a340
0029a320
0029a320loc_29a320:
0029a320ldr x3, [sp+392]
0029a324ldrsb x27, [x3]
0029a328ldr x2, [x3]
0029a32cstr x2, [sp+280]
0029a330ldr x0, [sp+128]
0029a334ldr x1, [sp+128]
0029a338bl math/big.(*Int).Add
0029a33cb 0x29a344
0029a340
0029a340loc_29a340:
0029a340b 0x29a344
0029a344
0029a344loc_29a344:
0029a344strb wzr, [sp+248]
0029a348str xzr, [sp+256]
0029a34cstp xzr, xzr, [sp+264]
0029a350add x0, sp, 248
0029a354str x0, [sp+368]
0029a358ldr x1, [sp+400]
0029a35cldr x2, [sp+96]
0029a360bl math/big.(*Int).Add
0029a364str x0, [sp+120]
0029a368ldr x1, [sp+128]
0029a36cldr x3, [sp+128]
0029a370mov x2, x0
0029a374mov x0, x3
0029a378bl math/big.(*Int).Mul
0029a37cldr x1, [sp+128]
0029a380ldr x0, [sp+120]
0029a384bl math/big.(*Int).Set
0029a388ldr x1, [sp+128]
0029a38cldr x0, [sp+128]
0029a390orr x2, xzr, 1
0029a394bl math/big.(*Int).Lsh
0029a398ldr x1, [sp+128]
0029a39cldr x2, [sp+120]
0029a3a0ldr x0, [sp+128]
0029a3a4bl math/big.(*Int).Add
0029a3a8ldr x1, [sp+400]
0029a3acldr x2, [sp+88]
0029a3b0ldr x0, [sp+120]
0029a3b4bl math/big.(*Int).Mul
0029a3b8str x0, [sp+112]
0029a3bcadrp x0, 0x3ab000
0029a3c0add x0, x0, 1024
0029a3c4bl runtime.newobject
0029a3c8str x0, [sp+368]
0029a3ccldr x1, [sp+128]
0029a3d0ldr x2, [sp+128]
0029a3d4bl math/big.(*Int).Mul
0029a3d8str x0, [sp+80]
0029a3dcstrb wzr, [sp+216]
0029a3e0str xzr, [sp+224]
0029a3e4stp xzr, xzr, [sp+232]
0029a3e8add x0, sp, 216
0029a3ecstr x0, [sp+368]
0029a3f0ldr x1, [sp+112]
0029a3f4orr x2, xzr, 3
0029a3f8bl math/big.(*Int).Lsh
0029a3fcstr x0, [sp+104]
0029a400ldr x3, [sp+392]
0029a404ldrsb x27, [x3]
0029a408ldr x2, [x3]
0029a40cstr x2, [sp+208]
0029a410ldr x0, [sp+104]
0029a414ldr x1, [sp+104]
0029a418bl math/big.(*Int).Mod
0029a41cldr x1, [sp+80]
0029a420ldr x2, [sp+104]
0029a424ldr x0, [sp+80]
0029a428bl math/big.(*Int).Sub
0029a42cldr x0, [sp+80]
0029a430bl math/big.(*Int).Sign
0029a434str x0, [sp+32]
0029a438adds xzr, x0, 1
0029a43cb.eq 0x29a444
0029a440b 0x29a464
0029a444
0029a444loc_29a444:
0029a444ldr x3, [sp+392]
0029a448ldrsb x27, [x3]
0029a44cldr x2, [x3]
0029a450str x2, [sp+200]
0029a454ldr x0, [sp+80]
0029a458ldr x1, [sp+80]
0029a45cbl math/big.(*Int).Add
0029a460b 0x29a468
0029a464
0029a464loc_29a464:
0029a464b 0x29a468
0029a468
0029a468loc_29a468:
0029a468ldr x3, [sp+392]
0029a46cldrsb x27, [x3]
0029a470ldr x2, [x3]
0029a474str x2, [sp+192]
0029a478ldr x0, [sp+80]
0029a47cldr x1, [sp+80]
0029a480bl math/big.(*Int).Mod
0029a484adrp x0, 0x3ab000
0029a488add x0, x0, 1024
0029a48cbl runtime.newobject
0029a490str x0, [sp+368]
0029a494ldr x1, [sp+408]
0029a498ldr x2, [sp+416]
0029a49cbl math/big.(*Int).Add
0029a4a0str x0, [sp+64]
0029a4a4mov x1, x0
0029a4a8mov x2, x0
0029a4acbl math/big.(*Int).Mul
0029a4b0ldr x1, [sp+64]
0029a4b4ldr x2, [sp+88]
0029a4b8ldr x0, [sp+64]
0029a4bcbl math/big.(*Int).Sub
0029a4c0ldr x0, [sp+64]
0029a4c4bl math/big.(*Int).Sign
0029a4c8str x0, [sp+32]
0029a4ccadds xzr, x0, 1
0029a4d0b.eq 0x29a4d8
0029a4d4b 0x29a4f8
0029a4d8
0029a4d8loc_29a4d8:
0029a4d8ldr x3, [sp+392]
0029a4dcldrsb x27, [x3]
0029a4e0ldr x2, [x3]
0029a4e4str x2, [sp+184]
0029a4e8ldr x0, [sp+64]
0029a4ecldr x1, [sp+64]
0029a4f0bl math/big.(*Int).Add
0029a4f4b 0x29a4fc
0029a4f8
0029a4f8loc_29a4f8:
0029a4f8b 0x29a4fc
0029a4fc
0029a4fcloc_29a4fc:
0029a4fcldr x1, [sp+64]
0029a500ldr x2, [sp+96]
0029a504ldr x0, [sp+64]
0029a508bl math/big.(*Int).Sub
0029a50cldr x0, [sp+64]
0029a510bl math/big.(*Int).Sign
0029a514str x0, [sp+32]
0029a518adds xzr, x0, 1
0029a51cb.eq 0x29a524
0029a520b 0x29a544
0029a524
0029a524loc_29a524:
0029a524ldr x3, [sp+392]
0029a528ldrsb x27, [x3]
0029a52cldr x2, [x3]
0029a530str x2, [sp+176]
0029a534ldr x0, [sp+64]
0029a538ldr x1, [sp+64]
0029a53cbl math/big.(*Int).Add
0029a540b 0x29a548
0029a544
0029a544loc_29a544:
0029a544b 0x29a548
0029a548
0029a548loc_29a548:
0029a548ldr x3, [sp+392]
0029a54cldrsb x27, [x3]
0029a550ldr x2, [x3]
0029a554str x2, [sp+168]
0029a558ldr x0, [sp+64]
0029a55cldr x1, [sp+64]
0029a560bl math/big.(*Int).Mod
0029a564ldr x1, [sp+112]
0029a568ldr x0, [sp+112]
0029a56corr x2, xzr, 2
0029a570bl math/big.(*Int).Lsh
0029a574ldr x1, [sp+112]
0029a578ldr x2, [sp+80]
0029a57cldr x0, [sp+112]
0029a580bl math/big.(*Int).Sub
0029a584ldr x0, [sp+112]
0029a588bl math/big.(*Int).Sign
0029a58cstr x0, [sp+32]
0029a590adds xzr, x0, 1
0029a594b.eq 0x29a59c
0029a598b 0x29a5bc
0029a59c
0029a59cloc_29a59c:
0029a59cldr x3, [sp+392]
0029a5a0ldrsb x27, [x3]
0029a5a4ldr x2, [x3]
0029a5a8str x2, [sp+160]
0029a5acldr x0, [sp+112]
0029a5b0ldr x1, [sp+112]
0029a5b4bl math/big.(*Int).Add
0029a5b8b 0x29a5c0
0029a5bc
0029a5bcloc_29a5bc:
0029a5bcb 0x29a5c0
0029a5c0
0029a5c0loc_29a5c0:
0029a5c0ldr x1, [sp+128]
0029a5c4ldr x2, [sp+112]
0029a5c8ldr x0, [sp+128]
0029a5ccbl math/big.(*Int).Mul
0029a5d0str x0, [sp+72]
0029a5d4ldr x1, [sp+88]
0029a5d8ldr x2, [sp+88]
0029a5dcldr x0, [sp+88]
0029a5e0bl math/big.(*Int).Mul
0029a5e4ldr x1, [sp+88]
0029a5e8ldr x0, [sp+88]
0029a5ecorr x2, xzr, 3
0029a5f0bl math/big.(*Int).Lsh
0029a5f4ldr x3, [sp+392]
0029a5f8ldrsb x27, [x3]
0029a5fcldr x2, [x3]
0029a600str x2, [sp+152]
0029a604ldr x0, [sp+88]
0029a608ldr x1, [sp+88]
0029a60cbl math/big.(*Int).Mod
0029a610ldr x1, [sp+72]
0029a614ldr x2, [sp+88]
0029a618ldr x0, [sp+72]
0029a61cbl math/big.(*Int).Sub
0029a620ldr x0, [sp+72]
0029a624bl math/big.(*Int).Sign
0029a628str x0, [sp+32]
0029a62cadds xzr, x0, 1
0029a630b.eq 0x29a638
0029a634b 0x29a658
0029a638
0029a638loc_29a638:
0029a638ldr x3, [sp+392]
0029a63cldrsb x27, [x3]
0029a640ldr x2, [x3]
0029a644str x2, [sp+144]
0029a648ldr x0, [sp+72]
0029a64cldr x1, [sp+72]
0029a650bl math/big.(*Int).Add
0029a654b 0x29a65c
0029a658
0029a658loc_29a658:
0029a658b 0x29a65c
0029a65c
0029a65cloc_29a65c:
0029a65cldr x3, [sp+392]
0029a660ldrsb x27, [x3]
0029a664ldr x2, [x3]
0029a668str x2, [sp+136]
0029a66cldr x0, [sp+72]
0029a670ldr x1, [sp+72]
0029a674bl math/big.(*Int).Mod
0029a678ldr x3, [sp+80]
0029a67cstr x3, [sp+56]
0029a680ldr x3, [sp+72]
0029a684str x3, [sp+48]
0029a688ldr x2, [sp+64]
0029a68cstr x2, [sp+40]
0029a690ldr x0, [sp+56]
0029a694ldr x1, [sp+48]
0029a698ldp x29, x30, [sp-8]
0029a69cadd sp, sp, 384
0029a6a0ret x30
0029a6a4
0029a6a4loc_29a6a4:
0029a6a4stp x0, x1, [sp+8]
0029a6a8stp x2, x3, [sp+24]
0029a6acmov x3, x30
0029a6b0bl runtime.morestack_noctxt.abi0
0029a6b4ldp x0, x1, [sp+8]
0029a6b8ldp x2, x3, [sp+24]
0029a6bcb 0x29a230
0029a230
0029a6c0
0029a6c0crypto/elliptic.(*CurveParams).ScalarMult: ; void crypto/elliptic.(*CurveParams).ScalarMult(crypto/elliptic.CurveParams * curve, math/big.Int * Bx, math/big.Int * By, struct []uint8 k)
0029a6c0ldr x16, [x28+16]
0029a6c4sub x17, sp, 336
0029a6c8subs xzr, x17, x16
0029a6ccb.ls 0x29aa04
0029a6d0sub x20, sp, 464
0029a6d4stp x29, x30, [x20-8]
0029a6d8add sp, x20, 0
0029a6dcsub x29, sp, 8
0029a6e0str x0, [sp+472]
0029a6e4str x1, [sp+480]
0029a6e8str x2, [sp+488]
0029a6ecstr x3, [sp+496]
0029a6f0str x4, [sp+504]
0029a6f4str x5, [sp+512]
0029a6f8str xzr, [sp+112]
0029a6fcstr xzr, [sp+104]
0029a700stp xzr, xzr, [sp+360]
0029a704ldr x0, [sp+472]
0029a708bl crypto/elliptic.matchesSpecificCurve
0029a70cstr x0, [sp+360]
0029a710str x1, [sp+368]
0029a714strb w2, [sp+79]
0029a718ldr x1, [sp+360]
0029a71cldr x2, [sp+368]
0029a720str x1, [sp+168]
0029a724str x2, [sp+176]
0029a728ldrb w1, [sp+79]
0029a72cstrb w1, [sp+78]
0029a730ldr x1, [sp+168]
0029a734ldr x2, [sp+176]
0029a738str x1, [sp+144]
0029a73cstr x2, [sp+152]
0029a740ldrb w1, [sp+78]
0029a744strb w1, [sp+76]
0029a748tbnz w1, 0, 0x29a750
0029a74cb 0x29a7b8
0029a750
0029a750loc_29a750:
0029a750str xzr, [sp+352]
0029a754str xzr, [sp+344]
0029a758ldr x1, [sp+480]
0029a75cldr x2, [sp+488]
0029a760ldr x4, [sp+504]
0029a764ldr x5, [sp+512]
0029a768ldr x6, [sp+144]
0029a76cldrsb x27, [x6]
0029a770ldr x6, [x6+64]
0029a774ldr x3, [sp+496]
0029a778ldr x0, [sp+152]
0029a77cblr x6
0029a780str x0, [sp+352]
0029a784str x1, [sp+344]
0029a788ldr x6, [sp+352]
0029a78cstr x6, [sp+448]
0029a790ldr x6, [sp+344]
0029a794str x6, [sp+440]
0029a798ldr x6, [sp+448]
0029a79cstr x6, [sp+112]
0029a7a0ldr x1, [sp+440]
0029a7a4str x1, [sp+104]
0029a7a8ldr x0, [sp+112]
0029a7acldp x29, x30, [sp-8]
0029a7b0add sp, sp, 464
0029a7b4ret x30
0029a7b8
0029a7b8loc_29a7b8:
0029a7b8ldr x2, [sp+480]
0029a7bcldr x3, [sp+488]
0029a7c0ldr x1, [sp+472]
0029a7c4adrp x0, 0x480000
0029a7c8add x0, x0, 648
0029a7ccbl crypto/elliptic.panicIfNotOnCurve
0029a7d0strb wzr, [sp+280]
0029a7d4str xzr, [sp+288]
0029a7d8stp xzr, xzr, [sp+296]
0029a7dcadd x0, sp, 280
0029a7e0str x0, [sp+344]
0029a7e4orr x1, xzr, 1
0029a7e8bl math/big.(*Int).SetInt64
0029a7ecstr x0, [sp+160]
0029a7f0strb wzr, [sp+248]
0029a7f4str xzr, [sp+256]
0029a7f8stp xzr, xzr, [sp+264]
0029a7fcadd x4, sp, 248
0029a800str x4, [sp+344]
0029a804strb wzr, [sp+216]
0029a808str xzr, [sp+224]
0029a80cstp xzr, xzr, [sp+232]
0029a810add x4, sp, 216
0029a814str x4, [sp+352]
0029a818strb wzr, [sp+184]
0029a81cstr xzr, [sp+192]
0029a820stp xzr, xzr, [sp+200]
0029a824add x4, sp, 184
0029a828str x4, [sp+336]
0029a82cldr x4, [sp+344]
0029a830str x4, [sp+136]
0029a834ldr x4, [sp+352]
0029a838str x4, [sp+128]
0029a83cldr x4, [sp+336]
0029a840str x4, [sp+120]
0029a844ldr x4, [sp+504]
0029a848ldr x5, [sp+496]
0029a84cldr x6, [sp+512]
0029a850str x5, [sp+312]
0029a854str x4, [sp+320]
0029a858str x6, [sp+328]
0029a85cstr xzr, [sp+96]
0029a860str x4, [sp+88]
0029a864b 0x29a868
0029a868
0029a868loc_29a868:
0029a868ldr x4, [sp+88]
0029a86cldr x5, [sp+96]
0029a870subs xzr, x4, x5
0029a874b.gt 0x29a87c
0029a878b 0x29a894
0029a87c
0029a87cloc_29a87c:
0029a87cldr x4, [sp+96]
0029a880ldr x5, [sp+312]
0029a884ldrb w4, [x5+x4]
0029a888strb w4, [sp+77]
0029a88cstr xzr, [sp+80]
0029a890b 0x29a8e8
0029a894
0029a894loc_29a894:
0029a894str xzr, [sp+336]
0029a898str xzr, [sp+352]
0029a89cldr x1, [sp+136]
0029a8a0ldr x2, [sp+128]
0029a8a4ldr x3, [sp+120]
0029a8a8ldr x0, [sp+472]
0029a8acbl crypto/elliptic.(*CurveParams).affineFromJacobian
0029a8b0str x0, [sp+336]
0029a8b4str x1, [sp+352]
0029a8b8ldr x4, [sp+336]
0029a8bcstr x4, [sp+384]
0029a8c0ldr x4, [sp+352]
0029a8c4str x4, [sp+376]
0029a8c8ldr x4, [sp+384]
0029a8ccstr x4, [sp+112]
0029a8d0ldr x1, [sp+376]
0029a8d4str x1, [sp+104]
0029a8d8ldr x0, [sp+112]
0029a8dcldp x29, x30, [sp-8]
0029a8e0add sp, sp, 464
0029a8e4ret x30
0029a8e8
0029a8e8loc_29a8e8:
0029a8e8ldr x4, [sp+80]
0029a8ecsubs xzr, x4, 8
0029a8f0b.lt 0x29a8f8
0029a8f4b 0x29a9f0
0029a8f8
0029a8f8loc_29a8f8:
0029a8f8str xzr, [sp+336]
0029a8fcstr xzr, [sp+352]
0029a900str xzr, [sp+344]
0029a904ldr x1, [sp+136]
0029a908ldr x2, [sp+128]
0029a90cldr x3, [sp+120]
0029a910ldr x0, [sp+472]
0029a914bl crypto/elliptic.(*CurveParams).doubleJacobian
0029a918str x0, [sp+336]
0029a91cstr x1, [sp+352]
0029a920str x2, [sp+344]
0029a924ldr x4, [sp+336]
0029a928str x4, [sp+432]
0029a92cldr x4, [sp+352]
0029a930str x4, [sp+424]
0029a934ldr x4, [sp+344]
0029a938str x4, [sp+416]
0029a93cldr x4, [sp+432]
0029a940str x4, [sp+136]
0029a944ldr x4, [sp+424]
0029a948str x4, [sp+128]
0029a94cldr x4, [sp+416]
0029a950str x4, [sp+120]
0029a954ldrb w4, [sp+77]
0029a958tbnz w4, 7, 0x29a960
0029a95cb 0x29a9cc
0029a960
0029a960loc_29a960:
0029a960str xzr, [sp+344]
0029a964str xzr, [sp+352]
0029a968str xzr, [sp+336]
0029a96cldr x1, [sp+480]
0029a970ldr x2, [sp+488]
0029a974ldr x3, [sp+160]
0029a978ldr x4, [sp+136]
0029a97cldr x5, [sp+128]
0029a980ldr x6, [sp+120]
0029a984ldr x0, [sp+472]
0029a988bl crypto/elliptic.(*CurveParams).addJacobian
0029a98cstr x0, [sp+344]
0029a990str x1, [sp+352]
0029a994str x2, [sp+336]
0029a998ldr x7, [sp+344]
0029a99cstr x7, [sp+408]
0029a9a0ldr x7, [sp+352]
0029a9a4str x7, [sp+400]
0029a9a8ldr x7, [sp+336]
0029a9acstr x7, [sp+392]
0029a9b0ldr x7, [sp+408]
0029a9b4str x7, [sp+136]
0029a9b8ldr x7, [sp+400]
0029a9bcstr x7, [sp+128]
0029a9c0ldr x7, [sp+392]
0029a9c4str x7, [sp+120]
0029a9c8b 0x29a9d0
0029a9cc
0029a9ccloc_29a9cc:
0029a9ccb 0x29a9d0
0029a9d0
0029a9d0loc_29a9d0:
0029a9d0ldrb w4, [sp+77]
0029a9d4ubfm x4, x4, 63, 62
0029a9d8strb w4, [sp+77]
0029a9dcb 0x29a9e0
0029a9e0
0029a9e0loc_29a9e0:
0029a9e0ldr x4, [sp+80]
0029a9e4add x4, x4, 1
0029a9e8str x4, [sp+80]
0029a9ecb 0x29a8e8
0029a9f0
0029a9f0loc_29a9f0:
0029a9f0b 0x29a9f4
0029a9f4
0029a9f4loc_29a9f4:
0029a9f4ldr x4, [sp+96]
0029a9f8add x4, x4, 1
0029a9fcstr x4, [sp+96]
0029aa00b 0x29a868
0029aa04
0029aa04loc_29aa04:
0029aa04stp x0, x1, [sp+8]
0029aa08stp x2, x3, [sp+24]
0029aa0cstp x4, x5, [sp+40]
0029aa10mov x3, x30
0029aa14bl runtime.morestack_noctxt.abi0
0029aa18ldp x0, x1, [sp+8]
0029aa1cldp x2, x3, [sp+24]
0029aa20ldp x4, x5, [sp+40]
0029aa24b 0x29a6c0
0029aa28udf 0
0029aa2cudf 0
0029a6c0
0029a6c0crypto/elliptic.(*CurveParams).ScalarMult: ; void crypto/elliptic.(*CurveParams).ScalarMult(crypto/elliptic.CurveParams * curve, math/big.Int * Bx, math/big.Int * By, struct []uint8 k)
0029a6c0ldr x16, [x28+16]
0029a6c4sub x17, sp, 336
0029a6c8subs xzr, x17, x16
0029a6ccb.ls 0x29aa04
0029a6d0sub x20, sp, 464
0029a6d4stp x29, x30, [x20-8]
0029a6d8add sp, x20, 0
0029a6dcsub x29, sp, 8
0029a6e0str x0, [sp+472]
0029a6e4str x1, [sp+480]
0029a6e8str x2, [sp+488]
0029a6ecstr x3, [sp+496]
0029a6f0str x4, [sp+504]
0029a6f4str x5, [sp+512]
0029a6f8str xzr, [sp+112]
0029a6fcstr xzr, [sp+104]
0029a700stp xzr, xzr, [sp+360]
0029a704ldr x0, [sp+472]
0029a708bl crypto/elliptic.matchesSpecificCurve
0029a70cstr x0, [sp+360]
0029a710str x1, [sp+368]
0029a714strb w2, [sp+79]
0029a718ldr x1, [sp+360]
0029a71cldr x2, [sp+368]
0029a720str x1, [sp+168]
0029a724str x2, [sp+176]
0029a728ldrb w1, [sp+79]
0029a72cstrb w1, [sp+78]
0029a730ldr x1, [sp+168]
0029a734ldr x2, [sp+176]
0029a738str x1, [sp+144]
0029a73cstr x2, [sp+152]
0029a740ldrb w1, [sp+78]
0029a744strb w1, [sp+76]
0029a748tbnz w1, 0, 0x29a750
0029a74cb 0x29a7b8
0029a750
0029a750loc_29a750:
0029a750str xzr, [sp+352]
0029a754str xzr, [sp+344]
0029a758ldr x1, [sp+480]
0029a75cldr x2, [sp+488]
0029a760ldr x4, [sp+504]
0029a764ldr x5, [sp+512]
0029a768ldr x6, [sp+144]
0029a76cldrsb x27, [x6]
0029a770ldr x6, [x6+64]
0029a774ldr x3, [sp+496]
0029a778ldr x0, [sp+152]
0029a77cblr x6
0029a780str x0, [sp+352]
0029a784str x1, [sp+344]
0029a788ldr x6, [sp+352]
0029a78cstr x6, [sp+448]
0029a790ldr x6, [sp+344]
0029a794str x6, [sp+440]
0029a798ldr x6, [sp+448]
0029a79cstr x6, [sp+112]
0029a7a0ldr x1, [sp+440]
0029a7a4str x1, [sp+104]
0029a7a8ldr x0, [sp+112]
0029a7acldp x29, x30, [sp-8]
0029a7b0add sp, sp, 464
0029a7b4ret x30
0029a7b8
0029a7b8loc_29a7b8:
0029a7b8ldr x2, [sp+480]
0029a7bcldr x3, [sp+488]
0029a7c0ldr x1, [sp+472]
0029a7c4adrp x0, 0x480000
0029a7c8add x0, x0, 648
0029a7ccbl crypto/elliptic.panicIfNotOnCurve
0029a7d0strb wzr, [sp+280]
0029a7d4str xzr, [sp+288]
0029a7d8stp xzr, xzr, [sp+296]
0029a7dcadd x0, sp, 280
0029a7e0str x0, [sp+344]
0029a7e4orr x1, xzr, 1
0029a7e8bl math/big.(*Int).SetInt64
0029a7ecstr x0, [sp+160]
0029a7f0strb wzr, [sp+248]
0029a7f4str xzr, [sp+256]
0029a7f8stp xzr, xzr, [sp+264]
0029a7fcadd x4, sp, 248
0029a800str x4, [sp+344]
0029a804strb wzr, [sp+216]
0029a808str xzr, [sp+224]
0029a80cstp xzr, xzr, [sp+232]
0029a810add x4, sp, 216
0029a814str x4, [sp+352]
0029a818strb wzr, [sp+184]
0029a81cstr xzr, [sp+192]
0029a820stp xzr, xzr, [sp+200]
0029a824add x4, sp, 184
0029a828str x4, [sp+336]
0029a82cldr x4, [sp+344]
0029a830str x4, [sp+136]
0029a834ldr x4, [sp+352]
0029a838str x4, [sp+128]
0029a83cldr x4, [sp+336]
0029a840str x4, [sp+120]
0029a844ldr x4, [sp+504]
0029a848ldr x5, [sp+496]
0029a84cldr x6, [sp+512]
0029a850str x5, [sp+312]
0029a854str x4, [sp+320]
0029a858str x6, [sp+328]
0029a85cstr xzr, [sp+96]
0029a860str x4, [sp+88]
0029a864b 0x29a868
0029a868
0029a868loc_29a868:
0029a868ldr x4, [sp+88]
0029a86cldr x5, [sp+96]
0029a870subs xzr, x4, x5
0029a874b.gt 0x29a87c
0029a878b 0x29a894
0029a87c
0029a87cloc_29a87c:
0029a87cldr x4, [sp+96]
0029a880ldr x5, [sp+312]
0029a884ldrb w4, [x5+x4]
0029a888strb w4, [sp+77]
0029a88cstr xzr, [sp+80]
0029a890b 0x29a8e8
0029a894
0029a894loc_29a894:
0029a894str xzr, [sp+336]
0029a898str xzr, [sp+352]
0029a89cldr x1, [sp+136]
0029a8a0ldr x2, [sp+128]
0029a8a4ldr x3, [sp+120]
0029a8a8ldr x0, [sp+472]
0029a8acbl crypto/elliptic.(*CurveParams).affineFromJacobian
0029a8b0str x0, [sp+336]
0029a8b4str x1, [sp+352]
0029a8b8ldr x4, [sp+336]
0029a8bcstr x4, [sp+384]
0029a8c0ldr x4, [sp+352]
0029a8c4str x4, [sp+376]
0029a8c8ldr x4, [sp+384]
0029a8ccstr x4, [sp+112]
0029a8d0ldr x1, [sp+376]
0029a8d4str x1, [sp+104]
0029a8d8ldr x0, [sp+112]
0029a8dcldp x29, x30, [sp-8]
0029a8e0add sp, sp, 464
0029a8e4ret x30
0029a8e8
0029a8e8loc_29a8e8:
0029a8e8ldr x4, [sp+80]
0029a8ecsubs xzr, x4, 8
0029a8f0b.lt 0x29a8f8
0029a8f4b 0x29a9f0
0029a8f8
0029a8f8loc_29a8f8:
0029a8f8str xzr, [sp+336]
0029a8fcstr xzr, [sp+352]
0029a900str xzr, [sp+344]
0029a904ldr x1, [sp+136]
0029a908ldr x2, [sp+128]
0029a90cldr x3, [sp+120]
0029a910ldr x0, [sp+472]
0029a914bl crypto/elliptic.(*CurveParams).doubleJacobian
0029a918str x0, [sp+336]
0029a91cstr x1, [sp+352]
0029a920str x2, [sp+344]
0029a924ldr x4, [sp+336]
0029a928str x4, [sp+432]
0029a92cldr x4, [sp+352]
0029a930str x4, [sp+424]
0029a934ldr x4, [sp+344]
0029a938str x4, [sp+416]
0029a93cldr x4, [sp+432]
0029a940str x4, [sp+136]
0029a944ldr x4, [sp+424]
0029a948str x4, [sp+128]
0029a94cldr x4, [sp+416]
0029a950str x4, [sp+120]
0029a954ldrb w4, [sp+77]
0029a958tbnz w4, 7, 0x29a960
0029a95cb 0x29a9cc
0029a960
0029a960loc_29a960:
0029a960str xzr, [sp+344]
0029a964str xzr, [sp+352]
0029a968str xzr, [sp+336]
0029a96cldr x1, [sp+480]
0029a970ldr x2, [sp+488]
0029a974ldr x3, [sp+160]
0029a978ldr x4, [sp+136]
0029a97cldr x5, [sp+128]
0029a980ldr x6, [sp+120]
0029a984ldr x0, [sp+472]
0029a988bl crypto/elliptic.(*CurveParams).addJacobian
0029a98cstr x0, [sp+344]
0029a990str x1, [sp+352]
0029a994str x2, [sp+336]
0029a998ldr x7, [sp+344]
0029a99cstr x7, [sp+408]
0029a9a0ldr x7, [sp+352]
0029a9a4str x7, [sp+400]
0029a9a8ldr x7, [sp+336]
0029a9acstr x7, [sp+392]
0029a9b0ldr x7, [sp+408]
0029a9b4str x7, [sp+136]
0029a9b8ldr x7, [sp+400]
0029a9bcstr x7, [sp+128]
0029a9c0ldr x7, [sp+392]
0029a9c4str x7, [sp+120]
0029a9c8b 0x29a9d0
0029a9cc
0029a9ccloc_29a9cc:
0029a9ccb 0x29a9d0
0029a9d0
0029a9d0loc_29a9d0:
0029a9d0ldrb w4, [sp+77]
0029a9d4ubfm x4, x4, 63, 62
0029a9d8strb w4, [sp+77]
0029a9dcb 0x29a9e0
0029a9e0
0029a9e0loc_29a9e0:
0029a9e0ldr x4, [sp+80]
0029a9e4add x4, x4, 1
0029a9e8str x4, [sp+80]
0029a9ecb 0x29a8e8
0029a9f0
0029a9f0loc_29a9f0:
0029a9f0b 0x29a9f4
0029a9f4
0029a9f4loc_29a9f4:
0029a9f4ldr x4, [sp+96]
0029a9f8add x4, x4, 1
0029a9fcstr x4, [sp+96]
0029aa00b 0x29a868
0029aa04
0029aa04loc_29aa04:
0029aa04stp x0, x1, [sp+8]
0029aa08stp x2, x3, [sp+24]
0029aa0cstp x4, x5, [sp+40]
0029aa10mov x3, x30
0029aa14bl runtime.morestack_noctxt.abi0
0029aa18ldp x0, x1, [sp+8]
0029aa1cldp x2, x3, [sp+24]
0029aa20ldp x4, x5, [sp+40]
0029aa24b 0x29a6c0
0029aa28udf 0
0029aa2cudf 0
0029a6c0
0029aa30
0029aa30crypto/elliptic.(*CurveParams).ScalarBaseMult: ; void crypto/elliptic.(*CurveParams).ScalarBaseMult(crypto/elliptic.CurveParams * curve, struct []uint8 k)
0029aa30ldr x16, [x28+16]
0029aa34sub x17, sp, 80
0029aa38subs xzr, x17, x16
0029aa3cb.ls 0x29ab8c
0029aa40str x30, [sp-208]!
0029aa44stur x29, [sp-8]
0029aa48sub x29, sp, 8
0029aa4cstr x0, [sp+216]
0029aa50str x1, [sp+224]
0029aa54str x2, [sp+232]
0029aa58str x3, [sp+240]
0029aa5cstr xzr, [sp+80]
0029aa60str xzr, [sp+72]
0029aa64stp xzr, xzr, [sp+168]
0029aa68ldr x0, [sp+216]
0029aa6cbl crypto/elliptic.matchesSpecificCurve
0029aa70str x0, [sp+168]
0029aa74str x1, [sp+176]
0029aa78strb w2, [sp+71]
0029aa7cldr x1, [sp+168]
0029aa80ldr x2, [sp+176]
0029aa84str x1, [sp+120]
0029aa88str x2, [sp+128]
0029aa8cldrb w1, [sp+71]
0029aa90strb w1, [sp+70]
0029aa94ldr x1, [sp+120]
0029aa98ldr x2, [sp+128]
0029aa9cstr x1, [sp+88]
0029aaa0str x2, [sp+96]
0029aaa4ldrb w1, [sp+70]
0029aaa8strb w1, [sp+69]
0029aaactbnz w1, 0, 0x29aab4
0029aab0b 0x29ab14
0029aab4
0029aab4loc_29aab4:
0029aab4str xzr, [sp+160]
0029aab8str xzr, [sp+152]
0029aabcldr x2, [sp+232]
0029aac0ldr x3, [sp+240]
0029aac4ldr x4, [sp+88]
0029aac8ldrsb x27, [x4]
0029aaccldr x4, [x4+56]
0029aad0ldr x1, [sp+224]
0029aad4ldr x0, [sp+96]
0029aad8blr x4
0029aadcstr x0, [sp+160]
0029aae0str x1, [sp+152]
0029aae4ldr x4, [sp+160]
0029aae8str x4, [sp+112]
0029aaecldr x4, [sp+152]
0029aaf0str x4, [sp+104]
0029aaf4ldr x4, [sp+112]
0029aaf8str x4, [sp+80]
0029aafcldr x1, [sp+104]
0029ab00str x1, [sp+72]
0029ab04ldr x0, [sp+80]
0029ab08ldur x29, [sp-8]
0029ab0cldr x30, [sp], 208
0029ab10ret x30
0029ab14
0029ab14loc_29ab14:
0029ab14str xzr, [sp+152]
0029ab18str xzr, [sp+160]
0029ab1cldr x6, [sp+216]
0029ab20ldrsb x27, [x6]
0029ab24ldr x6, [x6+24]
0029ab28str x6, [sp+144]
0029ab2cldr x6, [sp+216]
0029ab30ldrsb x27, [x6]
0029ab34ldr x2, [x6+32]
0029ab38str x2, [sp+136]
0029ab3cldr x3, [sp+224]
0029ab40ldr x0, [sp+216]
0029ab44ldr x4, [sp+232]
0029ab48ldr x5, [sp+240]
0029ab4cldr x1, [sp+144]
0029ab50bl crypto/elliptic.(*CurveParams).ScalarMult
0029ab54str x0, [sp+152]
0029ab58str x1, [sp+160]
0029ab5cldr x6, [sp+152]
0029ab60str x6, [sp+192]
0029ab64ldr x6, [sp+160]
0029ab68str x6, [sp+184]
0029ab6cldr x6, [sp+192]
0029ab70str x6, [sp+80]
0029ab74ldr x1, [sp+184]
0029ab78str x1, [sp+72]
0029ab7cldr x0, [sp+80]
0029ab80ldur x29, [sp-8]
0029ab84ldr x30, [sp], 208
0029ab88ret x30
0029ab8c
0029ab8cloc_29ab8c:
0029ab8cstp x0, x1, [sp+8]
0029ab90stp x2, x3, [sp+24]
0029ab94mov x3, x30
0029ab98bl runtime.morestack_noctxt.abi0
0029ab9cldp x0, x1, [sp+8]
0029aba0ldp x2, x3, [sp+24]
0029aba4b 0x29aa30
0029aba8udf 0
0029abacudf 0
0029aa30
0029aa30crypto/elliptic.(*CurveParams).ScalarBaseMult: ; void crypto/elliptic.(*CurveParams).ScalarBaseMult(crypto/elliptic.CurveParams * curve, struct []uint8 k)
0029aa30ldr x16, [x28+16]
0029aa34sub x17, sp, 80
0029aa38subs xzr, x17, x16
0029aa3cb.ls 0x29ab8c
0029aa40str x30, [sp-208]!
0029aa44stur x29, [sp-8]
0029aa48sub x29, sp, 8
0029aa4cstr x0, [sp+216]
0029aa50str x1, [sp+224]
0029aa54str x2, [sp+232]
0029aa58str x3, [sp+240]
0029aa5cstr xzr, [sp+80]
0029aa60str xzr, [sp+72]
0029aa64stp xzr, xzr, [sp+168]
0029aa68ldr x0, [sp+216]
0029aa6cbl crypto/elliptic.matchesSpecificCurve
0029aa70str x0, [sp+168]
0029aa74str x1, [sp+176]
0029aa78strb w2, [sp+71]
0029aa7cldr x1, [sp+168]
0029aa80ldr x2, [sp+176]
0029aa84str x1, [sp+120]
0029aa88str x2, [sp+128]
0029aa8cldrb w1, [sp+71]
0029aa90strb w1, [sp+70]
0029aa94ldr x1, [sp+120]
0029aa98ldr x2, [sp+128]
0029aa9cstr x1, [sp+88]
0029aaa0str x2, [sp+96]
0029aaa4ldrb w1, [sp+70]
0029aaa8strb w1, [sp+69]
0029aaactbnz w1, 0, 0x29aab4
0029aab0b 0x29ab14
0029aab4
0029aab4loc_29aab4:
0029aab4str xzr, [sp+160]
0029aab8str xzr, [sp+152]
0029aabcldr x2, [sp+232]
0029aac0ldr x3, [sp+240]
0029aac4ldr x4, [sp+88]
0029aac8ldrsb x27, [x4]
0029aaccldr x4, [x4+56]
0029aad0ldr x1, [sp+224]
0029aad4ldr x0, [sp+96]
0029aad8blr x4
0029aadcstr x0, [sp+160]
0029aae0str x1, [sp+152]
0029aae4ldr x4, [sp+160]
0029aae8str x4, [sp+112]
0029aaecldr x4, [sp+152]
0029aaf0str x4, [sp+104]
0029aaf4ldr x4, [sp+112]
0029aaf8str x4, [sp+80]
0029aafcldr x1, [sp+104]
0029ab00str x1, [sp+72]
0029ab04ldr x0, [sp+80]
0029ab08ldur x29, [sp-8]
0029ab0cldr x30, [sp], 208
0029ab10ret x30
0029ab14
0029ab14loc_29ab14:
0029ab14str xzr, [sp+152]
0029ab18str xzr, [sp+160]
0029ab1cldr x6, [sp+216]
0029ab20ldrsb x27, [x6]
0029ab24ldr x6, [x6+24]
0029ab28str x6, [sp+144]
0029ab2cldr x6, [sp+216]
0029ab30ldrsb x27, [x6]
0029ab34ldr x2, [x6+32]
0029ab38str x2, [sp+136]
0029ab3cldr x3, [sp+224]
0029ab40ldr x0, [sp+216]
0029ab44ldr x4, [sp+232]
0029ab48ldr x5, [sp+240]
0029ab4cldr x1, [sp+144]
0029ab50bl crypto/elliptic.(*CurveParams).ScalarMult
0029ab54str x0, [sp+152]
0029ab58str x1, [sp+160]
0029ab5cldr x6, [sp+152]
0029ab60str x6, [sp+192]
0029ab64ldr x6, [sp+160]
0029ab68str x6, [sp+184]
0029ab6cldr x6, [sp+192]
0029ab70str x6, [sp+80]
0029ab74ldr x1, [sp+184]
0029ab78str x1, [sp+72]
0029ab7cldr x0, [sp+80]
0029ab80ldur x29, [sp-8]
0029ab84ldr x30, [sp], 208
0029ab88ret x30
0029ab8c
0029ab8cloc_29ab8c:
0029ab8cstp x0, x1, [sp+8]
0029ab90stp x2, x3, [sp+24]
0029ab94mov x3, x30
0029ab98bl runtime.morestack_noctxt.abi0
0029ab9cldp x0, x1, [sp+8]
0029aba0ldp x2, x3, [sp+24]
0029aba4b 0x29aa30
0029aba8udf 0
0029abacudf 0
0029aa30
0029abb0
0029abb0crypto/elliptic.matchesSpecificCurve: ; void crypto/elliptic.matchesSpecificCurve(crypto/elliptic.CurveParams * params)
0029abb0ldr x16, [x28+16]
0029abb4sub x17, sp, 80
0029abb8subs xzr, x17, x16
0029abbcb.ls 0x29adf4
0029abc0str x30, [sp-208]!
0029abc4stur x29, [sp-8]
0029abc8sub x29, sp, 8
0029abccstr x0, [sp+216]
0029abd0stp xzr, xzr, [sp+56]
0029abd4strb wzr, [sp+31]
0029abd8stp xzr, xzr, [sp+88]
0029abdcstp xzr, xzr, [sp+104]
0029abe0stp xzr, xzr, [sp+120]
0029abe4stp xzr, xzr, [sp+136]
0029abe8add x3, sp, 88
0029abecstr x3, [sp+152]
0029abf0ldrsb x27, [x3]
0029abf4adrp x27, 0x773000
0029abf8ldr x4, [x27+1968]
0029abfcadrp x5, 0x480000
0029ac00add x5, x5, 360
0029ac04str x5, [x3]
0029ac08adrp x27, 0x7b1000
0029ac0cldr w5, [x27+3056]
0029ac10cbz w5, 0x29ac18
0029ac14b 0x29ac1c
0029ac18
0029ac18loc_29ac18:
0029ac18b 0x29ac30
0029ac1c
0029ac1cloc_29ac1c:
0029ac1cbl runtime.gcWriteBarrier2
0029ac20str x4, [x25]
0029ac24ldr x5, [x3+8]
0029ac28str x5, [x25+8]
0029ac2cb 0x29ac30
0029ac30
0029ac30loc_29ac30:
0029ac30str x4, [x3+8]
0029ac34ldrsb x27, [x3]
0029ac38adrp x27, 0x773000
0029ac3cldr x4, [x27+1976]
0029ac40adrp x5, 0x480000
0029ac44add x5, x5, 432
0029ac48str x5, [x3+16]
0029ac4cadrp x27, 0x7b1000
0029ac50ldr w5, [x27+3056]
0029ac54cbz w5, 0x29ac5c
0029ac58b 0x29ac60
0029ac5c
0029ac5cloc_29ac5c:
0029ac5cb 0x29ac74
0029ac60
0029ac60loc_29ac60:
0029ac60bl runtime.gcWriteBarrier2
0029ac64str x4, [x25]
0029ac68ldr x5, [x3+24]
0029ac6cstr x5, [x25+8]
0029ac70b 0x29ac74
0029ac74
0029ac74loc_29ac74:
0029ac74str x4, [x3+24]
0029ac78ldr x3, [sp+152]
0029ac7cldrsb x27, [x3]
0029ac80adrp x27, 0x773000
0029ac84ldr x4, [x27+1984]
0029ac88adrp x5, 0x480000
0029ac8cadd x5, x5, 504
0029ac90str x5, [x3+32]
0029ac94adrp x27, 0x7b1000
0029ac98ldr w5, [x27+3056]
0029ac9ccbz w5, 0x29aca4
0029aca0b 0x29aca8
0029aca4
0029aca4loc_29aca4:
0029aca4b 0x29acbc
0029aca8
0029aca8loc_29aca8:
0029aca8bl runtime.gcWriteBarrier2
0029acacstr x4, [x25]
0029acb0ldr x5, [x3+40]
0029acb4str x5, [x25+8]
0029acb8b 0x29acbc
0029acbc
0029acbcloc_29acbc:
0029acbcstr x4, [x3+40]
0029acc0ldr x3, [sp+152]
0029acc4ldrsb x27, [x3]
0029acc8adrp x27, 0x773000
0029acccldr x4, [x27+1992]
0029acd0adrp x5, 0x480000
0029acd4add x5, x5, 576
0029acd8str x5, [x3+48]
0029acdcadrp x27, 0x7b1000
0029ace0ldr w5, [x27+3056]
0029ace4cbz w5, 0x29acec
0029ace8b 0x29acf0
0029acec
0029acecloc_29acec:
0029acecb 0x29ad04
0029acf0
0029acf0loc_29acf0:
0029acf0bl runtime.gcWriteBarrier2
0029acf4str x4, [x25]
0029acf8ldr x5, [x3+56]
0029acfcstr x5, [x25+8]
0029ad00b 0x29ad04
0029ad04
0029ad04loc_29ad04:
0029ad04str x4, [x3+56]
0029ad08ldr x3, [sp+152]
0029ad0cldrsb x27, [x3]
0029ad10b 0x29ad14
0029ad14
0029ad14loc_29ad14:
0029ad14str x3, [sp+168]
0029ad18orr x3, xzr, 4
0029ad1cstr x3, [sp+176]
0029ad20str x3, [sp+184]
0029ad24str xzr, [sp+40]
0029ad28str x3, [sp+32]
0029ad2cldr x3, [sp+168]
0029ad30str x3, [sp+48]
0029ad34b 0x29ad38
0029ad38
0029ad38loc_29ad38:
0029ad38ldr x3, [sp+32]
0029ad3cldr x4, [sp+40]
0029ad40subs xzr, x3, x4
0029ad44b.gt 0x29ad4c
0029ad48b 0x29add4
0029ad4c
0029ad4cloc_29ad4c:
0029ad4cldr x1, [sp+48]
0029ad50str x1, [sp+192]
0029ad54ldr x1, [sp+192]
0029ad58ldr x2, [x1]
0029ad5cldr x0, [x1+8]
0029ad60str x2, [sp+72]
0029ad64str x0, [sp+80]
0029ad68ldrsb x27, [x2]
0029ad6cldr x1, [x2+48]
0029ad70blr x1
0029ad74str x0, [sp+160]
0029ad78ldr x1, [sp+216]
0029ad7csubs xzr, x0, x1
0029ad80b.eq 0x29ad88
0029ad84b 0x29adb4
0029ad88
0029ad88loc_29ad88:
0029ad88ldr x3, [sp+72]
0029ad8cldr x4, [sp+80]
0029ad90str x3, [sp+56]
0029ad94str x4, [sp+64]
0029ad98orr x2, xzr, 1
0029ad9cstrb w2, [sp+31]
0029ada0ldr x0, [sp+56]
0029ada4ldr x1, [sp+64]
0029ada8ldur x29, [sp-8]
0029adacldr x30, [sp], 208
0029adb0ret x30
0029adb4
0029adb4loc_29adb4:
0029adb4b 0x29adb8
0029adb8
0029adb8loc_29adb8:
0029adb8ldr x3, [sp+40]
0029adbcadd x3, x3, 1
0029adc0str x3, [sp+40]
0029adc4ldr x3, [sp+192]
0029adc8add x3, x3, 16
0029adccstr x3, [sp+48]
0029add0b 0x29ad38
0029add4
0029add4loc_29add4:
0029add4stp xzr, xzr, [sp+56]
0029add8strb wzr, [sp+31]
0029addcldr x1, [sp+64]
0029ade0ldr x0, [sp+56]
0029ade4mov x2, xzr
0029ade8ldur x29, [sp-8]
0029adecldr x30, [sp], 208
0029adf0ret x30
0029adf4
0029adf4loc_29adf4:
0029adf4str x0, [sp+8]
0029adf8mov x3, x30
0029adfcbl runtime.morestack_noctxt.abi0
0029ae00ldr x0, [sp+8]
0029ae04b 0x29abb0
0029ae08udf 0
0029ae0cudf 0
0029abb0
0029abb0crypto/elliptic.matchesSpecificCurve: ; void crypto/elliptic.matchesSpecificCurve(crypto/elliptic.CurveParams * params)
0029abb0ldr x16, [x28+16]
0029abb4sub x17, sp, 80
0029abb8subs xzr, x17, x16
0029abbcb.ls 0x29adf4
0029abc0str x30, [sp-208]!
0029abc4stur x29, [sp-8]
0029abc8sub x29, sp, 8
0029abccstr x0, [sp+216]
0029abd0stp xzr, xzr, [sp+56]
0029abd4strb wzr, [sp+31]
0029abd8stp xzr, xzr, [sp+88]
0029abdcstp xzr, xzr, [sp+104]
0029abe0stp xzr, xzr, [sp+120]
0029abe4stp xzr, xzr, [sp+136]
0029abe8add x3, sp, 88
0029abecstr x3, [sp+152]
0029abf0ldrsb x27, [x3]
0029abf4adrp x27, 0x773000
0029abf8ldr x4, [x27+1968]
0029abfcadrp x5, 0x480000
0029ac00add x5, x5, 360
0029ac04str x5, [x3]
0029ac08adrp x27, 0x7b1000
0029ac0cldr w5, [x27+3056]
0029ac10cbz w5, 0x29ac18
0029ac14b 0x29ac1c
0029ac18
0029ac18loc_29ac18:
0029ac18b 0x29ac30
0029ac1c
0029ac1cloc_29ac1c:
0029ac1cbl runtime.gcWriteBarrier2
0029ac20str x4, [x25]
0029ac24ldr x5, [x3+8]
0029ac28str x5, [x25+8]
0029ac2cb 0x29ac30
0029ac30
0029ac30loc_29ac30:
0029ac30str x4, [x3+8]
0029ac34ldrsb x27, [x3]
0029ac38adrp x27, 0x773000
0029ac3cldr x4, [x27+1976]
0029ac40adrp x5, 0x480000
0029ac44add x5, x5, 432
0029ac48str x5, [x3+16]
0029ac4cadrp x27, 0x7b1000
0029ac50ldr w5, [x27+3056]
0029ac54cbz w5, 0x29ac5c
0029ac58b 0x29ac60
0029ac5c
0029ac5cloc_29ac5c:
0029ac5cb 0x29ac74
0029ac60
0029ac60loc_29ac60:
0029ac60bl runtime.gcWriteBarrier2
0029ac64str x4, [x25]
0029ac68ldr x5, [x3+24]
0029ac6cstr x5, [x25+8]
0029ac70b 0x29ac74
0029ac74
0029ac74loc_29ac74:
0029ac74str x4, [x3+24]
0029ac78ldr x3, [sp+152]
0029ac7cldrsb x27, [x3]
0029ac80adrp x27, 0x773000
0029ac84ldr x4, [x27+1984]
0029ac88adrp x5, 0x480000
0029ac8cadd x5, x5, 504
0029ac90str x5, [x3+32]
0029ac94adrp x27, 0x7b1000
0029ac98ldr w5, [x27+3056]
0029ac9ccbz w5, 0x29aca4
0029aca0b 0x29aca8
0029aca4
0029aca4loc_29aca4:
0029aca4b 0x29acbc
0029aca8
0029aca8loc_29aca8:
0029aca8bl runtime.gcWriteBarrier2
0029acacstr x4, [x25]
0029acb0ldr x5, [x3+40]
0029acb4str x5, [x25+8]
0029acb8b 0x29acbc
0029acbc
0029acbcloc_29acbc:
0029acbcstr x4, [x3+40]
0029acc0ldr x3, [sp+152]
0029acc4ldrsb x27, [x3]
0029acc8adrp x27, 0x773000
0029acccldr x4, [x27+1992]
0029acd0adrp x5, 0x480000
0029acd4add x5, x5, 576
0029acd8str x5, [x3+48]
0029acdcadrp x27, 0x7b1000
0029ace0ldr w5, [x27+3056]
0029ace4cbz w5, 0x29acec
0029ace8b 0x29acf0
0029acec
0029acecloc_29acec:
0029acecb 0x29ad04
0029acf0
0029acf0loc_29acf0:
0029acf0bl runtime.gcWriteBarrier2
0029acf4str x4, [x25]
0029acf8ldr x5, [x3+56]
0029acfcstr x5, [x25+8]
0029ad00b 0x29ad04
0029ad04
0029ad04loc_29ad04:
0029ad04str x4, [x3+56]
0029ad08ldr x3, [sp+152]
0029ad0cldrsb x27, [x3]
0029ad10b 0x29ad14
0029ad14
0029ad14loc_29ad14:
0029ad14str x3, [sp+168]
0029ad18orr x3, xzr, 4
0029ad1cstr x3, [sp+176]
0029ad20str x3, [sp+184]
0029ad24str xzr, [sp+40]
0029ad28str x3, [sp+32]
0029ad2cldr x3, [sp+168]
0029ad30str x3, [sp+48]
0029ad34b 0x29ad38
0029ad38
0029ad38loc_29ad38:
0029ad38ldr x3, [sp+32]
0029ad3cldr x4, [sp+40]
0029ad40subs xzr, x3, x4
0029ad44b.gt 0x29ad4c
0029ad48b 0x29add4
0029ad4c
0029ad4cloc_29ad4c:
0029ad4cldr x1, [sp+48]
0029ad50str x1, [sp+192]
0029ad54ldr x1, [sp+192]
0029ad58ldr x2, [x1]
0029ad5cldr x0, [x1+8]
0029ad60str x2, [sp+72]
0029ad64str x0, [sp+80]
0029ad68ldrsb x27, [x2]
0029ad6cldr x1, [x2+48]
0029ad70blr x1
0029ad74str x0, [sp+160]
0029ad78ldr x1, [sp+216]
0029ad7csubs xzr, x0, x1
0029ad80b.eq 0x29ad88
0029ad84b 0x29adb4
0029ad88
0029ad88loc_29ad88:
0029ad88ldr x3, [sp+72]
0029ad8cldr x4, [sp+80]
0029ad90str x3, [sp+56]
0029ad94str x4, [sp+64]
0029ad98orr x2, xzr, 1
0029ad9cstrb w2, [sp+31]
0029ada0ldr x0, [sp+56]
0029ada4ldr x1, [sp+64]
0029ada8ldur x29, [sp-8]
0029adacldr x30, [sp], 208
0029adb0ret x30
0029adb4
0029adb4loc_29adb4:
0029adb4b 0x29adb8
0029adb8
0029adb8loc_29adb8:
0029adb8ldr x3, [sp+40]
0029adbcadd x3, x3, 1
0029adc0str x3, [sp+40]
0029adc4ldr x3, [sp+192]
0029adc8add x3, x3, 16
0029adccstr x3, [sp+48]
0029add0b 0x29ad38
0029add4
0029add4loc_29add4:
0029add4stp xzr, xzr, [sp+56]
0029add8strb wzr, [sp+31]
0029addcldr x1, [sp+64]
0029ade0ldr x0, [sp+56]
0029ade4mov x2, xzr
0029ade8ldur x29, [sp-8]
0029adecldr x30, [sp], 208
0029adf0ret x30
0029adf4
0029adf4loc_29adf4:
0029adf4str x0, [sp+8]
0029adf8mov x3, x30
0029adfcbl runtime.morestack_noctxt.abi0
0029ae00ldr x0, [sp+8]
0029ae04b 0x29abb0
0029ae08udf 0
0029ae0cudf 0
0029abb0
0029ae10
0029ae10type:.eq.crypto/elliptic.CurveParams: ; void type:.eq.crypto/elliptic.CurveParams(crypto/elliptic.CurveParams * p, crypto/elliptic.CurveParams * q)
0029ae10ldr x16, [x28+16]
0029ae14subs xzr, sp, x16
0029ae18b.ls 0x29aed4
0029ae1cstr x30, [sp-96]!
0029ae20stur x29, [sp-8]
0029ae24sub x29, sp, 8
0029ae28str x0, [sp+104]
0029ae2cstr x1, [sp+112]
0029ae30strb wzr, [sp+38]
0029ae34ldr x3, [sp+104]
0029ae38ldr x3, [x3+56]
0029ae3cstr x3, [sp+48]
0029ae40ldr x4, [x1+56]
0029ae44str x4, [sp+40]
0029ae48subs xzr, x3, x4
0029ae4cb.eq 0x29ae54
0029ae50b 0x29aeb8
0029ae54
0029ae54loc_29ae54:
0029ae54ldr x3, [sp+104]
0029ae58str x3, [sp+80]
0029ae5cldr x1, [sp+112]
0029ae60str x1, [sp+72]
0029ae64ldr x0, [sp+80]
0029ae68orr x2, xzr, 48
0029ae6cbl runtime.memequal
0029ae70strb w0, [sp+39]
0029ae74tbnz w0, 0, 0x29ae7c
0029ae78b 0x29aeb4
0029ae7c
0029ae7cloc_29ae7c:
0029ae7cldr x3, [sp+104]
0029ae80ldr x3, [x3+56]
0029ae84str x3, [sp+40]
0029ae88ldr x3, [sp+104]
0029ae8cldr x3, [x3+48]
0029ae90str x3, [sp+64]
0029ae94ldr x3, [sp+112]
0029ae98ldr x1, [x3+48]
0029ae9cstr x1, [sp+56]
0029aea0ldr x2, [sp+40]
0029aea4ldr x0, [sp+64]
0029aea8bl runtime.memequal
0029aeacstrb w0, [sp+38]
0029aeb0b 0x29aec4
0029aeb4
0029aeb4loc_29aeb4:
0029aeb4b 0x29aebc
0029aeb8
0029aeb8loc_29aeb8:
0029aeb8b 0x29aebc
0029aebc
0029aebcloc_29aebc:
0029aebcstrb wzr, [sp+38]
0029aec0b 0x29aec4
0029aec4
0029aec4loc_29aec4:
0029aec4ldrb w0, [sp+38]
0029aec8ldur x29, [sp-8]
0029aeccldr x30, [sp], 96
0029aed0ret x30
0029aed4
0029aed4loc_29aed4:
0029aed4stp x0, x1, [sp+8]
0029aed8mov x3, x30
0029aedcbl runtime.morestack_noctxt.abi0
0029aee0ldp x0, x1, [sp+8]
0029aee4b 0x29ae10
0029aee8udf 0
0029aeecudf 0
0029ae10
0029ae10type:.eq.crypto/elliptic.CurveParams: ; void type:.eq.crypto/elliptic.CurveParams(crypto/elliptic.CurveParams * p, crypto/elliptic.CurveParams * q)
0029ae10ldr x16, [x28+16]
0029ae14subs xzr, sp, x16
0029ae18b.ls 0x29aed4
0029ae1cstr x30, [sp-96]!
0029ae20stur x29, [sp-8]
0029ae24sub x29, sp, 8
0029ae28str x0, [sp+104]
0029ae2cstr x1, [sp+112]
0029ae30strb wzr, [sp+38]
0029ae34ldr x3, [sp+104]
0029ae38ldr x3, [x3+56]
0029ae3cstr x3, [sp+48]
0029ae40ldr x4, [x1+56]
0029ae44str x4, [sp+40]
0029ae48subs xzr, x3, x4
0029ae4cb.eq 0x29ae54
0029ae50b 0x29aeb8
0029ae54
0029ae54loc_29ae54:
0029ae54ldr x3, [sp+104]
0029ae58str x3, [sp+80]
0029ae5cldr x1, [sp+112]
0029ae60str x1, [sp+72]
0029ae64ldr x0, [sp+80]
0029ae68orr x2, xzr, 48
0029ae6cbl runtime.memequal
0029ae70strb w0, [sp+39]
0029ae74tbnz w0, 0, 0x29ae7c
0029ae78b 0x29aeb4
0029ae7c
0029ae7cloc_29ae7c:
0029ae7cldr x3, [sp+104]
0029ae80ldr x3, [x3+56]
0029ae84str x3, [sp+40]
0029ae88ldr x3, [sp+104]
0029ae8cldr x3, [x3+48]
0029ae90str x3, [sp+64]
0029ae94ldr x3, [sp+112]
0029ae98ldr x1, [x3+48]
0029ae9cstr x1, [sp+56]
0029aea0ldr x2, [sp+40]
0029aea4ldr x0, [sp+64]
0029aea8bl runtime.memequal
0029aeacstrb w0, [sp+38]
0029aeb0b 0x29aec4
0029aeb4
0029aeb4loc_29aeb4:
0029aeb4b 0x29aebc
0029aeb8
0029aeb8loc_29aeb8:
0029aeb8b 0x29aebc
0029aebc
0029aebcloc_29aebc:
0029aebcstrb wzr, [sp+38]
0029aec0b 0x29aec4
0029aec4
0029aec4loc_29aec4:
0029aec4ldrb w0, [sp+38]
0029aec8ldur x29, [sp-8]
0029aeccldr x30, [sp], 96
0029aed0ret x30
0029aed4
0029aed4loc_29aed4:
0029aed4stp x0, x1, [sp+8]
0029aed8mov x3, x30
0029aedcbl runtime.morestack_noctxt.abi0
0029aee0ldp x0, x1, [sp+8]
0029aee4b 0x29ae10
0029aee8udf 0
0029aeecudf 0
0029ae10
0029aef0
0029aef0crypto/elliptic.(*nistCurve[go.shape.*uint8]).Unmarshal: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).Unmarshal(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, struct []uint8 data)
0029aef0ldr x16, [x28+16]
0029aef4sub x17, sp, 64
0029aef8subs xzr, x17, x16
0029aefcb.ls 0x29b168
0029af00str x30, [sp-192]!
0029af04stur x29, [sp-8]
0029af08sub x29, sp, 8
0029af0cstr x0, [sp+200]
0029af10str x1, [sp+208]
0029af14str x2, [sp+216]
0029af18str x3, [sp+224]
0029af1cstr x4, [sp+232]
0029af20str xzr, [sp+72]
0029af24str xzr, [sp+64]
0029af28ldr x2, [sp+224]
0029af2cstr x2, [sp+56]
0029af30subs xzr, x2, 0
0029af34cset x3, eq
0029af38strb w3, [sp+47]
0029af3ccbz x2, 0x29af44
0029af40b 0x29af48
0029af44
0029af44loc_29af44:
0029af44b 0x29af70
0029af48
0029af48loc_29af48:
0029af48ldr x1, [sp+224]
0029af4cldr x2, [sp+216]
0029af50subs xzr, x1, 0
0029af54b.hi 0x29af5c
0029af58b 0x29b15c
0029af5c
0029af5cloc_29af5c:
0029af5cldrb w2, [x2]
0029af60subs wzr, w2, 4
0029af64cset x2, ne
0029af68strb w2, [sp+47]
0029af6cb 0x29af70
0029af70
0029af70loc_29af70:
0029af70ldrb w2, [sp+47]
0029af74tbnz w2, 0, 0x29af7c
0029af78b 0x29af98
0029af7c
0029af7cloc_29af7c:
0029af7cstr xzr, [sp+72]
0029af80str xzr, [sp+64]
0029af84ldr x0, [sp+72]
0029af88mov x1, xzr
0029af8cldur x29, [sp-8]
0029af90ldr x30, [sp], 192
0029af94ret x30
0029af98
0029af98loc_29af98:
0029af98ldr x0, [sp+200]
0029af9cldrsb x27, [x0]
0029afa0ldr x26, [x0]
0029afa4ldr x0, [x26]
0029afa8blr x0
0029afacstr x0, [sp+176]
0029afb0str xzr, [sp+168]
0029afb4stp xzr, xzr, [sp+152]
0029afb8ldr x26, [sp+208]
0029afbcldrsb x27, [x26]
0029afc0ldr x0, [x26]
0029afc4ldr x1, [sp+216]
0029afc8ldr x2, [sp+224]
0029afccldr x3, [sp+232]
0029afd0ldr x4, [sp+176]
0029afd4mov x5, x0
0029afd8mov x0, x4
0029afdcblr x5
0029afe0str x0, [sp+168]
0029afe4str x1, [sp+152]
0029afe8str x2, [sp+160]
0029afecldr x0, [sp+168]
0029aff0str x0, [sp+112]
0029aff4ldr x0, [sp+160]
0029aff8ldr x1, [sp+152]
0029affcstr x1, [sp+96]
0029b000str x0, [sp+104]
0029b004str x1, [sp+80]
0029b008str x0, [sp+88]
0029b00ccbnz x1, 0x29b014
0029b010b 0x29b030
0029b014
0029b014loc_29b014:
0029b014str xzr, [sp+72]
0029b018str xzr, [sp+64]
0029b01cldr x0, [sp+72]
0029b020mov x1, xzr
0029b024ldur x29, [sp-8]
0029b028ldr x30, [sp], 192
0029b02cret x30
0029b030
0029b030loc_29b030:
0029b030ldr x1, [sp+200]
0029b034ldrsb x27, [x1]
0029b038ldr x1, [x1+8]
0029b03cldrsb x27, [x1]
0029b040ldr x1, [x1+40]
0029b044add x2, x1, 7
0029b048sbfm x2, x2, 63, 63
0029b04cadd x1, x1, x2, lsr #61
0029b050add x1, x1, 7
0029b054sbfm x1, x1, 3, 63
0029b058str x1, [sp+48]
0029b05cadrp x0, 0x3aa000
0029b060add x0, x0, 1024
0029b064bl runtime.newobject
0029b068str x0, [sp+144]
0029b06cldr x2, [sp+48]
0029b070add x1, x2, 1
0029b074str x1, [sp+56]
0029b078ldr x3, [sp+232]
0029b07cldr x4, [sp+216]
0029b080subs xzr, x3, x1
0029b084b.hs 0x29b08c
0029b088b 0x29b154
0029b08c
0029b08cloc_29b08c:
0029b08csubs xzr, x1, 1
0029b090b.hs 0x29b098
0029b094b 0x29b14c
0029b098
0029b098loc_29b098:
0029b098sub x3, x3, 1
0029b09csub x5, xzr, x3
0029b0a0sbfm x5, x5, 63, 63
0029b0a4and x5, x5, 1
0029b0a8add x1, x4, x5
0029b0acstr x1, [sp+120]
0029b0b0str x2, [sp+128]
0029b0b4str x3, [sp+136]
0029b0b8ldr x0, [sp+144]
0029b0bcbl math/big.(*Int).SetBytes
0029b0c0str x0, [sp+72]
0029b0c4adrp x0, 0x3aa000
0029b0c8add x0, x0, 1024
0029b0ccbl runtime.newobject
0029b0d0str x0, [sp+144]
0029b0d4ldr x4, [sp+48]
0029b0d8add x0, x4, 1
0029b0dcstr x0, [sp+56]
0029b0e0ldr x1, [sp+224]
0029b0e4ldr x5, [sp+216]
0029b0e8ldr x6, [sp+232]
0029b0ecb 0x29b0f0
0029b0f0
0029b0f0loc_29b0f0:
0029b0f0subs xzr, x1, x0
0029b0f4b.hs 0x29b0fc
0029b0f8b 0x29b148
0029b0fc
0029b0fcloc_29b0fc:
0029b0fcsub x7, x1, x4
0029b100sub x4, x6, x4
0029b104sub x3, x4, 1
0029b108sub x2, x7, 1
0029b10csub x4, xzr, x3
0029b110and x4, x0, x4, asr #63
0029b114add x1, x5, x4
0029b118str x1, [sp+120]
0029b11cstr x2, [sp+128]
0029b120str x3, [sp+136]
0029b124ldr x0, [sp+144]
0029b128bl math/big.(*Int).SetBytes
0029b12cstr x0, [sp+64]
0029b130ldr x4, [sp+72]
0029b134mov x1, x0
0029b138mov x0, x4
0029b13cldur x29, [sp-8]
0029b140ldr x30, [sp], 192
0029b144ret x30
0029b148
0029b148loc_29b148:
0029b148bl runtime.panicSliceB
0029b14c
0029b14cloc_29b14c:
0029b14corr x0, xzr, 1
0029b150bl runtime.panicSliceB
0029b154
0029b154loc_29b154:
0029b154mov x2, x3
0029b158bl runtime.panicSliceAcap
0029b15c
0029b15cloc_29b15c:
0029b15cmov x0, xzr
0029b160bl runtime.panicIndex
0029b164hint
0029b168
0029b168loc_29b168:
0029b168stp x0, x1, [sp+8]
0029b16cstp x2, x3, [sp+24]
0029b170str x4, [sp+40]
0029b174mov x3, x30
0029b178bl runtime.morestack_noctxt.abi0
0029b17cldp x0, x1, [sp+8]
0029b180ldp x2, x3, [sp+24]
0029b184ldr x4, [sp+40]
0029b188b 0x29aef0
0029b18cudf 0
0029aef0
0029aef0crypto/elliptic.(*nistCurve[go.shape.*uint8]).Unmarshal: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).Unmarshal(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, struct []uint8 data)
0029aef0ldr x16, [x28+16]
0029aef4sub x17, sp, 64
0029aef8subs xzr, x17, x16
0029aefcb.ls 0x29b168
0029af00str x30, [sp-192]!
0029af04stur x29, [sp-8]
0029af08sub x29, sp, 8
0029af0cstr x0, [sp+200]
0029af10str x1, [sp+208]
0029af14str x2, [sp+216]
0029af18str x3, [sp+224]
0029af1cstr x4, [sp+232]
0029af20str xzr, [sp+72]
0029af24str xzr, [sp+64]
0029af28ldr x2, [sp+224]
0029af2cstr x2, [sp+56]
0029af30subs xzr, x2, 0
0029af34cset x3, eq
0029af38strb w3, [sp+47]
0029af3ccbz x2, 0x29af44
0029af40b 0x29af48
0029af44
0029af44loc_29af44:
0029af44b 0x29af70
0029af48
0029af48loc_29af48:
0029af48ldr x1, [sp+224]
0029af4cldr x2, [sp+216]
0029af50subs xzr, x1, 0
0029af54b.hi 0x29af5c
0029af58b 0x29b15c
0029af5c
0029af5cloc_29af5c:
0029af5cldrb w2, [x2]
0029af60subs wzr, w2, 4
0029af64cset x2, ne
0029af68strb w2, [sp+47]
0029af6cb 0x29af70
0029af70
0029af70loc_29af70:
0029af70ldrb w2, [sp+47]
0029af74tbnz w2, 0, 0x29af7c
0029af78b 0x29af98
0029af7c
0029af7cloc_29af7c:
0029af7cstr xzr, [sp+72]
0029af80str xzr, [sp+64]
0029af84ldr x0, [sp+72]
0029af88mov x1, xzr
0029af8cldur x29, [sp-8]
0029af90ldr x30, [sp], 192
0029af94ret x30
0029af98
0029af98loc_29af98:
0029af98ldr x0, [sp+200]
0029af9cldrsb x27, [x0]
0029afa0ldr x26, [x0]
0029afa4ldr x0, [x26]
0029afa8blr x0
0029afacstr x0, [sp+176]
0029afb0str xzr, [sp+168]
0029afb4stp xzr, xzr, [sp+152]
0029afb8ldr x26, [sp+208]
0029afbcldrsb x27, [x26]
0029afc0ldr x0, [x26]
0029afc4ldr x1, [sp+216]
0029afc8ldr x2, [sp+224]
0029afccldr x3, [sp+232]
0029afd0ldr x4, [sp+176]
0029afd4mov x5, x0
0029afd8mov x0, x4
0029afdcblr x5
0029afe0str x0, [sp+168]
0029afe4str x1, [sp+152]
0029afe8str x2, [sp+160]
0029afecldr x0, [sp+168]
0029aff0str x0, [sp+112]
0029aff4ldr x0, [sp+160]
0029aff8ldr x1, [sp+152]
0029affcstr x1, [sp+96]
0029b000str x0, [sp+104]
0029b004str x1, [sp+80]
0029b008str x0, [sp+88]
0029b00ccbnz x1, 0x29b014
0029b010b 0x29b030
0029b014
0029b014loc_29b014:
0029b014str xzr, [sp+72]
0029b018str xzr, [sp+64]
0029b01cldr x0, [sp+72]
0029b020mov x1, xzr
0029b024ldur x29, [sp-8]
0029b028ldr x30, [sp], 192
0029b02cret x30
0029b030
0029b030loc_29b030:
0029b030ldr x1, [sp+200]
0029b034ldrsb x27, [x1]
0029b038ldr x1, [x1+8]
0029b03cldrsb x27, [x1]
0029b040ldr x1, [x1+40]
0029b044add x2, x1, 7
0029b048sbfm x2, x2, 63, 63
0029b04cadd x1, x1, x2, lsr #61
0029b050add x1, x1, 7
0029b054sbfm x1, x1, 3, 63
0029b058str x1, [sp+48]
0029b05cadrp x0, 0x3aa000
0029b060add x0, x0, 1024
0029b064bl runtime.newobject
0029b068str x0, [sp+144]
0029b06cldr x2, [sp+48]
0029b070add x1, x2, 1
0029b074str x1, [sp+56]
0029b078ldr x3, [sp+232]
0029b07cldr x4, [sp+216]
0029b080subs xzr, x3, x1
0029b084b.hs 0x29b08c
0029b088b 0x29b154
0029b08c
0029b08cloc_29b08c:
0029b08csubs xzr, x1, 1
0029b090b.hs 0x29b098
0029b094b 0x29b14c
0029b098
0029b098loc_29b098:
0029b098sub x3, x3, 1
0029b09csub x5, xzr, x3
0029b0a0sbfm x5, x5, 63, 63
0029b0a4and x5, x5, 1
0029b0a8add x1, x4, x5
0029b0acstr x1, [sp+120]
0029b0b0str x2, [sp+128]
0029b0b4str x3, [sp+136]
0029b0b8ldr x0, [sp+144]
0029b0bcbl math/big.(*Int).SetBytes
0029b0c0str x0, [sp+72]
0029b0c4adrp x0, 0x3aa000
0029b0c8add x0, x0, 1024
0029b0ccbl runtime.newobject
0029b0d0str x0, [sp+144]
0029b0d4ldr x4, [sp+48]
0029b0d8add x0, x4, 1
0029b0dcstr x0, [sp+56]
0029b0e0ldr x1, [sp+224]
0029b0e4ldr x5, [sp+216]
0029b0e8ldr x6, [sp+232]
0029b0ecb 0x29b0f0
0029b0f0
0029b0f0loc_29b0f0:
0029b0f0subs xzr, x1, x0
0029b0f4b.hs 0x29b0fc
0029b0f8b 0x29b148
0029b0fc
0029b0fcloc_29b0fc:
0029b0fcsub x7, x1, x4
0029b100sub x4, x6, x4
0029b104sub x3, x4, 1
0029b108sub x2, x7, 1
0029b10csub x4, xzr, x3
0029b110and x4, x0, x4, asr #63
0029b114add x1, x5, x4
0029b118str x1, [sp+120]
0029b11cstr x2, [sp+128]
0029b120str x3, [sp+136]
0029b124ldr x0, [sp+144]
0029b128bl math/big.(*Int).SetBytes
0029b12cstr x0, [sp+64]
0029b130ldr x4, [sp+72]
0029b134mov x1, x0
0029b138mov x0, x4
0029b13cldur x29, [sp-8]
0029b140ldr x30, [sp], 192
0029b144ret x30
0029b148
0029b148loc_29b148:
0029b148bl runtime.panicSliceB
0029b14c
0029b14cloc_29b14c:
0029b14corr x0, xzr, 1
0029b150bl runtime.panicSliceB
0029b154
0029b154loc_29b154:
0029b154mov x2, x3
0029b158bl runtime.panicSliceAcap
0029b15c
0029b15cloc_29b15c:
0029b15cmov x0, xzr
0029b160bl runtime.panicIndex
0029b164hint
0029b168
0029b168loc_29b168:
0029b168stp x0, x1, [sp+8]
0029b16cstp x2, x3, [sp+24]
0029b170str x4, [sp+40]
0029b174mov x3, x30
0029b178bl runtime.morestack_noctxt.abi0
0029b17cldp x0, x1, [sp+8]
0029b180ldp x2, x3, [sp+24]
0029b184ldr x4, [sp+40]
0029b188b 0x29aef0
0029b18cudf 0
0029aef0
0029b190
0029b190crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarBaseMult: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarBaseMult(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, struct []uint8 scalar)
0029b190ldr x16, [x28+16]
0029b194sub x17, sp, 80
0029b198subs xzr, x17, x16
0029b19cb.ls 0x29b2f4
0029b1a0str x30, [sp-208]!
0029b1a4stur x29, [sp-8]
0029b1a8sub x29, sp, 8
0029b1acstr x0, [sp+216]
0029b1b0str x1, [sp+224]
0029b1b4str x2, [sp+232]
0029b1b8str x3, [sp+240]
0029b1bcstr x4, [sp+248]
0029b1c0str xzr, [sp+64]
0029b1c4str xzr, [sp+56]
0029b1c8ldr x5, [sp+224]
0029b1ccldrsb x27, [x5]
0029b1d0ldr x1, [x5+80]
0029b1d4str x1, [sp+136]
0029b1d8ldr x2, [sp+232]
0029b1dcldr x0, [sp+216]
0029b1e0ldr x3, [sp+240]
0029b1e4ldr x4, [sp+248]
0029b1e8bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).normalizeScalar
0029b1ecstr x0, [sp+232]
0029b1f0str x1, [sp+240]
0029b1f4str x2, [sp+248]
0029b1f8ldr x5, [sp+216]
0029b1fcldrsb x27, [x5]
0029b200ldr x26, [x5]
0029b204ldr x5, [x26]
0029b208blr x5
0029b20cstr x0, [sp+184]
0029b210str xzr, [sp+176]
0029b214stp xzr, xzr, [sp+160]
0029b218ldr x5, [sp+224]
0029b21cldrsb x27, [x5]
0029b220add x26, x5, 40
0029b224ldr x1, [sp+232]
0029b228ldr x2, [sp+240]
0029b22cldr x3, [sp+248]
0029b230ldr x5, [x5+40]
0029b234ldr x0, [sp+184]
0029b238blr x5
0029b23cstr x0, [sp+176]
0029b240str x1, [sp+160]
0029b244str x2, [sp+168]
0029b248ldr x5, [sp+176]
0029b24cstr x5, [sp+120]
0029b250ldr x5, [sp+160]
0029b254ldr x6, [sp+168]
0029b258str x5, [sp+104]
0029b25cstr x6, [sp+112]
0029b260ldr x5, [sp+120]
0029b264str x5, [sp+72]
0029b268ldr x5, [sp+112]
0029b26cldr x6, [sp+104]
0029b270str x6, [sp+80]
0029b274str x5, [sp+88]
0029b278cbnz x6, 0x29b2dc
0029b27cb 0x29b280
0029b280
0029b280loc_29b280:
0029b280str xzr, [sp+152]
0029b284str xzr, [sp+144]
0029b288ldr x3, [sp+224]
0029b28cldrsb x27, [x3]
0029b290ldr x1, [x3+80]
0029b294str x1, [sp+128]
0029b298ldr x0, [sp+216]
0029b29cldr x2, [sp+72]
0029b2a0bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointToAffine
0029b2a4str x0, [sp+152]
0029b2a8str x1, [sp+144]
0029b2acldr x3, [sp+152]
0029b2b0str x3, [sp+96]
0029b2b4ldr x3, [sp+144]
0029b2b8str x3, [sp+192]
0029b2bcldr x3, [sp+96]
0029b2c0str x3, [sp+64]
0029b2c4ldr x1, [sp+192]
0029b2c8str x1, [sp+56]
0029b2ccldr x0, [sp+64]
0029b2d0ldur x29, [sp-8]
0029b2d4ldr x30, [sp], 208
0029b2d8ret x30
0029b2dc
0029b2dcloc_29b2dc:
0029b2dcadrp x0, 0x35a000
0029b2e0add x0, x0, 2944
0029b2e4adrp x1, 0x477000
0029b2e8add x1, x1, 2160
0029b2ecbl runtime.gopanic
0029b2f0hint
0029b2f4
0029b2f4loc_29b2f4:
0029b2f4stp x0, x1, [sp+8]
0029b2f8stp x2, x3, [sp+24]
0029b2fcstr x4, [sp+40]
0029b300mov x3, x30
0029b304bl runtime.morestack_noctxt.abi0
0029b308ldp x0, x1, [sp+8]
0029b30cldp x2, x3, [sp+24]
0029b310ldr x4, [sp+40]
0029b314b 0x29b190
0029b318udf 0
0029b31cudf 0
0029b190
0029b190crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarBaseMult: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarBaseMult(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, struct []uint8 scalar)
0029b190ldr x16, [x28+16]
0029b194sub x17, sp, 80
0029b198subs xzr, x17, x16
0029b19cb.ls 0x29b2f4
0029b1a0str x30, [sp-208]!
0029b1a4stur x29, [sp-8]
0029b1a8sub x29, sp, 8
0029b1acstr x0, [sp+216]
0029b1b0str x1, [sp+224]
0029b1b4str x2, [sp+232]
0029b1b8str x3, [sp+240]
0029b1bcstr x4, [sp+248]
0029b1c0str xzr, [sp+64]
0029b1c4str xzr, [sp+56]
0029b1c8ldr x5, [sp+224]
0029b1ccldrsb x27, [x5]
0029b1d0ldr x1, [x5+80]
0029b1d4str x1, [sp+136]
0029b1d8ldr x2, [sp+232]
0029b1dcldr x0, [sp+216]
0029b1e0ldr x3, [sp+240]
0029b1e4ldr x4, [sp+248]
0029b1e8bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).normalizeScalar
0029b1ecstr x0, [sp+232]
0029b1f0str x1, [sp+240]
0029b1f4str x2, [sp+248]
0029b1f8ldr x5, [sp+216]
0029b1fcldrsb x27, [x5]
0029b200ldr x26, [x5]
0029b204ldr x5, [x26]
0029b208blr x5
0029b20cstr x0, [sp+184]
0029b210str xzr, [sp+176]
0029b214stp xzr, xzr, [sp+160]
0029b218ldr x5, [sp+224]
0029b21cldrsb x27, [x5]
0029b220add x26, x5, 40
0029b224ldr x1, [sp+232]
0029b228ldr x2, [sp+240]
0029b22cldr x3, [sp+248]
0029b230ldr x5, [x5+40]
0029b234ldr x0, [sp+184]
0029b238blr x5
0029b23cstr x0, [sp+176]
0029b240str x1, [sp+160]
0029b244str x2, [sp+168]
0029b248ldr x5, [sp+176]
0029b24cstr x5, [sp+120]
0029b250ldr x5, [sp+160]
0029b254ldr x6, [sp+168]
0029b258str x5, [sp+104]
0029b25cstr x6, [sp+112]
0029b260ldr x5, [sp+120]
0029b264str x5, [sp+72]
0029b268ldr x5, [sp+112]
0029b26cldr x6, [sp+104]
0029b270str x6, [sp+80]
0029b274str x5, [sp+88]
0029b278cbnz x6, 0x29b2dc
0029b27cb 0x29b280
0029b280
0029b280loc_29b280:
0029b280str xzr, [sp+152]
0029b284str xzr, [sp+144]
0029b288ldr x3, [sp+224]
0029b28cldrsb x27, [x3]
0029b290ldr x1, [x3+80]
0029b294str x1, [sp+128]
0029b298ldr x0, [sp+216]
0029b29cldr x2, [sp+72]
0029b2a0bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointToAffine
0029b2a4str x0, [sp+152]
0029b2a8str x1, [sp+144]
0029b2acldr x3, [sp+152]
0029b2b0str x3, [sp+96]
0029b2b4ldr x3, [sp+144]
0029b2b8str x3, [sp+192]
0029b2bcldr x3, [sp+96]
0029b2c0str x3, [sp+64]
0029b2c4ldr x1, [sp+192]
0029b2c8str x1, [sp+56]
0029b2ccldr x0, [sp+64]
0029b2d0ldur x29, [sp-8]
0029b2d4ldr x30, [sp], 208
0029b2d8ret x30
0029b2dc
0029b2dcloc_29b2dc:
0029b2dcadrp x0, 0x35a000
0029b2e0add x0, x0, 2944
0029b2e4adrp x1, 0x477000
0029b2e8add x1, x1, 2160
0029b2ecbl runtime.gopanic
0029b2f0hint
0029b2f4
0029b2f4loc_29b2f4:
0029b2f4stp x0, x1, [sp+8]
0029b2f8stp x2, x3, [sp+24]
0029b2fcstr x4, [sp+40]
0029b300mov x3, x30
0029b304bl runtime.morestack_noctxt.abi0
0029b308ldp x0, x1, [sp+8]
0029b30cldp x2, x3, [sp+24]
0029b310ldr x4, [sp+40]
0029b314b 0x29b190
0029b318udf 0
0029b31cudf 0
0029b190
0029b320
0029b320crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarMult: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarMult(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, math/big.Int * Bx, math/big.Int * By, struct []uint8 scalar)
0029b320ldr x16, [x28+16]
0029b324sub x17, sp, 96
0029b328subs xzr, x17, x16
0029b32cb.ls 0x29b4f8
0029b330str x30, [sp-224]!
0029b334stur x29, [sp-8]
0029b338sub x29, sp, 8
0029b33cstr x0, [sp+232]
0029b340str x1, [sp+240]
0029b344str x2, [sp+248]
0029b348str x3, [sp+256]
0029b34cstr x4, [sp+264]
0029b350str x5, [sp+272]
0029b354str x6, [sp+280]
0029b358str xzr, [sp+56]
0029b35cstr xzr, [sp+48]
0029b360str xzr, [sp+152]
0029b364stp xzr, xzr, [sp+136]
0029b368ldr x4, [sp+240]
0029b36cldrsb x27, [x4]
0029b370ldr x1, [x4+72]
0029b374str x1, [sp+112]
0029b378ldr x2, [sp+248]
0029b37cldr x3, [sp+256]
0029b380ldr x0, [sp+232]
0029b384bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointFromAffine
0029b388str x0, [sp+152]
0029b38cstr x1, [sp+136]
0029b390str x2, [sp+144]
0029b394ldr x4, [sp+152]
0029b398str x4, [sp+88]
0029b39cldr x4, [sp+136]
0029b3a0ldr x5, [sp+144]
0029b3a4str x4, [sp+200]
0029b3a8str x5, [sp+208]
0029b3acldr x4, [sp+88]
0029b3b0str x4, [sp+64]
0029b3b4ldr x4, [sp+208]
0029b3b8ldr x5, [sp+200]
0029b3bcstr x5, [sp+72]
0029b3c0str x4, [sp+80]
0029b3c4cbnz x5, 0x29b4e0
0029b3c8b 0x29b3cc
0029b3cc
0029b3ccloc_29b3cc:
0029b3ccldr x5, [sp+240]
0029b3d0ldrsb x27, [x5]
0029b3d4ldr x1, [x5+72]
0029b3d8str x1, [sp+104]
0029b3dcldr x2, [sp+264]
0029b3e0ldr x0, [sp+232]
0029b3e4ldr x3, [sp+272]
0029b3e8ldr x4, [sp+280]
0029b3ecbl crypto/elliptic.(*nistCurve[go.shape.*uint8]).normalizeScalar
0029b3f0str x0, [sp+264]
0029b3f4str x1, [sp+272]
0029b3f8str x2, [sp+280]
0029b3fcstr xzr, [sp+152]
0029b400stp xzr, xzr, [sp+136]
0029b404ldr x5, [sp+240]
0029b408ldrsb x27, [x5]
0029b40cadd x26, x5, 32
0029b410ldr x2, [sp+264]
0029b414ldr x0, [sp+64]
0029b418ldr x1, [sp+64]
0029b41cldr x3, [sp+272]
0029b420ldr x4, [sp+280]
0029b424ldr x5, [x5+32]
0029b428blr x5
0029b42cstr x0, [sp+152]
0029b430str x1, [sp+136]
0029b434str x2, [sp+144]
0029b438ldr x5, [sp+152]
0029b43cstr x5, [sp+192]
0029b440ldr x5, [sp+136]
0029b444ldr x6, [sp+144]
0029b448str x5, [sp+176]
0029b44cstr x6, [sp+184]
0029b450ldr x5, [sp+192]
0029b454str x5, [sp+64]
0029b458ldr x5, [sp+184]
0029b45cldr x6, [sp+176]
0029b460str x6, [sp+72]
0029b464str x5, [sp+80]
0029b468cbnz x6, 0x29b4cc
0029b46cb 0x29b470
0029b470
0029b470loc_29b470:
0029b470str xzr, [sp+128]
0029b474str xzr, [sp+120]
0029b478ldr x3, [sp+240]
0029b47cldrsb x27, [x3]
0029b480ldr x1, [x3+72]
0029b484str x1, [sp+96]
0029b488ldr x0, [sp+232]
0029b48cldr x2, [sp+64]
0029b490bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointToAffine
0029b494str x0, [sp+128]
0029b498str x1, [sp+120]
0029b49cldr x3, [sp+128]
0029b4a0str x3, [sp+168]
0029b4a4ldr x3, [sp+120]
0029b4a8str x3, [sp+160]
0029b4acldr x3, [sp+168]
0029b4b0str x3, [sp+56]
0029b4b4ldr x1, [sp+160]
0029b4b8str x1, [sp+48]
0029b4bcldr x0, [sp+56]
0029b4c0ldur x29, [sp-8]
0029b4c4ldr x30, [sp], 224
0029b4c8ret x30
0029b4cc
0029b4ccloc_29b4cc:
0029b4ccadrp x0, 0x35a000
0029b4d0add x0, x0, 2944
0029b4d4adrp x1, 0x477000
0029b4d8add x1, x1, 2160
0029b4dcbl runtime.gopanic
0029b4e0
0029b4e0loc_29b4e0:
0029b4e0adrp x0, 0x35a000
0029b4e4add x0, x0, 2944
0029b4e8adrp x1, 0x477000
0029b4ecadd x1, x1, 2176
0029b4f0bl runtime.gopanic
0029b4f4hint
0029b4f8
0029b4f8loc_29b4f8:
0029b4f8stp x0, x1, [sp+8]
0029b4fcstp x2, x3, [sp+24]
0029b500stp x4, x5, [sp+40]
0029b504str x6, [sp+56]
0029b508mov x3, x30
0029b50cbl runtime.morestack_noctxt.abi0
0029b510ldp x0, x1, [sp+8]
0029b514ldp x2, x3, [sp+24]
0029b518ldp x4, x5, [sp+40]
0029b51cldr x6, [sp+56]
0029b520b 0x29b320
0029b524udf 0
0029b528udf 0
0029b52cudf 0
0029b320
0029b320crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarMult: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarMult(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, math/big.Int * Bx, math/big.Int * By, struct []uint8 scalar)
0029b320ldr x16, [x28+16]
0029b324sub x17, sp, 96
0029b328subs xzr, x17, x16
0029b32cb.ls 0x29b4f8
0029b330str x30, [sp-224]!
0029b334stur x29, [sp-8]
0029b338sub x29, sp, 8
0029b33cstr x0, [sp+232]
0029b340str x1, [sp+240]
0029b344str x2, [sp+248]
0029b348str x3, [sp+256]
0029b34cstr x4, [sp+264]
0029b350str x5, [sp+272]
0029b354str x6, [sp+280]
0029b358str xzr, [sp+56]
0029b35cstr xzr, [sp+48]
0029b360str xzr, [sp+152]
0029b364stp xzr, xzr, [sp+136]
0029b368ldr x4, [sp+240]
0029b36cldrsb x27, [x4]
0029b370ldr x1, [x4+72]
0029b374str x1, [sp+112]
0029b378ldr x2, [sp+248]
0029b37cldr x3, [sp+256]
0029b380ldr x0, [sp+232]
0029b384bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointFromAffine
0029b388str x0, [sp+152]
0029b38cstr x1, [sp+136]
0029b390str x2, [sp+144]
0029b394ldr x4, [sp+152]
0029b398str x4, [sp+88]
0029b39cldr x4, [sp+136]
0029b3a0ldr x5, [sp+144]
0029b3a4str x4, [sp+200]
0029b3a8str x5, [sp+208]
0029b3acldr x4, [sp+88]
0029b3b0str x4, [sp+64]
0029b3b4ldr x4, [sp+208]
0029b3b8ldr x5, [sp+200]
0029b3bcstr x5, [sp+72]
0029b3c0str x4, [sp+80]
0029b3c4cbnz x5, 0x29b4e0
0029b3c8b 0x29b3cc
0029b3cc
0029b3ccloc_29b3cc:
0029b3ccldr x5, [sp+240]
0029b3d0ldrsb x27, [x5]
0029b3d4ldr x1, [x5+72]
0029b3d8str x1, [sp+104]
0029b3dcldr x2, [sp+264]
0029b3e0ldr x0, [sp+232]
0029b3e4ldr x3, [sp+272]
0029b3e8ldr x4, [sp+280]
0029b3ecbl crypto/elliptic.(*nistCurve[go.shape.*uint8]).normalizeScalar
0029b3f0str x0, [sp+264]
0029b3f4str x1, [sp+272]
0029b3f8str x2, [sp+280]
0029b3fcstr xzr, [sp+152]
0029b400stp xzr, xzr, [sp+136]
0029b404ldr x5, [sp+240]
0029b408ldrsb x27, [x5]
0029b40cadd x26, x5, 32
0029b410ldr x2, [sp+264]
0029b414ldr x0, [sp+64]
0029b418ldr x1, [sp+64]
0029b41cldr x3, [sp+272]
0029b420ldr x4, [sp+280]
0029b424ldr x5, [x5+32]
0029b428blr x5
0029b42cstr x0, [sp+152]
0029b430str x1, [sp+136]
0029b434str x2, [sp+144]
0029b438ldr x5, [sp+152]
0029b43cstr x5, [sp+192]
0029b440ldr x5, [sp+136]
0029b444ldr x6, [sp+144]
0029b448str x5, [sp+176]
0029b44cstr x6, [sp+184]
0029b450ldr x5, [sp+192]
0029b454str x5, [sp+64]
0029b458ldr x5, [sp+184]
0029b45cldr x6, [sp+176]
0029b460str x6, [sp+72]
0029b464str x5, [sp+80]
0029b468cbnz x6, 0x29b4cc
0029b46cb 0x29b470
0029b470
0029b470loc_29b470:
0029b470str xzr, [sp+128]
0029b474str xzr, [sp+120]
0029b478ldr x3, [sp+240]
0029b47cldrsb x27, [x3]
0029b480ldr x1, [x3+72]
0029b484str x1, [sp+96]
0029b488ldr x0, [sp+232]
0029b48cldr x2, [sp+64]
0029b490bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointToAffine
0029b494str x0, [sp+128]
0029b498str x1, [sp+120]
0029b49cldr x3, [sp+128]
0029b4a0str x3, [sp+168]
0029b4a4ldr x3, [sp+120]
0029b4a8str x3, [sp+160]
0029b4acldr x3, [sp+168]
0029b4b0str x3, [sp+56]
0029b4b4ldr x1, [sp+160]
0029b4b8str x1, [sp+48]
0029b4bcldr x0, [sp+56]
0029b4c0ldur x29, [sp-8]
0029b4c4ldr x30, [sp], 224
0029b4c8ret x30
0029b4cc
0029b4ccloc_29b4cc:
0029b4ccadrp x0, 0x35a000
0029b4d0add x0, x0, 2944
0029b4d4adrp x1, 0x477000
0029b4d8add x1, x1, 2160
0029b4dcbl runtime.gopanic
0029b4e0
0029b4e0loc_29b4e0:
0029b4e0adrp x0, 0x35a000
0029b4e4add x0, x0, 2944
0029b4e8adrp x1, 0x477000
0029b4ecadd x1, x1, 2176
0029b4f0bl runtime.gopanic
0029b4f4hint
0029b4f8
0029b4f8loc_29b4f8:
0029b4f8stp x0, x1, [sp+8]
0029b4fcstp x2, x3, [sp+24]
0029b500stp x4, x5, [sp+40]
0029b504str x6, [sp+56]
0029b508mov x3, x30
0029b50cbl runtime.morestack_noctxt.abi0
0029b510ldp x0, x1, [sp+8]
0029b514ldp x2, x3, [sp+24]
0029b518ldp x4, x5, [sp+40]
0029b51cldr x6, [sp+56]
0029b520b 0x29b320
0029b524udf 0
0029b528udf 0
0029b52cudf 0
0029b320
Loading..