Fuzz introspector
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Project functions overview

The following table shows data about each function in the project. The functions included in this table correspond to all functions that exist in the executables of the fuzzers. As such, there may be functions that are from third-party libraries.

For further technical details on the meaning of columns in the below table, please see the Glossary .

Func name Functions filename Args Function call depth Reached by Fuzzers Runtime reached by Fuzzers Combined reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Fuzzer details

Fuzzer: list_packed_file_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1018 24.7%
gold [1:9] 8 0.19%
yellow [10:29] 10 0.24%
greenyellow [30:49] 13 0.31%
lawngreen 50+ 3065 74.5%
All colors 4114 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
173 2353 upx_doctest_check(int, char**) call site: 02353 strstr
102 2532 upx_doctest_check(int, char**) call site: 02532 __cxa_guard_acquire
67 3714 upx_main(int, char**) call site: 03714 fwrite
64 3600 do_option(int, char const*) call site: 03600 _ZL9getoptvarIjTnT_Lj4194304ETnS0_Lj1ETnS0_Lj1073741824EEiPN3upx6OptVarIS0_XT0_EXT1_EXT2_EEEPKc
49 2722 show_header() call site: 02722 fprintf
42 3851 OutputFile::OutputFile() call site: 03851 __errno_location
39 3509 PackMaster::visitAllPackers(upx::TriBool (*)(PackerBase*, void*), InputFile*, Options const*, void*) call site: 03509 le32_compare
36 3549 do_option(int, char const*) call site: 03549 fprintf
26 3950 do_one_file(char const*, char*) call site: 03950 strcpy
23 4043 do_files(int, int, char**) call site: 04043 __cxa_begin_catch
22 4009 FileBase::~FileBase() call site: 04009 __clang_call_terminate
21 3986 XSpan::PtrOrSpanOrNull ::PtrOrSpanOrNull(void const*, XSpan::XSpanSizeInBytes) call site: 03986 __errno_location

Runtime coverage analysis

Covered functions
1696
Functions that are reachable but not covered
479
Reachable functions
1710
Percentage of reachable functions covered
71.99%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/upx/fuzzers/list_packed_file_fuzzer.cpp 1
/src/upx/src/util/snprintf.cpp 6
/src/upx/src/except.cpp 15
/src/upx/src/except.h 15
/usr/local/bin/../include/c++/v1/__exception/exception.h 1
/src/upx/src/conf.h 11
/src/upx/src/util/cxxlib.h 17
/src/upx/src/main.cpp 31
/src/upx/src/check/dt_check.cpp 158
/src/upx/src/util/util.cpp 18
/src/upx/src/check/../conf.h 19
/src/upx/src/check/../util/cxxlib.h 61
/src/upx/src/check/../bele.h 111
/src/upx/src/compress/compress.cpp 1
/src/upx/src/compress/compress_ucl.cpp 5
/src/upx/vendor/ucl/src/ucl_util.c 4
/src/upx/vendor/doctest/doctest/parts/doctest.cpp 57
/src/upx/vendor/doctest/doctest/parts/doctest_fwd.h 9
/src/upx/src/options.cpp 1
/src/upx/src/options.h 4
/src/upx/src/compress/compress_bzip2.cpp 1
/src/upx/src/compress/../conf.h 18
/src/upx/src/compress/compress_lzma.cpp 3
/src/upx/src/compress/../util/cxxlib.h 15
/src/upx/src/compress/compress_zlib.cpp 3
/src/upx/src/compress/compress_zstd.cpp 1
/src/upx/src/util/miniacc.h 8
/src/upx/vendor/ucl/src/ucl_init.c 4
/src/upx/vendor/ucl/src/ucl_ptr.c 2
/src/upx/vendor/ucl/src/alloc.c 1
/src/upx/src/check/../util/util.h 1
/src/upx/vendor/zlib/zutil.c 1
/src/upx/src/help.cpp 13
/src/upx/src/packmast.cpp 12
/src/upx/src/p_djgpp2.cpp 1
/src/upx/src/packer.cpp 3
/src/upx/src/file.cpp 17
/src/upx/src/packhead.cpp 2
/src/upx/src/util/util.h 2
/src/upx/src/util/membuffer.h 12
/src/upx/src/ui.cpp 11
/src/upx/src/util/membuffer.cpp 10
/src/upx/src/msg.cpp 8
/src/upx/src/packer.h 4
/src/upx/src/p_tmt.cpp 1
/src/upx/src/p_wcle.h 1
/src/upx/src/lefile.cpp 1
/src/upx/src/p_w64pe_amd64.cpp 1
/src/upx/src/pefile.cpp 3
/src/upx/src/p_w32pe_i386.cpp 1
/src/upx/src/p_wince_arm.cpp 1
/src/upx/src/p_exe.cpp 1
/src/upx/src/p_vmlinx.h 6
/src/upx/src/p_vmlinx.cpp 3
/src/upx/src/p_elf.h 3
/src/upx/src/bele_policy.h 2
/src/upx/src/bele.h 2
/src/upx/src/p_vmlinz.cpp 2
/src/upx/src/p_vmlinz.h 1
/src/upx/src/p_lx_interp.cpp 1
/src/upx/src/p_lx_elf.cpp 43
/src/upx/src/p_lx_elf.h 4
/src/upx/src/p_unix.cpp 2
/src/upx/src/file.h 5
/src/upx/src/util/xspan_impl_ptr_or_span.h 3
/src/upx/src/util/xspan_impl_common.h 16
/src/upx/src/util/xspan.cpp 5
/src/upx/src/util/xspan_impl.h 2
/src/upx/src/compress/../util/membuffer.h 2
/src/upx/src/p_lx_sh.cpp 1
/src/upx/src/p_lx_exc.cpp 2
/src/upx/src/p_unix.h 1
/src/upx/src/p_mach.cpp 10
/src/upx/src/p_mach.h 3
/src/upx/src/p_tos.cpp 1
/src/upx/src/p_ps1.cpp 1
/src/upx/src/p_sys.h 1
/src/upx/src/p_com.h 1
/src/upx/src/packer_c.cpp 1
/src/upx/src/filter.cpp 3
/src/upx/src/work.cpp 6
/src/upx/src/util/xspan_impl_ptr_or_null.h 1

