Function at 0x4557e2
Capabilities:
Parse pe header

Disassembly:
push 0x194
mov eax, 0x5adc09
call fcn.0057798c
mov ebx, ecx
mov dword [ebp - 0x58], ebx
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d0e8
call fcn.00454197
and dword [ebp - 4], 0
sub esp, 0x18
mov ecx, esp
push str.ytdlp_path
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or edi, 0xffffffff
mov ecx, eax
mov dword [ebp - 4], edi
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d118
call fcn.00454197
sub esp, 0x18
mov dword [ebp - 4], 1
mov ecx, esp
push str.outpath
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov dword [ebp - 4], edi
call fcn.00440464
cmp dword [0x65d18c], 8
lea ecx, [ebp - 0x70]
push dword [0x65d188]
mov esi, dword [ebx]
mov eax, 0x65d178
cmovae eax, dword [0x65d178]
push eax
call fcn.004c43c0
push ecx
push ecx
mov dword [ebp - 4], 2
mov ecx, esp
mov dword [ebp - 0x4c], esp
push eax
call fcn.004541f5
sub esp, 0x18
mov byte [ebp - 4], 3
mov ecx, esp
push str.fmt1
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov byte [ebp - 4], 2
call fcn.00440464
lea ecx, [ebp - 0x70]
mov dword [ebp - 4], edi
call fcn.0040388d
cmp dword [0x65d1a4], 8
lea ecx, [ebp - 0x70]
push dword [0x65d1a0]
mov esi, dword [ebx]
mov eax, 0x65d190
cmovae eax, dword [0x65d190]
push eax
call fcn.004c43c0
push ecx
push ecx
mov dword [ebp - 4], 4
mov ecx, esp
mov dword [ebp - 0x4c], esp
push eax
call fcn.004541f5
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
push str.fmt2
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.00440464
lea ecx, [ebp - 0x70]
call fcn.0040388d
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d260
call fcn.004489e6
sub esp, 0x18
mov dword [ebp - 4], 6
mov ecx, esp
push str.ratelim
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d270
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 7
mov ecx, esp
push str.ratelim_unit
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2a8
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 8
mov ecx, esp
push str.cbsplit
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2a9
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 9
mov ecx, esp
push str.cbchaps
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2aa
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0xa
mov ecx, esp
push str.cbsubs
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2ab
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0xb
mov ecx, esp
push str.cbthumb
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2ac
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0xc
mov ecx, esp
push str.cbtime
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2ad
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0xd
mov ecx, esp
push str.cbkeyframes
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2ae
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0xe
mov ecx, esp
push str.cbmp3
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d274
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 0xf
mov ecx, esp
push str.pref_res
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d278
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 0x10
mov ecx, esp
push str.pref_video
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d27c
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 0x11
mov ecx, esp
push str.pref_audio
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2b1
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x12
mov ecx, esp
push str.pref_fps
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d280
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 0x13
mov ecx, esp
push str.cbtheme
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d268
call fcn.004489e6
sub esp, 0x18
mov dword [ebp - 4], 0x14
mov ecx, esp
push str.contrast
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2af
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x15
mov ecx, esp
push str.cbargs
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2b0
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x16
mov ecx, esp
push str.kwhilite
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
mov dword [ebp - 0x54], ecx
xor eax, eax
mov edi, ecx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov byte [ecx], al
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], eax
mov edx, 0x65d220
mov dword [ebp - 4], 0x17
call fcn.00455891
sub esp, 0x18
mov dword [ebp - 4], 0x18
mov ecx, esp
push str.argsets
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
cmp dword [0x65d1bc], 8
lea ecx, [ebp - 0x70]
push dword [0x65d1b8]
mov esi, dword [ebx]
mov eax, 0x65d1a8
cmovae eax, dword [0x65d1a8]
push eax
call fcn.004c43c0
push ecx
push ecx
mov dword [ebp - 4], 0x19
mov ecx, esp
mov dword [ebp - 0x4c], esp
push eax
call fcn.004541f5
sub esp, 0x18
mov byte [ebp - 4], 0x1a
mov ecx, esp
push str.output_template
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov byte [ebp - 4], 0x19
call fcn.00440464
lea ecx, [ebp - 0x70]
call fcn.0040388d
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d28c
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 0x1b
mov ecx, esp
push str.max_concurrent_downloads
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x65d2b2
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x1c
mov ecx, esp
push str.cb_lengthyproc
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov eax, dword [0x65d2a0]
sub esp, 0x10
mov dword [ebp - 0x74], eax
mov eax, dword [0x65d2a4]
mov dword [ebp - 0x54], eax
mov eax, dword [ebx]
mov ebx, esp
mov dword [ebp - 0x4c], eax
mov edi, ebx
xor eax, eax
mov dword [ebp - 0x50], esp
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 4], 0x1d
lea ecx, [ebx + 8]
movzx eax, byte [ebx]
push eax
call fcn.004039cc
mov eax, dword [ebp - 0x74]
mov dword [ebx + 8], eax
mov eax, dword [ebp - 0x54]
mov byte [ebx], 5
mov dword [ebx + 0xc], eax
mov dword [ebp - 4], 0x1e
sub esp, 0x18
mov ecx, esp
push str.max_proc_dur
call fcn.00403448
mov ecx, dword [ebp - 0x4c]
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov ebx, dword [ebp - 0x58]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
xor eax, eax
mov edi, ecx
mov esi, dword [ebx]
mov dword [ebp - 0x4c], ecx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov byte [ecx], al
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], eax
mov edx, 0x65d22c
mov dword [ebp - 4], 0x1f
call fcn.00455891
sub esp, 0x18
mov dword [ebp - 4], 0x20
mov ecx, esp
push str.unfinished_queue_items
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
or edi, 0xffffffff
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2b3
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x21
mov ecx, esp
push str.common_dl_options
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2b4
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x22
mov ecx, esp
push str.cb_autostart
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2b5
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x23
mov ecx, esp
push str.cb_queue_autostart
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2b6
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x24
mov ecx, esp
push str.gpopt_hidden
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2b7
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x25
mov ecx, esp
push str.open_dialog_origin
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov dword [ebp - 4], edi
call fcn.00440464
cmp dword [0x65d1d4], 8
lea ecx, [ebp - 0x70]
push dword [0x65d1d0]
mov esi, dword [ebx]
mov eax, 0x65d1c0
cmovae eax, dword [0x65d1c0]
push eax
call fcn.004c43c0
push ecx
push ecx
mov dword [ebp - 4], 0x26
mov ecx, esp
mov dword [ebp - 0x50], esp
push eax
call fcn.004541f5
sub esp, 0x18
mov byte [ebp - 4], 0x27
mov ecx, esp
push str.playlist_indexing
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov byte [ebp - 4], 0x26
call fcn.00440464
lea ecx, [ebp - 0x70]
call fcn.0040388d
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2b8
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x28
mov ecx, esp
push str.cb_zeropadding
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2b9
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x29
mov ecx, esp
push str.cb_playlist_folder
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov dword [ebp - 4], edi
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
mov edi, str.window
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2d4
call fcn.004542c0
sub esp, 0x18
mov dword [ebp - 4], 0x2a
mov ecx, esp
push 0x5fe0a4
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2d8
call fcn.004542c0
sub esp, 0x18
mov dword [ebp - 4], 0x2b
mov ecx, esp
push 0x5fe0a8
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2dc
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 0x2c
mov ecx, esp
push 0x5f453c
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2e0
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 0x2d
mov ecx, esp
push 0x5fe0ac
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2ba
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x2e
mov ecx, esp
push 0x5fe0b0
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov cl, 1
call fcn.004a27d0
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4c], eax
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov dword [ebp - 0x54], eax
mov ebx, esp
mov dword [ebp - 0x50], esp
mov edi, ebx
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 4], 0x2f
movzx eax, byte [ebx]
lea ecx, [ebx + 8]
push eax
call fcn.004039cc
mov eax, dword [ebp - 0x4c]
and dword [ebx + 0xc], 0
mov byte [ebx], 6
mov dword [ebx + 8], eax
sub esp, 0x18
mov dword [ebp - 4], 0x30
mov ecx, esp
push 0x5fe0b8
call fcn.00403448
mov ecx, dword [ebp - 0x54]
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov ebx, dword [ebp - 0x58]
mov edi, str.outpaths
push edi
mov esi, dword [ebx]
mov ecx, esi
call fcn.0040f646
test al, al
je 0x4523c8
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.004403c4
mov eax, dword [0x65d23c]
mov dword [ebp - 0x4c], eax
mov esi, dword [eax]
cmp esi, eax
je 0x45244d
mov edi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push str.outpaths
call fcn.00403448
mov ecx, edi
call fcn.00404ee2
cmp dword [esi + 0x1c], 8
lea ecx, [esi + 8]
mov edi, eax
jb 0x4523fc
mov ecx, dword [esi + 8]
push dword [esi + 0x18]
push ecx
lea ecx, [ebp - 0x70]
call fcn.004c43c0
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], 0x31
call fcn.004541f5
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x32
push eax
mov ecx, edi
call fcn.00453203
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x18]
push dword [ebp - 0x20]
call fcn.004039cc
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x70]
call fcn.0040388d
mov eax, dword [esi]
mov esi, eax
cmp eax, dword [ebp - 0x4c]
jne 0x4523d6
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2bb
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x34
mov ecx, esp
push str.get_releases_at_startup
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
mov edi, str.queue_columns
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2bc
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x35
mov ecx, esp
push str.format
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2bd
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x36
mov ecx, esp
push str.format_note
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2be
call fcn.00448b42
mov dword [ebp - 4], 0x37
sub esp, 0x18
mov ecx, esp
push 0x5f133c
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2bf
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x38
mov ecx, esp
push str.fsize
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2c1
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x39
mov ecx, esp
push str.website_icon
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2c2
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x3a
mov ecx, esp
push str.website_text
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or edi, 0xffffffff
mov ecx, eax
mov dword [ebp - 4], edi
call fcn.00440464
cmp dword [0x65d1ec], 8
lea ecx, [ebp - 0x70]
push dword [0x65d1e8]
mov esi, dword [ebx]
mov eax, 0x65d1d8
cmovae eax, dword [0x65d1d8]
push eax
call fcn.004c43c0
push ecx
push ecx
mov dword [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0x50], esp
push eax
call fcn.004541f5
sub esp, 0x18
mov byte [ebp - 4], 0x3c
mov ecx, esp
push str.output_template_bandcamp
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov byte [ebp - 4], 0x3b
call fcn.00440464
lea ecx, [ebp - 0x70]
call fcn.0040388d
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2c0
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x3d
mov ecx, esp
push str.json_hide_null
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2c3
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x3e
mov ecx, esp
push str.ytdlp_nightly
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2c4
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x3f
mov ecx, esp
push str.audio_multistreams
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2c8
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x40
mov ecx, esp
push str.cbsnap
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2c9
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x41
mov ecx, esp
push str.limit_output_buffer
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d290
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 0x42
mov ecx, esp
push str.output_buffer_size
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2ca
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x43
mov ecx, esp
push str.update_self_only
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d294
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 0x44
mov ecx, esp
push str.pref_vcodec
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d298
call fcn.00454259
sub esp, 0x18
mov dword [ebp - 4], 0x45
mov ecx, esp
push str.pref_acodec
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov dword [ebp - 4], edi
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d208
call fcn.00447f87
sub esp, 0x18
mov dword [ebp - 4], 0x46
mov ecx, esp
push str.argset
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2cb
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x47
mov ecx, esp
push str.cb_premium
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2cc
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x48
mov ecx, esp
push str.cbminw
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2cd
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x49
mov ecx, esp
push str.cb_save_errors
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2ce
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x4a
mov ecx, esp
push str.cb_ffplay
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov dword [ebp - 4], edi
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d100
call fcn.00454197
sub esp, 0x18
mov dword [ebp - 4], 0x4b
mov ecx, esp
push str.ffmpeg_path
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2cf
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x4c
mov ecx, esp
push str.cb_clear_done
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2d0
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x4d
mov ecx, esp
push str.cb_formats_fsize_bytes
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2d1
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x4e
mov ecx, esp
push str.cb_add_on_focus
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov dword [ebp - 4], edi
call fcn.00440464
mov esi, dword [ebx]
mov edi, str.sblock
push edi
mov ecx, esi
call fcn.0040f646
test al, al
je 0x452b91
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
push str.mark
mov ecx, eax
call fcn.0040f646
test al, al
je 0x452b3a
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x18
mov esi, eax
mov ecx, esp
push str.mark
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.004403c4
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
push str.remove
mov ecx, eax
call fcn.0040f646
test al, al
je 0x452b91
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x18
mov esi, eax
mov ecx, esp
push str.remove
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
call fcn.004403c4
mov eax, dword [0x65d2ec]
mov edi, dword [0x65d2e8]
mov dword [ebp - 0x54], eax
cmp edi, eax
je 0x452c16
mov eax, dword [edi]
sub esp, 0x18
mov esi, dword [ebx]
mov ecx, esp
mov dword [ebp - 0x4c], eax
push str.sblock
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x18
mov esi, eax
mov ecx, esp
push str.mark
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov esi, eax
lea ecx, [ebp - 0x20]
lea eax, [ebp - 0x4c]
push eax
call fcn.004542c0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0x4f
push eax
mov ecx, esi
call fcn.00453203
mov dword [ebp - 4], 0x50
lea ecx, [ebp - 0x18]
push dword [ebp - 0x20]
call fcn.004039cc
or dword [ebp - 4], 0xffffffff
add edi, 4
cmp edi, dword [ebp - 0x54]
jne 0x452ba3
mov eax, dword [0x65d2f8]
mov edi, dword [0x65d2f4]
mov dword [ebp - 0x54], eax
cmp edi, eax
je 0x452c9b
mov eax, dword [edi]
sub esp, 0x18
mov esi, dword [ebx]
mov ecx, esp
mov dword [ebp - 0x4c], eax
push str.sblock
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x18
mov esi, eax
mov ecx, esp
push str.remove
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov esi, eax
lea ecx, [ebp - 0x20]
lea eax, [ebp - 0x4c]
push eax
call fcn.004542c0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0x51
push eax
mov ecx, esi
call fcn.00453203
mov dword [ebp - 4], 0x52
lea ecx, [ebp - 0x18]
push dword [ebp - 0x20]
call fcn.004039cc
or dword [ebp - 4], 0xffffffff
add edi, 4
cmp edi, dword [ebp - 0x54]
jne 0x452c28
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
mov edi, str.sblock
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2c5
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x53
mov ecx, esp
push str.cb_mark
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2c6
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x54
mov ecx, esp
push str.cb_remove
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
mov edi, str.proxy
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
sub esp, 0x10
mov esi, eax
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x65d2c7
call fcn.00448b42
sub esp, 0x18
mov dword [ebp - 4], 0x55
mov ecx, esp
push str.enabled
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
or dword [ebp - 4], 0xffffffff
mov ecx, eax
call fcn.00440464
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push edi
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
cmp dword [0x65d204], 8
lea ecx, [ebp - 0x70]
push dword [0x65d200]
mov esi, eax
mov eax, 0x65d1f0
cmovae eax, dword [0x65d1f0]
push eax
call fcn.004c43c0
push ecx
push ecx
mov dword [ebp - 4], 0x56
mov ecx, esp
mov dword [ebp - 0x50], esp
push eax
call fcn.004541f5
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
push 0x5fe1e8
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov byte [ebp - 4], 0x56
call fcn.00440464
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x70]
call fcn.0040388d
mov esi, dword [ebx]
mov edi, str.playsel_strings
push edi
mov ecx, esi
call fcn.0040f646
test al, al
je 0x452e4d
cmp byte [esi], 1
jne 0x4530fc
mov esi, dword [esi + 8]
lea ecx, [ebp - 0x38]
push edi
call fcn.00403448
lea eax, [ebp - 0x38]
mov ecx, esi
push eax
call fcn.0045569d
lea ecx, [ebp - 0x38]
call fcn.0040388d
mov esi, dword [ebx]
sub esp, 0x18
mov ecx, esp
push str.unfinished_queue_items
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov esi, eax
lea edi, [ebp - 0x20]
xor eax, eax
mov ecx, esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x20]
push eax
call fcn.00402e49
xor eax, eax
lea edi, [ebp - 0x48]
stosd dword es:[edi], eax
mov ecx, esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x48]
push eax
call fcn.00402ddf
jmp 0x453081
lea ecx, [ebp - 0x20]
call fcn.00402d21
push ecx
push eax
lea ecx, [ebp - 0x38]
call fcn.004041ea
lea eax, [ebp - 0x38]
mov dword [ebp - 4], 0x59
mov esi, dword [ebx + 4]
lea ecx, [ebp - 0x8c]
push eax
call fcn.00403481
mov byte [ebp - 4], 0x5a
lea eax, [ebp - 0x8c]
cmp dword [ebp - 0x78], 0x10
lea ecx, [ebp - 0xa4]
push dword [ebp - 0x7c]
cmovae eax, dword [ebp - 0x8c]
push eax
call fcn.004c44d0
pop ecx
pop ecx
push eax
lea ecx, [esi + 0x424]
mov byte [ebp - 4], 0x5b
call fcn.0040c376
lea ecx, [ebp - 0xa4]
mov esi, dword [eax]
call fcn.0040e260
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x59
call fcn.0040388d
cmp dword [esi + 0x144], 0
je 0x45306d
sub esp, 0x18
mov ecx, esp
push str.entries
call fcn.00403448
lea ecx, [esi + 0xa8]
call fcn.00404ee2
mov ecx, eax
call fcn.00413f44
test al, al
jne 0x45306d
lea eax, [esi + 0x134]
cmp dword [eax + 0x14], 8
mov ecx, eax
jb 0x452f57
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0xf0]
call fcn.004c43c0
mov edi, eax
sub esp, 0x10
mov byte [ebp - 4], 0x5c
mov ecx, esp
push str.entries
call fcn.00403448
lea ecx, [esi + 0xa8]
call fcn.00404ee2
push 0
mov ecx, eax
call fcn.00402ebf
sub esp, 0x18
mov esi, eax
mov ecx, esp
push 0x5fad1c
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
push dword [ebp - 0x50]
lea ecx, [ebp - 0x70]
push ecx
mov ecx, eax
call fcn.00410bc9
push 1
push 0x5fe1fc
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x5d
call fcn.00403952
push eax
lea ecx, [ebp - 0xd8]
call fcn.004033e5
sub esp, 0x18
mov byte [ebp - 4], 0x5e
mov esi, dword [ebx]
mov ecx, esp
push str.playsel_strings
call fcn.00403448
mov ecx, esi
call fcn.00404ee2
mov esi, eax
lea ecx, [ebp - 0xc0]
push edi
lea eax, [ebp - 0xd8]
push eax
push dword [ebp - 0x50]
call fcn.00410683
sub esp, 0x10
mov byte [ebp - 4], 0x5f
lea eax, [ebp - 0xc0]
mov dword [ebp - 0x50], esp
mov ecx, esp
push eax
call fcn.004541f5
sub esp, 0x18
mov byte [ebp - 4], 0x60
lea eax, [ebp - 0x38]
mov ecx, esp
push eax
call fcn.00403481
mov ecx, esi
call fcn.00404ee2
mov ecx, eax
mov byte [ebp - 4], 0x5f
call fcn.00440464
lea ecx, [ebp - 0xc0]
call fcn.0040388d
lea ecx, [ebp - 0xd8]
call fcn.0040388d
lea ecx, [ebp - 0x70]
call fcn.0040388d
lea ecx, [ebp - 0xf0]
call fcn.0040388d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x38]
call fcn.0040388d
lea ecx, [ebp - 0x20]
call fcn.00402cb3
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x20]
call fcn.004052a2
test al, al
je 0x452e94
push ecx
push ecx
push 2
push dword [ebx + 8]
lea ecx, [ebp - 0x1a0]
call fcn.0041448d
mov esi, eax
push 0
lea eax, [ebp - 0x84]
mov dword [ebp - 4], 0x61
push 4
push eax
call fcn.0056461d
mov ecx, dword [esi]
push dword [eax + 0xc]
mov ecx, dword [ecx + 4]
push dword [eax + 8]
add ecx, esi
push ecx
call dword [eax]
mov edx, dword [ebx]
add esp, 0x18
mov ecx, esi
call fcn.004148af
mov eax, dword [esi]
lea ecx, [ebp - 0x1a0]
mov eax, dword [eax + 4]
cmp dword [eax + esi + 0xc], 0
sete bl
call fcn.00413685
mov al, bl
call fcn.0057793b
ret
mov ecx, esi
call fcn.004037db
mov dword [ebp - 0x4c], eax
lea ecx, [ebp - 0xf0]
lea eax, [ebp - 0x4c]
push eax
call fcn.004449e8
push eax
mov edx, 0x133
mov dword [ebp - 4], 0x58
lea ecx, [ebp - 0xa8]
call fcn.0040450d
pop ecx
pop ecx
push 0x633534
lea eax, [ebp - 0xa8]
push eax
call fcn.00578a3b
int3
add ecx, 4
jmp 0x451895