We were given video file bbb.ogg  where were hexadecimal numbers burned into first minute of the video. After last number there were also md5 checksum which clearly indicated you must use numbers together.
Each number was displayed every second and lasts there half of it(15fms). I decided to convert video to individual frames so I used 
` ffmpeg -i bbb.ogg -vf fps=1  frm%04d.jpg`
What grabs each 30th frame (video had 30fps)
Unfortunately it gaved me error during conversion so I've used other tool to finish that. Once I had those images I manualy rewrite numbers to computer. It was 60 hex bytes in total.
When I disassembled this code I get this:   ``` xor    rsi,rsipush   rsimov rdi,0x67676f2e626262 #bbb.oggpush   rdimov    rdi,rspmov    al,0x2syscallmov    r8,raxxor    rdi,rdimov    edx,0x5mov    esi,0x74656579 #yeetxor    r9,r9mov    r10b,0x2mov    al,0x9syscallloop:inc    raxmov    ebx,DWORD  [rax+0x2]cmp    ebx,esijne    loopcall   rax ```
To be able to continue I compiled above code to binary. It was clear it uses source video again.  
So I run proggie again with bbb.ogg file in same directory and then I got this prompt
`Please enter the 16 byte password (not the flag u dummy)`
After further examination I've found it reads the file, looks for string "yeet" and then jumps to another part of program hidden inside this video.
Unfortunately program itselfs doesn't check password correctness so it won't be that easy to find it right away. 
I need to see what second part does so I've diassembled it
```jmp     short loc_7FC4D1E9F77E; ---------------------------------------------------------------------------db  79h ; ydb  65h ; edb  65h ; edb  74h ; t; ---------------------------------------------------------------------------
loc_7FC4D1E9F77E:                       ; CODE XREF: bbb.ogg:00007FC4D1E9F778↑jlea     rax, unk_7FC4D1E9F8C5**mov     rdi, 796C6C6962706972h  #ripbilly**dec     rax
loc_7FC4D1E9F792:                       ; CODE XREF: bbb.ogg:00007FC4D1E9F79B↓jinc     raxmov     rbx, [rax]cmp     rbx, rdijnz     short loc_7FC4D1E9F792add     rax, 8push    raxmov     eax, 1mov     edi, 0lea     rsi, aPleaseEnterThe            ; "Please enter the 16 byte password (not "...mov     edx, 38hsyscall                                 ; LINUX - sys_writesub     rsp, 10hmov     eax, 0mov     edi, 1mov     rsi, rspmov     edx, 10hsyscall                                 ; LINUX - sys_readmov     rbp, rspsub     rsp, 8mov     eax, 16hmov     rdi, rspsyscall                                 ; LINUX - sys_pipemov     eax, 39hsyscall                                 ; LINUX - sys_forktest    rax, raxjnz     short loc_7FC4D1E9F846mov     eax, 21hmov     edi, 0mov     edi, [rsp]mov     esi, 0syscall                                 ; LINUX - sys_dup2mov     rdi, 'b/=LLEHS'mov     rax, rsp
loc_7FC4D1E9F810:                       ; CODE XREF: bbb.ogg:00007FC4D1E9F819↓jinc     raxmov     rbx, [rax]cmp     rbx, rdijnz     short loc_7FC4D1E9F810mov     rdx, rsp
loc_7FC4D1E9F81E:                       ; CODE XREF: bbb.ogg:00007FC4D1E9F827↓jinc     rdxmov     rbx, [rdx]cmp     rbx, raxjnz     short loc_7FC4D1E9F81Emov     eax, 3Bh****push    rdxlea     rdi, aPleaseEnterThe+38h        ; "/usr/bin/mpv"push    0lea     rsi, unk_7FC4D1E9F8C3push    rsipush    rdimov     rsi, rspsyscall                                 ; LINUX - sys_execve
loc_7FC4D1E9F846:                       ; CODE XREF: bbb.ogg:00007FC4D1E9F7ED↑jmov     edi, 0mov     edi, [rsp+4]add     rsp, 8pop     r15pop     r14mov     r12, [rsp]mov     rsi, rspmov     rsi, [rsp]xchg    rsp, rsi
loc_7FC4D1E9F865:                       ; CODE XREF: bbb.ogg:00007FC4D1E9F87C↓jpop     r13xor     r13, r15mov     [rsi], r13xchg    r15, r14mov     edx, 8mov     eax, 1syscall                                 ; LINUX - sys_writejmp     short loc_7FC4D1E9F865```
Two things attracted my attention.
mov     rdi, 796C6C6962706972h  #ripbilly
and   "/usr/bin/mpv"
Because word "ripbilly" isnt 16 bytes long it can not be right password. I searched it in file and found it here
```00007FC4D23A4760  27 0D 79 1D 33 CE A5 C2  C1 5C 24 44 72 69 70 62  '.y.3Υ ..\$Dripb  <--- ripbilly00007FC4D23A4770  69 6C 6C 79 6A 24 BB C7  68 6E 67 62 72 65 61 74  illyj$...ngbreat  00007FC4D23A4780  31 FE EE 73 32 96 E5 65  2B 9C E6 66 30 96 E0 63  1...............00007FC4D23A4790  31 FA EB 05 15 03 09 26  EE EF 63 20 F7 E4 63 73  1......&... ....00007FC4D23A47A0  20 F8 08 73 70 61 64 64  4D F1 B6 73 3F FE 15 2B   ..spaddM......+00007FC4D23A47B0  4F 35 D4 F9 23 CA E0 71  20 C7 01 31 DE E4 84 26  O5..#..q ..1...&00007FC4D23A47C0  C8 F4 3C D9 F4 77 30 CA  02 3D CB E0 73 46 2C D0  ..<..w0..=..sF,.00007FC4D23A47D0  FF 2B C4 F6 62 35 A7 03  3A C2 E5 63 AB 28 DA E6  .+..b5..:..c.(..00007FC4D23A47E0  20 D3 EB 6E 23 DA 0F 37  C5 ED 43 FC B6 89 60 6B   ..n#..7..C...`k00007FC4D23A47F0  73 78 6F 72 70 FB 64 64  69 6E 67 62 72 65 61 6B  sxorp.ddingbreak00007FC4D23A4800  73 78 6F 72 70 61 64 64  69 6E 67 62 72 65 61 6B  sxorpaddingbreak```
Instantly I saw another interesting string **sxorpaddingbreak **. As it's name says it is xor string used for encryption and because it has 16bytes it was used also as our password
It must be spelled like paddingbreaksxor
Next I googled for mpv which appeared to be Open source media player[ https://mpv.io/] so I've installed it.
On next run another video was played which includes our flag inside of it. 
**The flag is WPI{Shoutout2Simpleflips}**
I must say I enjoyed this challenge very much!