// File: /workspace/github_cpp_makefile_star2_O3/FreeSlave[P]vhlt/hlcsg/qcsg.cpp
// Function: Usage()
static void     Usage()
{
    Banner(); // TODO: Call banner from main CSG process? 

    Log("\n-= %s Options =-\n\n", g_Program);
#ifdef ZHLT_CONSOLE
	Log("    -console #       : Set to 0 to turn off the pop-up console (default is 1)\n");
#endif
#ifdef ZHLT_LANGFILE
	Log("    -lang file       : localization file\n");
#endif
    Log("    -nowadtextures   : include all used textures into bsp\n");
    Log("    -wadinclude file : place textures used from wad specified into bsp\n");
    Log("    -noclip          : don't create clipping hull\n");
    
#ifdef HLCSG_CLIPECONOMY    // AJM
#ifdef HLCSG_CUSTOMHULL // default clip economy off
    Log("    -clipeconomy     : turn clipnode economy mode on\n");
#else
    Log("    -noclipeconomy   : turn clipnode economy mode off\n");
#endif
#endif

#ifdef HLCSG_PRECISIONCLIP // KGP
	Log("    -cliptype value  : set to smallest, normalized, simple, precise, or legacy (default)\n");
#endif
#ifdef HLCSG_NULLIFY_INVISIBLE // KGP
	Log("    -nullfile file   : specify list of entities to retexture with NULL\n");
#endif

    Log("    -onlyents        : do an entity update from .map to .bsp\n");
    Log("    -noskyclip       : disable automatic clipping of SKY brushes\n");
    Log("    -tiny #          : minmum brush face surface area before it is discarded\n");
    Log("    -brushunion #    : threshold to warn about overlapping brushes\n\n");
    Log("    -hullfile file   : Reads in custom collision hull dimensions\n");
#ifdef HLCSG_WADCFG_NEW
	Log("    -wadcfgfile file : wad configuration file\n");
	Log("    -wadconfig name  : use the old wad configuration approach (select a group from wad.cfg)\n");
#endif
    Log("    -texdata #       : Alter maximum texture memory limit (in kb)\n");
    Log("    -lightdata #     : Alter maximum lighting memory limit (in kb)\n");
    Log("    -chart           : display bsp statitics\n");
    Log("    -low | -high     : run program an altered priority level\n");
    Log("    -nolog           : don't generate the compile logfiles\n");
#ifdef HLCSG_KEEPLOG
	Log("    -noresetlog      : Do not delete log file\n");
#endif
    Log("    -threads #       : manually specify the number of threads to run\n");
#ifdef SYSTEM_WIN32
    Log("    -estimate        : display estimated time during compile\n");
#endif
#ifdef ZHLT_PROGRESSFILE // AJM
    Log("    -progressfile path  : specify the path to a file for progress estimate output\n");
#endif
#ifdef SYSTEM_POSIX
    Log("    -noestimate      : do not display continuous compile time estimates\n");
#endif
    Log("    -verbose         : compile with verbose messages\n");
    Log("    -noinfo          : Do not show tool configuration information\n");

#ifdef ZHLT_NULLTEX // AJM
    Log("    -nonulltex       : Turns off null texture stripping\n");
#endif
#ifdef HLCSG_NULLIFYAAATRIGGER
	Log("    -nonullifytrigger: don't remove 'aaatrigger' texture\n");
#endif

#ifdef ZHLT_DETAIL // AJM
    Log("    -nodetail        : dont handle detail brushes\n");
#endif

#ifdef HLCSG_OPTIMIZELIGHTENTITY
	Log("    -nolightopt      : don't optimize engine light entities\n");
#endif

#ifdef HLCSG_GAMETEXTMESSAGE_UTF8
	Log("    -notextconvert   : don't convert game_text message from Windows ANSI to UTF8 format\n");
#endif

    Log("    -dev #           : compile with developer message\n\n");

#ifndef HLCSG_WADCFG_NEW
#ifdef HLCSG_WADCFG // AJM
    Log("    -wadconfig name  : Specify a configuration to use from wad.cfg\n");
    Log("    -wadcfgfile path : Manually specify a path to the wad.cfg file\n"); //JK:
#endif
#endif

#ifdef HLCSG_AUTOWAD // AJM:
    Log("    -wadautodetect   : Force auto-detection of wadfiles\n");
#endif

#ifdef HLCSG_SCALESIZE
	Log("    -scale #         : Scale the world. Use at your own risk.\n");
#endif
    Log("    mapfile          : The mapfile to compile\n\n");

    exit(1);
}