Fuzzer: decompress_packed_file_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 974 23.6%
gold [1:9] 20 0.48%
yellow [10:29] 20 0.48%
greenyellow [30:49] 7 0.17%
lawngreen 50+ 3093 75.1%
All colors 4114 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
173 2353 upx_doctest_check(int, char**) call site: 02353 strstr
102 2532 upx_doctest_check(int, char**) call site: 02532 __cxa_guard_acquire
67 3714 upx_main(int, char**) call site: 03714 fwrite
64 3600 do_option(int, char const*) call site: 03600 _ZL9getoptvarIjTnT_Lj4194304ETnS0_Lj1ETnS0_Lj1073741824EEiPN3upx6OptVarIS0_XT0_EXT1_EXT2_EEEPKc
49 2722 show_header() call site: 02722 fprintf
25 3560 set_output_name(char const*, bool) call site: 03560 fprintf
23 4043 do_files(int, int, char**) call site: 04043 __cxa_begin_catch
21 3950 do_one_file(char const*, char*) call site: 03950 strcpy
19 3531 FilterImpl::getFilter(int) call site: 03531 strcmp
18 3859 do_one_file(char const*, char*) call site: 03859 unlink
16 3509 PackMaster::visitAllPackers(upx::TriBool (*)(PackerBase*, void*), InputFile*, Options const*, void*) call site: 03509 le32_compare
15 4015 (anonymous namespace)::copy_file_attributes((anonymous namespace)::XStat const*, char const*, bool, bool, bool) call site: 04015 __errno_location

Runtime coverage analysis

