Декомпиляция – одна из сложнейших задач обратной инженерии. В задаче декомпиляции можно выделить подзадачу – восстановление типов данных. Данная статья посвящена методам восстановления высокоуровневых типов данных языка C по низкоуровневому представлению программы на языке ассемблера. В статье подробно описан метод восстановления базовых типов языка C и производных, таких как структуры, массивы, массивы структур и т. д. Также представлено описание реализации предложенных методов в декомпиляторе TуDec, который разрабатывается авторами.