File sliver_83cb34f62800fed14e14547c39337aab8e0427fe2c6310a3fb40ce0ac36168c9.elf
Function:
    00296fe0
    00296fe0math/big.addVV.abi0: ; void math/big.addVV(void)
    00296fe0ldr x0, [sp+16]
    00296fe4ldr x8, [sp+32]
    00296fe8ldr x9, [sp+56]
    00296fecldr x10, [sp+8]
    00296ff0adds x0, x0, 0
    00296ff4tbz w0, 0, 0x29700c
    00296ff8ldr x11, [x8], 8
    00296ffcldr x15, [x9], 8
    00297000adcs x11, x11, x15
    00297004str x11, [x10], 8
    00297008sub x0, x0, 1
    0029700c
    0029700cloc_29700c:
    0029700ctbz w0, 1, 0x297028
    00297010ldp x11, x12, [x8], 16
    00297014ldp x15, x16, [x9], 16
    00297018adcs x11, x11, x15
    0029701cadcs x12, x12, x16
    00297020stp x11, x12, [x10], 16
    00297024sub x0, x0, 2
    00297028
    00297028loc_297028:
    00297028cbz x0, 0x29705c
    0029702cldp x11, x12, [x8], 32
    00297030ldp x13, x14, [x8-16]
    00297034ldp x15, x16, [x9], 32
    00297038ldp x17, x19, [x9-16]
    0029703cadcs x11, x11, x15
    00297040adcs x12, x12, x16
    00297044adcs x13, x13, x17
    00297048adcs x14, x14, x19
    0029704cstp x11, x12, [x10], 32
    00297050stp x13, x14, [x10-16]
    00297054sub x0, x0, 4
    00297058b 0x297028
    0029705c
    0029705cloc_29705c:
    0029705ccset x0, hs
    00297060str x0, [sp+80]
    00297064ret x30
    00297068udf 0
    0029706cudf 0
    00296fe0
    00297070
    00297070math/big.subVV.abi0: ; void math/big.subVV(void)
    00297070ldr x0, [sp+16]
    00297074ldr x8, [sp+32]
    00297078ldr x9, [sp+56]
    0029707cldr x10, [sp+8]
    00297080subs xzr, x0, x0
    00297084tbz w0, 0, 0x29709c
    00297088ldr x11, [x8], 8
    0029708cldr x15, [x9], 8
    00297090sbcs x11, x11, x15
    00297094str x11, [x10], 8
    00297098sub x0, x0, 1
    0029709c
    0029709cloc_29709c:
    0029709ctbz w0, 1, 0x2970b8
    002970a0ldp x11, x12, [x8], 16
    002970a4ldp x15, x16, [x9], 16
    002970a8sbcs x11, x11, x15
    002970acsbcs x12, x12, x16
    002970b0stp x11, x12, [x10], 16
    002970b4sub x0, x0, 2
    002970b8
    002970b8loc_2970b8:
    002970b8cbz x0, 0x2970ec
    002970bcldp x11, x12, [x8], 32
    002970c0ldp x13, x14, [x8-16]
    002970c4ldp x15, x16, [x9], 32
    002970c8ldp x17, x19, [x9-16]
    002970ccsbcs x11, x11, x15
    002970d0sbcs x12, x12, x16
    002970d4sbcs x13, x13, x17
    002970d8sbcs x14, x14, x19
    002970dcstp x11, x12, [x10], 32
    002970e0stp x13, x14, [x10-16]
    002970e4sub x0, x0, 4
    002970e8b 0x2970b8
    002970ec
    002970ecloc_2970ec:
    002970eccset x0, lo
    002970f0str x0, [sp+80]
    002970f4ret x30
    002970f8udf 0
    002970fcudf 0
    00297070
    00297100
    00297100math/big.addVW.abi0: ; void math/big.addVW(void)
    00297100ldr x3, [sp+8]
    00297104ldr x0, [sp+16]
    00297108ldr x1, [sp+32]
    0029710cldr x2, [sp+56]
    00297110subs xzr, x0, 32
    00297114b.ge 0x297194
    00297118cbz x0, 0x29718c
    0029711cldr x4, [x1], 8
    00297120adds x4, x4, x2
    00297124str x4, [x3], 8
    00297128sub x0, x0, 1
    0029712ccbz x0, 0x297188
    00297130tbz w0, 0, 0x297144
    00297134ldr x4, [x1], 8
    00297138adcs x4, x4, xzr
    0029713cstr x4, [x3], 8
    00297140sub x0, x0, 1
    00297144
    00297144loc_297144:
    00297144tbz w0, 1, 0x29715c
    00297148ldp x4, x5, [x1], 16
    0029714cadcs x8, x4, xzr
    00297150adcs x9, x5, xzr
    00297154stp x8, x9, [x3], 16
    00297158sub x0, x0, 2
    0029715c
    0029715cloc_29715c:
    0029715ccbz x0, 0x297188
    00297160ldp x4, x5, [x1], 32
    00297164ldp x6, x7, [x1-16]
    00297168adcs x8, x4, xzr
    0029716cadcs x9, x5, xzr
    00297170adcs x10, x6, xzr
    00297174adcs x11, x7, xzr
    00297178stp x8, x9, [x3], 32
    0029717cstp x10, x11, [x3-16]
    00297180sub x0, x0, 4
    00297184b 0x29715c
    00297188
    00297188loc_297188:
    00297188cset x2, hs
    0029718c
    0029718cloc_29718c:
    0029718cstr x2, [sp+64]
    00297190
    00297190loc_297190:
    00297190ret x30
    00297194
    00297194loc_297194:
    00297194and x10, x0, 3
    00297198and x0, x0, -4
    0029719cldr x4, [x1], 8
    002971a0adds x4, x4, x2
    002971a4str x4, [x3], 8
    002971a8sub x10, x10, 1
    002971accbz x10, 0x2971e8
    002971b0ldr x4, [x1], 8
    002971b4adcs x4, x4, xzr
    002971b8str x4, [x3], 8
    002971bcsub x10, x10, 1
    002971c0cbz x10, 0x2971e8
    002971c4ldr x4, [x1], 8
    002971c8adcs x4, x4, xzr
    002971ccstr x4, [x3], 8
    002971d0sub x10, x10, 1
    002971d4cbz x10, 0x2971e8
    002971d8ldr x4, [x1], 8
    002971dcadcs x4, x4, xzr
    002971e0str x4, [x3], 8
    002971e4sub x0, x0, 4
    002971e8
    002971e8loc_2971e8:
    002971e8b.lo 0x297218
    002971eccbz x0, 0x297188
    002971f0ldp x4, x5, [x1], 32
    002971f4ldp x6, x7, [x1-16]
    002971f8adcs x8, x4, xzr
    002971fcadcs x9, x5, xzr
    00297200adcs x10, x6, xzr
    00297204adcs x11, x7, xzr
    00297208stp x8, x9, [x3], 32
    0029720cstp x10, x11, [x3-16]
    00297210sub x0, x0, 4
    00297214b 0x2971e8
    00297218
    00297218loc_297218:
    00297218str xzr, [sp+64]
    0029721csubs xzr, x3, x1
    00297220b.eq 0x297190
    00297224
    00297224loc_297224:
    00297224cbz x0, 0x297190
    00297228ldp x4, x5, [x1], 32
    0029722cldp x6, x7, [x1-16]
    00297230stp x4, x5, [x3], 32
    00297234stp x6, x7, [x3-16]
    00297238sub x0, x0, 4
    0029723cb 0x297224
    00297100
    00297240
    00297240math/big.subVW.abi0: ; void math/big.subVW(void)
    00297240ldr x3, [sp+8]
    00297244ldr x0, [sp+16]
    00297248ldr x1, [sp+32]
    0029724cldr x2, [sp+56]
    00297250subs xzr, x0, 32
    00297254b.ge 0x2972d4
    00297258cbz x0, 0x2972cc
    0029725cldr x4, [x1], 8
    00297260subs x4, x4, x2
    00297264str x4, [x3], 8
    00297268sub x0, x0, 1
    0029726ccbz x0, 0x2972c8
    00297270tbz w0, 0, 0x297284
    00297274ldr x4, [x1], 8
    00297278sbcs x4, x4, xzr
    0029727cstr x4, [x3], 8
    00297280sub x0, x0, 1
    00297284
    00297284loc_297284:
    00297284tbz w0, 1, 0x29729c
    00297288ldp x4, x5, [x1], 16
    0029728csbcs x8, x4, xzr
    00297290sbcs x9, x5, xzr
    00297294stp x8, x9, [x3], 16
    00297298sub x0, x0, 2
    0029729c
    0029729cloc_29729c:
    0029729ccbz x0, 0x2972c8
    002972a0ldp x4, x5, [x1], 32
    002972a4ldp x6, x7, [x1-16]
    002972a8sbcs x8, x4, xzr
    002972acsbcs x9, x5, xzr
    002972b0sbcs x10, x6, xzr
    002972b4sbcs x11, x7, xzr
    002972b8stp x8, x9, [x3], 32
    002972bcstp x10, x11, [x3-16]
    002972c0sub x0, x0, 4
    002972c4b 0x29729c
    002972c8
    002972c8loc_2972c8:
    002972c8cset x2, lo
    002972cc
    002972ccloc_2972cc:
    002972ccstr x2, [sp+64]
    002972d0
    002972d0loc_2972d0:
    002972d0ret x30
    002972d4
    002972d4loc_2972d4:
    002972d4and x10, x0, 3
    002972d8and x0, x0, -4
    002972dcldr x4, [x1], 8
    002972e0subs x4, x4, x2
    002972e4str x4, [x3], 8
    002972e8sub x10, x10, 1
    002972eccbz x10, 0x297328
    002972f0ldr x4, [x1], 8
    002972f4sbcs x4, x4, xzr
    002972f8str x4, [x3], 8
    002972fcsub x10, x10, 1
    00297300cbz x10, 0x297328
    00297304ldr x4, [x1], 8
    00297308sbcs x4, x4, xzr
    0029730cstr x4, [x3], 8
    00297310sub x10, x10, 1
    00297314cbz x10, 0x297328
    00297318ldr x4, [x1], 8
    0029731csbcs x4, x4, xzr
    00297320str x4, [x3], 8
    00297324sub x0, x0, 4
    00297328
    00297328loc_297328:
    00297328b.hs 0x297358
    0029732ccbz x0, 0x2972c8
    00297330ldp x4, x5, [x1], 32
    00297334ldp x6, x7, [x1-16]
    00297338sbcs x8, x4, xzr
    0029733csbcs x9, x5, xzr
    00297340sbcs x10, x6, xzr
    00297344sbcs x11, x7, xzr
    00297348stp x8, x9, [x3], 32
    0029734cstp x10, x11, [x3-16]
    00297350sub x0, x0, 4
    00297354b 0x297328
    00297358
    00297358loc_297358:
    00297358str xzr, [sp+64]
    0029735csubs xzr, x3, x1
    00297360b.eq 0x2972d0
    00297364
    00297364loc_297364:
    00297364cbz x0, 0x2972d0
    00297368ldp x4, x5, [x1], 32
    0029736cldp x6, x7, [x1-16]
    00297370stp x4, x5, [x3], 32
    00297374stp x6, x7, [x3-16]
    00297378sub x0, x0, 4
    0029737cb 0x297364
    00297240
    00297380
    00297380math/big.shlVU.abi0: ; void math/big.shlVU(void)
    00297380ldp x0, x1, [sp+8]
    00297384ldr x2, [sp+32]
    00297388ldr x3, [sp+56]
    0029738cadd x0, x0, x1, lsl #3
    00297390add x2, x2, x1, lsl #3
    00297394cbz x1, 0x297494
    00297398cbz x3, 0x297450
    0029739corr x4, xzr, 64
    002973a0sub x4, x4, x3
    002973a4ldr x6, [x2-8]!
    002973a8lsrv x5, x6, x4
    002973aclslv x8, x6, x3
    002973b0sub x1, x1, 1
    002973b4tbz w1, 0, 0x2973d0
    002973b8ldr x6, [x2-8]!
    002973bclsrv x7, x6, x4
    002973c0orr x7, x7, x8
    002973c4lslv x8, x6, x3
    002973c8sub x1, x1, 1
    002973ccstr x7, [x0-8]!
    002973d0
    002973d0loc_2973d0:
    002973d0tbz w1, 1, 0x2973f8
    002973d4ldp x6, x7, [x2-16]!
    002973d8lsrv x10, x7, x4
    002973dcorr x10, x10, x8
    002973e0lslv x7, x7, x3
    002973e4lsrv x9, x6, x4
    002973e8orr x9, x9, x7
    002973eclslv x8, x6, x3
    002973f0sub x1, x1, 2
    002973f4stp x9, x10, [x0-16]!
    002973f8
    002973f8loc_2973f8:
    002973f8cbz x1, 0x297444
    002973fcldp x10, x11, [x2-32]!
    00297400ldp x12, x13, [x2+16]
    00297404lsrv x23, x13, x4
    00297408orr x23, x23, x8
    0029740clslv x13, x13, x3
    00297410lsrv x22, x12, x4
    00297414orr x22, x22, x13
    00297418lslv x12, x12, x3
    0029741clsrv x21, x11, x4
    00297420orr x21, x21, x12
    00297424lslv x11, x11, x3
    00297428lsrv x20, x10, x4
    0029742corr x20, x20, x11
    00297430lslv x8, x10, x3
    00297434stp x20, x21, [x0-32]!
    00297438stp x22, x23, [x0+16]
    0029743csub x1, x1, 4
    00297440b 0x2973f8
    00297444
    00297444loc_297444:
    00297444str x8, [x0-8]!
    00297448str x5, [sp+64]
    0029744cret x30
    00297450
    00297450loc_297450:
    00297450subs xzr, x2, x0
    00297454b.eq 0x297494
    00297458tbz w1, 0, 0x297468
    0029745cldr x4, [x2-8]!
    00297460str x4, [x0-8]!
    00297464sub x1, x1, 1
    00297468
    00297468loc_297468:
    00297468tbz w1, 1, 0x297478
    0029746cldp x4, x5, [x2-16]!
    00297470stp x4, x5, [x0-16]!
    00297474sub x1, x1, 2
    00297478
    00297478loc_297478:
    00297478cbz x1, 0x297494
    0029747cldp x4, x5, [x2-32]!
    00297480ldp x6, x7, [x2+16]
    00297484stp x4, x5, [x0-32]!
    00297488stp x6, x7, [x0+16]
    0029748csub x1, x1, 4
    00297490b 0x297478
    00297494
    00297494loc_297494:
    00297494str xzr, [sp+64]
    00297498ret x30
    0029749cudf 0
    00297380
    002974a0
    002974a0math/big.shrVU.abi0: ; void math/big.shrVU(void)
    002974a0ldr x0, [sp+8]
    002974a4ldr x1, [sp+16]
    002974a8ldr x2, [sp+32]
    002974acldr x3, [sp+56]
    002974b0mov x8, xzr
    002974b4orr x4, xzr, 64
    002974b8sub x4, x4, x3
    002974bccbz x1, 0x2975b4
    002974c0cbz x3, 0x297570
    002974c4ldr x20, [x2], 8
    002974c8lsrv x8, x20, x3
    002974cclslv x20, x20, x4
    002974d0str x20, [sp+64]
    002974d4sub x1, x1, 1
    002974d8tbz w1, 0, 0x2974f4
    002974dcldr x6, [x2], 8
    002974e0lslv x20, x6, x4
    002974e4orr x20, x20, x8
    002974e8lsrv x8, x6, x3
    002974ecstr x20, [x0], 8
    002974f0sub x1, x1, 1
    002974f4
    002974f4loc_2974f4:
    002974f4tbz w1, 1, 0x29751c
    002974f8ldp x6, x7, [x2], 16
    002974fclslv x20, x6, x4
    00297500lsrv x6, x6, x3
    00297504orr x20, x20, x8
    00297508lslv x21, x7, x4
    0029750clsrv x8, x7, x3
    00297510orr x21, x21, x6
    00297514stp x20, x21, [x0], 16
    00297518sub x1, x1, 2
    0029751c
    0029751cloc_29751c:
    0029751ccbz x1, 0x297568
    00297520ldp x10, x11, [x2], 32
    00297524ldp x12, x13, [x2-16]
    00297528lslv x20, x10, x4
    0029752clsrv x10, x10, x3
    00297530orr x20, x20, x8
    00297534lslv x21, x11, x4
    00297538lsrv x11, x11, x3
    0029753corr x21, x21, x10
    00297540lslv x22, x12, x4
    00297544lsrv x12, x12, x3
    00297548orr x22, x22, x11
    0029754clslv x23, x13, x4
    00297550lsrv x8, x13, x3
    00297554orr x23, x23, x12
    00297558stp x20, x21, [x0], 32
    0029755cstp x22, x23, [x0-16]
    00297560sub x1, x1, 4
    00297564b 0x29751c
    00297568
    00297568loc_297568:
    00297568str x8, [x0]
    0029756cret x30
    00297570
    00297570loc_297570:
    00297570subs xzr, x2, x0
    00297574b.eq 0x2975b4
    00297578tbz w1, 0, 0x297588
    0029757cldr x3, [x2], 8
    00297580str x3, [x0], 8
    00297584sub x1, x1, 1
    00297588
    00297588loc_297588:
    00297588tbz w1, 1, 0x297598
    0029758cldp x4, x5, [x2], 16
    00297590stp x4, x5, [x0], 16
    00297594sub x1, x1, 2
    00297598
    00297598loc_297598:
    00297598cbz x1, 0x2975b4
    0029759cldp x4, x5, [x2], 32
    002975a0ldp x6, x7, [x2-16]
    002975a4stp x4, x5, [x0], 32
    002975a8stp x6, x7, [x0-16]
    002975acsub x1, x1, 4
    002975b0b 0x297598
    002975b4
    002975b4loc_2975b4:
    002975b4str xzr, [sp+64]
    002975b8ret x30
    002975bcudf 0
    002974a0
    002975c0
    002975c0math/big.mulAddVWW.abi0: ; void math/big.mulAddVWW(void)
    002975c0ldr x1, [sp+8]
    002975c4ldr x0, [sp+16]
    002975c8ldr x2, [sp+32]
    002975ccldr x3, [sp+56]
    002975d0ldr x4, [sp+64]
    002975d4tbz w0, 0, 0x2975f4
    002975d8ldr x5, [x2], 8
    002975dcmadd x7, x5, x3, xzr
    002975e0umulh x8, x5, x3
    002975e4adds x7, x7, x4
    002975e8adc x4, x8, xzr
    002975ecstr x7, [x1], 8
    002975f0sub x0, x0, 1
    002975f4
    002975f4loc_2975f4:
    002975f4tbz w0, 1, 0x297620
    002975f8ldp x5, x6, [x2], 16
    002975fcmadd x10, x5, x3, xzr
    00297600umulh x11, x5, x3
    00297604adds x10, x10, x4
    00297608madd x12, x6, x3, xzr
    0029760cumulh x13, x6, x3
    00297610adcs x11, x11, x12
    00297614adc x4, x13, xzr
    00297618stp x10, x11, [x1], 16
    0029761csub x0, x0, 2
    00297620
    00297620loc_297620:
    00297620cbz x0, 0x297670
    00297624ldp x5, x6, [x2], 32
    00297628ldp x7, x8, [x2-16]
    0029762cmadd x10, x5, x3, xzr
    00297630umulh x11, x5, x3
    00297634adds x10, x10, x4
    00297638madd x12, x6, x3, xzr
    0029763cumulh x13, x6, x3
    00297640adcs x12, x12, x11
    00297644madd x14, x7, x3, xzr
    00297648umulh x15, x7, x3
    0029764cadcs x14, x14, x13
    00297650madd x16, x8, x3, xzr
    00297654umulh x17, x8, x3
    00297658adcs x16, x16, x15
    0029765cadc x4, x17, xzr
    00297660stp x10, x12, [x1], 32
    00297664stp x14, x16, [x1-16]
    00297668sub x0, x0, 4
    0029766cb 0x297620
    00297670
    00297670loc_297670:
    00297670str x4, [sp+72]
    00297674ret x30
    00297678udf 0
    0029767cudf 0
    002975c0
    00297680
    00297680math/big.addMulVVW.abi0: ; void math/big.addMulVVW(void)
    00297680ldr x1, [sp+8]
    00297684ldr x0, [sp+16]
    00297688ldr x2, [sp+32]
    0029768cldr x3, [sp+56]
    00297690mov x4, xzr
    00297694tbz w0, 0, 0x2976b8
    00297698ldr x5, [x2], 8
    0029769cldr x6, [x1]
    002976a0madd x7, x3, x5, xzr
    002976a4umulh x8, x3, x5
    002976a8adds x6, x6, x7
    002976acadc x4, x8, xzr
    002976b0str x6, [x1], 8
    002976b4sub x0, x0, 1
    002976b8
    002976b8loc_2976b8:
    002976b8tbz w0, 1, 0x2976f4
    002976bcldp x5, x10, [x2], 16
    002976c0ldp x6, x11, [x1]
    002976c4madd x13, x3, x10, xzr
    002976c8umulh x12, x3, x10
    002976ccmadd x7, x3, x5, xzr
    002976d0umulh x8, x3, x5
    002976d4adds x6, x6, x4
    002976d8adcs x11, x11, x13
    002976dcadc x12, x12, xzr
    002976e0adds x6, x6, x7
    002976e4adcs x11, x11, x8
    002976e8adc x4, x12, xzr
    002976ecstp x6, x11, [x1], 16
    002976f0sub x0, x0, 2
    002976f4
    002976f4loc_2976f4:
    002976f4cbz x0, 0x297760
    002976f8ldp x5, x6, [x2], 16
    002976fcldp x7, x8, [x2], 16
    00297700ldp x9, x10, [x1]
    00297704adds x9, x9, x4
    00297708madd x14, x3, x6, xzr
    0029770cadcs x10, x10, x14
    00297710madd x15, x3, x7, xzr
    00297714ldp x11, x12, [x1+16]
    00297718adcs x11, x11, x15
    0029771cmadd x16, x3, x8, xzr
    00297720adcs x12, x12, x16
    00297724umulh x20, x3, x8
    00297728adc x20, x20, xzr
    0029772cmadd x13, x3, x5, xzr
    00297730adds x9, x9, x13
    00297734umulh x17, x3, x5
    00297738adcs x10, x10, x17
    0029773cumulh x21, x3, x6
    00297740stp x9, x10, [x1], 16
    00297744adcs x11, x11, x21
    00297748umulh x19, x3, x7
    0029774cadcs x12, x12, x19
    00297750stp x11, x12, [x1], 16
    00297754adc x4, x20, xzr
    00297758sub x0, x0, 4
    0029775cb 0x2976f4
    00297760
    00297760loc_297760:
    00297760str x4, [sp+64]
    00297764ret x30
    00297768udf 0
    0029776cudf 0
    00297680
    00297770
    00297770math/big.(*nat).String: ; void math/big.(*nat).String(math/big.nat * z)
    00297770ldr x16, [x28+16]
    00297774subs xzr, sp, x16
    00297778b.ls 0x2977ec
    0029777cstr x30, [sp-96]!
    00297780stur x29, [sp-8]
    00297784sub x29, sp, 8
    00297788ldr x16, [x28+32]
    0029778ccbnz x16, 0x297800
    00297790
    00297790loc_297790:
    00297790str x0, [sp+104]
    00297794stp xzr, xzr, [sp+32]
    00297798ldr x3, [sp+104]
    0029779ccbnz x3, 0x2977a4
    002977a0b 0x2977e4
    002977a4
    002977a4loc_2977a4:
    002977a4ldr x3, [sp+104]
    002977a8ldrsb x27, [x3]
    002977acldr x0, [x3]
    002977b0ldr x1, [x3+8]
    002977b4ldr x2, [x3+16]
    002977b8str x0, [sp+48]
    002977bcstr x1, [sp+56]
    002977c0str x2, [sp+64]
    002977c4bl math/big.nat.String
    002977c8str x0, [sp+72]
    002977ccstr x1, [sp+80]
    002977d0str x0, [sp+32]
    002977d4str x1, [sp+40]
    002977d8ldur x29, [sp-8]
    002977dcldr x30, [sp], 96
    002977e0ret x30
    002977e4
    002977e4loc_2977e4:
    002977e4bl runtime.panicwrap
    002977e8hint
    002977ec
    002977ecloc_2977ec:
    002977ecstr x0, [sp+8]
    002977f0mov x3, x30
    002977f4bl runtime.morestack_noctxt.abi0
    002977f8ldr x0, [sp+8]
    002977fcb 0x297770
    00297800
    00297800loc_297800:
    00297800ldr x17, [x16]
    00297804add x20, sp, 104
    00297808subs xzr, x20, x17
    0029780cb.ne 0x297790
    00297810add x20, sp, 8
    00297814str x20, [x16]
    00297818b 0x297790
    0029781cudf 0
    00297770
    00297820
    00297820math/big.byteReader.Read: ; void math/big.byteReader.Read(math/big.byteReader p0, struct []uint8 buf)
    00297820ldr x16, [x28+16]
    00297824subs xzr, sp, x16
    00297828b.ls 0x2978bc
    0029782cstr x30, [sp-128]!
    00297830stur x29, [sp-8]
    00297834sub x29, sp, 8
    00297838ldr x16, [x28+32]
    0029783ccbnz x16, 0x2978e0
    00297840
    00297840loc_297840:
    00297840str x0, [sp+136]
    00297844str x1, [sp+144]
    00297848str x2, [sp+152]
    0029784cstr x3, [sp+160]
    00297850str x4, [sp+168]
    00297854str xzr, [sp+48]
    00297858stp xzr, xzr, [sp+72]
    0029785cstp xzr, xzr, [sp+88]
    00297860ldr x4, [sp+136]
    00297864ldrsb x27, [x4]
    00297868ldr x1, [sp+152]
    0029786cldr x2, [sp+160]
    00297870ldr x0, [sp+144]
    00297874ldr x3, [sp+168]
    00297878ldr x4, [x4+24]
    0029787cblr x4
    00297880str x0, [sp+56]
    00297884str x1, [sp+88]
    00297888str x2, [sp+96]
    0029788cldr x4, [sp+56]
    00297890str x4, [sp+64]
    00297894str x1, [sp+104]
    00297898str x2, [sp+112]
    0029789cldr x4, [sp+64]
    002978a0str x4, [sp+48]
    002978a4str x1, [sp+72]
    002978a8str x2, [sp+80]
    002978acldr x0, [sp+48]
    002978b0ldur x29, [sp-8]
    002978b4ldr x30, [sp], 128
    002978b8ret x30
    002978bc
    002978bcloc_2978bc:
    002978bcstp x0, x1, [sp+8]
    002978c0stp x2, x3, [sp+24]
    002978c4str x4, [sp+40]
    002978c8mov x3, x30
    002978ccbl runtime.morestack_noctxt.abi0
    002978d0ldp x0, x1, [sp+8]
    002978d4ldp x2, x3, [sp+24]
    002978d8ldr x4, [sp+40]
    002978dcb 0x297820
    002978e0
    002978e0loc_2978e0:
    002978e0ldr x17, [x16]
    002978e4add x20, sp, 136
    002978e8subs xzr, x20, x17
    002978ecb.ne 0x297840
    002978f0add x20, sp, 8
    002978f4str x20, [x16]
    002978f8b 0x297840
    002978fcudf 0
    00297820
    00297900
    00297900math/big.(*byteReader).Read: ; void math/big.(*byteReader).Read(math/big.byteReader * p0, struct []uint8 buf)
    00297900ldr x16, [x28+16]
    00297904subs xzr, sp, x16
    00297908b.ls 0x2979a0
    0029790cstr x30, [sp-128]!
    00297910stur x29, [sp-8]
    00297914sub x29, sp, 8
    00297918ldr x16, [x28+32]
    0029791ccbnz x16, 0x2979bc
    00297920
    00297920loc_297920:
    00297920str x0, [sp+136]
    00297924str x1, [sp+144]
    00297928str x2, [sp+152]
    0029792cstr x3, [sp+160]
    00297930str xzr, [sp+48]
    00297934stp xzr, xzr, [sp+72]
    00297938stp xzr, xzr, [sp+88]
    0029793cldr x1, [sp+144]
    00297940ldr x4, [sp+136]
    00297944ldrsb x27, [x4]
    00297948ldr x5, [x4]
    0029794cldrsb x27, [x5]
    00297950ldr x2, [sp+152]
    00297954ldr x0, [x4+8]
    00297958ldr x3, [sp+160]
    0029795cldr x4, [x5+24]
    00297960blr x4
    00297964str x0, [sp+56]
    00297968str x1, [sp+88]
    0029796cstr x2, [sp+96]
    00297970ldr x4, [sp+56]
    00297974str x4, [sp+64]
    00297978str x1, [sp+104]
    0029797cstr x2, [sp+112]
    00297980ldr x4, [sp+64]
    00297984str x4, [sp+48]
    00297988str x1, [sp+72]
    0029798cstr x2, [sp+80]
    00297990ldr x0, [sp+48]
    00297994ldur x29, [sp-8]
    00297998ldr x30, [sp], 128
    0029799cret x30
    002979a0
    002979a0loc_2979a0:
    002979a0stp x0, x1, [sp+8]
    002979a4stp x2, x3, [sp+24]
    002979a8mov x3, x30
    002979acbl runtime.morestack_noctxt.abi0
    002979b0ldp x0, x1, [sp+8]
    002979b4ldp x2, x3, [sp+24]
    002979b8b 0x297900
    002979bc
    002979bcloc_2979bc:
    002979bcldr x17, [x16]
    002979c0add x20, sp, 136
    002979c4subs xzr, x20, x17
    002979c8b.ne 0x297920
    002979ccadd x20, sp, 8
    002979d0str x20, [x16]
    002979d4b 0x297920
    002979d8udf 0
    002979dcudf 0
    00297900
    002979e0
    002979e0math/big.(*byteReader).ReadByte: ; void math/big.(*byteReader).ReadByte(math/big.byteReader * r)
    002979e0ldr x16, [x28+16]
    002979e4subs xzr, sp, x16
    002979e8b.ls 0x297a8c
    002979ecstr x30, [sp-112]!
    002979f0stur x29, [sp-8]
    002979f4sub x29, sp, 8
    002979f8ldr x16, [x28+32]
    002979fccbnz x16, 0x297aa0
    00297a00
    00297a00loc_297a00:
    00297a00str x0, [sp+120]
    00297a04strb wzr, [sp+37]
    00297a08stp xzr, xzr, [sp+40]
    00297a0cldr x2, [sp+120]
    00297a10cbnz x2, 0x297a18
    00297a14b 0x297a84
    00297a18
    00297a18loc_297a18:
    00297a18stp xzr, xzr, [sp+72]
    00297a1cldr x2, [sp+120]
    00297a20ldrsb x27, [x2]
    00297a24ldr x0, [x2]
    00297a28ldr x1, [x2+8]
    00297a2cstr x0, [sp+56]
    00297a30str x1, [sp+64]
    00297a34bl math/big.byteReader.ReadByte
    00297a38strb w0, [sp+38]
    00297a3cstr x1, [sp+72]
    00297a40str x2, [sp+80]
    00297a44ldrb w2, [sp+38]
    00297a48strb w2, [sp+39]
    00297a4cldr x2, [sp+72]
    00297a50ldr x3, [sp+80]
    00297a54str x2, [sp+88]
    00297a58str x3, [sp+96]
    00297a5cldrb w2, [sp+39]
    00297a60strb w2, [sp+37]
    00297a64ldr x1, [sp+88]
    00297a68ldr x2, [sp+96]
    00297a6cstr x1, [sp+40]
    00297a70str x2, [sp+48]
    00297a74ldrb w0, [sp+37]
    00297a78ldur x29, [sp-8]
    00297a7cldr x30, [sp], 112
    00297a80ret x30
    00297a84
    00297a84loc_297a84:
    00297a84bl runtime.panicwrap
    00297a88hint
    00297a8c
    00297a8cloc_297a8c:
    00297a8cstr x0, [sp+8]
    00297a90mov x3, x30
    00297a94bl runtime.morestack_noctxt.abi0
    00297a98ldr x0, [sp+8]
    00297a9cb 0x2979e0
    00297aa0
    00297aa0loc_297aa0:
    00297aa0ldr x17, [x16]
    00297aa4add x20, sp, 120
    00297aa8subs xzr, x20, x17
    00297aacb.ne 0x297a00
    00297ab0add x20, sp, 8
    00297ab4str x20, [x16]
    00297ab8b 0x297a00
    00297abcudf 0
    002979e0
    00297ac0
    00297ac0math/big.byteReader.ReadRune: ; void math/big.byteReader.ReadRune(math/big.byteReader p0)
    00297ac0ldr x16, [x28+16]
    00297ac4subs xzr, sp, x16
    00297ac8b.ls 0x297b60
    00297accstr x30, [sp-112]!
    00297ad0stur x29, [sp-8]
    00297ad4sub x29, sp, 8
    00297ad8ldr x16, [x28+32]
    00297adccbnz x16, 0x297b74
    00297ae0
    00297ae0loc_297ae0:
    00297ae0str x0, [sp+120]
    00297ae4str x1, [sp+128]
    00297ae8str wzr, [sp+20]
    00297aecstr xzr, [sp+32]
    00297af0stp xzr, xzr, [sp+56]
    00297af4stp xzr, xzr, [sp+72]
    00297af8ldr x1, [sp+120]
    00297afcldrsb x27, [x1]
    00297b00ldr x0, [sp+128]
    00297b04ldr x1, [x1+32]
    00297b08blr x1
    00297b0cstr w0, [sp+24]
    00297b10str x1, [sp+40]
    00297b14str x2, [sp+72]
    00297b18str x3, [sp+80]
    00297b1cldrsw x1, [sp+24]
    00297b20str w1, [sp+28]
    00297b24ldr x1, [sp+40]
    00297b28str x1, [sp+48]
    00297b2cstr x2, [sp+88]
    00297b30str x3, [sp+96]
    00297b34ldrsw x1, [sp+28]
    00297b38str w1, [sp+20]
    00297b3cldr x1, [sp+48]
    00297b40str x1, [sp+32]
    00297b44str x2, [sp+56]
    00297b48str x3, [sp+64]
    00297b4cldrsw x0, [sp+20]
    00297b50ldr x1, [sp+32]
    00297b54ldur x29, [sp-8]
    00297b58ldr x30, [sp], 112
    00297b5cret x30
    00297b60
    00297b60loc_297b60:
    00297b60stp x0, x1, [sp+8]
    00297b64mov x3, x30
    00297b68bl runtime.morestack_noctxt.abi0
    00297b6cldp x0, x1, [sp+8]
    00297b70b 0x297ac0
    00297b74
    00297b74loc_297b74:
    00297b74ldr x17, [x16]
    00297b78add x20, sp, 120
    00297b7csubs xzr, x20, x17
    00297b80b.ne 0x297ae0
    00297b84add x20, sp, 8
    00297b88str x20, [x16]
    00297b8cb 0x297ae0
    00297ac0
    00297b90
    00297b90math/big.(*byteReader).ReadRune: ; void math/big.(*byteReader).ReadRune(math/big.byteReader * p0)
    00297b90ldr x16, [x28+16]
    00297b94subs xzr, sp, x16
    00297b98b.ls 0x297c34
    00297b9cstr x30, [sp-112]!
    00297ba0stur x29, [sp-8]
    00297ba4sub x29, sp, 8
    00297ba8ldr x16, [x28+32]
    00297baccbnz x16, 0x297c48
    00297bb0
    00297bb0loc_297bb0:
    00297bb0str x0, [sp+120]
    00297bb4str wzr, [sp+20]
    00297bb8str xzr, [sp+32]
    00297bbcstp xzr, xzr, [sp+56]
    00297bc0stp xzr, xzr, [sp+72]
    00297bc4ldr x1, [sp+120]
    00297bc8ldrsb x27, [x1]
    00297bccldr x2, [x1]
    00297bd0ldrsb x27, [x2]
    00297bd4ldr x0, [x1+8]
    00297bd8ldr x1, [x2+32]
    00297bdcblr x1
    00297be0str w0, [sp+24]
    00297be4str x1, [sp+40]
    00297be8str x2, [sp+72]
    00297becstr x3, [sp+80]
    00297bf0ldrsw x1, [sp+24]
    00297bf4str w1, [sp+28]
    00297bf8ldr x1, [sp+40]
    00297bfcstr x1, [sp+48]
    00297c00str x2, [sp+88]
    00297c04str x3, [sp+96]
    00297c08ldrsw x1, [sp+28]
    00297c0cstr w1, [sp+20]
    00297c10ldr x1, [sp+48]
    00297c14str x1, [sp+32]
    00297c18str x2, [sp+56]
    00297c1cstr x3, [sp+64]
    00297c20ldrsw x0, [sp+20]
    00297c24ldr x1, [sp+32]
    00297c28ldur x29, [sp-8]
    00297c2cldr x30, [sp], 112
    00297c30ret x30
    00297c34
    00297c34loc_297c34:
    00297c34str x0, [sp+8]
    00297c38mov x3, x30
    00297c3cbl runtime.morestack_noctxt.abi0
    00297c40ldr x0, [sp+8]
    00297c44b 0x297b90
    00297c48
    00297c48loc_297c48:
    00297c48ldr x17, [x16]
    00297c4cadd x20, sp, 120
    00297c50subs xzr, x20, x17
    00297c54b.ne 0x297bb0
    00297c58add x20, sp, 8
    00297c5cstr x20, [x16]
    00297c60b 0x297bb0
    00297c64udf 0
    00297c68udf 0
    00297c6cudf 0
    00297b90
    00297c70
    00297c70math/big.byteReader.SkipSpace: ; void math/big.byteReader.SkipSpace(math/big.byteReader p0)
    00297c70ldr x16, [x28+16]
    00297c74subs xzr, sp, x16
    00297c78b.ls 0x297cb4
    00297c7cstr x30, [sp-32]!
    00297c80stur x29, [sp-8]
    00297c84sub x29, sp, 8
    00297c88ldr x16, [x28+32]
    00297c8ccbnz x16, 0x297cc8
    00297c90
    00297c90loc_297c90:
    00297c90str x0, [sp+40]
    00297c94str x1, [sp+48]
    00297c98ldrsb x27, [x0]
    00297c9cldr x2, [x0+40]
    00297ca0mov x0, x1
    00297ca4blr x2
    00297ca8ldur x29, [sp-8]
    00297cacldr x30, [sp], 32
    00297cb0ret x30
    00297cb4
    00297cb4loc_297cb4:
    00297cb4stp x0, x1, [sp+8]
    00297cb8mov x3, x30
    00297cbcbl runtime.morestack_noctxt.abi0
    00297cc0ldp x0, x1, [sp+8]
    00297cc4b 0x297c70
    00297cc8
    00297cc8loc_297cc8:
    00297cc8ldr x17, [x16]
    00297cccadd x20, sp, 40
    00297cd0subs xzr, x20, x17
    00297cd4b.ne 0x297c90
    00297cd8add x20, sp, 8
    00297cdcstr x20, [x16]
    00297ce0b 0x297c90
    00297ce4udf 0
    00297ce8udf 0
    00297cecudf 0
    00297c70
    00297cf0
    00297cf0math/big.(*byteReader).SkipSpace: ; void math/big.(*byteReader).SkipSpace(math/big.byteReader * p0)
    00297cf0ldr x16, [x28+16]
    00297cf4subs xzr, sp, x16
    00297cf8b.ls 0x297d38
    00297cfcstr x30, [sp-32]!
    00297d00stur x29, [sp-8]
    00297d04sub x29, sp, 8
    00297d08ldr x16, [x28+32]
    00297d0ccbnz x16, 0x297d4c
    00297d10
    00297d10loc_297d10:
    00297d10str x0, [sp+40]
    00297d14ldrsb x27, [x0]
    00297d18ldr x1, [x0]
    00297d1cldrsb x27, [x1]
    00297d20ldr x0, [x0+8]
    00297d24ldr x1, [x1+40]
    00297d28blr x1
    00297d2cldur x29, [sp-8]
    00297d30ldr x30, [sp], 32
    00297d34ret x30
    00297d38
    00297d38loc_297d38:
    00297d38str x0, [sp+8]
    00297d3cmov x3, x30
    00297d40bl runtime.morestack_noctxt.abi0
    00297d44ldr x0, [sp+8]
    00297d48b 0x297cf0
    00297d4c
    00297d4cloc_297d4c:
    00297d4cldr x17, [x16]
    00297d50add x20, sp, 40
    00297d54subs xzr, x20, x17
    00297d58b.ne 0x297d10
    00297d5cadd x20, sp, 8
    00297d60str x20, [x16]
    00297d64b 0x297d10
    00297d68udf 0
    00297d6cudf 0
    00297cf0
    00297d70
    00297d70math/big.(*byteReader).UnreadByte: ; void math/big.(*byteReader).UnreadByte(math/big.byteReader * r)
    00297d70ldr x16, [x28+16]
    00297d74subs xzr, sp, x16
    00297d78b.ls 0x297de4
    00297d7cstr x30, [sp-80]!
    00297d80stur x29, [sp-8]
    00297d84sub x29, sp, 8
    00297d88ldr x16, [x28+32]
    00297d8ccbnz x16, 0x297df8
    00297d90
    00297d90loc_297d90:
    00297d90str x0, [sp+88]
    00297d94stp xzr, xzr, [sp+24]
    00297d98ldr x2, [sp+88]
    00297d9ccbnz x2, 0x297da4
    00297da0b 0x297ddc
    00297da4
    00297da4loc_297da4:
    00297da4ldr x2, [sp+88]
    00297da8ldrsb x27, [x2]
    00297dacldr x0, [x2]
    00297db0ldr x1, [x2+8]
    00297db4str x0, [sp+40]
    00297db8str x1, [sp+48]
    00297dbcbl math/big.byteReader.UnreadByte
    00297dc0str x0, [sp+56]
    00297dc4str x1, [sp+64]
    00297dc8str x0, [sp+24]
    00297dccstr x1, [sp+32]
    00297dd0ldur x29, [sp-8]
    00297dd4ldr x30, [sp], 80
    00297dd8ret x30
    00297ddc
    00297ddcloc_297ddc:
    00297ddcbl runtime.panicwrap
    00297de0hint
    00297de4
    00297de4loc_297de4:
    00297de4str x0, [sp+8]
    00297de8mov x3, x30
    00297decbl runtime.morestack_noctxt.abi0
    00297df0ldr x0, [sp+8]
    00297df4b 0x297d70
    00297df8
    00297df8loc_297df8:
    00297df8ldr x17, [x16]
    00297dfcadd x20, sp, 88
    00297e00subs xzr, x20, x17
    00297e04b.ne 0x297d90
    00297e08add x20, sp, 8
    00297e0cstr x20, [x16]
    00297e10b 0x297d90
    00297e14udf 0
    00297e18udf 0
    00297e1cudf 0
    00297d70
    00297e20
    00297e20math/big.byteReader.UnreadRune: ; void math/big.byteReader.UnreadRune(math/big.byteReader p0)
    00297e20ldr x16, [x28+16]
    00297e24subs xzr, sp, x16
    00297e28b.ls 0x297e7c
    00297e2cstr x30, [sp-64]!
    00297e30stur x29, [sp-8]
    00297e34sub x29, sp, 8
    00297e38ldr x16, [x28+32]
    00297e3ccbnz x16, 0x297e90
    00297e40
    00297e40loc_297e40:
    00297e40str x0, [sp+72]
    00297e44str x1, [sp+80]
    00297e48stp xzr, xzr, [sp+24]
    00297e4cldr x1, [sp+72]
    00297e50ldrsb x27, [x1]
    00297e54ldr x0, [sp+80]
    00297e58ldr x1, [x1+56]
    00297e5cblr x1
    00297e60str x0, [sp+40]
    00297e64str x1, [sp+48]
    00297e68str x0, [sp+24]
    00297e6cstr x1, [sp+32]
    00297e70ldur x29, [sp-8]
    00297e74ldr x30, [sp], 64
    00297e78ret x30
    00297e7c
    00297e7cloc_297e7c:
    00297e7cstp x0, x1, [sp+8]
    00297e80mov x3, x30
    00297e84bl runtime.morestack_noctxt.abi0
    00297e88ldp x0, x1, [sp+8]
    00297e8cb 0x297e20
    00297e90
    00297e90loc_297e90:
    00297e90ldr x17, [x16]
    00297e94add x20, sp, 72
    00297e98subs xzr, x20, x17
    00297e9cb.ne 0x297e40
    00297ea0add x20, sp, 8
    00297ea4str x20, [x16]
    00297ea8b 0x297e40
    00297eacudf 0
    00297e20
    00297eb0
    00297eb0math/big.(*byteReader).UnreadRune: ; void math/big.(*byteReader).UnreadRune(math/big.byteReader * p0)
    00297eb0ldr x16, [x28+16]
    00297eb4subs xzr, sp, x16
    00297eb8b.ls 0x297f10
    00297ebcstr x30, [sp-64]!
    00297ec0stur x29, [sp-8]
    00297ec4sub x29, sp, 8
    00297ec8ldr x16, [x28+32]
    00297ecccbnz x16, 0x297f24
    00297ed0
    00297ed0loc_297ed0:
    00297ed0str x0, [sp+72]
    00297ed4stp xzr, xzr, [sp+24]
    00297ed8ldr x1, [sp+72]
    00297edcldrsb x27, [x1]
    00297ee0ldr x2, [x1]
    00297ee4ldrsb x27, [x2]
    00297ee8ldr x0, [x1+8]
    00297eecldr x1, [x2+56]
    00297ef0blr x1
    00297ef4str x0, [sp+40]
    00297ef8str x1, [sp+48]
    00297efcstr x0, [sp+24]
    00297f00str x1, [sp+32]
    00297f04ldur x29, [sp-8]
    00297f08ldr x30, [sp], 64
    00297f0cret x30
    00297f10
    00297f10loc_297f10:
    00297f10str x0, [sp+8]
    00297f14mov x3, x30
    00297f18bl runtime.morestack_noctxt.abi0
    00297f1cldr x0, [sp+8]
    00297f20b 0x297eb0
    00297f24
    00297f24loc_297f24:
    00297f24ldr x17, [x16]
    00297f28add x20, sp, 72
    00297f2csubs xzr, x20, x17
    00297f30b.ne 0x297ed0
    00297f34add x20, sp, 8
    00297f38str x20, [x16]
    00297f3cb 0x297ed0
    00297eb0
    00297f40
    00297f40math/big.byteReader.Width: ; void math/big.byteReader.Width(math/big.byteReader p0)
    00297f40ldr x16, [x28+16]
    00297f44subs xzr, sp, x16
    00297f48b.ls 0x297fbc
    00297f4cstr x30, [sp-64]!
    00297f50stur x29, [sp-8]
    00297f54sub x29, sp, 8
    00297f58ldr x16, [x28+32]
    00297f5ccbnz x16, 0x297fd0
    00297f60
    00297f60loc_297f60:
    00297f60str x0, [sp+72]
    00297f64str x1, [sp+80]
    00297f68str xzr, [sp+32]
    00297f6cstrb wzr, [sp+29]
    00297f70ldr x1, [sp+72]
    00297f74ldrsb x27, [x1]
    00297f78ldr x0, [sp+80]
    00297f7cldr x1, [x1+64]
    00297f80blr x1
    00297f84str x0, [sp+40]
    00297f88strb w1, [sp+30]
    00297f8cldr x1, [sp+40]
    00297f90str x1, [sp+48]
    00297f94ldrb w1, [sp+30]
    00297f98strb w1, [sp+31]
    00297f9cldr x1, [sp+48]
    00297fa0str x1, [sp+32]
    00297fa4ldrb w1, [sp+31]
    00297fa8strb w1, [sp+29]
    00297facldr x0, [sp+32]
    00297fb0ldur x29, [sp-8]
    00297fb4ldr x30, [sp], 64
    00297fb8ret x30
    00297fbc
    00297fbcloc_297fbc:
    00297fbcstp x0, x1, [sp+8]
    00297fc0mov x3, x30
    00297fc4bl runtime.morestack_noctxt.abi0
    00297fc8ldp x0, x1, [sp+8]
    00297fccb 0x297f40
    00297fd0
    00297fd0loc_297fd0:
    00297fd0ldr x17, [x16]
    00297fd4add x20, sp, 72
    00297fd8subs xzr, x20, x17
    00297fdcb.ne 0x297f60
    00297fe0add x20, sp, 8
    00297fe4str x20, [x16]
    00297fe8b 0x297f60
    00297fecudf 0
    00297f40
    00297ff0
    00297ff0math/big.(*byteReader).Width: ; void math/big.(*byteReader).Width(math/big.byteReader * p0)
    00297ff0ldr x16, [x28+16]
    00297ff4subs xzr, sp, x16
    00297ff8b.ls 0x298070
    00297ffcstr x30, [sp-64]!
    00298000stur x29, [sp-8]
    00298004sub x29, sp, 8
    00298008ldr x16, [x28+32]
    0029800ccbnz x16, 0x298084
    00298010
    00298010loc_298010:
    00298010str x0, [sp+72]
    00298014str xzr, [sp+32]
    00298018strb wzr, [sp+29]
    0029801cldr x1, [sp+72]
    00298020ldrsb x27, [x1]
    00298024ldr x2, [x1]
    00298028ldrsb x27, [x2]
    0029802cldr x0, [x1+8]
    00298030ldr x1, [x2+64]
    00298034blr x1
    00298038str x0, [sp+40]
    0029803cstrb w1, [sp+30]
    00298040ldr x1, [sp+40]
    00298044str x1, [sp+48]
    00298048ldrb w1, [sp+30]
    0029804cstrb w1, [sp+31]
    00298050ldr x1, [sp+48]
    00298054str x1, [sp+32]
    00298058ldrb w1, [sp+31]
    0029805cstrb w1, [sp+29]
    00298060ldr x0, [sp+32]
    00298064ldur x29, [sp-8]
    00298068ldr x30, [sp], 64
    0029806cret x30
    00298070
    00298070loc_298070:
    00298070str x0, [sp+8]
    00298074mov x3, x30
    00298078bl runtime.morestack_noctxt.abi0
    0029807cldr x0, [sp+8]
    00298080b 0x297ff0
    00298084
    00298084loc_298084:
    00298084ldr x17, [x16]
    00298088add x20, sp, 72
    0029808csubs xzr, x20, x17
    00298090b.ne 0x298010
    00298094add x20, sp, 8
    00298098str x20, [x16]
    0029809cb 0x298010
    00297ff0
    002980a0
    002980a0crypto/elliptic.Marshal: ; void crypto/elliptic.Marshal(crypto/elliptic.Curve curve, math/big.Int * x, math/big.Int * y)
    002980a0ldr x16, [x28+16]
    002980a4sub x17, sp, 32
    002980a8subs xzr, x17, x16
    002980acb.ls 0x29826c
    002980b0str x30, [sp-160]!
    002980b4stur x29, [sp-8]
    002980b8sub x29, sp, 8
    002980bcstr x0, [sp+168]
    002980c0str x1, [sp+176]
    002980c4str x2, [sp+184]
    002980c8str x3, [sp+192]
    002980ccstr xzr, [sp+72]
    002980d0stp xzr, xzr, [sp+80]
    002980d4ldr x3, [sp+192]
    002980d8ldr x0, [sp+168]
    002980dcldr x2, [sp+184]
    002980e0ldr x1, [sp+176]
    002980e4bl crypto/elliptic.panicIfNotOnCurve
    002980e8ldr x4, [sp+168]
    002980ecldrsb x27, [x4]
    002980f0ldr x4, [x4+48]
    002980f4ldr x0, [sp+176]
    002980f8blr x4
    002980fcstr x0, [sp+144]
    00298100ldrsb x27, [x0]
    00298104ldr x4, [x0+40]
    00298108add x5, x4, 7
    0029810csbfm x5, x5, 63, 63
    00298110add x4, x4, x5, lsr #61
    00298114add x4, x4, 7
    00298118sbfm x4, x4, 3, 63
    0029811cstr x4, [sp+40]
    00298120ubfm x4, x4, 63, 62
    00298124add x2, x4, 1
    00298128str x2, [sp+64]
    0029812cadrp x0, 0x35d000
    00298130add x0, x0, 3072
    00298134mov x1, x2
    00298138bl runtime.makeslice
    0029813cldr x1, [sp+64]
    00298140ldr x4, [sp+64]
    00298144str x0, [sp+96]
    00298148str x1, [sp+104]
    0029814cstr x4, [sp+112]
    00298150subs xzr, x1, 0
    00298154b.hi 0x29815c
    00298158b 0x298260
    0029815c
    0029815cloc_29815c:
    0029815corr x4, xzr, 4
    00298160strb w4, [x0]
    00298164ldr x2, [sp+40]
    00298168add x1, x2, 1
    0029816cstr x1, [sp+56]
    00298170ldr x4, [sp+112]
    00298174ldr x5, [sp+96]
    00298178subs xzr, x4, x1
    0029817cb.hs 0x298184
    00298180b 0x298258
    00298184
    00298184loc_298184:
    00298184subs xzr, x1, 1
    00298188b.hs 0x298190
    0029818cb 0x298250
    00298190
    00298190loc_298190:
    00298190sub x3, x4, 1
    00298194sub x4, xzr, x3
    00298198sbfm x4, x4, 63, 63
    0029819cand x4, x4, 1
    002981a0add x1, x5, x4
    002981a4str x1, [sp+120]
    002981a8str x2, [sp+128]
    002981acstr x3, [sp+136]
    002981b0ldr x0, [sp+184]
    002981b4bl math/big.(*Int).FillBytes
    002981b8ldr x4, [sp+40]
    002981bcadd x0, x4, 1
    002981c0str x0, [sp+56]
    002981c4ldr x5, [sp+40]
    002981c8ubfm x5, x5, 63, 62
    002981ccadd x1, x5, 1
    002981d0str x1, [sp+48]
    002981d4ldr x2, [sp+112]
    002981d8ldr x6, [sp+96]
    002981dcsubs xzr, x2, x1
    002981e0b.hs 0x2981e8
    002981e4b 0x29824c
    002981e8
    002981e8loc_2981e8:
    002981e8subs xzr, x1, x0
    002981ecb.hs 0x2981f4
    002981f0b 0x298248
    002981f4
    002981f4loc_2981f4:
    002981f4sub x5, x5, x4
    002981f8sub x4, x2, x4
    002981fcsub x3, x4, 1
    00298200sub x4, xzr, x3
    00298204and x4, x0, x4, asr #63
    00298208add x1, x6, x4
    0029820cstr x1, [sp+120]
    00298210str x5, [sp+128]
    00298214str x3, [sp+136]
    00298218ldr x0, [sp+192]
    0029821cmov x2, x5
    00298220bl math/big.(*Int).FillBytes
    00298224ldr x0, [sp+96]
    00298228ldr x1, [sp+104]
    0029822cldr x2, [sp+112]
    00298230str x0, [sp+72]
    00298234str x1, [sp+80]
    00298238str x2, [sp+88]
    0029823cldur x29, [sp-8]
    00298240ldr x30, [sp], 160
    00298244ret x30
    00298248
    00298248loc_298248:
    00298248bl runtime.panicSliceB
    0029824c
    0029824cloc_29824c:
    0029824cbl runtime.panicSliceAcap
    00298250
    00298250loc_298250:
    00298250orr x0, xzr, 1
    00298254bl runtime.panicSliceB
    00298258
    00298258loc_298258:
    00298258mov x2, x4
    0029825cbl runtime.panicSliceAcap
    00298260
    00298260loc_298260:
    00298260mov x0, xzr
    00298264bl runtime.panicIndex
    00298268hint
    0029826c
    0029826cloc_29826c:
    0029826cstp x0, x1, [sp+8]
    00298270stp x2, x3, [sp+24]
    00298274mov x3, x30
    00298278bl runtime.morestack_noctxt.abi0
    0029827cldp x0, x1, [sp+8]
    00298280ldp x2, x3, [sp+24]
    00298284b 0x2980a0
    00298288udf 0
    0029828cudf 0
    002980a0
    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
    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
    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
    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
    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