Covered functions
2113
Functions that are reachable but not covered
436
Reachable functions
1710
Percentage of reachable functions covered
74.5%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/upx/fuzzers/decompress_packed_file_fuzzer.cpp 1
/src/upx/src/util/snprintf.cpp 6
/src/upx/src/except.cpp 15
/src/upx/src/except.h 15
/usr/local/bin/../include/c++/v1/__exception/exception.h 1
/src/upx/src/conf.h 11
/src/upx/src/util/cxxlib.h 17
/src/upx/src/main.cpp 31
/src/upx/src/check/dt_check.cpp 158
/src/upx/src/util/util.cpp 18
/src/upx/src/check/../conf.h 19
/src/upx/src/check/../util/cxxlib.h 61
/src/upx/src/check/../bele.h 111
/src/upx/src/compress/compress.cpp 1
/src/upx/src/compress/compress_ucl.cpp 5
/src/upx/vendor/ucl/src/ucl_util.c 4
/src/upx/vendor/doctest/doctest/parts/doctest.cpp 57
/src/upx/vendor/doctest/doctest/parts/doctest_fwd.h 9
/src/upx/src/options.cpp 1
/src/upx/src/options.h 4
/src/upx/src/compress/compress_bzip2.cpp 1
/src/upx/src/compress/../conf.h 18
/src/upx/src/compress/compress_lzma.cpp 3
/src/upx/src/compress/../util/cxxlib.h 15
/src/upx/src/compress/compress_zlib.cpp 3
/src/upx/src/compress/compress_zstd.cpp 1
/src/upx/src/util/miniacc.h 8
/src/upx/vendor/ucl/src/ucl_init.c 4
/src/upx/vendor/ucl/src/ucl_ptr.c 2
/src/upx/vendor/ucl/src/alloc.c 1
/src/upx/src/check/../util/util.h 1
/src/upx/vendor/zlib/zutil.c 1
/src/upx/src/help.cpp 13
/src/upx/src/packmast.cpp 12
/src/upx/src/p_djgpp2.cpp 1
/src/upx/src/packer.cpp 3
/src/upx/src/file.cpp 17
/src/upx/src/packhead.cpp 2
/src/upx/src/util/util.h 2
/src/upx/src/util/membuffer.h 12
/src/upx/src/ui.cpp 11
/src/upx/src/util/membuffer.cpp 10
/src/upx/src/msg.cpp 8
/src/upx/src/packer.h 4
/src/upx/src/p_tmt.cpp 1
/src/upx/src/p_wcle.h 1
/src/upx/src/lefile.cpp 1
/src/upx/src/p_w64pe_amd64.cpp 1
/src/upx/src/pefile.cpp 3
/src/upx/src/p_w32pe_i386.cpp 1
/src/upx/src/p_wince_arm.cpp 1
/src/upx/src/p_exe.cpp 1
/src/upx/src/p_vmlinx.h 6
/src/upx/src/p_vmlinx.cpp 3
/src/upx/src/p_elf.h 3
/src/upx/src/bele_policy.h 2
/src/upx/src/bele.h 2
/src/upx/src/p_vmlinz.cpp 2
/src/upx/src/p_vmlinz.h 1
/src/upx/src/p_lx_interp.cpp 1
/src/upx/src/p_lx_elf.cpp 43
/src/upx/src/p_lx_elf.h 4
/src/upx/src/p_unix.cpp 2
/src/upx/src/file.h 5
/src/upx/src/util/xspan_impl_ptr_or_span.h 3
/src/upx/src/util/xspan_impl_common.h 16
/src/upx/src/util/xspan.cpp 5
/src/upx/src/util/xspan_impl.h 2
/src/upx/src/compress/../util/membuffer.h 2
/src/upx/src/p_lx_sh.cpp 1
/src/upx/src/p_lx_exc.cpp 2
/src/upx/src/p_unix.h 1
/src/upx/src/p_mach.cpp 10
/src/upx/src/p_mach.h 3
/src/upx/src/p_tos.cpp 1
/src/upx/src/p_ps1.cpp 1
/src/upx/src/p_sys.h 1
/src/upx/src/p_com.h 1
/src/upx/src/packer_c.cpp 1
/src/upx/src/filter.cpp 3
/src/upx/src/work.cpp 6
/src/upx/src/util/xspan_impl_ptr_or_null.h 1

Fuzzer: test_packed_file_fuzzer

Call tree

The calltree shows the control flow of the fuzzer. This is overlaid with coverage information to display how much of the potential code a fuzzer can reach is in fact covered at runtime. In the following there is a link to a detailed calltree visualisation as well as a bitmap showing a high-level view of the calltree. For further information about these topics please see the glossary for full calltree and calltree overview

Call tree overview bitmap:

