fbsamples / fbctf-2019-challenges
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 150 files with 16,362 lines of code.
    • 2 very long files (2,447 lines of code)
    • 6 long files (3,326 lines of code)
    • 11 medium size files (2,916 lines of codeclsfd_ftr_w_mp_ins)
    • 25 small files (3,467 lines of code)
    • 106 very small files (4,206 lines of code)
14% | 20% | 17% | 21% | 25%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
h83% | 0% | 0% | 0% | 16%
go52% | 0% | 19% | 9% | 18%
c0% | 54% | 22% | 7% | 14%
asm0% | 50% | 16% | 33% | 0%
cpp0% | 58% | 0% | 28% | 13%
py0% | 0% | 23% | 40% | 36%
cc0% | 0% | 61% | 38% | 0%
rs0% | 0% | 0% | 100% | 0%
html0% | 0% | 0% | 0% | 100%
php0% | 0% | 0% | 0% | 100%
ex0% | 0% | 0% | 0% | 100%
thrift0% | 0% | 0% | 0% | 100%
toml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
misc/osquery_game72% | 27% | 0% | 0% | 0%
misc/homework_assignment_133769% | 0% | 0% | 11% | 18%
pwnables/asciishop0% | 75% | 0% | 21% | 3%
reversing/SOMBRERO_ROJO0% | 53% | 23% | 9% | 14%
reversing/matryoshka0% | 32% | 39% | 27% | 0%
crypto/storagespace0% | 0% | 67% | 32% | 0%
misc/j0hnny_50% | 0% | 84% | 0% | 15%
pwnables/kpets0% | 0% | 53% | 0% | 46%
pwnables/raddest_db0% | 0% | 36% | 43% | 20%
crypto/frank0% | 0% | 28% | 15% | 56%
reversing/nomoreseacrypts0% | 0% | 35% | 18% | 45%
web/secret_note_keeper0% | 0% | 0% | 40% | 59%
crypto/postquantumsig0% | 0% | 0% | 71% | 28%
crypto/netscream0% | 0% | 0% | 53% | 46%
crypto/keybaseish0% | 0% | 0% | 28% | 71%
pwnables/rusty_shop0% | 0% | 0% | 79% | 20%
pwnables/babylist0% | 0% | 0% | 63% | 36%
web/events0% | 0% | 0% | 50% | 49%
misc/whysapp0% | 0% | 0% | 74% | 25%
pwnables/otp_server0% | 0% | 0% | 0% | 100%
web/products-manager0% | 0% | 0% | 0% | 100%
pwnables/overfloat0% | 0% | 0% | 0% | 100%
pwnables/rank0% | 0% | 0% | 0% | 100%
web/pdfme0% | 0% | 0% | 0% | 100%
misc/evil0% | 0% | 0% | 0% | 100%
reversing/go_get_the_flag0% | 0% | 0% | 0% | 100%
web/rceservice0% | 0% | 0% | 0% | 100%
misc/regexicide0% | 0% | 0% | 0% | 100%
reversing/imageprot0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
emoji.h
in misc/osquery_game
1339 1
ping.go
in misc/homework_assignment_1337/src/gen-go/ping
1108 89
rc4block.c
in reversing/SOMBRERO_ROJO/crypto
673 8
pxor.asm
in reversing/matryoshka/src/original_asm
632 -
asciishop_clean.c
in pwnables/asciishop
507 25
challenge.cpp
in misc/osquery_game
506 21
asciishop.c
in pwnables/asciishop
504 24
asciishop_dirty.c
in pwnables/asciishop
504 24
server.go
in misc/j0hnny_5
417 13
challenge.py
in crypto/storagespace/src
402 25
generate.py
in reversing/matryoshka
336 17
main.c
in reversing/SOMBRERO_ROJO/ctf_main
292 6
kpets.c
in pwnables/kpets/src
216 9
cc
raddest_db.cc
in pwnables/raddest_db
212 8
collide.py
in crypto/frank/solution
210 26
test.py
in crypto/storagespace
209 15
gen_downloader.c
in reversing/matryoshka/src
208 4
prc4.asm
in reversing/matryoshka/src/original_asm
208 -
aes.c
in reversing/nomoreseacrypts/src
206 11
solve.c
in crypto/netscream/solution
198 6
ping_bot-remote.go
in misc/homework_assignment_1337/src/gen-go/ping/ping_bot-remote
191 4
dsks.py
in crypto/keybaseish
177 8
solve.py
in crypto/storagespace
174 10
gen_rc4.asm
in reversing/matryoshka/src
161 -
main.py
in web/secret_note_keeper/web/app/app
159 13
main.rs
in pwnables/rusty_shop/rusty_shop/src
155 12
remote.py
in pwnables/asciishop
150 14
exploit.py
in pwnables/asciishop
150 14
babylist.cpp
in pwnables/babylist
138 11
cc
raddest_db_database.cc
in pwnables/raddest_db
132 14
fuzz.py
in pwnables/asciishop
130 14
gen_rot13.asm
in reversing/matryoshka/src
129 -
app.py
in web/events/app
128 9
rot13.asm
in reversing/matryoshka/src/original_asm
128 -
server.py
in misc/whysapp
126 8
gen_curves.py
in crypto/storagespace/src
125 6
exploit.py
in pwnables/raddest_db
122 14
solution_verifier.py
in crypto/postquantumsig/src
121 14
sha256.c
in reversing/SOMBRERO_ROJO/crypto
120 4
admin_bot.py
in web/secret_note_keeper/adminbot/bot
116 9
solve.py
in reversing/matryoshka
116 10
client.py
in crypto/frank/src
110 18
main.cpp
in reversing/nomoreseacrypts/src
108 1
generate.py
in crypto/postquantumsig
103 18
exploit.py
in pwnables/otp_server
99 9
r4nk.c
in pwnables/rank/src
99 8
otp_server.c
in pwnables/otp_server
97 11
crypto.py
in crypto/frank/src
92 11
server.py
in crypto/frank/src
91 14
exploit2.py
in pwnables/otp_server
90 9
Files With Most Units (Top 20)
File# lines# units
ping.go
in misc/homework_assignment_1337/src/gen-go/ping
1108 89
collide.py
in crypto/frank/solution
210 26
challenge.py
in crypto/storagespace/src
402 25
asciishop_clean.c
in pwnables/asciishop
507 25
asciishop.c
in pwnables/asciishop
504 24
asciishop_dirty.c
in pwnables/asciishop
504 24
challenge.cpp
in misc/osquery_game
506 21
generate.py
in crypto/postquantumsig
103 18
client.py
in crypto/frank/src
110 18
generate.py
in reversing/matryoshka
336 17
test.py
in crypto/storagespace
209 15
solution_verifier.py
in crypto/postquantumsig/src
121 14
server.py
in crypto/frank/src
91 14
remote.py
in pwnables/asciishop
150 14
fuzz.py
in pwnables/asciishop
130 14
exploit.py
in pwnables/asciishop
150 14
cc
raddest_db_database.cc
in pwnables/raddest_db
132 14
exploit.py
in pwnables/raddest_db
122 14
server.go
in misc/j0hnny_5
417 13
solved.py
in crypto/postquantumsig
89 13
Files With Long Lines (Top 20)

