123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841 |
- ; This file is generated from a similarly-named Perl script in the BoringSSL
- ; source tree. Do not edit by hand.
- %ifdef BORINGSSL_PREFIX
- %include "boringssl_prefix_symbols_nasm.inc"
- %endif
- %ifidn __OUTPUT_FORMAT__,obj
- section code use32 class=code align=64
- %elifidn __OUTPUT_FORMAT__,win32
- $@feat.00 equ 1
- section .text code align=64
- %else
- section .text code
- %endif
- ;extern _OPENSSL_ia32cap_P
- global _sha512_block_data_order
- align 16
- _sha512_block_data_order:
- L$_sha512_block_data_order_begin:
- push ebp
- push ebx
- push esi
- push edi
- mov esi,DWORD [20+esp]
- mov edi,DWORD [24+esp]
- mov eax,DWORD [28+esp]
- mov ebx,esp
- call L$000pic_point
- L$000pic_point:
- pop ebp
- lea ebp,[(L$001K512-L$000pic_point)+ebp]
- sub esp,16
- and esp,-64
- shl eax,7
- add eax,edi
- mov DWORD [esp],esi
- mov DWORD [4+esp],edi
- mov DWORD [8+esp],eax
- mov DWORD [12+esp],ebx
- lea edx,[_OPENSSL_ia32cap_P]
- mov ecx,DWORD [edx]
- test ecx,67108864
- jz NEAR L$002loop_x86
- mov edx,DWORD [4+edx]
- movq mm0,[esi]
- and ecx,16777216
- movq mm1,[8+esi]
- and edx,512
- movq mm2,[16+esi]
- or ecx,edx
- movq mm3,[24+esi]
- movq mm4,[32+esi]
- movq mm5,[40+esi]
- movq mm6,[48+esi]
- movq mm7,[56+esi]
- cmp ecx,16777728
- je NEAR L$003SSSE3
- sub esp,80
- jmp NEAR L$004loop_sse2
- align 16
- L$004loop_sse2:
- movq [8+esp],mm1
- movq [16+esp],mm2
- movq [24+esp],mm3
- movq [40+esp],mm5
- movq [48+esp],mm6
- pxor mm2,mm1
- movq [56+esp],mm7
- movq mm3,mm0
- mov eax,DWORD [edi]
- mov ebx,DWORD [4+edi]
- add edi,8
- mov edx,15
- bswap eax
- bswap ebx
- jmp NEAR L$00500_14_sse2
- align 16
- L$00500_14_sse2:
- movd mm1,eax
- mov eax,DWORD [edi]
- movd mm7,ebx
- mov ebx,DWORD [4+edi]
- add edi,8
- bswap eax
- bswap ebx
- punpckldq mm7,mm1
- movq mm1,mm4
- pxor mm5,mm6
- psrlq mm1,14
- movq [32+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- movq mm0,mm3
- movq [72+esp],mm7
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[56+esp]
- pxor mm3,mm1
- psllq mm4,4
- paddq mm7,[ebp]
- pxor mm3,mm4
- movq mm4,[24+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[8+esp]
- psrlq mm5,6
- pxor mm7,mm6
- sub esp,8
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[40+esp]
- paddq mm3,mm2
- movq mm2,mm0
- add ebp,8
- paddq mm3,mm6
- movq mm6,[48+esp]
- dec edx
- jnz NEAR L$00500_14_sse2
- movd mm1,eax
- movd mm7,ebx
- punpckldq mm7,mm1
- movq mm1,mm4
- pxor mm5,mm6
- psrlq mm1,14
- movq [32+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- movq mm0,mm3
- movq [72+esp],mm7
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[56+esp]
- pxor mm3,mm1
- psllq mm4,4
- paddq mm7,[ebp]
- pxor mm3,mm4
- movq mm4,[24+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[8+esp]
- psrlq mm5,6
- pxor mm7,mm6
- sub esp,8
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm7,[192+esp]
- paddq mm3,mm2
- movq mm2,mm0
- add ebp,8
- paddq mm3,mm6
- pxor mm0,mm0
- mov edx,32
- jmp NEAR L$00616_79_sse2
- align 16
- L$00616_79_sse2:
- movq mm5,[88+esp]
- movq mm1,mm7
- psrlq mm7,1
- movq mm6,mm5
- psrlq mm5,6
- psllq mm1,56
- paddq mm0,mm3
- movq mm3,mm7
- psrlq mm7,6
- pxor mm3,mm1
- psllq mm1,7
- pxor mm3,mm7
- psrlq mm7,1
- pxor mm3,mm1
- movq mm1,mm5
- psrlq mm5,13
- pxor mm7,mm3
- psllq mm6,3
- pxor mm1,mm5
- paddq mm7,[200+esp]
- pxor mm1,mm6
- psrlq mm5,42
- paddq mm7,[128+esp]
- pxor mm1,mm5
- psllq mm6,42
- movq mm5,[40+esp]
- pxor mm1,mm6
- movq mm6,[48+esp]
- paddq mm7,mm1
- movq mm1,mm4
- pxor mm5,mm6
- psrlq mm1,14
- movq [32+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- movq [72+esp],mm7
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[56+esp]
- pxor mm3,mm1
- psllq mm4,4
- paddq mm7,[ebp]
- pxor mm3,mm4
- movq mm4,[24+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[8+esp]
- psrlq mm5,6
- pxor mm7,mm6
- sub esp,8
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm7,[192+esp]
- paddq mm2,mm6
- add ebp,8
- movq mm5,[88+esp]
- movq mm1,mm7
- psrlq mm7,1
- movq mm6,mm5
- psrlq mm5,6
- psllq mm1,56
- paddq mm2,mm3
- movq mm3,mm7
- psrlq mm7,6
- pxor mm3,mm1
- psllq mm1,7
- pxor mm3,mm7
- psrlq mm7,1
- pxor mm3,mm1
- movq mm1,mm5
- psrlq mm5,13
- pxor mm7,mm3
- psllq mm6,3
- pxor mm1,mm5
- paddq mm7,[200+esp]
- pxor mm1,mm6
- psrlq mm5,42
- paddq mm7,[128+esp]
- pxor mm1,mm5
- psllq mm6,42
- movq mm5,[40+esp]
- pxor mm1,mm6
- movq mm6,[48+esp]
- paddq mm7,mm1
- movq mm1,mm4
- pxor mm5,mm6
- psrlq mm1,14
- movq [32+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- movq [72+esp],mm7
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[56+esp]
- pxor mm3,mm1
- psllq mm4,4
- paddq mm7,[ebp]
- pxor mm3,mm4
- movq mm4,[24+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[8+esp]
- psrlq mm5,6
- pxor mm7,mm6
- sub esp,8
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm7,[192+esp]
- paddq mm0,mm6
- add ebp,8
- dec edx
- jnz NEAR L$00616_79_sse2
- paddq mm0,mm3
- movq mm1,[8+esp]
- movq mm3,[24+esp]
- movq mm5,[40+esp]
- movq mm6,[48+esp]
- movq mm7,[56+esp]
- pxor mm2,mm1
- paddq mm0,[esi]
- paddq mm1,[8+esi]
- paddq mm2,[16+esi]
- paddq mm3,[24+esi]
- paddq mm4,[32+esi]
- paddq mm5,[40+esi]
- paddq mm6,[48+esi]
- paddq mm7,[56+esi]
- mov eax,640
- movq [esi],mm0
- movq [8+esi],mm1
- movq [16+esi],mm2
- movq [24+esi],mm3
- movq [32+esi],mm4
- movq [40+esi],mm5
- movq [48+esi],mm6
- movq [56+esi],mm7
- lea esp,[eax*1+esp]
- sub ebp,eax
- cmp edi,DWORD [88+esp]
- jb NEAR L$004loop_sse2
- mov esp,DWORD [92+esp]
- emms
- pop edi
- pop esi
- pop ebx
- pop ebp
- ret
- align 32
- L$003SSSE3:
- lea edx,[esp-64]
- sub esp,256
- movdqa xmm1,[640+ebp]
- movdqu xmm0,[edi]
- db 102,15,56,0,193
- movdqa xmm3,[ebp]
- movdqa xmm2,xmm1
- movdqu xmm1,[16+edi]
- paddq xmm3,xmm0
- db 102,15,56,0,202
- movdqa [edx-128],xmm3
- movdqa xmm4,[16+ebp]
- movdqa xmm3,xmm2
- movdqu xmm2,[32+edi]
- paddq xmm4,xmm1
- db 102,15,56,0,211
- movdqa [edx-112],xmm4
- movdqa xmm5,[32+ebp]
- movdqa xmm4,xmm3
- movdqu xmm3,[48+edi]
- paddq xmm5,xmm2
- db 102,15,56,0,220
- movdqa [edx-96],xmm5
- movdqa xmm6,[48+ebp]
- movdqa xmm5,xmm4
- movdqu xmm4,[64+edi]
- paddq xmm6,xmm3
- db 102,15,56,0,229
- movdqa [edx-80],xmm6
- movdqa xmm7,[64+ebp]
- movdqa xmm6,xmm5
- movdqu xmm5,[80+edi]
- paddq xmm7,xmm4
- db 102,15,56,0,238
- movdqa [edx-64],xmm7
- movdqa [edx],xmm0
- movdqa xmm0,[80+ebp]
- movdqa xmm7,xmm6
- movdqu xmm6,[96+edi]
- paddq xmm0,xmm5
- db 102,15,56,0,247
- movdqa [edx-48],xmm0
- movdqa [16+edx],xmm1
- movdqa xmm1,[96+ebp]
- movdqa xmm0,xmm7
- movdqu xmm7,[112+edi]
- paddq xmm1,xmm6
- db 102,15,56,0,248
- movdqa [edx-32],xmm1
- movdqa [32+edx],xmm2
- movdqa xmm2,[112+ebp]
- movdqa xmm0,[edx]
- paddq xmm2,xmm7
- movdqa [edx-16],xmm2
- nop
- align 32
- L$007loop_ssse3:
- movdqa xmm2,[16+edx]
- movdqa [48+edx],xmm3
- lea ebp,[128+ebp]
- movq [8+esp],mm1
- mov ebx,edi
- movq [16+esp],mm2
- lea edi,[128+edi]
- movq [24+esp],mm3
- cmp edi,eax
- movq [40+esp],mm5
- cmovb ebx,edi
- movq [48+esp],mm6
- mov ecx,4
- pxor mm2,mm1
- movq [56+esp],mm7
- pxor mm3,mm3
- jmp NEAR L$00800_47_ssse3
- align 32
- L$00800_47_ssse3:
- movdqa xmm3,xmm5
- movdqa xmm1,xmm2
- db 102,15,58,15,208,8
- movdqa [edx],xmm4
- db 102,15,58,15,220,8
- movdqa xmm4,xmm2
- psrlq xmm2,7
- paddq xmm0,xmm3
- movdqa xmm3,xmm4
- psrlq xmm4,1
- psllq xmm3,56
- pxor xmm2,xmm4
- psrlq xmm4,7
- pxor xmm2,xmm3
- psllq xmm3,7
- pxor xmm2,xmm4
- movdqa xmm4,xmm7
- pxor xmm2,xmm3
- movdqa xmm3,xmm7
- psrlq xmm4,6
- paddq xmm0,xmm2
- movdqa xmm2,xmm7
- psrlq xmm3,19
- psllq xmm2,3
- pxor xmm4,xmm3
- psrlq xmm3,42
- pxor xmm4,xmm2
- psllq xmm2,42
- pxor xmm4,xmm3
- movdqa xmm3,[32+edx]
- pxor xmm4,xmm2
- movdqa xmm2,[ebp]
- movq mm1,mm4
- paddq xmm0,xmm4
- movq mm7,[edx-128]
- pxor mm5,mm6
- psrlq mm1,14
- movq [32+esp],mm4
- paddq xmm2,xmm0
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[56+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[24+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[8+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[32+esp]
- paddq mm2,mm6
- movq mm6,[40+esp]
- movq mm1,mm4
- movq mm7,[edx-120]
- pxor mm5,mm6
- psrlq mm1,14
- movq [24+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [56+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[48+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[16+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[24+esp]
- paddq mm0,mm6
- movq mm6,[32+esp]
- movdqa [edx-128],xmm2
- movdqa xmm4,xmm6
- movdqa xmm2,xmm3
- db 102,15,58,15,217,8
- movdqa [16+edx],xmm5
- db 102,15,58,15,229,8
- movdqa xmm5,xmm3
- psrlq xmm3,7
- paddq xmm1,xmm4
- movdqa xmm4,xmm5
- psrlq xmm5,1
- psllq xmm4,56
- pxor xmm3,xmm5
- psrlq xmm5,7
- pxor xmm3,xmm4
- psllq xmm4,7
- pxor xmm3,xmm5
- movdqa xmm5,xmm0
- pxor xmm3,xmm4
- movdqa xmm4,xmm0
- psrlq xmm5,6
- paddq xmm1,xmm3
- movdqa xmm3,xmm0
- psrlq xmm4,19
- psllq xmm3,3
- pxor xmm5,xmm4
- psrlq xmm4,42
- pxor xmm5,xmm3
- psllq xmm3,42
- pxor xmm5,xmm4
- movdqa xmm4,[48+edx]
- pxor xmm5,xmm3
- movdqa xmm3,[16+ebp]
- movq mm1,mm4
- paddq xmm1,xmm5
- movq mm7,[edx-112]
- pxor mm5,mm6
- psrlq mm1,14
- movq [16+esp],mm4
- paddq xmm3,xmm1
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [48+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[40+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[8+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[56+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[16+esp]
- paddq mm2,mm6
- movq mm6,[24+esp]
- movq mm1,mm4
- movq mm7,[edx-104]
- pxor mm5,mm6
- psrlq mm1,14
- movq [8+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [40+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[32+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[48+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[8+esp]
- paddq mm0,mm6
- movq mm6,[16+esp]
- movdqa [edx-112],xmm3
- movdqa xmm5,xmm7
- movdqa xmm3,xmm4
- db 102,15,58,15,226,8
- movdqa [32+edx],xmm6
- db 102,15,58,15,238,8
- movdqa xmm6,xmm4
- psrlq xmm4,7
- paddq xmm2,xmm5
- movdqa xmm5,xmm6
- psrlq xmm6,1
- psllq xmm5,56
- pxor xmm4,xmm6
- psrlq xmm6,7
- pxor xmm4,xmm5
- psllq xmm5,7
- pxor xmm4,xmm6
- movdqa xmm6,xmm1
- pxor xmm4,xmm5
- movdqa xmm5,xmm1
- psrlq xmm6,6
- paddq xmm2,xmm4
- movdqa xmm4,xmm1
- psrlq xmm5,19
- psllq xmm4,3
- pxor xmm6,xmm5
- psrlq xmm5,42
- pxor xmm6,xmm4
- psllq xmm4,42
- pxor xmm6,xmm5
- movdqa xmm5,[edx]
- pxor xmm6,xmm4
- movdqa xmm4,[32+ebp]
- movq mm1,mm4
- paddq xmm2,xmm6
- movq mm7,[edx-96]
- pxor mm5,mm6
- psrlq mm1,14
- movq [esp],mm4
- paddq xmm4,xmm2
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [32+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[24+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[56+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[40+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[esp]
- paddq mm2,mm6
- movq mm6,[8+esp]
- movq mm1,mm4
- movq mm7,[edx-88]
- pxor mm5,mm6
- psrlq mm1,14
- movq [56+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [24+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[16+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[48+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[32+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[56+esp]
- paddq mm0,mm6
- movq mm6,[esp]
- movdqa [edx-96],xmm4
- movdqa xmm6,xmm0
- movdqa xmm4,xmm5
- db 102,15,58,15,235,8
- movdqa [48+edx],xmm7
- db 102,15,58,15,247,8
- movdqa xmm7,xmm5
- psrlq xmm5,7
- paddq xmm3,xmm6
- movdqa xmm6,xmm7
- psrlq xmm7,1
- psllq xmm6,56
- pxor xmm5,xmm7
- psrlq xmm7,7
- pxor xmm5,xmm6
- psllq xmm6,7
- pxor xmm5,xmm7
- movdqa xmm7,xmm2
- pxor xmm5,xmm6
- movdqa xmm6,xmm2
- psrlq xmm7,6
- paddq xmm3,xmm5
- movdqa xmm5,xmm2
- psrlq xmm6,19
- psllq xmm5,3
- pxor xmm7,xmm6
- psrlq xmm6,42
- pxor xmm7,xmm5
- psllq xmm5,42
- pxor xmm7,xmm6
- movdqa xmm6,[16+edx]
- pxor xmm7,xmm5
- movdqa xmm5,[48+ebp]
- movq mm1,mm4
- paddq xmm3,xmm7
- movq mm7,[edx-80]
- pxor mm5,mm6
- psrlq mm1,14
- movq [48+esp],mm4
- paddq xmm5,xmm3
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [16+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[8+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[40+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[24+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[48+esp]
- paddq mm2,mm6
- movq mm6,[56+esp]
- movq mm1,mm4
- movq mm7,[edx-72]
- pxor mm5,mm6
- psrlq mm1,14
- movq [40+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [8+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[32+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[16+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[40+esp]
- paddq mm0,mm6
- movq mm6,[48+esp]
- movdqa [edx-80],xmm5
- movdqa xmm7,xmm1
- movdqa xmm5,xmm6
- db 102,15,58,15,244,8
- movdqa [edx],xmm0
- db 102,15,58,15,248,8
- movdqa xmm0,xmm6
- psrlq xmm6,7
- paddq xmm4,xmm7
- movdqa xmm7,xmm0
- psrlq xmm0,1
- psllq xmm7,56
- pxor xmm6,xmm0
- psrlq xmm0,7
- pxor xmm6,xmm7
- psllq xmm7,7
- pxor xmm6,xmm0
- movdqa xmm0,xmm3
- pxor xmm6,xmm7
- movdqa xmm7,xmm3
- psrlq xmm0,6
- paddq xmm4,xmm6
- movdqa xmm6,xmm3
- psrlq xmm7,19
- psllq xmm6,3
- pxor xmm0,xmm7
- psrlq xmm7,42
- pxor xmm0,xmm6
- psllq xmm6,42
- pxor xmm0,xmm7
- movdqa xmm7,[32+edx]
- pxor xmm0,xmm6
- movdqa xmm6,[64+ebp]
- movq mm1,mm4
- paddq xmm4,xmm0
- movq mm7,[edx-64]
- pxor mm5,mm6
- psrlq mm1,14
- movq [32+esp],mm4
- paddq xmm6,xmm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[56+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[24+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[8+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[32+esp]
- paddq mm2,mm6
- movq mm6,[40+esp]
- movq mm1,mm4
- movq mm7,[edx-56]
- pxor mm5,mm6
- psrlq mm1,14
- movq [24+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [56+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[48+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[16+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[24+esp]
- paddq mm0,mm6
- movq mm6,[32+esp]
- movdqa [edx-64],xmm6
- movdqa xmm0,xmm2
- movdqa xmm6,xmm7
- db 102,15,58,15,253,8
- movdqa [16+edx],xmm1
- db 102,15,58,15,193,8
- movdqa xmm1,xmm7
- psrlq xmm7,7
- paddq xmm5,xmm0
- movdqa xmm0,xmm1
- psrlq xmm1,1
- psllq xmm0,56
- pxor xmm7,xmm1
- psrlq xmm1,7
- pxor xmm7,xmm0
- psllq xmm0,7
- pxor xmm7,xmm1
- movdqa xmm1,xmm4
- pxor xmm7,xmm0
- movdqa xmm0,xmm4
- psrlq xmm1,6
- paddq xmm5,xmm7
- movdqa xmm7,xmm4
- psrlq xmm0,19
- psllq xmm7,3
- pxor xmm1,xmm0
- psrlq xmm0,42
- pxor xmm1,xmm7
- psllq xmm7,42
- pxor xmm1,xmm0
- movdqa xmm0,[48+edx]
- pxor xmm1,xmm7
- movdqa xmm7,[80+ebp]
- movq mm1,mm4
- paddq xmm5,xmm1
- movq mm7,[edx-48]
- pxor mm5,mm6
- psrlq mm1,14
- movq [16+esp],mm4
- paddq xmm7,xmm5
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [48+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[40+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[8+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[56+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[16+esp]
- paddq mm2,mm6
- movq mm6,[24+esp]
- movq mm1,mm4
- movq mm7,[edx-40]
- pxor mm5,mm6
- psrlq mm1,14
- movq [8+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [40+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[32+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[48+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[8+esp]
- paddq mm0,mm6
- movq mm6,[16+esp]
- movdqa [edx-48],xmm7
- movdqa xmm1,xmm3
- movdqa xmm7,xmm0
- db 102,15,58,15,198,8
- movdqa [32+edx],xmm2
- db 102,15,58,15,202,8
- movdqa xmm2,xmm0
- psrlq xmm0,7
- paddq xmm6,xmm1
- movdqa xmm1,xmm2
- psrlq xmm2,1
- psllq xmm1,56
- pxor xmm0,xmm2
- psrlq xmm2,7
- pxor xmm0,xmm1
- psllq xmm1,7
- pxor xmm0,xmm2
- movdqa xmm2,xmm5
- pxor xmm0,xmm1
- movdqa xmm1,xmm5
- psrlq xmm2,6
- paddq xmm6,xmm0
- movdqa xmm0,xmm5
- psrlq xmm1,19
- psllq xmm0,3
- pxor xmm2,xmm1
- psrlq xmm1,42
- pxor xmm2,xmm0
- psllq xmm0,42
- pxor xmm2,xmm1
- movdqa xmm1,[edx]
- pxor xmm2,xmm0
- movdqa xmm0,[96+ebp]
- movq mm1,mm4
- paddq xmm6,xmm2
- movq mm7,[edx-32]
- pxor mm5,mm6
- psrlq mm1,14
- movq [esp],mm4
- paddq xmm0,xmm6
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [32+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[24+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[56+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[40+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[esp]
- paddq mm2,mm6
- movq mm6,[8+esp]
- movq mm1,mm4
- movq mm7,[edx-24]
- pxor mm5,mm6
- psrlq mm1,14
- movq [56+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [24+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[16+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[48+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[32+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[56+esp]
- paddq mm0,mm6
- movq mm6,[esp]
- movdqa [edx-32],xmm0
- movdqa xmm2,xmm4
- movdqa xmm0,xmm1
- db 102,15,58,15,207,8
- movdqa [48+edx],xmm3
- db 102,15,58,15,211,8
- movdqa xmm3,xmm1
- psrlq xmm1,7
- paddq xmm7,xmm2
- movdqa xmm2,xmm3
- psrlq xmm3,1
- psllq xmm2,56
- pxor xmm1,xmm3
- psrlq xmm3,7
- pxor xmm1,xmm2
- psllq xmm2,7
- pxor xmm1,xmm3
- movdqa xmm3,xmm6
- pxor xmm1,xmm2
- movdqa xmm2,xmm6
- psrlq xmm3,6
- paddq xmm7,xmm1
- movdqa xmm1,xmm6
- psrlq xmm2,19
- psllq xmm1,3
- pxor xmm3,xmm2
- psrlq xmm2,42
- pxor xmm3,xmm1
- psllq xmm1,42
- pxor xmm3,xmm2
- movdqa xmm2,[16+edx]
- pxor xmm3,xmm1
- movdqa xmm1,[112+ebp]
- movq mm1,mm4
- paddq xmm7,xmm3
- movq mm7,[edx-16]
- pxor mm5,mm6
- psrlq mm1,14
- movq [48+esp],mm4
- paddq xmm1,xmm7
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [16+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[8+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[40+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[24+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[48+esp]
- paddq mm2,mm6
- movq mm6,[56+esp]
- movq mm1,mm4
- movq mm7,[edx-8]
- pxor mm5,mm6
- psrlq mm1,14
- movq [40+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [8+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[32+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[16+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[40+esp]
- paddq mm0,mm6
- movq mm6,[48+esp]
- movdqa [edx-16],xmm1
- lea ebp,[128+ebp]
- dec ecx
- jnz NEAR L$00800_47_ssse3
- movdqa xmm1,[ebp]
- lea ebp,[ebp-640]
- movdqu xmm0,[ebx]
- db 102,15,56,0,193
- movdqa xmm3,[ebp]
- movdqa xmm2,xmm1
- movdqu xmm1,[16+ebx]
- paddq xmm3,xmm0
- db 102,15,56,0,202
- movq mm1,mm4
- movq mm7,[edx-128]
- pxor mm5,mm6
- psrlq mm1,14
- movq [32+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[56+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[24+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[8+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[32+esp]
- paddq mm2,mm6
- movq mm6,[40+esp]
- movq mm1,mm4
- movq mm7,[edx-120]
- pxor mm5,mm6
- psrlq mm1,14
- movq [24+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [56+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[48+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[16+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[24+esp]
- paddq mm0,mm6
- movq mm6,[32+esp]
- movdqa [edx-128],xmm3
- movdqa xmm4,[16+ebp]
- movdqa xmm3,xmm2
- movdqu xmm2,[32+ebx]
- paddq xmm4,xmm1
- db 102,15,56,0,211
- movq mm1,mm4
- movq mm7,[edx-112]
- pxor mm5,mm6
- psrlq mm1,14
- movq [16+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [48+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[40+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[8+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[56+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[16+esp]
- paddq mm2,mm6
- movq mm6,[24+esp]
- movq mm1,mm4
- movq mm7,[edx-104]
- pxor mm5,mm6
- psrlq mm1,14
- movq [8+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [40+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[32+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[48+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[8+esp]
- paddq mm0,mm6
- movq mm6,[16+esp]
- movdqa [edx-112],xmm4
- movdqa xmm5,[32+ebp]
- movdqa xmm4,xmm3
- movdqu xmm3,[48+ebx]
- paddq xmm5,xmm2
- db 102,15,56,0,220
- movq mm1,mm4
- movq mm7,[edx-96]
- pxor mm5,mm6
- psrlq mm1,14
- movq [esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [32+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[24+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[56+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[40+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[esp]
- paddq mm2,mm6
- movq mm6,[8+esp]
- movq mm1,mm4
- movq mm7,[edx-88]
- pxor mm5,mm6
- psrlq mm1,14
- movq [56+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [24+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[16+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[48+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[32+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[56+esp]
- paddq mm0,mm6
- movq mm6,[esp]
- movdqa [edx-96],xmm5
- movdqa xmm6,[48+ebp]
- movdqa xmm5,xmm4
- movdqu xmm4,[64+ebx]
- paddq xmm6,xmm3
- db 102,15,56,0,229
- movq mm1,mm4
- movq mm7,[edx-80]
- pxor mm5,mm6
- psrlq mm1,14
- movq [48+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [16+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[8+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[40+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[24+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[48+esp]
- paddq mm2,mm6
- movq mm6,[56+esp]
- movq mm1,mm4
- movq mm7,[edx-72]
- pxor mm5,mm6
- psrlq mm1,14
- movq [40+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [8+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[32+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[16+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[40+esp]
- paddq mm0,mm6
- movq mm6,[48+esp]
- movdqa [edx-80],xmm6
- movdqa xmm7,[64+ebp]
- movdqa xmm6,xmm5
- movdqu xmm5,[80+ebx]
- paddq xmm7,xmm4
- db 102,15,56,0,238
- movq mm1,mm4
- movq mm7,[edx-64]
- pxor mm5,mm6
- psrlq mm1,14
- movq [32+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[56+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[24+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[8+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[32+esp]
- paddq mm2,mm6
- movq mm6,[40+esp]
- movq mm1,mm4
- movq mm7,[edx-56]
- pxor mm5,mm6
- psrlq mm1,14
- movq [24+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [56+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[48+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[16+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[24+esp]
- paddq mm0,mm6
- movq mm6,[32+esp]
- movdqa [edx-64],xmm7
- movdqa [edx],xmm0
- movdqa xmm0,[80+ebp]
- movdqa xmm7,xmm6
- movdqu xmm6,[96+ebx]
- paddq xmm0,xmm5
- db 102,15,56,0,247
- movq mm1,mm4
- movq mm7,[edx-48]
- pxor mm5,mm6
- psrlq mm1,14
- movq [16+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [48+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[40+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[8+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[56+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[16+esp]
- paddq mm2,mm6
- movq mm6,[24+esp]
- movq mm1,mm4
- movq mm7,[edx-40]
- pxor mm5,mm6
- psrlq mm1,14
- movq [8+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [40+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[32+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[48+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[8+esp]
- paddq mm0,mm6
- movq mm6,[16+esp]
- movdqa [edx-48],xmm0
- movdqa [16+edx],xmm1
- movdqa xmm1,[96+ebp]
- movdqa xmm0,xmm7
- movdqu xmm7,[112+ebx]
- paddq xmm1,xmm6
- db 102,15,56,0,248
- movq mm1,mm4
- movq mm7,[edx-32]
- pxor mm5,mm6
- psrlq mm1,14
- movq [esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [32+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[24+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[56+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[40+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[esp]
- paddq mm2,mm6
- movq mm6,[8+esp]
- movq mm1,mm4
- movq mm7,[edx-24]
- pxor mm5,mm6
- psrlq mm1,14
- movq [56+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [24+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[16+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[48+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[32+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[56+esp]
- paddq mm0,mm6
- movq mm6,[esp]
- movdqa [edx-32],xmm1
- movdqa [32+edx],xmm2
- movdqa xmm2,[112+ebp]
- movdqa xmm0,[edx]
- paddq xmm2,xmm7
- movq mm1,mm4
- movq mm7,[edx-16]
- pxor mm5,mm6
- psrlq mm1,14
- movq [48+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm0,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [16+esp],mm0
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[8+esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[40+esp]
- paddq mm3,mm7
- movq mm5,mm0
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm0
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[24+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm0,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm2,mm0
- psllq mm6,6
- pxor mm7,mm5
- pxor mm2,mm1
- pxor mm6,mm7
- movq mm5,[48+esp]
- paddq mm2,mm6
- movq mm6,[56+esp]
- movq mm1,mm4
- movq mm7,[edx-8]
- pxor mm5,mm6
- psrlq mm1,14
- movq [40+esp],mm4
- pand mm5,mm4
- psllq mm4,23
- paddq mm2,mm3
- movq mm3,mm1
- psrlq mm1,4
- pxor mm5,mm6
- pxor mm3,mm4
- psllq mm4,23
- pxor mm3,mm1
- movq [8+esp],mm2
- paddq mm7,mm5
- pxor mm3,mm4
- psrlq mm1,23
- paddq mm7,[esp]
- pxor mm3,mm1
- psllq mm4,4
- pxor mm3,mm4
- movq mm4,[32+esp]
- paddq mm3,mm7
- movq mm5,mm2
- psrlq mm5,28
- paddq mm4,mm3
- movq mm6,mm2
- movq mm7,mm5
- psllq mm6,25
- movq mm1,[16+esp]
- psrlq mm5,6
- pxor mm7,mm6
- psllq mm6,5
- pxor mm7,mm5
- pxor mm2,mm1
- psrlq mm5,5
- pxor mm7,mm6
- pand mm0,mm2
- psllq mm6,6
- pxor mm7,mm5
- pxor mm0,mm1
- pxor mm6,mm7
- movq mm5,[40+esp]
- paddq mm0,mm6
- movq mm6,[48+esp]
- movdqa [edx-16],xmm2
- movq mm1,[8+esp]
- paddq mm0,mm3
- movq mm3,[24+esp]
- movq mm7,[56+esp]
- pxor mm2,mm1
- paddq mm0,[esi]
- paddq mm1,[8+esi]
- paddq mm2,[16+esi]
- paddq mm3,[24+esi]
- paddq mm4,[32+esi]
- paddq mm5,[40+esi]
- paddq mm6,[48+esi]
- paddq mm7,[56+esi]
- movq [esi],mm0
- movq [8+esi],mm1
- movq [16+esi],mm2
- movq [24+esi],mm3
- movq [32+esi],mm4
- movq [40+esi],mm5
- movq [48+esi],mm6
- movq [56+esi],mm7
- cmp edi,eax
- jb NEAR L$007loop_ssse3
- mov esp,DWORD [76+edx]
- emms
- pop edi
- pop esi
- pop ebx
- pop ebp
- ret
- align 16
- L$002loop_x86:
- mov eax,DWORD [edi]
- mov ebx,DWORD [4+edi]
- mov ecx,DWORD [8+edi]
- mov edx,DWORD [12+edi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- push eax
- push ebx
- push ecx
- push edx
- mov eax,DWORD [16+edi]
- mov ebx,DWORD [20+edi]
- mov ecx,DWORD [24+edi]
- mov edx,DWORD [28+edi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- push eax
- push ebx
- push ecx
- push edx
- mov eax,DWORD [32+edi]
- mov ebx,DWORD [36+edi]
- mov ecx,DWORD [40+edi]
- mov edx,DWORD [44+edi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- push eax
- push ebx
- push ecx
- push edx
- mov eax,DWORD [48+edi]
- mov ebx,DWORD [52+edi]
- mov ecx,DWORD [56+edi]
- mov edx,DWORD [60+edi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- push eax
- push ebx
- push ecx
- push edx
- mov eax,DWORD [64+edi]
- mov ebx,DWORD [68+edi]
- mov ecx,DWORD [72+edi]
- mov edx,DWORD [76+edi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- push eax
- push ebx
- push ecx
- push edx
- mov eax,DWORD [80+edi]
- mov ebx,DWORD [84+edi]
- mov ecx,DWORD [88+edi]
- mov edx,DWORD [92+edi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- push eax
- push ebx
- push ecx
- push edx
- mov eax,DWORD [96+edi]
- mov ebx,DWORD [100+edi]
- mov ecx,DWORD [104+edi]
- mov edx,DWORD [108+edi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- push eax
- push ebx
- push ecx
- push edx
- mov eax,DWORD [112+edi]
- mov ebx,DWORD [116+edi]
- mov ecx,DWORD [120+edi]
- mov edx,DWORD [124+edi]
- bswap eax
- bswap ebx
- bswap ecx
- bswap edx
- push eax
- push ebx
- push ecx
- push edx
- add edi,128
- sub esp,72
- mov DWORD [204+esp],edi
- lea edi,[8+esp]
- mov ecx,16
- dd 2784229001
- align 16
- L$00900_15_x86:
- mov ecx,DWORD [40+esp]
- mov edx,DWORD [44+esp]
- mov esi,ecx
- shr ecx,9
- mov edi,edx
- shr edx,9
- mov ebx,ecx
- shl esi,14
- mov eax,edx
- shl edi,14
- xor ebx,esi
- shr ecx,5
- xor eax,edi
- shr edx,5
- xor eax,ecx
- shl esi,4
- xor ebx,edx
- shl edi,4
- xor ebx,esi
- shr ecx,4
- xor eax,edi
- shr edx,4
- xor eax,ecx
- shl esi,5
- xor ebx,edx
- shl edi,5
- xor eax,esi
- xor ebx,edi
- mov ecx,DWORD [48+esp]
- mov edx,DWORD [52+esp]
- mov esi,DWORD [56+esp]
- mov edi,DWORD [60+esp]
- add eax,DWORD [64+esp]
- adc ebx,DWORD [68+esp]
- xor ecx,esi
- xor edx,edi
- and ecx,DWORD [40+esp]
- and edx,DWORD [44+esp]
- add eax,DWORD [192+esp]
- adc ebx,DWORD [196+esp]
- xor ecx,esi
- xor edx,edi
- mov esi,DWORD [ebp]
- mov edi,DWORD [4+ebp]
- add eax,ecx
- adc ebx,edx
- mov ecx,DWORD [32+esp]
- mov edx,DWORD [36+esp]
- add eax,esi
- adc ebx,edi
- mov DWORD [esp],eax
- mov DWORD [4+esp],ebx
- add eax,ecx
- adc ebx,edx
- mov ecx,DWORD [8+esp]
- mov edx,DWORD [12+esp]
- mov DWORD [32+esp],eax
- mov DWORD [36+esp],ebx
- mov esi,ecx
- shr ecx,2
- mov edi,edx
- shr edx,2
- mov ebx,ecx
- shl esi,4
- mov eax,edx
- shl edi,4
- xor ebx,esi
- shr ecx,5
- xor eax,edi
- shr edx,5
- xor ebx,ecx
- shl esi,21
- xor eax,edx
- shl edi,21
- xor eax,esi
- shr ecx,21
- xor ebx,edi
- shr edx,21
- xor eax,ecx
- shl esi,5
- xor ebx,edx
- shl edi,5
- xor eax,esi
- xor ebx,edi
- mov ecx,DWORD [8+esp]
- mov edx,DWORD [12+esp]
- mov esi,DWORD [16+esp]
- mov edi,DWORD [20+esp]
- add eax,DWORD [esp]
- adc ebx,DWORD [4+esp]
- or ecx,esi
- or edx,edi
- and ecx,DWORD [24+esp]
- and edx,DWORD [28+esp]
- and esi,DWORD [8+esp]
- and edi,DWORD [12+esp]
- or ecx,esi
- or edx,edi
- add eax,ecx
- adc ebx,edx
- mov DWORD [esp],eax
- mov DWORD [4+esp],ebx
- mov dl,BYTE [ebp]
- sub esp,8
- lea ebp,[8+ebp]
- cmp dl,148
- jne NEAR L$00900_15_x86
- align 16
- L$01016_79_x86:
- mov ecx,DWORD [312+esp]
- mov edx,DWORD [316+esp]
- mov esi,ecx
- shr ecx,1
- mov edi,edx
- shr edx,1
- mov eax,ecx
- shl esi,24
- mov ebx,edx
- shl edi,24
- xor ebx,esi
- shr ecx,6
- xor eax,edi
- shr edx,6
- xor eax,ecx
- shl esi,7
- xor ebx,edx
- shl edi,1
- xor ebx,esi
- shr ecx,1
- xor eax,edi
- shr edx,1
- xor eax,ecx
- shl edi,6
- xor ebx,edx
- xor eax,edi
- mov DWORD [esp],eax
- mov DWORD [4+esp],ebx
- mov ecx,DWORD [208+esp]
- mov edx,DWORD [212+esp]
- mov esi,ecx
- shr ecx,6
- mov edi,edx
- shr edx,6
- mov eax,ecx
- shl esi,3
- mov ebx,edx
- shl edi,3
- xor eax,esi
- shr ecx,13
- xor ebx,edi
- shr edx,13
- xor eax,ecx
- shl esi,10
- xor ebx,edx
- shl edi,10
- xor ebx,esi
- shr ecx,10
- xor eax,edi
- shr edx,10
- xor ebx,ecx
- shl edi,13
- xor eax,edx
- xor eax,edi
- mov ecx,DWORD [320+esp]
- mov edx,DWORD [324+esp]
- add eax,DWORD [esp]
- adc ebx,DWORD [4+esp]
- mov esi,DWORD [248+esp]
- mov edi,DWORD [252+esp]
- add eax,ecx
- adc ebx,edx
- add eax,esi
- adc ebx,edi
- mov DWORD [192+esp],eax
- mov DWORD [196+esp],ebx
- mov ecx,DWORD [40+esp]
- mov edx,DWORD [44+esp]
- mov esi,ecx
- shr ecx,9
- mov edi,edx
- shr edx,9
- mov ebx,ecx
- shl esi,14
- mov eax,edx
- shl edi,14
- xor ebx,esi
- shr ecx,5
- xor eax,edi
- shr edx,5
- xor eax,ecx
- shl esi,4
- xor ebx,edx
- shl edi,4
- xor ebx,esi
- shr ecx,4
- xor eax,edi
- shr edx,4
- xor eax,ecx
- shl esi,5
- xor ebx,edx
- shl edi,5
- xor eax,esi
- xor ebx,edi
- mov ecx,DWORD [48+esp]
- mov edx,DWORD [52+esp]
- mov esi,DWORD [56+esp]
- mov edi,DWORD [60+esp]
- add eax,DWORD [64+esp]
- adc ebx,DWORD [68+esp]
- xor ecx,esi
- xor edx,edi
- and ecx,DWORD [40+esp]
- and edx,DWORD [44+esp]
- add eax,DWORD [192+esp]
- adc ebx,DWORD [196+esp]
- xor ecx,esi
- xor edx,edi
- mov esi,DWORD [ebp]
- mov edi,DWORD [4+ebp]
- add eax,ecx
- adc ebx,edx
- mov ecx,DWORD [32+esp]
- mov edx,DWORD [36+esp]
- add eax,esi
- adc ebx,edi
- mov DWORD [esp],eax
- mov DWORD [4+esp],ebx
- add eax,ecx
- adc ebx,edx
- mov ecx,DWORD [8+esp]
- mov edx,DWORD [12+esp]
- mov DWORD [32+esp],eax
- mov DWORD [36+esp],ebx
- mov esi,ecx
- shr ecx,2
- mov edi,edx
- shr edx,2
- mov ebx,ecx
- shl esi,4
- mov eax,edx
- shl edi,4
- xor ebx,esi
- shr ecx,5
- xor eax,edi
- shr edx,5
- xor ebx,ecx
- shl esi,21
- xor eax,edx
- shl edi,21
- xor eax,esi
- shr ecx,21
- xor ebx,edi
- shr edx,21
- xor eax,ecx
- shl esi,5
- xor ebx,edx
- shl edi,5
- xor eax,esi
- xor ebx,edi
- mov ecx,DWORD [8+esp]
- mov edx,DWORD [12+esp]
- mov esi,DWORD [16+esp]
- mov edi,DWORD [20+esp]
- add eax,DWORD [esp]
- adc ebx,DWORD [4+esp]
- or ecx,esi
- or edx,edi
- and ecx,DWORD [24+esp]
- and edx,DWORD [28+esp]
- and esi,DWORD [8+esp]
- and edi,DWORD [12+esp]
- or ecx,esi
- or edx,edi
- add eax,ecx
- adc ebx,edx
- mov DWORD [esp],eax
- mov DWORD [4+esp],ebx
- mov dl,BYTE [ebp]
- sub esp,8
- lea ebp,[8+ebp]
- cmp dl,23
- jne NEAR L$01016_79_x86
- mov esi,DWORD [840+esp]
- mov edi,DWORD [844+esp]
- mov eax,DWORD [esi]
- mov ebx,DWORD [4+esi]
- mov ecx,DWORD [8+esi]
- mov edx,DWORD [12+esi]
- add eax,DWORD [8+esp]
- adc ebx,DWORD [12+esp]
- mov DWORD [esi],eax
- mov DWORD [4+esi],ebx
- add ecx,DWORD [16+esp]
- adc edx,DWORD [20+esp]
- mov DWORD [8+esi],ecx
- mov DWORD [12+esi],edx
- mov eax,DWORD [16+esi]
- mov ebx,DWORD [20+esi]
- mov ecx,DWORD [24+esi]
- mov edx,DWORD [28+esi]
- add eax,DWORD [24+esp]
- adc ebx,DWORD [28+esp]
- mov DWORD [16+esi],eax
- mov DWORD [20+esi],ebx
- add ecx,DWORD [32+esp]
- adc edx,DWORD [36+esp]
- mov DWORD [24+esi],ecx
- mov DWORD [28+esi],edx
- mov eax,DWORD [32+esi]
- mov ebx,DWORD [36+esi]
- mov ecx,DWORD [40+esi]
- mov edx,DWORD [44+esi]
- add eax,DWORD [40+esp]
- adc ebx,DWORD [44+esp]
- mov DWORD [32+esi],eax
- mov DWORD [36+esi],ebx
- add ecx,DWORD [48+esp]
- adc edx,DWORD [52+esp]
- mov DWORD [40+esi],ecx
- mov DWORD [44+esi],edx
- mov eax,DWORD [48+esi]
- mov ebx,DWORD [52+esi]
- mov ecx,DWORD [56+esi]
- mov edx,DWORD [60+esi]
- add eax,DWORD [56+esp]
- adc ebx,DWORD [60+esp]
- mov DWORD [48+esi],eax
- mov DWORD [52+esi],ebx
- add ecx,DWORD [64+esp]
- adc edx,DWORD [68+esp]
- mov DWORD [56+esi],ecx
- mov DWORD [60+esi],edx
- add esp,840
- sub ebp,640
- cmp edi,DWORD [8+esp]
- jb NEAR L$002loop_x86
- mov esp,DWORD [12+esp]
- pop edi
- pop esi
- pop ebx
- pop ebp
- ret
- align 64
- L$001K512:
- dd 3609767458,1116352408
- dd 602891725,1899447441
- dd 3964484399,3049323471
- dd 2173295548,3921009573
- dd 4081628472,961987163
- dd 3053834265,1508970993
- dd 2937671579,2453635748
- dd 3664609560,2870763221
- dd 2734883394,3624381080
- dd 1164996542,310598401
- dd 1323610764,607225278
- dd 3590304994,1426881987
- dd 4068182383,1925078388
- dd 991336113,2162078206
- dd 633803317,2614888103
- dd 3479774868,3248222580
- dd 2666613458,3835390401
- dd 944711139,4022224774
- dd 2341262773,264347078
- dd 2007800933,604807628
- dd 1495990901,770255983
- dd 1856431235,1249150122
- dd 3175218132,1555081692
- dd 2198950837,1996064986
- dd 3999719339,2554220882
- dd 766784016,2821834349
- dd 2566594879,2952996808
- dd 3203337956,3210313671
- dd 1034457026,3336571891
- dd 2466948901,3584528711
- dd 3758326383,113926993
- dd 168717936,338241895
- dd 1188179964,666307205
- dd 1546045734,773529912
- dd 1522805485,1294757372
- dd 2643833823,1396182291
- dd 2343527390,1695183700
- dd 1014477480,1986661051
- dd 1206759142,2177026350
- dd 344077627,2456956037
- dd 1290863460,2730485921
- dd 3158454273,2820302411
- dd 3505952657,3259730800
- dd 106217008,3345764771
- dd 3606008344,3516065817
- dd 1432725776,3600352804
- dd 1467031594,4094571909
- dd 851169720,275423344
- dd 3100823752,430227734
- dd 1363258195,506948616
- dd 3750685593,659060556
- dd 3785050280,883997877
- dd 3318307427,958139571
- dd 3812723403,1322822218
- dd 2003034995,1537002063
- dd 3602036899,1747873779
- dd 1575990012,1955562222
- dd 1125592928,2024104815
- dd 2716904306,2227730452
- dd 442776044,2361852424
- dd 593698344,2428436474
- dd 3733110249,2756734187
- dd 2999351573,3204031479
- dd 3815920427,3329325298
- dd 3928383900,3391569614
- dd 566280711,3515267271
- dd 3454069534,3940187606
- dd 4000239992,4118630271
- dd 1914138554,116418474
- dd 2731055270,174292421
- dd 3203993006,289380356
- dd 320620315,460393269
- dd 587496836,685471733
- dd 1086792851,852142971
- dd 365543100,1017036298
- dd 2618297676,1126000580
- dd 3409855158,1288033470
- dd 4234509866,1501505948
- dd 987167468,1607167915
- dd 1246189591,1816402316
- dd 67438087,66051
- dd 202182159,134810123
- db 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97
- db 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32
- db 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
- db 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
- db 62,0
- segment .bss
- common _OPENSSL_ia32cap_P 16
|