Ваше выборочное редактирование примера кода скрывает тот факт, что в исходном коде есть много логики между вызовами OpenprocessToken и меткой CLEANUP.В обычном случае (когда нет ошибки при получении того или иного токена), CLEANUP, следовательно, требуется, чтобы закрыть открытый дескриптор.
Это грубый метод выполнения try ... finally логика, которая работает, даже если не удается получить дескриптор токена.
Если оба вызова завершатся неудачно, hToken будет сброшен, и вы не будете 'это нужно закрыть.