There are 37 files with lines longer than 120 characters. In total, there are 121 long lines.

File# lines# units# long lines
server.go
in misc/j0hnny_5
417 13 11
report_bugs.html
in web/secret_note_keeper/web/app/app/templates
86 - 9
index.html
in web/events/app/templates
86 - 8
main.c
in reversing/SOMBRERO_ROJO/ctf_main
292 6 8
challenge.cpp
in misc/osquery_game
506 21 7
search.html
in web/secret_note_keeper/web/app/app/templates
61 - 6
index.html
in web/secret_note_keeper/web/app/app/templates
59 - 5
notes.html
in web/secret_note_keeper/web/app/app/templates
82 - 5
index.html
in web/pdfme/app/templates
47 - 5
admin.html
in web/pdfme/app/templates
38 - 5
admin.html
in web/events/app/templates
38 - 5
rc4block.c
in reversing/SOMBRERO_ROJO/crypto
673 8 5
server.py
in misc/whysapp
126 8 4
ping.go
in misc/homework_assignment_1337/src/gen-go/ping
1108 89 4
note.html
in web/secret_note_keeper/web/app/app/templates
22 - 4
gen_rc4.asm
in reversing/matryoshka/src
161 - 3
main.py
in web/secret_note_keeper/web/app/app
159 13 2
gen_rot13.asm
in reversing/matryoshka/src
129 - 2
rc4block.h
in reversing/SOMBRERO_ROJO/crypto
30 - 2
asciishop.c
in pwnables/asciishop
504 24 2