Forums before death by AOL, social media and spammers... "We can't have nice things"
|    comp.lang.asm.x86    |    Ahh, the lost art of x86 assembly    |    4,675 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 2,817 of 4,675    |
|    wolfgang kern to Kerr Mudd-John    |
|    Re: BASE64 again    |
|    15 Jul 17 17:15:22    |
      From: nowhere@never.at              Kerr Mudd-John wrote:       ...       >> unfortunately it wont work with cmp al,0 (it could be an "A")       > Drat!       ...       > aren't you missing:       > 75 01 jnz nosave       > AA stosb       > nosave:              yes, but only in this text here, AA01 paires well.              here we go:       I could have reached my estimated 206 byte, but can't pair all without       having 0x22 in there, so thanks to your short b64 decoder we are down       to 180+29=209 bytes for now (tested).              YQQj/hbxXP5byPQQ4~PjQaSW-s^1GXSs!$<$u]%> 98,E0D3,08,80,06e1,ac,d5EB seem to fit well, so even only three pairs       >> we have only seven modify points in this part yet. That's good!       >> I could pair E180 with a two bytes addon SUB and perhaps also D398       >> and AC06 anyway, so with 2 bytes more in the modifier chain it may       >> become: d398,08e0,e180,ac06,d5eb (five instead of seven = -6 byte).              Sorry not all pairs are possible without more additional bytes, even       06e1 wont pair so there are now eight (16 in total) to modify.              >> I think it's now time to go for it :)              > An alternative (I don't know if it's better or worse for your fixups)       > 2C 06 sub al,06       > 98 cbw       > 41 inc cx       > 41 inc cx       > D3 E0 shl ax,cl       > 08 25 or [di],ah       > 47 inc di       > 83 E1 06 and cx,0006       > 88 05 mov [di],al       > 75 01 jnz 0137       > 4F dec di       > AC lodsb       > EB d5 jmp top+2       >       > 9806 e0d3 08 e183 8806 05 01 AC D5EB       > 9 maybe not.              easy to check: 9806+7862=1068 so not pairable by sub. Only values between       a9xx..05xx and xxbf..xx1c will be pairable with my current DX=7862 subs.       So I use the coincidental given AH=A1 to cover 80..a8 singles.       __       wolfgang              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca