File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
00284b20
00284b20math/big.(*Int).Abs: ; void math/big.(*Int).Abs(math/big.Int * z, math/big.Int * x)
00284b20ldr x16, [x28+16]
00284b24subs xzr, sp, x16
00284b28b.ls 0x284b70
00284b2cstr x30, [sp-48]!
00284b30stur x29, [sp-8]
00284b34sub x29, sp, 8
00284b38str x0, [sp+56]
00284b3cstr x1, [sp+64]
00284b40str xzr, [sp+32]
00284b44ldr x1, [sp+64]
00284b48ldr x0, [sp+56]
00284b4cbl math/big.(*Int).Set
00284b50ldr x2, [sp+56]
00284b54ldrsb x27, [x2]
00284b58strb wzr, [x2]
00284b5cldr x0, [sp+56]
00284b60str x0, [sp+32]
00284b64ldur x29, [sp-8]
00284b68ldr x30, [sp], 48
00284b6cret x30
00284b70
00284b70loc_284b70:
00284b70stp x0, x1, [sp+8]
00284b74mov x3, x30
00284b78bl runtime.morestack_noctxt.abi0
00284b7cldp x0, x1, [sp+8]
00284b80b 0x284b20
00284b84udf 0
00284b88udf 0
00284b8cudf 0
00284b20
00284b20math/big.(*Int).Abs: ; void math/big.(*Int).Abs(math/big.Int * z, math/big.Int * x)
00284b20ldr x16, [x28+16]
00284b24subs xzr, sp, x16
00284b28b.ls 0x284b70
00284b2cstr x30, [sp-48]!
00284b30stur x29, [sp-8]
00284b34sub x29, sp, 8
00284b38str x0, [sp+56]
00284b3cstr x1, [sp+64]
00284b40str xzr, [sp+32]
00284b44ldr x1, [sp+64]
00284b48ldr x0, [sp+56]
00284b4cbl math/big.(*Int).Set
00284b50ldr x2, [sp+56]
00284b54ldrsb x27, [x2]
00284b58strb wzr, [x2]
00284b5cldr x0, [sp+56]
00284b60str x0, [sp+32]
00284b64ldur x29, [sp-8]
00284b68ldr x30, [sp], 48
00284b6cret x30
00284b70
00284b70loc_284b70:
00284b70stp x0, x1, [sp+8]
00284b74mov x3, x30
00284b78bl runtime.morestack_noctxt.abi0
00284b7cldp x0, x1, [sp+8]
00284b80b 0x284b20
00284b84udf 0
00284b88udf 0
00284b8cudf 0
00284b20
00284b90
00284b90math/big.(*Int).Neg: ; void math/big.(*Int).Neg(math/big.Int * z, math/big.Int * x)
00284b90ldr x16, [x28+16]
00284b94subs xzr, sp, x16
00284b98b.ls 0x284c24
00284b9cstr x30, [sp-64]!
00284ba0stur x29, [sp-8]
00284ba4sub x29, sp, 8
00284ba8str x0, [sp+72]
00284bacstr x1, [sp+80]
00284bb0str xzr, [sp+48]
00284bb4ldr x1, [sp+80]
00284bb8ldr x0, [sp+72]
00284bbcbl math/big.(*Int).Set
00284bc0ldr x2, [sp+72]
00284bc4ldrsb x27, [x2]
00284bc8ldr x2, [x2+16]
00284bccstr x2, [sp+40]
00284bd0subs xzr, x2, 0
00284bd4cset x3, ne
00284bd8strb w3, [sp+39]
00284bdccbnz x2, 0x284be4
00284be0b 0x284bfc
00284be4
00284be4loc_284be4:
00284be4ldr x1, [sp+72]
00284be8ldrsb x27, [x1]
00284becldrb w1, [x1]
00284bf0eor x1, x1, 1
00284bf4strb w1, [sp+39]
00284bf8b 0x284c00
00284bfc
00284bfcloc_284bfc:
00284bfcb 0x284c00
00284c00
00284c00loc_284c00:
00284c00ldr x1, [sp+72]
00284c04ldrsb x27, [x1]
00284c08ldrb w2, [sp+39]
00284c0cstrb w2, [x1]
00284c10ldr x0, [sp+72]
00284c14str x0, [sp+48]
00284c18ldur x29, [sp-8]
00284c1cldr x30, [sp], 64
00284c20ret x30
00284c24
00284c24loc_284c24:
00284c24stp x0, x1, [sp+8]
00284c28mov x3, x30
00284c2cbl runtime.morestack_noctxt.abi0
00284c30ldp x0, x1, [sp+8]
00284c34b 0x284b90
00284c38udf 0
00284c3cudf 0
00284b90
00284b90math/big.(*Int).Neg: ; void math/big.(*Int).Neg(math/big.Int * z, math/big.Int * x)
00284b90ldr x16, [x28+16]
00284b94subs xzr, sp, x16
00284b98b.ls 0x284c24
00284b9cstr x30, [sp-64]!
00284ba0stur x29, [sp-8]
00284ba4sub x29, sp, 8
00284ba8str x0, [sp+72]
00284bacstr x1, [sp+80]
00284bb0str xzr, [sp+48]
00284bb4ldr x1, [sp+80]
00284bb8ldr x0, [sp+72]
00284bbcbl math/big.(*Int).Set
00284bc0ldr x2, [sp+72]
00284bc4ldrsb x27, [x2]
00284bc8ldr x2, [x2+16]
00284bccstr x2, [sp+40]
00284bd0subs xzr, x2, 0
00284bd4cset x3, ne
00284bd8strb w3, [sp+39]
00284bdccbnz x2, 0x284be4
00284be0b 0x284bfc
00284be4
00284be4loc_284be4:
00284be4ldr x1, [sp+72]
00284be8ldrsb x27, [x1]
00284becldrb w1, [x1]
00284bf0eor x1, x1, 1
00284bf4strb w1, [sp+39]
00284bf8b 0x284c00
00284bfc
00284bfcloc_284bfc:
00284bfcb 0x284c00
00284c00
00284c00loc_284c00:
00284c00ldr x1, [sp+72]
00284c04ldrsb x27, [x1]
00284c08ldrb w2, [sp+39]
00284c0cstrb w2, [x1]
00284c10ldr x0, [sp+72]
00284c14str x0, [sp+48]
00284c18ldur x29, [sp-8]
00284c1cldr x30, [sp], 64
00284c20ret x30
00284c24
00284c24loc_284c24:
00284c24stp x0, x1, [sp+8]
00284c28mov x3, x30
00284c2cbl runtime.morestack_noctxt.abi0
00284c30ldp x0, x1, [sp+8]
00284c34b 0x284b90
00284c38udf 0
00284c3cudf 0
00284b90
00284c40
00284c40math/big.(*Int).Add: ; void math/big.(*Int).Add(math/big.Int * z, math/big.Int * x, math/big.Int * y)
00284c40ldr x16, [x28+16]
00284c44sub x17, sp, 272
00284c48subs xzr, x17, x16
00284c4cb.ls 0x284fc4
00284c50sub x20, sp, 400
00284c54stp x29, x30, [x20-8]
00284c58add sp, x20, 0
00284c5csub x29, sp, 8
00284c60str x0, [sp+408]
00284c64str x1, [sp+416]
00284c68str x2, [sp+424]
00284c6cstr xzr, [sp+96]
00284c70ldr x9, [sp+416]
00284c74ldrsb x27, [x9]
00284c78ldrb w9, [x9]
00284c7cstrb w9, [sp+86]
00284c80ldr x9, [sp+416]
00284c84ldrsb x27, [x9]
00284c88ldrb w9, [x9]
00284c8cldr x10, [sp+424]
00284c90ldrsb x27, [x10]
00284c94ldrb w10, [x10]
00284c98eor x9, x9, x10
00284c9ceor x9, x9, 1
00284ca0tbnz w9, 0, 0x284ca8
00284ca4b 0x284d70
00284ca8
00284ca8loc_284ca8:
00284ca8ldr x9, [sp+408]
00284cacldrsb x27, [x9]
00284cb0ldr x10, [x9+8]
00284cb4ldr x11, [x9+16]
00284cb8ldr x9, [x9+24]
00284cbcstr x10, [sp+128]
00284cc0str x11, [sp+136]
00284cc4str x9, [sp+144]
00284cc8ldr x9, [sp+416]
00284cccldrsb x27, [x9]
00284cd0ldr x10, [x9+8]
00284cd4ldr x11, [x9+16]
00284cd8ldr x9, [x9+24]
00284cdcstr x10, [sp+104]
00284ce0str x11, [sp+112]
00284ce4str x9, [sp+120]
00284ce8ldr x9, [sp+424]
00284cecldrsb x27, [x9]
00284cf0ldr x6, [x9+8]
00284cf4ldr x7, [x9+16]
00284cf8ldr x8, [x9+24]
00284cfcstr x6, [sp+368]
00284d00str x7, [sp+376]
00284d04str x8, [sp+384]
00284d08ldr x3, [sp+104]
00284d0cldr x4, [sp+112]
00284d10ldr x5, [sp+120]
00284d14ldr x0, [sp+128]
00284d18ldr x1, [sp+136]
00284d1cldr x2, [sp+144]
00284d20bl math/big.nat.add
00284d24str x0, [sp+152]
00284d28str x1, [sp+160]
00284d2cstr x2, [sp+168]
00284d30ldr x9, [sp+408]
00284d34ldrsb x27, [x9]
00284d38str x1, [x9+16]
00284d3cstr x2, [x9+24]
00284d40adrp x27, 0x7c7000
00284d44ldr w10, [x27+3056]
00284d48cbz w10, 0x284d50
00284d4cb 0x284d54
00284d50
00284d50loc_284d50:
00284d50b 0x284d68
00284d54
00284d54loc_284d54:
00284d54bl runtime.gcWriteBarrier2
00284d58str x0, [x25]
00284d5cldr x1, [x9+8]
00284d60str x1, [x25+8]
00284d64b 0x284d68
00284d68
00284d68loc_284d68:
00284d68str x0, [x9+8]
00284d6cb 0x284f6c
00284d70
00284d70loc_284d70:
00284d70ldr x6, [sp+416]
00284d74ldrsb x27, [x6]
00284d78ldr x7, [x6+8]
00284d7cldr x8, [x6+16]
00284d80ldr x6, [x6+24]
00284d84str x7, [sp+344]
00284d88str x8, [sp+352]
00284d8cstr x6, [sp+360]
00284d90ldr x6, [sp+424]
00284d94ldrsb x27, [x6]
00284d98ldr x3, [x6+8]
00284d9cldr x4, [x6+16]
00284da0ldr x5, [x6+24]
00284da4str x3, [sp+320]
00284da8str x4, [sp+328]
00284dacstr x5, [sp+336]
00284db0ldr x0, [sp+344]
00284db4ldr x1, [sp+352]
00284db8ldr x2, [sp+360]
00284dbcbl math/big.nat.cmp
00284dc0str x0, [sp+88]
00284dc4tbz x0, 63, 0x284dcc
00284dc8b 0x284e94
00284dcc
00284dccloc_284dcc:
00284dccldr x9, [sp+408]
00284dd0ldrsb x27, [x9]
00284dd4ldr x10, [x9+8]
00284dd8ldr x11, [x9+16]
00284ddcldr x9, [x9+24]
00284de0str x10, [sp+296]
00284de4str x11, [sp+304]
00284de8str x9, [sp+312]
00284decldr x9, [sp+416]
00284df0ldrsb x27, [x9]
00284df4ldr x10, [x9+8]
00284df8ldr x11, [x9+16]
00284dfcldr x9, [x9+24]
00284e00str x10, [sp+272]
00284e04str x11, [sp+280]
00284e08str x9, [sp+288]
00284e0cldr x9, [sp+424]
00284e10ldrsb x27, [x9]
00284e14ldr x6, [x9+8]
00284e18ldr x7, [x9+16]
00284e1cldr x8, [x9+24]
00284e20str x6, [sp+248]
00284e24str x7, [sp+256]
00284e28str x8, [sp+264]
00284e2cldr x0, [sp+296]
00284e30ldr x1, [sp+304]
00284e34ldr x2, [sp+312]
00284e38ldr x3, [sp+272]
00284e3cldr x4, [sp+280]
00284e40ldr x5, [sp+288]
00284e44bl math/big.nat.sub
00284e48str x0, [sp+152]
00284e4cstr x1, [sp+160]
00284e50str x2, [sp+168]
00284e54ldr x9, [sp+408]
00284e58ldrsb x27, [x9]
00284e5cstr x1, [x9+16]
00284e60str x2, [x9+24]
00284e64adrp x27, 0x7c7000
00284e68ldr w10, [x27+3056]
00284e6ccbz w10, 0x284e74
00284e70b 0x284e78
00284e74
00284e74loc_284e74:
00284e74b 0x284e8c
00284e78
00284e78loc_284e78:
00284e78bl runtime.gcWriteBarrier2
00284e7cstr x0, [x25]
00284e80ldr x1, [x9+8]
00284e84str x1, [x25+8]
00284e88b 0x284e8c
00284e8c
00284e8cloc_284e8c:
00284e8cstr x0, [x9+8]
00284e90b 0x284f68
00284e94
00284e94loc_284e94:
00284e94ldrb w9, [sp+86]
00284e98eor x9, x9, 1
00284e9cstrb w9, [sp+86]
00284ea0ldr x9, [sp+408]
00284ea4ldrsb x27, [x9]
00284ea8ldr x10, [x9+8]
00284eacldr x11, [x9+16]
00284eb0ldr x9, [x9+24]
00284eb4str x10, [sp+224]
00284eb8str x11, [sp+232]
00284ebcstr x9, [sp+240]
00284ec0ldr x9, [sp+424]
00284ec4ldrsb x27, [x9]
00284ec8ldr x10, [x9+8]
00284eccldr x11, [x9+16]
00284ed0ldr x9, [x9+24]
00284ed4str x10, [sp+200]
00284ed8str x11, [sp+208]
00284edcstr x9, [sp+216]
00284ee0ldr x9, [sp+416]
00284ee4ldrsb x27, [x9]
00284ee8ldr x6, [x9+8]
00284eecldr x7, [x9+16]
00284ef0ldr x8, [x9+24]
00284ef4str x6, [sp+176]
00284ef8str x7, [sp+184]
00284efcstr x8, [sp+192]
00284f00ldr x0, [sp+224]
00284f04ldr x1, [sp+232]
00284f08ldr x2, [sp+240]
00284f0cldr x3, [sp+200]
00284f10ldr x4, [sp+208]
00284f14ldr x5, [sp+216]
00284f18bl math/big.nat.sub
00284f1cstr x0, [sp+152]
00284f20str x1, [sp+160]
00284f24str x2, [sp+168]
00284f28ldr x9, [sp+408]
00284f2cldrsb x27, [x9]
00284f30str x1, [x9+16]
00284f34str x2, [x9+24]
00284f38adrp x27, 0x7c7000
00284f3cldr w10, [x27+3056]
00284f40cbz w10, 0x284f48
00284f44b 0x284f4c
00284f48
00284f48loc_284f48:
00284f48b 0x284f60
00284f4c
00284f4cloc_284f4c:
00284f4cbl runtime.gcWriteBarrier2
00284f50str x0, [x25]
00284f54ldr x1, [x9+8]
00284f58str x1, [x25+8]
00284f5cb 0x284f60
00284f60
00284f60loc_284f60:
00284f60str x0, [x9+8]
00284f64b 0x284f68
00284f68
00284f68loc_284f68:
00284f68b 0x284f6c
00284f6c
00284f6cloc_284f6c:
00284f6cldr x1, [sp+408]
00284f70ldrsb x27, [x1]
00284f74ldr x1, [x1+16]
00284f78str x1, [sp+88]
00284f7csubs xzr, x1, 0
00284f80cset x2, ne
00284f84strb w2, [sp+87]
00284f88cbnz x1, 0x284f90
00284f8cb 0x284f9c
00284f90
00284f90loc_284f90:
00284f90ldrb w1, [sp+86]
00284f94strb w1, [sp+87]
00284f98b 0x284fa0
00284f9c
00284f9cloc_284f9c:
00284f9cb 0x284fa0
00284fa0
00284fa0loc_284fa0:
00284fa0ldr x1, [sp+408]
00284fa4ldrsb x27, [x1]
00284fa8ldrb w2, [sp+87]
00284facstrb w2, [x1]
00284fb0ldr x0, [sp+408]
00284fb4str x0, [sp+96]
00284fb8ldp x29, x30, [sp-8]
00284fbcadd sp, sp, 400
00284fc0ret x30
00284fc4
00284fc4loc_284fc4:
00284fc4stp x0, x1, [sp+8]
00284fc8str x2, [sp+24]
00284fccmov x3, x30
00284fd0bl runtime.morestack_noctxt.abi0
00284fd4ldp x0, x1, [sp+8]
00284fd8ldr x2, [sp+24]
00284fdcb 0x284c40
00284c40
00284c40math/big.(*Int).Add: ; void math/big.(*Int).Add(math/big.Int * z, math/big.Int * x, math/big.Int * y)
00284c40ldr x16, [x28+16]
00284c44sub x17, sp, 272
00284c48subs xzr, x17, x16
00284c4cb.ls 0x284fc4
00284c50sub x20, sp, 400
00284c54stp x29, x30, [x20-8]
00284c58add sp, x20, 0
00284c5csub x29, sp, 8
00284c60str x0, [sp+408]
00284c64str x1, [sp+416]
00284c68str x2, [sp+424]
00284c6cstr xzr, [sp+96]
00284c70ldr x9, [sp+416]
00284c74ldrsb x27, [x9]
00284c78ldrb w9, [x9]
00284c7cstrb w9, [sp+86]
00284c80ldr x9, [sp+416]
00284c84ldrsb x27, [x9]
00284c88ldrb w9, [x9]
00284c8cldr x10, [sp+424]
00284c90ldrsb x27, [x10]
00284c94ldrb w10, [x10]
00284c98eor x9, x9, x10
00284c9ceor x9, x9, 1
00284ca0tbnz w9, 0, 0x284ca8
00284ca4b 0x284d70
00284ca8
00284ca8loc_284ca8:
00284ca8ldr x9, [sp+408]
00284cacldrsb x27, [x9]
00284cb0ldr x10, [x9+8]
00284cb4ldr x11, [x9+16]
00284cb8ldr x9, [x9+24]
00284cbcstr x10, [sp+128]
00284cc0str x11, [sp+136]
00284cc4str x9, [sp+144]
00284cc8ldr x9, [sp+416]
00284cccldrsb x27, [x9]
00284cd0ldr x10, [x9+8]
00284cd4ldr x11, [x9+16]
00284cd8ldr x9, [x9+24]
00284cdcstr x10, [sp+104]
00284ce0str x11, [sp+112]
00284ce4str x9, [sp+120]
00284ce8ldr x9, [sp+424]
00284cecldrsb x27, [x9]
00284cf0ldr x6, [x9+8]
00284cf4ldr x7, [x9+16]
00284cf8ldr x8, [x9+24]
00284cfcstr x6, [sp+368]
00284d00str x7, [sp+376]
00284d04str x8, [sp+384]
00284d08ldr x3, [sp+104]
00284d0cldr x4, [sp+112]
00284d10ldr x5, [sp+120]
00284d14ldr x0, [sp+128]
00284d18ldr x1, [sp+136]
00284d1cldr x2, [sp+144]
00284d20bl math/big.nat.add
00284d24str x0, [sp+152]
00284d28str x1, [sp+160]
00284d2cstr x2, [sp+168]
00284d30ldr x9, [sp+408]
00284d34ldrsb x27, [x9]
00284d38str x1, [x9+16]
00284d3cstr x2, [x9+24]
00284d40adrp x27, 0x7c7000
00284d44ldr w10, [x27+3056]
00284d48cbz w10, 0x284d50
00284d4cb 0x284d54
00284d50
00284d50loc_284d50:
00284d50b 0x284d68
00284d54
00284d54loc_284d54:
00284d54bl runtime.gcWriteBarrier2
00284d58str x0, [x25]
00284d5cldr x1, [x9+8]
00284d60str x1, [x25+8]
00284d64b 0x284d68
00284d68
00284d68loc_284d68:
00284d68str x0, [x9+8]
00284d6cb 0x284f6c
00284d70
00284d70loc_284d70:
00284d70ldr x6, [sp+416]
00284d74ldrsb x27, [x6]
00284d78ldr x7, [x6+8]
00284d7cldr x8, [x6+16]
00284d80ldr x6, [x6+24]
00284d84str x7, [sp+344]
00284d88str x8, [sp+352]
00284d8cstr x6, [sp+360]
00284d90ldr x6, [sp+424]
00284d94ldrsb x27, [x6]
00284d98ldr x3, [x6+8]
00284d9cldr x4, [x6+16]
00284da0ldr x5, [x6+24]
00284da4str x3, [sp+320]
00284da8str x4, [sp+328]
00284dacstr x5, [sp+336]
00284db0ldr x0, [sp+344]
00284db4ldr x1, [sp+352]
00284db8ldr x2, [sp+360]
00284dbcbl math/big.nat.cmp
00284dc0str x0, [sp+88]
00284dc4tbz x0, 63, 0x284dcc
00284dc8b 0x284e94
00284dcc
00284dccloc_284dcc:
00284dccldr x9, [sp+408]
00284dd0ldrsb x27, [x9]
00284dd4ldr x10, [x9+8]
00284dd8ldr x11, [x9+16]
00284ddcldr x9, [x9+24]
00284de0str x10, [sp+296]
00284de4str x11, [sp+304]
00284de8str x9, [sp+312]
00284decldr x9, [sp+416]
00284df0ldrsb x27, [x9]
00284df4ldr x10, [x9+8]
00284df8ldr x11, [x9+16]
00284dfcldr x9, [x9+24]
00284e00str x10, [sp+272]
00284e04str x11, [sp+280]
00284e08str x9, [sp+288]
00284e0cldr x9, [sp+424]
00284e10ldrsb x27, [x9]
00284e14ldr x6, [x9+8]
00284e18ldr x7, [x9+16]
00284e1cldr x8, [x9+24]
00284e20str x6, [sp+248]
00284e24str x7, [sp+256]
00284e28str x8, [sp+264]
00284e2cldr x0, [sp+296]
00284e30ldr x1, [sp+304]
00284e34ldr x2, [sp+312]
00284e38ldr x3, [sp+272]
00284e3cldr x4, [sp+280]
00284e40ldr x5, [sp+288]
00284e44bl math/big.nat.sub
00284e48str x0, [sp+152]
00284e4cstr x1, [sp+160]
00284e50str x2, [sp+168]
00284e54ldr x9, [sp+408]
00284e58ldrsb x27, [x9]
00284e5cstr x1, [x9+16]
00284e60str x2, [x9+24]
00284e64adrp x27, 0x7c7000
00284e68ldr w10, [x27+3056]
00284e6ccbz w10, 0x284e74
00284e70b 0x284e78
00284e74
00284e74loc_284e74:
00284e74b 0x284e8c
00284e78
00284e78loc_284e78:
00284e78bl runtime.gcWriteBarrier2
00284e7cstr x0, [x25]
00284e80ldr x1, [x9+8]
00284e84str x1, [x25+8]
00284e88b 0x284e8c
00284e8c
00284e8cloc_284e8c:
00284e8cstr x0, [x9+8]
00284e90b 0x284f68
00284e94
00284e94loc_284e94:
00284e94ldrb w9, [sp+86]
00284e98eor x9, x9, 1
00284e9cstrb w9, [sp+86]
00284ea0ldr x9, [sp+408]
00284ea4ldrsb x27, [x9]
00284ea8ldr x10, [x9+8]
00284eacldr x11, [x9+16]
00284eb0ldr x9, [x9+24]
00284eb4str x10, [sp+224]
00284eb8str x11, [sp+232]
00284ebcstr x9, [sp+240]
00284ec0ldr x9, [sp+424]
00284ec4ldrsb x27, [x9]
00284ec8ldr x10, [x9+8]
00284eccldr x11, [x9+16]
00284ed0ldr x9, [x9+24]
00284ed4str x10, [sp+200]
00284ed8str x11, [sp+208]
00284edcstr x9, [sp+216]
00284ee0ldr x9, [sp+416]
00284ee4ldrsb x27, [x9]
00284ee8ldr x6, [x9+8]
00284eecldr x7, [x9+16]
00284ef0ldr x8, [x9+24]
00284ef4str x6, [sp+176]
00284ef8str x7, [sp+184]
00284efcstr x8, [sp+192]
00284f00ldr x0, [sp+224]
00284f04ldr x1, [sp+232]
00284f08ldr x2, [sp+240]
00284f0cldr x3, [sp+200]
00284f10ldr x4, [sp+208]
00284f14ldr x5, [sp+216]
00284f18bl math/big.nat.sub
00284f1cstr x0, [sp+152]
00284f20str x1, [sp+160]
00284f24str x2, [sp+168]
00284f28ldr x9, [sp+408]
00284f2cldrsb x27, [x9]
00284f30str x1, [x9+16]
00284f34str x2, [x9+24]
00284f38adrp x27, 0x7c7000
00284f3cldr w10, [x27+3056]
00284f40cbz w10, 0x284f48
00284f44b 0x284f4c
00284f48
00284f48loc_284f48:
00284f48b 0x284f60
00284f4c
00284f4cloc_284f4c:
00284f4cbl runtime.gcWriteBarrier2
00284f50str x0, [x25]
00284f54ldr x1, [x9+8]
00284f58str x1, [x25+8]
00284f5cb 0x284f60
00284f60
00284f60loc_284f60:
00284f60str x0, [x9+8]
00284f64b 0x284f68
00284f68
00284f68loc_284f68:
00284f68b 0x284f6c
00284f6c
00284f6cloc_284f6c:
00284f6cldr x1, [sp+408]
00284f70ldrsb x27, [x1]
00284f74ldr x1, [x1+16]
00284f78str x1, [sp+88]
00284f7csubs xzr, x1, 0
00284f80cset x2, ne
00284f84strb w2, [sp+87]
00284f88cbnz x1, 0x284f90
00284f8cb 0x284f9c
00284f90
00284f90loc_284f90:
00284f90ldrb w1, [sp+86]
00284f94strb w1, [sp+87]
00284f98b 0x284fa0
00284f9c
00284f9cloc_284f9c:
00284f9cb 0x284fa0
00284fa0
00284fa0loc_284fa0:
00284fa0ldr x1, [sp+408]
00284fa4ldrsb x27, [x1]
00284fa8ldrb w2, [sp+87]
00284facstrb w2, [x1]
00284fb0ldr x0, [sp+408]
00284fb4str x0, [sp+96]
00284fb8ldp x29, x30, [sp-8]
00284fbcadd sp, sp, 400
00284fc0ret x30
00284fc4
00284fc4loc_284fc4:
00284fc4stp x0, x1, [sp+8]
00284fc8str x2, [sp+24]
00284fccmov x3, x30
00284fd0bl runtime.morestack_noctxt.abi0
00284fd4ldp x0, x1, [sp+8]
00284fd8ldr x2, [sp+24]
00284fdcb 0x284c40
00284c40
00284fe0
00284fe0math/big.(*Int).Sub: ; void math/big.(*Int).Sub(math/big.Int * z, math/big.Int * x, math/big.Int * y)
00284fe0ldr x16, [x28+16]
00284fe4sub x17, sp, 272
00284fe8subs xzr, x17, x16
00284fecb.ls 0x285360
00284ff0sub x20, sp, 400
00284ff4stp x29, x30, [x20-8]
00284ff8add sp, x20, 0
00284ffcsub x29, sp, 8
00285000str x0, [sp+408]
00285004str x1, [sp+416]
00285008str x2, [sp+424]
0028500cstr xzr, [sp+96]
00285010ldr x9, [sp+416]
00285014ldrsb x27, [x9]
00285018ldrb w9, [x9]
0028501cstrb w9, [sp+86]
00285020ldr x9, [sp+416]
00285024ldrsb x27, [x9]
00285028ldrb w9, [x9]
0028502cldr x10, [sp+424]
00285030ldrsb x27, [x10]
00285034ldrb w10, [x10]
00285038eor x9, x9, x10
0028503ctbnz w9, 0, 0x285044
00285040b 0x28510c
00285044
00285044loc_285044:
00285044ldr x9, [sp+408]
00285048ldrsb x27, [x9]
0028504cldr x10, [x9+8]
00285050ldr x11, [x9+16]
00285054ldr x9, [x9+24]
00285058str x10, [sp+128]
0028505cstr x11, [sp+136]
00285060str x9, [sp+144]
00285064ldr x9, [sp+416]
00285068ldrsb x27, [x9]
0028506cldr x10, [x9+8]
00285070ldr x11, [x9+16]
00285074ldr x9, [x9+24]
00285078str x10, [sp+104]
0028507cstr x11, [sp+112]
00285080str x9, [sp+120]
00285084ldr x9, [sp+424]
00285088ldrsb x27, [x9]
0028508cldr x6, [x9+8]
00285090ldr x7, [x9+16]
00285094ldr x8, [x9+24]
00285098str x6, [sp+368]
0028509cstr x7, [sp+376]
002850a0str x8, [sp+384]
002850a4ldr x3, [sp+104]
002850a8ldr x4, [sp+112]
002850acldr x5, [sp+120]
002850b0ldr x0, [sp+128]
002850b4ldr x1, [sp+136]
002850b8ldr x2, [sp+144]
002850bcbl math/big.nat.add
002850c0str x0, [sp+152]
002850c4str x1, [sp+160]
002850c8str x2, [sp+168]
002850ccldr x9, [sp+408]
002850d0ldrsb x27, [x9]
002850d4str x1, [x9+16]
002850d8str x2, [x9+24]
002850dcadrp x27, 0x7c6000
002850e0ldr w10, [x27+3056]
002850e4cbz w10, 0x2850ec
002850e8b 0x2850f0
002850ec
002850ecloc_2850ec:
002850ecb 0x285104
002850f0
002850f0loc_2850f0:
002850f0bl runtime.gcWriteBarrier2
002850f4str x0, [x25]
002850f8ldr x1, [x9+8]
002850fcstr x1, [x25+8]
00285100b 0x285104
00285104
00285104loc_285104:
00285104str x0, [x9+8]
00285108b 0x285308
0028510c
0028510cloc_28510c:
0028510cldr x6, [sp+416]
00285110ldrsb x27, [x6]
00285114ldr x7, [x6+8]
00285118ldr x8, [x6+16]
0028511cldr x6, [x6+24]
00285120str x7, [sp+344]
00285124str x8, [sp+352]
00285128str x6, [sp+360]
0028512cldr x6, [sp+424]
00285130ldrsb x27, [x6]
00285134ldr x3, [x6+8]
00285138ldr x4, [x6+16]
0028513cldr x5, [x6+24]
00285140str x3, [sp+320]
00285144str x4, [sp+328]
00285148str x5, [sp+336]
0028514cldr x0, [sp+344]
00285150ldr x1, [sp+352]
00285154ldr x2, [sp+360]
00285158bl math/big.nat.cmp
0028515cstr x0, [sp+88]
00285160tbz x0, 63, 0x285168
00285164b 0x285230
00285168
00285168loc_285168:
00285168ldr x9, [sp+408]
0028516cldrsb x27, [x9]
00285170ldr x10, [x9+8]
00285174ldr x11, [x9+16]
00285178ldr x9, [x9+24]
0028517cstr x10, [sp+296]
00285180str x11, [sp+304]
00285184str x9, [sp+312]
00285188ldr x9, [sp+416]
0028518cldrsb x27, [x9]
00285190ldr x10, [x9+8]
00285194ldr x11, [x9+16]
00285198ldr x9, [x9+24]
0028519cstr x10, [sp+272]
002851a0str x11, [sp+280]
002851a4str x9, [sp+288]
002851a8ldr x9, [sp+424]
002851acldrsb x27, [x9]
002851b0ldr x6, [x9+8]
002851b4ldr x7, [x9+16]
002851b8ldr x8, [x9+24]
002851bcstr x6, [sp+248]
002851c0str x7, [sp+256]
002851c4str x8, [sp+264]
002851c8ldr x3, [sp+272]
002851ccldr x4, [sp+280]
002851d0ldr x5, [sp+288]
002851d4ldr x0, [sp+296]
002851d8ldr x1, [sp+304]
002851dcldr x2, [sp+312]
002851e0bl math/big.nat.sub
002851e4str x0, [sp+152]
002851e8str x1, [sp+160]
002851ecstr x2, [sp+168]
002851f0ldr x9, [sp+408]
002851f4ldrsb x27, [x9]
002851f8str x1, [x9+16]
002851fcstr x2, [x9+24]
00285200adrp x27, 0x7c6000
00285204ldr w10, [x27+3056]
00285208cbz w10, 0x285210
0028520cb 0x285214
00285210
00285210loc_285210:
00285210b 0x285228
00285214
00285214loc_285214:
00285214bl runtime.gcWriteBarrier2
00285218str x0, [x25]
0028521cldr x1, [x9+8]
00285220str x1, [x25+8]
00285224b 0x285228
00285228
00285228loc_285228:
00285228str x0, [x9+8]
0028522cb 0x285304
00285230
00285230loc_285230:
00285230ldrb w9, [sp+86]
00285234eor x9, x9, 1
00285238strb w9, [sp+86]
0028523cldr x9, [sp+408]
00285240ldrsb x27, [x9]
00285244ldr x10, [x9+8]
00285248ldr x11, [x9+16]
0028524cldr x9, [x9+24]
00285250str x10, [sp+224]
00285254str x11, [sp+232]
00285258str x9, [sp+240]
0028525cldr x9, [sp+424]
00285260ldrsb x27, [x9]
00285264ldr x10, [x9+8]
00285268ldr x11, [x9+16]
0028526cldr x9, [x9+24]
00285270str x10, [sp+200]
00285274str x11, [sp+208]
00285278str x9, [sp+216]
0028527cldr x9, [sp+416]
00285280ldrsb x27, [x9]
00285284ldr x6, [x9+8]
00285288ldr x7, [x9+16]
0028528cldr x8, [x9+24]
00285290str x6, [sp+176]
00285294str x7, [sp+184]
00285298str x8, [sp+192]
0028529cldr x0, [sp+224]
002852a0ldr x1, [sp+232]
002852a4ldr x2, [sp+240]
002852a8ldr x3, [sp+200]
002852acldr x4, [sp+208]
002852b0ldr x5, [sp+216]
002852b4bl math/big.nat.sub
002852b8str x0, [sp+152]
002852bcstr x1, [sp+160]
002852c0str x2, [sp+168]
002852c4ldr x9, [sp+408]
002852c8ldrsb x27, [x9]
002852ccstr x1, [x9+16]
002852d0str x2, [x9+24]
002852d4adrp x27, 0x7c6000
002852d8ldr w10, [x27+3056]
002852dccbz w10, 0x2852e4
002852e0b 0x2852e8
002852e4
002852e4loc_2852e4:
002852e4b 0x2852fc
002852e8
002852e8loc_2852e8:
002852e8bl runtime.gcWriteBarrier2
002852ecstr x0, [x25]
002852f0ldr x1, [x9+8]
002852f4str x1, [x25+8]
002852f8b 0x2852fc
002852fc
002852fcloc_2852fc:
002852fcstr x0, [x9+8]
00285300b 0x285304
00285304
00285304loc_285304:
00285304b 0x285308
00285308
00285308loc_285308:
00285308ldr x1, [sp+408]
0028530cldrsb x27, [x1]
00285310ldr x1, [x1+16]
00285314str x1, [sp+88]
00285318subs xzr, x1, 0
0028531ccset x2, ne
00285320strb w2, [sp+87]
00285324cbnz x1, 0x28532c
00285328b 0x285338
0028532c
0028532cloc_28532c:
0028532cldrb w1, [sp+86]
00285330strb w1, [sp+87]
00285334b 0x28533c
00285338
00285338loc_285338:
00285338b 0x28533c
0028533c
0028533cloc_28533c:
0028533cldr x1, [sp+408]
00285340ldrsb x27, [x1]
00285344ldrb w2, [sp+87]
00285348strb w2, [x1]
0028534cldr x0, [sp+408]
00285350str x0, [sp+96]
00285354ldp x29, x30, [sp-8]
00285358add sp, sp, 400
0028535cret x30
00285360
00285360loc_285360:
00285360stp x0, x1, [sp+8]
00285364str x2, [sp+24]
00285368mov x3, x30
0028536cbl runtime.morestack_noctxt.abi0
00285370ldp x0, x1, [sp+8]
00285374ldr x2, [sp+24]
00285378b 0x284fe0
0028537cudf 0
00284fe0
00284fe0math/big.(*Int).Sub: ; void math/big.(*Int).Sub(math/big.Int * z, math/big.Int * x, math/big.Int * y)
00284fe0ldr x16, [x28+16]
00284fe4sub x17, sp, 272
00284fe8subs xzr, x17, x16
00284fecb.ls 0x285360
00284ff0sub x20, sp, 400
00284ff4stp x29, x30, [x20-8]
00284ff8add sp, x20, 0
00284ffcsub x29, sp, 8
00285000str x0, [sp+408]
00285004str x1, [sp+416]
00285008str x2, [sp+424]
0028500cstr xzr, [sp+96]
00285010ldr x9, [sp+416]
00285014ldrsb x27, [x9]
00285018ldrb w9, [x9]
0028501cstrb w9, [sp+86]
00285020ldr x9, [sp+416]
00285024ldrsb x27, [x9]
00285028ldrb w9, [x9]
0028502cldr x10, [sp+424]
00285030ldrsb x27, [x10]
00285034ldrb w10, [x10]
00285038eor x9, x9, x10
0028503ctbnz w9, 0, 0x285044
00285040b 0x28510c
00285044
00285044loc_285044:
00285044ldr x9, [sp+408]
00285048ldrsb x27, [x9]
0028504cldr x10, [x9+8]
00285050ldr x11, [x9+16]
00285054ldr x9, [x9+24]
00285058str x10, [sp+128]
0028505cstr x11, [sp+136]
00285060str x9, [sp+144]
00285064ldr x9, [sp+416]
00285068ldrsb x27, [x9]
0028506cldr x10, [x9+8]
00285070ldr x11, [x9+16]
00285074ldr x9, [x9+24]
00285078str x10, [sp+104]
0028507cstr x11, [sp+112]
00285080str x9, [sp+120]
00285084ldr x9, [sp+424]
00285088ldrsb x27, [x9]
0028508cldr x6, [x9+8]
00285090ldr x7, [x9+16]
00285094ldr x8, [x9+24]
00285098str x6, [sp+368]
0028509cstr x7, [sp+376]
002850a0str x8, [sp+384]
002850a4ldr x3, [sp+104]
002850a8ldr x4, [sp+112]
002850acldr x5, [sp+120]
002850b0ldr x0, [sp+128]
002850b4ldr x1, [sp+136]
002850b8ldr x2, [sp+144]
002850bcbl math/big.nat.add
002850c0str x0, [sp+152]
002850c4str x1, [sp+160]
002850c8str x2, [sp+168]
002850ccldr x9, [sp+408]
002850d0ldrsb x27, [x9]
002850d4str x1, [x9+16]
002850d8str x2, [x9+24]
002850dcadrp x27, 0x7c6000
002850e0ldr w10, [x27+3056]
002850e4cbz w10, 0x2850ec
002850e8b 0x2850f0
002850ec
002850ecloc_2850ec:
002850ecb 0x285104
002850f0
002850f0loc_2850f0:
002850f0bl runtime.gcWriteBarrier2
002850f4str x0, [x25]
002850f8ldr x1, [x9+8]
002850fcstr x1, [x25+8]
00285100b 0x285104
00285104
00285104loc_285104:
00285104str x0, [x9+8]
00285108b 0x285308
0028510c
0028510cloc_28510c:
0028510cldr x6, [sp+416]
00285110ldrsb x27, [x6]
00285114ldr x7, [x6+8]
00285118ldr x8, [x6+16]
0028511cldr x6, [x6+24]
00285120str x7, [sp+344]
00285124str x8, [sp+352]
00285128str x6, [sp+360]
0028512cldr x6, [sp+424]
00285130ldrsb x27, [x6]
00285134ldr x3, [x6+8]
00285138ldr x4, [x6+16]
0028513cldr x5, [x6+24]
00285140str x3, [sp+320]
00285144str x4, [sp+328]
00285148str x5, [sp+336]
0028514cldr x0, [sp+344]
00285150ldr x1, [sp+352]
00285154ldr x2, [sp+360]
00285158bl math/big.nat.cmp
0028515cstr x0, [sp+88]
00285160tbz x0, 63, 0x285168
00285164b 0x285230
00285168
00285168loc_285168:
00285168ldr x9, [sp+408]
0028516cldrsb x27, [x9]
00285170ldr x10, [x9+8]
00285174ldr x11, [x9+16]
00285178ldr x9, [x9+24]
0028517cstr x10, [sp+296]
00285180str x11, [sp+304]
00285184str x9, [sp+312]
00285188ldr x9, [sp+416]
0028518cldrsb x27, [x9]
00285190ldr x10, [x9+8]
00285194ldr x11, [x9+16]
00285198ldr x9, [x9+24]
0028519cstr x10, [sp+272]
002851a0str x11, [sp+280]
002851a4str x9, [sp+288]
002851a8ldr x9, [sp+424]
002851acldrsb x27, [x9]
002851b0ldr x6, [x9+8]
002851b4ldr x7, [x9+16]
002851b8ldr x8, [x9+24]
002851bcstr x6, [sp+248]
002851c0str x7, [sp+256]
002851c4str x8, [sp+264]
002851c8ldr x3, [sp+272]
002851ccldr x4, [sp+280]
002851d0ldr x5, [sp+288]
002851d4ldr x0, [sp+296]
002851d8ldr x1, [sp+304]
002851dcldr x2, [sp+312]
002851e0bl math/big.nat.sub
002851e4str x0, [sp+152]
002851e8str x1, [sp+160]
002851ecstr x2, [sp+168]
002851f0ldr x9, [sp+408]
002851f4ldrsb x27, [x9]
002851f8str x1, [x9+16]
002851fcstr x2, [x9+24]
00285200adrp x27, 0x7c6000
00285204ldr w10, [x27+3056]
00285208cbz w10, 0x285210
0028520cb 0x285214
00285210
00285210loc_285210:
00285210b 0x285228
00285214
00285214loc_285214:
00285214bl runtime.gcWriteBarrier2
00285218str x0, [x25]
0028521cldr x1, [x9+8]
00285220str x1, [x25+8]
00285224b 0x285228
00285228
00285228loc_285228:
00285228str x0, [x9+8]
0028522cb 0x285304
00285230
00285230loc_285230:
00285230ldrb w9, [sp+86]
00285234eor x9, x9, 1
00285238strb w9, [sp+86]
0028523cldr x9, [sp+408]
00285240ldrsb x27, [x9]
00285244ldr x10, [x9+8]
00285248ldr x11, [x9+16]
0028524cldr x9, [x9+24]
00285250str x10, [sp+224]
00285254str x11, [sp+232]
00285258str x9, [sp+240]
0028525cldr x9, [sp+424]
00285260ldrsb x27, [x9]
00285264ldr x10, [x9+8]
00285268ldr x11, [x9+16]
0028526cldr x9, [x9+24]
00285270str x10, [sp+200]
00285274str x11, [sp+208]
00285278str x9, [sp+216]
0028527cldr x9, [sp+416]
00285280ldrsb x27, [x9]
00285284ldr x6, [x9+8]
00285288ldr x7, [x9+16]
0028528cldr x8, [x9+24]
00285290str x6, [sp+176]
00285294str x7, [sp+184]
00285298str x8, [sp+192]
0028529cldr x0, [sp+224]
002852a0ldr x1, [sp+232]
002852a4ldr x2, [sp+240]
002852a8ldr x3, [sp+200]
002852acldr x4, [sp+208]
002852b0ldr x5, [sp+216]
002852b4bl math/big.nat.sub
002852b8str x0, [sp+152]
002852bcstr x1, [sp+160]
002852c0str x2, [sp+168]
002852c4ldr x9, [sp+408]
002852c8ldrsb x27, [x9]
002852ccstr x1, [x9+16]
002852d0str x2, [x9+24]
002852d4adrp x27, 0x7c6000
002852d8ldr w10, [x27+3056]
002852dccbz w10, 0x2852e4
002852e0b 0x2852e8
002852e4
002852e4loc_2852e4:
002852e4b 0x2852fc
002852e8
002852e8loc_2852e8:
002852e8bl runtime.gcWriteBarrier2
002852ecstr x0, [x25]
002852f0ldr x1, [x9+8]
002852f4str x1, [x25+8]
002852f8b 0x2852fc
002852fc
002852fcloc_2852fc:
002852fcstr x0, [x9+8]
00285300b 0x285304
00285304
00285304loc_285304:
00285304b 0x285308
00285308
00285308loc_285308:
00285308ldr x1, [sp+408]
0028530cldrsb x27, [x1]
00285310ldr x1, [x1+16]
00285314str x1, [sp+88]
00285318subs xzr, x1, 0
0028531ccset x2, ne
00285320strb w2, [sp+87]
00285324cbnz x1, 0x28532c
00285328b 0x285338
0028532c
0028532cloc_28532c:
0028532cldrb w1, [sp+86]
00285330strb w1, [sp+87]
00285334b 0x28533c
00285338
00285338loc_285338:
00285338b 0x28533c
0028533c
0028533cloc_28533c:
0028533cldr x1, [sp+408]
00285340ldrsb x27, [x1]
00285344ldrb w2, [sp+87]
00285348strb w2, [x1]
0028534cldr x0, [sp+408]
00285350str x0, [sp+96]
00285354ldp x29, x30, [sp-8]
00285358add sp, sp, 400
0028535cret x30
00285360
00285360loc_285360:
00285360stp x0, x1, [sp+8]
00285364str x2, [sp+24]
00285368mov x3, x30
0028536cbl runtime.morestack_noctxt.abi0
00285370ldp x0, x1, [sp+8]
00285374ldr x2, [sp+24]
00285378b 0x284fe0
0028537cudf 0
00284fe0
00285380
00285380math/big.(*Int).Mul: ; void math/big.(*Int).Mul(math/big.Int * z, math/big.Int * x, math/big.Int * y)
00285380ldr x16, [x28+16]
00285384sub x17, sp, 128
00285388subs xzr, x17, x16
0028538cb.ls 0x2855b0
00285390sub x20, sp, 256
00285394stp x29, x30, [x20-8]
00285398add sp, x20, 0
0028539csub x29, sp, 8
002853a0str x0, [sp+264]
002853a4str x1, [sp+272]
002853a8str x2, [sp+280]
002853acstr xzr, [sp+96]
002853b0ldr x9, [sp+280]
002853b4ldr x10, [sp+272]
002853b8subs xzr, x9, x10
002853bcb.eq 0x2853c4
002853c0b 0x28547c
002853c4
002853c4loc_2853c4:
002853c4ldr x6, [sp+264]
002853c8ldrsb x27, [x6]
002853ccldr x7, [x6+8]
002853d0ldr x8, [x6+16]
002853d4ldr x6, [x6+24]
002853d8str x7, [sp+152]
002853dcstr x8, [sp+160]
002853e0str x6, [sp+168]
002853e4ldr x6, [sp+272]
002853e8ldrsb x27, [x6]
002853ecldr x3, [x6+8]
002853f0ldr x4, [x6+16]
002853f4ldr x5, [x6+24]
002853f8str x3, [sp+128]
002853fcstr x4, [sp+136]
00285400str x5, [sp+144]
00285404ldr x0, [sp+152]
00285408ldr x1, [sp+160]
0028540cldr x2, [sp+168]
00285410bl math/big.nat.sqr
00285414str x0, [sp+176]
00285418str x1, [sp+184]
0028541cstr x2, [sp+192]
00285420ldr x6, [sp+264]
00285424ldrsb x27, [x6]
00285428str x1, [x6+16]
0028542cstr x2, [x6+24]
00285430adrp x27, 0x7c6000
00285434ldr w7, [x27+3056]
00285438cbz w7, 0x285440
0028543cb 0x285444
00285440
00285440loc_285440:
00285440b 0x285458
00285444
00285444loc_285444:
00285444bl runtime.gcWriteBarrier2
00285448str x0, [x25]
0028544cldr x1, [x6+8]
00285450str x1, [x25+8]
00285454b 0x285458
00285458
00285458loc_285458:
00285458str x0, [x6+8]
0028545cldr x1, [sp+264]
00285460ldrsb x27, [x1]
00285464strb wzr, [x1]
00285468ldr x0, [sp+264]
0028546cstr x0, [sp+96]
00285470ldp x29, x30, [sp-8]
00285474add sp, sp, 256
00285478ret x30
0028547c
0028547cloc_28547c:
0028547cldr x9, [sp+264]
00285480ldrsb x27, [x9]
00285484ldr x10, [x9+8]
00285488ldr x11, [x9+16]
0028548cldr x9, [x9+24]
00285490str x10, [sp+104]
00285494str x11, [sp+112]
00285498str x9, [sp+120]
0028549cldr x9, [sp+272]
002854a0ldrsb x27, [x9]
002854a4ldr x10, [x9+8]
002854a8ldr x11, [x9+16]
002854acldr x9, [x9+24]
002854b0str x10, [sp+224]
002854b4str x11, [sp+232]
002854b8str x9, [sp+240]
002854bcldr x9, [sp+280]
002854c0ldrsb x27, [x9]
002854c4ldr x6, [x9+8]
002854c8ldr x7, [x9+16]
002854ccldr x8, [x9+24]
002854d0str x6, [sp+200]
002854d4str x7, [sp+208]
002854d8str x8, [sp+216]
002854dcldr x0, [sp+104]
002854e0ldr x1, [sp+112]
002854e4ldr x2, [sp+120]
002854e8ldr x3, [sp+224]
002854ecldr x4, [sp+232]
002854f0ldr x5, [sp+240]
002854f4bl math/big.nat.mul
002854f8str x0, [sp+176]
002854fcstr x1, [sp+184]
00285500str x2, [sp+192]
00285504ldr x9, [sp+264]
00285508ldrsb x27, [x9]
0028550cstr x1, [x9+16]
00285510str x2, [x9+24]
00285514adrp x27, 0x7c6000
00285518ldr w10, [x27+3056]
0028551ccbz w10, 0x285524
00285520b 0x285528
00285524
00285524loc_285524:
00285524b 0x28553c
00285528
00285528loc_285528:
00285528bl runtime.gcWriteBarrier2
0028552cstr x0, [x25]
00285530ldr x1, [x9+8]
00285534str x1, [x25+8]
00285538b 0x28553c
0028553c
0028553cloc_28553c:
0028553cstr x0, [x9+8]
00285540ldr x1, [sp+264]
00285544ldrsb x27, [x1]
00285548ldr x1, [x1+16]
0028554cstr x1, [sp+88]
00285550subs xzr, x1, 0
00285554cset x2, ne
00285558strb w2, [sp+87]
0028555ccbnz x1, 0x285564
00285560b 0x285588
00285564
00285564loc_285564:
00285564ldr x1, [sp+272]
00285568ldrsb x27, [x1]
0028556cldrb w1, [x1]
00285570ldr x2, [sp+280]
00285574ldrsb x27, [x2]
00285578ldrb w2, [x2]
0028557ceor x1, x1, x2
00285580strb w1, [sp+87]
00285584b 0x28558c
00285588
00285588loc_285588:
00285588b 0x28558c
0028558c
0028558cloc_28558c:
0028558cldr x1, [sp+264]
00285590ldrsb x27, [x1]
00285594ldrb w2, [sp+87]
00285598strb w2, [x1]
0028559cldr x0, [sp+264]
002855a0str x0, [sp+96]
002855a4ldp x29, x30, [sp-8]
002855a8add sp, sp, 256
002855acret x30
002855b0
002855b0loc_2855b0:
002855b0stp x0, x1, [sp+8]
002855b4str x2, [sp+24]
002855b8mov x3, x30
002855bcbl runtime.morestack_noctxt.abi0
002855c0ldp x0, x1, [sp+8]
002855c4ldr x2, [sp+24]
002855c8b 0x285380
002855ccudf 0
00285380
00285380math/big.(*Int).Mul: ; void math/big.(*Int).Mul(math/big.Int * z, math/big.Int * x, math/big.Int * y)
00285380ldr x16, [x28+16]
00285384sub x17, sp, 128
00285388subs xzr, x17, x16
0028538cb.ls 0x2855b0
00285390sub x20, sp, 256
00285394stp x29, x30, [x20-8]
00285398add sp, x20, 0
0028539csub x29, sp, 8
002853a0str x0, [sp+264]
002853a4str x1, [sp+272]
002853a8str x2, [sp+280]
002853acstr xzr, [sp+96]
002853b0ldr x9, [sp+280]
002853b4ldr x10, [sp+272]
002853b8subs xzr, x9, x10
002853bcb.eq 0x2853c4
002853c0b 0x28547c
002853c4
002853c4loc_2853c4:
002853c4ldr x6, [sp+264]
002853c8ldrsb x27, [x6]
002853ccldr x7, [x6+8]
002853d0ldr x8, [x6+16]
002853d4ldr x6, [x6+24]
002853d8str x7, [sp+152]
002853dcstr x8, [sp+160]
002853e0str x6, [sp+168]
002853e4ldr x6, [sp+272]
002853e8ldrsb x27, [x6]
002853ecldr x3, [x6+8]
002853f0ldr x4, [x6+16]
002853f4ldr x5, [x6+24]
002853f8str x3, [sp+128]
002853fcstr x4, [sp+136]
00285400str x5, [sp+144]
00285404ldr x0, [sp+152]
00285408ldr x1, [sp+160]
0028540cldr x2, [sp+168]
00285410bl math/big.nat.sqr
00285414str x0, [sp+176]
00285418str x1, [sp+184]
0028541cstr x2, [sp+192]
00285420ldr x6, [sp+264]
00285424ldrsb x27, [x6]
00285428str x1, [x6+16]
0028542cstr x2, [x6+24]
00285430adrp x27, 0x7c6000
00285434ldr w7, [x27+3056]
00285438cbz w7, 0x285440
0028543cb 0x285444
00285440
00285440loc_285440:
00285440b 0x285458
00285444
00285444loc_285444:
00285444bl runtime.gcWriteBarrier2
00285448str x0, [x25]
0028544cldr x1, [x6+8]
00285450str x1, [x25+8]
00285454b 0x285458
00285458
00285458loc_285458:
00285458str x0, [x6+8]
0028545cldr x1, [sp+264]
00285460ldrsb x27, [x1]
00285464strb wzr, [x1]
00285468ldr x0, [sp+264]
0028546cstr x0, [sp+96]
00285470ldp x29, x30, [sp-8]
00285474add sp, sp, 256
00285478ret x30
0028547c
0028547cloc_28547c:
0028547cldr x9, [sp+264]
00285480ldrsb x27, [x9]
00285484ldr x10, [x9+8]
00285488ldr x11, [x9+16]
0028548cldr x9, [x9+24]
00285490str x10, [sp+104]
00285494str x11, [sp+112]
00285498str x9, [sp+120]
0028549cldr x9, [sp+272]
002854a0ldrsb x27, [x9]
002854a4ldr x10, [x9+8]
002854a8ldr x11, [x9+16]
002854acldr x9, [x9+24]
002854b0str x10, [sp+224]
002854b4str x11, [sp+232]
002854b8str x9, [sp+240]
002854bcldr x9, [sp+280]
002854c0ldrsb x27, [x9]
002854c4ldr x6, [x9+8]
002854c8ldr x7, [x9+16]
002854ccldr x8, [x9+24]
002854d0str x6, [sp+200]
002854d4str x7, [sp+208]
002854d8str x8, [sp+216]
002854dcldr x0, [sp+104]
002854e0ldr x1, [sp+112]
002854e4ldr x2, [sp+120]
002854e8ldr x3, [sp+224]
002854ecldr x4, [sp+232]
002854f0ldr x5, [sp+240]
002854f4bl math/big.nat.mul
002854f8str x0, [sp+176]
002854fcstr x1, [sp+184]
00285500str x2, [sp+192]
00285504ldr x9, [sp+264]
00285508ldrsb x27, [x9]
0028550cstr x1, [x9+16]
00285510str x2, [x9+24]
00285514adrp x27, 0x7c6000
00285518ldr w10, [x27+3056]
0028551ccbz w10, 0x285524
00285520b 0x285528
00285524
00285524loc_285524:
00285524b 0x28553c
00285528
00285528loc_285528:
00285528bl runtime.gcWriteBarrier2
0028552cstr x0, [x25]
00285530ldr x1, [x9+8]
00285534str x1, [x25+8]
00285538b 0x28553c
0028553c
0028553cloc_28553c:
0028553cstr x0, [x9+8]
00285540ldr x1, [sp+264]
00285544ldrsb x27, [x1]
00285548ldr x1, [x1+16]
0028554cstr x1, [sp+88]
00285550subs xzr, x1, 0
00285554cset x2, ne
00285558strb w2, [sp+87]
0028555ccbnz x1, 0x285564
00285560b 0x285588
00285564
00285564loc_285564:
00285564ldr x1, [sp+272]
00285568ldrsb x27, [x1]
0028556cldrb w1, [x1]
00285570ldr x2, [sp+280]
00285574ldrsb x27, [x2]
00285578ldrb w2, [x2]
0028557ceor x1, x1, x2
00285580strb w1, [sp+87]
00285584b 0x28558c
00285588
00285588loc_285588:
00285588b 0x28558c
0028558c
0028558cloc_28558c:
0028558cldr x1, [sp+264]
00285590ldrsb x27, [x1]
00285594ldrb w2, [sp+87]
00285598strb w2, [x1]
0028559cldr x0, [sp+264]
002855a0str x0, [sp+96]
002855a4ldp x29, x30, [sp-8]
002855a8add sp, sp, 256
002855acret x30
002855b0
002855b0loc_2855b0:
002855b0stp x0, x1, [sp+8]
002855b4str x2, [sp+24]
002855b8mov x3, x30
002855bcbl runtime.morestack_noctxt.abi0
002855c0ldp x0, x1, [sp+8]
002855c4ldr x2, [sp+24]
002855c8b 0x285380
002855ccudf 0
00285380
002855d0
002855d0math/big.(*Int).QuoRem: ; void math/big.(*Int).QuoRem(math/big.Int * z, math/big.Int * x, math/big.Int * y, math/big.Int * r)
002855d0ldr x16, [x28+16]
002855d4sub x17, sp, 224
002855d8subs xzr, x17, x16
002855dcb.ls 0x285860
002855e0sub x20, sp, 352
002855e4stp x29, x30, [x20-8]
002855e8add sp, x20, 0
002855ecsub x29, sp, 8
002855f0str x0, [sp+360]
002855f4str x1, [sp+368]
002855f8str x2, [sp+376]
002855fcstr x3, [sp+384]
00285600str xzr, [sp+144]
00285604str xzr, [sp+136]
00285608stp xzr, xzr, [sp+176]
0028560cstr xzr, [sp+192]
00285610stp xzr, xzr, [sp+152]
00285614str xzr, [sp+168]
00285618ldr x12, [sp+360]
0028561cldrsb x27, [x12]
00285620ldr x13, [x12+8]
00285624ldr x14, [x12+16]
00285628ldr x12, [x12+24]
0028562cstr x13, [sp+320]
00285630str x14, [sp+328]
00285634str x12, [sp+336]
00285638ldr x12, [sp+384]
0028563cldrsb x27, [x12]
00285640ldr x13, [x12+8]
00285644ldr x14, [x12+16]
00285648ldr x12, [x12+24]
0028564cstr x13, [sp+296]
00285650str x14, [sp+304]
00285654str x12, [sp+312]
00285658ldr x12, [sp+368]
0028565cldrsb x27, [x12]
00285660ldr x13, [x12+8]
00285664ldr x14, [x12+16]
00285668ldr x12, [x12+24]
0028566cstr x13, [sp+272]
00285670str x14, [sp+280]
00285674str x12, [sp+288]
00285678ldr x12, [sp+376]
0028567cldrsb x27, [x12]
00285680ldr x9, [x12+8]
00285684ldr x10, [x12+16]
00285688ldr x11, [x12+24]
0028568cstr x9, [sp+248]
00285690str x10, [sp+256]
00285694str x11, [sp+264]
00285698ldr x0, [sp+320]
0028569cldr x1, [sp+328]
002856a0ldr x2, [sp+336]
002856a4ldr x3, [sp+296]
002856a8ldr x4, [sp+304]
002856acldr x5, [sp+312]
002856b0ldr x6, [sp+272]
002856b4ldr x7, [sp+280]
002856b8ldr x8, [sp+288]
002856bcbl math/big.nat.div
002856c0str x0, [sp+176]
002856c4str x1, [sp+184]
002856c8str x2, [sp+192]
002856ccstr x3, [sp+152]
002856d0str x4, [sp+160]
002856d4str x5, [sp+168]
002856d8ldr x12, [sp+176]
002856dcldr x13, [sp+184]
002856e0ldr x14, [sp+192]
002856e4str x12, [sp+224]
002856e8str x13, [sp+232]
002856ecstr x14, [sp+240]
002856f0ldr x12, [sp+152]
002856f4ldr x13, [sp+160]
002856f8ldr x14, [sp+168]
002856fcstr x12, [sp+200]
00285700str x13, [sp+208]
00285704str x14, [sp+216]
00285708ldr x12, [sp+360]
0028570cldrsb x27, [x12]
00285710ldr x13, [sp+224]
00285714ldr x14, [sp+232]
00285718ldr x15, [sp+240]
0028571cstr x14, [x12+16]
00285720str x15, [x12+24]
00285724adrp x27, 0x7c6000
00285728ldr w14, [x27+3056]
0028572ccbz w14, 0x285734
00285730b 0x285738
00285734
00285734loc_285734:
00285734b 0x28574c
00285738
00285738loc_285738:
00285738bl runtime.gcWriteBarrier2
0028573cstr x13, [x25]
00285740ldr x2, [x12+8]
00285744str x2, [x25+8]
00285748b 0x28574c
0028574c
0028574cloc_28574c:
0028574cstr x13, [x12+8]
00285750ldr x2, [sp+384]
00285754ldrsb x27, [x2]
00285758ldr x3, [sp+200]
0028575cldr x4, [sp+208]
00285760ldr x5, [sp+216]
00285764str x4, [x2+16]
00285768str x5, [x2+24]
0028576cadrp x27, 0x7c6000
00285770ldr w4, [x27+3056]
00285774cbz w4, 0x28577c
00285778b 0x285780
0028577c
0028577cloc_28577c:
0028577cb 0x285794
00285780
00285780loc_285780:
00285780bl runtime.gcWriteBarrier2
00285784str x3, [x25]
00285788ldr x4, [x2+8]
0028578cstr x4, [x25+8]
00285790b 0x285794
00285794
00285794loc_285794:
00285794str x3, [x2+8]
00285798ldr x2, [sp+360]
0028579cldrsb x27, [x2]
002857a0ldr x2, [x2+16]
002857a4str x2, [sp+128]
002857a8subs xzr, x2, 0
002857accset x3, ne
002857b0strb w3, [sp+119]
002857b4cbnz x2, 0x2857bc
002857b8b 0x2857e0
002857bc
002857bcloc_2857bc:
002857bcldr x2, [sp+368]
002857c0ldrsb x27, [x2]
002857c4ldrb w2, [x2]
002857c8ldr x3, [sp+376]
002857ccldrsb x27, [x3]
002857d0ldrb w3, [x3]
002857d4eor x2, x2, x3
002857d8strb w2, [sp+119]
002857dcb 0x2857e4
002857e0
002857e0loc_2857e0:
002857e0b 0x2857e4
002857e4
002857e4loc_2857e4:
002857e4ldr x2, [sp+384]
002857e8ldrsb x27, [x2]
002857ecldr x2, [x2+16]
002857f0str x2, [sp+120]
002857f4subs xzr, x2, 0
002857f8cset x3, ne
002857fcstrb w3, [sp+118]
00285800cbnz x2, 0x285808
00285804b 0x28581c
00285808
00285808loc_285808:
00285808ldr x2, [sp+368]
0028580cldrsb x27, [x2]
00285810ldrb w2, [x2]
00285814strb w2, [sp+118]
00285818b 0x285820
0028581c
0028581cloc_28581c:
0028581cb 0x285820
00285820
00285820loc_285820:
00285820ldr x2, [sp+360]
00285824ldrsb x27, [x2]
00285828ldrb w3, [sp+119]
0028582cstrb w3, [x2]
00285830ldr x2, [sp+384]
00285834ldrsb x27, [x2]
00285838ldrb w3, [sp+118]
0028583cstrb w3, [x2]
00285840ldr x2, [sp+360]
00285844str x2, [sp+144]
00285848ldr x1, [sp+384]
0028584cstr x1, [sp+136]
00285850ldr x0, [sp+144]
00285854ldp x29, x30, [sp-8]
00285858add sp, sp, 352
0028585cret x30
00285860
00285860loc_285860:
00285860stp x0, x1, [sp+8]
00285864stp x2, x3, [sp+24]
00285868mov x3, x30
0028586cbl runtime.morestack_noctxt.abi0
00285870ldp x0, x1, [sp+8]
00285874ldp x2, x3, [sp+24]
00285878b 0x2855d0
0028587cudf 0
002855d0
002855d0math/big.(*Int).QuoRem: ; void math/big.(*Int).QuoRem(math/big.Int * z, math/big.Int * x, math/big.Int * y, math/big.Int * r)
002855d0ldr x16, [x28+16]
002855d4sub x17, sp, 224
002855d8subs xzr, x17, x16
002855dcb.ls 0x285860
002855e0sub x20, sp, 352
002855e4stp x29, x30, [x20-8]
002855e8add sp, x20, 0
002855ecsub x29, sp, 8
002855f0str x0, [sp+360]
002855f4str x1, [sp+368]
002855f8str x2, [sp+376]
002855fcstr x3, [sp+384]
00285600str xzr, [sp+144]
00285604str xzr, [sp+136]
00285608stp xzr, xzr, [sp+176]
0028560cstr xzr, [sp+192]
00285610stp xzr, xzr, [sp+152]
00285614str xzr, [sp+168]
00285618ldr x12, [sp+360]
0028561cldrsb x27, [x12]
00285620ldr x13, [x12+8]
00285624ldr x14, [x12+16]
00285628ldr x12, [x12+24]
0028562cstr x13, [sp+320]
00285630str x14, [sp+328]
00285634str x12, [sp+336]
00285638ldr x12, [sp+384]
0028563cldrsb x27, [x12]
00285640ldr x13, [x12+8]
00285644ldr x14, [x12+16]
00285648ldr x12, [x12+24]
0028564cstr x13, [sp+296]
00285650str x14, [sp+304]
00285654str x12, [sp+312]
00285658ldr x12, [sp+368]
0028565cldrsb x27, [x12]
00285660ldr x13, [x12+8]
00285664ldr x14, [x12+16]
00285668ldr x12, [x12+24]
0028566cstr x13, [sp+272]
00285670str x14, [sp+280]
00285674str x12, [sp+288]
00285678ldr x12, [sp+376]
0028567cldrsb x27, [x12]
00285680ldr x9, [x12+8]
00285684ldr x10, [x12+16]
00285688ldr x11, [x12+24]
0028568cstr x9, [sp+248]
00285690str x10, [sp+256]
00285694str x11, [sp+264]
00285698ldr x0, [sp+320]
0028569cldr x1, [sp+328]
002856a0ldr x2, [sp+336]
002856a4ldr x3, [sp+296]
002856a8ldr x4, [sp+304]
002856acldr x5, [sp+312]
002856b0ldr x6, [sp+272]
002856b4ldr x7, [sp+280]
002856b8ldr x8, [sp+288]
002856bcbl math/big.nat.div
002856c0str x0, [sp+176]
002856c4str x1, [sp+184]
002856c8str x2, [sp+192]
002856ccstr x3, [sp+152]
002856d0str x4, [sp+160]
002856d4str x5, [sp+168]
002856d8ldr x12, [sp+176]
002856dcldr x13, [sp+184]
002856e0ldr x14, [sp+192]
002856e4str x12, [sp+224]
002856e8str x13, [sp+232]
002856ecstr x14, [sp+240]
002856f0ldr x12, [sp+152]
002856f4ldr x13, [sp+160]
002856f8ldr x14, [sp+168]
002856fcstr x12, [sp+200]
00285700str x13, [sp+208]
00285704str x14, [sp+216]
00285708ldr x12, [sp+360]
0028570cldrsb x27, [x12]
00285710ldr x13, [sp+224]
00285714ldr x14, [sp+232]
00285718ldr x15, [sp+240]
0028571cstr x14, [x12+16]
00285720str x15, [x12+24]
00285724adrp x27, 0x7c6000
00285728ldr w14, [x27+3056]
0028572ccbz w14, 0x285734
00285730b 0x285738
00285734
00285734loc_285734:
00285734b 0x28574c
00285738
00285738loc_285738:
00285738bl runtime.gcWriteBarrier2
0028573cstr x13, [x25]
00285740ldr x2, [x12+8]
00285744str x2, [x25+8]
00285748b 0x28574c
0028574c
0028574cloc_28574c:
0028574cstr x13, [x12+8]
00285750ldr x2, [sp+384]
00285754ldrsb x27, [x2]
00285758ldr x3, [sp+200]
0028575cldr x4, [sp+208]
00285760ldr x5, [sp+216]
00285764str x4, [x2+16]
00285768str x5, [x2+24]
0028576cadrp x27, 0x7c6000
00285770ldr w4, [x27+3056]
00285774cbz w4, 0x28577c
00285778b 0x285780
0028577c
0028577cloc_28577c:
0028577cb 0x285794
00285780
00285780loc_285780:
00285780bl runtime.gcWriteBarrier2
00285784str x3, [x25]
00285788ldr x4, [x2+8]
0028578cstr x4, [x25+8]
00285790b 0x285794
00285794
00285794loc_285794:
00285794str x3, [x2+8]
00285798ldr x2, [sp+360]
0028579cldrsb x27, [x2]
002857a0ldr x2, [x2+16]
002857a4str x2, [sp+128]
002857a8subs xzr, x2, 0
002857accset x3, ne
002857b0strb w3, [sp+119]
002857b4cbnz x2, 0x2857bc
002857b8b 0x2857e0
002857bc
002857bcloc_2857bc:
002857bcldr x2, [sp+368]
002857c0ldrsb x27, [x2]
002857c4ldrb w2, [x2]
002857c8ldr x3, [sp+376]
002857ccldrsb x27, [x3]
002857d0ldrb w3, [x3]
002857d4eor x2, x2, x3
002857d8strb w2, [sp+119]
002857dcb 0x2857e4
002857e0
002857e0loc_2857e0:
002857e0b 0x2857e4
002857e4
002857e4loc_2857e4:
002857e4ldr x2, [sp+384]
002857e8ldrsb x27, [x2]
002857ecldr x2, [x2+16]
002857f0str x2, [sp+120]
002857f4subs xzr, x2, 0
002857f8cset x3, ne
002857fcstrb w3, [sp+118]
00285800cbnz x2, 0x285808
00285804b 0x28581c
00285808
00285808loc_285808:
00285808ldr x2, [sp+368]
0028580cldrsb x27, [x2]
00285810ldrb w2, [x2]
00285814strb w2, [sp+118]
00285818b 0x285820
0028581c
0028581cloc_28581c:
0028581cb 0x285820
00285820
00285820loc_285820:
00285820ldr x2, [sp+360]
00285824ldrsb x27, [x2]
00285828ldrb w3, [sp+119]
0028582cstrb w3, [x2]
00285830ldr x2, [sp+384]
00285834ldrsb x27, [x2]
00285838ldrb w3, [sp+118]
0028583cstrb w3, [x2]
00285840ldr x2, [sp+360]
00285844str x2, [sp+144]
00285848ldr x1, [sp+384]
0028584cstr x1, [sp+136]
00285850ldr x0, [sp+144]
00285854ldp x29, x30, [sp-8]
00285858add sp, sp, 352
0028585cret x30
00285860
00285860loc_285860:
00285860stp x0, x1, [sp+8]
00285864stp x2, x3, [sp+24]
00285868mov x3, x30
0028586cbl runtime.morestack_noctxt.abi0
00285870ldp x0, x1, [sp+8]
00285874ldp x2, x3, [sp+24]
00285878b 0x2855d0
0028587cudf 0
002855d0
00285880
00285880math/big.(*Int).Div: ; void math/big.(*Int).Div(math/big.Int * z, math/big.Int * x, math/big.Int * y)
00285880ldr x16, [x28+16]
00285884subs xzr, sp, x16
00285888b.ls 0x28593c
0028588cstr x30, [sp-96]!
00285890stur x29, [sp-8]
00285894sub x29, sp, 8
00285898str x0, [sp+104]
0028589cstr x1, [sp+112]
002858a0str x2, [sp+120]
002858a4str xzr, [sp+48]
002858a8ldr x4, [sp+120]
002858acldrsb x27, [x4]
002858b0ldrb w4, [x4]
002858b4strb w4, [sp+47]
002858b8strb wzr, [sp+56]
002858bcstr xzr, [sp+64]
002858c0stp xzr, xzr, [sp+72]
002858c4ldr x1, [sp+112]
002858c8ldr x2, [sp+120]
002858ccldr x0, [sp+104]
002858d0add x3, sp, 56
002858d4bl math/big.(*Int).QuoRem
002858d8ldrb w4, [sp+56]
002858dctbnz w4, 0, 0x2858e4
002858e0b 0x285924
002858e4
002858e4loc_2858e4:
002858e4ldrb w3, [sp+47]
002858e8tbnz w3, 0, 0x2858f0
002858ecb 0x285908
002858f0
002858f0loc_2858f0:
002858f0ldr x1, [sp+104]
002858f4adrp x27, 0x788000
002858f8ldr x2, [x27+1960]
002858fcldr x0, [sp+104]
00285900bl math/big.(*Int).Add
00285904b 0x285920
00285908
00285908loc_285908:
00285908ldr x1, [sp+104]
0028590cadrp x27, 0x788000
00285910ldr x2, [x27+1960]
00285914ldr x0, [sp+104]
00285918bl math/big.(*Int).Sub
0028591cb 0x285920
00285920
00285920loc_285920:
00285920b 0x285928
00285924
00285924loc_285924:
00285924b 0x285928
00285928
00285928loc_285928:
00285928ldr x0, [sp+104]
0028592cstr x0, [sp+48]
00285930ldur x29, [sp-8]
00285934ldr x30, [sp], 96
00285938ret x30
0028593c
0028593cloc_28593c:
0028593cstp x0, x1, [sp+8]
00285940str x2, [sp+24]
00285944mov x3, x30
00285948bl runtime.morestack_noctxt.abi0
0028594cldp x0, x1, [sp+8]
00285950ldr x2, [sp+24]
00285954b 0x285880
00285958udf 0
0028595cudf 0
00285880
00285880math/big.(*Int).Div: ; void math/big.(*Int).Div(math/big.Int * z, math/big.Int * x, math/big.Int * y)
00285880ldr x16, [x28+16]
00285884subs xzr, sp, x16
00285888b.ls 0x28593c
0028588cstr x30, [sp-96]!
00285890stur x29, [sp-8]
00285894sub x29, sp, 8
00285898str x0, [sp+104]
0028589cstr x1, [sp+112]
002858a0str x2, [sp+120]
002858a4str xzr, [sp+48]
002858a8ldr x4, [sp+120]
002858acldrsb x27, [x4]
002858b0ldrb w4, [x4]
002858b4strb w4, [sp+47]
002858b8strb wzr, [sp+56]
002858bcstr xzr, [sp+64]
002858c0stp xzr, xzr, [sp+72]
002858c4ldr x1, [sp+112]
002858c8ldr x2, [sp+120]
002858ccldr x0, [sp+104]
002858d0add x3, sp, 56
002858d4bl math/big.(*Int).QuoRem
002858d8ldrb w4, [sp+56]
002858dctbnz w4, 0, 0x2858e4
002858e0b 0x285924
002858e4
002858e4loc_2858e4:
002858e4ldrb w3, [sp+47]
002858e8tbnz w3, 0, 0x2858f0
002858ecb 0x285908
002858f0
002858f0loc_2858f0:
002858f0ldr x1, [sp+104]
002858f4adrp x27, 0x788000
002858f8ldr x2, [x27+1960]
002858fcldr x0, [sp+104]
00285900bl math/big.(*Int).Add
00285904b 0x285920
00285908
00285908loc_285908:
00285908ldr x1, [sp+104]
0028590cadrp x27, 0x788000
00285910ldr x2, [x27+1960]
00285914ldr x0, [sp+104]
00285918bl math/big.(*Int).Sub
0028591cb 0x285920
00285920
00285920loc_285920:
00285920b 0x285928
00285924
00285924loc_285924:
00285924b 0x285928
00285928
00285928loc_285928:
00285928ldr x0, [sp+104]
0028592cstr x0, [sp+48]
00285930ldur x29, [sp-8]
00285934ldr x30, [sp], 96
00285938ret x30
0028593c
0028593cloc_28593c:
0028593cstp x0, x1, [sp+8]
00285940str x2, [sp+24]
00285944mov x3, x30
00285948bl runtime.morestack_noctxt.abi0
0028594cldp x0, x1, [sp+8]
00285950ldr x2, [sp+24]
00285954b 0x285880
00285958udf 0
0028595cudf 0
00285880
00285960
00285960math/big.(*Int).Mod: ; void math/big.(*Int).Mod(math/big.Int * z, math/big.Int * x, math/big.Int * y)
00285960ldr x16, [x28+16]
00285964sub x17, sp, 80
00285968subs xzr, x17, x16
0028596cb.ls 0x285ad0
00285970str x30, [sp-208]!
00285974stur x29, [sp-8]
00285978sub x29, sp, 8
0028597cstr x0, [sp+216]
00285980str x1, [sp+224]
00285984str x2, [sp+232]
00285988str xzr, [sp+64]
0028598cldr x6, [sp+232]
00285990str x6, [sp+72]
00285994ldr x6, [sp+232]
00285998ldr x7, [sp+216]
0028599csubs xzr, x6, x7
002859a0cset x6, eq
002859a4strb w6, [sp+63]
002859a8b.eq 0x2859b0
002859acb 0x2859b4
002859b0
002859b0loc_2859b0:
002859b0b 0x285a10
002859b4
002859b4loc_2859b4:
002859b4ldr x6, [sp+216]
002859b8ldrsb x27, [x6]
002859bcldr x7, [x6+8]
002859c0ldr x8, [x6+16]
002859c4ldr x6, [x6+24]
002859c8str x7, [sp+112]
002859ccstr x8, [sp+120]
002859d0str x6, [sp+128]
002859d4ldr x6, [sp+232]
002859d8ldrsb x27, [x6]
002859dcldr x3, [x6+8]
002859e0ldr x4, [x6+16]
002859e4ldr x5, [x6+24]
002859e8str x3, [sp+176]
002859ecstr x4, [sp+184]
002859f0str x5, [sp+192]
002859f4ldr x0, [sp+112]
002859f8ldr x1, [sp+120]
002859fcldr x2, [sp+128]
00285a00bl math/big.alias
00285a04strb w0, [sp+62]
00285a08strb w0, [sp+63]
00285a0cb 0x285a10
00285a10
00285a10loc_285a10:
00285a10ldrb w4, [sp+63]
00285a14tbnz w4, 0, 0x285a1c
00285a18b 0x285a40
00285a1c
00285a1cloc_285a1c:
00285a1cstrb wzr, [sp+144]
00285a20str xzr, [sp+152]
00285a24stp xzr, xzr, [sp+160]
00285a28add x0, sp, 144
00285a2cstr x0, [sp+136]
00285a30ldr x1, [sp+232]
00285a34bl math/big.(*Int).Set
00285a38str x0, [sp+72]
00285a3cb 0x285a44
00285a40
00285a40loc_285a40:
00285a40b 0x285a44
00285a44
00285a44loc_285a44:
00285a44strb wzr, [sp+80]
00285a48str xzr, [sp+88]
00285a4cstp xzr, xzr, [sp+96]
00285a50ldr x2, [sp+232]
00285a54ldr x3, [sp+216]
00285a58ldr x1, [sp+224]
00285a5cadd x0, sp, 80
00285a60bl math/big.(*Int).QuoRem
00285a64ldr x4, [sp+216]
00285a68ldrsb x27, [x4]
00285a6cldrb w4, [x4]
00285a70tbnz w4, 0, 0x285a78
00285a74b 0x285ab8
00285a78
00285a78loc_285a78:
00285a78ldr x3, [sp+72]
00285a7cldrsb x27, [x3]
00285a80ldrb w3, [x3]
00285a84tbnz w3, 0, 0x285a8c
00285a88b 0x285aa0
00285a8c
00285a8cloc_285a8c:
00285a8cldr x1, [sp+216]
00285a90ldr x2, [sp+72]
00285a94ldr x0, [sp+216]
00285a98bl math/big.(*Int).Sub
00285a9cb 0x285ab4
00285aa0
00285aa0loc_285aa0:
00285aa0ldr x1, [sp+216]
00285aa4ldr x2, [sp+72]
00285aa8ldr x0, [sp+216]
00285aacbl math/big.(*Int).Add
00285ab0b 0x285ab4
00285ab4
00285ab4loc_285ab4:
00285ab4b 0x285abc
00285ab8
00285ab8loc_285ab8:
00285ab8b 0x285abc
00285abc
00285abcloc_285abc:
00285abcldr x0, [sp+216]
00285ac0str x0, [sp+64]
00285ac4ldur x29, [sp-8]
00285ac8ldr x30, [sp], 208
00285accret x30
00285ad0
00285ad0loc_285ad0:
00285ad0stp x0, x1, [sp+8]
00285ad4str x2, [sp+24]
00285ad8mov x3, x30
00285adcbl runtime.morestack_noctxt.abi0
00285ae0ldp x0, x1, [sp+8]
00285ae4ldr x2, [sp+24]
00285ae8b 0x285960
00285aecudf 0
00285960
00285960math/big.(*Int).Mod: ; void math/big.(*Int).Mod(math/big.Int * z, math/big.Int * x, math/big.Int * y)
00285960ldr x16, [x28+16]
00285964sub x17, sp, 80
00285968subs xzr, x17, x16
0028596cb.ls 0x285ad0
00285970str x30, [sp-208]!
00285974stur x29, [sp-8]
00285978sub x29, sp, 8
0028597cstr x0, [sp+216]
00285980str x1, [sp+224]
00285984str x2, [sp+232]
00285988str xzr, [sp+64]
0028598cldr x6, [sp+232]
00285990str x6, [sp+72]
00285994ldr x6, [sp+232]
00285998ldr x7, [sp+216]
0028599csubs xzr, x6, x7
002859a0cset x6, eq
002859a4strb w6, [sp+63]
002859a8b.eq 0x2859b0
002859acb 0x2859b4
002859b0
002859b0loc_2859b0:
002859b0b 0x285a10
002859b4
002859b4loc_2859b4:
002859b4ldr x6, [sp+216]
002859b8ldrsb x27, [x6]
002859bcldr x7, [x6+8]
002859c0ldr x8, [x6+16]
002859c4ldr x6, [x6+24]
002859c8str x7, [sp+112]
002859ccstr x8, [sp+120]
002859d0str x6, [sp+128]
002859d4ldr x6, [sp+232]
002859d8ldrsb x27, [x6]
002859dcldr x3, [x6+8]
002859e0ldr x4, [x6+16]
002859e4ldr x5, [x6+24]
002859e8str x3, [sp+176]
002859ecstr x4, [sp+184]
002859f0str x5, [sp+192]
002859f4ldr x0, [sp+112]
002859f8ldr x1, [sp+120]
002859fcldr x2, [sp+128]
00285a00bl math/big.alias
00285a04strb w0, [sp+62]
00285a08strb w0, [sp+63]
00285a0cb 0x285a10
00285a10
00285a10loc_285a10:
00285a10ldrb w4, [sp+63]
00285a14tbnz w4, 0, 0x285a1c
00285a18b 0x285a40
00285a1c
00285a1cloc_285a1c:
00285a1cstrb wzr, [sp+144]
00285a20str xzr, [sp+152]
00285a24stp xzr, xzr, [sp+160]
00285a28add x0, sp, 144
00285a2cstr x0, [sp+136]
00285a30ldr x1, [sp+232]
00285a34bl math/big.(*Int).Set
00285a38str x0, [sp+72]
00285a3cb 0x285a44
00285a40
00285a40loc_285a40:
00285a40b 0x285a44
00285a44
00285a44loc_285a44:
00285a44strb wzr, [sp+80]
00285a48str xzr, [sp+88]
00285a4cstp xzr, xzr, [sp+96]
00285a50ldr x2, [sp+232]
00285a54ldr x3, [sp+216]
00285a58ldr x1, [sp+224]
00285a5cadd x0, sp, 80
00285a60bl math/big.(*Int).QuoRem
00285a64ldr x4, [sp+216]
00285a68ldrsb x27, [x4]
00285a6cldrb w4, [x4]
00285a70tbnz w4, 0, 0x285a78
00285a74b 0x285ab8
00285a78
00285a78loc_285a78:
00285a78ldr x3, [sp+72]
00285a7cldrsb x27, [x3]
00285a80ldrb w3, [x3]
00285a84tbnz w3, 0, 0x285a8c
00285a88b 0x285aa0
00285a8c
00285a8cloc_285a8c:
00285a8cldr x1, [sp+216]
00285a90ldr x2, [sp+72]
00285a94ldr x0, [sp+216]
00285a98bl math/big.(*Int).Sub
00285a9cb 0x285ab4
00285aa0
00285aa0loc_285aa0:
00285aa0ldr x1, [sp+216]
00285aa4ldr x2, [sp+72]
00285aa8ldr x0, [sp+216]
00285aacbl math/big.(*Int).Add
00285ab0b 0x285ab4
00285ab4
00285ab4loc_285ab4:
00285ab4b 0x285abc
00285ab8
00285ab8loc_285ab8:
00285ab8b 0x285abc
00285abc
00285abcloc_285abc:
00285abcldr x0, [sp+216]
00285ac0str x0, [sp+64]
00285ac4ldur x29, [sp-8]
00285ac8ldr x30, [sp], 208
00285accret x30
00285ad0
00285ad0loc_285ad0:
00285ad0stp x0, x1, [sp+8]
00285ad4str x2, [sp+24]
00285ad8mov x3, x30
00285adcbl runtime.morestack_noctxt.abi0
00285ae0ldp x0, x1, [sp+8]
00285ae4ldr x2, [sp+24]
00285ae8b 0x285960
00285aecudf 0
00285960
00285af0
00285af0math/big.(*Int).Cmp: ; void math/big.(*Int).Cmp(math/big.Int * x, math/big.Int * y)
00285af0ldr x16, [x28+16]
00285af4subs xzr, sp, x16
00285af8b.ls 0x285c04
00285afcstr x30, [sp-128]!
00285b00stur x29, [sp-8]
00285b04sub x29, sp, 8
00285b08str x0, [sp+136]
00285b0cstr x1, [sp+144]
00285b10str xzr, [sp+64]
00285b14subs xzr, x1, x0
00285b18b.eq 0x285b20
00285b1cb 0x285b28
00285b20
00285b20loc_285b20:
00285b20b 0x285b24
00285b24
00285b24loc_285b24:
00285b24b 0x285bf4
00285b28
00285b28loc_285b28:
00285b28ldrsb x27, [x0]
00285b2cldrsb x27, [x1]
00285b30ldrb w6, [x0]
00285b34ldrb w7, [x1]
00285b38eor x6, x6, x7
00285b3ceor x6, x6, 1
00285b40tbnz w6, 0, 0x285b48
00285b44b 0x285bc4
00285b48
00285b48loc_285b48:
00285b48b 0x285b4c
00285b4c
00285b4cloc_285b4c:
00285b4cldrsb x27, [x0]
00285b50ldr x6, [x0+8]
00285b54ldr x7, [x0+16]
00285b58ldr x8, [x0+24]
00285b5cstr x6, [sp+96]
00285b60str x7, [sp+104]
00285b64str x8, [sp+112]
00285b68ldr x6, [sp+144]
00285b6cldrsb x27, [x6]
00285b70ldr x3, [x6+8]
00285b74ldr x4, [x6+16]
00285b78ldr x5, [x6+24]
00285b7cstr x3, [sp+72]
00285b80str x4, [sp+80]
00285b84str x5, [sp+88]
00285b88ldr x0, [sp+96]
00285b8cldr x1, [sp+104]
00285b90ldr x2, [sp+112]
00285b94bl math/big.nat.cmp
00285b98str x0, [sp+64]
00285b9cldr x6, [sp+136]
00285ba0ldrsb x27, [x6]
00285ba4ldrb w6, [x6]
00285ba8tbnz w6, 0, 0x285bb0
00285bacb 0x285bbc
00285bb0
00285bb0loc_285bb0:
00285bb0sub x1, xzr, x0
00285bb4str x1, [sp+64]
00285bb8b 0x285bc0
00285bbc
00285bbcloc_285bbc:
00285bbcb 0x285bc0
00285bc0
00285bc0loc_285bc0:
00285bc0b 0x285bf4
00285bc4
00285bc4loc_285bc4:
00285bc4ldrsb x27, [x0]
00285bc8ldrb w1, [x0]
00285bcctbnz w1, 0, 0x285bd4
00285bd0b 0x285be4
00285bd4
00285bd4loc_285bd4:
00285bd4b 0x285bd8
00285bd8
00285bd8loc_285bd8:
00285bd8movn x1, 0
00285bdcstr x1, [sp+64]
00285be0b 0x285bf4
00285be4
00285be4loc_285be4:
00285be4b 0x285be8
00285be8
00285be8loc_285be8:
00285be8orr x1, xzr, 1
00285becstr x1, [sp+64]
00285bf0b 0x285bf4
00285bf4
00285bf4loc_285bf4:
00285bf4ldr x0, [sp+64]
00285bf8ldur x29, [sp-8]
00285bfcldr x30, [sp], 128
00285c00ret x30
00285c04
00285c04loc_285c04:
00285c04stp x0, x1, [sp+8]
00285c08mov x3, x30
00285c0cbl runtime.morestack_noctxt.abi0
00285c10ldp x0, x1, [sp+8]
00285c14b 0x285af0
00285c18udf 0
00285c1cudf 0
00285af0
00285af0math/big.(*Int).Cmp: ; void math/big.(*Int).Cmp(math/big.Int * x, math/big.Int * y)
00285af0ldr x16, [x28+16]
00285af4subs xzr, sp, x16
00285af8b.ls 0x285c04
00285afcstr x30, [sp-128]!
00285b00stur x29, [sp-8]
00285b04sub x29, sp, 8
00285b08str x0, [sp+136]
00285b0cstr x1, [sp+144]
00285b10str xzr, [sp+64]
00285b14subs xzr, x1, x0
00285b18b.eq 0x285b20
00285b1cb 0x285b28
00285b20
00285b20loc_285b20:
00285b20b 0x285b24
00285b24
00285b24loc_285b24:
00285b24b 0x285bf4
00285b28
00285b28loc_285b28:
00285b28ldrsb x27, [x0]
00285b2cldrsb x27, [x1]
00285b30ldrb w6, [x0]
00285b34ldrb w7, [x1]
00285b38eor x6, x6, x7
00285b3ceor x6, x6, 1
00285b40tbnz w6, 0, 0x285b48
00285b44b 0x285bc4
00285b48
00285b48loc_285b48:
00285b48b 0x285b4c
00285b4c
00285b4cloc_285b4c:
00285b4cldrsb x27, [x0]
00285b50ldr x6, [x0+8]
00285b54ldr x7, [x0+16]
00285b58ldr x8, [x0+24]
00285b5cstr x6, [sp+96]
00285b60str x7, [sp+104]
00285b64str x8, [sp+112]
00285b68ldr x6, [sp+144]
00285b6cldrsb x27, [x6]
00285b70ldr x3, [x6+8]
00285b74ldr x4, [x6+16]
00285b78ldr x5, [x6+24]
00285b7cstr x3, [sp+72]
00285b80str x4, [sp+80]
00285b84str x5, [sp+88]
00285b88ldr x0, [sp+96]
00285b8cldr x1, [sp+104]
00285b90ldr x2, [sp+112]
00285b94bl math/big.nat.cmp
00285b98str x0, [sp+64]
00285b9cldr x6, [sp+136]
00285ba0ldrsb x27, [x6]
00285ba4ldrb w6, [x6]
00285ba8tbnz w6, 0, 0x285bb0
00285bacb 0x285bbc
00285bb0
00285bb0loc_285bb0:
00285bb0sub x1, xzr, x0
00285bb4str x1, [sp+64]
00285bb8b 0x285bc0
00285bbc
00285bbcloc_285bbc:
00285bbcb 0x285bc0
00285bc0
00285bc0loc_285bc0:
00285bc0b 0x285bf4
00285bc4
00285bc4loc_285bc4:
00285bc4ldrsb x27, [x0]
00285bc8ldrb w1, [x0]
00285bcctbnz w1, 0, 0x285bd4
00285bd0b 0x285be4
00285bd4
00285bd4loc_285bd4:
00285bd4b 0x285bd8
00285bd8
00285bd8loc_285bd8:
00285bd8movn x1, 0
00285bdcstr x1, [sp+64]
00285be0b 0x285bf4
00285be4
00285be4loc_285be4:
00285be4b 0x285be8
00285be8
00285be8loc_285be8:
00285be8orr x1, xzr, 1
00285becstr x1, [sp+64]
00285bf0b 0x285bf4
00285bf4
00285bf4loc_285bf4:
00285bf4ldr x0, [sp+64]
00285bf8ldur x29, [sp-8]
00285bfcldr x30, [sp], 128
00285c00ret x30
00285c04
00285c04loc_285c04:
00285c04stp x0, x1, [sp+8]
00285c08mov x3, x30
00285c0cbl runtime.morestack_noctxt.abi0
00285c10ldp x0, x1, [sp+8]
00285c14b 0x285af0
00285c18udf 0
00285c1cudf 0
00285af0
00285c20
00285c20math/big.low64: ; void math/big.low64(math/big.nat x)
00285c20ldr x16, [x28+16]
00285c24subs xzr, sp, x16
00285c28b.ls 0x285ca0
00285c2cstr x30, [sp-64]!
00285c30stur x29, [sp-8]
00285c34sub x29, sp, 8
00285c38str x0, [sp+72]
00285c3cstr x1, [sp+80]
00285c40str x2, [sp+88]
00285c44str xzr, [sp+32]
00285c48str x1, [sp+48]
00285c4ccbz x1, 0x285c54
00285c50b 0x285c68
00285c54
00285c54loc_285c54:
00285c54str xzr, [sp+32]
00285c58mov x0, xzr
00285c5cldur x29, [sp-8]
00285c60ldr x30, [sp], 64
00285c64ret x30
00285c68
00285c68loc_285c68:
00285c68ldr x2, [sp+72]
00285c6csubs xzr, x1, 0
00285c70b.hi 0x285c78
00285c74b 0x285c94
00285c78
00285c78loc_285c78:
00285c78ldr x1, [x2]
00285c7cstr x1, [sp+40]
00285c80ldr x0, [sp+40]
00285c84str x0, [sp+32]
00285c88ldur x29, [sp-8]
00285c8cldr x30, [sp], 64
00285c90ret x30
00285c94
00285c94loc_285c94:
00285c94mov x0, xzr
00285c98bl runtime.panicIndex
00285c9chint
00285ca0
00285ca0loc_285ca0:
00285ca0stp x0, x1, [sp+8]
00285ca4str x2, [sp+24]
00285ca8mov x3, x30
00285cacbl runtime.morestack_noctxt.abi0
00285cb0ldp x0, x1, [sp+8]
00285cb4ldr x2, [sp+24]
00285cb8b 0x285c20
00285cbcudf 0
00285c20
00285c20math/big.low64: ; void math/big.low64(math/big.nat x)
00285c20ldr x16, [x28+16]
00285c24subs xzr, sp, x16
00285c28b.ls 0x285ca0
00285c2cstr x30, [sp-64]!
00285c30stur x29, [sp-8]
00285c34sub x29, sp, 8
00285c38str x0, [sp+72]
00285c3cstr x1, [sp+80]
00285c40str x2, [sp+88]
00285c44str xzr, [sp+32]
00285c48str x1, [sp+48]
00285c4ccbz x1, 0x285c54
00285c50b 0x285c68
00285c54
00285c54loc_285c54:
00285c54str xzr, [sp+32]
00285c58mov x0, xzr
00285c5cldur x29, [sp-8]
00285c60ldr x30, [sp], 64
00285c64ret x30
00285c68
00285c68loc_285c68:
00285c68ldr x2, [sp+72]
00285c6csubs xzr, x1, 0
00285c70b.hi 0x285c78
00285c74b 0x285c94
00285c78
00285c78loc_285c78:
00285c78ldr x1, [x2]
00285c7cstr x1, [sp+40]
00285c80ldr x0, [sp+40]
00285c84str x0, [sp+32]
00285c88ldur x29, [sp-8]
00285c8cldr x30, [sp], 64
00285c90ret x30
00285c94
00285c94loc_285c94:
00285c94mov x0, xzr
00285c98bl runtime.panicIndex
00285c9chint
00285ca0
00285ca0loc_285ca0:
00285ca0stp x0, x1, [sp+8]
00285ca4str x2, [sp+24]
00285ca8mov x3, x30
00285cacbl runtime.morestack_noctxt.abi0
00285cb0ldp x0, x1, [sp+8]
00285cb4ldr x2, [sp+24]
00285cb8b 0x285c20
00285cbcudf 0
00285c20
00285cc0
00285cc0math/big.(*Int).Int64: ; void math/big.(*Int).Int64(math/big.Int * x)
00285cc0ldr x16, [x28+16]
00285cc4subs xzr, sp, x16
00285cc8b.ls 0x285d48
00285cccstr x30, [sp-96]!
00285cd0stur x29, [sp-8]
00285cd4sub x29, sp, 8
00285cd8str x0, [sp+104]
00285cdcstr xzr, [sp+40]
00285ce0ldrsb x27, [x0]
00285ce4ldr x3, [x0+8]
00285ce8ldr x1, [x0+16]
00285cecldr x2, [x0+24]
00285cf0str x3, [sp+64]
00285cf4str x1, [sp+72]
00285cf8str x2, [sp+80]
00285cfcmov x0, x3
00285d00bl math/big.low64
00285d04str x0, [sp+56]
00285d08str x0, [sp+48]
00285d0cldr x3, [sp+104]
00285d10ldrsb x27, [x3]
00285d14ldrb w3, [x3]
00285d18tbnz w3, 0, 0x285d20
00285d1cb 0x285d30
00285d20
00285d20loc_285d20:
00285d20ldr x1, [sp+48]
00285d24sub x1, xzr, x1
00285d28str x1, [sp+48]
00285d2cb 0x285d34
00285d30
00285d30loc_285d30:
00285d30b 0x285d34
00285d34
00285d34loc_285d34:
00285d34ldr x0, [sp+48]
00285d38str x0, [sp+40]
00285d3cldur x29, [sp-8]
00285d40ldr x30, [sp], 96
00285d44ret x30
00285d48
00285d48loc_285d48:
00285d48str x0, [sp+8]
00285d4cmov x3, x30
00285d50bl runtime.morestack_noctxt.abi0
00285d54ldr x0, [sp+8]
00285d58b 0x285cc0
00285d5cudf 0
00285cc0
00285cc0math/big.(*Int).Int64: ; void math/big.(*Int).Int64(math/big.Int * x)
00285cc0ldr x16, [x28+16]
00285cc4subs xzr, sp, x16
00285cc8b.ls 0x285d48
00285cccstr x30, [sp-96]!
00285cd0stur x29, [sp-8]
00285cd4sub x29, sp, 8
00285cd8str x0, [sp+104]
00285cdcstr xzr, [sp+40]
00285ce0ldrsb x27, [x0]
00285ce4ldr x3, [x0+8]
00285ce8ldr x1, [x0+16]
00285cecldr x2, [x0+24]
00285cf0str x3, [sp+64]
00285cf4str x1, [sp+72]
00285cf8str x2, [sp+80]
00285cfcmov x0, x3
00285d00bl math/big.low64
00285d04str x0, [sp+56]
00285d08str x0, [sp+48]
00285d0cldr x3, [sp+104]
00285d10ldrsb x27, [x3]
00285d14ldrb w3, [x3]
00285d18tbnz w3, 0, 0x285d20
00285d1cb 0x285d30
00285d20
00285d20loc_285d20:
00285d20ldr x1, [sp+48]
00285d24sub x1, xzr, x1
00285d28str x1, [sp+48]
00285d2cb 0x285d34
00285d30
00285d30loc_285d30:
00285d30b 0x285d34
00285d34
00285d34loc_285d34:
00285d34ldr x0, [sp+48]
00285d38str x0, [sp+40]
00285d3cldur x29, [sp-8]
00285d40ldr x30, [sp], 96
00285d44ret x30
00285d48
00285d48loc_285d48:
00285d48str x0, [sp+8]
00285d4cmov x3, x30
00285d50bl runtime.morestack_noctxt.abi0
00285d54ldr x0, [sp+8]
00285d58b 0x285cc0
00285d5cudf 0
00285cc0
00285d60
00285d60math/big.(*Int).Uint64: ; void math/big.(*Int).Uint64(math/big.Int * x)
00285d60ldr x16, [x28+16]
00285d64subs xzr, sp, x16
00285d68b.ls 0x285db8
00285d6cstr x30, [sp-80]!
00285d70stur x29, [sp-8]
00285d74sub x29, sp, 8
00285d78str x0, [sp+88]
00285d7cstr xzr, [sp+32]
00285d80ldrsb x27, [x0]
00285d84ldr x3, [x0+8]
00285d88ldr x1, [x0+16]
00285d8cldr x2, [x0+24]
00285d90str x3, [sp+48]
00285d94str x1, [sp+56]
00285d98str x2, [sp+64]
00285d9cmov x0, x3
00285da0bl math/big.low64
00285da4str x0, [sp+40]
00285da8str x0, [sp+32]
00285dacldur x29, [sp-8]
00285db0ldr x30, [sp], 80
00285db4ret x30
00285db8
00285db8loc_285db8:
00285db8str x0, [sp+8]
00285dbcmov x3, x30
00285dc0bl runtime.morestack_noctxt.abi0
00285dc4ldr x0, [sp+8]
00285dc8b 0x285d60
00285dccudf 0
00285d60
00285d60math/big.(*Int).Uint64: ; void math/big.(*Int).Uint64(math/big.Int * x)
00285d60ldr x16, [x28+16]
00285d64subs xzr, sp, x16
00285d68b.ls 0x285db8
00285d6cstr x30, [sp-80]!
00285d70stur x29, [sp-8]
00285d74sub x29, sp, 8
00285d78str x0, [sp+88]
00285d7cstr xzr, [sp+32]
00285d80ldrsb x27, [x0]
00285d84ldr x3, [x0+8]
00285d88ldr x1, [x0+16]
00285d8cldr x2, [x0+24]
00285d90str x3, [sp+48]
00285d94str x1, [sp+56]
00285d98str x2, [sp+64]
00285d9cmov x0, x3
00285da0bl math/big.low64
00285da4str x0, [sp+40]
00285da8str x0, [sp+32]
00285dacldur x29, [sp-8]
00285db0ldr x30, [sp], 80
00285db4ret x30
00285db8
00285db8loc_285db8:
00285db8str x0, [sp+8]
00285dbcmov x3, x30
00285dc0bl runtime.morestack_noctxt.abi0
00285dc4ldr x0, [sp+8]
00285dc8b 0x285d60
00285dccudf 0
00285d60
00285dd0
00285dd0math/big.(*Int).SetString: ; void math/big.(*Int).SetString(math/big.Int * z, struct string s, int base)
00285dd0ldr x16, [x28+16]
00285dd4subs xzr, sp, x16
00285dd8b.ls 0x285e68
00285ddcstr x30, [sp-96]!
00285de0stur x29, [sp-8]
00285de4sub x29, sp, 8
00285de8str x0, [sp+104]
00285decstr x1, [sp+112]
00285df0str x2, [sp+120]
00285df4str x3, [sp+128]
00285df8str xzr, [sp+48]
00285dfcstrb wzr, [sp+45]
00285e00ldr x0, [sp+112]
00285e04ldr x1, [sp+120]
00285e08bl strings.NewReader
00285e0cstr x0, [sp+72]
00285e10str x0, [sp+64]
00285e14str xzr, [sp+56]
00285e18ldr x3, [sp+128]
00285e1cldr x0, [sp+104]
00285e20ldr x2, [sp+64]
00285e24adrp x1, 0x492000
00285e28add x1, x1, 2104
00285e2cbl math/big.(*Int).setFromScanner
00285e30str x0, [sp+56]
00285e34strb w1, [sp+47]
00285e38ldr x2, [sp+56]
00285e3cstr x2, [sp+80]
00285e40ldrb w2, [sp+47]
00285e44strb w2, [sp+46]
00285e48ldr x2, [sp+80]
00285e4cstr x2, [sp+48]
00285e50ldrb w1, [sp+46]
00285e54strb w1, [sp+45]
00285e58ldr x0, [sp+48]
00285e5cldur x29, [sp-8]
00285e60ldr x30, [sp], 96
00285e64ret x30
00285e68
00285e68loc_285e68:
00285e68stp x0, x1, [sp+8]
00285e6cstp x2, x3, [sp+24]
00285e70mov x3, x30
00285e74bl runtime.morestack_noctxt.abi0
00285e78ldp x0, x1, [sp+8]
00285e7cldp x2, x3, [sp+24]
00285e80b 0x285dd0
00285e84udf 0
00285e88udf 0
00285e8cudf 0
00285dd0
00285dd0math/big.(*Int).SetString: ; void math/big.(*Int).SetString(math/big.Int * z, struct string s, int base)
00285dd0ldr x16, [x28+16]
00285dd4subs xzr, sp, x16
00285dd8b.ls 0x285e68
00285ddcstr x30, [sp-96]!
00285de0stur x29, [sp-8]
00285de4sub x29, sp, 8
00285de8str x0, [sp+104]
00285decstr x1, [sp+112]
00285df0str x2, [sp+120]
00285df4str x3, [sp+128]
00285df8str xzr, [sp+48]
00285dfcstrb wzr, [sp+45]
00285e00ldr x0, [sp+112]
00285e04ldr x1, [sp+120]
00285e08bl strings.NewReader
00285e0cstr x0, [sp+72]
00285e10str x0, [sp+64]
00285e14str xzr, [sp+56]
00285e18ldr x3, [sp+128]
00285e1cldr x0, [sp+104]
00285e20ldr x2, [sp+64]
00285e24adrp x1, 0x492000
00285e28add x1, x1, 2104
00285e2cbl math/big.(*Int).setFromScanner
00285e30str x0, [sp+56]
00285e34strb w1, [sp+47]
00285e38ldr x2, [sp+56]
00285e3cstr x2, [sp+80]
00285e40ldrb w2, [sp+47]
00285e44strb w2, [sp+46]
00285e48ldr x2, [sp+80]
00285e4cstr x2, [sp+48]
00285e50ldrb w1, [sp+46]
00285e54strb w1, [sp+45]
00285e58ldr x0, [sp+48]
00285e5cldur x29, [sp-8]
00285e60ldr x30, [sp], 96
00285e64ret x30
00285e68
00285e68loc_285e68:
00285e68stp x0, x1, [sp+8]
00285e6cstp x2, x3, [sp+24]
00285e70mov x3, x30
00285e74bl runtime.morestack_noctxt.abi0
00285e78ldp x0, x1, [sp+8]
00285e7cldp x2, x3, [sp+24]
00285e80b 0x285dd0
00285e84udf 0
00285e88udf 0
00285e8cudf 0
00285dd0
00285e90
00285e90math/big.(*Int).setFromScanner: ; void math/big.(*Int).setFromScanner(math/big.Int * z, io.ByteScanner r, int base)
00285e90ldr x16, [x28+16]
00285e94sub x17, sp, 48
00285e98subs xzr, x17, x16
00285e9cb.ls 0x285fec
00285ea0str x30, [sp-176]!
00285ea4stur x29, [sp-8]
00285ea8sub x29, sp, 8
00285eacstr x0, [sp+184]
00285eb0str x1, [sp+192]
00285eb4str x2, [sp+200]
00285eb8str x3, [sp+208]
00285ebcstr xzr, [sp+64]
00285ec0strb wzr, [sp+45]
00285ec4str xzr, [sp+144]
00285ec8stp xzr, xzr, [sp+128]
00285eccldr x3, [sp+208]
00285ed0ldr x1, [sp+192]
00285ed4ldr x2, [sp+200]
00285ed8ldr x0, [sp+184]
00285edcbl math/big.(*Int).scan
00285ee0str x0, [sp+144]
00285ee4str x1, [sp+56]
00285ee8str x2, [sp+128]
00285eecstr x3, [sp+136]
00285ef0ldr x4, [sp+144]
00285ef4str x4, [sp+120]
00285ef8ldr x4, [sp+56]
00285efcstr x4, [sp+48]
00285f00ldr x4, [sp+136]
00285f04ldr x5, [sp+128]
00285f08str x5, [sp+104]
00285f0cstr x4, [sp+112]
00285f10str x5, [sp+88]
00285f14str x4, [sp+96]
00285f18cbnz x5, 0x285f20
00285f1cb 0x285f3c
00285f20
00285f20loc_285f20:
00285f20str xzr, [sp+64]
00285f24strb wzr, [sp+45]
00285f28ldr x0, [sp+64]
00285f2cmov x1, xzr
00285f30ldur x29, [sp-8]
00285f34ldr x30, [sp], 176
00285f38ret x30
00285f3c
00285f3cloc_285f3c:
00285f3cstp xzr, xzr, [sp+128]
00285f40ldr x1, [sp+192]
00285f44ldrsb x27, [x1]
00285f48ldr x1, [x1+24]
00285f4cldr x0, [sp+200]
00285f50blr x1
00285f54strb w0, [sp+46]
00285f58str x1, [sp+128]
00285f5cstr x2, [sp+136]
00285f60ldrb w1, [sp+46]
00285f64strb w1, [sp+47]
00285f68ldr x1, [sp+136]
00285f6cldr x0, [sp+128]
00285f70str x0, [sp+152]
00285f74str x1, [sp+160]
00285f78str x0, [sp+72]
00285f7cstr x1, [sp+80]
00285f80adrp x27, 0x79c000
00285f84ldr x2, [x27+1520]
00285f88subs xzr, x2, x0
00285f8cb.ne 0x285f94
00285f90b 0x285f98
00285f94
00285f94loc_285f94:
00285f94b 0x285fd0
00285f98
00285f98loc_285f98:
00285f98adrp x27, 0x79c000
00285f9cldr x2, [x27+1528]
00285fa0bl runtime.ifaceeq
00285fa4tbnz w0, 0, 0x285fac
00285fa8b 0x285fcc
00285fac
00285facloc_285fac:
00285facldr x2, [sp+184]
00285fb0str x2, [sp+64]
00285fb4orr x1, xzr, 1
00285fb8strb w1, [sp+45]
00285fbcldr x0, [sp+64]
00285fc0ldur x29, [sp-8]
00285fc4ldr x30, [sp], 176
00285fc8ret x30
00285fcc
00285fccloc_285fcc:
00285fccb 0x285fd0
00285fd0
00285fd0loc_285fd0:
00285fd0str xzr, [sp+64]
00285fd4strb wzr, [sp+45]
00285fd8ldr x0, [sp+64]
00285fdcmov x1, xzr
00285fe0ldur x29, [sp-8]
00285fe4ldr x30, [sp], 176
00285fe8ret x30
00285fec
00285fecloc_285fec:
00285fecstp x0, x1, [sp+8]
00285ff0stp x2, x3, [sp+24]
00285ff4mov x3, x30
00285ff8bl runtime.morestack_noctxt.abi0
00285ffcldp x0, x1, [sp+8]
00286000ldp x2, x3, [sp+24]
00286004b 0x285e90
00286008udf 0
0028600cudf 0
00285e90
00285e90math/big.(*Int).setFromScanner: ; void math/big.(*Int).setFromScanner(math/big.Int * z, io.ByteScanner r, int base)
00285e90ldr x16, [x28+16]
00285e94sub x17, sp, 48
00285e98subs xzr, x17, x16
00285e9cb.ls 0x285fec
00285ea0str x30, [sp-176]!
00285ea4stur x29, [sp-8]
00285ea8sub x29, sp, 8
00285eacstr x0, [sp+184]
00285eb0str x1, [sp+192]
00285eb4str x2, [sp+200]
00285eb8str x3, [sp+208]
00285ebcstr xzr, [sp+64]
00285ec0strb wzr, [sp+45]
00285ec4str xzr, [sp+144]
00285ec8stp xzr, xzr, [sp+128]
00285eccldr x3, [sp+208]
00285ed0ldr x1, [sp+192]
00285ed4ldr x2, [sp+200]
00285ed8ldr x0, [sp+184]
00285edcbl math/big.(*Int).scan
00285ee0str x0, [sp+144]
00285ee4str x1, [sp+56]
00285ee8str x2, [sp+128]
00285eecstr x3, [sp+136]
00285ef0ldr x4, [sp+144]
00285ef4str x4, [sp+120]
00285ef8ldr x4, [sp+56]
00285efcstr x4, [sp+48]
00285f00ldr x4, [sp+136]
00285f04ldr x5, [sp+128]
00285f08str x5, [sp+104]
00285f0cstr x4, [sp+112]
00285f10str x5, [sp+88]
00285f14str x4, [sp+96]
00285f18cbnz x5, 0x285f20
00285f1cb 0x285f3c
00285f20
00285f20loc_285f20:
00285f20str xzr, [sp+64]
00285f24strb wzr, [sp+45]
00285f28ldr x0, [sp+64]
00285f2cmov x1, xzr
00285f30ldur x29, [sp-8]
00285f34ldr x30, [sp], 176
00285f38ret x30
00285f3c
00285f3cloc_285f3c:
00285f3cstp xzr, xzr, [sp+128]
00285f40ldr x1, [sp+192]
00285f44ldrsb x27, [x1]
00285f48ldr x1, [x1+24]
00285f4cldr x0, [sp+200]
00285f50blr x1
00285f54strb w0, [sp+46]
00285f58str x1, [sp+128]
00285f5cstr x2, [sp+136]
00285f60ldrb w1, [sp+46]
00285f64strb w1, [sp+47]
00285f68ldr x1, [sp+136]
00285f6cldr x0, [sp+128]
00285f70str x0, [sp+152]
00285f74str x1, [sp+160]
00285f78str x0, [sp+72]
00285f7cstr x1, [sp+80]
00285f80adrp x27, 0x79c000
00285f84ldr x2, [x27+1520]
00285f88subs xzr, x2, x0
00285f8cb.ne 0x285f94
00285f90b 0x285f98
00285f94
00285f94loc_285f94:
00285f94b 0x285fd0
00285f98
00285f98loc_285f98:
00285f98adrp x27, 0x79c000
00285f9cldr x2, [x27+1528]
00285fa0bl runtime.ifaceeq
00285fa4tbnz w0, 0, 0x285fac
00285fa8b 0x285fcc
00285fac
00285facloc_285fac:
00285facldr x2, [sp+184]
00285fb0str x2, [sp+64]
00285fb4orr x1, xzr, 1
00285fb8strb w1, [sp+45]
00285fbcldr x0, [sp+64]
00285fc0ldur x29, [sp-8]
00285fc4ldr x30, [sp], 176
00285fc8ret x30
00285fcc
00285fccloc_285fcc:
00285fccb 0x285fd0
00285fd0
00285fd0loc_285fd0:
00285fd0str xzr, [sp+64]
00285fd4strb wzr, [sp+45]
00285fd8ldr x0, [sp+64]
00285fdcmov x1, xzr
00285fe0ldur x29, [sp-8]
00285fe4ldr x30, [sp], 176
00285fe8ret x30
00285fec
00285fecloc_285fec:
00285fecstp x0, x1, [sp+8]
00285ff0stp x2, x3, [sp+24]
00285ff4mov x3, x30
00285ff8bl runtime.morestack_noctxt.abi0
00285ffcldp x0, x1, [sp+8]
00286000ldp x2, x3, [sp+24]
00286004b 0x285e90
00286008udf 0
0028600cudf 0
00285e90
00286010
00286010math/big.(*Int).SetBytes: ; void math/big.(*Int).SetBytes(math/big.Int * z, struct []uint8 buf)
00286010ldr x16, [x28+16]
00286014subs xzr, sp, x16
00286018b.ls 0x2860d4
0028601cstr x30, [sp-128]!
00286020stur x29, [sp-8]
00286024sub x29, sp, 8
00286028str x0, [sp+136]
0028602cstr x1, [sp+144]
00286030str x2, [sp+152]
00286034str x3, [sp+160]
00286038str xzr, [sp+64]
0028603cldr x6, [sp+136]
00286040ldrsb x27, [x6]
00286044ldr x0, [x6+8]
00286048ldr x1, [x6+16]
0028604cldr x2, [x6+24]
00286050str x0, [sp+72]
00286054str x1, [sp+80]
00286058str x2, [sp+88]
0028605cldr x3, [sp+144]
00286060ldr x4, [sp+152]
00286064ldr x5, [sp+160]
00286068bl math/big.nat.setBytes
0028606cstr x0, [sp+96]
00286070str x1, [sp+104]
00286074str x2, [sp+112]
00286078ldr x6, [sp+136]
0028607cldrsb x27, [x6]
00286080str x1, [x6+16]
00286084str x2, [x6+24]
00286088adrp x27, 0x7c5000
0028608cldr w7, [x27+3056]
00286090cbz w7, 0x286098
00286094b 0x28609c
00286098
00286098loc_286098:
00286098b 0x2860b0
0028609c
0028609cloc_28609c:
0028609cbl runtime.gcWriteBarrier2
002860a0str x0, [x25]
002860a4ldr x1, [x6+8]
002860a8str x1, [x25+8]
002860acb 0x2860b0
002860b0
002860b0loc_2860b0:
002860b0str x0, [x6+8]
002860b4ldr x1, [sp+136]
002860b8ldrsb x27, [x1]
002860bcstrb wzr, [x1]
002860c0ldr x0, [sp+136]
002860c4str x0, [sp+64]
002860c8ldur x29, [sp-8]
002860ccldr x30, [sp], 128
002860d0ret x30
002860d4
002860d4loc_2860d4:
002860d4stp x0, x1, [sp+8]
002860d8stp x2, x3, [sp+24]
002860dcmov x3, x30
002860e0bl runtime.morestack_noctxt.abi0
002860e4ldp x0, x1, [sp+8]
002860e8ldp x2, x3, [sp+24]
002860ecb 0x286010
00286010
00286010math/big.(*Int).SetBytes: ; void math/big.(*Int).SetBytes(math/big.Int * z, struct []uint8 buf)
00286010ldr x16, [x28+16]
00286014subs xzr, sp, x16
00286018b.ls 0x2860d4
0028601cstr x30, [sp-128]!
00286020stur x29, [sp-8]
00286024sub x29, sp, 8
00286028str x0, [sp+136]
0028602cstr x1, [sp+144]
00286030str x2, [sp+152]
00286034str x3, [sp+160]
00286038str xzr, [sp+64]
0028603cldr x6, [sp+136]
00286040ldrsb x27, [x6]
00286044ldr x0, [x6+8]
00286048ldr x1, [x6+16]
0028604cldr x2, [x6+24]
00286050str x0, [sp+72]
00286054str x1, [sp+80]
00286058str x2, [sp+88]
0028605cldr x3, [sp+144]
00286060ldr x4, [sp+152]
00286064ldr x5, [sp+160]
00286068bl math/big.nat.setBytes
0028606cstr x0, [sp+96]
00286070str x1, [sp+104]
00286074str x2, [sp+112]
00286078ldr x6, [sp+136]
0028607cldrsb x27, [x6]
00286080str x1, [x6+16]
00286084str x2, [x6+24]
00286088adrp x27, 0x7c5000
0028608cldr w7, [x27+3056]
00286090cbz w7, 0x286098
00286094b 0x28609c
00286098
00286098loc_286098:
00286098b 0x2860b0
0028609c
0028609cloc_28609c:
0028609cbl runtime.gcWriteBarrier2
002860a0str x0, [x25]
002860a4ldr x1, [x6+8]
002860a8str x1, [x25+8]
002860acb 0x2860b0
002860b0
002860b0loc_2860b0:
002860b0str x0, [x6+8]
002860b4ldr x1, [sp+136]
002860b8ldrsb x27, [x1]
002860bcstrb wzr, [x1]
002860c0ldr x0, [sp+136]
002860c4str x0, [sp+64]
002860c8ldur x29, [sp-8]
002860ccldr x30, [sp], 128
002860d0ret x30
002860d4
002860d4loc_2860d4:
002860d4stp x0, x1, [sp+8]
002860d8stp x2, x3, [sp+24]
002860dcmov x3, x30
002860e0bl runtime.morestack_noctxt.abi0
002860e4ldp x0, x1, [sp+8]
002860e8ldp x2, x3, [sp+24]
002860ecb 0x286010
00286010
002860f0
002860f0math/big.(*Int).Bytes: ; void math/big.(*Int).Bytes(math/big.Int * x)
002860f0ldr x16, [x28+16]
002860f4sub x17, sp, 48
002860f8subs xzr, x17, x16
002860fcb.ls 0x2861e4
00286100str x30, [sp-176]!
00286104stur x29, [sp-8]
00286108sub x29, sp, 8
0028610cstr x0, [sp+184]
00286110str xzr, [sp+72]
00286114stp xzr, xzr, [sp+80]
00286118ldr x3, [sp+184]
0028611cldrsb x27, [x3]
00286120ldr x3, [x3+16]
00286124str x3, [sp+64]
00286128ubfm x2, x3, 61, 60
0028612cstr x2, [sp+56]
00286130adrp x0, 0x36f000
00286134add x0, x0, 3072
00286138mov x1, x2
0028613cbl runtime.makeslice
00286140ldr x3, [sp+56]
00286144ldr x4, [sp+56]
00286148str x0, [sp+96]
0028614cstr x3, [sp+104]
00286150str x4, [sp+112]
00286154ldr x3, [sp+184]
00286158ldrsb x27, [x3]
0028615cldr x0, [x3+8]
00286160ldr x1, [x3+16]
00286164ldr x2, [x3+24]
00286168str x0, [sp+120]
0028616cstr x1, [sp+128]
00286170str x2, [sp+136]
00286174ldr x3, [sp+96]
00286178ldr x4, [sp+104]
0028617cldr x5, [sp+112]
00286180bl math/big.nat.bytes
00286184str x0, [sp+64]
00286188ldr x1, [sp+104]
0028618cldr x3, [sp+96]
00286190ldr x4, [sp+112]
00286194b 0x286198
00286198
00286198loc_286198:
00286198subs xzr, x0, x1
0028619cb.ls 0x2861a4
002861a0b 0x2861dc
002861a4
002861a4loc_2861a4:
002861a4sub x2, x4, x0
002861a8sub x1, x1, x0
002861acsub x4, xzr, x2
002861b0and x4, x0, x4, asr #63
002861b4add x0, x3, x4
002861b8str x0, [sp+144]
002861bcstr x1, [sp+152]
002861c0str x2, [sp+160]
002861c4str x0, [sp+72]
002861c8str x1, [sp+80]
002861ccstr x2, [sp+88]
002861d0ldur x29, [sp-8]
002861d4ldr x30, [sp], 176
002861d8ret x30
002861dc
002861dcloc_2861dc:
002861dcbl runtime.panicSliceB
002861e0hint
002861e4
002861e4loc_2861e4:
002861e4str x0, [sp+8]
002861e8mov x3, x30
002861ecbl runtime.morestack_noctxt.abi0
002861f0ldr x0, [sp+8]
002861f4b 0x2860f0
002861f8udf 0
002861fcudf 0
002860f0
002860f0math/big.(*Int).Bytes: ; void math/big.(*Int).Bytes(math/big.Int * x)
002860f0ldr x16, [x28+16]
002860f4sub x17, sp, 48
002860f8subs xzr, x17, x16
002860fcb.ls 0x2861e4
00286100str x30, [sp-176]!
00286104stur x29, [sp-8]
00286108sub x29, sp, 8
0028610cstr x0, [sp+184]
00286110str xzr, [sp+72]
00286114stp xzr, xzr, [sp+80]
00286118ldr x3, [sp+184]
0028611cldrsb x27, [x3]
00286120ldr x3, [x3+16]
00286124str x3, [sp+64]
00286128ubfm x2, x3, 61, 60
0028612cstr x2, [sp+56]
00286130adrp x0, 0x36f000
00286134add x0, x0, 3072
00286138mov x1, x2
0028613cbl runtime.makeslice
00286140ldr x3, [sp+56]
00286144ldr x4, [sp+56]
00286148str x0, [sp+96]
0028614cstr x3, [sp+104]
00286150str x4, [sp+112]
00286154ldr x3, [sp+184]
00286158ldrsb x27, [x3]
0028615cldr x0, [x3+8]
00286160ldr x1, [x3+16]
00286164ldr x2, [x3+24]
00286168str x0, [sp+120]
0028616cstr x1, [sp+128]
00286170str x2, [sp+136]
00286174ldr x3, [sp+96]
00286178ldr x4, [sp+104]
0028617cldr x5, [sp+112]
00286180bl math/big.nat.bytes
00286184str x0, [sp+64]
00286188ldr x1, [sp+104]
0028618cldr x3, [sp+96]
00286190ldr x4, [sp+112]
00286194b 0x286198
00286198
00286198loc_286198:
00286198subs xzr, x0, x1
0028619cb.ls 0x2861a4
002861a0b 0x2861dc
002861a4
002861a4loc_2861a4:
002861a4sub x2, x4, x0
002861a8sub x1, x1, x0
002861acsub x4, xzr, x2
002861b0and x4, x0, x4, asr #63
002861b4add x0, x3, x4
002861b8str x0, [sp+144]
002861bcstr x1, [sp+152]
002861c0str x2, [sp+160]
002861c4str x0, [sp+72]
002861c8str x1, [sp+80]
002861ccstr x2, [sp+88]
002861d0ldur x29, [sp-8]
002861d4ldr x30, [sp], 176
002861d8ret x30
002861dc
002861dcloc_2861dc:
002861dcbl runtime.panicSliceB
002861e0hint
002861e4
002861e4loc_2861e4:
002861e4str x0, [sp+8]
002861e8mov x3, x30
002861ecbl runtime.morestack_noctxt.abi0
002861f0ldr x0, [sp+8]
002861f4b 0x2860f0
002861f8udf 0
002861fcudf 0
002860f0
00286200
00286200math/big.(*Int).FillBytes: ; void math/big.(*Int).FillBytes(math/big.Int * x, struct []uint8 buf)
00286200ldr x16, [x28+16]
00286204subs xzr, sp, x16
00286208b.ls 0x2862b4
0028620cstr x30, [sp-128]!
00286210stur x29, [sp-8]
00286214sub x29, sp, 8
00286218str x0, [sp+136]
0028621cstr x1, [sp+144]
00286220str x2, [sp+152]
00286224str x3, [sp+160]
00286228str xzr, [sp+64]
0028622cstp xzr, xzr, [sp+72]
00286230ldr x6, [sp+152]
00286234cbnz x6, 0x28623c
00286238b 0x28625c
0028623c
0028623cloc_28623c:
0028623cldr x2, [sp+144]
00286240str x2, [sp+112]
00286244ldr x2, [sp+152]
00286248str x2, [sp+56]
0028624cldr x1, [sp+56]
00286250ldr x0, [sp+112]
00286254bl runtime.memclrNoHeapPointers
00286258b 0x286260
0028625c
0028625cloc_28625c:
0028625cb 0x286260
00286260
00286260loc_286260:
00286260ldr x6, [sp+136]
00286264ldrsb x27, [x6]
00286268ldr x0, [x6+8]
0028626cldr x1, [x6+16]
00286270ldr x2, [x6+24]
00286274str x0, [sp+88]
00286278str x1, [sp+96]
0028627cstr x2, [sp+104]
00286280ldr x3, [sp+144]
00286284ldr x4, [sp+152]
00286288ldr x5, [sp+160]
0028628cbl math/big.nat.bytes
00286290ldr x0, [sp+144]
00286294ldr x1, [sp+152]
00286298ldr x2, [sp+160]
0028629cstr x0, [sp+64]
002862a0str x1, [sp+72]
002862a4str x2, [sp+80]
002862a8ldur x29, [sp-8]
002862acldr x30, [sp], 128
002862b0ret x30
002862b4
002862b4loc_2862b4:
002862b4stp x0, x1, [sp+8]
002862b8stp x2, x3, [sp+24]
002862bcmov x3, x30
002862c0bl runtime.morestack_noctxt.abi0
002862c4ldp x0, x1, [sp+8]
002862c8ldp x2, x3, [sp+24]
002862ccb 0x286200
00286200
00286200math/big.(*Int).FillBytes: ; void math/big.(*Int).FillBytes(math/big.Int * x, struct []uint8 buf)
00286200ldr x16, [x28+16]
00286204subs xzr, sp, x16
00286208b.ls 0x2862b4
0028620cstr x30, [sp-128]!
00286210stur x29, [sp-8]
00286214sub x29, sp, 8
00286218str x0, [sp+136]
0028621cstr x1, [sp+144]
00286220str x2, [sp+152]
00286224str x3, [sp+160]
00286228str xzr, [sp+64]
0028622cstp xzr, xzr, [sp+72]
00286230ldr x6, [sp+152]
00286234cbnz x6, 0x28623c
00286238b 0x28625c
0028623c
0028623cloc_28623c:
0028623cldr x2, [sp+144]
00286240str x2, [sp+112]
00286244ldr x2, [sp+152]
00286248str x2, [sp+56]
0028624cldr x1, [sp+56]
00286250ldr x0, [sp+112]
00286254bl runtime.memclrNoHeapPointers
00286258b 0x286260
0028625c
0028625cloc_28625c:
0028625cb 0x286260
00286260
00286260loc_286260:
00286260ldr x6, [sp+136]
00286264ldrsb x27, [x6]
00286268ldr x0, [x6+8]
0028626cldr x1, [x6+16]
00286270ldr x2, [x6+24]
00286274str x0, [sp+88]
00286278str x1, [sp+96]
0028627cstr x2, [sp+104]
00286280ldr x3, [sp+144]
00286284ldr x4, [sp+152]
00286288ldr x5, [sp+160]
0028628cbl math/big.nat.bytes
00286290ldr x0, [sp+144]
00286294ldr x1, [sp+152]
00286298ldr x2, [sp+160]
0028629cstr x0, [sp+64]
002862a0str x1, [sp+72]
002862a4str x2, [sp+80]
002862a8ldur x29, [sp-8]
002862acldr x30, [sp], 128
002862b0ret x30
002862b4
002862b4loc_2862b4:
002862b4stp x0, x1, [sp+8]
002862b8stp x2, x3, [sp+24]
002862bcmov x3, x30
002862c0bl runtime.morestack_noctxt.abi0
002862c4ldp x0, x1, [sp+8]
002862c8ldp x2, x3, [sp+24]
002862ccb 0x286200
00286200
002862d0
002862d0math/big.(*Int).BitLen: ; void math/big.(*Int).BitLen(math/big.Int * x)
002862d0ldr x16, [x28+16]
002862d4subs xzr, sp, x16
002862d8b.ls 0x286328
002862dcstr x30, [sp-80]!
002862e0stur x29, [sp-8]
002862e4sub x29, sp, 8
002862e8str x0, [sp+88]
002862ecstr xzr, [sp+32]
002862f0ldrsb x27, [x0]
002862f4ldr x3, [x0+8]
002862f8ldr x1, [x0+16]
002862fcldr x2, [x0+24]
00286300str x3, [sp+48]
00286304str x1, [sp+56]
00286308str x2, [sp+64]
0028630cmov x0, x3
00286310bl math/big.nat.bitLen
00286314str x0, [sp+40]
00286318str x0, [sp+32]
0028631cldur x29, [sp-8]
00286320ldr x30, [sp], 80
00286324ret x30
00286328
00286328loc_286328:
00286328str x0, [sp+8]
0028632cmov x3, x30
00286330bl runtime.morestack_noctxt.abi0
00286334ldr x0, [sp+8]
00286338b 0x2862d0
0028633cudf 0
002862d0
002862d0math/big.(*Int).BitLen: ; void math/big.(*Int).BitLen(math/big.Int * x)
002862d0ldr x16, [x28+16]
002862d4subs xzr, sp, x16
002862d8b.ls 0x286328
002862dcstr x30, [sp-80]!
002862e0stur x29, [sp-8]
002862e4sub x29, sp, 8
002862e8str x0, [sp+88]
002862ecstr xzr, [sp+32]
002862f0ldrsb x27, [x0]
002862f4ldr x3, [x0+8]
002862f8ldr x1, [x0+16]
002862fcldr x2, [x0+24]
00286300str x3, [sp+48]
00286304str x1, [sp+56]
00286308str x2, [sp+64]
0028630cmov x0, x3
00286310bl math/big.nat.bitLen
00286314str x0, [sp+40]
00286318str x0, [sp+32]
0028631cldur x29, [sp-8]
00286320ldr x30, [sp], 80
00286324ret x30
00286328
00286328loc_286328:
00286328str x0, [sp+8]
0028632cmov x3, x30
00286330bl runtime.morestack_noctxt.abi0
00286334ldr x0, [sp+8]
00286338b 0x2862d0
0028633cudf 0
002862d0
00286340
00286340math/big.(*Int).Exp: ; void math/big.(*Int).Exp(math/big.Int * z, math/big.Int * x, math/big.Int * y, math/big.Int * m)
00286340ldr x16, [x28+16]
00286344subs xzr, sp, x16
00286348b.ls 0x286398
0028634cstr x30, [sp-80]!
00286350stur x29, [sp-8]
00286354sub x29, sp, 8
00286358str x0, [sp+88]
0028635cstr x1, [sp+96]
00286360str x2, [sp+104]
00286364str x3, [sp+112]
00286368str xzr, [sp+56]
0028636cldr x1, [sp+96]
00286370ldr x2, [sp+104]
00286374ldr x3, [sp+112]
00286378ldr x0, [sp+88]
0028637cmov x4, xzr
00286380bl math/big.(*Int).exp
00286384str x0, [sp+64]
00286388str x0, [sp+56]
0028638cldur x29, [sp-8]
00286390ldr x30, [sp], 80
00286394ret x30
00286398
00286398loc_286398:
00286398stp x0, x1, [sp+8]
0028639cstp x2, x3, [sp+24]
002863a0mov x3, x30
002863a4bl runtime.morestack_noctxt.abi0
002863a8ldp x0, x1, [sp+8]
002863acldp x2, x3, [sp+24]
002863b0b 0x286340
002863b4udf 0
002863b8udf 0
002863bcudf 0
00286340
00286340math/big.(*Int).Exp: ; void math/big.(*Int).Exp(math/big.Int * z, math/big.Int * x, math/big.Int * y, math/big.Int * m)
00286340ldr x16, [x28+16]
00286344subs xzr, sp, x16
00286348b.ls 0x286398
0028634cstr x30, [sp-80]!
00286350stur x29, [sp-8]
00286354sub x29, sp, 8
00286358str x0, [sp+88]
0028635cstr x1, [sp+96]
00286360str x2, [sp+104]
00286364str x3, [sp+112]
00286368str xzr, [sp+56]
0028636cldr x1, [sp+96]
00286370ldr x2, [sp+104]
00286374ldr x3, [sp+112]
00286378ldr x0, [sp+88]
0028637cmov x4, xzr
00286380bl math/big.(*Int).exp
00286384str x0, [sp+64]
00286388str x0, [sp+56]
0028638cldur x29, [sp-8]
00286390ldr x30, [sp], 80
00286394ret x30
00286398
00286398loc_286398:
00286398stp x0, x1, [sp+8]
0028639cstp x2, x3, [sp+24]
002863a0mov x3, x30
002863a4bl runtime.morestack_noctxt.abi0
002863a8ldp x0, x1, [sp+8]
002863acldp x2, x3, [sp+24]
002863b0b 0x286340
002863b4udf 0
002863b8udf 0
002863bcudf 0
00286340
002863c0
002863c0math/big.(*Int).exp: ; void math/big.(*Int).exp(math/big.Int * z, math/big.Int * x, math/big.Int * y, math/big.Int * m, bool slow)
002863c0ldr x16, [x28+16]
002863c4sub x17, sp, 320
002863c8subs xzr, x17, x16
002863ccb.ls 0x286868
002863d0sub x20, sp, 448
002863d4stp x29, x30, [x20-8]
002863d8add sp, x20, 0
002863dcsub x29, sp, 8
002863e0str x0, [sp+456]
002863e4str x1, [sp+464]
002863e8str x2, [sp+472]
002863ecstr x3, [sp+480]
002863f0strb w4, [sp+488]
002863f4str xzr, [sp+136]
002863f8ldr x13, [sp+464]
002863fcldrsb x27, [x13]
00286400ldr x14, [x13+8]
00286404ldr x15, [x13+16]
00286408ldr x13, [x13+24]
0028640cstr x14, [sp+168]
00286410str x15, [sp+176]
00286414str x13, [sp+184]
00286418ldr x13, [sp+472]
0028641cldrsb x27, [x13]
00286420ldrb w13, [x13]
00286424tbnz w13, 0, 0x28642c
00286428b 0x2864f8
0028642c
0028642cloc_28642c:
0028642cldr x3, [sp+480]
00286430subs xzr, x3, 0
00286434cset x4, ne
00286438eor x4, x4, 1
0028643cstrb w4, [sp+119]
00286440cbnz x3, 0x286448
00286444b 0x286468
00286448
00286448loc_286448:
00286448ldr x3, [sp+480]
0028644cldrsb x27, [x3]
00286450ldr x3, [x3+16]
00286454str x3, [sp+128]
00286458subs xzr, x3, 0
0028645ccset x3, eq
00286460strb w3, [sp+119]
00286464b 0x28646c
00286468
00286468loc_286468:
00286468b 0x28646c
0028646c
0028646cloc_28646c:
0028646cldrb w3, [sp+119]
00286470tbnz w3, 0, 0x286478
00286474b 0x286498
00286478
00286478loc_286478:
00286478ldr x0, [sp+456]
0028647corr x1, xzr, 1
00286480bl math/big.(*Int).SetInt64
00286484str x0, [sp+432]
00286488str x0, [sp+136]
0028648cldp x29, x30, [sp-8]
00286490add sp, sp, 448
00286494ret x30
00286498
00286498loc_286498:
00286498strb wzr, [sp+376]
0028649cstr xzr, [sp+384]
002864a0stp xzr, xzr, [sp+392]
002864a4add x0, sp, 376
002864a8str x0, [sp+432]
002864acldr x1, [sp+464]
002864b0ldr x2, [sp+480]
002864b4bl math/big.(*Int).ModInverse
002864b8str x0, [sp+216]
002864bccbnz x0, 0x2864c4
002864c0b 0x2864e4
002864c4
002864c4loc_2864c4:
002864c4ldrsb x27, [x0]
002864c8ldr x13, [x0+8]
002864ccldr x14, [x0+16]
002864d0ldr x15, [x0+24]
002864d4str x13, [sp+168]
002864d8str x14, [sp+176]
002864dcstr x15, [sp+184]
002864e0b 0x2864fc
002864e4
002864e4loc_2864e4:
002864e4str xzr, [sp+136]
002864e8mov x0, xzr
002864ecldp x29, x30, [sp-8]
002864f0add sp, sp, 448
002864f4ret x30
002864f8
002864f8loc_2864f8:
002864f8b 0x2864fc
002864fc
002864fcloc_2864fc:
002864fcldr x13, [sp+472]
00286500ldrsb x27, [x13]
00286504ldr x14, [x13+8]
00286508ldr x15, [x13+16]
0028650cldr x13, [x13+24]
00286510str x14, [sp+144]
00286514str x15, [sp+152]
00286518str x13, [sp+160]
0028651cstr xzr, [sp+192]
00286520stp xzr, xzr, [sp+200]
00286524ldr x13, [sp+480]
00286528cbnz x13, 0x286530
0028652cb 0x286604
00286530
00286530loc_286530:
00286530ldr x13, [sp+480]
00286534ldr x14, [sp+456]
00286538subs xzr, x13, x14
0028653ccset x13, eq
00286540strb w13, [sp+119]
00286544b.eq 0x28654c
00286548b 0x286550
0028654c
0028654cloc_28654c:
0028654cb 0x2865ac
00286550
00286550loc_286550:
00286550ldr x6, [sp+456]
00286554ldrsb x27, [x6]
00286558ldr x7, [x6+8]
0028655cldr x8, [x6+16]
00286560ldr x6, [x6+24]
00286564str x7, [sp+352]
00286568str x8, [sp+360]
0028656cstr x6, [sp+368]
00286570ldr x6, [sp+480]
00286574ldrsb x27, [x6]
00286578ldr x3, [x6+8]
0028657cldr x4, [x6+16]
00286580ldr x5, [x6+24]
00286584str x3, [sp+328]
00286588str x4, [sp+336]
0028658cstr x5, [sp+344]
00286590ldr x0, [sp+352]
00286594ldr x1, [sp+360]
00286598ldr x2, [sp+368]
0028659cbl math/big.alias
002865a0strb w0, [sp+118]
002865a4strb w0, [sp+119]
002865a8b 0x2865ac
002865ac
002865acloc_2865ac:
002865acldrb w13, [sp+119]
002865b0tbnz w13, 0, 0x2865b8
002865b4b 0x2865dc
002865b8
002865b8loc_2865b8:
002865b8strb wzr, [sp+296]
002865bcstr xzr, [sp+304]
002865c0stp xzr, xzr, [sp+312]
002865c4add x0, sp, 296
002865c8str x0, [sp+432]
002865ccldr x1, [sp+480]
002865d0bl math/big.(*Int).Set
002865d4str x0, [sp+480]
002865d8b 0x2865e0
002865dc
002865dcloc_2865dc:
002865dcb 0x2865e0
002865e0
002865e0loc_2865e0:
002865e0ldr x13, [sp+480]
002865e4ldrsb x27, [x13]
002865e8ldr x14, [x13+8]
002865ecldr x15, [x13+16]
002865f0ldr x13, [x13+24]
002865f4str x14, [sp+192]
002865f8str x15, [sp+200]
002865fcstr x13, [sp+208]
00286600b 0x286608
00286604
00286604loc_286604:
00286604b 0x286608
00286608
00286608loc_286608:
00286608ldr x13, [sp+456]
0028660cldrsb x27, [x13]
00286610ldr x0, [x13+8]
00286614ldr x1, [x13+16]
00286618ldr x2, [x13+24]
0028661cstr x0, [sp+272]
00286620str x1, [sp+280]
00286624str x2, [sp+288]
00286628ldrb w12, [sp+488]
0028662cldr x3, [sp+168]
00286630ldr x6, [sp+144]
00286634ldr x9, [sp+192]
00286638ldr x4, [sp+176]
0028663cldr x7, [sp+152]
00286640ldr x10, [sp+200]
00286644ldr x5, [sp+184]
00286648ldr x8, [sp+160]
0028664cldr x11, [sp+208]
00286650bl math/big.nat.expNN
00286654str x0, [sp+408]
00286658str x1, [sp+416]
0028665cstr x2, [sp+424]
00286660ldr x13, [sp+456]
00286664ldrsb x27, [x13]
00286668str x1, [x13+16]
0028666cstr x2, [x13+24]
00286670adrp x27, 0x7c5000
00286674ldr w14, [x27+3056]
00286678cbz w14, 0x286680
0028667cb 0x286684
00286680
00286680loc_286680:
00286680b 0x286698
00286684
00286684loc_286684:
00286684bl runtime.gcWriteBarrier2
00286688str x0, [x25]
0028668cldr x9, [x13+8]
00286690str x9, [x25+8]
00286694b 0x286698
00286698
00286698loc_286698:
00286698str x0, [x13+8]
0028669cldr x9, [sp+456]
002866a0ldrsb x27, [x9]
002866a4ldr x9, [x9+16]
002866a8str x9, [sp+128]
002866acsubs xzr, x9, 0
002866b0cset x10, ne
002866b4strb w10, [sp+117]
002866b8cbnz x9, 0x2866c0
002866bcb 0x2866d4
002866c0
002866c0loc_2866c0:
002866c0ldr x9, [sp+464]
002866c4ldrsb x27, [x9]
002866c8ldrb w9, [x9]
002866ccstrb w9, [sp+117]
002866d0b 0x2866d8
002866d4
002866d4loc_2866d4:
002866d4b 0x2866d8
002866d8
002866d8loc_2866d8:
002866d8ldrb w9, [sp+117]
002866dcstrb w9, [sp+118]
002866e0tbnz w9, 0, 0x2866e8
002866e4b 0x286700
002866e8
002866e8loc_2866e8:
002866e8ldr x9, [sp+152]
002866ecstr x9, [sp+120]
002866f0subs xzr, x9, 0
002866f4cset x9, ne
002866f8strb w9, [sp+118]
002866fcb 0x286704
00286700
00286700loc_286700:
00286700b 0x286704
00286704
00286704loc_286704:
00286704ldrb w9, [sp+118]
00286708strb w9, [sp+119]
0028670ctbnz w9, 0, 0x286714
00286710b 0x28673c
00286714
00286714loc_286714:
00286714ldr x1, [sp+152]
00286718ldr x9, [sp+144]
0028671csubs xzr, x1, 0
00286720b.hi 0x286728
00286724b 0x28685c
00286728
00286728loc_286728:
00286728ldr x9, [x9]
0028672cands xzr, x9, 1
00286730cset x9, ne
00286734strb w9, [sp+119]
00286738b 0x286740
0028673c
0028673cloc_28673c:
0028673cb 0x286740
00286740
00286740loc_286740:
00286740ldr x9, [sp+456]
00286744ldrsb x27, [x9]
00286748ldrb w10, [sp+119]
0028674cstrb w10, [x9]
00286750ldr x9, [sp+456]
00286754ldrsb x27, [x9]
00286758ldrb w9, [x9]
0028675cstrb w9, [sp+117]
00286760tbnz w9, 0, 0x286768
00286764b 0x286780
00286768
00286768loc_286768:
00286768ldr x9, [sp+200]
0028676cstr x9, [sp+128]
00286770subs xzr, x9, 0
00286774cset x9, ne
00286778strb w9, [sp+117]
0028677cb 0x286784
00286780
00286780loc_286780:
00286780b 0x286784
00286784
00286784loc_286784:
00286784ldrb w9, [sp+117]
00286788tbnz w9, 0, 0x286790
0028678cb 0x286844
00286790
00286790loc_286790:
00286790ldr x9, [sp+456]
00286794ldrsb x27, [x9]
00286798ldr x10, [x9+8]
0028679cldr x11, [x9+16]
002867a0ldr x9, [x9+24]
002867a4str x10, [sp+248]
002867a8str x11, [sp+256]
002867acstr x9, [sp+264]
002867b0ldr x9, [sp+456]
002867b4ldrsb x27, [x9]
002867b8ldr x6, [x9+8]
002867bcldr x7, [x9+16]
002867c0ldr x8, [x9+24]
002867c4str x6, [sp+224]
002867c8str x7, [sp+232]
002867ccstr x8, [sp+240]
002867d0ldr x3, [sp+192]
002867d4ldr x4, [sp+200]
002867d8ldr x5, [sp+208]
002867dcldr x0, [sp+248]
002867e0ldr x1, [sp+256]
002867e4ldr x2, [sp+264]
002867e8bl math/big.nat.sub
002867ecstr x0, [sp+408]
002867f0str x1, [sp+416]
002867f4str x2, [sp+424]
002867f8ldr x9, [sp+456]
002867fcldrsb x27, [x9]
00286800str x1, [x9+16]
00286804str x2, [x9+24]
00286808adrp x27, 0x7c5000
0028680cldr w10, [x27+3056]
00286810cbz w10, 0x286818
00286814b 0x28681c
00286818
00286818loc_286818:
00286818b 0x286830
0028681c
0028681cloc_28681c:
0028681cbl runtime.gcWriteBarrier2
00286820str x0, [x25]
00286824ldr x1, [x9+8]
00286828str x1, [x25+8]
0028682cb 0x286830
00286830
00286830loc_286830:
00286830str x0, [x9+8]
00286834ldr x1, [sp+456]
00286838ldrsb x27, [x1]
0028683cstrb wzr, [x1]
00286840b 0x286848
00286844
00286844loc_286844:
00286844b 0x286848
00286848
00286848loc_286848:
00286848ldr x0, [sp+456]
0028684cstr x0, [sp+136]
00286850ldp x29, x30, [sp-8]
00286854add sp, sp, 448
00286858ret x30
0028685c
0028685cloc_28685c:
0028685cmov x0, xzr
00286860bl runtime.panicIndex
00286864hint
00286868
00286868loc_286868:
00286868stp x0, x1, [sp+8]
0028686cstp x2, x3, [sp+24]
00286870strb w4, [sp+40]
00286874mov x3, x30
00286878bl runtime.morestack_noctxt.abi0
0028687cldp x0, x1, [sp+8]
00286880ldp x2, x3, [sp+24]
00286884ldrb w4, [sp+40]
00286888b 0x2863c0
0028688cudf 0
002863c0
002863c0math/big.(*Int).exp: ; void math/big.(*Int).exp(math/big.Int * z, math/big.Int * x, math/big.Int * y, math/big.Int * m, bool slow)
002863c0ldr x16, [x28+16]
002863c4sub x17, sp, 320
002863c8subs xzr, x17, x16
002863ccb.ls 0x286868
002863d0sub x20, sp, 448
002863d4stp x29, x30, [x20-8]
002863d8add sp, x20, 0
002863dcsub x29, sp, 8
002863e0str x0, [sp+456]
002863e4str x1, [sp+464]
002863e8str x2, [sp+472]
002863ecstr x3, [sp+480]
002863f0strb w4, [sp+488]
002863f4str xzr, [sp+136]
002863f8ldr x13, [sp+464]
002863fcldrsb x27, [x13]
00286400ldr x14, [x13+8]
00286404ldr x15, [x13+16]
00286408ldr x13, [x13+24]
0028640cstr x14, [sp+168]
00286410str x15, [sp+176]
00286414str x13, [sp+184]
00286418ldr x13, [sp+472]
0028641cldrsb x27, [x13]
00286420ldrb w13, [x13]
00286424tbnz w13, 0, 0x28642c
00286428b 0x2864f8
0028642c
0028642cloc_28642c:
0028642cldr x3, [sp+480]
00286430subs xzr, x3, 0
00286434cset x4, ne
00286438eor x4, x4, 1
0028643cstrb w4, [sp+119]
00286440cbnz x3, 0x286448
00286444b 0x286468
00286448
00286448loc_286448:
00286448ldr x3, [sp+480]
0028644cldrsb x27, [x3]
00286450ldr x3, [x3+16]
00286454str x3, [sp+128]
00286458subs xzr, x3, 0
0028645ccset x3, eq
00286460strb w3, [sp+119]
00286464b 0x28646c
00286468
00286468loc_286468:
00286468b 0x28646c
0028646c
0028646cloc_28646c:
0028646cldrb w3, [sp+119]
00286470tbnz w3, 0, 0x286478
00286474b 0x286498
00286478
00286478loc_286478:
00286478ldr x0, [sp+456]
0028647corr x1, xzr, 1
00286480bl math/big.(*Int).SetInt64
00286484str x0, [sp+432]
00286488str x0, [sp+136]
0028648cldp x29, x30, [sp-8]
00286490add sp, sp, 448
00286494ret x30
00286498
00286498loc_286498:
00286498strb wzr, [sp+376]
0028649cstr xzr, [sp+384]
002864a0stp xzr, xzr, [sp+392]
002864a4add x0, sp, 376
002864a8str x0, [sp+432]
002864acldr x1, [sp+464]
002864b0ldr x2, [sp+480]
002864b4bl math/big.(*Int).ModInverse
002864b8str x0, [sp+216]
002864bccbnz x0, 0x2864c4
002864c0b 0x2864e4
002864c4
002864c4loc_2864c4:
002864c4ldrsb x27, [x0]
002864c8ldr x13, [x0+8]
002864ccldr x14, [x0+16]
002864d0ldr x15, [x0+24]
002864d4str x13, [sp+168]
002864d8str x14, [sp+176]
002864dcstr x15, [sp+184]
002864e0b 0x2864fc
002864e4
002864e4loc_2864e4:
002864e4str xzr, [sp+136]
002864e8mov x0, xzr
002864ecldp x29, x30, [sp-8]
002864f0add sp, sp, 448
002864f4ret x30
002864f8
002864f8loc_2864f8:
002864f8b 0x2864fc
002864fc
002864fcloc_2864fc:
002864fcldr x13, [sp+472]
00286500ldrsb x27, [x13]
00286504ldr x14, [x13+8]
00286508ldr x15, [x13+16]
0028650cldr x13, [x13+24]
00286510str x14, [sp+144]
00286514str x15, [sp+152]
00286518str x13, [sp+160]
0028651cstr xzr, [sp+192]
00286520stp xzr, xzr, [sp+200]
00286524ldr x13, [sp+480]
00286528cbnz x13, 0x286530
0028652cb 0x286604
00286530
00286530loc_286530:
00286530ldr x13, [sp+480]
00286534ldr x14, [sp+456]
00286538subs xzr, x13, x14
0028653ccset x13, eq
00286540strb w13, [sp+119]
00286544b.eq 0x28654c
00286548b 0x286550
0028654c
0028654cloc_28654c:
0028654cb 0x2865ac
00286550
00286550loc_286550:
00286550ldr x6, [sp+456]
00286554ldrsb x27, [x6]
00286558ldr x7, [x6+8]
0028655cldr x8, [x6+16]
00286560ldr x6, [x6+24]
00286564str x7, [sp+352]
00286568str x8, [sp+360]
0028656cstr x6, [sp+368]
00286570ldr x6, [sp+480]
00286574ldrsb x27, [x6]
00286578ldr x3, [x6+8]
0028657cldr x4, [x6+16]
00286580ldr x5, [x6+24]
00286584str x3, [sp+328]
00286588str x4, [sp+336]
0028658cstr x5, [sp+344]
00286590ldr x0, [sp+352]
00286594ldr x1, [sp+360]
00286598ldr x2, [sp+368]
0028659cbl math/big.alias
002865a0strb w0, [sp+118]
002865a4strb w0, [sp+119]
002865a8b 0x2865ac
002865ac
002865acloc_2865ac:
002865acldrb w13, [sp+119]
002865b0tbnz w13, 0, 0x2865b8
002865b4b 0x2865dc
002865b8
002865b8loc_2865b8:
002865b8strb wzr, [sp+296]
002865bcstr xzr, [sp+304]
002865c0stp xzr, xzr, [sp+312]
002865c4add x0, sp, 296
002865c8str x0, [sp+432]
002865ccldr x1, [sp+480]
002865d0bl math/big.(*Int).Set
002865d4str x0, [sp+480]
002865d8b 0x2865e0
002865dc
002865dcloc_2865dc:
002865dcb 0x2865e0
002865e0
002865e0loc_2865e0:
002865e0ldr x13, [sp+480]
002865e4ldrsb x27, [x13]
002865e8ldr x14, [x13+8]
002865ecldr x15, [x13+16]
002865f0ldr x13, [x13+24]
002865f4str x14, [sp+192]
002865f8str x15, [sp+200]
002865fcstr x13, [sp+208]
00286600b 0x286608
00286604
00286604loc_286604:
00286604b 0x286608
00286608
00286608loc_286608:
00286608ldr x13, [sp+456]
0028660cldrsb x27, [x13]
00286610ldr x0, [x13+8]
00286614ldr x1, [x13+16]
00286618ldr x2, [x13+24]
0028661cstr x0, [sp+272]
00286620str x1, [sp+280]
00286624str x2, [sp+288]
00286628ldrb w12, [sp+488]
0028662cldr x3, [sp+168]
00286630ldr x6, [sp+144]
00286634ldr x9, [sp+192]
00286638ldr x4, [sp+176]
0028663cldr x7, [sp+152]
00286640ldr x10, [sp+200]
00286644ldr x5, [sp+184]
00286648ldr x8, [sp+160]
0028664cldr x11, [sp+208]
00286650bl math/big.nat.expNN
00286654str x0, [sp+408]
00286658str x1, [sp+416]
0028665cstr x2, [sp+424]
00286660ldr x13, [sp+456]
00286664ldrsb x27, [x13]
00286668str x1, [x13+16]
0028666cstr x2, [x13+24]
00286670adrp x27, 0x7c5000
00286674ldr w14, [x27+3056]
00286678cbz w14, 0x286680
0028667cb 0x286684
00286680
00286680loc_286680:
00286680b 0x286698
00286684
00286684loc_286684:
00286684bl runtime.gcWriteBarrier2
00286688str x0, [x25]
0028668cldr x9, [x13+8]
00286690str x9, [x25+8]
00286694b 0x286698
00286698
00286698loc_286698:
00286698str x0, [x13+8]
0028669cldr x9, [sp+456]
002866a0ldrsb x27, [x9]
002866a4ldr x9, [x9+16]
002866a8str x9, [sp+128]
002866acsubs xzr, x9, 0
002866b0cset x10, ne
002866b4strb w10, [sp+117]
002866b8cbnz x9, 0x2866c0
002866bcb 0x2866d4
002866c0
002866c0loc_2866c0:
002866c0ldr x9, [sp+464]
002866c4ldrsb x27, [x9]
002866c8ldrb w9, [x9]
002866ccstrb w9, [sp+117]
002866d0b 0x2866d8
002866d4
002866d4loc_2866d4:
002866d4b 0x2866d8
002866d8
002866d8loc_2866d8:
002866d8ldrb w9, [sp+117]
002866dcstrb w9, [sp+118]
002866e0tbnz w9, 0, 0x2866e8
002866e4b 0x286700
002866e8
002866e8loc_2866e8:
002866e8ldr x9, [sp+152]
002866ecstr x9, [sp+120]
002866f0subs xzr, x9, 0
002866f4cset x9, ne
002866f8strb w9, [sp+118]
002866fcb 0x286704
00286700
00286700loc_286700:
00286700b 0x286704
00286704
00286704loc_286704:
00286704ldrb w9, [sp+118]
00286708strb w9, [sp+119]
0028670ctbnz w9, 0, 0x286714
00286710b 0x28673c
00286714
00286714loc_286714:
00286714ldr x1, [sp+152]
00286718ldr x9, [sp+144]
0028671csubs xzr, x1, 0
00286720b.hi 0x286728
00286724b 0x28685c
00286728
00286728loc_286728:
00286728ldr x9, [x9]
0028672cands xzr, x9, 1
00286730cset x9, ne
00286734strb w9, [sp+119]
00286738b 0x286740
0028673c
0028673cloc_28673c:
0028673cb 0x286740
00286740
00286740loc_286740:
00286740ldr x9, [sp+456]
00286744ldrsb x27, [x9]
00286748ldrb w10, [sp+119]
0028674cstrb w10, [x9]
00286750ldr x9, [sp+456]
00286754ldrsb x27, [x9]
00286758ldrb w9, [x9]
0028675cstrb w9, [sp+117]
00286760tbnz w9, 0, 0x286768
00286764b 0x286780
00286768
00286768loc_286768:
00286768ldr x9, [sp+200]
0028676cstr x9, [sp+128]
00286770subs xzr, x9, 0
00286774cset x9, ne
00286778strb w9, [sp+117]
0028677cb 0x286784
00286780
00286780loc_286780:
00286780b 0x286784
00286784
00286784loc_286784:
00286784ldrb w9, [sp+117]
00286788tbnz w9, 0, 0x286790
0028678cb 0x286844
00286790
00286790loc_286790:
00286790ldr x9, [sp+456]
00286794ldrsb x27, [x9]
00286798ldr x10, [x9+8]
0028679cldr x11, [x9+16]
002867a0ldr x9, [x9+24]
002867a4str x10, [sp+248]
002867a8str x11, [sp+256]
002867acstr x9, [sp+264]
002867b0ldr x9, [sp+456]
002867b4ldrsb x27, [x9]
002867b8ldr x6, [x9+8]
002867bcldr x7, [x9+16]
002867c0ldr x8, [x9+24]
002867c4str x6, [sp+224]
002867c8str x7, [sp+232]
002867ccstr x8, [sp+240]
002867d0ldr x3, [sp+192]
002867d4ldr x4, [sp+200]
002867d8ldr x5, [sp+208]
002867dcldr x0, [sp+248]
002867e0ldr x1, [sp+256]
002867e4ldr x2, [sp+264]
002867e8bl math/big.nat.sub
002867ecstr x0, [sp+408]
002867f0str x1, [sp+416]
002867f4str x2, [sp+424]
002867f8ldr x9, [sp+456]
002867fcldrsb x27, [x9]
00286800str x1, [x9+16]
00286804str x2, [x9+24]
00286808adrp x27, 0x7c5000
0028680cldr w10, [x27+3056]
00286810cbz w10, 0x286818
00286814b 0x28681c
00286818
00286818loc_286818:
00286818b 0x286830
0028681c
0028681cloc_28681c:
0028681cbl runtime.gcWriteBarrier2
00286820str x0, [x25]
00286824ldr x1, [x9+8]
00286828str x1, [x25+8]
0028682cb 0x286830
00286830
00286830loc_286830:
00286830str x0, [x9+8]
00286834ldr x1, [sp+456]
00286838ldrsb x27, [x1]
0028683cstrb wzr, [x1]
00286840b 0x286848
00286844
00286844loc_286844:
00286844b 0x286848
00286848
00286848loc_286848:
00286848ldr x0, [sp+456]
0028684cstr x0, [sp+136]
00286850ldp x29, x30, [sp-8]
00286854add sp, sp, 448
00286858ret x30
0028685c
0028685cloc_28685c:
0028685cmov x0, xzr
00286860bl runtime.panicIndex
00286864hint
00286868
00286868loc_286868:
00286868stp x0, x1, [sp+8]
0028686cstp x2, x3, [sp+24]
00286870strb w4, [sp+40]
00286874mov x3, x30
00286878bl runtime.morestack_noctxt.abi0
0028687cldp x0, x1, [sp+8]
00286880ldp x2, x3, [sp+24]
00286884ldrb w4, [sp+40]
00286888b 0x2863c0
0028688cudf 0
002863c0
00286890
00286890math/big.(*Int).GCD: ; void math/big.(*Int).GCD(math/big.Int * z, math/big.Int * x, math/big.Int * y, math/big.Int * a, math/big.Int * b)
00286890ldr x16, [x28+16]
00286894subs xzr, sp, x16
00286898b.ls 0x286a74
0028689cstr x30, [sp-112]!
002868a0stur x29, [sp-8]
002868a4sub x29, sp, 8
002868a8str x0, [sp+120]
002868acstr x1, [sp+128]
002868b0str x2, [sp+136]
002868b4str x3, [sp+144]
002868b8str x4, [sp+152]
002868bcstr xzr, [sp+88]
002868c0ldr x5, [sp+144]
002868c4ldrsb x27, [x5]
002868c8ldr x5, [x5+16]
002868ccstr x5, [sp+80]
002868d0subs xzr, x5, 0
002868d4cset x6, eq
002868d8strb w6, [sp+55]
002868dccbz x5, 0x2868e4
002868e0b 0x2868e8
002868e4
002868e4loc_2868e4:
002868e4b 0x286908
002868e8
002868e8loc_2868e8:
002868e8ldr x5, [sp+152]
002868ecldrsb x27, [x5]
002868f0ldr x5, [x5+16]
002868f4str x5, [sp+72]
002868f8subs xzr, x5, 0
002868fccset x5, eq
00286900strb w5, [sp+55]
00286904b 0x286908
00286908
00286908loc_286908:
00286908ldrb w5, [sp+55]
0028690ctbnz w5, 0, 0x286914
00286910b 0x286a48
00286914
00286914loc_286914:
00286914ldr x2, [sp+144]
00286918ldrsb x27, [x2]
0028691cldr x2, [x2+16]
00286920str x2, [sp+80]
00286924ldr x3, [sp+152]
00286928ldrsb x27, [x3]
0028692cldr x3, [x3+16]
00286930str x3, [sp+72]
00286934str x2, [sp+64]
00286938str x3, [sp+56]
0028693cldr x2, [sp+144]
00286940ldrsb x27, [x2]
00286944ldrb w2, [x2]
00286948strb w2, [sp+54]
0028694cldr x2, [sp+152]
00286950ldrsb x27, [x2]
00286954ldrb w2, [x2]
00286958strb w2, [sp+53]
0028695cldr x2, [sp+64]
00286960cbz x2, 0x286968
00286964b 0x286978
00286968
00286968loc_286968:
00286968ldr x1, [sp+152]
0028696cldr x0, [sp+120]
00286970bl math/big.(*Int).Set
00286974b 0x286988
00286978
00286978loc_286978:
00286978ldr x1, [sp+144]
0028697cldr x0, [sp+120]
00286980bl math/big.(*Int).Set
00286984b 0x286988
00286988
00286988loc_286988:
00286988ldr x2, [sp+120]
0028698cldrsb x27, [x2]
00286990strb wzr, [x2]
00286994ldr x2, [sp+128]
00286998cbnz x2, 0x2869a0
0028699cb 0x2869e0
002869a0
002869a0loc_2869a0:
002869a0ldr x2, [sp+64]
002869a4cbz x2, 0x2869ac
002869a8b 0x2869bc
002869ac
002869acloc_2869ac:
002869acldr x0, [sp+128]
002869b0mov x1, xzr
002869b4bl math/big.(*Int).SetUint64
002869b8b 0x2869dc
002869bc
002869bcloc_2869bc:
002869bcldr x0, [sp+128]
002869c0orr x1, xzr, 1
002869c4bl math/big.(*Int).SetUint64
002869c8ldr x2, [sp+128]
002869ccldrsb x27, [x2]
002869d0ldrb w3, [sp+54]
002869d4strb w3, [x2]
002869d8b 0x2869dc
002869dc
002869dcloc_2869dc:
002869dcb 0x2869e4
002869e0
002869e0loc_2869e0:
002869e0b 0x2869e4
002869e4
002869e4loc_2869e4:
002869e4ldr x2, [sp+136]
002869e8cbnz x2, 0x2869f0
002869ecb 0x286a30
002869f0
002869f0loc_2869f0:
002869f0ldr x2, [sp+56]
002869f4cbz x2, 0x2869fc
002869f8b 0x286a0c
002869fc
002869fcloc_2869fc:
002869fcldr x0, [sp+136]
00286a00mov x1, xzr
00286a04bl math/big.(*Int).SetUint64
00286a08b 0x286a2c
00286a0c
00286a0cloc_286a0c:
00286a0cldr x0, [sp+136]
00286a10orr x1, xzr, 1
00286a14bl math/big.(*Int).SetUint64
00286a18ldr x2, [sp+136]
00286a1cldrsb x27, [x2]
00286a20ldrb w3, [sp+53]
00286a24strb w3, [x2]
00286a28b 0x286a2c
00286a2c
00286a2cloc_286a2c:
00286a2cb 0x286a34
00286a30
00286a30loc_286a30:
00286a30b 0x286a34
00286a34
00286a34loc_286a34:
00286a34ldr x0, [sp+120]
00286a38str x0, [sp+88]
00286a3cldur x29, [sp-8]
00286a40ldr x30, [sp], 112
00286a44ret x30
00286a48
00286a48loc_286a48:
00286a48ldr x1, [sp+128]
00286a4cldr x2, [sp+136]
00286a50ldr x3, [sp+144]
00286a54ldr x4, [sp+152]
00286a58ldr x0, [sp+120]
00286a5cbl math/big.(*Int).lehmerGCD
00286a60str x0, [sp+96]
00286a64str x0, [sp+88]
00286a68ldur x29, [sp-8]
00286a6cldr x30, [sp], 112
00286a70ret x30
00286a74
00286a74loc_286a74:
00286a74stp x0, x1, [sp+8]
00286a78stp x2, x3, [sp+24]
00286a7cstr x4, [sp+40]
00286a80mov x3, x30
00286a84bl runtime.morestack_noctxt.abi0
00286a88ldp x0, x1, [sp+8]
00286a8cldp x2, x3, [sp+24]
00286a90ldr x4, [sp+40]
00286a94b 0x286890
00286a98udf 0
00286a9cudf 0
00286890
00286890math/big.(*Int).GCD: ; void math/big.(*Int).GCD(math/big.Int * z, math/big.Int * x, math/big.Int * y, math/big.Int * a, math/big.Int * b)
00286890ldr x16, [x28+16]
00286894subs xzr, sp, x16
00286898b.ls 0x286a74
0028689cstr x30, [sp-112]!
002868a0stur x29, [sp-8]
002868a4sub x29, sp, 8
002868a8str x0, [sp+120]
002868acstr x1, [sp+128]
002868b0str x2, [sp+136]
002868b4str x3, [sp+144]
002868b8str x4, [sp+152]
002868bcstr xzr, [sp+88]
002868c0ldr x5, [sp+144]
002868c4ldrsb x27, [x5]
002868c8ldr x5, [x5+16]
002868ccstr x5, [sp+80]
002868d0subs xzr, x5, 0
002868d4cset x6, eq
002868d8strb w6, [sp+55]
002868dccbz x5, 0x2868e4
002868e0b 0x2868e8
002868e4
002868e4loc_2868e4:
002868e4b 0x286908
002868e8
002868e8loc_2868e8:
002868e8ldr x5, [sp+152]
002868ecldrsb x27, [x5]
002868f0ldr x5, [x5+16]
002868f4str x5, [sp+72]
002868f8subs xzr, x5, 0
002868fccset x5, eq
00286900strb w5, [sp+55]
00286904b 0x286908
00286908
00286908loc_286908:
00286908ldrb w5, [sp+55]
0028690ctbnz w5, 0, 0x286914
00286910b 0x286a48
00286914
00286914loc_286914:
00286914ldr x2, [sp+144]
00286918ldrsb x27, [x2]
0028691cldr x2, [x2+16]
00286920str x2, [sp+80]
00286924ldr x3, [sp+152]
00286928ldrsb x27, [x3]
0028692cldr x3, [x3+16]
00286930str x3, [sp+72]
00286934str x2, [sp+64]
00286938str x3, [sp+56]
0028693cldr x2, [sp+144]
00286940ldrsb x27, [x2]
00286944ldrb w2, [x2]
00286948strb w2, [sp+54]
0028694cldr x2, [sp+152]
00286950ldrsb x27, [x2]
00286954ldrb w2, [x2]
00286958strb w2, [sp+53]
0028695cldr x2, [sp+64]
00286960cbz x2, 0x286968
00286964b 0x286978
00286968
00286968loc_286968:
00286968ldr x1, [sp+152]
0028696cldr x0, [sp+120]
00286970bl math/big.(*Int).Set
00286974b 0x286988
00286978
00286978loc_286978:
00286978ldr x1, [sp+144]
0028697cldr x0, [sp+120]
00286980bl math/big.(*Int).Set
00286984b 0x286988
00286988
00286988loc_286988:
00286988ldr x2, [sp+120]
0028698cldrsb x27, [x2]
00286990strb wzr, [x2]
00286994ldr x2, [sp+128]
00286998cbnz x2, 0x2869a0
0028699cb 0x2869e0
002869a0
002869a0loc_2869a0:
002869a0ldr x2, [sp+64]
002869a4cbz x2, 0x2869ac
002869a8b 0x2869bc
002869ac
002869acloc_2869ac:
002869acldr x0, [sp+128]
002869b0mov x1, xzr
002869b4bl math/big.(*Int).SetUint64
002869b8b 0x2869dc
002869bc
002869bcloc_2869bc:
002869bcldr x0, [sp+128]
002869c0orr x1, xzr, 1
002869c4bl math/big.(*Int).SetUint64
002869c8ldr x2, [sp+128]
002869ccldrsb x27, [x2]
002869d0ldrb w3, [sp+54]
002869d4strb w3, [x2]
002869d8b 0x2869dc
002869dc
002869dcloc_2869dc:
002869dcb 0x2869e4
002869e0
002869e0loc_2869e0:
002869e0b 0x2869e4
002869e4
002869e4loc_2869e4:
002869e4ldr x2, [sp+136]
002869e8cbnz x2, 0x2869f0
002869ecb 0x286a30
002869f0
002869f0loc_2869f0:
002869f0ldr x2, [sp+56]
002869f4cbz x2, 0x2869fc
002869f8b 0x286a0c
002869fc
002869fcloc_2869fc:
002869fcldr x0, [sp+136]
00286a00mov x1, xzr
00286a04bl math/big.(*Int).SetUint64
00286a08b 0x286a2c
00286a0c
00286a0cloc_286a0c:
00286a0cldr x0, [sp+136]
00286a10orr x1, xzr, 1
00286a14bl math/big.(*Int).SetUint64
00286a18ldr x2, [sp+136]
00286a1cldrsb x27, [x2]
00286a20ldrb w3, [sp+53]
00286a24strb w3, [x2]
00286a28b 0x286a2c
00286a2c
00286a2cloc_286a2c:
00286a2cb 0x286a34
00286a30
00286a30loc_286a30:
00286a30b 0x286a34
00286a34
00286a34loc_286a34:
00286a34ldr x0, [sp+120]
00286a38str x0, [sp+88]
00286a3cldur x29, [sp-8]
00286a40ldr x30, [sp], 112
00286a44ret x30
00286a48
00286a48loc_286a48:
00286a48ldr x1, [sp+128]
00286a4cldr x2, [sp+136]
00286a50ldr x3, [sp+144]
00286a54ldr x4, [sp+152]
00286a58ldr x0, [sp+120]
00286a5cbl math/big.(*Int).lehmerGCD
00286a60str x0, [sp+96]
00286a64str x0, [sp+88]
00286a68ldur x29, [sp-8]
00286a6cldr x30, [sp], 112
00286a70ret x30
00286a74
00286a74loc_286a74:
00286a74stp x0, x1, [sp+8]
00286a78stp x2, x3, [sp+24]
00286a7cstr x4, [sp+40]
00286a80mov x3, x30
00286a84bl runtime.morestack_noctxt.abi0
00286a88ldp x0, x1, [sp+8]
00286a8cldp x2, x3, [sp+24]
00286a90ldr x4, [sp+40]
00286a94b 0x286890
00286a98udf 0
00286a9cudf 0
00286890
00286aa0
00286aa0math/big.lehmerSimulate: ; void math/big.lehmerSimulate(math/big.Int * A, math/big.Int * B)
00286aa0ldr x16, [x28+16]
00286aa4sub x17, sp, 48
00286aa8subs xzr, x17, x16
00286aacb.ls 0x286e20
00286ab0str x30, [sp-176]!
00286ab4stur x29, [sp-8]
00286ab8sub x29, sp, 8
00286abcstr x0, [sp+184]
00286ac0str x1, [sp+192]
00286ac4str xzr, [sp+80]
00286ac8str xzr, [sp+72]
00286accstr xzr, [sp+56]
00286ad0str xzr, [sp+48]
00286ad4strb wzr, [sp+38]
00286ad8str xzr, [sp+136]
00286adcstr xzr, [sp+128]
00286ae0str xzr, [sp+64]
00286ae4str xzr, [sp+40]
00286ae8ldr x2, [sp+192]
00286aecldrsb x27, [x2]
00286af0ldr x2, [x2+16]
00286af4str x2, [sp+112]
00286af8ldr x2, [sp+184]
00286afcldrsb x27, [x2]
00286b00ldr x2, [x2+16]
00286b04str x2, [sp+104]
00286b08ldr x3, [sp+184]
00286b0cldrsb x27, [x3]
00286b10ldr x1, [x3+16]
00286b14ldr x3, [x3+8]
00286b18sub x0, x2, 1
00286b1csubs xzr, x1, x0
00286b20b.hi 0x286b28
00286b24b 0x286e18
00286b28
00286b28loc_286b28:
00286b28ldr x0, [x3+3*x0]
00286b2cstr x0, [sp+160]
00286b30bl math/big.nlz
00286b34str x0, [sp+120]
00286b38ldr x1, [sp+184]
00286b3cldrsb x27, [x1]
00286b40ldr x2, [x1+16]
00286b44ldr x1, [x1+8]
00286b48ldr x3, [sp+104]
00286b4csub x3, x3, 1
00286b50subs xzr, x2, x3
00286b54b.hi 0x286b5c
00286b58b 0x286e0c
00286b5c
00286b5cloc_286b5c:
00286b5cldr x5, [x1+3*x3]
00286b60lslv x5, x5, x0
00286b64ldr x6, [sp+184]
00286b68ldrsb x27, [x6]
00286b6cldr x1, [x6+16]
00286b70ldr x6, [x6+8]
00286b74ldr x7, [sp+104]
00286b78sub x7, x7, 2
00286b7csubs xzr, x0, 64
00286b80csel x5, x5, xzr, lo
00286b84subs xzr, x1, x7
00286b88b.hi 0x286b90
00286b8cb 0x286e04
00286b90
00286b90loc_286b90:
00286b90ldr x6, [x6+3*x7]
00286b94orr x7, xzr, 64
00286b98sub x8, x7, x0
00286b9clsrv x6, x6, x8
00286ba0subs xzr, x8, 64
00286ba4csel x6, x6, xzr, lo
00286ba8orr x5, x5, x6
00286bacstr x5, [sp+136]
00286bb0ldr x5, [sp+112]
00286bb4ldr x6, [sp+104]
00286bb8subs xzr, x5, x6
00286bbcb.eq 0x286bc4
00286bc0b 0x286c40
00286bc4
00286bc4loc_286bc4:
00286bc4b 0x286bc8
00286bc8
00286bc8loc_286bc8:
00286bc8ldr x5, [sp+192]
00286bccldrsb x27, [x5]
00286bd0ldr x1, [x5+16]
00286bd4ldr x5, [x5+8]
00286bd8ldr x6, [sp+104]
00286bdcsub x6, x6, 1
00286be0subs xzr, x1, x6
00286be4b.hi 0x286bec
00286be8b 0x286dfc
00286bec
00286becloc_286bec:
00286becldr x5, [x5+3*x6]
00286bf0lslv x5, x5, x0
00286bf4ldr x6, [sp+192]
00286bf8ldrsb x27, [x6]
00286bfcldr x1, [x6+16]
00286c00ldr x6, [x6+8]
00286c04ldr x8, [sp+104]
00286c08sub x8, x8, 2
00286c0csubs xzr, x0, 64
00286c10csel x5, x5, xzr, lo
00286c14subs xzr, x1, x8
00286c18b.hi 0x286c20
00286c1cb 0x286df4
00286c20
00286c20loc_286c20:
00286c20ldr x6, [x6+3*x8]
00286c24sub x7, x7, x0
00286c28lsrv x6, x6, x7
00286c2csubs xzr, x7, 64
00286c30csel x6, x6, xzr, lo
00286c34orr x5, x5, x6
00286c38str x5, [sp+128]
00286c3cb 0x286ca8
00286c40
00286c40loc_286c40:
00286c40ldr x5, [sp+104]
00286c44ldr x6, [sp+112]
00286c48add x6, x6, 1
00286c4csubs xzr, x5, x6
00286c50b.eq 0x286c58
00286c54b 0x286c9c
00286c58
00286c58loc_286c58:
00286c58b 0x286c5c
00286c5c
00286c5cloc_286c5c:
00286c5cldr x5, [sp+192]
00286c60ldrsb x27, [x5]
00286c64ldr x1, [x5+16]
00286c68ldr x5, [x5+8]
00286c6cldr x6, [sp+104]
00286c70sub x6, x6, 2
00286c74subs xzr, x1, x6
00286c78b.hi 0x286c80
00286c7cb 0x286dec
00286c80
00286c80loc_286c80:
00286c80ldr x5, [x5+3*x6]
00286c84sub x6, x7, x0
00286c88lsrv x5, x5, x6
00286c8csubs xzr, x6, 64
00286c90csel x5, x5, xzr, lo
00286c94str x5, [sp+128]
00286c98b 0x286ca8
00286c9c
00286c9cloc_286c9c:
00286c9cb 0x286ca0
00286ca0
00286ca0loc_286ca0:
00286ca0str xzr, [sp+128]
00286ca4b 0x286ca8
00286ca8
00286ca8loc_286ca8:
00286ca8strb wzr, [sp+38]
00286cacstr xzr, [sp+80]
00286cb0orr x5, xzr, 1
00286cb4str x5, [sp+72]
00286cb8str xzr, [sp+64]
00286cbcstr xzr, [sp+56]
00286cc0str xzr, [sp+48]
00286cc4str x5, [sp+40]
00286cc8b 0x286ccc
00286ccc
00286cccloc_286ccc:
00286cccldr x5, [sp+40]
00286cd0ldr x6, [sp+128]
00286cd4subs xzr, x5, x6
00286cd8cset x5, ls
00286cdcstrb w5, [sp+39]
00286ce0b.ls 0x286ce8
00286ce4b 0x286d10
00286ce8
00286ce8loc_286ce8:
00286ce8ldr x5, [sp+136]
00286cecldr x6, [sp+128]
00286cf0sub x5, x5, x6
00286cf4ldr x6, [sp+48]
00286cf8ldr x7, [sp+40]
00286cfcadd x6, x6, x7
00286d00subs xzr, x5, x6
00286d04cset x5, hs
00286d08strb w5, [sp+39]
00286d0cb 0x286d14
00286d10
00286d10loc_286d10:
00286d10b 0x286d14
00286d14
00286d14loc_286d14:
00286d14ldrb w5, [sp+39]
00286d18tbnz w5, 0, 0x286d20
00286d1cb 0x286dc0
00286d20
00286d20loc_286d20:
00286d20ldr x5, [sp+136]
00286d24ldr x6, [sp+128]
00286d28cbnz x6, 0x286d30
00286d2cb 0x286de8
00286d30
00286d30loc_286d30:
00286d30udiv x5, x5, x6
00286d34str x5, [sp+96]
00286d38ldr x6, [sp+136]
00286d3cldr x7, [sp+128]
00286d40cbnz x7, 0x286d48
00286d44b 0x286de0
00286d48
00286d48loc_286d48:
00286d48udiv x27, x6, x7
00286d4cmsub x6, x27, x7, x6
00286d50str x6, [sp+88]
00286d54ldr x7, [sp+128]
00286d58str x7, [sp+136]
00286d5cstr x6, [sp+128]
00286d60ldr x6, [sp+72]
00286d64ldr x7, [sp+64]
00286d68madd x5, x7, x5, x6
00286d6cstr x5, [sp+152]
00286d70ldr x6, [sp+72]
00286d74str x6, [sp+80]
00286d78ldr x6, [sp+64]
00286d7cstr x6, [sp+72]
00286d80str x5, [sp+64]
00286d84ldr x5, [sp+48]
00286d88ldr x6, [sp+96]
00286d8cldr x7, [sp+40]
00286d90madd x5, x7, x6, x5
00286d94str x5, [sp+144]
00286d98ldr x6, [sp+48]
00286d9cstr x6, [sp+56]
00286da0ldr x6, [sp+40]
00286da4str x6, [sp+48]
00286da8str x5, [sp+40]
00286dacldrb w5, [sp+38]
00286db0eor x5, x5, 1
00286db4strb w5, [sp+38]
00286db8b 0x286dbc
00286dbc
00286dbcloc_286dbc:
00286dbcb 0x286ccc
00286dc0
00286dc0loc_286dc0:
00286dc0ldr x1, [sp+72]
00286dc4ldr x2, [sp+56]
00286dc8ldr x3, [sp+48]
00286dccldrb w4, [sp+38]
00286dd0ldr x0, [sp+80]
00286dd4ldur x29, [sp-8]
00286dd8ldr x30, [sp], 176
00286ddcret x30
00286de0
00286de0loc_286de0:
00286de0b 0x286de4
00286de4
00286de4loc_286de4:
00286de4bl runtime.panicdivide
00286de8
00286de8loc_286de8:
00286de8b 0x286de4
00286dec
00286decloc_286dec:
00286decmov x0, x6
00286df0bl runtime.panicIndex
00286df4
00286df4loc_286df4:
00286df4mov x0, x8
00286df8bl runtime.panicIndex
00286dfc
00286dfcloc_286dfc:
00286dfcmov x0, x6
00286e00bl runtime.panicIndex
00286e04
00286e04loc_286e04:
00286e04mov x0, x7
00286e08bl runtime.panicIndex
00286e0c
00286e0cloc_286e0c:
00286e0cmov x0, x3
00286e10mov x1, x2
00286e14bl runtime.panicIndex
00286e18
00286e18loc_286e18:
00286e18bl runtime.panicIndex
00286e1chint
00286e20
00286e20loc_286e20:
00286e20stp x0, x1, [sp+8]
00286e24mov x3, x30
00286e28bl runtime.morestack_noctxt.abi0
00286e2cldp x0, x1, [sp+8]
00286e30b 0x286aa0
00286e34udf 0
00286e38udf 0
00286e3cudf 0
00286aa0
00286aa0math/big.lehmerSimulate: ; void math/big.lehmerSimulate(math/big.Int * A, math/big.Int * B)
00286aa0ldr x16, [x28+16]
00286aa4sub x17, sp, 48
00286aa8subs xzr, x17, x16
00286aacb.ls 0x286e20
00286ab0str x30, [sp-176]!
00286ab4stur x29, [sp-8]
00286ab8sub x29, sp, 8
00286abcstr x0, [sp+184]
00286ac0str x1, [sp+192]
00286ac4str xzr, [sp+80]
00286ac8str xzr, [sp+72]
00286accstr xzr, [sp+56]
00286ad0str xzr, [sp+48]
00286ad4strb wzr, [sp+38]
00286ad8str xzr, [sp+136]
00286adcstr xzr, [sp+128]
00286ae0str xzr, [sp+64]
00286ae4str xzr, [sp+40]
00286ae8ldr x2, [sp+192]
00286aecldrsb x27, [x2]
00286af0ldr x2, [x2+16]
00286af4str x2, [sp+112]
00286af8ldr x2, [sp+184]
00286afcldrsb x27, [x2]
00286b00ldr x2, [x2+16]
00286b04str x2, [sp+104]
00286b08ldr x3, [sp+184]
00286b0cldrsb x27, [x3]
00286b10ldr x1, [x3+16]
00286b14ldr x3, [x3+8]
00286b18sub x0, x2, 1
00286b1csubs xzr, x1, x0
00286b20b.hi 0x286b28
00286b24b 0x286e18
00286b28
00286b28loc_286b28:
00286b28ldr x0, [x3+3*x0]
00286b2cstr x0, [sp+160]
00286b30bl math/big.nlz
00286b34str x0, [sp+120]
00286b38ldr x1, [sp+184]
00286b3cldrsb x27, [x1]
00286b40ldr x2, [x1+16]
00286b44ldr x1, [x1+8]
00286b48ldr x3, [sp+104]
00286b4csub x3, x3, 1
00286b50subs xzr, x2, x3
00286b54b.hi 0x286b5c
00286b58b 0x286e0c
00286b5c
00286b5cloc_286b5c:
00286b5cldr x5, [x1+3*x3]
00286b60lslv x5, x5, x0
00286b64ldr x6, [sp+184]
00286b68ldrsb x27, [x6]
00286b6cldr x1, [x6+16]
00286b70ldr x6, [x6+8]
00286b74ldr x7, [sp+104]
00286b78sub x7, x7, 2
00286b7csubs xzr, x0, 64
00286b80csel x5, x5, xzr, lo
00286b84subs xzr, x1, x7
00286b88b.hi 0x286b90
00286b8cb 0x286e04
00286b90
00286b90loc_286b90:
00286b90ldr x6, [x6+3*x7]
00286b94orr x7, xzr, 64
00286b98sub x8, x7, x0
00286b9clsrv x6, x6, x8
00286ba0subs xzr, x8, 64
00286ba4csel x6, x6, xzr, lo
00286ba8orr x5, x5, x6
00286bacstr x5, [sp+136]
00286bb0ldr x5, [sp+112]
00286bb4ldr x6, [sp+104]
00286bb8subs xzr, x5, x6
00286bbcb.eq 0x286bc4
00286bc0b 0x286c40
00286bc4
00286bc4loc_286bc4:
00286bc4b 0x286bc8
00286bc8
00286bc8loc_286bc8:
00286bc8ldr x5, [sp+192]
00286bccldrsb x27, [x5]
00286bd0ldr x1, [x5+16]
00286bd4ldr x5, [x5+8]
00286bd8ldr x6, [sp+104]
00286bdcsub x6, x6, 1
00286be0subs xzr, x1, x6
00286be4b.hi 0x286bec
00286be8b 0x286dfc
00286bec
00286becloc_286bec:
00286becldr x5, [x5+3*x6]
00286bf0lslv x5, x5, x0
00286bf4ldr x6, [sp+192]
00286bf8ldrsb x27, [x6]
00286bfcldr x1, [x6+16]
00286c00ldr x6, [x6+8]
00286c04ldr x8, [sp+104]
00286c08sub x8, x8, 2
00286c0csubs xzr, x0, 64
00286c10csel x5, x5, xzr, lo
00286c14subs xzr, x1, x8
00286c18b.hi 0x286c20
00286c1cb 0x286df4
00286c20
00286c20loc_286c20:
00286c20ldr x6, [x6+3*x8]
00286c24sub x7, x7, x0
00286c28lsrv x6, x6, x7
00286c2csubs xzr, x7, 64
00286c30csel x6, x6, xzr, lo
00286c34orr x5, x5, x6
00286c38str x5, [sp+128]
00286c3cb 0x286ca8
00286c40
00286c40loc_286c40:
00286c40ldr x5, [sp+104]
00286c44ldr x6, [sp+112]
00286c48add x6, x6, 1
00286c4csubs xzr, x5, x6
00286c50b.eq 0x286c58
00286c54b 0x286c9c
00286c58
00286c58loc_286c58:
00286c58b 0x286c5c
00286c5c
00286c5cloc_286c5c:
00286c5cldr x5, [sp+192]
00286c60ldrsb x27, [x5]
00286c64ldr x1, [x5+16]
00286c68ldr x5, [x5+8]
00286c6cldr x6, [sp+104]
00286c70sub x6, x6, 2
00286c74subs xzr, x1, x6
00286c78b.hi 0x286c80
00286c7cb 0x286dec
00286c80
00286c80loc_286c80:
00286c80ldr x5, [x5+3*x6]
00286c84sub x6, x7, x0
00286c88lsrv x5, x5, x6
00286c8csubs xzr, x6, 64
00286c90csel x5, x5, xzr, lo
00286c94str x5, [sp+128]
00286c98b 0x286ca8
00286c9c
00286c9cloc_286c9c:
00286c9cb 0x286ca0
00286ca0
00286ca0loc_286ca0:
00286ca0str xzr, [sp+128]
00286ca4b 0x286ca8
00286ca8
00286ca8loc_286ca8:
00286ca8strb wzr, [sp+38]
00286cacstr xzr, [sp+80]
00286cb0orr x5, xzr, 1
00286cb4str x5, [sp+72]
00286cb8str xzr, [sp+64]
00286cbcstr xzr, [sp+56]
00286cc0str xzr, [sp+48]
00286cc4str x5, [sp+40]
00286cc8b 0x286ccc
00286ccc
00286cccloc_286ccc:
00286cccldr x5, [sp+40]
00286cd0ldr x6, [sp+128]
00286cd4subs xzr, x5, x6
00286cd8cset x5, ls
00286cdcstrb w5, [sp+39]
00286ce0b.ls 0x286ce8
00286ce4b 0x286d10
00286ce8
00286ce8loc_286ce8:
00286ce8ldr x5, [sp+136]
00286cecldr x6, [sp+128]
00286cf0sub x5, x5, x6
00286cf4ldr x6, [sp+48]
00286cf8ldr x7, [sp+40]
00286cfcadd x6, x6, x7
00286d00subs xzr, x5, x6
00286d04cset x5, hs
00286d08strb w5, [sp+39]
00286d0cb 0x286d14
00286d10
00286d10loc_286d10:
00286d10b 0x286d14
00286d14
00286d14loc_286d14:
00286d14ldrb w5, [sp+39]
00286d18tbnz w5, 0, 0x286d20
00286d1cb 0x286dc0
00286d20
00286d20loc_286d20:
00286d20ldr x5, [sp+136]
00286d24ldr x6, [sp+128]
00286d28cbnz x6, 0x286d30
00286d2cb 0x286de8
00286d30
00286d30loc_286d30:
00286d30udiv x5, x5, x6
00286d34str x5, [sp+96]
00286d38ldr x6, [sp+136]
00286d3cldr x7, [sp+128]
00286d40cbnz x7, 0x286d48
00286d44b 0x286de0
00286d48
00286d48loc_286d48:
00286d48udiv x27, x6, x7
00286d4cmsub x6, x27, x7, x6
00286d50str x6, [sp+88]
00286d54ldr x7, [sp+128]
00286d58str x7, [sp+136]
00286d5cstr x6, [sp+128]
00286d60ldr x6, [sp+72]
00286d64ldr x7, [sp+64]
00286d68madd x5, x7, x5, x6
00286d6cstr x5, [sp+152]
00286d70ldr x6, [sp+72]
00286d74str x6, [sp+80]
00286d78ldr x6, [sp+64]
00286d7cstr x6, [sp+72]
00286d80str x5, [sp+64]
00286d84ldr x5, [sp+48]
00286d88ldr x6, [sp+96]
00286d8cldr x7, [sp+40]
00286d90madd x5, x7, x6, x5
00286d94str x5, [sp+144]
00286d98ldr x6, [sp+48]
00286d9cstr x6, [sp+56]
00286da0ldr x6, [sp+40]
00286da4str x6, [sp+48]
00286da8str x5, [sp+40]
00286dacldrb w5, [sp+38]
00286db0eor x5, x5, 1
00286db4strb w5, [sp+38]
00286db8b 0x286dbc
00286dbc
00286dbcloc_286dbc:
00286dbcb 0x286ccc
00286dc0
00286dc0loc_286dc0:
00286dc0ldr x1, [sp+72]
00286dc4ldr x2, [sp+56]
00286dc8ldr x3, [sp+48]
00286dccldrb w4, [sp+38]
00286dd0ldr x0, [sp+80]
00286dd4ldur x29, [sp-8]
00286dd8ldr x30, [sp], 176
00286ddcret x30
00286de0
00286de0loc_286de0:
00286de0b 0x286de4
00286de4
00286de4loc_286de4:
00286de4bl runtime.panicdivide
00286de8
00286de8loc_286de8:
00286de8b 0x286de4
00286dec
00286decloc_286dec:
00286decmov x0, x6
00286df0bl runtime.panicIndex
00286df4
00286df4loc_286df4:
00286df4mov x0, x8
00286df8bl runtime.panicIndex
00286dfc
00286dfcloc_286dfc:
00286dfcmov x0, x6
00286e00bl runtime.panicIndex
00286e04
00286e04loc_286e04:
00286e04mov x0, x7
00286e08bl runtime.panicIndex
00286e0c
00286e0cloc_286e0c:
00286e0cmov x0, x3
00286e10mov x1, x2
00286e14bl runtime.panicIndex
00286e18
00286e18loc_286e18:
00286e18bl runtime.panicIndex
00286e1chint
00286e20
00286e20loc_286e20:
00286e20stp x0, x1, [sp+8]
00286e24mov x3, x30
00286e28bl runtime.morestack_noctxt.abi0
00286e2cldp x0, x1, [sp+8]
00286e30b 0x286aa0
00286e34udf 0
00286e38udf 0
00286e3cudf 0
00286aa0
Loading..