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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x258
mov r15d, r9d
mov qword [rsp + 0x30], r8
mov r14, rdx
mov rsi, rcx
mov rax, qword [0x140516758]
xor rax, rsp
mov qword [rsp + 0x250], rax
mov qword [rsp + 0x48], 0
movzx ebp, word [rcx + 0x228]
movzx edi, word [rcx + 0x22a]
mov r12, qword [rcx + 0x758]
xor ebx, ebx
test r12, r12
jne 0x140457d91
test bp, bp
je 0x14045827f
xorps xmm0, xmm0
movaps xmmword [rsp + 0x240], xmm0
movaps xmmword [rsp + 0x230], xmm0
movaps xmmword [rsp + 0x220], xmm0
movaps xmmword [rsp + 0x210], xmm0
movaps xmmword [rsp + 0x200], xmm0
movaps xmmword [rsp + 0x1f0], xmm0
movaps xmmword [rsp + 0x1e0], xmm0
movaps xmmword [rsp + 0x1d0], xmm0
test r12, r12
je 0x140457eb1
mov rcx, r12
call fcn.1404bc040
cmp rax, 0xfe
ja 0x140457eb1
xorps xmm0, xmm0
movaps xmmword [rsp + 0x1c0], xmm0
movaps xmmword [rsp + 0x1b0], xmm0
movaps xmmword [rsp + 0x1a0], xmm0
movaps xmmword [rsp + 0x190], xmm0
movaps xmmword [rsp + 0x180], xmm0
movaps xmmword [rsp + 0x170], xmm0
movaps xmmword [rsp + 0x160], xmm0
movaps xmmword [rsp + 0x150], xmm0
movaps xmmword [rsp + 0x140], xmm0
movaps xmmword [rsp + 0x130], xmm0
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x110], xmm0
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
lea rcx, [0x1404f9127]
mov r8d, 3
mov rdx, r12
call fcn.1404bc100
mov ebx, eax
test eax, eax
je 0x140457eed
lea rcx, str.host_
mov r8d, 5
mov rdx, r12
call fcn.1404bc100
test eax, eax
jne 0x140457ef1
add r12, 5
jmp 0x140457f7a
cmp r15d, 2
je 0x1404580ca
xor r12d, r12d
cmp r15d, 0x17
jne 0x1404580ea
mov word [rsp + 0x1d0], reloc.WS2_32.dll_socket
mov ecx, ebp
call qword [sym.imp.WS2_32.dll_htons]
mov word [rsp + 0x1d2], ax
mov r12d, 0x1c
jmp 0x1404580ea
add r12, 3
mov edx, dword [rsp + 0x2c0]
mov r8d, dword [r14 + 0x700]
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], 0x100
mov ecx, r15d
mov r9, r12
call fcn.140026fd0
cmp eax, 2
je 0x140457f41
cmp eax, 1
je 0x1404580a5
test eax, eax
jne 0x140457f72
test ebx, ebx
jne 0x140457f7a
lea rdx, str.Couldnt_bind_to_interface__s
jmp 0x140458095
cmp byte [rsi + 0xaaf], 0
je 0x14045804b
mov dword [rsp + 0x20], r15d
lea rdx, str.Local_Interface__s_is_ip__s_using_address_family__i
lea r9, [rsp + 0xd0]
mov rcx, rsi
mov r8, r12
call fcn.14043cd70
jmp 0x14045804b
test ebx, ebx
je 0x140458087
movzx ebx, byte [r14 + 0x70c]
cmp r15d, 2
je 0x140457f92
cmp r15d, 0x17
jne 0x140457f9b
mov al, 2
jmp 0x140457f94
mov al, 1
mov byte [r14 + 0x70c], al
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, r12
mov r8d, 0x50
xor r9d, r9d
call fcn.140461b20
cmp eax, 1
jne 0x140457fcb
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.14043f8a0
mov byte [r14 + 0x70c], bl
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x140458087
mov rcx, qword [rax]
lea rbx, [rsp + 0xd0]
mov r8d, 0x100
mov rdx, rbx
call fcn.140461340
cmp byte [rsi + 0xaaf], 0
je 0x14045802b
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov eax, dword [rax + 4]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbx
lea rdx, str.Name__s_family__i_resolved_to__s_family__i
mov rcx, rsi
mov r8, r12
mov r9d, r15d
call fcn.14043cd70
mov rdx, qword [rsp + 0x48]
mov rcx, rsi
call fcn.140461ff0
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax]
mov eax, 1
cmp dword [rcx + 4], r15d
jne 0x1404580a5
xor r12d, r12d
cmp r15d, 2
je 0x1404580ac
cmp r15d, 0x17
jne 0x1404580ea
lea rcx, [rsp + 0xd0]
mov edx, Ordinal_41
call fcn.1404a4048
test rax, rax
je 0x1404582a5
mov rbx, rax
inc rbx
mov byte [rax], 0
jmp 0x1404582a7
mov byte [rsi + 0x1367], 0
lea rdx, str.Couldnt_bind_to__s
mov rcx, rsi
mov r8, r12
call fcn.14043cca0
mov eax, Ordinal_46
mov ebx, eax
jmp 0x14045827f
lea r8, [rsp + 0x1d4]
lea rdx, [rsp + 0xd0]
mov ecx, 2
call fcn.1404879c0
test eax, eax
jle 0x1404580ea
mov word [rsp + 0x1d0], 2
mov ecx, ebp
call qword [sym.imp.WS2_32.dll_htons]
mov word [rsp + 0x1d2], ax
mov r12d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x1d0]
mov rcx, qword [rsp + 0x30]
mov r8d, r12d
call qword [sym.imp.WS2_32.dll_bind]
test eax, eax
mov qword [rsp + 0x38], r14
js 0x1404581a0
mov dword [rsp + 0x44], Ordinal_133
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x44]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.WS2_32.dll_getsockname]
test eax, eax
js 0x140458216
test rsi, rsi
je 0x14045818d
cmp byte [rsi + 0xaaf], 0
je 0x14045818d
movzx r8d, bp
lea rdx, str.Local_port:__hu
mov rcx, rsi
call fcn.14043cd70
mov rax, qword [rsp + 0x38]
mov byte [rax + 0x2de], 1
xor ebx, ebx
jmp 0x14045827f
movzx r15d, bp
inc r15d
mov r14, qword [sym.imp.WS2_32.dll_ntohs]
lea r13, [rsp + 0x1d0]
mov rbx, qword [sym.imp.WS2_32.dll_bind]
jmp 0x1404581ea
mov ecx, r15d
call r14
mov word [rsp + 0x1d2], ax
mov rcx, qword [rsp + 0x30]
mov rdx, r13
mov r8d, r12d
call rbx
inc r15d
inc ebp
dec edi
test eax, eax
jns 0x14045810d
cmp edi, 2
jl 0x140458242
test r15w, r15w
je 0x140458242
cmp byte [rsi + 0xaaf], 0
je 0x1404581c0
movzx r8d, r15w
dec r8d
mov rcx, rsi
lea rdx, str.Bind_to_local_port__d_failed__trying_next
call fcn.14043cd70
jmp 0x1404581c0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edi, eax
mov dword [rsi + 0xd74], eax
lea rdx, [rsp + 0xd0]
mov r8d, 0x100
mov ecx, eax
call fcn.1404702f0
lea rdx, str.getsockname___failed_with_errno__d:__s
jmp 0x14045826c
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edi, eax
mov dword [rsi + 0xd74], eax
lea rdx, [rsp + 0xd0]
mov r8d, 0x100
mov ecx, eax
call fcn.1404702f0
lea rdx, str.bind_failed_with_errno__d:__s
mov rcx, rsi
mov r8d, edi
mov r9, rax
call fcn.14043cca0
mov ebx, Ordinal_46
mov rcx, qword [rsp + 0x250]
xor rcx, rsp
call fcn.14049f400
mov eax, ebx
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor ebx, ebx
lea r8, [rsp + 0x1d8]
lea rdx, [rsp + 0xd0]
mov ecx, reloc.WS2_32.dll_socket
call fcn.1404879c0
mov r12d, 0x1c
test eax, eax
jle 0x1404580ea
mov word [rsp + 0x1d0], reloc.WS2_32.dll_socket
mov ecx, ebp
call qword [sym.imp.WS2_32.dll_htons]
mov word [rsp + 0x1d2], ax
test rbx, rbx
je 0x1404580ea
mov rcx, rbx
xor edx, edx
mov r8d, 0xa
call fcn.1404bce1c
mov dword [rsp + 0x1e8], eax
jmp 0x1404580ea