The distribution of callsites in terms of coloring is
Color Runtime hitcount Callsite count Percentage
red 0 1013 24.6%
gold [1:9] 21 0.51%
yellow [10:29] 19 0.46%
greenyellow [30:49] 7 0.17%
lawngreen 50+ 3054 74.2%
All colors 4114 100

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
173 2353 upx_doctest_check(int, char**) call site: 02353 strstr
102 2532 upx_doctest_check(int, char**) call site: 02532 __cxa_guard_acquire
67 3714 upx_main(int, char**) call site: 03714 fwrite
64 3600 do_option(int, char const*) call site: 03600 _ZL9getoptvarIjTnT_Lj4194304ETnS0_Lj1ETnS0_Lj1073741824EEiPN3upx6OptVarIS0_XT0_EXT1_EXT2_EEEPKc
49 2722 show_header() call site: 02722 fprintf
42 3851 OutputFile::OutputFile() call site: 03851 __errno_location
31 3531 FilterImpl::getFilter(int) call site: 03531 strcmp
26 3950 do_one_file(char const*, char*) call site: 03950 strcpy
23 4043 do_files(int, int, char**) call site: 04043 __cxa_begin_catch
22 3563 do_option(int, char const*) call site: 03563 fprintf
22 4009 FileBase::~FileBase() call site: 04009 __clang_call_terminate
21 3986 XSpan::PtrOrSpanOrNull ::PtrOrSpanOrNull(void const*, XSpan::XSpanSizeInBytes) call site: 03986 __errno_location

Runtime coverage analysis

Covered functions
2058
Functions that are reachable but not covered
469
Reachable functions
1710
Percentage of reachable functions covered
72.57%
NB: The sum of covered functions and functions that are reachable but not covered need not be equal to Reachable functions . This is because the reachability analysis is an approximation and thus at runtime some functions may be covered that are not included in the reachability analysis. This is a limitation of our static analysis capabilities.
Warning: The number of covered functions are larger than the number of reachable functions. This means that there are more functions covered at runtime than are extracted using static analysis. This is likely a result of the static analysis component failing to extract the right call graph or the coverage runtime being compiled with sanitizers in code that the static analysis has not analysed. This can happen if lto/gold is not used in all places that coverage instrumentation is used.
Function name source code lines source lines hit percentage hit

Files reached

filename functions hit
/src/upx/fuzzers/test_packed_file_fuzzer.cpp 1
/src/upx/src/util/snprintf.cpp 6
/src/upx/src/except.cpp 15
/src/upx/src/except.h 15
/usr/local/bin/../include/c++/v1/__exception/exception.h 1
/src/upx/src/conf.h 11
/src/upx/src/util/cxxlib.h 17
/src/upx/src/main.cpp 31
/src/upx/src/check/dt_check.cpp 158
/src/upx/src/util/util.cpp 18
/src/upx/src/check/../conf.h 19
/src/upx/src/check/../util/cxxlib.h 61
/src/upx/src/check/../bele.h 111
/src/upx/src/compress/compress.cpp 1
/src/upx/src/compress/compress_ucl.cpp 5
/src/upx/vendor/ucl/src/ucl_util.c 4
/src/upx/vendor/doctest/doctest/parts/doctest.cpp 57
/src/upx/vendor/doctest/doctest/parts/doctest_fwd.h 9
/src/upx/src/options.cpp 1
/src/upx/src/options.h 4
/src/upx/src/compress/compress_bzip2.cpp 1
/src/upx/src/compress/../conf.h 18
/src/upx/src/compress/compress_lzma.cpp 3
/src/upx/src/compress/../util/cxxlib.h 15
/src/upx/src/compress/compress_zlib.cpp 3
/src/upx/src/compress/compress_zstd.cpp 1
/src/upx/src/util/miniacc.h 8
/src/upx/vendor/ucl/src/ucl_init.c 4
/src/upx/vendor/ucl/src/ucl_ptr.c 2
/src/upx/vendor/ucl/src/alloc.c 1
/src/upx/src/check/../util/util.h 1
/src/upx/vendor/zlib/zutil.c 1
/src/upx/src/help.cpp 13
/src/upx/src/packmast.cpp 12
/src/upx/src/p_djgpp2.cpp 1
/src/upx/src/packer.cpp 3
/src/upx/src/file.cpp 17
/src/upx/src/packhead.cpp 2
/src/upx/src/util/util.h 2
/src/upx/src/util/membuffer.h 12
/src/upx/src/ui.cpp 11
/src/upx/src/util/membuffer.cpp 10
/src/upx/src/msg.cpp 8
/src/upx/src/packer.h 4
/src/upx/src/p_tmt.cpp 1
/src/upx/src/p_wcle.h 1
/src/upx/src/lefile.cpp 1
/src/upx/src/p_w64pe_amd64.cpp 1
/src/upx/src/pefile.cpp 3
/src/upx/src/p_w32pe_i386.cpp 1
/src/upx/src/p_wince_arm.cpp 1
/src/upx/src/p_exe.cpp 1
/src/upx/src/p_vmlinx.h 6
/src/upx/src/p_vmlinx.cpp 3
/src/upx/src/p_elf.h 3
/src/upx/src/bele_policy.h 2
/src/upx/src/bele.h 2
/src/upx/src/p_vmlinz.cpp 2
/src/upx/src/p_vmlinz.h 1
/src/upx/src/p_lx_interp.cpp 1
/src/upx/src/p_lx_elf.cpp 43
/src/upx/src/p_lx_elf.h 4
/src/upx/src/p_unix.cpp 2
/src/upx/src/file.h 5
/src/upx/src/util/xspan_impl_ptr_or_span.h 3
/src/upx/src/util/xspan_impl_common.h 16
/src/upx/src/util/xspan.cpp 5
/src/upx/src/util/xspan_impl.h 2
/src/upx/src/compress/../util/membuffer.h 2
/src/upx/src/p_lx_sh.cpp 1
/src/upx/src/p_lx_exc.cpp 2
/src/upx/src/p_unix.h 1
/src/upx/src/p_mach.cpp 10
/src/upx/src/p_mach.h 3
/src/upx/src/p_tos.cpp 1
/src/upx/src/p_ps1.cpp 1
/src/upx/src/p_sys.h 1
/src/upx/src/p_com.h 1
/src/upx/src/packer_c.cpp 1
/src/upx/src/filter.cpp 3
/src/upx/src/work.cpp 6
/src/upx/src/util/xspan_impl_ptr_or_null.h 1

