Function at 0x140021990
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
add rsp, 0xffffffffffffff80
movaps xmmword [rsp + 0x70], xmm6
mov rsi, rdx
mov rbx, rcx
lea rdx, str.null
mov rdi, qword [0x140285110]
mov rax, qword [rdi]
mov qword [rsp + 0x68], rax
xor eax, eax
mov rax, qword [rcx + 0xd0]
test rax, rax
je 0x1400215d4
mov rcx, qword [rax]
test rcx, rcx
je 0x1400215d4
mov rdx, qword [rcx]
mov r8, qword [str.main]
lea rbp, str.rebuilding_array_of_current___root__s
lea r12, str.ResetCurrentlyPlaying
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov qword [rsp + 0x38], rdx
mov rcx, rbx
mov edx, 3
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x98
call sym.libvlccore.dll_vlc_Log
mov rcx, qword [rbx + 0x40]
mov dword [rbx + 0x38], 0
mov dword [rbx + 0x3c], 0
call fcn.14016b6d8
mov qword [rbx + 0x40], 0
mov dword [rbx + 0x48], 0xffffffff
xor r8d, r8d
movsd xmm6, qword [0x140180728]
jmp 0x140021670
mov r11d, dword [rbx + 0x3c]
cmp r10d, r11d
je 0x1400216f0
mov rax, qword [rbx + 0x40]
movsxd rcx, r11d
add r11d, 1
mov qword [rax + rcx*8], r8
mov dword [rbx + 0x3c], r11d
mov rdx, qword [rbx + 0xd0]
mov dword [rsp + 0x20], 0
mov r9d, 1
mov rcx, rbx
call fcn.14002c200
test rax, rax
mov r8, rax
je 0x140021740
cmp rax, rsi
je 0x1400216e0
mov r10d, dword [rbx + 0x38]
cmp r10d, 9
jg 0x140021650
mov rcx, qword [rbx + 0x40]
mov dword [rbx + 0x38], 0xa
mov edx, 0x50
mov qword [rsp + 0x58], r8
call sub.msvcrt.dll_realloc
test rax, rax
mov qword [rbx + 0x40], rax
mov r8, qword [rsp + 0x58]
je 0x140021985
mov r11d, dword [rbx + 0x3c]
jmp 0x140021661
mov r9d, dword [rbx + 0x3c]
mov dword [rbx + 0x48], r9d
jmp 0x14002169e
pxor xmm0, xmm0
mov qword [rsp + 0x58], r8
mov rcx, qword [rbx + 0x40]
cvtsi2sd xmm0, r11d
mulsd xmm0, xmm6
cvttsd2si r8d, xmm0
movsxd rdx, r8d
mov dword [rbx + 0x38], r8d
shl rdx, 3
call sub.msvcrt.dll_realloc
test rax, rax
mov qword [rbx + 0x40], rax
je 0x140021985
mov r11d, dword [rbx + 0x3c]
mov r8, qword [rsp + 0x58]
jmp 0x140021661
mov eax, dword [rbx + 0x3c]
mov esi, dword [rbx + 0x48]
lea rdx, str.rebuild_done____i_items__index__i
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov rcx, rbx
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], r12
mov edx, 3
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x20], 0xa9
call sym.libvlccore.dll_vlc_Log
lea r9, [rsp + 0x60]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, rbx
mov byte [rsp + 0x60], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140021964
cmp byte [rsp + 0x60], 0
je 0x140021964
mov ebp, dword [rbx + 0x3c]
test ebp, ebp
jle 0x140021964
mov esi, ebp
sub esi, 1
je 0x140021964
call sym.libvlccore.dll_vlc_lrand48
xor edx, edx
mov r9, qword [rbx + 0x40]
mov ecx, esi
div ebp
lea r12d, [rbp - 2]
lea rax, [r9 + rcx*8]
and r12d, 3
mov rsi, qword [rax]
mov r10d, edx
lea r11, [r9 + r10*8]
mov r8, qword [r11]
mov qword [r11], rsi
mov esi, ebp
sub esi, 2
mov qword [rax], r8
je 0x140021964
test r12d, r12d
je 0x1400218ae
cmp r12d, 1
je 0x140021877
cmp r12d, 2
je 0x140021846
call sym.libvlccore.dll_vlc_lrand48
lea r9d, [rsi + 1]
xor edx, edx
mov r12, qword [rbx + 0x40]
mov ecx, esi
div r9d
lea rax, [r12 + rcx*8]
mov rsi, qword [rax]
mov r10d, edx
lea r11, [r12 + r10*8]
mov r8, qword [r11]
mov qword [r11], rsi
lea esi, [rbp - 3]
mov qword [rax], r8
lea r12d, [rsi + 1]
call sym.libvlccore.dll_vlc_lrand48
xor edx, edx
mov rbp, qword [rbx + 0x40]
mov r8d, esi
div r12d
sub esi, 1
lea rax, [rbp + r8*8]
mov rcx, qword [rax]
mov r9d, edx
lea r10, [rbp + r9*8]
mov r11, qword [r10]
mov qword [r10], rcx
mov qword [rax], r11
lea r12d, [rsi + 1]
call sym.libvlccore.dll_vlc_lrand48
xor edx, edx
mov rbp, qword [rbx + 0x40]
mov r8d, esi
div r12d
sub esi, 1
lea rax, [rbp + r8*8]
mov rcx, qword [rax]
mov r9d, edx
lea r10, [rbp + r9*8]
mov r11, qword [r10]
mov qword [r10], rcx
mov qword [rax], r11
je 0x140021964
lea r12d, [rsi + 1]
call sym.libvlccore.dll_vlc_lrand48
xor edx, edx
mov rbp, qword [rbx + 0x40]
mov r8d, esi
div r12d
lea rax, [rbp + r8*8]
mov rcx, qword [rax]
mov r9d, edx
lea r10, [rbp + r9*8]
lea ebp, [rsi - 1]
mov r11, qword [r10]
mov qword [r10], rcx
mov qword [rax], r11
call sym.libvlccore.dll_vlc_lrand48
xor edx, edx
mov r12, qword [rbx + 0x40]
div esi
lea r8, [r12 + rbp*8]
lea ebp, [rsi - 2]
mov rax, qword [r8]
mov r9d, edx
lea r10, [r12 + r9*8]
lea r12d, [rbp + 1]
mov r11, qword [r10]
mov qword [r10], rax
mov qword [r8], r11
call sym.libvlccore.dll_vlc_lrand48
xor edx, edx
mov rcx, qword [rbx + 0x40]
div r12d
lea r8, [rcx + rbp*8]
lea ebp, [rsi - 3]
mov rax, qword [r8]
lea r12d, [rbp + 1]
mov r9d, edx
lea r10, [rcx + r9*8]
mov r11, qword [r10]
mov qword [r10], rax
mov qword [r8], r11
call sym.libvlccore.dll_vlc_lrand48
xor edx, edx
mov rcx, qword [rbx + 0x40]
div r12d
sub esi, 4
lea r8, [rcx + rbp*8]
mov rax, qword [r8]
mov r9d, edx
lea r10, [rcx + r9*8]
mov r11, qword [r10]
mov qword [r10], rax
mov qword [r8], r11
jne 0x1400218ae
mov rax, qword [rsp + 0x68]
xor rax, qword [rdi]
mov byte [rbx + 0x134], 0
jne 0x14002198a
movaps xmm6, xmmword [rsp + 0x70]
sub rsp, 0xffffffffffffff80
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
call sub.msvcrt.dll_abort
call fcn.1400c4ec0
nop
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x98
mov rax, qword [0x140285110]
mov r13, rcx
mov rdi, qword [rax]
mov qword [rsp + 0x88], rdi
xor edi, edi
call sym.libvlccore.dll_playlist_Lock
mov rcx, qword [str.main]
lea rdx, [rsp + 0x80]
mov byte [rsp + 0x77], 0
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x78], rcx
nop dword [rax]
cmp byte [r13 + 0x12c], 0
jne 0x140022314
movzx ebx, byte [r13 + 0xec]
test bl, bl
mov byte [rsp + 0x76], bl
je 0x14002315c
mov esi, dword [r13 + 0x2c]
mov byte [r13 + 0xec], 0
mov r15d, ebx
lea rbp, [r13 + 0xf8]
mov r12, qword [str.main]
test esi, esi
je 0x1400235cc
nop word [rax + rax]
test r15b, r15b
je 0x1400223d5
mov rsi, qword [r13 + 0xe0]
test rsi, rsi
je 0x140022950
mov rdx, qword [r13 + 0xd8]
mov ebx, dword [r13 + 0xe8]
test rdx, rdx
je 0x140022982
mov rcx, qword [rdx]
test rcx, rcx
je 0x140022982
test rsi, rsi
mov r14, qword [rcx]
je 0x14002327c
mov rdi, qword [rsi]
lea r15, str.null
test rdi, rdi
je 0x140021a8a
mov r15, qword [rdi]
lea r9, str.processing_request_item:__s__node:__s__skip:__i
lea r10, str.NextItem
mov r8, qword [str.main]
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x48], ebx
mov edx, 3
mov qword [rsp + 0x30], r9
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x28], r10
mov dword [rsp + 0x20], 0x125
mov rcx, r13
mov qword [rsp + 0x60], r10
call sym.libvlccore.dll_vlc_Log
mov r14, qword [r13 + 0xd8]
test r14, r14
je 0x140022393
mov rcx, r13
call fcn.140024a90
cmp r14, rax
je 0x140022393
mov rdx, qword [r13 + 0xd8]
mov rcx, r13
call fcn.140024ad0
test ebx, ebx
mov qword [r13 + 0xd8], 0
mov byte [r13 + 0x134], 1
jne 0x1400228e4
test rsi, rsi
je 0x140022da1
cmp dword [rsi + 0x18], 0xffffffff
je 0x140022d7d
mov rdx, rsi
xor r8d, r8d
mov dword [rsp + 0x20], 0
mov r9d, 1
mov rcx, r13
call fcn.14002c200
mov edx, dword [r13 + 0x3c]
mov rsi, rax
test edx, edx
jle 0x140023224
mov r11, qword [r13 + 0x40]
lea ecx, [rdx - 1]
mov ebx, 1
and ecx, 7
cmp rax, qword [r11]
je 0x140023174
cmp edx, 1
mov eax, 1
jle 0x140021d10
test ecx, ecx
je 0x140021c7a
cmp ecx, 1
je 0x140021c01
cmp ecx, 2
je 0x140021bf3
cmp ecx, 3
je 0x140021be5
cmp ecx, 4
je 0x140021bd7
cmp ecx, 5
je 0x140021bc9
cmp ecx, 6
je 0x140021bbb
cmp rsi, qword [r11 + 8]
je 0x1400231c3
add rax, 1
cmp rsi, qword [r11 + rax*8]
je 0x1400231f3
add rax, 1
cmp rsi, qword [r11 + rax*8]
je 0x1400231e8
add rax, 1
cmp rsi, qword [r11 + rax*8]
je 0x1400231fe
add rax, 1
cmp rsi, qword [r11 + rax*8]
je 0x140023209
add rax, 1
cmp rsi, qword [r11 + rax*8]
je 0x1400231d2
add rax, 1
cmp rsi, qword [r11 + rax*8]
je 0x1400231dd
add rax, 1
cmp edx, eax
jg 0x140021c7a
jmp 0x140021d10
add rax, 1
cmp rsi, qword [r11 + rax*8]
je 0x140021c90
lea r8, [rax + 1]
cmp rsi, qword [r11 + r8*8]
je 0x140021ca0
lea r15, [rax + 2]
cmp rsi, qword [r11 + r15*8]
je 0x140021cb0
lea rdi, [rax + 3]
cmp rsi, qword [r11 + rdi*8]
je 0x140021cc0
lea r9, [rax + 4]
cmp rsi, qword [r11 + r9*8]
je 0x140021cd0
lea r10, [rax + 5]
cmp rsi, qword [r11 + r10*8]
je 0x140021ce0
lea r14, [rax + 6]
cmp rsi, qword [r11 + r14*8]
je 0x140021cf4
add rax, 7
cmp edx, eax
jle 0x140021d10
cmp rsi, qword [r11 + rax*8]
jne 0x140021c20
mov dword [r13 + 0x48], eax
add rax, 1
xor ebx, ebx
cmp rsi, qword [r11 + rax*8]
jne 0x140021c2a
lea r8, [rax + 1]
xor ebx, ebx
mov dword [r13 + 0x48], eax
cmp rsi, qword [r11 + r8*8]
jne 0x140021c34
lea r15, [rax + 2]
xor ebx, ebx
mov dword [r13 + 0x48], r8d
cmp rsi, qword [r11 + r15*8]
jne 0x140021c3e
lea rdi, [rax + 3]
xor ebx, ebx
mov dword [r13 + 0x48], r15d
cmp rsi, qword [r11 + rdi*8]
jne 0x140021c48
lea r9, [rax + 4]
xor ebx, ebx
mov dword [r13 + 0x48], edi
cmp rsi, qword [r11 + r9*8]
jne 0x140021c52
lea r10, [rax + 5]
xor ebx, ebx
mov dword [r13 + 0x48], r9d
cmp rsi, qword [r11 + r10*8]
jne 0x140021c60
lea r14, [rax + 6]
xor ebx, ebx
mov dword [r13 + 0x48], r10d
cmp rsi, qword [r11 + r14*8]
jne 0x140021c6e
add rax, 7
xor ebx, ebx
mov dword [r13 + 0x48], r14d
cmp edx, eax
jg 0x140021c7a
nop word cs:[rax + rax]
cmp byte [r13 + 0x134], 0
jne 0x1400228e4
test rsi, rsi
je 0x140022d50
mov rdx, rsi
mov rcx, r13
call fcn.1400212d0
mov edx, dword [r13 + 0x3c]
test edx, edx
je 0x140021ee3
cmp ebx, 0
jle 0x14002298e
mov eax, dword [r13 + 0x48]
test eax, eax
mov esi, 0xffffffff
cmovs eax, esi
lea r14d, [rbx - 1]
lea rsi, str.looping___restarting_at_beginning_of_node
and r14d, 3
je 0x1400228d0
add eax, 1
cmp edx, eax
mov dword [r13 + 0x48], eax
jle 0x140022dc5
sub ebx, 1
cmp r14d, 1
mov edx, dword [r13 + 0x3c]
je 0x1400228d0
cmp r14d, 2
je 0x140021da2
add eax, 1
cmp edx, eax
mov dword [r13 + 0x48], eax
jle 0x140022e80
sub ebx, 1
add eax, 1
cmp edx, eax
mov dword [r13 + 0x48], eax
jle 0x140022f3f
sub ebx, 1
mov edx, dword [r13 + 0x3c]
mov rdi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x58]
mov r15, qword [rsp + 0x78]
jmp 0x140021e13
sub ebx, 1
je 0x140021ed0
add eax, 1
cmp dword [r13 + 0x3c], eax
mov dword [r13 + 0x48], eax
jle 0x1400226b0
add eax, 1
cmp dword [r13 + 0x3c], eax
mov dword [r13 + 0x48], eax
jle 0x140022769
add eax, 1
cmp dword [r13 + 0x3c], eax
mov dword [r13 + 0x48], eax
jle 0x140022822
mov edx, dword [r13 + 0x3c]
sub ebx, 3
add eax, 1
cmp edx, eax
mov dword [r13 + 0x48], eax
jg 0x140021dd0
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov r8, r15
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x153
call sym.libvlccore.dll_vlc_Log
lea rdx, [0x140180452]
mov r9, r14
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140021ebc
cmp byte [rsp + 0x80], 0
je 0x140021ebc
lea r10, str.reshuffle_playlist
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], r10
mov dword [rsp + 0x20], 0x156
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
xor eax, eax
sub ebx, 1
mov dword [r13 + 0x48], 0
jne 0x140021dd9
nop
mov rbx, qword [r13 + 0x40]
cdqe
mov rsi, qword [rbx + rax*8]
test rsi, rsi
je 0x140022290
lea r11, str.Next
mov r8, qword [str.main]
lea rdx, str.starting_playback_of_new_item
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov rcx, r13
mov dword [rsp + 0x20], 0x1d8
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x30], rdx
mov edx, 3
call sym.libvlccore.dll_vlc_Log
mov rdx, rsi
mov rcx, r13
lea r15, str.PlayItem
call fcn.1400212d0
mov rcx, r13
mov r14, qword [rsi]
call sym.libvlccore.dll_playlist_AssertLocked
lea rcx, str.creating_new_input_thread
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0xca
mov qword [rsp + 0x30], rcx
mov rcx, r13
call sym.libvlccore.dll_vlc_Log
add dword [rsi + 0x1c], 1
mov rdx, rsi
mov rcx, r13
call fcn.140024ab0
mov rdi, qword [r13 + 0xc0]
test rdi, rdi
je 0x140022641
mov rcx, rdi
call sym.libvlccore.dll_vlc_renderer_item_hold
mov rcx, r13
call sym.libvlccore.dll_playlist_Unlock
mov rcx, qword [r13 + 0x18]
mov rdx, rsi
call sym.libvlccore.dll_libvlc_MetadataCancel
mov r9, qword [r13 + 0xb8]
mov rcx, r13
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov rdx, r14
call sym.libvlccore.dll_input_Create
mov rcx, rdi
mov rbx, rax
call sym.libvlccore.dll_vlc_renderer_item_release
test rbx, rbx
je 0x140021ffd
lea r8, [0x140021180]
lea rdx, [0x1401804aa]
mov r9, r13
mov rcx, rbx
call sym.libvlccore.dll_var_AddCallback
mov rcx, rbx
call sym.libvlccore.dll_input_Start
test eax, eax
jne 0x140022680
mov edx, 0x10
mov rcx, r14
call sym.libvlccore.dll_input_item_GetMeta
test rax, rax
mov r8, rax
je 0x14002201b
cmp byte [rax], 0
jne 0x140022360
lea r9, str.requesting_art_for_new_input_thread
mov qword [rsp + 0x68], r8
mov r8, qword [str.main]
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x30], r9
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov dword [rsp + 0x20], 0xf3
call sym.libvlccore.dll_vlc_Log
mov rcx, qword [r13 + 0x18]
xor r8d, r8d
mov rdx, r14
call sym.libvlccore.dll_libvlc_ArtRequest
mov r8, qword [rsp + 0x68]
mov rcx, r8
call fcn.14016b6d8
mov rcx, r13
call sym.libvlccore.dll_playlist_Lock
mov rcx, r13
mov qword [r13 + 0xb0], rbx
call sym.libvlccore.dll_playlist_Unlock
lea rdx, [0x140180464]
mov r9, rbx
mov r8d, 0x70
mov rcx, r13
call sym.libvlccore.dll_var_SetChecked
mov rcx, r13
call sym.libvlccore.dll_playlist_Lock
test rbx, rbx
je 0x140022290
cmp byte [r13 + 0xed], 0
mov rbx, qword [r13 + 0xb0]
lea rsi, [r13 + 0x128]
lea rdi, str.LoopInput
lea r15, str.incoming_request___stopping_current_input
lea r14, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
jne 0x140022136
nop dword [rax]
cmp byte [r13 + 0xec], 0
jne 0x1400220f4
cmp byte [r13 + 0x12c], 0
je 0x140022121
mov rcx, r13
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x1b4
mov r9, r14
mov r8, r12
mov edx, 3
call sym.libvlccore.dll_vlc_Log
mov rcx, rbx
call sym.libvlccore.dll_input_Stop
mov rdx, rbp
mov rcx, rsi
call sym.libvlccore.dll_vlc_cond_wait
cmp byte [r13 + 0xed], 0
je 0x1400220e0
mov rcx, rbx
call sym.libvlccore.dll_input_GetItem
mov rcx, rax
call sym.libvlccore.dll_input_item_HasErrorWhenReading
lea rax, str.dead_input
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x20], 0x1bf
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
mov qword [r13 + 0xb0], 0
mov byte [r13 + 0xed], 0
call sym.libvlccore.dll_playlist_Unlock
lea rdx, [0x140180464]
xor r9d, r9d
mov r8d, 0x70
mov rcx, r13
call sym.libvlccore.dll_var_SetChecked
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180472]
mov r8d, 0x20
mov rcx, rbx
mov rsi, r9
call sym.libvlccore.dll_var_Inherit
test eax, eax
je 0x140022380
mov rcx, qword [r13 + 0xb8]
call fcn.14005a6e0
lea r8, [0x140021180]
lea rdx, [0x1401804aa]
mov r9, r13
mov rcx, rbx
call sym.libvlccore.dll_var_DelCallback
mov rcx, rbx
call sym.libvlccore.dll_input_Close
mov rcx, r13
call sym.libvlccore.dll_playlist_Lock
cmp qword [r13 + 0x138], 0
jne 0x1400225f0
call sym.libvlccore.dll_mdate
cmp byte [r13 + 0x12c], 0
mov qword [r13 + 0x138], rax
jne 0x1400230ae
movzx edx, byte [rsp + 0x76]
mov r11d, dword [r13 + 0x2c]
movzx r15d, byte [r13 + 0xec]
mov byte [r13 + 0xec], 0
test r11d, r11d
mov byte [rsp + 0x77], dl
jne 0x140021a30
mov r8, qword [str.main]
mov r14, qword [rsp + 0x60]
lea r15, str.playlist_is_empty
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov dword [rsp + 0x20], 0x116
xor edx, edx
mov rcx, r13
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r14
call sym.libvlccore.dll_vlc_Log
nop dword [rax + rax]
lea rsi, str.nothing_to_play
lea r12, str.Thread
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov dword [rsp + 0x20], 0x212
mov edx, 3
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], r12
mov rcx, r13
call sym.libvlccore.dll_vlc_Log
cmp byte [rsp + 0x77], 0
jne 0x1400235fa
mov rcx, qword [r13 + 0xb8]
call fcn.14005a4f0
test al, al
je 0x1400219e0
mov rcx, r13
call sym.libvlccore.dll_playlist_Unlock
mov rcx, qword [r13 + 0xb8]
call sym.libvlccore.dll_input_resource_TerminateVout
mov rcx, r13
call sym.libvlccore.dll_playlist_Lock
cmp byte [r13 + 0x12c], 0
je 0x1400219ee
mov rcx, r13
call sym.libvlccore.dll_playlist_Unlock
mov rcx, qword [r13 + 0xb8]
call sym.libvlccore.dll_input_resource_Terminate
mov rdi, qword [0x140285110]
xor eax, eax
mov rsi, qword [rsp + 0x88]
xor rsi, qword [rdi]
jne 0x1400235f5
add rsp, 0x98
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rdi, [0x140180671]
mov ecx, 0xd
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
jne 0x14002201b
jmp 0x140022068
cmp byte [rsp + 0x80], 0
jne 0x1400221de
jmp 0x1400221d2
test ebx, ebx
jne 0x140021d10
test rsi, rsi
jne 0x140021b2c
cmp byte [r13 + 0x134], 0
jne 0x140022da1
mov edx, dword [r13 + 0x3c]
mov dword [r13 + 0x48], 0xffffffff
test edx, edx
je 0x140022290
mov ebx, 1
mov eax, 0xffffffff
jmp 0x140021d55
mov r14, qword [rsp + 0x58]
lea rdx, [0x14018055c]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
mov r9, r14
call sym.libvlccore.dll_var_GetChecked
movzx r8d, byte [rsp + 0x80]
test eax, eax
lea rdx, [0x140180561]
mov r9, r14
mov rcx, r13
mov byte [rsp + 0x80], 0
cmove r15d, r8d
mov r8d, 0x20
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140022910
lea rdx, str.play_and_stop
mov r9, r14
mov r8d, 0x20
mov rcx, r13
movzx ebx, byte [rsp + 0x80]
call sym.libvlccore.dll_var_Inherit
test eax, eax
jne 0x140022ffa
test bl, bl
movzx edi, byte [rsp + 0x80]
jne 0x140023098
nop dword [rax]
test dil, dil
je 0x140022486
mov rcx, r13
call fcn.140024a70
test rax, rax
jne 0x140023183
mov r11d, dword [r13 + 0x3c]
mov eax, dword [r13 + 0x48]
lea rcx, str.NextItem
lea rdx, str.changing_item_without_a_request__current__i__i_
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x28], rcx
mov rcx, r13
mov qword [rsp + 0x30], rdx
mov dword [rsp + 0x40], r11d
mov edx, 3
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x20], 0x18b
call sym.libvlccore.dll_vlc_Log
cmp byte [r13 + 0x134], 0
jne 0x140023080
mov r8d, dword [r13 + 0x48]
add r8d, 1
cmp r8d, dword [r13 + 0x3c]
mov dword [r13 + 0x48], r8d
jne 0x140022595
test r8d, r8d
je 0x140022290
cmp r15b, 1
jne 0x140022290
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x14002258a
cmp byte [rsp + 0x80], 0
je 0x14002258a
mov r14, qword [rsp + 0x60]
mov r8, qword [str.main]
lea rsi, str.reshuffle_playlist
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x20], 0x199
mov qword [rsp + 0x28], r14
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov dword [r13 + 0x48], 0
xor r8d, r8d
mov rdi, qword [rsp + 0x60]
mov dword [rsp + 0x38], r8d
lea r15, str.using_item__i
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov dword [rsp + 0x20], 0x19f
mov qword [rsp + 0x30], r15
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x28], rdi
call sym.libvlccore.dll_vlc_Log
mov ebx, dword [r13 + 0x3c]
test ebx, ebx
je 0x140022290
movsxd r9, dword [r13 + 0x48]
mov r10, qword [r13 + 0x40]
mov rsi, qword [r10 + r9*8]
jmp 0x140021eda
call sym.libvlccore.dll_mdate
sub rax, qword [r13 + 0x138]
cmp rax, 0x3d08f
jg 0x140022940
mov ebx, dword [r13 + 0x140]
cmp ebx, 9
jbe 0x140023063
call sym.libvlccore.dll_mdate
lea ecx, [rbx - 5]
mov r10d, 0x186a0
mov rdx, rbp
shl r10d, cl
lea rcx, [r13 + 0x128]
lea r8, [r10 + rax]
call sym.libvlccore.dll_vlc_cond_timedwait
jmp 0x140022215
mov rcx, r13
call sym.libvlccore.dll_playlist_Unlock
mov rcx, qword [r13 + 0x18]
mov rdx, rsi
call sym.libvlccore.dll_libvlc_MetadataCancel
mov r9, qword [r13 + 0xb8]
mov qword [rsp + 0x20], 0
xor r8d, r8d
mov rdx, r14
mov rcx, r13
call sym.libvlccore.dll_input_Create
mov rbx, rax
jmp 0x140021fcf
lea r8, [0x140021180]
lea rdx, [0x1401804aa]
mov rcx, rbx
mov r9, r13
call sym.libvlccore.dll_var_DelCallback
mov rcx, rbx
xor ebx, ebx
call sym.libvlccore.dll_vlc_object_release
jmp 0x140021ffd
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov r8, r15
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x153
call sym.libvlccore.dll_vlc_Log
lea rdx, [0x140180452]
mov r9, r14
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x14002274e
cmp byte [rsp + 0x80], 0
je 0x14002274e
lea r8, str.reshuffle_playlist
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x156
mov qword [rsp + 0x30], r8
mov r8, qword [str.main]
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
xor eax, eax
mov dword [r13 + 0x48], 0
add eax, 1
cmp dword [r13 + 0x3c], eax
mov dword [r13 + 0x48], eax
jg 0x140021dfb
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov r8, r15
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x153
call sym.libvlccore.dll_vlc_Log
lea rdx, [0x140180452]
mov r9, r14
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140022807
cmp byte [rsp + 0x80], 0
je 0x140022807
lea r9, str.reshuffle_playlist
mov r8, qword [str.main]
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x156
mov qword [rsp + 0x30], r9
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
xor eax, eax
mov dword [r13 + 0x48], 0
add eax, 1
cmp dword [r13 + 0x3c], eax
mov dword [r13 + 0x48], eax
jg 0x140021e0c
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov r8, r15
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x153
call sym.libvlccore.dll_vlc_Log
lea rdx, [0x140180452]
mov r9, r14
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x1400228c0
cmp byte [rsp + 0x80], 0
je 0x1400228c0
lea rax, str.reshuffle_playlist
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x20], 0x156
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov dword [r13 + 0x48], 0
xor eax, eax
jmp 0x140021e0c
mov rdi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x58]
mov r15, qword [rsp + 0x78]
jmp 0x140021e13
mov rdx, rsi
mov rcx, r13
call fcn.140021590
mov edx, dword [r13 + 0x3c]
test edx, edx
jne 0x140021d3e
test rsi, rsi
je 0x140022290
jmp 0x140021ee3
mov r9, qword [rsp + 0x58]
lea rdx, str.play_and_stop
mov r8d, 0x20
mov rcx, r13
call sym.libvlccore.dll_var_Inherit
test eax, eax
jne 0x140022486
movzx edi, byte [rsp + 0x80]
jmp 0x140022470
mov dword [r13 + 0x140], 0
jmp 0x140022215
mov r8, qword [r13 + 0xd8]
test r8, r8
je 0x140022290
mov rcx, qword [r8]
mov ebx, dword [r13 + 0xe8]
test rcx, rcx
jne 0x140021a6c
lea r14, str.null
mov r15, r14
jmp 0x140021a8a
lea r14, str.null
jmp 0x140021a78
je 0x140021eda
mov eax, dword [r13 + 0x48]
mov r15d, ebx
sub eax, 1
lea rsi, str.looping___restarting_at_end_of_node
not r15d
mov dword [r13 + 0x48], eax
and r15d, 3
test eax, eax
js 0x140023288
add ebx, 1
je 0x140021ed0
test r15d, r15d
je 0x140022a0e
cmp r15d, 1
je 0x1400229f6
cmp r15d, 2
je 0x1400229e4
sub eax, 1
test eax, eax
mov dword [r13 + 0x48], eax
js 0x1400233ea
add ebx, 1
sub eax, 1
test eax, eax
mov dword [r13 + 0x48], eax
js 0x140023374
add ebx, 1
sub eax, 1
test eax, eax
mov dword [r13 + 0x48], eax
js 0x1400232fe
add ebx, 1
je 0x140021ed0
mov rdi, qword [rsp + 0x60]
jmp 0x140022a4e
sub eax, 1
add ebx, 1
test eax, eax
mov dword [r13 + 0x48], eax
js 0x140022b1a
sub eax, 1
test eax, eax
mov dword [r13 + 0x48], eax
js 0x140022bd8
sub eax, 1
test eax, eax
mov dword [r13 + 0x48], eax
js 0x140022c96
add ebx, 3
je 0x140021ed0
sub eax, 1
test eax, eax
mov dword [r13 + 0x48], eax
jns 0x140022a15
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x167
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140022afd
cmp byte [rsp + 0x80], 0
je 0x140022afd
lea rcx, str.reshuffle_playlist
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x16a
mov qword [rsp + 0x30], rcx
mov rcx, r13
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov eax, dword [r13 + 0x3c]
add ebx, 1
sub eax, 1
mov dword [r13 + 0x48], eax
sub eax, 1
test eax, eax
mov dword [r13 + 0x48], eax
jns 0x140022a27
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x167
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140022bbe
cmp byte [rsp + 0x80], 0
je 0x140022bbe
lea rax, str.reshuffle_playlist
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x20], 0x16a
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
sub eax, 1
test eax, eax
mov dword [r13 + 0x48], eax
jns 0x140022a36
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x167
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140022c7c
cmp byte [rsp + 0x80], 0
je 0x140022c7c
lea r8, str.reshuffle_playlist
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x16a
mov qword [rsp + 0x30], r8
mov r8, qword [str.main]
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
sub eax, 1
test eax, eax
mov dword [r13 + 0x48], eax
jns 0x140022a45
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x167
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140022d3a
cmp byte [rsp + 0x80], 0
je 0x140022d3a
lea r9, str.reshuffle_playlist
mov r8, qword [str.main]
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x16a
mov qword [rsp + 0x30], r9
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
jmp 0x140022a45
mov edx, dword [r13 + 0x3c]
mov dword [r13 + 0x48], 0xffffffff
test edx, edx
je 0x140022290
cmp ebx, 0
mov eax, 0xffffffff
jg 0x140021d55
je 0x140022290
jmp 0x140022998
cmp byte [r13 + 0x134], 0
mov rdx, rsi
mov rcx, r13
jne 0x140022d97
call fcn.1400212d0
jmp 0x140021ee3
call fcn.140021590
jmp 0x140021ee3
xor edx, edx
mov rcx, r13
call fcn.140021590
mov edx, dword [r13 + 0x3c]
test edx, edx
je 0x140022290
mov eax, dword [r13 + 0x48]
mov ebx, 1
jmp 0x140021d4b
mov r10, qword [rsp + 0x60]
mov r8, qword [rsp + 0x78]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x20], 0x153
mov qword [rsp + 0x28], r10
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140022e71
cmp byte [rsp + 0x80], 0
je 0x140022e71
mov rdx, qword [rsp + 0x60]
mov r8, qword [str.main]
lea r15, str.reshuffle_playlist
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov rcx, r13
mov dword [rsp + 0x20], 0x156
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rdx
mov edx, 3
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov dword [r13 + 0x48], 0
xor eax, eax
jmp 0x140021d79
mov r11, qword [rsp + 0x60]
mov r8, qword [rsp + 0x78]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x20], 0x153
mov qword [rsp + 0x28], r11
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140022f2c
cmp byte [rsp + 0x80], 0
je 0x140022f2c
mov rcx, qword [rsp + 0x60]
mov r8, qword [str.main]
lea rdi, str.reshuffle_playlist
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov dword [rsp + 0x20], 0x156
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rcx
mov rcx, r13
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov dword [r13 + 0x48], 0
xor eax, eax
mov edx, dword [r13 + 0x3c]
jmp 0x140021d9f
mov r8, qword [rsp + 0x60]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x20], 0x153
mov qword [rsp + 0x28], r8
mov r8, qword [rsp + 0x78]
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140022feb
cmp byte [rsp + 0x80], 0
je 0x140022feb
mov rax, qword [rsp + 0x60]
lea r9, str.reshuffle_playlist
mov r8, qword [str.main]
mov edx, 3
mov rcx, r13
mov dword [rsp + 0x20], 0x156
mov qword [rsp + 0x30], r9
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov qword [rsp + 0x28], rax
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov dword [r13 + 0x48], 0
xor eax, eax
jmp 0x140021db1
test bl, bl
je 0x140022486
mov rcx, r13
call fcn.140024a70
test rax, rax
je 0x140022486
lea rax, str.NextItem
lea r11, str.repeating_item
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x17f
mov qword [rsp + 0x60], rax
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rsi, rax
jmp 0x140021eda
add ebx, 1
cmp ebx, 4
mov dword [r13 + 0x140], ebx
jbe 0x140022215
jmp 0x140022618
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
jmp 0x1400224e5
mov rcx, r13
call fcn.140024a70
test rax, rax
jne 0x140023013
jmp 0x140022470
lea rbp, str.nothing_to_play
lea r12, str.Thread
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov dword [rsp + 0x20], 0x212
mov edx, 3
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x28], r12
mov rcx, r13
call sym.libvlccore.dll_vlc_Log
lea rdx, str.play_and_exit
mov r9, rsi
mov r8d, 0x20
mov rcx, r13
call sym.libvlccore.dll_var_Inherit
test eax, eax
jne 0x140023214
movzx ebx, byte [rsp + 0x80]
test bl, bl
mov byte [rsp + 0x77], bl
je 0x140023214
lea rcx, str.end_of_playlist__exiting
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x215
xor edx, edx
mov qword [rsp + 0x30], rcx
mov rcx, r13
call sym.libvlccore.dll_vlc_Log
mov rcx, qword [r13 + 0x18]
call sym.libvlccore.dll_libvlc_Quit
jmp 0x1400222d6
lea rdx, [r13 + 0xf8]
lea rcx, [r13 + 0x128]
call sym.libvlccore.dll_vlc_cond_wait
jmp 0x1400219e0
mov dword [r13 + 0x48], 0
xor ebx, ebx
jmp 0x140021b79
lea r9, str.stopping__play_and_stop_
lea r10, str.NextItem
mov r8, qword [str.main]
mov dword [rsp + 0x20], 0x184
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], r9
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov qword [rsp + 0x28], r10
call sym.libvlccore.dll_vlc_Log
jmp 0x140022290
mov dword [r13 + 0x48], 1
xor ebx, ebx
jmp 0x140021bb7
mov dword [r13 + 0x48], eax
xor ebx, ebx
jmp 0x140021bfd
mov dword [r13 + 0x48], eax
xor ebx, ebx
jmp 0x140021c0b
mov dword [r13 + 0x48], eax
xor ebx, ebx
jmp 0x140021bd3
mov dword [r13 + 0x48], eax
xor ebx, ebx
jmp 0x140021bc5
mov dword [r13 + 0x48], eax
xor ebx, ebx
jmp 0x140021be1
mov dword [r13 + 0x48], eax
xor ebx, ebx
jmp 0x140021bef
movzx r10d, byte [rsp + 0x76]
mov byte [rsp + 0x77], r10b
jmp 0x1400222d6
cmp byte [r13 + 0x134], 0
jne 0x140023260
test rax, rax
je 0x1400235e0
mov rdx, rax
mov rcx, r13
mov ebx, 1
call fcn.1400212d0
mov edx, dword [r13 + 0x3c]
test edx, edx
jne 0x140021d47
jmp 0x140021ee3
mov rdx, rax
mov rcx, r13
call fcn.140021590
mov edx, dword [r13 + 0x3c]
test edx, edx
je 0x1400228fb
jmp 0x140022db7
lea r15, str.null
jmp 0x140021a8a
mov rdx, qword [rsp + 0x60]
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x20], 0x167
mov qword [rsp + 0x28], rdx
mov edx, 3
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x1400232ee
cmp byte [rsp + 0x80], 0
jne 0x14002345c
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
jmp 0x1400229b8
mov r15, qword [rsp + 0x60]
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x20], 0x167
mov qword [rsp + 0x28], r15
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x140023364
cmp byte [rsp + 0x80], 0
jne 0x140023570
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
jmp 0x140022a05
mov r9, qword [rsp + 0x60]
mov r8, qword [str.main]
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x20], 0x167
mov qword [rsp + 0x28], r9
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x1400233da
cmp byte [rsp + 0x80], 0
jne 0x140023514
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
jmp 0x1400229f3
mov rax, qword [rsp + 0x60]
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x20], 0x167
mov qword [rsp + 0x28], rax
call sym.libvlccore.dll_vlc_Log
mov r9, qword [rsp + 0x58]
lea rdx, [0x140180452]
mov r8d, 0x20
mov rcx, r13
mov byte [rsp + 0x80], 0
call sym.libvlccore.dll_var_GetChecked
test eax, eax
jne 0x14002344c
cmp byte [rsp + 0x80], 0
jne 0x1400234b8
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
jmp 0x1400229e1
mov rcx, qword [rsp + 0x60]
lea r11, str.reshuffle_playlist
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov dword [rsp + 0x20], 0x16a
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x28], rcx
mov rcx, r13
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
jmp 0x1400229b8
lea r8, str.reshuffle_playlist
mov rdi, qword [rsp + 0x60]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov dword [rsp + 0x20], 0x16a
mov qword [rsp + 0x30], r8
mov r8, qword [str.main]
mov qword [rsp + 0x28], rdi
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
jmp 0x1400229e1
mov r14, qword [rsp + 0x60]
lea r10, str.reshuffle_playlist
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov edx, 3
mov rcx, r13
mov qword [rsp + 0x30], r10
mov dword [rsp + 0x20], 0x16a
mov qword [rsp + 0x28], r14
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
jmp 0x1400229f3
mov r11, qword [rsp + 0x60]
mov r8, qword [str.main]
lea rdx, str.reshuffle_playlist
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_playlist_thread.c
mov rcx, r13
mov dword [rsp + 0x20], 0x16a
mov qword [rsp + 0x30], rdx
mov edx, 3
mov qword [rsp + 0x28], r11
call sym.libvlccore.dll_vlc_Log
mov rcx, r13
call fcn.140024a70
mov rcx, r13
mov rdx, rax
call fcn.140021590
mov eax, dword [r13 + 0x3c]
sub eax, 1
mov dword [r13 + 0x48], eax
jmp 0x140022a05
lea rdi, str.NextItem
mov r8, r12
mov qword [rsp + 0x60], rdi
jmp 0x14002225c
test edx, edx
mov dword [r13 + 0x48], 0xffffffff
jne 0x1400223c6
jmp 0x140022290
call fcn.1400c4ec0
mov rsi, qword [rsp + 0x58]
jmp 0x1400230e9