下面的代码片段是一个内联的 strcpy ,not ecx 为止是计算源字符串的长度(含NULL),00402646 到 00402651 是以4字节为单位复制,最后3行是把剩下的0-3字节复制过去。
.text:00402632 mov edi, offset aSystemrootSyst ; "%SYSTEMROOT%\\system32\\"
.text:00402637 lea edx, [ebp+Src]
.text:0040263D or ecx, 0FFFFFFFFh
.text:00402640 xor eax, eax
.text:00402642 repne scasb
.text:00402644 not ecx ; ecx = 源字符串长度含结尾 NULL
.text:00402646 sub edi, ecx
.text:00402648 mov esi, edi ; 令 esi 指向 aSystemrootSyst
.text:0040264A mov eax, ecx
.text:0040264C mov edi, edx
.text:0040264E shr ecx, 2
.text:00402651 rep movsd ; 先以4字节为单位复制
.text:00402653 mov ecx, eax
.text:00402655 and ecx, 3
.text:00402658 rep movsb ; 复制剩下的 0~3 个字节