File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
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
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
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
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
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
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
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
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
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
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
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
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
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
00571890
00571890crypto/internal/fips140/nistec.(*P521Point).Select: ; void crypto/internal/fips140/nistec.(*P521Point).Select(crypto/internal/fips140/nistec.P521Point * q, crypto/internal/fips140/nistec.P521Point * p1, crypto/internal/fips140/nistec.P521Point * p2, int cond)
00571890ldr x16, [x28+16]
00571894subs xzr, sp, x16
00571898b.ls 0x571990
0057189cstr x30, [sp-128]!
005718a0stur x29, [sp-8]
005718a4sub x29, sp, 8
005718a8str x0, [sp+136]
005718acstr x1, [sp+144]
005718b0str x2, [sp+152]
005718b4str x3, [sp+160]
005718b8str xzr, [sp+40]
005718bcldr x4, [sp+136]
005718c0ldrsb x27, [x4]
005718c4ldr x4, [x4]
005718c8str x4, [sp+80]
005718ccldr x4, [sp+144]
005718d0ldrsb x27, [x4]
005718d4ldr x4, [x4]
005718d8str x4, [sp+72]
005718dcldr x4, [sp+152]
005718e0ldrsb x27, [x4]
005718e4ldr x2, [x4]
005718e8str x2, [sp+64]
005718ecldr x3, [sp+160]
005718f0ldr x1, [sp+72]
005718f4ldr x0, [sp+80]
005718f8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Select
005718fcldr x4, [sp+136]
00571900ldrsb x27, [x4]
00571904ldr x4, [x4+8]
00571908str x4, [sp+56]
0057190cldr x4, [sp+144]
00571910ldrsb x27, [x4]
00571914ldr x4, [x4+8]
00571918str x4, [sp+48]
0057191cldr x4, [sp+152]
00571920ldrsb x27, [x4]
00571924ldr x2, [x4+8]
00571928str x2, [sp+112]
0057192cldr x3, [sp+160]
00571930ldr x0, [sp+56]
00571934ldr x1, [sp+48]
00571938bl crypto/internal/fips140/nistec/fiat.(*P521Element).Select
0057193cldr x4, [sp+136]
00571940ldrsb x27, [x4]
00571944ldr x4, [x4+16]
00571948str x4, [sp+104]
0057194cldr x4, [sp+144]
00571950ldrsb x27, [x4]
00571954ldr x4, [x4+16]
00571958str x4, [sp+96]
0057195cldr x4, [sp+152]
00571960ldrsb x27, [x4]
00571964ldr x2, [x4+16]
00571968str x2, [sp+88]
0057196cldr x3, [sp+160]
00571970ldr x0, [sp+104]
00571974ldr x1, [sp+96]
00571978bl crypto/internal/fips140/nistec/fiat.(*P521Element).Select
0057197cldr x0, [sp+136]
00571980str x0, [sp+40]
00571984ldur x29, [sp-8]
00571988ldr x30, [sp], 128
0057198cret x30
00571990
00571990loc_571990:
00571990stp x0, x1, [sp+8]
00571994stp x2, x3, [sp+24]
00571998mov x3, x30
0057199cbl runtime.morestack_noctxt.abi0
005719a0ldp x0, x1, [sp+8]
005719a4ldp x2, x3, [sp+24]
005719a8b 0x571890
005719acudf 0
00571890
00571890crypto/internal/fips140/nistec.(*P521Point).Select: ; void crypto/internal/fips140/nistec.(*P521Point).Select(crypto/internal/fips140/nistec.P521Point * q, crypto/internal/fips140/nistec.P521Point * p1, crypto/internal/fips140/nistec.P521Point * p2, int cond)
00571890ldr x16, [x28+16]
00571894subs xzr, sp, x16
00571898b.ls 0x571990
0057189cstr x30, [sp-128]!
005718a0stur x29, [sp-8]
005718a4sub x29, sp, 8
005718a8str x0, [sp+136]
005718acstr x1, [sp+144]
005718b0str x2, [sp+152]
005718b4str x3, [sp+160]
005718b8str xzr, [sp+40]
005718bcldr x4, [sp+136]
005718c0ldrsb x27, [x4]
005718c4ldr x4, [x4]
005718c8str x4, [sp+80]
005718ccldr x4, [sp+144]
005718d0ldrsb x27, [x4]
005718d4ldr x4, [x4]
005718d8str x4, [sp+72]
005718dcldr x4, [sp+152]
005718e0ldrsb x27, [x4]
005718e4ldr x2, [x4]
005718e8str x2, [sp+64]
005718ecldr x3, [sp+160]
005718f0ldr x1, [sp+72]
005718f4ldr x0, [sp+80]
005718f8bl crypto/internal/fips140/nistec/fiat.(*P521Element).Select
005718fcldr x4, [sp+136]
00571900ldrsb x27, [x4]
00571904ldr x4, [x4+8]
00571908str x4, [sp+56]
0057190cldr x4, [sp+144]
00571910ldrsb x27, [x4]
00571914ldr x4, [x4+8]
00571918str x4, [sp+48]
0057191cldr x4, [sp+152]
00571920ldrsb x27, [x4]
00571924ldr x2, [x4+8]
00571928str x2, [sp+112]
0057192cldr x3, [sp+160]
00571930ldr x0, [sp+56]
00571934ldr x1, [sp+48]
00571938bl crypto/internal/fips140/nistec/fiat.(*P521Element).Select
0057193cldr x4, [sp+136]
00571940ldrsb x27, [x4]
00571944ldr x4, [x4+16]
00571948str x4, [sp+104]
0057194cldr x4, [sp+144]
00571950ldrsb x27, [x4]
00571954ldr x4, [x4+16]
00571958str x4, [sp+96]
0057195cldr x4, [sp+152]
00571960ldrsb x27, [x4]
00571964ldr x2, [x4+16]
00571968str x2, [sp+88]
0057196cldr x3, [sp+160]
00571970ldr x0, [sp+104]
00571974ldr x1, [sp+96]
00571978bl crypto/internal/fips140/nistec/fiat.(*P521Element).Select
0057197cldr x0, [sp+136]
00571980str x0, [sp+40]
00571984ldur x29, [sp-8]
00571988ldr x30, [sp], 128
0057198cret x30
00571990
00571990loc_571990:
00571990stp x0, x1, [sp+8]
00571994stp x2, x3, [sp+24]
00571998mov x3, x30
0057199cbl runtime.morestack_noctxt.abi0
005719a0ldp x0, x1, [sp+8]
005719a4ldp x2, x3, [sp+24]
005719a8b 0x571890
005719acudf 0
00571890
Loading..