I am under the impression that Lazarus is _entirely_ written in Pascal (specifically FPC) but, I wondered if maybe there were one or more object files that were actually the product of C code (or some other language.)
For FPC:
The biggest non pascal factor is makefiles. On some targets, an external assembler and/or linker is used (typically GNU AS and LD or their LLVM equivalents), but on Windows it is typically not. Same for some other tools used in building.
Besides that there is a bunch of assembler, both in performance versions of primitives per architecture(move/indexbyte etc) and startup code. The latter has shrunk over the years however, due to more and more startup code being in Pascal. If the startup code is in assembler, it is typically an external one (like GAS).
In upcoming versions, the resource compiler windres will be replaced by a Pascal equivalent.
For Lazarus:
It uses widget sets (GTK/QT) or win32 GDI. It all depends on where you place the line lazarus to "system".