File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
0057fb10
0057fb10crypto/internal/fips140/bigmod.(*Nat).montgomeryRepresentation: ; void crypto/internal/fips140/bigmod.(*Nat).montgomeryRepresentation(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Modulus * m)
0057fb10ldr x16, [x28+16]
0057fb14subs xzr, sp, x16
0057fb18b.ls 0x57fb68
0057fb1cstr x30, [sp-80]!
0057fb20stur x29, [sp-8]
0057fb24sub x29, sp, 8
0057fb28str x0, [sp+88]
0057fb2cstr x1, [sp+96]
0057fb30str xzr, [sp+48]
0057fb34ldr x4, [sp+96]
0057fb38ldrsb x27, [x4]
0057fb3cldr x2, [x4+24]
0057fb40str x2, [sp+56]
0057fb44ldr x0, [sp+88]
0057fb48ldr x1, [sp+88]
0057fb4cldr x3, [sp+96]
0057fb50bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
0057fb54str x0, [sp+64]
0057fb58str x0, [sp+48]
0057fb5cldur x29, [sp-8]
0057fb60ldr x30, [sp], 80
0057fb64ret x30
0057fb68
0057fb68loc_57fb68:
0057fb68stp x0, x1, [sp+8]
0057fb6cmov x3, x30
0057fb70bl runtime.morestack_noctxt.abi0
0057fb74ldp x0, x1, [sp+8]
0057fb78b 0x57fb10
0057fb7cudf 0
0057fb10
0057fb10crypto/internal/fips140/bigmod.(*Nat).montgomeryRepresentation: ; void crypto/internal/fips140/bigmod.(*Nat).montgomeryRepresentation(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Modulus * m)
0057fb10ldr x16, [x28+16]
0057fb14subs xzr, sp, x16
0057fb18b.ls 0x57fb68
0057fb1cstr x30, [sp-80]!
0057fb20stur x29, [sp-8]
0057fb24sub x29, sp, 8
0057fb28str x0, [sp+88]
0057fb2cstr x1, [sp+96]
0057fb30str xzr, [sp+48]
0057fb34ldr x4, [sp+96]
0057fb38ldrsb x27, [x4]
0057fb3cldr x2, [x4+24]
0057fb40str x2, [sp+56]
0057fb44ldr x0, [sp+88]
0057fb48ldr x1, [sp+88]
0057fb4cldr x3, [sp+96]
0057fb50bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
0057fb54str x0, [sp+64]
0057fb58str x0, [sp+48]
0057fb5cldur x29, [sp-8]
0057fb60ldr x30, [sp], 80
0057fb64ret x30
0057fb68
0057fb68loc_57fb68:
0057fb68stp x0, x1, [sp+8]
0057fb6cmov x3, x30
0057fb70bl runtime.morestack_noctxt.abi0
0057fb74ldp x0, x1, [sp+8]
0057fb78b 0x57fb10
0057fb7cudf 0
0057fb10
0057fb80
0057fb80crypto/internal/fips140/bigmod.(*Nat).montgomeryReduction: ; void crypto/internal/fips140/bigmod.(*Nat).montgomeryReduction(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Modulus * m)
0057fb80ldr x16, [x28+16]
0057fb84subs xzr, sp, x16
0057fb88b.ls 0x57fc0c
0057fb8cstr x30, [sp-80]!
0057fb90stur x29, [sp-8]
0057fb94sub x29, sp, 8
0057fb98str x0, [sp+88]
0057fb9cstr x1, [sp+96]
0057fba0str xzr, [sp+48]
0057fba4bl crypto/internal/fips140/bigmod.NewNat
0057fba8str x0, [sp+64]
0057fbacldr x1, [sp+96]
0057fbb0bl crypto/internal/fips140/bigmod.(*Nat).ExpandFor
0057fbb4str x0, [sp+56]
0057fbb8ldrsb x27, [x0]
0057fbbcldr x1, [x0+8]
0057fbc0ldr x0, [x0]
0057fbc4subs xzr, x1, 0
0057fbc8b.hi 0x57fbd0
0057fbccb 0x57fc00
0057fbd0
0057fbd0loc_57fbd0:
0057fbd0orr x4, xzr, 1
0057fbd4str x4, [x0]
0057fbd8ldr x1, [sp+88]
0057fbdcldr x2, [sp+56]
0057fbe0ldr x3, [sp+96]
0057fbe4ldr x0, [sp+88]
0057fbe8bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
0057fbecstr x0, [sp+64]
0057fbf0str x0, [sp+48]
0057fbf4ldur x29, [sp-8]
0057fbf8ldr x30, [sp], 80
0057fbfcret x30
0057fc00
0057fc00loc_57fc00:
0057fc00mov x0, xzr
0057fc04bl runtime.panicIndex
0057fc08hint
0057fc0c
0057fc0cloc_57fc0c:
0057fc0cstp x0, x1, [sp+8]
0057fc10mov x3, x30
0057fc14bl runtime.morestack_noctxt.abi0
0057fc18ldp x0, x1, [sp+8]
0057fc1cb 0x57fb80
0057fb80
0057fb80crypto/internal/fips140/bigmod.(*Nat).montgomeryReduction: ; void crypto/internal/fips140/bigmod.(*Nat).montgomeryReduction(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Modulus * m)
0057fb80ldr x16, [x28+16]
0057fb84subs xzr, sp, x16
0057fb88b.ls 0x57fc0c
0057fb8cstr x30, [sp-80]!
0057fb90stur x29, [sp-8]
0057fb94sub x29, sp, 8
0057fb98str x0, [sp+88]
0057fb9cstr x1, [sp+96]
0057fba0str xzr, [sp+48]
0057fba4bl crypto/internal/fips140/bigmod.NewNat
0057fba8str x0, [sp+64]
0057fbacldr x1, [sp+96]
0057fbb0bl crypto/internal/fips140/bigmod.(*Nat).ExpandFor
0057fbb4str x0, [sp+56]
0057fbb8ldrsb x27, [x0]
0057fbbcldr x1, [x0+8]
0057fbc0ldr x0, [x0]
0057fbc4subs xzr, x1, 0
0057fbc8b.hi 0x57fbd0
0057fbccb 0x57fc00
0057fbd0
0057fbd0loc_57fbd0:
0057fbd0orr x4, xzr, 1
0057fbd4str x4, [x0]
0057fbd8ldr x1, [sp+88]
0057fbdcldr x2, [sp+56]
0057fbe0ldr x3, [sp+96]
0057fbe4ldr x0, [sp+88]
0057fbe8bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
0057fbecstr x0, [sp+64]
0057fbf0str x0, [sp+48]
0057fbf4ldur x29, [sp-8]
0057fbf8ldr x30, [sp], 80
0057fbfcret x30
0057fc00
0057fc00loc_57fc00:
0057fc00mov x0, xzr
0057fc04bl runtime.panicIndex
0057fc08hint
0057fc0c
0057fc0cloc_57fc0c:
0057fc0cstp x0, x1, [sp+8]
0057fc10mov x3, x30
0057fc14bl runtime.morestack_noctxt.abi0
0057fc18ldp x0, x1, [sp+8]
0057fc1cb 0x57fb80
0057fb80
0057fc20
0057fc20crypto/internal/fips140/bigmod.(*Nat).montgomeryMul: ; void crypto/internal/fips140/bigmod.(*Nat).montgomeryMul(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * a, crypto/internal/fips140/bigmod.Nat * b, crypto/internal/fips140/bigmod.Modulus * m)
0057fc20ldr x16, [x28+16]
0057fc24sub x17, sp, 2496
0057fc28subs xzr, x17, x16
0057fc2cb.ls 0x5809e0
0057fc30sub x20, sp, 2624
0057fc34stp x29, x30, [x20-8]
0057fc38add sp, x20, 0
0057fc3csub x29, sp, 8
0057fc40str x0, [sp+2632]
0057fc44str x1, [sp+2640]
0057fc48str x2, [sp+2648]
0057fc4cstr x3, [sp+2656]
0057fc50str xzr, [sp+2120]
0057fc54ldr x7, [sp+2656]
0057fc58ldrsb x27, [x7]
0057fc5cldr x7, [x7]
0057fc60ldrsb x27, [x7]
0057fc64ldr x1, [x7+8]
0057fc68str x1, [sp+64]
0057fc6cldr x7, [sp+2656]
0057fc70ldrsb x27, [x7]
0057fc74ldr x7, [x7]
0057fc78ldrsb x27, [x7]
0057fc7cldr x2, [x7+16]
0057fc80ldr x7, [x7]
0057fc84subs xzr, x2, x1
0057fc88b.hs 0x57fc90
0057fc8cb 0x5809d8
0057fc90
0057fc90loc_57fc90:
0057fc90b 0x57fc94
0057fc94
0057fc94loc_57fc94:
0057fc94str x7, [sp+2128]
0057fc98str x1, [sp+2136]
0057fc9cstr x2, [sp+2144]
0057fca0ldr x7, [sp+2640]
0057fca4ldrsb x27, [x7]
0057fca8ldr x2, [x7+16]
0057fcacldr x7, [x7]
0057fcb0ldr x1, [sp+64]
0057fcb4subs xzr, x2, x1
0057fcb8b.hs 0x57fcc0
0057fcbcb 0x5809d4
0057fcc0
0057fcc0loc_57fcc0:
0057fcc0b 0x57fcc4
0057fcc4
0057fcc4loc_57fcc4:
0057fcc4str x7, [sp+2176]
0057fcc8str x1, [sp+2184]
0057fcccstr x2, [sp+2192]
0057fcd0ldr x7, [sp+2648]
0057fcd4ldrsb x27, [x7]
0057fcd8ldr x2, [x7+16]
0057fcdcldr x7, [x7]
0057fce0ldr x1, [sp+64]
0057fce4subs xzr, x1, x2
0057fce8b.ls 0x57fcf0
0057fcecb 0x5809d0
0057fcf0
0057fcf0loc_57fcf0:
0057fcf0b 0x57fcf4
0057fcf4
0057fcf4loc_57fcf4:
0057fcf4str x7, [sp+2152]
0057fcf8str x1, [sp+2160]
0057fcfcstr x2, [sp+2168]
0057fd00ldr x7, [sp+64]
0057fd04str x7, [sp+2024]
0057fd08subs xzr, x7, 16
0057fd0cb.eq 0x57fd14
0057fd10b 0x57fd5c
0057fd14
0057fd14loc_57fd14:
0057fd14b 0x57fd18
0057fd18
0057fd18loc_57fd18:
0057fd18b 0x57fd1c
0057fd1c
0057fd1cloc_57fd1c:
0057fd1cadd x20, sp, 1232
0057fd20adr x27, 16
0057fd24stp x29, x27, [sp-24]
0057fd28sub x29, sp, 24
0057fd2cbl fn_87cd0
0057fd30sub x29, sp, 8
0057fd34add x2, sp, 1232
0057fd38ldrsb x27, [x2]
0057fd3cb 0x57fd40
0057fd40
0057fd40loc_57fd40:
0057fd40str x2, [sp+2248]
0057fd44orr x2, xzr, 32
0057fd48str x2, [sp+2256]
0057fd4cstr x2, [sp+2264]
0057fd50str xzr, [sp+216]
0057fd54str xzr, [sp+88]
0057fd58b 0x58072c
0057fd5c
0057fd5cloc_57fd5c:
0057fd5csubs xzr, x7, 24
0057fd60b.eq 0x57fd68
0057fd64b 0x57fdb0
0057fd68
0057fd68loc_57fd68:
0057fd68b 0x57fd6c
0057fd6c
0057fd6cloc_57fd6c:
0057fd6cb 0x57fd70
0057fd70
0057fd70loc_57fd70:
0057fd70add x20, sp, 824
0057fd74adr x27, 16
0057fd78stp x29, x27, [sp-24]
0057fd7csub x29, sp, 24
0057fd80bl fn_87cb0
0057fd84sub x29, sp, 8
0057fd88add x2, sp, 824
0057fd8cldrsb x27, [x2]
0057fd90b 0x57fd94
0057fd94
0057fd94loc_57fd94:
0057fd94str x2, [sp+2224]
0057fd98orr x2, xzr, 48
0057fd9cstr x2, [sp+2232]
0057fda0str x2, [sp+2240]
0057fda4str xzr, [sp+208]
0057fda8str xzr, [sp+80]
0057fdacb 0x580480
0057fdb0
0057fdb0loc_57fdb0:
0057fdb0subs xzr, x7, 32
0057fdb4b.eq 0x57fdbc
0057fdb8b 0x57fe04
0057fdbc
0057fdbcloc_57fdbc:
0057fdbcb 0x57fdc0
0057fdc0
0057fdc0loc_57fdc0:
0057fdc0b 0x57fdc4
0057fdc4
0057fdc4loc_57fdc4:
0057fdc4add x20, sp, 288
0057fdc8adr x27, 16
0057fdccstp x29, x27, [sp-24]
0057fdd0sub x29, sp, 24
0057fdd4bl fn_87c90
0057fdd8sub x29, sp, 8
0057fddcadd x2, sp, 288
0057fde0ldrsb x27, [x2]
0057fde4b 0x57fde8
0057fde8
0057fde8loc_57fde8:
0057fde8str x2, [sp+2200]
0057fdecorr x2, xzr, 64
0057fdf0str x2, [sp+2208]
0057fdf4str x2, [sp+2216]
0057fdf8str xzr, [sp+200]
0057fdfcstr xzr, [sp+72]
0057fe00b 0x5801d4
0057fe04
0057fe04loc_57fe04:
0057fe04b 0x57fe08
0057fe08
0057fe08loc_57fe08:
0057fe08b 0x57fe0c
0057fe0c
0057fe0cloc_57fe0c:
0057fe0cb 0x57fe10
0057fe10
0057fe10loc_57fe10:
0057fe10b 0x57fe14
0057fe14
0057fe14loc_57fe14:
0057fe14add x20, sp, 1512
0057fe18adr x27, 16
0057fe1cstp x29, x27, [sp-24]
0057fe20sub x29, sp, 24
0057fe24bl fn_87c90
0057fe28sub x29, sp, 8
0057fe2cadd x7, sp, 1512
0057fe30ldrsb x27, [x7]
0057fe34b 0x57fe38
0057fe38
0057fe38loc_57fe38:
0057fe38b 0x57fe3c
0057fe3c
0057fe3cloc_57fe3c:
0057fe3cstr x7, [sp+2272]
0057fe40str xzr, [sp+2280]
0057fe44orr x7, xzr, 64
0057fe48str x7, [sp+2288]
0057fe4cstr x7, [sp+2048]
0057fe50ldr x7, [sp+64]
0057fe54ubfm x7, x7, 63, 62
0057fe58subs xzr, x7, 64
0057fe5cb.gt 0x57fe64
0057fe60b 0x57fe94
0057fe64
0057fe64loc_57fe64:
0057fe64ldr x3, [sp+64]
0057fe68ubfm x2, x3, 63, 62
0057fe6cadrp x0, 0x76000
0057fe70add x0, x0, 3584
0057fe74mov x1, xzr
0057fe78bl runtime.makeslice
0057fe7cldr x3, [sp+64]
0057fe80str x0, [sp+2272]
0057fe84str xzr, [sp+2280]
0057fe88ubfm x3, x3, 63, 62
0057fe8cstr x3, [sp+2288]
0057fe90b 0x57fe98
0057fe94
0057fe94loc_57fe94:
0057fe94b 0x57fe98
0057fe98
0057fe98loc_57fe98:
0057fe98ldr x7, [sp+64]
0057fe9cubfm x1, x7, 63, 62
0057fea0str x1, [sp+2048]
0057fea4ldr x2, [sp+2288]
0057fea8subs xzr, x2, x7, lsl #1
0057feacb.hs 0x57feb4
0057feb0b 0x5801d0
0057feb4
0057feb4loc_57feb4:
0057feb4b 0x57feb8
0057feb8
0057feb8loc_57feb8:
0057feb8str x1, [sp+2280]
0057febcstr xzr, [sp+224]
0057fec0str xzr, [sp+96]
0057fec4b 0x57fec8
0057fec8
0057fec8loc_57fec8:
0057fec8ldr x7, [sp+64]
0057feccldr x8, [sp+96]
0057fed0subs xzr, x7, x8
0057fed4b.gt 0x57fedc
0057fed8b 0x5800a0
0057fedc
0057fedcloc_57fedc:
0057fedcldr x1, [sp+2280]
0057fee0ldr x7, [sp+96]
0057fee4ldr x8, [sp+64]
0057fee8add x0, x8, x7
0057feecsubs xzr, x1, x0
0057fef0b.hi 0x57fef8
0057fef4b 0x5801cc
0057fef8
0057fef8loc_57fef8:
0057fef8ldr x0, [sp+96]
0057fefcldr x1, [sp+2160]
0057ff00ldr x7, [sp+2152]
0057ff04subs xzr, x1, x0
0057ff08b.hi 0x57ff10
0057ff0cb 0x5801c8
0057ff10
0057ff10loc_57ff10:
0057ff10ldr x7, [x7+3*x0]
0057ff14str x7, [sp+128]
0057ff18ldr x7, [sp+96]
0057ff1cldr x8, [sp+64]
0057ff20add x1, x8, x7
0057ff24str x1, [sp+2048]
0057ff28ldr x0, [sp+96]
0057ff2cldr x2, [sp+2288]
0057ff30ldr x7, [sp+2272]
0057ff34subs xzr, x2, x1
0057ff38b.hs 0x57ff40
0057ff3cb 0x5801c4
0057ff40
0057ff40loc_57ff40:
0057ff40subs xzr, x0, x1
0057ff44b.ls 0x57ff4c
0057ff48b 0x5801c0
0057ff4c
0057ff4cloc_57ff4c:
0057ff4csub x2, x2, x0
0057ff50sub x1, x1, x0
0057ff54sub x8, xzr, x2
0057ff58ubfm x9, x0, 61, 60
0057ff5cand x8, x9, x8, asr #63
0057ff60add x0, x7, x8
0057ff64str x0, [sp+2592]
0057ff68str x1, [sp+2600]
0057ff6cstr x2, [sp+2608]
0057ff70ldr x6, [sp+128]
0057ff74ldr x3, [sp+2176]
0057ff78ldr x4, [sp+2184]
0057ff7cldr x5, [sp+2192]
0057ff80bl crypto/internal/fips140/bigmod.addMulVVW
0057ff84str x0, [sp+192]
0057ff88ldr x0, [sp+96]
0057ff8cldr x1, [sp+2280]
0057ff90ldr x7, [sp+2272]
0057ff94subs xzr, x1, x0
0057ff98b.hi 0x57ffa0
0057ff9cb 0x5801bc
0057ffa0
0057ffa0loc_57ffa0:
0057ffa0ldr x7, [x7+3*x0]
0057ffa4ldr x8, [sp+2656]
0057ffa8ldrsb x27, [x8]
0057ffacldr x8, [x8+16]
0057ffb0madd x7, x7, x8, xzr
0057ffb4str x7, [sp+256]
0057ffb8ldr x7, [sp+96]
0057ffbcldr x8, [sp+64]
0057ffc0add x1, x8, x7
0057ffc4str x1, [sp+2048]
0057ffc8ldr x0, [sp+96]
0057ffccldr x2, [sp+2288]
0057ffd0ldr x7, [sp+2272]
0057ffd4subs xzr, x2, x1
0057ffd8b.hs 0x57ffe0
0057ffdcb 0x5801b8
0057ffe0
0057ffe0loc_57ffe0:
0057ffe0subs xzr, x0, x1
0057ffe4b.ls 0x57ffec
0057ffe8b 0x5801b4
0057ffec
0057ffecloc_57ffec:
0057ffecsub x2, x2, x0
0057fff0sub x1, x1, x0
0057fff4sub x8, xzr, x2
0057fff8ubfm x9, x0, 61, 60
0057fffcand x8, x9, x8, asr #63
00580000add x0, x7, x8
00580004str x0, [sp+2592]
00580008str x1, [sp+2600]
0058000cstr x2, [sp+2608]
00580010ldr x6, [sp+256]
00580014ldr x3, [sp+2128]
00580018ldr x4, [sp+2136]
0058001cldr x5, [sp+2144]
00580020bl crypto/internal/fips140/bigmod.addMulVVW
00580024str x0, [sp+160]
00580028ldr x7, [sp+224]
0058002cldr x8, [sp+192]
00580030movn x9, 0
00580034adds x9, x7, x9
00580038adcs x9, x8, x0
0058003cadc x9, xzr, xzr
00580040movn x10, 0
00580044adds x7, x7, x10
00580048adcs x7, x8, x0
0058004cstr x7, [sp+2040]
00580050str x9, [sp+2032]
00580054str x7, [sp+2112]
00580058str x9, [sp+2104]
0058005cldr x8, [sp+64]
00580060ldr x9, [sp+96]
00580064add x0, x8, x9
00580068str x0, [sp+1504]
0058006cldr x1, [sp+2280]
00580070ldr x8, [sp+2272]
00580074subs xzr, x1, x0
00580078b.hi 0x580080
0058007cb 0x5801b0
00580080
00580080loc_580080:
00580080str x7, [x8+3*x0]
00580084ldr x7, [sp+2104]
00580088str x7, [sp+224]
0058008cb 0x580090
00580090
00580090loc_580090:
00580090ldr x7, [sp+96]
00580094add x7, x7, 1
00580098str x7, [sp+96]
0058009cb 0x57fec8
005800a0
005800a0loc_5800a0:
005800a0ldr x1, [sp+64]
005800a4ldr x0, [sp+2632]
005800a8bl crypto/internal/fips140/bigmod.(*Nat).reset
005800acstr x0, [sp+2584]
005800b0ldr x0, [sp+64]
005800b4ldr x1, [sp+2280]
005800b8ldr x2, [sp+2272]
005800bcldr x3, [sp+2288]
005800c0b 0x5800c4
005800c4
005800c4loc_5800c4:
005800c4subs xzr, x1, x0
005800c8b.hs 0x5800d0
005800ccb 0x5801ac
005800d0
005800d0loc_5800d0:
005800d0sub x3, x3, x0
005800d4sub x4, x1, x0
005800d8sub x5, xzr, x3
005800dcubfm x6, x0, 61, 60
005800e0and x5, x6, x5, asr #63
005800e4add x5, x2, x5
005800e8str x5, [sp+2592]
005800ecstr x4, [sp+2600]
005800f0str x3, [sp+2608]
005800f4ldr x3, [sp+2584]
005800f8ldrsb x27, [x3]
005800fcldr x4, [x3]
00580100ldr x5, [x3+8]
00580104ldr x3, [x3+16]
00580108str x4, [sp+2560]
0058010cstr x5, [sp+2568]
00580110str x3, [sp+2576]
00580114ldr x3, [sp+2600]
00580118ldr x4, [sp+2592]
0058011cldr x5, [sp+2608]
00580120str x4, [sp+2536]
00580124str x3, [sp+2544]
00580128str x5, [sp+2552]
0058012cldr x4, [sp+2568]
00580130str x4, [sp+1496]
00580134subs xzr, x4, x3
00580138b.gt 0x580140
0058013cb 0x580148
00580140
00580140loc_580140:
00580140str x3, [sp+1496]
00580144b 0x58014c
00580148
00580148loc_580148:
00580148b 0x58014c
0058014c
0058014cloc_58014c:
0058014cldr x3, [sp+2536]
00580150ldr x4, [sp+2560]
00580154subs xzr, x4, x3
00580158b.ne 0x580160
0058015cb 0x580180
00580160
00580160loc_580160:
00580160ldr x3, [sp+1496]
00580164str x3, [sp+1488]
00580168ldr x3, [sp+1488]
0058016cubfm x2, x3, 61, 60
00580170ldr x0, [sp+2560]
00580174ldr x1, [sp+2536]
00580178bl runtime.memmove
0058017cb 0x580184
00580180
00580180loc_580180:
00580180b 0x580184
00580184
00580184loc_580184:
00580184ldr x2, [sp+2656]
00580188ldr x0, [sp+2632]
0058018cldr x1, [sp+224]
00580190bl crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus
00580194b 0x580198
00580198
00580198loc_580198:
00580198ldr x0, [sp+2632]
0058019cstr x0, [sp+2120]
005801a0ldp x29, x30, [sp-8]
005801a4add sp, sp, 2624
005801a8ret x30
005801ac
005801acloc_5801ac:
005801acbl runtime.panicSliceB
005801b0
005801b0loc_5801b0:
005801b0bl runtime.panicIndex
005801b4
005801b4loc_5801b4:
005801b4bl runtime.panicSliceB
005801b8
005801b8loc_5801b8:
005801b8bl runtime.panicSliceAcap
005801bc
005801bcloc_5801bc:
005801bcbl runtime.panicIndex
005801c0
005801c0loc_5801c0:
005801c0bl runtime.panicSliceB
005801c4
005801c4loc_5801c4:
005801c4bl runtime.panicSliceAcap
005801c8
005801c8loc_5801c8:
005801c8bl runtime.panicIndex
005801cc
005801ccloc_5801cc:
005801ccbl runtime.panicIndex
005801d0
005801d0loc_5801d0:
005801d0bl runtime.panicSliceAcap
005801d4
005801d4loc_5801d4:
005801d4ldr x2, [sp+72]
005801d8subs xzr, x2, 32
005801dcb.lt 0x5801e4
005801e0b 0x580358
005801e4
005801e4loc_5801e4:
005801e4ldr x0, [sp+72]
005801e8ldr x1, [sp+2160]
005801ecldr x2, [sp+2152]
005801f0subs xzr, x1, x0
005801f4b.hi 0x5801fc
005801f8b 0x58047c
005801fc
005801fcloc_5801fc:
005801fcldr x2, [x2+3*x0]
00580200str x2, [sp+104]
00580204ldr x0, [sp+72]
00580208ldr x1, [sp+2208]
0058020cldr x2, [sp+2200]
00580210subs xzr, x1, x0
00580214b.hi 0x58021c
00580218b 0x580478
0058021c
0058021cloc_58021c:
0058021cadd x2, x2, x0, lsl #3
00580220str x2, [sp+2368]
00580224ldr x2, [sp+2176]
00580228ldr x1, [sp+2184]
0058022csubs xzr, x1, 0
00580230b.hi 0x580238
00580234b 0x580470
00580238
00580238loc_580238:
00580238str x2, [sp+2360]
0058023cldr x0, [sp+104]
00580240ldr x1, [sp+2368]
00580244str x1, [sp+8]
00580248str x2, [sp+16]
0058024cstr x0, [sp+24]
00580250bl crypto/internal/fips140/bigmod.addMulVVW2048.abi0
00580254ldr x0, [sp+32]
00580258str x0, [sp+168]
0058025cldr x0, [sp+72]
00580260ldr x1, [sp+2208]
00580264ldr x2, [sp+2200]
00580268subs xzr, x1, x0
0058026cb.hi 0x580274
00580270b 0x58046c
00580274
00580274loc_580274:
00580274ldr x2, [x2+3*x0]
00580278ldr x3, [sp+2656]
0058027cldrsb x27, [x3]
00580280ldr x3, [x3+16]
00580284madd x2, x2, x3, xzr
00580288str x2, [sp+232]
0058028cldr x0, [sp+72]
00580290ldr x1, [sp+2208]
00580294ldr x2, [sp+2200]
00580298subs xzr, x1, x0
0058029cb.hi 0x5802a4
005802a0b 0x580468
005802a4
005802a4loc_5802a4:
005802a4add x2, x2, x0, lsl #3
005802a8str x2, [sp+2352]
005802acldr x2, [sp+2128]
005802b0ldr x1, [sp+2136]
005802b4subs xzr, x1, 0
005802b8b.hi 0x5802c0
005802bcb 0x580460
005802c0
005802c0loc_5802c0:
005802c0str x2, [sp+2344]
005802c4ldr x0, [sp+232]
005802c8ldr x1, [sp+2352]
005802ccstr x1, [sp+8]
005802d0str x2, [sp+16]
005802d4str x0, [sp+24]
005802d8bl crypto/internal/fips140/bigmod.addMulVVW2048.abi0
005802dcldr x0, [sp+32]
005802e0str x0, [sp+136]
005802e4ldr x1, [sp+200]
005802e8ldr x2, [sp+168]
005802ecmovn x3, 0
005802f0adds x3, x1, x3
005802f4adcs x3, x2, x0
005802f8adc x3, xzr, xzr
005802fcmovn x4, 0
00580300adds x1, x1, x4
00580304adcs x0, x2, x0
00580308str x0, [sp+2032]
0058030cstr x3, [sp+2040]
00580310str x0, [sp+2064]
00580314str x3, [sp+2056]
00580318ldr x1, [sp+72]
0058031cadd x1, x1, 32
00580320str x1, [sp+280]
00580324ldr x2, [sp+2208]
00580328ldr x3, [sp+2200]
0058032csubs xzr, x2, x1
00580330b.hi 0x580338
00580334b 0x580454
00580338
00580338loc_580338:
00580338str x0, [x3+3*x1]
0058033cldr x2, [sp+2056]
00580340str x2, [sp+200]
00580344b 0x580348
00580348
00580348loc_580348:
00580348ldr x2, [sp+72]
0058034cadd x2, x2, 1
00580350str x2, [sp+72]
00580354b 0x5801d4
00580358
00580358loc_580358:
00580358ldr x0, [sp+2632]
0058035corr x1, xzr, 32
00580360bl crypto/internal/fips140/bigmod.(*Nat).reset
00580364str x0, [sp+2584]
00580368ldr x1, [sp+2208]
0058036cldr x2, [sp+2200]
00580370ldr x3, [sp+2216]
00580374b 0x580378
00580378
00580378loc_580378:
00580378subs xzr, x1, 32
0058037cb.hs 0x580384
00580380b 0x58044c
00580384
00580384loc_580384:
00580384sub x3, x3, 32
00580388sub x4, xzr, x3
0058038csub x5, x1, 32
00580390sbfm x4, x4, 63, 63
00580394and x4, x4, 256
00580398add x4, x2, x4
0058039cstr x4, [sp+2592]
005803a0str x5, [sp+2600]
005803a4str x3, [sp+2608]
005803a8ldr x3, [sp+2584]
005803acldrsb x27, [x3]
005803b0ldr x4, [x3]
005803b4ldr x5, [x3+8]
005803b8ldr x3, [x3+16]
005803bcstr x4, [sp+2320]
005803c0str x5, [sp+2328]
005803c4str x3, [sp+2336]
005803c8ldr x3, [sp+2600]
005803ccldr x4, [sp+2592]
005803d0ldr x5, [sp+2608]
005803d4str x4, [sp+2296]
005803d8str x3, [sp+2304]
005803dcstr x5, [sp+2312]
005803e0ldr x4, [sp+2328]
005803e4str x4, [sp+272]
005803e8subs xzr, x4, x3
005803ecb.gt 0x5803f4
005803f0b 0x5803fc
005803f4
005803f4loc_5803f4:
005803f4str x3, [sp+272]
005803f8b 0x580400
005803fc
005803fcloc_5803fc:
005803fcb 0x580400
00580400
00580400loc_580400:
00580400ldr x3, [sp+2320]
00580404ldr x4, [sp+2296]
00580408subs xzr, x4, x3
0058040cb.ne 0x580414
00580410b 0x580434
00580414
00580414loc_580414:
00580414ldr x3, [sp+272]
00580418str x3, [sp+264]
0058041cldr x3, [sp+264]
00580420ubfm x2, x3, 61, 60
00580424ldr x1, [sp+2296]
00580428ldr x0, [sp+2320]
0058042cbl runtime.memmove
00580430b 0x580438
00580434
00580434loc_580434:
00580434b 0x580438
00580438
00580438loc_580438:
00580438ldr x2, [sp+2656]
0058043cldr x0, [sp+2632]
00580440ldr x1, [sp+200]
00580444bl crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus
00580448b 0x580198
0058044c
0058044cloc_58044c:
0058044corr x0, xzr, 32
00580450bl runtime.panicSliceB
00580454
00580454loc_580454:
00580454mov x0, x1
00580458mov x1, x2
0058045cbl runtime.panicIndex
00580460
00580460loc_580460:
00580460mov x0, xzr
00580464bl runtime.panicIndex
00580468
00580468loc_580468:
00580468bl runtime.panicIndex
0058046c
0058046cloc_58046c:
0058046cbl runtime.panicIndex
00580470
00580470loc_580470:
00580470mov x0, xzr
00580474bl runtime.panicIndex
00580478
00580478loc_580478:
00580478bl runtime.panicIndex
0058047c
0058047cloc_58047c:
0058047cbl runtime.panicIndex
00580480
00580480loc_580480:
00580480ldr x2, [sp+80]
00580484subs xzr, x2, 24
00580488b.lt 0x580490
0058048cb 0x580604
00580490
00580490loc_580490:
00580490ldr x0, [sp+80]
00580494ldr x1, [sp+2160]
00580498ldr x2, [sp+2152]
0058049csubs xzr, x0, x1
005804a0b.lo 0x5804a8
005804a4b 0x580728
005804a8
005804a8loc_5804a8:
005804a8ldr x2, [x2+3*x0]
005804acstr x2, [sp+112]
005804b0ldr x0, [sp+80]
005804b4ldr x1, [sp+2232]
005804b8ldr x2, [sp+2224]
005804bcsubs xzr, x0, x1
005804c0b.lo 0x5804c8
005804c4b 0x580724
005804c8
005804c8loc_5804c8:
005804c8add x2, x2, x0, lsl #3
005804ccstr x2, [sp+2448]
005804d0ldr x2, [sp+2176]
005804d4ldr x1, [sp+2184]
005804d8subs xzr, x1, 0
005804dcb.hi 0x5804e4
005804e0b 0x58071c
005804e4
005804e4loc_5804e4:
005804e4str x2, [sp+2440]
005804e8ldr x0, [sp+112]
005804ecldr x1, [sp+2448]
005804f0str x1, [sp+8]
005804f4str x2, [sp+16]
005804f8str x0, [sp+24]
005804fcbl crypto/internal/fips140/bigmod.addMulVVW1536.abi0
00580500ldr x0, [sp+32]
00580504str x0, [sp+176]
00580508ldr x0, [sp+80]
0058050cldr x1, [sp+2232]
00580510ldr x2, [sp+2224]
00580514subs xzr, x0, x1
00580518b.lo 0x580520
0058051cb 0x580718
00580520
00580520loc_580520:
00580520ldr x2, [x2+3*x0]
00580524ldr x3, [sp+2656]
00580528ldrsb x27, [x3]
0058052cldr x3, [x3+16]
00580530madd x2, x2, x3, xzr
00580534str x2, [sp+240]
00580538ldr x0, [sp+80]
0058053cldr x1, [sp+2232]
00580540ldr x2, [sp+2224]
00580544subs xzr, x0, x1
00580548b.lo 0x580550
0058054cb 0x580714
00580550
00580550loc_580550:
00580550add x2, x2, x0, lsl #3
00580554str x2, [sp+2432]
00580558ldr x2, [sp+2128]
0058055cldr x1, [sp+2136]
00580560subs xzr, x1, 0
00580564b.hi 0x58056c
00580568b 0x58070c
0058056c
0058056cloc_58056c:
0058056cstr x2, [sp+2424]
00580570ldr x0, [sp+240]
00580574ldr x1, [sp+2432]
00580578str x1, [sp+8]
0058057cstr x2, [sp+16]
00580580str x0, [sp+24]
00580584bl crypto/internal/fips140/bigmod.addMulVVW1536.abi0
00580588ldr x0, [sp+32]
0058058cstr x0, [sp+144]
00580590ldr x1, [sp+208]
00580594ldr x2, [sp+176]
00580598movn x3, 0
0058059cadds x3, x1, x3
005805a0adcs x3, x2, x0
005805a4adc x3, xzr, xzr
005805a8movn x4, 0
005805acadds x1, x1, x4
005805b0adcs x0, x2, x0
005805b4str x0, [sp+2040]
005805b8str x3, [sp+2032]
005805bcstr x0, [sp+2080]
005805c0str x3, [sp+2072]
005805c4ldr x1, [sp+80]
005805c8add x1, x1, 24
005805ccstr x1, [sp+816]
005805d0ldr x2, [sp+2232]
005805d4ldr x3, [sp+2224]
005805d8subs xzr, x2, x1
005805dcb.hi 0x5805e4
005805e0b 0x580700
005805e4
005805e4loc_5805e4:
005805e4str x0, [x3+3*x1]
005805e8ldr x2, [sp+2072]
005805ecstr x2, [sp+208]
005805f0b 0x5805f4
005805f4
005805f4loc_5805f4:
005805f4ldr x2, [sp+80]
005805f8add x2, x2, 1
005805fcstr x2, [sp+80]
00580600b 0x580480
00580604
00580604loc_580604:
00580604ldr x0, [sp+2632]
00580608orr x1, xzr, 24
0058060cbl crypto/internal/fips140/bigmod.(*Nat).reset
00580610str x0, [sp+2584]
00580614ldr x1, [sp+2232]
00580618ldr x2, [sp+2224]
0058061cldr x3, [sp+2240]
00580620b 0x580624
00580624
00580624loc_580624:
00580624subs xzr, x1, 24
00580628b.hs 0x580630
0058062cb 0x5806f8
00580630
00580630loc_580630:
00580630sub x3, x3, 24
00580634sub x4, xzr, x3
00580638sub x5, x1, 24
0058063csbfm x4, x4, 63, 63
00580640and x4, x4, 192
00580644add x4, x2, x4
00580648str x4, [sp+2592]
0058064cstr x5, [sp+2600]
00580650str x3, [sp+2608]
00580654ldr x3, [sp+2584]
00580658ldrsb x27, [x3]
0058065cldr x4, [x3]
00580660ldr x5, [x3+8]
00580664ldr x3, [x3+16]
00580668str x4, [sp+2400]
0058066cstr x5, [sp+2408]
00580670str x3, [sp+2416]
00580674ldr x3, [sp+2600]
00580678ldr x4, [sp+2592]
0058067cldr x5, [sp+2608]
00580680str x4, [sp+2376]
00580684str x3, [sp+2384]
00580688str x5, [sp+2392]
0058068cldr x4, [sp+2408]
00580690str x4, [sp+808]
00580694subs xzr, x3, x4
00580698b.lt 0x5806a0
0058069cb 0x5806a8
005806a0
005806a0loc_5806a0:
005806a0str x3, [sp+808]
005806a4b 0x5806ac
005806a8
005806a8loc_5806a8:
005806a8b 0x5806ac
005806ac
005806acloc_5806ac:
005806acldr x3, [sp+2376]
005806b0ldr x4, [sp+2400]
005806b4subs xzr, x4, x3
005806b8b.ne 0x5806c0
005806bcb 0x5806e0
005806c0
005806c0loc_5806c0:
005806c0ldr x3, [sp+808]
005806c4str x3, [sp+800]
005806c8ldr x3, [sp+800]
005806ccubfm x2, x3, 61, 60
005806d0ldr x0, [sp+2400]
005806d4ldr x1, [sp+2376]
005806d8bl runtime.memmove
005806dcb 0x5806e4
005806e0
005806e0loc_5806e0:
005806e0b 0x5806e4
005806e4
005806e4loc_5806e4:
005806e4ldr x2, [sp+2656]
005806e8ldr x0, [sp+2632]
005806ecldr x1, [sp+208]
005806f0bl crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus
005806f4b 0x580198
005806f8
005806f8loc_5806f8:
005806f8orr x0, xzr, 24
005806fcbl runtime.panicSliceB
00580700
00580700loc_580700:
00580700mov x0, x1
00580704mov x1, x2
00580708bl runtime.panicIndex
0058070c
0058070cloc_58070c:
0058070cmov x0, xzr
00580710bl runtime.panicIndex
00580714
00580714loc_580714:
00580714bl runtime.panicIndex
00580718
00580718loc_580718:
00580718bl runtime.panicIndex
0058071c
0058071cloc_58071c:
0058071cmov x0, xzr
00580720bl runtime.panicIndex
00580724
00580724loc_580724:
00580724bl runtime.panicIndex
00580728
00580728loc_580728:
00580728bl runtime.panicIndex
0058072c
0058072cloc_58072c:
0058072cldr x2, [sp+88]
00580730subs xzr, x2, 16
00580734b.lt 0x58073c
00580738b 0x5808b0
0058073c
0058073cloc_58073c:
0058073cldr x0, [sp+88]
00580740ldr x1, [sp+2160]
00580744ldr x2, [sp+2152]
00580748subs xzr, x1, x0
0058074cb.hi 0x580754
00580750b 0x5809cc
00580754
00580754loc_580754:
00580754ldr x2, [x2+3*x0]
00580758str x2, [sp+120]
0058075cldr x0, [sp+88]
00580760ldr x1, [sp+2256]
00580764ldr x2, [sp+2248]
00580768subs xzr, x1, x0
0058076cb.hi 0x580774
00580770b 0x5809c8
00580774
00580774loc_580774:
00580774add x2, x2, x0, lsl #3
00580778str x2, [sp+2528]
0058077cldr x2, [sp+2176]
00580780ldr x1, [sp+2184]
00580784subs xzr, x1, 0
00580788b.hi 0x580790
0058078cb 0x5809c0
00580790
00580790loc_580790:
00580790str x2, [sp+2520]
00580794ldr x0, [sp+120]
00580798ldr x1, [sp+2528]
0058079cstr x1, [sp+8]
005807a0str x2, [sp+16]
005807a4str x0, [sp+24]
005807a8bl crypto/internal/fips140/bigmod.addMulVVW1024.abi0
005807acldr x0, [sp+32]
005807b0str x0, [sp+184]
005807b4ldr x0, [sp+88]
005807b8ldr x1, [sp+2256]
005807bcldr x2, [sp+2248]
005807c0subs xzr, x1, x0
005807c4b.hi 0x5807cc
005807c8b 0x5809bc
005807cc
005807ccloc_5807cc:
005807ccldr x2, [x2+3*x0]
005807d0ldr x3, [sp+2656]
005807d4ldrsb x27, [x3]
005807d8ldr x3, [x3+16]
005807dcmadd x2, x2, x3, xzr
005807e0str x2, [sp+248]
005807e4ldr x0, [sp+88]
005807e8ldr x1, [sp+2256]
005807ecldr x2, [sp+2248]
005807f0subs xzr, x1, x0
005807f4b.hi 0x5807fc
005807f8b 0x5809b8
005807fc
005807fcloc_5807fc:
005807fcadd x2, x2, x0, lsl #3
00580800str x2, [sp+2512]
00580804ldr x2, [sp+2128]
00580808ldr x1, [sp+2136]
0058080csubs xzr, x1, 0
00580810b.hi 0x580818
00580814b 0x5809b0
00580818
00580818loc_580818:
00580818str x2, [sp+2504]
0058081cldr x0, [sp+248]
00580820ldr x1, [sp+2512]
00580824str x1, [sp+8]
00580828str x2, [sp+16]
0058082cstr x0, [sp+24]
00580830bl crypto/internal/fips140/bigmod.addMulVVW1024.abi0
00580834ldr x0, [sp+32]
00580838str x0, [sp+152]
0058083cldr x1, [sp+216]
00580840ldr x2, [sp+184]
00580844movn x3, 0
00580848adds x3, x1, x3
0058084cadcs x3, x2, x0
00580850str x3, [sp+2032]
00580854movn x4, 0
00580858adds x1, x1, x4
0058085cadcs x0, x2, x0
00580860adc x0, xzr, xzr
00580864str x0, [sp+2040]
00580868str x3, [sp+2096]
0058086cstr x0, [sp+2088]
00580870ldr x0, [sp+88]
00580874add x0, x0, 16
00580878str x0, [sp+1224]
0058087cldr x1, [sp+2256]
00580880ldr x2, [sp+2248]
00580884subs xzr, x1, x0
00580888b.hi 0x580890
0058088cb 0x5809ac
00580890
00580890loc_580890:
00580890str x3, [x2+3*x0]
00580894ldr x2, [sp+2088]
00580898str x2, [sp+216]
0058089cb 0x5808a0
005808a0
005808a0loc_5808a0:
005808a0ldr x2, [sp+88]
005808a4add x2, x2, 1
005808a8str x2, [sp+88]
005808acb 0x58072c
005808b0
005808b0loc_5808b0:
005808b0ldr x0, [sp+2632]
005808b4orr x1, xzr, 16
005808b8bl crypto/internal/fips140/bigmod.(*Nat).reset
005808bcstr x0, [sp+2584]
005808c0ldr x1, [sp+2256]
005808c4ldr x2, [sp+2248]
005808c8ldr x3, [sp+2264]
005808ccb 0x5808d0
005808d0
005808d0loc_5808d0:
005808d0subs xzr, x1, 16
005808d4b.hs 0x5808dc
005808d8b 0x5809a4
005808dc
005808dcloc_5808dc:
005808dcsub x3, x3, 16
005808e0sub x4, xzr, x3
005808e4sub x5, x1, 16
005808e8sbfm x4, x4, 63, 63
005808ecand x4, x4, 128
005808f0add x4, x2, x4
005808f4str x4, [sp+2592]
005808f8str x5, [sp+2600]
005808fcstr x3, [sp+2608]
00580900ldr x3, [sp+2584]
00580904ldrsb x27, [x3]
00580908ldr x4, [x3]
0058090cldr x5, [x3+8]
00580910ldr x3, [x3+16]
00580914str x4, [sp+2480]
00580918str x5, [sp+2488]
0058091cstr x3, [sp+2496]
00580920ldr x3, [sp+2600]
00580924ldr x4, [sp+2592]
00580928ldr x5, [sp+2608]
0058092cstr x4, [sp+2456]
00580930str x3, [sp+2464]
00580934str x5, [sp+2472]
00580938ldr x4, [sp+2488]
0058093cstr x4, [sp+1216]
00580940subs xzr, x3, x4
00580944b.lt 0x58094c
00580948b 0x580954
0058094c
0058094cloc_58094c:
0058094cstr x3, [sp+1216]
00580950b 0x580958
00580954
00580954loc_580954:
00580954b 0x580958
00580958
00580958loc_580958:
00580958ldr x3, [sp+2456]
0058095cldr x4, [sp+2480]
00580960subs xzr, x3, x4
00580964b.ne 0x58096c
00580968b 0x58098c
0058096c
0058096cloc_58096c:
0058096cldr x3, [sp+1216]
00580970str x3, [sp+1208]
00580974ldr x3, [sp+1208]
00580978ubfm x2, x3, 61, 60
0058097cldr x0, [sp+2480]
00580980ldr x1, [sp+2456]
00580984bl runtime.memmove
00580988b 0x580990
0058098c
0058098cloc_58098c:
0058098cb 0x580990
00580990
00580990loc_580990:
00580990ldr x2, [sp+2656]
00580994ldr x0, [sp+2632]
00580998ldr x1, [sp+216]
0058099cbl crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus
005809a0b 0x580198
005809a4
005809a4loc_5809a4:
005809a4orr x0, xzr, 16
005809a8bl runtime.panicSliceB
005809ac
005809acloc_5809ac:
005809acbl runtime.panicIndex
005809b0
005809b0loc_5809b0:
005809b0mov x0, xzr
005809b4bl runtime.panicIndex
005809b8
005809b8loc_5809b8:
005809b8bl runtime.panicIndex
005809bc
005809bcloc_5809bc:
005809bcbl runtime.panicIndex
005809c0
005809c0loc_5809c0:
005809c0mov x0, xzr
005809c4bl runtime.panicIndex
005809c8
005809c8loc_5809c8:
005809c8bl runtime.panicIndex
005809cc
005809ccloc_5809cc:
005809ccbl runtime.panicIndex
005809d0
005809d0loc_5809d0:
005809d0bl runtime.panicSliceAcap
005809d4
005809d4loc_5809d4:
005809d4bl runtime.panicSliceAcap
005809d8
005809d8loc_5809d8:
005809d8bl runtime.panicSliceAcap
005809dchint
005809e0
005809e0loc_5809e0:
005809e0stp x0, x1, [sp+8]
005809e4stp x2, x3, [sp+24]
005809e8mov x3, x30
005809ecbl runtime.morestack_noctxt.abi0
005809f0ldp x0, x1, [sp+8]
005809f4ldp x2, x3, [sp+24]
005809f8b 0x57fc20
005809fcudf 0
0057fc20
0057fc20crypto/internal/fips140/bigmod.(*Nat).montgomeryMul: ; void crypto/internal/fips140/bigmod.(*Nat).montgomeryMul(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * a, crypto/internal/fips140/bigmod.Nat * b, crypto/internal/fips140/bigmod.Modulus * m)
0057fc20ldr x16, [x28+16]
0057fc24sub x17, sp, 2496
0057fc28subs xzr, x17, x16
0057fc2cb.ls 0x5809e0
0057fc30sub x20, sp, 2624
0057fc34stp x29, x30, [x20-8]
0057fc38add sp, x20, 0
0057fc3csub x29, sp, 8
0057fc40str x0, [sp+2632]
0057fc44str x1, [sp+2640]
0057fc48str x2, [sp+2648]
0057fc4cstr x3, [sp+2656]
0057fc50str xzr, [sp+2120]
0057fc54ldr x7, [sp+2656]
0057fc58ldrsb x27, [x7]
0057fc5cldr x7, [x7]
0057fc60ldrsb x27, [x7]
0057fc64ldr x1, [x7+8]
0057fc68str x1, [sp+64]
0057fc6cldr x7, [sp+2656]
0057fc70ldrsb x27, [x7]
0057fc74ldr x7, [x7]
0057fc78ldrsb x27, [x7]
0057fc7cldr x2, [x7+16]
0057fc80ldr x7, [x7]
0057fc84subs xzr, x2, x1
0057fc88b.hs 0x57fc90
0057fc8cb 0x5809d8
0057fc90
0057fc90loc_57fc90:
0057fc90b 0x57fc94
0057fc94
0057fc94loc_57fc94:
0057fc94str x7, [sp+2128]
0057fc98str x1, [sp+2136]
0057fc9cstr x2, [sp+2144]
0057fca0ldr x7, [sp+2640]
0057fca4ldrsb x27, [x7]
0057fca8ldr x2, [x7+16]
0057fcacldr x7, [x7]
0057fcb0ldr x1, [sp+64]
0057fcb4subs xzr, x2, x1
0057fcb8b.hs 0x57fcc0
0057fcbcb 0x5809d4
0057fcc0
0057fcc0loc_57fcc0:
0057fcc0b 0x57fcc4
0057fcc4
0057fcc4loc_57fcc4:
0057fcc4str x7, [sp+2176]
0057fcc8str x1, [sp+2184]
0057fcccstr x2, [sp+2192]
0057fcd0ldr x7, [sp+2648]
0057fcd4ldrsb x27, [x7]
0057fcd8ldr x2, [x7+16]
0057fcdcldr x7, [x7]
0057fce0ldr x1, [sp+64]
0057fce4subs xzr, x1, x2
0057fce8b.ls 0x57fcf0
0057fcecb 0x5809d0
0057fcf0
0057fcf0loc_57fcf0:
0057fcf0b 0x57fcf4
0057fcf4
0057fcf4loc_57fcf4:
0057fcf4str x7, [sp+2152]
0057fcf8str x1, [sp+2160]
0057fcfcstr x2, [sp+2168]
0057fd00ldr x7, [sp+64]
0057fd04str x7, [sp+2024]
0057fd08subs xzr, x7, 16
0057fd0cb.eq 0x57fd14
0057fd10b 0x57fd5c
0057fd14
0057fd14loc_57fd14:
0057fd14b 0x57fd18
0057fd18
0057fd18loc_57fd18:
0057fd18b 0x57fd1c
0057fd1c
0057fd1cloc_57fd1c:
0057fd1cadd x20, sp, 1232
0057fd20adr x27, 16
0057fd24stp x29, x27, [sp-24]
0057fd28sub x29, sp, 24
0057fd2cbl fn_87cd0
0057fd30sub x29, sp, 8
0057fd34add x2, sp, 1232
0057fd38ldrsb x27, [x2]
0057fd3cb 0x57fd40
0057fd40
0057fd40loc_57fd40:
0057fd40str x2, [sp+2248]
0057fd44orr x2, xzr, 32
0057fd48str x2, [sp+2256]
0057fd4cstr x2, [sp+2264]
0057fd50str xzr, [sp+216]
0057fd54str xzr, [sp+88]
0057fd58b 0x58072c
0057fd5c
0057fd5cloc_57fd5c:
0057fd5csubs xzr, x7, 24
0057fd60b.eq 0x57fd68
0057fd64b 0x57fdb0
0057fd68
0057fd68loc_57fd68:
0057fd68b 0x57fd6c
0057fd6c
0057fd6cloc_57fd6c:
0057fd6cb 0x57fd70
0057fd70
0057fd70loc_57fd70:
0057fd70add x20, sp, 824
0057fd74adr x27, 16
0057fd78stp x29, x27, [sp-24]
0057fd7csub x29, sp, 24
0057fd80bl fn_87cb0
0057fd84sub x29, sp, 8
0057fd88add x2, sp, 824
0057fd8cldrsb x27, [x2]
0057fd90b 0x57fd94
0057fd94
0057fd94loc_57fd94:
0057fd94str x2, [sp+2224]
0057fd98orr x2, xzr, 48
0057fd9cstr x2, [sp+2232]
0057fda0str x2, [sp+2240]
0057fda4str xzr, [sp+208]
0057fda8str xzr, [sp+80]
0057fdacb 0x580480
0057fdb0
0057fdb0loc_57fdb0:
0057fdb0subs xzr, x7, 32
0057fdb4b.eq 0x57fdbc
0057fdb8b 0x57fe04
0057fdbc
0057fdbcloc_57fdbc:
0057fdbcb 0x57fdc0
0057fdc0
0057fdc0loc_57fdc0:
0057fdc0b 0x57fdc4
0057fdc4
0057fdc4loc_57fdc4:
0057fdc4add x20, sp, 288
0057fdc8adr x27, 16
0057fdccstp x29, x27, [sp-24]
0057fdd0sub x29, sp, 24
0057fdd4bl fn_87c90
0057fdd8sub x29, sp, 8
0057fddcadd x2, sp, 288
0057fde0ldrsb x27, [x2]
0057fde4b 0x57fde8
0057fde8
0057fde8loc_57fde8:
0057fde8str x2, [sp+2200]
0057fdecorr x2, xzr, 64
0057fdf0str x2, [sp+2208]
0057fdf4str x2, [sp+2216]
0057fdf8str xzr, [sp+200]
0057fdfcstr xzr, [sp+72]
0057fe00b 0x5801d4
0057fe04
0057fe04loc_57fe04:
0057fe04b 0x57fe08
0057fe08
0057fe08loc_57fe08:
0057fe08b 0x57fe0c
0057fe0c
0057fe0cloc_57fe0c:
0057fe0cb 0x57fe10
0057fe10
0057fe10loc_57fe10:
0057fe10b 0x57fe14
0057fe14
0057fe14loc_57fe14:
0057fe14add x20, sp, 1512
0057fe18adr x27, 16
0057fe1cstp x29, x27, [sp-24]
0057fe20sub x29, sp, 24
0057fe24bl fn_87c90
0057fe28sub x29, sp, 8
0057fe2cadd x7, sp, 1512
0057fe30ldrsb x27, [x7]
0057fe34b 0x57fe38
0057fe38
0057fe38loc_57fe38:
0057fe38b 0x57fe3c
0057fe3c
0057fe3cloc_57fe3c:
0057fe3cstr x7, [sp+2272]
0057fe40str xzr, [sp+2280]
0057fe44orr x7, xzr, 64
0057fe48str x7, [sp+2288]
0057fe4cstr x7, [sp+2048]
0057fe50ldr x7, [sp+64]
0057fe54ubfm x7, x7, 63, 62
0057fe58subs xzr, x7, 64
0057fe5cb.gt 0x57fe64
0057fe60b 0x57fe94
0057fe64
0057fe64loc_57fe64:
0057fe64ldr x3, [sp+64]
0057fe68ubfm x2, x3, 63, 62
0057fe6cadrp x0, 0x76000
0057fe70add x0, x0, 3584
0057fe74mov x1, xzr
0057fe78bl runtime.makeslice
0057fe7cldr x3, [sp+64]
0057fe80str x0, [sp+2272]
0057fe84str xzr, [sp+2280]
0057fe88ubfm x3, x3, 63, 62
0057fe8cstr x3, [sp+2288]
0057fe90b 0x57fe98
0057fe94
0057fe94loc_57fe94:
0057fe94b 0x57fe98
0057fe98
0057fe98loc_57fe98:
0057fe98ldr x7, [sp+64]
0057fe9cubfm x1, x7, 63, 62
0057fea0str x1, [sp+2048]
0057fea4ldr x2, [sp+2288]
0057fea8subs xzr, x2, x7, lsl #1
0057feacb.hs 0x57feb4
0057feb0b 0x5801d0
0057feb4
0057feb4loc_57feb4:
0057feb4b 0x57feb8
0057feb8
0057feb8loc_57feb8:
0057feb8str x1, [sp+2280]
0057febcstr xzr, [sp+224]
0057fec0str xzr, [sp+96]
0057fec4b 0x57fec8
0057fec8
0057fec8loc_57fec8:
0057fec8ldr x7, [sp+64]
0057feccldr x8, [sp+96]
0057fed0subs xzr, x7, x8
0057fed4b.gt 0x57fedc
0057fed8b 0x5800a0
0057fedc
0057fedcloc_57fedc:
0057fedcldr x1, [sp+2280]
0057fee0ldr x7, [sp+96]
0057fee4ldr x8, [sp+64]
0057fee8add x0, x8, x7
0057feecsubs xzr, x1, x0
0057fef0b.hi 0x57fef8
0057fef4b 0x5801cc
0057fef8
0057fef8loc_57fef8:
0057fef8ldr x0, [sp+96]
0057fefcldr x1, [sp+2160]
0057ff00ldr x7, [sp+2152]
0057ff04subs xzr, x1, x0
0057ff08b.hi 0x57ff10
0057ff0cb 0x5801c8
0057ff10
0057ff10loc_57ff10:
0057ff10ldr x7, [x7+3*x0]
0057ff14str x7, [sp+128]
0057ff18ldr x7, [sp+96]
0057ff1cldr x8, [sp+64]
0057ff20add x1, x8, x7
0057ff24str x1, [sp+2048]
0057ff28ldr x0, [sp+96]
0057ff2cldr x2, [sp+2288]
0057ff30ldr x7, [sp+2272]
0057ff34subs xzr, x2, x1
0057ff38b.hs 0x57ff40
0057ff3cb 0x5801c4
0057ff40
0057ff40loc_57ff40:
0057ff40subs xzr, x0, x1
0057ff44b.ls 0x57ff4c
0057ff48b 0x5801c0
0057ff4c
0057ff4cloc_57ff4c:
0057ff4csub x2, x2, x0
0057ff50sub x1, x1, x0
0057ff54sub x8, xzr, x2
0057ff58ubfm x9, x0, 61, 60
0057ff5cand x8, x9, x8, asr #63
0057ff60add x0, x7, x8
0057ff64str x0, [sp+2592]
0057ff68str x1, [sp+2600]
0057ff6cstr x2, [sp+2608]
0057ff70ldr x6, [sp+128]
0057ff74ldr x3, [sp+2176]
0057ff78ldr x4, [sp+2184]
0057ff7cldr x5, [sp+2192]
0057ff80bl crypto/internal/fips140/bigmod.addMulVVW
0057ff84str x0, [sp+192]
0057ff88ldr x0, [sp+96]
0057ff8cldr x1, [sp+2280]
0057ff90ldr x7, [sp+2272]
0057ff94subs xzr, x1, x0
0057ff98b.hi 0x57ffa0
0057ff9cb 0x5801bc
0057ffa0
0057ffa0loc_57ffa0:
0057ffa0ldr x7, [x7+3*x0]
0057ffa4ldr x8, [sp+2656]
0057ffa8ldrsb x27, [x8]
0057ffacldr x8, [x8+16]
0057ffb0madd x7, x7, x8, xzr
0057ffb4str x7, [sp+256]
0057ffb8ldr x7, [sp+96]
0057ffbcldr x8, [sp+64]
0057ffc0add x1, x8, x7
0057ffc4str x1, [sp+2048]
0057ffc8ldr x0, [sp+96]
0057ffccldr x2, [sp+2288]
0057ffd0ldr x7, [sp+2272]
0057ffd4subs xzr, x2, x1
0057ffd8b.hs 0x57ffe0
0057ffdcb 0x5801b8
0057ffe0
0057ffe0loc_57ffe0:
0057ffe0subs xzr, x0, x1
0057ffe4b.ls 0x57ffec
0057ffe8b 0x5801b4
0057ffec
0057ffecloc_57ffec:
0057ffecsub x2, x2, x0
0057fff0sub x1, x1, x0
0057fff4sub x8, xzr, x2
0057fff8ubfm x9, x0, 61, 60
0057fffcand x8, x9, x8, asr #63
00580000add x0, x7, x8
00580004str x0, [sp+2592]
00580008str x1, [sp+2600]
0058000cstr x2, [sp+2608]
00580010ldr x6, [sp+256]
00580014ldr x3, [sp+2128]
00580018ldr x4, [sp+2136]
0058001cldr x5, [sp+2144]
00580020bl crypto/internal/fips140/bigmod.addMulVVW
00580024str x0, [sp+160]
00580028ldr x7, [sp+224]
0058002cldr x8, [sp+192]
00580030movn x9, 0
00580034adds x9, x7, x9
00580038adcs x9, x8, x0
0058003cadc x9, xzr, xzr
00580040movn x10, 0
00580044adds x7, x7, x10
00580048adcs x7, x8, x0
0058004cstr x7, [sp+2040]
00580050str x9, [sp+2032]
00580054str x7, [sp+2112]
00580058str x9, [sp+2104]
0058005cldr x8, [sp+64]
00580060ldr x9, [sp+96]
00580064add x0, x8, x9
00580068str x0, [sp+1504]
0058006cldr x1, [sp+2280]
00580070ldr x8, [sp+2272]
00580074subs xzr, x1, x0
00580078b.hi 0x580080
0058007cb 0x5801b0
00580080
00580080loc_580080:
00580080str x7, [x8+3*x0]
00580084ldr x7, [sp+2104]
00580088str x7, [sp+224]
0058008cb 0x580090
00580090
00580090loc_580090:
00580090ldr x7, [sp+96]
00580094add x7, x7, 1
00580098str x7, [sp+96]
0058009cb 0x57fec8
005800a0
005800a0loc_5800a0:
005800a0ldr x1, [sp+64]
005800a4ldr x0, [sp+2632]
005800a8bl crypto/internal/fips140/bigmod.(*Nat).reset
005800acstr x0, [sp+2584]
005800b0ldr x0, [sp+64]
005800b4ldr x1, [sp+2280]
005800b8ldr x2, [sp+2272]
005800bcldr x3, [sp+2288]
005800c0b 0x5800c4
005800c4
005800c4loc_5800c4:
005800c4subs xzr, x1, x0
005800c8b.hs 0x5800d0
005800ccb 0x5801ac
005800d0
005800d0loc_5800d0:
005800d0sub x3, x3, x0
005800d4sub x4, x1, x0
005800d8sub x5, xzr, x3
005800dcubfm x6, x0, 61, 60
005800e0and x5, x6, x5, asr #63
005800e4add x5, x2, x5
005800e8str x5, [sp+2592]
005800ecstr x4, [sp+2600]
005800f0str x3, [sp+2608]
005800f4ldr x3, [sp+2584]
005800f8ldrsb x27, [x3]
005800fcldr x4, [x3]
00580100ldr x5, [x3+8]
00580104ldr x3, [x3+16]
00580108str x4, [sp+2560]
0058010cstr x5, [sp+2568]
00580110str x3, [sp+2576]
00580114ldr x3, [sp+2600]
00580118ldr x4, [sp+2592]
0058011cldr x5, [sp+2608]
00580120str x4, [sp+2536]
00580124str x3, [sp+2544]
00580128str x5, [sp+2552]
0058012cldr x4, [sp+2568]
00580130str x4, [sp+1496]
00580134subs xzr, x4, x3
00580138b.gt 0x580140
0058013cb 0x580148
00580140
00580140loc_580140:
00580140str x3, [sp+1496]
00580144b 0x58014c
00580148
00580148loc_580148:
00580148b 0x58014c
0058014c
0058014cloc_58014c:
0058014cldr x3, [sp+2536]
00580150ldr x4, [sp+2560]
00580154subs xzr, x4, x3
00580158b.ne 0x580160
0058015cb 0x580180
00580160
00580160loc_580160:
00580160ldr x3, [sp+1496]
00580164str x3, [sp+1488]
00580168ldr x3, [sp+1488]
0058016cubfm x2, x3, 61, 60
00580170ldr x0, [sp+2560]
00580174ldr x1, [sp+2536]
00580178bl runtime.memmove
0058017cb 0x580184
00580180
00580180loc_580180:
00580180b 0x580184
00580184
00580184loc_580184:
00580184ldr x2, [sp+2656]
00580188ldr x0, [sp+2632]
0058018cldr x1, [sp+224]
00580190bl crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus
00580194b 0x580198
00580198
00580198loc_580198:
00580198ldr x0, [sp+2632]
0058019cstr x0, [sp+2120]
005801a0ldp x29, x30, [sp-8]
005801a4add sp, sp, 2624
005801a8ret x30
005801ac
005801acloc_5801ac:
005801acbl runtime.panicSliceB
005801b0
005801b0loc_5801b0:
005801b0bl runtime.panicIndex
005801b4
005801b4loc_5801b4:
005801b4bl runtime.panicSliceB
005801b8
005801b8loc_5801b8:
005801b8bl runtime.panicSliceAcap
005801bc
005801bcloc_5801bc:
005801bcbl runtime.panicIndex
005801c0
005801c0loc_5801c0:
005801c0bl runtime.panicSliceB
005801c4
005801c4loc_5801c4:
005801c4bl runtime.panicSliceAcap
005801c8
005801c8loc_5801c8:
005801c8bl runtime.panicIndex
005801cc
005801ccloc_5801cc:
005801ccbl runtime.panicIndex
005801d0
005801d0loc_5801d0:
005801d0bl runtime.panicSliceAcap
005801d4
005801d4loc_5801d4:
005801d4ldr x2, [sp+72]
005801d8subs xzr, x2, 32
005801dcb.lt 0x5801e4
005801e0b 0x580358
005801e4
005801e4loc_5801e4:
005801e4ldr x0, [sp+72]
005801e8ldr x1, [sp+2160]
005801ecldr x2, [sp+2152]
005801f0subs xzr, x1, x0
005801f4b.hi 0x5801fc
005801f8b 0x58047c
005801fc
005801fcloc_5801fc:
005801fcldr x2, [x2+3*x0]
00580200str x2, [sp+104]
00580204ldr x0, [sp+72]
00580208ldr x1, [sp+2208]
0058020cldr x2, [sp+2200]
00580210subs xzr, x1, x0
00580214b.hi 0x58021c
00580218b 0x580478
0058021c
0058021cloc_58021c:
0058021cadd x2, x2, x0, lsl #3
00580220str x2, [sp+2368]
00580224ldr x2, [sp+2176]
00580228ldr x1, [sp+2184]
0058022csubs xzr, x1, 0
00580230b.hi 0x580238
00580234b 0x580470
00580238
00580238loc_580238:
00580238str x2, [sp+2360]
0058023cldr x0, [sp+104]
00580240ldr x1, [sp+2368]
00580244str x1, [sp+8]
00580248str x2, [sp+16]
0058024cstr x0, [sp+24]
00580250bl crypto/internal/fips140/bigmod.addMulVVW2048.abi0
00580254ldr x0, [sp+32]
00580258str x0, [sp+168]
0058025cldr x0, [sp+72]
00580260ldr x1, [sp+2208]
00580264ldr x2, [sp+2200]
00580268subs xzr, x1, x0
0058026cb.hi 0x580274
00580270b 0x58046c
00580274
00580274loc_580274:
00580274ldr x2, [x2+3*x0]
00580278ldr x3, [sp+2656]
0058027cldrsb x27, [x3]
00580280ldr x3, [x3+16]
00580284madd x2, x2, x3, xzr
00580288str x2, [sp+232]
0058028cldr x0, [sp+72]
00580290ldr x1, [sp+2208]
00580294ldr x2, [sp+2200]
00580298subs xzr, x1, x0
0058029cb.hi 0x5802a4
005802a0b 0x580468
005802a4
005802a4loc_5802a4:
005802a4add x2, x2, x0, lsl #3
005802a8str x2, [sp+2352]
005802acldr x2, [sp+2128]
005802b0ldr x1, [sp+2136]
005802b4subs xzr, x1, 0
005802b8b.hi 0x5802c0
005802bcb 0x580460
005802c0
005802c0loc_5802c0:
005802c0str x2, [sp+2344]
005802c4ldr x0, [sp+232]
005802c8ldr x1, [sp+2352]
005802ccstr x1, [sp+8]
005802d0str x2, [sp+16]
005802d4str x0, [sp+24]
005802d8bl crypto/internal/fips140/bigmod.addMulVVW2048.abi0
005802dcldr x0, [sp+32]
005802e0str x0, [sp+136]
005802e4ldr x1, [sp+200]
005802e8ldr x2, [sp+168]
005802ecmovn x3, 0
005802f0adds x3, x1, x3
005802f4adcs x3, x2, x0
005802f8adc x3, xzr, xzr
005802fcmovn x4, 0
00580300adds x1, x1, x4
00580304adcs x0, x2, x0
00580308str x0, [sp+2032]
0058030cstr x3, [sp+2040]
00580310str x0, [sp+2064]
00580314str x3, [sp+2056]
00580318ldr x1, [sp+72]
0058031cadd x1, x1, 32
00580320str x1, [sp+280]
00580324ldr x2, [sp+2208]
00580328ldr x3, [sp+2200]
0058032csubs xzr, x2, x1
00580330b.hi 0x580338
00580334b 0x580454
00580338
00580338loc_580338:
00580338str x0, [x3+3*x1]
0058033cldr x2, [sp+2056]
00580340str x2, [sp+200]
00580344b 0x580348
00580348
00580348loc_580348:
00580348ldr x2, [sp+72]
0058034cadd x2, x2, 1
00580350str x2, [sp+72]
00580354b 0x5801d4
00580358
00580358loc_580358:
00580358ldr x0, [sp+2632]
0058035corr x1, xzr, 32
00580360bl crypto/internal/fips140/bigmod.(*Nat).reset
00580364str x0, [sp+2584]
00580368ldr x1, [sp+2208]
0058036cldr x2, [sp+2200]
00580370ldr x3, [sp+2216]
00580374b 0x580378
00580378
00580378loc_580378:
00580378subs xzr, x1, 32
0058037cb.hs 0x580384
00580380b 0x58044c
00580384
00580384loc_580384:
00580384sub x3, x3, 32
00580388sub x4, xzr, x3
0058038csub x5, x1, 32
00580390sbfm x4, x4, 63, 63
00580394and x4, x4, 256
00580398add x4, x2, x4
0058039cstr x4, [sp+2592]
005803a0str x5, [sp+2600]
005803a4str x3, [sp+2608]
005803a8ldr x3, [sp+2584]
005803acldrsb x27, [x3]
005803b0ldr x4, [x3]
005803b4ldr x5, [x3+8]
005803b8ldr x3, [x3+16]
005803bcstr x4, [sp+2320]
005803c0str x5, [sp+2328]
005803c4str x3, [sp+2336]
005803c8ldr x3, [sp+2600]
005803ccldr x4, [sp+2592]
005803d0ldr x5, [sp+2608]
005803d4str x4, [sp+2296]
005803d8str x3, [sp+2304]
005803dcstr x5, [sp+2312]
005803e0ldr x4, [sp+2328]
005803e4str x4, [sp+272]
005803e8subs xzr, x4, x3
005803ecb.gt 0x5803f4
005803f0b 0x5803fc
005803f4
005803f4loc_5803f4:
005803f4str x3, [sp+272]
005803f8b 0x580400
005803fc
005803fcloc_5803fc:
005803fcb 0x580400
00580400
00580400loc_580400:
00580400ldr x3, [sp+2320]
00580404ldr x4, [sp+2296]
00580408subs xzr, x4, x3
0058040cb.ne 0x580414
00580410b 0x580434
00580414
00580414loc_580414:
00580414ldr x3, [sp+272]
00580418str x3, [sp+264]
0058041cldr x3, [sp+264]
00580420ubfm x2, x3, 61, 60
00580424ldr x1, [sp+2296]
00580428ldr x0, [sp+2320]
0058042cbl runtime.memmove
00580430b 0x580438
00580434
00580434loc_580434:
00580434b 0x580438
00580438
00580438loc_580438:
00580438ldr x2, [sp+2656]
0058043cldr x0, [sp+2632]
00580440ldr x1, [sp+200]
00580444bl crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus
00580448b 0x580198
0058044c
0058044cloc_58044c:
0058044corr x0, xzr, 32
00580450bl runtime.panicSliceB
00580454
00580454loc_580454:
00580454mov x0, x1
00580458mov x1, x2
0058045cbl runtime.panicIndex
00580460
00580460loc_580460:
00580460mov x0, xzr
00580464bl runtime.panicIndex
00580468
00580468loc_580468:
00580468bl runtime.panicIndex
0058046c
0058046cloc_58046c:
0058046cbl runtime.panicIndex
00580470
00580470loc_580470:
00580470mov x0, xzr
00580474bl runtime.panicIndex
00580478
00580478loc_580478:
00580478bl runtime.panicIndex
0058047c
0058047cloc_58047c:
0058047cbl runtime.panicIndex
00580480
00580480loc_580480:
00580480ldr x2, [sp+80]
00580484subs xzr, x2, 24
00580488b.lt 0x580490
0058048cb 0x580604
00580490
00580490loc_580490:
00580490ldr x0, [sp+80]
00580494ldr x1, [sp+2160]
00580498ldr x2, [sp+2152]
0058049csubs xzr, x0, x1
005804a0b.lo 0x5804a8
005804a4b 0x580728
005804a8
005804a8loc_5804a8:
005804a8ldr x2, [x2+3*x0]
005804acstr x2, [sp+112]
005804b0ldr x0, [sp+80]
005804b4ldr x1, [sp+2232]
005804b8ldr x2, [sp+2224]
005804bcsubs xzr, x0, x1
005804c0b.lo 0x5804c8
005804c4b 0x580724
005804c8
005804c8loc_5804c8:
005804c8add x2, x2, x0, lsl #3
005804ccstr x2, [sp+2448]
005804d0ldr x2, [sp+2176]
005804d4ldr x1, [sp+2184]
005804d8subs xzr, x1, 0
005804dcb.hi 0x5804e4
005804e0b 0x58071c
005804e4
005804e4loc_5804e4:
005804e4str x2, [sp+2440]
005804e8ldr x0, [sp+112]
005804ecldr x1, [sp+2448]
005804f0str x1, [sp+8]
005804f4str x2, [sp+16]
005804f8str x0, [sp+24]
005804fcbl crypto/internal/fips140/bigmod.addMulVVW1536.abi0
00580500ldr x0, [sp+32]
00580504str x0, [sp+176]
00580508ldr x0, [sp+80]
0058050cldr x1, [sp+2232]
00580510ldr x2, [sp+2224]
00580514subs xzr, x0, x1
00580518b.lo 0x580520
0058051cb 0x580718
00580520
00580520loc_580520:
00580520ldr x2, [x2+3*x0]
00580524ldr x3, [sp+2656]
00580528ldrsb x27, [x3]
0058052cldr x3, [x3+16]
00580530madd x2, x2, x3, xzr
00580534str x2, [sp+240]
00580538ldr x0, [sp+80]
0058053cldr x1, [sp+2232]
00580540ldr x2, [sp+2224]
00580544subs xzr, x0, x1
00580548b.lo 0x580550
0058054cb 0x580714
00580550
00580550loc_580550:
00580550add x2, x2, x0, lsl #3
00580554str x2, [sp+2432]
00580558ldr x2, [sp+2128]
0058055cldr x1, [sp+2136]
00580560subs xzr, x1, 0
00580564b.hi 0x58056c
00580568b 0x58070c
0058056c
0058056cloc_58056c:
0058056cstr x2, [sp+2424]
00580570ldr x0, [sp+240]
00580574ldr x1, [sp+2432]
00580578str x1, [sp+8]
0058057cstr x2, [sp+16]
00580580str x0, [sp+24]
00580584bl crypto/internal/fips140/bigmod.addMulVVW1536.abi0
00580588ldr x0, [sp+32]
0058058cstr x0, [sp+144]
00580590ldr x1, [sp+208]
00580594ldr x2, [sp+176]
00580598movn x3, 0
0058059cadds x3, x1, x3
005805a0adcs x3, x2, x0
005805a4adc x3, xzr, xzr
005805a8movn x4, 0
005805acadds x1, x1, x4
005805b0adcs x0, x2, x0
005805b4str x0, [sp+2040]
005805b8str x3, [sp+2032]
005805bcstr x0, [sp+2080]
005805c0str x3, [sp+2072]
005805c4ldr x1, [sp+80]
005805c8add x1, x1, 24
005805ccstr x1, [sp+816]
005805d0ldr x2, [sp+2232]
005805d4ldr x3, [sp+2224]
005805d8subs xzr, x2, x1
005805dcb.hi 0x5805e4
005805e0b 0x580700
005805e4
005805e4loc_5805e4:
005805e4str x0, [x3+3*x1]
005805e8ldr x2, [sp+2072]
005805ecstr x2, [sp+208]
005805f0b 0x5805f4
005805f4
005805f4loc_5805f4:
005805f4ldr x2, [sp+80]
005805f8add x2, x2, 1
005805fcstr x2, [sp+80]
00580600b 0x580480
00580604
00580604loc_580604:
00580604ldr x0, [sp+2632]
00580608orr x1, xzr, 24
0058060cbl crypto/internal/fips140/bigmod.(*Nat).reset
00580610str x0, [sp+2584]
00580614ldr x1, [sp+2232]
00580618ldr x2, [sp+2224]
0058061cldr x3, [sp+2240]
00580620b 0x580624
00580624
00580624loc_580624:
00580624subs xzr, x1, 24
00580628b.hs 0x580630
0058062cb 0x5806f8
00580630
00580630loc_580630:
00580630sub x3, x3, 24
00580634sub x4, xzr, x3
00580638sub x5, x1, 24
0058063csbfm x4, x4, 63, 63
00580640and x4, x4, 192
00580644add x4, x2, x4
00580648str x4, [sp+2592]
0058064cstr x5, [sp+2600]
00580650str x3, [sp+2608]
00580654ldr x3, [sp+2584]
00580658ldrsb x27, [x3]
0058065cldr x4, [x3]
00580660ldr x5, [x3+8]
00580664ldr x3, [x3+16]
00580668str x4, [sp+2400]
0058066cstr x5, [sp+2408]
00580670str x3, [sp+2416]
00580674ldr x3, [sp+2600]
00580678ldr x4, [sp+2592]
0058067cldr x5, [sp+2608]
00580680str x4, [sp+2376]
00580684str x3, [sp+2384]
00580688str x5, [sp+2392]
0058068cldr x4, [sp+2408]
00580690str x4, [sp+808]
00580694subs xzr, x3, x4
00580698b.lt 0x5806a0
0058069cb 0x5806a8
005806a0
005806a0loc_5806a0:
005806a0str x3, [sp+808]
005806a4b 0x5806ac
005806a8
005806a8loc_5806a8:
005806a8b 0x5806ac
005806ac
005806acloc_5806ac:
005806acldr x3, [sp+2376]
005806b0ldr x4, [sp+2400]
005806b4subs xzr, x4, x3
005806b8b.ne 0x5806c0
005806bcb 0x5806e0
005806c0
005806c0loc_5806c0:
005806c0ldr x3, [sp+808]
005806c4str x3, [sp+800]
005806c8ldr x3, [sp+800]
005806ccubfm x2, x3, 61, 60
005806d0ldr x0, [sp+2400]
005806d4ldr x1, [sp+2376]
005806d8bl runtime.memmove
005806dcb 0x5806e4
005806e0
005806e0loc_5806e0:
005806e0b 0x5806e4
005806e4
005806e4loc_5806e4:
005806e4ldr x2, [sp+2656]
005806e8ldr x0, [sp+2632]
005806ecldr x1, [sp+208]
005806f0bl crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus
005806f4b 0x580198
005806f8
005806f8loc_5806f8:
005806f8orr x0, xzr, 24
005806fcbl runtime.panicSliceB
00580700
00580700loc_580700:
00580700mov x0, x1
00580704mov x1, x2
00580708bl runtime.panicIndex
0058070c
0058070cloc_58070c:
0058070cmov x0, xzr
00580710bl runtime.panicIndex
00580714
00580714loc_580714:
00580714bl runtime.panicIndex
00580718
00580718loc_580718:
00580718bl runtime.panicIndex
0058071c
0058071cloc_58071c:
0058071cmov x0, xzr
00580720bl runtime.panicIndex
00580724
00580724loc_580724:
00580724bl runtime.panicIndex
00580728
00580728loc_580728:
00580728bl runtime.panicIndex
0058072c
0058072cloc_58072c:
0058072cldr x2, [sp+88]
00580730subs xzr, x2, 16
00580734b.lt 0x58073c
00580738b 0x5808b0
0058073c
0058073cloc_58073c:
0058073cldr x0, [sp+88]
00580740ldr x1, [sp+2160]
00580744ldr x2, [sp+2152]
00580748subs xzr, x1, x0
0058074cb.hi 0x580754
00580750b 0x5809cc
00580754
00580754loc_580754:
00580754ldr x2, [x2+3*x0]
00580758str x2, [sp+120]
0058075cldr x0, [sp+88]
00580760ldr x1, [sp+2256]
00580764ldr x2, [sp+2248]
00580768subs xzr, x1, x0
0058076cb.hi 0x580774
00580770b 0x5809c8
00580774
00580774loc_580774:
00580774add x2, x2, x0, lsl #3
00580778str x2, [sp+2528]
0058077cldr x2, [sp+2176]
00580780ldr x1, [sp+2184]
00580784subs xzr, x1, 0
00580788b.hi 0x580790
0058078cb 0x5809c0
00580790
00580790loc_580790:
00580790str x2, [sp+2520]
00580794ldr x0, [sp+120]
00580798ldr x1, [sp+2528]
0058079cstr x1, [sp+8]
005807a0str x2, [sp+16]
005807a4str x0, [sp+24]
005807a8bl crypto/internal/fips140/bigmod.addMulVVW1024.abi0
005807acldr x0, [sp+32]
005807b0str x0, [sp+184]
005807b4ldr x0, [sp+88]
005807b8ldr x1, [sp+2256]
005807bcldr x2, [sp+2248]
005807c0subs xzr, x1, x0
005807c4b.hi 0x5807cc
005807c8b 0x5809bc
005807cc
005807ccloc_5807cc:
005807ccldr x2, [x2+3*x0]
005807d0ldr x3, [sp+2656]
005807d4ldrsb x27, [x3]
005807d8ldr x3, [x3+16]
005807dcmadd x2, x2, x3, xzr
005807e0str x2, [sp+248]
005807e4ldr x0, [sp+88]
005807e8ldr x1, [sp+2256]
005807ecldr x2, [sp+2248]
005807f0subs xzr, x1, x0
005807f4b.hi 0x5807fc
005807f8b 0x5809b8
005807fc
005807fcloc_5807fc:
005807fcadd x2, x2, x0, lsl #3
00580800str x2, [sp+2512]
00580804ldr x2, [sp+2128]
00580808ldr x1, [sp+2136]
0058080csubs xzr, x1, 0
00580810b.hi 0x580818
00580814b 0x5809b0
00580818
00580818loc_580818:
00580818str x2, [sp+2504]
0058081cldr x0, [sp+248]
00580820ldr x1, [sp+2512]
00580824str x1, [sp+8]
00580828str x2, [sp+16]
0058082cstr x0, [sp+24]
00580830bl crypto/internal/fips140/bigmod.addMulVVW1024.abi0
00580834ldr x0, [sp+32]
00580838str x0, [sp+152]
0058083cldr x1, [sp+216]
00580840ldr x2, [sp+184]
00580844movn x3, 0
00580848adds x3, x1, x3
0058084cadcs x3, x2, x0
00580850str x3, [sp+2032]
00580854movn x4, 0
00580858adds x1, x1, x4
0058085cadcs x0, x2, x0
00580860adc x0, xzr, xzr
00580864str x0, [sp+2040]
00580868str x3, [sp+2096]
0058086cstr x0, [sp+2088]
00580870ldr x0, [sp+88]
00580874add x0, x0, 16
00580878str x0, [sp+1224]
0058087cldr x1, [sp+2256]
00580880ldr x2, [sp+2248]
00580884subs xzr, x1, x0
00580888b.hi 0x580890
0058088cb 0x5809ac
00580890
00580890loc_580890:
00580890str x3, [x2+3*x0]
00580894ldr x2, [sp+2088]
00580898str x2, [sp+216]
0058089cb 0x5808a0
005808a0
005808a0loc_5808a0:
005808a0ldr x2, [sp+88]
005808a4add x2, x2, 1
005808a8str x2, [sp+88]
005808acb 0x58072c
005808b0
005808b0loc_5808b0:
005808b0ldr x0, [sp+2632]
005808b4orr x1, xzr, 16
005808b8bl crypto/internal/fips140/bigmod.(*Nat).reset
005808bcstr x0, [sp+2584]
005808c0ldr x1, [sp+2256]
005808c4ldr x2, [sp+2248]
005808c8ldr x3, [sp+2264]
005808ccb 0x5808d0
005808d0
005808d0loc_5808d0:
005808d0subs xzr, x1, 16
005808d4b.hs 0x5808dc
005808d8b 0x5809a4
005808dc
005808dcloc_5808dc:
005808dcsub x3, x3, 16
005808e0sub x4, xzr, x3
005808e4sub x5, x1, 16
005808e8sbfm x4, x4, 63, 63
005808ecand x4, x4, 128
005808f0add x4, x2, x4
005808f4str x4, [sp+2592]
005808f8str x5, [sp+2600]
005808fcstr x3, [sp+2608]
00580900ldr x3, [sp+2584]
00580904ldrsb x27, [x3]
00580908ldr x4, [x3]
0058090cldr x5, [x3+8]
00580910ldr x3, [x3+16]
00580914str x4, [sp+2480]
00580918str x5, [sp+2488]
0058091cstr x3, [sp+2496]
00580920ldr x3, [sp+2600]
00580924ldr x4, [sp+2592]
00580928ldr x5, [sp+2608]
0058092cstr x4, [sp+2456]
00580930str x3, [sp+2464]
00580934str x5, [sp+2472]
00580938ldr x4, [sp+2488]
0058093cstr x4, [sp+1216]
00580940subs xzr, x3, x4
00580944b.lt 0x58094c
00580948b 0x580954
0058094c
0058094cloc_58094c:
0058094cstr x3, [sp+1216]
00580950b 0x580958
00580954
00580954loc_580954:
00580954b 0x580958
00580958
00580958loc_580958:
00580958ldr x3, [sp+2456]
0058095cldr x4, [sp+2480]
00580960subs xzr, x3, x4
00580964b.ne 0x58096c
00580968b 0x58098c
0058096c
0058096cloc_58096c:
0058096cldr x3, [sp+1216]
00580970str x3, [sp+1208]
00580974ldr x3, [sp+1208]
00580978ubfm x2, x3, 61, 60
0058097cldr x0, [sp+2480]
00580980ldr x1, [sp+2456]
00580984bl runtime.memmove
00580988b 0x580990
0058098c
0058098cloc_58098c:
0058098cb 0x580990
00580990
00580990loc_580990:
00580990ldr x2, [sp+2656]
00580994ldr x0, [sp+2632]
00580998ldr x1, [sp+216]
0058099cbl crypto/internal/fips140/bigmod.(*Nat).maybeSubtractModulus
005809a0b 0x580198
005809a4
005809a4loc_5809a4:
005809a4orr x0, xzr, 16
005809a8bl runtime.panicSliceB
005809ac
005809acloc_5809ac:
005809acbl runtime.panicIndex
005809b0
005809b0loc_5809b0:
005809b0mov x0, xzr
005809b4bl runtime.panicIndex
005809b8
005809b8loc_5809b8:
005809b8bl runtime.panicIndex
005809bc
005809bcloc_5809bc:
005809bcbl runtime.panicIndex
005809c0
005809c0loc_5809c0:
005809c0mov x0, xzr
005809c4bl runtime.panicIndex
005809c8
005809c8loc_5809c8:
005809c8bl runtime.panicIndex
005809cc
005809ccloc_5809cc:
005809ccbl runtime.panicIndex
005809d0
005809d0loc_5809d0:
005809d0bl runtime.panicSliceAcap
005809d4
005809d4loc_5809d4:
005809d4bl runtime.panicSliceAcap
005809d8
005809d8loc_5809d8:
005809d8bl runtime.panicSliceAcap
005809dchint
005809e0
005809e0loc_5809e0:
005809e0stp x0, x1, [sp+8]
005809e4stp x2, x3, [sp+24]
005809e8mov x3, x30
005809ecbl runtime.morestack_noctxt.abi0
005809f0ldp x0, x1, [sp+8]
005809f4ldp x2, x3, [sp+24]
005809f8b 0x57fc20
005809fcudf 0
0057fc20
00580a00
00580a00crypto/internal/fips140/bigmod.addMulVVW: ; void crypto/internal/fips140/bigmod.addMulVVW(struct []uint z, struct []uint x, uint y)
00580a00ldr x16, [x28+16]
00580a04sub x17, sp, 80
00580a08subs xzr, x17, x16
00580a0cb.ls 0x580bf0
00580a10str x30, [sp-208]!
00580a14stur x29, [sp-8]
00580a18sub x29, sp, 8
00580a1cstr x0, [sp+216]
00580a20str x1, [sp+224]
00580a24str x2, [sp+232]
00580a28str x3, [sp+240]
00580a2cstr x4, [sp+248]
00580a30str x5, [sp+256]
00580a34str x6, [sp+264]
00580a38str xzr, [sp+48]
00580a3cldr x2, [sp+224]
00580a40str x2, [sp+128]
00580a44ldr x1, [sp+248]
00580a48sub x0, x2, 1
00580a4csubs xzr, x1, x0
00580a50b.hi 0x580a58
00580a54b 0x580be8
00580a58
00580a58loc_580a58:
00580a58str xzr, [sp+104]
00580a5cldr x2, [sp+224]
00580a60str x2, [sp+96]
00580a64b 0x580a68
00580a68
00580a68loc_580a68:
00580a68ldr x2, [sp+96]
00580a6cldr x3, [sp+104]
00580a70subs xzr, x2, x3
00580a74b.gt 0x580a7c
00580a78b 0x580bcc
00580a7c
00580a7cloc_580a7c:
00580a7cldr x0, [sp+104]
00580a80str x0, [sp+32]
00580a84ldr x1, [sp+248]
00580a88ldr x2, [sp+240]
00580a8csubs xzr, x1, x0
00580a90b.hi 0x580a98
00580a94b 0x580be4
00580a98
00580a98loc_580a98:
00580a98ldr x2, [x2+3*x0]
00580a9cstr x2, [sp+88]
00580aa0ldr x3, [sp+264]
00580aa4madd x4, x2, x3, xzr
00580aa8umulh x2, x2, x3
00580aacstr x2, [sp+120]
00580ab0str x4, [sp+112]
00580ab4str x2, [sp+72]
00580ab8str x4, [sp+64]
00580abcstr x2, [sp+40]
00580ac0str x4, [sp+24]
00580ac4ldr x0, [sp+32]
00580ac8ldr x1, [sp+224]
00580accldr x2, [sp+216]
00580ad0subs xzr, x1, x0
00580ad4b.hi 0x580adc
00580ad8b 0x580be0
00580adc
00580adcloc_580adc:
00580adcldr x2, [x2+3*x0]
00580ae0str x2, [sp+80]
00580ae4adds x3, x4, x2
00580ae8adc x3, xzr, xzr
00580aecadds x5, x4, x2
00580af0str x5, [sp+112]
00580af4str x3, [sp+120]
00580af8str x5, [sp+192]
00580afcstr x3, [sp+184]
00580b00str x5, [sp+24]
00580b04str x3, [sp+56]
00580b08ldr x3, [sp+40]
00580b0cadds x5, x4, x2
00580b10mov x5, xzr
00580b14adcs x6, x3, x5
00580b18str x6, [sp+120]
00580b1cadds x2, x4, x2
00580b20adcs x2, x3, x5
00580b24adc x2, xzr, xzr
00580b28str x2, [sp+112]
00580b2cstr x6, [sp+176]
00580b30str x2, [sp+168]
00580b34str x6, [sp+40]
00580b38ldr x2, [sp+48]
00580b3cldr x3, [sp+24]
00580b40adds x4, x3, x2
00580b44str x4, [sp+112]
00580b48adds x6, x3, x2
00580b4cadc x6, xzr, xzr
00580b50str x6, [sp+120]
00580b54str x4, [sp+160]
00580b58str x6, [sp+152]
00580b5cstr x4, [sp+24]
00580b60str x6, [sp+56]
00580b64ldr x4, [sp+40]
00580b68adcs x6, x4, x5
00580b6cadds x6, x3, x2
00580b70adcs x6, x4, x5
00580b74str x6, [sp+120]
00580b78adds x2, x3, x2
00580b7cadcs x2, x4, x5
00580b80adc x2, xzr, xzr
00580b84str x2, [sp+112]
00580b88str x6, [sp+144]
00580b8cstr x2, [sp+136]
00580b90str x6, [sp+40]
00580b94str x6, [sp+48]
00580b98ldr x0, [sp+32]
00580b9cldr x1, [sp+224]
00580ba0ldr x2, [sp+216]
00580ba4ldr x3, [sp+24]
00580ba8subs xzr, x0, x1
00580bacb.lo 0x580bb4
00580bb0b 0x580bdc
00580bb4
00580bb4loc_580bb4:
00580bb4str x3, [x2+3*x0]
00580bb8b 0x580bbc
00580bbc
00580bbcloc_580bbc:
00580bbcldr x2, [sp+104]
00580bc0add x2, x2, 1
00580bc4str x2, [sp+104]
00580bc8b 0x580a68
00580bcc
00580bccloc_580bcc:
00580bccldr x0, [sp+48]
00580bd0ldur x29, [sp-8]
00580bd4ldr x30, [sp], 208
00580bd8ret x30
00580bdc
00580bdcloc_580bdc:
00580bdcbl runtime.panicIndex
00580be0
00580be0loc_580be0:
00580be0bl runtime.panicIndex
00580be4
00580be4loc_580be4:
00580be4bl runtime.panicIndex
00580be8
00580be8loc_580be8:
00580be8bl runtime.panicIndex
00580bechint
00580bf0
00580bf0loc_580bf0:
00580bf0stp x0, x1, [sp+8]
00580bf4stp x2, x3, [sp+24]
00580bf8stp x4, x5, [sp+40]
00580bfcstr x6, [sp+56]
00580c00mov x3, x30
00580c04bl runtime.morestack_noctxt.abi0
00580c08ldp x0, x1, [sp+8]
00580c0cldp x2, x3, [sp+24]
00580c10ldp x4, x5, [sp+40]
00580c14ldr x6, [sp+56]
00580c18b 0x580a00
00580c1cudf 0
00580a00
00580a00crypto/internal/fips140/bigmod.addMulVVW: ; void crypto/internal/fips140/bigmod.addMulVVW(struct []uint z, struct []uint x, uint y)
00580a00ldr x16, [x28+16]
00580a04sub x17, sp, 80
00580a08subs xzr, x17, x16
00580a0cb.ls 0x580bf0
00580a10str x30, [sp-208]!
00580a14stur x29, [sp-8]
00580a18sub x29, sp, 8
00580a1cstr x0, [sp+216]
00580a20str x1, [sp+224]
00580a24str x2, [sp+232]
00580a28str x3, [sp+240]
00580a2cstr x4, [sp+248]
00580a30str x5, [sp+256]
00580a34str x6, [sp+264]
00580a38str xzr, [sp+48]
00580a3cldr x2, [sp+224]
00580a40str x2, [sp+128]
00580a44ldr x1, [sp+248]
00580a48sub x0, x2, 1
00580a4csubs xzr, x1, x0
00580a50b.hi 0x580a58
00580a54b 0x580be8
00580a58
00580a58loc_580a58:
00580a58str xzr, [sp+104]
00580a5cldr x2, [sp+224]
00580a60str x2, [sp+96]
00580a64b 0x580a68
00580a68
00580a68loc_580a68:
00580a68ldr x2, [sp+96]
00580a6cldr x3, [sp+104]
00580a70subs xzr, x2, x3
00580a74b.gt 0x580a7c
00580a78b 0x580bcc
00580a7c
00580a7cloc_580a7c:
00580a7cldr x0, [sp+104]
00580a80str x0, [sp+32]
00580a84ldr x1, [sp+248]
00580a88ldr x2, [sp+240]
00580a8csubs xzr, x1, x0
00580a90b.hi 0x580a98
00580a94b 0x580be4
00580a98
00580a98loc_580a98:
00580a98ldr x2, [x2+3*x0]
00580a9cstr x2, [sp+88]
00580aa0ldr x3, [sp+264]
00580aa4madd x4, x2, x3, xzr
00580aa8umulh x2, x2, x3
00580aacstr x2, [sp+120]
00580ab0str x4, [sp+112]
00580ab4str x2, [sp+72]
00580ab8str x4, [sp+64]
00580abcstr x2, [sp+40]
00580ac0str x4, [sp+24]
00580ac4ldr x0, [sp+32]
00580ac8ldr x1, [sp+224]
00580accldr x2, [sp+216]
00580ad0subs xzr, x1, x0
00580ad4b.hi 0x580adc
00580ad8b 0x580be0
00580adc
00580adcloc_580adc:
00580adcldr x2, [x2+3*x0]
00580ae0str x2, [sp+80]
00580ae4adds x3, x4, x2
00580ae8adc x3, xzr, xzr
00580aecadds x5, x4, x2
00580af0str x5, [sp+112]
00580af4str x3, [sp+120]
00580af8str x5, [sp+192]
00580afcstr x3, [sp+184]
00580b00str x5, [sp+24]
00580b04str x3, [sp+56]
00580b08ldr x3, [sp+40]
00580b0cadds x5, x4, x2
00580b10mov x5, xzr
00580b14adcs x6, x3, x5
00580b18str x6, [sp+120]
00580b1cadds x2, x4, x2
00580b20adcs x2, x3, x5
00580b24adc x2, xzr, xzr
00580b28str x2, [sp+112]
00580b2cstr x6, [sp+176]
00580b30str x2, [sp+168]
00580b34str x6, [sp+40]
00580b38ldr x2, [sp+48]
00580b3cldr x3, [sp+24]
00580b40adds x4, x3, x2
00580b44str x4, [sp+112]
00580b48adds x6, x3, x2
00580b4cadc x6, xzr, xzr
00580b50str x6, [sp+120]
00580b54str x4, [sp+160]
00580b58str x6, [sp+152]
00580b5cstr x4, [sp+24]
00580b60str x6, [sp+56]
00580b64ldr x4, [sp+40]
00580b68adcs x6, x4, x5
00580b6cadds x6, x3, x2
00580b70adcs x6, x4, x5
00580b74str x6, [sp+120]
00580b78adds x2, x3, x2
00580b7cadcs x2, x4, x5
00580b80adc x2, xzr, xzr
00580b84str x2, [sp+112]
00580b88str x6, [sp+144]
00580b8cstr x2, [sp+136]
00580b90str x6, [sp+40]
00580b94str x6, [sp+48]
00580b98ldr x0, [sp+32]
00580b9cldr x1, [sp+224]
00580ba0ldr x2, [sp+216]
00580ba4ldr x3, [sp+24]
00580ba8subs xzr, x0, x1
00580bacb.lo 0x580bb4
00580bb0b 0x580bdc
00580bb4
00580bb4loc_580bb4:
00580bb4str x3, [x2+3*x0]
00580bb8b 0x580bbc
00580bbc
00580bbcloc_580bbc:
00580bbcldr x2, [sp+104]
00580bc0add x2, x2, 1
00580bc4str x2, [sp+104]
00580bc8b 0x580a68
00580bcc
00580bccloc_580bcc:
00580bccldr x0, [sp+48]
00580bd0ldur x29, [sp-8]
00580bd4ldr x30, [sp], 208
00580bd8ret x30
00580bdc
00580bdcloc_580bdc:
00580bdcbl runtime.panicIndex
00580be0
00580be0loc_580be0:
00580be0bl runtime.panicIndex
00580be4
00580be4loc_580be4:
00580be4bl runtime.panicIndex
00580be8
00580be8loc_580be8:
00580be8bl runtime.panicIndex
00580bechint
00580bf0
00580bf0loc_580bf0:
00580bf0stp x0, x1, [sp+8]
00580bf4stp x2, x3, [sp+24]
00580bf8stp x4, x5, [sp+40]
00580bfcstr x6, [sp+56]
00580c00mov x3, x30
00580c04bl runtime.morestack_noctxt.abi0
00580c08ldp x0, x1, [sp+8]
00580c0cldp x2, x3, [sp+24]
00580c10ldp x4, x5, [sp+40]
00580c14ldr x6, [sp+56]
00580c18b 0x580a00
00580c1cudf 0
00580a00
Loading..