Analyses and suggestions

Optimal target analysis

Remaining optimal interesting functions

The following table shows a list of functions that are optimal targets. Optimal targets are identified by finding the functions that in combination, yield a high code coverage.

Func name Functions filename Arg count Args Function depth hitcount instr count bb count cyclomatic complexity Reachable functions Incoming references total cyclomatic complexity Unreached complexity
PackWcle::pack(OutputFile*) /src/upx/src/p_wcle.cpp 2 ['N/A', 'N/A'] 19 0 546 76 72 1130 0 3436 2976
PackMachFat::unpack(OutputFile*) /src/upx/src/p_mach.cpp 2 ['N/A', 'N/A'] 20 0 473 95 82 564 0 2681 1179
PeFile64::unpack(OutputFile*) /src/upx/src/pefile.cpp 2 ['N/A', 'N/A'] 20 0 14 3 2 976 0 2604 1062
PackVmlinuzI386::decompressKernel() /src/upx/src/p_vmlinz.cpp 1 ['N/A'] 14 0 873 175 69 278 0 1482 723
PackW32PeI386::pack(OutputFile*) /src/upx/src/p_w32pe_i386.cpp 2 ['N/A', 'N/A'] 21 0 12 3 2 949 0 2606 603
PeFile64::processImports() /src/upx/src/pefile.cpp 1 ['N/A'] 22 0 12 3 2 445 0 890 506
PackMachFat::pack(OutputFile*) /src/upx/src/p_mach.cpp 2 ['N/A', 'N/A'] 19 0 461 88 62 396 0 884 363

Implementing fuzzers that target the above functions will improve reachability such that it becomes:

Functions statically reachable by fuzzers
40.0%
1775 / 4444
Cyclomatic complexity statically reachable by fuzzers
41.0%
11135 / 27449

All functions overview

If you implement fuzzers for these functions, the status of all functions in the project will be:

Func name Functions filename Args Function call depth Reached by Fuzzers Runtime reached by Fuzzers Combined reached by Fuzzers Fuzzers runtime hit Func lines hit % I Count BB Count Cyclomatic complexity Functions reached Reached by functions Accumulated cyclomatic complexity Undiscovered complexity

Fuzz engine guidance

This sections provides heuristics that can be used as input to a fuzz engine when running a given fuzz target. The current focus is on providing input that is usable by libFuzzer.

/src/upx/fuzzers/list_packed_file_fuzzer.cpp

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['upx_doctest_check(int, char**)', 'upx_doctest_check(int, char**)', 'upx_main(int, char**)', 'do_option(int, char const*)', 'show_header()', 'OutputFile::OutputFile()', 'PackMaster::visitAllPackers(upx::TriBool (*)(PackerBase*, void*), InputFile*, Options const*, void*)', 'do_option(int, char const*)', 'do_one_file(char const*, char*)', 'do_files(int, int, char**)']

