blake2bAVX2_amd64.s 83 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559
  1. // Code generated by command: go run blake2bAVX2_amd64_asm.go -out ../../blake2bAVX2_amd64.s -pkg blake2b. DO NOT EDIT.
  2. //go:build amd64 && gc && !purego
  3. #include "textflag.h"
  4. // func hashBlocksAVX2(h *[8]uint64, c *[2]uint64, flag uint64, blocks []byte)
  5. // Requires: AVX, AVX2
  6. TEXT ·hashBlocksAVX2(SB), NOSPLIT, $320-48
  7. MOVQ h+0(FP), AX
  8. MOVQ c+8(FP), BX
  9. MOVQ flag+16(FP), CX
  10. MOVQ blocks_base+24(FP), SI
  11. MOVQ blocks_len+32(FP), DI
  12. MOVQ SP, DX
  13. ADDQ $+31, DX
  14. ANDQ $-32, DX
  15. MOVQ CX, 16(DX)
  16. XORQ CX, CX
  17. MOVQ CX, 24(DX)
  18. VMOVDQU ·AVX2_c40<>+0(SB), Y4
  19. VMOVDQU ·AVX2_c48<>+0(SB), Y5
  20. VMOVDQU (AX), Y8
  21. VMOVDQU 32(AX), Y9
  22. VMOVDQU ·AVX2_iv0<>+0(SB), Y6
  23. VMOVDQU ·AVX2_iv1<>+0(SB), Y7
  24. MOVQ (BX), R8
  25. MOVQ 8(BX), R9
  26. MOVQ R9, 8(DX)
  27. loop:
  28. ADDQ $0x80, R8
  29. MOVQ R8, (DX)
  30. CMPQ R8, $0x80
  31. JGE noinc
  32. INCQ R9
  33. MOVQ R9, 8(DX)
  34. noinc:
  35. VMOVDQA Y8, Y0
  36. VMOVDQA Y9, Y1
  37. VMOVDQA Y6, Y2
  38. VPXOR (DX), Y7, Y3
  39. BYTE $0xc5
  40. BYTE $0x7a
  41. BYTE $0x7e
  42. BYTE $0x26
  43. BYTE $0xc5
  44. BYTE $0x7a
  45. BYTE $0x7e
  46. BYTE $0x5e
  47. BYTE $0x20
  48. BYTE $0xc4
  49. BYTE $0x63
  50. BYTE $0x99
  51. BYTE $0x22
  52. BYTE $0x66
  53. BYTE $0x10
  54. BYTE $0x01
  55. BYTE $0xc4
  56. BYTE $0x63
  57. BYTE $0xa1
  58. BYTE $0x22
  59. BYTE $0x5e
  60. BYTE $0x30
  61. BYTE $0x01
  62. VINSERTI128 $0x01, X11, Y12, Y12
  63. BYTE $0xc5
  64. BYTE $0x7a
  65. BYTE $0x7e
  66. BYTE $0x6e
  67. BYTE $0x08
  68. BYTE $0xc5
  69. BYTE $0x7a
  70. BYTE $0x7e
  71. BYTE $0x5e
  72. BYTE $0x28
  73. BYTE $0xc4
  74. BYTE $0x63
  75. BYTE $0x91
  76. BYTE $0x22
  77. BYTE $0x6e
  78. BYTE $0x18
  79. BYTE $0x01
  80. BYTE $0xc4
  81. BYTE $0x63
  82. BYTE $0xa1
  83. BYTE $0x22
  84. BYTE $0x5e
  85. BYTE $0x38
  86. BYTE $0x01
  87. VINSERTI128 $0x01, X11, Y13, Y13
  88. BYTE $0xc5
  89. BYTE $0x7a
  90. BYTE $0x7e
  91. BYTE $0x76
  92. BYTE $0x40
  93. BYTE $0xc5
  94. BYTE $0x7a
  95. BYTE $0x7e
  96. BYTE $0x5e
  97. BYTE $0x60
  98. BYTE $0xc4
  99. BYTE $0x63
  100. BYTE $0x89
  101. BYTE $0x22
  102. BYTE $0x76
  103. BYTE $0x50
  104. BYTE $0x01
  105. BYTE $0xc4
  106. BYTE $0x63
  107. BYTE $0xa1
  108. BYTE $0x22
  109. BYTE $0x5e
  110. BYTE $0x70
  111. BYTE $0x01
  112. VINSERTI128 $0x01, X11, Y14, Y14
  113. BYTE $0xc5
  114. BYTE $0x7a
  115. BYTE $0x7e
  116. BYTE $0x7e
  117. BYTE $0x48
  118. BYTE $0xc5
  119. BYTE $0x7a
  120. BYTE $0x7e
  121. BYTE $0x5e
  122. BYTE $0x68
  123. BYTE $0xc4
  124. BYTE $0x63
  125. BYTE $0x81
  126. BYTE $0x22
  127. BYTE $0x7e
  128. BYTE $0x58
  129. BYTE $0x01
  130. BYTE $0xc4
  131. BYTE $0x63
  132. BYTE $0xa1
  133. BYTE $0x22
  134. BYTE $0x5e
  135. BYTE $0x78
  136. BYTE $0x01
  137. VINSERTI128 $0x01, X11, Y15, Y15
  138. VMOVDQA Y12, 32(DX)
  139. VMOVDQA Y13, 64(DX)
  140. VMOVDQA Y14, 96(DX)
  141. VMOVDQA Y15, 128(DX)
  142. VPADDQ Y12, Y0, Y0
  143. VPADDQ Y1, Y0, Y0
  144. VPXOR Y0, Y3, Y3
  145. VPSHUFD $-79, Y3, Y3
  146. VPADDQ Y3, Y2, Y2
  147. VPXOR Y2, Y1, Y1
  148. VPSHUFB Y4, Y1, Y1
  149. VPADDQ Y13, Y0, Y0
  150. VPADDQ Y1, Y0, Y0
  151. VPXOR Y0, Y3, Y3
  152. VPSHUFB Y5, Y3, Y3
  153. VPADDQ Y3, Y2, Y2
  154. VPXOR Y2, Y1, Y1
  155. VPADDQ Y1, Y1, Y10
  156. VPSRLQ $0x3f, Y1, Y1
  157. VPXOR Y10, Y1, Y1
  158. BYTE $0xc4
  159. BYTE $0xe3
  160. BYTE $0xfd
  161. BYTE $0x00
  162. BYTE $0xc9
  163. BYTE $0x39
  164. BYTE $0xc4
  165. BYTE $0xe3
  166. BYTE $0xfd
  167. BYTE $0x00
  168. BYTE $0xd2
  169. BYTE $0x4e
  170. BYTE $0xc4
  171. BYTE $0xe3
  172. BYTE $0xfd
  173. BYTE $0x00
  174. BYTE $0xdb
  175. BYTE $0x93
  176. VPADDQ Y14, Y0, Y0
  177. VPADDQ Y1, Y0, Y0
  178. VPXOR Y0, Y3, Y3
  179. VPSHUFD $-79, Y3, Y3
  180. VPADDQ Y3, Y2, Y2
  181. VPXOR Y2, Y1, Y1
  182. VPSHUFB Y4, Y1, Y1
  183. VPADDQ Y15, Y0, Y0
  184. VPADDQ Y1, Y0, Y0
  185. VPXOR Y0, Y3, Y3
  186. VPSHUFB Y5, Y3, Y3
  187. VPADDQ Y3, Y2, Y2
  188. VPXOR Y2, Y1, Y1
  189. VPADDQ Y1, Y1, Y10
  190. VPSRLQ $0x3f, Y1, Y1
  191. VPXOR Y10, Y1, Y1
  192. BYTE $0xc4
  193. BYTE $0xe3
  194. BYTE $0xfd
  195. BYTE $0x00
  196. BYTE $0xdb
  197. BYTE $0x39
  198. BYTE $0xc4
  199. BYTE $0xe3
  200. BYTE $0xfd
  201. BYTE $0x00
  202. BYTE $0xd2
  203. BYTE $0x4e
  204. BYTE $0xc4
  205. BYTE $0xe3
  206. BYTE $0xfd
  207. BYTE $0x00
  208. BYTE $0xc9
  209. BYTE $0x93
  210. BYTE $0xc5
  211. BYTE $0x7a
  212. BYTE $0x7e
  213. BYTE $0x66
  214. BYTE $0x70
  215. BYTE $0xc5
  216. BYTE $0x7a
  217. BYTE $0x7e
  218. BYTE $0x5e
  219. BYTE $0x48
  220. BYTE $0xc4
  221. BYTE $0x63
  222. BYTE $0x99
  223. BYTE $0x22
  224. BYTE $0x66
  225. BYTE $0x20
  226. BYTE $0x01
  227. BYTE $0xc4
  228. BYTE $0x63
  229. BYTE $0xa1
  230. BYTE $0x22
  231. BYTE $0x5e
  232. BYTE $0x68
  233. BYTE $0x01
  234. VINSERTI128 $0x01, X11, Y12, Y12
  235. BYTE $0xc5
  236. BYTE $0x7a
  237. BYTE $0x7e
  238. BYTE $0x6e
  239. BYTE $0x50
  240. BYTE $0xc5
  241. BYTE $0x7a
  242. BYTE $0x7e
  243. BYTE $0x5e
  244. BYTE $0x78
  245. BYTE $0xc4
  246. BYTE $0x63
  247. BYTE $0x91
  248. BYTE $0x22
  249. BYTE $0x6e
  250. BYTE $0x40
  251. BYTE $0x01
  252. BYTE $0xc4
  253. BYTE $0x63
  254. BYTE $0xa1
  255. BYTE $0x22
  256. BYTE $0x5e
  257. BYTE $0x30
  258. BYTE $0x01
  259. VINSERTI128 $0x01, X11, Y13, Y13
  260. BYTE $0xc5
  261. BYTE $0x7a
  262. BYTE $0x7e
  263. BYTE $0x5e
  264. BYTE $0x58
  265. VPSHUFD $0x4e, (SI), X14
  266. BYTE $0xc4
  267. BYTE $0x63
  268. BYTE $0xa1
  269. BYTE $0x22
  270. BYTE $0x5e
  271. BYTE $0x28
  272. BYTE $0x01
  273. VINSERTI128 $0x01, X11, Y14, Y14
  274. BYTE $0xc5
  275. BYTE $0x7a
  276. BYTE $0x7e
  277. BYTE $0x7e
  278. BYTE $0x60
  279. BYTE $0xc5
  280. BYTE $0x7a
  281. BYTE $0x7e
  282. BYTE $0x5e
  283. BYTE $0x38
  284. BYTE $0xc4
  285. BYTE $0x63
  286. BYTE $0x81
  287. BYTE $0x22
  288. BYTE $0x7e
  289. BYTE $0x10
  290. BYTE $0x01
  291. BYTE $0xc4
  292. BYTE $0x63
  293. BYTE $0xa1
  294. BYTE $0x22
  295. BYTE $0x5e
  296. BYTE $0x18
  297. BYTE $0x01
  298. VINSERTI128 $0x01, X11, Y15, Y15
  299. VMOVDQA Y12, 160(DX)
  300. VMOVDQA Y13, 192(DX)
  301. VMOVDQA Y14, 224(DX)
  302. VMOVDQA Y15, 256(DX)
  303. VPADDQ Y12, Y0, Y0
  304. VPADDQ Y1, Y0, Y0
  305. VPXOR Y0, Y3, Y3
  306. VPSHUFD $-79, Y3, Y3
  307. VPADDQ Y3, Y2, Y2
  308. VPXOR Y2, Y1, Y1
  309. VPSHUFB Y4, Y1, Y1
  310. VPADDQ Y13, Y0, Y0
  311. VPADDQ Y1, Y0, Y0
  312. VPXOR Y0, Y3, Y3
  313. VPSHUFB Y5, Y3, Y3
  314. VPADDQ Y3, Y2, Y2
  315. VPXOR Y2, Y1, Y1
  316. VPADDQ Y1, Y1, Y10
  317. VPSRLQ $0x3f, Y1, Y1
  318. VPXOR Y10, Y1, Y1
  319. BYTE $0xc4
  320. BYTE $0xe3
  321. BYTE $0xfd
  322. BYTE $0x00
  323. BYTE $0xc9
  324. BYTE $0x39
  325. BYTE $0xc4
  326. BYTE $0xe3
  327. BYTE $0xfd
  328. BYTE $0x00
  329. BYTE $0xd2
  330. BYTE $0x4e
  331. BYTE $0xc4
  332. BYTE $0xe3
  333. BYTE $0xfd
  334. BYTE $0x00
  335. BYTE $0xdb
  336. BYTE $0x93
  337. VPADDQ Y14, Y0, Y0
  338. VPADDQ Y1, Y0, Y0
  339. VPXOR Y0, Y3, Y3
  340. VPSHUFD $-79, Y3, Y3
  341. VPADDQ Y3, Y2, Y2
  342. VPXOR Y2, Y1, Y1
  343. VPSHUFB Y4, Y1, Y1
  344. VPADDQ Y15, Y0, Y0
  345. VPADDQ Y1, Y0, Y0
  346. VPXOR Y0, Y3, Y3
  347. VPSHUFB Y5, Y3, Y3
  348. VPADDQ Y3, Y2, Y2
  349. VPXOR Y2, Y1, Y1
  350. VPADDQ Y1, Y1, Y10
  351. VPSRLQ $0x3f, Y1, Y1
  352. VPXOR Y10, Y1, Y1
  353. BYTE $0xc4
  354. BYTE $0xe3
  355. BYTE $0xfd
  356. BYTE $0x00
  357. BYTE $0xdb
  358. BYTE $0x39
  359. BYTE $0xc4
  360. BYTE $0xe3
  361. BYTE $0xfd
  362. BYTE $0x00
  363. BYTE $0xd2
  364. BYTE $0x4e
  365. BYTE $0xc4
  366. BYTE $0xe3
  367. BYTE $0xfd
  368. BYTE $0x00
  369. BYTE $0xc9
  370. BYTE $0x93
  371. BYTE $0xc5
  372. BYTE $0x7a
  373. BYTE $0x7e
  374. BYTE $0x5e
  375. BYTE $0x28
  376. VMOVDQU 88(SI), X12
  377. BYTE $0xc4
  378. BYTE $0x63
  379. BYTE $0xa1
  380. BYTE $0x22
  381. BYTE $0x5e
  382. BYTE $0x78
  383. BYTE $0x01
  384. VINSERTI128 $0x01, X11, Y12, Y12
  385. BYTE $0xc5
  386. BYTE $0x7a
  387. BYTE $0x7e
  388. BYTE $0x6e
  389. BYTE $0x40
  390. BYTE $0xc5
  391. BYTE $0x7a
  392. BYTE $0x7e
  393. BYTE $0x5e
  394. BYTE $0x10
  395. BYTE $0xc4
  396. BYTE $0x63
  397. BYTE $0x91
  398. BYTE $0x22
  399. BYTE $0x2e
  400. BYTE $0x01
  401. BYTE $0xc4
  402. BYTE $0x63
  403. BYTE $0xa1
  404. BYTE $0x22
  405. BYTE $0x5e
  406. BYTE $0x68
  407. BYTE $0x01
  408. VINSERTI128 $0x01, X11, Y13, Y13
  409. BYTE $0xc5
  410. BYTE $0x7a
  411. BYTE $0x7e
  412. BYTE $0x76
  413. BYTE $0x50
  414. BYTE $0xc5
  415. BYTE $0x7a
  416. BYTE $0x7e
  417. BYTE $0x5e
  418. BYTE $0x38
  419. BYTE $0xc4
  420. BYTE $0x63
  421. BYTE $0x89
  422. BYTE $0x22
  423. BYTE $0x76
  424. BYTE $0x18
  425. BYTE $0x01
  426. BYTE $0xc4
  427. BYTE $0x63
  428. BYTE $0xa1
  429. BYTE $0x22
  430. BYTE $0x5e
  431. BYTE $0x48
  432. BYTE $0x01
  433. VINSERTI128 $0x01, X11, Y14, Y14
  434. BYTE $0xc5
  435. BYTE $0x7a
  436. BYTE $0x7e
  437. BYTE $0x7e
  438. BYTE $0x70
  439. BYTE $0xc5
  440. BYTE $0x7a
  441. BYTE $0x7e
  442. BYTE $0x5e
  443. BYTE $0x08
  444. BYTE $0xc4
  445. BYTE $0x63
  446. BYTE $0x81
  447. BYTE $0x22
  448. BYTE $0x7e
  449. BYTE $0x30
  450. BYTE $0x01
  451. BYTE $0xc4
  452. BYTE $0x63
  453. BYTE $0xa1
  454. BYTE $0x22
  455. BYTE $0x5e
  456. BYTE $0x20
  457. BYTE $0x01
  458. VINSERTI128 $0x01, X11, Y15, Y15
  459. VPADDQ Y12, Y0, Y0
  460. VPADDQ Y1, Y0, Y0
  461. VPXOR Y0, Y3, Y3
  462. VPSHUFD $-79, Y3, Y3
  463. VPADDQ Y3, Y2, Y2
  464. VPXOR Y2, Y1, Y1
  465. VPSHUFB Y4, Y1, Y1
  466. VPADDQ Y13, Y0, Y0
  467. VPADDQ Y1, Y0, Y0
  468. VPXOR Y0, Y3, Y3
  469. VPSHUFB Y5, Y3, Y3
  470. VPADDQ Y3, Y2, Y2
  471. VPXOR Y2, Y1, Y1
  472. VPADDQ Y1, Y1, Y10
  473. VPSRLQ $0x3f, Y1, Y1
  474. VPXOR Y10, Y1, Y1
  475. BYTE $0xc4
  476. BYTE $0xe3
  477. BYTE $0xfd
  478. BYTE $0x00
  479. BYTE $0xc9
  480. BYTE $0x39
  481. BYTE $0xc4
  482. BYTE $0xe3
  483. BYTE $0xfd
  484. BYTE $0x00
  485. BYTE $0xd2
  486. BYTE $0x4e
  487. BYTE $0xc4
  488. BYTE $0xe3
  489. BYTE $0xfd
  490. BYTE $0x00
  491. BYTE $0xdb
  492. BYTE $0x93
  493. VPADDQ Y14, Y0, Y0
  494. VPADDQ Y1, Y0, Y0
  495. VPXOR Y0, Y3, Y3
  496. VPSHUFD $-79, Y3, Y3
  497. VPADDQ Y3, Y2, Y2
  498. VPXOR Y2, Y1, Y1
  499. VPSHUFB Y4, Y1, Y1
  500. VPADDQ Y15, Y0, Y0
  501. VPADDQ Y1, Y0, Y0
  502. VPXOR Y0, Y3, Y3
  503. VPSHUFB Y5, Y3, Y3
  504. VPADDQ Y3, Y2, Y2
  505. VPXOR Y2, Y1, Y1
  506. VPADDQ Y1, Y1, Y10
  507. VPSRLQ $0x3f, Y1, Y1
  508. VPXOR Y10, Y1, Y1
  509. BYTE $0xc4
  510. BYTE $0xe3
  511. BYTE $0xfd
  512. BYTE $0x00
  513. BYTE $0xdb
  514. BYTE $0x39
  515. BYTE $0xc4
  516. BYTE $0xe3
  517. BYTE $0xfd
  518. BYTE $0x00
  519. BYTE $0xd2
  520. BYTE $0x4e
  521. BYTE $0xc4
  522. BYTE $0xe3
  523. BYTE $0xfd
  524. BYTE $0x00
  525. BYTE $0xc9
  526. BYTE $0x93
  527. BYTE $0xc5
  528. BYTE $0x7a
  529. BYTE $0x7e
  530. BYTE $0x66
  531. BYTE $0x38
  532. BYTE $0xc5
  533. BYTE $0x7a
  534. BYTE $0x7e
  535. BYTE $0x5e
  536. BYTE $0x68
  537. BYTE $0xc4
  538. BYTE $0x63
  539. BYTE $0x99
  540. BYTE $0x22
  541. BYTE $0x66
  542. BYTE $0x18
  543. BYTE $0x01
  544. BYTE $0xc4
  545. BYTE $0x63
  546. BYTE $0xa1
  547. BYTE $0x22
  548. BYTE $0x5e
  549. BYTE $0x58
  550. BYTE $0x01
  551. VINSERTI128 $0x01, X11, Y12, Y12
  552. BYTE $0xc5
  553. BYTE $0x7a
  554. BYTE $0x7e
  555. BYTE $0x6e
  556. BYTE $0x48
  557. BYTE $0xc5
  558. BYTE $0x7a
  559. BYTE $0x7e
  560. BYTE $0x5e
  561. BYTE $0x60
  562. BYTE $0xc4
  563. BYTE $0x63
  564. BYTE $0x91
  565. BYTE $0x22
  566. BYTE $0x6e
  567. BYTE $0x08
  568. BYTE $0x01
  569. BYTE $0xc4
  570. BYTE $0x63
  571. BYTE $0xa1
  572. BYTE $0x22
  573. BYTE $0x5e
  574. BYTE $0x70
  575. BYTE $0x01
  576. VINSERTI128 $0x01, X11, Y13, Y13
  577. BYTE $0xc5
  578. BYTE $0x7a
  579. BYTE $0x7e
  580. BYTE $0x76
  581. BYTE $0x10
  582. BYTE $0xc5
  583. BYTE $0x7a
  584. BYTE $0x7e
  585. BYTE $0x5e
  586. BYTE $0x20
  587. BYTE $0xc4
  588. BYTE $0x63
  589. BYTE $0x89
  590. BYTE $0x22
  591. BYTE $0x76
  592. BYTE $0x28
  593. BYTE $0x01
  594. BYTE $0xc4
  595. BYTE $0x63
  596. BYTE $0xa1
  597. BYTE $0x22
  598. BYTE $0x5e
  599. BYTE $0x78
  600. BYTE $0x01
  601. VINSERTI128 $0x01, X11, Y14, Y14
  602. BYTE $0xc5
  603. BYTE $0x7a
  604. BYTE $0x7e
  605. BYTE $0x7e
  606. BYTE $0x30
  607. BYTE $0xc5
  608. BYTE $0x7a
  609. BYTE $0x7e
  610. BYTE $0x1e
  611. BYTE $0xc4
  612. BYTE $0x63
  613. BYTE $0x81
  614. BYTE $0x22
  615. BYTE $0x7e
  616. BYTE $0x50
  617. BYTE $0x01
  618. BYTE $0xc4
  619. BYTE $0x63
  620. BYTE $0xa1
  621. BYTE $0x22
  622. BYTE $0x5e
  623. BYTE $0x40
  624. BYTE $0x01
  625. VINSERTI128 $0x01, X11, Y15, Y15
  626. VPADDQ Y12, Y0, Y0
  627. VPADDQ Y1, Y0, Y0
  628. VPXOR Y0, Y3, Y3
  629. VPSHUFD $-79, Y3, Y3
  630. VPADDQ Y3, Y2, Y2
  631. VPXOR Y2, Y1, Y1
  632. VPSHUFB Y4, Y1, Y1
  633. VPADDQ Y13, Y0, Y0
  634. VPADDQ Y1, Y0, Y0
  635. VPXOR Y0, Y3, Y3
  636. VPSHUFB Y5, Y3, Y3
  637. VPADDQ Y3, Y2, Y2
  638. VPXOR Y2, Y1, Y1
  639. VPADDQ Y1, Y1, Y10
  640. VPSRLQ $0x3f, Y1, Y1
  641. VPXOR Y10, Y1, Y1
  642. BYTE $0xc4
  643. BYTE $0xe3
  644. BYTE $0xfd
  645. BYTE $0x00
  646. BYTE $0xc9
  647. BYTE $0x39
  648. BYTE $0xc4
  649. BYTE $0xe3
  650. BYTE $0xfd
  651. BYTE $0x00
  652. BYTE $0xd2
  653. BYTE $0x4e
  654. BYTE $0xc4
  655. BYTE $0xe3
  656. BYTE $0xfd
  657. BYTE $0x00
  658. BYTE $0xdb
  659. BYTE $0x93
  660. VPADDQ Y14, Y0, Y0
  661. VPADDQ Y1, Y0, Y0
  662. VPXOR Y0, Y3, Y3
  663. VPSHUFD $-79, Y3, Y3
  664. VPADDQ Y3, Y2, Y2
  665. VPXOR Y2, Y1, Y1
  666. VPSHUFB Y4, Y1, Y1
  667. VPADDQ Y15, Y0, Y0
  668. VPADDQ Y1, Y0, Y0
  669. VPXOR Y0, Y3, Y3
  670. VPSHUFB Y5, Y3, Y3
  671. VPADDQ Y3, Y2, Y2
  672. VPXOR Y2, Y1, Y1
  673. VPADDQ Y1, Y1, Y10
  674. VPSRLQ $0x3f, Y1, Y1
  675. VPXOR Y10, Y1, Y1
  676. BYTE $0xc4
  677. BYTE $0xe3
  678. BYTE $0xfd
  679. BYTE $0x00
  680. BYTE $0xdb
  681. BYTE $0x39
  682. BYTE $0xc4
  683. BYTE $0xe3
  684. BYTE $0xfd
  685. BYTE $0x00
  686. BYTE $0xd2
  687. BYTE $0x4e
  688. BYTE $0xc4
  689. BYTE $0xe3
  690. BYTE $0xfd
  691. BYTE $0x00
  692. BYTE $0xc9
  693. BYTE $0x93
  694. BYTE $0xc5
  695. BYTE $0x7a
  696. BYTE $0x7e
  697. BYTE $0x66
  698. BYTE $0x48
  699. BYTE $0xc5
  700. BYTE $0x7a
  701. BYTE $0x7e
  702. BYTE $0x5e
  703. BYTE $0x10
  704. BYTE $0xc4
  705. BYTE $0x63
  706. BYTE $0x99
  707. BYTE $0x22
  708. BYTE $0x66
  709. BYTE $0x28
  710. BYTE $0x01
  711. BYTE $0xc4
  712. BYTE $0x63
  713. BYTE $0xa1
  714. BYTE $0x22
  715. BYTE $0x5e
  716. BYTE $0x50
  717. BYTE $0x01
  718. VINSERTI128 $0x01, X11, Y12, Y12
  719. BYTE $0xc5
  720. BYTE $0x7a
  721. BYTE $0x7e
  722. BYTE $0x2e
  723. BYTE $0xc5
  724. BYTE $0x7a
  725. BYTE $0x7e
  726. BYTE $0x5e
  727. BYTE $0x20
  728. BYTE $0xc4
  729. BYTE $0x63
  730. BYTE $0x91
  731. BYTE $0x22
  732. BYTE $0x6e
  733. BYTE $0x38
  734. BYTE $0x01
  735. BYTE $0xc4
  736. BYTE $0x63
  737. BYTE $0xa1
  738. BYTE $0x22
  739. BYTE $0x5e
  740. BYTE $0x78
  741. BYTE $0x01
  742. VINSERTI128 $0x01, X11, Y13, Y13
  743. BYTE $0xc5
  744. BYTE $0x7a
  745. BYTE $0x7e
  746. BYTE $0x76
  747. BYTE $0x70
  748. BYTE $0xc5
  749. BYTE $0x7a
  750. BYTE $0x7e
  751. BYTE $0x5e
  752. BYTE $0x30
  753. BYTE $0xc4
  754. BYTE $0x63
  755. BYTE $0x89
  756. BYTE $0x22
  757. BYTE $0x76
  758. BYTE $0x58
  759. BYTE $0x01
  760. BYTE $0xc4
  761. BYTE $0x63
  762. BYTE $0xa1
  763. BYTE $0x22
  764. BYTE $0x5e
  765. BYTE $0x18
  766. BYTE $0x01
  767. VINSERTI128 $0x01, X11, Y14, Y14
  768. BYTE $0xc5
  769. BYTE $0x7a
  770. BYTE $0x7e
  771. BYTE $0x7e
  772. BYTE $0x08
  773. BYTE $0xc5
  774. BYTE $0x7a
  775. BYTE $0x7e
  776. BYTE $0x5e
  777. BYTE $0x40
  778. BYTE $0xc4
  779. BYTE $0x63
  780. BYTE $0x81
  781. BYTE $0x22
  782. BYTE $0x7e
  783. BYTE $0x60
  784. BYTE $0x01
  785. BYTE $0xc4
  786. BYTE $0x63
  787. BYTE $0xa1
  788. BYTE $0x22
  789. BYTE $0x5e
  790. BYTE $0x68
  791. BYTE $0x01
  792. VINSERTI128 $0x01, X11, Y15, Y15
  793. VPADDQ Y12, Y0, Y0
  794. VPADDQ Y1, Y0, Y0
  795. VPXOR Y0, Y3, Y3
  796. VPSHUFD $-79, Y3, Y3
  797. VPADDQ Y3, Y2, Y2
  798. VPXOR Y2, Y1, Y1
  799. VPSHUFB Y4, Y1, Y1
  800. VPADDQ Y13, Y0, Y0
  801. VPADDQ Y1, Y0, Y0
  802. VPXOR Y0, Y3, Y3
  803. VPSHUFB Y5, Y3, Y3
  804. VPADDQ Y3, Y2, Y2
  805. VPXOR Y2, Y1, Y1
  806. VPADDQ Y1, Y1, Y10
  807. VPSRLQ $0x3f, Y1, Y1
  808. VPXOR Y10, Y1, Y1
  809. BYTE $0xc4
  810. BYTE $0xe3
  811. BYTE $0xfd
  812. BYTE $0x00
  813. BYTE $0xc9
  814. BYTE $0x39
  815. BYTE $0xc4
  816. BYTE $0xe3
  817. BYTE $0xfd
  818. BYTE $0x00
  819. BYTE $0xd2
  820. BYTE $0x4e
  821. BYTE $0xc4
  822. BYTE $0xe3
  823. BYTE $0xfd
  824. BYTE $0x00
  825. BYTE $0xdb
  826. BYTE $0x93
  827. VPADDQ Y14, Y0, Y0
  828. VPADDQ Y1, Y0, Y0
  829. VPXOR Y0, Y3, Y3
  830. VPSHUFD $-79, Y3, Y3
  831. VPADDQ Y3, Y2, Y2
  832. VPXOR Y2, Y1, Y1
  833. VPSHUFB Y4, Y1, Y1
  834. VPADDQ Y15, Y0, Y0
  835. VPADDQ Y1, Y0, Y0
  836. VPXOR Y0, Y3, Y3
  837. VPSHUFB Y5, Y3, Y3
  838. VPADDQ Y3, Y2, Y2
  839. VPXOR Y2, Y1, Y1
  840. VPADDQ Y1, Y1, Y10
  841. VPSRLQ $0x3f, Y1, Y1
  842. VPXOR Y10, Y1, Y1
  843. BYTE $0xc4
  844. BYTE $0xe3
  845. BYTE $0xfd
  846. BYTE $0x00
  847. BYTE $0xdb
  848. BYTE $0x39
  849. BYTE $0xc4
  850. BYTE $0xe3
  851. BYTE $0xfd
  852. BYTE $0x00
  853. BYTE $0xd2
  854. BYTE $0x4e
  855. BYTE $0xc4
  856. BYTE $0xe3
  857. BYTE $0xfd
  858. BYTE $0x00
  859. BYTE $0xc9
  860. BYTE $0x93
  861. BYTE $0xc5
  862. BYTE $0x7a
  863. BYTE $0x7e
  864. BYTE $0x66
  865. BYTE $0x10
  866. BYTE $0xc5
  867. BYTE $0x7a
  868. BYTE $0x7e
  869. BYTE $0x1e
  870. BYTE $0xc4
  871. BYTE $0x63
  872. BYTE $0x99
  873. BYTE $0x22
  874. BYTE $0x66
  875. BYTE $0x30
  876. BYTE $0x01
  877. BYTE $0xc4
  878. BYTE $0x63
  879. BYTE $0xa1
  880. BYTE $0x22
  881. BYTE $0x5e
  882. BYTE $0x40
  883. BYTE $0x01
  884. VINSERTI128 $0x01, X11, Y12, Y12
  885. BYTE $0xc5
  886. BYTE $0x7a
  887. BYTE $0x7e
  888. BYTE $0x6e
  889. BYTE $0x60
  890. BYTE $0xc5
  891. BYTE $0x7a
  892. BYTE $0x7e
  893. BYTE $0x5e
  894. BYTE $0x58
  895. BYTE $0xc4
  896. BYTE $0x63
  897. BYTE $0x91
  898. BYTE $0x22
  899. BYTE $0x6e
  900. BYTE $0x50
  901. BYTE $0x01
  902. BYTE $0xc4
  903. BYTE $0x63
  904. BYTE $0xa1
  905. BYTE $0x22
  906. BYTE $0x5e
  907. BYTE $0x18
  908. BYTE $0x01
  909. VINSERTI128 $0x01, X11, Y13, Y13
  910. BYTE $0xc5
  911. BYTE $0x7a
  912. BYTE $0x7e
  913. BYTE $0x76
  914. BYTE $0x20
  915. BYTE $0xc5
  916. BYTE $0x7a
  917. BYTE $0x7e
  918. BYTE $0x5e
  919. BYTE $0x78
  920. BYTE $0xc4
  921. BYTE $0x63
  922. BYTE $0x89
  923. BYTE $0x22
  924. BYTE $0x76
  925. BYTE $0x38
  926. BYTE $0x01
  927. BYTE $0xc4
  928. BYTE $0x63
  929. BYTE $0xa1
  930. BYTE $0x22
  931. BYTE $0x5e
  932. BYTE $0x08
  933. BYTE $0x01
  934. VINSERTI128 $0x01, X11, Y14, Y14
  935. BYTE $0xc5
  936. BYTE $0x7a
  937. BYTE $0x7e
  938. BYTE $0x7e
  939. BYTE $0x68
  940. BYTE $0xc5
  941. BYTE $0x7a
  942. BYTE $0x7e
  943. BYTE $0x5e
  944. BYTE $0x70
  945. BYTE $0xc4
  946. BYTE $0x63
  947. BYTE $0x81
  948. BYTE $0x22
  949. BYTE $0x7e
  950. BYTE $0x28
  951. BYTE $0x01
  952. BYTE $0xc4
  953. BYTE $0x63
  954. BYTE $0xa1
  955. BYTE $0x22
  956. BYTE $0x5e
  957. BYTE $0x48
  958. BYTE $0x01
  959. VINSERTI128 $0x01, X11, Y15, Y15
  960. VPADDQ Y12, Y0, Y0
  961. VPADDQ Y1, Y0, Y0
  962. VPXOR Y0, Y3, Y3
  963. VPSHUFD $-79, Y3, Y3
  964. VPADDQ Y3, Y2, Y2
  965. VPXOR Y2, Y1, Y1
  966. VPSHUFB Y4, Y1, Y1
  967. VPADDQ Y13, Y0, Y0
  968. VPADDQ Y1, Y0, Y0
  969. VPXOR Y0, Y3, Y3
  970. VPSHUFB Y5, Y3, Y3
  971. VPADDQ Y3, Y2, Y2
  972. VPXOR Y2, Y1, Y1
  973. VPADDQ Y1, Y1, Y10
  974. VPSRLQ $0x3f, Y1, Y1
  975. VPXOR Y10, Y1, Y1
  976. BYTE $0xc4
  977. BYTE $0xe3
  978. BYTE $0xfd
  979. BYTE $0x00
  980. BYTE $0xc9
  981. BYTE $0x39
  982. BYTE $0xc4
  983. BYTE $0xe3
  984. BYTE $0xfd
  985. BYTE $0x00
  986. BYTE $0xd2
  987. BYTE $0x4e
  988. BYTE $0xc4
  989. BYTE $0xe3
  990. BYTE $0xfd
  991. BYTE $0x00
  992. BYTE $0xdb
  993. BYTE $0x93
  994. VPADDQ Y14, Y0, Y0
  995. VPADDQ Y1, Y0, Y0
  996. VPXOR Y0, Y3, Y3
  997. VPSHUFD $-79, Y3, Y3
  998. VPADDQ Y3, Y2, Y2
  999. VPXOR Y2, Y1, Y1
  1000. VPSHUFB Y4, Y1, Y1
  1001. VPADDQ Y15, Y0, Y0
  1002. VPADDQ Y1, Y0, Y0
  1003. VPXOR Y0, Y3, Y3
  1004. VPSHUFB Y5, Y3, Y3
  1005. VPADDQ Y3, Y2, Y2
  1006. VPXOR Y2, Y1, Y1
  1007. VPADDQ Y1, Y1, Y10
  1008. VPSRLQ $0x3f, Y1, Y1
  1009. VPXOR Y10, Y1, Y1
  1010. BYTE $0xc4
  1011. BYTE $0xe3
  1012. BYTE $0xfd
  1013. BYTE $0x00
  1014. BYTE $0xdb
  1015. BYTE $0x39
  1016. BYTE $0xc4
  1017. BYTE $0xe3
  1018. BYTE $0xfd
  1019. BYTE $0x00
  1020. BYTE $0xd2
  1021. BYTE $0x4e
  1022. BYTE $0xc4
  1023. BYTE $0xe3
  1024. BYTE $0xfd
  1025. BYTE $0x00
  1026. BYTE $0xc9
  1027. BYTE $0x93
  1028. BYTE $0xc5
  1029. BYTE $0x7a
  1030. BYTE $0x7e
  1031. BYTE $0x66
  1032. BYTE $0x60
  1033. BYTE $0xc5
  1034. BYTE $0x7a
  1035. BYTE $0x7e
  1036. BYTE $0x5e
  1037. BYTE $0x70
  1038. BYTE $0xc4
  1039. BYTE $0x63
  1040. BYTE $0x99
  1041. BYTE $0x22
  1042. BYTE $0x66
  1043. BYTE $0x08
  1044. BYTE $0x01
  1045. BYTE $0xc4
  1046. BYTE $0x63
  1047. BYTE $0xa1
  1048. BYTE $0x22
  1049. BYTE $0x5e
  1050. BYTE $0x20
  1051. BYTE $0x01
  1052. VINSERTI128 $0x01, X11, Y12, Y12
  1053. BYTE $0xc5
  1054. BYTE $0x7a
  1055. BYTE $0x7e
  1056. BYTE $0x6e
  1057. BYTE $0x28
  1058. BYTE $0xc5
  1059. BYTE $0x7a
  1060. BYTE $0x7e
  1061. BYTE $0x5e
  1062. BYTE $0x68
  1063. BYTE $0xc4
  1064. BYTE $0x63
  1065. BYTE $0x91
  1066. BYTE $0x22
  1067. BYTE $0x6e
  1068. BYTE $0x78
  1069. BYTE $0x01
  1070. BYTE $0xc4
  1071. BYTE $0x63
  1072. BYTE $0xa1
  1073. BYTE $0x22
  1074. BYTE $0x5e
  1075. BYTE $0x50
  1076. BYTE $0x01
  1077. VINSERTI128 $0x01, X11, Y13, Y13
  1078. BYTE $0xc5
  1079. BYTE $0x7a
  1080. BYTE $0x7e
  1081. BYTE $0x36
  1082. VPSHUFD $0x4e, 64(SI), X11
  1083. BYTE $0xc4
  1084. BYTE $0x63
  1085. BYTE $0x89
  1086. BYTE $0x22
  1087. BYTE $0x76
  1088. BYTE $0x30
  1089. BYTE $0x01
  1090. VINSERTI128 $0x01, X11, Y14, Y14
  1091. BYTE $0xc5
  1092. BYTE $0x7a
  1093. BYTE $0x7e
  1094. BYTE $0x7e
  1095. BYTE $0x38
  1096. BYTE $0xc5
  1097. BYTE $0x7a
  1098. BYTE $0x7e
  1099. BYTE $0x5e
  1100. BYTE $0x10
  1101. BYTE $0xc4
  1102. BYTE $0x63
  1103. BYTE $0x81
  1104. BYTE $0x22
  1105. BYTE $0x7e
  1106. BYTE $0x18
  1107. BYTE $0x01
  1108. BYTE $0xc4
  1109. BYTE $0x63
  1110. BYTE $0xa1
  1111. BYTE $0x22
  1112. BYTE $0x5e
  1113. BYTE $0x58
  1114. BYTE $0x01
  1115. VINSERTI128 $0x01, X11, Y15, Y15
  1116. VPADDQ Y12, Y0, Y0
  1117. VPADDQ Y1, Y0, Y0
  1118. VPXOR Y0, Y3, Y3
  1119. VPSHUFD $-79, Y3, Y3
  1120. VPADDQ Y3, Y2, Y2
  1121. VPXOR Y2, Y1, Y1
  1122. VPSHUFB Y4, Y1, Y1
  1123. VPADDQ Y13, Y0, Y0
  1124. VPADDQ Y1, Y0, Y0
  1125. VPXOR Y0, Y3, Y3
  1126. VPSHUFB Y5, Y3, Y3
  1127. VPADDQ Y3, Y2, Y2
  1128. VPXOR Y2, Y1, Y1
  1129. VPADDQ Y1, Y1, Y10
  1130. VPSRLQ $0x3f, Y1, Y1
  1131. VPXOR Y10, Y1, Y1
  1132. BYTE $0xc4
  1133. BYTE $0xe3
  1134. BYTE $0xfd
  1135. BYTE $0x00
  1136. BYTE $0xc9
  1137. BYTE $0x39
  1138. BYTE $0xc4
  1139. BYTE $0xe3
  1140. BYTE $0xfd
  1141. BYTE $0x00
  1142. BYTE $0xd2
  1143. BYTE $0x4e
  1144. BYTE $0xc4
  1145. BYTE $0xe3
  1146. BYTE $0xfd
  1147. BYTE $0x00
  1148. BYTE $0xdb
  1149. BYTE $0x93
  1150. VPADDQ Y14, Y0, Y0
  1151. VPADDQ Y1, Y0, Y0
  1152. VPXOR Y0, Y3, Y3
  1153. VPSHUFD $-79, Y3, Y3
  1154. VPADDQ Y3, Y2, Y2
  1155. VPXOR Y2, Y1, Y1
  1156. VPSHUFB Y4, Y1, Y1
  1157. VPADDQ Y15, Y0, Y0
  1158. VPADDQ Y1, Y0, Y0
  1159. VPXOR Y0, Y3, Y3
  1160. VPSHUFB Y5, Y3, Y3
  1161. VPADDQ Y3, Y2, Y2
  1162. VPXOR Y2, Y1, Y1
  1163. VPADDQ Y1, Y1, Y10
  1164. VPSRLQ $0x3f, Y1, Y1
  1165. VPXOR Y10, Y1, Y1
  1166. BYTE $0xc4
  1167. BYTE $0xe3
  1168. BYTE $0xfd
  1169. BYTE $0x00
  1170. BYTE $0xdb
  1171. BYTE $0x39
  1172. BYTE $0xc4
  1173. BYTE $0xe3
  1174. BYTE $0xfd
  1175. BYTE $0x00
  1176. BYTE $0xd2
  1177. BYTE $0x4e
  1178. BYTE $0xc4
  1179. BYTE $0xe3
  1180. BYTE $0xfd
  1181. BYTE $0x00
  1182. BYTE $0xc9
  1183. BYTE $0x93
  1184. BYTE $0xc5
  1185. BYTE $0x7a
  1186. BYTE $0x7e
  1187. BYTE $0x66
  1188. BYTE $0x68
  1189. BYTE $0xc5
  1190. BYTE $0x7a
  1191. BYTE $0x7e
  1192. BYTE $0x5e
  1193. BYTE $0x60
  1194. BYTE $0xc4
  1195. BYTE $0x63
  1196. BYTE $0x99
  1197. BYTE $0x22
  1198. BYTE $0x66
  1199. BYTE $0x38
  1200. BYTE $0x01
  1201. BYTE $0xc4
  1202. BYTE $0x63
  1203. BYTE $0xa1
  1204. BYTE $0x22
  1205. BYTE $0x5e
  1206. BYTE $0x18
  1207. BYTE $0x01
  1208. VINSERTI128 $0x01, X11, Y12, Y12
  1209. BYTE $0xc5
  1210. BYTE $0x7a
  1211. BYTE $0x7e
  1212. BYTE $0x6e
  1213. BYTE $0x58
  1214. BYTE $0xc5
  1215. BYTE $0x7a
  1216. BYTE $0x7e
  1217. BYTE $0x5e
  1218. BYTE $0x08
  1219. BYTE $0xc4
  1220. BYTE $0x63
  1221. BYTE $0x91
  1222. BYTE $0x22
  1223. BYTE $0x6e
  1224. BYTE $0x70
  1225. BYTE $0x01
  1226. BYTE $0xc4
  1227. BYTE $0x63
  1228. BYTE $0xa1
  1229. BYTE $0x22
  1230. BYTE $0x5e
  1231. BYTE $0x48
  1232. BYTE $0x01
  1233. VINSERTI128 $0x01, X11, Y13, Y13
  1234. BYTE $0xc5
  1235. BYTE $0x7a
  1236. BYTE $0x7e
  1237. BYTE $0x76
  1238. BYTE $0x28
  1239. BYTE $0xc5
  1240. BYTE $0x7a
  1241. BYTE $0x7e
  1242. BYTE $0x5e
  1243. BYTE $0x40
  1244. BYTE $0xc4
  1245. BYTE $0x63
  1246. BYTE $0x89
  1247. BYTE $0x22
  1248. BYTE $0x76
  1249. BYTE $0x78
  1250. BYTE $0x01
  1251. BYTE $0xc4
  1252. BYTE $0x63
  1253. BYTE $0xa1
  1254. BYTE $0x22
  1255. BYTE $0x5e
  1256. BYTE $0x10
  1257. BYTE $0x01
  1258. VINSERTI128 $0x01, X11, Y14, Y14
  1259. BYTE $0xc5
  1260. BYTE $0x7a
  1261. BYTE $0x7e
  1262. BYTE $0x3e
  1263. BYTE $0xc5
  1264. BYTE $0x7a
  1265. BYTE $0x7e
  1266. BYTE $0x5e
  1267. BYTE $0x30
  1268. BYTE $0xc4
  1269. BYTE $0x63
  1270. BYTE $0x81
  1271. BYTE $0x22
  1272. BYTE $0x7e
  1273. BYTE $0x20
  1274. BYTE $0x01
  1275. BYTE $0xc4
  1276. BYTE $0x63
  1277. BYTE $0xa1
  1278. BYTE $0x22
  1279. BYTE $0x5e
  1280. BYTE $0x50
  1281. BYTE $0x01
  1282. VINSERTI128 $0x01, X11, Y15, Y15
  1283. VPADDQ Y12, Y0, Y0
  1284. VPADDQ Y1, Y0, Y0
  1285. VPXOR Y0, Y3, Y3
  1286. VPSHUFD $-79, Y3, Y3
  1287. VPADDQ Y3, Y2, Y2
  1288. VPXOR Y2, Y1, Y1
  1289. VPSHUFB Y4, Y1, Y1
  1290. VPADDQ Y13, Y0, Y0
  1291. VPADDQ Y1, Y0, Y0
  1292. VPXOR Y0, Y3, Y3
  1293. VPSHUFB Y5, Y3, Y3
  1294. VPADDQ Y3, Y2, Y2
  1295. VPXOR Y2, Y1, Y1
  1296. VPADDQ Y1, Y1, Y10
  1297. VPSRLQ $0x3f, Y1, Y1
  1298. VPXOR Y10, Y1, Y1
  1299. BYTE $0xc4
  1300. BYTE $0xe3
  1301. BYTE $0xfd
  1302. BYTE $0x00
  1303. BYTE $0xc9
  1304. BYTE $0x39
  1305. BYTE $0xc4
  1306. BYTE $0xe3
  1307. BYTE $0xfd
  1308. BYTE $0x00
  1309. BYTE $0xd2
  1310. BYTE $0x4e
  1311. BYTE $0xc4
  1312. BYTE $0xe3
  1313. BYTE $0xfd
  1314. BYTE $0x00
  1315. BYTE $0xdb
  1316. BYTE $0x93
  1317. VPADDQ Y14, Y0, Y0
  1318. VPADDQ Y1, Y0, Y0
  1319. VPXOR Y0, Y3, Y3
  1320. VPSHUFD $-79, Y3, Y3
  1321. VPADDQ Y3, Y2, Y2
  1322. VPXOR Y2, Y1, Y1
  1323. VPSHUFB Y4, Y1, Y1
  1324. VPADDQ Y15, Y0, Y0
  1325. VPADDQ Y1, Y0, Y0
  1326. VPXOR Y0, Y3, Y3
  1327. VPSHUFB Y5, Y3, Y3
  1328. VPADDQ Y3, Y2, Y2
  1329. VPXOR Y2, Y1, Y1
  1330. VPADDQ Y1, Y1, Y10
  1331. VPSRLQ $0x3f, Y1, Y1
  1332. VPXOR Y10, Y1, Y1
  1333. BYTE $0xc4
  1334. BYTE $0xe3
  1335. BYTE $0xfd
  1336. BYTE $0x00
  1337. BYTE $0xdb
  1338. BYTE $0x39
  1339. BYTE $0xc4
  1340. BYTE $0xe3
  1341. BYTE $0xfd
  1342. BYTE $0x00
  1343. BYTE $0xd2
  1344. BYTE $0x4e
  1345. BYTE $0xc4
  1346. BYTE $0xe3
  1347. BYTE $0xfd
  1348. BYTE $0x00
  1349. BYTE $0xc9
  1350. BYTE $0x93
  1351. BYTE $0xc5
  1352. BYTE $0x7a
  1353. BYTE $0x7e
  1354. BYTE $0x66
  1355. BYTE $0x30
  1356. BYTE $0xc5
  1357. BYTE $0x7a
  1358. BYTE $0x7e
  1359. BYTE $0x5e
  1360. BYTE $0x58
  1361. BYTE $0xc4
  1362. BYTE $0x63
  1363. BYTE $0x99
  1364. BYTE $0x22
  1365. BYTE $0x66
  1366. BYTE $0x70
  1367. BYTE $0x01
  1368. BYTE $0xc4
  1369. BYTE $0x63
  1370. BYTE $0xa1
  1371. BYTE $0x22
  1372. BYTE $0x1e
  1373. BYTE $0x01
  1374. VINSERTI128 $0x01, X11, Y12, Y12
  1375. BYTE $0xc5
  1376. BYTE $0x7a
  1377. BYTE $0x7e
  1378. BYTE $0x6e
  1379. BYTE $0x78
  1380. BYTE $0xc5
  1381. BYTE $0x7a
  1382. BYTE $0x7e
  1383. BYTE $0x5e
  1384. BYTE $0x18
  1385. BYTE $0xc4
  1386. BYTE $0x63
  1387. BYTE $0x91
  1388. BYTE $0x22
  1389. BYTE $0x6e
  1390. BYTE $0x48
  1391. BYTE $0x01
  1392. BYTE $0xc4
  1393. BYTE $0x63
  1394. BYTE $0xa1
  1395. BYTE $0x22
  1396. BYTE $0x5e
  1397. BYTE $0x40
  1398. BYTE $0x01
  1399. VINSERTI128 $0x01, X11, Y13, Y13
  1400. BYTE $0xc5
  1401. BYTE $0x7a
  1402. BYTE $0x7e
  1403. BYTE $0x5e
  1404. BYTE $0x08
  1405. VMOVDQU 96(SI), X14
  1406. BYTE $0xc4
  1407. BYTE $0x63
  1408. BYTE $0xa1
  1409. BYTE $0x22
  1410. BYTE $0x5e
  1411. BYTE $0x50
  1412. BYTE $0x01
  1413. VINSERTI128 $0x01, X11, Y14, Y14
  1414. BYTE $0xc5
  1415. BYTE $0x7a
  1416. BYTE $0x7e
  1417. BYTE $0x7e
  1418. BYTE $0x10
  1419. VMOVDQU 32(SI), X11
  1420. BYTE $0xc4
  1421. BYTE $0x63
  1422. BYTE $0x81
  1423. BYTE $0x22
  1424. BYTE $0x7e
  1425. BYTE $0x38
  1426. BYTE $0x01
  1427. VINSERTI128 $0x01, X11, Y15, Y15
  1428. VPADDQ Y12, Y0, Y0
  1429. VPADDQ Y1, Y0, Y0
  1430. VPXOR Y0, Y3, Y3
  1431. VPSHUFD $-79, Y3, Y3
  1432. VPADDQ Y3, Y2, Y2
  1433. VPXOR Y2, Y1, Y1
  1434. VPSHUFB Y4, Y1, Y1
  1435. VPADDQ Y13, Y0, Y0
  1436. VPADDQ Y1, Y0, Y0
  1437. VPXOR Y0, Y3, Y3
  1438. VPSHUFB Y5, Y3, Y3
  1439. VPADDQ Y3, Y2, Y2
  1440. VPXOR Y2, Y1, Y1
  1441. VPADDQ Y1, Y1, Y10
  1442. VPSRLQ $0x3f, Y1, Y1
  1443. VPXOR Y10, Y1, Y1
  1444. BYTE $0xc4
  1445. BYTE $0xe3
  1446. BYTE $0xfd
  1447. BYTE $0x00
  1448. BYTE $0xc9
  1449. BYTE $0x39
  1450. BYTE $0xc4
  1451. BYTE $0xe3
  1452. BYTE $0xfd
  1453. BYTE $0x00
  1454. BYTE $0xd2
  1455. BYTE $0x4e
  1456. BYTE $0xc4
  1457. BYTE $0xe3
  1458. BYTE $0xfd
  1459. BYTE $0x00
  1460. BYTE $0xdb
  1461. BYTE $0x93
  1462. VPADDQ Y14, Y0, Y0
  1463. VPADDQ Y1, Y0, Y0
  1464. VPXOR Y0, Y3, Y3
  1465. VPSHUFD $-79, Y3, Y3
  1466. VPADDQ Y3, Y2, Y2
  1467. VPXOR Y2, Y1, Y1
  1468. VPSHUFB Y4, Y1, Y1
  1469. VPADDQ Y15, Y0, Y0
  1470. VPADDQ Y1, Y0, Y0
  1471. VPXOR Y0, Y3, Y3
  1472. VPSHUFB Y5, Y3, Y3
  1473. VPADDQ Y3, Y2, Y2
  1474. VPXOR Y2, Y1, Y1
  1475. VPADDQ Y1, Y1, Y10
  1476. VPSRLQ $0x3f, Y1, Y1
  1477. VPXOR Y10, Y1, Y1
  1478. BYTE $0xc4
  1479. BYTE $0xe3
  1480. BYTE $0xfd
  1481. BYTE $0x00
  1482. BYTE $0xdb
  1483. BYTE $0x39
  1484. BYTE $0xc4
  1485. BYTE $0xe3
  1486. BYTE $0xfd
  1487. BYTE $0x00
  1488. BYTE $0xd2
  1489. BYTE $0x4e
  1490. BYTE $0xc4
  1491. BYTE $0xe3
  1492. BYTE $0xfd
  1493. BYTE $0x00
  1494. BYTE $0xc9
  1495. BYTE $0x93
  1496. BYTE $0xc5
  1497. BYTE $0x7a
  1498. BYTE $0x7e
  1499. BYTE $0x66
  1500. BYTE $0x50
  1501. BYTE $0xc5
  1502. BYTE $0x7a
  1503. BYTE $0x7e
  1504. BYTE $0x5e
  1505. BYTE $0x38
  1506. BYTE $0xc4
  1507. BYTE $0x63
  1508. BYTE $0x99
  1509. BYTE $0x22
  1510. BYTE $0x66
  1511. BYTE $0x40
  1512. BYTE $0x01
  1513. BYTE $0xc4
  1514. BYTE $0x63
  1515. BYTE $0xa1
  1516. BYTE $0x22
  1517. BYTE $0x5e
  1518. BYTE $0x08
  1519. BYTE $0x01
  1520. VINSERTI128 $0x01, X11, Y12, Y12
  1521. BYTE $0xc5
  1522. BYTE $0x7a
  1523. BYTE $0x7e
  1524. BYTE $0x6e
  1525. BYTE $0x10
  1526. VPSHUFD $0x4e, 40(SI), X11
  1527. BYTE $0xc4
  1528. BYTE $0x63
  1529. BYTE $0x91
  1530. BYTE $0x22
  1531. BYTE $0x6e
  1532. BYTE $0x20
  1533. BYTE $0x01
  1534. VINSERTI128 $0x01, X11, Y13, Y13
  1535. BYTE $0xc5
  1536. BYTE $0x7a
  1537. BYTE $0x7e
  1538. BYTE $0x76
  1539. BYTE $0x78
  1540. BYTE $0xc5
  1541. BYTE $0x7a
  1542. BYTE $0x7e
  1543. BYTE $0x5e
  1544. BYTE $0x18
  1545. BYTE $0xc4
  1546. BYTE $0x63
  1547. BYTE $0x89
  1548. BYTE $0x22
  1549. BYTE $0x76
  1550. BYTE $0x48
  1551. BYTE $0x01
  1552. BYTE $0xc4
  1553. BYTE $0x63
  1554. BYTE $0xa1
  1555. BYTE $0x22
  1556. BYTE $0x5e
  1557. BYTE $0x68
  1558. BYTE $0x01
  1559. VINSERTI128 $0x01, X11, Y14, Y14
  1560. BYTE $0xc5
  1561. BYTE $0x7a
  1562. BYTE $0x7e
  1563. BYTE $0x7e
  1564. BYTE $0x58
  1565. BYTE $0xc5
  1566. BYTE $0x7a
  1567. BYTE $0x7e
  1568. BYTE $0x5e
  1569. BYTE $0x60
  1570. BYTE $0xc4
  1571. BYTE $0x63
  1572. BYTE $0x81
  1573. BYTE $0x22
  1574. BYTE $0x7e
  1575. BYTE $0x70
  1576. BYTE $0x01
  1577. BYTE $0xc4
  1578. BYTE $0x63
  1579. BYTE $0xa1
  1580. BYTE $0x22
  1581. BYTE $0x1e
  1582. BYTE $0x01
  1583. VINSERTI128 $0x01, X11, Y15, Y15
  1584. VPADDQ Y12, Y0, Y0
  1585. VPADDQ Y1, Y0, Y0
  1586. VPXOR Y0, Y3, Y3
  1587. VPSHUFD $-79, Y3, Y3
  1588. VPADDQ Y3, Y2, Y2
  1589. VPXOR Y2, Y1, Y1
  1590. VPSHUFB Y4, Y1, Y1
  1591. VPADDQ Y13, Y0, Y0
  1592. VPADDQ Y1, Y0, Y0
  1593. VPXOR Y0, Y3, Y3
  1594. VPSHUFB Y5, Y3, Y3
  1595. VPADDQ Y3, Y2, Y2
  1596. VPXOR Y2, Y1, Y1
  1597. VPADDQ Y1, Y1, Y10
  1598. VPSRLQ $0x3f, Y1, Y1
  1599. VPXOR Y10, Y1, Y1
  1600. BYTE $0xc4
  1601. BYTE $0xe3
  1602. BYTE $0xfd
  1603. BYTE $0x00
  1604. BYTE $0xc9
  1605. BYTE $0x39
  1606. BYTE $0xc4
  1607. BYTE $0xe3
  1608. BYTE $0xfd
  1609. BYTE $0x00
  1610. BYTE $0xd2
  1611. BYTE $0x4e
  1612. BYTE $0xc4
  1613. BYTE $0xe3
  1614. BYTE $0xfd
  1615. BYTE $0x00
  1616. BYTE $0xdb
  1617. BYTE $0x93
  1618. VPADDQ Y14, Y0, Y0
  1619. VPADDQ Y1, Y0, Y0
  1620. VPXOR Y0, Y3, Y3
  1621. VPSHUFD $-79, Y3, Y3
  1622. VPADDQ Y3, Y2, Y2
  1623. VPXOR Y2, Y1, Y1
  1624. VPSHUFB Y4, Y1, Y1
  1625. VPADDQ Y15, Y0, Y0
  1626. VPADDQ Y1, Y0, Y0
  1627. VPXOR Y0, Y3, Y3
  1628. VPSHUFB Y5, Y3, Y3
  1629. VPADDQ Y3, Y2, Y2
  1630. VPXOR Y2, Y1, Y1
  1631. VPADDQ Y1, Y1, Y10
  1632. VPSRLQ $0x3f, Y1, Y1
  1633. VPXOR Y10, Y1, Y1
  1634. BYTE $0xc4
  1635. BYTE $0xe3
  1636. BYTE $0xfd
  1637. BYTE $0x00
  1638. BYTE $0xdb
  1639. BYTE $0x39
  1640. BYTE $0xc4
  1641. BYTE $0xe3
  1642. BYTE $0xfd
  1643. BYTE $0x00
  1644. BYTE $0xd2
  1645. BYTE $0x4e
  1646. BYTE $0xc4
  1647. BYTE $0xe3
  1648. BYTE $0xfd
  1649. BYTE $0x00
  1650. BYTE $0xc9
  1651. BYTE $0x93
  1652. VPADDQ 32(DX), Y0, Y0
  1653. VPADDQ Y1, Y0, Y0
  1654. VPXOR Y0, Y3, Y3
  1655. VPSHUFD $-79, Y3, Y3
  1656. VPADDQ Y3, Y2, Y2
  1657. VPXOR Y2, Y1, Y1
  1658. VPSHUFB Y4, Y1, Y1
  1659. VPADDQ 64(DX), Y0, Y0
  1660. VPADDQ Y1, Y0, Y0
  1661. VPXOR Y0, Y3, Y3
  1662. VPSHUFB Y5, Y3, Y3
  1663. VPADDQ Y3, Y2, Y2
  1664. VPXOR Y2, Y1, Y1
  1665. VPADDQ Y1, Y1, Y10
  1666. VPSRLQ $0x3f, Y1, Y1
  1667. VPXOR Y10, Y1, Y1
  1668. BYTE $0xc4
  1669. BYTE $0xe3
  1670. BYTE $0xfd
  1671. BYTE $0x00
  1672. BYTE $0xc9
  1673. BYTE $0x39
  1674. BYTE $0xc4
  1675. BYTE $0xe3
  1676. BYTE $0xfd
  1677. BYTE $0x00
  1678. BYTE $0xd2
  1679. BYTE $0x4e
  1680. BYTE $0xc4
  1681. BYTE $0xe3
  1682. BYTE $0xfd
  1683. BYTE $0x00
  1684. BYTE $0xdb
  1685. BYTE $0x93
  1686. VPADDQ 96(DX), Y0, Y0
  1687. VPADDQ Y1, Y0, Y0
  1688. VPXOR Y0, Y3, Y3
  1689. VPSHUFD $-79, Y3, Y3
  1690. VPADDQ Y3, Y2, Y2
  1691. VPXOR Y2, Y1, Y1
  1692. VPSHUFB Y4, Y1, Y1
  1693. VPADDQ 128(DX), Y0, Y0
  1694. VPADDQ Y1, Y0, Y0
  1695. VPXOR Y0, Y3, Y3
  1696. VPSHUFB Y5, Y3, Y3
  1697. VPADDQ Y3, Y2, Y2
  1698. VPXOR Y2, Y1, Y1
  1699. VPADDQ Y1, Y1, Y10
  1700. VPSRLQ $0x3f, Y1, Y1
  1701. VPXOR Y10, Y1, Y1
  1702. BYTE $0xc4
  1703. BYTE $0xe3
  1704. BYTE $0xfd
  1705. BYTE $0x00
  1706. BYTE $0xdb
  1707. BYTE $0x39
  1708. BYTE $0xc4
  1709. BYTE $0xe3
  1710. BYTE $0xfd
  1711. BYTE $0x00
  1712. BYTE $0xd2
  1713. BYTE $0x4e
  1714. BYTE $0xc4
  1715. BYTE $0xe3
  1716. BYTE $0xfd
  1717. BYTE $0x00
  1718. BYTE $0xc9
  1719. BYTE $0x93
  1720. VPADDQ 160(DX), Y0, Y0
  1721. VPADDQ Y1, Y0, Y0
  1722. VPXOR Y0, Y3, Y3
  1723. VPSHUFD $-79, Y3, Y3
  1724. VPADDQ Y3, Y2, Y2
  1725. VPXOR Y2, Y1, Y1
  1726. VPSHUFB Y4, Y1, Y1
  1727. VPADDQ 192(DX), Y0, Y0
  1728. VPADDQ Y1, Y0, Y0
  1729. VPXOR Y0, Y3, Y3
  1730. VPSHUFB Y5, Y3, Y3
  1731. VPADDQ Y3, Y2, Y2
  1732. VPXOR Y2, Y1, Y1
  1733. VPADDQ Y1, Y1, Y10
  1734. VPSRLQ $0x3f, Y1, Y1
  1735. VPXOR Y10, Y1, Y1
  1736. BYTE $0xc4
  1737. BYTE $0xe3
  1738. BYTE $0xfd
  1739. BYTE $0x00
  1740. BYTE $0xc9
  1741. BYTE $0x39
  1742. BYTE $0xc4
  1743. BYTE $0xe3
  1744. BYTE $0xfd
  1745. BYTE $0x00
  1746. BYTE $0xd2
  1747. BYTE $0x4e
  1748. BYTE $0xc4
  1749. BYTE $0xe3
  1750. BYTE $0xfd
  1751. BYTE $0x00
  1752. BYTE $0xdb
  1753. BYTE $0x93
  1754. VPADDQ 224(DX), Y0, Y0
  1755. VPADDQ Y1, Y0, Y0
  1756. VPXOR Y0, Y3, Y3
  1757. VPSHUFD $-79, Y3, Y3
  1758. VPADDQ Y3, Y2, Y2
  1759. VPXOR Y2, Y1, Y1
  1760. VPSHUFB Y4, Y1, Y1
  1761. VPADDQ 256(DX), Y0, Y0
  1762. VPADDQ Y1, Y0, Y0
  1763. VPXOR Y0, Y3, Y3
  1764. VPSHUFB Y5, Y3, Y3
  1765. VPADDQ Y3, Y2, Y2
  1766. VPXOR Y2, Y1, Y1
  1767. VPADDQ Y1, Y1, Y10
  1768. VPSRLQ $0x3f, Y1, Y1
  1769. VPXOR Y10, Y1, Y1
  1770. BYTE $0xc4
  1771. BYTE $0xe3
  1772. BYTE $0xfd
  1773. BYTE $0x00
  1774. BYTE $0xdb
  1775. BYTE $0x39
  1776. BYTE $0xc4
  1777. BYTE $0xe3
  1778. BYTE $0xfd
  1779. BYTE $0x00
  1780. BYTE $0xd2
  1781. BYTE $0x4e
  1782. BYTE $0xc4
  1783. BYTE $0xe3
  1784. BYTE $0xfd
  1785. BYTE $0x00
  1786. BYTE $0xc9
  1787. BYTE $0x93
  1788. VPXOR Y0, Y8, Y8
  1789. VPXOR Y1, Y9, Y9
  1790. VPXOR Y2, Y8, Y8
  1791. VPXOR Y3, Y9, Y9
  1792. LEAQ 128(SI), SI
  1793. SUBQ $0x80, DI
  1794. JNE loop
  1795. MOVQ R8, (BX)
  1796. MOVQ R9, 8(BX)
  1797. VMOVDQU Y8, (AX)
  1798. VMOVDQU Y9, 32(AX)
  1799. VZEROUPPER
  1800. RET
  1801. DATA ·AVX2_c40<>+0(SB)/8, $0x0201000706050403
  1802. DATA ·AVX2_c40<>+8(SB)/8, $0x0a09080f0e0d0c0b
  1803. DATA ·AVX2_c40<>+16(SB)/8, $0x0201000706050403
  1804. DATA ·AVX2_c40<>+24(SB)/8, $0x0a09080f0e0d0c0b
  1805. GLOBL ·AVX2_c40<>(SB), RODATA|NOPTR, $32
  1806. DATA ·AVX2_c48<>+0(SB)/8, $0x0100070605040302
  1807. DATA ·AVX2_c48<>+8(SB)/8, $0x09080f0e0d0c0b0a
  1808. DATA ·AVX2_c48<>+16(SB)/8, $0x0100070605040302
  1809. DATA ·AVX2_c48<>+24(SB)/8, $0x09080f0e0d0c0b0a
  1810. GLOBL ·AVX2_c48<>(SB), RODATA|NOPTR, $32
  1811. DATA ·AVX2_iv0<>+0(SB)/8, $0x6a09e667f3bcc908
  1812. DATA ·AVX2_iv0<>+8(SB)/8, $0xbb67ae8584caa73b
  1813. DATA ·AVX2_iv0<>+16(SB)/8, $0x3c6ef372fe94f82b
  1814. DATA ·AVX2_iv0<>+24(SB)/8, $0xa54ff53a5f1d36f1
  1815. GLOBL ·AVX2_iv0<>(SB), RODATA|NOPTR, $32
  1816. DATA ·AVX2_iv1<>+0(SB)/8, $0x510e527fade682d1
  1817. DATA ·AVX2_iv1<>+8(SB)/8, $0x9b05688c2b3e6c1f
  1818. DATA ·AVX2_iv1<>+16(SB)/8, $0x1f83d9abfb41bd6b
  1819. DATA ·AVX2_iv1<>+24(SB)/8, $0x5be0cd19137e2179
  1820. GLOBL ·AVX2_iv1<>(SB), RODATA|NOPTR, $32
  1821. // func hashBlocksAVX(h *[8]uint64, c *[2]uint64, flag uint64, blocks []byte)
  1822. // Requires: AVX, SSE2
  1823. TEXT ·hashBlocksAVX(SB), NOSPLIT, $288-48
  1824. MOVQ h+0(FP), AX
  1825. MOVQ c+8(FP), BX
  1826. MOVQ flag+16(FP), CX
  1827. MOVQ blocks_base+24(FP), SI
  1828. MOVQ blocks_len+32(FP), DI
  1829. MOVQ SP, R10
  1830. ADDQ $0x0f, R10
  1831. ANDQ $-16, R10
  1832. VMOVDQU ·AVX_c40<>+0(SB), X0
  1833. VMOVDQU ·AVX_c48<>+0(SB), X1
  1834. VMOVDQA X0, X8
  1835. VMOVDQA X1, X9
  1836. VMOVDQU ·AVX_iv3<>+0(SB), X0
  1837. VMOVDQA X0, (R10)
  1838. XORQ CX, (R10)
  1839. VMOVDQU (AX), X10
  1840. VMOVDQU 16(AX), X11
  1841. VMOVDQU 32(AX), X2
  1842. VMOVDQU 48(AX), X3
  1843. MOVQ (BX), R8
  1844. MOVQ 8(BX), R9
  1845. loop:
  1846. ADDQ $0x80, R8
  1847. CMPQ R8, $0x80
  1848. JGE noinc
  1849. INCQ R9
  1850. noinc:
  1851. BYTE $0xc4
  1852. BYTE $0x41
  1853. BYTE $0xf9
  1854. BYTE $0x6e
  1855. BYTE $0xf8
  1856. BYTE $0xc4
  1857. BYTE $0x43
  1858. BYTE $0x81
  1859. BYTE $0x22
  1860. BYTE $0xf9
  1861. BYTE $0x01
  1862. VMOVDQA X10, X0
  1863. VMOVDQA X11, X1
  1864. VMOVDQU ·AVX_iv0<>+0(SB), X4
  1865. VMOVDQU ·AVX_iv1<>+0(SB), X5
  1866. VMOVDQU ·AVX_iv2<>+0(SB), X6
  1867. VPXOR X15, X6, X6
  1868. VMOVDQA (R10), X7
  1869. BYTE $0xc5
  1870. BYTE $0x7a
  1871. BYTE $0x7e
  1872. BYTE $0x26
  1873. BYTE $0xc5
  1874. BYTE $0x7a
  1875. BYTE $0x7e
  1876. BYTE $0x6e
  1877. BYTE $0x20
  1878. BYTE $0xc5
  1879. BYTE $0x7a
  1880. BYTE $0x7e
  1881. BYTE $0x76
  1882. BYTE $0x08
  1883. BYTE $0xc5
  1884. BYTE $0x7a
  1885. BYTE $0x7e
  1886. BYTE $0x7e
  1887. BYTE $0x28
  1888. BYTE $0xc4
  1889. BYTE $0x63
  1890. BYTE $0x99
  1891. BYTE $0x22
  1892. BYTE $0x66
  1893. BYTE $0x10
  1894. BYTE $0x01
  1895. BYTE $0xc4
  1896. BYTE $0x63
  1897. BYTE $0x91
  1898. BYTE $0x22
  1899. BYTE $0x6e
  1900. BYTE $0x30
  1901. BYTE $0x01
  1902. BYTE $0xc4
  1903. BYTE $0x63
  1904. BYTE $0x89
  1905. BYTE $0x22
  1906. BYTE $0x76
  1907. BYTE $0x18
  1908. BYTE $0x01
  1909. BYTE $0xc4
  1910. BYTE $0x63
  1911. BYTE $0x81
  1912. BYTE $0x22
  1913. BYTE $0x7e
  1914. BYTE $0x38
  1915. BYTE $0x01
  1916. VMOVDQA X12, 16(R10)
  1917. VMOVDQA X13, 32(R10)
  1918. VMOVDQA X14, 48(R10)
  1919. VMOVDQA X15, 64(R10)
  1920. VPADDQ X12, X0, X0
  1921. VPADDQ X2, X0, X0
  1922. VPADDQ X13, X1, X1
  1923. VPADDQ X3, X1, X1
  1924. VPXOR X0, X6, X6
  1925. VPXOR X1, X7, X7
  1926. VPSHUFD $-79, X6, X6
  1927. VPSHUFD $-79, X7, X7
  1928. VPADDQ X6, X4, X4
  1929. VPADDQ X7, X5, X5
  1930. VPXOR X4, X2, X2
  1931. VPXOR X5, X3, X3
  1932. VPSHUFB X8, X2, X2
  1933. VPSHUFB X8, X3, X3
  1934. VPADDQ X14, X0, X0
  1935. VPADDQ X2, X0, X0
  1936. VPADDQ X15, X1, X1
  1937. VPADDQ X3, X1, X1
  1938. VPXOR X0, X6, X6
  1939. VPXOR X1, X7, X7
  1940. VPSHUFB X9, X6, X6
  1941. VPSHUFB X9, X7, X7
  1942. VPADDQ X6, X4, X4
  1943. VPADDQ X7, X5, X5
  1944. VPXOR X4, X2, X2
  1945. VPXOR X5, X3, X3
  1946. VPADDQ X2, X2, X15
  1947. VPSRLQ $0x3f, X2, X2
  1948. VPXOR X15, X2, X2
  1949. VPADDQ X3, X3, X15
  1950. VPSRLQ $0x3f, X3, X3
  1951. VPXOR X15, X3, X3
  1952. VMOVDQA X6, X13
  1953. VMOVDQA X2, X14
  1954. VMOVDQA X4, X6
  1955. BYTE $0xc4
  1956. BYTE $0x41
  1957. BYTE $0x11
  1958. BYTE $0x6c
  1959. BYTE $0xfd
  1960. VMOVDQA X5, X4
  1961. VMOVDQA X6, X5
  1962. BYTE $0xc4
  1963. BYTE $0xc1
  1964. BYTE $0x41
  1965. BYTE $0x6d
  1966. BYTE $0xf7
  1967. BYTE $0xc5
  1968. BYTE $0x41
  1969. BYTE $0x6c
  1970. BYTE $0xff
  1971. BYTE $0xc4
  1972. BYTE $0xc1
  1973. BYTE $0x11
  1974. BYTE $0x6d
  1975. BYTE $0xff
  1976. BYTE $0xc5
  1977. BYTE $0x61
  1978. BYTE $0x6c
  1979. BYTE $0xfb
  1980. BYTE $0xc4
  1981. BYTE $0xc1
  1982. BYTE $0x69
  1983. BYTE $0x6d
  1984. BYTE $0xd7
  1985. BYTE $0xc4
  1986. BYTE $0x41
  1987. BYTE $0x09
  1988. BYTE $0x6c
  1989. BYTE $0xfe
  1990. BYTE $0xc4
  1991. BYTE $0xc1
  1992. BYTE $0x61
  1993. BYTE $0x6d
  1994. BYTE $0xdf
  1995. BYTE $0xc5
  1996. BYTE $0x7a
  1997. BYTE $0x7e
  1998. BYTE $0x66
  1999. BYTE $0x40
  2000. BYTE $0xc5
  2001. BYTE $0x7a
  2002. BYTE $0x7e
  2003. BYTE $0x6e
  2004. BYTE $0x60
  2005. BYTE $0xc5
  2006. BYTE $0x7a
  2007. BYTE $0x7e
  2008. BYTE $0x76
  2009. BYTE $0x48
  2010. BYTE $0xc5
  2011. BYTE $0x7a
  2012. BYTE $0x7e
  2013. BYTE $0x7e
  2014. BYTE $0x68
  2015. BYTE $0xc4
  2016. BYTE $0x63
  2017. BYTE $0x99
  2018. BYTE $0x22
  2019. BYTE $0x66
  2020. BYTE $0x50
  2021. BYTE $0x01
  2022. BYTE $0xc4
  2023. BYTE $0x63
  2024. BYTE $0x91
  2025. BYTE $0x22
  2026. BYTE $0x6e
  2027. BYTE $0x70
  2028. BYTE $0x01
  2029. BYTE $0xc4
  2030. BYTE $0x63
  2031. BYTE $0x89
  2032. BYTE $0x22
  2033. BYTE $0x76
  2034. BYTE $0x58
  2035. BYTE $0x01
  2036. BYTE $0xc4
  2037. BYTE $0x63
  2038. BYTE $0x81
  2039. BYTE $0x22
  2040. BYTE $0x7e
  2041. BYTE $0x78
  2042. BYTE $0x01
  2043. VMOVDQA X12, 80(R10)
  2044. VMOVDQA X13, 96(R10)
  2045. VMOVDQA X14, 112(R10)
  2046. VMOVDQA X15, 128(R10)
  2047. VPADDQ X12, X0, X0
  2048. VPADDQ X2, X0, X0
  2049. VPADDQ X13, X1, X1
  2050. VPADDQ X3, X1, X1
  2051. VPXOR X0, X6, X6
  2052. VPXOR X1, X7, X7
  2053. VPSHUFD $-79, X6, X6
  2054. VPSHUFD $-79, X7, X7
  2055. VPADDQ X6, X4, X4
  2056. VPADDQ X7, X5, X5
  2057. VPXOR X4, X2, X2
  2058. VPXOR X5, X3, X3
  2059. VPSHUFB X8, X2, X2
  2060. VPSHUFB X8, X3, X3
  2061. VPADDQ X14, X0, X0
  2062. VPADDQ X2, X0, X0
  2063. VPADDQ X15, X1, X1
  2064. VPADDQ X3, X1, X1
  2065. VPXOR X0, X6, X6
  2066. VPXOR X1, X7, X7
  2067. VPSHUFB X9, X6, X6
  2068. VPSHUFB X9, X7, X7
  2069. VPADDQ X6, X4, X4
  2070. VPADDQ X7, X5, X5
  2071. VPXOR X4, X2, X2
  2072. VPXOR X5, X3, X3
  2073. VPADDQ X2, X2, X15
  2074. VPSRLQ $0x3f, X2, X2
  2075. VPXOR X15, X2, X2
  2076. VPADDQ X3, X3, X15
  2077. VPSRLQ $0x3f, X3, X3
  2078. VPXOR X15, X3, X3
  2079. VMOVDQA X2, X13
  2080. VMOVDQA X4, X14
  2081. BYTE $0xc5
  2082. BYTE $0x69
  2083. BYTE $0x6c
  2084. BYTE $0xfa
  2085. VMOVDQA X5, X4
  2086. BYTE $0xc4
  2087. BYTE $0xc1
  2088. BYTE $0x61
  2089. BYTE $0x6d
  2090. BYTE $0xd7
  2091. VMOVDQA X14, X5
  2092. BYTE $0xc5
  2093. BYTE $0x61
  2094. BYTE $0x6c
  2095. BYTE $0xfb
  2096. VMOVDQA X6, X14
  2097. BYTE $0xc4
  2098. BYTE $0xc1
  2099. BYTE $0x11
  2100. BYTE $0x6d
  2101. BYTE $0xdf
  2102. BYTE $0xc5
  2103. BYTE $0x41
  2104. BYTE $0x6c
  2105. BYTE $0xff
  2106. BYTE $0xc4
  2107. BYTE $0xc1
  2108. BYTE $0x49
  2109. BYTE $0x6d
  2110. BYTE $0xf7
  2111. BYTE $0xc4
  2112. BYTE $0x41
  2113. BYTE $0x09
  2114. BYTE $0x6c
  2115. BYTE $0xfe
  2116. BYTE $0xc4
  2117. BYTE $0xc1
  2118. BYTE $0x41
  2119. BYTE $0x6d
  2120. BYTE $0xff
  2121. BYTE $0xc5
  2122. BYTE $0x7a
  2123. BYTE $0x7e
  2124. BYTE $0x66
  2125. BYTE $0x70
  2126. BYTE $0xc5
  2127. BYTE $0x7a
  2128. BYTE $0x7e
  2129. BYTE $0x6e
  2130. BYTE $0x48
  2131. BYTE $0xc5
  2132. BYTE $0x7a
  2133. BYTE $0x7e
  2134. BYTE $0x76
  2135. BYTE $0x50
  2136. BYTE $0xc5
  2137. BYTE $0x7a
  2138. BYTE $0x7e
  2139. BYTE $0x7e
  2140. BYTE $0x78
  2141. BYTE $0xc4
  2142. BYTE $0x63
  2143. BYTE $0x99
  2144. BYTE $0x22
  2145. BYTE $0x66
  2146. BYTE $0x20
  2147. BYTE $0x01
  2148. BYTE $0xc4
  2149. BYTE $0x63
  2150. BYTE $0x91
  2151. BYTE $0x22
  2152. BYTE $0x6e
  2153. BYTE $0x68
  2154. BYTE $0x01
  2155. BYTE $0xc4
  2156. BYTE $0x63
  2157. BYTE $0x89
  2158. BYTE $0x22
  2159. BYTE $0x76
  2160. BYTE $0x40
  2161. BYTE $0x01
  2162. BYTE $0xc4
  2163. BYTE $0x63
  2164. BYTE $0x81
  2165. BYTE $0x22
  2166. BYTE $0x7e
  2167. BYTE $0x30
  2168. BYTE $0x01
  2169. VMOVDQA X12, 144(R10)
  2170. VMOVDQA X13, 160(R10)
  2171. VMOVDQA X14, 176(R10)
  2172. VMOVDQA X15, 192(R10)
  2173. VPADDQ X12, X0, X0
  2174. VPADDQ X2, X0, X0
  2175. VPADDQ X13, X1, X1
  2176. VPADDQ X3, X1, X1
  2177. VPXOR X0, X6, X6
  2178. VPXOR X1, X7, X7
  2179. VPSHUFD $-79, X6, X6
  2180. VPSHUFD $-79, X7, X7
  2181. VPADDQ X6, X4, X4
  2182. VPADDQ X7, X5, X5
  2183. VPXOR X4, X2, X2
  2184. VPXOR X5, X3, X3
  2185. VPSHUFB X8, X2, X2
  2186. VPSHUFB X8, X3, X3
  2187. VPADDQ X14, X0, X0
  2188. VPADDQ X2, X0, X0
  2189. VPADDQ X15, X1, X1
  2190. VPADDQ X3, X1, X1
  2191. VPXOR X0, X6, X6
  2192. VPXOR X1, X7, X7
  2193. VPSHUFB X9, X6, X6
  2194. VPSHUFB X9, X7, X7
  2195. VPADDQ X6, X4, X4
  2196. VPADDQ X7, X5, X5
  2197. VPXOR X4, X2, X2
  2198. VPXOR X5, X3, X3
  2199. VPADDQ X2, X2, X15
  2200. VPSRLQ $0x3f, X2, X2
  2201. VPXOR X15, X2, X2
  2202. VPADDQ X3, X3, X15
  2203. VPSRLQ $0x3f, X3, X3
  2204. VPXOR X15, X3, X3
  2205. VMOVDQA X6, X13
  2206. VMOVDQA X2, X14
  2207. VMOVDQA X4, X6
  2208. BYTE $0xc4
  2209. BYTE $0x41
  2210. BYTE $0x11
  2211. BYTE $0x6c
  2212. BYTE $0xfd
  2213. VMOVDQA X5, X4
  2214. VMOVDQA X6, X5
  2215. BYTE $0xc4
  2216. BYTE $0xc1
  2217. BYTE $0x41
  2218. BYTE $0x6d
  2219. BYTE $0xf7
  2220. BYTE $0xc5
  2221. BYTE $0x41
  2222. BYTE $0x6c
  2223. BYTE $0xff
  2224. BYTE $0xc4
  2225. BYTE $0xc1
  2226. BYTE $0x11
  2227. BYTE $0x6d
  2228. BYTE $0xff
  2229. BYTE $0xc5
  2230. BYTE $0x61
  2231. BYTE $0x6c
  2232. BYTE $0xfb
  2233. BYTE $0xc4
  2234. BYTE $0xc1
  2235. BYTE $0x69
  2236. BYTE $0x6d
  2237. BYTE $0xd7
  2238. BYTE $0xc4
  2239. BYTE $0x41
  2240. BYTE $0x09
  2241. BYTE $0x6c
  2242. BYTE $0xfe
  2243. BYTE $0xc4
  2244. BYTE $0xc1
  2245. BYTE $0x61
  2246. BYTE $0x6d
  2247. BYTE $0xdf
  2248. VPSHUFD $0x4e, (SI), X12
  2249. BYTE $0xc5
  2250. BYTE $0x7a
  2251. BYTE $0x7e
  2252. BYTE $0x6e
  2253. BYTE $0x58
  2254. BYTE $0xc5
  2255. BYTE $0x7a
  2256. BYTE $0x7e
  2257. BYTE $0x76
  2258. BYTE $0x60
  2259. BYTE $0xc5
  2260. BYTE $0x7a
  2261. BYTE $0x7e
  2262. BYTE $0x7e
  2263. BYTE $0x38
  2264. BYTE $0xc4
  2265. BYTE $0x63
  2266. BYTE $0x91
  2267. BYTE $0x22
  2268. BYTE $0x6e
  2269. BYTE $0x28
  2270. BYTE $0x01
  2271. BYTE $0xc4
  2272. BYTE $0x63
  2273. BYTE $0x89
  2274. BYTE $0x22
  2275. BYTE $0x76
  2276. BYTE $0x10
  2277. BYTE $0x01
  2278. BYTE $0xc4
  2279. BYTE $0x63
  2280. BYTE $0x81
  2281. BYTE $0x22
  2282. BYTE $0x7e
  2283. BYTE $0x18
  2284. BYTE $0x01
  2285. VMOVDQA X12, 208(R10)
  2286. VMOVDQA X13, 224(R10)
  2287. VMOVDQA X14, 240(R10)
  2288. VMOVDQA X15, 256(R10)
  2289. VPADDQ X12, X0, X0
  2290. VPADDQ X2, X0, X0
  2291. VPADDQ X13, X1, X1
  2292. VPADDQ X3, X1, X1
  2293. VPXOR X0, X6, X6
  2294. VPXOR X1, X7, X7
  2295. VPSHUFD $-79, X6, X6
  2296. VPSHUFD $-79, X7, X7
  2297. VPADDQ X6, X4, X4
  2298. VPADDQ X7, X5, X5
  2299. VPXOR X4, X2, X2
  2300. VPXOR X5, X3, X3
  2301. VPSHUFB X8, X2, X2
  2302. VPSHUFB X8, X3, X3
  2303. VPADDQ X14, X0, X0
  2304. VPADDQ X2, X0, X0
  2305. VPADDQ X15, X1, X1
  2306. VPADDQ X3, X1, X1
  2307. VPXOR X0, X6, X6
  2308. VPXOR X1, X7, X7
  2309. VPSHUFB X9, X6, X6
  2310. VPSHUFB X9, X7, X7
  2311. VPADDQ X6, X4, X4
  2312. VPADDQ X7, X5, X5
  2313. VPXOR X4, X2, X2
  2314. VPXOR X5, X3, X3
  2315. VPADDQ X2, X2, X15
  2316. VPSRLQ $0x3f, X2, X2
  2317. VPXOR X15, X2, X2
  2318. VPADDQ X3, X3, X15
  2319. VPSRLQ $0x3f, X3, X3
  2320. VPXOR X15, X3, X3
  2321. VMOVDQA X2, X13
  2322. VMOVDQA X4, X14
  2323. BYTE $0xc5
  2324. BYTE $0x69
  2325. BYTE $0x6c
  2326. BYTE $0xfa
  2327. VMOVDQA X5, X4
  2328. BYTE $0xc4
  2329. BYTE $0xc1
  2330. BYTE $0x61
  2331. BYTE $0x6d
  2332. BYTE $0xd7
  2333. VMOVDQA X14, X5
  2334. BYTE $0xc5
  2335. BYTE $0x61
  2336. BYTE $0x6c
  2337. BYTE $0xfb
  2338. VMOVDQA X6, X14
  2339. BYTE $0xc4
  2340. BYTE $0xc1
  2341. BYTE $0x11
  2342. BYTE $0x6d
  2343. BYTE $0xdf
  2344. BYTE $0xc5
  2345. BYTE $0x41
  2346. BYTE $0x6c
  2347. BYTE $0xff
  2348. BYTE $0xc4
  2349. BYTE $0xc1
  2350. BYTE $0x49
  2351. BYTE $0x6d
  2352. BYTE $0xf7
  2353. BYTE $0xc4
  2354. BYTE $0x41
  2355. BYTE $0x09
  2356. BYTE $0x6c
  2357. BYTE $0xfe
  2358. BYTE $0xc4
  2359. BYTE $0xc1
  2360. BYTE $0x41
  2361. BYTE $0x6d
  2362. BYTE $0xff
  2363. VMOVDQU 88(SI), X12
  2364. BYTE $0xc5
  2365. BYTE $0x7a
  2366. BYTE $0x7e
  2367. BYTE $0x6e
  2368. BYTE $0x28
  2369. BYTE $0xc5
  2370. BYTE $0x7a
  2371. BYTE $0x7e
  2372. BYTE $0x76
  2373. BYTE $0x40
  2374. BYTE $0xc5
  2375. BYTE $0x7a
  2376. BYTE $0x7e
  2377. BYTE $0x7e
  2378. BYTE $0x10
  2379. BYTE $0xc4
  2380. BYTE $0x63
  2381. BYTE $0x91
  2382. BYTE $0x22
  2383. BYTE $0x6e
  2384. BYTE $0x78
  2385. BYTE $0x01
  2386. BYTE $0xc4
  2387. BYTE $0x63
  2388. BYTE $0x89
  2389. BYTE $0x22
  2390. BYTE $0x36
  2391. BYTE $0x01
  2392. BYTE $0xc4
  2393. BYTE $0x63
  2394. BYTE $0x81
  2395. BYTE $0x22
  2396. BYTE $0x7e
  2397. BYTE $0x68
  2398. BYTE $0x01
  2399. VPADDQ X12, X0, X0
  2400. VPADDQ X2, X0, X0
  2401. VPADDQ X13, X1, X1
  2402. VPADDQ X3, X1, X1
  2403. VPXOR X0, X6, X6
  2404. VPXOR X1, X7, X7
  2405. VPSHUFD $-79, X6, X6
  2406. VPSHUFD $-79, X7, X7
  2407. VPADDQ X6, X4, X4
  2408. VPADDQ X7, X5, X5
  2409. VPXOR X4, X2, X2
  2410. VPXOR X5, X3, X3
  2411. VPSHUFB X8, X2, X2
  2412. VPSHUFB X8, X3, X3
  2413. VPADDQ X14, X0, X0
  2414. VPADDQ X2, X0, X0
  2415. VPADDQ X15, X1, X1
  2416. VPADDQ X3, X1, X1
  2417. VPXOR X0, X6, X6
  2418. VPXOR X1, X7, X7
  2419. VPSHUFB X9, X6, X6
  2420. VPSHUFB X9, X7, X7
  2421. VPADDQ X6, X4, X4
  2422. VPADDQ X7, X5, X5
  2423. VPXOR X4, X2, X2
  2424. VPXOR X5, X3, X3
  2425. VPADDQ X2, X2, X15
  2426. VPSRLQ $0x3f, X2, X2
  2427. VPXOR X15, X2, X2
  2428. VPADDQ X3, X3, X15
  2429. VPSRLQ $0x3f, X3, X3
  2430. VPXOR X15, X3, X3
  2431. VMOVDQA X6, X13
  2432. VMOVDQA X2, X14
  2433. VMOVDQA X4, X6
  2434. BYTE $0xc4
  2435. BYTE $0x41
  2436. BYTE $0x11
  2437. BYTE $0x6c
  2438. BYTE $0xfd
  2439. VMOVDQA X5, X4
  2440. VMOVDQA X6, X5
  2441. BYTE $0xc4
  2442. BYTE $0xc1
  2443. BYTE $0x41
  2444. BYTE $0x6d
  2445. BYTE $0xf7
  2446. BYTE $0xc5
  2447. BYTE $0x41
  2448. BYTE $0x6c
  2449. BYTE $0xff
  2450. BYTE $0xc4
  2451. BYTE $0xc1
  2452. BYTE $0x11
  2453. BYTE $0x6d
  2454. BYTE $0xff
  2455. BYTE $0xc5
  2456. BYTE $0x61
  2457. BYTE $0x6c
  2458. BYTE $0xfb
  2459. BYTE $0xc4
  2460. BYTE $0xc1
  2461. BYTE $0x69
  2462. BYTE $0x6d
  2463. BYTE $0xd7
  2464. BYTE $0xc4
  2465. BYTE $0x41
  2466. BYTE $0x09
  2467. BYTE $0x6c
  2468. BYTE $0xfe
  2469. BYTE $0xc4
  2470. BYTE $0xc1
  2471. BYTE $0x61
  2472. BYTE $0x6d
  2473. BYTE $0xdf
  2474. BYTE $0xc5
  2475. BYTE $0x7a
  2476. BYTE $0x7e
  2477. BYTE $0x66
  2478. BYTE $0x50
  2479. BYTE $0xc5
  2480. BYTE $0x7a
  2481. BYTE $0x7e
  2482. BYTE $0x6e
  2483. BYTE $0x38
  2484. BYTE $0xc5
  2485. BYTE $0x7a
  2486. BYTE $0x7e
  2487. BYTE $0x76
  2488. BYTE $0x70
  2489. BYTE $0xc5
  2490. BYTE $0x7a
  2491. BYTE $0x7e
  2492. BYTE $0x7e
  2493. BYTE $0x08
  2494. BYTE $0xc4
  2495. BYTE $0x63
  2496. BYTE $0x99
  2497. BYTE $0x22
  2498. BYTE $0x66
  2499. BYTE $0x18
  2500. BYTE $0x01
  2501. BYTE $0xc4
  2502. BYTE $0x63
  2503. BYTE $0x91
  2504. BYTE $0x22
  2505. BYTE $0x6e
  2506. BYTE $0x48
  2507. BYTE $0x01
  2508. BYTE $0xc4
  2509. BYTE $0x63
  2510. BYTE $0x89
  2511. BYTE $0x22
  2512. BYTE $0x76
  2513. BYTE $0x30
  2514. BYTE $0x01
  2515. BYTE $0xc4
  2516. BYTE $0x63
  2517. BYTE $0x81
  2518. BYTE $0x22
  2519. BYTE $0x7e
  2520. BYTE $0x20
  2521. BYTE $0x01
  2522. VPADDQ X12, X0, X0
  2523. VPADDQ X2, X0, X0
  2524. VPADDQ X13, X1, X1
  2525. VPADDQ X3, X1, X1
  2526. VPXOR X0, X6, X6
  2527. VPXOR X1, X7, X7
  2528. VPSHUFD $-79, X6, X6
  2529. VPSHUFD $-79, X7, X7
  2530. VPADDQ X6, X4, X4
  2531. VPADDQ X7, X5, X5
  2532. VPXOR X4, X2, X2
  2533. VPXOR X5, X3, X3
  2534. VPSHUFB X8, X2, X2
  2535. VPSHUFB X8, X3, X3
  2536. VPADDQ X14, X0, X0
  2537. VPADDQ X2, X0, X0
  2538. VPADDQ X15, X1, X1
  2539. VPADDQ X3, X1, X1
  2540. VPXOR X0, X6, X6
  2541. VPXOR X1, X7, X7
  2542. VPSHUFB X9, X6, X6
  2543. VPSHUFB X9, X7, X7
  2544. VPADDQ X6, X4, X4
  2545. VPADDQ X7, X5, X5
  2546. VPXOR X4, X2, X2
  2547. VPXOR X5, X3, X3
  2548. VPADDQ X2, X2, X15
  2549. VPSRLQ $0x3f, X2, X2
  2550. VPXOR X15, X2, X2
  2551. VPADDQ X3, X3, X15
  2552. VPSRLQ $0x3f, X3, X3
  2553. VPXOR X15, X3, X3
  2554. VMOVDQA X2, X13
  2555. VMOVDQA X4, X14
  2556. BYTE $0xc5
  2557. BYTE $0x69
  2558. BYTE $0x6c
  2559. BYTE $0xfa
  2560. VMOVDQA X5, X4
  2561. BYTE $0xc4
  2562. BYTE $0xc1
  2563. BYTE $0x61
  2564. BYTE $0x6d
  2565. BYTE $0xd7
  2566. VMOVDQA X14, X5
  2567. BYTE $0xc5
  2568. BYTE $0x61
  2569. BYTE $0x6c
  2570. BYTE $0xfb
  2571. VMOVDQA X6, X14
  2572. BYTE $0xc4
  2573. BYTE $0xc1
  2574. BYTE $0x11
  2575. BYTE $0x6d
  2576. BYTE $0xdf
  2577. BYTE $0xc5
  2578. BYTE $0x41
  2579. BYTE $0x6c
  2580. BYTE $0xff
  2581. BYTE $0xc4
  2582. BYTE $0xc1
  2583. BYTE $0x49
  2584. BYTE $0x6d
  2585. BYTE $0xf7
  2586. BYTE $0xc4
  2587. BYTE $0x41
  2588. BYTE $0x09
  2589. BYTE $0x6c
  2590. BYTE $0xfe
  2591. BYTE $0xc4
  2592. BYTE $0xc1
  2593. BYTE $0x41
  2594. BYTE $0x6d
  2595. BYTE $0xff
  2596. BYTE $0xc5
  2597. BYTE $0x7a
  2598. BYTE $0x7e
  2599. BYTE $0x66
  2600. BYTE $0x38
  2601. BYTE $0xc5
  2602. BYTE $0x7a
  2603. BYTE $0x7e
  2604. BYTE $0x6e
  2605. BYTE $0x68
  2606. BYTE $0xc5
  2607. BYTE $0x7a
  2608. BYTE $0x7e
  2609. BYTE $0x76
  2610. BYTE $0x48
  2611. BYTE $0xc5
  2612. BYTE $0x7a
  2613. BYTE $0x7e
  2614. BYTE $0x7e
  2615. BYTE $0x60
  2616. BYTE $0xc4
  2617. BYTE $0x63
  2618. BYTE $0x99
  2619. BYTE $0x22
  2620. BYTE $0x66
  2621. BYTE $0x18
  2622. BYTE $0x01
  2623. BYTE $0xc4
  2624. BYTE $0x63
  2625. BYTE $0x91
  2626. BYTE $0x22
  2627. BYTE $0x6e
  2628. BYTE $0x58
  2629. BYTE $0x01
  2630. BYTE $0xc4
  2631. BYTE $0x63
  2632. BYTE $0x89
  2633. BYTE $0x22
  2634. BYTE $0x76
  2635. BYTE $0x08
  2636. BYTE $0x01
  2637. BYTE $0xc4
  2638. BYTE $0x63
  2639. BYTE $0x81
  2640. BYTE $0x22
  2641. BYTE $0x7e
  2642. BYTE $0x70
  2643. BYTE $0x01
  2644. VPADDQ X12, X0, X0
  2645. VPADDQ X2, X0, X0
  2646. VPADDQ X13, X1, X1
  2647. VPADDQ X3, X1, X1
  2648. VPXOR X0, X6, X6
  2649. VPXOR X1, X7, X7
  2650. VPSHUFD $-79, X6, X6
  2651. VPSHUFD $-79, X7, X7
  2652. VPADDQ X6, X4, X4
  2653. VPADDQ X7, X5, X5
  2654. VPXOR X4, X2, X2
  2655. VPXOR X5, X3, X3
  2656. VPSHUFB X8, X2, X2
  2657. VPSHUFB X8, X3, X3
  2658. VPADDQ X14, X0, X0
  2659. VPADDQ X2, X0, X0
  2660. VPADDQ X15, X1, X1
  2661. VPADDQ X3, X1, X1
  2662. VPXOR X0, X6, X6
  2663. VPXOR X1, X7, X7
  2664. VPSHUFB X9, X6, X6
  2665. VPSHUFB X9, X7, X7
  2666. VPADDQ X6, X4, X4
  2667. VPADDQ X7, X5, X5
  2668. VPXOR X4, X2, X2
  2669. VPXOR X5, X3, X3
  2670. VPADDQ X2, X2, X15
  2671. VPSRLQ $0x3f, X2, X2
  2672. VPXOR X15, X2, X2
  2673. VPADDQ X3, X3, X15
  2674. VPSRLQ $0x3f, X3, X3
  2675. VPXOR X15, X3, X3
  2676. VMOVDQA X6, X13
  2677. VMOVDQA X2, X14
  2678. VMOVDQA X4, X6
  2679. BYTE $0xc4
  2680. BYTE $0x41
  2681. BYTE $0x11
  2682. BYTE $0x6c
  2683. BYTE $0xfd
  2684. VMOVDQA X5, X4
  2685. VMOVDQA X6, X5
  2686. BYTE $0xc4
  2687. BYTE $0xc1
  2688. BYTE $0x41
  2689. BYTE $0x6d
  2690. BYTE $0xf7
  2691. BYTE $0xc5
  2692. BYTE $0x41
  2693. BYTE $0x6c
  2694. BYTE $0xff
  2695. BYTE $0xc4
  2696. BYTE $0xc1
  2697. BYTE $0x11
  2698. BYTE $0x6d
  2699. BYTE $0xff
  2700. BYTE $0xc5
  2701. BYTE $0x61
  2702. BYTE $0x6c
  2703. BYTE $0xfb
  2704. BYTE $0xc4
  2705. BYTE $0xc1
  2706. BYTE $0x69
  2707. BYTE $0x6d
  2708. BYTE $0xd7
  2709. BYTE $0xc4
  2710. BYTE $0x41
  2711. BYTE $0x09
  2712. BYTE $0x6c
  2713. BYTE $0xfe
  2714. BYTE $0xc4
  2715. BYTE $0xc1
  2716. BYTE $0x61
  2717. BYTE $0x6d
  2718. BYTE $0xdf
  2719. BYTE $0xc5
  2720. BYTE $0x7a
  2721. BYTE $0x7e
  2722. BYTE $0x66
  2723. BYTE $0x10
  2724. BYTE $0xc5
  2725. BYTE $0x7a
  2726. BYTE $0x7e
  2727. BYTE $0x6e
  2728. BYTE $0x20
  2729. BYTE $0xc5
  2730. BYTE $0x7a
  2731. BYTE $0x7e
  2732. BYTE $0x76
  2733. BYTE $0x30
  2734. BYTE $0xc5
  2735. BYTE $0x7a
  2736. BYTE $0x7e
  2737. BYTE $0x3e
  2738. BYTE $0xc4
  2739. BYTE $0x63
  2740. BYTE $0x99
  2741. BYTE $0x22
  2742. BYTE $0x66
  2743. BYTE $0x28
  2744. BYTE $0x01
  2745. BYTE $0xc4
  2746. BYTE $0x63
  2747. BYTE $0x91
  2748. BYTE $0x22
  2749. BYTE $0x6e
  2750. BYTE $0x78
  2751. BYTE $0x01
  2752. BYTE $0xc4
  2753. BYTE $0x63
  2754. BYTE $0x89
  2755. BYTE $0x22
  2756. BYTE $0x76
  2757. BYTE $0x50
  2758. BYTE $0x01
  2759. BYTE $0xc4
  2760. BYTE $0x63
  2761. BYTE $0x81
  2762. BYTE $0x22
  2763. BYTE $0x7e
  2764. BYTE $0x40
  2765. BYTE $0x01
  2766. VPADDQ X12, X0, X0
  2767. VPADDQ X2, X0, X0
  2768. VPADDQ X13, X1, X1
  2769. VPADDQ X3, X1, X1
  2770. VPXOR X0, X6, X6
  2771. VPXOR X1, X7, X7
  2772. VPSHUFD $-79, X6, X6
  2773. VPSHUFD $-79, X7, X7
  2774. VPADDQ X6, X4, X4
  2775. VPADDQ X7, X5, X5
  2776. VPXOR X4, X2, X2
  2777. VPXOR X5, X3, X3
  2778. VPSHUFB X8, X2, X2
  2779. VPSHUFB X8, X3, X3
  2780. VPADDQ X14, X0, X0
  2781. VPADDQ X2, X0, X0
  2782. VPADDQ X15, X1, X1
  2783. VPADDQ X3, X1, X1
  2784. VPXOR X0, X6, X6
  2785. VPXOR X1, X7, X7
  2786. VPSHUFB X9, X6, X6
  2787. VPSHUFB X9, X7, X7
  2788. VPADDQ X6, X4, X4
  2789. VPADDQ X7, X5, X5
  2790. VPXOR X4, X2, X2
  2791. VPXOR X5, X3, X3
  2792. VPADDQ X2, X2, X15
  2793. VPSRLQ $0x3f, X2, X2
  2794. VPXOR X15, X2, X2
  2795. VPADDQ X3, X3, X15
  2796. VPSRLQ $0x3f, X3, X3
  2797. VPXOR X15, X3, X3
  2798. VMOVDQA X2, X13
  2799. VMOVDQA X4, X14
  2800. BYTE $0xc5
  2801. BYTE $0x69
  2802. BYTE $0x6c
  2803. BYTE $0xfa
  2804. VMOVDQA X5, X4
  2805. BYTE $0xc4
  2806. BYTE $0xc1
  2807. BYTE $0x61
  2808. BYTE $0x6d
  2809. BYTE $0xd7
  2810. VMOVDQA X14, X5
  2811. BYTE $0xc5
  2812. BYTE $0x61
  2813. BYTE $0x6c
  2814. BYTE $0xfb
  2815. VMOVDQA X6, X14
  2816. BYTE $0xc4
  2817. BYTE $0xc1
  2818. BYTE $0x11
  2819. BYTE $0x6d
  2820. BYTE $0xdf
  2821. BYTE $0xc5
  2822. BYTE $0x41
  2823. BYTE $0x6c
  2824. BYTE $0xff
  2825. BYTE $0xc4
  2826. BYTE $0xc1
  2827. BYTE $0x49
  2828. BYTE $0x6d
  2829. BYTE $0xf7
  2830. BYTE $0xc4
  2831. BYTE $0x41
  2832. BYTE $0x09
  2833. BYTE $0x6c
  2834. BYTE $0xfe
  2835. BYTE $0xc4
  2836. BYTE $0xc1
  2837. BYTE $0x41
  2838. BYTE $0x6d
  2839. BYTE $0xff
  2840. BYTE $0xc5
  2841. BYTE $0x7a
  2842. BYTE $0x7e
  2843. BYTE $0x66
  2844. BYTE $0x48
  2845. BYTE $0xc5
  2846. BYTE $0x7a
  2847. BYTE $0x7e
  2848. BYTE $0x6e
  2849. BYTE $0x10
  2850. BYTE $0xc5
  2851. BYTE $0x7a
  2852. BYTE $0x7e
  2853. BYTE $0x36
  2854. BYTE $0xc5
  2855. BYTE $0x7a
  2856. BYTE $0x7e
  2857. BYTE $0x7e
  2858. BYTE $0x20
  2859. BYTE $0xc4
  2860. BYTE $0x63
  2861. BYTE $0x99
  2862. BYTE $0x22
  2863. BYTE $0x66
  2864. BYTE $0x28
  2865. BYTE $0x01
  2866. BYTE $0xc4
  2867. BYTE $0x63
  2868. BYTE $0x91
  2869. BYTE $0x22
  2870. BYTE $0x6e
  2871. BYTE $0x50
  2872. BYTE $0x01
  2873. BYTE $0xc4
  2874. BYTE $0x63
  2875. BYTE $0x89
  2876. BYTE $0x22
  2877. BYTE $0x76
  2878. BYTE $0x38
  2879. BYTE $0x01
  2880. BYTE $0xc4
  2881. BYTE $0x63
  2882. BYTE $0x81
  2883. BYTE $0x22
  2884. BYTE $0x7e
  2885. BYTE $0x78
  2886. BYTE $0x01
  2887. VPADDQ X12, X0, X0
  2888. VPADDQ X2, X0, X0
  2889. VPADDQ X13, X1, X1
  2890. VPADDQ X3, X1, X1
  2891. VPXOR X0, X6, X6
  2892. VPXOR X1, X7, X7
  2893. VPSHUFD $-79, X6, X6
  2894. VPSHUFD $-79, X7, X7
  2895. VPADDQ X6, X4, X4
  2896. VPADDQ X7, X5, X5
  2897. VPXOR X4, X2, X2
  2898. VPXOR X5, X3, X3
  2899. VPSHUFB X8, X2, X2
  2900. VPSHUFB X8, X3, X3
  2901. VPADDQ X14, X0, X0
  2902. VPADDQ X2, X0, X0
  2903. VPADDQ X15, X1, X1
  2904. VPADDQ X3, X1, X1
  2905. VPXOR X0, X6, X6
  2906. VPXOR X1, X7, X7
  2907. VPSHUFB X9, X6, X6
  2908. VPSHUFB X9, X7, X7
  2909. VPADDQ X6, X4, X4
  2910. VPADDQ X7, X5, X5
  2911. VPXOR X4, X2, X2
  2912. VPXOR X5, X3, X3
  2913. VPADDQ X2, X2, X15
  2914. VPSRLQ $0x3f, X2, X2
  2915. VPXOR X15, X2, X2
  2916. VPADDQ X3, X3, X15
  2917. VPSRLQ $0x3f, X3, X3
  2918. VPXOR X15, X3, X3
  2919. VMOVDQA X6, X13
  2920. VMOVDQA X2, X14
  2921. VMOVDQA X4, X6
  2922. BYTE $0xc4
  2923. BYTE $0x41
  2924. BYTE $0x11
  2925. BYTE $0x6c
  2926. BYTE $0xfd
  2927. VMOVDQA X5, X4
  2928. VMOVDQA X6, X5
  2929. BYTE $0xc4
  2930. BYTE $0xc1
  2931. BYTE $0x41
  2932. BYTE $0x6d
  2933. BYTE $0xf7
  2934. BYTE $0xc5
  2935. BYTE $0x41
  2936. BYTE $0x6c
  2937. BYTE $0xff
  2938. BYTE $0xc4
  2939. BYTE $0xc1
  2940. BYTE $0x11
  2941. BYTE $0x6d
  2942. BYTE $0xff
  2943. BYTE $0xc5
  2944. BYTE $0x61
  2945. BYTE $0x6c
  2946. BYTE $0xfb
  2947. BYTE $0xc4
  2948. BYTE $0xc1
  2949. BYTE $0x69
  2950. BYTE $0x6d
  2951. BYTE $0xd7
  2952. BYTE $0xc4
  2953. BYTE $0x41
  2954. BYTE $0x09
  2955. BYTE $0x6c
  2956. BYTE $0xfe
  2957. BYTE $0xc4
  2958. BYTE $0xc1
  2959. BYTE $0x61
  2960. BYTE $0x6d
  2961. BYTE $0xdf
  2962. BYTE $0xc5
  2963. BYTE $0x7a
  2964. BYTE $0x7e
  2965. BYTE $0x66
  2966. BYTE $0x70
  2967. BYTE $0xc5
  2968. BYTE $0x7a
  2969. BYTE $0x7e
  2970. BYTE $0x6e
  2971. BYTE $0x30
  2972. BYTE $0xc5
  2973. BYTE $0x7a
  2974. BYTE $0x7e
  2975. BYTE $0x76
  2976. BYTE $0x08
  2977. BYTE $0xc5
  2978. BYTE $0x7a
  2979. BYTE $0x7e
  2980. BYTE $0x7e
  2981. BYTE $0x40
  2982. BYTE $0xc4
  2983. BYTE $0x63
  2984. BYTE $0x99
  2985. BYTE $0x22
  2986. BYTE $0x66
  2987. BYTE $0x58
  2988. BYTE $0x01
  2989. BYTE $0xc4
  2990. BYTE $0x63
  2991. BYTE $0x91
  2992. BYTE $0x22
  2993. BYTE $0x6e
  2994. BYTE $0x18
  2995. BYTE $0x01
  2996. BYTE $0xc4
  2997. BYTE $0x63
  2998. BYTE $0x89
  2999. BYTE $0x22
  3000. BYTE $0x76
  3001. BYTE $0x60
  3002. BYTE $0x01
  3003. BYTE $0xc4
  3004. BYTE $0x63
  3005. BYTE $0x81
  3006. BYTE $0x22
  3007. BYTE $0x7e
  3008. BYTE $0x68
  3009. BYTE $0x01
  3010. VPADDQ X12, X0, X0
  3011. VPADDQ X2, X0, X0
  3012. VPADDQ X13, X1, X1
  3013. VPADDQ X3, X1, X1
  3014. VPXOR X0, X6, X6
  3015. VPXOR X1, X7, X7
  3016. VPSHUFD $-79, X6, X6
  3017. VPSHUFD $-79, X7, X7
  3018. VPADDQ X6, X4, X4
  3019. VPADDQ X7, X5, X5
  3020. VPXOR X4, X2, X2
  3021. VPXOR X5, X3, X3
  3022. VPSHUFB X8, X2, X2
  3023. VPSHUFB X8, X3, X3
  3024. VPADDQ X14, X0, X0
  3025. VPADDQ X2, X0, X0
  3026. VPADDQ X15, X1, X1
  3027. VPADDQ X3, X1, X1
  3028. VPXOR X0, X6, X6
  3029. VPXOR X1, X7, X7
  3030. VPSHUFB X9, X6, X6
  3031. VPSHUFB X9, X7, X7
  3032. VPADDQ X6, X4, X4
  3033. VPADDQ X7, X5, X5
  3034. VPXOR X4, X2, X2
  3035. VPXOR X5, X3, X3
  3036. VPADDQ X2, X2, X15
  3037. VPSRLQ $0x3f, X2, X2
  3038. VPXOR X15, X2, X2
  3039. VPADDQ X3, X3, X15
  3040. VPSRLQ $0x3f, X3, X3
  3041. VPXOR X15, X3, X3
  3042. VMOVDQA X2, X13
  3043. VMOVDQA X4, X14
  3044. BYTE $0xc5
  3045. BYTE $0x69
  3046. BYTE $0x6c
  3047. BYTE $0xfa
  3048. VMOVDQA X5, X4
  3049. BYTE $0xc4
  3050. BYTE $0xc1
  3051. BYTE $0x61
  3052. BYTE $0x6d
  3053. BYTE $0xd7
  3054. VMOVDQA X14, X5
  3055. BYTE $0xc5
  3056. BYTE $0x61
  3057. BYTE $0x6c
  3058. BYTE $0xfb
  3059. VMOVDQA X6, X14
  3060. BYTE $0xc4
  3061. BYTE $0xc1
  3062. BYTE $0x11
  3063. BYTE $0x6d
  3064. BYTE $0xdf
  3065. BYTE $0xc5
  3066. BYTE $0x41
  3067. BYTE $0x6c
  3068. BYTE $0xff
  3069. BYTE $0xc4
  3070. BYTE $0xc1
  3071. BYTE $0x49
  3072. BYTE $0x6d
  3073. BYTE $0xf7
  3074. BYTE $0xc4
  3075. BYTE $0x41
  3076. BYTE $0x09
  3077. BYTE $0x6c
  3078. BYTE $0xfe
  3079. BYTE $0xc4
  3080. BYTE $0xc1
  3081. BYTE $0x41
  3082. BYTE $0x6d
  3083. BYTE $0xff
  3084. BYTE $0xc5
  3085. BYTE $0x7a
  3086. BYTE $0x7e
  3087. BYTE $0x66
  3088. BYTE $0x10
  3089. BYTE $0xc5
  3090. BYTE $0x7a
  3091. BYTE $0x7e
  3092. BYTE $0x2e
  3093. BYTE $0xc5
  3094. BYTE $0x7a
  3095. BYTE $0x7e
  3096. BYTE $0x76
  3097. BYTE $0x60
  3098. BYTE $0xc5
  3099. BYTE $0x7a
  3100. BYTE $0x7e
  3101. BYTE $0x7e
  3102. BYTE $0x58
  3103. BYTE $0xc4
  3104. BYTE $0x63
  3105. BYTE $0x99
  3106. BYTE $0x22
  3107. BYTE $0x66
  3108. BYTE $0x30
  3109. BYTE $0x01
  3110. BYTE $0xc4
  3111. BYTE $0x63
  3112. BYTE $0x91
  3113. BYTE $0x22
  3114. BYTE $0x6e
  3115. BYTE $0x40
  3116. BYTE $0x01
  3117. BYTE $0xc4
  3118. BYTE $0x63
  3119. BYTE $0x89
  3120. BYTE $0x22
  3121. BYTE $0x76
  3122. BYTE $0x50
  3123. BYTE $0x01
  3124. BYTE $0xc4
  3125. BYTE $0x63
  3126. BYTE $0x81
  3127. BYTE $0x22
  3128. BYTE $0x7e
  3129. BYTE $0x18
  3130. BYTE $0x01
  3131. VPADDQ X12, X0, X0
  3132. VPADDQ X2, X0, X0
  3133. VPADDQ X13, X1, X1
  3134. VPADDQ X3, X1, X1
  3135. VPXOR X0, X6, X6
  3136. VPXOR X1, X7, X7
  3137. VPSHUFD $-79, X6, X6
  3138. VPSHUFD $-79, X7, X7
  3139. VPADDQ X6, X4, X4
  3140. VPADDQ X7, X5, X5
  3141. VPXOR X4, X2, X2
  3142. VPXOR X5, X3, X3
  3143. VPSHUFB X8, X2, X2
  3144. VPSHUFB X8, X3, X3
  3145. VPADDQ X14, X0, X0
  3146. VPADDQ X2, X0, X0
  3147. VPADDQ X15, X1, X1
  3148. VPADDQ X3, X1, X1
  3149. VPXOR X0, X6, X6
  3150. VPXOR X1, X7, X7
  3151. VPSHUFB X9, X6, X6
  3152. VPSHUFB X9, X7, X7
  3153. VPADDQ X6, X4, X4
  3154. VPADDQ X7, X5, X5
  3155. VPXOR X4, X2, X2
  3156. VPXOR X5, X3, X3
  3157. VPADDQ X2, X2, X15
  3158. VPSRLQ $0x3f, X2, X2
  3159. VPXOR X15, X2, X2
  3160. VPADDQ X3, X3, X15
  3161. VPSRLQ $0x3f, X3, X3
  3162. VPXOR X15, X3, X3
  3163. VMOVDQA X6, X13
  3164. VMOVDQA X2, X14
  3165. VMOVDQA X4, X6
  3166. BYTE $0xc4
  3167. BYTE $0x41
  3168. BYTE $0x11
  3169. BYTE $0x6c
  3170. BYTE $0xfd
  3171. VMOVDQA X5, X4
  3172. VMOVDQA X6, X5
  3173. BYTE $0xc4
  3174. BYTE $0xc1
  3175. BYTE $0x41
  3176. BYTE $0x6d
  3177. BYTE $0xf7
  3178. BYTE $0xc5
  3179. BYTE $0x41
  3180. BYTE $0x6c
  3181. BYTE $0xff
  3182. BYTE $0xc4
  3183. BYTE $0xc1
  3184. BYTE $0x11
  3185. BYTE $0x6d
  3186. BYTE $0xff
  3187. BYTE $0xc5
  3188. BYTE $0x61
  3189. BYTE $0x6c
  3190. BYTE $0xfb
  3191. BYTE $0xc4
  3192. BYTE $0xc1
  3193. BYTE $0x69
  3194. BYTE $0x6d
  3195. BYTE $0xd7
  3196. BYTE $0xc4
  3197. BYTE $0x41
  3198. BYTE $0x09
  3199. BYTE $0x6c
  3200. BYTE $0xfe
  3201. BYTE $0xc4
  3202. BYTE $0xc1
  3203. BYTE $0x61
  3204. BYTE $0x6d
  3205. BYTE $0xdf
  3206. BYTE $0xc5
  3207. BYTE $0x7a
  3208. BYTE $0x7e
  3209. BYTE $0x66
  3210. BYTE $0x20
  3211. BYTE $0xc5
  3212. BYTE $0x7a
  3213. BYTE $0x7e
  3214. BYTE $0x6e
  3215. BYTE $0x78
  3216. BYTE $0xc5
  3217. BYTE $0x7a
  3218. BYTE $0x7e
  3219. BYTE $0x76
  3220. BYTE $0x68
  3221. BYTE $0xc5
  3222. BYTE $0x7a
  3223. BYTE $0x7e
  3224. BYTE $0x7e
  3225. BYTE $0x70
  3226. BYTE $0xc4
  3227. BYTE $0x63
  3228. BYTE $0x99
  3229. BYTE $0x22
  3230. BYTE $0x66
  3231. BYTE $0x38
  3232. BYTE $0x01
  3233. BYTE $0xc4
  3234. BYTE $0x63
  3235. BYTE $0x91
  3236. BYTE $0x22
  3237. BYTE $0x6e
  3238. BYTE $0x08
  3239. BYTE $0x01
  3240. BYTE $0xc4
  3241. BYTE $0x63
  3242. BYTE $0x89
  3243. BYTE $0x22
  3244. BYTE $0x76
  3245. BYTE $0x28
  3246. BYTE $0x01
  3247. BYTE $0xc4
  3248. BYTE $0x63
  3249. BYTE $0x81
  3250. BYTE $0x22
  3251. BYTE $0x7e
  3252. BYTE $0x48
  3253. BYTE $0x01
  3254. VPADDQ X12, X0, X0
  3255. VPADDQ X2, X0, X0
  3256. VPADDQ X13, X1, X1
  3257. VPADDQ X3, X1, X1
  3258. VPXOR X0, X6, X6
  3259. VPXOR X1, X7, X7
  3260. VPSHUFD $-79, X6, X6
  3261. VPSHUFD $-79, X7, X7
  3262. VPADDQ X6, X4, X4
  3263. VPADDQ X7, X5, X5
  3264. VPXOR X4, X2, X2
  3265. VPXOR X5, X3, X3
  3266. VPSHUFB X8, X2, X2
  3267. VPSHUFB X8, X3, X3
  3268. VPADDQ X14, X0, X0
  3269. VPADDQ X2, X0, X0
  3270. VPADDQ X15, X1, X1
  3271. VPADDQ X3, X1, X1
  3272. VPXOR X0, X6, X6
  3273. VPXOR X1, X7, X7
  3274. VPSHUFB X9, X6, X6
  3275. VPSHUFB X9, X7, X7
  3276. VPADDQ X6, X4, X4
  3277. VPADDQ X7, X5, X5
  3278. VPXOR X4, X2, X2
  3279. VPXOR X5, X3, X3
  3280. VPADDQ X2, X2, X15
  3281. VPSRLQ $0x3f, X2, X2
  3282. VPXOR X15, X2, X2
  3283. VPADDQ X3, X3, X15
  3284. VPSRLQ $0x3f, X3, X3
  3285. VPXOR X15, X3, X3
  3286. VMOVDQA X2, X13
  3287. VMOVDQA X4, X14
  3288. BYTE $0xc5
  3289. BYTE $0x69
  3290. BYTE $0x6c
  3291. BYTE $0xfa
  3292. VMOVDQA X5, X4
  3293. BYTE $0xc4
  3294. BYTE $0xc1
  3295. BYTE $0x61
  3296. BYTE $0x6d
  3297. BYTE $0xd7
  3298. VMOVDQA X14, X5
  3299. BYTE $0xc5
  3300. BYTE $0x61
  3301. BYTE $0x6c
  3302. BYTE $0xfb
  3303. VMOVDQA X6, X14
  3304. BYTE $0xc4
  3305. BYTE $0xc1
  3306. BYTE $0x11
  3307. BYTE $0x6d
  3308. BYTE $0xdf
  3309. BYTE $0xc5
  3310. BYTE $0x41
  3311. BYTE $0x6c
  3312. BYTE $0xff
  3313. BYTE $0xc4
  3314. BYTE $0xc1
  3315. BYTE $0x49
  3316. BYTE $0x6d
  3317. BYTE $0xf7
  3318. BYTE $0xc4
  3319. BYTE $0x41
  3320. BYTE $0x09
  3321. BYTE $0x6c
  3322. BYTE $0xfe
  3323. BYTE $0xc4
  3324. BYTE $0xc1
  3325. BYTE $0x41
  3326. BYTE $0x6d
  3327. BYTE $0xff
  3328. BYTE $0xc5
  3329. BYTE $0x7a
  3330. BYTE $0x7e
  3331. BYTE $0x66
  3332. BYTE $0x60
  3333. BYTE $0xc5
  3334. BYTE $0x7a
  3335. BYTE $0x7e
  3336. BYTE $0x6e
  3337. BYTE $0x70
  3338. BYTE $0xc5
  3339. BYTE $0x7a
  3340. BYTE $0x7e
  3341. BYTE $0x76
  3342. BYTE $0x28
  3343. BYTE $0xc5
  3344. BYTE $0x7a
  3345. BYTE $0x7e
  3346. BYTE $0x7e
  3347. BYTE $0x68
  3348. BYTE $0xc4
  3349. BYTE $0x63
  3350. BYTE $0x99
  3351. BYTE $0x22
  3352. BYTE $0x66
  3353. BYTE $0x08
  3354. BYTE $0x01
  3355. BYTE $0xc4
  3356. BYTE $0x63
  3357. BYTE $0x91
  3358. BYTE $0x22
  3359. BYTE $0x6e
  3360. BYTE $0x20
  3361. BYTE $0x01
  3362. BYTE $0xc4
  3363. BYTE $0x63
  3364. BYTE $0x89
  3365. BYTE $0x22
  3366. BYTE $0x76
  3367. BYTE $0x78
  3368. BYTE $0x01
  3369. BYTE $0xc4
  3370. BYTE $0x63
  3371. BYTE $0x81
  3372. BYTE $0x22
  3373. BYTE $0x7e
  3374. BYTE $0x50
  3375. BYTE $0x01
  3376. VPADDQ X12, X0, X0
  3377. VPADDQ X2, X0, X0
  3378. VPADDQ X13, X1, X1
  3379. VPADDQ X3, X1, X1
  3380. VPXOR X0, X6, X6
  3381. VPXOR X1, X7, X7
  3382. VPSHUFD $-79, X6, X6
  3383. VPSHUFD $-79, X7, X7
  3384. VPADDQ X6, X4, X4
  3385. VPADDQ X7, X5, X5
  3386. VPXOR X4, X2, X2
  3387. VPXOR X5, X3, X3
  3388. VPSHUFB X8, X2, X2
  3389. VPSHUFB X8, X3, X3
  3390. VPADDQ X14, X0, X0
  3391. VPADDQ X2, X0, X0
  3392. VPADDQ X15, X1, X1
  3393. VPADDQ X3, X1, X1
  3394. VPXOR X0, X6, X6
  3395. VPXOR X1, X7, X7
  3396. VPSHUFB X9, X6, X6
  3397. VPSHUFB X9, X7, X7
  3398. VPADDQ X6, X4, X4
  3399. VPADDQ X7, X5, X5
  3400. VPXOR X4, X2, X2
  3401. VPXOR X5, X3, X3
  3402. VPADDQ X2, X2, X15
  3403. VPSRLQ $0x3f, X2, X2
  3404. VPXOR X15, X2, X2
  3405. VPADDQ X3, X3, X15
  3406. VPSRLQ $0x3f, X3, X3
  3407. VPXOR X15, X3, X3
  3408. VMOVDQA X6, X13
  3409. VMOVDQA X2, X14
  3410. VMOVDQA X4, X6
  3411. BYTE $0xc4
  3412. BYTE $0x41
  3413. BYTE $0x11
  3414. BYTE $0x6c
  3415. BYTE $0xfd
  3416. VMOVDQA X5, X4
  3417. VMOVDQA X6, X5
  3418. BYTE $0xc4
  3419. BYTE $0xc1
  3420. BYTE $0x41
  3421. BYTE $0x6d
  3422. BYTE $0xf7
  3423. BYTE $0xc5
  3424. BYTE $0x41
  3425. BYTE $0x6c
  3426. BYTE $0xff
  3427. BYTE $0xc4
  3428. BYTE $0xc1
  3429. BYTE $0x11
  3430. BYTE $0x6d
  3431. BYTE $0xff
  3432. BYTE $0xc5
  3433. BYTE $0x61
  3434. BYTE $0x6c
  3435. BYTE $0xfb
  3436. BYTE $0xc4
  3437. BYTE $0xc1
  3438. BYTE $0x69
  3439. BYTE $0x6d
  3440. BYTE $0xd7
  3441. BYTE $0xc4
  3442. BYTE $0x41
  3443. BYTE $0x09
  3444. BYTE $0x6c
  3445. BYTE $0xfe
  3446. BYTE $0xc4
  3447. BYTE $0xc1
  3448. BYTE $0x61
  3449. BYTE $0x6d
  3450. BYTE $0xdf
  3451. MOVQ (SI), X12
  3452. VPSHUFD $0x4e, 64(SI), X13
  3453. MOVQ 56(SI), X14
  3454. MOVQ 16(SI), X15
  3455. BYTE $0xc4
  3456. BYTE $0x63
  3457. BYTE $0x99
  3458. BYTE $0x22
  3459. BYTE $0x66
  3460. BYTE $0x30
  3461. BYTE $0x01
  3462. BYTE $0xc4
  3463. BYTE $0x63
  3464. BYTE $0x89
  3465. BYTE $0x22
  3466. BYTE $0x76
  3467. BYTE $0x18
  3468. BYTE $0x01
  3469. BYTE $0xc4
  3470. BYTE $0x63
  3471. BYTE $0x81
  3472. BYTE $0x22
  3473. BYTE $0x7e
  3474. BYTE $0x58
  3475. BYTE $0x01
  3476. VPADDQ X12, X0, X0
  3477. VPADDQ X2, X0, X0
  3478. VPADDQ X13, X1, X1
  3479. VPADDQ X3, X1, X1
  3480. VPXOR X0, X6, X6
  3481. VPXOR X1, X7, X7
  3482. VPSHUFD $-79, X6, X6
  3483. VPSHUFD $-79, X7, X7
  3484. VPADDQ X6, X4, X4
  3485. VPADDQ X7, X5, X5
  3486. VPXOR X4, X2, X2
  3487. VPXOR X5, X3, X3
  3488. VPSHUFB X8, X2, X2
  3489. VPSHUFB X8, X3, X3
  3490. VPADDQ X14, X0, X0
  3491. VPADDQ X2, X0, X0
  3492. VPADDQ X15, X1, X1
  3493. VPADDQ X3, X1, X1
  3494. VPXOR X0, X6, X6
  3495. VPXOR X1, X7, X7
  3496. VPSHUFB X9, X6, X6
  3497. VPSHUFB X9, X7, X7
  3498. VPADDQ X6, X4, X4
  3499. VPADDQ X7, X5, X5
  3500. VPXOR X4, X2, X2
  3501. VPXOR X5, X3, X3
  3502. VPADDQ X2, X2, X15
  3503. VPSRLQ $0x3f, X2, X2
  3504. VPXOR X15, X2, X2
  3505. VPADDQ X3, X3, X15
  3506. VPSRLQ $0x3f, X3, X3
  3507. VPXOR X15, X3, X3
  3508. VMOVDQA X2, X13
  3509. VMOVDQA X4, X14
  3510. BYTE $0xc5
  3511. BYTE $0x69
  3512. BYTE $0x6c
  3513. BYTE $0xfa
  3514. VMOVDQA X5, X4
  3515. BYTE $0xc4
  3516. BYTE $0xc1
  3517. BYTE $0x61
  3518. BYTE $0x6d
  3519. BYTE $0xd7
  3520. VMOVDQA X14, X5
  3521. BYTE $0xc5
  3522. BYTE $0x61
  3523. BYTE $0x6c
  3524. BYTE $0xfb
  3525. VMOVDQA X6, X14
  3526. BYTE $0xc4
  3527. BYTE $0xc1
  3528. BYTE $0x11
  3529. BYTE $0x6d
  3530. BYTE $0xdf
  3531. BYTE $0xc5
  3532. BYTE $0x41
  3533. BYTE $0x6c
  3534. BYTE $0xff
  3535. BYTE $0xc4
  3536. BYTE $0xc1
  3537. BYTE $0x49
  3538. BYTE $0x6d
  3539. BYTE $0xf7
  3540. BYTE $0xc4
  3541. BYTE $0x41
  3542. BYTE $0x09
  3543. BYTE $0x6c
  3544. BYTE $0xfe
  3545. BYTE $0xc4
  3546. BYTE $0xc1
  3547. BYTE $0x41
  3548. BYTE $0x6d
  3549. BYTE $0xff
  3550. BYTE $0xc5
  3551. BYTE $0x7a
  3552. BYTE $0x7e
  3553. BYTE $0x66
  3554. BYTE $0x68
  3555. BYTE $0xc5
  3556. BYTE $0x7a
  3557. BYTE $0x7e
  3558. BYTE $0x6e
  3559. BYTE $0x60
  3560. BYTE $0xc5
  3561. BYTE $0x7a
  3562. BYTE $0x7e
  3563. BYTE $0x76
  3564. BYTE $0x58
  3565. BYTE $0xc5
  3566. BYTE $0x7a
  3567. BYTE $0x7e
  3568. BYTE $0x7e
  3569. BYTE $0x08
  3570. BYTE $0xc4
  3571. BYTE $0x63
  3572. BYTE $0x99
  3573. BYTE $0x22
  3574. BYTE $0x66
  3575. BYTE $0x38
  3576. BYTE $0x01
  3577. BYTE $0xc4
  3578. BYTE $0x63
  3579. BYTE $0x91
  3580. BYTE $0x22
  3581. BYTE $0x6e
  3582. BYTE $0x18
  3583. BYTE $0x01
  3584. BYTE $0xc4
  3585. BYTE $0x63
  3586. BYTE $0x89
  3587. BYTE $0x22
  3588. BYTE $0x76
  3589. BYTE $0x70
  3590. BYTE $0x01
  3591. BYTE $0xc4
  3592. BYTE $0x63
  3593. BYTE $0x81
  3594. BYTE $0x22
  3595. BYTE $0x7e
  3596. BYTE $0x48
  3597. BYTE $0x01
  3598. VPADDQ X12, X0, X0
  3599. VPADDQ X2, X0, X0
  3600. VPADDQ X13, X1, X1
  3601. VPADDQ X3, X1, X1
  3602. VPXOR X0, X6, X6
  3603. VPXOR X1, X7, X7
  3604. VPSHUFD $-79, X6, X6
  3605. VPSHUFD $-79, X7, X7
  3606. VPADDQ X6, X4, X4
  3607. VPADDQ X7, X5, X5
  3608. VPXOR X4, X2, X2
  3609. VPXOR X5, X3, X3
  3610. VPSHUFB X8, X2, X2
  3611. VPSHUFB X8, X3, X3
  3612. VPADDQ X14, X0, X0
  3613. VPADDQ X2, X0, X0
  3614. VPADDQ X15, X1, X1
  3615. VPADDQ X3, X1, X1
  3616. VPXOR X0, X6, X6
  3617. VPXOR X1, X7, X7
  3618. VPSHUFB X9, X6, X6
  3619. VPSHUFB X9, X7, X7
  3620. VPADDQ X6, X4, X4
  3621. VPADDQ X7, X5, X5
  3622. VPXOR X4, X2, X2
  3623. VPXOR X5, X3, X3
  3624. VPADDQ X2, X2, X15
  3625. VPSRLQ $0x3f, X2, X2
  3626. VPXOR X15, X2, X2
  3627. VPADDQ X3, X3, X15
  3628. VPSRLQ $0x3f, X3, X3
  3629. VPXOR X15, X3, X3
  3630. VMOVDQA X6, X13
  3631. VMOVDQA X2, X14
  3632. VMOVDQA X4, X6
  3633. BYTE $0xc4
  3634. BYTE $0x41
  3635. BYTE $0x11
  3636. BYTE $0x6c
  3637. BYTE $0xfd
  3638. VMOVDQA X5, X4
  3639. VMOVDQA X6, X5
  3640. BYTE $0xc4
  3641. BYTE $0xc1
  3642. BYTE $0x41
  3643. BYTE $0x6d
  3644. BYTE $0xf7
  3645. BYTE $0xc5
  3646. BYTE $0x41
  3647. BYTE $0x6c
  3648. BYTE $0xff
  3649. BYTE $0xc4
  3650. BYTE $0xc1
  3651. BYTE $0x11
  3652. BYTE $0x6d
  3653. BYTE $0xff
  3654. BYTE $0xc5
  3655. BYTE $0x61
  3656. BYTE $0x6c
  3657. BYTE $0xfb
  3658. BYTE $0xc4
  3659. BYTE $0xc1
  3660. BYTE $0x69
  3661. BYTE $0x6d
  3662. BYTE $0xd7
  3663. BYTE $0xc4
  3664. BYTE $0x41
  3665. BYTE $0x09
  3666. BYTE $0x6c
  3667. BYTE $0xfe
  3668. BYTE $0xc4
  3669. BYTE $0xc1
  3670. BYTE $0x61
  3671. BYTE $0x6d
  3672. BYTE $0xdf
  3673. MOVQ 40(SI), X12
  3674. MOVQ 64(SI), X13
  3675. MOVQ (SI), X14
  3676. MOVQ 48(SI), X15
  3677. BYTE $0xc4
  3678. BYTE $0x63
  3679. BYTE $0x99
  3680. BYTE $0x22
  3681. BYTE $0x66
  3682. BYTE $0x78
  3683. BYTE $0x01
  3684. BYTE $0xc4
  3685. BYTE $0x63
  3686. BYTE $0x91
  3687. BYTE $0x22
  3688. BYTE $0x6e
  3689. BYTE $0x10
  3690. BYTE $0x01
  3691. BYTE $0xc4
  3692. BYTE $0x63
  3693. BYTE $0x89
  3694. BYTE $0x22
  3695. BYTE $0x76
  3696. BYTE $0x20
  3697. BYTE $0x01
  3698. BYTE $0xc4
  3699. BYTE $0x63
  3700. BYTE $0x81
  3701. BYTE $0x22
  3702. BYTE $0x7e
  3703. BYTE $0x50
  3704. BYTE $0x01
  3705. VPADDQ X12, X0, X0
  3706. VPADDQ X2, X0, X0
  3707. VPADDQ X13, X1, X1
  3708. VPADDQ X3, X1, X1
  3709. VPXOR X0, X6, X6
  3710. VPXOR X1, X7, X7
  3711. VPSHUFD $-79, X6, X6
  3712. VPSHUFD $-79, X7, X7
  3713. VPADDQ X6, X4, X4
  3714. VPADDQ X7, X5, X5
  3715. VPXOR X4, X2, X2
  3716. VPXOR X5, X3, X3
  3717. VPSHUFB X8, X2, X2
  3718. VPSHUFB X8, X3, X3
  3719. VPADDQ X14, X0, X0
  3720. VPADDQ X2, X0, X0
  3721. VPADDQ X15, X1, X1
  3722. VPADDQ X3, X1, X1
  3723. VPXOR X0, X6, X6
  3724. VPXOR X1, X7, X7
  3725. VPSHUFB X9, X6, X6
  3726. VPSHUFB X9, X7, X7
  3727. VPADDQ X6, X4, X4
  3728. VPADDQ X7, X5, X5
  3729. VPXOR X4, X2, X2
  3730. VPXOR X5, X3, X3
  3731. VPADDQ X2, X2, X15
  3732. VPSRLQ $0x3f, X2, X2
  3733. VPXOR X15, X2, X2
  3734. VPADDQ X3, X3, X15
  3735. VPSRLQ $0x3f, X3, X3
  3736. VPXOR X15, X3, X3
  3737. VMOVDQA X2, X13
  3738. VMOVDQA X4, X14
  3739. BYTE $0xc5
  3740. BYTE $0x69
  3741. BYTE $0x6c
  3742. BYTE $0xfa
  3743. VMOVDQA X5, X4
  3744. BYTE $0xc4
  3745. BYTE $0xc1
  3746. BYTE $0x61
  3747. BYTE $0x6d
  3748. BYTE $0xd7
  3749. VMOVDQA X14, X5
  3750. BYTE $0xc5
  3751. BYTE $0x61
  3752. BYTE $0x6c
  3753. BYTE $0xfb
  3754. VMOVDQA X6, X14
  3755. BYTE $0xc4
  3756. BYTE $0xc1
  3757. BYTE $0x11
  3758. BYTE $0x6d
  3759. BYTE $0xdf
  3760. BYTE $0xc5
  3761. BYTE $0x41
  3762. BYTE $0x6c
  3763. BYTE $0xff
  3764. BYTE $0xc4
  3765. BYTE $0xc1
  3766. BYTE $0x49
  3767. BYTE $0x6d
  3768. BYTE $0xf7
  3769. BYTE $0xc4
  3770. BYTE $0x41
  3771. BYTE $0x09
  3772. BYTE $0x6c
  3773. BYTE $0xfe
  3774. BYTE $0xc4
  3775. BYTE $0xc1
  3776. BYTE $0x41
  3777. BYTE $0x6d
  3778. BYTE $0xff
  3779. MOVQ 48(SI), X12
  3780. MOVQ 88(SI), X13
  3781. MOVQ 120(SI), X14
  3782. MOVQ 24(SI), X15
  3783. BYTE $0xc4
  3784. BYTE $0x63
  3785. BYTE $0x99
  3786. BYTE $0x22
  3787. BYTE $0x66
  3788. BYTE $0x70
  3789. BYTE $0x01
  3790. BYTE $0xc4
  3791. BYTE $0x63
  3792. BYTE $0x91
  3793. BYTE $0x22
  3794. BYTE $0x2e
  3795. BYTE $0x01
  3796. BYTE $0xc4
  3797. BYTE $0x63
  3798. BYTE $0x89
  3799. BYTE $0x22
  3800. BYTE $0x76
  3801. BYTE $0x48
  3802. BYTE $0x01
  3803. BYTE $0xc4
  3804. BYTE $0x63
  3805. BYTE $0x81
  3806. BYTE $0x22
  3807. BYTE $0x7e
  3808. BYTE $0x40
  3809. BYTE $0x01
  3810. VPADDQ X12, X0, X0
  3811. VPADDQ X2, X0, X0
  3812. VPADDQ X13, X1, X1
  3813. VPADDQ X3, X1, X1
  3814. VPXOR X0, X6, X6
  3815. VPXOR X1, X7, X7
  3816. VPSHUFD $-79, X6, X6
  3817. VPSHUFD $-79, X7, X7
  3818. VPADDQ X6, X4, X4
  3819. VPADDQ X7, X5, X5
  3820. VPXOR X4, X2, X2
  3821. VPXOR X5, X3, X3
  3822. VPSHUFB X8, X2, X2
  3823. VPSHUFB X8, X3, X3
  3824. VPADDQ X14, X0, X0
  3825. VPADDQ X2, X0, X0
  3826. VPADDQ X15, X1, X1
  3827. VPADDQ X3, X1, X1
  3828. VPXOR X0, X6, X6
  3829. VPXOR X1, X7, X7
  3830. VPSHUFB X9, X6, X6
  3831. VPSHUFB X9, X7, X7
  3832. VPADDQ X6, X4, X4
  3833. VPADDQ X7, X5, X5
  3834. VPXOR X4, X2, X2
  3835. VPXOR X5, X3, X3
  3836. VPADDQ X2, X2, X15
  3837. VPSRLQ $0x3f, X2, X2
  3838. VPXOR X15, X2, X2
  3839. VPADDQ X3, X3, X15
  3840. VPSRLQ $0x3f, X3, X3
  3841. VPXOR X15, X3, X3
  3842. VMOVDQA X6, X13
  3843. VMOVDQA X2, X14
  3844. VMOVDQA X4, X6
  3845. BYTE $0xc4
  3846. BYTE $0x41
  3847. BYTE $0x11
  3848. BYTE $0x6c
  3849. BYTE $0xfd
  3850. VMOVDQA X5, X4
  3851. VMOVDQA X6, X5
  3852. BYTE $0xc4
  3853. BYTE $0xc1
  3854. BYTE $0x41
  3855. BYTE $0x6d
  3856. BYTE $0xf7
  3857. BYTE $0xc5
  3858. BYTE $0x41
  3859. BYTE $0x6c
  3860. BYTE $0xff
  3861. BYTE $0xc4
  3862. BYTE $0xc1
  3863. BYTE $0x11
  3864. BYTE $0x6d
  3865. BYTE $0xff
  3866. BYTE $0xc5
  3867. BYTE $0x61
  3868. BYTE $0x6c
  3869. BYTE $0xfb
  3870. BYTE $0xc4
  3871. BYTE $0xc1
  3872. BYTE $0x69
  3873. BYTE $0x6d
  3874. BYTE $0xd7
  3875. BYTE $0xc4
  3876. BYTE $0x41
  3877. BYTE $0x09
  3878. BYTE $0x6c
  3879. BYTE $0xfe
  3880. BYTE $0xc4
  3881. BYTE $0xc1
  3882. BYTE $0x61
  3883. BYTE $0x6d
  3884. BYTE $0xdf
  3885. VMOVDQU 96(SI), X12
  3886. MOVQ 8(SI), X13
  3887. MOVQ 16(SI), X14
  3888. BYTE $0xc4
  3889. BYTE $0x63
  3890. BYTE $0x91
  3891. BYTE $0x22
  3892. BYTE $0x6e
  3893. BYTE $0x50
  3894. BYTE $0x01
  3895. BYTE $0xc4
  3896. BYTE $0x63
  3897. BYTE $0x89
  3898. BYTE $0x22
  3899. BYTE $0x76
  3900. BYTE $0x38
  3901. BYTE $0x01
  3902. VMOVDQU 32(SI), X15
  3903. VPADDQ X12, X0, X0
  3904. VPADDQ X2, X0, X0
  3905. VPADDQ X13, X1, X1
  3906. VPADDQ X3, X1, X1
  3907. VPXOR X0, X6, X6
  3908. VPXOR X1, X7, X7
  3909. VPSHUFD $-79, X6, X6
  3910. VPSHUFD $-79, X7, X7
  3911. VPADDQ X6, X4, X4
  3912. VPADDQ X7, X5, X5
  3913. VPXOR X4, X2, X2
  3914. VPXOR X5, X3, X3
  3915. VPSHUFB X8, X2, X2
  3916. VPSHUFB X8, X3, X3
  3917. VPADDQ X14, X0, X0
  3918. VPADDQ X2, X0, X0
  3919. VPADDQ X15, X1, X1
  3920. VPADDQ X3, X1, X1
  3921. VPXOR X0, X6, X6
  3922. VPXOR X1, X7, X7
  3923. VPSHUFB X9, X6, X6
  3924. VPSHUFB X9, X7, X7
  3925. VPADDQ X6, X4, X4
  3926. VPADDQ X7, X5, X5
  3927. VPXOR X4, X2, X2
  3928. VPXOR X5, X3, X3
  3929. VPADDQ X2, X2, X15
  3930. VPSRLQ $0x3f, X2, X2
  3931. VPXOR X15, X2, X2
  3932. VPADDQ X3, X3, X15
  3933. VPSRLQ $0x3f, X3, X3
  3934. VPXOR X15, X3, X3
  3935. VMOVDQA X2, X13
  3936. VMOVDQA X4, X14
  3937. BYTE $0xc5
  3938. BYTE $0x69
  3939. BYTE $0x6c
  3940. BYTE $0xfa
  3941. VMOVDQA X5, X4
  3942. BYTE $0xc4
  3943. BYTE $0xc1
  3944. BYTE $0x61
  3945. BYTE $0x6d
  3946. BYTE $0xd7
  3947. VMOVDQA X14, X5
  3948. BYTE $0xc5
  3949. BYTE $0x61
  3950. BYTE $0x6c
  3951. BYTE $0xfb
  3952. VMOVDQA X6, X14
  3953. BYTE $0xc4
  3954. BYTE $0xc1
  3955. BYTE $0x11
  3956. BYTE $0x6d
  3957. BYTE $0xdf
  3958. BYTE $0xc5
  3959. BYTE $0x41
  3960. BYTE $0x6c
  3961. BYTE $0xff
  3962. BYTE $0xc4
  3963. BYTE $0xc1
  3964. BYTE $0x49
  3965. BYTE $0x6d
  3966. BYTE $0xf7
  3967. BYTE $0xc4
  3968. BYTE $0x41
  3969. BYTE $0x09
  3970. BYTE $0x6c
  3971. BYTE $0xfe
  3972. BYTE $0xc4
  3973. BYTE $0xc1
  3974. BYTE $0x41
  3975. BYTE $0x6d
  3976. BYTE $0xff
  3977. BYTE $0xc5
  3978. BYTE $0x7a
  3979. BYTE $0x7e
  3980. BYTE $0x66
  3981. BYTE $0x50
  3982. BYTE $0xc5
  3983. BYTE $0x7a
  3984. BYTE $0x7e
  3985. BYTE $0x6e
  3986. BYTE $0x38
  3987. BYTE $0xc5
  3988. BYTE $0x7a
  3989. BYTE $0x7e
  3990. BYTE $0x76
  3991. BYTE $0x10
  3992. BYTE $0xc5
  3993. BYTE $0x7a
  3994. BYTE $0x7e
  3995. BYTE $0x7e
  3996. BYTE $0x30
  3997. BYTE $0xc4
  3998. BYTE $0x63
  3999. BYTE $0x99
  4000. BYTE $0x22
  4001. BYTE $0x66
  4002. BYTE $0x40
  4003. BYTE $0x01
  4004. BYTE $0xc4
  4005. BYTE $0x63
  4006. BYTE $0x91
  4007. BYTE $0x22
  4008. BYTE $0x6e
  4009. BYTE $0x08
  4010. BYTE $0x01
  4011. BYTE $0xc4
  4012. BYTE $0x63
  4013. BYTE $0x89
  4014. BYTE $0x22
  4015. BYTE $0x76
  4016. BYTE $0x20
  4017. BYTE $0x01
  4018. BYTE $0xc4
  4019. BYTE $0x63
  4020. BYTE $0x81
  4021. BYTE $0x22
  4022. BYTE $0x7e
  4023. BYTE $0x28
  4024. BYTE $0x01
  4025. VPADDQ X12, X0, X0
  4026. VPADDQ X2, X0, X0
  4027. VPADDQ X13, X1, X1
  4028. VPADDQ X3, X1, X1
  4029. VPXOR X0, X6, X6
  4030. VPXOR X1, X7, X7
  4031. VPSHUFD $-79, X6, X6
  4032. VPSHUFD $-79, X7, X7
  4033. VPADDQ X6, X4, X4
  4034. VPADDQ X7, X5, X5
  4035. VPXOR X4, X2, X2
  4036. VPXOR X5, X3, X3
  4037. VPSHUFB X8, X2, X2
  4038. VPSHUFB X8, X3, X3
  4039. VPADDQ X14, X0, X0
  4040. VPADDQ X2, X0, X0
  4041. VPADDQ X15, X1, X1
  4042. VPADDQ X3, X1, X1
  4043. VPXOR X0, X6, X6
  4044. VPXOR X1, X7, X7
  4045. VPSHUFB X9, X6, X6
  4046. VPSHUFB X9, X7, X7
  4047. VPADDQ X6, X4, X4
  4048. VPADDQ X7, X5, X5
  4049. VPXOR X4, X2, X2
  4050. VPXOR X5, X3, X3
  4051. VPADDQ X2, X2, X15
  4052. VPSRLQ $0x3f, X2, X2
  4053. VPXOR X15, X2, X2
  4054. VPADDQ X3, X3, X15
  4055. VPSRLQ $0x3f, X3, X3
  4056. VPXOR X15, X3, X3
  4057. VMOVDQA X6, X13
  4058. VMOVDQA X2, X14
  4059. VMOVDQA X4, X6
  4060. BYTE $0xc4
  4061. BYTE $0x41
  4062. BYTE $0x11
  4063. BYTE $0x6c
  4064. BYTE $0xfd
  4065. VMOVDQA X5, X4
  4066. VMOVDQA X6, X5
  4067. BYTE $0xc4
  4068. BYTE $0xc1
  4069. BYTE $0x41
  4070. BYTE $0x6d
  4071. BYTE $0xf7
  4072. BYTE $0xc5
  4073. BYTE $0x41
  4074. BYTE $0x6c
  4075. BYTE $0xff
  4076. BYTE $0xc4
  4077. BYTE $0xc1
  4078. BYTE $0x11
  4079. BYTE $0x6d
  4080. BYTE $0xff
  4081. BYTE $0xc5
  4082. BYTE $0x61
  4083. BYTE $0x6c
  4084. BYTE $0xfb
  4085. BYTE $0xc4
  4086. BYTE $0xc1
  4087. BYTE $0x69
  4088. BYTE $0x6d
  4089. BYTE $0xd7
  4090. BYTE $0xc4
  4091. BYTE $0x41
  4092. BYTE $0x09
  4093. BYTE $0x6c
  4094. BYTE $0xfe
  4095. BYTE $0xc4
  4096. BYTE $0xc1
  4097. BYTE $0x61
  4098. BYTE $0x6d
  4099. BYTE $0xdf
  4100. MOVQ 120(SI), X12
  4101. MOVQ 24(SI), X13
  4102. MOVQ 88(SI), X14
  4103. MOVQ 96(SI), X15
  4104. BYTE $0xc4
  4105. BYTE $0x63
  4106. BYTE $0x99
  4107. BYTE $0x22
  4108. BYTE $0x66
  4109. BYTE $0x48
  4110. BYTE $0x01
  4111. BYTE $0xc4
  4112. BYTE $0x63
  4113. BYTE $0x91
  4114. BYTE $0x22
  4115. BYTE $0x6e
  4116. BYTE $0x68
  4117. BYTE $0x01
  4118. BYTE $0xc4
  4119. BYTE $0x63
  4120. BYTE $0x89
  4121. BYTE $0x22
  4122. BYTE $0x76
  4123. BYTE $0x70
  4124. BYTE $0x01
  4125. BYTE $0xc4
  4126. BYTE $0x63
  4127. BYTE $0x81
  4128. BYTE $0x22
  4129. BYTE $0x3e
  4130. BYTE $0x01
  4131. VPADDQ X12, X0, X0
  4132. VPADDQ X2, X0, X0
  4133. VPADDQ X13, X1, X1
  4134. VPADDQ X3, X1, X1
  4135. VPXOR X0, X6, X6
  4136. VPXOR X1, X7, X7
  4137. VPSHUFD $-79, X6, X6
  4138. VPSHUFD $-79, X7, X7
  4139. VPADDQ X6, X4, X4
  4140. VPADDQ X7, X5, X5
  4141. VPXOR X4, X2, X2
  4142. VPXOR X5, X3, X3
  4143. VPSHUFB X8, X2, X2
  4144. VPSHUFB X8, X3, X3
  4145. VPADDQ X14, X0, X0
  4146. VPADDQ X2, X0, X0
  4147. VPADDQ X15, X1, X1
  4148. VPADDQ X3, X1, X1
  4149. VPXOR X0, X6, X6
  4150. VPXOR X1, X7, X7
  4151. VPSHUFB X9, X6, X6
  4152. VPSHUFB X9, X7, X7
  4153. VPADDQ X6, X4, X4
  4154. VPADDQ X7, X5, X5
  4155. VPXOR X4, X2, X2
  4156. VPXOR X5, X3, X3
  4157. VPADDQ X2, X2, X15
  4158. VPSRLQ $0x3f, X2, X2
  4159. VPXOR X15, X2, X2
  4160. VPADDQ X3, X3, X15
  4161. VPSRLQ $0x3f, X3, X3
  4162. VPXOR X15, X3, X3
  4163. VMOVDQA X2, X13
  4164. VMOVDQA X4, X14
  4165. BYTE $0xc5
  4166. BYTE $0x69
  4167. BYTE $0x6c
  4168. BYTE $0xfa
  4169. VMOVDQA X5, X4
  4170. BYTE $0xc4
  4171. BYTE $0xc1
  4172. BYTE $0x61
  4173. BYTE $0x6d
  4174. BYTE $0xd7
  4175. VMOVDQA X14, X5
  4176. BYTE $0xc5
  4177. BYTE $0x61
  4178. BYTE $0x6c
  4179. BYTE $0xfb
  4180. VMOVDQA X6, X14
  4181. BYTE $0xc4
  4182. BYTE $0xc1
  4183. BYTE $0x11
  4184. BYTE $0x6d
  4185. BYTE $0xdf
  4186. BYTE $0xc5
  4187. BYTE $0x41
  4188. BYTE $0x6c
  4189. BYTE $0xff
  4190. BYTE $0xc4
  4191. BYTE $0xc1
  4192. BYTE $0x49
  4193. BYTE $0x6d
  4194. BYTE $0xf7
  4195. BYTE $0xc4
  4196. BYTE $0x41
  4197. BYTE $0x09
  4198. BYTE $0x6c
  4199. BYTE $0xfe
  4200. BYTE $0xc4
  4201. BYTE $0xc1
  4202. BYTE $0x41
  4203. BYTE $0x6d
  4204. BYTE $0xff
  4205. VPADDQ 16(R10), X0, X0
  4206. VPADDQ X2, X0, X0
  4207. VPADDQ 32(R10), X1, X1
  4208. VPADDQ X3, X1, X1
  4209. VPXOR X0, X6, X6
  4210. VPXOR X1, X7, X7
  4211. VPSHUFD $-79, X6, X6
  4212. VPSHUFD $-79, X7, X7
  4213. VPADDQ X6, X4, X4
  4214. VPADDQ X7, X5, X5
  4215. VPXOR X4, X2, X2
  4216. VPXOR X5, X3, X3
  4217. VPSHUFB X8, X2, X2
  4218. VPSHUFB X8, X3, X3
  4219. VPADDQ 48(R10), X0, X0
  4220. VPADDQ X2, X0, X0
  4221. VPADDQ 64(R10), X1, X1
  4222. VPADDQ X3, X1, X1
  4223. VPXOR X0, X6, X6
  4224. VPXOR X1, X7, X7
  4225. VPSHUFB X9, X6, X6
  4226. VPSHUFB X9, X7, X7
  4227. VPADDQ X6, X4, X4
  4228. VPADDQ X7, X5, X5
  4229. VPXOR X4, X2, X2
  4230. VPXOR X5, X3, X3
  4231. VPADDQ X2, X2, X15
  4232. VPSRLQ $0x3f, X2, X2
  4233. VPXOR X15, X2, X2
  4234. VPADDQ X3, X3, X15
  4235. VPSRLQ $0x3f, X3, X3
  4236. VPXOR X15, X3, X3
  4237. VMOVDQA X6, X13
  4238. VMOVDQA X2, X14
  4239. VMOVDQA X4, X6
  4240. BYTE $0xc4
  4241. BYTE $0x41
  4242. BYTE $0x11
  4243. BYTE $0x6c
  4244. BYTE $0xfd
  4245. VMOVDQA X5, X4
  4246. VMOVDQA X6, X5
  4247. BYTE $0xc4
  4248. BYTE $0xc1
  4249. BYTE $0x41
  4250. BYTE $0x6d
  4251. BYTE $0xf7
  4252. BYTE $0xc5
  4253. BYTE $0x41
  4254. BYTE $0x6c
  4255. BYTE $0xff
  4256. BYTE $0xc4
  4257. BYTE $0xc1
  4258. BYTE $0x11
  4259. BYTE $0x6d
  4260. BYTE $0xff
  4261. BYTE $0xc5
  4262. BYTE $0x61
  4263. BYTE $0x6c
  4264. BYTE $0xfb
  4265. BYTE $0xc4
  4266. BYTE $0xc1
  4267. BYTE $0x69
  4268. BYTE $0x6d
  4269. BYTE $0xd7
  4270. BYTE $0xc4
  4271. BYTE $0x41
  4272. BYTE $0x09
  4273. BYTE $0x6c
  4274. BYTE $0xfe
  4275. BYTE $0xc4
  4276. BYTE $0xc1
  4277. BYTE $0x61
  4278. BYTE $0x6d
  4279. BYTE $0xdf
  4280. VPADDQ 80(R10), X0, X0
  4281. VPADDQ X2, X0, X0
  4282. VPADDQ 96(R10), X1, X1
  4283. VPADDQ X3, X1, X1
  4284. VPXOR X0, X6, X6
  4285. VPXOR X1, X7, X7
  4286. VPSHUFD $-79, X6, X6
  4287. VPSHUFD $-79, X7, X7
  4288. VPADDQ X6, X4, X4
  4289. VPADDQ X7, X5, X5
  4290. VPXOR X4, X2, X2
  4291. VPXOR X5, X3, X3
  4292. VPSHUFB X8, X2, X2
  4293. VPSHUFB X8, X3, X3
  4294. VPADDQ 112(R10), X0, X0
  4295. VPADDQ X2, X0, X0
  4296. VPADDQ 128(R10), X1, X1
  4297. VPADDQ X3, X1, X1
  4298. VPXOR X0, X6, X6
  4299. VPXOR X1, X7, X7
  4300. VPSHUFB X9, X6, X6
  4301. VPSHUFB X9, X7, X7
  4302. VPADDQ X6, X4, X4
  4303. VPADDQ X7, X5, X5
  4304. VPXOR X4, X2, X2
  4305. VPXOR X5, X3, X3
  4306. VPADDQ X2, X2, X15
  4307. VPSRLQ $0x3f, X2, X2
  4308. VPXOR X15, X2, X2
  4309. VPADDQ X3, X3, X15
  4310. VPSRLQ $0x3f, X3, X3
  4311. VPXOR X15, X3, X3
  4312. VMOVDQA X2, X13
  4313. VMOVDQA X4, X14
  4314. BYTE $0xc5
  4315. BYTE $0x69
  4316. BYTE $0x6c
  4317. BYTE $0xfa
  4318. VMOVDQA X5, X4
  4319. BYTE $0xc4
  4320. BYTE $0xc1
  4321. BYTE $0x61
  4322. BYTE $0x6d
  4323. BYTE $0xd7
  4324. VMOVDQA X14, X5
  4325. BYTE $0xc5
  4326. BYTE $0x61
  4327. BYTE $0x6c
  4328. BYTE $0xfb
  4329. VMOVDQA X6, X14
  4330. BYTE $0xc4
  4331. BYTE $0xc1
  4332. BYTE $0x11
  4333. BYTE $0x6d
  4334. BYTE $0xdf
  4335. BYTE $0xc5
  4336. BYTE $0x41
  4337. BYTE $0x6c
  4338. BYTE $0xff
  4339. BYTE $0xc4
  4340. BYTE $0xc1
  4341. BYTE $0x49
  4342. BYTE $0x6d
  4343. BYTE $0xf7
  4344. BYTE $0xc4
  4345. BYTE $0x41
  4346. BYTE $0x09
  4347. BYTE $0x6c
  4348. BYTE $0xfe
  4349. BYTE $0xc4
  4350. BYTE $0xc1
  4351. BYTE $0x41
  4352. BYTE $0x6d
  4353. BYTE $0xff
  4354. VPADDQ 144(R10), X0, X0
  4355. VPADDQ X2, X0, X0
  4356. VPADDQ 160(R10), X1, X1
  4357. VPADDQ X3, X1, X1
  4358. VPXOR X0, X6, X6
  4359. VPXOR X1, X7, X7
  4360. VPSHUFD $-79, X6, X6
  4361. VPSHUFD $-79, X7, X7
  4362. VPADDQ X6, X4, X4
  4363. VPADDQ X7, X5, X5
  4364. VPXOR X4, X2, X2
  4365. VPXOR X5, X3, X3
  4366. VPSHUFB X8, X2, X2
  4367. VPSHUFB X8, X3, X3
  4368. VPADDQ 176(R10), X0, X0
  4369. VPADDQ X2, X0, X0
  4370. VPADDQ 192(R10), X1, X1
  4371. VPADDQ X3, X1, X1
  4372. VPXOR X0, X6, X6
  4373. VPXOR X1, X7, X7
  4374. VPSHUFB X9, X6, X6
  4375. VPSHUFB X9, X7, X7
  4376. VPADDQ X6, X4, X4
  4377. VPADDQ X7, X5, X5
  4378. VPXOR X4, X2, X2
  4379. VPXOR X5, X3, X3
  4380. VPADDQ X2, X2, X15
  4381. VPSRLQ $0x3f, X2, X2
  4382. VPXOR X15, X2, X2
  4383. VPADDQ X3, X3, X15
  4384. VPSRLQ $0x3f, X3, X3
  4385. VPXOR X15, X3, X3
  4386. VMOVDQA X6, X13
  4387. VMOVDQA X2, X14
  4388. VMOVDQA X4, X6
  4389. BYTE $0xc4
  4390. BYTE $0x41
  4391. BYTE $0x11
  4392. BYTE $0x6c
  4393. BYTE $0xfd
  4394. VMOVDQA X5, X4
  4395. VMOVDQA X6, X5
  4396. BYTE $0xc4
  4397. BYTE $0xc1
  4398. BYTE $0x41
  4399. BYTE $0x6d
  4400. BYTE $0xf7
  4401. BYTE $0xc5
  4402. BYTE $0x41
  4403. BYTE $0x6c
  4404. BYTE $0xff
  4405. BYTE $0xc4
  4406. BYTE $0xc1
  4407. BYTE $0x11
  4408. BYTE $0x6d
  4409. BYTE $0xff
  4410. BYTE $0xc5
  4411. BYTE $0x61
  4412. BYTE $0x6c
  4413. BYTE $0xfb
  4414. BYTE $0xc4
  4415. BYTE $0xc1
  4416. BYTE $0x69
  4417. BYTE $0x6d
  4418. BYTE $0xd7
  4419. BYTE $0xc4
  4420. BYTE $0x41
  4421. BYTE $0x09
  4422. BYTE $0x6c
  4423. BYTE $0xfe
  4424. BYTE $0xc4
  4425. BYTE $0xc1
  4426. BYTE $0x61
  4427. BYTE $0x6d
  4428. BYTE $0xdf
  4429. VPADDQ 208(R10), X0, X0
  4430. VPADDQ X2, X0, X0
  4431. VPADDQ 224(R10), X1, X1
  4432. VPADDQ X3, X1, X1
  4433. VPXOR X0, X6, X6
  4434. VPXOR X1, X7, X7
  4435. VPSHUFD $-79, X6, X6
  4436. VPSHUFD $-79, X7, X7
  4437. VPADDQ X6, X4, X4
  4438. VPADDQ X7, X5, X5
  4439. VPXOR X4, X2, X2
  4440. VPXOR X5, X3, X3
  4441. VPSHUFB X8, X2, X2
  4442. VPSHUFB X8, X3, X3
  4443. VPADDQ 240(R10), X0, X0
  4444. VPADDQ X2, X0, X0
  4445. VPADDQ 256(R10), X1, X1
  4446. VPADDQ X3, X1, X1
  4447. VPXOR X0, X6, X6
  4448. VPXOR X1, X7, X7
  4449. VPSHUFB X9, X6, X6
  4450. VPSHUFB X9, X7, X7
  4451. VPADDQ X6, X4, X4
  4452. VPADDQ X7, X5, X5
  4453. VPXOR X4, X2, X2
  4454. VPXOR X5, X3, X3
  4455. VPADDQ X2, X2, X15
  4456. VPSRLQ $0x3f, X2, X2
  4457. VPXOR X15, X2, X2
  4458. VPADDQ X3, X3, X15
  4459. VPSRLQ $0x3f, X3, X3
  4460. VPXOR X15, X3, X3
  4461. VMOVDQA X2, X13
  4462. VMOVDQA X4, X14
  4463. BYTE $0xc5
  4464. BYTE $0x69
  4465. BYTE $0x6c
  4466. BYTE $0xfa
  4467. VMOVDQA X5, X4
  4468. BYTE $0xc4
  4469. BYTE $0xc1
  4470. BYTE $0x61
  4471. BYTE $0x6d
  4472. BYTE $0xd7
  4473. VMOVDQA X14, X5
  4474. BYTE $0xc5
  4475. BYTE $0x61
  4476. BYTE $0x6c
  4477. BYTE $0xfb
  4478. VMOVDQA X6, X14
  4479. BYTE $0xc4
  4480. BYTE $0xc1
  4481. BYTE $0x11
  4482. BYTE $0x6d
  4483. BYTE $0xdf
  4484. BYTE $0xc5
  4485. BYTE $0x41
  4486. BYTE $0x6c
  4487. BYTE $0xff
  4488. BYTE $0xc4
  4489. BYTE $0xc1
  4490. BYTE $0x49
  4491. BYTE $0x6d
  4492. BYTE $0xf7
  4493. BYTE $0xc4
  4494. BYTE $0x41
  4495. BYTE $0x09
  4496. BYTE $0x6c
  4497. BYTE $0xfe
  4498. BYTE $0xc4
  4499. BYTE $0xc1
  4500. BYTE $0x41
  4501. BYTE $0x6d
  4502. BYTE $0xff
  4503. VMOVDQU 32(AX), X14
  4504. VMOVDQU 48(AX), X15
  4505. VPXOR X0, X10, X10
  4506. VPXOR X1, X11, X11
  4507. VPXOR X2, X14, X14
  4508. VPXOR X3, X15, X15
  4509. VPXOR X4, X10, X10
  4510. VPXOR X5, X11, X11
  4511. VPXOR X6, X14, X2
  4512. VPXOR X7, X15, X3
  4513. VMOVDQU X2, 32(AX)
  4514. VMOVDQU X3, 48(AX)
  4515. LEAQ 128(SI), SI
  4516. SUBQ $0x80, DI
  4517. JNE loop
  4518. VMOVDQU X10, (AX)
  4519. VMOVDQU X11, 16(AX)
  4520. MOVQ R8, (BX)
  4521. MOVQ R9, 8(BX)
  4522. VZEROUPPER
  4523. RET
  4524. DATA ·AVX_c40<>+0(SB)/8, $0x0201000706050403
  4525. DATA ·AVX_c40<>+8(SB)/8, $0x0a09080f0e0d0c0b
  4526. GLOBL ·AVX_c40<>(SB), RODATA|NOPTR, $16
  4527. DATA ·AVX_c48<>+0(SB)/8, $0x0100070605040302
  4528. DATA ·AVX_c48<>+8(SB)/8, $0x09080f0e0d0c0b0a
  4529. GLOBL ·AVX_c48<>(SB), RODATA|NOPTR, $16
  4530. DATA ·AVX_iv3<>+0(SB)/8, $0x1f83d9abfb41bd6b
  4531. DATA ·AVX_iv3<>+8(SB)/8, $0x5be0cd19137e2179
  4532. GLOBL ·AVX_iv3<>(SB), RODATA|NOPTR, $16
  4533. DATA ·AVX_iv0<>+0(SB)/8, $0x6a09e667f3bcc908
  4534. DATA ·AVX_iv0<>+8(SB)/8, $0xbb67ae8584caa73b
  4535. GLOBL ·AVX_iv0<>(SB), RODATA|NOPTR, $16
  4536. DATA ·AVX_iv1<>+0(SB)/8, $0x3c6ef372fe94f82b
  4537. DATA ·AVX_iv1<>+8(SB)/8, $0xa54ff53a5f1d36f1
  4538. GLOBL ·AVX_iv1<>(SB), RODATA|NOPTR, $16
  4539. DATA ·AVX_iv2<>+0(SB)/8, $0x510e527fade682d1
  4540. DATA ·AVX_iv2<>+8(SB)/8, $0x9b05688c2b3e6c1f
  4541. GLOBL ·AVX_iv2<>(SB), RODATA|NOPTR, $16