File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    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
    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
    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
    0029b530
    0029b530crypto/elliptic.(*nistCurve[go.shape.*uint8]).normalizeScalar: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).normalizeScalar(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, struct []uint8 scalar)
    0029b530ldr x16, [x28+16]
    0029b534sub x17, sp, 80
    0029b538subs xzr, x17, x16
    0029b53cb.ls 0x29b6a0
    0029b540str x30, [sp-208]!
    0029b544stur x29, [sp-8]
    0029b548sub x29, sp, 8
    0029b54cstr x0, [sp+216]
    0029b550str x1, [sp+224]
    0029b554str x2, [sp+232]
    0029b558str x3, [sp+240]
    0029b55cstr x4, [sp+248]
    0029b560str xzr, [sp+64]
    0029b564stp xzr, xzr, [sp+72]
    0029b568ldr x1, [sp+216]
    0029b56cldrsb x27, [x1]
    0029b570ldr x1, [x1+8]
    0029b574ldrsb x27, [x1]
    0029b578ldr x0, [x1+8]
    0029b57cstr x0, [sp+192]
    0029b580bl math/big.(*Int).BitLen
    0029b584str x0, [sp+56]
    0029b588add x1, x0, 7
    0029b58csbfm x1, x1, 63, 63
    0029b590add x1, x0, x1, lsr #61
    0029b594add x1, x1, 7
    0029b598sbfm x2, x1, 3, 63
    0029b59cstr x2, [sp+48]
    0029b5a0ldr x2, [sp+240]
    0029b5a4str x2, [sp+56]
    0029b5a8subs xzr, x2, x1, asr #3
    0029b5acb.eq 0x29b5b4
    0029b5b0b 0x29b5d8
    0029b5b4
    0029b5b4loc_29b5b4:
    0029b5b4ldr x0, [sp+232]
    0029b5b8ldr x1, [sp+240]
    0029b5bcldr x2, [sp+248]
    0029b5c0str x0, [sp+64]
    0029b5c4str x1, [sp+72]
    0029b5c8str x2, [sp+80]
    0029b5ccldur x29, [sp-8]
    0029b5d0ldr x30, [sp], 208
    0029b5d4ret x30
    0029b5d8
    0029b5d8loc_29b5d8:
    0029b5d8strb wzr, [sp+160]
    0029b5dcstr xzr, [sp+168]
    0029b5e0stp xzr, xzr, [sp+176]
    0029b5e4add x0, sp, 160
    0029b5e8str x0, [sp+144]
    0029b5ecldr x2, [sp+240]
    0029b5f0ldr x3, [sp+248]
    0029b5f4ldr x1, [sp+232]
    0029b5f8bl math/big.(*Int).SetBytes
    0029b5fcstr x0, [sp+88]
    0029b600ldr x4, [sp+240]
    0029b604str x4, [sp+56]
    0029b608ldr x5, [sp+48]
    0029b60csubs xzr, x4, x5
    0029b610b.gt 0x29b618
    0029b614b 0x29b640
    0029b618
    0029b618loc_29b618:
    0029b618ldr x3, [sp+216]
    0029b61cldrsb x27, [x3]
    0029b620ldr x3, [x3+8]
    0029b624ldrsb x27, [x3]
    0029b628ldr x2, [x3+8]
    0029b62cstr x2, [sp+152]
    0029b630ldr x0, [sp+88]
    0029b634ldr x1, [sp+88]
    0029b638bl math/big.(*Int).Mod
    0029b63cb 0x29b644
    0029b640
    0029b640loc_29b640:
    0029b640b 0x29b644
    0029b644
    0029b644loc_29b644:
    0029b644ldr x2, [sp+48]
    0029b648ldr x1, [sp+48]
    0029b64cadrp x0, 0x35a000
    0029b650add x0, x0, 3072
    0029b654bl runtime.makeslice
    0029b658ldr x2, [sp+48]
    0029b65cldr x3, [sp+48]
    0029b660str x0, [sp+96]
    0029b664str x2, [sp+104]
    0029b668str x3, [sp+112]
    0029b66cldr x4, [sp+88]
    0029b670mov x1, x0
    0029b674mov x0, x4
    0029b678bl math/big.(*Int).FillBytes
    0029b67cstr x0, [sp+120]
    0029b680str x1, [sp+128]
    0029b684str x2, [sp+136]
    0029b688str x0, [sp+64]
    0029b68cstr x1, [sp+72]
    0029b690str x2, [sp+80]
    0029b694ldur x29, [sp-8]
    0029b698ldr x30, [sp], 208
    0029b69cret x30
    0029b6a0
    0029b6a0loc_29b6a0:
    0029b6a0stp x0, x1, [sp+8]
    0029b6a4stp x2, x3, [sp+24]
    0029b6a8str x4, [sp+40]
    0029b6acmov x3, x30
    0029b6b0bl runtime.morestack_noctxt.abi0
    0029b6b4ldp x0, x1, [sp+8]
    0029b6b8ldp x2, x3, [sp+24]
    0029b6bcldr x4, [sp+40]
    0029b6c0b 0x29b530
    0029b6c4udf 0
    0029b6c8udf 0
    0029b6ccudf 0
    0029b530
    0029b6d0
    0029b6d0crypto/elliptic.(*nistCurve[go.shape.*uint8]).Add: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).Add(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, math/big.Int * x1, math/big.Int * y1, math/big.Int * x2, math/big.Int * y2)
    0029b6d0ldr x16, [x28+16]
    0029b6d4sub x17, sp, 96
    0029b6d8subs xzr, x17, x16
    0029b6dcb.ls 0x29b890
    0029b6e0str x30, [sp-224]!
    0029b6e4stur x29, [sp-8]
    0029b6e8sub x29, sp, 8
    0029b6ecstr x0, [sp+232]
    0029b6f0str x1, [sp+240]
    0029b6f4str x2, [sp+248]
    0029b6f8str x3, [sp+256]
    0029b6fcstr x4, [sp+264]
    0029b700str x5, [sp+272]
    0029b704str xzr, [sp+48]
    0029b708str xzr, [sp+40]
    0029b70cstr xzr, [sp+144]
    0029b710stp xzr, xzr, [sp+128]
    0029b714ldr x4, [sp+240]
    0029b718ldrsb x27, [x4]
    0029b71cldr x1, [x4+56]
    0029b720str x1, [sp+104]
    0029b724ldr x2, [sp+248]
    0029b728ldr x3, [sp+256]
    0029b72cldr x0, [sp+232]
    0029b730bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointFromAffine
    0029b734str x0, [sp+144]
    0029b738str x1, [sp+128]
    0029b73cstr x2, [sp+136]
    0029b740ldr x4, [sp+144]
    0029b744str x4, [sp+208]
    0029b748ldr x4, [sp+128]
    0029b74cldr x5, [sp+136]
    0029b750str x4, [sp+192]
    0029b754str x5, [sp+200]
    0029b758ldr x4, [sp+208]
    0029b75cstr x4, [sp+64]
    0029b760ldr x4, [sp+200]
    0029b764ldr x5, [sp+192]
    0029b768str x5, [sp+72]
    0029b76cstr x4, [sp+80]
    0029b770cbnz x5, 0x29b878
    0029b774b 0x29b778
    0029b778
    0029b778loc_29b778:
    0029b778str xzr, [sp+144]
    0029b77cstp xzr, xzr, [sp+128]
    0029b780ldr x4, [sp+240]
    0029b784ldrsb x27, [x4]
    0029b788ldr x1, [x4+56]
    0029b78cstr x1, [sp+96]
    0029b790ldr x2, [sp+264]
    0029b794ldr x3, [sp+272]
    0029b798ldr x0, [sp+232]
    0029b79cbl crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointFromAffine
    0029b7a0str x0, [sp+144]
    0029b7a4str x1, [sp+128]
    0029b7a8str x2, [sp+136]
    0029b7acldr x4, [sp+144]
    0029b7b0str x4, [sp+184]
    0029b7b4ldr x4, [sp+128]
    0029b7b8ldr x5, [sp+136]
    0029b7bcstr x4, [sp+168]
    0029b7c0str x5, [sp+176]
    0029b7c4ldr x4, [sp+184]
    0029b7c8str x4, [sp+56]
    0029b7ccldr x4, [sp+176]
    0029b7d0ldr x5, [sp+168]
    0029b7d4str x5, [sp+72]
    0029b7d8str x4, [sp+80]
    0029b7dccbnz x5, 0x29b864
    0029b7e0b 0x29b7e4
    0029b7e4
    0029b7e4loc_29b7e4:
    0029b7e4ldr x3, [sp+240]
    0029b7e8ldrsb x27, [x3]
    0029b7ecadd x26, x3, 16
    0029b7f0ldr x0, [sp+64]
    0029b7f4ldr x1, [sp+64]
    0029b7f8ldr x2, [sp+56]
    0029b7fcldr x3, [x3+16]
    0029b800blr x3
    0029b804str x0, [sp+144]
    0029b808str xzr, [sp+120]
    0029b80cstr xzr, [sp+112]
    0029b810ldr x3, [sp+240]
    0029b814ldrsb x27, [x3]
    0029b818ldr x1, [x3+56]
    0029b81cstr x1, [sp+88]
    0029b820ldr x0, [sp+232]
    0029b824ldr x2, [sp+144]
    0029b828bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointToAffine
    0029b82cstr x0, [sp+120]
    0029b830str x1, [sp+112]
    0029b834ldr x3, [sp+120]
    0029b838str x3, [sp+160]
    0029b83cldr x3, [sp+112]
    0029b840str x3, [sp+152]
    0029b844ldr x3, [sp+160]
    0029b848str x3, [sp+48]
    0029b84cldr x1, [sp+152]
    0029b850str x1, [sp+40]
    0029b854ldr x0, [sp+48]
    0029b858ldur x29, [sp-8]
    0029b85cldr x30, [sp], 224
    0029b860ret x30
    0029b864
    0029b864loc_29b864:
    0029b864adrp x0, 0x35a000
    0029b868add x0, x0, 2944
    0029b86cadrp x1, 0x477000
    0029b870add x1, x1, 2192
    0029b874bl runtime.gopanic
    0029b878
    0029b878loc_29b878:
    0029b878adrp x0, 0x35a000
    0029b87cadd x0, x0, 2944
    0029b880adrp x1, 0x477000
    0029b884add x1, x1, 2192
    0029b888bl runtime.gopanic
    0029b88chint
    0029b890
    0029b890loc_29b890:
    0029b890stp x0, x1, [sp+8]
    0029b894stp x2, x3, [sp+24]
    0029b898stp x4, x5, [sp+40]
    0029b89cmov x3, x30
    0029b8a0bl runtime.morestack_noctxt.abi0
    0029b8a4ldp x0, x1, [sp+8]
    0029b8a8ldp x2, x3, [sp+24]
    0029b8acldp x4, x5, [sp+40]
    0029b8b0b 0x29b6d0
    0029b8b4udf 0
    0029b8b8udf 0
    0029b8bcudf 0
    0029b6d0
    0029b8c0
    0029b8c0crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointToAffine: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointToAffine(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, int64_t p)
    0029b8c0ldr x16, [x28+16]
    0029b8c4sub x17, sp, 32
    0029b8c8subs xzr, x17, x16
    0029b8ccb.ls 0x29badc
    0029b8d0str x30, [sp-160]!
    0029b8d4stur x29, [sp-8]
    0029b8d8sub x29, sp, 8
    0029b8dcstr x0, [sp+168]
    0029b8e0str x1, [sp+176]
    0029b8e4str x2, [sp+184]
    0029b8e8str xzr, [sp+80]
    0029b8ecstr xzr, [sp+72]
    0029b8f0ldr x1, [sp+176]
    0029b8f4ldrsb x27, [x1]
    0029b8f8add x26, x1, 8
    0029b8fcldr x0, [sp+184]
    0029b900ldr x1, [x1+8]
    0029b904blr x1
    0029b908str x0, [sp+88]
    0029b90cstr x1, [sp+96]
    0029b910str x2, [sp+104]
    0029b914str x1, [sp+64]
    0029b918subs xzr, x1, 1
    0029b91ccset x1, eq
    0029b920strb w1, [sp+55]
    0029b924b.eq 0x29b92c
    0029b928b 0x29b954
    0029b92c
    0029b92cloc_29b92c:
    0029b92cldr x1, [sp+96]
    0029b930ldr x2, [sp+88]
    0029b934subs xzr, x1, 0
    0029b938b.hi 0x29b940
    0029b93cb 0x29bad0
    0029b940
    0029b940loc_29b940:
    0029b940ldrb w1, [x2]
    0029b944subs wzr, w1, 0
    0029b948cset x1, eq
    0029b94cstrb w1, [sp+55]
    0029b950b 0x29b958
    0029b954
    0029b954loc_29b954:
    0029b954b 0x29b958
    0029b958
    0029b958loc_29b958:
    0029b958ldrb w1, [sp+55]
    0029b95ctbnz w1, 0, 0x29b964
    0029b960b 0x29b9a4
    0029b964
    0029b964loc_29b964:
    0029b964adrp x0, 0x3aa000
    0029b968add x0, x0, 1024
    0029b96cbl runtime.newobject
    0029b970str x0, [sp+112]
    0029b974adrp x0, 0x3aa000
    0029b978add x0, x0, 1024
    0029b97cbl runtime.newobject
    0029b980str x0, [sp+144]
    0029b984ldr x1, [sp+112]
    0029b988str x1, [sp+80]
    0029b98cldr x1, [sp+144]
    0029b990str x1, [sp+72]
    0029b994ldr x0, [sp+80]
    0029b998ldur x29, [sp-8]
    0029b99cldr x30, [sp], 160
    0029b9a0ret x30
    0029b9a4
    0029b9a4loc_29b9a4:
    0029b9a4ldr x1, [sp+168]
    0029b9a8ldrsb x27, [x1]
    0029b9acldr x1, [x1+8]
    0029b9b0ldrsb x27, [x1]
    0029b9b4ldr x1, [x1+40]
    0029b9b8add x2, x1, 7
    0029b9bcsbfm x2, x2, 63, 63
    0029b9c0add x1, x1, x2, lsr #61
    0029b9c4add x1, x1, 7
    0029b9c8sbfm x1, x1, 3, 63
    0029b9ccstr x1, [sp+56]
    0029b9d0adrp x0, 0x3aa000
    0029b9d4add x0, x0, 1024
    0029b9d8bl runtime.newobject
    0029b9dcstr x0, [sp+144]
    0029b9e0ldr x2, [sp+56]
    0029b9e4add x1, x2, 1
    0029b9e8str x1, [sp+64]
    0029b9ecldr x3, [sp+104]
    0029b9f0ldr x4, [sp+88]
    0029b9f4subs xzr, x3, x1
    0029b9f8b.hs 0x29ba00
    0029b9fcb 0x29bac8
    0029ba00
    0029ba00loc_29ba00:
    0029ba00subs xzr, x1, 1
    0029ba04b.hs 0x29ba0c
    0029ba08b 0x29bac0
    0029ba0c
    0029ba0cloc_29ba0c:
    0029ba0csub x3, x3, 1
    0029ba10sub x5, xzr, x3
    0029ba14sbfm x5, x5, 63, 63
    0029ba18and x5, x5, 1
    0029ba1cadd x1, x4, x5
    0029ba20str x1, [sp+120]
    0029ba24str x2, [sp+128]
    0029ba28str x3, [sp+136]
    0029ba2cldr x0, [sp+144]
    0029ba30bl math/big.(*Int).SetBytes
    0029ba34str x0, [sp+80]
    0029ba38adrp x0, 0x3aa000
    0029ba3cadd x0, x0, 1024
    0029ba40bl runtime.newobject
    0029ba44str x0, [sp+144]
    0029ba48ldr x4, [sp+56]
    0029ba4cadd x0, x4, 1
    0029ba50str x0, [sp+64]
    0029ba54ldr x1, [sp+96]
    0029ba58ldr x5, [sp+88]
    0029ba5cldr x6, [sp+104]
    0029ba60b 0x29ba64
    0029ba64
    0029ba64loc_29ba64:
    0029ba64subs xzr, x1, x0
    0029ba68b.hs 0x29ba70
    0029ba6cb 0x29babc
    0029ba70
    0029ba70loc_29ba70:
    0029ba70sub x7, x1, x4
    0029ba74sub x4, x6, x4
    0029ba78sub x3, x4, 1
    0029ba7csub x2, x7, 1
    0029ba80sub x4, xzr, x3
    0029ba84and x4, x0, x4, asr #63
    0029ba88add x1, x5, x4
    0029ba8cstr x1, [sp+120]
    0029ba90str x2, [sp+128]
    0029ba94str x3, [sp+136]
    0029ba98ldr x0, [sp+144]
    0029ba9cbl math/big.(*Int).SetBytes
    0029baa0str x0, [sp+72]
    0029baa4ldr x4, [sp+80]
    0029baa8mov x1, x0
    0029baacmov x0, x4
    0029bab0ldur x29, [sp-8]
    0029bab4ldr x30, [sp], 160
    0029bab8ret x30
    0029babc
    0029babcloc_29babc:
    0029babcbl runtime.panicSliceB
    0029bac0
    0029bac0loc_29bac0:
    0029bac0orr x0, xzr, 1
    0029bac4bl runtime.panicSliceB
    0029bac8
    0029bac8loc_29bac8:
    0029bac8mov x2, x3
    0029baccbl runtime.panicSliceAcap
    0029bad0
    0029bad0loc_29bad0:
    0029bad0mov x0, xzr
    0029bad4bl runtime.panicIndex
    0029bad8hint
    0029badc
    0029badcloc_29badc:
    0029badcstp x0, x1, [sp+8]
    0029bae0str x2, [sp+24]
    0029bae4mov x3, x30
    0029bae8bl runtime.morestack_noctxt.abi0
    0029baecldp x0, x1, [sp+8]
    0029baf0ldr x2, [sp+24]
    0029baf4b 0x29b8c0
    0029baf8udf 0
    0029bafcudf 0
    0029b8c0
    0029bb00
    0029bb00crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointFromAffine: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointFromAffine(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, math/big.Int * x, math/big.Int * y)
    0029bb00ldr x16, [x28+16]
    0029bb04sub x17, sp, 96
    0029bb08subs xzr, x17, x16
    0029bb0cb.ls 0x29bee0
    0029bb10str x30, [sp-224]!
    0029bb14stur x29, [sp-8]
    0029bb18sub x29, sp, 8
    0029bb1cstr x0, [sp+232]
    0029bb20str x1, [sp+240]
    0029bb24str x2, [sp+248]
    0029bb28str x3, [sp+256]
    0029bb2cstr xzr, [sp+88]
    0029bb30stp xzr, xzr, [sp+96]
    0029bb34ldr x0, [sp+248]
    0029bb38bl math/big.(*Int).Sign
    0029bb3cstr x0, [sp+80]
    0029bb40subs xzr, x0, 0
    0029bb44cset x1, eq
    0029bb48strb w1, [sp+55]
    0029bb4ccbz x0, 0x29bb54
    0029bb50b 0x29bb70
    0029bb54
    0029bb54loc_29bb54:
    0029bb54ldr x0, [sp+256]
    0029bb58bl math/big.(*Int).Sign
    0029bb5cstr x0, [sp+72]
    0029bb60subs xzr, x0, 0
    0029bb64cset x1, eq
    0029bb68strb w1, [sp+55]
    0029bb6cb 0x29bb74
    0029bb70
    0029bb70loc_29bb70:
    0029bb70b 0x29bb74
    0029bb74
    0029bb74loc_29bb74:
    0029bb74ldrb w1, [sp+55]
    0029bb78tbnz w1, 0, 0x29bb80
    0029bb7cb 0x29bbb8
    0029bb80
    0029bb80loc_29bb80:
    0029bb80ldr x0, [sp+232]
    0029bb84ldrsb x27, [x0]
    0029bb88ldr x26, [x0]
    0029bb8cldr x0, [x26]
    0029bb90blr x0
    0029bb94str x0, [sp+208]
    0029bb98str x0, [sp+88]
    0029bb9cstp xzr, xzr, [sp+96]
    0029bba0ldr x0, [sp+88]
    0029bba4mov x1, xzr
    0029bba8mov x2, xzr
    0029bbacldur x29, [sp-8]
    0029bbb0ldr x30, [sp], 224
    0029bbb4ret x30
    0029bbb8
    0029bbb8loc_29bbb8:
    0029bbb8ldr x0, [sp+248]
    0029bbbcbl math/big.(*Int).Sign
    0029bbc0str x0, [sp+80]
    0029bbc4subs xzr, x0, 0
    0029bbc8cset x1, lt
    0029bbccstrb w1, [sp+55]
    0029bbd0tbnz x0, 63, 0x29bbd8
    0029bbd4b 0x29bbdc
    0029bbd8
    0029bbd8loc_29bbd8:
    0029bbd8b 0x29bbf8
    0029bbdc
    0029bbdcloc_29bbdc:
    0029bbdcldr x0, [sp+256]
    0029bbe0bl math/big.(*Int).Sign
    0029bbe4str x0, [sp+72]
    0029bbe8subs xzr, x0, 0
    0029bbeccset x1, lt
    0029bbf0strb w1, [sp+55]
    0029bbf4b 0x29bbf8
    0029bbf8
    0029bbf8loc_29bbf8:
    0029bbf8ldrb w2, [sp+55]
    0029bbfctbnz w2, 0, 0x29bc04
    0029bc00b 0x29bc48
    0029bc04
    0029bc04loc_29bc04:
    0029bc04adrp x0, 0x41b000
    0029bc08add x0, x0, 1669
    0029bc0cmovz x1, 19
    0029bc10bl errors.New
    0029bc14str x0, [sp+192]
    0029bc18str x1, [sp+200]
    0029bc1cstr x0, [sp+96]
    0029bc20str x1, [sp+104]
    0029bc24ldr x2, [sp+88]
    0029bc28mov x3, x0
    0029bc2cmov x0, x2
    0029bc30mov x4, x1
    0029bc34mov x1, x3
    0029bc38mov x2, x4
    0029bc3cldur x29, [sp-8]
    0029bc40ldr x30, [sp], 224
    0029bc44ret x30
    0029bc48
    0029bc48loc_29bc48:
    0029bc48ldr x0, [sp+248]
    0029bc4cbl math/big.(*Int).BitLen
    0029bc50str x0, [sp+80]
    0029bc54ldr x1, [sp+232]
    0029bc58ldrsb x27, [x1]
    0029bc5cldr x1, [x1+8]
    0029bc60ldrsb x27, [x1]
    0029bc64ldr x1, [x1+40]
    0029bc68subs xzr, x0, x1
    0029bc6ccset x1, gt
    0029bc70strb w1, [sp+55]
    0029bc74b.gt 0x29bc7c
    0029bc78b 0x29bc80
    0029bc7c
    0029bc7cloc_29bc7c:
    0029bc7cb 0x29bcb0
    0029bc80
    0029bc80loc_29bc80:
    0029bc80ldr x0, [sp+256]
    0029bc84bl math/big.(*Int).BitLen
    0029bc88str x0, [sp+72]
    0029bc8cldr x1, [sp+232]
    0029bc90ldrsb x27, [x1]
    0029bc94ldr x1, [x1+8]
    0029bc98ldrsb x27, [x1]
    0029bc9cldr x1, [x1+40]
    0029bca0subs xzr, x0, x1
    0029bca4cset x1, gt
    0029bca8strb w1, [sp+55]
    0029bcacb 0x29bcb0
    0029bcb0
    0029bcb0loc_29bcb0:
    0029bcb0ldrb w3, [sp+55]
    0029bcb4tbnz w3, 0, 0x29bcbc
    0029bcb8b 0x29bd00
    0029bcbc
    0029bcbcloc_29bcbc:
    0029bcbcadrp x0, 0x41d000
    0029bcc0add x0, x0, 132
    0029bcc4movz x1, 22
    0029bcc8bl errors.New
    0029bcccstr x0, [sp+192]
    0029bcd0str x1, [sp+200]
    0029bcd4str x0, [sp+96]
    0029bcd8str x1, [sp+104]
    0029bcdcldr x2, [sp+88]
    0029bce0mov x3, x0
    0029bce4mov x0, x2
    0029bce8mov x4, x1
    0029bcecmov x1, x3
    0029bcf0mov x2, x4
    0029bcf4ldur x29, [sp-8]
    0029bcf8ldr x30, [sp], 224
    0029bcfcret x30
    0029bd00
    0029bd00loc_29bd00:
    0029bd00ldr x3, [sp+232]
    0029bd04ldrsb x27, [x3]
    0029bd08ldr x3, [x3+8]
    0029bd0cldrsb x27, [x3]
    0029bd10ldr x3, [x3+40]
    0029bd14add x4, x3, 7
    0029bd18sbfm x4, x4, 63, 63
    0029bd1cadd x3, x3, x4, lsr #61
    0029bd20add x3, x3, 7
    0029bd24sbfm x3, x3, 3, 63
    0029bd28str x3, [sp+56]
    0029bd2cubfm x3, x3, 63, 62
    0029bd30add x2, x3, 1
    0029bd34str x2, [sp+64]
    0029bd38adrp x0, 0x35a000
    0029bd3cadd x0, x0, 3072
    0029bd40mov x1, x2
    0029bd44bl runtime.makeslice
    0029bd48ldr x1, [sp+64]
    0029bd4cldr x3, [sp+64]
    0029bd50str x0, [sp+112]
    0029bd54str x1, [sp+120]
    0029bd58str x3, [sp+128]
    0029bd5csubs xzr, x1, 0
    0029bd60b.hi 0x29bd68
    0029bd64b 0x29bed4
    0029bd68
    0029bd68loc_29bd68:
    0029bd68orr x4, xzr, 4
    0029bd6cstrb w4, [x0]
    0029bd70ldr x2, [sp+56]
    0029bd74add x1, x2, 1
    0029bd78str x1, [sp+80]
    0029bd7cldr x4, [sp+128]
    0029bd80ldr x5, [sp+112]
    0029bd84subs xzr, x4, x1
    0029bd88b.hs 0x29bd90
    0029bd8cb 0x29becc
    0029bd90
    0029bd90loc_29bd90:
    0029bd90subs xzr, x1, 1
    0029bd94b.hs 0x29bd9c
    0029bd98b 0x29bec4
    0029bd9c
    0029bd9cloc_29bd9c:
    0029bd9csub x3, x4, 1
    0029bda0sub x4, xzr, x3
    0029bda4sbfm x4, x4, 63, 63
    0029bda8and x4, x4, 1
    0029bdacadd x1, x5, x4
    0029bdb0str x1, [sp+168]
    0029bdb4str x2, [sp+176]
    0029bdb8str x3, [sp+184]
    0029bdbcldr x0, [sp+248]
    0029bdc0bl math/big.(*Int).FillBytes
    0029bdc4ldr x4, [sp+56]
    0029bdc8add x0, x4, 1
    0029bdccstr x0, [sp+80]
    0029bdd0ldr x5, [sp+56]
    0029bdd4ubfm x5, x5, 63, 62
    0029bdd8add x1, x5, 1
    0029bddcstr x1, [sp+72]
    0029bde0ldr x2, [sp+128]
    0029bde4ldr x6, [sp+112]
    0029bde8subs xzr, x2, x1
    0029bdecb.hs 0x29bdf4
    0029bdf0b 0x29bec0
    0029bdf4
    0029bdf4loc_29bdf4:
    0029bdf4subs xzr, x1, x0
    0029bdf8b.hs 0x29be00
    0029bdfcb 0x29bebc
    0029be00
    0029be00loc_29be00:
    0029be00sub x5, x5, x4
    0029be04sub x4, x2, x4
    0029be08sub x3, x4, 1
    0029be0csub x4, xzr, x3
    0029be10and x4, x0, x4, asr #63
    0029be14add x1, x6, x4
    0029be18str x1, [sp+168]
    0029be1cstr x5, [sp+176]
    0029be20str x3, [sp+184]
    0029be24ldr x0, [sp+256]
    0029be28mov x2, x5
    0029be2cbl math/big.(*Int).FillBytes
    0029be30ldr x4, [sp+232]
    0029be34ldrsb x27, [x4]
    0029be38ldr x26, [x4]
    0029be3cldr x4, [x26]
    0029be40blr x4
    0029be44str x0, [sp+208]
    0029be48str xzr, [sp+160]
    0029be4cstp xzr, xzr, [sp+192]
    0029be50ldr x26, [sp+240]
    0029be54ldrsb x27, [x26]
    0029be58ldr x4, [x26]
    0029be5cldr x1, [sp+112]
    0029be60ldr x2, [sp+120]
    0029be64ldr x3, [sp+128]
    0029be68ldr x0, [sp+208]
    0029be6cblr x4
    0029be70str x0, [sp+160]
    0029be74str x1, [sp+192]
    0029be78str x2, [sp+200]
    0029be7cldr x4, [sp+160]
    0029be80str x4, [sp+152]
    0029be84ldr x4, [sp+192]
    0029be88ldr x5, [sp+200]
    0029be8cstr x4, [sp+136]
    0029be90str x5, [sp+144]
    0029be94ldr x4, [sp+152]
    0029be98str x4, [sp+88]
    0029be9cldr x1, [sp+136]
    0029bea0ldr x2, [sp+144]
    0029bea4str x1, [sp+96]
    0029bea8str x2, [sp+104]
    0029beacldr x0, [sp+88]
    0029beb0ldur x29, [sp-8]
    0029beb4ldr x30, [sp], 224
    0029beb8ret x30
    0029bebc
    0029bebcloc_29bebc:
    0029bebcbl runtime.panicSliceB
    0029bec0
    0029bec0loc_29bec0:
    0029bec0bl runtime.panicSliceAcap
    0029bec4
    0029bec4loc_29bec4:
    0029bec4orr x0, xzr, 1
    0029bec8bl runtime.panicSliceB
    0029becc
    0029beccloc_29becc:
    0029beccmov x2, x4
    0029bed0bl runtime.panicSliceAcap
    0029bed4
    0029bed4loc_29bed4:
    0029bed4mov x0, xzr
    0029bed8bl runtime.panicIndex
    0029bedchint
    0029bee0
    0029bee0loc_29bee0:
    0029bee0stp x0, x1, [sp+8]
    0029bee4stp x2, x3, [sp+24]
    0029bee8mov x3, x30
    0029beecbl runtime.morestack_noctxt.abi0
    0029bef0ldp x0, x1, [sp+8]
    0029bef4ldp x2, x3, [sp+24]
    0029bef8b 0x29bb00
    0029befcudf 0
    0029bb00
    0029bf00
    0029bf00crypto/elliptic.(*nistCurve[go.shape.*uint8]).IsOnCurve: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).IsOnCurve(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict, math/big.Int * x, math/big.Int * y)
    0029bf00ldr x16, [x28+16]
    0029bf04sub x17, sp, 16
    0029bf08subs xzr, x17, x16
    0029bf0cb.ls 0x29c000
    0029bf10str x30, [sp-144]!
    0029bf14stur x29, [sp-8]
    0029bf18sub x29, sp, 8
    0029bf1cstr x0, [sp+152]
    0029bf20str x1, [sp+160]
    0029bf24str x2, [sp+168]
    0029bf28str x3, [sp+176]
    0029bf2cstrb wzr, [sp+46]
    0029bf30ldr x0, [sp+168]
    0029bf34bl math/big.(*Int).Sign
    0029bf38str x0, [sp+48]
    0029bf3csubs xzr, x0, 0
    0029bf40cset x1, eq
    0029bf44strb w1, [sp+47]
    0029bf48cbz x0, 0x29bf50
    0029bf4cb 0x29bf6c
    0029bf50
    0029bf50loc_29bf50:
    0029bf50ldr x0, [sp+176]
    0029bf54bl math/big.(*Int).Sign
    0029bf58str x0, [sp+56]
    0029bf5csubs xzr, x0, 0
    0029bf60cset x1, eq
    0029bf64strb w1, [sp+47]
    0029bf68b 0x29bf70
    0029bf6c
    0029bf6cloc_29bf6c:
    0029bf6cb 0x29bf70
    0029bf70
    0029bf70loc_29bf70:
    0029bf70ldrb w4, [sp+47]
    0029bf74tbnz w4, 0, 0x29bf7c
    0029bf78b 0x29bf90
    0029bf7c
    0029bf7cloc_29bf7c:
    0029bf7cstrb wzr, [sp+46]
    0029bf80mov x0, xzr
    0029bf84ldur x29, [sp-8]
    0029bf88ldr x30, [sp], 144
    0029bf8cret x30
    0029bf90
    0029bf90loc_29bf90:
    0029bf90str xzr, [sp+128]
    0029bf94stp xzr, xzr, [sp+112]
    0029bf98ldr x4, [sp+160]
    0029bf9cldrsb x27, [x4]
    0029bfa0ldr x1, [x4+48]
    0029bfa4str x1, [sp+104]
    0029bfa8ldr x2, [sp+168]
    0029bfacldr x3, [sp+176]
    0029bfb0ldr x0, [sp+152]
    0029bfb4bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).pointFromAffine
    0029bfb8str x0, [sp+128]
    0029bfbcstr x1, [sp+112]
    0029bfc0str x2, [sp+120]
    0029bfc4ldr x4, [sp+128]
    0029bfc8str x4, [sp+96]
    0029bfccldr x4, [sp+112]
    0029bfd0ldr x5, [sp+120]
    0029bfd4str x4, [sp+80]
    0029bfd8str x5, [sp+88]
    0029bfdcstr x4, [sp+64]
    0029bfe0str x5, [sp+72]
    0029bfe4subs xzr, x4, 0
    0029bfe8cset x4, ne
    0029bfeceor x0, x4, 1
    0029bff0strb w0, [sp+46]
    0029bff4ldur x29, [sp-8]
    0029bff8ldr x30, [sp], 144
    0029bffcret x30
    0029c000
    0029c000loc_29c000:
    0029c000stp x0, x1, [sp+8]
    0029c004stp x2, x3, [sp+24]
    0029c008mov x3, x30
    0029c00cbl runtime.morestack_noctxt.abi0
    0029c010ldp x0, x1, [sp+8]
    0029c014ldp x2, x3, [sp+24]
    0029c018b 0x29bf00
    0029c01cudf 0
    0029bf00
    0029c020
    0029c020crypto/elliptic.(*nistCurve[go.shape.*uint8]).Params: ; void crypto/elliptic.(*nistCurve[go.shape.*uint8]).Params(crypto/elliptic.nistCurve[go.shape.*uint8] * curve, uintptr[33] * dict)
    0029c020str x30, [sp-32]!
    0029c024stur x29, [sp-8]
    0029c028sub x29, sp, 8
    0029c02cstr x0, [sp+40]
    0029c030str x1, [sp+48]
    0029c034str xzr, [sp+16]
    0029c038ldr x1, [sp+40]
    0029c03cldrsb x27, [x1]
    0029c040ldr x0, [x1+8]
    0029c044str x0, [sp+16]
    0029c048add x29, sp, 24
    0029c04cadd sp, sp, 32
    0029c050ret x30
    0029c054udf 0
    0029c058udf 0
    0029c05cudf 0
    0029c020
    0029c060
    0029c060crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).Unmarshal: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).Unmarshal(int64_t curve, struct []uint8 data)
    0029c060ldr x16, [x28+16]
    0029c064subs xzr, sp, x16
    0029c068b.ls 0x29c0f4
    0029c06cstr x30, [sp-112]!
    0029c070stur x29, [sp-8]
    0029c074sub x29, sp, 8
    0029c078ldr x16, [x28+32]
    0029c07ccbnz x16, 0x29c110
    0029c080
    0029c080loc_29c080:
    0029c080str x0, [sp+120]
    0029c084str x1, [sp+128]
    0029c088str x2, [sp+136]
    0029c08cstr x3, [sp+144]
    0029c090str xzr, [sp+64]
    0029c094str xzr, [sp+56]
    0029c098str xzr, [sp+80]
    0029c09cstr xzr, [sp+72]
    0029c0a0ldr x2, [sp+128]
    0029c0a4ldr x0, [sp+120]
    0029c0a8ldr x3, [sp+136]
    0029c0acldr x4, [sp+144]
    0029c0b0adrp x1, 0x481000
    0029c0b4add x1, x1, 1632
    0029c0b8bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).Unmarshal
    0029c0bcstr x0, [sp+80]
    0029c0c0str x1, [sp+72]
    0029c0c4ldr x5, [sp+80]
    0029c0c8str x5, [sp+96]
    0029c0ccldr x5, [sp+72]
    0029c0d0str x5, [sp+88]
    0029c0d4ldr x5, [sp+96]
    0029c0d8str x5, [sp+64]
    0029c0dcldr x1, [sp+88]
    0029c0e0str x1, [sp+56]
    0029c0e4ldr x0, [sp+64]
    0029c0e8ldur x29, [sp-8]
    0029c0ecldr x30, [sp], 112
    0029c0f0ret x30
    0029c0f4
    0029c0f4loc_29c0f4:
    0029c0f4stp x0, x1, [sp+8]
    0029c0f8stp x2, x3, [sp+24]
    0029c0fcmov x3, x30
    0029c100bl runtime.morestack_noctxt.abi0
    0029c104ldp x0, x1, [sp+8]
    0029c108ldp x2, x3, [sp+24]
    0029c10cb 0x29c060
    0029c110
    0029c110loc_29c110:
    0029c110ldr x17, [x16]
    0029c114add x20, sp, 120
    0029c118subs xzr, x20, x17
    0029c11cb.ne 0x29c080
    0029c120add x20, sp, 8
    0029c124str x20, [x16]
    0029c128b 0x29c080
    0029c12cudf 0
    0029c060
    0029c130
    0029c130crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).ScalarBaseMult: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).ScalarBaseMult(int64_t curve, struct []uint8 scalar)
    0029c130ldr x16, [x28+16]
    0029c134subs xzr, sp, x16
    0029c138b.ls 0x29c1c4
    0029c13cstr x30, [sp-112]!
    0029c140stur x29, [sp-8]
    0029c144sub x29, sp, 8
    0029c148ldr x16, [x28+32]
    0029c14ccbnz x16, 0x29c1e0
    0029c150
    0029c150loc_29c150:
    0029c150str x0, [sp+120]
    0029c154str x1, [sp+128]
    0029c158str x2, [sp+136]
    0029c15cstr x3, [sp+144]
    0029c160str xzr, [sp+64]
    0029c164str xzr, [sp+56]
    0029c168str xzr, [sp+80]
    0029c16cstr xzr, [sp+72]
    0029c170ldr x2, [sp+128]
    0029c174ldr x0, [sp+120]
    0029c178ldr x3, [sp+136]
    0029c17cldr x4, [sp+144]
    0029c180adrp x1, 0x481000
    0029c184add x1, x1, 1632
    0029c188bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarBaseMult
    0029c18cstr x0, [sp+80]
    0029c190str x1, [sp+72]
    0029c194ldr x5, [sp+80]
    0029c198str x5, [sp+96]
    0029c19cldr x5, [sp+72]
    0029c1a0str x5, [sp+88]
    0029c1a4ldr x5, [sp+96]
    0029c1a8str x5, [sp+64]
    0029c1acldr x1, [sp+88]
    0029c1b0str x1, [sp+56]
    0029c1b4ldr x0, [sp+64]
    0029c1b8ldur x29, [sp-8]
    0029c1bcldr x30, [sp], 112
    0029c1c0ret x30
    0029c1c4
    0029c1c4loc_29c1c4:
    0029c1c4stp x0, x1, [sp+8]
    0029c1c8stp x2, x3, [sp+24]
    0029c1ccmov x3, x30
    0029c1d0bl runtime.morestack_noctxt.abi0
    0029c1d4ldp x0, x1, [sp+8]
    0029c1d8ldp x2, x3, [sp+24]
    0029c1dcb 0x29c130
    0029c1e0
    0029c1e0loc_29c1e0:
    0029c1e0ldr x17, [x16]
    0029c1e4add x20, sp, 120
    0029c1e8subs xzr, x20, x17
    0029c1ecb.ne 0x29c150
    0029c1f0add x20, sp, 8
    0029c1f4str x20, [x16]
    0029c1f8b 0x29c150
    0029c1fcudf 0
    0029c130
    0029c200
    0029c200crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).ScalarMult: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).ScalarMult(int64_t curve, math/big.Int * Bx, math/big.Int * By, struct []uint8 scalar)
    0029c200ldr x16, [x28+16]
    0029c204subs xzr, sp, x16
    0029c208b.ls 0x29c2a4
    0029c20cstr x30, [sp-128]!
    0029c210stur x29, [sp-8]
    0029c214sub x29, sp, 8
    0029c218ldr x16, [x28+32]
    0029c21ccbnz x16, 0x29c2c8
    0029c220
    0029c220loc_29c220:
    0029c220str x0, [sp+136]
    0029c224str x1, [sp+144]
    0029c228str x2, [sp+152]
    0029c22cstr x3, [sp+160]
    0029c230str x4, [sp+168]
    0029c234str x5, [sp+176]
    0029c238str xzr, [sp+80]
    0029c23cstr xzr, [sp+72]
    0029c240str xzr, [sp+96]
    0029c244str xzr, [sp+88]
    0029c248ldr x4, [sp+160]
    0029c24cldr x2, [sp+144]
    0029c250ldr x3, [sp+152]
    0029c254ldr x0, [sp+136]
    0029c258ldr x5, [sp+168]
    0029c25cldr x6, [sp+176]
    0029c260adrp x1, 0x481000
    0029c264add x1, x1, 1632
    0029c268bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarMult
    0029c26cstr x0, [sp+96]
    0029c270str x1, [sp+88]
    0029c274ldr x7, [sp+96]
    0029c278str x7, [sp+112]
    0029c27cldr x7, [sp+88]
    0029c280str x7, [sp+104]
    0029c284ldr x7, [sp+112]
    0029c288str x7, [sp+80]
    0029c28cldr x1, [sp+104]
    0029c290str x1, [sp+72]
    0029c294ldr x0, [sp+80]
    0029c298ldur x29, [sp-8]
    0029c29cldr x30, [sp], 128
    0029c2a0ret x30
    0029c2a4
    0029c2a4loc_29c2a4:
    0029c2a4stp x0, x1, [sp+8]
    0029c2a8stp x2, x3, [sp+24]
    0029c2acstp x4, x5, [sp+40]
    0029c2b0mov x3, x30
    0029c2b4bl runtime.morestack_noctxt.abi0
    0029c2b8ldp x0, x1, [sp+8]
    0029c2bcldp x2, x3, [sp+24]
    0029c2c0ldp x4, x5, [sp+40]
    0029c2c4b 0x29c200
    0029c2c8
    0029c2c8loc_29c2c8:
    0029c2c8ldr x17, [x16]
    0029c2ccadd x20, sp, 136
    0029c2d0subs xzr, x20, x17
    0029c2d4b.ne 0x29c220
    0029c2d8add x20, sp, 8
    0029c2dcstr x20, [x16]
    0029c2e0b 0x29c220
    0029c2e4udf 0
    0029c2e8udf 0
    0029c2ecudf 0
    0029c200
    0029c2f0
    0029c2f0crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).Add: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).Add(int64_t curve, math/big.Int * x1, math/big.Int * y1, math/big.Int * x2, math/big.Int * y2)
    0029c2f0ldr x16, [x28+16]
    0029c2f4subs xzr, sp, x16
    0029c2f8b.ls 0x29c38c
    0029c2fcstr x30, [sp-112]!
    0029c300stur x29, [sp-8]
    0029c304sub x29, sp, 8
    0029c308ldr x16, [x28+32]
    0029c30ccbnz x16, 0x29c3b0
    0029c310
    0029c310loc_29c310:
    0029c310str x0, [sp+120]
    0029c314str x1, [sp+128]
    0029c318str x2, [sp+136]
    0029c31cstr x3, [sp+144]
    0029c320str x4, [sp+152]
    0029c324str xzr, [sp+64]
    0029c328str xzr, [sp+56]
    0029c32cstr xzr, [sp+72]
    0029c330str xzr, [sp+96]
    0029c334ldr x2, [sp+128]
    0029c338ldr x3, [sp+136]
    0029c33cldr x4, [sp+144]
    0029c340ldr x5, [sp+152]
    0029c344ldr x0, [sp+120]
    0029c348adrp x1, 0x481000
    0029c34cadd x1, x1, 1632
    0029c350bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).Add
    0029c354str x0, [sp+72]
    0029c358str x1, [sp+96]
    0029c35cldr x6, [sp+72]
    0029c360str x6, [sp+88]
    0029c364ldr x6, [sp+96]
    0029c368str x6, [sp+80]
    0029c36cldr x6, [sp+88]
    0029c370str x6, [sp+64]
    0029c374ldr x1, [sp+80]
    0029c378str x1, [sp+56]
    0029c37cldr x0, [sp+64]
    0029c380ldur x29, [sp-8]
    0029c384ldr x30, [sp], 112
    0029c388ret x30
    0029c38c
    0029c38cloc_29c38c:
    0029c38cstp x0, x1, [sp+8]
    0029c390stp x2, x3, [sp+24]
    0029c394str x4, [sp+40]
    0029c398mov x3, x30
    0029c39cbl runtime.morestack_noctxt.abi0
    0029c3a0ldp x0, x1, [sp+8]
    0029c3a4ldp x2, x3, [sp+24]
    0029c3a8ldr x4, [sp+40]
    0029c3acb 0x29c2f0
    0029c3b0
    0029c3b0loc_29c3b0:
    0029c3b0ldr x17, [x16]
    0029c3b4add x20, sp, 120
    0029c3b8subs xzr, x20, x17
    0029c3bcb.ne 0x29c310
    0029c3c0add x20, sp, 8
    0029c3c4str x20, [x16]
    0029c3c8b 0x29c310
    0029c3ccudf 0
    0029c2f0
    0029c3d0
    0029c3d0crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).IsOnCurve: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).IsOnCurve(int64_t curve, math/big.Int * x, math/big.Int * y)
    0029c3d0ldr x16, [x28+16]
    0029c3d4subs xzr, sp, x16
    0029c3d8b.ls 0x29c42c
    0029c3dcstr x30, [sp-64]!
    0029c3e0stur x29, [sp-8]
    0029c3e4sub x29, sp, 8
    0029c3e8ldr x16, [x28+32]
    0029c3eccbnz x16, 0x29c448
    0029c3f0
    0029c3f0loc_29c3f0:
    0029c3f0str x0, [sp+72]
    0029c3f4str x1, [sp+80]
    0029c3f8str x2, [sp+88]
    0029c3fcstrb wzr, [sp+54]
    0029c400ldr x2, [sp+80]
    0029c404ldr x3, [sp+88]
    0029c408ldr x0, [sp+72]
    0029c40cadrp x1, 0x481000
    0029c410add x1, x1, 1632
    0029c414bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).IsOnCurve
    0029c418strb w0, [sp+55]
    0029c41cstrb w0, [sp+54]
    0029c420ldur x29, [sp-8]
    0029c424ldr x30, [sp], 64
    0029c428ret x30
    0029c42c
    0029c42cloc_29c42c:
    0029c42cstp x0, x1, [sp+8]
    0029c430str x2, [sp+24]
    0029c434mov x3, x30
    0029c438bl runtime.morestack_noctxt.abi0
    0029c43cldp x0, x1, [sp+8]
    0029c440ldr x2, [sp+24]
    0029c444b 0x29c3d0
    0029c448
    0029c448loc_29c448:
    0029c448ldr x17, [x16]
    0029c44cadd x20, sp, 72
    0029c450subs xzr, x20, x17
    0029c454b.ne 0x29c3f0
    0029c458add x20, sp, 8
    0029c45cstr x20, [x16]
    0029c460b 0x29c3f0
    0029c464udf 0
    0029c468udf 0
    0029c46cudf 0
    0029c3d0
    0029c470
    0029c470crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).Params: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P521Point]).Params(int64_t curve)
    0029c470ldr x16, [x28+16]
    0029c474subs xzr, sp, x16
    0029c478b.ls 0x29c4bc
    0029c47cstr x30, [sp-48]!
    0029c480stur x29, [sp-8]
    0029c484sub x29, sp, 8
    0029c488ldr x16, [x28+32]
    0029c48ccbnz x16, 0x29c4d0
    0029c490
    0029c490loc_29c490:
    0029c490str x0, [sp+56]
    0029c494str xzr, [sp+24]
    0029c498ldr x0, [sp+56]
    0029c49cadrp x1, 0x481000
    0029c4a0add x1, x1, 1632
    0029c4a4bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).Params
    0029c4a8str x0, [sp+32]
    0029c4acstr x0, [sp+24]
    0029c4b0ldur x29, [sp-8]
    0029c4b4ldr x30, [sp], 48
    0029c4b8ret x30
    0029c4bc
    0029c4bcloc_29c4bc:
    0029c4bcstr x0, [sp+8]
    0029c4c0mov x3, x30
    0029c4c4bl runtime.morestack_noctxt.abi0
    0029c4c8ldr x0, [sp+8]
    0029c4ccb 0x29c470
    0029c4d0
    0029c4d0loc_29c4d0:
    0029c4d0ldr x17, [x16]
    0029c4d4add x20, sp, 56
    0029c4d8subs xzr, x20, x17
    0029c4dcb.ne 0x29c490
    0029c4e0add x20, sp, 8
    0029c4e4str x20, [x16]
    0029c4e8b 0x29c490
    0029c4ecudf 0
    0029c470
    0029c4f0
    0029c4f0crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).Unmarshal: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).Unmarshal(int64_t curve, struct []uint8 data)
    0029c4f0ldr x16, [x28+16]
    0029c4f4subs xzr, sp, x16
    0029c4f8b.ls 0x29c584
    0029c4fcstr x30, [sp-112]!
    0029c500stur x29, [sp-8]
    0029c504sub x29, sp, 8
    0029c508ldr x16, [x28+32]
    0029c50ccbnz x16, 0x29c5a0
    0029c510
    0029c510loc_29c510:
    0029c510str x0, [sp+120]
    0029c514str x1, [sp+128]
    0029c518str x2, [sp+136]
    0029c51cstr x3, [sp+144]
    0029c520str xzr, [sp+64]
    0029c524str xzr, [sp+56]
    0029c528str xzr, [sp+80]
    0029c52cstr xzr, [sp+72]
    0029c530ldr x2, [sp+128]
    0029c534ldr x0, [sp+120]
    0029c538ldr x3, [sp+136]
    0029c53cldr x4, [sp+144]
    0029c540adrp x1, 0x481000
    0029c544add x1, x1, 1920
    0029c548bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).Unmarshal
    0029c54cstr x0, [sp+80]
    0029c550str x1, [sp+72]
    0029c554ldr x5, [sp+80]
    0029c558str x5, [sp+96]
    0029c55cldr x5, [sp+72]
    0029c560str x5, [sp+88]
    0029c564ldr x5, [sp+96]
    0029c568str x5, [sp+64]
    0029c56cldr x1, [sp+88]
    0029c570str x1, [sp+56]
    0029c574ldr x0, [sp+64]
    0029c578ldur x29, [sp-8]
    0029c57cldr x30, [sp], 112
    0029c580ret x30
    0029c584
    0029c584loc_29c584:
    0029c584stp x0, x1, [sp+8]
    0029c588stp x2, x3, [sp+24]
    0029c58cmov x3, x30
    0029c590bl runtime.morestack_noctxt.abi0
    0029c594ldp x0, x1, [sp+8]
    0029c598ldp x2, x3, [sp+24]
    0029c59cb 0x29c4f0
    0029c5a0
    0029c5a0loc_29c5a0:
    0029c5a0ldr x17, [x16]
    0029c5a4add x20, sp, 120
    0029c5a8subs xzr, x20, x17
    0029c5acb.ne 0x29c510
    0029c5b0add x20, sp, 8
    0029c5b4str x20, [x16]
    0029c5b8b 0x29c510
    0029c5bcudf 0
    0029c4f0
    0029c5c0
    0029c5c0crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).ScalarBaseMult: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).ScalarBaseMult(int64_t curve, struct []uint8 scalar)
    0029c5c0ldr x16, [x28+16]
    0029c5c4subs xzr, sp, x16
    0029c5c8b.ls 0x29c654
    0029c5ccstr x30, [sp-112]!
    0029c5d0stur x29, [sp-8]
    0029c5d4sub x29, sp, 8
    0029c5d8ldr x16, [x28+32]
    0029c5dccbnz x16, 0x29c670
    0029c5e0
    0029c5e0loc_29c5e0:
    0029c5e0str x0, [sp+120]
    0029c5e4str x1, [sp+128]
    0029c5e8str x2, [sp+136]
    0029c5ecstr x3, [sp+144]
    0029c5f0str xzr, [sp+64]
    0029c5f4str xzr, [sp+56]
    0029c5f8str xzr, [sp+80]
    0029c5fcstr xzr, [sp+72]
    0029c600ldr x2, [sp+128]
    0029c604ldr x0, [sp+120]
    0029c608ldr x3, [sp+136]
    0029c60cldr x4, [sp+144]
    0029c610adrp x1, 0x481000
    0029c614add x1, x1, 1920
    0029c618bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarBaseMult
    0029c61cstr x0, [sp+80]
    0029c620str x1, [sp+72]
    0029c624ldr x5, [sp+80]
    0029c628str x5, [sp+96]
    0029c62cldr x5, [sp+72]
    0029c630str x5, [sp+88]
    0029c634ldr x5, [sp+96]
    0029c638str x5, [sp+64]
    0029c63cldr x1, [sp+88]
    0029c640str x1, [sp+56]
    0029c644ldr x0, [sp+64]
    0029c648ldur x29, [sp-8]
    0029c64cldr x30, [sp], 112
    0029c650ret x30
    0029c654
    0029c654loc_29c654:
    0029c654stp x0, x1, [sp+8]
    0029c658stp x2, x3, [sp+24]
    0029c65cmov x3, x30
    0029c660bl runtime.morestack_noctxt.abi0
    0029c664ldp x0, x1, [sp+8]
    0029c668ldp x2, x3, [sp+24]
    0029c66cb 0x29c5c0
    0029c670
    0029c670loc_29c670:
    0029c670ldr x17, [x16]
    0029c674add x20, sp, 120
    0029c678subs xzr, x20, x17
    0029c67cb.ne 0x29c5e0
    0029c680add x20, sp, 8
    0029c684str x20, [x16]
    0029c688b 0x29c5e0
    0029c68cudf 0
    0029c5c0
    0029c690
    0029c690crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).ScalarMult: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).ScalarMult(int64_t curve, math/big.Int * Bx, math/big.Int * By, struct []uint8 scalar)
    0029c690ldr x16, [x28+16]
    0029c694subs xzr, sp, x16
    0029c698b.ls 0x29c734
    0029c69cstr x30, [sp-128]!
    0029c6a0stur x29, [sp-8]
    0029c6a4sub x29, sp, 8
    0029c6a8ldr x16, [x28+32]
    0029c6accbnz x16, 0x29c758
    0029c6b0
    0029c6b0loc_29c6b0:
    0029c6b0str x0, [sp+136]
    0029c6b4str x1, [sp+144]
    0029c6b8str x2, [sp+152]
    0029c6bcstr x3, [sp+160]
    0029c6c0str x4, [sp+168]
    0029c6c4str x5, [sp+176]
    0029c6c8str xzr, [sp+80]
    0029c6ccstr xzr, [sp+72]
    0029c6d0str xzr, [sp+96]
    0029c6d4str xzr, [sp+88]
    0029c6d8ldr x4, [sp+160]
    0029c6dcldr x2, [sp+144]
    0029c6e0ldr x3, [sp+152]
    0029c6e4ldr x0, [sp+136]
    0029c6e8ldr x5, [sp+168]
    0029c6ecldr x6, [sp+176]
    0029c6f0adrp x1, 0x481000
    0029c6f4add x1, x1, 1920
    0029c6f8bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarMult
    0029c6fcstr x0, [sp+96]
    0029c700str x1, [sp+88]
    0029c704ldr x7, [sp+96]
    0029c708str x7, [sp+112]
    0029c70cldr x7, [sp+88]
    0029c710str x7, [sp+104]
    0029c714ldr x7, [sp+112]
    0029c718str x7, [sp+80]
    0029c71cldr x1, [sp+104]
    0029c720str x1, [sp+72]
    0029c724ldr x0, [sp+80]
    0029c728ldur x29, [sp-8]
    0029c72cldr x30, [sp], 128
    0029c730ret x30
    0029c734
    0029c734loc_29c734:
    0029c734stp x0, x1, [sp+8]
    0029c738stp x2, x3, [sp+24]
    0029c73cstp x4, x5, [sp+40]
    0029c740mov x3, x30
    0029c744bl runtime.morestack_noctxt.abi0
    0029c748ldp x0, x1, [sp+8]
    0029c74cldp x2, x3, [sp+24]
    0029c750ldp x4, x5, [sp+40]
    0029c754b 0x29c690
    0029c758
    0029c758loc_29c758:
    0029c758ldr x17, [x16]
    0029c75cadd x20, sp, 136
    0029c760subs xzr, x20, x17
    0029c764b.ne 0x29c6b0
    0029c768add x20, sp, 8
    0029c76cstr x20, [x16]
    0029c770b 0x29c6b0
    0029c774udf 0
    0029c778udf 0
    0029c77cudf 0
    0029c690
    0029c780
    0029c780crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).Add: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).Add(int64_t curve, math/big.Int * x1, math/big.Int * y1, math/big.Int * x2, math/big.Int * y2)
    0029c780ldr x16, [x28+16]
    0029c784subs xzr, sp, x16
    0029c788b.ls 0x29c81c
    0029c78cstr x30, [sp-112]!
    0029c790stur x29, [sp-8]
    0029c794sub x29, sp, 8
    0029c798ldr x16, [x28+32]
    0029c79ccbnz x16, 0x29c840
    0029c7a0
    0029c7a0loc_29c7a0:
    0029c7a0str x0, [sp+120]
    0029c7a4str x1, [sp+128]
    0029c7a8str x2, [sp+136]
    0029c7acstr x3, [sp+144]
    0029c7b0str x4, [sp+152]
    0029c7b4str xzr, [sp+64]
    0029c7b8str xzr, [sp+56]
    0029c7bcstr xzr, [sp+72]
    0029c7c0str xzr, [sp+96]
    0029c7c4ldr x2, [sp+128]
    0029c7c8ldr x3, [sp+136]
    0029c7ccldr x4, [sp+144]
    0029c7d0ldr x5, [sp+152]
    0029c7d4ldr x0, [sp+120]
    0029c7d8adrp x1, 0x481000
    0029c7dcadd x1, x1, 1920
    0029c7e0bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).Add
    0029c7e4str x0, [sp+72]
    0029c7e8str x1, [sp+96]
    0029c7ecldr x6, [sp+72]
    0029c7f0str x6, [sp+88]
    0029c7f4ldr x6, [sp+96]
    0029c7f8str x6, [sp+80]
    0029c7fcldr x6, [sp+88]
    0029c800str x6, [sp+64]
    0029c804ldr x1, [sp+80]
    0029c808str x1, [sp+56]
    0029c80cldr x0, [sp+64]
    0029c810ldur x29, [sp-8]
    0029c814ldr x30, [sp], 112
    0029c818ret x30
    0029c81c
    0029c81cloc_29c81c:
    0029c81cstp x0, x1, [sp+8]
    0029c820stp x2, x3, [sp+24]
    0029c824str x4, [sp+40]
    0029c828mov x3, x30
    0029c82cbl runtime.morestack_noctxt.abi0
    0029c830ldp x0, x1, [sp+8]
    0029c834ldp x2, x3, [sp+24]
    0029c838ldr x4, [sp+40]
    0029c83cb 0x29c780
    0029c840
    0029c840loc_29c840:
    0029c840ldr x17, [x16]
    0029c844add x20, sp, 120
    0029c848subs xzr, x20, x17
    0029c84cb.ne 0x29c7a0
    0029c850add x20, sp, 8
    0029c854str x20, [x16]
    0029c858b 0x29c7a0
    0029c85cudf 0
    0029c780
    0029c860
    0029c860crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).IsOnCurve: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).IsOnCurve(int64_t curve, math/big.Int * x, math/big.Int * y)
    0029c860ldr x16, [x28+16]
    0029c864subs xzr, sp, x16
    0029c868b.ls 0x29c8bc
    0029c86cstr x30, [sp-64]!
    0029c870stur x29, [sp-8]
    0029c874sub x29, sp, 8
    0029c878ldr x16, [x28+32]
    0029c87ccbnz x16, 0x29c8d8
    0029c880
    0029c880loc_29c880:
    0029c880str x0, [sp+72]
    0029c884str x1, [sp+80]
    0029c888str x2, [sp+88]
    0029c88cstrb wzr, [sp+54]
    0029c890ldr x2, [sp+80]
    0029c894ldr x3, [sp+88]
    0029c898ldr x0, [sp+72]
    0029c89cadrp x1, 0x481000
    0029c8a0add x1, x1, 1920
    0029c8a4bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).IsOnCurve
    0029c8a8strb w0, [sp+55]
    0029c8acstrb w0, [sp+54]
    0029c8b0ldur x29, [sp-8]
    0029c8b4ldr x30, [sp], 64
    0029c8b8ret x30
    0029c8bc
    0029c8bcloc_29c8bc:
    0029c8bcstp x0, x1, [sp+8]
    0029c8c0str x2, [sp+24]
    0029c8c4mov x3, x30
    0029c8c8bl runtime.morestack_noctxt.abi0
    0029c8ccldp x0, x1, [sp+8]
    0029c8d0ldr x2, [sp+24]
    0029c8d4b 0x29c860
    0029c8d8
    0029c8d8loc_29c8d8:
    0029c8d8ldr x17, [x16]
    0029c8dcadd x20, sp, 72
    0029c8e0subs xzr, x20, x17
    0029c8e4b.ne 0x29c880
    0029c8e8add x20, sp, 8
    0029c8ecstr x20, [x16]
    0029c8f0b 0x29c880
    0029c8f4udf 0
    0029c8f8udf 0
    0029c8fcudf 0
    0029c860
    0029c900
    0029c900crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).Params: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P384Point]).Params(int64_t curve)
    0029c900ldr x16, [x28+16]
    0029c904subs xzr, sp, x16
    0029c908b.ls 0x29c94c
    0029c90cstr x30, [sp-48]!
    0029c910stur x29, [sp-8]
    0029c914sub x29, sp, 8
    0029c918ldr x16, [x28+32]
    0029c91ccbnz x16, 0x29c960
    0029c920
    0029c920loc_29c920:
    0029c920str x0, [sp+56]
    0029c924str xzr, [sp+24]
    0029c928ldr x0, [sp+56]
    0029c92cadrp x1, 0x481000
    0029c930add x1, x1, 1920
    0029c934bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).Params
    0029c938str x0, [sp+32]
    0029c93cstr x0, [sp+24]
    0029c940ldur x29, [sp-8]
    0029c944ldr x30, [sp], 48
    0029c948ret x30
    0029c94c
    0029c94cloc_29c94c:
    0029c94cstr x0, [sp+8]
    0029c950mov x3, x30
    0029c954bl runtime.morestack_noctxt.abi0
    0029c958ldr x0, [sp+8]
    0029c95cb 0x29c900
    0029c960
    0029c960loc_29c960:
    0029c960ldr x17, [x16]
    0029c964add x20, sp, 56
    0029c968subs xzr, x20, x17
    0029c96cb.ne 0x29c920
    0029c970add x20, sp, 8
    0029c974str x20, [x16]
    0029c978b 0x29c920
    0029c97cudf 0
    0029c900
    0029c980
    0029c980crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P256Point]).Unmarshal: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P256Point]).Unmarshal(int64_t curve, struct []uint8 data)
    0029c980ldr x16, [x28+16]
    0029c984subs xzr, sp, x16
    0029c988b.ls 0x29ca14
    0029c98cstr x30, [sp-112]!
    0029c990stur x29, [sp-8]
    0029c994sub x29, sp, 8
    0029c998ldr x16, [x28+32]
    0029c99ccbnz x16, 0x29ca30
    0029c9a0
    0029c9a0loc_29c9a0:
    0029c9a0str x0, [sp+120]
    0029c9a4str x1, [sp+128]
    0029c9a8str x2, [sp+136]
    0029c9acstr x3, [sp+144]
    0029c9b0str xzr, [sp+64]
    0029c9b4str xzr, [sp+56]
    0029c9b8str xzr, [sp+80]
    0029c9bcstr xzr, [sp+72]
    0029c9c0ldr x2, [sp+128]
    0029c9c4ldr x0, [sp+120]
    0029c9c8ldr x3, [sp+136]
    0029c9ccldr x4, [sp+144]
    0029c9d0adrp x1, 0x481000
    0029c9d4add x1, x1, 2208
    0029c9d8bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).Unmarshal
    0029c9dcstr x0, [sp+80]
    0029c9e0str x1, [sp+72]
    0029c9e4ldr x5, [sp+80]
    0029c9e8str x5, [sp+96]
    0029c9ecldr x5, [sp+72]
    0029c9f0str x5, [sp+88]
    0029c9f4ldr x5, [sp+96]
    0029c9f8str x5, [sp+64]
    0029c9fcldr x1, [sp+88]
    0029ca00str x1, [sp+56]
    0029ca04ldr x0, [sp+64]
    0029ca08ldur x29, [sp-8]
    0029ca0cldr x30, [sp], 112
    0029ca10ret x30
    0029ca14
    0029ca14loc_29ca14:
    0029ca14stp x0, x1, [sp+8]
    0029ca18stp x2, x3, [sp+24]
    0029ca1cmov x3, x30
    0029ca20bl runtime.morestack_noctxt.abi0
    0029ca24ldp x0, x1, [sp+8]
    0029ca28ldp x2, x3, [sp+24]
    0029ca2cb 0x29c980
    0029ca30
    0029ca30loc_29ca30:
    0029ca30ldr x17, [x16]
    0029ca34add x20, sp, 120
    0029ca38subs xzr, x20, x17
    0029ca3cb.ne 0x29c9a0
    0029ca40add x20, sp, 8
    0029ca44str x20, [x16]
    0029ca48b 0x29c9a0
    0029ca4cudf 0
    0029c980
    0029ca50
    0029ca50crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P256Point]).ScalarBaseMult: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P256Point]).ScalarBaseMult(int64_t curve, struct []uint8 scalar)
    0029ca50ldr x16, [x28+16]
    0029ca54subs xzr, sp, x16
    0029ca58b.ls 0x29cae4
    0029ca5cstr x30, [sp-112]!
    0029ca60stur x29, [sp-8]
    0029ca64sub x29, sp, 8
    0029ca68ldr x16, [x28+32]
    0029ca6ccbnz x16, 0x29cb00
    0029ca70
    0029ca70loc_29ca70:
    0029ca70str x0, [sp+120]
    0029ca74str x1, [sp+128]
    0029ca78str x2, [sp+136]
    0029ca7cstr x3, [sp+144]
    0029ca80str xzr, [sp+64]
    0029ca84str xzr, [sp+56]
    0029ca88str xzr, [sp+80]
    0029ca8cstr xzr, [sp+72]
    0029ca90ldr x2, [sp+128]
    0029ca94ldr x0, [sp+120]
    0029ca98ldr x3, [sp+136]
    0029ca9cldr x4, [sp+144]
    0029caa0adrp x1, 0x481000
    0029caa4add x1, x1, 2208
    0029caa8bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarBaseMult
    0029caacstr x0, [sp+80]
    0029cab0str x1, [sp+72]
    0029cab4ldr x5, [sp+80]
    0029cab8str x5, [sp+96]
    0029cabcldr x5, [sp+72]
    0029cac0str x5, [sp+88]
    0029cac4ldr x5, [sp+96]
    0029cac8str x5, [sp+64]
    0029caccldr x1, [sp+88]
    0029cad0str x1, [sp+56]
    0029cad4ldr x0, [sp+64]
    0029cad8ldur x29, [sp-8]
    0029cadcldr x30, [sp], 112
    0029cae0ret x30
    0029cae4
    0029cae4loc_29cae4:
    0029cae4stp x0, x1, [sp+8]
    0029cae8stp x2, x3, [sp+24]
    0029caecmov x3, x30
    0029caf0bl runtime.morestack_noctxt.abi0
    0029caf4ldp x0, x1, [sp+8]
    0029caf8ldp x2, x3, [sp+24]
    0029cafcb 0x29ca50
    0029cb00
    0029cb00loc_29cb00:
    0029cb00ldr x17, [x16]
    0029cb04add x20, sp, 120
    0029cb08subs xzr, x20, x17
    0029cb0cb.ne 0x29ca70
    0029cb10add x20, sp, 8
    0029cb14str x20, [x16]
    0029cb18b 0x29ca70
    0029cb1cudf 0
    0029ca50
    0029cb20
    0029cb20crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P256Point]).ScalarMult: ; void crypto/elliptic.(*nistCurve[*crypto/internal/fips140/nistec.P256Point]).ScalarMult(int64_t curve, math/big.Int * Bx, math/big.Int * By, struct []uint8 scalar)
    0029cb20ldr x16, [x28+16]
    0029cb24subs xzr, sp, x16
    0029cb28b.ls 0x29cbc4
    0029cb2cstr x30, [sp-128]!
    0029cb30stur x29, [sp-8]
    0029cb34sub x29, sp, 8
    0029cb38ldr x16, [x28+32]
    0029cb3ccbnz x16, 0x29cbe8
    0029cb40
    0029cb40loc_29cb40:
    0029cb40str x0, [sp+136]
    0029cb44str x1, [sp+144]
    0029cb48str x2, [sp+152]
    0029cb4cstr x3, [sp+160]
    0029cb50str x4, [sp+168]
    0029cb54str x5, [sp+176]
    0029cb58str xzr, [sp+80]
    0029cb5cstr xzr, [sp+72]
    0029cb60str xzr, [sp+96]
    0029cb64str xzr, [sp+88]
    0029cb68ldr x4, [sp+160]
    0029cb6cldr x2, [sp+144]
    0029cb70ldr x3, [sp+152]
    0029cb74ldr x0, [sp+136]
    0029cb78ldr x5, [sp+168]
    0029cb7cldr x6, [sp+176]
    0029cb80adrp x1, 0x481000
    0029cb84add x1, x1, 2208
    0029cb88bl crypto/elliptic.(*nistCurve[go.shape.*uint8]).ScalarMult
    0029cb8cstr x0, [sp+96]
    0029cb90str x1, [sp+88]
    0029cb94ldr x7, [sp+96]
    0029cb98str x7, [sp+112]
    0029cb9cldr x7, [sp+88]
    0029cba0str x7, [sp+104]
    0029cba4ldr x7, [sp+112]
    0029cba8str x7, [sp+80]
    0029cbacldr x1, [sp+104]
    0029cbb0str x1, [sp+72]
    0029cbb4ldr x0, [sp+80]
    0029cbb8ldur x29, [sp-8]
    0029cbbcldr x30, [sp], 128
    0029cbc0ret x30
    0029cbc4
    0029cbc4loc_29cbc4:
    0029cbc4stp x0, x1, [sp+8]
    0029cbc8stp x2, x3, [sp+24]
    0029cbccstp x4, x5, [sp+40]
    0029cbd0mov x3, x30
    0029cbd4bl runtime.morestack_noctxt.abi0
    0029cbd8ldp x0, x1, [sp+8]
    0029cbdcldp x2, x3, [sp+24]
    0029cbe0ldp x4, x5, [sp+40]
    0029cbe4b 0x29cb20
    0029cbe8
    0029cbe8loc_29cbe8:
    0029cbe8ldr x17, [x16]
    0029cbecadd x20, sp, 136
    0029cbf0subs xzr, x20, x17
    0029cbf4b.ne 0x29cb40
    0029cbf8add x20, sp, 8
    0029cbfcstr x20, [x16]
    0029cc00b 0x29cb40
    0029cc04udf 0
    0029cc08udf 0
    0029cc0cudf 0
    0029cb20