File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    002bd350
    002bd350crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P224Point]: ; void crypto/ecdsa.signFIPSDeterministic[go.shape.*crypto/internal/fips140/nistec.P224Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P224Point] * c, crypto.Hash hashFunc, crypto/ecdsa.PrivateKey * priv, struct []uint8 hash)
    002bd350ldr x16, [x28+16]
    002bd354sub x17, sp, 272
    002bd358subs xzr, x17, x16
    002bd35cb.ls 0x2bd684
    002bd360sub x20, sp, 400
    002bd364stp x29, x30, [x20-8]
    002bd368add sp, x20, 0
    002bd36csub x29, sp, 8
    002bd370str x0, [sp+408]
    002bd374str x1, [sp+416]
    002bd378str x2, [sp+424]
    002bd37cstr x3, [sp+432]
    002bd380str x4, [sp+440]
    002bd384str x5, [sp+448]
    002bd388str x6, [sp+456]
    002bd38cstr xzr, [sp+96]
    002bd390stp xzr, xzr, [sp+104]
    002bd394stp xzr, xzr, [sp+80]
    002bd398str xzr, [sp+304]
    002bd39cstp xzr, xzr, [sp+288]
    002bd3a0ldr x3, [sp+408]
    002bd3a4ldrsb x27, [x3]
    002bd3a8ldr x0, [x3]
    002bd3acstr x0, [sp+232]
    002bd3b0ldr x2, [sp+432]
    002bd3b4ldr x1, [sp+416]
    002bd3b8bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002bd3bcstr x0, [sp+304]
    002bd3c0str x1, [sp+288]
    002bd3c4str x2, [sp+296]
    002bd3c8ldr x3, [sp+304]
    002bd3ccstr x3, [sp+160]
    002bd3d0ldr x3, [sp+288]
    002bd3d4ldr x4, [sp+296]
    002bd3d8str x3, [sp+376]
    002bd3dcstr x4, [sp+384]
    002bd3e0ldr x3, [sp+160]
    002bd3e4str x3, [sp+128]
    002bd3e8ldr x3, [sp+384]
    002bd3ecldr x4, [sp+376]
    002bd3f0str x4, [sp+144]
    002bd3f4str x3, [sp+152]
    002bd3f8cbnz x4, 0x2bd400
    002bd3fcb 0x2bd430
    002bd400
    002bd400loc_2bd400:
    002bd400str xzr, [sp+96]
    002bd404stp xzr, xzr, [sp+104]
    002bd408ldr x3, [sp+144]
    002bd40cldr x4, [sp+152]
    002bd410str x3, [sp+80]
    002bd414str x4, [sp+88]
    002bd418ldr x0, [sp+96]
    002bd41cldr x1, [sp+104]
    002bd420ldr x2, [sp+112]
    002bd424ldp x29, x30, [sp-8]
    002bd428add sp, sp, 400
    002bd42cret x30
    002bd430
    002bd430loc_2bd430:
    002bd430adrp x0, 0x377000
    002bd434add x0, x0, 2112
    002bd438bl runtime.newobject
    002bd43cstr x0, [sp+224]
    002bd440adrp x1, 8192
    002bd444add x1, x1, 3360
    002bd448str x1, [x0]
    002bd44cldr x1, [sp+424]
    002bd450ldr x2, [sp+224]
    002bd454ldrsb x27, [x2]
    002bd458str x1, [x2+8]
    002bd45cldr x1, [sp+224]
    002bd460adrp x0, 0x456000
    002bd464add x0, x0, 768
    002bd468bl crypto/internal/fips140hash.UnwrapNew[go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bd46cstr x0, [sp+136]
    002bd470adrp x27, 0x78e000
    002bd474ldrb w1, [x27+1551]
    002bd478strb w1, [sp+79]
    002bd47ctbnz w1, 0, 0x2bd484
    002bd480b 0x2bd4ac
    002bd484
    002bd484loc_2bd484:
    002bd484ldr x26, [sp+136]
    002bd488ldr x0, [x26]
    002bd48cblr x0
    002bd490str x0, [sp+272]
    002bd494str x1, [sp+280]
    002bd498bl crypto/internal/fips140only.ApprovedHash
    002bd49cstrb w0, [sp+78]
    002bd4a0eor x0, x0, 1
    002bd4a4strb w0, [sp+79]
    002bd4a8b 0x2bd4b0
    002bd4ac
    002bd4acloc_2bd4ac:
    002bd4acb 0x2bd4b0
    002bd4b0
    002bd4b0loc_2bd4b0:
    002bd4b0ldrb w7, [sp+79]
    002bd4b4tbnz w7, 0, 0x2bd4bc
    002bd4b8b 0x2bd504
    002bd4bc
    002bd4bcloc_2bd4bc:
    002bd4bcadrp x0, 0x413000
    002bd4c0add x0, x0, 2527
    002bd4c4movz x1, 98
    002bd4c8bl errors.New
    002bd4ccstr x0, [sp+288]
    002bd4d0str x1, [sp+296]
    002bd4d4str xzr, [sp+96]
    002bd4d8stp xzr, xzr, [sp+104]
    002bd4dcldr x3, [sp+288]
    002bd4e0ldr x4, [sp+296]
    002bd4e4str x3, [sp+80]
    002bd4e8str x4, [sp+88]
    002bd4ecldr x0, [sp+96]
    002bd4f0ldr x1, [sp+104]
    002bd4f4ldr x2, [sp+112]
    002bd4f8ldp x29, x30, [sp-8]
    002bd4fcadd sp, sp, 400
    002bd500ret x30
    002bd504
    002bd504loc_2bd504:
    002bd504str xzr, [sp+264]
    002bd508stp xzr, xzr, [sp+288]
    002bd50cldr x7, [sp+408]
    002bd510ldrsb x27, [x7]
    002bd514ldr x0, [x7+8]
    002bd518str x0, [sp+216]
    002bd51cldr x4, [sp+440]
    002bd520ldr x3, [sp+128]
    002bd524ldr x1, [sp+416]
    002bd528ldr x2, [sp+136]
    002bd52cldr x5, [sp+448]
    002bd530ldr x6, [sp+456]
    002bd534bl crypto/internal/fips140/ecdsa.SignDeterministic[go.shape.*crypto/internal/fips140/nistec.P224Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bd538str x0, [sp+264]
    002bd53cstr x1, [sp+288]
    002bd540str x2, [sp+296]
    002bd544ldr x7, [sp+264]
    002bd548str x7, [sp+368]
    002bd54cldr x7, [sp+288]
    002bd550ldr x8, [sp+296]
    002bd554str x7, [sp+352]
    002bd558str x8, [sp+360]
    002bd55cldr x7, [sp+368]
    002bd560str x7, [sp+120]
    002bd564ldr x7, [sp+360]
    002bd568ldr x8, [sp+352]
    002bd56cstr x8, [sp+144]
    002bd570str x7, [sp+152]
    002bd574cbnz x8, 0x2bd57c
    002bd578b 0x2bd5ac
    002bd57c
    002bd57cloc_2bd57c:
    002bd57cstr xzr, [sp+96]
    002bd580stp xzr, xzr, [sp+104]
    002bd584ldr x3, [sp+144]
    002bd588ldr x4, [sp+152]
    002bd58cstr x3, [sp+80]
    002bd590str x4, [sp+88]
    002bd594ldr x0, [sp+96]
    002bd598ldr x1, [sp+104]
    002bd59cldr x2, [sp+112]
    002bd5a0ldp x29, x30, [sp-8]
    002bd5a4add sp, sp, 400
    002bd5a8ret x30
    002bd5ac
    002bd5acloc_2bd5ac:
    002bd5acstr xzr, [sp+240]
    002bd5b0stp xzr, xzr, [sp+248]
    002bd5b4stp xzr, xzr, [sp+288]
    002bd5b8ldr x6, [sp+120]
    002bd5bcldrsb x27, [x6]
    002bd5c0ldr x7, [x6]
    002bd5c4ldr x8, [x6+8]
    002bd5c8ldr x6, [x6+16]
    002bd5ccstr x7, [sp+192]
    002bd5d0str x8, [sp+200]
    002bd5d4str x6, [sp+208]
    002bd5d8ldr x6, [sp+120]
    002bd5dcldrsb x27, [x6]
    002bd5e0ldr x3, [x6+24]
    002bd5e4ldr x4, [x6+32]
    002bd5e8ldr x5, [x6+40]
    002bd5ecstr x3, [sp+168]
    002bd5f0str x4, [sp+176]
    002bd5f4str x5, [sp+184]
    002bd5f8ldr x0, [sp+192]
    002bd5fcldr x1, [sp+200]
    002bd600ldr x2, [sp+208]
    002bd604bl crypto/ecdsa.encodeSignature
    002bd608str x0, [sp+240]
    002bd60cstr x1, [sp+248]
    002bd610str x2, [sp+256]
    002bd614str x3, [sp+288]
    002bd618str x4, [sp+296]
    002bd61cldr x6, [sp+240]
    002bd620ldr x7, [sp+248]
    002bd624ldr x8, [sp+256]
    002bd628str x6, [sp+328]
    002bd62cstr x7, [sp+336]
    002bd630str x8, [sp+344]
    002bd634ldr x6, [sp+288]
    002bd638ldr x7, [sp+296]
    002bd63cstr x6, [sp+312]
    002bd640str x7, [sp+320]
    002bd644ldr x6, [sp+328]
    002bd648ldr x7, [sp+336]
    002bd64cldr x8, [sp+344]
    002bd650str x6, [sp+96]
    002bd654str x7, [sp+104]
    002bd658str x8, [sp+112]
    002bd65cldr x3, [sp+312]
    002bd660ldr x4, [sp+320]
    002bd664str x3, [sp+80]
    002bd668str x4, [sp+88]
    002bd66cldr x0, [sp+96]
    002bd670ldr x1, [sp+104]
    002bd674ldr x2, [sp+112]
    002bd678ldp x29, x30, [sp-8]
    002bd67cadd sp, sp, 400
    002bd680ret x30
    002bd684
    002bd684loc_2bd684:
    002bd684stp x0, x1, [sp+8]
    002bd688stp x2, x3, [sp+24]
    002bd68cstp x4, x5, [sp+40]
    002bd690str x6, [sp+56]
    002bd694mov x3, x30
    002bd698bl runtime.morestack_noctxt.abi0
    002bd69cldp x0, x1, [sp+8]
    002bd6a0ldp x2, x3, [sp+24]
    002bd6a4ldp x4, x5, [sp+40]
    002bd6a8ldr x6, [sp+56]
    002bd6acb 0x2bd350
    002bd350
    002bd6b0
    002bd6b0crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]: ; void crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point](uintptr[2] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P224Point] * c, crypto/ecdsa.PrivateKey * priv)
    002bd6b0ldr x16, [x28+16]
    002bd6b4sub x17, sp, 176
    002bd6b8subs xzr, x17, x16
    002bd6bcb.ls 0x2bd86c
    002bd6c0sub x20, sp, 304
    002bd6c4stp x29, x30, [x20-8]
    002bd6c8add sp, x20, 0
    002bd6ccsub x29, sp, 8
    002bd6d0str x0, [sp+312]
    002bd6d4str x1, [sp+320]
    002bd6d8str x2, [sp+328]
    002bd6dcstr xzr, [sp+88]
    002bd6e0stp xzr, xzr, [sp+72]
    002bd6e4str xzr, [sp+256]
    002bd6e8stp xzr, xzr, [sp+264]
    002bd6ecstp xzr, xzr, [sp+240]
    002bd6f0ldr x4, [sp+328]
    002bd6f4ldrsb x27, [x4]
    002bd6f8ldr x5, [x4]
    002bd6fcldr x4, [x4+8]
    002bd700str x5, [sp+216]
    002bd704str x4, [sp+224]
    002bd708ldr x4, [sp+328]
    002bd70cldrsb x27, [x4]
    002bd710ldr x4, [x4+16]
    002bd714str x4, [sp+208]
    002bd718ldr x4, [sp+328]
    002bd71cldrsb x27, [x4]
    002bd720ldr x3, [x4+24]
    002bd724str x3, [sp+200]
    002bd728ldr x0, [sp+216]
    002bd72cldr x1, [sp+224]
    002bd730ldr x2, [sp+208]
    002bd734bl crypto/ecdsa.pointFromAffine
    002bd738str x0, [sp+256]
    002bd73cstr x1, [sp+264]
    002bd740str x2, [sp+272]
    002bd744str x3, [sp+240]
    002bd748str x4, [sp+248]
    002bd74cldr x4, [sp+256]
    002bd750ldr x5, [sp+264]
    002bd754ldr x6, [sp+272]
    002bd758str x4, [sp+160]
    002bd75cstr x5, [sp+168]
    002bd760str x6, [sp+176]
    002bd764ldr x4, [sp+240]
    002bd768ldr x5, [sp+248]
    002bd76cstr x4, [sp+144]
    002bd770str x5, [sp+152]
    002bd774ldr x4, [sp+160]
    002bd778ldr x5, [sp+168]
    002bd77cldr x6, [sp+176]
    002bd780str x4, [sp+112]
    002bd784str x5, [sp+120]
    002bd788str x6, [sp+128]
    002bd78cldr x4, [sp+152]
    002bd790ldr x5, [sp+144]
    002bd794str x5, [sp+96]
    002bd798str x4, [sp+104]
    002bd79ccbnz x5, 0x2bd7a4
    002bd7a0b 0x2bd7c8
    002bd7a4
    002bd7a4loc_2bd7a4:
    002bd7a4str xzr, [sp+88]
    002bd7a8ldr x1, [sp+96]
    002bd7acldr x2, [sp+104]
    002bd7b0str x1, [sp+72]
    002bd7b4str x2, [sp+80]
    002bd7b8ldr x0, [sp+88]
    002bd7bcldp x29, x30, [sp-8]
    002bd7c0add sp, sp, 304
    002bd7c4ret x30
    002bd7c8
    002bd7c8loc_2bd7c8:
    002bd7c8ldr x1, [sp+328]
    002bd7ccldrsb x27, [x1]
    002bd7d0ldr x0, [x1+32]
    002bd7d4str x0, [sp+192]
    002bd7d8bl math/big.(*Int).Bytes
    002bd7dcstr x0, [sp+256]
    002bd7e0str x1, [sp+264]
    002bd7e4str x2, [sp+272]
    002bd7e8str xzr, [sp+232]
    002bd7ecstp xzr, xzr, [sp+240]
    002bd7f0ldr x1, [sp+312]
    002bd7f4ldrsb x27, [x1]
    002bd7f8ldr x0, [x1]
    002bd7fcstr x0, [sp+184]
    002bd800ldr x5, [sp+112]
    002bd804ldr x1, [sp+320]
    002bd808ldr x6, [sp+120]
    002bd80cldr x7, [sp+128]
    002bd810ldr x2, [sp+256]
    002bd814ldr x3, [sp+264]
    002bd818ldr x4, [sp+272]
    002bd81cbl crypto/internal/fips140/ecdsa.NewPrivateKey[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002bd820str x0, [sp+232]
    002bd824str x1, [sp+240]
    002bd828str x2, [sp+248]
    002bd82cldr x1, [sp+232]
    002bd830str x1, [sp+136]
    002bd834ldr x1, [sp+240]
    002bd838ldr x2, [sp+248]
    002bd83cstr x1, [sp+280]
    002bd840str x2, [sp+288]
    002bd844ldr x1, [sp+136]
    002bd848str x1, [sp+88]
    002bd84cldr x1, [sp+280]
    002bd850ldr x2, [sp+288]
    002bd854str x1, [sp+72]
    002bd858str x2, [sp+80]
    002bd85cldr x0, [sp+88]
    002bd860ldp x29, x30, [sp-8]
    002bd864add sp, sp, 304
    002bd868ret x30
    002bd86c
    002bd86cloc_2bd86c:
    002bd86cstp x0, x1, [sp+8]
    002bd870str x2, [sp+24]
    002bd874mov x3, x30
    002bd878bl runtime.morestack_noctxt.abi0
    002bd87cldp x0, x1, [sp+8]
    002bd880ldr x2, [sp+24]
    002bd884b 0x2bd6b0
    002bd888udf 0
    002bd88cudf 0
    002bd6b0
    002bd890
    002bd890crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point]: ; void crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P521Point] * c, crypto/ecdsa.PrivateKey * priv, io.Reader rand, struct []uint8 hash)
    002bd890ldr x16, [x28+16]
    002bd894sub x17, sp, 256
    002bd898subs xzr, x17, x16
    002bd89cb.ls 0x2bdb88
    002bd8a0sub x20, sp, 384
    002bd8a4stp x29, x30, [x20-8]
    002bd8a8add sp, x20, 0
    002bd8acsub x29, sp, 8
    002bd8b0str x0, [sp+392]
    002bd8b4str x1, [sp+400]
    002bd8b8str x2, [sp+408]
    002bd8bcstr x3, [sp+416]
    002bd8c0str x4, [sp+424]
    002bd8c4str x5, [sp+432]
    002bd8c8str x6, [sp+440]
    002bd8ccstr x7, [sp+448]
    002bd8d0str xzr, [sp+112]
    002bd8d4stp xzr, xzr, [sp+120]
    002bd8d8stp xzr, xzr, [sp+96]
    002bd8dcadrp x27, 0x78e000
    002bd8e0ldrb w3, [x27+1551]
    002bd8e4strb w3, [sp+95]
    002bd8e8tbnz w3, 0, 0x2bd8f0
    002bd8ecb 0x2bd90c
    002bd8f0
    002bd8f0loc_2bd8f0:
    002bd8f0ldr x0, [sp+416]
    002bd8f4ldr x1, [sp+424]
    002bd8f8bl crypto/internal/fips140only.ApprovedRandomReader
    002bd8fcstrb w0, [sp+94]
    002bd900eor x2, x0, 1
    002bd904strb w2, [sp+95]
    002bd908b 0x2bd910
    002bd90c
    002bd90cloc_2bd90c:
    002bd90cb 0x2bd910
    002bd910
    002bd910loc_2bd910:
    002bd910ldrb w3, [sp+95]
    002bd914tbnz w3, 0, 0x2bd91c
    002bd918b 0x2bd964
    002bd91c
    002bd91cloc_2bd91c:
    002bd91cadrp x0, 0x411000
    002bd920add x0, x0, 2093
    002bd924movz x1, 70
    002bd928bl errors.New
    002bd92cstr x0, [sp+280]
    002bd930str x1, [sp+288]
    002bd934str xzr, [sp+112]
    002bd938stp xzr, xzr, [sp+120]
    002bd93cldr x3, [sp+280]
    002bd940ldr x4, [sp+288]
    002bd944str x3, [sp+96]
    002bd948str x4, [sp+104]
    002bd94cldr x0, [sp+112]
    002bd950ldr x1, [sp+120]
    002bd954ldr x2, [sp+128]
    002bd958ldp x29, x30, [sp-8]
    002bd95cadd sp, sp, 384
    002bd960ret x30
    002bd964
    002bd964loc_2bd964:
    002bd964str xzr, [sp+272]
    002bd968stp xzr, xzr, [sp+280]
    002bd96cldr x3, [sp+392]
    002bd970ldrsb x27, [x3]
    002bd974ldr x0, [x3]
    002bd978str x0, [sp+232]
    002bd97cldr x2, [sp+408]
    002bd980ldr x1, [sp+400]
    002bd984bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point]
    002bd988str x0, [sp+272]
    002bd98cstr x1, [sp+280]
    002bd990str x2, [sp+288]
    002bd994ldr x3, [sp+272]
    002bd998str x3, [sp+168]
    002bd99cldr x3, [sp+280]
    002bd9a0ldr x4, [sp+288]
    002bd9a4str x3, [sp+360]
    002bd9a8str x4, [sp+368]
    002bd9acldr x3, [sp+168]
    002bd9b0str x3, [sp+144]
    002bd9b4ldr x3, [sp+368]
    002bd9b8ldr x4, [sp+360]
    002bd9bcstr x4, [sp+152]
    002bd9c0str x3, [sp+160]
    002bd9c4cbnz x4, 0x2bd9cc
    002bd9c8b 0x2bd9fc
    002bd9cc
    002bd9ccloc_2bd9cc:
    002bd9ccstr xzr, [sp+112]
    002bd9d0stp xzr, xzr, [sp+120]
    002bd9d4ldr x3, [sp+152]
    002bd9d8ldr x4, [sp+160]
    002bd9dcstr x3, [sp+96]
    002bd9e0str x4, [sp+104]
    002bd9e4ldr x0, [sp+112]
    002bd9e8ldr x1, [sp+120]
    002bd9ecldr x2, [sp+128]
    002bd9f0ldp x29, x30, [sp-8]
    002bd9f4add sp, sp, 384
    002bd9f8ret x30
    002bd9fc
    002bd9fcloc_2bd9fc:
    002bd9fcstr xzr, [sp+264]
    002bda00stp xzr, xzr, [sp+280]
    002bda04ldr x9, [sp+392]
    002bda08ldrsb x27, [x9]
    002bda0cldr x0, [x9+8]
    002bda10str x0, [sp+224]
    002bda14ldr x4, [sp+416]
    002bda18ldr x6, [sp+432]
    002bda1cldr x3, [sp+144]
    002bda20ldr x1, [sp+400]
    002bda24ldr x7, [sp+440]
    002bda28ldr x5, [sp+424]
    002bda2cldr x8, [sp+448]
    002bda30adrp x2, 0x41c000
    002bda34add x2, x2, 592
    002bda38bl crypto/internal/fips140/ecdsa.Sign[go.shape.*crypto/internal/fips140/nistec.P521Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bda3cstr x0, [sp+264]
    002bda40str x1, [sp+280]
    002bda44str x2, [sp+288]
    002bda48ldr x9, [sp+264]
    002bda4cstr x9, [sp+352]
    002bda50ldr x9, [sp+280]
    002bda54ldr x10, [sp+288]
    002bda58str x9, [sp+336]
    002bda5cstr x10, [sp+344]
    002bda60ldr x9, [sp+352]
    002bda64str x9, [sp+136]
    002bda68ldr x9, [sp+344]
    002bda6cldr x10, [sp+336]
    002bda70str x10, [sp+152]
    002bda74str x9, [sp+160]
    002bda78cbnz x10, 0x2bda80
    002bda7cb 0x2bdab0
    002bda80
    002bda80loc_2bda80:
    002bda80str xzr, [sp+112]
    002bda84stp xzr, xzr, [sp+120]
    002bda88ldr x3, [sp+152]
    002bda8cldr x4, [sp+160]
    002bda90str x3, [sp+96]
    002bda94str x4, [sp+104]
    002bda98ldr x0, [sp+112]
    002bda9cldr x1, [sp+120]
    002bdaa0ldr x2, [sp+128]
    002bdaa4ldp x29, x30, [sp-8]
    002bdaa8add sp, sp, 384
    002bdaacret x30
    002bdab0
    002bdab0loc_2bdab0:
    002bdab0str xzr, [sp+240]
    002bdab4stp xzr, xzr, [sp+248]
    002bdab8stp xzr, xzr, [sp+280]
    002bdabcldr x6, [sp+136]
    002bdac0ldrsb x27, [x6]
    002bdac4ldr x7, [x6]
    002bdac8ldr x8, [x6+8]
    002bdaccldr x6, [x6+16]
    002bdad0str x7, [sp+200]
    002bdad4str x8, [sp+208]
    002bdad8str x6, [sp+216]
    002bdadcldr x6, [sp+136]
    002bdae0ldrsb x27, [x6]
    002bdae4ldr x3, [x6+24]
    002bdae8ldr x4, [x6+32]
    002bdaecldr x5, [x6+40]
    002bdaf0str x3, [sp+176]
    002bdaf4str x4, [sp+184]
    002bdaf8str x5, [sp+192]
    002bdafcldr x0, [sp+200]
    002bdb00ldr x1, [sp+208]
    002bdb04ldr x2, [sp+216]
    002bdb08bl crypto/ecdsa.encodeSignature
    002bdb0cstr x0, [sp+240]
    002bdb10str x1, [sp+248]
    002bdb14str x2, [sp+256]
    002bdb18str x3, [sp+280]
    002bdb1cstr x4, [sp+288]
    002bdb20ldr x6, [sp+240]
    002bdb24ldr x7, [sp+248]
    002bdb28ldr x8, [sp+256]
    002bdb2cstr x6, [sp+312]
    002bdb30str x7, [sp+320]
    002bdb34str x8, [sp+328]
    002bdb38ldr x6, [sp+280]
    002bdb3cldr x7, [sp+288]
    002bdb40str x6, [sp+296]
    002bdb44str x7, [sp+304]
    002bdb48ldr x6, [sp+312]
    002bdb4cldr x7, [sp+320]
    002bdb50ldr x8, [sp+328]
    002bdb54str x6, [sp+112]
    002bdb58str x7, [sp+120]
    002bdb5cstr x8, [sp+128]
    002bdb60ldr x3, [sp+296]
    002bdb64ldr x4, [sp+304]
    002bdb68str x3, [sp+96]
    002bdb6cstr x4, [sp+104]
    002bdb70ldr x0, [sp+112]
    002bdb74ldr x1, [sp+120]
    002bdb78ldr x2, [sp+128]
    002bdb7cldp x29, x30, [sp-8]
    002bdb80add sp, sp, 384
    002bdb84ret x30
    002bdb88
    002bdb88loc_2bdb88:
    002bdb88stp x0, x1, [sp+8]
    002bdb8cstp x2, x3, [sp+24]
    002bdb90stp x4, x5, [sp+40]
    002bdb94stp x6, x7, [sp+56]
    002bdb98mov x3, x30
    002bdb9cbl runtime.morestack_noctxt.abi0
    002bdba0ldp x0, x1, [sp+8]
    002bdba4ldp x2, x3, [sp+24]
    002bdba8ldp x4, x5, [sp+40]
    002bdbacldp x6, x7, [sp+56]
    002bdbb0b 0x2bd890
    002bdbb4udf 0
    002bdbb8udf 0
    002bdbbcudf 0
    002bd890
    002bdbc0
    002bdbc0crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]: ; void crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P384Point] * c, crypto/ecdsa.PrivateKey * priv, io.Reader rand, struct []uint8 hash)
    002bdbc0ldr x16, [x28+16]
    002bdbc4sub x17, sp, 256
    002bdbc8subs xzr, x17, x16
    002bdbccb.ls 0x2bdeb8
    002bdbd0sub x20, sp, 384
    002bdbd4stp x29, x30, [x20-8]
    002bdbd8add sp, x20, 0
    002bdbdcsub x29, sp, 8
    002bdbe0str x0, [sp+392]
    002bdbe4str x1, [sp+400]
    002bdbe8str x2, [sp+408]
    002bdbecstr x3, [sp+416]
    002bdbf0str x4, [sp+424]
    002bdbf4str x5, [sp+432]
    002bdbf8str x6, [sp+440]
    002bdbfcstr x7, [sp+448]
    002bdc00str xzr, [sp+112]
    002bdc04stp xzr, xzr, [sp+120]
    002bdc08stp xzr, xzr, [sp+96]
    002bdc0cadrp x27, 0x78e000
    002bdc10ldrb w3, [x27+1551]
    002bdc14strb w3, [sp+95]
    002bdc18tbnz w3, 0, 0x2bdc20
    002bdc1cb 0x2bdc3c
    002bdc20
    002bdc20loc_2bdc20:
    002bdc20ldr x0, [sp+416]
    002bdc24ldr x1, [sp+424]
    002bdc28bl crypto/internal/fips140only.ApprovedRandomReader
    002bdc2cstrb w0, [sp+94]
    002bdc30eor x2, x0, 1
    002bdc34strb w2, [sp+95]
    002bdc38b 0x2bdc40
    002bdc3c
    002bdc3cloc_2bdc3c:
    002bdc3cb 0x2bdc40
    002bdc40
    002bdc40loc_2bdc40:
    002bdc40ldrb w3, [sp+95]
    002bdc44tbnz w3, 0, 0x2bdc4c
    002bdc48b 0x2bdc94
    002bdc4c
    002bdc4cloc_2bdc4c:
    002bdc4cadrp x0, 0x411000
    002bdc50add x0, x0, 2093
    002bdc54movz x1, 70
    002bdc58bl errors.New
    002bdc5cstr x0, [sp+280]
    002bdc60str x1, [sp+288]
    002bdc64str xzr, [sp+112]
    002bdc68stp xzr, xzr, [sp+120]
    002bdc6cldr x3, [sp+280]
    002bdc70ldr x4, [sp+288]
    002bdc74str x3, [sp+96]
    002bdc78str x4, [sp+104]
    002bdc7cldr x0, [sp+112]
    002bdc80ldr x1, [sp+120]
    002bdc84ldr x2, [sp+128]
    002bdc88ldp x29, x30, [sp-8]
    002bdc8cadd sp, sp, 384
    002bdc90ret x30
    002bdc94
    002bdc94loc_2bdc94:
    002bdc94str xzr, [sp+272]
    002bdc98stp xzr, xzr, [sp+280]
    002bdc9cldr x3, [sp+392]
    002bdca0ldrsb x27, [x3]
    002bdca4ldr x0, [x3]
    002bdca8str x0, [sp+232]
    002bdcacldr x2, [sp+408]
    002bdcb0ldr x1, [sp+400]
    002bdcb4bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002bdcb8str x0, [sp+272]
    002bdcbcstr x1, [sp+280]
    002bdcc0str x2, [sp+288]
    002bdcc4ldr x3, [sp+272]
    002bdcc8str x3, [sp+168]
    002bdcccldr x3, [sp+280]
    002bdcd0ldr x4, [sp+288]
    002bdcd4str x3, [sp+360]
    002bdcd8str x4, [sp+368]
    002bdcdcldr x3, [sp+168]
    002bdce0str x3, [sp+144]
    002bdce4ldr x3, [sp+368]
    002bdce8ldr x4, [sp+360]
    002bdcecstr x4, [sp+152]
    002bdcf0str x3, [sp+160]
    002bdcf4cbnz x4, 0x2bdcfc
    002bdcf8b 0x2bdd2c
    002bdcfc
    002bdcfcloc_2bdcfc:
    002bdcfcstr xzr, [sp+112]
    002bdd00stp xzr, xzr, [sp+120]
    002bdd04ldr x3, [sp+152]
    002bdd08ldr x4, [sp+160]
    002bdd0cstr x3, [sp+96]
    002bdd10str x4, [sp+104]
    002bdd14ldr x0, [sp+112]
    002bdd18ldr x1, [sp+120]
    002bdd1cldr x2, [sp+128]
    002bdd20ldp x29, x30, [sp-8]
    002bdd24add sp, sp, 384
    002bdd28ret x30
    002bdd2c
    002bdd2cloc_2bdd2c:
    002bdd2cstr xzr, [sp+264]
    002bdd30stp xzr, xzr, [sp+280]
    002bdd34ldr x9, [sp+392]
    002bdd38ldrsb x27, [x9]
    002bdd3cldr x0, [x9+8]
    002bdd40str x0, [sp+224]
    002bdd44ldr x4, [sp+416]
    002bdd48ldr x6, [sp+432]
    002bdd4cldr x3, [sp+144]
    002bdd50ldr x1, [sp+400]
    002bdd54ldr x7, [sp+440]
    002bdd58ldr x5, [sp+424]
    002bdd5cldr x8, [sp+448]
    002bdd60adrp x2, 0x41c000
    002bdd64add x2, x2, 592
    002bdd68bl crypto/internal/fips140/ecdsa.Sign[go.shape.*crypto/internal/fips140/nistec.P384Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002bdd6cstr x0, [sp+264]
    002bdd70str x1, [sp+280]
    002bdd74str x2, [sp+288]
    002bdd78ldr x9, [sp+264]
    002bdd7cstr x9, [sp+352]
    002bdd80ldr x9, [sp+280]
    002bdd84ldr x10, [sp+288]
    002bdd88str x9, [sp+336]
    002bdd8cstr x10, [sp+344]
    002bdd90ldr x9, [sp+352]
    002bdd94str x9, [sp+136]
    002bdd98ldr x9, [sp+344]
    002bdd9cldr x10, [sp+336]
    002bdda0str x10, [sp+152]
    002bdda4str x9, [sp+160]
    002bdda8cbnz x10, 0x2bddb0
    002bddacb 0x2bdde0
    002bddb0
    002bddb0loc_2bddb0:
    002bddb0str xzr, [sp+112]
    002bddb4stp xzr, xzr, [sp+120]
    002bddb8ldr x3, [sp+152]
    002bddbcldr x4, [sp+160]
    002bddc0str x3, [sp+96]
    002bddc4str x4, [sp+104]
    002bddc8ldr x0, [sp+112]
    002bddccldr x1, [sp+120]
    002bddd0ldr x2, [sp+128]
    002bddd4ldp x29, x30, [sp-8]
    002bddd8add sp, sp, 384
    002bdddcret x30
    002bdde0
    002bdde0loc_2bdde0:
    002bdde0str xzr, [sp+240]
    002bdde4stp xzr, xzr, [sp+248]
    002bdde8stp xzr, xzr, [sp+280]
    002bddecldr x6, [sp+136]
    002bddf0ldrsb x27, [x6]
    002bddf4ldr x7, [x6]
    002bddf8ldr x8, [x6+8]
    002bddfcldr x6, [x6+16]
    002bde00str x7, [sp+200]
    002bde04str x8, [sp+208]
    002bde08str x6, [sp+216]
    002bde0cldr x6, [sp+136]
    002bde10ldrsb x27, [x6]
    002bde14ldr x3, [x6+24]
    002bde18ldr x4, [x6+32]
    002bde1cldr x5, [x6+40]
    002bde20str x3, [sp+176]
    002bde24str x4, [sp+184]
    002bde28str x5, [sp+192]
    002bde2cldr x0, [sp+200]
    002bde30ldr x1, [sp+208]
    002bde34ldr x2, [sp+216]
    002bde38bl crypto/ecdsa.encodeSignature
    002bde3cstr x0, [sp+240]
    002bde40str x1, [sp+248]
    002bde44str x2, [sp+256]
    002bde48str x3, [sp+280]
    002bde4cstr x4, [sp+288]
    002bde50ldr x6, [sp+240]
    002bde54ldr x7, [sp+248]
    002bde58ldr x8, [sp+256]
    002bde5cstr x6, [sp+312]
    002bde60str x7, [sp+320]
    002bde64str x8, [sp+328]
    002bde68ldr x6, [sp+280]
    002bde6cldr x7, [sp+288]
    002bde70str x6, [sp+296]
    002bde74str x7, [sp+304]
    002bde78ldr x6, [sp+312]
    002bde7cldr x7, [sp+320]
    002bde80ldr x8, [sp+328]
    002bde84str x6, [sp+112]
    002bde88str x7, [sp+120]
    002bde8cstr x8, [sp+128]
    002bde90ldr x3, [sp+296]
    002bde94ldr x4, [sp+304]
    002bde98str x3, [sp+96]
    002bde9cstr x4, [sp+104]
    002bdea0ldr x0, [sp+112]
    002bdea4ldr x1, [sp+120]
    002bdea8ldr x2, [sp+128]
    002bdeacldp x29, x30, [sp-8]
    002bdeb0add sp, sp, 384
    002bdeb4ret x30
    002bdeb8
    002bdeb8loc_2bdeb8:
    002bdeb8stp x0, x1, [sp+8]
    002bdebcstp x2, x3, [sp+24]
    002bdec0stp x4, x5, [sp+40]
    002bdec4stp x6, x7, [sp+56]
    002bdec8mov x3, x30
    002bdeccbl runtime.morestack_noctxt.abi0
    002bded0ldp x0, x1, [sp+8]
    002bded4ldp x2, x3, [sp+24]
    002bded8ldp x4, x5, [sp+40]
    002bdedcldp x6, x7, [sp+56]
    002bdee0b 0x2bdbc0
    002bdee4udf 0
    002bdee8udf 0
    002bdeecudf 0
    002bdbc0
    002bdef0
    002bdef0crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P256Point] * c, crypto/ecdsa.PrivateKey * priv, io.Reader rand, struct []uint8 hash)
    002bdef0ldr x16, [x28+16]
    002bdef4sub x17, sp, 256
    002bdef8subs xzr, x17, x16
    002bdefcb.ls 0x2be1e8
    002bdf00sub x20, sp, 384
    002bdf04stp x29, x30, [x20-8]
    002bdf08add sp, x20, 0
    002bdf0csub x29, sp, 8
    002bdf10str x0, [sp+392]
    002bdf14str x1, [sp+400]
    002bdf18str x2, [sp+408]
    002bdf1cstr x3, [sp+416]
    002bdf20str x4, [sp+424]
    002bdf24str x5, [sp+432]
    002bdf28str x6, [sp+440]
    002bdf2cstr x7, [sp+448]
    002bdf30str xzr, [sp+112]
    002bdf34stp xzr, xzr, [sp+120]
    002bdf38stp xzr, xzr, [sp+96]
    002bdf3cadrp x27, 0x78e000
    002bdf40ldrb w3, [x27+1551]
    002bdf44strb w3, [sp+95]
    002bdf48tbnz w3, 0, 0x2bdf50
    002bdf4cb 0x2bdf6c
    002bdf50
    002bdf50loc_2bdf50:
    002bdf50ldr x0, [sp+416]
    002bdf54ldr x1, [sp+424]
    002bdf58bl crypto/internal/fips140only.ApprovedRandomReader
    002bdf5cstrb w0, [sp+94]
    002bdf60eor x2, x0, 1
    002bdf64strb w2, [sp+95]
    002bdf68b 0x2bdf70
    002bdf6c
    002bdf6cloc_2bdf6c:
    002bdf6cb 0x2bdf70
    002bdf70
    002bdf70loc_2bdf70:
    002bdf70ldrb w3, [sp+95]
    002bdf74tbnz w3, 0, 0x2bdf7c
    002bdf78b 0x2bdfc4
    002bdf7c
    002bdf7cloc_2bdf7c:
    002bdf7cadrp x0, 0x411000
    002bdf80add x0, x0, 2093
    002bdf84movz x1, 70
    002bdf88bl errors.New
    002bdf8cstr x0, [sp+280]
    002bdf90str x1, [sp+288]
    002bdf94str xzr, [sp+112]
    002bdf98stp xzr, xzr, [sp+120]
    002bdf9cldr x3, [sp+280]
    002bdfa0ldr x4, [sp+288]
    002bdfa4str x3, [sp+96]
    002bdfa8str x4, [sp+104]
    002bdfacldr x0, [sp+112]
    002bdfb0ldr x1, [sp+120]
    002bdfb4ldr x2, [sp+128]
    002bdfb8ldp x29, x30, [sp-8]
    002bdfbcadd sp, sp, 384
    002bdfc0ret x30
    002bdfc4
    002bdfc4loc_2bdfc4:
    002bdfc4str xzr, [sp+272]
    002bdfc8stp xzr, xzr, [sp+280]
    002bdfccldr x3, [sp+392]
    002bdfd0ldrsb x27, [x3]
    002bdfd4ldr x0, [x3]
    002bdfd8str x0, [sp+232]
    002bdfdcldr x2, [sp+408]
    002bdfe0ldr x1, [sp+400]
    002bdfe4bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002bdfe8str x0, [sp+272]
    002bdfecstr x1, [sp+280]
    002bdff0str x2, [sp+288]
    002bdff4ldr x3, [sp+272]
    002bdff8str x3, [sp+168]
    002bdffcldr x3, [sp+280]
    002be000ldr x4, [sp+288]
    002be004str x3, [sp+360]
    002be008str x4, [sp+368]
    002be00cldr x3, [sp+168]
    002be010str x3, [sp+144]
    002be014ldr x3, [sp+368]
    002be018ldr x4, [sp+360]
    002be01cstr x4, [sp+152]
    002be020str x3, [sp+160]
    002be024cbnz x4, 0x2be02c
    002be028b 0x2be05c
    002be02c
    002be02cloc_2be02c:
    002be02cstr xzr, [sp+112]
    002be030stp xzr, xzr, [sp+120]
    002be034ldr x3, [sp+152]
    002be038ldr x4, [sp+160]
    002be03cstr x3, [sp+96]
    002be040str x4, [sp+104]
    002be044ldr x0, [sp+112]
    002be048ldr x1, [sp+120]
    002be04cldr x2, [sp+128]
    002be050ldp x29, x30, [sp-8]
    002be054add sp, sp, 384
    002be058ret x30
    002be05c
    002be05cloc_2be05c:
    002be05cstr xzr, [sp+264]
    002be060stp xzr, xzr, [sp+280]
    002be064ldr x9, [sp+392]
    002be068ldrsb x27, [x9]
    002be06cldr x0, [x9+8]
    002be070str x0, [sp+224]
    002be074ldr x4, [sp+416]
    002be078ldr x6, [sp+432]
    002be07cldr x3, [sp+144]
    002be080ldr x1, [sp+400]
    002be084ldr x7, [sp+440]
    002be088ldr x5, [sp+424]
    002be08cldr x8, [sp+448]
    002be090adrp x2, 0x41b000
    002be094add x2, x2, 592
    002be098bl crypto/internal/fips140/ecdsa.Sign[go.shape.*crypto/internal/fips140/nistec.P256Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002be09cstr x0, [sp+264]
    002be0a0str x1, [sp+280]
    002be0a4str x2, [sp+288]
    002be0a8ldr x9, [sp+264]
    002be0acstr x9, [sp+352]
    002be0b0ldr x9, [sp+280]
    002be0b4ldr x10, [sp+288]
    002be0b8str x9, [sp+336]
    002be0bcstr x10, [sp+344]
    002be0c0ldr x9, [sp+352]
    002be0c4str x9, [sp+136]
    002be0c8ldr x9, [sp+344]
    002be0ccldr x10, [sp+336]
    002be0d0str x10, [sp+152]
    002be0d4str x9, [sp+160]
    002be0d8cbnz x10, 0x2be0e0
    002be0dcb 0x2be110
    002be0e0
    002be0e0loc_2be0e0:
    002be0e0str xzr, [sp+112]
    002be0e4stp xzr, xzr, [sp+120]
    002be0e8ldr x3, [sp+152]
    002be0ecldr x4, [sp+160]
    002be0f0str x3, [sp+96]
    002be0f4str x4, [sp+104]
    002be0f8ldr x0, [sp+112]
    002be0fcldr x1, [sp+120]
    002be100ldr x2, [sp+128]
    002be104ldp x29, x30, [sp-8]
    002be108add sp, sp, 384
    002be10cret x30
    002be110
    002be110loc_2be110:
    002be110str xzr, [sp+240]
    002be114stp xzr, xzr, [sp+248]
    002be118stp xzr, xzr, [sp+280]
    002be11cldr x6, [sp+136]
    002be120ldrsb x27, [x6]
    002be124ldr x7, [x6]
    002be128ldr x8, [x6+8]
    002be12cldr x6, [x6+16]
    002be130str x7, [sp+200]
    002be134str x8, [sp+208]
    002be138str x6, [sp+216]
    002be13cldr x6, [sp+136]
    002be140ldrsb x27, [x6]
    002be144ldr x3, [x6+24]
    002be148ldr x4, [x6+32]
    002be14cldr x5, [x6+40]
    002be150str x3, [sp+176]
    002be154str x4, [sp+184]
    002be158str x5, [sp+192]
    002be15cldr x0, [sp+200]
    002be160ldr x1, [sp+208]
    002be164ldr x2, [sp+216]
    002be168bl crypto/ecdsa.encodeSignature
    002be16cstr x0, [sp+240]
    002be170str x1, [sp+248]
    002be174str x2, [sp+256]
    002be178str x3, [sp+280]
    002be17cstr x4, [sp+288]
    002be180ldr x6, [sp+240]
    002be184ldr x7, [sp+248]
    002be188ldr x8, [sp+256]
    002be18cstr x6, [sp+312]
    002be190str x7, [sp+320]
    002be194str x8, [sp+328]
    002be198ldr x6, [sp+280]
    002be19cldr x7, [sp+288]
    002be1a0str x6, [sp+296]
    002be1a4str x7, [sp+304]
    002be1a8ldr x6, [sp+312]
    002be1acldr x7, [sp+320]
    002be1b0ldr x8, [sp+328]
    002be1b4str x6, [sp+112]
    002be1b8str x7, [sp+120]
    002be1bcstr x8, [sp+128]
    002be1c0ldr x3, [sp+296]
    002be1c4ldr x4, [sp+304]
    002be1c8str x3, [sp+96]
    002be1ccstr x4, [sp+104]
    002be1d0ldr x0, [sp+112]
    002be1d4ldr x1, [sp+120]
    002be1d8ldr x2, [sp+128]
    002be1dcldp x29, x30, [sp-8]
    002be1e0add sp, sp, 384
    002be1e4ret x30
    002be1e8
    002be1e8loc_2be1e8:
    002be1e8stp x0, x1, [sp+8]
    002be1ecstp x2, x3, [sp+24]
    002be1f0stp x4, x5, [sp+40]
    002be1f4stp x6, x7, [sp+56]
    002be1f8mov x3, x30
    002be1fcbl runtime.morestack_noctxt.abi0
    002be200ldp x0, x1, [sp+8]
    002be204ldp x2, x3, [sp+24]
    002be208ldp x4, x5, [sp+40]
    002be20cldp x6, x7, [sp+56]
    002be210b 0x2bdef0
    002be214udf 0
    002be218udf 0
    002be21cudf 0
    002bdef0
    002be220
    002be220crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]: ; void crypto/ecdsa.signFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point](uintptr[3] * dict, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P224Point] * c, crypto/ecdsa.PrivateKey * priv, io.Reader rand, struct []uint8 hash)
    002be220ldr x16, [x28+16]
    002be224sub x17, sp, 256
    002be228subs xzr, x17, x16
    002be22cb.ls 0x2be518
    002be230sub x20, sp, 384
    002be234stp x29, x30, [x20-8]
    002be238add sp, x20, 0
    002be23csub x29, sp, 8
    002be240str x0, [sp+392]
    002be244str x1, [sp+400]
    002be248str x2, [sp+408]
    002be24cstr x3, [sp+416]
    002be250str x4, [sp+424]
    002be254str x5, [sp+432]
    002be258str x6, [sp+440]
    002be25cstr x7, [sp+448]
    002be260str xzr, [sp+112]
    002be264stp xzr, xzr, [sp+120]
    002be268stp xzr, xzr, [sp+96]
    002be26cadrp x27, 0x78d000
    002be270ldrb w3, [x27+1551]
    002be274strb w3, [sp+95]
    002be278tbnz w3, 0, 0x2be280
    002be27cb 0x2be29c
    002be280
    002be280loc_2be280:
    002be280ldr x0, [sp+416]
    002be284ldr x1, [sp+424]
    002be288bl crypto/internal/fips140only.ApprovedRandomReader
    002be28cstrb w0, [sp+94]
    002be290eor x2, x0, 1
    002be294strb w2, [sp+95]
    002be298b 0x2be2a0
    002be29c
    002be29cloc_2be29c:
    002be29cb 0x2be2a0
    002be2a0
    002be2a0loc_2be2a0:
    002be2a0ldrb w3, [sp+95]
    002be2a4tbnz w3, 0, 0x2be2ac
    002be2a8b 0x2be2f4
    002be2ac
    002be2acloc_2be2ac:
    002be2acadrp x0, 0x410000
    002be2b0add x0, x0, 2093
    002be2b4movz x1, 70
    002be2b8bl errors.New
    002be2bcstr x0, [sp+280]
    002be2c0str x1, [sp+288]
    002be2c4str xzr, [sp+112]
    002be2c8stp xzr, xzr, [sp+120]
    002be2ccldr x3, [sp+280]
    002be2d0ldr x4, [sp+288]
    002be2d4str x3, [sp+96]
    002be2d8str x4, [sp+104]
    002be2dcldr x0, [sp+112]
    002be2e0ldr x1, [sp+120]
    002be2e4ldr x2, [sp+128]
    002be2e8ldp x29, x30, [sp-8]
    002be2ecadd sp, sp, 384
    002be2f0ret x30
    002be2f4
    002be2f4loc_2be2f4:
    002be2f4str xzr, [sp+272]
    002be2f8stp xzr, xzr, [sp+280]
    002be2fcldr x3, [sp+392]
    002be300ldrsb x27, [x3]
    002be304ldr x0, [x3]
    002be308str x0, [sp+232]
    002be30cldr x2, [sp+408]
    002be310ldr x1, [sp+400]
    002be314bl crypto/ecdsa.privateKeyToFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002be318str x0, [sp+272]
    002be31cstr x1, [sp+280]
    002be320str x2, [sp+288]
    002be324ldr x3, [sp+272]
    002be328str x3, [sp+168]
    002be32cldr x3, [sp+280]
    002be330ldr x4, [sp+288]
    002be334str x3, [sp+360]
    002be338str x4, [sp+368]
    002be33cldr x3, [sp+168]
    002be340str x3, [sp+144]
    002be344ldr x3, [sp+368]
    002be348ldr x4, [sp+360]
    002be34cstr x4, [sp+152]
    002be350str x3, [sp+160]
    002be354cbnz x4, 0x2be35c
    002be358b 0x2be38c
    002be35c
    002be35cloc_2be35c:
    002be35cstr xzr, [sp+112]
    002be360stp xzr, xzr, [sp+120]
    002be364ldr x3, [sp+152]
    002be368ldr x4, [sp+160]
    002be36cstr x3, [sp+96]
    002be370str x4, [sp+104]
    002be374ldr x0, [sp+112]
    002be378ldr x1, [sp+120]
    002be37cldr x2, [sp+128]
    002be380ldp x29, x30, [sp-8]
    002be384add sp, sp, 384
    002be388ret x30
    002be38c
    002be38cloc_2be38c:
    002be38cstr xzr, [sp+264]
    002be390stp xzr, xzr, [sp+280]
    002be394ldr x9, [sp+392]
    002be398ldrsb x27, [x9]
    002be39cldr x0, [x9+8]
    002be3a0str x0, [sp+224]
    002be3a4ldr x4, [sp+416]
    002be3a8ldr x6, [sp+432]
    002be3acldr x3, [sp+144]
    002be3b0ldr x1, [sp+400]
    002be3b4ldr x7, [sp+440]
    002be3b8ldr x5, [sp+424]
    002be3bcldr x8, [sp+448]
    002be3c0adrp x2, 0x41b000
    002be3c4add x2, x2, 592
    002be3c8bl crypto/internal/fips140/ecdsa.Sign[go.shape.*crypto/internal/fips140/nistec.P224Point,go.shape.interface { BlockSize() int; Reset(); Size() int; Sum([]uint8) []uint8; Write([]uint8) (int, error) }]
    002be3ccstr x0, [sp+264]
    002be3d0str x1, [sp+280]
    002be3d4str x2, [sp+288]
    002be3d8ldr x9, [sp+264]
    002be3dcstr x9, [sp+352]
    002be3e0ldr x9, [sp+280]
    002be3e4ldr x10, [sp+288]
    002be3e8str x9, [sp+336]
    002be3ecstr x10, [sp+344]
    002be3f0ldr x9, [sp+352]
    002be3f4str x9, [sp+136]
    002be3f8ldr x9, [sp+344]
    002be3fcldr x10, [sp+336]
    002be400str x10, [sp+152]
    002be404str x9, [sp+160]
    002be408cbnz x10, 0x2be410
    002be40cb 0x2be440
    002be410
    002be410loc_2be410:
    002be410str xzr, [sp+112]
    002be414stp xzr, xzr, [sp+120]
    002be418ldr x3, [sp+152]
    002be41cldr x4, [sp+160]
    002be420str x3, [sp+96]
    002be424str x4, [sp+104]
    002be428ldr x0, [sp+112]
    002be42cldr x1, [sp+120]
    002be430ldr x2, [sp+128]
    002be434ldp x29, x30, [sp-8]
    002be438add sp, sp, 384
    002be43cret x30
    002be440
    002be440loc_2be440:
    002be440str xzr, [sp+240]
    002be444stp xzr, xzr, [sp+248]
    002be448stp xzr, xzr, [sp+280]
    002be44cldr x6, [sp+136]
    002be450ldrsb x27, [x6]
    002be454ldr x7, [x6]
    002be458ldr x8, [x6+8]
    002be45cldr x6, [x6+16]
    002be460str x7, [sp+200]
    002be464str x8, [sp+208]
    002be468str x6, [sp+216]
    002be46cldr x6, [sp+136]
    002be470ldrsb x27, [x6]
    002be474ldr x3, [x6+24]
    002be478ldr x4, [x6+32]
    002be47cldr x5, [x6+40]
    002be480str x3, [sp+176]
    002be484str x4, [sp+184]
    002be488str x5, [sp+192]
    002be48cldr x0, [sp+200]
    002be490ldr x1, [sp+208]
    002be494ldr x2, [sp+216]
    002be498bl crypto/ecdsa.encodeSignature
    002be49cstr x0, [sp+240]
    002be4a0str x1, [sp+248]
    002be4a4str x2, [sp+256]
    002be4a8str x3, [sp+280]
    002be4acstr x4, [sp+288]
    002be4b0ldr x6, [sp+240]
    002be4b4ldr x7, [sp+248]
    002be4b8ldr x8, [sp+256]
    002be4bcstr x6, [sp+312]
    002be4c0str x7, [sp+320]
    002be4c4str x8, [sp+328]
    002be4c8ldr x6, [sp+280]
    002be4ccldr x7, [sp+288]
    002be4d0str x6, [sp+296]
    002be4d4str x7, [sp+304]
    002be4d8ldr x6, [sp+312]
    002be4dcldr x7, [sp+320]
    002be4e0ldr x8, [sp+328]
    002be4e4str x6, [sp+112]
    002be4e8str x7, [sp+120]
    002be4ecstr x8, [sp+128]
    002be4f0ldr x3, [sp+296]
    002be4f4ldr x4, [sp+304]
    002be4f8str x3, [sp+96]
    002be4fcstr x4, [sp+104]
    002be500ldr x0, [sp+112]
    002be504ldr x1, [sp+120]
    002be508ldr x2, [sp+128]
    002be50cldp x29, x30, [sp-8]
    002be510add sp, sp, 384
    002be514ret x30
    002be518
    002be518loc_2be518:
    002be518stp x0, x1, [sp+8]
    002be51cstp x2, x3, [sp+24]
    002be520stp x4, x5, [sp+40]
    002be524stp x6, x7, [sp+56]
    002be528mov x3, x30
    002be52cbl runtime.morestack_noctxt.abi0
    002be530ldp x0, x1, [sp+8]
    002be534ldp x2, x3, [sp+24]
    002be538ldp x4, x5, [sp+40]
    002be53cldp x6, x7, [sp+56]
    002be540b 0x2be220
    002be544udf 0
    002be548udf 0
    002be54cudf 0
    002be220
    002be550
    002be550crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point]: ; void crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P521Point](uintptr[2] * dict, crypto/elliptic.Curve curve, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P521Point] * c, io.Reader rand)
    002be550ldr x16, [x28+16]
    002be554sub x17, sp, 64
    002be558subs xzr, x17, x16
    002be55cb.ls 0x2be6fc
    002be560str x30, [sp-192]!
    002be564stur x29, [sp-8]
    002be568sub x29, sp, 8
    002be56cstr x0, [sp+200]
    002be570str x1, [sp+208]
    002be574str x2, [sp+216]
    002be578str x3, [sp+224]
    002be57cstr x4, [sp+232]
    002be580str x5, [sp+240]
    002be584str xzr, [sp+64]
    002be588stp xzr, xzr, [sp+48]
    002be58cadrp x27, 0x78d000
    002be590ldrb w4, [x27+1551]
    002be594strb w4, [sp+47]
    002be598tbnz w4, 0, 0x2be5a0
    002be59cb 0x2be5bc
    002be5a0
    002be5a0loc_2be5a0:
    002be5a0ldr x0, [sp+232]
    002be5a4ldr x1, [sp+240]
    002be5a8bl crypto/internal/fips140only.ApprovedRandomReader
    002be5acstrb w0, [sp+46]
    002be5b0eor x2, x0, 1
    002be5b4strb w2, [sp+47]
    002be5b8b 0x2be5c0
    002be5bc
    002be5bcloc_2be5bc:
    002be5bcb 0x2be5c0
    002be5c0
    002be5c0loc_2be5c0:
    002be5c0ldrb w4, [sp+47]
    002be5c4tbnz w4, 0, 0x2be5cc
    002be5c8b 0x2be608
    002be5cc
    002be5ccloc_2be5cc:
    002be5ccadrp x0, 0x410000
    002be5d0add x0, x0, 2093
    002be5d4movz x1, 70
    002be5d8bl errors.New
    002be5dcstr x0, [sp+144]
    002be5e0str x1, [sp+152]
    002be5e4str xzr, [sp+64]
    002be5e8ldr x1, [sp+144]
    002be5ecldr x2, [sp+152]
    002be5f0str x1, [sp+48]
    002be5f4str x2, [sp+56]
    002be5f8ldr x0, [sp+64]
    002be5fcldur x29, [sp-8]
    002be600ldr x30, [sp], 192
    002be604ret x30
    002be608
    002be608loc_2be608:
    002be608str xzr, [sp+136]
    002be60cstp xzr, xzr, [sp+144]
    002be610ldr x4, [sp+200]
    002be614ldrsb x27, [x4]
    002be618ldr x0, [x4]
    002be61cstr x0, [sp+120]
    002be620ldr x2, [sp+232]
    002be624ldr x1, [sp+224]
    002be628ldr x3, [sp+240]
    002be62cbl crypto/internal/fips140/ecdsa.GenerateKey[go.shape.*crypto/internal/fips140/nistec.P521Point]
    002be630str x0, [sp+136]
    002be634str x1, [sp+144]
    002be638str x2, [sp+152]
    002be63cldr x4, [sp+136]
    002be640str x4, [sp+112]
    002be644ldr x4, [sp+144]
    002be648ldr x5, [sp+152]
    002be64cstr x4, [sp+96]
    002be650str x5, [sp+104]
    002be654ldr x4, [sp+112]
    002be658str x4, [sp+72]
    002be65cldr x4, [sp+104]
    002be660ldr x5, [sp+96]
    002be664str x5, [sp+80]
    002be668str x4, [sp+88]
    002be66ccbnz x5, 0x2be674
    002be670b 0x2be698
    002be674
    002be674loc_2be674:
    002be674str xzr, [sp+64]
    002be678ldr x1, [sp+80]
    002be67cldr x2, [sp+88]
    002be680str x1, [sp+48]
    002be684str x2, [sp+56]
    002be688ldr x0, [sp+64]
    002be68cldur x29, [sp-8]
    002be690ldr x30, [sp], 192
    002be694ret x30
    002be698
    002be698loc_2be698:
    002be698str xzr, [sp+128]
    002be69cstp xzr, xzr, [sp+144]
    002be6a0ldr x0, [sp+208]
    002be6a4ldr x2, [sp+72]
    002be6a8ldr x1, [sp+216]
    002be6acbl crypto/ecdsa.privateKeyFromFIPS
    002be6b0str x0, [sp+128]
    002be6b4str x1, [sp+144]
    002be6b8str x2, [sp+152]
    002be6bcldr x3, [sp+128]
    002be6c0str x3, [sp+176]
    002be6c4ldr x3, [sp+152]
    002be6c8ldr x4, [sp+144]
    002be6ccstr x4, [sp+160]
    002be6d0str x3, [sp+168]
    002be6d4ldr x3, [sp+176]
    002be6d8str x3, [sp+64]
    002be6dcldr x1, [sp+160]
    002be6e0ldr x2, [sp+168]
    002be6e4str x1, [sp+48]
    002be6e8str x2, [sp+56]
    002be6ecldr x0, [sp+64]
    002be6f0ldur x29, [sp-8]
    002be6f4ldr x30, [sp], 192
    002be6f8ret x30
    002be6fc
    002be6fcloc_2be6fc:
    002be6fcstp x0, x1, [sp+8]
    002be700stp x2, x3, [sp+24]
    002be704stp x4, x5, [sp+40]
    002be708mov x3, x30
    002be70cbl runtime.morestack_noctxt.abi0
    002be710ldp x0, x1, [sp+8]
    002be714ldp x2, x3, [sp+24]
    002be718ldp x4, x5, [sp+40]
    002be71cb 0x2be550
    002be550
    002be720
    002be720crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point]: ; void crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P384Point](uintptr[2] * dict, crypto/elliptic.Curve curve, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P384Point] * c, io.Reader rand)
    002be720ldr x16, [x28+16]
    002be724sub x17, sp, 64
    002be728subs xzr, x17, x16
    002be72cb.ls 0x2be8cc
    002be730str x30, [sp-192]!
    002be734stur x29, [sp-8]
    002be738sub x29, sp, 8
    002be73cstr x0, [sp+200]
    002be740str x1, [sp+208]
    002be744str x2, [sp+216]
    002be748str x3, [sp+224]
    002be74cstr x4, [sp+232]
    002be750str x5, [sp+240]
    002be754str xzr, [sp+64]
    002be758stp xzr, xzr, [sp+48]
    002be75cadrp x27, 0x78d000
    002be760ldrb w4, [x27+1551]
    002be764strb w4, [sp+47]
    002be768tbnz w4, 0, 0x2be770
    002be76cb 0x2be78c
    002be770
    002be770loc_2be770:
    002be770ldr x0, [sp+232]
    002be774ldr x1, [sp+240]
    002be778bl crypto/internal/fips140only.ApprovedRandomReader
    002be77cstrb w0, [sp+46]
    002be780eor x2, x0, 1
    002be784strb w2, [sp+47]
    002be788b 0x2be790
    002be78c
    002be78cloc_2be78c:
    002be78cb 0x2be790
    002be790
    002be790loc_2be790:
    002be790ldrb w4, [sp+47]
    002be794tbnz w4, 0, 0x2be79c
    002be798b 0x2be7d8
    002be79c
    002be79cloc_2be79c:
    002be79cadrp x0, 0x410000
    002be7a0add x0, x0, 2093
    002be7a4movz x1, 70
    002be7a8bl errors.New
    002be7acstr x0, [sp+144]
    002be7b0str x1, [sp+152]
    002be7b4str xzr, [sp+64]
    002be7b8ldr x1, [sp+144]
    002be7bcldr x2, [sp+152]
    002be7c0str x1, [sp+48]
    002be7c4str x2, [sp+56]
    002be7c8ldr x0, [sp+64]
    002be7ccldur x29, [sp-8]
    002be7d0ldr x30, [sp], 192
    002be7d4ret x30
    002be7d8
    002be7d8loc_2be7d8:
    002be7d8str xzr, [sp+136]
    002be7dcstp xzr, xzr, [sp+144]
    002be7e0ldr x4, [sp+200]
    002be7e4ldrsb x27, [x4]
    002be7e8ldr x0, [x4]
    002be7ecstr x0, [sp+120]
    002be7f0ldr x2, [sp+232]
    002be7f4ldr x1, [sp+224]
    002be7f8ldr x3, [sp+240]
    002be7fcbl crypto/internal/fips140/ecdsa.GenerateKey[go.shape.*crypto/internal/fips140/nistec.P384Point]
    002be800str x0, [sp+136]
    002be804str x1, [sp+144]
    002be808str x2, [sp+152]
    002be80cldr x4, [sp+136]
    002be810str x4, [sp+112]
    002be814ldr x4, [sp+144]
    002be818ldr x5, [sp+152]
    002be81cstr x4, [sp+96]
    002be820str x5, [sp+104]
    002be824ldr x4, [sp+112]
    002be828str x4, [sp+72]
    002be82cldr x4, [sp+104]
    002be830ldr x5, [sp+96]
    002be834str x5, [sp+80]
    002be838str x4, [sp+88]
    002be83ccbnz x5, 0x2be844
    002be840b 0x2be868
    002be844
    002be844loc_2be844:
    002be844str xzr, [sp+64]
    002be848ldr x1, [sp+80]
    002be84cldr x2, [sp+88]
    002be850str x1, [sp+48]
    002be854str x2, [sp+56]
    002be858ldr x0, [sp+64]
    002be85cldur x29, [sp-8]
    002be860ldr x30, [sp], 192
    002be864ret x30
    002be868
    002be868loc_2be868:
    002be868str xzr, [sp+128]
    002be86cstp xzr, xzr, [sp+144]
    002be870ldr x0, [sp+208]
    002be874ldr x2, [sp+72]
    002be878ldr x1, [sp+216]
    002be87cbl crypto/ecdsa.privateKeyFromFIPS
    002be880str x0, [sp+128]
    002be884str x1, [sp+144]
    002be888str x2, [sp+152]
    002be88cldr x3, [sp+128]
    002be890str x3, [sp+176]
    002be894ldr x3, [sp+152]
    002be898ldr x4, [sp+144]
    002be89cstr x4, [sp+160]
    002be8a0str x3, [sp+168]
    002be8a4ldr x3, [sp+176]
    002be8a8str x3, [sp+64]
    002be8acldr x1, [sp+160]
    002be8b0ldr x2, [sp+168]
    002be8b4str x1, [sp+48]
    002be8b8str x2, [sp+56]
    002be8bcldr x0, [sp+64]
    002be8c0ldur x29, [sp-8]
    002be8c4ldr x30, [sp], 192
    002be8c8ret x30
    002be8cc
    002be8ccloc_2be8cc:
    002be8ccstp x0, x1, [sp+8]
    002be8d0stp x2, x3, [sp+24]
    002be8d4stp x4, x5, [sp+40]
    002be8d8mov x3, x30
    002be8dcbl runtime.morestack_noctxt.abi0
    002be8e0ldp x0, x1, [sp+8]
    002be8e4ldp x2, x3, [sp+24]
    002be8e8ldp x4, x5, [sp+40]
    002be8ecb 0x2be720
    002be720
    002be8f0
    002be8f0crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P256Point](uintptr[2] * dict, crypto/elliptic.Curve curve, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P256Point] * c, io.Reader rand)
    002be8f0ldr x16, [x28+16]
    002be8f4sub x17, sp, 64
    002be8f8subs xzr, x17, x16
    002be8fcb.ls 0x2bea9c
    002be900str x30, [sp-192]!
    002be904stur x29, [sp-8]
    002be908sub x29, sp, 8
    002be90cstr x0, [sp+200]
    002be910str x1, [sp+208]
    002be914str x2, [sp+216]
    002be918str x3, [sp+224]
    002be91cstr x4, [sp+232]
    002be920str x5, [sp+240]
    002be924str xzr, [sp+64]
    002be928stp xzr, xzr, [sp+48]
    002be92cadrp x27, 0x78d000
    002be930ldrb w4, [x27+1551]
    002be934strb w4, [sp+47]
    002be938tbnz w4, 0, 0x2be940
    002be93cb 0x2be95c
    002be940
    002be940loc_2be940:
    002be940ldr x0, [sp+232]
    002be944ldr x1, [sp+240]
    002be948bl crypto/internal/fips140only.ApprovedRandomReader
    002be94cstrb w0, [sp+46]
    002be950eor x2, x0, 1
    002be954strb w2, [sp+47]
    002be958b 0x2be960
    002be95c
    002be95cloc_2be95c:
    002be95cb 0x2be960
    002be960
    002be960loc_2be960:
    002be960ldrb w4, [sp+47]
    002be964tbnz w4, 0, 0x2be96c
    002be968b 0x2be9a8
    002be96c
    002be96cloc_2be96c:
    002be96cadrp x0, 0x410000
    002be970add x0, x0, 2093
    002be974movz x1, 70
    002be978bl errors.New
    002be97cstr x0, [sp+144]
    002be980str x1, [sp+152]
    002be984str xzr, [sp+64]
    002be988ldr x1, [sp+144]
    002be98cldr x2, [sp+152]
    002be990str x1, [sp+48]
    002be994str x2, [sp+56]
    002be998ldr x0, [sp+64]
    002be99cldur x29, [sp-8]
    002be9a0ldr x30, [sp], 192
    002be9a4ret x30
    002be9a8
    002be9a8loc_2be9a8:
    002be9a8str xzr, [sp+136]
    002be9acstp xzr, xzr, [sp+144]
    002be9b0ldr x4, [sp+200]
    002be9b4ldrsb x27, [x4]
    002be9b8ldr x0, [x4]
    002be9bcstr x0, [sp+120]
    002be9c0ldr x2, [sp+232]
    002be9c4ldr x1, [sp+224]
    002be9c8ldr x3, [sp+240]
    002be9ccbl crypto/internal/fips140/ecdsa.GenerateKey[go.shape.*crypto/internal/fips140/nistec.P256Point]
    002be9d0str x0, [sp+136]
    002be9d4str x1, [sp+144]
    002be9d8str x2, [sp+152]
    002be9dcldr x4, [sp+136]
    002be9e0str x4, [sp+112]
    002be9e4ldr x4, [sp+144]
    002be9e8ldr x5, [sp+152]
    002be9ecstr x4, [sp+96]
    002be9f0str x5, [sp+104]
    002be9f4ldr x4, [sp+112]
    002be9f8str x4, [sp+72]
    002be9fcldr x4, [sp+104]
    002bea00ldr x5, [sp+96]
    002bea04str x5, [sp+80]
    002bea08str x4, [sp+88]
    002bea0ccbnz x5, 0x2bea14
    002bea10b 0x2bea38
    002bea14
    002bea14loc_2bea14:
    002bea14str xzr, [sp+64]
    002bea18ldr x1, [sp+80]
    002bea1cldr x2, [sp+88]
    002bea20str x1, [sp+48]
    002bea24str x2, [sp+56]
    002bea28ldr x0, [sp+64]
    002bea2cldur x29, [sp-8]
    002bea30ldr x30, [sp], 192
    002bea34ret x30
    002bea38
    002bea38loc_2bea38:
    002bea38str xzr, [sp+128]
    002bea3cstp xzr, xzr, [sp+144]
    002bea40ldr x0, [sp+208]
    002bea44ldr x2, [sp+72]
    002bea48ldr x1, [sp+216]
    002bea4cbl crypto/ecdsa.privateKeyFromFIPS
    002bea50str x0, [sp+128]
    002bea54str x1, [sp+144]
    002bea58str x2, [sp+152]
    002bea5cldr x3, [sp+128]
    002bea60str x3, [sp+176]
    002bea64ldr x3, [sp+152]
    002bea68ldr x4, [sp+144]
    002bea6cstr x4, [sp+160]
    002bea70str x3, [sp+168]
    002bea74ldr x3, [sp+176]
    002bea78str x3, [sp+64]
    002bea7cldr x1, [sp+160]
    002bea80ldr x2, [sp+168]
    002bea84str x1, [sp+48]
    002bea88str x2, [sp+56]
    002bea8cldr x0, [sp+64]
    002bea90ldur x29, [sp-8]
    002bea94ldr x30, [sp], 192
    002bea98ret x30
    002bea9c
    002bea9cloc_2bea9c:
    002bea9cstp x0, x1, [sp+8]
    002beaa0stp x2, x3, [sp+24]
    002beaa4stp x4, x5, [sp+40]
    002beaa8mov x3, x30
    002beaacbl runtime.morestack_noctxt.abi0
    002beab0ldp x0, x1, [sp+8]
    002beab4ldp x2, x3, [sp+24]
    002beab8ldp x4, x5, [sp+40]
    002beabcb 0x2be8f0
    002be8f0
    002beac0
    002beac0crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point]: ; void crypto/ecdsa.generateFIPS[go.shape.*crypto/internal/fips140/nistec.P224Point](uintptr[2] * dict, crypto/elliptic.Curve curve, crypto/internal/fips140/ecdsa.Curve[go.shape.*crypto/internal/fips140/nistec.P224Point] * c, io.Reader rand)
    002beac0ldr x16, [x28+16]
    002beac4sub x17, sp, 64
    002beac8subs xzr, x17, x16
    002beaccb.ls 0x2bec6c
    002bead0str x30, [sp-192]!
    002bead4stur x29, [sp-8]
    002bead8sub x29, sp, 8
    002beadcstr x0, [sp+200]
    002beae0str x1, [sp+208]
    002beae4str x2, [sp+216]
    002beae8str x3, [sp+224]
    002beaecstr x4, [sp+232]
    002beaf0str x5, [sp+240]
    002beaf4str xzr, [sp+64]
    002beaf8stp xzr, xzr, [sp+48]
    002beafcadrp x27, 0x78d000
    002beb00ldrb w4, [x27+1551]
    002beb04strb w4, [sp+47]
    002beb08tbnz w4, 0, 0x2beb10
    002beb0cb 0x2beb2c
    002beb10
    002beb10loc_2beb10:
    002beb10ldr x0, [sp+232]
    002beb14ldr x1, [sp+240]
    002beb18bl crypto/internal/fips140only.ApprovedRandomReader
    002beb1cstrb w0, [sp+46]
    002beb20eor x2, x0, 1
    002beb24strb w2, [sp+47]
    002beb28b 0x2beb30
    002beb2c
    002beb2cloc_2beb2c:
    002beb2cb 0x2beb30
    002beb30
    002beb30loc_2beb30:
    002beb30ldrb w4, [sp+47]
    002beb34tbnz w4, 0, 0x2beb3c
    002beb38b 0x2beb78
    002beb3c
    002beb3cloc_2beb3c:
    002beb3cadrp x0, 0x410000
    002beb40add x0, x0, 2093
    002beb44movz x1, 70
    002beb48bl errors.New
    002beb4cstr x0, [sp+144]
    002beb50str x1, [sp+152]
    002beb54str xzr, [sp+64]
    002beb58ldr x1, [sp+144]
    002beb5cldr x2, [sp+152]
    002beb60str x1, [sp+48]
    002beb64str x2, [sp+56]
    002beb68ldr x0, [sp+64]
    002beb6cldur x29, [sp-8]
    002beb70ldr x30, [sp], 192
    002beb74ret x30
    002beb78
    002beb78loc_2beb78:
    002beb78str xzr, [sp+136]
    002beb7cstp xzr, xzr, [sp+144]
    002beb80ldr x4, [sp+200]
    002beb84ldrsb x27, [x4]
    002beb88ldr x0, [x4]
    002beb8cstr x0, [sp+120]
    002beb90ldr x2, [sp+232]
    002beb94ldr x1, [sp+224]
    002beb98ldr x3, [sp+240]
    002beb9cbl crypto/internal/fips140/ecdsa.GenerateKey[go.shape.*crypto/internal/fips140/nistec.P224Point]
    002beba0str x0, [sp+136]
    002beba4str x1, [sp+144]
    002beba8str x2, [sp+152]
    002bebacldr x4, [sp+136]
    002bebb0str x4, [sp+112]
    002bebb4ldr x4, [sp+144]
    002bebb8ldr x5, [sp+152]
    002bebbcstr x4, [sp+96]
    002bebc0str x5, [sp+104]
    002bebc4ldr x4, [sp+112]
    002bebc8str x4, [sp+72]
    002bebccldr x4, [sp+104]
    002bebd0ldr x5, [sp+96]
    002bebd4str x5, [sp+80]
    002bebd8str x4, [sp+88]
    002bebdccbnz x5, 0x2bebe4
    002bebe0b 0x2bec08
    002bebe4
    002bebe4loc_2bebe4:
    002bebe4str xzr, [sp+64]
    002bebe8ldr x1, [sp+80]
    002bebecldr x2, [sp+88]
    002bebf0str x1, [sp+48]
    002bebf4str x2, [sp+56]
    002bebf8ldr x0, [sp+64]
    002bebfcldur x29, [sp-8]
    002bec00ldr x30, [sp], 192
    002bec04ret x30
    002bec08
    002bec08loc_2bec08:
    002bec08str xzr, [sp+128]
    002bec0cstp xzr, xzr, [sp+144]
    002bec10ldr x0, [sp+208]
    002bec14ldr x2, [sp+72]
    002bec18ldr x1, [sp+216]
    002bec1cbl crypto/ecdsa.privateKeyFromFIPS
    002bec20str x0, [sp+128]
    002bec24str x1, [sp+144]
    002bec28str x2, [sp+152]
    002bec2cldr x3, [sp+128]
    002bec30str x3, [sp+176]
    002bec34ldr x3, [sp+152]
    002bec38ldr x4, [sp+144]
    002bec3cstr x4, [sp+160]
    002bec40str x3, [sp+168]
    002bec44ldr x3, [sp+176]
    002bec48str x3, [sp+64]
    002bec4cldr x1, [sp+160]
    002bec50ldr x2, [sp+168]
    002bec54str x1, [sp+48]
    002bec58str x2, [sp+56]
    002bec5cldr x0, [sp+64]
    002bec60ldur x29, [sp-8]
    002bec64ldr x30, [sp], 192
    002bec68ret x30
    002bec6c
    002bec6cloc_2bec6c:
    002bec6cstp x0, x1, [sp+8]
    002bec70stp x2, x3, [sp+24]
    002bec74stp x4, x5, [sp+40]
    002bec78mov x3, x30
    002bec7cbl runtime.morestack_noctxt.abi0
    002bec80ldp x0, x1, [sp+8]
    002bec84ldp x2, x3, [sp+24]
    002bec88ldp x4, x5, [sp+40]
    002bec8cb 0x2beac0
    002beac0
    002bec90
    002bec90crypto/ecdsa.PublicKey.Add: ; void crypto/ecdsa.PublicKey.Add(crypto/ecdsa.PublicKey p0, math/big.Int * x1, math/big.Int * y1, math/big.Int * x2, math/big.Int * y2)
    002bec90ldr x16, [x28+16]
    002bec94subs xzr, sp, x16
    002bec98b.ls 0x2bed3c
    002bec9cstr x30, [sp-112]!
    002beca0stur x29, [sp-8]
    002beca4sub x29, sp, 8
    002beca8ldr x16, [x28+32]
    002becaccbnz x16, 0x2bed68
    002becb0
    002becb0loc_2becb0:
    002becb0str x0, [sp+120]
    002becb4str x1, [sp+128]
    002becb8str x2, [sp+136]
    002becbcstr x3, [sp+144]
    002becc0str x4, [sp+152]
    002becc4str x5, [sp+160]
    002becc8str x6, [sp+168]
    002becccstr x7, [sp+176]
    002becd0str xzr, [sp+64]
    002becd4str xzr, [sp+56]
    002becd8str xzr, [sp+72]
    002becdcstr xzr, [sp+96]
    002bece0ldr x5, [sp+120]
    002bece4ldrsb x27, [x5]
    002bece8ldr x1, [sp+152]
    002bececldr x2, [sp+160]
    002becf0ldr x3, [sp+168]
    002becf4ldr x4, [sp+176]
    002becf8ldr x0, [sp+128]
    002becfcldr x5, [x5+24]
    002bed00blr x5
    002bed04str x0, [sp+72]
    002bed08str x1, [sp+96]
    002bed0cldr x5, [sp+72]
    002bed10str x5, [sp+88]
    002bed14ldr x5, [sp+96]
    002bed18str x5, [sp+80]
    002bed1cldr x5, [sp+88]
    002bed20str x5, [sp+64]
    002bed24ldr x1, [sp+80]
    002bed28str x1, [sp+56]
    002bed2cldr x0, [sp+64]
    002bed30ldur x29, [sp-8]
    002bed34ldr x30, [sp], 112
    002bed38ret x30
    002bed3c
    002bed3cloc_2bed3c:
    002bed3cstp x0, x1, [sp+8]
    002bed40stp x2, x3, [sp+24]
    002bed44stp x4, x5, [sp+40]
    002bed48stp x6, x7, [sp+56]
    002bed4cmov x3, x30
    002bed50bl runtime.morestack_noctxt.abi0
    002bed54ldp x0, x1, [sp+8]
    002bed58ldp x2, x3, [sp+24]
    002bed5cldp x4, x5, [sp+40]
    002bed60ldp x6, x7, [sp+56]
    002bed64b 0x2bec90
    002bed68
    002bed68loc_2bed68:
    002bed68ldr x17, [x16]
    002bed6cadd x20, sp, 120
    002bed70subs xzr, x20, x17
    002bed74b.ne 0x2becb0
    002bed78add x20, sp, 8
    002bed7cstr x20, [x16]
    002bed80b 0x2becb0
    002bed84udf 0
    002bed88udf 0
    002bed8cudf 0
    002bec90
    002bed90
    002bed90crypto/ecdsa.(*PublicKey).Add: ; void crypto/ecdsa.(*PublicKey).Add(crypto/ecdsa.PublicKey * p0, math/big.Int * x1, math/big.Int * y1, math/big.Int * x2, math/big.Int * y2)
    002bed90ldr x16, [x28+16]
    002bed94subs xzr, sp, x16
    002bed98b.ls 0x2bee38
    002bed9cstr x30, [sp-112]!
    002beda0stur x29, [sp-8]
    002beda4sub x29, sp, 8
    002beda8ldr x16, [x28+32]
    002bedaccbnz x16, 0x2bee5c
    002bedb0
    002bedb0loc_2bedb0:
    002bedb0str x0, [sp+120]
    002bedb4str x1, [sp+128]
    002bedb8str x2, [sp+136]
    002bedbcstr x3, [sp+144]
    002bedc0str x4, [sp+152]
    002bedc4str xzr, [sp+64]
    002bedc8str xzr, [sp+56]
    002bedccstr xzr, [sp+72]
    002bedd0str xzr, [sp+96]
    002bedd4ldr x1, [sp+128]
    002bedd8ldr x2, [sp+136]
    002beddcldr x3, [sp+144]
    002bede0ldr x4, [sp+152]
    002bede4ldr x5, [sp+120]
    002bede8ldrsb x27, [x5]
    002bedecldr x6, [x5]
    002bedf0ldrsb x27, [x6]
    002bedf4ldr x0, [x5+8]
    002bedf8ldr x5, [x6+24]
    002bedfcblr x5
    002bee00str x0, [sp+72]
    002bee04str x1, [sp+96]
    002bee08ldr x5, [sp+72]
    002bee0cstr x5, [sp+88]
    002bee10ldr x5, [sp+96]
    002bee14str x5, [sp+80]
    002bee18ldr x5, [sp+88]
    002bee1cstr x5, [sp+64]
    002bee20ldr x1, [sp+80]
    002bee24str x1, [sp+56]
    002bee28ldr x0, [sp+64]
    002bee2cldur x29, [sp-8]
    002bee30ldr x30, [sp], 112
    002bee34ret x30
    002bee38
    002bee38loc_2bee38:
    002bee38stp x0, x1, [sp+8]
    002bee3cstp x2, x3, [sp+24]
    002bee40str x4, [sp+40]
    002bee44mov x3, x30
    002bee48bl runtime.morestack_noctxt.abi0
    002bee4cldp x0, x1, [sp+8]
    002bee50ldp x2, x3, [sp+24]
    002bee54ldr x4, [sp+40]
    002bee58b 0x2bed90
    002bee5c
    002bee5cloc_2bee5c:
    002bee5cldr x17, [x16]
    002bee60add x20, sp, 120
    002bee64subs xzr, x20, x17
    002bee68b.ne 0x2bedb0
    002bee6cadd x20, sp, 8
    002bee70str x20, [x16]
    002bee74b 0x2bedb0
    002bee78udf 0
    002bee7cudf 0
    002bed90
    002bee80
    002bee80crypto/ecdsa.PublicKey.IsOnCurve: ; void crypto/ecdsa.PublicKey.IsOnCurve(crypto/ecdsa.PublicKey p0, math/big.Int * x, math/big.Int * y)
    002bee80ldr x16, [x28+16]
    002bee84subs xzr, sp, x16
    002bee88b.ls 0x2beeec
    002bee8cstr x30, [sp-48]!
    002bee90stur x29, [sp-8]
    002bee94sub x29, sp, 8
    002bee98ldr x16, [x28+32]
    002bee9ccbnz x16, 0x2bef10
    002beea0
    002beea0loc_2beea0:
    002beea0str x0, [sp+56]
    002beea4str x1, [sp+64]
    002beea8str x2, [sp+72]
    002beeacstr x3, [sp+80]
    002beeb0str x4, [sp+88]
    002beeb4str x5, [sp+96]
    002beeb8strb wzr, [sp+38]
    002beebcldr x3, [sp+56]
    002beec0ldrsb x27, [x3]
    002beec4ldr x1, [sp+88]
    002beec8ldr x2, [sp+96]
    002beeccldr x0, [sp+64]
    002beed0ldr x3, [x3+40]
    002beed4blr x3
    002beed8strb w0, [sp+39]
    002beedcstrb w0, [sp+38]
    002beee0ldur x29, [sp-8]
    002beee4ldr x30, [sp], 48
    002beee8ret x30
    002beeec
    002beeecloc_2beeec:
    002beeecstp x0, x1, [sp+8]
    002beef0stp x2, x3, [sp+24]
    002beef4stp x4, x5, [sp+40]
    002beef8mov x3, x30
    002beefcbl runtime.morestack_noctxt.abi0
    002bef00ldp x0, x1, [sp+8]
    002bef04ldp x2, x3, [sp+24]
    002bef08ldp x4, x5, [sp+40]
    002bef0cb 0x2bee80
    002bef10
    002bef10loc_2bef10:
    002bef10ldr x17, [x16]
    002bef14add x20, sp, 56
    002bef18subs xzr, x20, x17
    002bef1cb.ne 0x2beea0
    002bef20add x20, sp, 8
    002bef24str x20, [x16]
    002bef28b 0x2beea0
    002bef2cudf 0
    002bee80
    002bef30
    002bef30crypto/ecdsa.(*PublicKey).IsOnCurve: ; void crypto/ecdsa.(*PublicKey).IsOnCurve(crypto/ecdsa.PublicKey * p0, math/big.Int * x, math/big.Int * y)
    002bef30ldr x16, [x28+16]
    002bef34subs xzr, sp, x16
    002bef38b.ls 0x2bef98
    002bef3cstr x30, [sp-48]!
    002bef40stur x29, [sp-8]
    002bef44sub x29, sp, 8
    002bef48ldr x16, [x28+32]
    002bef4ccbnz x16, 0x2befb4
    002bef50
    002bef50loc_2bef50:
    002bef50str x0, [sp+56]
    002bef54str x1, [sp+64]
    002bef58str x2, [sp+72]
    002bef5cstrb wzr, [sp+38]
    002bef60ldr x1, [sp+64]
    002bef64ldr x2, [sp+72]
    002bef68ldr x3, [sp+56]
    002bef6cldrsb x27, [x3]
    002bef70ldr x4, [x3]
    002bef74ldrsb x27, [x4]
    002bef78ldr x0, [x3+8]
    002bef7cldr x3, [x4+40]
    002bef80blr x3
    002bef84strb w0, [sp+39]
    002bef88strb w0, [sp+38]
    002bef8cldur x29, [sp-8]
    002bef90ldr x30, [sp], 48
    002bef94ret x30
    002bef98
    002bef98loc_2bef98:
    002bef98stp x0, x1, [sp+8]
    002bef9cstr x2, [sp+24]
    002befa0mov x3, x30
    002befa4bl runtime.morestack_noctxt.abi0
    002befa8ldp x0, x1, [sp+8]
    002befacldr x2, [sp+24]
    002befb0b 0x2bef30
    002befb4
    002befb4loc_2befb4:
    002befb4ldr x17, [x16]
    002befb8add x20, sp, 56
    002befbcsubs xzr, x20, x17
    002befc0b.ne 0x2bef50
    002befc4add x20, sp, 8
    002befc8str x20, [x16]
    002befccb 0x2bef50
    002bef30
    002befd0
    002befd0crypto/ecdsa.PublicKey.Params: ; void crypto/ecdsa.PublicKey.Params(crypto/ecdsa.PublicKey p0)
    002befd0ldr x16, [x28+16]
    002befd4subs xzr, sp, x16
    002befd8b.ls 0x2bf02c
    002befdcstr x30, [sp-48]!
    002befe0stur x29, [sp-8]
    002befe4sub x29, sp, 8
    002befe8ldr x16, [x28+32]
    002befeccbnz x16, 0x2bf048
    002beff0
    002beff0loc_2beff0:
    002beff0str x0, [sp+56]
    002beff4str x1, [sp+64]
    002beff8str x2, [sp+72]
    002beffcstr x3, [sp+80]
    002bf000str xzr, [sp+24]
    002bf004ldr x1, [sp+56]
    002bf008ldrsb x27, [x1]
    002bf00cldr x0, [sp+64]
    002bf010ldr x1, [x1+48]
    002bf014blr x1
    002bf018str x0, [sp+32]
    002bf01cstr x0, [sp+24]
    002bf020ldur x29, [sp-8]
    002bf024ldr x30, [sp], 48
    002bf028ret x30
    002bf02c
    002bf02cloc_2bf02c:
    002bf02cstp x0, x1, [sp+8]
    002bf030stp x2, x3, [sp+24]
    002bf034mov x3, x30
    002bf038bl runtime.morestack_noctxt.abi0
    002bf03cldp x0, x1, [sp+8]
    002bf040ldp x2, x3, [sp+24]
    002bf044b 0x2befd0
    002bf048
    002bf048loc_2bf048:
    002bf048ldr x17, [x16]
    002bf04cadd x20, sp, 56
    002bf050subs xzr, x20, x17
    002bf054b.ne 0x2beff0
    002bf058add x20, sp, 8
    002bf05cstr x20, [x16]
    002bf060b 0x2beff0
    002bf064udf 0
    002bf068udf 0
    002bf06cudf 0
    002befd0
    002bf070
    002bf070crypto/ecdsa.(*PublicKey).Params: ; void crypto/ecdsa.(*PublicKey).Params(crypto/ecdsa.PublicKey * p0)
    002bf070ldr x16, [x28+16]
    002bf074subs xzr, sp, x16
    002bf078b.ls 0x2bf0c8
    002bf07cstr x30, [sp-48]!
    002bf080stur x29, [sp-8]
    002bf084sub x29, sp, 8
    002bf088ldr x16, [x28+32]
    002bf08ccbnz x16, 0x2bf0dc
    002bf090
    002bf090loc_2bf090:
    002bf090str x0, [sp+56]
    002bf094str xzr, [sp+24]
    002bf098ldr x1, [sp+56]
    002bf09cldrsb x27, [x1]
    002bf0a0ldr x2, [x1]
    002bf0a4ldrsb x27, [x2]
    002bf0a8ldr x0, [x1+8]
    002bf0acldr x1, [x2+48]
    002bf0b0blr x1
    002bf0b4str x0, [sp+32]
    002bf0b8str x0, [sp+24]
    002bf0bcldur x29, [sp-8]
    002bf0c0ldr x30, [sp], 48
    002bf0c4ret x30
    002bf0c8
    002bf0c8loc_2bf0c8:
    002bf0c8str x0, [sp+8]
    002bf0ccmov x3, x30
    002bf0d0bl runtime.morestack_noctxt.abi0
    002bf0d4ldr x0, [sp+8]
    002bf0d8b 0x2bf070
    002bf0dc
    002bf0dcloc_2bf0dc:
    002bf0dcldr x17, [x16]
    002bf0e0add x20, sp, 56
    002bf0e4subs xzr, x20, x17
    002bf0e8b.ne 0x2bf090
    002bf0ecadd x20, sp, 8
    002bf0f0str x20, [x16]
    002bf0f4b 0x2bf090
    002bf0f8udf 0
    002bf0fcudf 0
    002bf070
    002bf100
    002bf100crypto/ecdsa.PublicKey.ScalarBaseMult: ; void crypto/ecdsa.PublicKey.ScalarBaseMult(crypto/ecdsa.PublicKey p0, struct []uint8 k)
    002bf100ldr x16, [x28+16]
    002bf104subs xzr, sp, x16
    002bf108b.ls 0x2bf1a4
    002bf10cstr x30, [sp-96]!
    002bf110stur x29, [sp-8]
    002bf114sub x29, sp, 8
    002bf118ldr x16, [x28+32]
    002bf11ccbnz x16, 0x2bf1d0
    002bf120
    002bf120loc_2bf120:
    002bf120str x0, [sp+104]
    002bf124str x1, [sp+112]
    002bf128str x2, [sp+120]
    002bf12cstr x3, [sp+128]
    002bf130str x4, [sp+136]
    002bf134str x5, [sp+144]
    002bf138str x6, [sp+152]
    002bf13cstr xzr, [sp+48]
    002bf140str xzr, [sp+40]
    002bf144str xzr, [sp+64]
    002bf148str xzr, [sp+56]
    002bf14cldr x4, [sp+104]
    002bf150ldrsb x27, [x4]
    002bf154ldr x1, [sp+136]
    002bf158ldr x2, [sp+144]
    002bf15cldr x0, [sp+112]
    002bf160ldr x3, [sp+152]
    002bf164ldr x4, [x4+56]
    002bf168blr x4
    002bf16cstr x0, [sp+64]
    002bf170str x1, [sp+56]
    002bf174ldr x4, [sp+64]
    002bf178str x4, [sp+80]
    002bf17cldr x4, [sp+56]
    002bf180str x4, [sp+72]
    002bf184ldr x4, [sp+80]
    002bf188str x4, [sp+48]
    002bf18cldr x1, [sp+72]
    002bf190str x1, [sp+40]
    002bf194ldr x0, [sp+48]
    002bf198ldur x29, [sp-8]
    002bf19cldr x30, [sp], 96
    002bf1a0ret x30
    002bf1a4
    002bf1a4loc_2bf1a4:
    002bf1a4stp x0, x1, [sp+8]
    002bf1a8stp x2, x3, [sp+24]
    002bf1acstp x4, x5, [sp+40]
    002bf1b0str x6, [sp+56]
    002bf1b4mov x3, x30
    002bf1b8bl runtime.morestack_noctxt.abi0
    002bf1bcldp x0, x1, [sp+8]
    002bf1c0ldp x2, x3, [sp+24]
    002bf1c4ldp x4, x5, [sp+40]
    002bf1c8ldr x6, [sp+56]
    002bf1ccb 0x2bf100
    002bf1d0
    002bf1d0loc_2bf1d0:
    002bf1d0ldr x17, [x16]
    002bf1d4add x20, sp, 104
    002bf1d8subs xzr, x20, x17
    002bf1dcb.ne 0x2bf120
    002bf1e0add x20, sp, 8
    002bf1e4str x20, [x16]
    002bf1e8b 0x2bf120
    002bf1ecudf 0
    002bf100
    002bf1f0
    002bf1f0crypto/ecdsa.(*PublicKey).ScalarBaseMult: ; void crypto/ecdsa.(*PublicKey).ScalarBaseMult(crypto/ecdsa.PublicKey * p0, struct []uint8 k)
    002bf1f0ldr x16, [x28+16]
    002bf1f4subs xzr, sp, x16
    002bf1f8b.ls 0x2bf290
    002bf1fcstr x30, [sp-96]!
    002bf200stur x29, [sp-8]
    002bf204sub x29, sp, 8
    002bf208ldr x16, [x28+32]
    002bf20ccbnz x16, 0x2bf2ac
    002bf210
    002bf210loc_2bf210:
    002bf210str x0, [sp+104]
    002bf214str x1, [sp+112]
    002bf218str x2, [sp+120]
    002bf21cstr x3, [sp+128]
    002bf220str xzr, [sp+48]
    002bf224str xzr, [sp+40]
    002bf228str xzr, [sp+64]
    002bf22cstr xzr, [sp+56]
    002bf230ldr x1, [sp+112]
    002bf234ldr x4, [sp+104]
    002bf238ldrsb x27, [x4]
    002bf23cldr x5, [x4]
    002bf240ldrsb x27, [x5]
    002bf244ldr x2, [sp+120]
    002bf248ldr x0, [x4+8]
    002bf24cldr x3, [sp+128]
    002bf250ldr x4, [x5+56]
    002bf254blr x4
    002bf258str x0, [sp+64]
    002bf25cstr x1, [sp+56]
    002bf260ldr x4, [sp+64]
    002bf264str x4, [sp+80]
    002bf268ldr x4, [sp+56]
    002bf26cstr x4, [sp+72]
    002bf270ldr x4, [sp+80]
    002bf274str x4, [sp+48]
    002bf278ldr x1, [sp+72]
    002bf27cstr x1, [sp+40]
    002bf280ldr x0, [sp+48]
    002bf284ldur x29, [sp-8]
    002bf288ldr x30, [sp], 96
    002bf28cret x30
    002bf290
    002bf290loc_2bf290:
    002bf290stp x0, x1, [sp+8]
    002bf294stp x2, x3, [sp+24]
    002bf298mov x3, x30
    002bf29cbl runtime.morestack_noctxt.abi0
    002bf2a0ldp x0, x1, [sp+8]
    002bf2a4ldp x2, x3, [sp+24]
    002bf2a8b 0x2bf1f0
    002bf2ac
    002bf2acloc_2bf2ac:
    002bf2acldr x17, [x16]
    002bf2b0add x20, sp, 104
    002bf2b4subs xzr, x20, x17
    002bf2b8b.ne 0x2bf210
    002bf2bcadd x20, sp, 8
    002bf2c0str x20, [x16]
    002bf2c4b 0x2bf210
    002bf2c8udf 0
    002bf2ccudf 0
    002bf1f0
    002bf2d0
    002bf2d0crypto/ecdsa.PublicKey.ScalarMult: ; void crypto/ecdsa.PublicKey.ScalarMult(crypto/ecdsa.PublicKey p0, math/big.Int * x1, math/big.Int * y1, struct []uint8 k)
    002bf2d0ldr x16, [x28+16]
    002bf2d4subs xzr, sp, x16
    002bf2d8b.ls 0x2bf384
    002bf2dcstr x30, [sp-112]!
    002bf2e0stur x29, [sp-8]
    002bf2e4sub x29, sp, 8
    002bf2e8ldr x16, [x28+32]
    002bf2eccbnz x16, 0x2bf3b8
    002bf2f0
    002bf2f0loc_2bf2f0:
    002bf2f0str x0, [sp+120]
    002bf2f4str x1, [sp+128]
    002bf2f8str x2, [sp+136]
    002bf2fcstr x3, [sp+144]
    002bf300str x4, [sp+152]
    002bf304str x5, [sp+160]
    002bf308str x6, [sp+168]
    002bf30cstr x7, [sp+176]
    002bf310str x8, [sp+184]
    002bf314str xzr, [sp+64]
    002bf318str xzr, [sp+56]
    002bf31cstr xzr, [sp+80]
    002bf320str xzr, [sp+72]
    002bf324ldr x6, [sp+120]
    002bf328ldrsb x27, [x6]
    002bf32cldr x3, [sp+168]
    002bf330ldr x1, [sp+152]
    002bf334ldr x2, [sp+160]
    002bf338ldr x4, [sp+176]
    002bf33cldr x0, [sp+128]
    002bf340ldr x5, [sp+184]
    002bf344ldr x6, [x6+64]
    002bf348blr x6
    002bf34cstr x0, [sp+80]
    002bf350str x1, [sp+72]
    002bf354ldr x6, [sp+80]
    002bf358str x6, [sp+96]
    002bf35cldr x6, [sp+72]
    002bf360str x6, [sp+88]
    002bf364ldr x6, [sp+96]
    002bf368str x6, [sp+64]
    002bf36cldr x1, [sp+88]
    002bf370str x1, [sp+56]
    002bf374ldr x0, [sp+64]
    002bf378ldur x29, [sp-8]
    002bf37cldr x30, [sp], 112
    002bf380ret x30
    002bf384
    002bf384loc_2bf384:
    002bf384stp x0, x1, [sp+8]
    002bf388stp x2, x3, [sp+24]
    002bf38cstp x4, x5, [sp+40]
    002bf390stp x6, x7, [sp+56]
    002bf394str x8, [sp+72]
    002bf398mov x3, x30
    002bf39cbl runtime.morestack_noctxt.abi0
    002bf3a0ldp x0, x1, [sp+8]
    002bf3a4ldp x2, x3, [sp+24]
    002bf3a8ldp x4, x5, [sp+40]
    002bf3acldp x6, x7, [sp+56]
    002bf3b0ldr x8, [sp+72]
    002bf3b4b 0x2bf2d0
    002bf3b8
    002bf3b8loc_2bf3b8:
    002bf3b8ldr x17, [x16]
    002bf3bcadd x20, sp, 120
    002bf3c0subs xzr, x20, x17
    002bf3c4b.ne 0x2bf2f0
    002bf3c8add x20, sp, 8
    002bf3ccstr x20, [x16]
    002bf3d0b 0x2bf2f0
    002bf3d4udf 0
    002bf3d8udf 0
    002bf3dcudf 0
    002bf2d0
    002bf3e0
    002bf3e0crypto/ecdsa.(*PublicKey).ScalarMult: ; void crypto/ecdsa.(*PublicKey).ScalarMult(crypto/ecdsa.PublicKey * p0, math/big.Int * x1, math/big.Int * y1, struct []uint8 k)
    002bf3e0ldr x16, [x28+16]
    002bf3e4subs xzr, sp, x16
    002bf3e8b.ls 0x2bf490
    002bf3ecstr x30, [sp-112]!
    002bf3f0stur x29, [sp-8]
    002bf3f4sub x29, sp, 8
    002bf3f8ldr x16, [x28+32]
    002bf3fccbnz x16, 0x2bf4b4
    002bf400
    002bf400loc_2bf400:
    002bf400str x0, [sp+120]
    002bf404str x1, [sp+128]
    002bf408str x2, [sp+136]
    002bf40cstr x3, [sp+144]
    002bf410str x4, [sp+152]
    002bf414str x5, [sp+160]
    002bf418str xzr, [sp+64]
    002bf41cstr xzr, [sp+56]
    002bf420str xzr, [sp+80]
    002bf424str xzr, [sp+72]
    002bf428ldr x3, [sp+144]
    002bf42cldr x1, [sp+128]
    002bf430ldr x2, [sp+136]
    002bf434ldr x6, [sp+120]
    002bf438ldrsb x27, [x6]
    002bf43cldr x7, [x6]
    002bf440ldrsb x27, [x7]
    002bf444ldr x4, [sp+152]
    002bf448ldr x0, [x6+8]
    002bf44cldr x5, [sp+160]
    002bf450ldr x6, [x7+64]
    002bf454blr x6
    002bf458str x0, [sp+80]
    002bf45cstr x1, [sp+72]
    002bf460ldr x6, [sp+80]
    002bf464str x6, [sp+96]
    002bf468ldr x6, [sp+72]
    002bf46cstr x6, [sp+88]
    002bf470ldr x6, [sp+96]
    002bf474str x6, [sp+64]
    002bf478ldr x1, [sp+88]
    002bf47cstr x1, [sp+56]
    002bf480ldr x0, [sp+64]
    002bf484ldur x29, [sp-8]
    002bf488ldr x30, [sp], 112
    002bf48cret x30
    002bf490
    002bf490loc_2bf490:
    002bf490stp x0, x1, [sp+8]
    002bf494stp x2, x3, [sp+24]
    002bf498stp x4, x5, [sp+40]
    002bf49cmov x3, x30
    002bf4a0bl runtime.morestack_noctxt.abi0
    002bf4a4ldp x0, x1, [sp+8]
    002bf4a8ldp x2, x3, [sp+24]
    002bf4acldp x4, x5, [sp+40]
    002bf4b0b 0x2bf3e0
    002bf4b4
    002bf4b4loc_2bf4b4:
    002bf4b4ldr x17, [x16]
    002bf4b8add x20, sp, 120
    002bf4bcsubs xzr, x20, x17
    002bf4c0b.ne 0x2bf400
    002bf4c4add x20, sp, 8
    002bf4c8str x20, [x16]
    002bf4ccb 0x2bf400
    002bf3e0
    002bf4d0
    002bf4d0crypto/ecdsa.PrivateKey.Add: ; void crypto/ecdsa.PrivateKey.Add(crypto/ecdsa.PrivateKey p0, math/big.Int * x1, math/big.Int * y1, math/big.Int * x2, math/big.Int * y2)
    002bf4d0ldr x16, [x28+16]
    002bf4d4subs xzr, sp, x16
    002bf4d8b.ls 0x2bf580
    002bf4dcstr x30, [sp-112]!
    002bf4e0stur x29, [sp-8]
    002bf4e4sub x29, sp, 8
    002bf4e8ldr x16, [x28+32]
    002bf4eccbnz x16, 0x2bf5b4
    002bf4f0
    002bf4f0loc_2bf4f0:
    002bf4f0str x0, [sp+120]
    002bf4f4str x1, [sp+128]
    002bf4f8str x2, [sp+136]
    002bf4fcstr x3, [sp+144]
    002bf500str x4, [sp+152]
    002bf504str x5, [sp+160]
    002bf508str x6, [sp+168]
    002bf50cstr x7, [sp+176]
    002bf510str x8, [sp+184]
    002bf514str xzr, [sp+64]
    002bf518str xzr, [sp+56]
    002bf51cstr xzr, [sp+72]
    002bf520str xzr, [sp+96]
    002bf524ldr x5, [sp+120]
    002bf528ldrsb x27, [x5]
    002bf52cldr x1, [sp+160]
    002bf530ldr x2, [sp+168]
    002bf534ldr x3, [sp+176]
    002bf538ldr x4, [sp+184]
    002bf53cldr x0, [sp+128]
    002bf540ldr x5, [x5+24]
    002bf544blr x5
    002bf548str x0, [sp+72]
    002bf54cstr x1, [sp+96]
    002bf550ldr x5, [sp+72]
    002bf554str x5, [sp+88]
    002bf558ldr x5, [sp+96]
    002bf55cstr x5, [sp+80]
    002bf560ldr x5, [sp+88]
    002bf564str x5, [sp+64]
    002bf568ldr x1, [sp+80]
    002bf56cstr x1, [sp+56]
    002bf570ldr x0, [sp+64]
    002bf574ldur x29, [sp-8]
    002bf578ldr x30, [sp], 112
    002bf57cret x30
    002bf580
    002bf580loc_2bf580:
    002bf580stp x0, x1, [sp+8]
    002bf584stp x2, x3, [sp+24]
    002bf588stp x4, x5, [sp+40]
    002bf58cstp x6, x7, [sp+56]
    002bf590str x8, [sp+72]
    002bf594mov x3, x30
    002bf598bl runtime.morestack_noctxt.abi0
    002bf59cldp x0, x1, [sp+8]
    002bf5a0ldp x2, x3, [sp+24]
    002bf5a4ldp x4, x5, [sp+40]
    002bf5a8ldp x6, x7, [sp+56]
    002bf5acldr x8, [sp+72]
    002bf5b0b 0x2bf4d0
    002bf5b4
    002bf5b4loc_2bf5b4:
    002bf5b4ldr x17, [x16]
    002bf5b8add x20, sp, 120
    002bf5bcsubs xzr, x20, x17
    002bf5c0b.ne 0x2bf4f0
    002bf5c4add x20, sp, 8
    002bf5c8str x20, [x16]
    002bf5ccb 0x2bf4f0
    002bf4d0