By default, the ASN1C compiler generates the following set of .c source files for a given ASN.1 module (note: the name of the module would be substituted for <moduleName>):
                        <moduleName>.c
                      | 
              common definitions and functions (for example, asn1Free_<type>) and/or global value constant definitions. | 
                        <moduleName>Enc.c
                      | 
              encode functions (asn1E_<type>) | 
                        <moduleName>Dec.c
                      | 
              decode functions (asn1D_<type>) | 
If additional options are used (such as –genPrint, -genCopy, etc), additional files will be generated:
                        <moduleName>Copy.c
                      | 
              copy functions, generated if –genCopy is specified | 
                        <moduleName>Print.c
                      | 
              print functions, generated if –genPrint is specified | 
                        <moduleName>Compare.c
                      | 
              comparison functions, generated if –genCompare is specified | 
                        <moduleName>PrtToStr.c
                      | 
              print-to-string functions, generated if –genPrtToStr is specified | 
                        <moduleName>PrtToStrm.c
                      | 
              print-to-stream functions, generated if –genPrtToStrm is specified | 
                        <moduleName>Table.c
                      | 
              table constraint functions, generated if –genTable option is specified | 
                        <moduleName>Test.c
                      | 
              test functions, generated if –genTest is specified | 
If –genCopy, -genPrint, etc have a filename parameter then the code will be written to the given file instead of the default one. If the –cfile <filename> option is used and –genCopy, -genPrint, etc options do not have parameters then all code will be placed in one source file with name <filename>.