File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
Loading..
00298290
00298290crypto/elliptic.Unmarshal: ; void crypto/elliptic.Unmarshal(crypto/elliptic.Curve curve, struct []uint8 data)
00298290ldr x16, [x28+16]
00298294sub x17, sp, 96
00298298subs xzr, x17, x16
0029829cb.ls 0x29863c
002982a0str x30, [sp-224]!
002982a4stur x29, [sp-8]
002982a8sub x29, sp, 8
002982acstr x0, [sp+232]
002982b0str x1, [sp+240]
002982b4str x2, [sp+248]
002982b8str x3, [sp+256]
002982bcstr x4, [sp+264]
002982c0str xzr, [sp+80]
002982c4str xzr, [sp+72]
002982c8stp xzr, xzr, [sp+200]
002982ccldr x4, [sp+240]
002982d0ldr x5, [sp+232]
002982d4cbnz x5, 0x2982dc
002982d8b 0x2982fc
002982dc
002982dcloc_2982dc:
002982dcstr x4, [sp+144]
002982e0ldr x1, [x5+8]
002982e4adrp x0, 0x778000
002982e8add x0, x0, 3888
002982ecbl runtime.typeAssert
002982f0ldr x4, [sp+144]
002982f4mov x5, x0
002982f8b 0x298300
002982fc
002982fcloc_2982fc:
002982fcb 0x298300
00298300
00298300loc_298300:
00298300str x5, [sp+200]
00298304str x4, [sp+208]
00298308subs xzr, x5, 0
0029830ccset x4, ne
00298310strb w4, [sp+47]
00298314ldr x4, [sp+200]
00298318ldr x5, [sp+208]
0029831cstr x4, [sp+128]
00298320str x5, [sp+136]
00298324ldrb w4, [sp+47]
00298328strb w4, [sp+46]
0029832cldr x4, [sp+128]
00298330ldr x5, [sp+136]
00298334str x4, [sp+96]
00298338str x5, [sp+104]
0029833cldrb w4, [sp+46]
00298340strb w4, [sp+45]
00298344tbnz w4, 0, 0x29834c
00298348b 0x2983ac
0029834c
0029834cloc_29834c:
0029834cstr xzr, [sp+192]
00298350str xzr, [sp+184]
00298354ldr x2, [sp+256]
00298358ldr x3, [sp+264]
0029835cldr x4, [sp+96]
00298360ldrsb x27, [x4]
00298364ldr x4, [x4+24]
00298368ldr x1, [sp+248]
0029836cldr x0, [sp+104]
00298370blr x4
00298374str x0, [sp+192]
00298378str x1, [sp+184]
0029837cldr x4, [sp+192]
00298380str x4, [sp+120]
00298384ldr x4, [sp+184]
00298388str x4, [sp+112]
0029838cldr x4, [sp+120]
00298390str x4, [sp+80]
00298394ldr x1, [sp+112]
00298398str x1, [sp+72]
0029839cldr x0, [sp+80]
002983a0ldur x29, [sp-8]
002983a4ldr x30, [sp], 224
002983a8ret x30
002983ac
002983acloc_2983ac:
002983acldr x1, [sp+232]
002983b0ldrsb x27, [x1]
002983b4ldr x1, [x1+48]
002983b8ldr x0, [sp+240]
002983bcblr x1
002983c0str x0, [sp+176]
002983c4ldrsb x27, [x0]
002983c8ldr x1, [x0+40]
002983ccadd x2, x1, 7
002983d0sbfm x2, x2, 63, 63
002983d4add x1, x1, x2, lsr #61
002983d8add x1, x1, 7
002983dcsbfm x1, x1, 3, 63
002983e0str x1, [sp+48]
002983e4ldr x2, [sp+256]
002983e8str x2, [sp+64]
002983ecubfm x1, x1, 63, 62
002983f0add x1, x1, 1
002983f4subs xzr, x2, x1
002983f8b.ne 0x298400
002983fcb 0x29841c
00298400
00298400loc_298400:
00298400str xzr, [sp+80]
00298404str xzr, [sp+72]
00298408ldr x0, [sp+80]
0029840cmov x1, xzr
00298410ldur x29, [sp-8]
00298414ldr x30, [sp], 224
00298418ret x30
0029841c
0029841cloc_29841c:
0029841cldr x1, [sp+256]
00298420ldr x2, [sp+248]
00298424subs xzr, x1, 0
00298428b.hi 0x298430
0029842cb 0x298630
00298430
00298430loc_298430:
00298430ldrb w2, [x2]
00298434subs wzr, w2, 4
00298438b.ne 0x298440
0029843cb 0x29845c
00298440
00298440loc_298440:
00298440str xzr, [sp+80]
00298444str xzr, [sp+72]
00298448ldr x0, [sp+80]
0029844cmov x1, xzr
00298450ldur x29, [sp-8]
00298454ldr x30, [sp], 224
00298458ret x30
0029845c
0029845cloc_29845c:
0029845cldr x1, [sp+232]
00298460ldrsb x27, [x1]
00298464ldr x1, [x1+48]
00298468ldr x0, [sp+240]
0029846cblr x1
00298470str x0, [sp+176]
00298474ldrsb x27, [x0]
00298478ldr x1, [x0]
0029847cstr x1, [sp+88]
00298480adrp x0, 0x3ad000
00298484add x0, x0, 1024
00298488bl runtime.newobject
0029848cstr x0, [sp+184]
00298490ldr x2, [sp+48]
00298494add x1, x2, 1
00298498str x1, [sp+64]
0029849cldr x3, [sp+264]
002984a0ldr x4, [sp+248]
002984a4subs xzr, x3, x1
002984a8b.hs 0x2984b0
002984acb 0x298628
002984b0
002984b0loc_2984b0:
002984b0subs xzr, x1, 1
002984b4b.hs 0x2984bc
002984b8b 0x298620
002984bc
002984bcloc_2984bc:
002984bcsub x3, x3, 1
002984c0sub x5, xzr, x3
002984c4sbfm x5, x5, 63, 63
002984c8and x5, x5, 1
002984ccadd x1, x4, x5
002984d0str x1, [sp+152]
002984d4str x2, [sp+160]
002984d8str x3, [sp+168]
002984dcldr x0, [sp+184]
002984e0bl math/big.(*Int).SetBytes
002984e4str x0, [sp+80]
002984e8adrp x0, 0x3ad000
002984ecadd x0, x0, 1024
002984f0bl runtime.newobject
002984f4str x0, [sp+184]
002984f8ldr x4, [sp+48]
002984fcadd x0, x4, 1
00298500str x0, [sp+64]
00298504ldr x1, [sp+256]
00298508ldr x5, [sp+248]
0029850cldr x6, [sp+264]
00298510b 0x298514
00298514
00298514loc_298514:
00298514subs xzr, x1, x0
00298518b.hs 0x298520
0029851cb 0x29861c
00298520
00298520loc_298520:
00298520sub x7, x1, x4
00298524sub x4, x6, x4
00298528sub x3, x4, 1
0029852csub x2, x7, 1
00298530sub x4, xzr, x3
00298534and x4, x0, x4, asr #63
00298538add x1, x5, x4
0029853cstr x1, [sp+152]
00298540str x2, [sp+160]
00298544str x3, [sp+168]
00298548ldr x0, [sp+184]
0029854cbl math/big.(*Int).SetBytes
00298550str x0, [sp+72]
00298554ldr x1, [sp+88]
00298558ldr x0, [sp+80]
0029855cbl math/big.(*Int).Cmp
00298560str x0, [sp+64]
00298564subs xzr, x0, 0
00298568cset x4, ge
0029856cstrb w4, [sp+47]
00298570tbz x0, 63, 0x298578
00298574b 0x29857c
00298578
00298578loc_298578:
00298578b 0x29859c
0029857c
0029857cloc_29857c:
0029857cldr x0, [sp+72]
00298580ldr x1, [sp+88]
00298584bl math/big.(*Int).Cmp
00298588str x0, [sp+56]
0029858csubs xzr, x0, 0
00298590cset x2, ge
00298594strb w2, [sp+47]
00298598b 0x29859c
0029859c
0029859cloc_29859c:
0029859cldrb w3, [sp+47]
002985a0tbnz w3, 0, 0x2985a8
002985a4b 0x2985c4
002985a8
002985a8loc_2985a8:
002985a8str xzr, [sp+80]
002985acstr xzr, [sp+72]
002985b0ldr x0, [sp+80]
002985b4mov x1, xzr
002985b8ldur x29, [sp-8]
002985bcldr x30, [sp], 224
002985c0ret x30
002985c4
002985c4loc_2985c4:
002985c4ldr x2, [sp+72]
002985c8ldr x3, [sp+232]
002985ccldrsb x27, [x3]
002985d0ldr x3, [x3+40]
002985d4ldr x1, [sp+80]
002985d8ldr x0, [sp+240]
002985dcblr x3
002985e0strb w0, [sp+47]
002985e4tbnz w0, 0, 0x2985ec
002985e8b 0x298600
002985ec
002985ecloc_2985ec:
002985ecldr x1, [sp+72]
002985f0ldr x0, [sp+80]
002985f4ldur x29, [sp-8]
002985f8ldr x30, [sp], 224
002985fcret x30
00298600
00298600loc_298600:
00298600str xzr, [sp+80]
00298604str xzr, [sp+72]
00298608ldr x0, [sp+80]
0029860cmov x1, xzr
00298610ldur x29, [sp-8]
00298614ldr x30, [sp], 224
00298618ret x30
0029861c
0029861cloc_29861c:
0029861cbl runtime.panicSliceB
00298620
00298620loc_298620:
00298620orr x0, xzr, 1
00298624bl runtime.panicSliceB
00298628
00298628loc_298628:
00298628mov x2, x3
0029862cbl runtime.panicSliceAcap
00298630
00298630loc_298630:
00298630mov x0, xzr
00298634bl runtime.panicIndex
00298638hint
0029863c
0029863cloc_29863c:
0029863cstp x0, x1, [sp+8]
00298640stp x2, x3, [sp+24]
00298644str x4, [sp+40]
00298648mov x3, x30
0029864cbl runtime.morestack_noctxt.abi0
00298650ldp x0, x1, [sp+8]
00298654ldp x2, x3, [sp+24]
00298658ldr x4, [sp+40]
0029865cb 0x298290
00298290
00298290crypto/elliptic.Unmarshal: ; void crypto/elliptic.Unmarshal(crypto/elliptic.Curve curve, struct []uint8 data)
00298290ldr x16, [x28+16]
00298294sub x17, sp, 96
00298298subs xzr, x17, x16
0029829cb.ls 0x29863c
002982a0str x30, [sp-224]!
002982a4stur x29, [sp-8]
002982a8sub x29, sp, 8
002982acstr x0, [sp+232]
002982b0str x1, [sp+240]
002982b4str x2, [sp+248]
002982b8str x3, [sp+256]
002982bcstr x4, [sp+264]
002982c0str xzr, [sp+80]
002982c4str xzr, [sp+72]
002982c8stp xzr, xzr, [sp+200]
002982ccldr x4, [sp+240]
002982d0ldr x5, [sp+232]
002982d4cbnz x5, 0x2982dc
002982d8b 0x2982fc
002982dc
002982dcloc_2982dc:
002982dcstr x4, [sp+144]
002982e0ldr x1, [x5+8]
002982e4adrp x0, 0x778000
002982e8add x0, x0, 3888
002982ecbl runtime.typeAssert
002982f0ldr x4, [sp+144]
002982f4mov x5, x0
002982f8b 0x298300
002982fc
002982fcloc_2982fc:
002982fcb 0x298300
00298300
00298300loc_298300:
00298300str x5, [sp+200]
00298304str x4, [sp+208]
00298308subs xzr, x5, 0
0029830ccset x4, ne
00298310strb w4, [sp+47]
00298314ldr x4, [sp+200]
00298318ldr x5, [sp+208]
0029831cstr x4, [sp+128]
00298320str x5, [sp+136]
00298324ldrb w4, [sp+47]
00298328strb w4, [sp+46]
0029832cldr x4, [sp+128]
00298330ldr x5, [sp+136]
00298334str x4, [sp+96]
00298338str x5, [sp+104]
0029833cldrb w4, [sp+46]
00298340strb w4, [sp+45]
00298344tbnz w4, 0, 0x29834c
00298348b 0x2983ac
0029834c
0029834cloc_29834c:
0029834cstr xzr, [sp+192]
00298350str xzr, [sp+184]
00298354ldr x2, [sp+256]
00298358ldr x3, [sp+264]
0029835cldr x4, [sp+96]
00298360ldrsb x27, [x4]
00298364ldr x4, [x4+24]
00298368ldr x1, [sp+248]
0029836cldr x0, [sp+104]
00298370blr x4
00298374str x0, [sp+192]
00298378str x1, [sp+184]
0029837cldr x4, [sp+192]
00298380str x4, [sp+120]
00298384ldr x4, [sp+184]
00298388str x4, [sp+112]
0029838cldr x4, [sp+120]
00298390str x4, [sp+80]
00298394ldr x1, [sp+112]
00298398str x1, [sp+72]
0029839cldr x0, [sp+80]
002983a0ldur x29, [sp-8]
002983a4ldr x30, [sp], 224
002983a8ret x30
002983ac
002983acloc_2983ac:
002983acldr x1, [sp+232]
002983b0ldrsb x27, [x1]
002983b4ldr x1, [x1+48]
002983b8ldr x0, [sp+240]
002983bcblr x1
002983c0str x0, [sp+176]
002983c4ldrsb x27, [x0]
002983c8ldr x1, [x0+40]
002983ccadd x2, x1, 7
002983d0sbfm x2, x2, 63, 63
002983d4add x1, x1, x2, lsr #61
002983d8add x1, x1, 7
002983dcsbfm x1, x1, 3, 63
002983e0str x1, [sp+48]
002983e4ldr x2, [sp+256]
002983e8str x2, [sp+64]
002983ecubfm x1, x1, 63, 62
002983f0add x1, x1, 1
002983f4subs xzr, x2, x1
002983f8b.ne 0x298400
002983fcb 0x29841c
00298400
00298400loc_298400:
00298400str xzr, [sp+80]
00298404str xzr, [sp+72]
00298408ldr x0, [sp+80]
0029840cmov x1, xzr
00298410ldur x29, [sp-8]
00298414ldr x30, [sp], 224
00298418ret x30
0029841c
0029841cloc_29841c:
0029841cldr x1, [sp+256]
00298420ldr x2, [sp+248]
00298424subs xzr, x1, 0
00298428b.hi 0x298430
0029842cb 0x298630
00298430
00298430loc_298430:
00298430ldrb w2, [x2]
00298434subs wzr, w2, 4
00298438b.ne 0x298440
0029843cb 0x29845c
00298440
00298440loc_298440:
00298440str xzr, [sp+80]
00298444str xzr, [sp+72]
00298448ldr x0, [sp+80]
0029844cmov x1, xzr
00298450ldur x29, [sp-8]
00298454ldr x30, [sp], 224
00298458ret x30
0029845c
0029845cloc_29845c:
0029845cldr x1, [sp+232]
00298460ldrsb x27, [x1]
00298464ldr x1, [x1+48]
00298468ldr x0, [sp+240]
0029846cblr x1
00298470str x0, [sp+176]
00298474ldrsb x27, [x0]
00298478ldr x1, [x0]
0029847cstr x1, [sp+88]
00298480adrp x0, 0x3ad000
00298484add x0, x0, 1024
00298488bl runtime.newobject
0029848cstr x0, [sp+184]
00298490ldr x2, [sp+48]
00298494add x1, x2, 1
00298498str x1, [sp+64]
0029849cldr x3, [sp+264]
002984a0ldr x4, [sp+248]
002984a4subs xzr, x3, x1
002984a8b.hs 0x2984b0
002984acb 0x298628
002984b0
002984b0loc_2984b0:
002984b0subs xzr, x1, 1
002984b4b.hs 0x2984bc
002984b8b 0x298620
002984bc
002984bcloc_2984bc:
002984bcsub x3, x3, 1
002984c0sub x5, xzr, x3
002984c4sbfm x5, x5, 63, 63
002984c8and x5, x5, 1
002984ccadd x1, x4, x5
002984d0str x1, [sp+152]
002984d4str x2, [sp+160]
002984d8str x3, [sp+168]
002984dcldr x0, [sp+184]
002984e0bl math/big.(*Int).SetBytes
002984e4str x0, [sp+80]
002984e8adrp x0, 0x3ad000
002984ecadd x0, x0, 1024
002984f0bl runtime.newobject
002984f4str x0, [sp+184]
002984f8ldr x4, [sp+48]
002984fcadd x0, x4, 1
00298500str x0, [sp+64]
00298504ldr x1, [sp+256]
00298508ldr x5, [sp+248]
0029850cldr x6, [sp+264]
00298510b 0x298514
00298514
00298514loc_298514:
00298514subs xzr, x1, x0
00298518b.hs 0x298520
0029851cb 0x29861c
00298520
00298520loc_298520:
00298520sub x7, x1, x4
00298524sub x4, x6, x4
00298528sub x3, x4, 1
0029852csub x2, x7, 1
00298530sub x4, xzr, x3
00298534and x4, x0, x4, asr #63
00298538add x1, x5, x4
0029853cstr x1, [sp+152]
00298540str x2, [sp+160]
00298544str x3, [sp+168]
00298548ldr x0, [sp+184]
0029854cbl math/big.(*Int).SetBytes
00298550str x0, [sp+72]
00298554ldr x1, [sp+88]
00298558ldr x0, [sp+80]
0029855cbl math/big.(*Int).Cmp
00298560str x0, [sp+64]
00298564subs xzr, x0, 0
00298568cset x4, ge
0029856cstrb w4, [sp+47]
00298570tbz x0, 63, 0x298578
00298574b 0x29857c
00298578
00298578loc_298578:
00298578b 0x29859c
0029857c
0029857cloc_29857c:
0029857cldr x0, [sp+72]
00298580ldr x1, [sp+88]
00298584bl math/big.(*Int).Cmp
00298588str x0, [sp+56]
0029858csubs xzr, x0, 0
00298590cset x2, ge
00298594strb w2, [sp+47]
00298598b 0x29859c
0029859c
0029859cloc_29859c:
0029859cldrb w3, [sp+47]
002985a0tbnz w3, 0, 0x2985a8
002985a4b 0x2985c4
002985a8
002985a8loc_2985a8:
002985a8str xzr, [sp+80]
002985acstr xzr, [sp+72]
002985b0ldr x0, [sp+80]
002985b4mov x1, xzr
002985b8ldur x29, [sp-8]
002985bcldr x30, [sp], 224
002985c0ret x30
002985c4
002985c4loc_2985c4:
002985c4ldr x2, [sp+72]
002985c8ldr x3, [sp+232]
002985ccldrsb x27, [x3]
002985d0ldr x3, [x3+40]
002985d4ldr x1, [sp+80]
002985d8ldr x0, [sp+240]
002985dcblr x3
002985e0strb w0, [sp+47]
002985e4tbnz w0, 0, 0x2985ec
002985e8b 0x298600
002985ec
002985ecloc_2985ec:
002985ecldr x1, [sp+72]
002985f0ldr x0, [sp+80]
002985f4ldur x29, [sp-8]
002985f8ldr x30, [sp], 224
002985fcret x30
00298600
00298600loc_298600:
00298600str xzr, [sp+80]
00298604str xzr, [sp+72]
00298608ldr x0, [sp+80]
0029860cmov x1, xzr
00298610ldur x29, [sp-8]
00298614ldr x30, [sp], 224
00298618ret x30
0029861c
0029861cloc_29861c:
0029861cbl runtime.panicSliceB
00298620
00298620loc_298620:
00298620orr x0, xzr, 1
00298624bl runtime.panicSliceB
00298628
00298628loc_298628:
00298628mov x2, x3
0029862cbl runtime.panicSliceAcap
00298630
00298630loc_298630:
00298630mov x0, xzr
00298634bl runtime.panicIndex
00298638hint
0029863c
0029863cloc_29863c:
0029863cstp x0, x1, [sp+8]
00298640stp x2, x3, [sp+24]
00298644str x4, [sp+40]
00298648mov x3, x30
0029864cbl runtime.morestack_noctxt.abi0
00298650ldp x0, x1, [sp+8]
00298654ldp x2, x3, [sp+24]
00298658ldr x4, [sp+40]
0029865cb 0x298290
00298290
00298660
00298660crypto/elliptic.panicIfNotOnCurve: ; void crypto/elliptic.panicIfNotOnCurve(crypto/elliptic.Curve curve, math/big.Int * x, math/big.Int * y)
00298660ldr x16, [x28+16]
00298664subs xzr, sp, x16
00298668b.ls 0x29872c
0029866cstr x30, [sp-64]!
00298670stur x29, [sp-8]
00298674sub x29, sp, 8
00298678str x0, [sp+72]
0029867cstr x1, [sp+80]
00298680str x2, [sp+88]
00298684str x3, [sp+96]
00298688mov x0, x2
0029868cbl math/big.(*Int).Sign
00298690str x0, [sp+48]
00298694subs xzr, x0, 0
00298698cset x1, eq
0029869cstrb w1, [sp+39]
002986a0cbz x0, 0x2986a8
002986a4b 0x2986c4
002986a8
002986a8loc_2986a8:
002986a8ldr x0, [sp+96]
002986acbl math/big.(*Int).Sign
002986b0str x0, [sp+40]
002986b4subs xzr, x0, 0
002986b8cset x1, eq
002986bcstrb w1, [sp+39]
002986c0b 0x2986c8
002986c4
002986c4loc_2986c4:
002986c4b 0x2986c8
002986c8
002986c8loc_2986c8:
002986c8ldrb w3, [sp+39]
002986cctbnz w3, 0, 0x2986d4
002986d0b 0x2986e0
002986d4
002986d4loc_2986d4:
002986d4ldur x29, [sp-8]
002986d8ldr x30, [sp], 64
002986dcret x30
002986e0
002986e0loc_2986e0:
002986e0ldr x1, [sp+88]
002986e4ldr x2, [sp+96]
002986e8ldr x3, [sp+72]
002986ecldrsb x27, [x3]
002986f0ldr x3, [x3+40]
002986f4ldr x0, [sp+80]
002986f8blr x3
002986fcstrb w0, [sp+39]
00298700tbnz w0, 0, 0x298708
00298704b 0x298714
00298708
00298708loc_298708:
00298708ldur x29, [sp-8]
0029870cldr x30, [sp], 64
00298710ret x30
00298714
00298714loc_298714:
00298714adrp x0, 0x35d000
00298718add x0, x0, 2944
0029871cadrp x1, 0x47a000
00298720add x1, x1, 2128
00298724bl runtime.gopanic
00298728hint
0029872c
0029872cloc_29872c:
0029872cstp x0, x1, [sp+8]
00298730stp x2, x3, [sp+24]
00298734mov x3, x30
00298738bl runtime.morestack_noctxt.abi0
0029873cldp x0, x1, [sp+8]
00298740ldp x2, x3, [sp+24]
00298744b 0x298660
00298748udf 0
0029874cudf 0
00298660
00298660crypto/elliptic.panicIfNotOnCurve: ; void crypto/elliptic.panicIfNotOnCurve(crypto/elliptic.Curve curve, math/big.Int * x, math/big.Int * y)
00298660ldr x16, [x28+16]
00298664subs xzr, sp, x16
00298668b.ls 0x29872c
0029866cstr x30, [sp-64]!
00298670stur x29, [sp-8]
00298674sub x29, sp, 8
00298678str x0, [sp+72]
0029867cstr x1, [sp+80]
00298680str x2, [sp+88]
00298684str x3, [sp+96]
00298688mov x0, x2
0029868cbl math/big.(*Int).Sign
00298690str x0, [sp+48]
00298694subs xzr, x0, 0
00298698cset x1, eq
0029869cstrb w1, [sp+39]
002986a0cbz x0, 0x2986a8
002986a4b 0x2986c4
002986a8
002986a8loc_2986a8:
002986a8ldr x0, [sp+96]
002986acbl math/big.(*Int).Sign
002986b0str x0, [sp+40]
002986b4subs xzr, x0, 0
002986b8cset x1, eq
002986bcstrb w1, [sp+39]
002986c0b 0x2986c8
002986c4
002986c4loc_2986c4:
002986c4b 0x2986c8
002986c8
002986c8loc_2986c8:
002986c8ldrb w3, [sp+39]
002986cctbnz w3, 0, 0x2986d4
002986d0b 0x2986e0
002986d4
002986d4loc_2986d4:
002986d4ldur x29, [sp-8]
002986d8ldr x30, [sp], 64
002986dcret x30
002986e0
002986e0loc_2986e0:
002986e0ldr x1, [sp+88]
002986e4ldr x2, [sp+96]
002986e8ldr x3, [sp+72]
002986ecldrsb x27, [x3]
002986f0ldr x3, [x3+40]
002986f4ldr x0, [sp+80]
002986f8blr x3
002986fcstrb w0, [sp+39]
00298700tbnz w0, 0, 0x298708
00298704b 0x298714
00298708
00298708loc_298708:
00298708ldur x29, [sp-8]
0029870cldr x30, [sp], 64
00298710ret x30
00298714
00298714loc_298714:
00298714adrp x0, 0x35d000
00298718add x0, x0, 2944
0029871cadrp x1, 0x47a000
00298720add x1, x1, 2128
00298724bl runtime.gopanic
00298728hint
0029872c
0029872cloc_29872c:
0029872cstp x0, x1, [sp+8]
00298730stp x2, x3, [sp+24]
00298734mov x3, x30
00298738bl runtime.morestack_noctxt.abi0
0029873cldp x0, x1, [sp+8]
00298740ldp x2, x3, [sp+24]
00298744b 0x298660
00298748udf 0
0029874cudf 0
00298660
00298750
00298750crypto/elliptic.initAll: ; void crypto/elliptic.initAll(void)
00298750ldr x16, [x28+16]
00298754subs xzr, sp, x16
00298758b.ls 0x298784
0029875cstr x30, [sp-16]!
00298760stur x29, [sp-8]
00298764sub x29, sp, 8
00298768bl crypto/elliptic.initP224
0029876cbl crypto/elliptic.initP256
00298770bl crypto/elliptic.initP384
00298774bl crypto/elliptic.initP521
00298778ldur x29, [sp-8]
0029877cldr x30, [sp], 16
00298780ret x30
00298784
00298784loc_298784:
00298784mov x3, x30
00298788bl runtime.morestack_noctxt.abi0
0029878cb 0x298750
00298750
00298750crypto/elliptic.initAll: ; void crypto/elliptic.initAll(void)
00298750ldr x16, [x28+16]
00298754subs xzr, sp, x16
00298758b.ls 0x298784
0029875cstr x30, [sp-16]!
00298760stur x29, [sp-8]
00298764sub x29, sp, 8
00298768bl crypto/elliptic.initP224
0029876cbl crypto/elliptic.initP256
00298770bl crypto/elliptic.initP384
00298774bl crypto/elliptic.initP521
00298778ldur x29, [sp-8]
0029877cldr x30, [sp], 16
00298780ret x30
00298784
00298784loc_298784:
00298784mov x3, x30
00298788bl runtime.morestack_noctxt.abi0
0029878cb 0x298750
00298750
00298790
00298790crypto/elliptic.P224: ; void crypto/elliptic.P224(void)
00298790ldr x16, [x28+16]
00298794subs xzr, sp, x16
00298798b.ls 0x2987ec
0029879cstr x30, [sp-48]!
002987a0stur x29, [sp-8]
002987a4sub x29, sp, 8
002987a8stp xzr, xzr, [sp+24]
002987acadrp x0, 0x7b3000
002987b0add x0, x0, 2656
002987b4adrp x1, 0x441000
002987b8add x1, x1, 848
002987bcbl sync.(*Once).Do
002987c0adrp x27, 0x775000
002987c4ldr x2, [x27+1968]
002987c8adrp x3, 0x482000
002987ccadd x3, x3, 360
002987d0str x3, [sp+24]
002987d4str x2, [sp+32]
002987d8ldr x0, [sp+24]
002987dcldr x1, [sp+32]
002987e0ldur x29, [sp-8]
002987e4ldr x30, [sp], 48
002987e8ret x30
002987ec
002987ecloc_2987ec:
002987ecmov x3, x30
002987f0bl runtime.morestack_noctxt.abi0
002987f4b 0x298790
002987f8udf 0
002987fcudf 0
00298790
00298790crypto/elliptic.P224: ; void crypto/elliptic.P224(void)
00298790ldr x16, [x28+16]
00298794subs xzr, sp, x16
00298798b.ls 0x2987ec
0029879cstr x30, [sp-48]!
002987a0stur x29, [sp-8]
002987a4sub x29, sp, 8
002987a8stp xzr, xzr, [sp+24]
002987acadrp x0, 0x7b3000
002987b0add x0, x0, 2656
002987b4adrp x1, 0x441000
002987b8add x1, x1, 848
002987bcbl sync.(*Once).Do
002987c0adrp x27, 0x775000
002987c4ldr x2, [x27+1968]
002987c8adrp x3, 0x482000
002987ccadd x3, x3, 360
002987d0str x3, [sp+24]
002987d4str x2, [sp+32]
002987d8ldr x0, [sp+24]
002987dcldr x1, [sp+32]
002987e0ldur x29, [sp-8]
002987e4ldr x30, [sp], 48
002987e8ret x30
002987ec
002987ecloc_2987ec:
002987ecmov x3, x30
002987f0bl runtime.morestack_noctxt.abi0
002987f4b 0x298790
002987f8udf 0
002987fcudf 0
00298790
00298800
00298800crypto/elliptic.P256: ; void crypto/elliptic.P256(void)
00298800ldr x16, [x28+16]
00298804subs xzr, sp, x16
00298808b.ls 0x29885c
0029880cstr x30, [sp-48]!
00298810stur x29, [sp-8]
00298814sub x29, sp, 8
00298818stp xzr, xzr, [sp+24]
0029881cadrp x0, 0x7b3000
00298820add x0, x0, 2656
00298824adrp x1, 0x441000
00298828add x1, x1, 848
0029882cbl sync.(*Once).Do
00298830adrp x27, 0x775000
00298834ldr x2, [x27+1976]
00298838adrp x3, 0x482000
0029883cadd x3, x3, 432
00298840str x3, [sp+24]
00298844str x2, [sp+32]
00298848ldr x0, [sp+24]
0029884cldr x1, [sp+32]
00298850ldur x29, [sp-8]
00298854ldr x30, [sp], 48
00298858ret x30
0029885c
0029885cloc_29885c:
0029885cmov x3, x30
00298860bl runtime.morestack_noctxt.abi0
00298864b 0x298800
00298868udf 0
0029886cudf 0
00298800
00298800crypto/elliptic.P256: ; void crypto/elliptic.P256(void)
00298800ldr x16, [x28+16]
00298804subs xzr, sp, x16
00298808b.ls 0x29885c
0029880cstr x30, [sp-48]!
00298810stur x29, [sp-8]
00298814sub x29, sp, 8
00298818stp xzr, xzr, [sp+24]
0029881cadrp x0, 0x7b3000
00298820add x0, x0, 2656
00298824adrp x1, 0x441000
00298828add x1, x1, 848
0029882cbl sync.(*Once).Do
00298830adrp x27, 0x775000
00298834ldr x2, [x27+1976]
00298838adrp x3, 0x482000
0029883cadd x3, x3, 432
00298840str x3, [sp+24]
00298844str x2, [sp+32]
00298848ldr x0, [sp+24]
0029884cldr x1, [sp+32]
00298850ldur x29, [sp-8]
00298854ldr x30, [sp], 48
00298858ret x30
0029885c
0029885cloc_29885c:
0029885cmov x3, x30
00298860bl runtime.morestack_noctxt.abi0
00298864b 0x298800
00298868udf 0
0029886cudf 0
00298800
00298870
00298870crypto/elliptic.P384: ; void crypto/elliptic.P384(void)
00298870ldr x16, [x28+16]
00298874subs xzr, sp, x16
00298878b.ls 0x2988cc
0029887cstr x30, [sp-48]!
00298880stur x29, [sp-8]
00298884sub x29, sp, 8
00298888stp xzr, xzr, [sp+24]
0029888cadrp x0, 0x7b3000
00298890add x0, x0, 2656
00298894adrp x1, 0x441000
00298898add x1, x1, 848
0029889cbl sync.(*Once).Do
002988a0adrp x27, 0x775000
002988a4ldr x2, [x27+1984]
002988a8adrp x3, 0x482000
002988acadd x3, x3, 504
002988b0str x3, [sp+24]
002988b4str x2, [sp+32]
002988b8ldr x0, [sp+24]
002988bcldr x1, [sp+32]
002988c0ldur x29, [sp-8]
002988c4ldr x30, [sp], 48
002988c8ret x30
002988cc
002988ccloc_2988cc:
002988ccmov x3, x30
002988d0bl runtime.morestack_noctxt.abi0
002988d4b 0x298870
002988d8udf 0
002988dcudf 0
00298870
00298870crypto/elliptic.P384: ; void crypto/elliptic.P384(void)
00298870ldr x16, [x28+16]
00298874subs xzr, sp, x16
00298878b.ls 0x2988cc
0029887cstr x30, [sp-48]!
00298880stur x29, [sp-8]
00298884sub x29, sp, 8
00298888stp xzr, xzr, [sp+24]
0029888cadrp x0, 0x7b3000
00298890add x0, x0, 2656
00298894adrp x1, 0x441000
00298898add x1, x1, 848
0029889cbl sync.(*Once).Do
002988a0adrp x27, 0x775000
002988a4ldr x2, [x27+1984]
002988a8adrp x3, 0x482000
002988acadd x3, x3, 504
002988b0str x3, [sp+24]
002988b4str x2, [sp+32]
002988b8ldr x0, [sp+24]
002988bcldr x1, [sp+32]
002988c0ldur x29, [sp-8]
002988c4ldr x30, [sp], 48
002988c8ret x30
002988cc
002988ccloc_2988cc:
002988ccmov x3, x30
002988d0bl runtime.morestack_noctxt.abi0
002988d4b 0x298870
002988d8udf 0
002988dcudf 0
00298870
002988e0
002988e0crypto/elliptic.P521: ; void crypto/elliptic.P521(void)
002988e0ldr x16, [x28+16]
002988e4subs xzr, sp, x16
002988e8b.ls 0x29893c
002988ecstr x30, [sp-48]!
002988f0stur x29, [sp-8]
002988f4sub x29, sp, 8
002988f8stp xzr, xzr, [sp+24]
002988fcadrp x0, 0x7b3000
00298900add x0, x0, 2656
00298904adrp x1, 0x441000
00298908add x1, x1, 848
0029890cbl sync.(*Once).Do
00298910adrp x27, 0x775000
00298914ldr x2, [x27+1992]
00298918adrp x3, 0x482000
0029891cadd x3, x3, 576
00298920str x3, [sp+24]
00298924str x2, [sp+32]
00298928ldr x0, [sp+24]
0029892cldr x1, [sp+32]
00298930ldur x29, [sp-8]
00298934ldr x30, [sp], 48
00298938ret x30
0029893c
0029893cloc_29893c:
0029893cmov x3, x30
00298940bl runtime.morestack_noctxt.abi0
00298944b 0x2988e0
00298948udf 0
0029894cudf 0
002988e0
002988e0crypto/elliptic.P521: ; void crypto/elliptic.P521(void)
002988e0ldr x16, [x28+16]
002988e4subs xzr, sp, x16
002988e8b.ls 0x29893c
002988ecstr x30, [sp-48]!
002988f0stur x29, [sp-8]
002988f4sub x29, sp, 8
002988f8stp xzr, xzr, [sp+24]
002988fcadrp x0, 0x7b3000
00298900add x0, x0, 2656
00298904adrp x1, 0x441000
00298908add x1, x1, 848
0029890cbl sync.(*Once).Do
00298910adrp x27, 0x775000
00298914ldr x2, [x27+1992]
00298918adrp x3, 0x482000
0029891cadd x3, x3, 576
00298920str x3, [sp+24]
00298924str x2, [sp+32]
00298928ldr x0, [sp+24]
0029892cldr x1, [sp+32]
00298930ldur x29, [sp-8]
00298934ldr x30, [sp], 48
00298938ret x30
0029893c
0029893cloc_29893c:
0029893cmov x3, x30
00298940bl runtime.morestack_noctxt.abi0
00298944b 0x2988e0
00298948udf 0
0029894cudf 0
002988e0
00298950
00298950crypto/elliptic.initP224: ; void crypto/elliptic.initP224(void)
00298950ldr x16, [x28+16]
00298954subs xzr, sp, x16
00298958b.ls 0x298b84
0029895cstr x30, [sp-96]!
00298960stur x29, [sp-8]
00298964sub x29, sp, 8
00298968adrp x0, 0x436000
0029896cadd x0, x0, 855
00298970movz x1, 68
00298974bl crypto/elliptic.bigFromDecimal
00298978str x0, [sp+80]
0029897cadrp x0, 0x436000
00298980add x0, x0, 923
00298984movz x1, 68
00298988bl crypto/elliptic.bigFromDecimal
0029898cstr x0, [sp+72]
00298990adrp x0, 0x433000
00298994add x0, x0, 2026
00298998orr x1, xzr, 56
0029899cbl crypto/elliptic.bigFromHex
002989a0str x0, [sp+64]
002989a4adrp x0, 0x433000
002989a8add x0, x0, 2082
002989acorr x1, xzr, 56
002989b0bl crypto/elliptic.bigFromHex
002989b4str x0, [sp+56]
002989b8adrp x0, 0x433000
002989bcadd x0, x0, 2138
002989c0orr x1, xzr, 56
002989c4bl crypto/elliptic.bigFromHex
002989c8str x0, [sp+48]
002989ccadrp x0, 0x3ee000
002989d0add x0, x0, 3296
002989d4bl runtime.newobject
002989d8str x0, [sp+40]
002989dcmovz x2, 5
002989e0str x2, [x0+56]
002989e4adrp x27, 0x7b3000
002989e8ldr w2, [x27+3056]
002989eccbz w2, 0x2989f4
002989f0b 0x2989f8
002989f4
002989f4loc_2989f4:
002989f4b 0x298a08
002989f8
002989f8loc_2989f8:
002989f8ldr x1, [x0+48]
002989fcbl runtime.gcWriteBarrier1
00298a00str x1, [x25]
00298a04b 0x298a08
00298a08
00298a08loc_298a08:
00298a08adrp x1, 0x418000
00298a0cadd x1, x1, 2162
00298a10str x1, [x0+48]
00298a14ldr x0, [sp+40]
00298a18ldrsb x27, [x0]
00298a1corr x1, xzr, 224
00298a20str x1, [x0+40]
00298a24ldr x0, [sp+40]
00298a28ldrsb x27, [x0]
00298a2cldr x1, [sp+80]
00298a30adrp x27, 0x7b3000
00298a34ldr w2, [x27+3056]
00298a38cbz w2, 0x298a40
00298a3cb 0x298a44
00298a40
00298a40loc_298a40:
00298a40b 0x298a58
00298a44
00298a44loc_298a44:
00298a44bl runtime.gcWriteBarrier2
00298a48str x1, [x25]
00298a4cldr x2, [x0]
00298a50str x2, [x25+8]
00298a54b 0x298a58
00298a58
00298a58loc_298a58:
00298a58str x1, [x0]
00298a5cldr x0, [sp+40]
00298a60ldrsb x27, [x0]
00298a64ldr x1, [sp+72]
00298a68adrp x27, 0x7b3000
00298a6cldr w2, [x27+3056]
00298a70cbz w2, 0x298a78
00298a74b 0x298a7c
00298a78
00298a78loc_298a78:
00298a78b 0x298a90
00298a7c
00298a7cloc_298a7c:
00298a7cbl runtime.gcWriteBarrier2
00298a80str x1, [x25]
00298a84ldr x2, [x0+8]
00298a88str x2, [x25+8]
00298a8cb 0x298a90
00298a90
00298a90loc_298a90:
00298a90str x1, [x0+8]
00298a94ldr x0, [sp+40]
00298a98ldrsb x27, [x0]
00298a9cldr x1, [sp+64]
00298aa0adrp x27, 0x7b3000
00298aa4ldr w2, [x27+3056]
00298aa8cbz w2, 0x298ab0
00298aacb 0x298ab4
00298ab0
00298ab0loc_298ab0:
00298ab0b 0x298ac8
00298ab4
00298ab4loc_298ab4:
00298ab4bl runtime.gcWriteBarrier2
00298ab8str x1, [x25]
00298abcldr x2, [x0+16]
00298ac0str x2, [x25+8]
00298ac4b 0x298ac8
00298ac8
00298ac8loc_298ac8:
00298ac8str x1, [x0+16]
00298accldr x0, [sp+40]
00298ad0ldrsb x27, [x0]
00298ad4ldr x1, [sp+56]
00298ad8adrp x27, 0x7b3000
00298adcldr w2, [x27+3056]
00298ae0cbz w2, 0x298ae8
00298ae4b 0x298aec
00298ae8
00298ae8loc_298ae8:
00298ae8b 0x298b00
00298aec
00298aecloc_298aec:
00298aecbl runtime.gcWriteBarrier2
00298af0str x1, [x25]
00298af4ldr x2, [x0+24]
00298af8str x2, [x25+8]
00298afcb 0x298b00
00298b00
00298b00loc_298b00:
00298b00str x1, [x0+24]
00298b04ldr x0, [sp+40]
00298b08ldrsb x27, [x0]
00298b0cldr x1, [sp+48]
00298b10adrp x27, 0x7b3000
00298b14ldr w2, [x27+3056]
00298b18cbz w2, 0x298b20
00298b1cb 0x298b24
00298b20
00298b20loc_298b20:
00298b20b 0x298b38
00298b24
00298b24loc_298b24:
00298b24bl runtime.gcWriteBarrier2
00298b28str x1, [x25]
00298b2cldr x2, [x0+32]
00298b30str x2, [x25+8]
00298b34b 0x298b38
00298b38
00298b38loc_298b38:
00298b38str x1, [x0+32]
00298b3cadrp x27, 0x775000
00298b40ldr x0, [x27+1968]
00298b44ldrsb x27, [x0]
00298b48ldr x1, [sp+40]
00298b4cadrp x27, 0x7b3000
00298b50ldr w2, [x27+3056]
00298b54cbz w2, 0x298b5c
00298b58b 0x298b60
00298b5c
00298b5cloc_298b5c:
00298b5cb 0x298b74
00298b60
00298b60loc_298b60:
00298b60bl runtime.gcWriteBarrier2
00298b64str x1, [x25]
00298b68ldr x2, [x0+8]
00298b6cstr x2, [x25+8]
00298b70b 0x298b74
00298b74
00298b74loc_298b74:
00298b74str x1, [x0+8]
00298b78ldur x29, [sp-8]
00298b7cldr x30, [sp], 96
00298b80ret x30
00298b84
00298b84loc_298b84:
00298b84mov x3, x30
00298b88bl runtime.morestack_noctxt.abi0
00298b8cb 0x298950
00298950
00298950crypto/elliptic.initP224: ; void crypto/elliptic.initP224(void)
00298950ldr x16, [x28+16]
00298954subs xzr, sp, x16
00298958b.ls 0x298b84
0029895cstr x30, [sp-96]!
00298960stur x29, [sp-8]
00298964sub x29, sp, 8
00298968adrp x0, 0x436000
0029896cadd x0, x0, 855
00298970movz x1, 68
00298974bl crypto/elliptic.bigFromDecimal
00298978str x0, [sp+80]
0029897cadrp x0, 0x436000
00298980add x0, x0, 923
00298984movz x1, 68
00298988bl crypto/elliptic.bigFromDecimal
0029898cstr x0, [sp+72]
00298990adrp x0, 0x433000
00298994add x0, x0, 2026
00298998orr x1, xzr, 56
0029899cbl crypto/elliptic.bigFromHex
002989a0str x0, [sp+64]
002989a4adrp x0, 0x433000
002989a8add x0, x0, 2082
002989acorr x1, xzr, 56
002989b0bl crypto/elliptic.bigFromHex
002989b4str x0, [sp+56]
002989b8adrp x0, 0x433000
002989bcadd x0, x0, 2138
002989c0orr x1, xzr, 56
002989c4bl crypto/elliptic.bigFromHex
002989c8str x0, [sp+48]
002989ccadrp x0, 0x3ee000
002989d0add x0, x0, 3296
002989d4bl runtime.newobject
002989d8str x0, [sp+40]
002989dcmovz x2, 5
002989e0str x2, [x0+56]
002989e4adrp x27, 0x7b3000
002989e8ldr w2, [x27+3056]
002989eccbz w2, 0x2989f4
002989f0b 0x2989f8
002989f4
002989f4loc_2989f4:
002989f4b 0x298a08
002989f8
002989f8loc_2989f8:
002989f8ldr x1, [x0+48]
002989fcbl runtime.gcWriteBarrier1
00298a00str x1, [x25]
00298a04b 0x298a08
00298a08
00298a08loc_298a08:
00298a08adrp x1, 0x418000
00298a0cadd x1, x1, 2162
00298a10str x1, [x0+48]
00298a14ldr x0, [sp+40]
00298a18ldrsb x27, [x0]
00298a1corr x1, xzr, 224
00298a20str x1, [x0+40]
00298a24ldr x0, [sp+40]
00298a28ldrsb x27, [x0]
00298a2cldr x1, [sp+80]
00298a30adrp x27, 0x7b3000
00298a34ldr w2, [x27+3056]
00298a38cbz w2, 0x298a40
00298a3cb 0x298a44
00298a40
00298a40loc_298a40:
00298a40b 0x298a58
00298a44
00298a44loc_298a44:
00298a44bl runtime.gcWriteBarrier2
00298a48str x1, [x25]
00298a4cldr x2, [x0]
00298a50str x2, [x25+8]
00298a54b 0x298a58
00298a58
00298a58loc_298a58:
00298a58str x1, [x0]
00298a5cldr x0, [sp+40]
00298a60ldrsb x27, [x0]
00298a64ldr x1, [sp+72]
00298a68adrp x27, 0x7b3000
00298a6cldr w2, [x27+3056]
00298a70cbz w2, 0x298a78
00298a74b 0x298a7c
00298a78
00298a78loc_298a78:
00298a78b 0x298a90
00298a7c
00298a7cloc_298a7c:
00298a7cbl runtime.gcWriteBarrier2
00298a80str x1, [x25]
00298a84ldr x2, [x0+8]
00298a88str x2, [x25+8]
00298a8cb 0x298a90
00298a90
00298a90loc_298a90:
00298a90str x1, [x0+8]
00298a94ldr x0, [sp+40]
00298a98ldrsb x27, [x0]
00298a9cldr x1, [sp+64]
00298aa0adrp x27, 0x7b3000
00298aa4ldr w2, [x27+3056]
00298aa8cbz w2, 0x298ab0
00298aacb 0x298ab4
00298ab0
00298ab0loc_298ab0:
00298ab0b 0x298ac8
00298ab4
00298ab4loc_298ab4:
00298ab4bl runtime.gcWriteBarrier2
00298ab8str x1, [x25]
00298abcldr x2, [x0+16]
00298ac0str x2, [x25+8]
00298ac4b 0x298ac8
00298ac8
00298ac8loc_298ac8:
00298ac8str x1, [x0+16]
00298accldr x0, [sp+40]
00298ad0ldrsb x27, [x0]
00298ad4ldr x1, [sp+56]
00298ad8adrp x27, 0x7b3000
00298adcldr w2, [x27+3056]
00298ae0cbz w2, 0x298ae8
00298ae4b 0x298aec
00298ae8
00298ae8loc_298ae8:
00298ae8b 0x298b00
00298aec
00298aecloc_298aec:
00298aecbl runtime.gcWriteBarrier2
00298af0str x1, [x25]
00298af4ldr x2, [x0+24]
00298af8str x2, [x25+8]
00298afcb 0x298b00
00298b00
00298b00loc_298b00:
00298b00str x1, [x0+24]
00298b04ldr x0, [sp+40]
00298b08ldrsb x27, [x0]
00298b0cldr x1, [sp+48]
00298b10adrp x27, 0x7b3000
00298b14ldr w2, [x27+3056]
00298b18cbz w2, 0x298b20
00298b1cb 0x298b24
00298b20
00298b20loc_298b20:
00298b20b 0x298b38
00298b24
00298b24loc_298b24:
00298b24bl runtime.gcWriteBarrier2
00298b28str x1, [x25]
00298b2cldr x2, [x0+32]
00298b30str x2, [x25+8]
00298b34b 0x298b38
00298b38
00298b38loc_298b38:
00298b38str x1, [x0+32]
00298b3cadrp x27, 0x775000
00298b40ldr x0, [x27+1968]
00298b44ldrsb x27, [x0]
00298b48ldr x1, [sp+40]
00298b4cadrp x27, 0x7b3000
00298b50ldr w2, [x27+3056]
00298b54cbz w2, 0x298b5c
00298b58b 0x298b60
00298b5c
00298b5cloc_298b5c:
00298b5cb 0x298b74
00298b60
00298b60loc_298b60:
00298b60bl runtime.gcWriteBarrier2
00298b64str x1, [x25]
00298b68ldr x2, [x0+8]
00298b6cstr x2, [x25+8]
00298b70b 0x298b74
00298b74
00298b74loc_298b74:
00298b74str x1, [x0+8]
00298b78ldur x29, [sp-8]
00298b7cldr x30, [sp], 96
00298b80ret x30
00298b84
00298b84loc_298b84:
00298b84mov x3, x30
00298b88bl runtime.morestack_noctxt.abi0
00298b8cb 0x298950
00298950
00298b90
00298b90crypto/elliptic.initP256: ; void crypto/elliptic.initP256(void)
00298b90ldr x16, [x28+16]
00298b94subs xzr, sp, x16
00298b98b.ls 0x298dc4
00298b9cstr x30, [sp-96]!
00298ba0stur x29, [sp-8]
00298ba4sub x29, sp, 8
00298ba8adrp x0, 0x437000
00298bacadd x0, x0, 1629
00298bb0movz x1, 78
00298bb4bl crypto/elliptic.bigFromDecimal
00298bb8str x0, [sp+80]
00298bbcadrp x0, 0x437000
00298bc0add x0, x0, 1707
00298bc4movz x1, 78
00298bc8bl crypto/elliptic.bigFromDecimal
00298bccstr x0, [sp+72]
00298bd0adrp x0, 0x435000
00298bd4add x0, x0, 1545
00298bd8orr x1, xzr, 64
00298bdcbl crypto/elliptic.bigFromHex
00298be0str x0, [sp+64]
00298be4adrp x0, 0x435000
00298be8add x0, x0, 1609
00298becorr x1, xzr, 64
00298bf0bl crypto/elliptic.bigFromHex
00298bf4str x0, [sp+56]
00298bf8adrp x0, 0x435000
00298bfcadd x0, x0, 1673
00298c00orr x1, xzr, 64
00298c04bl crypto/elliptic.bigFromHex
00298c08str x0, [sp+48]
00298c0cadrp x0, 0x3ee000
00298c10add x0, x0, 3296
00298c14bl runtime.newobject
00298c18str x0, [sp+40]
00298c1cmovz x2, 5
00298c20str x2, [x0+56]
00298c24adrp x27, 0x7b3000
00298c28ldr w2, [x27+3056]
00298c2ccbz w2, 0x298c34
00298c30b 0x298c38
00298c34
00298c34loc_298c34:
00298c34b 0x298c48
00298c38
00298c38loc_298c38:
00298c38ldr x1, [x0+48]
00298c3cbl runtime.gcWriteBarrier1
00298c40str x1, [x25]
00298c44b 0x298c48
00298c48
00298c48loc_298c48:
00298c48adrp x1, 0x418000
00298c4cadd x1, x1, 2167
00298c50str x1, [x0+48]
00298c54ldr x0, [sp+40]
00298c58ldrsb x27, [x0]
00298c5corr x1, xzr, 256
00298c60str x1, [x0+40]
00298c64ldr x0, [sp+40]
00298c68ldrsb x27, [x0]
00298c6cldr x1, [sp+80]
00298c70adrp x27, 0x7b3000
00298c74ldr w2, [x27+3056]
00298c78cbz w2, 0x298c80
00298c7cb 0x298c84
00298c80
00298c80loc_298c80:
00298c80b 0x298c98
00298c84
00298c84loc_298c84:
00298c84bl runtime.gcWriteBarrier2
00298c88str x1, [x25]
00298c8cldr x2, [x0]
00298c90str x2, [x25+8]
00298c94b 0x298c98
00298c98
00298c98loc_298c98:
00298c98str x1, [x0]
00298c9cldr x0, [sp+40]
00298ca0ldrsb x27, [x0]
00298ca4ldr x1, [sp+72]
00298ca8adrp x27, 0x7b3000
00298cacldr w2, [x27+3056]
00298cb0cbz w2, 0x298cb8
00298cb4b 0x298cbc
00298cb8
00298cb8loc_298cb8:
00298cb8b 0x298cd0
00298cbc
00298cbcloc_298cbc:
00298cbcbl runtime.gcWriteBarrier2
00298cc0str x1, [x25]
00298cc4ldr x2, [x0+8]
00298cc8str x2, [x25+8]
00298cccb 0x298cd0
00298cd0
00298cd0loc_298cd0:
00298cd0str x1, [x0+8]
00298cd4ldr x0, [sp+40]
00298cd8ldrsb x27, [x0]
00298cdcldr x1, [sp+64]
00298ce0adrp x27, 0x7b3000
00298ce4ldr w2, [x27+3056]
00298ce8cbz w2, 0x298cf0
00298cecb 0x298cf4
00298cf0
00298cf0loc_298cf0:
00298cf0b 0x298d08
00298cf4
00298cf4loc_298cf4:
00298cf4bl runtime.gcWriteBarrier2
00298cf8str x1, [x25]
00298cfcldr x2, [x0+16]
00298d00str x2, [x25+8]
00298d04b 0x298d08
00298d08
00298d08loc_298d08:
00298d08str x1, [x0+16]
00298d0cldr x0, [sp+40]
00298d10ldrsb x27, [x0]
00298d14ldr x1, [sp+56]
00298d18adrp x27, 0x7b3000
00298d1cldr w2, [x27+3056]
00298d20cbz w2, 0x298d28
00298d24b 0x298d2c
00298d28
00298d28loc_298d28:
00298d28b 0x298d40
00298d2c
00298d2cloc_298d2c:
00298d2cbl runtime.gcWriteBarrier2
00298d30str x1, [x25]
00298d34ldr x2, [x0+24]
00298d38str x2, [x25+8]
00298d3cb 0x298d40
00298d40
00298d40loc_298d40:
00298d40str x1, [x0+24]
00298d44ldr x0, [sp+40]
00298d48ldrsb x27, [x0]
00298d4cldr x1, [sp+48]
00298d50adrp x27, 0x7b3000
00298d54ldr w2, [x27+3056]
00298d58cbz w2, 0x298d60
00298d5cb 0x298d64
00298d60
00298d60loc_298d60:
00298d60b 0x298d78
00298d64
00298d64loc_298d64:
00298d64bl runtime.gcWriteBarrier2
00298d68str x1, [x25]
00298d6cldr x2, [x0+32]
00298d70str x2, [x25+8]
00298d74b 0x298d78
00298d78
00298d78loc_298d78:
00298d78str x1, [x0+32]
00298d7cadrp x27, 0x775000
00298d80ldr x0, [x27+1976]
00298d84ldrsb x27, [x0]
00298d88ldr x1, [sp+40]
00298d8cadrp x27, 0x7b3000
00298d90ldr w2, [x27+3056]
00298d94cbz w2, 0x298d9c
00298d98b 0x298da0
00298d9c
00298d9cloc_298d9c:
00298d9cb 0x298db4
00298da0
00298da0loc_298da0:
00298da0bl runtime.gcWriteBarrier2
00298da4str x1, [x25]
00298da8ldr x2, [x0+8]
00298dacstr x2, [x25+8]
00298db0b 0x298db4
00298db4
00298db4loc_298db4:
00298db4str x1, [x0+8]
00298db8ldur x29, [sp-8]
00298dbcldr x30, [sp], 96
00298dc0ret x30
00298dc4
00298dc4loc_298dc4:
00298dc4mov x3, x30
00298dc8bl runtime.morestack_noctxt.abi0
00298dccb 0x298b90
00298b90
00298b90crypto/elliptic.initP256: ; void crypto/elliptic.initP256(void)
00298b90ldr x16, [x28+16]
00298b94subs xzr, sp, x16
00298b98b.ls 0x298dc4
00298b9cstr x30, [sp-96]!
00298ba0stur x29, [sp-8]
00298ba4sub x29, sp, 8
00298ba8adrp x0, 0x437000
00298bacadd x0, x0, 1629
00298bb0movz x1, 78
00298bb4bl crypto/elliptic.bigFromDecimal
00298bb8str x0, [sp+80]
00298bbcadrp x0, 0x437000
00298bc0add x0, x0, 1707
00298bc4movz x1, 78
00298bc8bl crypto/elliptic.bigFromDecimal
00298bccstr x0, [sp+72]
00298bd0adrp x0, 0x435000
00298bd4add x0, x0, 1545
00298bd8orr x1, xzr, 64
00298bdcbl crypto/elliptic.bigFromHex
00298be0str x0, [sp+64]
00298be4adrp x0, 0x435000
00298be8add x0, x0, 1609
00298becorr x1, xzr, 64
00298bf0bl crypto/elliptic.bigFromHex
00298bf4str x0, [sp+56]
00298bf8adrp x0, 0x435000
00298bfcadd x0, x0, 1673
00298c00orr x1, xzr, 64
00298c04bl crypto/elliptic.bigFromHex
00298c08str x0, [sp+48]
00298c0cadrp x0, 0x3ee000
00298c10add x0, x0, 3296
00298c14bl runtime.newobject
00298c18str x0, [sp+40]
00298c1cmovz x2, 5
00298c20str x2, [x0+56]
00298c24adrp x27, 0x7b3000
00298c28ldr w2, [x27+3056]
00298c2ccbz w2, 0x298c34
00298c30b 0x298c38
00298c34
00298c34loc_298c34:
00298c34b 0x298c48
00298c38
00298c38loc_298c38:
00298c38ldr x1, [x0+48]
00298c3cbl runtime.gcWriteBarrier1
00298c40str x1, [x25]
00298c44b 0x298c48
00298c48
00298c48loc_298c48:
00298c48adrp x1, 0x418000
00298c4cadd x1, x1, 2167
00298c50str x1, [x0+48]
00298c54ldr x0, [sp+40]
00298c58ldrsb x27, [x0]
00298c5corr x1, xzr, 256
00298c60str x1, [x0+40]
00298c64ldr x0, [sp+40]
00298c68ldrsb x27, [x0]
00298c6cldr x1, [sp+80]
00298c70adrp x27, 0x7b3000
00298c74ldr w2, [x27+3056]
00298c78cbz w2, 0x298c80
00298c7cb 0x298c84
00298c80
00298c80loc_298c80:
00298c80b 0x298c98
00298c84
00298c84loc_298c84:
00298c84bl runtime.gcWriteBarrier2
00298c88str x1, [x25]
00298c8cldr x2, [x0]
00298c90str x2, [x25+8]
00298c94b 0x298c98
00298c98
00298c98loc_298c98:
00298c98str x1, [x0]
00298c9cldr x0, [sp+40]
00298ca0ldrsb x27, [x0]
00298ca4ldr x1, [sp+72]
00298ca8adrp x27, 0x7b3000
00298cacldr w2, [x27+3056]
00298cb0cbz w2, 0x298cb8
00298cb4b 0x298cbc
00298cb8
00298cb8loc_298cb8:
00298cb8b 0x298cd0
00298cbc
00298cbcloc_298cbc:
00298cbcbl runtime.gcWriteBarrier2
00298cc0str x1, [x25]
00298cc4ldr x2, [x0+8]
00298cc8str x2, [x25+8]
00298cccb 0x298cd0
00298cd0
00298cd0loc_298cd0:
00298cd0str x1, [x0+8]
00298cd4ldr x0, [sp+40]
00298cd8ldrsb x27, [x0]
00298cdcldr x1, [sp+64]
00298ce0adrp x27, 0x7b3000
00298ce4ldr w2, [x27+3056]
00298ce8cbz w2, 0x298cf0
00298cecb 0x298cf4
00298cf0
00298cf0loc_298cf0:
00298cf0b 0x298d08
00298cf4
00298cf4loc_298cf4:
00298cf4bl runtime.gcWriteBarrier2
00298cf8str x1, [x25]
00298cfcldr x2, [x0+16]
00298d00str x2, [x25+8]
00298d04b 0x298d08
00298d08
00298d08loc_298d08:
00298d08str x1, [x0+16]
00298d0cldr x0, [sp+40]
00298d10ldrsb x27, [x0]
00298d14ldr x1, [sp+56]
00298d18adrp x27, 0x7b3000
00298d1cldr w2, [x27+3056]
00298d20cbz w2, 0x298d28
00298d24b 0x298d2c
00298d28
00298d28loc_298d28:
00298d28b 0x298d40
00298d2c
00298d2cloc_298d2c:
00298d2cbl runtime.gcWriteBarrier2
00298d30str x1, [x25]
00298d34ldr x2, [x0+24]
00298d38str x2, [x25+8]
00298d3cb 0x298d40
00298d40
00298d40loc_298d40:
00298d40str x1, [x0+24]
00298d44ldr x0, [sp+40]
00298d48ldrsb x27, [x0]
00298d4cldr x1, [sp+48]
00298d50adrp x27, 0x7b3000
00298d54ldr w2, [x27+3056]
00298d58cbz w2, 0x298d60
00298d5cb 0x298d64
00298d60
00298d60loc_298d60:
00298d60b 0x298d78
00298d64
00298d64loc_298d64:
00298d64bl runtime.gcWriteBarrier2
00298d68str x1, [x25]
00298d6cldr x2, [x0+32]
00298d70str x2, [x25+8]
00298d74b 0x298d78
00298d78
00298d78loc_298d78:
00298d78str x1, [x0+32]
00298d7cadrp x27, 0x775000
00298d80ldr x0, [x27+1976]
00298d84ldrsb x27, [x0]
00298d88ldr x1, [sp+40]
00298d8cadrp x27, 0x7b3000
00298d90ldr w2, [x27+3056]
00298d94cbz w2, 0x298d9c
00298d98b 0x298da0
00298d9c
00298d9cloc_298d9c:
00298d9cb 0x298db4
00298da0
00298da0loc_298da0:
00298da0bl runtime.gcWriteBarrier2
00298da4str x1, [x25]
00298da8ldr x2, [x0+8]
00298dacstr x2, [x25+8]
00298db0b 0x298db4
00298db4
00298db4loc_298db4:
00298db4str x1, [x0+8]
00298db8ldur x29, [sp-8]
00298dbcldr x30, [sp], 96
00298dc0ret x30
00298dc4
00298dc4loc_298dc4:
00298dc4mov x3, x30
00298dc8bl runtime.morestack_noctxt.abi0
00298dccb 0x298b90
00298b90
00298dd0
00298dd0crypto/elliptic.initP384: ; void crypto/elliptic.initP384(void)
00298dd0ldr x16, [x28+16]
00298dd4subs xzr, sp, x16
00298dd8b.ls 0x299004
00298ddcstr x30, [sp-96]!
00298de0stur x29, [sp-8]
00298de4sub x29, sp, 8
00298de8adrp x0, 0x438000
00298decadd x0, x0, 3477
00298df0movz x1, 116
00298df4bl crypto/elliptic.bigFromDecimal
00298df8str x0, [sp+80]
00298dfcadrp x0, 0x438000
00298e00add x0, x0, 3593
00298e04movz x1, 116
00298e08bl crypto/elliptic.bigFromDecimal
00298e0cstr x0, [sp+72]
00298e10adrp x0, 0x438000
00298e14add x0, x0, 1948
00298e18orr x1, xzr, 96
00298e1cbl crypto/elliptic.bigFromHex
00298e20str x0, [sp+64]
00298e24adrp x0, 0x438000
00298e28add x0, x0, 2044
00298e2corr x1, xzr, 96
00298e30bl crypto/elliptic.bigFromHex
00298e34str x0, [sp+56]
00298e38adrp x0, 0x438000
00298e3cadd x0, x0, 2140
00298e40orr x1, xzr, 96
00298e44bl crypto/elliptic.bigFromHex
00298e48str x0, [sp+48]
00298e4cadrp x0, 0x3ee000
00298e50add x0, x0, 3296
00298e54bl runtime.newobject
00298e58str x0, [sp+40]
00298e5cmovz x2, 5
00298e60str x2, [x0+56]
00298e64adrp x27, 0x7b3000
00298e68ldr w2, [x27+3056]
00298e6ccbz w2, 0x298e74
00298e70b 0x298e78
00298e74
00298e74loc_298e74:
00298e74b 0x298e88
00298e78
00298e78loc_298e78:
00298e78ldr x1, [x0+48]
00298e7cbl runtime.gcWriteBarrier1
00298e80str x1, [x25]
00298e84b 0x298e88
00298e88
00298e88loc_298e88:
00298e88adrp x1, 0x418000
00298e8cadd x1, x1, 2172
00298e90str x1, [x0+48]
00298e94ldr x0, [sp+40]
00298e98ldrsb x27, [x0]
00298e9corr x1, xzr, 384
00298ea0str x1, [x0+40]
00298ea4ldr x0, [sp+40]
00298ea8ldrsb x27, [x0]
00298eacldr x1, [sp+80]
00298eb0adrp x27, 0x7b3000
00298eb4ldr w2, [x27+3056]
00298eb8cbz w2, 0x298ec0
00298ebcb 0x298ec4
00298ec0
00298ec0loc_298ec0:
00298ec0b 0x298ed8
00298ec4
00298ec4loc_298ec4:
00298ec4bl runtime.gcWriteBarrier2
00298ec8str x1, [x25]
00298eccldr x2, [x0]
00298ed0str x2, [x25+8]
00298ed4b 0x298ed8
00298ed8
00298ed8loc_298ed8:
00298ed8str x1, [x0]
00298edcldr x0, [sp+40]
00298ee0ldrsb x27, [x0]
00298ee4ldr x1, [sp+72]
00298ee8adrp x27, 0x7b3000
00298eecldr w2, [x27+3056]
00298ef0cbz w2, 0x298ef8
00298ef4b 0x298efc
00298ef8
00298ef8loc_298ef8:
00298ef8b 0x298f10
00298efc
00298efcloc_298efc:
00298efcbl runtime.gcWriteBarrier2
00298f00str x1, [x25]
00298f04ldr x2, [x0+8]
00298f08str x2, [x25+8]
00298f0cb 0x298f10
00298f10
00298f10loc_298f10:
00298f10str x1, [x0+8]
00298f14ldr x0, [sp+40]
00298f18ldrsb x27, [x0]
00298f1cldr x1, [sp+64]
00298f20adrp x27, 0x7b3000
00298f24ldr w2, [x27+3056]
00298f28cbz w2, 0x298f30
00298f2cb 0x298f34
00298f30
00298f30loc_298f30:
00298f30b 0x298f48
00298f34
00298f34loc_298f34:
00298f34bl runtime.gcWriteBarrier2
00298f38str x1, [x25]
00298f3cldr x2, [x0+16]
00298f40str x2, [x25+8]
00298f44b 0x298f48
00298f48
00298f48loc_298f48:
00298f48str x1, [x0+16]
00298f4cldr x0, [sp+40]
00298f50ldrsb x27, [x0]
00298f54ldr x1, [sp+56]
00298f58adrp x27, 0x7b3000
00298f5cldr w2, [x27+3056]
00298f60cbz w2, 0x298f68
00298f64b 0x298f6c
00298f68
00298f68loc_298f68:
00298f68b 0x298f80
00298f6c
00298f6cloc_298f6c:
00298f6cbl runtime.gcWriteBarrier2
00298f70str x1, [x25]
00298f74ldr x2, [x0+24]
00298f78str x2, [x25+8]
00298f7cb 0x298f80
00298f80
00298f80loc_298f80:
00298f80str x1, [x0+24]
00298f84ldr x0, [sp+40]
00298f88ldrsb x27, [x0]
00298f8cldr x1, [sp+48]
00298f90adrp x27, 0x7b3000
00298f94ldr w2, [x27+3056]
00298f98cbz w2, 0x298fa0
00298f9cb 0x298fa4
00298fa0
00298fa0loc_298fa0:
00298fa0b 0x298fb8
00298fa4
00298fa4loc_298fa4:
00298fa4bl runtime.gcWriteBarrier2
00298fa8str x1, [x25]
00298facldr x2, [x0+32]
00298fb0str x2, [x25+8]
00298fb4b 0x298fb8
00298fb8
00298fb8loc_298fb8:
00298fb8str x1, [x0+32]
00298fbcadrp x27, 0x775000
00298fc0ldr x0, [x27+1984]
00298fc4ldrsb x27, [x0]
00298fc8ldr x1, [sp+40]
00298fccadrp x27, 0x7b3000
00298fd0ldr w2, [x27+3056]
00298fd4cbz w2, 0x298fdc
00298fd8b 0x298fe0
00298fdc
00298fdcloc_298fdc:
00298fdcb 0x298ff4
00298fe0
00298fe0loc_298fe0:
00298fe0bl runtime.gcWriteBarrier2
00298fe4str x1, [x25]
00298fe8ldr x2, [x0+8]
00298fecstr x2, [x25+8]
00298ff0b 0x298ff4
00298ff4
00298ff4loc_298ff4:
00298ff4str x1, [x0+8]
00298ff8ldur x29, [sp-8]
00298ffcldr x30, [sp], 96
00299000ret x30
00299004
00299004loc_299004:
00299004mov x3, x30
00299008bl runtime.morestack_noctxt.abi0
0029900cb 0x298dd0
00298dd0
00298dd0crypto/elliptic.initP384: ; void crypto/elliptic.initP384(void)
00298dd0ldr x16, [x28+16]
00298dd4subs xzr, sp, x16
00298dd8b.ls 0x299004
00298ddcstr x30, [sp-96]!
00298de0stur x29, [sp-8]
00298de4sub x29, sp, 8
00298de8adrp x0, 0x438000
00298decadd x0, x0, 3477
00298df0movz x1, 116
00298df4bl crypto/elliptic.bigFromDecimal
00298df8str x0, [sp+80]
00298dfcadrp x0, 0x438000
00298e00add x0, x0, 3593
00298e04movz x1, 116
00298e08bl crypto/elliptic.bigFromDecimal
00298e0cstr x0, [sp+72]
00298e10adrp x0, 0x438000
00298e14add x0, x0, 1948
00298e18orr x1, xzr, 96
00298e1cbl crypto/elliptic.bigFromHex
00298e20str x0, [sp+64]
00298e24adrp x0, 0x438000
00298e28add x0, x0, 2044
00298e2corr x1, xzr, 96
00298e30bl crypto/elliptic.bigFromHex
00298e34str x0, [sp+56]
00298e38adrp x0, 0x438000
00298e3cadd x0, x0, 2140
00298e40orr x1, xzr, 96
00298e44bl crypto/elliptic.bigFromHex
00298e48str x0, [sp+48]
00298e4cadrp x0, 0x3ee000
00298e50add x0, x0, 3296
00298e54bl runtime.newobject
00298e58str x0, [sp+40]
00298e5cmovz x2, 5
00298e60str x2, [x0+56]
00298e64adrp x27, 0x7b3000
00298e68ldr w2, [x27+3056]
00298e6ccbz w2, 0x298e74
00298e70b 0x298e78
00298e74
00298e74loc_298e74:
00298e74b 0x298e88
00298e78
00298e78loc_298e78:
00298e78ldr x1, [x0+48]
00298e7cbl runtime.gcWriteBarrier1
00298e80str x1, [x25]
00298e84b 0x298e88
00298e88
00298e88loc_298e88:
00298e88adrp x1, 0x418000
00298e8cadd x1, x1, 2172
00298e90str x1, [x0+48]
00298e94ldr x0, [sp+40]
00298e98ldrsb x27, [x0]
00298e9corr x1, xzr, 384
00298ea0str x1, [x0+40]
00298ea4ldr x0, [sp+40]
00298ea8ldrsb x27, [x0]
00298eacldr x1, [sp+80]
00298eb0adrp x27, 0x7b3000
00298eb4ldr w2, [x27+3056]
00298eb8cbz w2, 0x298ec0
00298ebcb 0x298ec4
00298ec0
00298ec0loc_298ec0:
00298ec0b 0x298ed8
00298ec4
00298ec4loc_298ec4:
00298ec4bl runtime.gcWriteBarrier2
00298ec8str x1, [x25]
00298eccldr x2, [x0]
00298ed0str x2, [x25+8]
00298ed4b 0x298ed8
00298ed8
00298ed8loc_298ed8:
00298ed8str x1, [x0]
00298edcldr x0, [sp+40]
00298ee0ldrsb x27, [x0]
00298ee4ldr x1, [sp+72]
00298ee8adrp x27, 0x7b3000
00298eecldr w2, [x27+3056]
00298ef0cbz w2, 0x298ef8
00298ef4b 0x298efc
00298ef8
00298ef8loc_298ef8:
00298ef8b 0x298f10
00298efc
00298efcloc_298efc:
00298efcbl runtime.gcWriteBarrier2
00298f00str x1, [x25]
00298f04ldr x2, [x0+8]
00298f08str x2, [x25+8]
00298f0cb 0x298f10
00298f10
00298f10loc_298f10:
00298f10str x1, [x0+8]
00298f14ldr x0, [sp+40]
00298f18ldrsb x27, [x0]
00298f1cldr x1, [sp+64]
00298f20adrp x27, 0x7b3000
00298f24ldr w2, [x27+3056]
00298f28cbz w2, 0x298f30
00298f2cb 0x298f34
00298f30
00298f30loc_298f30:
00298f30b 0x298f48
00298f34
00298f34loc_298f34:
00298f34bl runtime.gcWriteBarrier2
00298f38str x1, [x25]
00298f3cldr x2, [x0+16]
00298f40str x2, [x25+8]
00298f44b 0x298f48
00298f48
00298f48loc_298f48:
00298f48str x1, [x0+16]
00298f4cldr x0, [sp+40]
00298f50ldrsb x27, [x0]
00298f54ldr x1, [sp+56]
00298f58adrp x27, 0x7b3000
00298f5cldr w2, [x27+3056]
00298f60cbz w2, 0x298f68
00298f64b 0x298f6c
00298f68
00298f68loc_298f68:
00298f68b 0x298f80
00298f6c
00298f6cloc_298f6c:
00298f6cbl runtime.gcWriteBarrier2
00298f70str x1, [x25]
00298f74ldr x2, [x0+24]
00298f78str x2, [x25+8]
00298f7cb 0x298f80
00298f80
00298f80loc_298f80:
00298f80str x1, [x0+24]
00298f84ldr x0, [sp+40]
00298f88ldrsb x27, [x0]
00298f8cldr x1, [sp+48]
00298f90adrp x27, 0x7b3000
00298f94ldr w2, [x27+3056]
00298f98cbz w2, 0x298fa0
00298f9cb 0x298fa4
00298fa0
00298fa0loc_298fa0:
00298fa0b 0x298fb8
00298fa4
00298fa4loc_298fa4:
00298fa4bl runtime.gcWriteBarrier2
00298fa8str x1, [x25]
00298facldr x2, [x0+32]
00298fb0str x2, [x25+8]
00298fb4b 0x298fb8
00298fb8
00298fb8loc_298fb8:
00298fb8str x1, [x0+32]
00298fbcadrp x27, 0x775000
00298fc0ldr x0, [x27+1984]
00298fc4ldrsb x27, [x0]
00298fc8ldr x1, [sp+40]
00298fccadrp x27, 0x7b3000
00298fd0ldr w2, [x27+3056]
00298fd4cbz w2, 0x298fdc
00298fd8b 0x298fe0
00298fdc
00298fdcloc_298fdc:
00298fdcb 0x298ff4
00298fe0
00298fe0loc_298fe0:
00298fe0bl runtime.gcWriteBarrier2
00298fe4str x1, [x25]
00298fe8ldr x2, [x0+8]
00298fecstr x2, [x25+8]
00298ff0b 0x298ff4
00298ff4
00298ff4loc_298ff4:
00298ff4str x1, [x0+8]
00298ff8ldur x29, [sp-8]
00298ffcldr x30, [sp], 96
00299000ret x30
00299004
00299004loc_299004:
00299004mov x3, x30
00299008bl runtime.morestack_noctxt.abi0
0029900cb 0x298dd0
00298dd0
00299010
00299010crypto/elliptic.initP521: ; void crypto/elliptic.initP521(void)
00299010ldr x16, [x28+16]
00299014subs xzr, sp, x16
00299018b.ls 0x299244
0029901cstr x30, [sp-96]!
00299020stur x29, [sp-8]
00299024sub x29, sp, 8
00299028adrp x0, 0x438000
0029902cadd x0, x0, 1191
00299030movz x1, 157
00299034bl crypto/elliptic.bigFromDecimal
00299038str x0, [sp+80]
0029903cadrp x0, 0x438000
00299040add x0, x0, 1348
00299044movz x1, 157
00299048bl crypto/elliptic.bigFromDecimal
0029904cstr x0, [sp+72]
00299050adrp x0, 0x438000
00299054add x0, x0, 496
00299058movz x1, 132
0029905cbl crypto/elliptic.bigFromHex
00299060str x0, [sp+64]
00299064adrp x0, 0x438000
00299068add x0, x0, 628
0029906cmovz x1, 132
00299070bl crypto/elliptic.bigFromHex
00299074str x0, [sp+56]
00299078adrp x0, 0x438000
0029907cadd x0, x0, 760
00299080movz x1, 132
00299084bl crypto/elliptic.bigFromHex
00299088str x0, [sp+48]
0029908cadrp x0, 0x3ed000
00299090add x0, x0, 3296
00299094bl runtime.newobject
00299098str x0, [sp+40]
0029909cmovz x2, 5
002990a0str x2, [x0+56]
002990a4adrp x27, 0x7b2000
002990a8ldr w2, [x27+3056]
002990accbz w2, 0x2990b4
002990b0b 0x2990b8
002990b4
002990b4loc_2990b4:
002990b4b 0x2990c8
002990b8
002990b8loc_2990b8:
002990b8ldr x1, [x0+48]
002990bcbl runtime.gcWriteBarrier1
002990c0str x1, [x25]
002990c4b 0x2990c8
002990c8
002990c8loc_2990c8:
002990c8adrp x1, 0x417000
002990ccadd x1, x1, 2177
002990d0str x1, [x0+48]
002990d4ldr x0, [sp+40]
002990d8ldrsb x27, [x0]
002990dcmovz x1, 521
002990e0str x1, [x0+40]
002990e4ldr x0, [sp+40]
002990e8ldrsb x27, [x0]
002990ecldr x1, [sp+80]
002990f0adrp x27, 0x7b2000
002990f4ldr w2, [x27+3056]
002990f8cbz w2, 0x299100
002990fcb 0x299104
00299100
00299100loc_299100:
00299100b 0x299118
00299104
00299104loc_299104:
00299104bl runtime.gcWriteBarrier2
00299108str x1, [x25]
0029910cldr x2, [x0]
00299110str x2, [x25+8]
00299114b 0x299118
00299118
00299118loc_299118:
00299118str x1, [x0]
0029911cldr x0, [sp+40]
00299120ldrsb x27, [x0]
00299124ldr x1, [sp+72]
00299128adrp x27, 0x7b2000
0029912cldr w2, [x27+3056]
00299130cbz w2, 0x299138
00299134b 0x29913c
00299138
00299138loc_299138:
00299138b 0x299150
0029913c
0029913cloc_29913c:
0029913cbl runtime.gcWriteBarrier2
00299140str x1, [x25]
00299144ldr x2, [x0+8]
00299148str x2, [x25+8]
0029914cb 0x299150
00299150
00299150loc_299150:
00299150str x1, [x0+8]
00299154ldr x0, [sp+40]
00299158ldrsb x27, [x0]
0029915cldr x1, [sp+64]
00299160adrp x27, 0x7b2000
00299164ldr w2, [x27+3056]
00299168cbz w2, 0x299170
0029916cb 0x299174
00299170
00299170loc_299170:
00299170b 0x299188
00299174
00299174loc_299174:
00299174bl runtime.gcWriteBarrier2
00299178str x1, [x25]
0029917cldr x2, [x0+16]
00299180str x2, [x25+8]
00299184b 0x299188
00299188
00299188loc_299188:
00299188str x1, [x0+16]
0029918cldr x0, [sp+40]
00299190ldrsb x27, [x0]
00299194ldr x1, [sp+56]
00299198adrp x27, 0x7b2000
0029919cldr w2, [x27+3056]
002991a0cbz w2, 0x2991a8
002991a4b 0x2991ac
002991a8
002991a8loc_2991a8:
002991a8b 0x2991c0
002991ac
002991acloc_2991ac:
002991acbl runtime.gcWriteBarrier2
002991b0str x1, [x25]
002991b4ldr x2, [x0+24]
002991b8str x2, [x25+8]
002991bcb 0x2991c0
002991c0
002991c0loc_2991c0:
002991c0str x1, [x0+24]
002991c4ldr x0, [sp+40]
002991c8ldrsb x27, [x0]
002991ccldr x1, [sp+48]
002991d0adrp x27, 0x7b2000
002991d4ldr w2, [x27+3056]
002991d8cbz w2, 0x2991e0
002991dcb 0x2991e4
002991e0
002991e0loc_2991e0:
002991e0b 0x2991f8
002991e4
002991e4loc_2991e4:
002991e4bl runtime.gcWriteBarrier2
002991e8str x1, [x25]
002991ecldr x2, [x0+32]
002991f0str x2, [x25+8]
002991f4b 0x2991f8
002991f8
002991f8loc_2991f8:
002991f8str x1, [x0+32]
002991fcadrp x27, 0x774000
00299200ldr x0, [x27+1992]
00299204ldrsb x27, [x0]
00299208ldr x1, [sp+40]
0029920cadrp x27, 0x7b2000
00299210ldr w2, [x27+3056]
00299214cbz w2, 0x29921c
00299218b 0x299220
0029921c
0029921cloc_29921c:
0029921cb 0x299234
00299220
00299220loc_299220:
00299220bl runtime.gcWriteBarrier2
00299224str x1, [x25]
00299228ldr x2, [x0+8]
0029922cstr x2, [x25+8]
00299230b 0x299234
00299234
00299234loc_299234:
00299234str x1, [x0+8]
00299238ldur x29, [sp-8]
0029923cldr x30, [sp], 96
00299240ret x30
00299244
00299244loc_299244:
00299244mov x3, x30
00299248bl runtime.morestack_noctxt.abi0
0029924cb 0x299010
00299010
00299010crypto/elliptic.initP521: ; void crypto/elliptic.initP521(void)
00299010ldr x16, [x28+16]
00299014subs xzr, sp, x16
00299018b.ls 0x299244
0029901cstr x30, [sp-96]!
00299020stur x29, [sp-8]
00299024sub x29, sp, 8
00299028adrp x0, 0x438000
0029902cadd x0, x0, 1191
00299030movz x1, 157
00299034bl crypto/elliptic.bigFromDecimal
00299038str x0, [sp+80]
0029903cadrp x0, 0x438000
00299040add x0, x0, 1348
00299044movz x1, 157
00299048bl crypto/elliptic.bigFromDecimal
0029904cstr x0, [sp+72]
00299050adrp x0, 0x438000
00299054add x0, x0, 496
00299058movz x1, 132
0029905cbl crypto/elliptic.bigFromHex
00299060str x0, [sp+64]
00299064adrp x0, 0x438000
00299068add x0, x0, 628
0029906cmovz x1, 132
00299070bl crypto/elliptic.bigFromHex
00299074str x0, [sp+56]
00299078adrp x0, 0x438000
0029907cadd x0, x0, 760
00299080movz x1, 132
00299084bl crypto/elliptic.bigFromHex
00299088str x0, [sp+48]
0029908cadrp x0, 0x3ed000
00299090add x0, x0, 3296
00299094bl runtime.newobject
00299098str x0, [sp+40]
0029909cmovz x2, 5
002990a0str x2, [x0+56]
002990a4adrp x27, 0x7b2000
002990a8ldr w2, [x27+3056]
002990accbz w2, 0x2990b4
002990b0b 0x2990b8
002990b4
002990b4loc_2990b4:
002990b4b 0x2990c8
002990b8
002990b8loc_2990b8:
002990b8ldr x1, [x0+48]
002990bcbl runtime.gcWriteBarrier1
002990c0str x1, [x25]
002990c4b 0x2990c8
002990c8
002990c8loc_2990c8:
002990c8adrp x1, 0x417000
002990ccadd x1, x1, 2177
002990d0str x1, [x0+48]
002990d4ldr x0, [sp+40]
002990d8ldrsb x27, [x0]
002990dcmovz x1, 521
002990e0str x1, [x0+40]
002990e4ldr x0, [sp+40]
002990e8ldrsb x27, [x0]
002990ecldr x1, [sp+80]
002990f0adrp x27, 0x7b2000
002990f4ldr w2, [x27+3056]
002990f8cbz w2, 0x299100
002990fcb 0x299104
00299100
00299100loc_299100:
00299100b 0x299118
00299104
00299104loc_299104:
00299104bl runtime.gcWriteBarrier2
00299108str x1, [x25]
0029910cldr x2, [x0]
00299110str x2, [x25+8]
00299114b 0x299118
00299118
00299118loc_299118:
00299118str x1, [x0]
0029911cldr x0, [sp+40]
00299120ldrsb x27, [x0]
00299124ldr x1, [sp+72]
00299128adrp x27, 0x7b2000
0029912cldr w2, [x27+3056]
00299130cbz w2, 0x299138
00299134b 0x29913c
00299138
00299138loc_299138:
00299138b 0x299150
0029913c
0029913cloc_29913c:
0029913cbl runtime.gcWriteBarrier2
00299140str x1, [x25]
00299144ldr x2, [x0+8]
00299148str x2, [x25+8]
0029914cb 0x299150
00299150
00299150loc_299150:
00299150str x1, [x0+8]
00299154ldr x0, [sp+40]
00299158ldrsb x27, [x0]
0029915cldr x1, [sp+64]
00299160adrp x27, 0x7b2000
00299164ldr w2, [x27+3056]
00299168cbz w2, 0x299170
0029916cb 0x299174
00299170
00299170loc_299170:
00299170b 0x299188
00299174
00299174loc_299174:
00299174bl runtime.gcWriteBarrier2
00299178str x1, [x25]
0029917cldr x2, [x0+16]
00299180str x2, [x25+8]
00299184b 0x299188
00299188
00299188loc_299188:
00299188str x1, [x0+16]
0029918cldr x0, [sp+40]
00299190ldrsb x27, [x0]
00299194ldr x1, [sp+56]
00299198adrp x27, 0x7b2000
0029919cldr w2, [x27+3056]
002991a0cbz w2, 0x2991a8
002991a4b 0x2991ac
002991a8
002991a8loc_2991a8:
002991a8b 0x2991c0
002991ac
002991acloc_2991ac:
002991acbl runtime.gcWriteBarrier2
002991b0str x1, [x25]
002991b4ldr x2, [x0+24]
002991b8str x2, [x25+8]
002991bcb 0x2991c0
002991c0
002991c0loc_2991c0:
002991c0str x1, [x0+24]
002991c4ldr x0, [sp+40]
002991c8ldrsb x27, [x0]
002991ccldr x1, [sp+48]
002991d0adrp x27, 0x7b2000
002991d4ldr w2, [x27+3056]
002991d8cbz w2, 0x2991e0
002991dcb 0x2991e4
002991e0
002991e0loc_2991e0:
002991e0b 0x2991f8
002991e4
002991e4loc_2991e4:
002991e4bl runtime.gcWriteBarrier2
002991e8str x1, [x25]
002991ecldr x2, [x0+32]
002991f0str x2, [x25+8]
002991f4b 0x2991f8
002991f8
002991f8loc_2991f8:
002991f8str x1, [x0+32]
002991fcadrp x27, 0x774000
00299200ldr x0, [x27+1992]
00299204ldrsb x27, [x0]
00299208ldr x1, [sp+40]
0029920cadrp x27, 0x7b2000
00299210ldr w2, [x27+3056]
00299214cbz w2, 0x29921c
00299218b 0x299220
0029921c
0029921cloc_29921c:
0029921cb 0x299234
00299220
00299220loc_299220:
00299220bl runtime.gcWriteBarrier2
00299224str x1, [x25]
00299228ldr x2, [x0+8]
0029922cstr x2, [x25+8]
00299230b 0x299234
00299234
00299234loc_299234:
00299234str x1, [x0+8]
00299238ldur x29, [sp-8]
0029923cldr x30, [sp], 96
00299240ret x30
00299244
00299244loc_299244:
00299244mov x3, x30
00299248bl runtime.morestack_noctxt.abi0
0029924cb 0x299010
00299010
00299250
00299250crypto/elliptic.bigFromDecimal: ; void crypto/elliptic.bigFromDecimal(struct string s)
00299250ldr x16, [x28+16]
00299254subs xzr, sp, x16
00299258b.ls 0x2992f8
0029925cstr x30, [sp-96]!
00299260stur x29, [sp-8]
00299264sub x29, sp, 8
00299268str x0, [sp+104]
0029926cstr x1, [sp+112]
00299270str xzr, [sp+48]
00299274adrp x0, 0x3ac000
00299278add x0, x0, 1024
0029927cbl runtime.newobject
00299280str x0, [sp+72]
00299284str xzr, [sp+64]
00299288ldr x1, [sp+104]
0029928cldr x2, [sp+112]
00299290ldr x0, [sp+72]
00299294movz x3, 10
00299298bl math/big.(*Int).SetString
0029929cstr x0, [sp+64]
002992a0strb w1, [sp+46]
002992a4ldr x1, [sp+64]
002992a8str x1, [sp+80]
002992acldrb w1, [sp+46]
002992b0strb w1, [sp+47]
002992b4ldr x1, [sp+80]
002992b8str x1, [sp+56]
002992bcldrb w1, [sp+47]
002992c0strb w1, [sp+45]
002992c4tbnz w1, 0, 0x2992cc
002992c8b 0x2992e0
002992cc
002992ccloc_2992cc:
002992ccldr x0, [sp+56]
002992d0str x0, [sp+48]
002992d4ldur x29, [sp-8]
002992d8ldr x30, [sp], 96
002992dcret x30
002992e0
002992e0loc_2992e0:
002992e0adrp x0, 0x35c000
002992e4add x0, x0, 2944
002992e8adrp x1, 0x479000
002992ecadd x1, x1, 2144
002992f0bl runtime.gopanic
002992f4hint
002992f8
002992f8loc_2992f8:
002992f8stp x0, x1, [sp+8]
002992fcmov x3, x30
00299300bl runtime.morestack_noctxt.abi0
00299304ldp x0, x1, [sp+8]
00299308b 0x299250
0029930cudf 0
00299250
00299250crypto/elliptic.bigFromDecimal: ; void crypto/elliptic.bigFromDecimal(struct string s)
00299250ldr x16, [x28+16]
00299254subs xzr, sp, x16
00299258b.ls 0x2992f8
0029925cstr x30, [sp-96]!
00299260stur x29, [sp-8]
00299264sub x29, sp, 8
00299268str x0, [sp+104]
0029926cstr x1, [sp+112]
00299270str xzr, [sp+48]
00299274adrp x0, 0x3ac000
00299278add x0, x0, 1024
0029927cbl runtime.newobject
00299280str x0, [sp+72]
00299284str xzr, [sp+64]
00299288ldr x1, [sp+104]
0029928cldr x2, [sp+112]
00299290ldr x0, [sp+72]
00299294movz x3, 10
00299298bl math/big.(*Int).SetString
0029929cstr x0, [sp+64]
002992a0strb w1, [sp+46]
002992a4ldr x1, [sp+64]
002992a8str x1, [sp+80]
002992acldrb w1, [sp+46]
002992b0strb w1, [sp+47]
002992b4ldr x1, [sp+80]
002992b8str x1, [sp+56]
002992bcldrb w1, [sp+47]
002992c0strb w1, [sp+45]
002992c4tbnz w1, 0, 0x2992cc
002992c8b 0x2992e0
002992cc
002992ccloc_2992cc:
002992ccldr x0, [sp+56]
002992d0str x0, [sp+48]
002992d4ldur x29, [sp-8]
002992d8ldr x30, [sp], 96
002992dcret x30
002992e0
002992e0loc_2992e0:
002992e0adrp x0, 0x35c000
002992e4add x0, x0, 2944
002992e8adrp x1, 0x479000
002992ecadd x1, x1, 2144
002992f0bl runtime.gopanic
002992f4hint
002992f8
002992f8loc_2992f8:
002992f8stp x0, x1, [sp+8]
002992fcmov x3, x30
00299300bl runtime.morestack_noctxt.abi0
00299304ldp x0, x1, [sp+8]
00299308b 0x299250
0029930cudf 0
00299250
00299310
00299310crypto/elliptic.bigFromHex: ; void crypto/elliptic.bigFromHex(struct string s)
00299310ldr x16, [x28+16]
00299314subs xzr, sp, x16
00299318b.ls 0x2993b8
0029931cstr x30, [sp-96]!
00299320stur x29, [sp-8]
00299324sub x29, sp, 8
00299328str x0, [sp+104]
0029932cstr x1, [sp+112]
00299330str xzr, [sp+48]
00299334adrp x0, 0x3ac000
00299338add x0, x0, 1024
0029933cbl runtime.newobject
00299340str x0, [sp+72]
00299344str xzr, [sp+64]
00299348ldr x1, [sp+104]
0029934cldr x2, [sp+112]
00299350ldr x0, [sp+72]
00299354orr x3, xzr, 16
00299358bl math/big.(*Int).SetString
0029935cstr x0, [sp+64]
00299360strb w1, [sp+46]
00299364ldr x1, [sp+64]
00299368str x1, [sp+80]
0029936cldrb w1, [sp+46]
00299370strb w1, [sp+47]
00299374ldr x1, [sp+80]
00299378str x1, [sp+56]
0029937cldrb w1, [sp+47]
00299380strb w1, [sp+45]
00299384tbnz w1, 0, 0x29938c
00299388b 0x2993a0
0029938c
0029938cloc_29938c:
0029938cldr x0, [sp+56]
00299390str x0, [sp+48]
00299394ldur x29, [sp-8]
00299398ldr x30, [sp], 96
0029939cret x30
002993a0
002993a0loc_2993a0:
002993a0adrp x0, 0x35c000
002993a4add x0, x0, 2944
002993a8adrp x1, 0x479000
002993acadd x1, x1, 2144
002993b0bl runtime.gopanic
002993b4hint
002993b8
002993b8loc_2993b8:
002993b8stp x0, x1, [sp+8]
002993bcmov x3, x30
002993c0bl runtime.morestack_noctxt.abi0
002993c4ldp x0, x1, [sp+8]
002993c8b 0x299310
002993ccudf 0
00299310
00299310crypto/elliptic.bigFromHex: ; void crypto/elliptic.bigFromHex(struct string s)
00299310ldr x16, [x28+16]
00299314subs xzr, sp, x16
00299318b.ls 0x2993b8
0029931cstr x30, [sp-96]!
00299320stur x29, [sp-8]
00299324sub x29, sp, 8
00299328str x0, [sp+104]
0029932cstr x1, [sp+112]
00299330str xzr, [sp+48]
00299334adrp x0, 0x3ac000
00299338add x0, x0, 1024
0029933cbl runtime.newobject
00299340str x0, [sp+72]
00299344str xzr, [sp+64]
00299348ldr x1, [sp+104]
0029934cldr x2, [sp+112]
00299350ldr x0, [sp+72]
00299354orr x3, xzr, 16
00299358bl math/big.(*Int).SetString
0029935cstr x0, [sp+64]
00299360strb w1, [sp+46]
00299364ldr x1, [sp+64]
00299368str x1, [sp+80]
0029936cldrb w1, [sp+46]
00299370strb w1, [sp+47]
00299374ldr x1, [sp+80]
00299378str x1, [sp+56]
0029937cldrb w1, [sp+47]
00299380strb w1, [sp+45]
00299384tbnz w1, 0, 0x29938c
00299388b 0x2993a0
0029938c
0029938cloc_29938c:
0029938cldr x0, [sp+56]
00299390str x0, [sp+48]
00299394ldur x29, [sp-8]
00299398ldr x30, [sp], 96
0029939cret x30
002993a0
002993a0loc_2993a0:
002993a0adrp x0, 0x35c000
002993a4add x0, x0, 2944
002993a8adrp x1, 0x479000
002993acadd x1, x1, 2144
002993b0bl runtime.gopanic
002993b4hint
002993b8
002993b8loc_2993b8:
002993b8stp x0, x1, [sp+8]
002993bcmov x3, x30
002993c0bl runtime.morestack_noctxt.abi0
002993c4ldp x0, x1, [sp+8]
002993c8b 0x299310
002993ccudf 0
00299310
002993d0
002993d0crypto/elliptic.(*CurveParams).Params: ; void crypto/elliptic.(*CurveParams).Params(crypto/elliptic.CurveParams * curve)
002993d0str x30, [sp-32]!
002993d4stur x29, [sp-8]
002993d8sub x29, sp, 8
002993dcstr x0, [sp+40]
002993e0str xzr, [sp+16]
002993e4ldr x0, [sp+40]
002993e8str x0, [sp+16]
002993ecadd x29, sp, 24
002993f0add sp, sp, 32
002993f4ret x30
002993f8udf 0
002993fcudf 0
002993d0
002993d0crypto/elliptic.(*CurveParams).Params: ; void crypto/elliptic.(*CurveParams).Params(crypto/elliptic.CurveParams * curve)
002993d0str x30, [sp-32]!
002993d4stur x29, [sp-8]
002993d8sub x29, sp, 8
002993dcstr x0, [sp+40]
002993e0str xzr, [sp+16]
002993e4ldr x0, [sp+40]
002993e8str x0, [sp+16]
002993ecadd x29, sp, 24
002993f0add sp, sp, 32
002993f4ret x30
002993f8udf 0
002993fcudf 0
002993d0
00299400
00299400crypto/elliptic.(*CurveParams).polynomial: ; void crypto/elliptic.(*CurveParams).polynomial(crypto/elliptic.CurveParams * curve, math/big.Int * x)
00299400ldr x16, [x28+16]
00299404subs xzr, sp, x16
00299408b.ls 0x2994dc
0029940cstr x30, [sp-128]!
00299410stur x29, [sp-8]
00299414sub x29, sp, 8
00299418str x0, [sp+136]
0029941cstr x1, [sp+144]
00299420str xzr, [sp+40]
00299424adrp x0, 0x3ac000
00299428add x0, x0, 1024
0029942cbl runtime.newobject
00299430str x0, [sp+112]
00299434ldr x1, [sp+144]
00299438ldr x2, [sp+144]
0029943cbl math/big.(*Int).Mul
00299440str x0, [sp+48]
00299444ldr x2, [sp+144]
00299448mov x1, x0
0029944cbl math/big.(*Int).Mul
00299450strb wzr, [sp+80]
00299454str xzr, [sp+88]
00299458stp xzr, xzr, [sp+96]
0029945cadd x0, sp, 80
00299460str x0, [sp+112]
00299464ldr x1, [sp+144]
00299468orr x2, xzr, 1
0029946cbl math/big.(*Int).Lsh
00299470str x0, [sp+56]
00299474ldr x2, [sp+144]
00299478mov x1, x0
0029947cbl math/big.(*Int).Add
00299480ldr x1, [sp+48]
00299484ldr x2, [sp+56]
00299488ldr x0, [sp+48]
0029948cbl math/big.(*Int).Sub
00299490ldr x1, [sp+136]
00299494ldrsb x27, [x1]
00299498ldr x2, [x1+16]
0029949cstr x2, [sp+72]
002994a0ldr x0, [sp+48]
002994a4ldr x1, [sp+48]
002994a8bl math/big.(*Int).Add
002994acldr x1, [sp+136]
002994b0ldrsb x27, [x1]
002994b4ldr x2, [x1]
002994b8str x2, [sp+64]
002994bcldr x0, [sp+48]
002994c0ldr x1, [sp+48]
002994c4bl math/big.(*Int).Mod
002994c8ldr x0, [sp+48]
002994ccstr x0, [sp+40]
002994d0ldur x29, [sp-8]
002994d4ldr x30, [sp], 128
002994d8ret x30
002994dc
002994dcloc_2994dc:
002994dcstp x0, x1, [sp+8]
002994e0mov x3, x30
002994e4bl runtime.morestack_noctxt.abi0
002994e8ldp x0, x1, [sp+8]
002994ecb 0x299400
00299400
00299400crypto/elliptic.(*CurveParams).polynomial: ; void crypto/elliptic.(*CurveParams).polynomial(crypto/elliptic.CurveParams * curve, math/big.Int * x)
00299400ldr x16, [x28+16]
00299404subs xzr, sp, x16
00299408b.ls 0x2994dc
0029940cstr x30, [sp-128]!
00299410stur x29, [sp-8]
00299414sub x29, sp, 8
00299418str x0, [sp+136]
0029941cstr x1, [sp+144]
00299420str xzr, [sp+40]
00299424adrp x0, 0x3ac000
00299428add x0, x0, 1024
0029942cbl runtime.newobject
00299430str x0, [sp+112]
00299434ldr x1, [sp+144]
00299438ldr x2, [sp+144]
0029943cbl math/big.(*Int).Mul
00299440str x0, [sp+48]
00299444ldr x2, [sp+144]
00299448mov x1, x0
0029944cbl math/big.(*Int).Mul
00299450strb wzr, [sp+80]
00299454str xzr, [sp+88]
00299458stp xzr, xzr, [sp+96]
0029945cadd x0, sp, 80
00299460str x0, [sp+112]
00299464ldr x1, [sp+144]
00299468orr x2, xzr, 1
0029946cbl math/big.(*Int).Lsh
00299470str x0, [sp+56]
00299474ldr x2, [sp+144]
00299478mov x1, x0
0029947cbl math/big.(*Int).Add
00299480ldr x1, [sp+48]
00299484ldr x2, [sp+56]
00299488ldr x0, [sp+48]
0029948cbl math/big.(*Int).Sub
00299490ldr x1, [sp+136]
00299494ldrsb x27, [x1]
00299498ldr x2, [x1+16]
0029949cstr x2, [sp+72]
002994a0ldr x0, [sp+48]
002994a4ldr x1, [sp+48]
002994a8bl math/big.(*Int).Add
002994acldr x1, [sp+136]
002994b0ldrsb x27, [x1]
002994b4ldr x2, [x1]
002994b8str x2, [sp+64]
002994bcldr x0, [sp+48]
002994c0ldr x1, [sp+48]
002994c4bl math/big.(*Int).Mod
002994c8ldr x0, [sp+48]
002994ccstr x0, [sp+40]
002994d0ldur x29, [sp-8]
002994d4ldr x30, [sp], 128
002994d8ret x30
002994dc
002994dcloc_2994dc:
002994dcstp x0, x1, [sp+8]
002994e0mov x3, x30
002994e4bl runtime.morestack_noctxt.abi0
002994e8ldp x0, x1, [sp+8]
002994ecb 0x299400
00299400
002994f0
002994f0crypto/elliptic.(*CurveParams).IsOnCurve: ; void crypto/elliptic.(*CurveParams).IsOnCurve(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y)
002994f0ldr x16, [x28+16]
002994f4sub x17, sp, 64
002994f8subs xzr, x17, x16
002994fcb.ls 0x2996f0
00299500str x30, [sp-192]!
00299504stur x29, [sp-8]
00299508sub x29, sp, 8
0029950cstr x0, [sp+200]
00299510str x1, [sp+208]
00299514str x2, [sp+216]
00299518strb wzr, [sp+42]
0029951cstp xzr, xzr, [sp+88]
00299520ldr x0, [sp+200]
00299524bl crypto/elliptic.matchesSpecificCurve
00299528str x0, [sp+88]
0029952cstr x1, [sp+96]
00299530strb w2, [sp+47]
00299534ldr x1, [sp+88]
00299538ldr x2, [sp+96]
0029953cstr x1, [sp+104]
00299540str x2, [sp+112]
00299544ldrb w1, [sp+47]
00299548strb w1, [sp+44]
0029954cldr x1, [sp+104]
00299550ldr x2, [sp+112]
00299554str x1, [sp+72]
00299558str x2, [sp+80]
0029955cldrb w1, [sp+44]
00299560strb w1, [sp+43]
00299564tbnz w1, 0, 0x29956c
00299568b 0x29959c
0029956c
0029956cloc_29956c:
0029956cldr x1, [sp+208]
00299570ldr x2, [sp+216]
00299574ldr x3, [sp+72]
00299578ldrsb x27, [x3]
0029957cldr x3, [x3+40]
00299580ldr x0, [sp+80]
00299584blr x3
00299588strb w0, [sp+47]
0029958cstrb w0, [sp+42]
00299590ldur x29, [sp-8]
00299594ldr x30, [sp], 192
00299598ret x30
0029959c
0029959cloc_29959c:
0029959cldr x0, [sp+208]
002995a0bl math/big.(*Int).Sign
002995a4str x0, [sp+56]
002995a8subs xzr, x0, 0
002995accset x1, lt
002995b0strb w1, [sp+45]
002995b4tbnz x0, 63, 0x2995bc
002995b8b 0x2995c0
002995bc
002995bcloc_2995bc:
002995bcb 0x2995ec
002995c0
002995c0loc_2995c0:
002995c0ldr x2, [sp+200]
002995c4ldrsb x27, [x2]
002995c8ldr x1, [x2]
002995ccstr x1, [sp+168]
002995d0ldr x0, [sp+208]
002995d4bl math/big.(*Int).Cmp
002995d8str x0, [sp+48]
002995dcsubs xzr, x0, 0
002995e0cset x2, ge
002995e4strb w2, [sp+45]
002995e8b 0x2995ec
002995ec
002995ecloc_2995ec:
002995ecldrb w3, [sp+45]
002995f0strb w3, [sp+46]
002995f4tbnz w3, 0, 0x2995fc
002995f8b 0x299600
002995fc
002995fcloc_2995fc:
002995fcb 0x29961c
00299600
00299600loc_299600:
00299600ldr x0, [sp+216]
00299604bl math/big.(*Int).Sign
00299608str x0, [sp+48]
0029960csubs xzr, x0, 0
00299610cset x1, lt
00299614strb w1, [sp+46]
00299618b 0x29961c
0029961c
0029961cloc_29961c:
0029961cldrb w3, [sp+46]
00299620strb w3, [sp+47]
00299624tbnz w3, 0, 0x29962c
00299628b 0x299630
0029962c
0029962cloc_29962c:
0029962cb 0x29965c
00299630
00299630loc_299630:
00299630ldr x2, [sp+200]
00299634ldrsb x27, [x2]
00299638ldr x1, [x2]
0029963cstr x1, [sp+160]
00299640ldr x0, [sp+216]
00299644bl math/big.(*Int).Cmp
00299648str x0, [sp+48]
0029964csubs xzr, x0, 0
00299650cset x2, ge
00299654strb w2, [sp+47]
00299658b 0x29965c
0029965c
0029965cloc_29965c:
0029965cldrb w3, [sp+47]
00299660tbnz w3, 0, 0x299668
00299664b 0x29967c
00299668
00299668loc_299668:
00299668strb wzr, [sp+42]
0029966cmov x0, xzr
00299670ldur x29, [sp-8]
00299674ldr x30, [sp], 192
00299678ret x30
0029967c
0029967cloc_29967c:
0029967cstrb wzr, [sp+128]
00299680str xzr, [sp+136]
00299684stp xzr, xzr, [sp+144]
00299688add x0, sp, 128
0029968cstr x0, [sp+176]
00299690ldr x1, [sp+216]
00299694ldr x2, [sp+216]
00299698bl math/big.(*Int).Mul
0029969cstr x0, [sp+64]
002996a0ldr x3, [sp+200]
002996a4ldrsb x27, [x3]
002996a8ldr x2, [x3]
002996acstr x2, [sp+120]
002996b0ldr x0, [sp+64]
002996b4ldr x1, [sp+64]
002996b8bl math/big.(*Int).Mod
002996bcldr x1, [sp+208]
002996c0ldr x0, [sp+200]
002996c4bl crypto/elliptic.(*CurveParams).polynomial
002996c8str x0, [sp+176]
002996ccldr x1, [sp+64]
002996d0bl math/big.(*Int).Cmp
002996d4str x0, [sp+56]
002996d8subs xzr, x0, 0
002996dccset x0, eq
002996e0strb w0, [sp+42]
002996e4ldur x29, [sp-8]
002996e8ldr x30, [sp], 192
002996ecret x30
002996f0
002996f0loc_2996f0:
002996f0stp x0, x1, [sp+8]
002996f4str x2, [sp+24]
002996f8mov x3, x30
002996fcbl runtime.morestack_noctxt.abi0
00299700ldp x0, x1, [sp+8]
00299704ldr x2, [sp+24]
00299708b 0x2994f0
0029970cudf 0
002994f0
002994f0crypto/elliptic.(*CurveParams).IsOnCurve: ; void crypto/elliptic.(*CurveParams).IsOnCurve(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y)
002994f0ldr x16, [x28+16]
002994f4sub x17, sp, 64
002994f8subs xzr, x17, x16
002994fcb.ls 0x2996f0
00299500str x30, [sp-192]!
00299504stur x29, [sp-8]
00299508sub x29, sp, 8
0029950cstr x0, [sp+200]
00299510str x1, [sp+208]
00299514str x2, [sp+216]
00299518strb wzr, [sp+42]
0029951cstp xzr, xzr, [sp+88]
00299520ldr x0, [sp+200]
00299524bl crypto/elliptic.matchesSpecificCurve
00299528str x0, [sp+88]
0029952cstr x1, [sp+96]
00299530strb w2, [sp+47]
00299534ldr x1, [sp+88]
00299538ldr x2, [sp+96]
0029953cstr x1, [sp+104]
00299540str x2, [sp+112]
00299544ldrb w1, [sp+47]
00299548strb w1, [sp+44]
0029954cldr x1, [sp+104]
00299550ldr x2, [sp+112]
00299554str x1, [sp+72]
00299558str x2, [sp+80]
0029955cldrb w1, [sp+44]
00299560strb w1, [sp+43]
00299564tbnz w1, 0, 0x29956c
00299568b 0x29959c
0029956c
0029956cloc_29956c:
0029956cldr x1, [sp+208]
00299570ldr x2, [sp+216]
00299574ldr x3, [sp+72]
00299578ldrsb x27, [x3]
0029957cldr x3, [x3+40]
00299580ldr x0, [sp+80]
00299584blr x3
00299588strb w0, [sp+47]
0029958cstrb w0, [sp+42]
00299590ldur x29, [sp-8]
00299594ldr x30, [sp], 192
00299598ret x30
0029959c
0029959cloc_29959c:
0029959cldr x0, [sp+208]
002995a0bl math/big.(*Int).Sign
002995a4str x0, [sp+56]
002995a8subs xzr, x0, 0
002995accset x1, lt
002995b0strb w1, [sp+45]
002995b4tbnz x0, 63, 0x2995bc
002995b8b 0x2995c0
002995bc
002995bcloc_2995bc:
002995bcb 0x2995ec
002995c0
002995c0loc_2995c0:
002995c0ldr x2, [sp+200]
002995c4ldrsb x27, [x2]
002995c8ldr x1, [x2]
002995ccstr x1, [sp+168]
002995d0ldr x0, [sp+208]
002995d4bl math/big.(*Int).Cmp
002995d8str x0, [sp+48]
002995dcsubs xzr, x0, 0
002995e0cset x2, ge
002995e4strb w2, [sp+45]
002995e8b 0x2995ec
002995ec
002995ecloc_2995ec:
002995ecldrb w3, [sp+45]
002995f0strb w3, [sp+46]
002995f4tbnz w3, 0, 0x2995fc
002995f8b 0x299600
002995fc
002995fcloc_2995fc:
002995fcb 0x29961c
00299600
00299600loc_299600:
00299600ldr x0, [sp+216]
00299604bl math/big.(*Int).Sign
00299608str x0, [sp+48]
0029960csubs xzr, x0, 0
00299610cset x1, lt
00299614strb w1, [sp+46]
00299618b 0x29961c
0029961c
0029961cloc_29961c:
0029961cldrb w3, [sp+46]
00299620strb w3, [sp+47]
00299624tbnz w3, 0, 0x29962c
00299628b 0x299630
0029962c
0029962cloc_29962c:
0029962cb 0x29965c
00299630
00299630loc_299630:
00299630ldr x2, [sp+200]
00299634ldrsb x27, [x2]
00299638ldr x1, [x2]
0029963cstr x1, [sp+160]
00299640ldr x0, [sp+216]
00299644bl math/big.(*Int).Cmp
00299648str x0, [sp+48]
0029964csubs xzr, x0, 0
00299650cset x2, ge
00299654strb w2, [sp+47]
00299658b 0x29965c
0029965c
0029965cloc_29965c:
0029965cldrb w3, [sp+47]
00299660tbnz w3, 0, 0x299668
00299664b 0x29967c
00299668
00299668loc_299668:
00299668strb wzr, [sp+42]
0029966cmov x0, xzr
00299670ldur x29, [sp-8]
00299674ldr x30, [sp], 192
00299678ret x30
0029967c
0029967cloc_29967c:
0029967cstrb wzr, [sp+128]
00299680str xzr, [sp+136]
00299684stp xzr, xzr, [sp+144]
00299688add x0, sp, 128
0029968cstr x0, [sp+176]
00299690ldr x1, [sp+216]
00299694ldr x2, [sp+216]
00299698bl math/big.(*Int).Mul
0029969cstr x0, [sp+64]
002996a0ldr x3, [sp+200]
002996a4ldrsb x27, [x3]
002996a8ldr x2, [x3]
002996acstr x2, [sp+120]
002996b0ldr x0, [sp+64]
002996b4ldr x1, [sp+64]
002996b8bl math/big.(*Int).Mod
002996bcldr x1, [sp+208]
002996c0ldr x0, [sp+200]
002996c4bl crypto/elliptic.(*CurveParams).polynomial
002996c8str x0, [sp+176]
002996ccldr x1, [sp+64]
002996d0bl math/big.(*Int).Cmp
002996d4str x0, [sp+56]
002996d8subs xzr, x0, 0
002996dccset x0, eq
002996e0strb w0, [sp+42]
002996e4ldur x29, [sp-8]
002996e8ldr x30, [sp], 192
002996ecret x30
002996f0
002996f0loc_2996f0:
002996f0stp x0, x1, [sp+8]
002996f4str x2, [sp+24]
002996f8mov x3, x30
002996fcbl runtime.morestack_noctxt.abi0
00299700ldp x0, x1, [sp+8]
00299704ldr x2, [sp+24]
00299708b 0x2994f0
0029970cudf 0
002994f0
00299710
00299710crypto/elliptic.zForAffine: ; void crypto/elliptic.zForAffine(math/big.Int * x, math/big.Int * y)
00299710ldr x16, [x28+16]
00299714subs xzr, sp, x16
00299718b.ls 0x2997b8
0029971cstr x30, [sp-80]!
00299720stur x29, [sp-8]
00299724sub x29, sp, 8
00299728str x0, [sp+88]
0029972cstr x1, [sp+96]
00299730str xzr, [sp+56]
00299734adrp x0, 0x3ac000
00299738add x0, x0, 1024
0029973cbl runtime.newobject
00299740str x0, [sp+64]
00299744ldr x0, [sp+88]
00299748bl math/big.(*Int).Sign
0029974cstr x0, [sp+48]
00299750subs xzr, x0, 0
00299754cset x1, ne
00299758strb w1, [sp+39]
0029975ccbnz x0, 0x299764
00299760b 0x299768
00299764
00299764loc_299764:
00299764b 0x299784
00299768
00299768loc_299768:
00299768ldr x0, [sp+96]
0029976cbl math/big.(*Int).Sign
00299770str x0, [sp+40]
00299774subs xzr, x0, 0
00299778cset x1, ne
0029977cstrb w1, [sp+39]
00299780b 0x299784
00299784
00299784loc_299784:
00299784ldrb w2, [sp+39]
00299788tbnz w2, 0, 0x299790
0029978cb 0x2997a0
00299790
00299790loc_299790:
00299790ldr x0, [sp+64]
00299794orr x1, xzr, 1
00299798bl math/big.(*Int).SetInt64
0029979cb 0x2997a4
002997a0
002997a0loc_2997a0:
002997a0b 0x2997a4
002997a4
002997a4loc_2997a4:
002997a4ldr x0, [sp+64]
002997a8str x0, [sp+56]
002997acldur x29, [sp-8]
002997b0ldr x30, [sp], 80
002997b4ret x30
002997b8
002997b8loc_2997b8:
002997b8stp x0, x1, [sp+8]
002997bcmov x3, x30
002997c0bl runtime.morestack_noctxt.abi0
002997c4ldp x0, x1, [sp+8]
002997c8b 0x299710
002997ccudf 0
00299710
00299710crypto/elliptic.zForAffine: ; void crypto/elliptic.zForAffine(math/big.Int * x, math/big.Int * y)
00299710ldr x16, [x28+16]
00299714subs xzr, sp, x16
00299718b.ls 0x2997b8
0029971cstr x30, [sp-80]!
00299720stur x29, [sp-8]
00299724sub x29, sp, 8
00299728str x0, [sp+88]
0029972cstr x1, [sp+96]
00299730str xzr, [sp+56]
00299734adrp x0, 0x3ac000
00299738add x0, x0, 1024
0029973cbl runtime.newobject
00299740str x0, [sp+64]
00299744ldr x0, [sp+88]
00299748bl math/big.(*Int).Sign
0029974cstr x0, [sp+48]
00299750subs xzr, x0, 0
00299754cset x1, ne
00299758strb w1, [sp+39]
0029975ccbnz x0, 0x299764
00299760b 0x299768
00299764
00299764loc_299764:
00299764b 0x299784
00299768
00299768loc_299768:
00299768ldr x0, [sp+96]
0029976cbl math/big.(*Int).Sign
00299770str x0, [sp+40]
00299774subs xzr, x0, 0
00299778cset x1, ne
0029977cstrb w1, [sp+39]
00299780b 0x299784
00299784
00299784loc_299784:
00299784ldrb w2, [sp+39]
00299788tbnz w2, 0, 0x299790
0029978cb 0x2997a0
00299790
00299790loc_299790:
00299790ldr x0, [sp+64]
00299794orr x1, xzr, 1
00299798bl math/big.(*Int).SetInt64
0029979cb 0x2997a4
002997a0
002997a0loc_2997a0:
002997a0b 0x2997a4
002997a4
002997a4loc_2997a4:
002997a4ldr x0, [sp+64]
002997a8str x0, [sp+56]
002997acldur x29, [sp-8]
002997b0ldr x30, [sp], 80
002997b4ret x30
002997b8
002997b8loc_2997b8:
002997b8stp x0, x1, [sp+8]
002997bcmov x3, x30
002997c0bl runtime.morestack_noctxt.abi0
002997c4ldp x0, x1, [sp+8]
002997c8b 0x299710
002997ccudf 0
00299710
002997d0
002997d0crypto/elliptic.(*CurveParams).affineFromJacobian: ; void crypto/elliptic.(*CurveParams).affineFromJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y, math/big.Int * z)
002997d0ldr x16, [x28+16]
002997d4sub x17, sp, 64
002997d8subs xzr, x17, x16
002997dcb.ls 0x29994c
002997e0str x30, [sp-192]!
002997e4stur x29, [sp-8]
002997e8sub x29, sp, 8
002997ecstr x0, [sp+200]
002997f0str x1, [sp+208]
002997f4str x2, [sp+216]
002997f8str x3, [sp+224]
002997fcstr xzr, [sp+72]
00299800str xzr, [sp+64]
00299804ldr x0, [sp+224]
00299808bl math/big.(*Int).Sign
0029980cstr x0, [sp+40]
00299810cbz x0, 0x299818
00299814b 0x299858
00299818
00299818loc_299818:
00299818adrp x0, 0x3ac000
0029981cadd x0, x0, 1024
00299820bl runtime.newobject
00299824str x0, [sp+80]
00299828adrp x0, 0x3ac000
0029982cadd x0, x0, 1024
00299830bl runtime.newobject
00299834str x0, [sp+176]
00299838ldr x1, [sp+80]
0029983cstr x1, [sp+72]
00299840ldr x1, [sp+176]
00299844str x1, [sp+64]
00299848ldr x0, [sp+72]
0029984cldur x29, [sp-8]
00299850ldr x30, [sp], 192
00299854ret x30
00299858
00299858loc_299858:
00299858strb wzr, [sp+144]
0029985cstr xzr, [sp+152]
00299860stp xzr, xzr, [sp+160]
00299864add x3, sp, 144
00299868str x3, [sp+176]
0029986cldr x3, [sp+200]
00299870ldrsb x27, [x3]
00299874ldr x2, [x3]
00299878str x2, [sp+136]
0029987cldr x1, [sp+224]
00299880ldr x0, [sp+176]
00299884bl math/big.(*Int).ModInverse
00299888str x0, [sp+56]
0029988cstrb wzr, [sp+104]
00299890str xzr, [sp+112]
00299894stp xzr, xzr, [sp+120]
00299898add x0, sp, 104
0029989cstr x0, [sp+176]
002998a0ldr x1, [sp+56]
002998a4ldr x2, [sp+56]
002998a8bl math/big.(*Int).Mul
002998acstr x0, [sp+48]
002998b0adrp x0, 0x3ac000
002998b4add x0, x0, 1024
002998b8bl runtime.newobject
002998bcstr x0, [sp+176]
002998c0ldr x1, [sp+208]
002998c4ldr x2, [sp+48]
002998c8bl math/big.(*Int).Mul
002998ccstr x0, [sp+72]
002998d0ldr x3, [sp+200]
002998d4ldrsb x27, [x3]
002998d8ldr x2, [x3]
002998dcstr x2, [sp+96]
002998e0ldr x0, [sp+72]
002998e4ldr x1, [sp+72]
002998e8bl math/big.(*Int).Mod
002998ecldr x1, [sp+48]
002998f0ldr x2, [sp+56]
002998f4ldr x0, [sp+48]
002998f8bl math/big.(*Int).Mul
002998fcadrp x0, 0x3ac000
00299900add x0, x0, 1024
00299904bl runtime.newobject
00299908str x0, [sp+176]
0029990cldr x1, [sp+216]
00299910ldr x2, [sp+48]
00299914bl math/big.(*Int).Mul
00299918str x0, [sp+64]
0029991cldr x3, [sp+200]
00299920ldrsb x27, [x3]
00299924ldr x2, [x3]
00299928str x2, [sp+88]
0029992cldr x0, [sp+64]
00299930ldr x1, [sp+64]
00299934bl math/big.(*Int).Mod
00299938ldr x1, [sp+64]
0029993cldr x0, [sp+72]
00299940ldur x29, [sp-8]
00299944ldr x30, [sp], 192
00299948ret x30
0029994c
0029994cloc_29994c:
0029994cstp x0, x1, [sp+8]
00299950stp x2, x3, [sp+24]
00299954mov x3, x30
00299958bl runtime.morestack_noctxt.abi0
0029995cldp x0, x1, [sp+8]
00299960ldp x2, x3, [sp+24]
00299964b 0x2997d0
00299968udf 0
0029996cudf 0
002997d0
002997d0crypto/elliptic.(*CurveParams).affineFromJacobian: ; void crypto/elliptic.(*CurveParams).affineFromJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y, math/big.Int * z)
002997d0ldr x16, [x28+16]
002997d4sub x17, sp, 64
002997d8subs xzr, x17, x16
002997dcb.ls 0x29994c
002997e0str x30, [sp-192]!
002997e4stur x29, [sp-8]
002997e8sub x29, sp, 8
002997ecstr x0, [sp+200]
002997f0str x1, [sp+208]
002997f4str x2, [sp+216]
002997f8str x3, [sp+224]
002997fcstr xzr, [sp+72]
00299800str xzr, [sp+64]
00299804ldr x0, [sp+224]
00299808bl math/big.(*Int).Sign
0029980cstr x0, [sp+40]
00299810cbz x0, 0x299818
00299814b 0x299858
00299818
00299818loc_299818:
00299818adrp x0, 0x3ac000
0029981cadd x0, x0, 1024
00299820bl runtime.newobject
00299824str x0, [sp+80]
00299828adrp x0, 0x3ac000
0029982cadd x0, x0, 1024
00299830bl runtime.newobject
00299834str x0, [sp+176]
00299838ldr x1, [sp+80]
0029983cstr x1, [sp+72]
00299840ldr x1, [sp+176]
00299844str x1, [sp+64]
00299848ldr x0, [sp+72]
0029984cldur x29, [sp-8]
00299850ldr x30, [sp], 192
00299854ret x30
00299858
00299858loc_299858:
00299858strb wzr, [sp+144]
0029985cstr xzr, [sp+152]
00299860stp xzr, xzr, [sp+160]
00299864add x3, sp, 144
00299868str x3, [sp+176]
0029986cldr x3, [sp+200]
00299870ldrsb x27, [x3]
00299874ldr x2, [x3]
00299878str x2, [sp+136]
0029987cldr x1, [sp+224]
00299880ldr x0, [sp+176]
00299884bl math/big.(*Int).ModInverse
00299888str x0, [sp+56]
0029988cstrb wzr, [sp+104]
00299890str xzr, [sp+112]
00299894stp xzr, xzr, [sp+120]
00299898add x0, sp, 104
0029989cstr x0, [sp+176]
002998a0ldr x1, [sp+56]
002998a4ldr x2, [sp+56]
002998a8bl math/big.(*Int).Mul
002998acstr x0, [sp+48]
002998b0adrp x0, 0x3ac000
002998b4add x0, x0, 1024
002998b8bl runtime.newobject
002998bcstr x0, [sp+176]
002998c0ldr x1, [sp+208]
002998c4ldr x2, [sp+48]
002998c8bl math/big.(*Int).Mul
002998ccstr x0, [sp+72]
002998d0ldr x3, [sp+200]
002998d4ldrsb x27, [x3]
002998d8ldr x2, [x3]
002998dcstr x2, [sp+96]
002998e0ldr x0, [sp+72]
002998e4ldr x1, [sp+72]
002998e8bl math/big.(*Int).Mod
002998ecldr x1, [sp+48]
002998f0ldr x2, [sp+56]
002998f4ldr x0, [sp+48]
002998f8bl math/big.(*Int).Mul
002998fcadrp x0, 0x3ac000
00299900add x0, x0, 1024
00299904bl runtime.newobject
00299908str x0, [sp+176]
0029990cldr x1, [sp+216]
00299910ldr x2, [sp+48]
00299914bl math/big.(*Int).Mul
00299918str x0, [sp+64]
0029991cldr x3, [sp+200]
00299920ldrsb x27, [x3]
00299924ldr x2, [x3]
00299928str x2, [sp+88]
0029992cldr x0, [sp+64]
00299930ldr x1, [sp+64]
00299934bl math/big.(*Int).Mod
00299938ldr x1, [sp+64]
0029993cldr x0, [sp+72]
00299940ldur x29, [sp-8]
00299944ldr x30, [sp], 192
00299948ret x30
0029994c
0029994cloc_29994c:
0029994cstp x0, x1, [sp+8]
00299950stp x2, x3, [sp+24]
00299954mov x3, x30
00299958bl runtime.morestack_noctxt.abi0
0029995cldp x0, x1, [sp+8]
00299960ldp x2, x3, [sp+24]
00299964b 0x2997d0
00299968udf 0
0029996cudf 0
002997d0
00299970
00299970crypto/elliptic.(*CurveParams).Add: ; void crypto/elliptic.(*CurveParams).Add(crypto/elliptic.CurveParams * curve, math/big.Int * x1, math/big.Int * y1, math/big.Int * x2, math/big.Int * y2)
00299970ldr x16, [x28+16]
00299974sub x17, sp, 112
00299978subs xzr, x17, x16
0029997cb.ls 0x299b50
00299980str x30, [sp-240]!
00299984stur x29, [sp-8]
00299988sub x29, sp, 8
0029998cstr x0, [sp+248]
00299990str x1, [sp+256]
00299994str x2, [sp+264]
00299998str x3, [sp+272]
0029999cstr x4, [sp+280]
002999a0str xzr, [sp+80]
002999a4str xzr, [sp+72]
002999a8stp xzr, xzr, [sp+160]
002999acldr x0, [sp+248]
002999b0bl crypto/elliptic.matchesSpecificCurve
002999b4str x0, [sp+160]
002999b8str x1, [sp+168]
002999bcstrb w2, [sp+70]
002999c0ldr x1, [sp+160]
002999c4ldr x2, [sp+168]
002999c8str x1, [sp+120]
002999ccstr x2, [sp+128]
002999d0ldrb w1, [sp+70]
002999d4strb w1, [sp+71]
002999d8ldr x1, [sp+120]
002999dcldr x2, [sp+128]
002999e0str x1, [sp+104]
002999e4str x2, [sp+112]
002999e8ldrb w1, [sp+71]
002999ecstrb w1, [sp+69]
002999f0tbnz w1, 0, 0x2999f8
002999f4b 0x299a5c
002999f8
002999f8loc_2999f8:
002999f8str xzr, [sp+152]
002999fcstr xzr, [sp+144]
00299a00ldr x1, [sp+256]
00299a04ldr x2, [sp+264]
00299a08ldr x3, [sp+272]
00299a0cldr x4, [sp+280]
00299a10ldr x5, [sp+104]
00299a14ldrsb x27, [x5]
00299a18ldr x5, [x5+24]
00299a1cldr x0, [sp+112]
00299a20blr x5
00299a24str x0, [sp+152]
00299a28str x1, [sp+144]
00299a2cldr x5, [sp+152]
00299a30str x5, [sp+224]
00299a34ldr x5, [sp+144]
00299a38str x5, [sp+216]
00299a3cldr x5, [sp+224]
00299a40str x5, [sp+80]
00299a44ldr x1, [sp+216]
00299a48str x1, [sp+72]
00299a4cldr x0, [sp+80]
00299a50ldur x29, [sp-8]
00299a54ldr x30, [sp], 240
00299a58ret x30
00299a5c
00299a5cloc_299a5c:
00299a5cldr x2, [sp+256]
00299a60ldr x3, [sp+264]
00299a64ldr x1, [sp+248]
00299a68adrp x0, 0x481000
00299a6cadd x0, x0, 648
00299a70bl crypto/elliptic.panicIfNotOnCurve
00299a74ldr x2, [sp+272]
00299a78ldr x3, [sp+280]
00299a7cldr x1, [sp+248]
00299a80adrp x0, 0x481000
00299a84add x0, x0, 648
00299a88bl crypto/elliptic.panicIfNotOnCurve
00299a8cldr x1, [sp+264]
00299a90ldr x0, [sp+256]
00299a94bl crypto/elliptic.zForAffine
00299a98str x0, [sp+96]
00299a9cldr x1, [sp+280]
00299aa0ldr x0, [sp+272]
00299aa4bl crypto/elliptic.zForAffine
00299aa8str x0, [sp+88]
00299aacstr xzr, [sp+144]
00299ab0str xzr, [sp+152]
00299ab4str xzr, [sp+136]
00299ab8ldr x1, [sp+256]
00299abcldr x2, [sp+264]
00299ac0ldr x3, [sp+96]
00299ac4ldr x4, [sp+272]
00299ac8ldr x5, [sp+280]
00299accldr x6, [sp+88]
00299ad0ldr x0, [sp+248]
00299ad4bl crypto/elliptic.(*CurveParams).addJacobian
00299ad8str x0, [sp+144]
00299adcstr x1, [sp+152]
00299ae0str x2, [sp+136]
00299ae4ldr x4, [sp+144]
00299ae8str x4, [sp+208]
00299aecldr x4, [sp+152]
00299af0str x4, [sp+200]
00299af4ldr x4, [sp+136]
00299af8str x4, [sp+192]
00299afcstr xzr, [sp+136]
00299b00str xzr, [sp+152]
00299b04ldr x0, [sp+248]
00299b08ldr x1, [sp+208]
00299b0cldr x2, [sp+200]
00299b10ldr x3, [sp+192]
00299b14bl crypto/elliptic.(*CurveParams).affineFromJacobian
00299b18str x0, [sp+136]
00299b1cstr x1, [sp+152]
00299b20ldr x4, [sp+136]
00299b24str x4, [sp+184]
00299b28ldr x4, [sp+152]
00299b2cstr x4, [sp+176]
00299b30ldr x4, [sp+184]
00299b34str x4, [sp+80]
00299b38ldr x1, [sp+176]
00299b3cstr x1, [sp+72]
00299b40ldr x0, [sp+80]
00299b44ldur x29, [sp-8]
00299b48ldr x30, [sp], 240
00299b4cret x30
00299b50
00299b50loc_299b50:
00299b50stp x0, x1, [sp+8]
00299b54stp x2, x3, [sp+24]
00299b58str x4, [sp+40]
00299b5cmov x3, x30
00299b60bl runtime.morestack_noctxt.abi0
00299b64ldp x0, x1, [sp+8]
00299b68ldp x2, x3, [sp+24]
00299b6cldr x4, [sp+40]
00299b70b 0x299970
00299b74udf 0
00299b78udf 0
00299b7cudf 0
00299970
00299970crypto/elliptic.(*CurveParams).Add: ; void crypto/elliptic.(*CurveParams).Add(crypto/elliptic.CurveParams * curve, math/big.Int * x1, math/big.Int * y1, math/big.Int * x2, math/big.Int * y2)
00299970ldr x16, [x28+16]
00299974sub x17, sp, 112
00299978subs xzr, x17, x16
0029997cb.ls 0x299b50
00299980str x30, [sp-240]!
00299984stur x29, [sp-8]
00299988sub x29, sp, 8
0029998cstr x0, [sp+248]
00299990str x1, [sp+256]
00299994str x2, [sp+264]
00299998str x3, [sp+272]
0029999cstr x4, [sp+280]
002999a0str xzr, [sp+80]
002999a4str xzr, [sp+72]
002999a8stp xzr, xzr, [sp+160]
002999acldr x0, [sp+248]
002999b0bl crypto/elliptic.matchesSpecificCurve
002999b4str x0, [sp+160]
002999b8str x1, [sp+168]
002999bcstrb w2, [sp+70]
002999c0ldr x1, [sp+160]
002999c4ldr x2, [sp+168]
002999c8str x1, [sp+120]
002999ccstr x2, [sp+128]
002999d0ldrb w1, [sp+70]
002999d4strb w1, [sp+71]
002999d8ldr x1, [sp+120]
002999dcldr x2, [sp+128]
002999e0str x1, [sp+104]
002999e4str x2, [sp+112]
002999e8ldrb w1, [sp+71]
002999ecstrb w1, [sp+69]
002999f0tbnz w1, 0, 0x2999f8
002999f4b 0x299a5c
002999f8
002999f8loc_2999f8:
002999f8str xzr, [sp+152]
002999fcstr xzr, [sp+144]
00299a00ldr x1, [sp+256]
00299a04ldr x2, [sp+264]
00299a08ldr x3, [sp+272]
00299a0cldr x4, [sp+280]
00299a10ldr x5, [sp+104]
00299a14ldrsb x27, [x5]
00299a18ldr x5, [x5+24]
00299a1cldr x0, [sp+112]
00299a20blr x5
00299a24str x0, [sp+152]
00299a28str x1, [sp+144]
00299a2cldr x5, [sp+152]
00299a30str x5, [sp+224]
00299a34ldr x5, [sp+144]
00299a38str x5, [sp+216]
00299a3cldr x5, [sp+224]
00299a40str x5, [sp+80]
00299a44ldr x1, [sp+216]
00299a48str x1, [sp+72]
00299a4cldr x0, [sp+80]
00299a50ldur x29, [sp-8]
00299a54ldr x30, [sp], 240
00299a58ret x30
00299a5c
00299a5cloc_299a5c:
00299a5cldr x2, [sp+256]
00299a60ldr x3, [sp+264]
00299a64ldr x1, [sp+248]
00299a68adrp x0, 0x481000
00299a6cadd x0, x0, 648
00299a70bl crypto/elliptic.panicIfNotOnCurve
00299a74ldr x2, [sp+272]
00299a78ldr x3, [sp+280]
00299a7cldr x1, [sp+248]
00299a80adrp x0, 0x481000
00299a84add x0, x0, 648
00299a88bl crypto/elliptic.panicIfNotOnCurve
00299a8cldr x1, [sp+264]
00299a90ldr x0, [sp+256]
00299a94bl crypto/elliptic.zForAffine
00299a98str x0, [sp+96]
00299a9cldr x1, [sp+280]
00299aa0ldr x0, [sp+272]
00299aa4bl crypto/elliptic.zForAffine
00299aa8str x0, [sp+88]
00299aacstr xzr, [sp+144]
00299ab0str xzr, [sp+152]
00299ab4str xzr, [sp+136]
00299ab8ldr x1, [sp+256]
00299abcldr x2, [sp+264]
00299ac0ldr x3, [sp+96]
00299ac4ldr x4, [sp+272]
00299ac8ldr x5, [sp+280]
00299accldr x6, [sp+88]
00299ad0ldr x0, [sp+248]
00299ad4bl crypto/elliptic.(*CurveParams).addJacobian
00299ad8str x0, [sp+144]
00299adcstr x1, [sp+152]
00299ae0str x2, [sp+136]
00299ae4ldr x4, [sp+144]
00299ae8str x4, [sp+208]
00299aecldr x4, [sp+152]
00299af0str x4, [sp+200]
00299af4ldr x4, [sp+136]
00299af8str x4, [sp+192]
00299afcstr xzr, [sp+136]
00299b00str xzr, [sp+152]
00299b04ldr x0, [sp+248]
00299b08ldr x1, [sp+208]
00299b0cldr x2, [sp+200]
00299b10ldr x3, [sp+192]
00299b14bl crypto/elliptic.(*CurveParams).affineFromJacobian
00299b18str x0, [sp+136]
00299b1cstr x1, [sp+152]
00299b20ldr x4, [sp+136]
00299b24str x4, [sp+184]
00299b28ldr x4, [sp+152]
00299b2cstr x4, [sp+176]
00299b30ldr x4, [sp+184]
00299b34str x4, [sp+80]
00299b38ldr x1, [sp+176]
00299b3cstr x1, [sp+72]
00299b40ldr x0, [sp+80]
00299b44ldur x29, [sp-8]
00299b48ldr x30, [sp], 240
00299b4cret x30
00299b50
00299b50loc_299b50:
00299b50stp x0, x1, [sp+8]
00299b54stp x2, x3, [sp+24]
00299b58str x4, [sp+40]
00299b5cmov x3, x30
00299b60bl runtime.morestack_noctxt.abi0
00299b64ldp x0, x1, [sp+8]
00299b68ldp x2, x3, [sp+24]
00299b6cldr x4, [sp+40]
00299b70b 0x299970
00299b74udf 0
00299b78udf 0
00299b7cudf 0
00299970
00299b80
00299b80crypto/elliptic.(*CurveParams).addJacobian: ; void crypto/elliptic.(*CurveParams).addJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x1, math/big.Int * y1, math/big.Int * z1, math/big.Int * x2, math/big.Int * y2, math/big.Int * z2)
00299b80ldr x16, [x28+16]
00299b84sub x17, sp, 560
00299b88subs xzr, x17, x16
00299b8cb.ls 0x29a1fc
00299b90sub x20, sp, 688
00299b94stp x29, x30, [x20-8]
00299b98add sp, x20, 0
00299b9csub x29, sp, 8
00299ba0str x0, [sp+696]
00299ba4str x1, [sp+704]
00299ba8str x2, [sp+712]
00299bacstr x3, [sp+720]
00299bb0str x4, [sp+728]
00299bb4str x5, [sp+736]
00299bb8str x6, [sp+744]
00299bbcstr xzr, [sp+72]
00299bc0str xzr, [sp+64]
00299bc4str xzr, [sp+56]
00299bc8adrp x0, 0x3ac000
00299bccadd x0, x0, 1024
00299bd0bl runtime.newobject
00299bd4str x0, [sp+648]
00299bd8adrp x0, 0x3ac000
00299bdcadd x0, x0, 1024
00299be0bl runtime.newobject
00299be4str x0, [sp+640]
00299be8adrp x0, 0x3ac000
00299becadd x0, x0, 1024
00299bf0bl runtime.newobject
00299bf4str x0, [sp+632]
00299bf8ldr x1, [sp+648]
00299bfcstr x1, [sp+112]
00299c00ldr x1, [sp+640]
00299c04str x1, [sp+104]
00299c08ldr x1, [sp+632]
00299c0cstr x1, [sp+80]
00299c10ldr x0, [sp+720]
00299c14bl math/big.(*Int).Sign
00299c18str x0, [sp+48]
00299c1ccbz x0, 0x299c24
00299c20b 0x299c74
00299c24
00299c24loc_299c24:
00299c24ldr x1, [sp+728]
00299c28ldr x0, [sp+112]
00299c2cbl math/big.(*Int).Set
00299c30ldr x1, [sp+736]
00299c34ldr x0, [sp+104]
00299c38bl math/big.(*Int).Set
00299c3cldr x1, [sp+744]
00299c40ldr x0, [sp+80]
00299c44bl math/big.(*Int).Set
00299c48ldr x2, [sp+112]
00299c4cstr x2, [sp+72]
00299c50ldr x2, [sp+104]
00299c54str x2, [sp+64]
00299c58ldr x2, [sp+80]
00299c5cstr x2, [sp+56]
00299c60ldr x0, [sp+72]
00299c64ldr x1, [sp+64]
00299c68ldp x29, x30, [sp-8]
00299c6cadd sp, sp, 688
00299c70ret x30
00299c74
00299c74loc_299c74:
00299c74ldr x0, [sp+744]
00299c78bl math/big.(*Int).Sign
00299c7cstr x0, [sp+48]
00299c80cbz x0, 0x299c88
00299c84b 0x299cd8
00299c88
00299c88loc_299c88:
00299c88ldr x1, [sp+704]
00299c8cldr x0, [sp+112]
00299c90bl math/big.(*Int).Set
00299c94ldr x1, [sp+712]
00299c98ldr x0, [sp+104]
00299c9cbl math/big.(*Int).Set
00299ca0ldr x1, [sp+720]
00299ca4ldr x0, [sp+80]
00299ca8bl math/big.(*Int).Set
00299cacldr x2, [sp+112]
00299cb0str x2, [sp+72]
00299cb4ldr x2, [sp+104]
00299cb8str x2, [sp+64]
00299cbcldr x2, [sp+80]
00299cc0str x2, [sp+56]
00299cc4ldr x0, [sp+72]
00299cc8ldr x1, [sp+64]
00299cccldp x29, x30, [sp-8]
00299cd0add sp, sp, 688
00299cd4ret x30
00299cd8
00299cd8loc_299cd8:
00299cd8strb wzr, [sp+600]
00299cdcstr xzr, [sp+608]
00299ce0add x27, sp, 616
00299ce4stp xzr, xzr, [x27]
00299ce8add x0, sp, 600
00299cecstr x0, [sp+632]
00299cf0ldr x1, [sp+720]
00299cf4ldr x2, [sp+720]
00299cf8bl math/big.(*Int).Mul
00299cfcstr x0, [sp+96]
00299d00ldr x3, [sp+696]
00299d04ldrsb x27, [x3]
00299d08ldr x2, [x3]
00299d0cstr x2, [sp+592]
00299d10ldr x0, [sp+96]
00299d14ldr x1, [sp+96]
00299d18bl math/big.(*Int).Mod
00299d1cstrb wzr, [sp+560]
00299d20str xzr, [sp+568]
00299d24add x27, sp, 576
00299d28stp xzr, xzr, [x27]
00299d2cadd x0, sp, 560
00299d30str x0, [sp+632]
00299d34ldr x1, [sp+744]
00299d38ldr x2, [sp+744]
00299d3cbl math/big.(*Int).Mul
00299d40str x0, [sp+88]
00299d44ldr x3, [sp+696]
00299d48ldrsb x27, [x3]
00299d4cldr x2, [x3]
00299d50str x2, [sp+552]
00299d54ldr x0, [sp+88]
00299d58ldr x1, [sp+88]
00299d5cbl math/big.(*Int).Mod
00299d60strb wzr, [sp+520]
00299d64str xzr, [sp+528]
00299d68add x27, sp, 536
00299d6cstp xzr, xzr, [x27]
00299d70add x0, sp, 520
00299d74str x0, [sp+632]
00299d78ldr x1, [sp+704]
00299d7cldr x2, [sp+88]
00299d80bl math/big.(*Int).Mul
00299d84str x0, [sp+136]
00299d88ldr x3, [sp+696]
00299d8cldrsb x27, [x3]
00299d90ldr x2, [x3]
00299d94str x2, [sp+512]
00299d98ldr x0, [sp+136]
00299d9cldr x1, [sp+136]
00299da0bl math/big.(*Int).Mod
00299da4strb wzr, [sp+480]
00299da8str xzr, [sp+488]
00299dacstp xzr, xzr, [sp+496]
00299db0add x0, sp, 480
00299db4str x0, [sp+632]
00299db8ldr x1, [sp+728]
00299dbcldr x2, [sp+96]
00299dc0bl math/big.(*Int).Mul
00299dc4str x0, [sp+128]
00299dc8ldr x3, [sp+696]
00299dccldrsb x27, [x3]
00299dd0ldr x2, [x3]
00299dd4str x2, [sp+472]
00299dd8ldr x0, [sp+128]
00299ddcldr x1, [sp+128]
00299de0bl math/big.(*Int).Mod
00299de4strb wzr, [sp+440]
00299de8str xzr, [sp+448]
00299decstp xzr, xzr, [sp+456]
00299df0add x0, sp, 440
00299df4str x0, [sp+632]
00299df8ldr x1, [sp+128]
00299dfcldr x2, [sp+136]
00299e00bl math/big.(*Int).Sub
00299e04str x0, [sp+184]
00299e08bl math/big.(*Int).Sign
00299e0cstr x0, [sp+48]
00299e10subs xzr, x0, 0
00299e14cset x3, eq
00299e18strb w3, [sp+46]
00299e1cldr x0, [sp+184]
00299e20bl math/big.(*Int).Sign
00299e24str x0, [sp+48]
00299e28adds xzr, x0, 1
00299e2cb.eq 0x299e34
00299e30b 0x299e54
00299e34
00299e34loc_299e34:
00299e34ldr x3, [sp+696]
00299e38ldrsb x27, [x3]
00299e3cldr x2, [x3]
00299e40str x2, [sp+432]
00299e44ldr x0, [sp+184]
00299e48ldr x1, [sp+184]
00299e4cbl math/big.(*Int).Add
00299e50b 0x299e58
00299e54
00299e54loc_299e54:
00299e54b 0x299e58
00299e58
00299e58loc_299e58:
00299e58strb wzr, [sp+400]
00299e5cstr xzr, [sp+408]
00299e60stp xzr, xzr, [sp+416]
00299e64add x0, sp, 400
00299e68str x0, [sp+632]
00299e6cldr x1, [sp+184]
00299e70orr x2, xzr, 1
00299e74bl math/big.(*Int).Lsh
00299e78str x0, [sp+176]
00299e7cmov x1, x0
00299e80mov x2, x0
00299e84bl math/big.(*Int).Mul
00299e88strb wzr, [sp+368]
00299e8cstr xzr, [sp+376]
00299e90stp xzr, xzr, [sp+384]
00299e94add x0, sp, 368
00299e98str x0, [sp+632]
00299e9cldr x1, [sp+184]
00299ea0ldr x2, [sp+176]
00299ea4bl math/big.(*Int).Mul
00299ea8str x0, [sp+168]
00299eacstrb wzr, [sp+336]
00299eb0str xzr, [sp+344]
00299eb4stp xzr, xzr, [sp+352]
00299eb8add x0, sp, 336
00299ebcstr x0, [sp+632]
00299ec0ldr x1, [sp+712]
00299ec4ldr x2, [sp+744]
00299ec8bl math/big.(*Int).Mul
00299eccstr x0, [sp+152]
00299ed0ldr x2, [sp+88]
00299ed4mov x1, x0
00299ed8bl math/big.(*Int).Mul
00299edcldr x3, [sp+696]
00299ee0ldrsb x27, [x3]
00299ee4ldr x2, [x3]
00299ee8str x2, [sp+328]
00299eecldr x0, [sp+152]
00299ef0ldr x1, [sp+152]
00299ef4bl math/big.(*Int).Mod
00299ef8strb wzr, [sp+296]
00299efcstr xzr, [sp+304]
00299f00stp xzr, xzr, [sp+312]
00299f04add x0, sp, 296
00299f08str x0, [sp+632]
00299f0cldr x1, [sp+736]
00299f10ldr x2, [sp+720]
00299f14bl math/big.(*Int).Mul
00299f18str x0, [sp+144]
00299f1cldr x2, [sp+96]
00299f20mov x1, x0
00299f24bl math/big.(*Int).Mul
00299f28ldr x3, [sp+696]
00299f2cldrsb x27, [x3]
00299f30ldr x2, [x3]
00299f34str x2, [sp+288]
00299f38ldr x0, [sp+144]
00299f3cldr x1, [sp+144]
00299f40bl math/big.(*Int).Mod
00299f44strb wzr, [sp+256]
00299f48str xzr, [sp+264]
00299f4cstp xzr, xzr, [sp+272]
00299f50add x0, sp, 256
00299f54str x0, [sp+632]
00299f58ldr x1, [sp+144]
00299f5cldr x2, [sp+152]
00299f60bl math/big.(*Int).Sub
00299f64str x0, [sp+160]
00299f68bl math/big.(*Int).Sign
00299f6cstr x0, [sp+48]
00299f70adds xzr, x0, 1
00299f74b.eq 0x299f7c
00299f78b 0x299f9c
00299f7c
00299f7cloc_299f7c:
00299f7cldr x3, [sp+696]
00299f80ldrsb x27, [x3]
00299f84ldr x2, [x3]
00299f88str x2, [sp+248]
00299f8cldr x0, [sp+160]
00299f90ldr x1, [sp+160]
00299f94bl math/big.(*Int).Add
00299f98b 0x299fa0
00299f9c
00299f9cloc_299f9c:
00299f9cb 0x299fa0
00299fa0
00299fa0loc_299fa0:
00299fa0ldr x0, [sp+160]
00299fa4bl math/big.(*Int).Sign
00299fa8str x0, [sp+48]
00299facsubs xzr, x0, 0
00299fb0cset x1, eq
00299fb4strb w1, [sp+45]
00299fb8ldrb w2, [sp+46]
00299fbcstrb w2, [sp+47]
00299fc0tbnz w2, 0, 0x299fc8
00299fc4b 0x299fd0
00299fc8
00299fc8loc_299fc8:
00299fc8strb w1, [sp+47]
00299fccb 0x299fd4
00299fd0
00299fd0loc_299fd0:
00299fd0b 0x299fd4
00299fd4
00299fd4loc_299fd4:
00299fd4ldrb w4, [sp+47]
00299fd8tbnz w4, 0, 0x299fe0
00299fdcb 0x29a050
00299fe0
00299fe0loc_299fe0:
00299fe0str xzr, [sp+632]
00299fe4str xzr, [sp+640]
00299fe8str xzr, [sp+648]
00299fecldr x1, [sp+704]
00299ff0ldr x2, [sp+712]
00299ff4ldr x3, [sp+720]
00299ff8ldr x0, [sp+696]
00299ffcbl crypto/elliptic.(*CurveParams).doubleJacobian
0029a000str x0, [sp+632]
0029a004str x1, [sp+640]
0029a008str x2, [sp+648]
0029a00cldr x4, [sp+632]
0029a010str x4, [sp+672]
0029a014ldr x4, [sp+640]
0029a018str x4, [sp+664]
0029a01cldr x4, [sp+648]
0029a020str x4, [sp+656]
0029a024ldr x4, [sp+672]
0029a028str x4, [sp+72]
0029a02cldr x4, [sp+664]
0029a030str x4, [sp+64]
0029a034ldr x2, [sp+656]
0029a038str x2, [sp+56]
0029a03cldr x0, [sp+72]
0029a040ldr x1, [sp+64]
0029a044ldp x29, x30, [sp-8]
0029a048add sp, sp, 688
0029a04cret x30
0029a050
0029a050loc_29a050:
0029a050ldr x1, [sp+160]
0029a054ldr x0, [sp+160]
0029a058orr x2, xzr, 1
0029a05cbl math/big.(*Int).Lsh
0029a060strb wzr, [sp+216]
0029a064str xzr, [sp+224]
0029a068stp xzr, xzr, [sp+232]
0029a06cadd x0, sp, 216
0029a070str x0, [sp+648]
0029a074ldr x1, [sp+136]
0029a078ldr x2, [sp+176]
0029a07cbl math/big.(*Int).Mul
0029a080str x0, [sp+120]
0029a084ldr x1, [sp+160]
0029a088ldr x0, [sp+112]
0029a08cbl math/big.(*Int).Set
0029a090ldr x1, [sp+112]
0029a094ldr x2, [sp+112]
0029a098ldr x0, [sp+112]
0029a09cbl math/big.(*Int).Mul
0029a0a0ldr x1, [sp+112]
0029a0a4ldr x2, [sp+168]
0029a0a8ldr x0, [sp+112]
0029a0acbl math/big.(*Int).Sub
0029a0b0ldr x1, [sp+112]
0029a0b4ldr x2, [sp+120]
0029a0b8ldr x0, [sp+112]
0029a0bcbl math/big.(*Int).Sub
0029a0c0ldr x1, [sp+112]
0029a0c4ldr x2, [sp+120]
0029a0c8ldr x0, [sp+112]
0029a0ccbl math/big.(*Int).Sub
0029a0d0ldr x3, [sp+696]
0029a0d4ldrsb x27, [x3]
0029a0d8ldr x2, [x3]
0029a0dcstr x2, [sp+208]
0029a0e0ldr x0, [sp+112]
0029a0e4ldr x1, [sp+112]
0029a0e8bl math/big.(*Int).Mod
0029a0ecldr x1, [sp+160]
0029a0f0ldr x0, [sp+104]
0029a0f4bl math/big.(*Int).Set
0029a0f8ldr x1, [sp+120]
0029a0fcldr x2, [sp+112]
0029a100ldr x0, [sp+120]
0029a104bl math/big.(*Int).Sub
0029a108ldr x1, [sp+104]
0029a10cldr x2, [sp+120]
0029a110ldr x0, [sp+104]
0029a114bl math/big.(*Int).Mul
0029a118ldr x1, [sp+152]
0029a11cldr x2, [sp+168]
0029a120ldr x0, [sp+152]
0029a124bl math/big.(*Int).Mul
0029a128ldr x1, [sp+152]
0029a12cldr x0, [sp+152]
0029a130orr x2, xzr, 1
0029a134bl math/big.(*Int).Lsh
0029a138ldr x1, [sp+104]
0029a13cldr x2, [sp+152]
0029a140ldr x0, [sp+104]
0029a144bl math/big.(*Int).Sub
0029a148ldr x3, [sp+696]
0029a14cldrsb x27, [x3]
0029a150ldr x2, [x3]
0029a154str x2, [sp+200]
0029a158ldr x0, [sp+104]
0029a15cldr x1, [sp+104]
0029a160bl math/big.(*Int).Mod
0029a164ldr x1, [sp+720]
0029a168ldr x2, [sp+744]
0029a16cldr x0, [sp+80]
0029a170bl math/big.(*Int).Add
0029a174ldr x1, [sp+80]
0029a178ldr x2, [sp+80]
0029a17cldr x0, [sp+80]
0029a180bl math/big.(*Int).Mul
0029a184ldr x1, [sp+80]
0029a188ldr x2, [sp+96]
0029a18cldr x0, [sp+80]
0029a190bl math/big.(*Int).Sub
0029a194ldr x1, [sp+80]
0029a198ldr x2, [sp+88]
0029a19cldr x0, [sp+80]
0029a1a0bl math/big.(*Int).Sub
0029a1a4ldr x1, [sp+80]
0029a1a8ldr x2, [sp+184]
0029a1acldr x0, [sp+80]
0029a1b0bl math/big.(*Int).Mul
0029a1b4ldr x3, [sp+696]
0029a1b8ldrsb x27, [x3]
0029a1bcldr x2, [x3]
0029a1c0str x2, [sp+192]
0029a1c4ldr x0, [sp+80]
0029a1c8ldr x1, [sp+80]
0029a1ccbl math/big.(*Int).Mod
0029a1d0ldr x3, [sp+112]
0029a1d4str x3, [sp+72]
0029a1d8ldr x3, [sp+104]
0029a1dcstr x3, [sp+64]
0029a1e0ldr x2, [sp+80]
0029a1e4str x2, [sp+56]
0029a1e8ldr x0, [sp+72]
0029a1ecldr x1, [sp+64]
0029a1f0ldp x29, x30, [sp-8]
0029a1f4add sp, sp, 688
0029a1f8ret x30
0029a1fc
0029a1fcloc_29a1fc:
0029a1fcstp x0, x1, [sp+8]
0029a200stp x2, x3, [sp+24]
0029a204stp x4, x5, [sp+40]
0029a208str x6, [sp+56]
0029a20cmov x3, x30
0029a210bl runtime.morestack_noctxt.abi0
0029a214ldp x0, x1, [sp+8]
0029a218ldp x2, x3, [sp+24]
0029a21cldp x4, x5, [sp+40]
0029a220ldr x6, [sp+56]
0029a224b 0x299b80
0029a228udf 0
0029a22cudf 0
00299b80
00299b80crypto/elliptic.(*CurveParams).addJacobian: ; void crypto/elliptic.(*CurveParams).addJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x1, math/big.Int * y1, math/big.Int * z1, math/big.Int * x2, math/big.Int * y2, math/big.Int * z2)
00299b80ldr x16, [x28+16]
00299b84sub x17, sp, 560
00299b88subs xzr, x17, x16
00299b8cb.ls 0x29a1fc
00299b90sub x20, sp, 688
00299b94stp x29, x30, [x20-8]
00299b98add sp, x20, 0
00299b9csub x29, sp, 8
00299ba0str x0, [sp+696]
00299ba4str x1, [sp+704]
00299ba8str x2, [sp+712]
00299bacstr x3, [sp+720]
00299bb0str x4, [sp+728]
00299bb4str x5, [sp+736]
00299bb8str x6, [sp+744]
00299bbcstr xzr, [sp+72]
00299bc0str xzr, [sp+64]
00299bc4str xzr, [sp+56]
00299bc8adrp x0, 0x3ac000
00299bccadd x0, x0, 1024
00299bd0bl runtime.newobject
00299bd4str x0, [sp+648]
00299bd8adrp x0, 0x3ac000
00299bdcadd x0, x0, 1024
00299be0bl runtime.newobject
00299be4str x0, [sp+640]
00299be8adrp x0, 0x3ac000
00299becadd x0, x0, 1024
00299bf0bl runtime.newobject
00299bf4str x0, [sp+632]
00299bf8ldr x1, [sp+648]
00299bfcstr x1, [sp+112]
00299c00ldr x1, [sp+640]
00299c04str x1, [sp+104]
00299c08ldr x1, [sp+632]
00299c0cstr x1, [sp+80]
00299c10ldr x0, [sp+720]
00299c14bl math/big.(*Int).Sign
00299c18str x0, [sp+48]
00299c1ccbz x0, 0x299c24
00299c20b 0x299c74
00299c24
00299c24loc_299c24:
00299c24ldr x1, [sp+728]
00299c28ldr x0, [sp+112]
00299c2cbl math/big.(*Int).Set
00299c30ldr x1, [sp+736]
00299c34ldr x0, [sp+104]
00299c38bl math/big.(*Int).Set
00299c3cldr x1, [sp+744]
00299c40ldr x0, [sp+80]
00299c44bl math/big.(*Int).Set
00299c48ldr x2, [sp+112]
00299c4cstr x2, [sp+72]
00299c50ldr x2, [sp+104]
00299c54str x2, [sp+64]
00299c58ldr x2, [sp+80]
00299c5cstr x2, [sp+56]
00299c60ldr x0, [sp+72]
00299c64ldr x1, [sp+64]
00299c68ldp x29, x30, [sp-8]
00299c6cadd sp, sp, 688
00299c70ret x30
00299c74
00299c74loc_299c74:
00299c74ldr x0, [sp+744]
00299c78bl math/big.(*Int).Sign
00299c7cstr x0, [sp+48]
00299c80cbz x0, 0x299c88
00299c84b 0x299cd8
00299c88
00299c88loc_299c88:
00299c88ldr x1, [sp+704]
00299c8cldr x0, [sp+112]
00299c90bl math/big.(*Int).Set
00299c94ldr x1, [sp+712]
00299c98ldr x0, [sp+104]
00299c9cbl math/big.(*Int).Set
00299ca0ldr x1, [sp+720]
00299ca4ldr x0, [sp+80]
00299ca8bl math/big.(*Int).Set
00299cacldr x2, [sp+112]
00299cb0str x2, [sp+72]
00299cb4ldr x2, [sp+104]
00299cb8str x2, [sp+64]
00299cbcldr x2, [sp+80]
00299cc0str x2, [sp+56]
00299cc4ldr x0, [sp+72]
00299cc8ldr x1, [sp+64]
00299cccldp x29, x30, [sp-8]
00299cd0add sp, sp, 688
00299cd4ret x30
00299cd8
00299cd8loc_299cd8:
00299cd8strb wzr, [sp+600]
00299cdcstr xzr, [sp+608]
00299ce0add x27, sp, 616
00299ce4stp xzr, xzr, [x27]
00299ce8add x0, sp, 600
00299cecstr x0, [sp+632]
00299cf0ldr x1, [sp+720]
00299cf4ldr x2, [sp+720]
00299cf8bl math/big.(*Int).Mul
00299cfcstr x0, [sp+96]
00299d00ldr x3, [sp+696]
00299d04ldrsb x27, [x3]
00299d08ldr x2, [x3]
00299d0cstr x2, [sp+592]
00299d10ldr x0, [sp+96]
00299d14ldr x1, [sp+96]
00299d18bl math/big.(*Int).Mod
00299d1cstrb wzr, [sp+560]
00299d20str xzr, [sp+568]
00299d24add x27, sp, 576
00299d28stp xzr, xzr, [x27]
00299d2cadd x0, sp, 560
00299d30str x0, [sp+632]
00299d34ldr x1, [sp+744]
00299d38ldr x2, [sp+744]
00299d3cbl math/big.(*Int).Mul
00299d40str x0, [sp+88]
00299d44ldr x3, [sp+696]
00299d48ldrsb x27, [x3]
00299d4cldr x2, [x3]
00299d50str x2, [sp+552]
00299d54ldr x0, [sp+88]
00299d58ldr x1, [sp+88]
00299d5cbl math/big.(*Int).Mod
00299d60strb wzr, [sp+520]
00299d64str xzr, [sp+528]
00299d68add x27, sp, 536
00299d6cstp xzr, xzr, [x27]
00299d70add x0, sp, 520
00299d74str x0, [sp+632]
00299d78ldr x1, [sp+704]
00299d7cldr x2, [sp+88]
00299d80bl math/big.(*Int).Mul
00299d84str x0, [sp+136]
00299d88ldr x3, [sp+696]
00299d8cldrsb x27, [x3]
00299d90ldr x2, [x3]
00299d94str x2, [sp+512]
00299d98ldr x0, [sp+136]
00299d9cldr x1, [sp+136]
00299da0bl math/big.(*Int).Mod
00299da4strb wzr, [sp+480]
00299da8str xzr, [sp+488]
00299dacstp xzr, xzr, [sp+496]
00299db0add x0, sp, 480
00299db4str x0, [sp+632]
00299db8ldr x1, [sp+728]
00299dbcldr x2, [sp+96]
00299dc0bl math/big.(*Int).Mul
00299dc4str x0, [sp+128]
00299dc8ldr x3, [sp+696]
00299dccldrsb x27, [x3]
00299dd0ldr x2, [x3]
00299dd4str x2, [sp+472]
00299dd8ldr x0, [sp+128]
00299ddcldr x1, [sp+128]
00299de0bl math/big.(*Int).Mod
00299de4strb wzr, [sp+440]
00299de8str xzr, [sp+448]
00299decstp xzr, xzr, [sp+456]
00299df0add x0, sp, 440
00299df4str x0, [sp+632]
00299df8ldr x1, [sp+128]
00299dfcldr x2, [sp+136]
00299e00bl math/big.(*Int).Sub
00299e04str x0, [sp+184]
00299e08bl math/big.(*Int).Sign
00299e0cstr x0, [sp+48]
00299e10subs xzr, x0, 0
00299e14cset x3, eq
00299e18strb w3, [sp+46]
00299e1cldr x0, [sp+184]
00299e20bl math/big.(*Int).Sign
00299e24str x0, [sp+48]
00299e28adds xzr, x0, 1
00299e2cb.eq 0x299e34
00299e30b 0x299e54
00299e34
00299e34loc_299e34:
00299e34ldr x3, [sp+696]
00299e38ldrsb x27, [x3]
00299e3cldr x2, [x3]
00299e40str x2, [sp+432]
00299e44ldr x0, [sp+184]
00299e48ldr x1, [sp+184]
00299e4cbl math/big.(*Int).Add
00299e50b 0x299e58
00299e54
00299e54loc_299e54:
00299e54b 0x299e58
00299e58
00299e58loc_299e58:
00299e58strb wzr, [sp+400]
00299e5cstr xzr, [sp+408]
00299e60stp xzr, xzr, [sp+416]
00299e64add x0, sp, 400
00299e68str x0, [sp+632]
00299e6cldr x1, [sp+184]
00299e70orr x2, xzr, 1
00299e74bl math/big.(*Int).Lsh
00299e78str x0, [sp+176]
00299e7cmov x1, x0
00299e80mov x2, x0
00299e84bl math/big.(*Int).Mul
00299e88strb wzr, [sp+368]
00299e8cstr xzr, [sp+376]
00299e90stp xzr, xzr, [sp+384]
00299e94add x0, sp, 368
00299e98str x0, [sp+632]
00299e9cldr x1, [sp+184]
00299ea0ldr x2, [sp+176]
00299ea4bl math/big.(*Int).Mul
00299ea8str x0, [sp+168]
00299eacstrb wzr, [sp+336]
00299eb0str xzr, [sp+344]
00299eb4stp xzr, xzr, [sp+352]
00299eb8add x0, sp, 336
00299ebcstr x0, [sp+632]
00299ec0ldr x1, [sp+712]
00299ec4ldr x2, [sp+744]
00299ec8bl math/big.(*Int).Mul
00299eccstr x0, [sp+152]
00299ed0ldr x2, [sp+88]
00299ed4mov x1, x0
00299ed8bl math/big.(*Int).Mul
00299edcldr x3, [sp+696]
00299ee0ldrsb x27, [x3]
00299ee4ldr x2, [x3]
00299ee8str x2, [sp+328]
00299eecldr x0, [sp+152]
00299ef0ldr x1, [sp+152]
00299ef4bl math/big.(*Int).Mod
00299ef8strb wzr, [sp+296]
00299efcstr xzr, [sp+304]
00299f00stp xzr, xzr, [sp+312]
00299f04add x0, sp, 296
00299f08str x0, [sp+632]
00299f0cldr x1, [sp+736]
00299f10ldr x2, [sp+720]
00299f14bl math/big.(*Int).Mul
00299f18str x0, [sp+144]
00299f1cldr x2, [sp+96]
00299f20mov x1, x0
00299f24bl math/big.(*Int).Mul
00299f28ldr x3, [sp+696]
00299f2cldrsb x27, [x3]
00299f30ldr x2, [x3]
00299f34str x2, [sp+288]
00299f38ldr x0, [sp+144]
00299f3cldr x1, [sp+144]
00299f40bl math/big.(*Int).Mod
00299f44strb wzr, [sp+256]
00299f48str xzr, [sp+264]
00299f4cstp xzr, xzr, [sp+272]
00299f50add x0, sp, 256
00299f54str x0, [sp+632]
00299f58ldr x1, [sp+144]
00299f5cldr x2, [sp+152]
00299f60bl math/big.(*Int).Sub
00299f64str x0, [sp+160]
00299f68bl math/big.(*Int).Sign
00299f6cstr x0, [sp+48]
00299f70adds xzr, x0, 1
00299f74b.eq 0x299f7c
00299f78b 0x299f9c
00299f7c
00299f7cloc_299f7c:
00299f7cldr x3, [sp+696]
00299f80ldrsb x27, [x3]
00299f84ldr x2, [x3]
00299f88str x2, [sp+248]
00299f8cldr x0, [sp+160]
00299f90ldr x1, [sp+160]
00299f94bl math/big.(*Int).Add
00299f98b 0x299fa0
00299f9c
00299f9cloc_299f9c:
00299f9cb 0x299fa0
00299fa0
00299fa0loc_299fa0:
00299fa0ldr x0, [sp+160]
00299fa4bl math/big.(*Int).Sign
00299fa8str x0, [sp+48]
00299facsubs xzr, x0, 0
00299fb0cset x1, eq
00299fb4strb w1, [sp+45]
00299fb8ldrb w2, [sp+46]
00299fbcstrb w2, [sp+47]
00299fc0tbnz w2, 0, 0x299fc8
00299fc4b 0x299fd0
00299fc8
00299fc8loc_299fc8:
00299fc8strb w1, [sp+47]
00299fccb 0x299fd4
00299fd0
00299fd0loc_299fd0:
00299fd0b 0x299fd4
00299fd4
00299fd4loc_299fd4:
00299fd4ldrb w4, [sp+47]
00299fd8tbnz w4, 0, 0x299fe0
00299fdcb 0x29a050
00299fe0
00299fe0loc_299fe0:
00299fe0str xzr, [sp+632]
00299fe4str xzr, [sp+640]
00299fe8str xzr, [sp+648]
00299fecldr x1, [sp+704]
00299ff0ldr x2, [sp+712]
00299ff4ldr x3, [sp+720]
00299ff8ldr x0, [sp+696]
00299ffcbl crypto/elliptic.(*CurveParams).doubleJacobian
0029a000str x0, [sp+632]
0029a004str x1, [sp+640]
0029a008str x2, [sp+648]
0029a00cldr x4, [sp+632]
0029a010str x4, [sp+672]
0029a014ldr x4, [sp+640]
0029a018str x4, [sp+664]
0029a01cldr x4, [sp+648]
0029a020str x4, [sp+656]
0029a024ldr x4, [sp+672]
0029a028str x4, [sp+72]
0029a02cldr x4, [sp+664]
0029a030str x4, [sp+64]
0029a034ldr x2, [sp+656]
0029a038str x2, [sp+56]
0029a03cldr x0, [sp+72]
0029a040ldr x1, [sp+64]
0029a044ldp x29, x30, [sp-8]
0029a048add sp, sp, 688
0029a04cret x30
0029a050
0029a050loc_29a050:
0029a050ldr x1, [sp+160]
0029a054ldr x0, [sp+160]
0029a058orr x2, xzr, 1
0029a05cbl math/big.(*Int).Lsh
0029a060strb wzr, [sp+216]
0029a064str xzr, [sp+224]
0029a068stp xzr, xzr, [sp+232]
0029a06cadd x0, sp, 216
0029a070str x0, [sp+648]
0029a074ldr x1, [sp+136]
0029a078ldr x2, [sp+176]
0029a07cbl math/big.(*Int).Mul
0029a080str x0, [sp+120]
0029a084ldr x1, [sp+160]
0029a088ldr x0, [sp+112]
0029a08cbl math/big.(*Int).Set
0029a090ldr x1, [sp+112]
0029a094ldr x2, [sp+112]
0029a098ldr x0, [sp+112]
0029a09cbl math/big.(*Int).Mul
0029a0a0ldr x1, [sp+112]
0029a0a4ldr x2, [sp+168]
0029a0a8ldr x0, [sp+112]
0029a0acbl math/big.(*Int).Sub
0029a0b0ldr x1, [sp+112]
0029a0b4ldr x2, [sp+120]
0029a0b8ldr x0, [sp+112]
0029a0bcbl math/big.(*Int).Sub
0029a0c0ldr x1, [sp+112]
0029a0c4ldr x2, [sp+120]
0029a0c8ldr x0, [sp+112]
0029a0ccbl math/big.(*Int).Sub
0029a0d0ldr x3, [sp+696]
0029a0d4ldrsb x27, [x3]
0029a0d8ldr x2, [x3]
0029a0dcstr x2, [sp+208]
0029a0e0ldr x0, [sp+112]
0029a0e4ldr x1, [sp+112]
0029a0e8bl math/big.(*Int).Mod
0029a0ecldr x1, [sp+160]
0029a0f0ldr x0, [sp+104]
0029a0f4bl math/big.(*Int).Set
0029a0f8ldr x1, [sp+120]
0029a0fcldr x2, [sp+112]
0029a100ldr x0, [sp+120]
0029a104bl math/big.(*Int).Sub
0029a108ldr x1, [sp+104]
0029a10cldr x2, [sp+120]
0029a110ldr x0, [sp+104]
0029a114bl math/big.(*Int).Mul
0029a118ldr x1, [sp+152]
0029a11cldr x2, [sp+168]
0029a120ldr x0, [sp+152]
0029a124bl math/big.(*Int).Mul
0029a128ldr x1, [sp+152]
0029a12cldr x0, [sp+152]
0029a130orr x2, xzr, 1
0029a134bl math/big.(*Int).Lsh
0029a138ldr x1, [sp+104]
0029a13cldr x2, [sp+152]
0029a140ldr x0, [sp+104]
0029a144bl math/big.(*Int).Sub
0029a148ldr x3, [sp+696]
0029a14cldrsb x27, [x3]
0029a150ldr x2, [x3]
0029a154str x2, [sp+200]
0029a158ldr x0, [sp+104]
0029a15cldr x1, [sp+104]
0029a160bl math/big.(*Int).Mod
0029a164ldr x1, [sp+720]
0029a168ldr x2, [sp+744]
0029a16cldr x0, [sp+80]
0029a170bl math/big.(*Int).Add
0029a174ldr x1, [sp+80]
0029a178ldr x2, [sp+80]
0029a17cldr x0, [sp+80]
0029a180bl math/big.(*Int).Mul
0029a184ldr x1, [sp+80]
0029a188ldr x2, [sp+96]
0029a18cldr x0, [sp+80]
0029a190bl math/big.(*Int).Sub
0029a194ldr x1, [sp+80]
0029a198ldr x2, [sp+88]
0029a19cldr x0, [sp+80]
0029a1a0bl math/big.(*Int).Sub
0029a1a4ldr x1, [sp+80]
0029a1a8ldr x2, [sp+184]
0029a1acldr x0, [sp+80]
0029a1b0bl math/big.(*Int).Mul
0029a1b4ldr x3, [sp+696]
0029a1b8ldrsb x27, [x3]
0029a1bcldr x2, [x3]
0029a1c0str x2, [sp+192]
0029a1c4ldr x0, [sp+80]
0029a1c8ldr x1, [sp+80]
0029a1ccbl math/big.(*Int).Mod
0029a1d0ldr x3, [sp+112]
0029a1d4str x3, [sp+72]
0029a1d8ldr x3, [sp+104]
0029a1dcstr x3, [sp+64]
0029a1e0ldr x2, [sp+80]
0029a1e4str x2, [sp+56]
0029a1e8ldr x0, [sp+72]
0029a1ecldr x1, [sp+64]
0029a1f0ldp x29, x30, [sp-8]
0029a1f4add sp, sp, 688
0029a1f8ret x30
0029a1fc
0029a1fcloc_29a1fc:
0029a1fcstp x0, x1, [sp+8]
0029a200stp x2, x3, [sp+24]
0029a204stp x4, x5, [sp+40]
0029a208str x6, [sp+56]
0029a20cmov x3, x30
0029a210bl runtime.morestack_noctxt.abi0
0029a214ldp x0, x1, [sp+8]
0029a218ldp x2, x3, [sp+24]
0029a21cldp x4, x5, [sp+40]
0029a220ldr x6, [sp+56]
0029a224b 0x299b80
0029a228udf 0
0029a22cudf 0
00299b80
0029a230
0029a230crypto/elliptic.(*CurveParams).doubleJacobian: ; void crypto/elliptic.(*CurveParams).doubleJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y, math/big.Int * z)
0029a230ldr x16, [x28+16]
0029a234sub x17, sp, 256
0029a238subs xzr, x17, x16
0029a23cb.ls 0x29a6a4
0029a240sub x20, sp, 384
0029a244stp x29, x30, [x20-8]
0029a248add sp, x20, 0
0029a24csub x29, sp, 8
0029a250str x0, [sp+392]
0029a254str x1, [sp+400]
0029a258str x2, [sp+408]
0029a25cstr x3, [sp+416]
0029a260str xzr, [sp+56]
0029a264str xzr, [sp+48]
0029a268str xzr, [sp+40]
0029a26cstrb wzr, [sp+336]
0029a270str xzr, [sp+344]
0029a274stp xzr, xzr, [sp+352]
0029a278add x0, sp, 336
0029a27cstr x0, [sp+368]
0029a280ldr x1, [sp+416]
0029a284ldr x2, [sp+416]
0029a288bl math/big.(*Int).Mul
0029a28cstr x0, [sp+96]
0029a290ldr x3, [sp+392]
0029a294ldrsb x27, [x3]
0029a298ldr x2, [x3]
0029a29cstr x2, [sp+328]
0029a2a0ldr x0, [sp+96]
0029a2a4ldr x1, [sp+96]
0029a2a8bl math/big.(*Int).Mod
0029a2acstrb wzr, [sp+296]
0029a2b0str xzr, [sp+304]
0029a2b4stp xzr, xzr, [sp+312]
0029a2b8add x0, sp, 296
0029a2bcstr x0, [sp+368]
0029a2c0ldr x1, [sp+408]
0029a2c4ldr x2, [sp+408]
0029a2c8bl math/big.(*Int).Mul
0029a2ccstr x0, [sp+88]
0029a2d0ldr x3, [sp+392]
0029a2d4ldrsb x27, [x3]
0029a2d8ldr x2, [x3]
0029a2dcstr x2, [sp+288]
0029a2e0ldr x0, [sp+88]
0029a2e4ldr x1, [sp+88]
0029a2e8bl math/big.(*Int).Mod
0029a2ecadrp x0, 0x3ab000
0029a2f0add x0, x0, 1024
0029a2f4bl runtime.newobject
0029a2f8str x0, [sp+368]
0029a2fcldr x1, [sp+400]
0029a300ldr x2, [sp+96]
0029a304bl math/big.(*Int).Sub
0029a308str x0, [sp+128]
0029a30cbl math/big.(*Int).Sign
0029a310str x0, [sp+32]
0029a314adds xzr, x0, 1
0029a318b.eq 0x29a320
0029a31cb 0x29a340
0029a320
0029a320loc_29a320:
0029a320ldr x3, [sp+392]
0029a324ldrsb x27, [x3]
0029a328ldr x2, [x3]
0029a32cstr x2, [sp+280]
0029a330ldr x0, [sp+128]
0029a334ldr x1, [sp+128]
0029a338bl math/big.(*Int).Add
0029a33cb 0x29a344
0029a340
0029a340loc_29a340:
0029a340b 0x29a344
0029a344
0029a344loc_29a344:
0029a344strb wzr, [sp+248]
0029a348str xzr, [sp+256]
0029a34cstp xzr, xzr, [sp+264]
0029a350add x0, sp, 248
0029a354str x0, [sp+368]
0029a358ldr x1, [sp+400]
0029a35cldr x2, [sp+96]
0029a360bl math/big.(*Int).Add
0029a364str x0, [sp+120]
0029a368ldr x1, [sp+128]
0029a36cldr x3, [sp+128]
0029a370mov x2, x0
0029a374mov x0, x3
0029a378bl math/big.(*Int).Mul
0029a37cldr x1, [sp+128]
0029a380ldr x0, [sp+120]
0029a384bl math/big.(*Int).Set
0029a388ldr x1, [sp+128]
0029a38cldr x0, [sp+128]
0029a390orr x2, xzr, 1
0029a394bl math/big.(*Int).Lsh
0029a398ldr x1, [sp+128]
0029a39cldr x2, [sp+120]
0029a3a0ldr x0, [sp+128]
0029a3a4bl math/big.(*Int).Add
0029a3a8ldr x1, [sp+400]
0029a3acldr x2, [sp+88]
0029a3b0ldr x0, [sp+120]
0029a3b4bl math/big.(*Int).Mul
0029a3b8str x0, [sp+112]
0029a3bcadrp x0, 0x3ab000
0029a3c0add x0, x0, 1024
0029a3c4bl runtime.newobject
0029a3c8str x0, [sp+368]
0029a3ccldr x1, [sp+128]
0029a3d0ldr x2, [sp+128]
0029a3d4bl math/big.(*Int).Mul
0029a3d8str x0, [sp+80]
0029a3dcstrb wzr, [sp+216]
0029a3e0str xzr, [sp+224]
0029a3e4stp xzr, xzr, [sp+232]
0029a3e8add x0, sp, 216
0029a3ecstr x0, [sp+368]
0029a3f0ldr x1, [sp+112]
0029a3f4orr x2, xzr, 3
0029a3f8bl math/big.(*Int).Lsh
0029a3fcstr x0, [sp+104]
0029a400ldr x3, [sp+392]
0029a404ldrsb x27, [x3]
0029a408ldr x2, [x3]
0029a40cstr x2, [sp+208]
0029a410ldr x0, [sp+104]
0029a414ldr x1, [sp+104]
0029a418bl math/big.(*Int).Mod
0029a41cldr x1, [sp+80]
0029a420ldr x2, [sp+104]
0029a424ldr x0, [sp+80]
0029a428bl math/big.(*Int).Sub
0029a42cldr x0, [sp+80]
0029a430bl math/big.(*Int).Sign
0029a434str x0, [sp+32]
0029a438adds xzr, x0, 1
0029a43cb.eq 0x29a444
0029a440b 0x29a464
0029a444
0029a444loc_29a444:
0029a444ldr x3, [sp+392]
0029a448ldrsb x27, [x3]
0029a44cldr x2, [x3]
0029a450str x2, [sp+200]
0029a454ldr x0, [sp+80]
0029a458ldr x1, [sp+80]
0029a45cbl math/big.(*Int).Add
0029a460b 0x29a468
0029a464
0029a464loc_29a464:
0029a464b 0x29a468
0029a468
0029a468loc_29a468:
0029a468ldr x3, [sp+392]
0029a46cldrsb x27, [x3]
0029a470ldr x2, [x3]
0029a474str x2, [sp+192]
0029a478ldr x0, [sp+80]
0029a47cldr x1, [sp+80]
0029a480bl math/big.(*Int).Mod
0029a484adrp x0, 0x3ab000
0029a488add x0, x0, 1024
0029a48cbl runtime.newobject
0029a490str x0, [sp+368]
0029a494ldr x1, [sp+408]
0029a498ldr x2, [sp+416]
0029a49cbl math/big.(*Int).Add
0029a4a0str x0, [sp+64]
0029a4a4mov x1, x0
0029a4a8mov x2, x0
0029a4acbl math/big.(*Int).Mul
0029a4b0ldr x1, [sp+64]
0029a4b4ldr x2, [sp+88]
0029a4b8ldr x0, [sp+64]
0029a4bcbl math/big.(*Int).Sub
0029a4c0ldr x0, [sp+64]
0029a4c4bl math/big.(*Int).Sign
0029a4c8str x0, [sp+32]
0029a4ccadds xzr, x0, 1
0029a4d0b.eq 0x29a4d8
0029a4d4b 0x29a4f8
0029a4d8
0029a4d8loc_29a4d8:
0029a4d8ldr x3, [sp+392]
0029a4dcldrsb x27, [x3]
0029a4e0ldr x2, [x3]
0029a4e4str x2, [sp+184]
0029a4e8ldr x0, [sp+64]
0029a4ecldr x1, [sp+64]
0029a4f0bl math/big.(*Int).Add
0029a4f4b 0x29a4fc
0029a4f8
0029a4f8loc_29a4f8:
0029a4f8b 0x29a4fc
0029a4fc
0029a4fcloc_29a4fc:
0029a4fcldr x1, [sp+64]
0029a500ldr x2, [sp+96]
0029a504ldr x0, [sp+64]
0029a508bl math/big.(*Int).Sub
0029a50cldr x0, [sp+64]
0029a510bl math/big.(*Int).Sign
0029a514str x0, [sp+32]
0029a518adds xzr, x0, 1
0029a51cb.eq 0x29a524
0029a520b 0x29a544
0029a524
0029a524loc_29a524:
0029a524ldr x3, [sp+392]
0029a528ldrsb x27, [x3]
0029a52cldr x2, [x3]
0029a530str x2, [sp+176]
0029a534ldr x0, [sp+64]
0029a538ldr x1, [sp+64]
0029a53cbl math/big.(*Int).Add
0029a540b 0x29a548
0029a544
0029a544loc_29a544:
0029a544b 0x29a548
0029a548
0029a548loc_29a548:
0029a548ldr x3, [sp+392]
0029a54cldrsb x27, [x3]
0029a550ldr x2, [x3]
0029a554str x2, [sp+168]
0029a558ldr x0, [sp+64]
0029a55cldr x1, [sp+64]
0029a560bl math/big.(*Int).Mod
0029a564ldr x1, [sp+112]
0029a568ldr x0, [sp+112]
0029a56corr x2, xzr, 2
0029a570bl math/big.(*Int).Lsh
0029a574ldr x1, [sp+112]
0029a578ldr x2, [sp+80]
0029a57cldr x0, [sp+112]
0029a580bl math/big.(*Int).Sub
0029a584ldr x0, [sp+112]
0029a588bl math/big.(*Int).Sign
0029a58cstr x0, [sp+32]
0029a590adds xzr, x0, 1
0029a594b.eq 0x29a59c
0029a598b 0x29a5bc
0029a59c
0029a59cloc_29a59c:
0029a59cldr x3, [sp+392]
0029a5a0ldrsb x27, [x3]
0029a5a4ldr x2, [x3]
0029a5a8str x2, [sp+160]
0029a5acldr x0, [sp+112]
0029a5b0ldr x1, [sp+112]
0029a5b4bl math/big.(*Int).Add
0029a5b8b 0x29a5c0
0029a5bc
0029a5bcloc_29a5bc:
0029a5bcb 0x29a5c0
0029a5c0
0029a5c0loc_29a5c0:
0029a5c0ldr x1, [sp+128]
0029a5c4ldr x2, [sp+112]
0029a5c8ldr x0, [sp+128]
0029a5ccbl math/big.(*Int).Mul
0029a5d0str x0, [sp+72]
0029a5d4ldr x1, [sp+88]
0029a5d8ldr x2, [sp+88]
0029a5dcldr x0, [sp+88]
0029a5e0bl math/big.(*Int).Mul
0029a5e4ldr x1, [sp+88]
0029a5e8ldr x0, [sp+88]
0029a5ecorr x2, xzr, 3
0029a5f0bl math/big.(*Int).Lsh
0029a5f4ldr x3, [sp+392]
0029a5f8ldrsb x27, [x3]
0029a5fcldr x2, [x3]
0029a600str x2, [sp+152]
0029a604ldr x0, [sp+88]
0029a608ldr x1, [sp+88]
0029a60cbl math/big.(*Int).Mod
0029a610ldr x1, [sp+72]
0029a614ldr x2, [sp+88]
0029a618ldr x0, [sp+72]
0029a61cbl math/big.(*Int).Sub
0029a620ldr x0, [sp+72]
0029a624bl math/big.(*Int).Sign
0029a628str x0, [sp+32]
0029a62cadds xzr, x0, 1
0029a630b.eq 0x29a638
0029a634b 0x29a658
0029a638
0029a638loc_29a638:
0029a638ldr x3, [sp+392]
0029a63cldrsb x27, [x3]
0029a640ldr x2, [x3]
0029a644str x2, [sp+144]
0029a648ldr x0, [sp+72]
0029a64cldr x1, [sp+72]
0029a650bl math/big.(*Int).Add
0029a654b 0x29a65c
0029a658
0029a658loc_29a658:
0029a658b 0x29a65c
0029a65c
0029a65cloc_29a65c:
0029a65cldr x3, [sp+392]
0029a660ldrsb x27, [x3]
0029a664ldr x2, [x3]
0029a668str x2, [sp+136]
0029a66cldr x0, [sp+72]
0029a670ldr x1, [sp+72]
0029a674bl math/big.(*Int).Mod
0029a678ldr x3, [sp+80]
0029a67cstr x3, [sp+56]
0029a680ldr x3, [sp+72]
0029a684str x3, [sp+48]
0029a688ldr x2, [sp+64]
0029a68cstr x2, [sp+40]
0029a690ldr x0, [sp+56]
0029a694ldr x1, [sp+48]
0029a698ldp x29, x30, [sp-8]
0029a69cadd sp, sp, 384
0029a6a0ret x30
0029a6a4
0029a6a4loc_29a6a4:
0029a6a4stp x0, x1, [sp+8]
0029a6a8stp x2, x3, [sp+24]
0029a6acmov x3, x30
0029a6b0bl runtime.morestack_noctxt.abi0
0029a6b4ldp x0, x1, [sp+8]
0029a6b8ldp x2, x3, [sp+24]
0029a6bcb 0x29a230
0029a230
0029a230crypto/elliptic.(*CurveParams).doubleJacobian: ; void crypto/elliptic.(*CurveParams).doubleJacobian(crypto/elliptic.CurveParams * curve, math/big.Int * x, math/big.Int * y, math/big.Int * z)
0029a230ldr x16, [x28+16]
0029a234sub x17, sp, 256
0029a238subs xzr, x17, x16
0029a23cb.ls 0x29a6a4
0029a240sub x20, sp, 384
0029a244stp x29, x30, [x20-8]
0029a248add sp, x20, 0
0029a24csub x29, sp, 8
0029a250str x0, [sp+392]
0029a254str x1, [sp+400]
0029a258str x2, [sp+408]
0029a25cstr x3, [sp+416]
0029a260str xzr, [sp+56]
0029a264str xzr, [sp+48]
0029a268str xzr, [sp+40]
0029a26cstrb wzr, [sp+336]
0029a270str xzr, [sp+344]
0029a274stp xzr, xzr, [sp+352]
0029a278add x0, sp, 336
0029a27cstr x0, [sp+368]
0029a280ldr x1, [sp+416]
0029a284ldr x2, [sp+416]
0029a288bl math/big.(*Int).Mul
0029a28cstr x0, [sp+96]
0029a290ldr x3, [sp+392]
0029a294ldrsb x27, [x3]
0029a298ldr x2, [x3]
0029a29cstr x2, [sp+328]
0029a2a0ldr x0, [sp+96]
0029a2a4ldr x1, [sp+96]
0029a2a8bl math/big.(*Int).Mod
0029a2acstrb wzr, [sp+296]
0029a2b0str xzr, [sp+304]
0029a2b4stp xzr, xzr, [sp+312]
0029a2b8add x0, sp, 296
0029a2bcstr x0, [sp+368]
0029a2c0ldr x1, [sp+408]
0029a2c4ldr x2, [sp+408]
0029a2c8bl math/big.(*Int).Mul
0029a2ccstr x0, [sp+88]
0029a2d0ldr x3, [sp+392]
0029a2d4ldrsb x27, [x3]
0029a2d8ldr x2, [x3]
0029a2dcstr x2, [sp+288]
0029a2e0ldr x0, [sp+88]
0029a2e4ldr x1, [sp+88]
0029a2e8bl math/big.(*Int).Mod
0029a2ecadrp x0, 0x3ab000
0029a2f0add x0, x0, 1024
0029a2f4bl runtime.newobject
0029a2f8str x0, [sp+368]
0029a2fcldr x1, [sp+400]
0029a300ldr x2, [sp+96]
0029a304bl math/big.(*Int).Sub
0029a308str x0, [sp+128]
0029a30cbl math/big.(*Int).Sign
0029a310str x0, [sp+32]
0029a314adds xzr, x0, 1
0029a318b.eq 0x29a320
0029a31cb 0x29a340
0029a320
0029a320loc_29a320:
0029a320ldr x3, [sp+392]
0029a324ldrsb x27, [x3]
0029a328ldr x2, [x3]
0029a32cstr x2, [sp+280]
0029a330ldr x0, [sp+128]
0029a334ldr x1, [sp+128]
0029a338bl math/big.(*Int).Add
0029a33cb 0x29a344
0029a340
0029a340loc_29a340:
0029a340b 0x29a344
0029a344
0029a344loc_29a344:
0029a344strb wzr, [sp+248]
0029a348str xzr, [sp+256]
0029a34cstp xzr, xzr, [sp+264]
0029a350add x0, sp, 248
0029a354str x0, [sp+368]
0029a358ldr x1, [sp+400]
0029a35cldr x2, [sp+96]
0029a360bl math/big.(*Int).Add
0029a364str x0, [sp+120]
0029a368ldr x1, [sp+128]
0029a36cldr x3, [sp+128]
0029a370mov x2, x0
0029a374mov x0, x3
0029a378bl math/big.(*Int).Mul
0029a37cldr x1, [sp+128]
0029a380ldr x0, [sp+120]
0029a384bl math/big.(*Int).Set
0029a388ldr x1, [sp+128]
0029a38cldr x0, [sp+128]
0029a390orr x2, xzr, 1
0029a394bl math/big.(*Int).Lsh
0029a398ldr x1, [sp+128]
0029a39cldr x2, [sp+120]
0029a3a0ldr x0, [sp+128]
0029a3a4bl math/big.(*Int).Add
0029a3a8ldr x1, [sp+400]
0029a3acldr x2, [sp+88]
0029a3b0ldr x0, [sp+120]
0029a3b4bl math/big.(*Int).Mul
0029a3b8str x0, [sp+112]
0029a3bcadrp x0, 0x3ab000
0029a3c0add x0, x0, 1024
0029a3c4bl runtime.newobject
0029a3c8str x0, [sp+368]
0029a3ccldr x1, [sp+128]
0029a3d0ldr x2, [sp+128]
0029a3d4bl math/big.(*Int).Mul
0029a3d8str x0, [sp+80]
0029a3dcstrb wzr, [sp+216]
0029a3e0str xzr, [sp+224]
0029a3e4stp xzr, xzr, [sp+232]
0029a3e8add x0, sp, 216
0029a3ecstr x0, [sp+368]
0029a3f0ldr x1, [sp+112]
0029a3f4orr x2, xzr, 3
0029a3f8bl math/big.(*Int).Lsh
0029a3fcstr x0, [sp+104]
0029a400ldr x3, [sp+392]
0029a404ldrsb x27, [x3]
0029a408ldr x2, [x3]
0029a40cstr x2, [sp+208]
0029a410ldr x0, [sp+104]
0029a414ldr x1, [sp+104]
0029a418bl math/big.(*Int).Mod
0029a41cldr x1, [sp+80]
0029a420ldr x2, [sp+104]
0029a424ldr x0, [sp+80]
0029a428bl math/big.(*Int).Sub
0029a42cldr x0, [sp+80]
0029a430bl math/big.(*Int).Sign
0029a434str x0, [sp+32]
0029a438adds xzr, x0, 1
0029a43cb.eq 0x29a444
0029a440b 0x29a464
0029a444
0029a444loc_29a444:
0029a444ldr x3, [sp+392]
0029a448ldrsb x27, [x3]
0029a44cldr x2, [x3]
0029a450str x2, [sp+200]
0029a454ldr x0, [sp+80]
0029a458ldr x1, [sp+80]
0029a45cbl math/big.(*Int).Add
0029a460b 0x29a468
0029a464
0029a464loc_29a464:
0029a464b 0x29a468
0029a468
0029a468loc_29a468:
0029a468ldr x3, [sp+392]
0029a46cldrsb x27, [x3]
0029a470ldr x2, [x3]
0029a474str x2, [sp+192]
0029a478ldr x0, [sp+80]
0029a47cldr x1, [sp+80]
0029a480bl math/big.(*Int).Mod
0029a484adrp x0, 0x3ab000
0029a488add x0, x0, 1024
0029a48cbl runtime.newobject
0029a490str x0, [sp+368]
0029a494ldr x1, [sp+408]
0029a498ldr x2, [sp+416]
0029a49cbl math/big.(*Int).Add
0029a4a0str x0, [sp+64]
0029a4a4mov x1, x0
0029a4a8mov x2, x0
0029a4acbl math/big.(*Int).Mul
0029a4b0ldr x1, [sp+64]
0029a4b4ldr x2, [sp+88]
0029a4b8ldr x0, [sp+64]
0029a4bcbl math/big.(*Int).Sub
0029a4c0ldr x0, [sp+64]
0029a4c4bl math/big.(*Int).Sign
0029a4c8str x0, [sp+32]
0029a4ccadds xzr, x0, 1
0029a4d0b.eq 0x29a4d8
0029a4d4b 0x29a4f8
0029a4d8
0029a4d8loc_29a4d8:
0029a4d8ldr x3, [sp+392]
0029a4dcldrsb x27, [x3]
0029a4e0ldr x2, [x3]
0029a4e4str x2, [sp+184]
0029a4e8ldr x0, [sp+64]
0029a4ecldr x1, [sp+64]
0029a4f0bl math/big.(*Int).Add
0029a4f4b 0x29a4fc
0029a4f8
0029a4f8loc_29a4f8:
0029a4f8b 0x29a4fc
0029a4fc
0029a4fcloc_29a4fc:
0029a4fcldr x1, [sp+64]
0029a500ldr x2, [sp+96]
0029a504ldr x0, [sp+64]
0029a508bl math/big.(*Int).Sub
0029a50cldr x0, [sp+64]
0029a510bl math/big.(*Int).Sign
0029a514str x0, [sp+32]
0029a518adds xzr, x0, 1
0029a51cb.eq 0x29a524
0029a520b 0x29a544
0029a524
0029a524loc_29a524:
0029a524ldr x3, [sp+392]
0029a528ldrsb x27, [x3]
0029a52cldr x2, [x3]
0029a530str x2, [sp+176]
0029a534ldr x0, [sp+64]
0029a538ldr x1, [sp+64]
0029a53cbl math/big.(*Int).Add
0029a540b 0x29a548
0029a544
0029a544loc_29a544:
0029a544b 0x29a548
0029a548
0029a548loc_29a548:
0029a548ldr x3, [sp+392]
0029a54cldrsb x27, [x3]
0029a550ldr x2, [x3]
0029a554str x2, [sp+168]
0029a558ldr x0, [sp+64]
0029a55cldr x1, [sp+64]
0029a560bl math/big.(*Int).Mod
0029a564ldr x1, [sp+112]
0029a568ldr x0, [sp+112]
0029a56corr x2, xzr, 2
0029a570bl math/big.(*Int).Lsh
0029a574ldr x1, [sp+112]
0029a578ldr x2, [sp+80]
0029a57cldr x0, [sp+112]
0029a580bl math/big.(*Int).Sub
0029a584ldr x0, [sp+112]
0029a588bl math/big.(*Int).Sign
0029a58cstr x0, [sp+32]
0029a590adds xzr, x0, 1
0029a594b.eq 0x29a59c
0029a598b 0x29a5bc
0029a59c
0029a59cloc_29a59c:
0029a59cldr x3, [sp+392]
0029a5a0ldrsb x27, [x3]
0029a5a4ldr x2, [x3]
0029a5a8str x2, [sp+160]
0029a5acldr x0, [sp+112]
0029a5b0ldr x1, [sp+112]
0029a5b4bl math/big.(*Int).Add
0029a5b8b 0x29a5c0
0029a5bc
0029a5bcloc_29a5bc:
0029a5bcb 0x29a5c0
0029a5c0
0029a5c0loc_29a5c0:
0029a5c0ldr x1, [sp+128]
0029a5c4ldr x2, [sp+112]
0029a5c8ldr x0, [sp+128]
0029a5ccbl math/big.(*Int).Mul
0029a5d0str x0, [sp+72]
0029a5d4ldr x1, [sp+88]
0029a5d8ldr x2, [sp+88]
0029a5dcldr x0, [sp+88]
0029a5e0bl math/big.(*Int).Mul
0029a5e4ldr x1, [sp+88]
0029a5e8ldr x0, [sp+88]
0029a5ecorr x2, xzr, 3
0029a5f0bl math/big.(*Int).Lsh
0029a5f4ldr x3, [sp+392]
0029a5f8ldrsb x27, [x3]
0029a5fcldr x2, [x3]
0029a600str x2, [sp+152]
0029a604ldr x0, [sp+88]
0029a608ldr x1, [sp+88]
0029a60cbl math/big.(*Int).Mod
0029a610ldr x1, [sp+72]
0029a614ldr x2, [sp+88]
0029a618ldr x0, [sp+72]
0029a61cbl math/big.(*Int).Sub
0029a620ldr x0, [sp+72]
0029a624bl math/big.(*Int).Sign
0029a628str x0, [sp+32]
0029a62cadds xzr, x0, 1
0029a630b.eq 0x29a638
0029a634b 0x29a658
0029a638
0029a638loc_29a638:
0029a638ldr x3, [sp+392]
0029a63cldrsb x27, [x3]
0029a640ldr x2, [x3]
0029a644str x2, [sp+144]
0029a648ldr x0, [sp+72]
0029a64cldr x1, [sp+72]
0029a650bl math/big.(*Int).Add
0029a654b 0x29a65c
0029a658
0029a658loc_29a658:
0029a658b 0x29a65c
0029a65c
0029a65cloc_29a65c:
0029a65cldr x3, [sp+392]
0029a660ldrsb x27, [x3]
0029a664ldr x2, [x3]
0029a668str x2, [sp+136]
0029a66cldr x0, [sp+72]
0029a670ldr x1, [sp+72]
0029a674bl math/big.(*Int).Mod
0029a678ldr x3, [sp+80]
0029a67cstr x3, [sp+56]
0029a680ldr x3, [sp+72]
0029a684str x3, [sp+48]
0029a688ldr x2, [sp+64]
0029a68cstr x2, [sp+40]
0029a690ldr x0, [sp+56]
0029a694ldr x1, [sp+48]
0029a698ldp x29, x30, [sp-8]
0029a69cadd sp, sp, 384
0029a6a0ret x30
0029a6a4
0029a6a4loc_29a6a4:
0029a6a4stp x0, x1, [sp+8]
0029a6a8stp x2, x3, [sp+24]
0029a6acmov x3, x30
0029a6b0bl runtime.morestack_noctxt.abi0
0029a6b4ldp x0, x1, [sp+8]
0029a6b8ldp x2, x3, [sp+24]
0029a6bcb 0x29a230
0029a230
Loading..