File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    0057ca90
    0057ca90crypto/internal/fips140/ecdh.GenerateKey[go.shape.*crypto/internal/fips140/nistec.P256Point]: ; void crypto/internal/fips140/ecdh.GenerateKey[go.shape.*crypto/internal/fips140/nistec.P256Point](uintptr[2] * dict, crypto/internal/fips140/ecdh.Curve[go.shape.*crypto/internal/fips140/nistec.P256Point] * c, io.Reader rand)
    0057ca90ldr x16, [x28+16]
    0057ca94sub x17, sp, 96
    0057ca98subs xzr, x17, x16
    0057ca9cb.ls 0x57ce00
    0057caa0str x30, [sp-224]!
    0057caa4stur x29, [sp-8]
    0057caa8sub x29, sp, 8
    0057caacstr x0, [sp+232]
    0057cab0str x1, [sp+240]
    0057cab4str x2, [sp+248]
    0057cab8str x3, [sp+256]
    0057cabcstr xzr, [sp+88]
    0057cac0stp xzr, xzr, [sp+72]
    0057cac4bl crypto/internal/fips140.RecordApproved
    0057cac8b 0x57cacc
    0057cacc
    0057caccloc_57cacc:
    0057caccb 0x57cad0
    0057cad0
    0057cad0loc_57cad0:
    0057cad0ldr x3, [sp+240]
    0057cad4ldrsb x27, [x3]
    0057cad8ldr x2, [x3+32]
    0057cadcstr x2, [sp+64]
    0057cae0adrp x0, 0x79000
    0057cae4add x0, x0, 3072
    0057cae8mov x1, x2
    0057caecbl runtime.makeslice
    0057caf0ldr x3, [sp+64]
    0057caf4ldr x4, [sp+64]
    0057caf8str x0, [sp+104]
    0057cafcstr x3, [sp+112]
    0057cb00str x4, [sp+120]
    0057cb04ldr x5, [sp+248]
    0057cb08ldr x1, [sp+256]
    0057cb0cmov x2, x0
    0057cb10mov x0, x5
    0057cb14bl crypto/internal/fips140/drbg.ReadWithReader
    0057cb18str x0, [sp+144]
    0057cb1cstr x1, [sp+152]
    0057cb20cbnz x0, 0x57cb28
    0057cb24b 0x57cb4c
    0057cb28
    0057cb28loc_57cb28:
    0057cb28str xzr, [sp+88]
    0057cb2cldr x1, [sp+144]
    0057cb30ldr x2, [sp+152]
    0057cb34str x1, [sp+72]
    0057cb38str x2, [sp+80]
    0057cb3cldr x0, [sp+88]
    0057cb40ldur x29, [sp-8]
    0057cb44ldr x30, [sp], 224
    0057cb48ret x30
    0057cb4c
    0057cb4cloc_57cb4c:
    0057cb4cldr x1, [sp+112]
    0057cb50ldr x5, [sp+104]
    0057cb54subs xzr, x1, 1
    0057cb58b.hi 0x57cb60
    0057cb5cb 0x57cdf4
    0057cb60
    0057cb60loc_57cb60:
    0057cb60ldr x1, [sp+112]
    0057cb64ldr x6, [sp+104]
    0057cb68ldrb w5, [x5+1]
    0057cb6cmovz x7, 66
    0057cb70eor x5, x5, x7
    0057cb74subs xzr, x1, 1
    0057cb78b.hi 0x57cb80
    0057cb7cb 0x57cdec
    0057cb80
    0057cb80loc_57cb80:
    0057cb80strb w5, [x6+1]
    0057cb84ldr x5, [sp+240]
    0057cb88ldrsb x27, [x5]
    0057cb8cldr x5, [x5+8]
    0057cb90subs xzr, x5, 5
    0057cb94cset x5, eq
    0057cb98b.eq 0x57cba0
    0057cb9cb 0x57cc4c
    0057cba0
    0057cba0loc_57cba0:
    0057cba0ldr x5, [sp+240]
    0057cba4ldrsb x27, [x5]
    0057cba8ldr x1, [x5+8]
    0057cbacldr x5, [x5]
    0057cbb0subs xzr, x1, 0
    0057cbb4b.hi 0x57cbbc
    0057cbb8b 0x57cde4
    0057cbbc
    0057cbbcloc_57cbbc:
    0057cbbcldr x6, [sp+240]
    0057cbc0ldrsb x27, [x6]
    0057cbc4ldr x1, [x6+8]
    0057cbc8ldr x6, [x6]
    0057cbccldrb w5, [x5]
    0057cbd0subs xzr, x1, 1
    0057cbd4b.hi 0x57cbdc
    0057cbd8b 0x57cddc
    0057cbdc
    0057cbdcloc_57cbdc:
    0057cbdcldr x7, [sp+240]
    0057cbe0ldrsb x27, [x7]
    0057cbe4ldr x1, [x7+8]
    0057cbe8ldr x7, [x7]
    0057cbecldrb w6, [x6+1]
    0057cbf0ubfm x6, x6, 56, 7
    0057cbf4orr x5, x5, x6
    0057cbf8subs xzr, x1, 2
    0057cbfcb.hi 0x57cc04
    0057cc00b 0x57cdd4
    0057cc04
    0057cc04loc_57cc04:
    0057cc04ldr x6, [sp+240]
    0057cc08ldrsb x27, [x6]
    0057cc0cldr x1, [x6+8]
    0057cc10ldr x6, [x6]
    0057cc14ldrb w7, [x7+2]
    0057cc18ubfm x7, x7, 48, 7
    0057cc1corr x5, x5, x7
    0057cc20subs xzr, x1, 3
    0057cc24b.hi 0x57cc2c
    0057cc28b 0x57cdcc
    0057cc2c
    0057cc2cloc_57cc2c:
    0057cc2cldrb w6, [x6+3]
    0057cc30ubfm x6, x6, 40, 7
    0057cc34orr x6, x5, x6
    0057cc38movz x7, 11600
    0057cc3cmovk x7, 0x32350000
    0057cc40subs wzr, w6, w7
    0057cc44cset x5, eq
    0057cc48b 0x57cc50
    0057cc4c
    0057cc4cloc_57cc4c:
    0057cc4cb 0x57cc50
    0057cc50
    0057cc50loc_57cc50:
    0057cc50tbnz w5, 0, 0x57cc58
    0057cc54b 0x57cc84
    0057cc58
    0057cc58loc_57cc58:
    0057cc58ldr x5, [sp+240]
    0057cc5cldrsb x27, [x5]
    0057cc60ldr x1, [x5+8]
    0057cc64ldr x5, [x5]
    0057cc68subs xzr, x1, 4
    0057cc6cb.hi 0x57cc74
    0057cc70b 0x57cdc4
    0057cc74
    0057cc74loc_57cc74:
    0057cc74ldrb w6, [x5+4]
    0057cc78subs wzr, w6, 49
    0057cc7ccset x5, eq
    0057cc80b 0x57cc88
    0057cc84
    0057cc84loc_57cc84:
    0057cc84b 0x57cc88
    0057cc88
    0057cc88loc_57cc88:
    0057cc88strb w5, [sp+63]
    0057cc8ctbnz w5, 0, 0x57cc94
    0057cc90b 0x57ccc4
    0057cc94
    0057cc94loc_57cc94:
    0057cc94ldr x5, [sp+240]
    0057cc98ldrsb x27, [x5]
    0057cc9cldr x1, [x5+32]
    0057cca0ldr x5, [x5+24]
    0057cca4subs xzr, x1, 0
    0057cca8b.hi 0x57ccb0
    0057ccacb 0x57cdbc
    0057ccb0
    0057ccb0loc_57ccb0:
    0057ccb0ldrb w5, [x5]
    0057ccb4ands wzr, w5, 254
    0057ccb8cset x5, eq
    0057ccbcstrb w5, [sp+63]
    0057ccc0b 0x57ccc8
    0057ccc4
    0057ccc4loc_57ccc4:
    0057ccc4b 0x57ccc8
    0057ccc8
    0057ccc8loc_57ccc8:
    0057ccc8ldrb w5, [sp+63]
    0057cccctbnz w5, 0, 0x57ccd4
    0057ccd0b 0x57cd0c
    0057ccd4
    0057ccd4loc_57ccd4:
    0057ccd4ldr x1, [sp+112]
    0057ccd8ldr x5, [sp+104]
    0057ccdcsubs xzr, x1, 0
    0057cce0b.hi 0x57cce8
    0057cce4b 0x57cdb4
    0057cce8
    0057cce8loc_57cce8:
    0057cce8ldr x1, [sp+112]
    0057ccecldrb w5, [x5]
    0057ccf0ldr x6, [sp+104]
    0057ccf4and x5, x5, 1
    0057ccf8subs xzr, x1, 0
    0057ccfcb.hi 0x57cd04
    0057cd00b 0x57cdac
    0057cd04
    0057cd04loc_57cd04:
    0057cd04strb w5, [x6]
    0057cd08b 0x57cd10
    0057cd0c
    0057cd0cloc_57cd0c:
    0057cd0cb 0x57cd10
    0057cd10
    0057cd10loc_57cd10:
    0057cd10str xzr, [sp+192]
    0057cd14stp xzr, xzr, [sp+176]
    0057cd18ldr x5, [sp+232]
    0057cd1cldrsb x27, [x5]
    0057cd20ldr x0, [x5]
    0057cd24str x0, [sp+168]
    0057cd28ldr x2, [sp+104]
    0057cd2cldr x1, [sp+240]
    0057cd30ldr x3, [sp+112]
    0057cd34ldr x4, [sp+120]
    0057cd38bl crypto/internal/fips140/ecdh.NewPrivateKey[go.shape.*crypto/internal/fips140/nistec.P256Point]
    0057cd3cstr x0, [sp+192]
    0057cd40str x1, [sp+176]
    0057cd44str x2, [sp+184]
    0057cd48ldr x5, [sp+192]
    0057cd4cstr x5, [sp+160]
    0057cd50ldr x5, [sp+176]
    0057cd54ldr x6, [sp+184]
    0057cd58str x5, [sp+200]
    0057cd5cstr x6, [sp+208]
    0057cd60ldr x5, [sp+160]
    0057cd64str x5, [sp+96]
    0057cd68ldr x5, [sp+208]
    0057cd6cldr x6, [sp+200]
    0057cd70str x6, [sp+128]
    0057cd74str x5, [sp+136]
    0057cd78cbnz x6, 0x57cd80
    0057cd7cb 0x57cd88
    0057cd80
    0057cd80loc_57cd80:
    0057cd80b 0x57cd84
    0057cd84
    0057cd84loc_57cd84:
    0057cd84b 0x57cacc
    0057cd88
    0057cd88loc_57cd88:
    0057cd88ldr x3, [sp+96]
    0057cd8cstr x3, [sp+88]
    0057cd90stp xzr, xzr, [sp+72]
    0057cd94ldr x0, [sp+88]
    0057cd98mov x1, xzr
    0057cd9cmov x2, xzr
    0057cda0ldur x29, [sp-8]
    0057cda4ldr x30, [sp], 224
    0057cda8ret x30
    0057cdac
    0057cdacloc_57cdac:
    0057cdacmov x0, xzr
    0057cdb0bl runtime.panicIndex
    0057cdb4
    0057cdb4loc_57cdb4:
    0057cdb4mov x0, xzr
    0057cdb8bl runtime.panicIndex
    0057cdbc
    0057cdbcloc_57cdbc:
    0057cdbcmov x0, xzr
    0057cdc0bl runtime.panicIndex
    0057cdc4
    0057cdc4loc_57cdc4:
    0057cdc4orr x0, xzr, 4
    0057cdc8bl runtime.panicIndex
    0057cdcc
    0057cdccloc_57cdcc:
    0057cdccorr x0, xzr, 3
    0057cdd0bl runtime.panicIndex
    0057cdd4
    0057cdd4loc_57cdd4:
    0057cdd4orr x0, xzr, 2
    0057cdd8bl runtime.panicIndex
    0057cddc
    0057cddcloc_57cddc:
    0057cddcorr x0, xzr, 1
    0057cde0bl runtime.panicIndex
    0057cde4
    0057cde4loc_57cde4:
    0057cde4mov x0, xzr
    0057cde8bl runtime.panicIndex
    0057cdec
    0057cdecloc_57cdec:
    0057cdecorr x0, xzr, 1
    0057cdf0bl runtime.panicIndex
    0057cdf4
    0057cdf4loc_57cdf4:
    0057cdf4orr x0, xzr, 1
    0057cdf8bl runtime.panicIndex
    0057cdfchint
    0057ce00
    0057ce00loc_57ce00:
    0057ce00stp x0, x1, [sp+8]
    0057ce04stp x2, x3, [sp+24]
    0057ce08mov x3, x30
    0057ce0cbl runtime.morestack_noctxt.abi0
    0057ce10ldp x0, x1, [sp+8]
    0057ce14ldp x2, x3, [sp+24]
    0057ce18b 0x57ca90
    0057ce1cudf 0
    0057ca90
    0057ce20
    0057ce20crypto/internal/fips140/bigmod.init: ; void crypto/internal/fips140/bigmod.init(void)
    0057ce20str x30, [sp-32]!
    0057ce24stur x29, [sp-8]
    0057ce28sub x29, sp, 8
    0057ce2cadrp x27, 0x4cf000
    0057ce30ldrb w0, [x27+1569]
    0057ce34strb w0, [sp+23]
    0057ce38tbnz w0, 0, 0x57ce40
    0057ce3cb 0x57ce50
    0057ce40
    0057ce40loc_57ce40:
    0057ce40adrp x27, 0x4cf000
    0057ce44ldrb w0, [x27+1572]
    0057ce48strb w0, [sp+23]
    0057ce4cb 0x57ce54
    0057ce50
    0057ce50loc_57ce50:
    0057ce50b 0x57ce54
    0057ce54
    0057ce54loc_57ce54:
    0057ce54ldrb w0, [sp+23]
    0057ce58adrp x27, 0x4cf000
    0057ce5cstrb w0, [x27+1579]
    0057ce60add x29, sp, 24
    0057ce64add sp, sp, 32
    0057ce68ret x30
    0057ce6cudf 0
    0057ce20
    0057ce70
    0057ce70crypto/internal/fips140/bigmod.not: ; void crypto/internal/fips140/bigmod.not(crypto/internal/fips140/bigmod.choice c)
    0057ce70str x30, [sp-32]!
    0057ce74stur x29, [sp-8]
    0057ce78sub x29, sp, 8
    0057ce7cstr x0, [sp+40]
    0057ce80str xzr, [sp+16]
    0057ce84eor x0, x0, 1
    0057ce88str x0, [sp+16]
    0057ce8cadd x29, sp, 24
    0057ce90add sp, sp, 32
    0057ce94ret x30
    0057ce98udf 0
    0057ce9cudf 0
    0057ce70
    0057cea0
    0057cea0crypto/internal/fips140/bigmod.ctMask: ; void crypto/internal/fips140/bigmod.ctMask(crypto/internal/fips140/bigmod.choice on)
    0057cea0str x30, [sp-32]!
    0057cea4stur x29, [sp-8]
    0057cea8sub x29, sp, 8
    0057ceacstr x0, [sp+40]
    0057ceb0str xzr, [sp+16]
    0057ceb4sub x0, xzr, x0
    0057ceb8str x0, [sp+16]
    0057cebcadd x29, sp, 24
    0057cec0add sp, sp, 32
    0057cec4ret x30
    0057cec8udf 0
    0057ceccudf 0
    0057cea0
    0057ced0
    0057ced0crypto/internal/fips140/bigmod.ctEq: ; void crypto/internal/fips140/bigmod.ctEq(uint x, uint y)
    0057ced0ldr x16, [x28+16]
    0057ced4subs xzr, sp, x16
    0057ced8b.ls 0x57cf64
    0057cedcstr x30, [sp-112]!
    0057cee0stur x29, [sp-8]
    0057cee4sub x29, sp, 8
    0057cee8str x0, [sp+120]
    0057ceecstr x1, [sp+128]
    0057cef0str xzr, [sp+24]
    0057cef4subs x2, x0, x1
    0057cef8sbc x2, xzr, xzr
    0057cefcsub x2, xzr, x2
    0057cf00subs x1, x0, x1
    0057cf04str x1, [sp+48]
    0057cf08str x2, [sp+96]
    0057cf0cstr x1, [sp+80]
    0057cf10str x2, [sp+72]
    0057cf14str x2, [sp+40]
    0057cf18ldr x1, [sp+120]
    0057cf1cldr x2, [sp+128]
    0057cf20subs x3, x2, x1
    0057cf24sbc x3, xzr, xzr
    0057cf28sub x3, xzr, x3
    0057cf2csubs x1, x2, x1
    0057cf30str x1, [sp+96]
    0057cf34str x3, [sp+48]
    0057cf38str x1, [sp+64]
    0057cf3cstr x3, [sp+56]
    0057cf40str x3, [sp+32]
    0057cf44ldr x1, [sp+40]
    0057cf48orr x0, x1, x3
    0057cf4cbl crypto/internal/fips140/bigmod.not
    0057cf50str x0, [sp+88]
    0057cf54str x0, [sp+24]
    0057cf58ldur x29, [sp-8]
    0057cf5cldr x30, [sp], 112
    0057cf60ret x30
    0057cf64
    0057cf64loc_57cf64:
    0057cf64stp x0, x1, [sp+8]
    0057cf68mov x3, x30
    0057cf6cbl runtime.morestack_noctxt.abi0
    0057cf70ldp x0, x1, [sp+8]
    0057cf74b 0x57ced0
    0057cf78udf 0
    0057cf7cudf 0
    0057ced0
    0057cf80
    0057cf80crypto/internal/fips140/bigmod.NewNat: ; void crypto/internal/fips140/bigmod.NewNat(void)
    0057cf80ldr x16, [x28+16]
    0057cf84subs xzr, sp, x16
    0057cf88b.ls 0x57d024
    0057cf8cstr x30, [sp-80]!
    0057cf90stur x29, [sp-8]
    0057cf94sub x29, sp, 8
    0057cf98str xzr, [sp+32]
    0057cf9cadrp x0, 0x79000
    0057cfa0add x0, x0, 3584
    0057cfa4mov x1, xzr
    0057cfa8orr x2, xzr, 32
    0057cfacbl runtime.makeslice
    0057cfb0str x0, [sp+40]
    0057cfb4str xzr, [sp+48]
    0057cfb8orr x3, xzr, 32
    0057cfbcstr x3, [sp+56]
    0057cfc0adrp x0, 0xb2000
    0057cfc4add x0, x0, 1888
    0057cfc8bl runtime.newobject
    0057cfccstr x0, [sp+64]
    0057cfd0ldr x3, [sp+40]
    0057cfd4ldr x4, [sp+48]
    0057cfd8ldr x5, [sp+56]
    0057cfdcstr x4, [x0+8]
    0057cfe0str x5, [x0+16]
    0057cfe4adrp x27, 0x4cf000
    0057cfe8ldr w4, [x27+3056]
    0057cfeccbz w4, 0x57cff4
    0057cff0b 0x57cff8
    0057cff4
    0057cff4loc_57cff4:
    0057cff4b 0x57d00c
    0057cff8
    0057cff8loc_57cff8:
    0057cff8bl runtime.gcWriteBarrier2
    0057cffcstr x3, [x25]
    0057d000ldr x1, [x0]
    0057d004str x1, [x25+8]
    0057d008b 0x57d00c
    0057d00c
    0057d00cloc_57d00c:
    0057d00cstr x3, [x0]
    0057d010ldr x0, [sp+64]
    0057d014str x0, [sp+32]
    0057d018ldur x29, [sp-8]
    0057d01cldr x30, [sp], 80
    0057d020ret x30
    0057d024
    0057d024loc_57d024:
    0057d024mov x3, x30
    0057d028bl runtime.morestack_noctxt.abi0
    0057d02cb 0x57cf80
    0057cf80
    0057d030
    0057d030crypto/internal/fips140/bigmod.(*Nat).expand: ; void crypto/internal/fips140/bigmod.(*Nat).expand(crypto/internal/fips140/bigmod.Nat * x, int n)
    0057d030ldr x16, [x28+16]
    0057d034sub x17, sp, 80
    0057d038subs xzr, x17, x16
    0057d03cb.ls 0x57d2a8
    0057d040str x30, [sp-208]!
    0057d044stur x29, [sp-8]
    0057d048sub x29, sp, 8
    0057d04cstr x0, [sp+216]
    0057d050str x1, [sp+224]
    0057d054str xzr, [sp+64]
    0057d058ldr x3, [sp+216]
    0057d05cldrsb x27, [x3]
    0057d060ldr x3, [x3+8]
    0057d064str x3, [sp+32]
    0057d068ldr x4, [sp+224]
    0057d06csubs xzr, x3, x4
    0057d070b.gt 0x57d278
    0057d074b 0x57d078
    0057d078
    0057d078loc_57d078:
    0057d078ldr x3, [sp+216]
    0057d07cldrsb x27, [x3]
    0057d080ldr x3, [x3+16]
    0057d084str x3, [sp+32]
    0057d088ldr x4, [sp+224]
    0057d08csubs xzr, x3, x4
    0057d090b.lt 0x57d098
    0057d094b 0x57d1a0
    0057d098
    0057d098loc_57d098:
    0057d098ldr x2, [sp+224]
    0057d09cldr x1, [sp+224]
    0057d0a0adrp x0, 0x78000
    0057d0a4add x0, x0, 3584
    0057d0a8bl runtime.makeslice
    0057d0acldr x3, [sp+224]
    0057d0b0ldr x4, [sp+224]
    0057d0b4str x0, [sp+72]
    0057d0b8str x3, [sp+80]
    0057d0bcstr x4, [sp+88]
    0057d0c0str x0, [sp+144]
    0057d0c4str x3, [sp+152]
    0057d0c8str x4, [sp+160]
    0057d0ccldr x3, [sp+216]
    0057d0d0ldrsb x27, [x3]
    0057d0d4ldr x4, [x3+8]
    0057d0d8ldr x5, [x3]
    0057d0dcldr x3, [x3+16]
    0057d0e0str x5, [sp+120]
    0057d0e4str x4, [sp+128]
    0057d0e8str x3, [sp+136]
    0057d0ecldr x3, [sp+152]
    0057d0f0str x3, [sp+56]
    0057d0f4subs xzr, x4, x3
    0057d0f8b.lt 0x57d100
    0057d0fcb 0x57d108
    0057d100
    0057d100loc_57d100:
    0057d100str x4, [sp+56]
    0057d104b 0x57d10c
    0057d108
    0057d108loc_57d108:
    0057d108b 0x57d10c
    0057d10c
    0057d10cloc_57d10c:
    0057d10cldr x3, [sp+120]
    0057d110ldr x4, [sp+144]
    0057d114subs xzr, x3, x4
    0057d118b.ne 0x57d120
    0057d11cb 0x57d140
    0057d120
    0057d120loc_57d120:
    0057d120ldr x3, [sp+56]
    0057d124str x3, [sp+48]
    0057d128ldr x3, [sp+48]
    0057d12cubfm x2, x3, 61, 60
    0057d130ldr x1, [sp+120]
    0057d134ldr x0, [sp+144]
    0057d138bl runtime.memmove
    0057d13cb 0x57d144
    0057d140
    0057d140loc_57d140:
    0057d140b 0x57d144
    0057d144
    0057d144loc_57d144:
    0057d144ldr x1, [sp+216]
    0057d148ldrsb x27, [x1]
    0057d14cldr x2, [sp+72]
    0057d150ldr x3, [sp+80]
    0057d154ldr x4, [sp+88]
    0057d158str x3, [x1+8]
    0057d15cstr x4, [x1+16]
    0057d160adrp x27, 0x4ce000
    0057d164ldr w3, [x27+3056]
    0057d168cbz w3, 0x57d170
    0057d16cb 0x57d174
    0057d170
    0057d170loc_57d170:
    0057d170b 0x57d188
    0057d174
    0057d174loc_57d174:
    0057d174bl runtime.gcWriteBarrier2
    0057d178str x2, [x25]
    0057d17cldr x3, [x1]
    0057d180str x3, [x25+8]
    0057d184b 0x57d188
    0057d188
    0057d188loc_57d188:
    0057d188str x2, [x1]
    0057d18cldr x0, [sp+216]
    0057d190str x0, [sp+64]
    0057d194ldur x29, [sp-8]
    0057d198ldr x30, [sp], 208
    0057d19cret x30
    0057d1a0
    0057d1a0loc_57d1a0:
    0057d1a0ldr x3, [sp+216]
    0057d1a4ldrsb x27, [x3]
    0057d1a8ldr x0, [x3+8]
    0057d1acstr x0, [sp+32]
    0057d1b0ldr x3, [sp+216]
    0057d1b4ldrsb x27, [x3]
    0057d1b8ldr x2, [x3+16]
    0057d1bcldr x3, [x3]
    0057d1c0ldr x1, [sp+224]
    0057d1c4subs xzr, x2, x1
    0057d1c8b.hs 0x57d1d0
    0057d1ccb 0x57d274
    0057d1d0
    0057d1d0loc_57d1d0:
    0057d1d0subs xzr, x0, x1
    0057d1d4b.ls 0x57d1dc
    0057d1d8b 0x57d270
    0057d1dc
    0057d1dcloc_57d1dc:
    0057d1dcsub x4, x2, x0
    0057d1e0sub x5, xzr, x4
    0057d1e4ubfm x6, x0, 61, 60
    0057d1e8and x5, x6, x5, asr #63
    0057d1ecadd x3, x3, x5
    0057d1f0str x3, [sp+96]
    0057d1f4sub x5, x1, x0
    0057d1f8str x5, [sp+104]
    0057d1fcstr x4, [sp+112]
    0057d200cbnz x5, 0x57d208
    0057d204b 0x57d228
    0057d208
    0057d208loc_57d208:
    0057d208str x3, [sp+192]
    0057d20cldr x2, [sp+104]
    0057d210ubfm x2, x2, 61, 60
    0057d214str x2, [sp+40]
    0057d218ldr x1, [sp+40]
    0057d21cldr x0, [sp+192]
    0057d220bl runtime.memclrNoHeapPointers
    0057d224b 0x57d22c
    0057d228
    0057d228loc_57d228:
    0057d228b 0x57d22c
    0057d22c
    0057d22cloc_57d22c:
    0057d22cldr x3, [sp+216]
    0057d230ldrsb x27, [x3]
    0057d234ldr x2, [x3+16]
    0057d238ldr x1, [sp+224]
    0057d23csubs xzr, x2, x1
    0057d240b.hs 0x57d248
    0057d244b 0x57d26c
    0057d248
    0057d248loc_57d248:
    0057d248b 0x57d24c
    0057d24c
    0057d24cloc_57d24c:
    0057d24cldr x2, [sp+216]
    0057d250ldrsb x27, [x2]
    0057d254str x1, [x2+8]
    0057d258ldr x0, [sp+216]
    0057d25cstr x0, [sp+64]
    0057d260ldur x29, [sp-8]
    0057d264ldr x30, [sp], 208
    0057d268ret x30
    0057d26c
    0057d26cloc_57d26c:
    0057d26cbl runtime.panicSliceAcap
    0057d270
    0057d270loc_57d270:
    0057d270bl runtime.panicSliceB
    0057d274
    0057d274loc_57d274:
    0057d274bl runtime.panicSliceAcap
    0057d278
    0057d278loc_57d278:
    0057d278adrp x0, 0x145000
    0057d27cadd x0, x0, 2208
    0057d280str x0, [sp+176]
    0057d284movz x1, 37
    0057d288str x1, [sp+184]
    0057d28cbl runtime.convTstring
    0057d290str x0, [sp+168]
    0057d294mov x1, x0
    0057d298adrp x0, 0x78000
    0057d29cadd x0, x0, 2944
    0057d2a0bl runtime.gopanic
    0057d2a4hint
    0057d2a8
    0057d2a8loc_57d2a8:
    0057d2a8stp x0, x1, [sp+8]
    0057d2acmov x3, x30
    0057d2b0bl runtime.morestack_noctxt.abi0
    0057d2b4ldp x0, x1, [sp+8]
    0057d2b8b 0x57d030
    0057d2bcudf 0
    0057d030
    0057d2c0
    0057d2c0crypto/internal/fips140/bigmod.(*Nat).reset: ; void crypto/internal/fips140/bigmod.(*Nat).reset(crypto/internal/fips140/bigmod.Nat * x, int n)
    0057d2c0ldr x16, [x28+16]
    0057d2c4subs xzr, sp, x16
    0057d2c8b.ls 0x57d410
    0057d2ccstr x30, [sp-96]!
    0057d2d0stur x29, [sp-8]
    0057d2d4sub x29, sp, 8
    0057d2d8str x0, [sp+104]
    0057d2dcstr x1, [sp+112]
    0057d2e0str xzr, [sp+48]
    0057d2e4ldr x3, [sp+104]
    0057d2e8ldrsb x27, [x3]
    0057d2ecldr x3, [x3+16]
    0057d2f0str x3, [sp+40]
    0057d2f4ldr x4, [sp+112]
    0057d2f8subs xzr, x3, x4
    0057d2fcb.lt 0x57d304
    0057d300b 0x57d37c
    0057d304
    0057d304loc_57d304:
    0057d304ldr x2, [sp+112]
    0057d308ldr x1, [sp+112]
    0057d30cadrp x0, 0x78000
    0057d310add x0, x0, 3584
    0057d314bl runtime.makeslice
    0057d318ldr x3, [sp+112]
    0057d31cldr x4, [sp+112]
    0057d320str x0, [sp+64]
    0057d324str x3, [sp+72]
    0057d328str x4, [sp+80]
    0057d32cldr x5, [sp+104]
    0057d330ldrsb x27, [x5]
    0057d334str x3, [x5+8]
    0057d338str x4, [x5+16]
    0057d33cadrp x27, 0x4ce000
    0057d340ldr w3, [x27+3056]
    0057d344cbz w3, 0x57d34c
    0057d348b 0x57d350
    0057d34c
    0057d34cloc_57d34c:
    0057d34cb 0x57d364
    0057d350
    0057d350loc_57d350:
    0057d350bl runtime.gcWriteBarrier2
    0057d354str x0, [x25]
    0057d358ldr x1, [x5]
    0057d35cstr x1, [x25+8]
    0057d360b 0x57d364
    0057d364
    0057d364loc_57d364:
    0057d364str x0, [x5]
    0057d368ldr x0, [sp+104]
    0057d36cstr x0, [sp+48]
    0057d370ldur x29, [sp-8]
    0057d374ldr x30, [sp], 96
    0057d378ret x30
    0057d37c
    0057d37cloc_57d37c:
    0057d37cldr x3, [sp+104]
    0057d380ldrsb x27, [x3]
    0057d384ldr x3, [x3+8]
    0057d388cbnz x3, 0x57d390
    0057d38cb 0x57d3c4
    0057d390
    0057d390loc_57d390:
    0057d390ldr x2, [sp+104]
    0057d394ldrsb x27, [x2]
    0057d398ldr x2, [x2]
    0057d39cstr x2, [sp+56]
    0057d3a0ldr x2, [sp+104]
    0057d3a4ldrsb x27, [x2]
    0057d3a8ldr x2, [x2+8]
    0057d3acubfm x2, x2, 61, 60
    0057d3b0str x2, [sp+32]
    0057d3b4ldr x1, [sp+32]
    0057d3b8ldr x0, [sp+56]
    0057d3bcbl runtime.memclrNoHeapPointers
    0057d3c0b 0x57d3c8
    0057d3c4
    0057d3c4loc_57d3c4:
    0057d3c4b 0x57d3c8
    0057d3c8
    0057d3c8loc_57d3c8:
    0057d3c8ldr x3, [sp+104]
    0057d3ccldrsb x27, [x3]
    0057d3d0ldr x2, [x3+16]
    0057d3d4ldr x1, [sp+112]
    0057d3d8subs xzr, x1, x2
    0057d3dcb.ls 0x57d3e4
    0057d3e0b 0x57d408
    0057d3e4
    0057d3e4loc_57d3e4:
    0057d3e4b 0x57d3e8
    0057d3e8
    0057d3e8loc_57d3e8:
    0057d3e8ldr x2, [sp+104]
    0057d3ecldrsb x27, [x2]
    0057d3f0str x1, [x2+8]
    0057d3f4ldr x0, [sp+104]
    0057d3f8str x0, [sp+48]
    0057d3fcldur x29, [sp-8]
    0057d400ldr x30, [sp], 96
    0057d404ret x30
    0057d408
    0057d408loc_57d408:
    0057d408bl runtime.panicSliceAcap
    0057d40chint
    0057d410
    0057d410loc_57d410:
    0057d410stp x0, x1, [sp+8]
    0057d414mov x3, x30
    0057d418bl runtime.morestack_noctxt.abi0
    0057d41cldp x0, x1, [sp+8]
    0057d420b 0x57d2c0
    0057d424udf 0
    0057d428udf 0
    0057d42cudf 0
    0057d2c0
    0057d430
    0057d430crypto/internal/fips140/bigmod.(*Nat).resetToBytes: ; void crypto/internal/fips140/bigmod.(*Nat).resetToBytes(crypto/internal/fips140/bigmod.Nat * x, struct []uint8 b)
    0057d430ldr x16, [x28+16]
    0057d434subs xzr, sp, x16
    0057d438b.ls 0x57d4f4
    0057d43cstr x30, [sp-128]!
    0057d440stur x29, [sp-8]
    0057d444sub x29, sp, 8
    0057d448str x0, [sp+136]
    0057d44cstr x1, [sp+144]
    0057d450str x2, [sp+152]
    0057d454str x3, [sp+160]
    0057d458str xzr, [sp+64]
    0057d45cldr x2, [sp+152]
    0057d460str x2, [sp+56]
    0057d464add x3, x2, 7
    0057d468sbfm x3, x3, 63, 63
    0057d46cadd x2, x2, x3, lsr #61
    0057d470add x2, x2, 7
    0057d474sbfm x1, x2, 3, 63
    0057d478str x1, [sp+48]
    0057d47cldr x0, [sp+136]
    0057d480bl crypto/internal/fips140/bigmod.(*Nat).reset
    0057d484ldr x1, [sp+144]
    0057d488ldr x2, [sp+152]
    0057d48cldr x3, [sp+160]
    0057d490ldr x0, [sp+136]
    0057d494bl crypto/internal/fips140/bigmod.(*Nat).setBytes
    0057d498str x0, [sp+72]
    0057d49cstr x1, [sp+80]
    0057d4a0cbnz x0, 0x57d4c4
    0057d4a4b 0x57d4a8
    0057d4a8
    0057d4a8loc_57d4a8:
    0057d4a8ldr x0, [sp+136]
    0057d4acbl crypto/internal/fips140/bigmod.(*Nat).trim
    0057d4b0str x0, [sp+96]
    0057d4b4str x0, [sp+64]
    0057d4b8ldur x29, [sp-8]
    0057d4bcldr x30, [sp], 128
    0057d4c0ret x30
    0057d4c4
    0057d4c4loc_57d4c4:
    0057d4c4adrp x0, 0x146000
    0057d4c8add x0, x0, 1108
    0057d4ccstr x0, [sp+104]
    0057d4d0movz x1, 38
    0057d4d4str x1, [sp+112]
    0057d4d8bl runtime.convTstring
    0057d4dcstr x0, [sp+88]
    0057d4e0mov x1, x0
    0057d4e4adrp x0, 0x78000
    0057d4e8add x0, x0, 2944
    0057d4ecbl runtime.gopanic
    0057d4f0hint
    0057d4f4
    0057d4f4loc_57d4f4:
    0057d4f4stp x0, x1, [sp+8]
    0057d4f8stp x2, x3, [sp+24]
    0057d4fcmov x3, x30
    0057d500bl runtime.morestack_noctxt.abi0
    0057d504ldp x0, x1, [sp+8]
    0057d508ldp x2, x3, [sp+24]
    0057d50cb 0x57d430
    0057d430
    0057d510
    0057d510crypto/internal/fips140/bigmod.(*Nat).trim: ; void crypto/internal/fips140/bigmod.(*Nat).trim(crypto/internal/fips140/bigmod.Nat * x)
    0057d510ldr x16, [x28+16]
    0057d514subs xzr, sp, x16
    0057d518b.ls 0x57d5ec
    0057d51cstr x30, [sp-64]!
    0057d520stur x29, [sp-8]
    0057d524sub x29, sp, 8
    0057d528str x0, [sp+72]
    0057d52cstr xzr, [sp+48]
    0057d530ldr x3, [sp+72]
    0057d534ldrsb x27, [x3]
    0057d538ldr x3, [x3+8]
    0057d53cstr x3, [sp+40]
    0057d540sub x3, x3, 1
    0057d544str x3, [sp+32]
    0057d548b 0x57d54c
    0057d54c
    0057d54cloc_57d54c:
    0057d54cldr x3, [sp+32]
    0057d550tbz x3, 63, 0x57d558
    0057d554b 0x57d5c8
    0057d558
    0057d558loc_57d558:
    0057d558ldr x3, [sp+72]
    0057d55cldrsb x27, [x3]
    0057d560ldr x1, [x3+8]
    0057d564ldr x3, [x3]
    0057d568ldr x0, [sp+32]
    0057d56csubs xzr, x1, x0
    0057d570b.hi 0x57d578
    0057d574b 0x57d5e4
    0057d578
    0057d578loc_57d578:
    0057d578ldr x3, [x3+3*x0]
    0057d57ccbnz x3, 0x57d584
    0057d580b 0x57d588
    0057d584
    0057d584loc_57d584:
    0057d584b 0x57d5cc
    0057d588
    0057d588loc_57d588:
    0057d588ldr x3, [sp+72]
    0057d58cldrsb x27, [x3]
    0057d590ldr x2, [x3+16]
    0057d594ldr x1, [sp+32]
    0057d598subs xzr, x2, x1
    0057d59cb.hs 0x57d5a4
    0057d5a0b 0x57d5e0
    0057d5a4
    0057d5a4loc_57d5a4:
    0057d5a4b 0x57d5a8
    0057d5a8
    0057d5a8loc_57d5a8:
    0057d5a8ldr x3, [sp+72]
    0057d5acldrsb x27, [x3]
    0057d5b0str x1, [x3+8]
    0057d5b4b 0x57d5b8
    0057d5b8
    0057d5b8loc_57d5b8:
    0057d5b8ldr x3, [sp+32]
    0057d5bcsub x3, x3, 1
    0057d5c0str x3, [sp+32]
    0057d5c4b 0x57d54c
    0057d5c8
    0057d5c8loc_57d5c8:
    0057d5c8b 0x57d5cc
    0057d5cc
    0057d5ccloc_57d5cc:
    0057d5ccldr x0, [sp+72]
    0057d5d0str x0, [sp+48]
    0057d5d4ldur x29, [sp-8]
    0057d5d8ldr x30, [sp], 64
    0057d5dcret x30
    0057d5e0
    0057d5e0loc_57d5e0:
    0057d5e0bl runtime.panicSliceAcap
    0057d5e4
    0057d5e4loc_57d5e4:
    0057d5e4bl runtime.panicIndex
    0057d5e8hint
    0057d5ec
    0057d5ecloc_57d5ec:
    0057d5ecstr x0, [sp+8]
    0057d5f0mov x3, x30
    0057d5f4bl runtime.morestack_noctxt.abi0
    0057d5f8ldr x0, [sp+8]
    0057d5fcb 0x57d510
    0057d510
    0057d600
    0057d600crypto/internal/fips140/bigmod.(*Nat).set: ; void crypto/internal/fips140/bigmod.(*Nat).set(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * y)
    0057d600ldr x16, [x28+16]
    0057d604subs xzr, sp, x16
    0057d608b.ls 0x57d6e8
    0057d60cstr x30, [sp-128]!
    0057d610stur x29, [sp-8]
    0057d614sub x29, sp, 8
    0057d618str x0, [sp+136]
    0057d61cstr x1, [sp+144]
    0057d620str xzr, [sp+64]
    0057d624ldr x2, [sp+144]
    0057d628ldrsb x27, [x2]
    0057d62cldr x1, [x2+8]
    0057d630str x1, [sp+56]
    0057d634ldr x0, [sp+136]
    0057d638bl crypto/internal/fips140/bigmod.(*Nat).reset
    0057d63cldr x2, [sp+136]
    0057d640ldrsb x27, [x2]
    0057d644ldr x3, [x2]
    0057d648ldr x4, [x2+8]
    0057d64cldr x2, [x2+16]
    0057d650str x3, [sp+96]
    0057d654str x4, [sp+104]
    0057d658str x2, [sp+112]
    0057d65cldr x2, [sp+144]
    0057d660ldrsb x27, [x2]
    0057d664ldr x3, [x2+8]
    0057d668ldr x4, [x2]
    0057d66cldr x2, [x2+16]
    0057d670str x4, [sp+72]
    0057d674str x3, [sp+80]
    0057d678str x2, [sp+88]
    0057d67cldr x2, [sp+104]
    0057d680str x2, [sp+48]
    0057d684subs xzr, x2, x3
    0057d688b.gt 0x57d690
    0057d68cb 0x57d698
    0057d690
    0057d690loc_57d690:
    0057d690str x3, [sp+48]
    0057d694b 0x57d69c
    0057d698
    0057d698loc_57d698:
    0057d698b 0x57d69c
    0057d69c
    0057d69cloc_57d69c:
    0057d69cldr x3, [sp+72]
    0057d6a0ldr x4, [sp+96]
    0057d6a4subs xzr, x3, x4
    0057d6a8b.ne 0x57d6b0
    0057d6acb 0x57d6d0
    0057d6b0
    0057d6b0loc_57d6b0:
    0057d6b0ldr x3, [sp+48]
    0057d6b4str x3, [sp+40]
    0057d6b8ldr x3, [sp+40]
    0057d6bcubfm x2, x3, 61, 60
    0057d6c0ldr x1, [sp+72]
    0057d6c4ldr x0, [sp+96]
    0057d6c8bl runtime.memmove
    0057d6ccb 0x57d6d4
    0057d6d0
    0057d6d0loc_57d6d0:
    0057d6d0b 0x57d6d4
    0057d6d4
    0057d6d4loc_57d6d4:
    0057d6d4ldr x0, [sp+136]
    0057d6d8str x0, [sp+64]
    0057d6dcldur x29, [sp-8]
    0057d6e0ldr x30, [sp], 128
    0057d6e4ret x30
    0057d6e8
    0057d6e8loc_57d6e8:
    0057d6e8stp x0, x1, [sp+8]
    0057d6ecmov x3, x30
    0057d6f0bl runtime.morestack_noctxt.abi0
    0057d6f4ldp x0, x1, [sp+8]
    0057d6f8b 0x57d600
    0057d6fcudf 0
    0057d600
    0057d700
    0057d700crypto/internal/fips140/bigmod.(*Nat).Bytes: ; void crypto/internal/fips140/bigmod.(*Nat).Bytes(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Modulus * m)
    0057d700ldr x16, [x28+16]
    0057d704sub x17, sp, 48
    0057d708subs xzr, x17, x16
    0057d70cb.ls 0x57d898
    0057d710str x30, [sp-176]!
    0057d714stur x29, [sp-8]
    0057d718sub x29, sp, 8
    0057d71cstr x0, [sp+184]
    0057d720str x1, [sp+192]
    0057d724str xzr, [sp+72]
    0057d728stp xzr, xzr, [sp+80]
    0057d72cldr x0, [sp+192]
    0057d730bl crypto/internal/fips140/bigmod.(*Modulus).Size
    0057d734str x0, [sp+48]
    0057d738mov x1, x0
    0057d73cmov x2, x1
    0057d740adrp x0, 0x78000
    0057d744add x0, x0, 3072
    0057d748bl runtime.makeslice
    0057d74cldr x1, [sp+48]
    0057d750ldr x2, [sp+48]
    0057d754str x0, [sp+96]
    0057d758str x1, [sp+104]
    0057d75cstr x2, [sp+112]
    0057d760ldr x1, [sp+184]
    0057d764ldrsb x27, [x1]
    0057d768ldr x2, [x1+8]
    0057d76cldr x3, [x1]
    0057d770ldr x1, [x1+16]
    0057d774str x3, [sp+136]
    0057d778str x2, [sp+144]
    0057d77cstr x1, [sp+152]
    0057d780str xzr, [sp+56]
    0057d784str x2, [sp+64]
    0057d788b 0x57d78c
    0057d78c
    0057d78cloc_57d78c:
    0057d78cldr x3, [sp+64]
    0057d790ldr x4, [sp+56]
    0057d794subs xzr, x3, x4
    0057d798b.gt 0x57d7a0
    0057d79cb 0x57d7b8
    0057d7a0
    0057d7a0loc_57d7a0:
    0057d7a0ldr x3, [sp+56]
    0057d7a4ldr x4, [sp+136]
    0057d7a8ldr x3, [x4+3*x3]
    0057d7acstr x3, [sp+32]
    0057d7b0str xzr, [sp+40]
    0057d7b4b 0x57d7dc
    0057d7b8
    0057d7b8loc_57d7b8:
    0057d7b8ldr x0, [sp+96]
    0057d7bcldr x1, [sp+104]
    0057d7c0ldr x2, [sp+112]
    0057d7c4str x0, [sp+72]
    0057d7c8str x1, [sp+80]
    0057d7ccstr x2, [sp+88]
    0057d7d0ldur x29, [sp-8]
    0057d7d4ldr x30, [sp], 176
    0057d7d8ret x30
    0057d7dc
    0057d7dcloc_57d7dc:
    0057d7dcldr x3, [sp+40]
    0057d7e0subs xzr, x3, 8
    0057d7e4b.lt 0x57d7ec
    0057d7e8b 0x57d84c
    0057d7ec
    0057d7ecloc_57d7ec:
    0057d7ecldr x3, [sp+48]
    0057d7f0sub x0, x3, 1
    0057d7f4str x0, [sp+48]
    0057d7f8tbnz x0, 63, 0x57d800
    0057d7fcb 0x57d810
    0057d800
    0057d800loc_57d800:
    0057d800ldr x3, [sp+32]
    0057d804cbz x3, 0x57d80c
    0057d808b 0x57d868
    0057d80c
    0057d80cloc_57d80c:
    0057d80cb 0x57d850
    0057d810
    0057d810loc_57d810:
    0057d810ldr x1, [sp+104]
    0057d814ldr x3, [sp+96]
    0057d818ldr x4, [sp+32]
    0057d81csubs xzr, x1, x0
    0057d820b.hi 0x57d828
    0057d824b 0x57d864
    0057d828
    0057d828loc_57d828:
    0057d828strb w4, [x3+x0]
    0057d82cldr x3, [sp+32]
    0057d830ubfm x3, x3, 8, 63
    0057d834str x3, [sp+32]
    0057d838b 0x57d83c
    0057d83c
    0057d83cloc_57d83c:
    0057d83cldr x3, [sp+40]
    0057d840add x3, x3, 1
    0057d844str x3, [sp+40]
    0057d848b 0x57d7dc
    0057d84c
    0057d84cloc_57d84c:
    0057d84cb 0x57d850
    0057d850
    0057d850loc_57d850:
    0057d850b 0x57d854
    0057d854
    0057d854loc_57d854:
    0057d854ldr x3, [sp+56]
    0057d858add x3, x3, 1
    0057d85cstr x3, [sp+56]
    0057d860b 0x57d78c
    0057d864
    0057d864loc_57d864:
    0057d864bl runtime.panicIndex
    0057d868
    0057d868loc_57d868:
    0057d868adrp x0, 0x144000
    0057d86cadd x0, x0, 705
    0057d870str x0, [sp+120]
    0057d874movz x1, 35
    0057d878str x1, [sp+128]
    0057d87cbl runtime.convTstring
    0057d880str x0, [sp+160]
    0057d884mov x1, x0
    0057d888adrp x0, 0x78000
    0057d88cadd x0, x0, 2944
    0057d890bl runtime.gopanic
    0057d894hint
    0057d898
    0057d898loc_57d898:
    0057d898stp x0, x1, [sp+8]
    0057d89cmov x3, x30
    0057d8a0bl runtime.morestack_noctxt.abi0
    0057d8a4ldp x0, x1, [sp+8]
    0057d8a8b 0x57d700
    0057d8acudf 0
    0057d700
    0057d8b0
    0057d8b0crypto/internal/fips140/bigmod.(*Nat).SetBytes: ; void crypto/internal/fips140/bigmod.(*Nat).SetBytes(crypto/internal/fips140/bigmod.Nat * x, struct []uint8 b, crypto/internal/fips140/bigmod.Modulus * m)
    0057d8b0ldr x16, [x28+16]
    0057d8b4subs xzr, sp, x16
    0057d8b8b.ls 0x57d9c0
    0057d8bcstr x30, [sp-128]!
    0057d8c0stur x29, [sp-8]
    0057d8c4sub x29, sp, 8
    0057d8c8str x0, [sp+136]
    0057d8ccstr x1, [sp+144]
    0057d8d0str x2, [sp+152]
    0057d8d4str x3, [sp+160]
    0057d8d8str x4, [sp+168]
    0057d8dcstr xzr, [sp+72]
    0057d8e0stp xzr, xzr, [sp+56]
    0057d8e4ldr x1, [sp+168]
    0057d8e8ldr x0, [sp+136]
    0057d8ecbl crypto/internal/fips140/bigmod.(*Nat).resetFor
    0057d8f0ldr x1, [sp+144]
    0057d8f4ldr x2, [sp+152]
    0057d8f8ldr x3, [sp+160]
    0057d8fcldr x0, [sp+136]
    0057d900bl crypto/internal/fips140/bigmod.(*Nat).setBytes
    0057d904str x0, [sp+80]
    0057d908str x1, [sp+88]
    0057d90ccbnz x0, 0x57d914
    0057d910b 0x57d938
    0057d914
    0057d914loc_57d914:
    0057d914str xzr, [sp+72]
    0057d918ldr x1, [sp+80]
    0057d91cldr x2, [sp+88]
    0057d920str x1, [sp+56]
    0057d924str x2, [sp+64]
    0057d928ldr x0, [sp+72]
    0057d92cldur x29, [sp-8]
    0057d930ldr x30, [sp], 128
    0057d934ret x30
    0057d938
    0057d938loc_57d938:
    0057d938ldr x2, [sp+168]
    0057d93cldrsb x27, [x2]
    0057d940ldr x1, [x2]
    0057d944str x1, [sp+96]
    0057d948ldr x0, [sp+136]
    0057d94cbl crypto/internal/fips140/bigmod.(*Nat).cmpGeq
    0057d950str x0, [sp+48]
    0057d954subs xzr, x0, 1
    0057d958b.eq 0x57d960
    0057d95cb 0x57d99c
    0057d960
    0057d960loc_57d960:
    0057d960adrp x0, 0x13e000
    0057d964add x0, x0, 1453
    0057d968movz x1, 27
    0057d96cbl errors.New
    0057d970str x0, [sp+104]
    0057d974str x1, [sp+112]
    0057d978str xzr, [sp+72]
    0057d97cldr x1, [sp+104]
    0057d980ldr x2, [sp+112]
    0057d984str x1, [sp+56]
    0057d988str x2, [sp+64]
    0057d98cldr x0, [sp+72]
    0057d990ldur x29, [sp-8]
    0057d994ldr x30, [sp], 128
    0057d998ret x30
    0057d99c
    0057d99cloc_57d99c:
    0057d99cldr x3, [sp+136]
    0057d9a0str x3, [sp+72]
    0057d9a4stp xzr, xzr, [sp+56]
    0057d9a8ldr x0, [sp+72]
    0057d9acmov x1, xzr
    0057d9b0mov x2, xzr
    0057d9b4ldur x29, [sp-8]
    0057d9b8ldr x30, [sp], 128
    0057d9bcret x30
    0057d9c0
    0057d9c0loc_57d9c0:
    0057d9c0stp x0, x1, [sp+8]
    0057d9c4stp x2, x3, [sp+24]
    0057d9c8str x4, [sp+40]
    0057d9ccmov x3, x30
    0057d9d0bl runtime.morestack_noctxt.abi0
    0057d9d4ldp x0, x1, [sp+8]
    0057d9d8ldp x2, x3, [sp+24]
    0057d9dcldr x4, [sp+40]
    0057d9e0b 0x57d8b0
    0057d9e4udf 0
    0057d9e8udf 0
    0057d9ecudf 0
    0057d8b0
    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