File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    0056f4a0
    0056f4a0crypto/internal/fips140/nistec.(*P521Point).SetGenerator: ; void crypto/internal/fips140/nistec.(*P521Point).SetGenerator(crypto/internal/fips140/nistec.P521Point * p)
    0056f4a0ldr x16, [x28+16]
    0056f4a4sub x17, sp, 96
    0056f4a8subs xzr, x17, x16
    0056f4acb.ls 0x56fdb4
    0056f4b0str x30, [sp-224]!
    0056f4b4stur x29, [sp-8]
    0056f4b8sub x29, sp, 8
    0056f4bcstr x0, [sp+232]
    0056f4c0str xzr, [sp+120]
    0056f4c4add x27, sp, 54
    0056f4c8stp xzr, xzr, [x27]
    0056f4ccadd x27, sp, 70
    0056f4d0stp xzr, xzr, [x27]
    0056f4d4add x27, sp, 86
    0056f4d8stp xzr, xzr, [x27]
    0056f4dcadd x27, sp, 102
    0056f4e0stp xzr, xzr, [x27]
    0056f4e4str xzr, [sp+112]
    0056f4e8add x4, sp, 54
    0056f4ecstr x4, [sp+184]
    0056f4f0ldrsb x27, [x4]
    0056f4f4strb wzr, [x4]
    0056f4f8ldr x4, [sp+184]
    0056f4fcldrsb x27, [x4]
    0056f500movn x5, 57
    0056f504strb w5, [x4+1]
    0056f508ldr x4, [sp+184]
    0056f50cldrsb x27, [x4]
    0056f510movn x5, 122
    0056f514strb w5, [x4+2]
    0056f518ldr x4, [sp+184]
    0056f51cldrsb x27, [x4]
    0056f520movn x6, 113
    0056f524strb w6, [x4+3]
    0056f528ldr x4, [sp+184]
    0056f52cldrsb x27, [x4]
    0056f530orr x6, xzr, 6
    0056f534strb w6, [x4+4]
    0056f538ldr x4, [sp+184]
    0056f53cldrsb x27, [x4]
    0056f540movn x6, 72
    0056f544strb w6, [x4+5]
    0056f548ldr x4, [sp+184]
    0056f54cldrsb x27, [x4]
    0056f550orr x6, xzr, 4
    0056f554strb w6, [x4+6]
    0056f558ldr x4, [sp+184]
    0056f55cldrsb x27, [x4]
    0056f560strb w6, [x4+7]
    0056f564ldr x4, [sp+184]
    0056f568ldrsb x27, [x4]
    0056f56cmovn x7, 22
    0056f570strb w7, [x4+8]
    0056f574ldr x4, [sp+184]
    0056f578ldrsb x27, [x4]
    0056f57cmovn x7, 50
    0056f580strb w7, [x4+9]
    0056f584ldr x4, [sp+184]
    0056f588ldrsb x27, [x4]
    0056f58cmovn x7, 97
    0056f590strb w7, [x4+10]
    0056f594ldr x4, [sp+184]
    0056f598ldrsb x27, [x4]
    0056f59corr x7, xzr, 62
    0056f5a0strb w7, [x4+11]
    0056f5a4ldr x4, [sp+184]
    0056f5a8ldrsb x27, [x4]
    0056f5acmovn x8, 52
    0056f5b0strb w8, [x4+12]
    0056f5b4ldr x4, [sp+184]
    0056f5b8ldrsb x27, [x4]
    0056f5bcmovz x8, 102
    0056f5c0strb w8, [x4+13]
    0056f5c4ldr x4, [sp+184]
    0056f5c8ldrsb x27, [x4]
    0056f5ccmovz x9, 35
    0056f5d0strb w9, [x4+14]
    0056f5d4ldr x4, [sp+184]
    0056f5d8ldrsb x27, [x4]
    0056f5dcmovn x9, 106
    0056f5e0strb w9, [x4+15]
    0056f5e4ldr x4, [sp+184]
    0056f5e8ldrsb x27, [x4]
    0056f5ecmovn x9, 75
    0056f5f0strb w9, [x4+16]
    0056f5f4ldr x4, [sp+184]
    0056f5f8ldrsb x27, [x4]
    0056f5fcmovz x10, 66
    0056f600strb w10, [x4+17]
    0056f604ldr x4, [sp+184]
    0056f608ldrsb x27, [x4]
    0056f60cmovn x11, 99
    0056f610strb w11, [x4+18]
    0056f614ldr x4, [sp+184]
    0056f618ldrsb x27, [x4]
    0056f61cmovz x11, 100
    0056f620strb w11, [x4+19]
    0056f624ldr x4, [sp+184]
    0056f628ldrsb x27, [x4]
    0056f62cmovn x11, 126
    0056f630strb w11, [x4+20]
    0056f634ldr x4, [sp+184]
    0056f638ldrsb x27, [x4]
    0056f63cmovz x11, 57
    0056f640strb w11, [x4+21]
    0056f644ldr x4, [sp+184]
    0056f648ldrsb x27, [x4]
    0056f64cmovz x12, 5
    0056f650strb w12, [x4+22]
    0056f654ldr x4, [sp+184]
    0056f658ldrsb x27, [x4]
    0056f65corr x12, xzr, 63
    0056f660strb w12, [x4+23]
    0056f664ldr x4, [sp+184]
    0056f668ldrsb x27, [x4]
    0056f66cmovn x13, 74
    0056f670strb w13, [x4+24]
    0056f674ldr x4, [sp+184]
    0056f678ldrsb x27, [x4]
    0056f67cmovz x13, 33
    0056f680strb w13, [x4+25]
    0056f684ldr x4, [sp+184]
    0056f688ldrsb x27, [x4]
    0056f68cmovn x13, 7
    0056f690strb w13, [x4+26]
    0056f694ldr x4, [sp+184]
    0056f698ldrsb x27, [x4]
    0056f69cmovz x13, 40
    0056f6a0strb w13, [x4+27]
    0056f6a4ldr x4, [sp+184]
    0056f6a8ldrsb x27, [x4]
    0056f6acmovn x14, 80
    0056f6b0strb w14, [x4+28]
    0056f6b4ldr x4, [sp+184]
    0056f6b8ldrsb x27, [x4]
    0056f6bcorr x15, xzr, 96
    0056f6c0strb w15, [x4+29]
    0056f6c4ldr x4, [sp+184]
    0056f6c8ldrsb x27, [x4]
    0056f6ccmovz x15, 107
    0056f6d0strb w15, [x4+30]
    0056f6d4ldr x4, [sp+184]
    0056f6d8ldrsb x27, [x4]
    0056f6dcmovz x15, 77
    0056f6e0strb w15, [x4+31]
    0056f6e4ldr x4, [sp+184]
    0056f6e8ldrsb x27, [x4]
    0056f6ecmovz x15, 61
    0056f6f0strb w15, [x4+32]
    0056f6f4ldr x4, [sp+184]
    0056f6f8ldrsb x27, [x4]
    0056f6fcmovn x15, 69
    0056f700strb w15, [x4+33]
    0056f704ldr x4, [sp+184]
    0056f708ldrsb x27, [x4]
    0056f70cmovn x15, 94
    0056f710strb w15, [x4+34]
    0056f714ldr x4, [sp+184]
    0056f718ldrsb x27, [x4]
    0056f71cmovz x15, 75
    0056f720strb w15, [x4+35]
    0056f724ldr x4, [sp+184]
    0056f728ldrsb x27, [x4]
    0056f72cmovz x15, 94
    0056f730strb w15, [x4+36]
    0056f734ldr x4, [sp+184]
    0056f738ldrsb x27, [x4]
    0056f73cmovz x16, 119
    0056f740strb w16, [x4+37]
    0056f744ldr x4, [sp+184]
    0056f748ldrsb x27, [x4]
    0056f74cmovn x16, 16
    0056f750strb w16, [x4+38]
    0056f754ldr x4, [sp+184]
    0056f758ldrsb x27, [x4]
    0056f75cmovn x16, 24
    0056f760strb w16, [x4+39]
    0056f764ldr x4, [sp+184]
    0056f768ldrsb x27, [x4]
    0056f76cmovz x16, 89
    0056f770strb w16, [x4+40]
    0056f774ldr x4, [sp+184]
    0056f778ldrsb x27, [x4]
    0056f77cstrb w13, [x4+41]
    0056f780ldr x4, [sp+184]
    0056f784ldrsb x27, [x4]
    0056f788movn x13, 1
    0056f78cstrb w13, [x4+42]
    0056f790ldr x4, [sp+184]
    0056f794ldrsb x27, [x4]
    0056f798movz x13, 29
    0056f79cstrb w13, [x4+43]
    0056f7a0ldr x4, [sp+184]
    0056f7a4ldrsb x27, [x4]
    0056f7a8movn x13, 62
    0056f7acstrb w13, [x4+44]
    0056f7b0ldr x4, [sp+184]
    0056f7b4ldrsb x27, [x4]
    0056f7b8movz x16, 39
    0056f7bcstrb w16, [x4+45]
    0056f7c0ldr x4, [sp+184]
    0056f7c4ldrsb x27, [x4]
    0056f7c8movn x17, 93
    0056f7ccstrb w17, [x4+46]
    0056f7d0ldr x4, [sp+184]
    0056f7d4ldrsb x27, [x4]
    0056f7d8movn x19, 0
    0056f7dcstrb w19, [x4+47]
    0056f7e0ldr x4, [sp+184]
    0056f7e4ldrsb x27, [x4]
    0056f7e8movn x19, 87
    0056f7ecstrb w19, [x4+48]
    0056f7f0ldr x4, [sp+184]
    0056f7f4ldrsb x27, [x4]
    0056f7f8movn x19, 33
    0056f7fcstrb w19, [x4+49]
    0056f800ldr x4, [sp+184]
    0056f804ldrsb x27, [x4]
    0056f808movz x19, 51
    0056f80cstrb w19, [x4+50]
    0056f810ldr x4, [sp+184]
    0056f814ldrsb x27, [x4]
    0056f818movz x19, 72
    0056f81cstrb w19, [x4+51]
    0056f820ldr x4, [sp+184]
    0056f824ldrsb x27, [x4]
    0056f828movn x19, 76
    0056f82cstrb w19, [x4+52]
    0056f830ldr x4, [sp+184]
    0056f834ldrsb x27, [x4]
    0056f838strb w13, [x4+53]
    0056f83cldr x4, [sp+184]
    0056f840ldrsb x27, [x4]
    0056f844strb w5, [x4+54]
    0056f848ldr x4, [sp+184]
    0056f84cldrsb x27, [x4]
    0056f850movz x5, 106
    0056f854strb w5, [x4+55]
    0056f858ldr x4, [sp+184]
    0056f85cldrsb x27, [x4]
    0056f860strb w10, [x4+56]
    0056f864ldr x4, [sp+184]
    0056f868ldrsb x27, [x4]
    0056f86cmovn x10, 100
    0056f870strb w10, [x4+57]
    0056f874ldr x4, [sp+184]
    0056f878ldrsb x27, [x4]
    0056f87cmovn x13, 6
    0056f880strb w13, [x4+58]
    0056f884ldr x4, [sp+184]
    0056f888ldrsb x27, [x4]
    0056f88corr x13, xzr, 126
    0056f890strb w13, [x4+59]
    0056f894ldr x4, [sp+184]
    0056f898ldrsb x27, [x4]
    0056f89cstrb w13, [x4+60]
    0056f8a0ldr x4, [sp+184]
    0056f8a4ldrsb x27, [x4]
    0056f8a8movz x13, 49
    0056f8acstrb w13, [x4+61]
    0056f8b0ldr x4, [sp+184]
    0056f8b4ldrsb x27, [x4]
    0056f8b8movn x13, 61
    0056f8bcstrb w13, [x4+62]
    0056f8c0ldr x4, [sp+184]
    0056f8c4ldrsb x27, [x4]
    0056f8c8movn x19, 26
    0056f8ccstrb w19, [x4+63]
    0056f8d0ldr x4, [sp+184]
    0056f8d4ldrsb x27, [x4]
    0056f8d8movn x19, 66
    0056f8dcstrb w19, [x4+64]
    0056f8e0ldr x4, [sp+184]
    0056f8e4ldrsb x27, [x4]
    0056f8e8strb w8, [x4+65]
    0056f8ecldr x4, [sp+184]
    0056f8f0ldrsb x27, [x4]
    0056f8f4b 0x56f8f8
    0056f8f8
    0056f8f8loc_56f8f8:
    0056f8f8str x4, [sp+192]
    0056f8fcmovz x4, 66
    0056f900str x4, [sp+200]
    0056f904str x4, [sp+208]
    0056f908ldr x4, [sp+232]
    0056f90cldrsb x27, [x4]
    0056f910ldr x0, [x4]
    0056f914str x0, [sp+176]
    0056f918ldr x1, [sp+192]
    0056f91cldr x2, [sp+200]
    0056f920ldr x3, [sp+208]
    0056f924bl crypto/internal/fips140/nistec/fiat.(*P521Element).SetBytes
    0056f928add x27, sp, 54
    0056f92cstp xzr, xzr, [x27]
    0056f930add x27, sp, 70
    0056f934stp xzr, xzr, [x27]
    0056f938add x27, sp, 86
    0056f93cstp xzr, xzr, [x27]
    0056f940add x27, sp, 102
    0056f944stp xzr, xzr, [x27]
    0056f948str xzr, [sp+112]
    0056f94cadd x4, sp, 54
    0056f950str x4, [sp+144]
    0056f954ldrsb x27, [x4]
    0056f958orr x5, xzr, 1
    0056f95cstrb w5, [x4]
    0056f960ldr x4, [sp+144]
    0056f964ldrsb x27, [x4]
    0056f968orr x6, xzr, 24
    0056f96cstrb w6, [x4+1]
    0056f970ldr x4, [sp+144]
    0056f974ldrsb x27, [x4]
    0056f978movz x6, 57
    0056f97cstrb w6, [x4+2]
    0056f980ldr x4, [sp+144]
    0056f984ldrsb x27, [x4]
    0056f988movz x6, 41
    0056f98cstrb w6, [x4+3]
    0056f990ldr x4, [sp+144]
    0056f994ldrsb x27, [x4]
    0056f998movz x6, 106
    0056f99cstrb w6, [x4+4]
    0056f9a0ldr x4, [sp+144]
    0056f9a4ldrsb x27, [x4]
    0056f9a8orr x6, xzr, 120
    0056f9acstrb w6, [x4+5]
    0056f9b0ldr x4, [sp+144]
    0056f9b4ldrsb x27, [x4]
    0056f9b8movn x6, 101
    0056f9bcstrb w6, [x4+6]
    0056f9c0ldr x4, [sp+144]
    0056f9c4ldrsb x27, [x4]
    0056f9c8movz x6, 59
    0056f9ccstrb w6, [x4+7]
    0056f9d0ldr x4, [sp+144]
    0056f9d4ldrsb x27, [x4]
    0056f9d8movn x6, 63
    0056f9dcstrb w6, [x4+8]
    0056f9e0ldr x4, [sp+144]
    0056f9e4ldrsb x27, [x4]
    0056f9e8orr x6, xzr, 4
    0056f9ecstrb w6, [x4+9]
    0056f9f0ldr x4, [sp+144]
    0056f9f4ldrsb x27, [x4]
    0056f9f8movz x6, 92
    0056f9fcstrb w6, [x4+10]
    0056fa00ldr x4, [sp+144]
    0056fa04ldrsb x27, [x4]
    0056fa08movn x6, 117
    0056fa0cstrb w6, [x4+11]
    0056fa10ldr x4, [sp+144]
    0056fa14ldrsb x27, [x4]
    0056fa18movz x6, 95
    0056fa1cstrb w6, [x4+12]
    0056fa20ldr x4, [sp+144]
    0056fa24ldrsb x27, [x4]
    0056fa28movn x6, 75
    0056fa2cstrb w6, [x4+13]
    0056fa30ldr x4, [sp+144]
    0056fa34ldrsb x27, [x4]
    0056fa38movz x6, 44
    0056fa3cstrb w6, [x4+14]
    0056fa40ldr x4, [sp+144]
    0056fa44ldrsb x27, [x4]
    0056fa48movz x7, 125
    0056fa4cstrb w7, [x4+15]
    0056fa50ldr x4, [sp+144]
    0056fa54ldrsb x27, [x4]
    0056fa58movz x7, 27
    0056fa5cstrb w7, [x4+16]
    0056fa60ldr x4, [sp+144]
    0056fa64ldrsb x27, [x4]
    0056fa68movn x7, 38
    0056fa6cstrb w7, [x4+17]
    0056fa70ldr x4, [sp+144]
    0056fa74ldrsb x27, [x4]
    0056fa78movn x7, 103
    0056fa7cstrb w7, [x4+18]
    0056fa80ldr x4, [sp+144]
    0056fa84ldrsb x27, [x4]
    0056fa88movn x7, 10
    0056fa8cstrb w7, [x4+19]
    0056fa90ldr x4, [sp+144]
    0056fa94ldrsb x27, [x4]
    0056fa98movz x7, 68
    0056fa9cstrb w7, [x4+20]
    0056faa0ldr x4, [sp+144]
    0056faa4ldrsb x27, [x4]
    0056faa8movz x8, 73
    0056faacstrb w8, [x4+21]
    0056fab0ldr x4, [sp+144]
    0056fab4ldrsb x27, [x4]
    0056fab8movz x8, 87
    0056fabcstrb w8, [x4+22]
    0056fac0ldr x4, [sp+144]
    0056fac4ldrsb x27, [x4]
    0056fac8movn x8, 100
    0056faccstrb w8, [x4+23]
    0056fad0ldr x4, [sp+144]
    0056fad4ldrsb x27, [x4]
    0056fad8strb w7, [x4+24]
    0056fadcldr x4, [sp+144]
    0056fae0ldrsb x27, [x4]
    0056fae4movz x7, 104
    0056fae8strb w7, [x4+25]
    0056faecldr x4, [sp+144]
    0056faf0ldrsb x27, [x4]
    0056faf4movz x7, 23
    0056faf8strb w7, [x4+26]
    0056fafcldr x4, [sp+144]
    0056fb00ldrsb x27, [x4]
    0056fb04movn x8, 80
    0056fb08strb w8, [x4+27]
    0056fb0cldr x4, [sp+144]
    0056fb10ldrsb x27, [x4]
    0056fb14movn x8, 66
    0056fb18strb w8, [x4+28]
    0056fb1cldr x4, [sp+144]
    0056fb20ldrsb x27, [x4]
    0056fb24strb w7, [x4+29]
    0056fb28ldr x4, [sp+144]
    0056fb2cldrsb x27, [x4]
    0056fb30movz x7, 39
    0056fb34strb w7, [x4+30]
    0056fb38ldr x4, [sp+144]
    0056fb3cldrsb x27, [x4]
    0056fb40orr x7, xzr, 62
    0056fb44strb w7, [x4+31]
    0056fb48ldr x4, [sp+144]
    0056fb4cldrsb x27, [x4]
    0056fb50movz x7, 102
    0056fb54strb w7, [x4+32]
    0056fb58ldr x4, [sp+144]
    0056fb5cldrsb x27, [x4]
    0056fb60strb w6, [x4+33]
    0056fb64ldr x4, [sp+144]
    0056fb68ldrsb x27, [x4]
    0056fb6cmovn x6, 104
    0056fb70strb w6, [x4+34]
    0056fb74ldr x4, [sp+144]
    0056fb78ldrsb x27, [x4]
    0056fb7cmovn x6, 17
    0056fb80strb w6, [x4+35]
    0056fb84ldr x4, [sp+144]
    0056fb88ldrsb x27, [x4]
    0056fb8cmovz x6, 114
    0056fb90strb w6, [x4+36]
    0056fb94ldr x4, [sp+144]
    0056fb98ldrsb x27, [x4]
    0056fb9cmovn x8, 102
    0056fba0strb w8, [x4+37]
    0056fba4ldr x4, [sp+144]
    0056fba8ldrsb x27, [x4]
    0056fbacmovz x8, 94
    0056fbb0strb w8, [x4+38]
    0056fbb4ldr x4, [sp+144]
    0056fbb8ldrsb x27, [x4]
    0056fbbcmovn x8, 11
    0056fbc0strb w8, [x4+39]
    0056fbc4ldr x4, [sp+144]
    0056fbc8ldrsb x27, [x4]
    0056fbccmovz x8, 38
    0056fbd0strb w8, [x4+40]
    0056fbd4ldr x4, [sp+144]
    0056fbd8ldrsb x27, [x4]
    0056fbdcorr x8, xzr, 64
    0056fbe0strb w8, [x4+41]
    0056fbe4ldr x4, [sp+144]
    0056fbe8ldrsb x27, [x4]
    0056fbecmovn x9, 58
    0056fbf0strb w9, [x4+42]
    0056fbf4ldr x4, [sp+144]
    0056fbf8ldrsb x27, [x4]
    0056fbfcmovz x9, 80
    0056fc00strb w9, [x4+43]
    0056fc04ldr x4, [sp+144]
    0056fc08ldrsb x27, [x4]
    0056fc0cmovn x10, 70
    0056fc10strb w10, [x4+44]
    0056fc14ldr x4, [sp+144]
    0056fc18ldrsb x27, [x4]
    0056fc1cstrb w5, [x4+45]
    0056fc20ldr x4, [sp+144]
    0056fc24ldrsb x27, [x4]
    0056fc28orr x5, xzr, 63
    0056fc2cstrb w5, [x4+46]
    0056fc30ldr x4, [sp+144]
    0056fc34ldrsb x27, [x4]
    0056fc38movn x5, 82
    0056fc3cstrb w5, [x4+47]
    0056fc40ldr x4, [sp+144]
    0056fc44ldrsb x27, [x4]
    0056fc48orr x5, xzr, 7
    0056fc4cstrb w5, [x4+48]
    0056fc50ldr x4, [sp+144]
    0056fc54ldrsb x27, [x4]
    0056fc58movz x5, 97
    0056fc5cstrb w5, [x4+49]
    0056fc60ldr x4, [sp+144]
    0056fc64ldrsb x27, [x4]
    0056fc68movz x5, 53
    0056fc6cstrb w5, [x4+50]
    0056fc70ldr x4, [sp+144]
    0056fc74ldrsb x27, [x4]
    0056fc78orr x5, xzr, 60
    0056fc7cstrb w5, [x4+51]
    0056fc80ldr x4, [sp+144]
    0056fc84ldrsb x27, [x4]
    0056fc88orr x5, xzr, 112
    0056fc8cstrb w5, [x4+52]
    0056fc90ldr x4, [sp+144]
    0056fc94ldrsb x27, [x4]
    0056fc98movn x5, 121
    0056fc9cstrb w5, [x4+53]
    0056fca0ldr x4, [sp+144]
    0056fca4ldrsb x27, [x4]
    0056fca8movn x5, 93
    0056fcacstrb w5, [x4+54]
    0056fcb0ldr x4, [sp+144]
    0056fcb4ldrsb x27, [x4]
    0056fcb8strb w6, [x4+55]
    0056fcbcldr x4, [sp+144]
    0056fcc0ldrsb x27, [x4]
    0056fcc4movn x5, 61
    0056fcc8strb w5, [x4+56]
    0056fcccldr x4, [sp+144]
    0056fcd0ldrsb x27, [x4]
    0056fcd4strb w8, [x4+57]
    0056fcd8ldr x4, [sp+144]
    0056fcdcldrsb x27, [x4]
    0056fce0movn x5, 119
    0056fce4strb w5, [x4+58]
    0056fce8ldr x4, [sp+144]
    0056fcecldrsb x27, [x4]
    0056fcf0movn x5, 65
    0056fcf4strb w5, [x4+59]
    0056fcf8ldr x4, [sp+144]
    0056fcfcldrsb x27, [x4]
    0056fd00movn x5, 107
    0056fd04strb w5, [x4+60]
    0056fd08ldr x4, [sp+144]
    0056fd0cldrsb x27, [x4]
    0056fd10movz x5, 118
    0056fd14strb w5, [x4+61]
    0056fd18ldr x4, [sp+144]
    0056fd1cldrsb x27, [x4]
    0056fd20movn x5, 96
    0056fd24strb w5, [x4+62]
    0056fd28ldr x4, [sp+144]
    0056fd2cldrsb x27, [x4]
    0056fd30movn x5, 46
    0056fd34strb w5, [x4+63]
    0056fd38ldr x4, [sp+144]
    0056fd3cldrsb x27, [x4]
    0056fd40strb w7, [x4+64]
    0056fd44ldr x4, [sp+144]
    0056fd48ldrsb x27, [x4]
    0056fd4cstrb w9, [x4+65]
    0056fd50ldr x4, [sp+144]
    0056fd54ldrsb x27, [x4]
    0056fd58b 0x56fd5c
    0056fd5c
    0056fd5cloc_56fd5c:
    0056fd5cstr x4, [sp+152]
    0056fd60movz x4, 66
    0056fd64str x4, [sp+160]
    0056fd68str x4, [sp+168]
    0056fd6cldr x4, [sp+232]
    0056fd70ldrsb x27, [x4]
    0056fd74ldr x0, [x4+8]
    0056fd78str x0, [sp+136]
    0056fd7cldr x1, [sp+152]
    0056fd80ldr x2, [sp+160]
    0056fd84ldr x3, [sp+168]
    0056fd88bl crypto/internal/fips140/nistec/fiat.(*P521Element).SetBytes
    0056fd8cldr x4, [sp+232]
    0056fd90ldrsb x27, [x4]
    0056fd94ldr x0, [x4+16]
    0056fd98str x0, [sp+128]
    0056fd9cbl crypto/internal/fips140/nistec/fiat.(*P521Element).One
    0056fda0ldr x0, [sp+232]
    0056fda4str x0, [sp+120]
    0056fda8ldur x29, [sp-8]
    0056fdacldr x30, [sp], 224
    0056fdb0ret x30
    0056fdb4
    0056fdb4loc_56fdb4:
    0056fdb4str x0, [sp+8]
    0056fdb8mov x3, x30
    0056fdbcbl runtime.morestack_noctxt.abi0
    0056fdc0ldr x0, [sp+8]
    0056fdc4b 0x56f4a0
    0056fdc8udf 0
    0056fdccudf 0
    0056f4a0
    0056fdd0
    0056fdd0crypto/internal/fips140/nistec.(*P521Point).Set: ; void crypto/internal/fips140/nistec.(*P521Point).Set(crypto/internal/fips140/nistec.P521Point * p, crypto/internal/fips140/nistec.P521Point * q)
    0056fdd0ldr x16, [x28+16]
    0056fdd4subs xzr, sp, x16
    0056fdd8b.ls 0x56fe80
    0056fddcstr x30, [sp-96]!
    0056fde0stur x29, [sp-8]
    0056fde4sub x29, sp, 8
    0056fde8str x0, [sp+104]
    0056fdecstr x1, [sp+112]
    0056fdf0str xzr, [sp+32]
    0056fdf4ldr x2, [sp+104]
    0056fdf8ldrsb x27, [x2]
    0056fdfcldr x2, [x2]
    0056fe00str x2, [sp+80]
    0056fe04ldr x2, [sp+112]
    0056fe08ldrsb x27, [x2]
    0056fe0cldr x1, [x2]
    0056fe10str x1, [sp+72]
    0056fe14ldr x0, [sp+80]
    0056fe18bl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    0056fe1cldr x2, [sp+104]
    0056fe20ldrsb x27, [x2]
    0056fe24ldr x2, [x2+8]
    0056fe28str x2, [sp+64]
    0056fe2cldr x2, [sp+112]
    0056fe30ldrsb x27, [x2]
    0056fe34ldr x1, [x2+8]
    0056fe38str x1, [sp+56]
    0056fe3cldr x0, [sp+64]
    0056fe40bl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    0056fe44ldr x2, [sp+104]
    0056fe48ldrsb x27, [x2]
    0056fe4cldr x2, [x2+16]
    0056fe50str x2, [sp+48]
    0056fe54ldr x2, [sp+112]
    0056fe58ldrsb x27, [x2]
    0056fe5cldr x1, [x2+16]
    0056fe60str x1, [sp+40]
    0056fe64ldr x0, [sp+48]
    0056fe68bl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    0056fe6cldr x0, [sp+104]
    0056fe70str x0, [sp+32]
    0056fe74ldur x29, [sp-8]
    0056fe78ldr x30, [sp], 96
    0056fe7cret x30
    0056fe80
    0056fe80loc_56fe80:
    0056fe80stp x0, x1, [sp+8]
    0056fe84mov x3, x30
    0056fe88bl runtime.morestack_noctxt.abi0
    0056fe8cldp x0, x1, [sp+8]
    0056fe90b 0x56fdd0
    0056fe94udf 0
    0056fe98udf 0
    0056fe9cudf 0
    0056fdd0
    0056fea0
    0056fea0crypto/internal/fips140/nistec.(*P521Point).SetBytes: ; void crypto/internal/fips140/nistec.(*P521Point).SetBytes(crypto/internal/fips140/nistec.P521Point * p, struct []uint8 b)
    0056fea0ldr x16, [x28+16]
    0056fea4sub x17, sp, 624
    0056fea8subs xzr, x17, x16
    0056feacb.ls 0x5705a4
    0056feb0sub x20, sp, 752
    0056feb4stp x29, x30, [x20-8]
    0056feb8add sp, x20, 0
    0056febcsub x29, sp, 8
    0056fec0str x0, [sp+760]
    0056fec4str x1, [sp+768]
    0056fec8str x2, [sp+776]
    0056feccstr x3, [sp+784]
    0056fed0str xzr, [sp+456]
    0056fed4stp xzr, xzr, [sp+440]
    0056fed8ldr x4, [sp+776]
    0056fedcstr x4, [sp+432]
    0056fee0subs xzr, x4, 1
    0056fee4cset x4, eq
    0056fee8strb w4, [sp+55]
    0056feecb.eq 0x56fef4
    0056fef0b 0x56ff1c
    0056fef4
    0056fef4loc_56fef4:
    0056fef4ldr x1, [sp+776]
    0056fef8ldr x4, [sp+768]
    0056fefcsubs xzr, x1, 0
    0056ff00b.hi 0x56ff08
    0056ff04b 0x570598
    0056ff08
    0056ff08loc_56ff08:
    0056ff08ldrb w4, [x4]
    0056ff0csubs wzr, w4, 0
    0056ff10cset x4, eq
    0056ff14strb w4, [sp+55]
    0056ff18b 0x56ff20
    0056ff1c
    0056ff1cloc_56ff1c:
    0056ff1cb 0x56ff20
    0056ff20
    0056ff20loc_56ff20:
    0056ff20ldrb w4, [sp+55]
    0056ff24tbnz w4, 0, 0x56ff2c
    0056ff28b 0x56ff70
    0056ff2c
    0056ff2cloc_56ff2c:
    0056ff2cb 0x56ff30
    0056ff30
    0056ff30loc_56ff30:
    0056ff30bl crypto/internal/fips140/nistec.NewP521Point
    0056ff34str x0, [sp+696]
    0056ff38ldr x1, [sp+760]
    0056ff3cmov x2, x0
    0056ff40mov x0, x1
    0056ff44mov x1, x2
    0056ff48bl crypto/internal/fips140/nistec.(*P521Point).Set
    0056ff4cstr x0, [sp+688]
    0056ff50str x0, [sp+456]
    0056ff54stp xzr, xzr, [sp+440]
    0056ff58ldr x0, [sp+456]
    0056ff5cmov x1, xzr
    0056ff60mov x2, xzr
    0056ff64ldp x29, x30, [sp-8]
    0056ff68add sp, sp, 752
    0056ff6cret x30
    0056ff70
    0056ff70loc_56ff70:
    0056ff70ldr x4, [sp+776]
    0056ff74str x4, [sp+424]
    0056ff78subs xzr, x4, 133
    0056ff7ccset x4, eq
    0056ff80strb w4, [sp+54]
    0056ff84b.eq 0x56ff8c
    0056ff88b 0x56ffb4
    0056ff8c
    0056ff8cloc_56ff8c:
    0056ff8cldr x1, [sp+776]
    0056ff90ldr x4, [sp+768]
    0056ff94subs xzr, x1, 0
    0056ff98b.hi 0x56ffa0
    0056ff9cb 0x570590
    0056ffa0
    0056ffa0loc_56ffa0:
    0056ffa0ldrb w4, [x4]
    0056ffa4subs wzr, w4, 4
    0056ffa8cset x4, eq
    0056ffacstrb w4, [sp+54]
    0056ffb0b 0x56ffb8
    0056ffb4
    0056ffb4loc_56ffb4:
    0056ffb4b 0x56ffb8
    0056ffb8
    0056ffb8loc_56ffb8:
    0056ffb8ldrb w4, [sp+54]
    0056ffbctbnz w4, 0, 0x56ffc4
    0056ffc0b 0x570238
    0056ffc4
    0056ffc4loc_56ffc4:
    0056ffc4b 0x56ffc8
    0056ffc8
    0056ffc8loc_56ffc8:
    0056ffc8stp xzr, xzr, [sp+344]
    0056ffccstp xzr, xzr, [sp+360]
    0056ffd0stp xzr, xzr, [sp+376]
    0056ffd4stp xzr, xzr, [sp+392]
    0056ffd8str xzr, [sp+408]
    0056ffdcadd x4, sp, 344
    0056ffe0str x4, [sp+680]
    0056ffe4ldr x2, [sp+784]
    0056ffe8ldr x4, [sp+768]
    0056ffecsubs xzr, x2, 67
    0056fff0b.hs 0x56fff8
    0056fff4b 0x570588
    0056fff8
    0056fff8loc_56fff8:
    0056fff8b 0x56fffc
    0056fffc
    0056fffcloc_56fffc:
    0056fffcsub x5, x2, 1
    00570000sub x6, xzr, x5
    00570004sbfm x6, x6, 63, 63
    00570008and x6, x6, 1
    0057000cadd x4, x4, x6
    00570010str x4, [sp+656]
    00570014movz x4, 66
    00570018str x4, [sp+664]
    0057001cstr x5, [sp+672]
    00570020str xzr, [sp+648]
    00570024add x27, sp, 632
    00570028stp xzr, xzr, [x27]
    0057002cldr x1, [sp+656]
    00570030ldr x2, [sp+664]
    00570034ldr x3, [sp+672]
    00570038ldr x0, [sp+680]
    0057003cbl crypto/internal/fips140/nistec/fiat.(*P521Element).SetBytes
    00570040str x0, [sp+648]
    00570044str x1, [sp+632]
    00570048str x2, [sp+640]
    0057004cldr x4, [sp+648]
    00570050str x4, [sp+576]
    00570054ldr x4, [sp+632]
    00570058ldr x5, [sp+640]
    0057005cstr x4, [sp+560]
    00570060str x5, [sp+568]
    00570064ldr x4, [sp+576]
    00570068str x4, [sp+488]
    0057006cldr x4, [sp+568]
    00570070ldr x5, [sp+560]
    00570074str x5, [sp+536]
    00570078str x4, [sp+544]
    0057007ccbnz x5, 0x570084
    00570080b 0x5700a8
    00570084
    00570084loc_570084:
    00570084str xzr, [sp+456]
    00570088ldr x1, [sp+536]
    0057008cldr x2, [sp+544]
    00570090str x1, [sp+440]
    00570094str x2, [sp+448]
    00570098ldr x0, [sp+456]
    0057009cldp x29, x30, [sp-8]
    005700a0add sp, sp, 752
    005700a4ret x30
    005700a8
    005700a8loc_5700a8:
    005700a8stp xzr, xzr, [sp+272]
    005700acstp xzr, xzr, [sp+288]
    005700b0stp xzr, xzr, [sp+304]
    005700b4stp xzr, xzr, [sp+320]
    005700b8str xzr, [sp+336]
    005700bcadd x4, sp, 272
    005700c0str x4, [sp+648]
    005700c4ldr x1, [sp+776]
    005700c8ldr x4, [sp+768]
    005700ccldr x5, [sp+784]
    005700d0b 0x5700d4
    005700d4
    005700d4loc_5700d4:
    005700d4subs xzr, x1, 67
    005700d8b.hs 0x5700e0
    005700dcb 0x570580
    005700e0
    005700e0loc_5700e0:
    005700e0sub x5, x5, 67
    005700e4sub x6, xzr, x5
    005700e8sbfm x6, x6, 63, 63
    005700ecsub x7, x1, 67
    005700f0movz x8, 67
    005700f4and x6, x6, x8
    005700f8add x4, x4, x6
    005700fcstr x4, [sp+656]
    00570100str x7, [sp+664]
    00570104str x5, [sp+672]
    00570108str xzr, [sp+680]
    0057010cadd x27, sp, 632
    00570110stp xzr, xzr, [x27]
    00570114ldr x1, [sp+656]
    00570118ldr x2, [sp+664]
    0057011cldr x3, [sp+672]
    00570120ldr x0, [sp+648]
    00570124bl crypto/internal/fips140/nistec/fiat.(*P521Element).SetBytes
    00570128str x0, [sp+680]
    0057012cstr x1, [sp+632]
    00570130str x2, [sp+640]
    00570134ldr x4, [sp+680]
    00570138str x4, [sp+552]
    0057013cldr x4, [sp+632]
    00570140ldr x5, [sp+640]
    00570144str x4, [sp+728]
    00570148str x5, [sp+736]
    0057014cldr x4, [sp+552]
    00570150str x4, [sp+472]
    00570154ldr x4, [sp+736]
    00570158ldr x5, [sp+728]
    0057015cstr x5, [sp+536]
    00570160str x4, [sp+544]
    00570164cbnz x5, 0x57016c
    00570168b 0x570190
    0057016c
    0057016cloc_57016c:
    0057016cstr xzr, [sp+456]
    00570170ldr x1, [sp+536]
    00570174ldr x2, [sp+544]
    00570178str x1, [sp+440]
    0057017cstr x2, [sp+448]
    00570180ldr x0, [sp+456]
    00570184ldp x29, x30, [sp-8]
    00570188add sp, sp, 752
    0057018cret x30
    00570190
    00570190loc_570190:
    00570190ldr x1, [sp+472]
    00570194ldr x0, [sp+488]
    00570198bl crypto/internal/fips140/nistec.p521CheckOnCurve
    0057019cstr x0, [sp+520]
    005701a0str x1, [sp+528]
    005701a4cbnz x0, 0x5701ac
    005701a8b 0x5701d0
    005701ac
    005701acloc_5701ac:
    005701acstr xzr, [sp+456]
    005701b0ldr x1, [sp+520]
    005701b4ldr x2, [sp+528]
    005701b8str x1, [sp+440]
    005701bcstr x2, [sp+448]
    005701c0ldr x0, [sp+456]
    005701c4ldp x29, x30, [sp-8]
    005701c8add sp, sp, 752
    005701ccret x30
    005701d0
    005701d0loc_5701d0:
    005701d0ldr x2, [sp+760]
    005701d4ldrsb x27, [x2]
    005701d8ldr x0, [x2]
    005701dcstr x0, [sp+624]
    005701e0ldr x1, [sp+488]
    005701e4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    005701e8ldr x2, [sp+760]
    005701ecldrsb x27, [x2]
    005701f0ldr x0, [x2+8]
    005701f4str x0, [sp+616]
    005701f8ldr x1, [sp+472]
    005701fcbl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    00570200ldr x2, [sp+760]
    00570204ldrsb x27, [x2]
    00570208ldr x0, [x2+16]
    0057020cstr x0, [sp+608]
    00570210bl crypto/internal/fips140/nistec/fiat.(*P521Element).One
    00570214ldr x2, [sp+760]
    00570218str x2, [sp+456]
    0057021cstp xzr, xzr, [sp+440]
    00570220ldr x0, [sp+456]
    00570224mov x1, xzr
    00570228mov x2, xzr
    0057022cldp x29, x30, [sp-8]
    00570230add sp, sp, 752
    00570234ret x30
    00570238
    00570238loc_570238:
    00570238ldr x4, [sp+776]
    0057023cstr x4, [sp+416]
    00570240subs xzr, x4, 67
    00570244cset x4, eq
    00570248strb w4, [sp+53]
    0057024cb.eq 0x570254
    00570250b 0x5702b8
    00570254
    00570254loc_570254:
    00570254ldr x1, [sp+776]
    00570258ldr x4, [sp+768]
    0057025csubs xzr, x1, 0
    00570260b.hi 0x570268
    00570264b 0x570578
    00570268
    00570268loc_570268:
    00570268ldrb w4, [x4]
    0057026csubs wzr, w4, 2
    00570270cset x4, eq
    00570274strb w4, [sp+52]
    00570278b.eq 0x570280
    0057027cb 0x570284
    00570280
    00570280loc_570280:
    00570280b 0x5702ac
    00570284
    00570284loc_570284:
    00570284ldr x1, [sp+776]
    00570288ldr x4, [sp+768]
    0057028csubs xzr, x1, 0
    00570290b.hi 0x570298
    00570294b 0x570570
    00570298
    00570298loc_570298:
    00570298ldrb w4, [x4]
    0057029csubs wzr, w4, 3
    005702a0cset x4, eq
    005702a4strb w4, [sp+52]
    005702a8b 0x5702ac
    005702ac
    005702acloc_5702ac:
    005702acldrb w4, [sp+52]
    005702b0strb w4, [sp+53]
    005702b4b 0x5702bc
    005702b8
    005702b8loc_5702b8:
    005702b8b 0x5702bc
    005702bc
    005702bcloc_5702bc:
    005702bcldrb w4, [sp+53]
    005702c0tbnz w4, 0, 0x5702c8
    005702c4b 0x570518
    005702c8
    005702c8loc_5702c8:
    005702c8b 0x5702cc
    005702cc
    005702ccloc_5702cc:
    005702ccstp xzr, xzr, [sp+200]
    005702d0stp xzr, xzr, [sp+216]
    005702d4stp xzr, xzr, [sp+232]
    005702d8stp xzr, xzr, [sp+248]
    005702dcstr xzr, [sp+264]
    005702e0add x4, sp, 200
    005702e4str x4, [sp+680]
    005702e8ldr x1, [sp+776]
    005702ecldr x4, [sp+768]
    005702f0ldr x5, [sp+784]
    005702f4b 0x5702f8
    005702f8
    005702f8loc_5702f8:
    005702f8subs xzr, x1, 1
    005702fcb.hs 0x570304
    00570300b 0x570568
    00570304
    00570304loc_570304:
    00570304sub x5, x5, 1
    00570308sub x6, xzr, x5
    0057030csub x7, x1, 1
    00570310sbfm x6, x6, 63, 63
    00570314and x6, x6, 1
    00570318add x4, x4, x6
    0057031cstr x4, [sp+656]
    00570320str x7, [sp+664]
    00570324str x5, [sp+672]
    00570328str xzr, [sp+648]
    0057032cadd x27, sp, 632
    00570330stp xzr, xzr, [x27]
    00570334ldr x1, [sp+656]
    00570338ldr x2, [sp+664]
    0057033cldr x3, [sp+672]
    00570340ldr x0, [sp+680]
    00570344bl crypto/internal/fips140/nistec/fiat.(*P521Element).SetBytes
    00570348str x0, [sp+648]
    0057034cstr x1, [sp+632]
    00570350str x2, [sp+640]
    00570354ldr x4, [sp+648]
    00570358str x4, [sp+720]
    0057035cldr x4, [sp+632]
    00570360ldr x5, [sp+640]
    00570364str x4, [sp+704]
    00570368str x5, [sp+712]
    0057036cldr x4, [sp+720]
    00570370str x4, [sp+480]
    00570374ldr x4, [sp+712]
    00570378ldr x5, [sp+704]
    0057037cstr x5, [sp+504]
    00570380str x4, [sp+512]
    00570384cbnz x5, 0x57038c
    00570388b 0x5703b0
    0057038c
    0057038cloc_57038c:
    0057038cstr xzr, [sp+456]
    00570390ldr x1, [sp+504]
    00570394ldr x2, [sp+512]
    00570398str x1, [sp+440]
    0057039cstr x2, [sp+448]
    005703a0ldr x0, [sp+456]
    005703a4ldp x29, x30, [sp-8]
    005703a8add sp, sp, 752
    005703acret x30
    005703b0
    005703b0loc_5703b0:
    005703b0stp xzr, xzr, [sp+128]
    005703b4stp xzr, xzr, [sp+144]
    005703b8stp xzr, xzr, [sp+160]
    005703bcstp xzr, xzr, [sp+176]
    005703c0str xzr, [sp+192]
    005703c4add x0, sp, 128
    005703c8str x0, [sp+648]
    005703ccldr x1, [sp+480]
    005703d0bl crypto/internal/fips140/nistec.p521Polynomial
    005703d4str x0, [sp+464]
    005703d8mov x1, x0
    005703dcbl crypto/internal/fips140/nistec.p521Sqrt
    005703e0strb w0, [sp+52]
    005703e4tbnz w0, 0, 0x5703ec
    005703e8b 0x5704dc
    005703ec
    005703ecloc_5703ec:
    005703ecstp xzr, xzr, [sp+56]
    005703f0stp xzr, xzr, [sp+72]
    005703f4stp xzr, xzr, [sp+88]
    005703f8stp xzr, xzr, [sp+104]
    005703fcstr xzr, [sp+120]
    00570400add x1, sp, 56
    00570404str x1, [sp+496]
    00570408ldr x2, [sp+464]
    0057040cmov x0, x1
    00570410bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    00570414ldr x0, [sp+464]
    00570418bl crypto/internal/fips140/nistec/fiat.(*P521Element).Bytes
    0057041cstr x0, [sp+656]
    00570420str x1, [sp+664]
    00570424str x2, [sp+672]
    00570428subs xzr, x1, 65
    0057042cb.hi 0x570434
    00570430b 0x570560
    00570434
    00570434loc_570434:
    00570434ldrb w4, [x0+65]
    00570438and x4, x4, 1
    0057043cldr x1, [sp+776]
    00570440ldr x5, [sp+768]
    00570444subs xzr, x1, 0
    00570448b.hi 0x570450
    0057044cb 0x570558
    00570450
    00570450loc_570450:
    00570450ldrb w5, [x5]
    00570454and x5, x5, 1
    00570458eor x4, x4, x5
    0057045cstrb w4, [sp+51]
    00570460ldr x1, [sp+496]
    00570464ldr x2, [sp+464]
    00570468ldr x0, [sp+464]
    0057046cubfm x3, x4, 0, 7
    00570470bl crypto/internal/fips140/nistec/fiat.(*P521Element).Select
    00570474ldr x4, [sp+760]
    00570478ldrsb x27, [x4]
    0057047cldr x0, [x4]
    00570480str x0, [sp+600]
    00570484ldr x1, [sp+480]
    00570488bl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    0057048cldr x4, [sp+760]
    00570490ldrsb x27, [x4]
    00570494ldr x0, [x4+8]
    00570498str x0, [sp+592]
    0057049cldr x1, [sp+464]
    005704a0bl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    005704a4ldr x4, [sp+760]
    005704a8ldrsb x27, [x4]
    005704acldr x0, [x4+16]
    005704b0str x0, [sp+584]
    005704b4bl crypto/internal/fips140/nistec/fiat.(*P521Element).One
    005704b8ldr x4, [sp+760]
    005704bcstr x4, [sp+456]
    005704c0stp xzr, xzr, [sp+440]
    005704c4ldr x0, [sp+456]
    005704c8mov x1, xzr
    005704ccmov x2, xzr
    005704d0ldp x29, x30, [sp-8]
    005704d4add sp, sp, 752
    005704d8ret x30
    005704dc
    005704dcloc_5704dc:
    005704dcadrp x0, 0x153000
    005704e0add x0, x0, 1070
    005704e4movz x1, 38
    005704e8bl errors.New
    005704ecstr x0, [sp+632]
    005704f0str x1, [sp+640]
    005704f4str xzr, [sp+456]
    005704f8ldr x1, [sp+632]
    005704fcldr x2, [sp+640]
    00570500str x1, [sp+440]
    00570504str x2, [sp+448]
    00570508ldr x0, [sp+456]
    0057050cldp x29, x30, [sp-8]
    00570510add sp, sp, 752
    00570514ret x30
    00570518
    00570518loc_570518:
    00570518b 0x57051c
    0057051c
    0057051cloc_57051c:
    0057051cadrp x0, 0x14b000
    00570520add x0, x0, 1426
    00570524movz x1, 27
    00570528bl errors.New
    0057052cstr x0, [sp+632]
    00570530str x1, [sp+640]
    00570534str xzr, [sp+456]
    00570538ldr x1, [sp+632]
    0057053cldr x2, [sp+640]
    00570540str x1, [sp+440]
    00570544str x2, [sp+448]
    00570548ldr x0, [sp+456]
    0057054cldp x29, x30, [sp-8]
    00570550add sp, sp, 752
    00570554ret x30
    00570558
    00570558loc_570558:
    00570558mov x0, xzr
    0057055cbl runtime.panicIndex
    00570560
    00570560loc_570560:
    00570560movz x0, 65
    00570564bl runtime.panicIndex
    00570568
    00570568loc_570568:
    00570568orr x0, xzr, 1
    0057056cbl runtime.panicSliceB
    00570570
    00570570loc_570570:
    00570570mov x0, xzr
    00570574bl runtime.panicIndex
    00570578
    00570578loc_570578:
    00570578mov x0, xzr
    0057057cbl runtime.panicIndex
    00570580
    00570580loc_570580:
    00570580movz x0, 67
    00570584bl runtime.panicSliceB
    00570588
    00570588loc_570588:
    00570588movz x1, 67
    0057058cbl runtime.panicSliceAcap
    00570590
    00570590loc_570590:
    00570590mov x0, xzr
    00570594bl runtime.panicIndex
    00570598
    00570598loc_570598:
    00570598mov x0, xzr
    0057059cbl runtime.panicIndex
    005705a0hint
    005705a4
    005705a4loc_5705a4:
    005705a4stp x0, x1, [sp+8]
    005705a8stp x2, x3, [sp+24]
    005705acmov x3, x30
    005705b0bl runtime.morestack_noctxt.abi0
    005705b4ldp x0, x1, [sp+8]
    005705b8ldp x2, x3, [sp+24]
    005705bcb 0x56fea0
    0056fea0
    005705c0
    005705c0crypto/internal/fips140/nistec.p521B: ; void crypto/internal/fips140/nistec.p521B(void)
    005705c0ldr x16, [x28+16]
    005705c4subs xzr, sp, x16
    005705c8b.ls 0x570608
    005705ccstr x30, [sp-48]!
    005705d0stur x29, [sp-8]
    005705d4sub x29, sp, 8
    005705d8str xzr, [sp+32]
    005705dcadrp x0, 0x4db000
    005705e0add x0, x0, 2784
    005705e4adrp x1, 0x16a000
    005705e8add x1, x1, 624
    005705ecbl sync.(*Once).Do
    005705f0adrp x27, 0x4b1000
    005705f4ldr x0, [x27+440]
    005705f8str x0, [sp+32]
    005705fcldur x29, [sp-8]
    00570600ldr x30, [sp], 48
    00570604ret x30
    00570608
    00570608loc_570608:
    00570608mov x3, x30
    0057060cbl runtime.morestack_noctxt.abi0
    00570610b 0x5705c0
    00570614udf 0
    00570618udf 0
    0057061cudf 0
    005705c0
    00570620
    00570620crypto/internal/fips140/nistec.p521Polynomial: ; void crypto/internal/fips140/nistec.p521Polynomial(crypto/internal/fips140/nistec/fiat.P521Element * y2, crypto/internal/fips140/nistec/fiat.P521Element * x)
    00570620ldr x16, [x28+16]
    00570624sub x17, sp, 16
    00570628subs xzr, x17, x16
    0057062cb.ls 0x5706e0
    00570630str x30, [sp-144]!
    00570634stur x29, [sp-8]
    00570638sub x29, sp, 8
    0057063cstr x0, [sp+152]
    00570640str x1, [sp+160]
    00570644str xzr, [sp+104]
    00570648ldr x1, [sp+160]
    0057064cldr x0, [sp+152]
    00570650bl crypto/internal/fips140/nistec/fiat.(*P521Element).Square
    00570654ldr x1, [sp+152]
    00570658ldr x2, [sp+160]
    0057065cldr x0, [sp+152]
    00570660bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00570664stp xzr, xzr, [sp+32]
    00570668stp xzr, xzr, [sp+48]
    0057066cstp xzr, xzr, [sp+64]
    00570670stp xzr, xzr, [sp+80]
    00570674str xzr, [sp+96]
    00570678add x0, sp, 32
    0057067cstr x0, [sp+128]
    00570680ldr x1, [sp+160]
    00570684ldr x2, [sp+160]
    00570688bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    0057068cstr x0, [sp+112]
    00570690ldr x2, [sp+160]
    00570694mov x1, x0
    00570698bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    0057069cldr x1, [sp+152]
    005706a0ldr x2, [sp+112]
    005706a4ldr x0, [sp+152]
    005706a8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    005706acbl crypto/internal/fips140/nistec.p521B
    005706b0str x0, [sp+128]
    005706b4ldr x2, [sp+152]
    005706b8ldr x1, [sp+152]
    005706bcmov x3, x0
    005706c0mov x0, x2
    005706c4mov x2, x3
    005706c8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005706ccstr x0, [sp+120]
    005706d0str x0, [sp+104]
    005706d4ldur x29, [sp-8]
    005706d8ldr x30, [sp], 144
    005706dcret x30
    005706e0
    005706e0loc_5706e0:
    005706e0stp x0, x1, [sp+8]
    005706e4mov x3, x30
    005706e8bl runtime.morestack_noctxt.abi0
    005706ecldp x0, x1, [sp+8]
    005706f0b 0x570620
    005706f4udf 0
    005706f8udf 0
    005706fcudf 0
    00570620
    00570700
    00570700crypto/internal/fips140/nistec.p521CheckOnCurve: ; void crypto/internal/fips140/nistec.p521CheckOnCurve(crypto/internal/fips140/nistec/fiat.P521Element * x, crypto/internal/fips140/nistec/fiat.P521Element * y)
    00570700ldr x16, [x28+16]
    00570704sub x17, sp, 112
    00570708subs xzr, x17, x16
    0057070cb.ls 0x5707dc
    00570710str x30, [sp-240]!
    00570714stur x29, [sp-8]
    00570718sub x29, sp, 8
    0057071cstr x0, [sp+248]
    00570720str x1, [sp+256]
    00570724stp xzr, xzr, [sp+176]
    00570728stp xzr, xzr, [sp+96]
    0057072cstp xzr, xzr, [sp+112]
    00570730stp xzr, xzr, [sp+128]
    00570734stp xzr, xzr, [sp+144]
    00570738str xzr, [sp+160]
    0057073cadd x0, sp, 96
    00570740str x0, [sp+224]
    00570744ldr x1, [sp+248]
    00570748bl crypto/internal/fips140/nistec.p521Polynomial
    0057074cstr x0, [sp+192]
    00570750stp xzr, xzr, [sp+24]
    00570754stp xzr, xzr, [sp+40]
    00570758stp xzr, xzr, [sp+56]
    0057075cstp xzr, xzr, [sp+72]
    00570760str xzr, [sp+88]
    00570764add x0, sp, 24
    00570768str x0, [sp+224]
    0057076cldr x1, [sp+256]
    00570770bl crypto/internal/fips140/nistec/fiat.(*P521Element).Square
    00570774str x0, [sp+200]
    00570778ldr x2, [sp+192]
    0057077cmov x1, x0
    00570780mov x0, x2
    00570784bl crypto/internal/fips140/nistec/fiat.(*P521Element).Equal
    00570788str x0, [sp+168]
    0057078csubs xzr, x0, 1
    00570790b.ne 0x570798
    00570794b 0x5707c4
    00570798
    00570798loc_570798:
    00570798adrp x0, 0x148000
    0057079cadd x0, x0, 3537
    005707a0movz x1, 23
    005707a4bl errors.New
    005707a8str x0, [sp+208]
    005707acstr x1, [sp+216]
    005707b0str x0, [sp+176]
    005707b4str x1, [sp+184]
    005707b8ldur x29, [sp-8]
    005707bcldr x30, [sp], 240
    005707c0ret x30
    005707c4
    005707c4loc_5707c4:
    005707c4stp xzr, xzr, [sp+176]
    005707c8mov x0, xzr
    005707ccmov x1, xzr
    005707d0ldur x29, [sp-8]
    005707d4ldr x30, [sp], 240
    005707d8ret x30
    005707dc
    005707dcloc_5707dc:
    005707dcstp x0, x1, [sp+8]
    005707e0mov x3, x30
    005707e4bl runtime.morestack_noctxt.abi0
    005707e8ldp x0, x1, [sp+8]
    005707ecb 0x570700
    00570700
    005707f0
    005707f0crypto/internal/fips140/nistec.(*P521Point).Bytes: ; void crypto/internal/fips140/nistec.(*P521Point).Bytes(crypto/internal/fips140/nistec.P521Point * p)
    005707f0ldr x16, [x28+16]
    005707f4subs xzr, sp, x16
    005707f8b.ls 0x570870
    005707fcstr x30, [sp-96]!
    00570800stur x29, [sp-8]
    00570804sub x29, sp, 8
    00570808str x0, [sp+104]
    0057080cstr xzr, [sp+32]
    00570810stp xzr, xzr, [sp+40]
    00570814adrp x0, 0x96000
    00570818add x0, x0, 672
    0057081cbl runtime.newobject
    00570820str x0, [sp+80]
    00570824mov x20, x0
    00570828adr x27, 16
    0057082cstp x29, x27, [sp-24]
    00570830sub x29, sp, 24
    00570834bl fn_87cf0
    00570838sub x29, sp, 8
    0057083cstur xzr, [x0+125]
    00570840ldr x0, [sp+104]
    00570844ldr x1, [sp+80]
    00570848bl crypto/internal/fips140/nistec.(*P521Point).bytes
    0057084cstr x0, [sp+56]
    00570850str x1, [sp+64]
    00570854str x2, [sp+72]
    00570858str x0, [sp+32]
    0057085cstr x1, [sp+40]
    00570860str x2, [sp+48]
    00570864ldur x29, [sp-8]
    00570868ldr x30, [sp], 96
    0057086cret x30
    00570870
    00570870loc_570870:
    00570870str x0, [sp+8]
    00570874mov x3, x30
    00570878bl runtime.morestack_noctxt.abi0
    0057087cldr x0, [sp+8]
    00570880b 0x5707f0
    00570884udf 0
    00570888udf 0
    0057088cudf 0
    005707f0
    00570890
    00570890crypto/internal/fips140/nistec.(*P521Point).bytes: ; void crypto/internal/fips140/nistec.(*P521Point).bytes(crypto/internal/fips140/nistec.P521Point * p, uint8[133] * out)
    00570890ldr x16, [x28+16]
    00570894sub x17, sp, 416
    00570898subs xzr, x17, x16
    0057089cb.ls 0x570b9c
    005708a0sub x20, sp, 544
    005708a4stp x29, x30, [x20-8]
    005708a8add sp, x20, 0
    005708acsub x29, sp, 8
    005708b0str x0, [sp+552]
    005708b4str x1, [sp+560]
    005708b8str xzr, [sp+312]
    005708bcstp xzr, xzr, [sp+320]
    005708c0ldr x1, [sp+552]
    005708c4ldrsb x27, [x1]
    005708c8ldr x0, [x1+16]
    005708ccstr x0, [sp+520]
    005708d0bl crypto/internal/fips140/nistec/fiat.(*P521Element).IsZero
    005708d4str x0, [sp+56]
    005708d8subs xzr, x0, 1
    005708dcb.eq 0x5708e4
    005708e0b 0x570938
    005708e4
    005708e4loc_5708e4:
    005708e4ldr x3, [sp+560]
    005708e8ldrsb x27, [x3]
    005708ecb 0x5708f0
    005708f0
    005708f0loc_5708f0:
    005708f0b 0x5708f4
    005708f4
    005708f4loc_5708f4:
    005708f4str x3, [sp+408]
    005708f8str xzr, [sp+416]
    005708fcmovz x2, 133
    00570900str x2, [sp+424]
    00570904b 0x570908
    00570908
    00570908loc_570908:
    00570908strb wzr, [x3]
    0057090cstr x3, [sp+384]
    00570910orr x1, xzr, 1
    00570914str x1, [sp+392]
    00570918str x2, [sp+400]
    0057091cstr x3, [sp+312]
    00570920str x1, [sp+320]
    00570924str x2, [sp+328]
    00570928ldr x0, [sp+312]
    0057092cldp x29, x30, [sp-8]
    00570930add sp, sp, 544
    00570934ret x30
    00570938
    00570938loc_570938:
    00570938stp xzr, xzr, [sp+240]
    0057093cstp xzr, xzr, [sp+256]
    00570940stp xzr, xzr, [sp+272]
    00570944stp xzr, xzr, [sp+288]
    00570948str xzr, [sp+304]
    0057094cadd x2, sp, 240
    00570950str x2, [sp+528]
    00570954ldr x2, [sp+552]
    00570958ldrsb x27, [x2]
    0057095cldr x1, [x2+16]
    00570960str x1, [sp+512]
    00570964ldr x0, [sp+528]
    00570968bl crypto/internal/fips140/nistec/fiat.(*P521Element).Invert
    0057096cstr x0, [sp+336]
    00570970stp xzr, xzr, [sp+168]
    00570974stp xzr, xzr, [sp+184]
    00570978stp xzr, xzr, [sp+200]
    0057097cstp xzr, xzr, [sp+216]
    00570980str xzr, [sp+232]
    00570984add x2, sp, 168
    00570988str x2, [sp+528]
    0057098cldr x2, [sp+552]
    00570990ldrsb x27, [x2]
    00570994ldr x1, [x2]
    00570998str x1, [sp+504]
    0057099cldr x2, [sp+336]
    005709a0ldr x0, [sp+528]
    005709a4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005709a8str x0, [sp+352]
    005709acstp xzr, xzr, [sp+96]
    005709b0stp xzr, xzr, [sp+112]
    005709b4stp xzr, xzr, [sp+128]
    005709b8stp xzr, xzr, [sp+144]
    005709bcstr xzr, [sp+160]
    005709c0add x2, sp, 96
    005709c4str x2, [sp+528]
    005709c8ldr x2, [sp+552]
    005709ccldrsb x27, [x2]
    005709d0ldr x1, [x2+8]
    005709d4str x1, [sp+496]
    005709d8ldr x2, [sp+336]
    005709dcldr x0, [sp+528]
    005709e0bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005709e4str x0, [sp+344]
    005709e8ldr x2, [sp+560]
    005709ecldrsb x27, [x2]
    005709f0b 0x5709f4
    005709f4
    005709f4loc_5709f4:
    005709f4b 0x5709f8
    005709f8
    005709f8loc_5709f8:
    005709f8str x2, [sp+384]
    005709fcstr xzr, [sp+392]
    00570a00movz x1, 133
    00570a04str x1, [sp+400]
    00570a08b 0x570a0c
    00570a0c
    00570a0cloc_570a0c:
    00570a0corr x3, xzr, 4
    00570a10strb w3, [x2]
    00570a14str x2, [sp+360]
    00570a18orr x2, xzr, 1
    00570a1cstr x2, [sp+368]
    00570a20str x1, [sp+376]
    00570a24ldr x0, [sp+352]
    00570a28bl crypto/internal/fips140/nistec/fiat.(*P521Element).Bytes
    00570a2cstr x0, [sp+384]
    00570a30str x1, [sp+392]
    00570a34str x2, [sp+400]
    00570a38ldr x2, [sp+376]
    00570a3cldr x0, [sp+360]
    00570a40ldr x1, [sp+368]
    00570a44str x0, [sp+472]
    00570a48str x1, [sp+480]
    00570a4cstr x2, [sp+488]
    00570a50ldr x3, [sp+392]
    00570a54add x1, x1, x3
    00570a58str x1, [sp+88]
    00570a5csubs xzr, x2, x1
    00570a60b.hs 0x570a68
    00570a64b 0x570a70
    00570a68
    00570a68loc_570a68:
    00570a68str x1, [sp+480]
    00570a6cb 0x570a90
    00570a70
    00570a70loc_570a70:
    00570a70ldr x3, [sp+392]
    00570a74adrp x4, 0x85000
    00570a78add x4, x4, 3072
    00570a7cbl runtime.growslice
    00570a80str x0, [sp+472]
    00570a84str x1, [sp+480]
    00570a88str x2, [sp+488]
    00570a8cb 0x570a90
    00570a90
    00570a90loc_570a90:
    00570a90ldr x3, [sp+392]
    00570a94str x3, [sp+80]
    00570a98ldr x3, [sp+88]
    00570a9cldr x4, [sp+392]
    00570aa0sub x3, x3, x4
    00570aa4ldr x4, [sp+472]
    00570aa8add x0, x4, x3
    00570aacstr x0, [sp+464]
    00570ab0ldr x2, [sp+80]
    00570ab4ldr x1, [sp+384]
    00570ab8bl runtime.memmove
    00570abcldr x3, [sp+472]
    00570ac0ldr x4, [sp+480]
    00570ac4ldr x5, [sp+488]
    00570ac8str x3, [sp+360]
    00570accstr x4, [sp+368]
    00570ad0str x5, [sp+376]
    00570ad4ldr x0, [sp+344]
    00570ad8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Bytes
    00570adcstr x0, [sp+384]
    00570ae0str x1, [sp+392]
    00570ae4str x2, [sp+400]
    00570ae8ldr x2, [sp+376]
    00570aecldr x0, [sp+360]
    00570af0ldr x3, [sp+368]
    00570af4str x0, [sp+440]
    00570af8str x3, [sp+448]
    00570afcstr x2, [sp+456]
    00570b00ldr x4, [sp+392]
    00570b04add x1, x3, x4
    00570b08str x1, [sp+72]
    00570b0csubs xzr, x2, x1
    00570b10b.hs 0x570b18
    00570b14b 0x570b20
    00570b18
    00570b18loc_570b18:
    00570b18str x1, [sp+448]
    00570b1cb 0x570b40
    00570b20
    00570b20loc_570b20:
    00570b20ldr x3, [sp+392]
    00570b24adrp x4, 0x85000
    00570b28add x4, x4, 3072
    00570b2cbl runtime.growslice
    00570b30str x0, [sp+440]
    00570b34str x1, [sp+448]
    00570b38str x2, [sp+456]
    00570b3cb 0x570b40
    00570b40
    00570b40loc_570b40:
    00570b40ldr x3, [sp+392]
    00570b44str x3, [sp+64]
    00570b48ldr x3, [sp+72]
    00570b4cldr x4, [sp+392]
    00570b50sub x3, x3, x4
    00570b54ldr x4, [sp+440]
    00570b58add x0, x4, x3
    00570b5cstr x0, [sp+432]
    00570b60ldr x2, [sp+64]
    00570b64ldr x1, [sp+384]
    00570b68bl runtime.memmove
    00570b6cldr x0, [sp+440]
    00570b70ldr x1, [sp+448]
    00570b74ldr x2, [sp+456]
    00570b78str x0, [sp+360]
    00570b7cstr x1, [sp+368]
    00570b80str x2, [sp+376]
    00570b84str x0, [sp+312]
    00570b88str x1, [sp+320]
    00570b8cstr x2, [sp+328]
    00570b90ldp x29, x30, [sp-8]
    00570b94add sp, sp, 544
    00570b98ret x30
    00570b9c
    00570b9cloc_570b9c:
    00570b9cstp x0, x1, [sp+8]
    00570ba0mov x3, x30
    00570ba4bl runtime.morestack_noctxt.abi0
    00570ba8ldp x0, x1, [sp+8]
    00570bacb 0x570890
    00570890
    00570bb0
    00570bb0crypto/internal/fips140/nistec.(*P521Point).BytesX: ; void crypto/internal/fips140/nistec.(*P521Point).BytesX(crypto/internal/fips140/nistec.P521Point * p)
    00570bb0ldr x16, [x28+16]
    00570bb4sub x17, sp, 48
    00570bb8subs xzr, x17, x16
    00570bbcb.ls 0x570c94
    00570bc0str x30, [sp-176]!
    00570bc4stur x29, [sp-8]
    00570bc8sub x29, sp, 8
    00570bccstr x0, [sp+184]
    00570bd0str xzr, [sp+56]
    00570bd4stp xzr, xzr, [sp+64]
    00570bd8stp xzr, xzr, [sp+40]
    00570bdcadrp x0, 0x96000
    00570be0add x0, x0, 768
    00570be4bl runtime.newobject
    00570be8str x0, [sp+160]
    00570becstp xzr, xzr, [x0]
    00570bf0stp xzr, xzr, [x0+16]
    00570bf4stp xzr, xzr, [x0+32]
    00570bf8stp xzr, xzr, [x0+48]
    00570bfcstur xzr, [x0+58]
    00570c00str xzr, [sp+96]
    00570c04stp xzr, xzr, [sp+104]
    00570c08stp xzr, xzr, [sp+80]
    00570c0cldr x0, [sp+184]
    00570c10ldr x1, [sp+160]
    00570c14bl crypto/internal/fips140/nistec.(*P521Point).bytesX
    00570c18str x0, [sp+96]
    00570c1cstr x1, [sp+104]
    00570c20str x2, [sp+112]
    00570c24str x3, [sp+80]
    00570c28str x4, [sp+88]
    00570c2cldr x1, [sp+96]
    00570c30ldr x2, [sp+104]
    00570c34ldr x3, [sp+112]
    00570c38str x1, [sp+136]
    00570c3cstr x2, [sp+144]
    00570c40str x3, [sp+152]
    00570c44ldr x1, [sp+80]
    00570c48ldr x2, [sp+88]
    00570c4cstr x1, [sp+120]
    00570c50str x2, [sp+128]
    00570c54ldr x1, [sp+136]
    00570c58ldr x2, [sp+144]
    00570c5cldr x3, [sp+152]
    00570c60str x1, [sp+56]
    00570c64str x2, [sp+64]
    00570c68str x3, [sp+72]
    00570c6cldr x3, [sp+120]
    00570c70ldr x4, [sp+128]
    00570c74str x3, [sp+40]
    00570c78str x4, [sp+48]
    00570c7cldr x0, [sp+56]
    00570c80ldr x1, [sp+64]
    00570c84ldr x2, [sp+72]
    00570c88ldur x29, [sp-8]
    00570c8cldr x30, [sp], 176
    00570c90ret x30
    00570c94
    00570c94loc_570c94:
    00570c94str x0, [sp+8]
    00570c98mov x3, x30
    00570c9cbl runtime.morestack_noctxt.abi0
    00570ca0ldr x0, [sp+8]
    00570ca4b 0x570bb0
    00570ca8udf 0
    00570cacudf 0
    00570bb0
    00570cb0
    00570cb0crypto/internal/fips140/nistec.(*P521Point).bytesX: ; void crypto/internal/fips140/nistec.(*P521Point).bytesX(crypto/internal/fips140/nistec.P521Point * p, uint8[66] * out)
    00570cb0ldr x16, [x28+16]
    00570cb4sub x17, sp, 304
    00570cb8subs xzr, x17, x16
    00570cbcb.ls 0x570ec4
    00570cc0sub x20, sp, 432
    00570cc4stp x29, x30, [x20-8]
    00570cc8add sp, x20, 0
    00570cccsub x29, sp, 8
    00570cd0str x0, [sp+440]
    00570cd4str x1, [sp+448]
    00570cd8str xzr, [sp+232]
    00570cdcstp xzr, xzr, [sp+240]
    00570ce0stp xzr, xzr, [sp+216]
    00570ce4ldr x1, [sp+440]
    00570ce8ldrsb x27, [x1]
    00570cecldr x0, [x1+16]
    00570cf0str x0, [sp+368]
    00570cf4bl crypto/internal/fips140/nistec/fiat.(*P521Element).IsZero
    00570cf8str x0, [sp+48]
    00570cfcsubs xzr, x0, 1
    00570d00b.eq 0x570d08
    00570d04b 0x570d50
    00570d08
    00570d08loc_570d08:
    00570d08adrp x0, 0x151000
    00570d0cadd x0, x0, 600
    00570d10movz x1, 35
    00570d14bl errors.New
    00570d18str x0, [sp+304]
    00570d1cstr x1, [sp+312]
    00570d20str xzr, [sp+232]
    00570d24stp xzr, xzr, [sp+240]
    00570d28ldr x3, [sp+304]
    00570d2cldr x4, [sp+312]
    00570d30str x3, [sp+216]
    00570d34str x4, [sp+224]
    00570d38ldr x0, [sp+232]
    00570d3cldr x1, [sp+240]
    00570d40ldr x2, [sp+248]
    00570d44ldp x29, x30, [sp-8]
    00570d48add sp, sp, 432
    00570d4cret x30
    00570d50
    00570d50loc_570d50:
    00570d50stp xzr, xzr, [sp+144]
    00570d54stp xzr, xzr, [sp+160]
    00570d58stp xzr, xzr, [sp+176]
    00570d5cstp xzr, xzr, [sp+192]
    00570d60str xzr, [sp+208]
    00570d64add x2, sp, 144
    00570d68str x2, [sp+296]
    00570d6cldr x2, [sp+440]
    00570d70ldrsb x27, [x2]
    00570d74ldr x1, [x2+16]
    00570d78str x1, [sp+360]
    00570d7cldr x0, [sp+296]
    00570d80bl crypto/internal/fips140/nistec/fiat.(*P521Element).Invert
    00570d84str x0, [sp+256]
    00570d88stp xzr, xzr, [sp+72]
    00570d8cstp xzr, xzr, [sp+88]
    00570d90stp xzr, xzr, [sp+104]
    00570d94stp xzr, xzr, [sp+120]
    00570d98str xzr, [sp+136]
    00570d9cadd x2, sp, 72
    00570da0str x2, [sp+296]
    00570da4ldr x2, [sp+440]
    00570da8ldrsb x27, [x2]
    00570dacldr x1, [x2]
    00570db0str x1, [sp+352]
    00570db4ldr x2, [sp+256]
    00570db8ldr x0, [sp+296]
    00570dbcbl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00570dc0str x0, [sp+264]
    00570dc4ldr x2, [sp+448]
    00570dc8ldrsb x27, [x2]
    00570dccb 0x570dd0
    00570dd0
    00570dd0loc_570dd0:
    00570dd0b 0x570dd4
    00570dd4
    00570dd4loc_570dd4:
    00570dd4str x2, [sp+272]
    00570dd8str xzr, [sp+280]
    00570ddcmovz x1, 66
    00570de0str x1, [sp+288]
    00570de4ldr x0, [sp+264]
    00570de8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Bytes
    00570decstr x0, [sp+400]
    00570df0str x1, [sp+408]
    00570df4str x2, [sp+416]
    00570df8ldr x2, [sp+288]
    00570dfcldr x0, [sp+272]
    00570e00ldr x1, [sp+280]
    00570e04str x0, [sp+328]
    00570e08str x1, [sp+336]
    00570e0cstr x2, [sp+344]
    00570e10ldr x3, [sp+408]
    00570e14add x1, x1, x3
    00570e18str x1, [sp+64]
    00570e1csubs xzr, x2, x1
    00570e20b.hs 0x570e28
    00570e24b 0x570e30
    00570e28
    00570e28loc_570e28:
    00570e28str x1, [sp+336]
    00570e2cb 0x570e50
    00570e30
    00570e30loc_570e30:
    00570e30ldr x3, [sp+408]
    00570e34adrp x4, 0x85000
    00570e38add x4, x4, 3072
    00570e3cbl runtime.growslice
    00570e40str x0, [sp+328]
    00570e44str x1, [sp+336]
    00570e48str x2, [sp+344]
    00570e4cb 0x570e50
    00570e50
    00570e50loc_570e50:
    00570e50ldr x3, [sp+408]
    00570e54str x3, [sp+56]
    00570e58ldr x3, [sp+64]
    00570e5cldr x4, [sp+408]
    00570e60sub x3, x3, x4
    00570e64ldr x4, [sp+328]
    00570e68add x0, x4, x3
    00570e6cstr x0, [sp+320]
    00570e70ldr x2, [sp+56]
    00570e74ldr x1, [sp+400]
    00570e78bl runtime.memmove
    00570e7cldr x3, [sp+328]
    00570e80ldr x4, [sp+336]
    00570e84ldr x5, [sp+344]
    00570e88str x3, [sp+376]
    00570e8cstr x4, [sp+384]
    00570e90str x5, [sp+392]
    00570e94str x3, [sp+232]
    00570e98str x4, [sp+240]
    00570e9cstr x5, [sp+248]
    00570ea0stp xzr, xzr, [sp+216]
    00570ea4ldr x0, [sp+232]
    00570ea8ldr x1, [sp+240]
    00570eacldr x2, [sp+248]
    00570eb0mov x3, xzr
    00570eb4mov x4, xzr
    00570eb8ldp x29, x30, [sp-8]
    00570ebcadd sp, sp, 432
    00570ec0ret x30
    00570ec4
    00570ec4loc_570ec4:
    00570ec4stp x0, x1, [sp+8]
    00570ec8mov x3, x30
    00570eccbl runtime.morestack_noctxt.abi0
    00570ed0ldp x0, x1, [sp+8]
    00570ed4b 0x570cb0
    00570ed8udf 0
    00570edcudf 0
    00570cb0
    00570ee0
    00570ee0crypto/internal/fips140/nistec.(*P521Point).Add: ; void crypto/internal/fips140/nistec.(*P521Point).Add(crypto/internal/fips140/nistec.P521Point * q, crypto/internal/fips140/nistec.P521Point * p1, crypto/internal/fips140/nistec.P521Point * p2)
    00570ee0ldr x16, [x28+16]
    00570ee4sub x17, sp, 752
    00570ee8subs xzr, x17, x16
    00570eecb.ls 0x571454
    00570ef0sub x20, sp, 880
    00570ef4stp x29, x30, [x20-8]
    00570ef8add sp, x20, 0
    00570efcsub x29, sp, 8
    00570f00str x0, [sp+888]
    00570f04str x1, [sp+896]
    00570f08str x2, [sp+904]
    00570f0cstr xzr, [sp+616]
    00570f10add x27, sp, 544
    00570f14stp xzr, xzr, [x27]
    00570f18add x27, sp, 560
    00570f1cstp xzr, xzr, [x27]
    00570f20add x27, sp, 576
    00570f24stp xzr, xzr, [x27]
    00570f28add x27, sp, 592
    00570f2cstp xzr, xzr, [x27]
    00570f30str xzr, [sp+608]
    00570f34add x3, sp, 544
    00570f38str x3, [sp+864]
    00570f3cldr x3, [sp+896]
    00570f40ldrsb x27, [x3]
    00570f44ldr x3, [x3]
    00570f48str x3, [sp+848]
    00570f4cldr x3, [sp+904]
    00570f50ldrsb x27, [x3]
    00570f54ldr x2, [x3]
    00570f58str x2, [sp+840]
    00570f5cldr x1, [sp+848]
    00570f60ldr x0, [sp+864]
    00570f64bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00570f68str x0, [sp+680]
    00570f6cstp xzr, xzr, [sp+472]
    00570f70stp xzr, xzr, [sp+488]
    00570f74stp xzr, xzr, [sp+504]
    00570f78add x27, sp, 520
    00570f7cstp xzr, xzr, [x27]
    00570f80str xzr, [sp+536]
    00570f84add x3, sp, 472
    00570f88str x3, [sp+864]
    00570f8cldr x3, [sp+896]
    00570f90ldrsb x27, [x3]
    00570f94ldr x3, [x3+8]
    00570f98str x3, [sp+832]
    00570f9cldr x3, [sp+904]
    00570fa0ldrsb x27, [x3]
    00570fa4ldr x2, [x3+8]
    00570fa8str x2, [sp+824]
    00570facldr x1, [sp+832]
    00570fb0ldr x0, [sp+864]
    00570fb4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00570fb8str x0, [sp+672]
    00570fbcstp xzr, xzr, [sp+400]
    00570fc0stp xzr, xzr, [sp+416]
    00570fc4stp xzr, xzr, [sp+432]
    00570fc8stp xzr, xzr, [sp+448]
    00570fccstr xzr, [sp+464]
    00570fd0add x3, sp, 400
    00570fd4str x3, [sp+864]
    00570fd8ldr x3, [sp+896]
    00570fdcldrsb x27, [x3]
    00570fe0ldr x3, [x3+16]
    00570fe4str x3, [sp+816]
    00570fe8ldr x3, [sp+904]
    00570fecldrsb x27, [x3]
    00570ff0ldr x2, [x3+16]
    00570ff4str x2, [sp+808]
    00570ff8ldr x1, [sp+816]
    00570ffcldr x0, [sp+864]
    00571000bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00571004str x0, [sp+664]
    00571008stp xzr, xzr, [sp+328]
    0057100cstp xzr, xzr, [sp+344]
    00571010stp xzr, xzr, [sp+360]
    00571014stp xzr, xzr, [sp+376]
    00571018str xzr, [sp+392]
    0057101cadd x3, sp, 328
    00571020str x3, [sp+864]
    00571024ldr x3, [sp+896]
    00571028ldrsb x27, [x3]
    0057102cldr x3, [x3]
    00571030str x3, [sp+800]
    00571034ldr x3, [sp+896]
    00571038ldrsb x27, [x3]
    0057103cldr x2, [x3+8]
    00571040str x2, [sp+792]
    00571044ldr x1, [sp+800]
    00571048ldr x0, [sp+864]
    0057104cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571050str x0, [sp+656]
    00571054stp xzr, xzr, [sp+256]
    00571058stp xzr, xzr, [sp+272]
    0057105cstp xzr, xzr, [sp+288]
    00571060stp xzr, xzr, [sp+304]
    00571064str xzr, [sp+320]
    00571068add x3, sp, 256
    0057106cstr x3, [sp+864]
    00571070ldr x3, [sp+904]
    00571074ldrsb x27, [x3]
    00571078ldr x3, [x3]
    0057107cstr x3, [sp+784]
    00571080ldr x3, [sp+904]
    00571084ldrsb x27, [x3]
    00571088ldr x2, [x3+8]
    0057108cstr x2, [sp+776]
    00571090ldr x1, [sp+784]
    00571094ldr x0, [sp+864]
    00571098bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    0057109cstr x0, [sp+648]
    005710a0ldr x1, [sp+656]
    005710a4ldr x3, [sp+656]
    005710a8mov x2, x0
    005710acmov x0, x3
    005710b0bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005710b4ldr x1, [sp+680]
    005710b8ldr x2, [sp+672]
    005710bcldr x0, [sp+648]
    005710c0bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005710c4ldr x1, [sp+656]
    005710c8ldr x2, [sp+648]
    005710ccldr x0, [sp+656]
    005710d0bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    005710d4ldr x3, [sp+896]
    005710d8ldrsb x27, [x3]
    005710dcldr x3, [x3+8]
    005710e0str x3, [sp+768]
    005710e4ldr x3, [sp+896]
    005710e8ldrsb x27, [x3]
    005710ecldr x2, [x3+16]
    005710f0str x2, [sp+760]
    005710f4ldr x0, [sp+648]
    005710f8ldr x1, [sp+768]
    005710fcbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571100stp xzr, xzr, [sp+184]
    00571104stp xzr, xzr, [sp+200]
    00571108stp xzr, xzr, [sp+216]
    0057110cstp xzr, xzr, [sp+232]
    00571110str xzr, [sp+248]
    00571114add x3, sp, 184
    00571118str x3, [sp+864]
    0057111cldr x3, [sp+904]
    00571120ldrsb x27, [x3]
    00571124ldr x3, [x3+8]
    00571128str x3, [sp+752]
    0057112cldr x3, [sp+904]
    00571130ldrsb x27, [x3]
    00571134ldr x2, [x3+16]
    00571138str x2, [sp+744]
    0057113cldr x1, [sp+752]
    00571140ldr x0, [sp+864]
    00571144bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571148str x0, [sp+640]
    0057114cldr x1, [sp+648]
    00571150ldr x3, [sp+648]
    00571154mov x2, x0
    00571158mov x0, x3
    0057115cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00571160ldr x1, [sp+672]
    00571164ldr x2, [sp+664]
    00571168ldr x0, [sp+640]
    0057116cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571170ldr x1, [sp+648]
    00571174ldr x2, [sp+640]
    00571178ldr x0, [sp+648]
    0057117cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    00571180ldr x3, [sp+896]
    00571184ldrsb x27, [x3]
    00571188ldr x3, [x3]
    0057118cstr x3, [sp+736]
    00571190ldr x3, [sp+896]
    00571194ldrsb x27, [x3]
    00571198ldr x2, [x3+16]
    0057119cstr x2, [sp+728]
    005711a0ldr x0, [sp+640]
    005711a4ldr x1, [sp+736]
    005711a8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005711acstp xzr, xzr, [sp+112]
    005711b0stp xzr, xzr, [sp+128]
    005711b4stp xzr, xzr, [sp+144]
    005711b8stp xzr, xzr, [sp+160]
    005711bcstr xzr, [sp+176]
    005711c0add x3, sp, 112
    005711c4str x3, [sp+864]
    005711c8ldr x3, [sp+904]
    005711ccldrsb x27, [x3]
    005711d0ldr x3, [x3]
    005711d4str x3, [sp+720]
    005711d8ldr x3, [sp+904]
    005711dcldrsb x27, [x3]
    005711e0ldr x2, [x3+16]
    005711e4str x2, [sp+712]
    005711e8ldr x0, [sp+864]
    005711ecldr x1, [sp+720]
    005711f0bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005711f4str x0, [sp+632]
    005711f8ldr x1, [sp+640]
    005711fcldr x3, [sp+640]
    00571200mov x2, x0
    00571204mov x0, x3
    00571208bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    0057120cldr x1, [sp+680]
    00571210ldr x2, [sp+664]
    00571214ldr x0, [sp+632]
    00571218bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    0057121cldr x1, [sp+640]
    00571220ldr x2, [sp+632]
    00571224ldr x0, [sp+632]
    00571228bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    0057122cstp xzr, xzr, [sp+40]
    00571230stp xzr, xzr, [sp+56]
    00571234stp xzr, xzr, [sp+72]
    00571238stp xzr, xzr, [sp+88]
    0057123cstr xzr, [sp+104]
    00571240add x3, sp, 40
    00571244str x3, [sp+864]
    00571248bl crypto/internal/fips140/nistec.p521B
    0057124cstr x0, [sp+856]
    00571250ldr x2, [sp+664]
    00571254ldr x3, [sp+864]
    00571258mov x1, x0
    0057125cmov x0, x3
    00571260bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00571264str x0, [sp+624]
    00571268ldr x1, [sp+632]
    0057126cldr x3, [sp+640]
    00571270mov x2, x0
    00571274mov x0, x3
    00571278bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    0057127cldr x1, [sp+640]
    00571280ldr x2, [sp+640]
    00571284ldr x0, [sp+624]
    00571288bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    0057128cldr x1, [sp+640]
    00571290ldr x2, [sp+624]
    00571294ldr x0, [sp+640]
    00571298bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    0057129cldr x1, [sp+672]
    005712a0ldr x2, [sp+640]
    005712a4ldr x0, [sp+624]
    005712a8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    005712acldr x1, [sp+672]
    005712b0ldr x2, [sp+640]
    005712b4ldr x0, [sp+640]
    005712b8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005712bcbl crypto/internal/fips140/nistec.p521B
    005712c0str x0, [sp+856]
    005712c4ldr x3, [sp+632]
    005712c8ldr x2, [sp+632]
    005712ccmov x1, x0
    005712d0mov x0, x3
    005712d4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005712d8ldr x1, [sp+664]
    005712dcldr x2, [sp+664]
    005712e0ldr x0, [sp+672]
    005712e4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005712e8ldr x1, [sp+672]
    005712ecldr x2, [sp+664]
    005712f0ldr x0, [sp+664]
    005712f4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005712f8ldr x1, [sp+632]
    005712fcldr x2, [sp+664]
    00571300ldr x0, [sp+632]
    00571304bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    00571308ldr x1, [sp+632]
    0057130cldr x2, [sp+680]
    00571310ldr x0, [sp+632]
    00571314bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    00571318ldr x1, [sp+632]
    0057131cldr x2, [sp+632]
    00571320ldr x0, [sp+672]
    00571324bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571328ldr x1, [sp+672]
    0057132cldr x2, [sp+632]
    00571330ldr x0, [sp+632]
    00571334bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571338ldr x1, [sp+680]
    0057133cldr x2, [sp+680]
    00571340ldr x0, [sp+672]
    00571344bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571348ldr x1, [sp+672]
    0057134cldr x2, [sp+680]
    00571350ldr x0, [sp+680]
    00571354bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571358ldr x1, [sp+680]
    0057135cldr x2, [sp+664]
    00571360ldr x0, [sp+680]
    00571364bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    00571368ldr x1, [sp+648]
    0057136cldr x2, [sp+632]
    00571370ldr x0, [sp+672]
    00571374bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00571378ldr x1, [sp+680]
    0057137cldr x2, [sp+632]
    00571380ldr x0, [sp+664]
    00571384bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00571388ldr x1, [sp+640]
    0057138cldr x2, [sp+624]
    00571390ldr x0, [sp+632]
    00571394bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00571398ldr x1, [sp+632]
    0057139cldr x2, [sp+664]
    005713a0ldr x0, [sp+632]
    005713a4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005713a8ldr x1, [sp+656]
    005713acldr x2, [sp+640]
    005713b0ldr x0, [sp+640]
    005713b4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005713b8ldr x1, [sp+640]
    005713bcldr x2, [sp+672]
    005713c0ldr x0, [sp+640]
    005713c4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    005713c8ldr x1, [sp+648]
    005713ccldr x2, [sp+624]
    005713d0ldr x0, [sp+624]
    005713d4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005713d8ldr x1, [sp+656]
    005713dcldr x2, [sp+680]
    005713e0ldr x0, [sp+672]
    005713e4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005713e8ldr x1, [sp+624]
    005713ecldr x2, [sp+672]
    005713f0ldr x0, [sp+624]
    005713f4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005713f8ldr x3, [sp+888]
    005713fcldrsb x27, [x3]
    00571400ldr x0, [x3]
    00571404str x0, [sp+704]
    00571408ldr x1, [sp+640]
    0057140cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    00571410ldr x3, [sp+888]
    00571414ldrsb x27, [x3]
    00571418ldr x0, [x3+8]
    0057141cstr x0, [sp+696]
    00571420ldr x1, [sp+632]
    00571424bl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    00571428ldr x3, [sp+888]
    0057142cldrsb x27, [x3]
    00571430ldr x0, [x3+16]
    00571434str x0, [sp+688]
    00571438ldr x1, [sp+624]
    0057143cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    00571440ldr x0, [sp+888]
    00571444str x0, [sp+616]
    00571448ldp x29, x30, [sp-8]
    0057144cadd sp, sp, 880
    00571450ret x30
    00571454
    00571454loc_571454:
    00571454stp x0, x1, [sp+8]
    00571458str x2, [sp+24]
    0057145cmov x3, x30
    00571460bl runtime.morestack_noctxt.abi0
    00571464ldp x0, x1, [sp+8]
    00571468ldr x2, [sp+24]
    0057146cb 0x570ee0
    00570ee0
    00571470
    00571470crypto/internal/fips140/nistec.(*P521Point).Double: ; void crypto/internal/fips140/nistec.(*P521Point).Double(crypto/internal/fips140/nistec.P521Point * q, crypto/internal/fips140/nistec.P521Point * p)
    00571470ldr x16, [x28+16]
    00571474sub x17, sp, 592
    00571478subs xzr, x17, x16
    0057147cb.ls 0x571878
    00571480sub x20, sp, 720
    00571484stp x29, x30, [x20-8]
    00571488add sp, x20, 0
    0057148csub x29, sp, 8
    00571490str x0, [sp+728]
    00571494str x1, [sp+736]
    00571498str xzr, [sp+536]
    0057149cstp xzr, xzr, [sp+464]
    005714a0stp xzr, xzr, [sp+480]
    005714a4stp xzr, xzr, [sp+496]
    005714a8add x27, sp, 512
    005714acstp xzr, xzr, [x27]
    005714b0str xzr, [sp+528]
    005714b4add x2, sp, 464
    005714b8str x2, [sp+704]
    005714bcldr x2, [sp+736]
    005714c0ldrsb x27, [x2]
    005714c4ldr x1, [x2]
    005714c8str x1, [sp+688]
    005714ccldr x0, [sp+704]
    005714d0bl crypto/internal/fips140/nistec/fiat.(*P521Element).Square
    005714d4str x0, [sp+592]
    005714d8stp xzr, xzr, [sp+392]
    005714dcstp xzr, xzr, [sp+408]
    005714e0stp xzr, xzr, [sp+424]
    005714e4stp xzr, xzr, [sp+440]
    005714e8str xzr, [sp+456]
    005714ecadd x2, sp, 392
    005714f0str x2, [sp+704]
    005714f4ldr x2, [sp+736]
    005714f8ldrsb x27, [x2]
    005714fcldr x1, [x2+8]
    00571500str x1, [sp+680]
    00571504ldr x0, [sp+704]
    00571508bl crypto/internal/fips140/nistec/fiat.(*P521Element).Square
    0057150cstr x0, [sp+584]
    00571510stp xzr, xzr, [sp+320]
    00571514stp xzr, xzr, [sp+336]
    00571518stp xzr, xzr, [sp+352]
    0057151cstp xzr, xzr, [sp+368]
    00571520str xzr, [sp+384]
    00571524add x2, sp, 320
    00571528str x2, [sp+704]
    0057152cldr x2, [sp+736]
    00571530ldrsb x27, [x2]
    00571534ldr x1, [x2+16]
    00571538str x1, [sp+672]
    0057153cldr x0, [sp+704]
    00571540bl crypto/internal/fips140/nistec/fiat.(*P521Element).Square
    00571544str x0, [sp+576]
    00571548stp xzr, xzr, [sp+248]
    0057154cstp xzr, xzr, [sp+264]
    00571550stp xzr, xzr, [sp+280]
    00571554stp xzr, xzr, [sp+296]
    00571558str xzr, [sp+312]
    0057155cadd x2, sp, 248
    00571560str x2, [sp+704]
    00571564ldr x2, [sp+736]
    00571568ldrsb x27, [x2]
    0057156cldr x2, [x2]
    00571570str x2, [sp+664]
    00571574ldr x2, [sp+736]
    00571578ldrsb x27, [x2]
    0057157cldr x2, [x2+8]
    00571580str x2, [sp+656]
    00571584ldr x1, [sp+664]
    00571588ldr x0, [sp+704]
    0057158cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00571590str x0, [sp+568]
    00571594mov x1, x0
    00571598mov x2, x0
    0057159cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005715a0stp xzr, xzr, [sp+176]
    005715a4stp xzr, xzr, [sp+192]
    005715a8stp xzr, xzr, [sp+208]
    005715acstp xzr, xzr, [sp+224]
    005715b0str xzr, [sp+240]
    005715b4add x2, sp, 176
    005715b8str x2, [sp+704]
    005715bcldr x2, [sp+736]
    005715c0ldrsb x27, [x2]
    005715c4ldr x2, [x2]
    005715c8str x2, [sp+648]
    005715ccldr x2, [sp+736]
    005715d0ldrsb x27, [x2]
    005715d4ldr x2, [x2+16]
    005715d8str x2, [sp+640]
    005715dcldr x1, [sp+648]
    005715e0ldr x0, [sp+704]
    005715e4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005715e8str x0, [sp+544]
    005715ecmov x1, x0
    005715f0mov x2, x0
    005715f4bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005715f8stp xzr, xzr, [sp+104]
    005715fcstp xzr, xzr, [sp+120]
    00571600stp xzr, xzr, [sp+136]
    00571604stp xzr, xzr, [sp+152]
    00571608str xzr, [sp+168]
    0057160cadd x2, sp, 104
    00571610str x2, [sp+704]
    00571614bl crypto/internal/fips140/nistec.p521B
    00571618str x0, [sp+696]
    0057161cldr x2, [sp+576]
    00571620ldr x3, [sp+704]
    00571624mov x1, x0
    00571628mov x0, x3
    0057162cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00571630str x0, [sp+552]
    00571634ldr x2, [sp+544]
    00571638mov x1, x0
    0057163cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    00571640stp xzr, xzr, [sp+32]
    00571644stp xzr, xzr, [sp+48]
    00571648stp xzr, xzr, [sp+64]
    0057164cstp xzr, xzr, [sp+80]
    00571650str xzr, [sp+96]
    00571654add x0, sp, 32
    00571658str x0, [sp+696]
    0057165cldr x1, [sp+552]
    00571660ldr x2, [sp+552]
    00571664bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571668str x0, [sp+560]
    0057166cldr x2, [sp+552]
    00571670ldr x3, [sp+552]
    00571674mov x1, x0
    00571678mov x0, x3
    0057167cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571680ldr x1, [sp+584]
    00571684ldr x2, [sp+552]
    00571688ldr x0, [sp+560]
    0057168cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    00571690ldr x1, [sp+584]
    00571694ldr x2, [sp+552]
    00571698ldr x0, [sp+552]
    0057169cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005716a0ldr x1, [sp+560]
    005716a4ldr x2, [sp+552]
    005716a8ldr x0, [sp+552]
    005716acbl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005716b0ldr x1, [sp+560]
    005716b4ldr x2, [sp+568]
    005716b8ldr x0, [sp+560]
    005716bcbl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005716c0ldr x1, [sp+576]
    005716c4ldr x2, [sp+576]
    005716c8ldr x0, [sp+568]
    005716ccbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005716d0ldr x1, [sp+576]
    005716d4ldr x2, [sp+568]
    005716d8ldr x0, [sp+576]
    005716dcbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005716e0bl crypto/internal/fips140/nistec.p521B
    005716e4str x0, [sp+696]
    005716e8ldr x2, [sp+544]
    005716ecldr x3, [sp+544]
    005716f0mov x1, x0
    005716f4mov x0, x2
    005716f8mov x2, x3
    005716fcbl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00571700ldr x1, [sp+544]
    00571704ldr x2, [sp+576]
    00571708ldr x0, [sp+544]
    0057170cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    00571710ldr x1, [sp+544]
    00571714ldr x2, [sp+592]
    00571718ldr x0, [sp+544]
    0057171cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    00571720ldr x1, [sp+544]
    00571724ldr x2, [sp+544]
    00571728ldr x0, [sp+568]
    0057172cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571730ldr x1, [sp+544]
    00571734ldr x2, [sp+568]
    00571738ldr x0, [sp+544]
    0057173cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571740ldr x1, [sp+592]
    00571744ldr x2, [sp+592]
    00571748ldr x0, [sp+568]
    0057174cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571750ldr x1, [sp+568]
    00571754ldr x2, [sp+592]
    00571758ldr x0, [sp+592]
    0057175cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571760ldr x1, [sp+592]
    00571764ldr x2, [sp+576]
    00571768ldr x0, [sp+592]
    0057176cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    00571770ldr x1, [sp+592]
    00571774ldr x2, [sp+544]
    00571778ldr x0, [sp+592]
    0057177cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    00571780ldr x1, [sp+552]
    00571784ldr x2, [sp+592]
    00571788ldr x0, [sp+552]
    0057178cbl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    00571790ldr x2, [sp+736]
    00571794ldrsb x27, [x2]
    00571798ldr x2, [x2+8]
    0057179cstr x2, [sp+632]
    005717a0ldr x2, [sp+736]
    005717a4ldrsb x27, [x2]
    005717a8ldr x2, [x2+16]
    005717acstr x2, [sp+624]
    005717b0ldr x0, [sp+592]
    005717b4ldr x1, [sp+632]
    005717b8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005717bcldr x1, [sp+592]
    005717c0ldr x2, [sp+592]
    005717c4ldr x0, [sp+592]
    005717c8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    005717ccldr x1, [sp+592]
    005717d0ldr x2, [sp+544]
    005717d4ldr x0, [sp+544]
    005717d8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005717dcldr x1, [sp+560]
    005717e0ldr x2, [sp+544]
    005717e4ldr x0, [sp+560]
    005717e8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Sub
    005717ecldr x1, [sp+592]
    005717f0ldr x2, [sp+584]
    005717f4ldr x0, [sp+544]
    005717f8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Mul
    005717fcldr x1, [sp+544]
    00571800ldr x2, [sp+544]
    00571804ldr x0, [sp+544]
    00571808bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    0057180cldr x1, [sp+544]
    00571810ldr x2, [sp+544]
    00571814ldr x0, [sp+544]
    00571818bl crypto/internal/fips140/nistec/fiat.(*P521Element).Add
    0057181cldr x2, [sp+728]
    00571820ldrsb x27, [x2]
    00571824ldr x0, [x2]
    00571828str x0, [sp+616]
    0057182cldr x1, [sp+560]
    00571830bl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    00571834ldr x2, [sp+728]
    00571838ldrsb x27, [x2]
    0057183cldr x0, [x2+8]
    00571840str x0, [sp+608]
    00571844ldr x1, [sp+552]
    00571848bl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    0057184cldr x2, [sp+728]
    00571850ldrsb x27, [x2]
    00571854ldr x0, [x2+16]
    00571858str x0, [sp+600]
    0057185cldr x1, [sp+544]
    00571860bl crypto/internal/fips140/nistec/fiat.(*P521Element).Set
    00571864ldr x0, [sp+728]
    00571868str x0, [sp+536]
    0057186cldp x29, x30, [sp-8]
    00571870add sp, sp, 720
    00571874ret x30
    00571878
    00571878loc_571878:
    00571878stp x0, x1, [sp+8]
    0057187cmov x3, x30
    00571880bl runtime.morestack_noctxt.abi0
    00571884ldp x0, x1, [sp+8]
    00571888b 0x571470
    0057188cudf 0
    00571470