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

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x140
mov rdi, rdx
mov rsi, rcx
mov ecx, 0x18
mov edx, 8
call fcn.14011dfe2
mov ecx, 1
mov qword [rax], rcx
mov qword [rax + 8], rcx
mov byte [rax + 0x10], 0
mov word [rsp + 0xf8], 1
and qword [rsp + 0xe0], 0
mov qword [rsp + 0xf0], rax
mov rcx, rdi
call fcn.140123a2b
mov rcx, qword [rax]
xorps xmm0, xmm0
lea rdx, [rsp + 0x60]
movaps xmmword [rdx + 0x70], xmm0
movaps xmmword [rdx + 0x60], xmm0
movaps xmmword [rdx + 0x50], xmm0
movaps xmmword [rdx + 0x40], xmm0
movaps xmmword [rdx + 0x30], xmm0
movaps xmmword [rdx + 0x20], xmm0
movaps xmmword [rdx + 0x10], xmm0
movaps xmmword [rdx], xmm0
lea r8, [rsp + 0x48]
mov dword [r8], pe_nt_image_headers64
call sub.ws2_32.dll_getpeername
cmp eax, 0xffffffff
je 0x140069c4b
mov eax, dword [rsp + 0x48]
movzx ecx, word [rsp + 0x60]
cmp ecx, 0x17
je 0x140069c5a
cmp ecx, 2
jne 0x140069caa
cmp eax, 0xf
jbe 0x140069f5a
mov eax, dword [rsp + 0x64]
movzx ecx, word [rsp + 0x62]
and word [rsp + 0x20], 0
rol cx, 8
mov word [rsp + 0x26], cx
mov dword [rsp + 0x22], eax
jmp 0x140069cbd
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
jmp 0x140069cb1
cmp eax, 0x1b
jbe 0x140069f6f
movzx eax, word [rsp + 0x62]
rol ax, 8
mov ecx, dword [rsp + 0x64]
mov edx, dword [rsp + 0x78]
movups xmm0, xmmword [rsp + 0x68]
movups xmmword [rsp + 0x4e], xmm0
mov word [rsp + 0x20], 1
movups xmm0, xmmword [rsp + 0x4c]
movups xmmword [rsp + 0x22], xmm0
movzx r8d, word [rsp + 0x5c]
mov word [rsp + 0x32], r8w
mov dword [rsp + 0x34], ecx
mov dword [rsp + 0x38], edx
mov word [rsp + 0x3c], ax
jmp 0x140069cbd
lea rax, str.invalid_argument
mov qword [rsp + 0x28], rax
mov word [rsp + 0x20], 2
mov rcx, rdi
call fcn.140123a2b
mov rcx, qword [rax]
xorps xmm0, xmm0
lea rdx, [rsp + 0x60]
movaps xmmword [rdx + 0x70], xmm0
movaps xmmword [rdx + 0x60], xmm0
movaps xmmword [rdx + 0x50], xmm0
movaps xmmword [rdx + 0x40], xmm0
movaps xmmword [rdx + 0x30], xmm0
movaps xmmword [rdx + 0x20], xmm0
movaps xmmword [rdx + 0x10], xmm0
movaps xmmword [rdx], xmm0
lea r8, [rsp + 0x4c]
mov dword [r8], pe_nt_image_headers64
call sub.ws2_32.dll_getsockname
cmp eax, 0xffffffff
je 0x140069d3d
mov eax, dword [rsp + 0x4c]
movzx ecx, word [rsp + 0x60]
cmp ecx, 0x17
je 0x140069d50
cmp ecx, 2
jne 0x140069d85
cmp eax, 0xf
jbe 0x140069f89
mov eax, dword [rsp + 0x64]
movzx ecx, word [rsp + 0x62]
rol cx, 8
movzx r10d, cx
shl r10, 0x20
or r10, rax
xor ecx, ecx
jmp 0x140069d90
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov cx, 2
jmp 0x140069d90
cmp eax, 0x1b
jbe 0x140069f9e
movzx edx, word [rsp + 0x62]
rol dx, 8
mov r9d, dword [rsp + 0x64]
mov r8d, dword [rsp + 0x78]
mov r10d, dword [rsp + 0x68]
shl r10, 0x10
mov rax, qword [rsp + 0x6c]
mov cx, 1
mov r11d, dword [rsp + 0x74]
jmp 0x140069d90
mov cx, 2
lea rax, str.invalid_argument
movups xmm0, xmmword [rsp + 0x20]
movups xmm1, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x70], xmm1
movaps xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x80], cx
mov dword [rsp + 0x82], r10d
shr r10, 0x20
mov word [rsp + 0x86], r10w
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x90], r11d
mov dword [rsp + 0x94], r9d
mov dword [rsp + 0x98], r8d
mov word [rsp + 0x9c], dx
cmp word [rsp + 0x60], 2
je 0x140069eb3
cmp cx, 2
je 0x140069eb3
lea rax, [rsp + 0x80]
movaps xmm0, xmmword [rax - 0x20]
movaps xmm1, xmmword [rax - 0x10]
movaps xmmword [rsp + 0x110], xmm1
movaps xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x130], xmm1
movups xmm0, xmmword [rsp + 0xe0]
movups xmm1, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x20], xmm0
movaps xmmword [rsp + 0x30], xmm1
mov rdi, qword [rsp + 0x20]
test rdi, rdi
je 0x140069ecc
mov rbx, qword [rsp + 0x28]
mov ecx, 0x50
mov edx, 8
call fcn.14011dfe2
movaps xmm0, xmmword [rsp + 0x100]
movaps xmm1, xmmword [rsp + 0x110]
movaps xmm2, xmmword [rsp + 0x120]
movaps xmm3, xmmword [rsp + 0x130]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov qword [rax + 0x40], rdi
mov qword [rax + 0x48], rbx
mov qword [rsp + 0x20], rax
lea rax, [0x14027fc60]
jmp 0x140069f25
movups xmm0, xmmword [rsp + 0xe0]
movups xmm1, xmmword [rsp + 0xf0]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
jmp 0x140069f44
mov ecx, 0x40
mov edx, 4
call fcn.14011dfe2
mov rdi, rax
movaps xmm0, xmmword [rsp + 0x100]
movaps xmm1, xmmword [rsp + 0x110]
movaps xmm2, xmmword [rsp + 0x120]
movaps xmm3, xmmword [rsp + 0x130]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov rdx, qword [rsp + 0x28]
xor ecx, ecx
call fcn.1400079f7
mov qword [rsp + 0x20], rdi
lea rax, [0x14027fc88]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x28]
movaps xmm0, xmmword [rsp + 0x30]
movups xmmword [rsi + 0x10], xmm0
mov qword [rsi], rax
mov qword [rsi + 8], rcx
lea rcx, [rsp + 0x60]
call fcn.14006a057
nop
add rsp, 0x140
pop rbx
pop rdi
pop rsi
ret
lea r8, str.library_std_src_sys_common_net.rsassertion_failed:_len___mem::size_of::_c::sockaddr_in___
mov edx, 0x39
lea rcx, [0x1402a1b22]
jmp 0x140069f82
lea r8, str.library_std_src_sys_common_net.rsassertion_failed:_len___mem::size_of::_c::sockaddr_in___
mov edx, 0x3a
lea rcx, str.assertion_failed:_len___mem::size_of::_c::sockaddr_in6___
call fcn.140036dc0
jmp 0x140069fb6
lea r8, str.library_std_src_sys_common_net.rsassertion_failed:_len___mem::size_of::_c::sockaddr_in___
mov edx, 0x39
lea rcx, [0x1402a1b22]
jmp 0x140069fb1
lea r8, str.library_std_src_sys_common_net.rsassertion_failed:_len___mem::size_of::_c::sockaddr_in___
mov edx, 0x3a
lea rcx, str.assertion_failed:_len___mem::size_of::_c::sockaddr_in6___
call fcn.140036dc0
ud2