File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
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
00580c20
00580c20crypto/internal/fips140/bigmod.(*Nat).Mul: ; void crypto/internal/fips140/bigmod.(*Nat).Mul(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * y, crypto/internal/fips140/bigmod.Modulus * m)
00580c20ldr x16, [x28+16]
00580c24sub x17, sp, 2112
00580c28subs xzr, x17, x16
00580c2cb.ls 0x581450
00580c30sub x20, sp, 2240
00580c34stp x29, x30, [x20-8]
00580c38add sp, x20, 0
00580c3csub x29, sp, 8
00580c40str x0, [sp+2248]
00580c44str x1, [sp+2256]
00580c48str x2, [sp+2264]
00580c4cstr xzr, [sp+1856]
00580c50ldr x7, [sp+2264]
00580c54ldrsb x27, [x7]
00580c58ldrb w7, [x7+8]
00580c5ctbnz w7, 0, 0x580c64
00580c60b 0x580cb4
00580c64
00580c64loc_580c64:
00580c64bl crypto/internal/fips140/bigmod.NewNat
00580c68str x0, [sp+2224]
00580c6cldr x1, [sp+2248]
00580c70bl crypto/internal/fips140/bigmod.(*Nat).set
00580c74str x0, [sp+2216]
00580c78ldr x1, [sp+2264]
00580c7cbl crypto/internal/fips140/bigmod.(*Nat).montgomeryRepresentation
00580c80str x0, [sp+1888]
00580c84ldr x2, [sp+2256]
00580c88ldr x3, [sp+2264]
00580c8cldr x1, [sp+2248]
00580c90mov x4, x0
00580c94mov x0, x1
00580c98mov x1, x4
00580c9cbl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
00580ca0str x0, [sp+2216]
00580ca4str x0, [sp+1856]
00580ca8ldp x29, x30, [sp-8]
00580cacadd sp, sp, 2240
00580cb0ret x30
00580cb4
00580cb4loc_580cb4:
00580cb4ldr x7, [sp+2264]
00580cb8ldrsb x27, [x7]
00580cbcldr x7, [x7]
00580cc0ldrsb x27, [x7]
00580cc4ldr x1, [x7+8]
00580cc8str x1, [sp+64]
00580cccldr x7, [sp+2248]
00580cd0ldrsb x27, [x7]
00580cd4ldr x2, [x7+16]
00580cd8ldr x7, [x7]
00580cdcsubs xzr, x2, x1
00580ce0b.hs 0x580ce8
00580ce4b 0x581448
00580ce8
00580ce8loc_580ce8:
00580ce8b 0x580cec
00580cec
00580cecloc_580cec:
00580cecstr x7, [sp+1896]
00580cf0str x1, [sp+1904]
00580cf4str x2, [sp+1912]
00580cf8ldr x7, [sp+2256]
00580cfcldrsb x27, [x7]
00580d00ldr x2, [x7+16]
00580d04ldr x7, [x7]
00580d08ldr x1, [sp+64]
00580d0csubs xzr, x2, x1
00580d10b.hs 0x580d18
00580d14b 0x581444
00580d18
00580d18loc_580d18:
00580d18b 0x580d1c
00580d1c
00580d1cloc_580d1c:
00580d1cstr x7, [sp+1864]
00580d20str x1, [sp+1872]
00580d24str x2, [sp+1880]
00580d28ldr x7, [sp+64]
00580d2cstr x7, [sp+1832]
00580d30subs xzr, x7, 16
00580d34b.eq 0x580d3c
00580d38b 0x580d80
00580d3c
00580d3cloc_580d3c:
00580d3cb 0x580d40
00580d40
00580d40loc_580d40:
00580d40b 0x580d44
00580d44
00580d44loc_580d44:
00580d44add x20, sp, 1048
00580d48adr x27, 16
00580d4cstp x29, x27, [sp-24]
00580d50sub x29, sp, 24
00580d54bl fn_87cd0
00580d58sub x29, sp, 8
00580d5cadd x3, sp, 1048
00580d60ldrsb x27, [x3]
00580d64b 0x580d68
00580d68
00580d68loc_580d68:
00580d68str x3, [sp+1968]
00580d6corr x3, xzr, 32
00580d70str x3, [sp+1976]
00580d74str x3, [sp+1984]
00580d78str xzr, [sp+88]
00580d7cb 0x5812f4
00580d80
00580d80loc_580d80:
00580d80subs xzr, x7, 24
00580d84b.eq 0x580d8c
00580d88b 0x580dd0
00580d8c
00580d8cloc_580d8c:
00580d8cb 0x580d90
00580d90
00580d90loc_580d90:
00580d90b 0x580d94
00580d94
00580d94loc_580d94:
00580d94add x20, sp, 648
00580d98adr x27, 16
00580d9cstp x29, x27, [sp-24]
00580da0sub x29, sp, 24
00580da4bl fn_87cb0
00580da8sub x29, sp, 8
00580dacadd x3, sp, 648
00580db0ldrsb x27, [x3]
00580db4b 0x580db8
00580db8
00580db8loc_580db8:
00580db8str x3, [sp+1944]
00580dbcorr x3, xzr, 48
00580dc0str x3, [sp+1952]
00580dc4str x3, [sp+1960]
00580dc8str xzr, [sp+80]
00580dccb 0x5811a4
00580dd0
00580dd0loc_580dd0:
00580dd0subs xzr, x7, 32
00580dd4b.eq 0x580ddc
00580dd8b 0x580e20
00580ddc
00580ddcloc_580ddc:
00580ddcb 0x580de0
00580de0
00580de0loc_580de0:
00580de0b 0x580de4
00580de4
00580de4loc_580de4:
00580de4add x20, sp, 120
00580de8adr x27, 16
00580decstp x29, x27, [sp-24]
00580df0sub x29, sp, 24
00580df4bl fn_87c90
00580df8sub x29, sp, 8
00580dfcadd x3, sp, 120
00580e00ldrsb x27, [x3]
00580e04b 0x580e08
00580e08
00580e08loc_580e08:
00580e08str x3, [sp+1920]
00580e0corr x3, xzr, 64
00580e10str x3, [sp+1928]
00580e14str x3, [sp+1936]
00580e18str xzr, [sp+72]
00580e1cb 0x581054
00580e20
00580e20loc_580e20:
00580e20b 0x580e24
00580e24
00580e24loc_580e24:
00580e24b 0x580e28
00580e28
00580e28loc_580e28:
00580e28b 0x580e2c
00580e2c
00580e2cloc_580e2c:
00580e2cb 0x580e30
00580e30
00580e30loc_580e30:
00580e30add x20, sp, 1320
00580e34adr x27, 16
00580e38stp x29, x27, [sp-24]
00580e3csub x29, sp, 24
00580e40bl fn_87c90
00580e44sub x29, sp, 8
00580e48add x7, sp, 1320
00580e4cldrsb x27, [x7]
00580e50b 0x580e54
00580e54
00580e54loc_580e54:
00580e54b 0x580e58
00580e58
00580e58loc_580e58:
00580e58str x7, [sp+1992]
00580e5cstr xzr, [sp+2000]
00580e60orr x7, xzr, 64
00580e64str x7, [sp+2008]
00580e68str x7, [sp+1848]
00580e6cldr x7, [sp+64]
00580e70ubfm x7, x7, 63, 62
00580e74subs xzr, x7, 64
00580e78b.gt 0x580e80
00580e7cb 0x580eb0
00580e80
00580e80loc_580e80:
00580e80ldr x3, [sp+64]
00580e84ubfm x2, x3, 63, 62
00580e88adrp x0, 0x75000
00580e8cadd x0, x0, 3584
00580e90mov x1, xzr
00580e94bl runtime.makeslice
00580e98ldr x3, [sp+64]
00580e9cstr x0, [sp+1992]
00580ea0str xzr, [sp+2000]
00580ea4ubfm x3, x3, 63, 62
00580ea8str x3, [sp+2008]
00580eacb 0x580eb4
00580eb0
00580eb0loc_580eb0:
00580eb0b 0x580eb4
00580eb4
00580eb4loc_580eb4:
00580eb4ldr x7, [sp+64]
00580eb8ubfm x1, x7, 63, 62
00580ebcstr x1, [sp+1848]
00580ec0ldr x2, [sp+2008]
00580ec4subs xzr, x2, x7, lsl #1
00580ec8b.hs 0x580ed0
00580eccb 0x581050
00580ed0
00580ed0loc_580ed0:
00580ed0b 0x580ed4
00580ed4
00580ed4loc_580ed4:
00580ed4str x1, [sp+2000]
00580ed8str xzr, [sp+96]
00580edcb 0x580ee0
00580ee0
00580ee0loc_580ee0:
00580ee0ldr x7, [sp+64]
00580ee4ldr x8, [sp+96]
00580ee8subs xzr, x7, x8
00580eecb.gt 0x580ef4
00580ef0b 0x580fbc
00580ef4
00580ef4loc_580ef4:
00580ef4ldr x7, [sp+96]
00580ef8ldr x8, [sp+64]
00580efcadd x1, x8, x7
00580f00str x1, [sp+1848]
00580f04ldr x0, [sp+96]
00580f08ldr x2, [sp+2008]
00580f0cldr x7, [sp+1992]
00580f10subs xzr, x2, x1
00580f14b.hs 0x580f1c
00580f18b 0x58104c
00580f1c
00580f1cloc_580f1c:
00580f1csubs xzr, x0, x1
00580f20b.ls 0x580f28
00580f24b 0x581048
00580f28
00580f28loc_580f28:
00580f28sub x2, x2, x0
00580f2csub x1, x1, x0
00580f30sub x8, xzr, x2
00580f34ubfm x9, x0, 61, 60
00580f38and x8, x9, x8, asr #63
00580f3cadd x0, x7, x8
00580f40str x0, [sp+2192]
00580f44str x1, [sp+2200]
00580f48str x2, [sp+2208]
00580f4cldr x7, [sp+96]
00580f50ldr x8, [sp+1872]
00580f54ldr x9, [sp+1864]
00580f58subs xzr, x8, x7
00580f5cb.hi 0x580f64
00580f60b 0x58103c
00580f64
00580f64loc_580f64:
00580f64ldr x6, [x9+3*x7]
00580f68str x6, [sp+1312]
00580f6cldr x3, [sp+1896]
00580f70ldr x4, [sp+1904]
00580f74ldr x5, [sp+1912]
00580f78bl crypto/internal/fips140/bigmod.addMulVVW
00580f7cstr x0, [sp+1840]
00580f80ldr x7, [sp+64]
00580f84ldr x8, [sp+96]
00580f88add x7, x7, x8
00580f8cstr x7, [sp+1304]
00580f90ldr x1, [sp+2000]
00580f94ldr x8, [sp+1992]
00580f98subs xzr, x1, x7
00580f9cb.hi 0x580fa4
00580fa0b 0x581034
00580fa4
00580fa4loc_580fa4:
00580fa4str x0, [x8+3*x7]
00580fa8b 0x580fac
00580fac
00580facloc_580fac:
00580facldr x7, [sp+96]
00580fb0add x7, x7, 1
00580fb4str x7, [sp+96]
00580fb8b 0x580ee0
00580fbc
00580fbcloc_580fbc:
00580fbcadd x27, sp, 2160
00580fc0stp xzr, xzr, [x27]
00580fc4str xzr, [sp+2176]
00580fc8add x1, sp, 2160
00580fccstr x1, [sp+2184]
00580fd0ldrsb x27, [x1]
00580fd4ldr x3, [sp+1992]
00580fd8ldr x4, [sp+2000]
00580fdcldr x5, [sp+2008]
00580fe0str x4, [x1+8]
00580fe4str x5, [x1+16]
00580fe8adrp x27, 0x4cb000
00580fecldr w4, [x27+3056]
00580ff0cbz w4, 0x580ff8
00580ff4b 0x580ffc
00580ff8
00580ff8loc_580ff8:
00580ff8b 0x581010
00580ffc
00580ffcloc_580ffc:
00580ffcbl runtime.gcWriteBarrier2
00581000str x3, [x25]
00581004ldr x4, [x1]
00581008str x4, [x25+8]
0058100cb 0x581010
00581010
00581010loc_581010:
00581010str x3, [x1]
00581014ldr x0, [sp+2248]
00581018ldr x2, [sp+2264]
0058101cbl crypto/internal/fips140/bigmod.(*Nat).Mod
00581020str x0, [sp+2216]
00581024str x0, [sp+1856]
00581028ldp x29, x30, [sp-8]
0058102cadd sp, sp, 2240
00581030ret x30
00581034
00581034loc_581034:
00581034mov x0, x7
00581038bl runtime.panicIndex
0058103c
0058103cloc_58103c:
0058103cmov x0, x7
00581040mov x1, x8
00581044bl runtime.panicIndex
00581048
00581048loc_581048:
00581048bl runtime.panicSliceB
0058104c
0058104cloc_58104c:
0058104cbl runtime.panicSliceAcap
00581050
00581050loc_581050:
00581050bl runtime.panicSliceAcap
00581054
00581054loc_581054:
00581054ldr x3, [sp+72]
00581058subs xzr, x3, 32
0058105cb.lt 0x581064
00581060b 0x581110
00581064
00581064loc_581064:
00581064ldr x0, [sp+72]
00581068ldr x1, [sp+1928]
0058106cldr x2, [sp+1920]
00581070subs xzr, x0, x1
00581074b.lo 0x58107c
00581078b 0x5811a0
0058107c
0058107cloc_58107c:
0058107cadd x2, x2, x0, lsl #3
00581080str x2, [sp+2056]
00581084ldr x2, [sp+1896]
00581088ldr x1, [sp+1904]
0058108csubs xzr, x1, 0
00581090b.hi 0x581098
00581094b 0x581198
00581098
00581098loc_581098:
00581098str x2, [sp+2048]
0058109cldr x0, [sp+72]
005810a0ldr x1, [sp+1872]
005810a4ldr x3, [sp+1864]
005810a8subs xzr, x0, x1
005810acb.lo 0x5810b4
005810b0b 0x581194
005810b4
005810b4loc_5810b4:
005810b4ldr x0, [x3+3*x0]
005810b8str x0, [sp+112]
005810bcldr x1, [sp+2056]
005810c0str x1, [sp+8]
005810c4str x2, [sp+16]
005810c8str x0, [sp+24]
005810ccbl crypto/internal/fips140/bigmod.addMulVVW2048.abi0
005810d0ldr x0, [sp+32]
005810d4str x0, [sp+1840]
005810d8ldr x1, [sp+72]
005810dcadd x1, x1, 32
005810e0str x1, [sp+104]
005810e4ldr x2, [sp+1928]
005810e8ldr x3, [sp+1920]
005810ecsubs xzr, x2, x1
005810f0b.hi 0x5810f8
005810f4b 0x581188
005810f8
005810f8loc_5810f8:
005810f8str x0, [x3+3*x1]
005810fcb 0x581100
00581100
00581100loc_581100:
00581100ldr x3, [sp+72]
00581104add x3, x3, 1
00581108str x3, [sp+72]
0058110cb 0x581054
00581110
00581110loc_581110:
00581110add x27, sp, 2016
00581114stp xzr, xzr, [x27]
00581118str xzr, [sp+2032]
0058111cadd x1, sp, 2016
00581120str x1, [sp+2040]
00581124ldrsb x27, [x1]
00581128ldr x3, [sp+1920]
0058112cldr x4, [sp+1928]
00581130ldr x5, [sp+1936]
00581134str x4, [x1+8]
00581138str x5, [x1+16]
0058113cadrp x27, 0x4ca000
00581140ldr w4, [x27+3056]
00581144cbz w4, 0x58114c
00581148b 0x581150
0058114c
0058114cloc_58114c:
0058114cb 0x581164
00581150
00581150loc_581150:
00581150bl runtime.gcWriteBarrier2
00581154str x3, [x25]
00581158ldr x4, [x1]
0058115cstr x4, [x25+8]
00581160b 0x581164
00581164
00581164loc_581164:
00581164str x3, [x1]
00581168ldr x0, [sp+2248]
0058116cldr x2, [sp+2264]
00581170bl crypto/internal/fips140/bigmod.(*Nat).Mod
00581174str x0, [sp+2216]
00581178str x0, [sp+1856]
0058117cldp x29, x30, [sp-8]
00581180add sp, sp, 2240
00581184ret x30
00581188
00581188loc_581188:
00581188mov x0, x1
0058118cmov x1, x2
00581190bl runtime.panicIndex
00581194
00581194loc_581194:
00581194bl runtime.panicIndex
00581198
00581198loc_581198:
00581198mov x0, xzr
0058119cbl runtime.panicIndex
005811a0
005811a0loc_5811a0:
005811a0bl runtime.panicIndex
005811a4
005811a4loc_5811a4:
005811a4ldr x3, [sp+80]
005811a8subs xzr, x3, 24
005811acb.lt 0x5811b4
005811b0b 0x581260
005811b4
005811b4loc_5811b4:
005811b4ldr x0, [sp+80]
005811b8ldr x1, [sp+1952]
005811bcldr x2, [sp+1944]
005811c0subs xzr, x0, x1
005811c4b.lo 0x5811cc
005811c8b 0x5812f0
005811cc
005811ccloc_5811cc:
005811ccadd x2, x2, x0, lsl #3
005811d0str x2, [sp+2104]
005811d4ldr x2, [sp+1896]
005811d8ldr x1, [sp+1904]
005811dcsubs xzr, x1, 0
005811e0b.hi 0x5811e8
005811e4b 0x5812e8
005811e8
005811e8loc_5811e8:
005811e8str x2, [sp+2096]
005811ecldr x0, [sp+80]
005811f0ldr x1, [sp+1872]
005811f4ldr x3, [sp+1864]
005811f8subs xzr, x0, x1
005811fcb.lo 0x581204
00581200b 0x5812e4
00581204
00581204loc_581204:
00581204ldr x0, [x3+3*x0]
00581208str x0, [sp+640]
0058120cldr x1, [sp+2104]
00581210str x1, [sp+8]
00581214str x2, [sp+16]
00581218str x0, [sp+24]
0058121cbl crypto/internal/fips140/bigmod.addMulVVW1536.abi0
00581220ldr x0, [sp+32]
00581224str x0, [sp+1840]
00581228ldr x1, [sp+80]
0058122cadd x1, x1, 24
00581230str x1, [sp+632]
00581234ldr x2, [sp+1952]
00581238ldr x3, [sp+1944]
0058123csubs xzr, x2, x1
00581240b.hi 0x581248
00581244b 0x5812d8
00581248
00581248loc_581248:
00581248str x0, [x3+3*x1]
0058124cb 0x581250
00581250
00581250loc_581250:
00581250ldr x3, [sp+80]
00581254add x3, x3, 1
00581258str x3, [sp+80]
0058125cb 0x5811a4
00581260
00581260loc_581260:
00581260add x27, sp, 2064
00581264stp xzr, xzr, [x27]
00581268str xzr, [sp+2080]
0058126cadd x1, sp, 2064
00581270str x1, [sp+2088]
00581274ldrsb x27, [x1]
00581278ldr x3, [sp+1944]
0058127cldr x4, [sp+1952]
00581280ldr x5, [sp+1960]
00581284str x4, [x1+8]
00581288str x5, [x1+16]
0058128cadrp x27, 0x4ca000
00581290ldr w4, [x27+3056]
00581294cbz w4, 0x58129c
00581298b 0x5812a0
0058129c
0058129cloc_58129c:
0058129cb 0x5812b4
005812a0
005812a0loc_5812a0:
005812a0bl runtime.gcWriteBarrier2
005812a4str x3, [x25]
005812a8ldr x4, [x1]
005812acstr x4, [x25+8]
005812b0b 0x5812b4
005812b4
005812b4loc_5812b4:
005812b4str x3, [x1]
005812b8ldr x0, [sp+2248]
005812bcldr x2, [sp+2264]
005812c0bl crypto/internal/fips140/bigmod.(*Nat).Mod
005812c4str x0, [sp+2216]
005812c8str x0, [sp+1856]
005812ccldp x29, x30, [sp-8]
005812d0add sp, sp, 2240
005812d4ret x30
005812d8
005812d8loc_5812d8:
005812d8mov x0, x1
005812dcmov x1, x2
005812e0bl runtime.panicIndex
005812e4
005812e4loc_5812e4:
005812e4bl runtime.panicIndex
005812e8
005812e8loc_5812e8:
005812e8mov x0, xzr
005812ecbl runtime.panicIndex
005812f0
005812f0loc_5812f0:
005812f0bl runtime.panicIndex
005812f4
005812f4loc_5812f4:
005812f4ldr x3, [sp+88]
005812f8subs xzr, x3, 16
005812fcb.lt 0x581304
00581300b 0x5813b0
00581304
00581304loc_581304:
00581304ldr x0, [sp+88]
00581308ldr x1, [sp+1976]
0058130cldr x2, [sp+1968]
00581310subs xzr, x1, x0
00581314b.hi 0x58131c
00581318b 0x581440
0058131c
0058131cloc_58131c:
0058131cadd x2, x2, x0, lsl #3
00581320str x2, [sp+2152]
00581324ldr x2, [sp+1896]
00581328ldr x1, [sp+1904]
0058132csubs xzr, x1, 0
00581330b.hi 0x581338
00581334b 0x581438
00581338
00581338loc_581338:
00581338str x2, [sp+2144]
0058133cldr x0, [sp+88]
00581340ldr x1, [sp+1872]
00581344ldr x3, [sp+1864]
00581348subs xzr, x1, x0
0058134cb.hi 0x581354
00581350b 0x581434
00581354
00581354loc_581354:
00581354ldr x0, [x3+3*x0]
00581358str x0, [sp+1040]
0058135cldr x1, [sp+2152]
00581360str x1, [sp+8]
00581364str x2, [sp+16]
00581368str x0, [sp+24]
0058136cbl crypto/internal/fips140/bigmod.addMulVVW1024.abi0
00581370ldr x0, [sp+32]
00581374str x0, [sp+1840]
00581378ldr x1, [sp+88]
0058137cadd x1, x1, 16
00581380str x1, [sp+1032]
00581384ldr x2, [sp+1976]
00581388ldr x3, [sp+1968]
0058138csubs xzr, x2, x1
00581390b.hi 0x581398
00581394b 0x581428
00581398
00581398loc_581398:
00581398str x0, [x3+3*x1]
0058139cb 0x5813a0
005813a0
005813a0loc_5813a0:
005813a0ldr x3, [sp+88]
005813a4add x3, x3, 1
005813a8str x3, [sp+88]
005813acb 0x5812f4
005813b0
005813b0loc_5813b0:
005813b0add x27, sp, 2112
005813b4stp xzr, xzr, [x27]
005813b8str xzr, [sp+2128]
005813bcadd x1, sp, 2112
005813c0str x1, [sp+2136]
005813c4ldrsb x27, [x1]
005813c8ldr x3, [sp+1968]
005813ccldr x4, [sp+1976]
005813d0ldr x5, [sp+1984]
005813d4str x4, [x1+8]
005813d8str x5, [x1+16]
005813dcadrp x27, 0x4ca000
005813e0ldr w4, [x27+3056]
005813e4cbz w4, 0x5813ec
005813e8b 0x5813f0
005813ec
005813ecloc_5813ec:
005813ecb 0x581404
005813f0
005813f0loc_5813f0:
005813f0bl runtime.gcWriteBarrier2
005813f4str x3, [x25]
005813f8ldr x4, [x1]
005813fcstr x4, [x25+8]
00581400b 0x581404
00581404
00581404loc_581404:
00581404str x3, [x1]
00581408ldr x0, [sp+2248]
0058140cldr x2, [sp+2264]
00581410bl crypto/internal/fips140/bigmod.(*Nat).Mod
00581414str x0, [sp+2216]
00581418str x0, [sp+1856]
0058141cldp x29, x30, [sp-8]
00581420add sp, sp, 2240
00581424ret x30
00581428
00581428loc_581428:
00581428mov x0, x1
0058142cmov x1, x2
00581430bl runtime.panicIndex
00581434
00581434loc_581434:
00581434bl runtime.panicIndex
00581438
00581438loc_581438:
00581438mov x0, xzr
0058143cbl runtime.panicIndex
00581440
00581440loc_581440:
00581440bl runtime.panicIndex
00581444
00581444loc_581444:
00581444bl runtime.panicSliceAcap
00581448
00581448loc_581448:
00581448bl runtime.panicSliceAcap
0058144chint
00581450
00581450loc_581450:
00581450stp x0, x1, [sp+8]
00581454str x2, [sp+24]
00581458mov x3, x30
0058145cbl runtime.morestack_noctxt.abi0
00581460ldp x0, x1, [sp+8]
00581464ldr x2, [sp+24]
00581468b 0x580c20
0058146cudf 0
00580c20
00580c20crypto/internal/fips140/bigmod.(*Nat).Mul: ; void crypto/internal/fips140/bigmod.(*Nat).Mul(crypto/internal/fips140/bigmod.Nat * x, crypto/internal/fips140/bigmod.Nat * y, crypto/internal/fips140/bigmod.Modulus * m)
00580c20ldr x16, [x28+16]
00580c24sub x17, sp, 2112
00580c28subs xzr, x17, x16
00580c2cb.ls 0x581450
00580c30sub x20, sp, 2240
00580c34stp x29, x30, [x20-8]
00580c38add sp, x20, 0
00580c3csub x29, sp, 8
00580c40str x0, [sp+2248]
00580c44str x1, [sp+2256]
00580c48str x2, [sp+2264]
00580c4cstr xzr, [sp+1856]
00580c50ldr x7, [sp+2264]
00580c54ldrsb x27, [x7]
00580c58ldrb w7, [x7+8]
00580c5ctbnz w7, 0, 0x580c64
00580c60b 0x580cb4
00580c64
00580c64loc_580c64:
00580c64bl crypto/internal/fips140/bigmod.NewNat
00580c68str x0, [sp+2224]
00580c6cldr x1, [sp+2248]
00580c70bl crypto/internal/fips140/bigmod.(*Nat).set
00580c74str x0, [sp+2216]
00580c78ldr x1, [sp+2264]
00580c7cbl crypto/internal/fips140/bigmod.(*Nat).montgomeryRepresentation
00580c80str x0, [sp+1888]
00580c84ldr x2, [sp+2256]
00580c88ldr x3, [sp+2264]
00580c8cldr x1, [sp+2248]
00580c90mov x4, x0
00580c94mov x0, x1
00580c98mov x1, x4
00580c9cbl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
00580ca0str x0, [sp+2216]
00580ca4str x0, [sp+1856]
00580ca8ldp x29, x30, [sp-8]
00580cacadd sp, sp, 2240
00580cb0ret x30
00580cb4
00580cb4loc_580cb4:
00580cb4ldr x7, [sp+2264]
00580cb8ldrsb x27, [x7]
00580cbcldr x7, [x7]
00580cc0ldrsb x27, [x7]
00580cc4ldr x1, [x7+8]
00580cc8str x1, [sp+64]
00580cccldr x7, [sp+2248]
00580cd0ldrsb x27, [x7]
00580cd4ldr x2, [x7+16]
00580cd8ldr x7, [x7]
00580cdcsubs xzr, x2, x1
00580ce0b.hs 0x580ce8
00580ce4b 0x581448
00580ce8
00580ce8loc_580ce8:
00580ce8b 0x580cec
00580cec
00580cecloc_580cec:
00580cecstr x7, [sp+1896]
00580cf0str x1, [sp+1904]
00580cf4str x2, [sp+1912]
00580cf8ldr x7, [sp+2256]
00580cfcldrsb x27, [x7]
00580d00ldr x2, [x7+16]
00580d04ldr x7, [x7]
00580d08ldr x1, [sp+64]
00580d0csubs xzr, x2, x1
00580d10b.hs 0x580d18
00580d14b 0x581444
00580d18
00580d18loc_580d18:
00580d18b 0x580d1c
00580d1c
00580d1cloc_580d1c:
00580d1cstr x7, [sp+1864]
00580d20str x1, [sp+1872]
00580d24str x2, [sp+1880]
00580d28ldr x7, [sp+64]
00580d2cstr x7, [sp+1832]
00580d30subs xzr, x7, 16
00580d34b.eq 0x580d3c
00580d38b 0x580d80
00580d3c
00580d3cloc_580d3c:
00580d3cb 0x580d40
00580d40
00580d40loc_580d40:
00580d40b 0x580d44
00580d44
00580d44loc_580d44:
00580d44add x20, sp, 1048
00580d48adr x27, 16
00580d4cstp x29, x27, [sp-24]
00580d50sub x29, sp, 24
00580d54bl fn_87cd0
00580d58sub x29, sp, 8
00580d5cadd x3, sp, 1048
00580d60ldrsb x27, [x3]
00580d64b 0x580d68
00580d68
00580d68loc_580d68:
00580d68str x3, [sp+1968]
00580d6corr x3, xzr, 32
00580d70str x3, [sp+1976]
00580d74str x3, [sp+1984]
00580d78str xzr, [sp+88]
00580d7cb 0x5812f4
00580d80
00580d80loc_580d80:
00580d80subs xzr, x7, 24
00580d84b.eq 0x580d8c
00580d88b 0x580dd0
00580d8c
00580d8cloc_580d8c:
00580d8cb 0x580d90
00580d90
00580d90loc_580d90:
00580d90b 0x580d94
00580d94
00580d94loc_580d94:
00580d94add x20, sp, 648
00580d98adr x27, 16
00580d9cstp x29, x27, [sp-24]
00580da0sub x29, sp, 24
00580da4bl fn_87cb0
00580da8sub x29, sp, 8
00580dacadd x3, sp, 648
00580db0ldrsb x27, [x3]
00580db4b 0x580db8
00580db8
00580db8loc_580db8:
00580db8str x3, [sp+1944]
00580dbcorr x3, xzr, 48
00580dc0str x3, [sp+1952]
00580dc4str x3, [sp+1960]
00580dc8str xzr, [sp+80]
00580dccb 0x5811a4
00580dd0
00580dd0loc_580dd0:
00580dd0subs xzr, x7, 32
00580dd4b.eq 0x580ddc
00580dd8b 0x580e20
00580ddc
00580ddcloc_580ddc:
00580ddcb 0x580de0
00580de0
00580de0loc_580de0:
00580de0b 0x580de4
00580de4
00580de4loc_580de4:
00580de4add x20, sp, 120
00580de8adr x27, 16
00580decstp x29, x27, [sp-24]
00580df0sub x29, sp, 24
00580df4bl fn_87c90
00580df8sub x29, sp, 8
00580dfcadd x3, sp, 120
00580e00ldrsb x27, [x3]
00580e04b 0x580e08
00580e08
00580e08loc_580e08:
00580e08str x3, [sp+1920]
00580e0corr x3, xzr, 64
00580e10str x3, [sp+1928]
00580e14str x3, [sp+1936]
00580e18str xzr, [sp+72]
00580e1cb 0x581054
00580e20
00580e20loc_580e20:
00580e20b 0x580e24
00580e24
00580e24loc_580e24:
00580e24b 0x580e28
00580e28
00580e28loc_580e28:
00580e28b 0x580e2c
00580e2c
00580e2cloc_580e2c:
00580e2cb 0x580e30
00580e30
00580e30loc_580e30:
00580e30add x20, sp, 1320
00580e34adr x27, 16
00580e38stp x29, x27, [sp-24]
00580e3csub x29, sp, 24
00580e40bl fn_87c90
00580e44sub x29, sp, 8
00580e48add x7, sp, 1320
00580e4cldrsb x27, [x7]
00580e50b 0x580e54
00580e54
00580e54loc_580e54:
00580e54b 0x580e58
00580e58
00580e58loc_580e58:
00580e58str x7, [sp+1992]
00580e5cstr xzr, [sp+2000]
00580e60orr x7, xzr, 64
00580e64str x7, [sp+2008]
00580e68str x7, [sp+1848]
00580e6cldr x7, [sp+64]
00580e70ubfm x7, x7, 63, 62
00580e74subs xzr, x7, 64
00580e78b.gt 0x580e80
00580e7cb 0x580eb0
00580e80
00580e80loc_580e80:
00580e80ldr x3, [sp+64]
00580e84ubfm x2, x3, 63, 62
00580e88adrp x0, 0x75000
00580e8cadd x0, x0, 3584
00580e90mov x1, xzr
00580e94bl runtime.makeslice
00580e98ldr x3, [sp+64]
00580e9cstr x0, [sp+1992]
00580ea0str xzr, [sp+2000]
00580ea4ubfm x3, x3, 63, 62
00580ea8str x3, [sp+2008]
00580eacb 0x580eb4
00580eb0
00580eb0loc_580eb0:
00580eb0b 0x580eb4
00580eb4
00580eb4loc_580eb4:
00580eb4ldr x7, [sp+64]
00580eb8ubfm x1, x7, 63, 62
00580ebcstr x1, [sp+1848]
00580ec0ldr x2, [sp+2008]
00580ec4subs xzr, x2, x7, lsl #1
00580ec8b.hs 0x580ed0
00580eccb 0x581050
00580ed0
00580ed0loc_580ed0:
00580ed0b 0x580ed4
00580ed4
00580ed4loc_580ed4:
00580ed4str x1, [sp+2000]
00580ed8str xzr, [sp+96]
00580edcb 0x580ee0
00580ee0
00580ee0loc_580ee0:
00580ee0ldr x7, [sp+64]
00580ee4ldr x8, [sp+96]
00580ee8subs xzr, x7, x8
00580eecb.gt 0x580ef4
00580ef0b 0x580fbc
00580ef4
00580ef4loc_580ef4:
00580ef4ldr x7, [sp+96]
00580ef8ldr x8, [sp+64]
00580efcadd x1, x8, x7
00580f00str x1, [sp+1848]
00580f04ldr x0, [sp+96]
00580f08ldr x2, [sp+2008]
00580f0cldr x7, [sp+1992]
00580f10subs xzr, x2, x1
00580f14b.hs 0x580f1c
00580f18b 0x58104c
00580f1c
00580f1cloc_580f1c:
00580f1csubs xzr, x0, x1
00580f20b.ls 0x580f28
00580f24b 0x581048
00580f28
00580f28loc_580f28:
00580f28sub x2, x2, x0
00580f2csub x1, x1, x0
00580f30sub x8, xzr, x2
00580f34ubfm x9, x0, 61, 60
00580f38and x8, x9, x8, asr #63
00580f3cadd x0, x7, x8
00580f40str x0, [sp+2192]
00580f44str x1, [sp+2200]
00580f48str x2, [sp+2208]
00580f4cldr x7, [sp+96]
00580f50ldr x8, [sp+1872]
00580f54ldr x9, [sp+1864]
00580f58subs xzr, x8, x7
00580f5cb.hi 0x580f64
00580f60b 0x58103c
00580f64
00580f64loc_580f64:
00580f64ldr x6, [x9+3*x7]
00580f68str x6, [sp+1312]
00580f6cldr x3, [sp+1896]
00580f70ldr x4, [sp+1904]
00580f74ldr x5, [sp+1912]
00580f78bl crypto/internal/fips140/bigmod.addMulVVW
00580f7cstr x0, [sp+1840]
00580f80ldr x7, [sp+64]
00580f84ldr x8, [sp+96]
00580f88add x7, x7, x8
00580f8cstr x7, [sp+1304]
00580f90ldr x1, [sp+2000]
00580f94ldr x8, [sp+1992]
00580f98subs xzr, x1, x7
00580f9cb.hi 0x580fa4
00580fa0b 0x581034
00580fa4
00580fa4loc_580fa4:
00580fa4str x0, [x8+3*x7]
00580fa8b 0x580fac
00580fac
00580facloc_580fac:
00580facldr x7, [sp+96]
00580fb0add x7, x7, 1
00580fb4str x7, [sp+96]
00580fb8b 0x580ee0
00580fbc
00580fbcloc_580fbc:
00580fbcadd x27, sp, 2160
00580fc0stp xzr, xzr, [x27]
00580fc4str xzr, [sp+2176]
00580fc8add x1, sp, 2160
00580fccstr x1, [sp+2184]
00580fd0ldrsb x27, [x1]
00580fd4ldr x3, [sp+1992]
00580fd8ldr x4, [sp+2000]
00580fdcldr x5, [sp+2008]
00580fe0str x4, [x1+8]
00580fe4str x5, [x1+16]
00580fe8adrp x27, 0x4cb000
00580fecldr w4, [x27+3056]
00580ff0cbz w4, 0x580ff8
00580ff4b 0x580ffc
00580ff8
00580ff8loc_580ff8:
00580ff8b 0x581010
00580ffc
00580ffcloc_580ffc:
00580ffcbl runtime.gcWriteBarrier2
00581000str x3, [x25]
00581004ldr x4, [x1]
00581008str x4, [x25+8]
0058100cb 0x581010
00581010
00581010loc_581010:
00581010str x3, [x1]
00581014ldr x0, [sp+2248]
00581018ldr x2, [sp+2264]
0058101cbl crypto/internal/fips140/bigmod.(*Nat).Mod
00581020str x0, [sp+2216]
00581024str x0, [sp+1856]
00581028ldp x29, x30, [sp-8]
0058102cadd sp, sp, 2240
00581030ret x30
00581034
00581034loc_581034:
00581034mov x0, x7
00581038bl runtime.panicIndex
0058103c
0058103cloc_58103c:
0058103cmov x0, x7
00581040mov x1, x8
00581044bl runtime.panicIndex
00581048
00581048loc_581048:
00581048bl runtime.panicSliceB
0058104c
0058104cloc_58104c:
0058104cbl runtime.panicSliceAcap
00581050
00581050loc_581050:
00581050bl runtime.panicSliceAcap
00581054
00581054loc_581054:
00581054ldr x3, [sp+72]
00581058subs xzr, x3, 32
0058105cb.lt 0x581064
00581060b 0x581110
00581064
00581064loc_581064:
00581064ldr x0, [sp+72]
00581068ldr x1, [sp+1928]
0058106cldr x2, [sp+1920]
00581070subs xzr, x0, x1
00581074b.lo 0x58107c
00581078b 0x5811a0
0058107c
0058107cloc_58107c:
0058107cadd x2, x2, x0, lsl #3
00581080str x2, [sp+2056]
00581084ldr x2, [sp+1896]
00581088ldr x1, [sp+1904]
0058108csubs xzr, x1, 0
00581090b.hi 0x581098
00581094b 0x581198
00581098
00581098loc_581098:
00581098str x2, [sp+2048]
0058109cldr x0, [sp+72]
005810a0ldr x1, [sp+1872]
005810a4ldr x3, [sp+1864]
005810a8subs xzr, x0, x1
005810acb.lo 0x5810b4
005810b0b 0x581194
005810b4
005810b4loc_5810b4:
005810b4ldr x0, [x3+3*x0]
005810b8str x0, [sp+112]
005810bcldr x1, [sp+2056]
005810c0str x1, [sp+8]
005810c4str x2, [sp+16]
005810c8str x0, [sp+24]
005810ccbl crypto/internal/fips140/bigmod.addMulVVW2048.abi0
005810d0ldr x0, [sp+32]
005810d4str x0, [sp+1840]
005810d8ldr x1, [sp+72]
005810dcadd x1, x1, 32
005810e0str x1, [sp+104]
005810e4ldr x2, [sp+1928]
005810e8ldr x3, [sp+1920]
005810ecsubs xzr, x2, x1
005810f0b.hi 0x5810f8
005810f4b 0x581188
005810f8
005810f8loc_5810f8:
005810f8str x0, [x3+3*x1]
005810fcb 0x581100
00581100
00581100loc_581100:
00581100ldr x3, [sp+72]
00581104add x3, x3, 1
00581108str x3, [sp+72]
0058110cb 0x581054
00581110
00581110loc_581110:
00581110add x27, sp, 2016
00581114stp xzr, xzr, [x27]
00581118str xzr, [sp+2032]
0058111cadd x1, sp, 2016
00581120str x1, [sp+2040]
00581124ldrsb x27, [x1]
00581128ldr x3, [sp+1920]
0058112cldr x4, [sp+1928]
00581130ldr x5, [sp+1936]
00581134str x4, [x1+8]
00581138str x5, [x1+16]
0058113cadrp x27, 0x4ca000
00581140ldr w4, [x27+3056]
00581144cbz w4, 0x58114c
00581148b 0x581150
0058114c
0058114cloc_58114c:
0058114cb 0x581164
00581150
00581150loc_581150:
00581150bl runtime.gcWriteBarrier2
00581154str x3, [x25]
00581158ldr x4, [x1]
0058115cstr x4, [x25+8]
00581160b 0x581164
00581164
00581164loc_581164:
00581164str x3, [x1]
00581168ldr x0, [sp+2248]
0058116cldr x2, [sp+2264]
00581170bl crypto/internal/fips140/bigmod.(*Nat).Mod
00581174str x0, [sp+2216]
00581178str x0, [sp+1856]
0058117cldp x29, x30, [sp-8]
00581180add sp, sp, 2240
00581184ret x30
00581188
00581188loc_581188:
00581188mov x0, x1
0058118cmov x1, x2
00581190bl runtime.panicIndex
00581194
00581194loc_581194:
00581194bl runtime.panicIndex
00581198
00581198loc_581198:
00581198mov x0, xzr
0058119cbl runtime.panicIndex
005811a0
005811a0loc_5811a0:
005811a0bl runtime.panicIndex
005811a4
005811a4loc_5811a4:
005811a4ldr x3, [sp+80]
005811a8subs xzr, x3, 24
005811acb.lt 0x5811b4
005811b0b 0x581260
005811b4
005811b4loc_5811b4:
005811b4ldr x0, [sp+80]
005811b8ldr x1, [sp+1952]
005811bcldr x2, [sp+1944]
005811c0subs xzr, x0, x1
005811c4b.lo 0x5811cc
005811c8b 0x5812f0
005811cc
005811ccloc_5811cc:
005811ccadd x2, x2, x0, lsl #3
005811d0str x2, [sp+2104]
005811d4ldr x2, [sp+1896]
005811d8ldr x1, [sp+1904]
005811dcsubs xzr, x1, 0
005811e0b.hi 0x5811e8
005811e4b 0x5812e8
005811e8
005811e8loc_5811e8:
005811e8str x2, [sp+2096]
005811ecldr x0, [sp+80]
005811f0ldr x1, [sp+1872]
005811f4ldr x3, [sp+1864]
005811f8subs xzr, x0, x1
005811fcb.lo 0x581204
00581200b 0x5812e4
00581204
00581204loc_581204:
00581204ldr x0, [x3+3*x0]
00581208str x0, [sp+640]
0058120cldr x1, [sp+2104]
00581210str x1, [sp+8]
00581214str x2, [sp+16]
00581218str x0, [sp+24]
0058121cbl crypto/internal/fips140/bigmod.addMulVVW1536.abi0
00581220ldr x0, [sp+32]
00581224str x0, [sp+1840]
00581228ldr x1, [sp+80]
0058122cadd x1, x1, 24
00581230str x1, [sp+632]
00581234ldr x2, [sp+1952]
00581238ldr x3, [sp+1944]
0058123csubs xzr, x2, x1
00581240b.hi 0x581248
00581244b 0x5812d8
00581248
00581248loc_581248:
00581248str x0, [x3+3*x1]
0058124cb 0x581250
00581250
00581250loc_581250:
00581250ldr x3, [sp+80]
00581254add x3, x3, 1
00581258str x3, [sp+80]
0058125cb 0x5811a4
00581260
00581260loc_581260:
00581260add x27, sp, 2064
00581264stp xzr, xzr, [x27]
00581268str xzr, [sp+2080]
0058126cadd x1, sp, 2064
00581270str x1, [sp+2088]
00581274ldrsb x27, [x1]
00581278ldr x3, [sp+1944]
0058127cldr x4, [sp+1952]
00581280ldr x5, [sp+1960]
00581284str x4, [x1+8]
00581288str x5, [x1+16]
0058128cadrp x27, 0x4ca000
00581290ldr w4, [x27+3056]
00581294cbz w4, 0x58129c
00581298b 0x5812a0
0058129c
0058129cloc_58129c:
0058129cb 0x5812b4
005812a0
005812a0loc_5812a0:
005812a0bl runtime.gcWriteBarrier2
005812a4str x3, [x25]
005812a8ldr x4, [x1]
005812acstr x4, [x25+8]
005812b0b 0x5812b4
005812b4
005812b4loc_5812b4:
005812b4str x3, [x1]
005812b8ldr x0, [sp+2248]
005812bcldr x2, [sp+2264]
005812c0bl crypto/internal/fips140/bigmod.(*Nat).Mod
005812c4str x0, [sp+2216]
005812c8str x0, [sp+1856]
005812ccldp x29, x30, [sp-8]
005812d0add sp, sp, 2240
005812d4ret x30
005812d8
005812d8loc_5812d8:
005812d8mov x0, x1
005812dcmov x1, x2
005812e0bl runtime.panicIndex
005812e4
005812e4loc_5812e4:
005812e4bl runtime.panicIndex
005812e8
005812e8loc_5812e8:
005812e8mov x0, xzr
005812ecbl runtime.panicIndex
005812f0
005812f0loc_5812f0:
005812f0bl runtime.panicIndex
005812f4
005812f4loc_5812f4:
005812f4ldr x3, [sp+88]
005812f8subs xzr, x3, 16
005812fcb.lt 0x581304
00581300b 0x5813b0
00581304
00581304loc_581304:
00581304ldr x0, [sp+88]
00581308ldr x1, [sp+1976]
0058130cldr x2, [sp+1968]
00581310subs xzr, x1, x0
00581314b.hi 0x58131c
00581318b 0x581440
0058131c
0058131cloc_58131c:
0058131cadd x2, x2, x0, lsl #3
00581320str x2, [sp+2152]
00581324ldr x2, [sp+1896]
00581328ldr x1, [sp+1904]
0058132csubs xzr, x1, 0
00581330b.hi 0x581338
00581334b 0x581438
00581338
00581338loc_581338:
00581338str x2, [sp+2144]
0058133cldr x0, [sp+88]
00581340ldr x1, [sp+1872]
00581344ldr x3, [sp+1864]
00581348subs xzr, x1, x0
0058134cb.hi 0x581354
00581350b 0x581434
00581354
00581354loc_581354:
00581354ldr x0, [x3+3*x0]
00581358str x0, [sp+1040]
0058135cldr x1, [sp+2152]
00581360str x1, [sp+8]
00581364str x2, [sp+16]
00581368str x0, [sp+24]
0058136cbl crypto/internal/fips140/bigmod.addMulVVW1024.abi0
00581370ldr x0, [sp+32]
00581374str x0, [sp+1840]
00581378ldr x1, [sp+88]
0058137cadd x1, x1, 16
00581380str x1, [sp+1032]
00581384ldr x2, [sp+1976]
00581388ldr x3, [sp+1968]
0058138csubs xzr, x2, x1
00581390b.hi 0x581398
00581394b 0x581428
00581398
00581398loc_581398:
00581398str x0, [x3+3*x1]
0058139cb 0x5813a0
005813a0
005813a0loc_5813a0:
005813a0ldr x3, [sp+88]
005813a4add x3, x3, 1
005813a8str x3, [sp+88]
005813acb 0x5812f4
005813b0
005813b0loc_5813b0:
005813b0add x27, sp, 2112
005813b4stp xzr, xzr, [x27]
005813b8str xzr, [sp+2128]
005813bcadd x1, sp, 2112
005813c0str x1, [sp+2136]
005813c4ldrsb x27, [x1]
005813c8ldr x3, [sp+1968]
005813ccldr x4, [sp+1976]
005813d0ldr x5, [sp+1984]
005813d4str x4, [x1+8]
005813d8str x5, [x1+16]
005813dcadrp x27, 0x4ca000
005813e0ldr w4, [x27+3056]
005813e4cbz w4, 0x5813ec
005813e8b 0x5813f0
005813ec
005813ecloc_5813ec:
005813ecb 0x581404
005813f0
005813f0loc_5813f0:
005813f0bl runtime.gcWriteBarrier2
005813f4str x3, [x25]
005813f8ldr x4, [x1]
005813fcstr x4, [x25+8]
00581400b 0x581404
00581404
00581404loc_581404:
00581404str x3, [x1]
00581408ldr x0, [sp+2248]
0058140cldr x2, [sp+2264]
00581410bl crypto/internal/fips140/bigmod.(*Nat).Mod
00581414str x0, [sp+2216]
00581418str x0, [sp+1856]
0058141cldp x29, x30, [sp-8]
00581420add sp, sp, 2240
00581424ret x30
00581428
00581428loc_581428:
00581428mov x0, x1
0058142cmov x1, x2
00581430bl runtime.panicIndex
00581434
00581434loc_581434:
00581434bl runtime.panicIndex
00581438
00581438loc_581438:
00581438mov x0, xzr
0058143cbl runtime.panicIndex
00581440
00581440loc_581440:
00581440bl runtime.panicIndex
00581444
00581444loc_581444:
00581444bl runtime.panicSliceAcap
00581448
00581448loc_581448:
00581448bl runtime.panicSliceAcap
0058144chint
00581450
00581450loc_581450:
00581450stp x0, x1, [sp+8]
00581454str x2, [sp+24]
00581458mov x3, x30
0058145cbl runtime.morestack_noctxt.abi0
00581460ldp x0, x1, [sp+8]
00581464ldr x2, [sp+24]
00581468b 0x580c20
0058146cudf 0
00580c20
00581470
00581470crypto/internal/fips140/bigmod.(*Nat).Exp: ; void crypto/internal/fips140/bigmod.(*Nat).Exp(crypto/internal/fips140/bigmod.Nat * out, crypto/internal/fips140/bigmod.Nat * x, struct []uint8 e, crypto/internal/fips140/bigmod.Modulus * m)
00581470ldr x16, [x28+16]
00581474sub x17, sp, 416
00581478subs xzr, x17, x16
0058147cb.ls 0x581950
00581480sub x20, sp, 544
00581484stp x29, x30, [x20-8]
00581488add sp, x20, 0
0058148csub x29, sp, 8
00581490str x0, [sp+552]
00581494str x1, [sp+560]
00581498str x2, [sp+568]
0058149cstr x3, [sp+576]
005814a0str x4, [sp+584]
005814a4str x5, [sp+592]
005814a8str xzr, [sp+160]
005814acldr x2, [sp+592]
005814b0ldrsb x27, [x2]
005814b4ldrb w2, [x2+8]
005814b8tbnz w2, 0, 0x5814c0
005814bcb 0x581920
005814c0
005814c0loc_5814c0:
005814c0bl crypto/internal/fips140/bigmod.NewNat
005814c4str x0, [sp+512]
005814c8bl crypto/internal/fips140/bigmod.NewNat
005814ccstr x0, [sp+504]
005814d0bl crypto/internal/fips140/bigmod.NewNat
005814d4str x0, [sp+496]
005814d8bl crypto/internal/fips140/bigmod.NewNat
005814dcstr x0, [sp+488]
005814e0bl crypto/internal/fips140/bigmod.NewNat
005814e4str x0, [sp+480]
005814e8bl crypto/internal/fips140/bigmod.NewNat
005814ecstr x0, [sp+472]
005814f0bl crypto/internal/fips140/bigmod.NewNat
005814f4str x0, [sp+464]
005814f8bl crypto/internal/fips140/bigmod.NewNat
005814fcstr x0, [sp+456]
00581500bl crypto/internal/fips140/bigmod.NewNat
00581504str x0, [sp+448]
00581508bl crypto/internal/fips140/bigmod.NewNat
0058150cstr x0, [sp+440]
00581510bl crypto/internal/fips140/bigmod.NewNat
00581514str x0, [sp+432]
00581518bl crypto/internal/fips140/bigmod.NewNat
0058151cstr x0, [sp+424]
00581520bl crypto/internal/fips140/bigmod.NewNat
00581524str x0, [sp+416]
00581528bl crypto/internal/fips140/bigmod.NewNat
0058152cstr x0, [sp+408]
00581530bl crypto/internal/fips140/bigmod.NewNat
00581534str x0, [sp+400]
00581538add x21, sp, 176
0058153cadrp x20, 0x1a8000
00581540add x20, x20, 3232
00581544adr x27, 16
00581548stp x29, x27, [sp-24]
0058154csub x29, sp, 24
00581550bl fn_87ee8
00581554sub x29, sp, 8
00581558adrp x27, 0x1a8000
0058155cldr x0, [x27+3344]
00581560str x0, [sp+288]
00581564ldr x0, [sp+512]
00581568str x0, [sp+176]
0058156cldr x0, [sp+504]
00581570str x0, [sp+184]
00581574ldr x0, [sp+496]
00581578str x0, [sp+192]
0058157cldr x0, [sp+488]
00581580str x0, [sp+200]
00581584ldr x0, [sp+480]
00581588str x0, [sp+208]
0058158cldr x0, [sp+472]
00581590str x0, [sp+216]
00581594ldr x0, [sp+464]
00581598str x0, [sp+224]
0058159cldr x0, [sp+456]
005815a0str x0, [sp+232]
005815a4ldr x0, [sp+448]
005815a8str x0, [sp+240]
005815acldr x0, [sp+440]
005815b0str x0, [sp+248]
005815b4ldr x0, [sp+432]
005815b8str x0, [sp+256]
005815bcldr x0, [sp+424]
005815c0str x0, [sp+264]
005815c4ldr x0, [sp+416]
005815c8str x0, [sp+272]
005815ccldr x0, [sp+408]
005815d0str x0, [sp+280]
005815d4ldr x0, [sp+400]
005815d8str x0, [sp+288]
005815dcldr x0, [sp+176]
005815e0str x0, [sp+336]
005815e4ldr x1, [sp+560]
005815e8bl crypto/internal/fips140/bigmod.(*Nat).set
005815ecstr x0, [sp+400]
005815f0ldr x1, [sp+592]
005815f4bl crypto/internal/fips140/bigmod.(*Nat).montgomeryRepresentation
005815f8orr x0, xzr, 1
005815fcstr x0, [sp+72]
00581600b 0x581604
00581604
00581604loc_581604:
00581604ldr x4, [sp+72]
00581608subs xzr, x4, 15
0058160cb.lt 0x581614
00581610b 0x58167c
00581614
00581614loc_581614:
00581614ldr x0, [sp+72]
00581618subs xzr, x0, 15
0058161cb.lo 0x581624
00581620b 0x581918
00581624
00581624loc_581624:
00581624add x4, sp, 176
00581628ldr x4, [x4+3*x0]
0058162cstr x4, [sp+328]
00581630ldr x4, [sp+72]
00581634sub x0, x4, 1
00581638subs xzr, x0, 15
0058163cb.lo 0x581644
00581640b 0x581910
00581644
00581644loc_581644:
00581644add x4, sp, 176
00581648ldr x4, [x4+3*x0]
0058164cstr x4, [sp+320]
00581650ldr x2, [sp+176]
00581654str x2, [sp+312]
00581658ldr x3, [sp+592]
0058165cldr x0, [sp+328]
00581660ldr x1, [sp+320]
00581664bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
00581668b 0x58166c
0058166c
0058166cloc_58166c:
0058166cldr x4, [sp+72]
00581670add x4, x4, 1
00581674str x4, [sp+72]
00581678b 0x581604
0058167c
0058167cloc_58167c:
0058167cldr x1, [sp+592]
00581680ldr x0, [sp+552]
00581684bl crypto/internal/fips140/bigmod.(*Nat).resetFor
00581688ldr x2, [sp+552]
0058168cldrsb x27, [x2]
00581690ldr x1, [x2+8]
00581694ldr x2, [x2]
00581698subs xzr, x1, 0
0058169cb.hi 0x5816a4
005816a0b 0x581908
005816a4
005816a4loc_5816a4:
005816a4orr x3, xzr, 1
005816a8str x3, [x2]
005816acldr x1, [sp+592]
005816b0ldr x0, [sp+552]
005816b4bl crypto/internal/fips140/bigmod.(*Nat).montgomeryRepresentation
005816b8bl crypto/internal/fips140/bigmod.NewNat
005816bcstr x0, [sp+400]
005816c0ldr x1, [sp+592]
005816c4bl crypto/internal/fips140/bigmod.(*Nat).ExpandFor
005816c8str x0, [sp+168]
005816ccldr x2, [sp+576]
005816d0ldr x3, [sp+568]
005816d4ldr x4, [sp+584]
005816d8str x3, [sp+376]
005816dcstr x2, [sp+384]
005816e0str x4, [sp+392]
005816e4str xzr, [sp+136]
005816e8str x2, [sp+128]
005816ecb 0x5816f0
005816f0
005816f0loc_5816f0:
005816f0ldr x4, [sp+128]
005816f4ldr x5, [sp+136]
005816f8subs xzr, x4, x5
005816fcb.gt 0x581704
00581700b 0x581758
00581704
00581704loc_581704:
00581704ldr x4, [sp+136]
00581708ldr x5, [sp+376]
0058170cldrb w4, [x5+x4]
00581710strb w4, [sp+47]
00581714stp xzr, xzr, [sp+112]
00581718add x4, sp, 112
0058171cstr x4, [sp+304]
00581720ldrsb x27, [x4]
00581724orr x5, xzr, 4
00581728str x5, [x4]
0058172cldrsb x27, [x4]
00581730str xzr, [x4+8]
00581734ldrsb x27, [x4]
00581738b 0x58173c
0058173c
0058173cloc_58173c:
0058173cstr x4, [sp+352]
00581740orr x4, xzr, 2
00581744str x4, [sp+360]
00581748str x4, [sp+368]
0058174cstr xzr, [sp+104]
00581750str x4, [sp+96]
00581754b 0x581778
00581758
00581758loc_581758:
00581758ldr x1, [sp+592]
0058175cldr x0, [sp+552]
00581760bl crypto/internal/fips140/bigmod.(*Nat).montgomeryReduction
00581764str x0, [sp+400]
00581768str x0, [sp+160]
0058176cldp x29, x30, [sp-8]
00581770add sp, sp, 544
00581774ret x30
00581778
00581778loc_581778:
00581778ldr x6, [sp+96]
0058177cldr x7, [sp+104]
00581780subs xzr, x6, x7
00581784b.gt 0x58178c
00581788b 0x581820
0058178c
0058178cloc_58178c:
0058178cldr x4, [sp+104]
00581790ldr x5, [sp+352]
00581794ldr x4, [x5+3*x4]
00581798str x4, [sp+56]
0058179cldr x1, [sp+552]
005817a0ldr x2, [sp+552]
005817a4ldr x3, [sp+592]
005817a8ldr x0, [sp+552]
005817acbl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
005817b0ldr x1, [sp+552]
005817b4ldr x2, [sp+552]
005817b8ldr x3, [sp+592]
005817bcldr x0, [sp+552]
005817c0bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
005817c4ldr x1, [sp+552]
005817c8ldr x2, [sp+552]
005817ccldr x3, [sp+592]
005817d0ldr x0, [sp+552]
005817d4bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
005817d8ldr x1, [sp+552]
005817dcldr x2, [sp+552]
005817e0ldr x3, [sp+592]
005817e4ldr x0, [sp+552]
005817e8bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
005817ecldrb w4, [sp+47]
005817f0ldr x5, [sp+56]
005817f4tbz x5, 63, 0x5817fc
005817f8b 0x581904
005817fc
005817fcloc_5817fc:
005817fclsrv x4, x4, x5
00581800subs xzr, x5, 64
00581804csel x4, x4, xzr, lo
00581808and x4, x4, 15
0058180cstr x4, [sp+48]
00581810str xzr, [sp+88]
00581814orr x4, xzr, 15
00581818str x4, [sp+80]
0058181cb 0x581834
00581820
00581820loc_581820:
00581820b 0x581824
00581824
00581824loc_581824:
00581824ldr x6, [sp+136]
00581828add x6, x6, 1
0058182cstr x6, [sp+136]
00581830b 0x5816f0
00581834
00581834loc_581834:
00581834ldr x5, [sp+80]
00581838ldr x6, [sp+88]
0058183csubs xzr, x5, x6
00581840b.gt 0x581848
00581844b 0x5818a0
00581848
00581848loc_581848:
00581848ldr x2, [sp+88]
0058184cstr x2, [sp+64]
00581850ldr x0, [sp+48]
00581854add x1, x2, 1
00581858bl crypto/internal/fips140/bigmod.ctEq
0058185cstr x0, [sp+152]
00581860ldr x0, [sp+64]
00581864subs xzr, x0, 15
00581868b.lo 0x581870
0058186cb 0x5818fc
00581870
00581870loc_581870:
00581870add x3, sp, 176
00581874ldr x2, [x3+3*x0]
00581878str x2, [sp+296]
0058187cldr x1, [sp+152]
00581880ldr x0, [sp+168]
00581884bl crypto/internal/fips140/bigmod.(*Nat).assign
00581888b 0x58188c
0058188c
0058188cloc_58188c:
0058188cldr x5, [sp+88]
00581890add x5, x5, 1
00581894str x5, [sp+88]
00581898orr x4, xzr, 15
0058189cb 0x581834
005818a0
005818a0loc_5818a0:
005818a0ldr x1, [sp+552]
005818a4ldr x2, [sp+168]
005818a8ldr x3, [sp+592]
005818acldr x0, [sp+168]
005818b0bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
005818b4ldr x0, [sp+48]
005818b8mov x1, xzr
005818bcbl crypto/internal/fips140/bigmod.ctEq
005818c0str x0, [sp+152]
005818c4bl crypto/internal/fips140/bigmod.not
005818c8str x0, [sp+144]
005818ccldr x4, [sp+552]
005818d0ldr x2, [sp+168]
005818d4mov x1, x0
005818d8mov x0, x4
005818dcbl crypto/internal/fips140/bigmod.(*Nat).assign
005818e0b 0x5818e4
005818e4
005818e4loc_5818e4:
005818e4ldr x6, [sp+104]
005818e8add x6, x6, 1
005818ecstr x6, [sp+104]
005818f0orr x4, xzr, 2
005818f4orr x5, xzr, 4
005818f8b 0x581778
005818fc
005818fcloc_5818fc:
005818fcorr x1, xzr, 15
00581900bl runtime.panicIndex
00581904
00581904loc_581904:
00581904bl runtime.panicshift
00581908
00581908loc_581908:
00581908mov x0, xzr
0058190cbl runtime.panicIndex
00581910
00581910loc_581910:
00581910orr x1, xzr, 15
00581914bl runtime.panicIndex
00581918
00581918loc_581918:
00581918orr x1, xzr, 15
0058191cbl runtime.panicIndex
00581920
00581920loc_581920:
00581920adrp x0, 0x140000
00581924add x0, x0, 740
00581928str x0, [sp+520]
0058192cmovz x1, 35
00581930str x1, [sp+528]
00581934bl runtime.convTstring
00581938str x0, [sp+344]
0058193cmov x1, x0
00581940adrp x0, 0x74000
00581944add x0, x0, 2944
00581948bl runtime.gopanic
0058194chint
00581950
00581950loc_581950:
00581950stp x0, x1, [sp+8]
00581954stp x2, x3, [sp+24]
00581958stp x4, x5, [sp+40]
0058195cmov x3, x30
00581960bl runtime.morestack_noctxt.abi0
00581964ldp x0, x1, [sp+8]
00581968ldp x2, x3, [sp+24]
0058196cldp x4, x5, [sp+40]
00581970b 0x581470
00581974udf 0
00581978udf 0
0058197cudf 0
00581470
00581470crypto/internal/fips140/bigmod.(*Nat).Exp: ; void crypto/internal/fips140/bigmod.(*Nat).Exp(crypto/internal/fips140/bigmod.Nat * out, crypto/internal/fips140/bigmod.Nat * x, struct []uint8 e, crypto/internal/fips140/bigmod.Modulus * m)
00581470ldr x16, [x28+16]
00581474sub x17, sp, 416
00581478subs xzr, x17, x16
0058147cb.ls 0x581950
00581480sub x20, sp, 544
00581484stp x29, x30, [x20-8]
00581488add sp, x20, 0
0058148csub x29, sp, 8
00581490str x0, [sp+552]
00581494str x1, [sp+560]
00581498str x2, [sp+568]
0058149cstr x3, [sp+576]
005814a0str x4, [sp+584]
005814a4str x5, [sp+592]
005814a8str xzr, [sp+160]
005814acldr x2, [sp+592]
005814b0ldrsb x27, [x2]
005814b4ldrb w2, [x2+8]
005814b8tbnz w2, 0, 0x5814c0
005814bcb 0x581920
005814c0
005814c0loc_5814c0:
005814c0bl crypto/internal/fips140/bigmod.NewNat
005814c4str x0, [sp+512]
005814c8bl crypto/internal/fips140/bigmod.NewNat
005814ccstr x0, [sp+504]
005814d0bl crypto/internal/fips140/bigmod.NewNat
005814d4str x0, [sp+496]
005814d8bl crypto/internal/fips140/bigmod.NewNat
005814dcstr x0, [sp+488]
005814e0bl crypto/internal/fips140/bigmod.NewNat
005814e4str x0, [sp+480]
005814e8bl crypto/internal/fips140/bigmod.NewNat
005814ecstr x0, [sp+472]
005814f0bl crypto/internal/fips140/bigmod.NewNat
005814f4str x0, [sp+464]
005814f8bl crypto/internal/fips140/bigmod.NewNat
005814fcstr x0, [sp+456]
00581500bl crypto/internal/fips140/bigmod.NewNat
00581504str x0, [sp+448]
00581508bl crypto/internal/fips140/bigmod.NewNat
0058150cstr x0, [sp+440]
00581510bl crypto/internal/fips140/bigmod.NewNat
00581514str x0, [sp+432]
00581518bl crypto/internal/fips140/bigmod.NewNat
0058151cstr x0, [sp+424]
00581520bl crypto/internal/fips140/bigmod.NewNat
00581524str x0, [sp+416]
00581528bl crypto/internal/fips140/bigmod.NewNat
0058152cstr x0, [sp+408]
00581530bl crypto/internal/fips140/bigmod.NewNat
00581534str x0, [sp+400]
00581538add x21, sp, 176
0058153cadrp x20, 0x1a8000
00581540add x20, x20, 3232
00581544adr x27, 16
00581548stp x29, x27, [sp-24]
0058154csub x29, sp, 24
00581550bl fn_87ee8
00581554sub x29, sp, 8
00581558adrp x27, 0x1a8000
0058155cldr x0, [x27+3344]
00581560str x0, [sp+288]
00581564ldr x0, [sp+512]
00581568str x0, [sp+176]
0058156cldr x0, [sp+504]
00581570str x0, [sp+184]
00581574ldr x0, [sp+496]
00581578str x0, [sp+192]
0058157cldr x0, [sp+488]
00581580str x0, [sp+200]
00581584ldr x0, [sp+480]
00581588str x0, [sp+208]
0058158cldr x0, [sp+472]
00581590str x0, [sp+216]
00581594ldr x0, [sp+464]
00581598str x0, [sp+224]
0058159cldr x0, [sp+456]
005815a0str x0, [sp+232]
005815a4ldr x0, [sp+448]
005815a8str x0, [sp+240]
005815acldr x0, [sp+440]
005815b0str x0, [sp+248]
005815b4ldr x0, [sp+432]
005815b8str x0, [sp+256]
005815bcldr x0, [sp+424]
005815c0str x0, [sp+264]
005815c4ldr x0, [sp+416]
005815c8str x0, [sp+272]
005815ccldr x0, [sp+408]
005815d0str x0, [sp+280]
005815d4ldr x0, [sp+400]
005815d8str x0, [sp+288]
005815dcldr x0, [sp+176]
005815e0str x0, [sp+336]
005815e4ldr x1, [sp+560]
005815e8bl crypto/internal/fips140/bigmod.(*Nat).set
005815ecstr x0, [sp+400]
005815f0ldr x1, [sp+592]
005815f4bl crypto/internal/fips140/bigmod.(*Nat).montgomeryRepresentation
005815f8orr x0, xzr, 1
005815fcstr x0, [sp+72]
00581600b 0x581604
00581604
00581604loc_581604:
00581604ldr x4, [sp+72]
00581608subs xzr, x4, 15
0058160cb.lt 0x581614
00581610b 0x58167c
00581614
00581614loc_581614:
00581614ldr x0, [sp+72]
00581618subs xzr, x0, 15
0058161cb.lo 0x581624
00581620b 0x581918
00581624
00581624loc_581624:
00581624add x4, sp, 176
00581628ldr x4, [x4+3*x0]
0058162cstr x4, [sp+328]
00581630ldr x4, [sp+72]
00581634sub x0, x4, 1
00581638subs xzr, x0, 15
0058163cb.lo 0x581644
00581640b 0x581910
00581644
00581644loc_581644:
00581644add x4, sp, 176
00581648ldr x4, [x4+3*x0]
0058164cstr x4, [sp+320]
00581650ldr x2, [sp+176]
00581654str x2, [sp+312]
00581658ldr x3, [sp+592]
0058165cldr x0, [sp+328]
00581660ldr x1, [sp+320]
00581664bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
00581668b 0x58166c
0058166c
0058166cloc_58166c:
0058166cldr x4, [sp+72]
00581670add x4, x4, 1
00581674str x4, [sp+72]
00581678b 0x581604
0058167c
0058167cloc_58167c:
0058167cldr x1, [sp+592]
00581680ldr x0, [sp+552]
00581684bl crypto/internal/fips140/bigmod.(*Nat).resetFor
00581688ldr x2, [sp+552]
0058168cldrsb x27, [x2]
00581690ldr x1, [x2+8]
00581694ldr x2, [x2]
00581698subs xzr, x1, 0
0058169cb.hi 0x5816a4
005816a0b 0x581908
005816a4
005816a4loc_5816a4:
005816a4orr x3, xzr, 1
005816a8str x3, [x2]
005816acldr x1, [sp+592]
005816b0ldr x0, [sp+552]
005816b4bl crypto/internal/fips140/bigmod.(*Nat).montgomeryRepresentation
005816b8bl crypto/internal/fips140/bigmod.NewNat
005816bcstr x0, [sp+400]
005816c0ldr x1, [sp+592]
005816c4bl crypto/internal/fips140/bigmod.(*Nat).ExpandFor
005816c8str x0, [sp+168]
005816ccldr x2, [sp+576]
005816d0ldr x3, [sp+568]
005816d4ldr x4, [sp+584]
005816d8str x3, [sp+376]
005816dcstr x2, [sp+384]
005816e0str x4, [sp+392]
005816e4str xzr, [sp+136]
005816e8str x2, [sp+128]
005816ecb 0x5816f0
005816f0
005816f0loc_5816f0:
005816f0ldr x4, [sp+128]
005816f4ldr x5, [sp+136]
005816f8subs xzr, x4, x5
005816fcb.gt 0x581704
00581700b 0x581758
00581704
00581704loc_581704:
00581704ldr x4, [sp+136]
00581708ldr x5, [sp+376]
0058170cldrb w4, [x5+x4]
00581710strb w4, [sp+47]
00581714stp xzr, xzr, [sp+112]
00581718add x4, sp, 112
0058171cstr x4, [sp+304]
00581720ldrsb x27, [x4]
00581724orr x5, xzr, 4
00581728str x5, [x4]
0058172cldrsb x27, [x4]
00581730str xzr, [x4+8]
00581734ldrsb x27, [x4]
00581738b 0x58173c
0058173c
0058173cloc_58173c:
0058173cstr x4, [sp+352]
00581740orr x4, xzr, 2
00581744str x4, [sp+360]
00581748str x4, [sp+368]
0058174cstr xzr, [sp+104]
00581750str x4, [sp+96]
00581754b 0x581778
00581758
00581758loc_581758:
00581758ldr x1, [sp+592]
0058175cldr x0, [sp+552]
00581760bl crypto/internal/fips140/bigmod.(*Nat).montgomeryReduction
00581764str x0, [sp+400]
00581768str x0, [sp+160]
0058176cldp x29, x30, [sp-8]
00581770add sp, sp, 544
00581774ret x30
00581778
00581778loc_581778:
00581778ldr x6, [sp+96]
0058177cldr x7, [sp+104]
00581780subs xzr, x6, x7
00581784b.gt 0x58178c
00581788b 0x581820
0058178c
0058178cloc_58178c:
0058178cldr x4, [sp+104]
00581790ldr x5, [sp+352]
00581794ldr x4, [x5+3*x4]
00581798str x4, [sp+56]
0058179cldr x1, [sp+552]
005817a0ldr x2, [sp+552]
005817a4ldr x3, [sp+592]
005817a8ldr x0, [sp+552]
005817acbl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
005817b0ldr x1, [sp+552]
005817b4ldr x2, [sp+552]
005817b8ldr x3, [sp+592]
005817bcldr x0, [sp+552]
005817c0bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
005817c4ldr x1, [sp+552]
005817c8ldr x2, [sp+552]
005817ccldr x3, [sp+592]
005817d0ldr x0, [sp+552]
005817d4bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
005817d8ldr x1, [sp+552]
005817dcldr x2, [sp+552]
005817e0ldr x3, [sp+592]
005817e4ldr x0, [sp+552]
005817e8bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
005817ecldrb w4, [sp+47]
005817f0ldr x5, [sp+56]
005817f4tbz x5, 63, 0x5817fc
005817f8b 0x581904
005817fc
005817fcloc_5817fc:
005817fclsrv x4, x4, x5
00581800subs xzr, x5, 64
00581804csel x4, x4, xzr, lo
00581808and x4, x4, 15
0058180cstr x4, [sp+48]
00581810str xzr, [sp+88]
00581814orr x4, xzr, 15
00581818str x4, [sp+80]
0058181cb 0x581834
00581820
00581820loc_581820:
00581820b 0x581824
00581824
00581824loc_581824:
00581824ldr x6, [sp+136]
00581828add x6, x6, 1
0058182cstr x6, [sp+136]
00581830b 0x5816f0
00581834
00581834loc_581834:
00581834ldr x5, [sp+80]
00581838ldr x6, [sp+88]
0058183csubs xzr, x5, x6
00581840b.gt 0x581848
00581844b 0x5818a0
00581848
00581848loc_581848:
00581848ldr x2, [sp+88]
0058184cstr x2, [sp+64]
00581850ldr x0, [sp+48]
00581854add x1, x2, 1
00581858bl crypto/internal/fips140/bigmod.ctEq
0058185cstr x0, [sp+152]
00581860ldr x0, [sp+64]
00581864subs xzr, x0, 15
00581868b.lo 0x581870
0058186cb 0x5818fc
00581870
00581870loc_581870:
00581870add x3, sp, 176
00581874ldr x2, [x3+3*x0]
00581878str x2, [sp+296]
0058187cldr x1, [sp+152]
00581880ldr x0, [sp+168]
00581884bl crypto/internal/fips140/bigmod.(*Nat).assign
00581888b 0x58188c
0058188c
0058188cloc_58188c:
0058188cldr x5, [sp+88]
00581890add x5, x5, 1
00581894str x5, [sp+88]
00581898orr x4, xzr, 15
0058189cb 0x581834
005818a0
005818a0loc_5818a0:
005818a0ldr x1, [sp+552]
005818a4ldr x2, [sp+168]
005818a8ldr x3, [sp+592]
005818acldr x0, [sp+168]
005818b0bl crypto/internal/fips140/bigmod.(*Nat).montgomeryMul
005818b4ldr x0, [sp+48]
005818b8mov x1, xzr
005818bcbl crypto/internal/fips140/bigmod.ctEq
005818c0str x0, [sp+152]
005818c4bl crypto/internal/fips140/bigmod.not
005818c8str x0, [sp+144]
005818ccldr x4, [sp+552]
005818d0ldr x2, [sp+168]
005818d4mov x1, x0
005818d8mov x0, x4
005818dcbl crypto/internal/fips140/bigmod.(*Nat).assign
005818e0b 0x5818e4
005818e4
005818e4loc_5818e4:
005818e4ldr x6, [sp+104]
005818e8add x6, x6, 1
005818ecstr x6, [sp+104]
005818f0orr x4, xzr, 2
005818f4orr x5, xzr, 4
005818f8b 0x581778
005818fc
005818fcloc_5818fc:
005818fcorr x1, xzr, 15
00581900bl runtime.panicIndex
00581904
00581904loc_581904:
00581904bl runtime.panicshift
00581908
00581908loc_581908:
00581908mov x0, xzr
0058190cbl runtime.panicIndex
00581910
00581910loc_581910:
00581910orr x1, xzr, 15
00581914bl runtime.panicIndex
00581918
00581918loc_581918:
00581918orr x1, xzr, 15
0058191cbl runtime.panicIndex
00581920
00581920loc_581920:
00581920adrp x0, 0x140000
00581924add x0, x0, 740
00581928str x0, [sp+520]
0058192cmovz x1, 35
00581930str x1, [sp+528]
00581934bl runtime.convTstring
00581938str x0, [sp+344]
0058193cmov x1, x0
00581940adrp x0, 0x74000
00581944add x0, x0, 2944
00581948bl runtime.gopanic
0058194chint
00581950
00581950loc_581950:
00581950stp x0, x1, [sp+8]
00581954stp x2, x3, [sp+24]
00581958stp x4, x5, [sp+40]
0058195cmov x3, x30
00581960bl runtime.morestack_noctxt.abi0
00581964ldp x0, x1, [sp+8]
00581968ldp x2, x3, [sp+24]
0058196cldp x4, x5, [sp+40]
00581970b 0x581470
00581974udf 0
00581978udf 0
0058197cudf 0
00581470
Loading..