/src/upx/fuzzers/decompress_packed_file_fuzzer.cpp

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['upx_doctest_check(int, char**)', 'upx_doctest_check(int, char**)', 'upx_main(int, char**)', 'do_option(int, char const*)', 'show_header()', 'set_output_name(char const*, bool)', 'do_files(int, int, char**)', 'do_one_file(char const*, char*)', 'FilterImpl::getFilter(int)', 'do_one_file(char const*, char*)']

/src/upx/fuzzers/test_packed_file_fuzzer.cpp

Dictionary

Use this with the libFuzzer -dict=DICT.file flag


Fuzzer function priority

Use one of these functions as input to libfuzzer with flag: -focus_function name

-focus_function=['upx_doctest_check(int, char**)', 'upx_doctest_check(int, char**)', 'upx_main(int, char**)', 'do_option(int, char const*)', 'show_header()', 'OutputFile::OutputFile()', 'FilterImpl::getFilter(int)', 'do_one_file(char const*, char*)', 'do_files(int, int, char**)', 'do_option(int, char const*)']

Runtime coverage analysis

This section shows analysis of runtime coverage data.

For futher technical details on how this section is generated, please see the Glossary .

Complex functions with low coverage

Func name Function total lines Lines covered at runtime percentage covered Reached by fuzzers
upx_doctest_check(int,char**) 38 20 52.63% ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
main_get_envoptions() 107 54 50.46% ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
upx_main(int,char**) 99 53 53.53% ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
do_option(int,charconst*) 420 41 9.761% ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
PackMachBase >::canUnpack() 283 123 43.46% ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
do_one_file(charconst*,char*) 149 69 46.30% ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
do_files(int,int,char**) 63 34 53.96% ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
PackExe::unpack(OutputFile*) 100 44 44.0% ['decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
PackLinuxElf32::un_DT_INIT(unsignedint,N_Elf32::Phdr >const*,N_Elf32::Phdr >const*,OutputFile*) 164 20 12.19% ['decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
PackLinuxElf64::un_DT_INIT(unsignedint,N_Elf64::Phdr >const*,N_Elf64::Phdr >const*,OutputFile*) 127 20 15.74% ['decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
PackMachBase >::unpack(OutputFile*) 142 63 44.36% ['decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
PackMachBase >::unpack(OutputFile*) 142 63 44.36% ['decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']

Files and Directories in report

This section shows which files and directories are considered in this report. The main reason for showing this is fuzz introspector may include more code in the reasoning than is desired. This section helps identify if too many files/directories are included, e.g. third party code, which may be irrelevant for the threat model. In the event too much is included, fuzz introspector supports a configuration file that can exclude data from the report. See the following link for more information on how to create a config file: link

Files in report

Source file Reached by Covered by
[] []
/src/upx/vendor/ucl/src/ucl_init.c ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] []
/src/upx/src/console/s_djgpp2.cpp [] []
/src/upx/src/console/s_vcsa.cpp [] []
/src/upx/src/compress/../conf.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/filter/getcto.h [] []
/src/upx/src/except.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/console/c_file.cpp [] []
/src/upx/src/p_lx_exc.h [] []
/src/upx/src/p_lx_interp.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/compress/compress_zlib.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/console/c_init.cpp [] []
/src/upx/src/packhead.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/usr/local/bin/../include/c++/v1/istream [] []
/src/upx/src/util/util.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/check/../conf.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/compress/../util/cxxlib.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/zlib/gzread.c [] []
/src/upx/src/util/xspan_impl_span.h [] []
/usr/local/bin/../include/c++/v1/stdexcept [] []
/src/upx/vendor/zlib/inffast.c [] []
/src/upx/src/p_mach.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/check/../util/raw_bytes.h [] []
/src/upx/src/filter/sub32.h [] []
/src/upx/src/util/util.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/compress/compress_ucl.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/check/../util/xspan_impl_ptr_or_null.h [] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_wcle.cpp [] []
/src/upx/vendor/ucl/src/ucl_ptr.c ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] []
/src/upx/src/p_lx_elf.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/fuzzers/list_packed_file_fuzzer.cpp ['list_packed_file_fuzzer'] ['list_packed_file_fuzzer']
/src/upx/src/check/../util/xspan_impl_span.h [] []
/src/upx/src/bele_policy.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_wince_arm.h [] []
/src/upx/src/p_elf_enum.h [] []
/src/upx/src/compress/../util/xspan_fwd.h [] []
/src/upx/vendor/zlib/gzlib.c [] []
/src/upx/src/check/../util/cxxlib.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/util/raw_bytes.h [] []
/src/upx/src/linker.cpp [] []
/src/upx/fuzzers/test_packed_file_fuzzer.cpp ['test_packed_file_fuzzer'] ['test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/LZMAEncoder.cpp [] []
/src/upx/src/util/xspan_impl_ptr_or_span.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/linker.h [] []
/src/upx/src/p_lx_elf.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_w64pe_arm64.h [] []
/src/upx/src/compress/../util/membuffer.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/filter/auipc.h [] []
/src/upx/src/p_lx_exc.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/ui.h [] []
/src/upx/src/util/cxxlib.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/filter/ctojr.h [] []
/src/upx/src/p_sys.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/check/../util/xspan_impl_ptr_or_span.h [] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/usr/local/bin/../include/c++/v1/__exception/exception.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] []
/src/upx/src/p_exe.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_wcle.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/check/../util/xspan_impl.h [] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_djgpp2.h [] []
/src/upx/src/console/s_object.cpp [] []
/src/upx/src/filter/sub8.h [] []
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../LZ/BinTree/BinTreeMain.h [] []
/src/upx/src/util/membuffer.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/LZMA.h [] []
/src/upx/vendor/ucl/src/alloc.c ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] []
/src/upx/src/util/xspan_impl_common.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_vmlinx.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/zlib/gzclose.c [] []
/src/upx/src/p_w64pe_arm64.cpp [] []
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/LZMAEncoder.h [] []
/src/upx/src/p_tos.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../../ICoder.h [] []
/src/upx/src/filter/ppcbxx.h [] []
/src/upx/src/packer.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/check/dt_check.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/filter/ct.h [] []
/src/upx/src/p_lx_sh.h [] []
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../../IStream.h [] []
/src/upx/src/util/../bele.h [] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/util/xspan_fwd.h [] []
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZ/LZInWindow.h [] []
/src/upx/src/p_w64pe_amd64.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_mach.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_tmt.h [] []
/src/upx/src/p_unix.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/zlib/inflate.c [] []
/src/upx/vendor/ucl/src/n2d_d.c [] []
/src/upx/src/util/xspan_impl.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/filter/cto.h [] []
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../../../Common/Defs.h [] []
/src/upx/src/p_unix.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../RangeCoder/RangeCoder.h [] []
/usr/local/bin/../include/c++/v1/__fwd/fstream.h [] []
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../LZ/BinTree/BinTree.h [] []
/src/upx/src/p_lx_interp.h [] []
/src/upx/src/packmast.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/util/xspan_impl_ptr_or_null.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/util/snprintf.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../../../Common/MyWindows.h [] []
/src/upx/vendor/zlib/deflate.c [] []
/src/upx/src/p_w32pe_i386.h [] []
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../LZ/IMatchFinder.h [] []
/src/upx/vendor/ucl/src/n2b_to.c [] []
/src/upx/src/check/../util/xspan_fwd.h [] []
/src/upx/src/p_w32pe_i386.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/check/../util/util.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA_C/LzmaDecode.c [] []
/src/upx/src/p_sys.cpp [] []
/src/upx/src/check/dt_xspan.cpp [] []
/src/upx/vendor/lzma-sdk/C/Common/MyGuidDef.h [] []
/src/upx/src/filter/sw.h [] []
/src/upx/src/compress/compress_bzip2.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_vmlinx.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/pefile.h [] []
/src/upx/vendor/ucl/src/n2b_d.c [] []
/src/upx/src/p_wince_arm.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/filter.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_elf.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/util/membuffer.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../RangeCoder/RangeCoderBitTree.h [] []
/src/upx/src/p_com.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/help.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/ucl/src/n2e_d.c [] []
/src/upx/src/packer_r.cpp [] []
/src/upx/fuzzers/decompress_packed_file_fuzzer.cpp ['decompress_packed_file_fuzzer'] ['decompress_packed_file_fuzzer']
/src/upx/vendor/ucl/src/n2d_to.c [] []
/src/upx/vendor/zlib/zutil.c ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] []
/src/upx/src/p_djgpp2.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/Common/Alloc.cpp [] []
/src/upx/vendor/lzma-sdk/C/7zip/Common/OutBuffer.cpp [] []
/src/upx/src/pefile.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/ui.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/work.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Compress/RangeCoder/RangeCoderBit.cpp [] []
/src/upx/src/file.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/util/../util/xspan_fwd.h [] []
/src/upx/vendor/zlib/inftrees.c [] []
/src/upx/src/file.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/compress/compress_zstd.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZ/LZInWindow.cpp [] []
/src/upx/vendor/ucl/src/ucl_swd.ch [] []
/src/upx/src/console/s_win32.cpp [] []
/src/upx/src/check/../bele.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/ucl/src/n2e_to.c [] []
/src/upx/src/check/dt_impl.cpp [] []
/src/upx/src/filter/filter_impl.cpp [] []
/src/upx/src/packer.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/zlib/gzwrite.c [] []
/src/upx/vendor/zlib/adler32.c [] []
/src/upx/vendor/doctest/doctest/parts/doctest.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/usr/local/bin/../include/c++/v1/string [] []
/src/upx/src/console/c_none.cpp [] []
/src/upx/vendor/ucl/src/ucl_mchw.ch [] []
/src/upx/src/filter/ctok.h [] []
/src/upx/src/lefile.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/msg.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_lx_sh.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/zlib/trees.c [] []
/src/upx/src/options.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Common/StreamUtils.cpp [] []
/src/upx/src/p_ps1.h [] []
/src/upx/src/p_tmt.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/packer_c.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/ucl/src/ucl_util.c ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] []
/src/upx/src/bele.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/doctest/doctest/parts/doctest_fwd.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_vmlinz.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/main.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_vmlinz.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/check/../util/xspan_impl_common.h [] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/check/dt_cxxlib.cpp [] []
/src/upx/src/p_tos.h [] []
/src/upx/src/packer_f.cpp [] []
/src/upx/src/options.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/util/../bele_policy.h [] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/ucl/src/n2_99.ch [] []
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../../../Common/MyCom.h [] []
/src/upx/src/filter/sub16.h [] []
/src/upx/src/util/xspan.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_ps1.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../RangeCoder/../../Common/OutBuffer.h [] []
/src/upx/src/filter/ctoj.h [] []
/src/upx/src/filter/ctsw.h [] []
/src/upx/src/p_w64pe_amd64.h [] []
/src/upx/vendor/zlib/crc32.c [] []
/src/upx/src/filter/../bele.h [] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/conf.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/vendor/lzma-sdk/C/Common/CRC.cpp [] []
/src/upx/src/compress/compress.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/p_exe.h [] []
/src/upx/src/compress/compress_lzma.cpp ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/util/../util/util.h [] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/util/miniacc.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/console/c_screen.cpp [] []
/src/upx/src/except.h ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer'] ['list_packed_file_fuzzer', 'decompress_packed_file_fuzzer', 'test_packed_file_fuzzer']
/src/upx/src/lefile.h [] []
/src/upx/src/p_com.cpp [] []
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../RangeCoder/RangeCoderBit.h [] []

Directories in report

Directory
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZ/
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../LZ/BinTree/
/src/upx/src/filter/
/src/upx/fuzzers/
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../RangeCoder/
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../RangeCoder/../../Common/
/src/upx/src/check/
/src/upx/vendor/lzma-sdk/C/7zip/Compress/RangeCoder/
/src/upx/vendor/lzma-sdk/C/Common/
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../../
/usr/local/bin/../include/c++/v1/
/src/upx/src/util/../
/src/upx/src/console/
/src/upx/vendor/lzma-sdk/C/7zip/Common/
/src/upx/src/filter/../
/src/upx/vendor/doctest/doctest/parts/
/src/upx/vendor/zlib/
/src/upx/src/check/../util/
/src/upx/src/compress/../
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../../../Common/
/src/upx/src/compress/
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/../LZ/
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA/
/src/upx/src/util/
/src/upx/src/compress/../util/
/usr/local/bin/../include/c++/v1/__exception/
/src/upx/src/
/src/upx/vendor/ucl/src/
/src/upx/src/util/../util/
/src/upx/src/check/../
/src/upx/vendor/lzma-sdk/C/7zip/Compress/LZMA_C/
/usr/local/bin/../include/c++/v1/__fwd/