easIsNot5:
inc esi
cmp esi, Len
jb short Loop1
xor edi, edi
xor ecx, ecx
test Len, Len
jbe short loc_4011C9
loop2:
mov bl, temp2[edi]
mov esi, Len ; Step -1
sub esi, ecx
dec esi
mov al, [Name+esi]
xor bl, al
inc edi
mov [Name+esi], bl
mov temp2[edi-1], al
cmp edi, 5
jnz short ediIsNot5
xor edi, edi
ediIsNot5:
inc ecx
cmp ecx, Len
jb short loop2
loc_4011C9:
xor esi, esi
xor edi, edi
test Len, Len
jbe short loc_4011F2
loop3:
mov al, [Name+edi]
mov cl, temp3[esi]
xor cl, al
inc esi
mov [Name+edi], cl
mov temp3[esi-1], al
cmp esi, 5
jnz short esiIsNot5
xor esi, esi
esiIsNot5:
inc edi
cmp edi, Len
jb short loop3
loc_4011F2:
xor edi, edi
xor ecx, ecx
test Len, Len
jbe short loc_401220
loop4:
mov bl, temp4[edi]
mov esi, Len
sub esi, ecx
dec esi
mov al, [Name+esi]
xor bl, al
inc edi
mov [Name+esi], bl
mov temp4[edi-1], al
cmp edi, 5
jnz short _esiIsNot5
xor edi, edi
_esiIsNot5:
inc ecx
cmp ecx, Len
jb short loop4
loc_401220:
lea edi, longone
xor eax, eax
test Len, Len
mov longone, 0
jbe short loc_40124D
loop6:
mov ecx, eax
and ecx, 3
mov bl, [edi+ecx]
lea esi, [edi+ecx]
mov cl, [Name+eax]
add bl, cl
inc eax
cmp eax, Len
mov [esi], bl
jb short loop6
loc_40124D:
pop Len
mov ecx, 0Ah
mov eax, longone
xor ebx, ebx
loop5:
xor Name, Name
div ecx
add dl, 30h
mov StrTwo[ebx], dl
inc ebx
test eax, eax
jnz short loop5
push offset StrTwo ; lpString
call lstrlenA
xor ebx, ebx