Well, if only size matter...
On the beginning I cut the extra bits defined by bsize, is this correct? If no, the proc can be twice smaller.
On the beginning I cut the extra bits defined by bsize, is this correct? If no, the proc can be twice smaller.
StackBinAscii proc bits, bsize, hWnd,CtlID
local string[36] :BYTE
mov edx, digit
mov ecx, dsize
xor eax, eax
dec eax
shr eax, cl
bswap edx
not eax
and edx, eax
mov cl, 32
mov edi, esp
@@: shr edx, 1
setc al
add al, 30h
stosb
dec cl
jnz @B
xchg eax, ecx
stosb
invoke SetDlgItemText,hWnd,CtlID, esp
ret
StackBinAscii endp
you can save one byte
with this code
bye
eko
with this code
.
.
.
shr dword ptr [esp+4+33],1
mov byte ptr [esp+ecx],18h
rcl byte ptr [esp+ecx],1
.
.
.
bye
eko