File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    0057d9f0
    0057d9f0crypto/internal/fips140/bigmod.(*Nat).SetOverflowingBytes: ; void crypto/internal/fips140/bigmod.(*Nat).SetOverflowingBytes(crypto/internal/fips140/bigmod.Nat * x, struct []uint8 b, crypto/internal/fips140/bigmod.Modulus * m)
    0057d9f0ldr x16, [x28+16]
    0057d9f4sub x17, sp, 32
    0057d9f8subs xzr, x17, x16
    0057d9fcb.ls 0x57db9c
    0057da00str x30, [sp-160]!
    0057da04stur x29, [sp-8]
    0057da08sub x29, sp, 8
    0057da0cstr x0, [sp+168]
    0057da10str x1, [sp+176]
    0057da14str x2, [sp+184]
    0057da18str x3, [sp+192]
    0057da1cstr x4, [sp+200]
    0057da20str xzr, [sp+112]
    0057da24stp xzr, xzr, [sp+96]
    0057da28ldr x1, [sp+200]
    0057da2cldr x0, [sp+168]
    0057da30bl crypto/internal/fips140/bigmod.(*Nat).resetFor
    0057da34ldr x1, [sp+176]
    0057da38ldr x2, [sp+184]
    0057da3cldr x3, [sp+192]
    0057da40ldr x0, [sp+168]
    0057da44bl crypto/internal/fips140/bigmod.(*Nat).setBytes
    0057da48str x0, [sp+120]
    0057da4cstr x1, [sp+128]
    0057da50cbnz x0, 0x57da58
    0057da54b 0x57da7c
    0057da58
    0057da58loc_57da58:
    0057da58str xzr, [sp+112]
    0057da5cldr x1, [sp+120]
    0057da60ldr x2, [sp+128]
    0057da64str x1, [sp+96]
    0057da68str x2, [sp+104]
    0057da6cldr x0, [sp+112]
    0057da70ldur x29, [sp-8]
    0057da74ldr x30, [sp], 160
    0057da78ret x30
    0057da7c
    0057da7cloc_57da7c:
    0057da7cldr x2, [sp+168]
    0057da80ldrsb x27, [x2]
    0057da84ldr x2, [x2+8]
    0057da88str x2, [sp+72]
    0057da8cldr x3, [sp+168]
    0057da90ldrsb x27, [x3]
    0057da94ldr x1, [x3+8]
    0057da98ldr x3, [x3]
    0057da9csub x0, x2, 1
    0057daa0subs xzr, x1, x0
    0057daa4b.hi 0x57daac
    0057daa8b 0x57db94
    0057daac
    0057daacloc_57daac:
    0057daacldr x0, [x3+3*x0]
    0057dab0str x0, [sp+88]
    0057dab4bl crypto/internal/fips140/bigmod.bitLen
    0057dab8str x0, [sp+64]
    0057dabcldr x1, [sp+200]
    0057dac0ldrsb x27, [x1]
    0057dac4ldr x1, [x1]
    0057dac8ldrsb x27, [x1]
    0057daccldr x1, [x1+8]
    0057dad0str x1, [sp+56]
    0057dad4ldr x2, [sp+200]
    0057dad8ldrsb x27, [x2]
    0057dadcldr x2, [x2]
    0057dae0ldrsb x27, [x2]
    0057dae4ldr x3, [x2+8]
    0057dae8ldr x2, [x2]
    0057daecsub x0, x1, 1
    0057daf0subs xzr, x3, x0
    0057daf4b.hi 0x57dafc
    0057daf8b 0x57db8c
    0057dafc
    0057dafcloc_57dafc:
    0057dafcldr x0, [x2+3*x0]
    0057db00str x0, [sp+80]
    0057db04bl crypto/internal/fips140/bigmod.bitLen
    0057db08str x0, [sp+48]
    0057db0cldr x1, [sp+64]
    0057db10subs xzr, x0, x1
    0057db14b.lt 0x57db1c
    0057db18b 0x57db58
    0057db1c
    0057db1cloc_57db1c:
    0057db1cadrp x0, 0x141000
    0057db20add x0, x0, 4016
    0057db24orr x1, xzr, 32
    0057db28bl errors.New
    0057db2cstr x0, [sp+136]
    0057db30str x1, [sp+144]
    0057db34str xzr, [sp+112]
    0057db38ldr x1, [sp+136]
    0057db3cldr x2, [sp+144]
    0057db40str x1, [sp+96]
    0057db44str x2, [sp+104]
    0057db48ldr x0, [sp+112]
    0057db4cldur x29, [sp-8]
    0057db50ldr x30, [sp], 160
    0057db54ret x30
    0057db58
    0057db58loc_57db58:
    0057db58ldr x2, [sp+200]
    0057db5cldr x0, [sp+168]
    0057db60mov x1, xzr
    0057db64bl crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus
    0057db68ldr x3, [sp+168]
    0057db6cstr x3, [sp+112]
    0057db70stp xzr, xzr, [sp+96]
    0057db74ldr x0, [sp+112]
    0057db78mov x1, xzr
    0057db7cmov x2, xzr
    0057db80ldur x29, [sp-8]
    0057db84ldr x30, [sp], 160
    0057db88ret x30
    0057db8c
    0057db8cloc_57db8c:
    0057db8cmov x1, x3
    0057db90bl runtime.panicIndex
    0057db94
    0057db94loc_57db94:
    0057db94bl runtime.panicIndex
    0057db98hint
    0057db9c
    0057db9cloc_57db9c:
    0057db9cstp x0, x1, [sp+8]
    0057dba0stp x2, x3, [sp+24]
    0057dba4str x4, [sp+40]
    0057dba8mov x3, x30
    0057dbacbl runtime.morestack_noctxt.abi0
    0057dbb0ldp x0, x1, [sp+8]
    0057dbb4ldp x2, x3, [sp+24]
    0057dbb8ldr x4, [sp+40]
    0057dbbcb 0x57d9f0
    0057d9f0
    0057dbc0
    0057dbc0crypto/internal/fips140/bigmod.bigEndianUint: ; void crypto/internal/fips140/bigmod.bigEndianUint(struct []uint8 buf)
    0057dbc0ldr x16, [x28+16]
    0057dbc4subs xzr, sp, x16
    0057dbc8b.ls 0x57dc04
    0057dbccstr x30, [sp-64]!
    0057dbd0stur x29, [sp-8]
    0057dbd4sub x29, sp, 8
    0057dbd8str x0, [sp+72]
    0057dbdcstr x1, [sp+80]
    0057dbe0str x2, [sp+88]
    0057dbe4str xzr, [sp+40]
    0057dbe8bl crypto/internal/fips140deps/byteorder.BEUint64
    0057dbecstr x0, [sp+48]
    0057dbf0str x0, [sp+40]
    0057dbf4ldr x0, [sp+40]
    0057dbf8ldur x29, [sp-8]
    0057dbfcldr x30, [sp], 64
    0057dc00ret x30
    0057dc04
    0057dc04loc_57dc04:
    0057dc04stp x0, x1, [sp+8]
    0057dc08str x2, [sp+24]
    0057dc0cmov x3, x30
    0057dc10bl runtime.morestack_noctxt.abi0
    0057dc14ldp x0, x1, [sp+8]
    0057dc18ldr x2, [sp+24]
    0057dc1cb 0x57dbc0
    0057dbc0
    0057dc20
    0057dc20crypto/internal/fips140/bigmod.(*Nat).setBytes: ; void crypto/internal/fips140/bigmod.(*Nat).setBytes(crypto/internal/fips140/bigmod.Nat * x, struct []uint8 b)
    0057dc20ldr x16, [x28+16]
    0057dc24sub x17, sp, 32
    0057dc28subs xzr, x17, x16
    0057dc2cb.ls 0x57deec
    0057dc30str x30, [sp-160]!
    0057dc34stur x29, [sp-8]
    0057dc38sub x29, sp, 8
    0057dc3cstr x0, [sp+168]
    0057dc40str x1, [sp+176]
    0057dc44str x2, [sp+184]
    0057dc48str x3, [sp+192]
    0057dc4cstp xzr, xzr, [sp+96]
    0057dc50ldr x3, [sp+184]
    0057dc54str x3, [sp+80]
    0057dc58str x3, [sp+64]
    0057dc5cstr xzr, [sp+56]
    0057dc60b 0x57dc64
    0057dc64
    0057dc64loc_57dc64:
    0057dc64ldr x3, [sp+168]
    0057dc68ldrsb x27, [x3]
    0057dc6cldr x3, [x3+8]
    0057dc70str x3, [sp+80]
    0057dc74ldr x4, [sp+56]
    0057dc78subs xzr, x3, x4
    0057dc7ccset x3, gt
    0057dc80strb w3, [sp+46]
    0057dc84b.gt 0x57dc8c
    0057dc88b 0x57dca0
    0057dc8c
    0057dc8cloc_57dc8c:
    0057dc8cldr x3, [sp+64]
    0057dc90subs xzr, x3, 8
    0057dc94cset x3, ge
    0057dc98strb w3, [sp+46]
    0057dc9cb 0x57dca4
    0057dca0
    0057dca0loc_57dca0:
    0057dca0b 0x57dca4
    0057dca4
    0057dca4loc_57dca4:
    0057dca4ldrb w3, [sp+46]
    0057dca8tbnz w3, 0, 0x57dcb0
    0057dcacb 0x57dd54
    0057dcb0
    0057dcb0loc_57dcb0:
    0057dcb0ldr x3, [sp+64]
    0057dcb4sub x0, x3, 8
    0057dcb8str x0, [sp+72]
    0057dcbcldr x1, [sp+64]
    0057dcc0ldr x2, [sp+192]
    0057dcc4ldr x4, [sp+176]
    0057dcc8subs xzr, x2, x1
    0057dcccb.hs 0x57dcd4
    0057dcd0b 0x57dee4
    0057dcd4
    0057dcd4loc_57dcd4:
    0057dcd4subs xzr, x1, x0
    0057dcd8b.hs 0x57dce0
    0057dcdcb 0x57dee0
    0057dce0
    0057dce0loc_57dce0:
    0057dce0sub x5, x1, x3
    0057dce4sub x3, x2, x3
    0057dce8add x2, x3, 8
    0057dcecadd x1, x5, 8
    0057dcf0sub x3, xzr, x2
    0057dcf4and x3, x0, x3, asr #63
    0057dcf8add x0, x4, x3
    0057dcfcstr x0, [sp+112]
    0057dd00str x1, [sp+120]
    0057dd04str x2, [sp+128]
    0057dd08bl crypto/internal/fips140/bigmod.bigEndianUint
    0057dd0cstr x0, [sp+88]
    0057dd10ldr x3, [sp+168]
    0057dd14ldrsb x27, [x3]
    0057dd18ldr x1, [x3+8]
    0057dd1cldr x3, [x3]
    0057dd20ldr x4, [sp+56]
    0057dd24subs xzr, x4, x1
    0057dd28b.lo 0x57dd30
    0057dd2cb 0x57ded8
    0057dd30
    0057dd30loc_57dd30:
    0057dd30str x0, [x3+3*x4]
    0057dd34ldr x3, [sp+64]
    0057dd38sub x3, x3, 8
    0057dd3cstr x3, [sp+64]
    0057dd40ldr x3, [sp+56]
    0057dd44add x3, x3, 1
    0057dd48str x3, [sp+56]
    0057dd4cb 0x57dd50
    0057dd50
    0057dd50loc_57dd50:
    0057dd50b 0x57dc64
    0057dd54
    0057dd54loc_57dd54:
    0057dd54str xzr, [sp+48]
    0057dd58b 0x57dd5c
    0057dd5c
    0057dd5cloc_57dd5c:
    0057dd5cldr x2, [sp+48]
    0057dd60subs xzr, x2, 64
    0057dd64cset x2, lt
    0057dd68strb w2, [sp+47]
    0057dd6cb.lt 0x57dd74
    0057dd70b 0x57dd98
    0057dd74
    0057dd74loc_57dd74:
    0057dd74ldr x2, [sp+168]
    0057dd78ldrsb x27, [x2]
    0057dd7cldr x2, [x2+8]
    0057dd80str x2, [sp+80]
    0057dd84ldr x3, [sp+56]
    0057dd88subs xzr, x3, x2
    0057dd8ccset x2, lt
    0057dd90strb w2, [sp+47]
    0057dd94b 0x57dd9c
    0057dd98
    0057dd98loc_57dd98:
    0057dd98b 0x57dd9c
    0057dd9c
    0057dd9cloc_57dd9c:
    0057dd9cldrb w2, [sp+47]
    0057dda0strb w2, [sp+46]
    0057dda4tbnz w2, 0, 0x57ddac
    0057dda8b 0x57ddc0
    0057ddac
    0057ddacloc_57ddac:
    0057ddacldr x2, [sp+64]
    0057ddb0subs xzr, x2, 0
    0057ddb4cset x2, gt
    0057ddb8strb w2, [sp+46]
    0057ddbcb 0x57ddc4
    0057ddc0
    0057ddc0loc_57ddc0:
    0057ddc0b 0x57ddc4
    0057ddc4
    0057ddc4loc_57ddc4:
    0057ddc4ldrb w2, [sp+46]
    0057ddc8tbnz w2, 0, 0x57ddd0
    0057ddccb 0x57de74
    0057ddd0
    0057ddd0loc_57ddd0:
    0057ddd0ldr x2, [sp+168]
    0057ddd4ldrsb x27, [x2]
    0057ddd8ldr x1, [x2+8]
    0057dddcldr x2, [x2]
    0057dde0ldr x0, [sp+56]
    0057dde4subs xzr, x0, x1
    0057dde8b.lo 0x57ddf0
    0057ddecb 0x57ded4
    0057ddf0
    0057ddf0loc_57ddf0:
    0057ddf0ldr x2, [x2+3*x0]
    0057ddf4ldr x1, [sp+184]
    0057ddf8ldr x3, [sp+176]
    0057ddfcldr x4, [sp+64]
    0057de00sub x0, x4, 1
    0057de04subs xzr, x1, x0
    0057de08b.hi 0x57de10
    0057de0cb 0x57ded0
    0057de10
    0057de10loc_57de10:
    0057de10ldrb w3, [x3+x0]
    0057de14ldr x4, [sp+48]
    0057de18tbz x4, 63, 0x57de20
    0057de1cb 0x57decc
    0057de20
    0057de20loc_57de20:
    0057de20ldr x5, [sp+168]
    0057de24ldrsb x27, [x5]
    0057de28ldr x1, [x5+8]
    0057de2cldr x5, [x5]
    0057de30ldr x0, [sp+56]
    0057de34lslv x3, x3, x4
    0057de38subs xzr, x4, 64
    0057de3ccsel x3, x3, xzr, lo
    0057de40orr x2, x2, x3
    0057de44subs xzr, x1, x0
    0057de48b.hi 0x57de50
    0057de4cb 0x57dec8
    0057de50
    0057de50loc_57de50:
    0057de50str x2, [x5+3*x0]
    0057de54ldr x2, [sp+64]
    0057de58sub x2, x2, 1
    0057de5cstr x2, [sp+64]
    0057de60b 0x57de64
    0057de64
    0057de64loc_57de64:
    0057de64ldr x2, [sp+48]
    0057de68add x2, x2, 8
    0057de6cstr x2, [sp+48]
    0057de70b 0x57dd5c
    0057de74
    0057de74loc_57de74:
    0057de74ldr x2, [sp+64]
    0057de78subs xzr, x2, 0
    0057de7cb.gt 0x57de84
    0057de80b 0x57deb0
    0057de84
    0057de84loc_57de84:
    0057de84adrp x0, 0x141000
    0057de88add x0, x0, 4016
    0057de8corr x1, xzr, 32
    0057de90bl errors.New
    0057de94str x0, [sp+136]
    0057de98str x1, [sp+144]
    0057de9cstr x0, [sp+96]
    0057dea0str x1, [sp+104]
    0057dea4ldur x29, [sp-8]
    0057dea8ldr x30, [sp], 160
    0057deacret x30
    0057deb0
    0057deb0loc_57deb0:
    0057deb0stp xzr, xzr, [sp+96]
    0057deb4mov x0, xzr
    0057deb8mov x1, xzr
    0057debcldur x29, [sp-8]
    0057dec0ldr x30, [sp], 160
    0057dec4ret x30
    0057dec8
    0057dec8loc_57dec8:
    0057dec8bl runtime.panicIndex
    0057decc
    0057deccloc_57decc:
    0057deccbl runtime.panicshift
    0057ded0
    0057ded0loc_57ded0:
    0057ded0bl runtime.panicIndex
    0057ded4
    0057ded4loc_57ded4:
    0057ded4bl runtime.panicIndex
    0057ded8
    0057ded8loc_57ded8:
    0057ded8mov x0, x4
    0057dedcbl runtime.panicIndex
    0057dee0
    0057dee0loc_57dee0:
    0057dee0bl runtime.panicSliceB
    0057dee4
    0057dee4loc_57dee4:
    0057dee4bl runtime.panicSliceAcap
    0057dee8hint
    0057deec
    0057deecloc_57deec:
    0057deecstp x0, x1, [sp+8]
    0057def0stp x2, x3, [sp+24]
    0057def4mov x3, x30
    0057def8bl runtime.morestack_noctxt.abi0
    0057defcldp x0, x1, [sp+8]
    0057df00ldp x2, x3, [sp+24]
    0057df04b 0x57dc20
    0057df08udf 0
    0057df0cudf 0
    0057dc20
    0057df10
    0057df10crypto/internal/fips140/bigmod.(*Nat).SetUint: ; void crypto/internal/fips140/bigmod.(*Nat).SetUint(crypto/internal/fips140/bigmod.Nat * x, uint y)
    0057df10ldr x16, [x28+16]
    0057df14subs xzr, sp, x16
    0057df18b.ls 0x57df84
    0057df1cstr x30, [sp-48]!
    0057df20stur x29, [sp-8]
    0057df24sub x29, sp, 8
    0057df28str x0, [sp+56]
    0057df2cstr x1, [sp+64]
    0057df30str xzr, [sp+32]
    0057df34ldr x0, [sp+56]
    0057df38orr x1, xzr, 1
    0057df3cbl crypto/internal/fips140/bigmod.(*Nat).reset
    0057df40ldr x2, [sp+56]
    0057df44ldrsb x27, [x2]
    0057df48ldr x1, [x2+8]
    0057df4cldr x2, [x2]
    0057df50ldr x3, [sp+64]
    0057df54subs xzr, x1, 0
    0057df58b.hi 0x57df60
    0057df5cb 0x57df78
    0057df60
    0057df60loc_57df60:
    0057df60str x3, [x2]
    0057df64ldr x0, [sp+56]
    0057df68str x0, [sp+32]
    0057df6cldur x29, [sp-8]
    0057df70ldr x30, [sp], 48
    0057df74ret x30
    0057df78
    0057df78loc_57df78:
    0057df78mov x0, xzr
    0057df7cbl runtime.panicIndex
    0057df80hint
    0057df84
    0057df84loc_57df84:
    0057df84stp x0, x1, [sp+8]
    0057df88mov x3, x30
    0057df8cbl runtime.morestack_noctxt.abi0
    0057df90ldp x0, x1, [sp+8]
    0057df94b 0x57df10
    0057df98udf 0
    0057df9cudf 0
    0057df10
    0057dfa0
    0057dfa0crypto/internal/fips140/bigmod.(*Nat).Equal: ; void crypto/internal/fips140/bigmod.(*Nat).Equal(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * y)
    0057dfa0ldr x16, [x28+16]
    0057dfa4sub x17, sp, 16
    0057dfa8subs xzr, x17, x16
    0057dfacb.ls 0x57e0e4
    0057dfb0str x30, [sp-144]!
    0057dfb4stur x29, [sp-8]
    0057dfb8sub x29, sp, 8
    0057dfbcstr x0, [sp+152]
    0057dfc0str x1, [sp+160]
    0057dfc4str xzr, [sp+32]
    0057dfc8ldrsb x27, [x0]
    0057dfccldr x1, [x0+8]
    0057dfd0str x1, [sp+40]
    0057dfd4ldrsb x27, [x0]
    0057dfd8ldr x2, [x0+16]
    0057dfdcldr x3, [x0]
    0057dfe0subs xzr, x2, x1
    0057dfe4b.hs 0x57dfec
    0057dfe8b 0x57e0dc
    0057dfec
    0057dfecloc_57dfec:
    0057dfecb 0x57dff0
    0057dff0
    0057dff0loc_57dff0:
    0057dff0str x3, [sp+112]
    0057dff4str x1, [sp+120]
    0057dff8str x2, [sp+128]
    0057dffcldr x3, [sp+160]
    0057e000ldrsb x27, [x3]
    0057e004ldr x2, [x3+16]
    0057e008ldr x3, [x3]
    0057e00cldr x1, [sp+40]
    0057e010subs xzr, x2, x1
    0057e014b.hs 0x57e01c
    0057e018b 0x57e0d8
    0057e01c
    0057e01cloc_57e01c:
    0057e01cb 0x57e020
    0057e020
    0057e020loc_57e020:
    0057e020str x3, [sp+88]
    0057e024str x1, [sp+96]
    0057e028str x2, [sp+104]
    0057e02corr x2, xzr, 1
    0057e030str x2, [sp+56]
    0057e034str xzr, [sp+48]
    0057e038b 0x57e03c
    0057e03c
    0057e03cloc_57e03c:
    0057e03cldr x2, [sp+40]
    0057e040ldr x3, [sp+48]
    0057e044subs xzr, x2, x3
    0057e048b.gt 0x57e050
    0057e04cb 0x57e0b8
    0057e050
    0057e050loc_57e050:
    0057e050ldr x0, [sp+48]
    0057e054ldr x1, [sp+120]
    0057e058ldr x2, [sp+112]
    0057e05csubs xzr, x1, x0
    0057e060b.hi 0x57e068
    0057e064b 0x57e0d4
    0057e068
    0057e068loc_57e068:
    0057e068ldr x0, [x2+3*x0]
    0057e06cstr x0, [sp+64]
    0057e070ldr x2, [sp+48]
    0057e074ldr x1, [sp+96]
    0057e078ldr x3, [sp+88]
    0057e07csubs xzr, x2, x1
    0057e080b.lo 0x57e088
    0057e084b 0x57e0cc
    0057e088
    0057e088loc_57e088:
    0057e088ldr x1, [x3+3*x2]
    0057e08cstr x1, [sp+80]
    0057e090bl crypto/internal/fips140/bigmod.ctEq
    0057e094str x0, [sp+72]
    0057e098ldr x2, [sp+56]
    0057e09cand x2, x2, x0
    0057e0a0str x2, [sp+56]
    0057e0a4b 0x57e0a8
    0057e0a8
    0057e0a8loc_57e0a8:
    0057e0a8ldr x2, [sp+48]
    0057e0acadd x2, x2, 1
    0057e0b0str x2, [sp+48]
    0057e0b4b 0x57e03c
    0057e0b8
    0057e0b8loc_57e0b8:
    0057e0b8ldr x0, [sp+56]
    0057e0bcstr x0, [sp+32]
    0057e0c0ldur x29, [sp-8]
    0057e0c4ldr x30, [sp], 144
    0057e0c8ret x30
    0057e0cc
    0057e0ccloc_57e0cc:
    0057e0ccmov x0, x2
    0057e0d0bl runtime.panicIndex
    0057e0d4
    0057e0d4loc_57e0d4:
    0057e0d4bl runtime.panicIndex
    0057e0d8
    0057e0d8loc_57e0d8:
    0057e0d8bl runtime.panicSliceAcap
    0057e0dc
    0057e0dcloc_57e0dc:
    0057e0dcbl runtime.panicSliceAcap
    0057e0e0hint
    0057e0e4
    0057e0e4loc_57e0e4:
    0057e0e4stp x0, x1, [sp+8]
    0057e0e8mov x3, x30
    0057e0ecbl runtime.morestack_noctxt.abi0
    0057e0f0ldp x0, x1, [sp+8]
    0057e0f4b 0x57dfa0
    0057e0f8udf 0
    0057e0fcudf 0
    0057dfa0
    0057e100
    0057e100crypto/internal/fips140/bigmod.(*Nat).IsZero: ; void crypto/internal/fips140/bigmod.(*Nat).IsZero(crypto/internal/fips140/bigmod.Nat * x)
    0057e100ldr x16, [x28+16]
    0057e104subs xzr, sp, x16
    0057e108b.ls 0x57e1e4
    0057e10cstr x30, [sp-112]!
    0057e110stur x29, [sp-8]
    0057e114sub x29, sp, 8
    0057e118str x0, [sp+120]
    0057e11cstr xzr, [sp+32]
    0057e120ldrsb x27, [x0]
    0057e124ldr x1, [x0+8]
    0057e128str x1, [sp+48]
    0057e12cldrsb x27, [x0]
    0057e130ldr x2, [x0+16]
    0057e134ldr x3, [x0]
    0057e138subs xzr, x2, x1
    0057e13cb.hs 0x57e144
    0057e140b 0x57e1dc
    0057e144
    0057e144loc_57e144:
    0057e144b 0x57e148
    0057e148
    0057e148loc_57e148:
    0057e148str x3, [sp+80]
    0057e14cstr x1, [sp+88]
    0057e150str x2, [sp+96]
    0057e154orr x2, xzr, 1
    0057e158str x2, [sp+40]
    0057e15cstr xzr, [sp+56]
    0057e160b 0x57e164
    0057e164
    0057e164loc_57e164:
    0057e164ldr x2, [sp+48]
    0057e168ldr x3, [sp+56]
    0057e16csubs xzr, x2, x3
    0057e170b.gt 0x57e178
    0057e174b 0x57e1c4
    0057e178
    0057e178loc_57e178:
    0057e178ldr x0, [sp+56]
    0057e17cldr x1, [sp+88]
    0057e180ldr x2, [sp+80]
    0057e184subs xzr, x0, x1
    0057e188b.lo 0x57e190
    0057e18cb 0x57e1d8
    0057e190
    0057e190loc_57e190:
    0057e190ldr x0, [x2+3*x0]
    0057e194str x0, [sp+64]
    0057e198mov x1, xzr
    0057e19cbl crypto/internal/fips140/bigmod.ctEq
    0057e1a0str x0, [sp+72]
    0057e1a4ldr x2, [sp+40]
    0057e1a8and x2, x2, x0
    0057e1acstr x2, [sp+40]
    0057e1b0b 0x57e1b4
    0057e1b4
    0057e1b4loc_57e1b4:
    0057e1b4ldr x2, [sp+56]
    0057e1b8add x2, x2, 1
    0057e1bcstr x2, [sp+56]
    0057e1c0b 0x57e164
    0057e1c4
    0057e1c4loc_57e1c4:
    0057e1c4ldr x0, [sp+40]
    0057e1c8str x0, [sp+32]
    0057e1ccldur x29, [sp-8]
    0057e1d0ldr x30, [sp], 112
    0057e1d4ret x30
    0057e1d8
    0057e1d8loc_57e1d8:
    0057e1d8bl runtime.panicIndex
    0057e1dc
    0057e1dcloc_57e1dc:
    0057e1dcbl runtime.panicSliceAcap
    0057e1e0hint
    0057e1e4
    0057e1e4loc_57e1e4:
    0057e1e4str x0, [sp+8]
    0057e1e8mov x3, x30
    0057e1ecbl runtime.morestack_noctxt.abi0
    0057e1f0ldr x0, [sp+8]
    0057e1f4b 0x57e100
    0057e1f8udf 0
    0057e1fcudf 0
    0057e100
    0057e200
    0057e200crypto/internal/fips140/bigmod.(*Nat).IsOne: ; void crypto/internal/fips140/bigmod.(*Nat).IsOne(crypto/internal/fips140/bigmod.Nat * x)
    0057e200ldr x16, [x28+16]
    0057e204subs xzr, sp, x16
    0057e208b.ls 0x57e328
    0057e20cstr x30, [sp-128]!
    0057e210stur x29, [sp-8]
    0057e214sub x29, sp, 8
    0057e218str x0, [sp+136]
    0057e21cstr xzr, [sp+32]
    0057e220ldrsb x27, [x0]
    0057e224ldr x1, [x0+8]
    0057e228str x1, [sp+40]
    0057e22cldrsb x27, [x0]
    0057e230ldr x2, [x0+16]
    0057e234ldr x3, [x0]
    0057e238subs xzr, x2, x1
    0057e23cb.hs 0x57e244
    0057e240b 0x57e320
    0057e244
    0057e244loc_57e244:
    0057e244b 0x57e248
    0057e248
    0057e248loc_57e248:
    0057e248str x3, [sp+96]
    0057e24cstr x1, [sp+104]
    0057e250str x2, [sp+112]
    0057e254str x1, [sp+88]
    0057e258cbz x1, 0x57e260
    0057e25cb 0x57e274
    0057e260
    0057e260loc_57e260:
    0057e260str xzr, [sp+32]
    0057e264mov x0, xzr
    0057e268ldur x29, [sp-8]
    0057e26cldr x30, [sp], 128
    0057e270ret x30
    0057e274
    0057e274loc_57e274:
    0057e274subs xzr, x1, 0
    0057e278b.hi 0x57e280
    0057e27cb 0x57e318
    0057e280
    0057e280loc_57e280:
    0057e280ldr x0, [x3]
    0057e284str x0, [sp+72]
    0057e288orr x1, xzr, 1
    0057e28cbl crypto/internal/fips140/bigmod.ctEq
    0057e290str x0, [sp+48]
    0057e294orr x2, xzr, 1
    0057e298str x2, [sp+56]
    0057e29cb 0x57e2a0
    0057e2a0
    0057e2a0loc_57e2a0:
    0057e2a0ldr x2, [sp+40]
    0057e2a4ldr x3, [sp+56]
    0057e2a8subs xzr, x2, x3
    0057e2acb.gt 0x57e2b4
    0057e2b0b 0x57e300
    0057e2b4
    0057e2b4loc_57e2b4:
    0057e2b4ldr x0, [sp+56]
    0057e2b8ldr x1, [sp+104]
    0057e2bcldr x2, [sp+96]
    0057e2c0subs xzr, x0, x1
    0057e2c4b.lo 0x57e2cc
    0057e2c8b 0x57e314
    0057e2cc
    0057e2ccloc_57e2cc:
    0057e2ccldr x0, [x2+3*x0]
    0057e2d0str x0, [sp+64]
    0057e2d4mov x1, xzr
    0057e2d8bl crypto/internal/fips140/bigmod.ctEq
    0057e2dcstr x0, [sp+80]
    0057e2e0ldr x2, [sp+48]
    0057e2e4and x2, x2, x0
    0057e2e8str x2, [sp+48]
    0057e2ecb 0x57e2f0
    0057e2f0
    0057e2f0loc_57e2f0:
    0057e2f0ldr x2, [sp+56]
    0057e2f4add x2, x2, 1
    0057e2f8str x2, [sp+56]
    0057e2fcb 0x57e2a0
    0057e300
    0057e300loc_57e300:
    0057e300ldr x0, [sp+48]
    0057e304str x0, [sp+32]
    0057e308ldur x29, [sp-8]
    0057e30cldr x30, [sp], 128
    0057e310ret x30
    0057e314
    0057e314loc_57e314:
    0057e314bl runtime.panicIndex
    0057e318
    0057e318loc_57e318:
    0057e318mov x0, xzr
    0057e31cbl runtime.panicIndex
    0057e320
    0057e320loc_57e320:
    0057e320bl runtime.panicSliceAcap
    0057e324hint
    0057e328
    0057e328loc_57e328:
    0057e328str x0, [sp+8]
    0057e32cmov x3, x30
    0057e330bl runtime.morestack_noctxt.abi0
    0057e334ldr x0, [sp+8]
    0057e338b 0x57e200
    0057e33cudf 0
    0057e200
    0057e340
    0057e340crypto/internal/fips140/bigmod.(*Nat).IsOdd: ; void crypto/internal/fips140/bigmod.(*Nat).IsOdd(crypto/internal/fips140/bigmod.Nat * x)
    0057e340ldr x16, [x28+16]
    0057e344subs xzr, sp, x16
    0057e348b.ls 0x57e3c8
    0057e34cstr x30, [sp-48]!
    0057e350stur x29, [sp-8]
    0057e354sub x29, sp, 8
    0057e358str x0, [sp+56]
    0057e35cstr xzr, [sp+24]
    0057e360ldrsb x27, [x0]
    0057e364ldr x2, [x0+8]
    0057e368str x2, [sp+32]
    0057e36ccbz x2, 0x57e374
    0057e370b 0x57e388
    0057e374
    0057e374loc_57e374:
    0057e374str xzr, [sp+24]
    0057e378mov x0, xzr
    0057e37cldur x29, [sp-8]
    0057e380ldr x30, [sp], 48
    0057e384ret x30
    0057e388
    0057e388loc_57e388:
    0057e388ldrsb x27, [x0]
    0057e38cldr x1, [x0+8]
    0057e390ldr x2, [x0]
    0057e394subs xzr, x1, 0
    0057e398b.hi 0x57e3a0
    0057e39cb 0x57e3bc
    0057e3a0
    0057e3a0loc_57e3a0:
    0057e3a0ldr x1, [x2]
    0057e3a4and x1, x1, 1
    0057e3a8str x1, [sp+24]
    0057e3acldr x0, [sp+24]
    0057e3b0ldur x29, [sp-8]
    0057e3b4ldr x30, [sp], 48
    0057e3b8ret x30
    0057e3bc
    0057e3bcloc_57e3bc:
    0057e3bcmov x0, xzr
    0057e3c0bl runtime.panicIndex
    0057e3c4hint
    0057e3c8
    0057e3c8loc_57e3c8:
    0057e3c8str x0, [sp+8]
    0057e3ccmov x3, x30
    0057e3d0bl runtime.morestack_noctxt.abi0
    0057e3d4ldr x0, [sp+8]
    0057e3d8b 0x57e340
    0057e3dcudf 0
    0057e340
    0057e3e0
    0057e3e0crypto/internal/fips140/bigmod.(*Nat).cmpGeq: ; void crypto/internal/fips140/bigmod.(*Nat).cmpGeq(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * y)
    0057e3e0ldr x16, [x28+16]
    0057e3e4sub x17, sp, 48
    0057e3e8subs xzr, x17, x16
    0057e3ecb.ls 0x57e540
    0057e3f0str x30, [sp-176]!
    0057e3f4stur x29, [sp-8]
    0057e3f8sub x29, sp, 8
    0057e3fcstr x0, [sp+184]
    0057e400str x1, [sp+192]
    0057e404str xzr, [sp+32]
    0057e408ldrsb x27, [x0]
    0057e40cldr x1, [x0+8]
    0057e410str x1, [sp+40]
    0057e414ldrsb x27, [x0]
    0057e418ldr x2, [x0+16]
    0057e41cldr x3, [x0]
    0057e420subs xzr, x2, x1
    0057e424b.hs 0x57e42c
    0057e428b 0x57e538
    0057e42c
    0057e42cloc_57e42c:
    0057e42cb 0x57e430
    0057e430
    0057e430loc_57e430:
    0057e430str x3, [sp+144]
    0057e434str x1, [sp+152]
    0057e438str x2, [sp+160]
    0057e43cldr x3, [sp+192]
    0057e440ldrsb x27, [x3]
    0057e444ldr x2, [x3+16]
    0057e448ldr x3, [x3]
    0057e44cldr x1, [sp+40]
    0057e450subs xzr, x2, x1
    0057e454b.hs 0x57e45c
    0057e458b 0x57e534
    0057e45c
    0057e45cloc_57e45c:
    0057e45cb 0x57e460
    0057e460
    0057e460loc_57e460:
    0057e460str x3, [sp+120]
    0057e464str x1, [sp+128]
    0057e468str x2, [sp+136]
    0057e46cstr xzr, [sp+56]
    0057e470str xzr, [sp+48]
    0057e474b 0x57e478
    0057e478
    0057e478loc_57e478:
    0057e478ldr x2, [sp+40]
    0057e47cldr x3, [sp+48]
    0057e480subs xzr, x2, x3
    0057e484b.gt 0x57e48c
    0057e488b 0x57e510
    0057e48c
    0057e48cloc_57e48c:
    0057e48cldr x0, [sp+48]
    0057e490ldr x1, [sp+152]
    0057e494ldr x2, [sp+144]
    0057e498subs xzr, x0, x1
    0057e49cb.lo 0x57e4a4
    0057e4a0b 0x57e530
    0057e4a4
    0057e4a4loc_57e4a4:
    0057e4a4ldr x2, [x2+3*x0]
    0057e4a8str x2, [sp+88]
    0057e4acldr x0, [sp+48]
    0057e4b0ldr x1, [sp+128]
    0057e4b4ldr x3, [sp+120]
    0057e4b8subs xzr, x0, x1
    0057e4bcb.lo 0x57e4c4
    0057e4c0b 0x57e52c
    0057e4c4
    0057e4c4loc_57e4c4:
    0057e4c4ldr x3, [x3+3*x0]
    0057e4c8str x3, [sp+80]
    0057e4ccldr x4, [sp+56]
    0057e4d0subs x5, xzr, x4
    0057e4d4sbcs x5, x2, x3
    0057e4d8sbc x5, xzr, xzr
    0057e4dcsub x5, xzr, x5
    0057e4e0subs x4, xzr, x4
    0057e4e4sbcs x2, x2, x3
    0057e4e8str x2, [sp+112]
    0057e4ecstr x5, [sp+104]
    0057e4f0str x2, [sp+72]
    0057e4f4str x5, [sp+64]
    0057e4f8str x5, [sp+56]
    0057e4fcb 0x57e500
    0057e500
    0057e500loc_57e500:
    0057e500ldr x2, [sp+48]
    0057e504add x2, x2, 1
    0057e508str x2, [sp+48]
    0057e50cb 0x57e478
    0057e510
    0057e510loc_57e510:
    0057e510ldr x0, [sp+56]
    0057e514bl crypto/internal/fips140/bigmod.not
    0057e518str x0, [sp+96]
    0057e51cstr x0, [sp+32]
    0057e520ldur x29, [sp-8]
    0057e524ldr x30, [sp], 176
    0057e528ret x30
    0057e52c
    0057e52cloc_57e52c:
    0057e52cbl runtime.panicIndex
    0057e530
    0057e530loc_57e530:
    0057e530bl runtime.panicIndex
    0057e534
    0057e534loc_57e534:
    0057e534bl runtime.panicSliceAcap
    0057e538
    0057e538loc_57e538:
    0057e538bl runtime.panicSliceAcap
    0057e53chint
    0057e540
    0057e540loc_57e540:
    0057e540stp x0, x1, [sp+8]
    0057e544mov x3, x30
    0057e548bl runtime.morestack_noctxt.abi0
    0057e54cldp x0, x1, [sp+8]
    0057e550b 0x57e3e0
    0057e554udf 0
    0057e558udf 0
    0057e55cudf 0
    0057e3e0
    0057e560
    0057e560crypto/internal/fips140/bigmod.(*Nat).assign: ; void crypto/internal/fips140/bigmod.(*Nat).assign(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.choice on, crypto/internal/fips140/bigmod.Nat * y)
    0057e560ldr x16, [x28+16]
    0057e564subs xzr, sp, x16
    0057e568b.ls 0x57e6e4
    0057e56cstr x30, [sp-112]!
    0057e570stur x29, [sp-8]
    0057e574sub x29, sp, 8
    0057e578str x0, [sp+120]
    0057e57cstr x1, [sp+128]
    0057e580str x2, [sp+136]
    0057e584str xzr, [sp+48]
    0057e588ldr x3, [sp+120]
    0057e58cldrsb x27, [x3]
    0057e590ldr x1, [x3+8]
    0057e594str x1, [sp+24]
    0057e598ldr x3, [sp+120]
    0057e59cldrsb x27, [x3]
    0057e5a0ldr x2, [x3+16]
    0057e5a4ldr x3, [x3]
    0057e5a8subs xzr, x2, x1
    0057e5acb.hs 0x57e5b4
    0057e5b0b 0x57e6dc
    0057e5b4
    0057e5b4loc_57e5b4:
    0057e5b4b 0x57e5b8
    0057e5b8
    0057e5b8loc_57e5b8:
    0057e5b8str x3, [sp+80]
    0057e5bcstr x1, [sp+88]
    0057e5c0str x2, [sp+96]
    0057e5c4ldr x3, [sp+136]
    0057e5c8ldrsb x27, [x3]
    0057e5ccldr x2, [x3+16]
    0057e5d0ldr x3, [x3]
    0057e5d4ldr x1, [sp+24]
    0057e5d8subs xzr, x2, x1
    0057e5dcb.hs 0x57e5e4
    0057e5e0b 0x57e6d8
    0057e5e4
    0057e5e4loc_57e5e4:
    0057e5e4b 0x57e5e8
    0057e5e8
    0057e5e8loc_57e5e8:
    0057e5e8str x3, [sp+56]
    0057e5ecstr x1, [sp+64]
    0057e5f0str x2, [sp+72]
    0057e5f4ldr x0, [sp+128]
    0057e5f8bl crypto/internal/fips140/bigmod.ctMask
    0057e5fcstr x0, [sp+32]
    0057e600str xzr, [sp+40]
    0057e604b 0x57e608
    0057e608
    0057e608loc_57e608:
    0057e608ldr x2, [sp+24]
    0057e60cldr x3, [sp+40]
    0057e610subs xzr, x2, x3
    0057e614b.gt 0x57e61c
    0057e618b 0x57e6b0
    0057e61c
    0057e61cloc_57e61c:
    0057e61cldr x0, [sp+40]
    0057e620ldr x1, [sp+88]
    0057e624ldr x2, [sp+80]
    0057e628subs xzr, x0, x1
    0057e62cb.lo 0x57e634
    0057e630b 0x57e6d4
    0057e634
    0057e634loc_57e634:
    0057e634ldr x2, [x2+3*x0]
    0057e638ldr x3, [sp+32]
    0057e63cldr x0, [sp+40]
    0057e640ldr x1, [sp+88]
    0057e644ldr x4, [sp+80]
    0057e648subs xzr, x0, x1
    0057e64cb.lo 0x57e654
    0057e650b 0x57e6d0
    0057e654
    0057e654loc_57e654:
    0057e654ldr x4, [x4+3*x0]
    0057e658ldr x0, [sp+40]
    0057e65cldr x1, [sp+64]
    0057e660ldr x5, [sp+56]
    0057e664subs xzr, x0, x1
    0057e668b.lo 0x57e670
    0057e66cb 0x57e6cc
    0057e670
    0057e670loc_57e670:
    0057e670ldr x6, [sp+40]
    0057e674ldr x1, [sp+88]
    0057e678ldr x7, [sp+80]
    0057e67cldr x5, [x5+3*x0]
    0057e680eor x4, x4, x5
    0057e684and x3, x3, x4
    0057e688eor x2, x2, x3
    0057e68csubs xzr, x1, x6
    0057e690b.hi 0x57e698
    0057e694b 0x57e6c4
    0057e698
    0057e698loc_57e698:
    0057e698str x2, [x7+3*x6]
    0057e69cb 0x57e6a0
    0057e6a0
    0057e6a0loc_57e6a0:
    0057e6a0ldr x2, [sp+40]
    0057e6a4add x2, x2, 1
    0057e6a8str x2, [sp+40]
    0057e6acb 0x57e608
    0057e6b0
    0057e6b0loc_57e6b0:
    0057e6b0ldr x0, [sp+120]
    0057e6b4str x0, [sp+48]
    0057e6b8ldur x29, [sp-8]
    0057e6bcldr x30, [sp], 112
    0057e6c0ret x30
    0057e6c4
    0057e6c4loc_57e6c4:
    0057e6c4mov x0, x6
    0057e6c8bl runtime.panicIndex
    0057e6cc
    0057e6ccloc_57e6cc:
    0057e6ccbl runtime.panicIndex
    0057e6d0
    0057e6d0loc_57e6d0:
    0057e6d0bl runtime.panicIndex
    0057e6d4
    0057e6d4loc_57e6d4:
    0057e6d4bl runtime.panicIndex
    0057e6d8
    0057e6d8loc_57e6d8:
    0057e6d8bl runtime.panicSliceAcap
    0057e6dc
    0057e6dcloc_57e6dc:
    0057e6dcbl runtime.panicSliceAcap
    0057e6e0hint
    0057e6e4
    0057e6e4loc_57e6e4:
    0057e6e4stp x0, x1, [sp+8]
    0057e6e8str x2, [sp+24]
    0057e6ecmov x3, x30
    0057e6f0bl runtime.morestack_noctxt.abi0
    0057e6f4ldp x0, x1, [sp+8]
    0057e6f8ldr x2, [sp+24]
    0057e6fcb 0x57e560
    0057e560
    0057e700
    0057e700crypto/internal/fips140/bigmod.(*Nat).add: ; void crypto/internal/fips140/bigmod.(*Nat).add(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * y)
    0057e700ldr x16, [x28+16]
    0057e704sub x17, sp, 32
    0057e708subs xzr, x17, x16
    0057e70cb.ls 0x57e878
    0057e710str x30, [sp-160]!
    0057e714stur x29, [sp-8]
    0057e718sub x29, sp, 8
    0057e71cstr x0, [sp+168]
    0057e720str x1, [sp+176]
    0057e724str xzr, [sp+48]
    0057e728ldrsb x27, [x0]
    0057e72cldr x1, [x0+8]
    0057e730str x1, [sp+32]
    0057e734ldrsb x27, [x0]
    0057e738ldr x2, [x0+16]
    0057e73cldr x3, [x0]
    0057e740subs xzr, x2, x1
    0057e744b.hs 0x57e74c
    0057e748b 0x57e870
    0057e74c
    0057e74cloc_57e74c:
    0057e74cb 0x57e750
    0057e750
    0057e750loc_57e750:
    0057e750str x3, [sp+128]
    0057e754str x1, [sp+136]
    0057e758str x2, [sp+144]
    0057e75cldr x3, [sp+176]
    0057e760ldrsb x27, [x3]
    0057e764ldr x2, [x3+16]
    0057e768ldr x3, [x3]
    0057e76cldr x1, [sp+32]
    0057e770subs xzr, x2, x1
    0057e774b.hs 0x57e77c
    0057e778b 0x57e86c
    0057e77c
    0057e77cloc_57e77c:
    0057e77cb 0x57e780
    0057e780
    0057e780loc_57e780:
    0057e780str x3, [sp+104]
    0057e784str x1, [sp+112]
    0057e788str x2, [sp+120]
    0057e78cstr xzr, [sp+40]
    0057e790b 0x57e794
    0057e794
    0057e794loc_57e794:
    0057e794ldr x2, [sp+32]
    0057e798ldr x3, [sp+40]
    0057e79csubs xzr, x2, x3
    0057e7a0b.gt 0x57e7a8
    0057e7a4b 0x57e850
    0057e7a8
    0057e7a8loc_57e7a8:
    0057e7a8ldr x0, [sp+40]
    0057e7acldr x1, [sp+136]
    0057e7b0ldr x2, [sp+128]
    0057e7b4subs xzr, x1, x0
    0057e7b8b.hi 0x57e7c0
    0057e7bcb 0x57e868
    0057e7c0
    0057e7c0loc_57e7c0:
    0057e7c0ldr x2, [x2+3*x0]
    0057e7c4str x2, [sp+88]
    0057e7c8ldr x0, [sp+40]
    0057e7ccldr x1, [sp+112]
    0057e7d0ldr x3, [sp+104]
    0057e7d4subs xzr, x0, x1
    0057e7d8b.lo 0x57e7e0
    0057e7dcb 0x57e864
    0057e7e0
    0057e7e0loc_57e7e0:
    0057e7e0ldr x3, [x3+3*x0]
    0057e7e4str x3, [sp+80]
    0057e7e8ldr x4, [sp+48]
    0057e7ecmovn x5, 0
    0057e7f0adds x5, x4, x5
    0057e7f4adcs x5, x2, x3
    0057e7f8str x5, [sp+56]
    0057e7fcmovn x6, 0
    0057e800adds x4, x4, x6
    0057e804adcs x2, x2, x3
    0057e808adc x2, xzr, xzr
    0057e80cstr x2, [sp+96]
    0057e810str x5, [sp+72]
    0057e814str x2, [sp+64]
    0057e818ldr x0, [sp+40]
    0057e81cldr x1, [sp+136]
    0057e820ldr x2, [sp+128]
    0057e824subs xzr, x0, x1
    0057e828b.lo 0x57e830
    0057e82cb 0x57e860
    0057e830
    0057e830loc_57e830:
    0057e830str x5, [x2+3*x0]
    0057e834ldr x2, [sp+64]
    0057e838str x2, [sp+48]
    0057e83cb 0x57e840
    0057e840
    0057e840loc_57e840:
    0057e840ldr x2, [sp+40]
    0057e844add x2, x2, 1
    0057e848str x2, [sp+40]
    0057e84cb 0x57e794
    0057e850
    0057e850loc_57e850:
    0057e850ldr x0, [sp+48]
    0057e854ldur x29, [sp-8]
    0057e858ldr x30, [sp], 160
    0057e85cret x30
    0057e860
    0057e860loc_57e860:
    0057e860bl runtime.panicIndex
    0057e864
    0057e864loc_57e864:
    0057e864bl runtime.panicIndex
    0057e868
    0057e868loc_57e868:
    0057e868bl runtime.panicIndex
    0057e86c
    0057e86cloc_57e86c:
    0057e86cbl runtime.panicSliceAcap
    0057e870
    0057e870loc_57e870:
    0057e870bl runtime.panicSliceAcap
    0057e874hint
    0057e878
    0057e878loc_57e878:
    0057e878stp x0, x1, [sp+8]
    0057e87cmov x3, x30
    0057e880bl runtime.morestack_noctxt.abi0
    0057e884ldp x0, x1, [sp+8]
    0057e888b 0x57e700
    0057e88cudf 0
    0057e700
    0057e890
    0057e890crypto/internal/fips140/bigmod.(*Nat).sub: ; void crypto/internal/fips140/bigmod.(*Nat).sub(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * y)
    0057e890ldr x16, [x28+16]
    0057e894sub x17, sp, 32
    0057e898subs xzr, x17, x16
    0057e89cb.ls 0x57ea04
    0057e8a0str x30, [sp-160]!
    0057e8a4stur x29, [sp-8]
    0057e8a8sub x29, sp, 8
    0057e8acstr x0, [sp+168]
    0057e8b0str x1, [sp+176]
    0057e8b4str xzr, [sp+48]
    0057e8b8ldrsb x27, [x0]
    0057e8bcldr x1, [x0+8]
    0057e8c0str x1, [sp+32]
    0057e8c4ldrsb x27, [x0]
    0057e8c8ldr x2, [x0+16]
    0057e8ccldr x3, [x0]
    0057e8d0subs xzr, x2, x1
    0057e8d4b.hs 0x57e8dc
    0057e8d8b 0x57e9fc
    0057e8dc
    0057e8dcloc_57e8dc:
    0057e8dcb 0x57e8e0
    0057e8e0
    0057e8e0loc_57e8e0:
    0057e8e0str x3, [sp+128]
    0057e8e4str x1, [sp+136]
    0057e8e8str x2, [sp+144]
    0057e8ecldr x3, [sp+176]
    0057e8f0ldrsb x27, [x3]
    0057e8f4ldr x2, [x3+16]
    0057e8f8ldr x3, [x3]
    0057e8fcldr x1, [sp+32]
    0057e900subs xzr, x2, x1
    0057e904b.hs 0x57e90c
    0057e908b 0x57e9f8
    0057e90c
    0057e90cloc_57e90c:
    0057e90cb 0x57e910
    0057e910
    0057e910loc_57e910:
    0057e910str x3, [sp+104]
    0057e914str x1, [sp+112]
    0057e918str x2, [sp+120]
    0057e91cstr xzr, [sp+40]
    0057e920b 0x57e924
    0057e924
    0057e924loc_57e924:
    0057e924ldr x2, [sp+32]
    0057e928ldr x3, [sp+40]
    0057e92csubs xzr, x2, x3
    0057e930b.gt 0x57e938
    0057e934b 0x57e9dc
    0057e938
    0057e938loc_57e938:
    0057e938ldr x0, [sp+40]
    0057e93cldr x1, [sp+136]
    0057e940ldr x2, [sp+128]
    0057e944subs xzr, x1, x0
    0057e948b.hi 0x57e950
    0057e94cb 0x57e9f4
    0057e950
    0057e950loc_57e950:
    0057e950ldr x2, [x2+3*x0]
    0057e954str x2, [sp+88]
    0057e958ldr x0, [sp+40]
    0057e95cldr x1, [sp+112]
    0057e960ldr x3, [sp+104]
    0057e964subs xzr, x0, x1
    0057e968b.lo 0x57e970
    0057e96cb 0x57e9f0
    0057e970
    0057e970loc_57e970:
    0057e970ldr x3, [x3+3*x0]
    0057e974str x3, [sp+80]
    0057e978ldr x4, [sp+48]
    0057e97csubs x5, xzr, x4
    0057e980sbcs x5, x2, x3
    0057e984str x5, [sp+56]
    0057e988subs x4, xzr, x4
    0057e98csbcs x2, x2, x3
    0057e990sbc x2, xzr, xzr
    0057e994sub x2, xzr, x2
    0057e998str x2, [sp+96]
    0057e99cstr x5, [sp+72]
    0057e9a0str x2, [sp+64]
    0057e9a4ldr x0, [sp+40]
    0057e9a8ldr x1, [sp+136]
    0057e9acldr x2, [sp+128]
    0057e9b0subs xzr, x0, x1
    0057e9b4b.lo 0x57e9bc
    0057e9b8b 0x57e9ec
    0057e9bc
    0057e9bcloc_57e9bc:
    0057e9bcstr x5, [x2+3*x0]
    0057e9c0ldr x2, [sp+64]
    0057e9c4str x2, [sp+48]
    0057e9c8b 0x57e9cc
    0057e9cc
    0057e9ccloc_57e9cc:
    0057e9ccldr x2, [sp+40]
    0057e9d0add x2, x2, 1
    0057e9d4str x2, [sp+40]
    0057e9d8b 0x57e924
    0057e9dc
    0057e9dcloc_57e9dc:
    0057e9dcldr x0, [sp+48]
    0057e9e0ldur x29, [sp-8]
    0057e9e4ldr x30, [sp], 160
    0057e9e8ret x30
    0057e9ec
    0057e9ecloc_57e9ec:
    0057e9ecbl runtime.panicIndex
    0057e9f0
    0057e9f0loc_57e9f0:
    0057e9f0bl runtime.panicIndex
    0057e9f4
    0057e9f4loc_57e9f4:
    0057e9f4bl runtime.panicIndex
    0057e9f8
    0057e9f8loc_57e9f8:
    0057e9f8bl runtime.panicSliceAcap
    0057e9fc
    0057e9fcloc_57e9fc:
    0057e9fcbl runtime.panicSliceAcap
    0057ea00hint
    0057ea04
    0057ea04loc_57ea04:
    0057ea04stp x0, x1, [sp+8]
    0057ea08mov x3, x30
    0057ea0cbl runtime.morestack_noctxt.abi0
    0057ea10ldp x0, x1, [sp+8]
    0057ea14b 0x57e890
    0057ea18udf 0
    0057ea1cudf 0
    0057e890
    0057ea20
    0057ea20crypto/internal/fips140/bigmod.(*Nat).BitLenVarTime: ; void crypto/internal/fips140/bigmod.(*Nat).BitLenVarTime(crypto/internal/fips140/bigmod.Nat * x)
    0057ea20ldr x16, [x28+16]
    0057ea24subs xzr, sp, x16
    0057ea28b.ls 0x57eb2c
    0057ea2cstr x30, [sp-96]!
    0057ea30stur x29, [sp-8]
    0057ea34sub x29, sp, 8
    0057ea38str x0, [sp+104]
    0057ea3cstr xzr, [sp+24]
    0057ea40ldrsb x27, [x0]
    0057ea44ldr x1, [x0+8]
    0057ea48str x1, [sp+32]
    0057ea4cldrsb x27, [x0]
    0057ea50ldr x2, [x0+16]
    0057ea54ldr x3, [x0]
    0057ea58subs xzr, x2, x1
    0057ea5cb.hs 0x57ea64
    0057ea60b 0x57eb24
    0057ea64
    0057ea64loc_57ea64:
    0057ea64b 0x57ea68
    0057ea68
    0057ea68loc_57ea68:
    0057ea68str x3, [sp+64]
    0057ea6cstr x1, [sp+72]
    0057ea70str x2, [sp+80]
    0057ea74ldr x2, [sp+32]
    0057ea78sub x2, x2, 1
    0057ea7cstr x2, [sp+40]
    0057ea80b 0x57ea84
    0057ea84
    0057ea84loc_57ea84:
    0057ea84ldr x2, [sp+40]
    0057ea88tbz x2, 63, 0x57ea90
    0057ea8cb 0x57eb08
    0057ea90
    0057ea90loc_57ea90:
    0057ea90ldr x0, [sp+40]
    0057ea94ldr x1, [sp+72]
    0057ea98ldr x2, [sp+64]
    0057ea9csubs xzr, x1, x0
    0057eaa0b.hi 0x57eaa8
    0057eaa4b 0x57eb20
    0057eaa8
    0057eaa8loc_57eaa8:
    0057eaa8ldr x2, [x2+3*x0]
    0057eaaccbnz x2, 0x57eab4
    0057eab0b 0x57eaf4
    0057eab4
    0057eab4loc_57eab4:
    0057eab4ldr x0, [sp+40]
    0057eab8ldr x1, [sp+72]
    0057eabcldr x2, [sp+64]
    0057eac0subs xzr, x0, x1
    0057eac4b.lo 0x57eacc
    0057eac8b 0x57eb1c
    0057eacc
    0057eaccloc_57eacc:
    0057eaccldr x0, [x2+3*x0]
    0057ead0str x0, [sp+48]
    0057ead4bl crypto/internal/fips140/bigmod.bitLen
    0057ead8str x0, [sp+56]
    0057eadcldr x1, [sp+40]
    0057eae0add x0, x0, x1, lsl #6
    0057eae4str x0, [sp+24]
    0057eae8ldur x29, [sp-8]
    0057eaecldr x30, [sp], 96
    0057eaf0ret x30
    0057eaf4
    0057eaf4loc_57eaf4:
    0057eaf4b 0x57eaf8
    0057eaf8
    0057eaf8loc_57eaf8:
    0057eaf8ldr x2, [sp+40]
    0057eafcsub x2, x2, 1
    0057eb00str x2, [sp+40]
    0057eb04b 0x57ea84
    0057eb08
    0057eb08loc_57eb08:
    0057eb08str xzr, [sp+24]
    0057eb0cmov x0, xzr
    0057eb10ldur x29, [sp-8]
    0057eb14ldr x30, [sp], 96
    0057eb18ret x30
    0057eb1c
    0057eb1cloc_57eb1c:
    0057eb1cbl runtime.panicIndex
    0057eb20
    0057eb20loc_57eb20:
    0057eb20bl runtime.panicIndex
    0057eb24
    0057eb24loc_57eb24:
    0057eb24bl runtime.panicSliceAcap
    0057eb28hint
    0057eb2c
    0057eb2cloc_57eb2c:
    0057eb2cstr x0, [sp+8]
    0057eb30mov x3, x30
    0057eb34bl runtime.morestack_noctxt.abi0
    0057eb38ldr x0, [sp+8]
    0057eb3cb 0x57ea20
    0057ea20
    0057eb40
    0057eb40crypto/internal/fips140/bigmod.bitLen: ; void crypto/internal/fips140/bigmod.bitLen(uint n)
    0057eb40str x30, [sp-32]!
    0057eb44stur x29, [sp-8]
    0057eb48sub x29, sp, 8
    0057eb4cstr x0, [sp+40]
    0057eb50str xzr, [sp+8]
    0057eb54str xzr, [sp+16]
    0057eb58b 0x57eb5c
    0057eb5c
    0057eb5cloc_57eb5c:
    0057eb5cldr x1, [sp+40]
    0057eb60cbnz x1, 0x57eb68
    0057eb64b 0x57eb88
    0057eb68
    0057eb68loc_57eb68:
    0057eb68ldr x1, [sp+16]
    0057eb6cadd x1, x1, 1
    0057eb70str x1, [sp+16]
    0057eb74ldr x1, [sp+40]
    0057eb78ubfm x1, x1, 1, 63
    0057eb7cstr x1, [sp+40]
    0057eb80b 0x57eb84
    0057eb84
    0057eb84loc_57eb84:
    0057eb84b 0x57eb5c
    0057eb88
    0057eb88loc_57eb88:
    0057eb88ldr x0, [sp+16]
    0057eb8cstr x0, [sp+8]
    0057eb90add x29, sp, 24
    0057eb94add sp, sp, 32
    0057eb98ret x30
    0057eb9cudf 0
    0057eb40
    0057eba0
    0057eba0crypto/internal/fips140/bigmod.rr: ; void crypto/internal/fips140/bigmod.rr(crypto/internal/fips140/bigmod.Modulus * m)
    0057eba0ldr x16, [x28+16]
    0057eba4sub x17, sp, 16
    0057eba8subs xzr, x17, x16
    0057ebacb.ls 0x57edd8
    0057ebb0str x30, [sp-144]!
    0057ebb4stur x29, [sp-8]
    0057ebb8sub x29, sp, 8
    0057ebbcstr x0, [sp+152]
    0057ebc0str xzr, [sp+112]
    0057ebc4bl crypto/internal/fips140/bigmod.NewNat
    0057ebc8str x0, [sp+128]
    0057ebccldr x1, [sp+152]
    0057ebd0bl crypto/internal/fips140/bigmod.(*Nat).ExpandFor
    0057ebd4str x0, [sp+120]
    0057ebd8ldrsb x27, [x0]
    0057ebdcldr x0, [x0+8]
    0057ebe0str x0, [sp+104]
    0057ebe4str x0, [sp+48]
    0057ebe8ldr x0, [sp+152]
    0057ebecbl crypto/internal/fips140/bigmod.(*Modulus).BitLen
    0057ebf0str x0, [sp+104]
    0057ebf4str x0, [sp+56]
    0057ebf8ldr x0, [sp+48]
    0057ebfcubfm x0, x0, 58, 57
    0057ec00str x0, [sp+64]
    0057ec04ldr x0, [sp+48]
    0057ec08sub x0, x0, 1
    0057ec0cstr x0, [sp+96]
    0057ec10ldr x1, [sp+120]
    0057ec14ldrsb x27, [x1]
    0057ec18ldr x2, [x1+8]
    0057ec1cldr x1, [x1]
    0057ec20ldr x3, [sp+56]
    0057ec24sub x3, x3, 1
    0057ec28orr x4, xzr, 1
    0057ec2clslv x3, x4, x3
    0057ec30subs xzr, x2, x0
    0057ec34b.hi 0x57ec3c
    0057ec38b 0x57edcc
    0057ec3c
    0057ec3cloc_57ec3c:
    0057ec3cstr x3, [x1+3*x0]
    0057ec40ldr x4, [sp+56]
    0057ec44sub x4, x4, 1
    0057ec48str x4, [sp+88]
    0057ec4cb 0x57ec50
    0057ec50
    0057ec50loc_57ec50:
    0057ec50ldr x4, [sp+64]
    0057ec54ldr x5, [sp+88]
    0057ec58subs xzr, x4, x5
    0057ec5cb.hi 0x57ec64
    0057ec60b 0x57ec88
    0057ec64
    0057ec64loc_57ec64:
    0057ec64ldr x1, [sp+120]
    0057ec68ldr x2, [sp+152]
    0057ec6cldr x0, [sp+120]
    0057ec70bl crypto/internal/fips140/bigmod.(*Nat).Add
    0057ec74b 0x57ec78
    0057ec78
    0057ec78loc_57ec78:
    0057ec78ldr x4, [sp+88]
    0057ec7cadd x4, x4, 1
    0057ec80str x4, [sp+88]
    0057ec84b 0x57ec50
    0057ec88
    0057ec88loc_57ec88:
    0057ec88ldr x4, [sp+48]
    0057ec8cubfm x4, x4, 2, 63
    0057ec90str x4, [sp+40]
    0057ec94orr x4, xzr, 64
    0057ec98str x4, [sp+80]
    0057ec9cb 0x57eca0
    0057eca0
    0057eca0loc_57eca0:
    0057eca0ldr x4, [sp+64]
    0057eca4ldr x5, [sp+80]
    0057eca8tbz x5, 63, 0x57ecb0
    0057ecacb 0x57edc8
    0057ecb0
    0057ecb0loc_57ecb0:
    0057ecb0lsrv x4, x4, x5
    0057ecb4ldr x6, [sp+40]
    0057ecb8subs xzr, x5, 64
    0057ecbccsel x4, x4, xzr, lo
    0057ecc0subs xzr, x4, x6
    0057ecc4b.ls 0x57eccc
    0057ecc8b 0x57ece0
    0057eccc
    0057ecccloc_57eccc:
    0057ecccldr x4, [sp+80]
    0057ecd0sub x4, x4, 1
    0057ecd4str x4, [sp+80]
    0057ecd8b 0x57ecdc
    0057ecdc
    0057ecdcloc_57ecdc:
    0057ecdcb 0x57eca0
    0057ece0
    0057ece0loc_57ece0:
    0057ece0str xzr, [sp+72]
    0057ece4b 0x57ece8
    0057ece8
    0057ece8loc_57ece8:
    0057ece8ldr x4, [sp+72]
    0057ececldr x5, [sp+64]
    0057ecf0ldr x6, [sp+80]
    0057ecf4tbz x6, 63, 0x57ecfc
    0057ecf8b 0x57edc4
    0057ecfc
    0057ecfcloc_57ecfc:
    0057ecfclsrv x5, x5, x6
    0057ed00subs xzr, x6, 64
    0057ed04csel x5, x5, xzr, lo
    0057ed08subs xzr, x5, x4
    0057ed0cb.hi 0x57ed14
    0057ed10b 0x57ed38
    0057ed14
    0057ed14loc_57ed14:
    0057ed14ldr x1, [sp+120]
    0057ed18ldr x2, [sp+152]
    0057ed1cldr x0, [sp+120]
    0057ed20bl crypto/internal/fips140/bigmod.(*Nat).Add
    0057ed24b 0x57ed28
    0057ed28
    0057ed28loc_57ed28:
    0057ed28ldr x4, [sp+72]
    0057ed2cadd x4, x4, 1
    0057ed30str x4, [sp+72]
    0057ed34b 0x57ece8
    0057ed38
    0057ed38loc_57ed38:
    0057ed38b 0x57ed3c
    0057ed3c
    0057ed3cloc_57ed3c:
    0057ed3cldr x4, [sp+80]
    0057ed40subs xzr, x4, 0
    0057ed44b.gt 0x57ed4c
    0057ed48b 0x57edac
    0057ed4c
    0057ed4cloc_57ed4c:
    0057ed4cldr x1, [sp+120]
    0057ed50ldr x2, [sp+120]
    0057ed54ldr x3, [sp+152]
    0057ed58ldr x0, [sp+120]
    0057ed5cbl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
    0057ed60ldr x4, [sp+80]
    0057ed64sub x4, x4, 1
    0057ed68str x4, [sp+80]
    0057ed6cldr x5, [sp+64]
    0057ed70tbz x4, 63, 0x57ed78
    0057ed74b 0x57edc0
    0057ed78
    0057ed78loc_57ed78:
    0057ed78lsrv x5, x5, x4
    0057ed7csubs xzr, x4, 64
    0057ed80csel x4, x5, xzr, lo
    0057ed84tbnz w4, 0, 0x57ed8c
    0057ed88b 0x57eda0
    0057ed8c
    0057ed8cloc_57ed8c:
    0057ed8cldr x1, [sp+120]
    0057ed90ldr x2, [sp+152]
    0057ed94ldr x0, [sp+120]
    0057ed98bl crypto/internal/fips140/bigmod.(*Nat).Add
    0057ed9cb 0x57eda4
    0057eda0
    0057eda0loc_57eda0:
    0057eda0b 0x57eda4
    0057eda4
    0057eda4loc_57eda4:
    0057eda4b 0x57eda8
    0057eda8
    0057eda8loc_57eda8:
    0057eda8b 0x57ed3c
    0057edac
    0057edacloc_57edac:
    0057edacldr x0, [sp+120]
    0057edb0str x0, [sp+112]
    0057edb4ldur x29, [sp-8]
    0057edb8ldr x30, [sp], 144
    0057edbcret x30
    0057edc0
    0057edc0loc_57edc0:
    0057edc0bl runtime.panicshift
    0057edc4
    0057edc4loc_57edc4:
    0057edc4bl runtime.panicshift
    0057edc8
    0057edc8loc_57edc8:
    0057edc8bl runtime.panicshift
    0057edcc
    0057edccloc_57edcc:
    0057edccmov x1, x2
    0057edd0bl runtime.panicIndexU
    0057edd4hint
    0057edd8
    0057edd8loc_57edd8:
    0057edd8str x0, [sp+8]
    0057eddcmov x3, x30
    0057ede0bl runtime.morestack_noctxt.abi0
    0057ede4ldr x0, [sp+8]
    0057ede8b 0x57eba0
    0057edecudf 0
    0057eba0
    0057edf0
    0057edf0crypto/internal/fips140/bigmod.minusInverseModW: ; void crypto/internal/fips140/bigmod.minusInverseModW(uint x)
    0057edf0str x30, [sp-48]!
    0057edf4stur x29, [sp-8]
    0057edf8sub x29, sp, 8
    0057edfcstr x0, [sp+56]
    0057ee00str xzr, [sp+16]
    0057ee04str x0, [sp+24]
    0057ee08str xzr, [sp+32]
    0057ee0cb 0x57ee10
    0057ee10
    0057ee10loc_57ee10:
    0057ee10ldr x1, [sp+32]
    0057ee14subs xzr, x1, 5
    0057ee18b.lt 0x57ee20
    0057ee1cb 0x57ee50
    0057ee20
    0057ee20loc_57ee20:
    0057ee20ldr x1, [sp+24]
    0057ee24ldr x2, [sp+56]
    0057ee28ldr x3, [sp+24]
    0057ee2cmsub x2, x2, x3, xzr
    0057ee30add x2, x2, 2
    0057ee34madd x1, x1, x2, xzr
    0057ee38str x1, [sp+24]
    0057ee3cb 0x57ee40
    0057ee40
    0057ee40loc_57ee40:
    0057ee40ldr x1, [sp+32]
    0057ee44add x1, x1, 1
    0057ee48str x1, [sp+32]
    0057ee4cb 0x57ee10
    0057ee50
    0057ee50loc_57ee50:
    0057ee50ldr x1, [sp+24]
    0057ee54sub x0, xzr, x1
    0057ee58str x0, [sp+16]
    0057ee5cadd x29, sp, 40
    0057ee60add sp, sp, 48
    0057ee64ret x30
    0057ee68udf 0
    0057ee6cudf 0
    0057edf0
    0057ee70
    0057ee70crypto/internal/fips140/bigmod.NewModulus: ; void crypto/internal/fips140/bigmod.NewModulus(struct []uint8 b)
    0057ee70ldr x16, [x28+16]
    0057ee74sub x17, sp, 16
    0057ee78subs xzr, x17, x16
    0057ee7cb.ls 0x57ef18
    0057ee80str x30, [sp-144]!
    0057ee84stur x29, [sp-8]
    0057ee88sub x29, sp, 8
    0057ee8cstr x0, [sp+152]
    0057ee90str x1, [sp+160]
    0057ee94str x2, [sp+168]
    0057ee98str xzr, [sp+64]
    0057ee9cstp xzr, xzr, [sp+48]
    0057eea0bl crypto/internal/fips140/bigmod.NewNat
    0057eea4str x0, [sp+104]
    0057eea8ldr x1, [sp+152]
    0057eeacldr x2, [sp+160]
    0057eeb0ldr x3, [sp+168]
    0057eeb4bl crypto/internal/fips140/bigmod.(*Nat).resetToBytes
    0057eeb8str x0, [sp+72]
    0057eebcstr xzr, [sp+96]
    0057eec0stp xzr, xzr, [sp+80]
    0057eec4ldr x0, [sp+72]
    0057eec8bl crypto/internal/fips140/bigmod.newModulus
    0057eeccstr x0, [sp+96]
    0057eed0str x1, [sp+80]
    0057eed4str x2, [sp+88]
    0057eed8ldr x0, [sp+96]
    0057eedcstr x0, [sp+128]
    0057eee0ldr x0, [sp+80]
    0057eee4ldr x1, [sp+88]
    0057eee8str x0, [sp+112]
    0057eeecstr x1, [sp+120]
    0057eef0ldr x0, [sp+128]
    0057eef4str x0, [sp+64]
    0057eef8ldr x1, [sp+112]
    0057eefcldr x2, [sp+120]
    0057ef00str x1, [sp+48]
    0057ef04str x2, [sp+56]
    0057ef08ldr x0, [sp+64]
    0057ef0cldur x29, [sp-8]
    0057ef10ldr x30, [sp], 144
    0057ef14ret x30
    0057ef18
    0057ef18loc_57ef18:
    0057ef18stp x0, x1, [sp+8]
    0057ef1cstr x2, [sp+24]
    0057ef20mov x3, x30
    0057ef24bl runtime.morestack_noctxt.abi0
    0057ef28ldp x0, x1, [sp+8]
    0057ef2cldr x2, [sp+24]
    0057ef30b 0x57ee70
    0057ef34udf 0
    0057ef38udf 0
    0057ef3cudf 0
    0057ee70
    0057ef40
    0057ef40crypto/internal/fips140/bigmod.newModulus: ; void crypto/internal/fips140/bigmod.newModulus(crypto/internal/fips140/bigmod.Nat * n)
    0057ef40ldr x16, [x28+16]
    0057ef44sub x17, sp, 48
    0057ef48subs xzr, x17, x16
    0057ef4cb.ls 0x57f17c
    0057ef50str x30, [sp-176]!
    0057ef54stur x29, [sp-8]
    0057ef58sub x29, sp, 8
    0057ef5cstr x0, [sp+184]
    0057ef60str xzr, [sp+96]
    0057ef64stp xzr, xzr, [sp+80]
    0057ef68adrp x0, 0xea000
    0057ef6cadd x0, x0, 2720
    0057ef70bl runtime.newobject
    0057ef74str x0, [sp+160]
    0057ef78strb wzr, [x0+8]
    0057ef7cstr xzr, [x0+16]
    0057ef80adrp x27, 0x4cd000
    0057ef84ldr w1, [x27+3056]
    0057ef88cbz w1, 0x57ef90
    0057ef8cb 0x57ef94
    0057ef90
    0057ef90loc_57ef90:
    0057ef90b 0x57efac
    0057ef94
    0057ef94loc_57ef94:
    0057ef94ldr x1, [x0]
    0057ef98bl runtime.gcWriteBarrier2
    0057ef9cstr x1, [x25]
    0057efa0ldr x1, [x0+24]
    0057efa4str x1, [x25+8]
    0057efa8b 0x57efac
    0057efac
    0057efacloc_57efac:
    0057efacstr xzr, [x0]
    0057efb0str xzr, [x0+24]
    0057efb4ldr x1, [sp+160]
    0057efb8ldrsb x27, [x1]
    0057efbcldr x2, [sp+184]
    0057efc0adrp x27, 0x4cd000
    0057efc4ldr w3, [x27+3056]
    0057efc8cbz w3, 0x57efd0
    0057efccb 0x57efd4
    0057efd0
    0057efd0loc_57efd0:
    0057efd0b 0x57efe8
    0057efd4
    0057efd4loc_57efd4:
    0057efd4bl runtime.gcWriteBarrier2
    0057efd8str x2, [x25]
    0057efdcldr x3, [x1]
    0057efe0str x3, [x25+8]
    0057efe4b 0x57efe8
    0057efe8
    0057efe8loc_57efe8:
    0057efe8str x2, [x1]
    0057efecldr x1, [sp+160]
    0057eff0str x1, [sp+104]
    0057eff4ldrsb x27, [x1]
    0057eff8ldr x0, [x1]
    0057effcstr x0, [sp+152]
    0057f000bl crypto/internal/fips140/bigmod.(*Nat).IsZero
    0057f004str x0, [sp+64]
    0057f008subs xzr, x0, 1
    0057f00ccset x1, eq
    0057f010strb w1, [sp+47]
    0057f014b.eq 0x57f01c
    0057f018b 0x57f020
    0057f01c
    0057f01cloc_57f01c:
    0057f01cb 0x57f048
    0057f020
    0057f020loc_57f020:
    0057f020ldr x1, [sp+104]
    0057f024ldrsb x27, [x1]
    0057f028ldr x0, [x1]
    0057f02cstr x0, [sp+144]
    0057f030bl crypto/internal/fips140/bigmod.(*Nat).IsOne
    0057f034str x0, [sp+56]
    0057f038subs xzr, x0, 1
    0057f03ccset x1, eq
    0057f040strb w1, [sp+47]
    0057f044b 0x57f048
    0057f048
    0057f048loc_57f048:
    0057f048ldrb w2, [sp+47]
    0057f04ctbnz w2, 0, 0x57f054
    0057f050b 0x57f090
    0057f054
    0057f054loc_57f054:
    0057f054adrp x0, 0x137000
    0057f058add x0, x0, 1916
    0057f05cmovz x1, 19
    0057f060bl errors.New
    0057f064str x0, [sp+120]
    0057f068str x1, [sp+128]
    0057f06cstr xzr, [sp+96]
    0057f070ldr x1, [sp+120]
    0057f074ldr x2, [sp+128]
    0057f078str x1, [sp+80]
    0057f07cstr x2, [sp+88]
    0057f080ldr x0, [sp+96]
    0057f084ldur x29, [sp-8]
    0057f088ldr x30, [sp], 176
    0057f08cret x30
    0057f090
    0057f090loc_57f090:
    0057f090ldr x1, [sp+104]
    0057f094ldrsb x27, [x1]
    0057f098ldr x0, [x1]
    0057f09cstr x0, [sp+136]
    0057f0a0bl crypto/internal/fips140/bigmod.(*Nat).IsOdd
    0057f0a4str x0, [sp+64]
    0057f0a8subs xzr, x0, 1
    0057f0acb.eq 0x57f0b4
    0057f0b0b 0x57f148
    0057f0b4
    0057f0b4loc_57f0b4:
    0057f0b4ldr x2, [sp+104]
    0057f0b8ldrsb x27, [x2]
    0057f0bcorr x3, xzr, 1
    0057f0c0strb w3, [x2+8]
    0057f0c4ldr x2, [sp+104]
    0057f0c8ldrsb x27, [x2]
    0057f0ccldr x2, [x2]
    0057f0d0ldrsb x27, [x2]
    0057f0d4ldr x1, [x2+8]
    0057f0d8ldr x2, [x2]
    0057f0dcsubs xzr, x1, 0
    0057f0e0b.hi 0x57f0e8
    0057f0e4b 0x57f170
    0057f0e8
    0057f0e8loc_57f0e8:
    0057f0e8ldr x0, [x2]
    0057f0ecstr x0, [sp+72]
    0057f0f0bl crypto/internal/fips140/bigmod.minusInverseModW
    0057f0f4str x0, [sp+48]
    0057f0f8ldr x1, [sp+104]
    0057f0fcldrsb x27, [x1]
    0057f100str x0, [x1+16]
    0057f104ldr x0, [sp+104]
    0057f108bl crypto/internal/fips140/bigmod.rr
    0057f10cstr x0, [sp+112]
    0057f110ldr x1, [sp+104]
    0057f114ldrsb x27, [x1]
    0057f118adrp x27, 0x4cc000
    0057f11cldr w2, [x27+3056]
    0057f120cbz w2, 0x57f128
    0057f124b 0x57f12c
    0057f128
    0057f128loc_57f128:
    0057f128b 0x57f140
    0057f12c
    0057f12cloc_57f12c:
    0057f12cbl runtime.gcWriteBarrier2
    0057f130str x0, [x25]
    0057f134ldr x3, [x1+24]
    0057f138str x3, [x25+8]
    0057f13cb 0x57f140
    0057f140
    0057f140loc_57f140:
    0057f140str x0, [x1+24]
    0057f144b 0x57f14c
    0057f148
    0057f148loc_57f148:
    0057f148b 0x57f14c
    0057f14c
    0057f14cloc_57f14c:
    0057f14cldr x3, [sp+104]
    0057f150str x3, [sp+96]
    0057f154stp xzr, xzr, [sp+80]
    0057f158ldr x0, [sp+96]
    0057f15cmov x1, xzr
    0057f160mov x2, xzr
    0057f164ldur x29, [sp-8]
    0057f168ldr x30, [sp], 176
    0057f16cret x30
    0057f170
    0057f170loc_57f170:
    0057f170mov x0, xzr
    0057f174bl runtime.panicIndex
    0057f178hint
    0057f17c
    0057f17cloc_57f17c:
    0057f17cstr x0, [sp+8]
    0057f180mov x3, x30
    0057f184bl runtime.morestack_noctxt.abi0
    0057f188ldr x0, [sp+8]
    0057f18cb 0x57ef40
    0057ef40
    0057f190
    0057f190crypto/internal/fips140/bigmod.(*Modulus).Size: ; void crypto/internal/fips140/bigmod.(*Modulus).Size(crypto/internal/fips140/bigmod.Modulus * m)
    0057f190ldr x16, [x28+16]
    0057f194subs xzr, sp, x16
    0057f198b.ls 0x57f1dc
    0057f19cstr x30, [sp-48]!
    0057f1a0stur x29, [sp-8]
    0057f1a4sub x29, sp, 8
    0057f1a8str x0, [sp+56]
    0057f1acstr xzr, [sp+24]
    0057f1b0bl crypto/internal/fips140/bigmod.(*Modulus).BitLen
    0057f1b4str x0, [sp+32]
    0057f1b8add x1, x0, 7
    0057f1bcsbfm x1, x1, 63, 63
    0057f1c0add x1, x0, x1, lsr #61
    0057f1c4add x1, x1, 7
    0057f1c8sbfm x0, x1, 3, 63
    0057f1ccstr x0, [sp+24]
    0057f1d0ldur x29, [sp-8]
    0057f1d4ldr x30, [sp], 48
    0057f1d8ret x30
    0057f1dc
    0057f1dcloc_57f1dc:
    0057f1dcstr x0, [sp+8]
    0057f1e0mov x3, x30
    0057f1e4bl runtime.morestack_noctxt.abi0
    0057f1e8ldr x0, [sp+8]
    0057f1ecb 0x57f190
    0057f190
    0057f1f0
    0057f1f0crypto/internal/fips140/bigmod.(*Modulus).BitLen: ; void crypto/internal/fips140/bigmod.(*Modulus).BitLen(crypto/internal/fips140/bigmod.Modulus * m)
    0057f1f0ldr x16, [x28+16]
    0057f1f4subs xzr, sp, x16
    0057f1f8b.ls 0x57f234
    0057f1fcstr x30, [sp-48]!
    0057f200stur x29, [sp-8]
    0057f204sub x29, sp, 8
    0057f208str x0, [sp+56]
    0057f20cstr xzr, [sp+16]
    0057f210ldrsb x27, [x0]
    0057f214ldr x0, [x0]
    0057f218str x0, [sp+32]
    0057f21cbl crypto/internal/fips140/bigmod.(*Nat).BitLenVarTime
    0057f220str x0, [sp+24]
    0057f224str x0, [sp+16]
    0057f228ldur x29, [sp-8]
    0057f22cldr x30, [sp], 48
    0057f230ret x30
    0057f234
    0057f234loc_57f234:
    0057f234str x0, [sp+8]
    0057f238mov x3, x30
    0057f23cbl runtime.morestack_noctxt.abi0
    0057f240ldr x0, [sp+8]
    0057f244b 0x57f1f0
    0057f248udf 0
    0057f24cudf 0
    0057f1f0
    0057f250
    0057f250crypto/internal/fips140/bigmod.(*Modulus).Nat: ; void crypto/internal/fips140/bigmod.(*Modulus).Nat(crypto/internal/fips140/bigmod.Modulus * m)
    0057f250ldr x16, [x28+16]
    0057f254subs xzr, sp, x16
    0057f258b.ls 0x57f2a4
    0057f25cstr x30, [sp-64]!
    0057f260stur x29, [sp-8]
    0057f264sub x29, sp, 8
    0057f268str x0, [sp+72]
    0057f26cstr xzr, [sp+32]
    0057f270bl crypto/internal/fips140/bigmod.NewNat
    0057f274str x0, [sp+40]
    0057f278ldr x0, [sp+72]
    0057f27cldrsb x27, [x0]
    0057f280ldr x1, [x0]
    0057f284str x1, [sp+48]
    0057f288ldr x0, [sp+40]
    0057f28cbl crypto/internal/fips140/bigmod.(*Nat).set
    0057f290ldr x0, [sp+40]
    0057f294str x0, [sp+32]
    0057f298ldur x29, [sp-8]
    0057f29cldr x30, [sp], 64
    0057f2a0ret x30
    0057f2a4
    0057f2a4loc_57f2a4:
    0057f2a4str x0, [sp+8]
    0057f2a8mov x3, x30
    0057f2acbl runtime.morestack_noctxt.abi0
    0057f2b0ldr x0, [sp+8]
    0057f2b4b 0x57f250
    0057f2b8udf 0
    0057f2bcudf 0
    0057f250
    0057f2c0
    0057f2c0crypto/internal/fips140/bigmod.(*Nat).shiftIn: ; void crypto/internal/fips140/bigmod.(*Nat).shiftIn(crypto/internal/fips140/bigmod.Nat * x, uint y, crypto/internal/fips140/bigmod.Modulus * m)
    0057f2c0ldr x16, [x28+16]
    0057f2c4sub x17, sp, 144
    0057f2c8subs xzr, x17, x16
    0057f2ccb.ls 0x57f5fc
    0057f2d0sub x20, sp, 272
    0057f2d4stp x29, x30, [x20-8]
    0057f2d8add sp, x20, 0
    0057f2dcsub x29, sp, 8
    0057f2e0str x0, [sp+280]
    0057f2e4str x1, [sp+288]
    0057f2e8str x2, [sp+296]
    0057f2ecstr xzr, [sp+168]
    0057f2f0bl crypto/internal/fips140/bigmod.NewNat
    0057f2f4str x0, [sp+256]
    0057f2f8ldr x1, [sp+296]
    0057f2fcbl crypto/internal/fips140/bigmod.(*Nat).resetFor
    0057f300str x0, [sp+248]
    0057f304ldr x0, [sp+296]
    0057f308ldrsb x27, [x0]
    0057f30cldr x0, [x0]
    0057f310ldrsb x27, [x0]
    0057f314ldr x1, [x0+8]
    0057f318str x1, [sp+32]
    0057f31cldr x0, [sp+280]
    0057f320ldrsb x27, [x0]
    0057f324ldr x2, [x0+16]
    0057f328ldr x0, [x0]
    0057f32csubs xzr, x2, x1
    0057f330b.hs 0x57f338
    0057f334b 0x57f5f4
    0057f338
    0057f338loc_57f338:
    0057f338b 0x57f33c
    0057f33c
    0057f33cloc_57f33c:
    0057f33cstr x0, [sp+176]
    0057f340str x1, [sp+184]
    0057f344str x2, [sp+192]
    0057f348ldr x3, [sp+248]
    0057f34cldrsb x27, [x3]
    0057f350ldr x2, [x3+16]
    0057f354ldr x3, [x3]
    0057f358ldr x1, [sp+32]
    0057f35csubs xzr, x2, x1
    0057f360b.hs 0x57f368
    0057f364b 0x57f5f0
    0057f368
    0057f368loc_57f368:
    0057f368b 0x57f36c
    0057f36c
    0057f36cloc_57f36c:
    0057f36cstr x3, [sp+224]
    0057f370str x1, [sp+232]
    0057f374str x2, [sp+240]
    0057f378ldr x3, [sp+296]
    0057f37cldrsb x27, [x3]
    0057f380ldr x3, [x3]
    0057f384ldrsb x27, [x3]
    0057f388ldr x2, [x3+16]
    0057f38cldr x3, [x3]
    0057f390ldr x1, [sp+32]
    0057f394subs xzr, x2, x1
    0057f398b.hs 0x57f3a0
    0057f39cb 0x57f5ec
    0057f3a0
    0057f3a0loc_57f3a0:
    0057f3a0b 0x57f3a4
    0057f3a4
    0057f3a4loc_57f3a4:
    0057f3a4str x3, [sp+200]
    0057f3a8str x1, [sp+208]
    0057f3acstr x2, [sp+216]
    0057f3b0str xzr, [sp+40]
    0057f3b4orr x3, xzr, 63
    0057f3b8str x3, [sp+72]
    0057f3bcb 0x57f3c0
    0057f3c0
    0057f3c0loc_57f3c0:
    0057f3c0ldr x3, [sp+72]
    0057f3c4tbz x3, 63, 0x57f3cc
    0057f3c8b 0x57f408
    0057f3cc
    0057f3ccloc_57f3cc:
    0057f3ccldr x1, [sp+288]
    0057f3d0ldr x2, [sp+72]
    0057f3d4tbz x2, 63, 0x57f3dc
    0057f3d8b 0x57f5e8
    0057f3dc
    0057f3dcloc_57f3dc:
    0057f3dclsrv x1, x1, x2
    0057f3e0subs xzr, x2, 64
    0057f3e4csel x1, x1, xzr, lo
    0057f3e8and x1, x1, 1
    0057f3ecstr x1, [sp+80]
    0057f3f0str xzr, [sp+88]
    0057f3f4ldr x0, [sp+40]
    0057f3f8bl crypto/internal/fips140/bigmod.ctMask
    0057f3fcstr x0, [sp+48]
    0057f400str xzr, [sp+64]
    0057f404b 0x57f42c
    0057f408
    0057f408loc_57f408:
    0057f408ldr x1, [sp+40]
    0057f40cldr x2, [sp+248]
    0057f410ldr x0, [sp+280]
    0057f414bl crypto/internal/fips140/bigmod.(*Nat).assign
    0057f418str x0, [sp+256]
    0057f41cstr x0, [sp+168]
    0057f420ldp x29, x30, [sp-8]
    0057f424add sp, sp, 272
    0057f428ret x30
    0057f42c
    0057f42cloc_57f42c:
    0057f42cldr x2, [sp+32]
    0057f430ldr x3, [sp+64]
    0057f434subs xzr, x2, x3
    0057f438b.gt 0x57f440
    0057f43cb 0x57f5a0
    0057f440
    0057f440loc_57f440:
    0057f440ldr x0, [sp+64]
    0057f444ldr x1, [sp+184]
    0057f448ldr x2, [sp+176]
    0057f44csubs xzr, x1, x0
    0057f450b.hi 0x57f458
    0057f454b 0x57f5e4
    0057f458
    0057f458loc_57f458:
    0057f458ldr x2, [x2+3*x0]
    0057f45cldr x3, [sp+48]
    0057f460ldr x0, [sp+64]
    0057f464ldr x1, [sp+184]
    0057f468ldr x4, [sp+176]
    0057f46csubs xzr, x1, x0
    0057f470b.hi 0x57f478
    0057f474b 0x57f5e0
    0057f478
    0057f478loc_57f478:
    0057f478ldr x4, [x4+3*x0]
    0057f47cldr x0, [sp+64]
    0057f480ldr x1, [sp+232]
    0057f484ldr x5, [sp+224]
    0057f488subs xzr, x0, x1
    0057f48cb.lo 0x57f494
    0057f490b 0x57f5dc
    0057f494
    0057f494loc_57f494:
    0057f494ldr x5, [x5+3*x0]
    0057f498eor x4, x4, x5
    0057f49cand x3, x3, x4
    0057f4a0eor x2, x2, x3
    0057f4a4str x2, [sp+56]
    0057f4a8ldr x3, [sp+80]
    0057f4acmovn x4, 0
    0057f4b0adds x4, x3, x4
    0057f4b4adcs x4, x2, x2
    0057f4b8str x4, [sp+128]
    0057f4bcmovn x5, 0
    0057f4c0adds x3, x3, x5
    0057f4c4adcs x2, x2, x2
    0057f4c8adc x2, xzr, xzr
    0057f4ccstr x2, [sp+120]
    0057f4d0str x4, [sp+160]
    0057f4d4str x2, [sp+152]
    0057f4d8ldr x0, [sp+64]
    0057f4dcldr x1, [sp+184]
    0057f4e0ldr x2, [sp+176]
    0057f4e4subs xzr, x1, x0
    0057f4e8b.hi 0x57f4f0
    0057f4ecb 0x57f5d8
    0057f4f0
    0057f4f0loc_57f4f0:
    0057f4f0str x4, [x2+3*x0]
    0057f4f4ldr x2, [sp+152]
    0057f4f8str x2, [sp+80]
    0057f4fcldr x0, [sp+64]
    0057f500ldr x1, [sp+184]
    0057f504ldr x2, [sp+176]
    0057f508subs xzr, x0, x1
    0057f50cb.lo 0x57f514
    0057f510b 0x57f5d4
    0057f514
    0057f514loc_57f514:
    0057f514ldr x2, [x2+3*x0]
    0057f518str x2, [sp+104]
    0057f51cldr x0, [sp+64]
    0057f520ldr x1, [sp+208]
    0057f524ldr x3, [sp+200]
    0057f528subs xzr, x1, x0
    0057f52cb.hi 0x57f534
    0057f530b 0x57f5d0
    0057f534
    0057f534loc_57f534:
    0057f534ldr x3, [x3+3*x0]
    0057f538str x3, [sp+96]
    0057f53cldr x4, [sp+88]
    0057f540subs x5, xzr, x4
    0057f544sbcs x5, x2, x3
    0057f548sbc x5, xzr, xzr
    0057f54csub x5, xzr, x5
    0057f550subs x4, xzr, x4
    0057f554sbcs x2, x2, x3
    0057f558str x2, [sp+120]
    0057f55cstr x5, [sp+128]
    0057f560str x2, [sp+144]
    0057f564str x5, [sp+136]
    0057f568ldr x0, [sp+64]
    0057f56cldr x1, [sp+232]
    0057f570ldr x3, [sp+224]
    0057f574subs xzr, x0, x1
    0057f578b.lo 0x57f580
    0057f57cb 0x57f5cc
    0057f580
    0057f580loc_57f580:
    0057f580str x2, [x3+3*x0]
    0057f584ldr x2, [sp+136]
    0057f588str x2, [sp+88]
    0057f58cb 0x57f590
    0057f590
    0057f590loc_57f590:
    0057f590ldr x2, [sp+64]
    0057f594add x2, x2, 1
    0057f598str x2, [sp+64]
    0057f59cb 0x57f42c
    0057f5a0
    0057f5a0loc_57f5a0:
    0057f5a0ldr x0, [sp+88]
    0057f5a4bl crypto/internal/fips140/bigmod.not
    0057f5a8str x0, [sp+112]
    0057f5acldr x1, [sp+80]
    0057f5b0orr x1, x0, x1
    0057f5b4str x1, [sp+40]
    0057f5b8b 0x57f5bc
    0057f5bc
    0057f5bcloc_57f5bc:
    0057f5bcldr x3, [sp+72]
    0057f5c0sub x3, x3, 1
    0057f5c4str x3, [sp+72]
    0057f5c8b 0x57f3c0
    0057f5cc
    0057f5ccloc_57f5cc:
    0057f5ccbl runtime.panicIndex
    0057f5d0
    0057f5d0loc_57f5d0:
    0057f5d0bl runtime.panicIndex
    0057f5d4
    0057f5d4loc_57f5d4:
    0057f5d4bl runtime.panicIndex
    0057f5d8
    0057f5d8loc_57f5d8:
    0057f5d8bl runtime.panicIndex
    0057f5dc
    0057f5dcloc_57f5dc:
    0057f5dcbl runtime.panicIndex
    0057f5e0
    0057f5e0loc_57f5e0:
    0057f5e0bl runtime.panicIndex
    0057f5e4
    0057f5e4loc_57f5e4:
    0057f5e4bl runtime.panicIndex
    0057f5e8
    0057f5e8loc_57f5e8:
    0057f5e8bl runtime.panicshift
    0057f5ec
    0057f5ecloc_57f5ec:
    0057f5ecbl runtime.panicSliceAcap
    0057f5f0
    0057f5f0loc_57f5f0:
    0057f5f0bl runtime.panicSliceAcap
    0057f5f4
    0057f5f4loc_57f5f4:
    0057f5f4bl runtime.panicSliceAcap
    0057f5f8hint
    0057f5fc
    0057f5fcloc_57f5fc:
    0057f5fcstp x0, x1, [sp+8]
    0057f600str x2, [sp+24]
    0057f604mov x3, x30
    0057f608bl runtime.morestack_noctxt.abi0
    0057f60cldp x0, x1, [sp+8]
    0057f610ldr x2, [sp+24]
    0057f614b 0x57f2c0
    0057f618udf 0
    0057f61cudf 0
    0057f2c0
    0057f620
    0057f620crypto/internal/fips140/bigmod.(*Nat).Mod: ; void crypto/internal/fips140/bigmod.(*Nat).Mod(crypto/internal/fips140/bigmod.Nat * out, crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Modulus * m)
    0057f620ldr x16, [x28+16]
    0057f624subs xzr, sp, x16
    0057f628b.ls 0x57f7a4
    0057f62cstr x30, [sp-96]!
    0057f630stur x29, [sp-8]
    0057f634sub x29, sp, 8
    0057f638str x0, [sp+104]
    0057f63cstr x1, [sp+112]
    0057f640str x2, [sp+120]
    0057f644str xzr, [sp+80]
    0057f648ldr x1, [sp+120]
    0057f64cldr x0, [sp+104]
    0057f650bl crypto/internal/fips140/bigmod.(*Nat).resetFor
    0057f654ldr x2, [sp+112]
    0057f658ldrsb x27, [x2]
    0057f65cldr x2, [x2+8]
    0057f660str x2, [sp+72]
    0057f664sub x2, x2, 1
    0057f668str x2, [sp+56]
    0057f66cldr x3, [sp+120]
    0057f670ldrsb x27, [x3]
    0057f674ldr x3, [x3]
    0057f678ldrsb x27, [x3]
    0057f67cldr x3, [x3+8]
    0057f680str x3, [sp+72]
    0057f684sub x3, x3, 2
    0057f688str x3, [sp+40]
    0057f68csubs xzr, x3, x2
    0057f690b.gt 0x57f698
    0057f694b 0x57f6a0
    0057f698
    0057f698loc_57f698:
    0057f698str x2, [sp+40]
    0057f69cb 0x57f6a4
    0057f6a0
    0057f6a0loc_57f6a0:
    0057f6a0b 0x57f6a4
    0057f6a4
    0057f6a4loc_57f6a4:
    0057f6a4ldr x3, [sp+40]
    0057f6a8str x3, [sp+48]
    0057f6acb 0x57f6b0
    0057f6b0
    0057f6b0loc_57f6b0:
    0057f6b0ldr x3, [sp+48]
    0057f6b4tbz x3, 63, 0x57f6bc
    0057f6b8b 0x57f724
    0057f6bc
    0057f6bcloc_57f6bc:
    0057f6bcldr x3, [sp+112]
    0057f6c0ldrsb x27, [x3]
    0057f6c4ldr x1, [x3+8]
    0057f6c8ldr x3, [x3]
    0057f6ccldr x0, [sp+56]
    0057f6d0subs xzr, x1, x0
    0057f6d4b.hi 0x57f6dc
    0057f6d8b 0x57f79c
    0057f6dc
    0057f6dcloc_57f6dc:
    0057f6dcldr x4, [sp+104]
    0057f6e0ldrsb x27, [x4]
    0057f6e4ldr x1, [x4+8]
    0057f6e8ldr x4, [x4]
    0057f6ecldr x5, [sp+48]
    0057f6f0ldr x3, [x3+3*x0]
    0057f6f4subs xzr, x5, x1
    0057f6f8b.lo 0x57f700
    0057f6fcb 0x57f794
    0057f700
    0057f700loc_57f700:
    0057f700str x3, [x4+3*x5]
    0057f704ldr x3, [sp+56]
    0057f708sub x3, x3, 1
    0057f70cstr x3, [sp+56]
    0057f710b 0x57f714
    0057f714
    0057f714loc_57f714:
    0057f714ldr x3, [sp+48]
    0057f718sub x3, x3, 1
    0057f71cstr x3, [sp+48]
    0057f720b 0x57f6b0
    0057f724
    0057f724loc_57f724:
    0057f724b 0x57f728
    0057f728
    0057f728loc_57f728:
    0057f728ldr x3, [sp+56]
    0057f72ctbz x3, 63, 0x57f734
    0057f730b 0x57f77c
    0057f734
    0057f734loc_57f734:
    0057f734ldr x3, [sp+112]
    0057f738ldrsb x27, [x3]
    0057f73cldr x1, [x3+8]
    0057f740ldr x3, [x3]
    0057f744ldr x0, [sp+56]
    0057f748subs xzr, x0, x1
    0057f74cb.lo 0x57f754
    0057f750b 0x57f790
    0057f754
    0057f754loc_57f754:
    0057f754ldr x1, [x3+3*x0]
    0057f758str x1, [sp+64]
    0057f75cldr x0, [sp+104]
    0057f760ldr x2, [sp+120]
    0057f764bl crypto/internal/fips140/bigmod.(*Nat).shiftIn
    0057f768ldr x3, [sp+56]
    0057f76csub x3, x3, 1
    0057f770str x3, [sp+56]
    0057f774b 0x57f778
    0057f778
    0057f778loc_57f778:
    0057f778b 0x57f728
    0057f77c
    0057f77cloc_57f77c:
    0057f77cldr x0, [sp+104]
    0057f780str x0, [sp+80]
    0057f784ldur x29, [sp-8]
    0057f788ldr x30, [sp], 96
    0057f78cret x30
    0057f790
    0057f790loc_57f790:
    0057f790bl runtime.panicIndex
    0057f794
    0057f794loc_57f794:
    0057f794mov x0, x5
    0057f798bl runtime.panicIndex
    0057f79c
    0057f79cloc_57f79c:
    0057f79cbl runtime.panicIndex
    0057f7a0hint
    0057f7a4
    0057f7a4loc_57f7a4:
    0057f7a4stp x0, x1, [sp+8]
    0057f7a8str x2, [sp+24]
    0057f7acmov x3, x30
    0057f7b0bl runtime.morestack_noctxt.abi0
    0057f7b4ldp x0, x1, [sp+8]
    0057f7b8ldr x2, [sp+24]
    0057f7bcb 0x57f620
    0057f620
    0057f7c0
    0057f7c0crypto/internal/fips140/bigmod.(*Nat).ExpandFor: ; void crypto/internal/fips140/bigmod.(*Nat).ExpandFor(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Modulus * m)
    0057f7c0ldr x16, [x28+16]
    0057f7c4subs xzr, sp, x16
    0057f7c8b.ls 0x57f818
    0057f7ccstr x30, [sp-64]!
    0057f7d0stur x29, [sp-8]
    0057f7d4sub x29, sp, 8
    0057f7d8str x0, [sp+72]
    0057f7dcstr x1, [sp+80]
    0057f7e0str xzr, [sp+40]
    0057f7e4ldr x2, [sp+80]
    0057f7e8ldrsb x27, [x2]
    0057f7ecldr x2, [x2]
    0057f7f0ldrsb x27, [x2]
    0057f7f4ldr x1, [x2+8]
    0057f7f8str x1, [sp+32]
    0057f7fcldr x0, [sp+72]
    0057f800bl crypto/internal/fips140/bigmod.(*Nat).expand
    0057f804str x0, [sp+48]
    0057f808str x0, [sp+40]
    0057f80cldur x29, [sp-8]
    0057f810ldr x30, [sp], 64
    0057f814ret x30
    0057f818
    0057f818loc_57f818:
    0057f818stp x0, x1, [sp+8]
    0057f81cmov x3, x30
    0057f820bl runtime.morestack_noctxt.abi0
    0057f824ldp x0, x1, [sp+8]
    0057f828b 0x57f7c0
    0057f82cudf 0
    0057f7c0
    0057f830
    0057f830crypto/internal/fips140/bigmod.(*Nat).resetFor: ; void crypto/internal/fips140/bigmod.(*Nat).resetFor(crypto/internal/fips140/bigmod.Nat * out, crypto/internal/fips140/bigmod.Modulus * m)
    0057f830ldr x16, [x28+16]
    0057f834subs xzr, sp, x16
    0057f838b.ls 0x57f888
    0057f83cstr x30, [sp-64]!
    0057f840stur x29, [sp-8]
    0057f844sub x29, sp, 8
    0057f848str x0, [sp+72]
    0057f84cstr x1, [sp+80]
    0057f850str xzr, [sp+40]
    0057f854ldr x2, [sp+80]
    0057f858ldrsb x27, [x2]
    0057f85cldr x2, [x2]
    0057f860ldrsb x27, [x2]
    0057f864ldr x1, [x2+8]
    0057f868str x1, [sp+32]
    0057f86cldr x0, [sp+72]
    0057f870bl crypto/internal/fips140/bigmod.(*Nat).reset
    0057f874str x0, [sp+48]
    0057f878str x0, [sp+40]
    0057f87cldur x29, [sp-8]
    0057f880ldr x30, [sp], 64
    0057f884ret x30
    0057f888
    0057f888loc_57f888:
    0057f888stp x0, x1, [sp+8]
    0057f88cmov x3, x30
    0057f890bl runtime.morestack_noctxt.abi0
    0057f894ldp x0, x1, [sp+8]
    0057f898b 0x57f830
    0057f89cudf 0
    0057f830
    0057f8a0
    0057f8a0crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus: ; void crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.choice always, crypto/internal/fips140/bigmod.Modulus * m)
    0057f8a0ldr x16, [x28+16]
    0057f8a4subs xzr, sp, x16
    0057f8a8b.ls 0x57f920
    0057f8acstr x30, [sp-96]!
    0057f8b0stur x29, [sp-8]
    0057f8b4sub x29, sp, 8
    0057f8b8str x0, [sp+104]
    0057f8bcstr x1, [sp+112]
    0057f8c0str x2, [sp+120]
    0057f8c4bl crypto/internal/fips140/bigmod.NewNat
    0057f8c8str x0, [sp+80]
    0057f8ccldr x1, [sp+104]
    0057f8d0bl crypto/internal/fips140/bigmod.(*Nat).set
    0057f8d4str x0, [sp+64]
    0057f8d8ldr x0, [sp+120]
    0057f8dcldrsb x27, [x0]
    0057f8e0ldr x1, [x0]
    0057f8e4str x1, [sp+72]
    0057f8e8ldr x0, [sp+64]
    0057f8ecbl crypto/internal/fips140/bigmod.(*Nat).sub
    0057f8f0str x0, [sp+40]
    0057f8f4bl crypto/internal/fips140/bigmod.not
    0057f8f8str x0, [sp+56]
    0057f8fcldr x1, [sp+112]
    0057f900orr x1, x0, x1
    0057f904str x1, [sp+48]
    0057f908ldr x2, [sp+64]
    0057f90cldr x0, [sp+104]
    0057f910bl crypto/internal/fips140/bigmod.(*Nat).assign
    0057f914ldur x29, [sp-8]
    0057f918ldr x30, [sp], 96
    0057f91cret x30
    0057f920
    0057f920loc_57f920:
    0057f920stp x0, x1, [sp+8]
    0057f924str x2, [sp+24]
    0057f928mov x3, x30
    0057f92cbl runtime.morestack_noctxt.abi0
    0057f930ldp x0, x1, [sp+8]
    0057f934ldr x2, [sp+24]
    0057f938b 0x57f8a0
    0057f93cudf 0
    0057f8a0
    0057f940
    0057f940crypto/internal/fips140/bigmod.(*Nat).Sub: ; void crypto/internal/fips140/bigmod.(*Nat).Sub(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * y, crypto/internal/fips140/bigmod.Modulus * m)
    0057f940ldr x16, [x28+16]
    0057f944subs xzr, sp, x16
    0057f948b.ls 0x57f9c8
    0057f94cstr x30, [sp-80]!
    0057f950stur x29, [sp-8]
    0057f954sub x29, sp, 8
    0057f958str x0, [sp+88]
    0057f95cstr x1, [sp+96]
    0057f960str x2, [sp+104]
    0057f964str xzr, [sp+40]
    0057f968ldr x1, [sp+96]
    0057f96cldr x0, [sp+88]
    0057f970bl crypto/internal/fips140/bigmod.(*Nat).sub
    0057f974str x0, [sp+32]
    0057f978bl crypto/internal/fips140/bigmod.NewNat
    0057f97cstr x0, [sp+64]
    0057f980ldr x1, [sp+88]
    0057f984bl crypto/internal/fips140/bigmod.(*Nat).set
    0057f988str x0, [sp+48]
    0057f98cldr x2, [sp+104]
    0057f990ldrsb x27, [x2]
    0057f994ldr x1, [x2]
    0057f998str x1, [sp+56]
    0057f99cldr x0, [sp+48]
    0057f9a0bl crypto/internal/fips140/bigmod.(*Nat).add
    0057f9a4ldr x2, [sp+48]
    0057f9a8ldr x0, [sp+88]
    0057f9acldr x1, [sp+32]
    0057f9b0bl crypto/internal/fips140/bigmod.(*Nat).assign
    0057f9b4ldr x0, [sp+88]
    0057f9b8str x0, [sp+40]
    0057f9bcldur x29, [sp-8]
    0057f9c0ldr x30, [sp], 80
    0057f9c4ret x30
    0057f9c8
    0057f9c8loc_57f9c8:
    0057f9c8stp x0, x1, [sp+8]
    0057f9ccstr x2, [sp+24]
    0057f9d0mov x3, x30
    0057f9d4bl runtime.morestack_noctxt.abi0
    0057f9d8ldp x0, x1, [sp+8]
    0057f9dcldr x2, [sp+24]
    0057f9e0b 0x57f940
    0057f9e4udf 0
    0057f9e8udf 0
    0057f9ecudf 0
    0057f940
    0057f9f0
    0057f9f0crypto/internal/fips140/bigmod.(*Nat).SubOne: ; void crypto/internal/fips140/bigmod.(*Nat).SubOne(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Modulus * m)
    0057f9f0ldr x16, [x28+16]
    0057f9f4subs xzr, sp, x16
    0057f9f8b.ls 0x57fa78
    0057f9fcstr x30, [sp-64]!
    0057fa00stur x29, [sp-8]
    0057fa04sub x29, sp, 8
    0057fa08str x0, [sp+72]
    0057fa0cstr x1, [sp+80]
    0057fa10str xzr, [sp+32]
    0057fa14bl crypto/internal/fips140/bigmod.NewNat
    0057fa18str x0, [sp+48]
    0057fa1cldr x1, [sp+80]
    0057fa20bl crypto/internal/fips140/bigmod.(*Nat).ExpandFor
    0057fa24str x0, [sp+40]
    0057fa28ldrsb x27, [x0]
    0057fa2cldr x1, [x0+8]
    0057fa30ldr x0, [x0]
    0057fa34subs xzr, x1, 0
    0057fa38b.hi 0x57fa40
    0057fa3cb 0x57fa6c
    0057fa40
    0057fa40loc_57fa40:
    0057fa40orr x3, xzr, 1
    0057fa44str x3, [x0]
    0057fa48ldr x1, [sp+40]
    0057fa4cldr x2, [sp+80]
    0057fa50ldr x0, [sp+72]
    0057fa54bl crypto/internal/fips140/bigmod.(*Nat).Sub
    0057fa58str x0, [sp+48]
    0057fa5cstr x0, [sp+32]
    0057fa60ldur x29, [sp-8]
    0057fa64ldr x30, [sp], 64
    0057fa68ret x30
    0057fa6c
    0057fa6cloc_57fa6c:
    0057fa6cmov x0, xzr
    0057fa70bl runtime.panicIndex
    0057fa74hint
    0057fa78
    0057fa78loc_57fa78:
    0057fa78stp x0, x1, [sp+8]
    0057fa7cmov x3, x30
    0057fa80bl runtime.morestack_noctxt.abi0
    0057fa84ldp x0, x1, [sp+8]
    0057fa88b 0x57f9f0
    0057fa8cudf 0
    0057f9f0
    0057fa90
    0057fa90crypto/internal/fips140/bigmod.(*Nat).Add: ; void crypto/internal/fips140/bigmod.(*Nat).Add(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * y, crypto/internal/fips140/bigmod.Modulus * m)
    0057fa90ldr x16, [x28+16]
    0057fa94subs xzr, sp, x16
    0057fa98b.ls 0x57faf0
    0057fa9cstr x30, [sp-64]!
    0057faa0stur x29, [sp-8]
    0057faa4sub x29, sp, 8
    0057faa8str x0, [sp+72]
    0057faacstr x1, [sp+80]
    0057fab0str x2, [sp+88]
    0057fab4str xzr, [sp+48]
    0057fab8ldr x1, [sp+80]
    0057fabcldr x0, [sp+72]
    0057fac0bl crypto/internal/fips140/bigmod.(*Nat).add
    0057fac4str x0, [sp+40]
    0057fac8ldr x2, [sp+88]
    0057faccldr x3, [sp+72]
    0057fad0mov x1, x0
    0057fad4mov x0, x3
    0057fad8bl crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus
    0057fadcldr x0, [sp+72]
    0057fae0str x0, [sp+48]
    0057fae4ldur x29, [sp-8]
    0057fae8ldr x30, [sp], 64
    0057faecret x30
    0057faf0
    0057faf0loc_57faf0:
    0057faf0stp x0, x1, [sp+8]
    0057faf4str x2, [sp+24]
    0057faf8mov x3, x30
    0057fafcbl runtime.morestack_noctxt.abi0
    0057fb00ldp x0, x1, [sp+8]
    0057fb04ldr x2, [sp+24]
    0057fb08b 0x57fa90
    0057fb0cudf 0
    0057fa90