Function at 0x1400b07b0
Capabilities:
Get local ipv4 addresses
Get socket information

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xf8
mov rbp, qword [0x1402840b0]
lea rbx, str.sout_AnnounceRegisterSDP
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_stream_output_sap.c
mov rsi, r8
mov r8, qword [str.main]
mov r12, rdx
mov edx, 3
mov rdi, rcx
mov rax, qword [rbp]
mov qword [rsp + 0xe8], rax
xor eax, eax
lea rax, str.adding_SAP_session
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 0xbf
mov qword [rsp + 0x30], rax
call sym.libvlccore.dll_vlc_Log
lea r9, [rsp + 0x50]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call sym.libvlccore.dll_vlc_getaddrinfo
test eax, eax
je 0x1400b0890
lea r12, str.No_invalid_address_specified_for_SAP_announce
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 0xcb
mov qword [rsp + 0x30], r12
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_stream_output_sap.c
mov edx, 1
mov rcx, rdi
xor r14d, r14d
call sym.libvlccore.dll_vlc_Log
mov rdi, qword [rsp + 0xe8]
xor rdi, qword [rbp]
mov rax, r14
jne 0x1400b0e5b
add rsp, 0xf8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r14, qword [rsp + 0x50]
mov r15, qword [r14 + 0x10]
cmp r15, 0x1c
jbe 0x1400b0bd0
mov r13d, r15d
sub r15d, 1
mov rcx, r14
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
cmp r15d, 0x1b
ja 0x1400b082f
movzx edx, word [rsp + 0x80]
cmp dx, 2
je 0x1400b0b20
cmp dx, 0x17
jne 0x1400b0ae0
movzx r10d, word [0x14019d7ba]
mov r8, qword [0x14019d7ae]
lea rcx, [rsp + 0x80]
mov r9d, dword [0x14019d7b6]
mov qword [rsp + 0x8a], r8
mov dword [rcx + 0x12], r9d
mov word [rcx + 0x16], r10w
cmp byte [rsp + 0x88], 0xff
je 0x1400b0bc0
mov r11d, 0xeff
mov word [rsp + 0x88], r11w
lea r14, [rsp + 0xa0]
mov dword [rsp + 0x28], 2
mov qword [rsp + 0x20], 0
mov r9d, 0x40
mov edx, r13d
mov r8, r14
call sym.libvlccore.dll_vlc_getnameinfo
test eax, eax
jne 0x1400b0d90
lea rax, str.using_SAP_address:__s
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_stream_output_sap.c
mov qword [rsp + 0x28], rbx
mov edx, 3
mov rcx, rdi
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x20], 0x118
call sym.libvlccore.dll_vlc_Log
lea rcx, [0x1402a2880]
call sym.libvlccore.dll_vlc_mutex_lock
mov rbx, qword [0x1402a28b0]
test rbx, rbx
jne 0x1400b09bc
jmp 0x1400b0c10
mov rbx, qword [rbx]
test rbx, rbx
je 0x1400b0c10
lea rdx, [rbx + 0x44]
mov rcx, r14
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1400b09b0
lea r15, [rbx + 0x10]
mov rcx, r15
call sym.libvlccore.dll_vlc_mutex_lock
lea rcx, [0x1402a2880]
call sym.libvlccore.dll_vlc_mutex_unlock
mov ecx, 0x18
call sub.msvcrt.dll_malloc
test rax, rax
mov r14, rax
je 0x1400b0ac9
mov r8, qword [rbx + 0x118]
lea r13, [rsp + 0x60]
mov rcx, r13
mov qword [rax], r8
call sym.libvlccore.dll_vlc_memstream_open
cmp word [rbx + 0x88], 0x17
mov r9d, 0x20
mov edx, 0x30
mov rcx, r13
cmovne edx, r9d
call sym.libvlccore.dll_vlc_memstream_putc
xor edx, edx
mov rcx, r13
call sym.libvlccore.dll_vlc_memstream_putc
call sym.libvlccore.dll_mdate
lea rdx, [rsp + 0x4e]
mov r8d, 2
mov rcx, r13
mov word [rsp + 0x4e], ax
call sym.libvlccore.dll_vlc_memstream_write
cmp word [rbx + 0x88], 2
je 0x1400b0d60
lea r10, [rbx + 0x90]
lea rdx, [rsp + 0x58]
mov r8d, 0x10
mov rcx, r13
mov qword [rsp + 0x58], r10
call sym.libvlccore.dll_vlc_memstream_write
lea rdx, str.application_sdp
mov r8d, 0xf
mov rcx, r13
call sym.libvlccore.dll_vlc_memstream_write
xor edx, edx
mov rcx, r13
call sym.libvlccore.dll_vlc_memstream_putc
mov rdx, r12
mov rcx, r13
call sym.libvlccore.dll_vlc_memstream_puts
mov rcx, r13
call sym.libvlccore.dll_vlc_memstream_close
test eax, eax
je 0x1400b0d30
mov rcx, r14
xor r14d, r14d
call fcn.14016b5d8
mov rcx, r15
call sym.libvlccore.dll_vlc_mutex_unlock
jmp 0x1400b0866
lea rcx, str.Address_family__d_not_supported_by_SAP
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_stream_output_sap.c
mov dword [rsp + 0x38], edx
mov qword [rsp + 0x28], rbx
mov edx, 1
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x20], 0x108
mov rcx, rdi
call sym.libvlccore.dll_vlc_Log
xor r14d, r14d
jmp 0x1400b0866
mov r14d, dword [rsp + 0x84]
mov ecx, 0xffffff00
mov rsi, qword [sym.imp.WS2_32.dll_htonl]
call rsi
mov ecx, 0xe0000000
and eax, r14d
mov r15d, eax
call rsi
cmp r15d, eax
je 0x1400b0d84
mov ecx, 0xffff0000
call rsi
and eax, r14d
mov ecx, 0xefff0000
mov r15d, eax
call rsi
cmp r15d, eax
je 0x1400b0bf0
mov ecx, 0xfffc0000
call rsi
and eax, r14d
mov ecx, 0xefc00000
mov r15d, eax
call rsi
cmp r15d, eax
je 0x1400b0de4
mov ecx, 0xff000000
call rsi
and r14d, eax
mov ecx, 0xef000000
call rsi
cmp r14d, eax
jne 0x1400b0dd8
lea r15, str.Out_of_scope_multicast_address_not_supported_by_SAP
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 0xfe
mov qword [rsp + 0x30], r15
jmp 0x1400b0848
and byte [rsp + 0x89], 0xf
jmp 0x1400b0925
mov rdx, qword [r14 + 0x20]
lea rcx, [rsp + 0x80]
mov r8, r15
call sub.msvcrt.dll_memcpy
mov r15, qword [r14 + 0x10]
jmp 0x1400b08a3
mov ecx, 0xefffffff
call rsi
test eax, eax
je 0x1400b0ba0
mov dword [rsp + 0x84], eax
lea rcx, [rsp + 0x80]
jmp 0x1400b0925
mov dword [rsp + 0x20], 0x11
mov r9d, 0xff
mov r8d, 0x2693
mov rdx, r14
mov rcx, rdi
call sym.libvlccore.dll_net_ConnectDgram
cmp eax, 0xffffffff
mov r13d, eax
je 0x1400b0df9
mov ecx, 0x120
call sub.msvcrt.dll_malloc
test rax, rax
mov rbx, rax
je 0x1400b0df0
lea rcx, [rax + 0x44]
mov r8d, 0x40
mov rdx, r14
movsxd rsi, r13d
lea r15, [rbx + 0x10]
call fcn.1400c5d40
lea rdx, [rbx + 0x88]
lea r8, [rbx + 0x108]
mov rcx, rsi
mov dword [rbx + 0x10c], r13d
mov dword [rbx + 0x108], pe_nt_image_headers64
call qword [sym.imp.WS2_32.dll_getsockname]
lea rdx, str.sap_interval
mov r8d, 0x8030
mov rcx, rdi
call sym.libvlccore.dll_var_Create
lea r9, [rsp + 0x60]
lea rdx, str.sap_interval
mov r8d, 0x30
mov rcx, rdi
call sym.libvlccore.dll_var_GetChecked
mov edx, 0
test eax, eax
cmove rdx, qword [rsp + 0x60]
mov rcx, r15
mov dword [rbx + 0x110], edx
call sym.libvlccore.dll_vlc_mutex_init
lea rcx, [rbx + 0x40]
call sym.libvlccore.dll_vlc_cond_init
lea rcx, [rbx + 8]
lea rdx, [0x1400b06c0]
xor r9d, r9d
mov dword [rbx + 0x114], 0
mov qword [rbx + 0x118], 0
mov r8, rbx
call sym.libvlccore.dll_vlc_clone
test eax, eax
jne 0x1400b0e0d
mov rdi, qword [0x1402a28b0]
mov qword [0x1402a28b0], rbx
mov qword [rbx], rdi
jmp 0x1400b09d0
mov rax, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
lea rcx, [rbx + 0x40]
mov qword [r14 + 0x10], rax
mov qword [r14 + 8], rsi
add dword [rbx + 0x114], 1
mov qword [rbx + 0x118], r14
call sym.libvlccore.dll_vlc_cond_signal
jmp 0x1400b0ac9
lea r11, [rbx + 0x8c]
lea rdx, [rsp + 0x58]
mov r8d, 4
mov rcx, r13
mov qword [rsp + 0x58], r11
call sym.libvlccore.dll_vlc_memstream_write
jmp 0x1400b0a84
mov ecx, 0xe00000ff
call rsi
jmp 0x1400b0bf7
mov ecx, eax
xor r14d, r14d
call fcn.1400e7de0
lea rdx, [0x14019d81f]
mov r8, qword [str.main]
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_stream_output_sap.c
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x28], rbx
mov rcx, rdi
mov qword [rsp + 0x30], rdx
mov dword [rsp + 0x20], 0x111
mov edx, 1
call sym.libvlccore.dll_vlc_Log
jmp 0x1400b0866
mov ecx, 0xe0027ffe
call rsi
jmp 0x1400b0bf7
mov ecx, 0xefc3ffff
call rsi
jmp 0x1400b0bf7
movsxd rcx, r13d
call qword [sym.imp.WS2_32.dll_closesocket]
lea rcx, [0x1402a2880]
xor r14d, r14d
call sym.libvlccore.dll_vlc_mutex_unlock
jmp 0x1400b0866
mov r8, qword [str.main]
lea r12, str.unable_to_spawn_SAP_announce_thread
lea rcx, str.AddressCreate
lea r9, str._builds_videolan_vlc_extras_package_win32_.._.._.._src_stream_output_sap.c
mov edx, 1
mov dword [rsp + 0x20], 0x6e
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], r12
mov rcx, rdi
call sym.libvlccore.dll_vlc_Log
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, rbx
call fcn.14016b5d8
jmp 0x1400b0df9
call fcn.1400c4db0
nop
nop dword [rax + rax]
nop word cs:[rax + rax]