// Assembly:
pushq %rax
callq 0xa732
leaq 0x1040f(%rip), %rax     # 0x28340
movq (%rax), %rsi
leaq 0x8e39(%rip), %rdi      # 0x20d74
xorl %eax, %eax
callq 0x9e76
leaq 0x8e3f(%rip), %rdi      # 0x20d88
xorl %eax, %eax
callq 0x9e76
leaq 0x8e80(%rip), %rdi      # 0x20dd7
xorl %eax, %eax
callq 0x9e76
leaq 0x8e9c(%rip), %rdi      # 0x20e01
xorl %eax, %eax
callq 0x9e76
leaq 0x8ec9(%rip), %rdi      # 0x20e3c
xorl %eax, %eax
callq 0x9e76
leaq 0x8f03(%rip), %rdi      # 0x20e84
xorl %eax, %eax
callq 0x9e76
leaq 0x8f28(%rip), %rdi      # 0x20eb7
xorl %eax, %eax
callq 0x9e76
leaq 0x8f50(%rip), %rdi      # 0x20eed
xorl %eax, %eax
callq 0x9e76
leaq 0x8f9c(%rip), %rdi      # 0x20f47
xorl %eax, %eax
callq 0x9e76
leaq 0x8fd6(%rip), %rdi      # 0x20f8f
xorl %eax, %eax
callq 0x9e76
leaq 0x9006(%rip), %rdi      # 0x20fcd
xorl %eax, %eax
callq 0x9e76
leaq 0x903a(%rip), %rdi      # 0x2100f
xorl %eax, %eax
callq 0x9e76
leaq 0x907a(%rip), %rdi      # 0x2105d
xorl %eax, %eax
callq 0x9e76
leaq 0x90b1(%rip), %rdi      # 0x210a2
xorl %eax, %eax
callq 0x9e76
leaq 0x90e5(%rip), %rdi      # 0x210e4
xorl %eax, %eax
callq 0x9e76
leaq 0x9106(%rip), %rdi      # 0x21113
xorl %eax, %eax
callq 0x9e76
leaq 0x9155(%rip), %rdi      # 0x21170
xorl %eax, %eax
callq 0x9e76
leaq 0x918a(%rip), %rdi      # 0x211b3
xorl %eax, %eax
callq 0x9e76
leaq 0x91c0(%rip), %rdi      # 0x211f7
xorl %eax, %eax
callq 0x9e76
leaq 0x91e0(%rip), %rdi      # 0x21225
xorl %eax, %eax
callq 0x9e76
leaq 0x9210(%rip), %rdi      # 0x21263
xorl %eax, %eax
callq 0x9e76
leaq 0x923e(%rip), %rdi      # 0x2129f
xorl %eax, %eax
callq 0x9e76
leaq 0x925f(%rip), %rdi      # 0x212ce
xorl %eax, %eax
callq 0x9e76
leaq 0x9297(%rip), %rdi      # 0x21314
xorl %eax, %eax
callq 0x9e76
leaq 0x92d2(%rip), %rdi      # 0x2135d
xorl %eax, %eax
callq 0x9e76
leaq 0x92fa(%rip), %rdi      # 0x21393
xorl %eax, %eax
callq 0x9e76
leaq 0x932f(%rip), %rdi      # 0x213d6
xorl %eax, %eax
callq 0x9e76
leaq 0x935a(%rip), %rdi      # 0x2140f
xorl %eax, %eax
callq 0x9e76
leaq 0x9386(%rip), %rdi      # 0x21449
xorl %eax, %eax
callq 0x9e76
leaq 0x93b5(%rip), %rdi      # 0x21486
xorl %eax, %eax
callq 0x9e76
leaq 0x93df(%rip), %rdi      # 0x214be
xorl %eax, %eax
callq 0x9e76
leaq 0x940a(%rip), %rdi      # 0x214f7
xorl %eax, %eax
callq 0x9e76
leaq 0x943b(%rip), %rdi      # 0x21536
xorl %eax, %eax
callq 0x9e76
movl $0x1, %edi
callq 0x43a0