Path: blob/main/sys/crypto/openssl/i386/rc5-586.S
109176 views
/* Do not modify. This file is auto-generated from rc5-586.pl. */1#ifdef PIC2.text3.globl RC5_32_encrypt4.type RC5_32_encrypt,@function5.align 166RC5_32_encrypt:7.L_RC5_32_encrypt_begin:8#ifdef __CET__910.byte 243,15,30,25111#endif121314pushl %ebp15pushl %esi16pushl %edi17movl 16(%esp),%edx18movl 20(%esp),%ebp1920movl (%edx),%edi21movl 4(%edx),%esi22pushl %ebx23movl (%ebp),%ebx24addl 4(%ebp),%edi25addl 8(%ebp),%esi26xorl %esi,%edi27movl 12(%ebp),%eax28movl %esi,%ecx29roll %cl,%edi30addl %eax,%edi31xorl %edi,%esi32movl 16(%ebp),%eax33movl %edi,%ecx34roll %cl,%esi35addl %eax,%esi36xorl %esi,%edi37movl 20(%ebp),%eax38movl %esi,%ecx39roll %cl,%edi40addl %eax,%edi41xorl %edi,%esi42movl 24(%ebp),%eax43movl %edi,%ecx44roll %cl,%esi45addl %eax,%esi46xorl %esi,%edi47movl 28(%ebp),%eax48movl %esi,%ecx49roll %cl,%edi50addl %eax,%edi51xorl %edi,%esi52movl 32(%ebp),%eax53movl %edi,%ecx54roll %cl,%esi55addl %eax,%esi56xorl %esi,%edi57movl 36(%ebp),%eax58movl %esi,%ecx59roll %cl,%edi60addl %eax,%edi61xorl %edi,%esi62movl 40(%ebp),%eax63movl %edi,%ecx64roll %cl,%esi65addl %eax,%esi66xorl %esi,%edi67movl 44(%ebp),%eax68movl %esi,%ecx69roll %cl,%edi70addl %eax,%edi71xorl %edi,%esi72movl 48(%ebp),%eax73movl %edi,%ecx74roll %cl,%esi75addl %eax,%esi76xorl %esi,%edi77movl 52(%ebp),%eax78movl %esi,%ecx79roll %cl,%edi80addl %eax,%edi81xorl %edi,%esi82movl 56(%ebp),%eax83movl %edi,%ecx84roll %cl,%esi85addl %eax,%esi86xorl %esi,%edi87movl 60(%ebp),%eax88movl %esi,%ecx89roll %cl,%edi90addl %eax,%edi91xorl %edi,%esi92movl 64(%ebp),%eax93movl %edi,%ecx94roll %cl,%esi95addl %eax,%esi96xorl %esi,%edi97movl 68(%ebp),%eax98movl %esi,%ecx99roll %cl,%edi100addl %eax,%edi101xorl %edi,%esi102movl 72(%ebp),%eax103movl %edi,%ecx104roll %cl,%esi105addl %eax,%esi106cmpl $8,%ebx107je .L000rc5_exit108xorl %esi,%edi109movl 76(%ebp),%eax110movl %esi,%ecx111roll %cl,%edi112addl %eax,%edi113xorl %edi,%esi114movl 80(%ebp),%eax115movl %edi,%ecx116roll %cl,%esi117addl %eax,%esi118xorl %esi,%edi119movl 84(%ebp),%eax120movl %esi,%ecx121roll %cl,%edi122addl %eax,%edi123xorl %edi,%esi124movl 88(%ebp),%eax125movl %edi,%ecx126roll %cl,%esi127addl %eax,%esi128xorl %esi,%edi129movl 92(%ebp),%eax130movl %esi,%ecx131roll %cl,%edi132addl %eax,%edi133xorl %edi,%esi134movl 96(%ebp),%eax135movl %edi,%ecx136roll %cl,%esi137addl %eax,%esi138xorl %esi,%edi139movl 100(%ebp),%eax140movl %esi,%ecx141roll %cl,%edi142addl %eax,%edi143xorl %edi,%esi144movl 104(%ebp),%eax145movl %edi,%ecx146roll %cl,%esi147addl %eax,%esi148cmpl $12,%ebx149je .L000rc5_exit150xorl %esi,%edi151movl 108(%ebp),%eax152movl %esi,%ecx153roll %cl,%edi154addl %eax,%edi155xorl %edi,%esi156movl 112(%ebp),%eax157movl %edi,%ecx158roll %cl,%esi159addl %eax,%esi160xorl %esi,%edi161movl 116(%ebp),%eax162movl %esi,%ecx163roll %cl,%edi164addl %eax,%edi165xorl %edi,%esi166movl 120(%ebp),%eax167movl %edi,%ecx168roll %cl,%esi169addl %eax,%esi170xorl %esi,%edi171movl 124(%ebp),%eax172movl %esi,%ecx173roll %cl,%edi174addl %eax,%edi175xorl %edi,%esi176movl 128(%ebp),%eax177movl %edi,%ecx178roll %cl,%esi179addl %eax,%esi180xorl %esi,%edi181movl 132(%ebp),%eax182movl %esi,%ecx183roll %cl,%edi184addl %eax,%edi185xorl %edi,%esi186movl 136(%ebp),%eax187movl %edi,%ecx188roll %cl,%esi189addl %eax,%esi190.L000rc5_exit:191movl %edi,(%edx)192movl %esi,4(%edx)193popl %ebx194popl %edi195popl %esi196popl %ebp197ret198.size RC5_32_encrypt,.-.L_RC5_32_encrypt_begin199.globl RC5_32_decrypt200.type RC5_32_decrypt,@function201.align 16202RC5_32_decrypt:203.L_RC5_32_decrypt_begin:204#ifdef __CET__205206.byte 243,15,30,251207#endif208209210pushl %ebp211pushl %esi212pushl %edi213movl 16(%esp),%edx214movl 20(%esp),%ebp215216movl (%edx),%edi217movl 4(%edx),%esi218pushl %ebx219movl (%ebp),%ebx220cmpl $12,%ebx221je .L001rc5_dec_12222cmpl $8,%ebx223je .L002rc5_dec_8224movl 136(%ebp),%eax225subl %eax,%esi226movl %edi,%ecx227rorl %cl,%esi228xorl %edi,%esi229movl 132(%ebp),%eax230subl %eax,%edi231movl %esi,%ecx232rorl %cl,%edi233xorl %esi,%edi234movl 128(%ebp),%eax235subl %eax,%esi236movl %edi,%ecx237rorl %cl,%esi238xorl %edi,%esi239movl 124(%ebp),%eax240subl %eax,%edi241movl %esi,%ecx242rorl %cl,%edi243xorl %esi,%edi244movl 120(%ebp),%eax245subl %eax,%esi246movl %edi,%ecx247rorl %cl,%esi248xorl %edi,%esi249movl 116(%ebp),%eax250subl %eax,%edi251movl %esi,%ecx252rorl %cl,%edi253xorl %esi,%edi254movl 112(%ebp),%eax255subl %eax,%esi256movl %edi,%ecx257rorl %cl,%esi258xorl %edi,%esi259movl 108(%ebp),%eax260subl %eax,%edi261movl %esi,%ecx262rorl %cl,%edi263xorl %esi,%edi264.L001rc5_dec_12:265movl 104(%ebp),%eax266subl %eax,%esi267movl %edi,%ecx268rorl %cl,%esi269xorl %edi,%esi270movl 100(%ebp),%eax271subl %eax,%edi272movl %esi,%ecx273rorl %cl,%edi274xorl %esi,%edi275movl 96(%ebp),%eax276subl %eax,%esi277movl %edi,%ecx278rorl %cl,%esi279xorl %edi,%esi280movl 92(%ebp),%eax281subl %eax,%edi282movl %esi,%ecx283rorl %cl,%edi284xorl %esi,%edi285movl 88(%ebp),%eax286subl %eax,%esi287movl %edi,%ecx288rorl %cl,%esi289xorl %edi,%esi290movl 84(%ebp),%eax291subl %eax,%edi292movl %esi,%ecx293rorl %cl,%edi294xorl %esi,%edi295movl 80(%ebp),%eax296subl %eax,%esi297movl %edi,%ecx298rorl %cl,%esi299xorl %edi,%esi300movl 76(%ebp),%eax301subl %eax,%edi302movl %esi,%ecx303rorl %cl,%edi304xorl %esi,%edi305.L002rc5_dec_8:306movl 72(%ebp),%eax307subl %eax,%esi308movl %edi,%ecx309rorl %cl,%esi310xorl %edi,%esi311movl 68(%ebp),%eax312subl %eax,%edi313movl %esi,%ecx314rorl %cl,%edi315xorl %esi,%edi316movl 64(%ebp),%eax317subl %eax,%esi318movl %edi,%ecx319rorl %cl,%esi320xorl %edi,%esi321movl 60(%ebp),%eax322subl %eax,%edi323movl %esi,%ecx324rorl %cl,%edi325xorl %esi,%edi326movl 56(%ebp),%eax327subl %eax,%esi328movl %edi,%ecx329rorl %cl,%esi330xorl %edi,%esi331movl 52(%ebp),%eax332subl %eax,%edi333movl %esi,%ecx334rorl %cl,%edi335xorl %esi,%edi336movl 48(%ebp),%eax337subl %eax,%esi338movl %edi,%ecx339rorl %cl,%esi340xorl %edi,%esi341movl 44(%ebp),%eax342subl %eax,%edi343movl %esi,%ecx344rorl %cl,%edi345xorl %esi,%edi346movl 40(%ebp),%eax347subl %eax,%esi348movl %edi,%ecx349rorl %cl,%esi350xorl %edi,%esi351movl 36(%ebp),%eax352subl %eax,%edi353movl %esi,%ecx354rorl %cl,%edi355xorl %esi,%edi356movl 32(%ebp),%eax357subl %eax,%esi358movl %edi,%ecx359rorl %cl,%esi360xorl %edi,%esi361movl 28(%ebp),%eax362subl %eax,%edi363movl %esi,%ecx364rorl %cl,%edi365xorl %esi,%edi366movl 24(%ebp),%eax367subl %eax,%esi368movl %edi,%ecx369rorl %cl,%esi370xorl %edi,%esi371movl 20(%ebp),%eax372subl %eax,%edi373movl %esi,%ecx374rorl %cl,%edi375xorl %esi,%edi376movl 16(%ebp),%eax377subl %eax,%esi378movl %edi,%ecx379rorl %cl,%esi380xorl %edi,%esi381movl 12(%ebp),%eax382subl %eax,%edi383movl %esi,%ecx384rorl %cl,%edi385xorl %esi,%edi386subl 8(%ebp),%esi387subl 4(%ebp),%edi388.L003rc5_exit:389movl %edi,(%edx)390movl %esi,4(%edx)391popl %ebx392popl %edi393popl %esi394popl %ebp395ret396.size RC5_32_decrypt,.-.L_RC5_32_decrypt_begin397.globl RC5_32_cbc_encrypt398.type RC5_32_cbc_encrypt,@function399.align 16400RC5_32_cbc_encrypt:401.L_RC5_32_cbc_encrypt_begin:402#ifdef __CET__403404.byte 243,15,30,251405#endif406407408pushl %ebp409pushl %ebx410pushl %esi411pushl %edi412movl 28(%esp),%ebp413414movl 36(%esp),%ebx415movl (%ebx),%esi416movl 4(%ebx),%edi417pushl %edi418pushl %esi419pushl %edi420pushl %esi421movl %esp,%ebx422movl 36(%esp),%esi423movl 40(%esp),%edi424425movl 56(%esp),%ecx426427movl 48(%esp),%eax428pushl %eax429pushl %ebx430cmpl $0,%ecx431jz .L004decrypt432andl $4294967288,%ebp433movl 8(%esp),%eax434movl 12(%esp),%ebx435jz .L005encrypt_finish436.L006encrypt_loop:437movl (%esi),%ecx438movl 4(%esi),%edx439xorl %ecx,%eax440xorl %edx,%ebx441movl %eax,8(%esp)442movl %ebx,12(%esp)443call .L_RC5_32_encrypt_begin444movl 8(%esp),%eax445movl 12(%esp),%ebx446movl %eax,(%edi)447movl %ebx,4(%edi)448addl $8,%esi449addl $8,%edi450subl $8,%ebp451jnz .L006encrypt_loop452.L005encrypt_finish:453movl 52(%esp),%ebp454andl $7,%ebp455jz .L007finish456call .L008PIC_point457.L008PIC_point:458popl %edx459leal .L009cbc_enc_jmp_table-.L008PIC_point(%edx),%ecx460movl (%ecx,%ebp,4),%ebp461addl %edx,%ebp462xorl %ecx,%ecx463xorl %edx,%edx464jmp *%ebp465.L010ej7:466#ifdef __CET__467468.byte 243,15,30,251469#endif470471movb 6(%esi),%dh472shll $8,%edx473.L011ej6:474#ifdef __CET__475476.byte 243,15,30,251477#endif478479movb 5(%esi),%dh480.L012ej5:481#ifdef __CET__482483.byte 243,15,30,251484#endif485486movb 4(%esi),%dl487.L013ej4:488#ifdef __CET__489490.byte 243,15,30,251491#endif492493movl (%esi),%ecx494jmp .L014ejend495.L015ej3:496#ifdef __CET__497498.byte 243,15,30,251499#endif500501movb 2(%esi),%ch502shll $8,%ecx503.L016ej2:504#ifdef __CET__505506.byte 243,15,30,251507#endif508509movb 1(%esi),%ch510.L017ej1:511#ifdef __CET__512513.byte 243,15,30,251514#endif515516movb (%esi),%cl517.L014ejend:518xorl %ecx,%eax519xorl %edx,%ebx520movl %eax,8(%esp)521movl %ebx,12(%esp)522call .L_RC5_32_encrypt_begin523movl 8(%esp),%eax524movl 12(%esp),%ebx525movl %eax,(%edi)526movl %ebx,4(%edi)527jmp .L007finish528.L004decrypt:529andl $4294967288,%ebp530movl 16(%esp),%eax531movl 20(%esp),%ebx532jz .L018decrypt_finish533.L019decrypt_loop:534movl (%esi),%eax535movl 4(%esi),%ebx536movl %eax,8(%esp)537movl %ebx,12(%esp)538call .L_RC5_32_decrypt_begin539movl 8(%esp),%eax540movl 12(%esp),%ebx541movl 16(%esp),%ecx542movl 20(%esp),%edx543xorl %eax,%ecx544xorl %ebx,%edx545movl (%esi),%eax546movl 4(%esi),%ebx547movl %ecx,(%edi)548movl %edx,4(%edi)549movl %eax,16(%esp)550movl %ebx,20(%esp)551addl $8,%esi552addl $8,%edi553subl $8,%ebp554jnz .L019decrypt_loop555.L018decrypt_finish:556movl 52(%esp),%ebp557andl $7,%ebp558jz .L007finish559movl (%esi),%eax560movl 4(%esi),%ebx561movl %eax,8(%esp)562movl %ebx,12(%esp)563call .L_RC5_32_decrypt_begin564movl 8(%esp),%eax565movl 12(%esp),%ebx566movl 16(%esp),%ecx567movl 20(%esp),%edx568xorl %eax,%ecx569xorl %ebx,%edx570movl (%esi),%eax571movl 4(%esi),%ebx572.L020dj7:573rorl $16,%edx574movb %dl,6(%edi)575shrl $16,%edx576.L021dj6:577movb %dh,5(%edi)578.L022dj5:579movb %dl,4(%edi)580.L023dj4:581movl %ecx,(%edi)582jmp .L024djend583.L025dj3:584rorl $16,%ecx585movb %cl,2(%edi)586shll $16,%ecx587.L026dj2:588movb %ch,1(%esi)589.L027dj1:590movb %cl,(%esi)591.L024djend:592jmp .L007finish593.L007finish:594movl 60(%esp),%ecx595addl $24,%esp596movl %eax,(%ecx)597movl %ebx,4(%ecx)598popl %edi599popl %esi600popl %ebx601popl %ebp602ret603.align 64604.L009cbc_enc_jmp_table:605.long 0606.long .L017ej1-.L008PIC_point607.long .L016ej2-.L008PIC_point608.long .L015ej3-.L008PIC_point609.long .L013ej4-.L008PIC_point610.long .L012ej5-.L008PIC_point611.long .L011ej6-.L008PIC_point612.long .L010ej7-.L008PIC_point613.align 64614.size RC5_32_cbc_encrypt,.-.L_RC5_32_cbc_encrypt_begin615616.section ".note.gnu.property", "a"617.p2align 2618.long 1f - 0f619.long 4f - 1f620.long 56210:622.asciz "GNU"6231:624.p2align 2625.long 0xc0000002626.long 3f - 2f6272:628.long 36293:630.p2align 26314:632#else633.text634.globl RC5_32_encrypt635.type RC5_32_encrypt,@function636.align 16637RC5_32_encrypt:638.L_RC5_32_encrypt_begin:639#ifdef __CET__640641.byte 243,15,30,251642#endif643644645pushl %ebp646pushl %esi647pushl %edi648movl 16(%esp),%edx649movl 20(%esp),%ebp650651movl (%edx),%edi652movl 4(%edx),%esi653pushl %ebx654movl (%ebp),%ebx655addl 4(%ebp),%edi656addl 8(%ebp),%esi657xorl %esi,%edi658movl 12(%ebp),%eax659movl %esi,%ecx660roll %cl,%edi661addl %eax,%edi662xorl %edi,%esi663movl 16(%ebp),%eax664movl %edi,%ecx665roll %cl,%esi666addl %eax,%esi667xorl %esi,%edi668movl 20(%ebp),%eax669movl %esi,%ecx670roll %cl,%edi671addl %eax,%edi672xorl %edi,%esi673movl 24(%ebp),%eax674movl %edi,%ecx675roll %cl,%esi676addl %eax,%esi677xorl %esi,%edi678movl 28(%ebp),%eax679movl %esi,%ecx680roll %cl,%edi681addl %eax,%edi682xorl %edi,%esi683movl 32(%ebp),%eax684movl %edi,%ecx685roll %cl,%esi686addl %eax,%esi687xorl %esi,%edi688movl 36(%ebp),%eax689movl %esi,%ecx690roll %cl,%edi691addl %eax,%edi692xorl %edi,%esi693movl 40(%ebp),%eax694movl %edi,%ecx695roll %cl,%esi696addl %eax,%esi697xorl %esi,%edi698movl 44(%ebp),%eax699movl %esi,%ecx700roll %cl,%edi701addl %eax,%edi702xorl %edi,%esi703movl 48(%ebp),%eax704movl %edi,%ecx705roll %cl,%esi706addl %eax,%esi707xorl %esi,%edi708movl 52(%ebp),%eax709movl %esi,%ecx710roll %cl,%edi711addl %eax,%edi712xorl %edi,%esi713movl 56(%ebp),%eax714movl %edi,%ecx715roll %cl,%esi716addl %eax,%esi717xorl %esi,%edi718movl 60(%ebp),%eax719movl %esi,%ecx720roll %cl,%edi721addl %eax,%edi722xorl %edi,%esi723movl 64(%ebp),%eax724movl %edi,%ecx725roll %cl,%esi726addl %eax,%esi727xorl %esi,%edi728movl 68(%ebp),%eax729movl %esi,%ecx730roll %cl,%edi731addl %eax,%edi732xorl %edi,%esi733movl 72(%ebp),%eax734movl %edi,%ecx735roll %cl,%esi736addl %eax,%esi737cmpl $8,%ebx738je .L000rc5_exit739xorl %esi,%edi740movl 76(%ebp),%eax741movl %esi,%ecx742roll %cl,%edi743addl %eax,%edi744xorl %edi,%esi745movl 80(%ebp),%eax746movl %edi,%ecx747roll %cl,%esi748addl %eax,%esi749xorl %esi,%edi750movl 84(%ebp),%eax751movl %esi,%ecx752roll %cl,%edi753addl %eax,%edi754xorl %edi,%esi755movl 88(%ebp),%eax756movl %edi,%ecx757roll %cl,%esi758addl %eax,%esi759xorl %esi,%edi760movl 92(%ebp),%eax761movl %esi,%ecx762roll %cl,%edi763addl %eax,%edi764xorl %edi,%esi765movl 96(%ebp),%eax766movl %edi,%ecx767roll %cl,%esi768addl %eax,%esi769xorl %esi,%edi770movl 100(%ebp),%eax771movl %esi,%ecx772roll %cl,%edi773addl %eax,%edi774xorl %edi,%esi775movl 104(%ebp),%eax776movl %edi,%ecx777roll %cl,%esi778addl %eax,%esi779cmpl $12,%ebx780je .L000rc5_exit781xorl %esi,%edi782movl 108(%ebp),%eax783movl %esi,%ecx784roll %cl,%edi785addl %eax,%edi786xorl %edi,%esi787movl 112(%ebp),%eax788movl %edi,%ecx789roll %cl,%esi790addl %eax,%esi791xorl %esi,%edi792movl 116(%ebp),%eax793movl %esi,%ecx794roll %cl,%edi795addl %eax,%edi796xorl %edi,%esi797movl 120(%ebp),%eax798movl %edi,%ecx799roll %cl,%esi800addl %eax,%esi801xorl %esi,%edi802movl 124(%ebp),%eax803movl %esi,%ecx804roll %cl,%edi805addl %eax,%edi806xorl %edi,%esi807movl 128(%ebp),%eax808movl %edi,%ecx809roll %cl,%esi810addl %eax,%esi811xorl %esi,%edi812movl 132(%ebp),%eax813movl %esi,%ecx814roll %cl,%edi815addl %eax,%edi816xorl %edi,%esi817movl 136(%ebp),%eax818movl %edi,%ecx819roll %cl,%esi820addl %eax,%esi821.L000rc5_exit:822movl %edi,(%edx)823movl %esi,4(%edx)824popl %ebx825popl %edi826popl %esi827popl %ebp828ret829.size RC5_32_encrypt,.-.L_RC5_32_encrypt_begin830.globl RC5_32_decrypt831.type RC5_32_decrypt,@function832.align 16833RC5_32_decrypt:834.L_RC5_32_decrypt_begin:835#ifdef __CET__836837.byte 243,15,30,251838#endif839840841pushl %ebp842pushl %esi843pushl %edi844movl 16(%esp),%edx845movl 20(%esp),%ebp846847movl (%edx),%edi848movl 4(%edx),%esi849pushl %ebx850movl (%ebp),%ebx851cmpl $12,%ebx852je .L001rc5_dec_12853cmpl $8,%ebx854je .L002rc5_dec_8855movl 136(%ebp),%eax856subl %eax,%esi857movl %edi,%ecx858rorl %cl,%esi859xorl %edi,%esi860movl 132(%ebp),%eax861subl %eax,%edi862movl %esi,%ecx863rorl %cl,%edi864xorl %esi,%edi865movl 128(%ebp),%eax866subl %eax,%esi867movl %edi,%ecx868rorl %cl,%esi869xorl %edi,%esi870movl 124(%ebp),%eax871subl %eax,%edi872movl %esi,%ecx873rorl %cl,%edi874xorl %esi,%edi875movl 120(%ebp),%eax876subl %eax,%esi877movl %edi,%ecx878rorl %cl,%esi879xorl %edi,%esi880movl 116(%ebp),%eax881subl %eax,%edi882movl %esi,%ecx883rorl %cl,%edi884xorl %esi,%edi885movl 112(%ebp),%eax886subl %eax,%esi887movl %edi,%ecx888rorl %cl,%esi889xorl %edi,%esi890movl 108(%ebp),%eax891subl %eax,%edi892movl %esi,%ecx893rorl %cl,%edi894xorl %esi,%edi895.L001rc5_dec_12:896movl 104(%ebp),%eax897subl %eax,%esi898movl %edi,%ecx899rorl %cl,%esi900xorl %edi,%esi901movl 100(%ebp),%eax902subl %eax,%edi903movl %esi,%ecx904rorl %cl,%edi905xorl %esi,%edi906movl 96(%ebp),%eax907subl %eax,%esi908movl %edi,%ecx909rorl %cl,%esi910xorl %edi,%esi911movl 92(%ebp),%eax912subl %eax,%edi913movl %esi,%ecx914rorl %cl,%edi915xorl %esi,%edi916movl 88(%ebp),%eax917subl %eax,%esi918movl %edi,%ecx919rorl %cl,%esi920xorl %edi,%esi921movl 84(%ebp),%eax922subl %eax,%edi923movl %esi,%ecx924rorl %cl,%edi925xorl %esi,%edi926movl 80(%ebp),%eax927subl %eax,%esi928movl %edi,%ecx929rorl %cl,%esi930xorl %edi,%esi931movl 76(%ebp),%eax932subl %eax,%edi933movl %esi,%ecx934rorl %cl,%edi935xorl %esi,%edi936.L002rc5_dec_8:937movl 72(%ebp),%eax938subl %eax,%esi939movl %edi,%ecx940rorl %cl,%esi941xorl %edi,%esi942movl 68(%ebp),%eax943subl %eax,%edi944movl %esi,%ecx945rorl %cl,%edi946xorl %esi,%edi947movl 64(%ebp),%eax948subl %eax,%esi949movl %edi,%ecx950rorl %cl,%esi951xorl %edi,%esi952movl 60(%ebp),%eax953subl %eax,%edi954movl %esi,%ecx955rorl %cl,%edi956xorl %esi,%edi957movl 56(%ebp),%eax958subl %eax,%esi959movl %edi,%ecx960rorl %cl,%esi961xorl %edi,%esi962movl 52(%ebp),%eax963subl %eax,%edi964movl %esi,%ecx965rorl %cl,%edi966xorl %esi,%edi967movl 48(%ebp),%eax968subl %eax,%esi969movl %edi,%ecx970rorl %cl,%esi971xorl %edi,%esi972movl 44(%ebp),%eax973subl %eax,%edi974movl %esi,%ecx975rorl %cl,%edi976xorl %esi,%edi977movl 40(%ebp),%eax978subl %eax,%esi979movl %edi,%ecx980rorl %cl,%esi981xorl %edi,%esi982movl 36(%ebp),%eax983subl %eax,%edi984movl %esi,%ecx985rorl %cl,%edi986xorl %esi,%edi987movl 32(%ebp),%eax988subl %eax,%esi989movl %edi,%ecx990rorl %cl,%esi991xorl %edi,%esi992movl 28(%ebp),%eax993subl %eax,%edi994movl %esi,%ecx995rorl %cl,%edi996xorl %esi,%edi997movl 24(%ebp),%eax998subl %eax,%esi999movl %edi,%ecx1000rorl %cl,%esi1001xorl %edi,%esi1002movl 20(%ebp),%eax1003subl %eax,%edi1004movl %esi,%ecx1005rorl %cl,%edi1006xorl %esi,%edi1007movl 16(%ebp),%eax1008subl %eax,%esi1009movl %edi,%ecx1010rorl %cl,%esi1011xorl %edi,%esi1012movl 12(%ebp),%eax1013subl %eax,%edi1014movl %esi,%ecx1015rorl %cl,%edi1016xorl %esi,%edi1017subl 8(%ebp),%esi1018subl 4(%ebp),%edi1019.L003rc5_exit:1020movl %edi,(%edx)1021movl %esi,4(%edx)1022popl %ebx1023popl %edi1024popl %esi1025popl %ebp1026ret1027.size RC5_32_decrypt,.-.L_RC5_32_decrypt_begin1028.globl RC5_32_cbc_encrypt1029.type RC5_32_cbc_encrypt,@function1030.align 161031RC5_32_cbc_encrypt:1032.L_RC5_32_cbc_encrypt_begin:1033#ifdef __CET__10341035.byte 243,15,30,2511036#endif103710381039pushl %ebp1040pushl %ebx1041pushl %esi1042pushl %edi1043movl 28(%esp),%ebp10441045movl 36(%esp),%ebx1046movl (%ebx),%esi1047movl 4(%ebx),%edi1048pushl %edi1049pushl %esi1050pushl %edi1051pushl %esi1052movl %esp,%ebx1053movl 36(%esp),%esi1054movl 40(%esp),%edi10551056movl 56(%esp),%ecx10571058movl 48(%esp),%eax1059pushl %eax1060pushl %ebx1061cmpl $0,%ecx1062jz .L004decrypt1063andl $4294967288,%ebp1064movl 8(%esp),%eax1065movl 12(%esp),%ebx1066jz .L005encrypt_finish1067.L006encrypt_loop:1068movl (%esi),%ecx1069movl 4(%esi),%edx1070xorl %ecx,%eax1071xorl %edx,%ebx1072movl %eax,8(%esp)1073movl %ebx,12(%esp)1074call .L_RC5_32_encrypt_begin1075movl 8(%esp),%eax1076movl 12(%esp),%ebx1077movl %eax,(%edi)1078movl %ebx,4(%edi)1079addl $8,%esi1080addl $8,%edi1081subl $8,%ebp1082jnz .L006encrypt_loop1083.L005encrypt_finish:1084movl 52(%esp),%ebp1085andl $7,%ebp1086jz .L007finish1087call .L008PIC_point1088.L008PIC_point:1089popl %edx1090leal .L009cbc_enc_jmp_table-.L008PIC_point(%edx),%ecx1091movl (%ecx,%ebp,4),%ebp1092addl %edx,%ebp1093xorl %ecx,%ecx1094xorl %edx,%edx1095jmp *%ebp1096.L010ej7:1097#ifdef __CET__10981099.byte 243,15,30,2511100#endif11011102movb 6(%esi),%dh1103shll $8,%edx1104.L011ej6:1105#ifdef __CET__11061107.byte 243,15,30,2511108#endif11091110movb 5(%esi),%dh1111.L012ej5:1112#ifdef __CET__11131114.byte 243,15,30,2511115#endif11161117movb 4(%esi),%dl1118.L013ej4:1119#ifdef __CET__11201121.byte 243,15,30,2511122#endif11231124movl (%esi),%ecx1125jmp .L014ejend1126.L015ej3:1127#ifdef __CET__11281129.byte 243,15,30,2511130#endif11311132movb 2(%esi),%ch1133shll $8,%ecx1134.L016ej2:1135#ifdef __CET__11361137.byte 243,15,30,2511138#endif11391140movb 1(%esi),%ch1141.L017ej1:1142#ifdef __CET__11431144.byte 243,15,30,2511145#endif11461147movb (%esi),%cl1148.L014ejend:1149xorl %ecx,%eax1150xorl %edx,%ebx1151movl %eax,8(%esp)1152movl %ebx,12(%esp)1153call .L_RC5_32_encrypt_begin1154movl 8(%esp),%eax1155movl 12(%esp),%ebx1156movl %eax,(%edi)1157movl %ebx,4(%edi)1158jmp .L007finish1159.L004decrypt:1160andl $4294967288,%ebp1161movl 16(%esp),%eax1162movl 20(%esp),%ebx1163jz .L018decrypt_finish1164.L019decrypt_loop:1165movl (%esi),%eax1166movl 4(%esi),%ebx1167movl %eax,8(%esp)1168movl %ebx,12(%esp)1169call .L_RC5_32_decrypt_begin1170movl 8(%esp),%eax1171movl 12(%esp),%ebx1172movl 16(%esp),%ecx1173movl 20(%esp),%edx1174xorl %eax,%ecx1175xorl %ebx,%edx1176movl (%esi),%eax1177movl 4(%esi),%ebx1178movl %ecx,(%edi)1179movl %edx,4(%edi)1180movl %eax,16(%esp)1181movl %ebx,20(%esp)1182addl $8,%esi1183addl $8,%edi1184subl $8,%ebp1185jnz .L019decrypt_loop1186.L018decrypt_finish:1187movl 52(%esp),%ebp1188andl $7,%ebp1189jz .L007finish1190movl (%esi),%eax1191movl 4(%esi),%ebx1192movl %eax,8(%esp)1193movl %ebx,12(%esp)1194call .L_RC5_32_decrypt_begin1195movl 8(%esp),%eax1196movl 12(%esp),%ebx1197movl 16(%esp),%ecx1198movl 20(%esp),%edx1199xorl %eax,%ecx1200xorl %ebx,%edx1201movl (%esi),%eax1202movl 4(%esi),%ebx1203.L020dj7:1204rorl $16,%edx1205movb %dl,6(%edi)1206shrl $16,%edx1207.L021dj6:1208movb %dh,5(%edi)1209.L022dj5:1210movb %dl,4(%edi)1211.L023dj4:1212movl %ecx,(%edi)1213jmp .L024djend1214.L025dj3:1215rorl $16,%ecx1216movb %cl,2(%edi)1217shll $16,%ecx1218.L026dj2:1219movb %ch,1(%esi)1220.L027dj1:1221movb %cl,(%esi)1222.L024djend:1223jmp .L007finish1224.L007finish:1225movl 60(%esp),%ecx1226addl $24,%esp1227movl %eax,(%ecx)1228movl %ebx,4(%ecx)1229popl %edi1230popl %esi1231popl %ebx1232popl %ebp1233ret1234.align 641235.L009cbc_enc_jmp_table:1236.long 01237.long .L017ej1-.L008PIC_point1238.long .L016ej2-.L008PIC_point1239.long .L015ej3-.L008PIC_point1240.long .L013ej4-.L008PIC_point1241.long .L012ej5-.L008PIC_point1242.long .L011ej6-.L008PIC_point1243.long .L010ej7-.L008PIC_point1244.align 641245.size RC5_32_cbc_encrypt,.-.L_RC5_32_cbc_encrypt_begin12461247.section ".note.gnu.property", "a"1248.p2align 21249.long 1f - 0f1250.long 4f - 1f1251.long 512520:1253.asciz "GNU"12541:1255.p2align 21256.long 0xc00000021257.long 3f - 2f12582:1259.long 312603:1261.p2align 212624:1263#endif126412651266