dec ecx affects the sign flag for jl exit
This is a conditional loop (defined between the brackets).
(
dec ecx
jl exit < here
sub byte [edi],48
inc edi
repeat
)
The Finish procedure is not required here. It is used in thinBasic to explicitly invoke the terminate macro. It is only needed when the compiled code is required to be persistent, like a DLL, so that thinBasic can call its procedures. Finish() is like FreeLibrary().
If terminate does not appear in the code then the compiler will automatically add it at the end.
Charles