1, 3.1.2
"12:26" "Repne scas" command (ZC: Default is EAX, ECX)
"18:42" "REP MOVS BYTE ptr es:[edi], DWORD ptr Ds:[esi]"
"REP MOVS byte ptr es:[edi], byte ptr Ds:[esi]"
"19:08" REP MOVS ==> performs a copy operation of a string
"19:12" Repne SCAS ==> Search to the end of the string (0 where two exits the loop condition: The value of ECX is 0 or the location where the value is eax is found)
"22:40" Repne SCAS Locate the value in the string Al that the EDI points to, count in ECX (not ECX take the inverse) (the count of ECX will be counted in the same position as AL) (ZC: One of the conditions of the cyclic stop here is to determine if the value of Al is equal to it). Not a comparison with EAX? It seems that the ∵ instruction is written in byte ptr Es:[edi] so it is compared in bytes, if written as "DWORD ptr Es:[edi]" is estimated to be compared in 4 bytes in 32-bit OS)
2.
3.
Yjx_rxjh_ Assembly Instructions