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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r13
push r14
sub rsp, 0x30
mov rsi, qword [rcx + 0x260]
mov r12, qword [rcx + 0xb8]
movzx ebp, word [rcx + 0x270]
mov ebx, r8d
mov r14d, edx
mov rdi, rcx
mov rcx, qword [0x18008a130]
lea r13, [0x18008a130]
cmp rcx, r13
je 0x18002a9cb
test dword [rcx + 0x1c], 0x400
jne 0x1800553ec
xor edx, edx
test ebx, ebx
jne 0x180055514
test r14d, r14d
je 0x180055414
add rsi, r14
sub ebp, r14d
jne 0x18002aa34
lea r14, [rdi + 0x274]
cmp rsi, r14
ja 0x18002aa69
movzx ecx, word [rdi + 0x272]
call qword [sym.imp.WS2_32.dll_ntohs]
mov word [rdi + 0x272], ax
cmp ax, 0xc
jb 0x180055478
movzx ebp, ax
mov rcx, qword [0x18008a130]
cmp rcx, r13
je 0x18002aa2c
test dword [rcx + 0x1c], 0x200
jne 0x1800554b6
cmp ebp, dword [rdi + 0x21c]
ja 0x18002aa69
mov rcx, rdi
mov qword [rdi + 0x260], rsi
mov word [rdi + 0x270], bp
call sym.DNSAPI.dll_Dns_RecvTcp
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r14
pop r13
pop r12
ret
lea r8, [rdi + 0x8c]
lea rdx, [rdi + 0x6c]
mov rcx, r12
mov dword [r8], 0x20
call qword [sym.imp.WS2_32.dll_getsockname]
cmp eax, 0xffffffff
je 0x1800554f3
and dword [rdi + 0xac], 0
and qword [rdi + 0x260], 0
mov byte [rdi + 0x258], 1
movzx eax, word [r14]
xor edx, edx
mov rcx, rdi
rol ax, 8
lea r8d, [rdx + 1]
mov word [r14], ax
movzx eax, word [r14 + 4]
rol ax, 8
mov word [r14 + 4], ax
movzx eax, word [r14 + 6]
rol ax, 8
mov word [r14 + 6], ax
movzx eax, word [r14 + 8]
rol ax, 8
mov word [r14 + 8], ax
movzx eax, word [r14 + 0xa]
rol ax, 8
mov word [r14 + 0xa], ax
call fcn.180015be0
mov rax, qword [0x18008a130]
test byte [rax + 0x1c], 0x80
jne 0x1800554de
xor eax, eax
jmp 0x18002aa4a
mov rcx, qword [rcx + 0x10]
lea r8, [0x180021620]
mov edx, 0x79
mov r9d, ebx
mov dword [rsp + 0x20], ebp
call fcn.18005b9d0
mov rcx, qword [0x18008a130]
jmp 0x18002a9cb
cmp rcx, r13
je 0x180055443
test dword [rcx + 0x1c], 0x200
je 0x180055443
mov rcx, qword [rcx + 0x10]
lea r8, [0x180021620]
mov edx, 0x7e
mov r9d, r12d
call fcn.180058fb0
mov rcx, qword [0x18008a130]
xor edx, edx
lea rax, [rdi + 0x272]
cmp word [rax], dx
jne 0x180055460
cmp rsi, rax
jne 0x180055460
mov ebx, 0x251f
jmp 0x180055661
cmp rcx, r13
je 0x1800554a8
test dword [rcx + 0x1c], 0x10000000
je 0x1800554a8
mov edx, 0x7f
mov r9d, ebp
jmp 0x180055496
mov rcx, qword [0x18008a130]
cmp rcx, r13
je 0x1800554a8
test dword [rcx + 0x1c], 0x400
je 0x1800554a8
movzx r9d, ax
mov edx, 0x7a
mov rcx, qword [rcx + 0x10]
lea r8, [0x180021620]
call fcn.180058fb0
nop
nop
lea rcx, [rdi + 0x2c]
call fcn.180069264
jmp 0x18005565c
mov rcx, qword [rcx + 0x10]
lea r8, [0x180021620]
mov edx, 0x7b
mov r9d, ebp
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], r12d
call fcn.180061810
nop
jmp 0x18002aa2c
lea r8, [0x180055500]
mov r9, rdi
call fcn.18006ae4c
nop
jmp 0x18002ab06
mov rcx, qword [0x18008a130]
jmp 0x180055514
lea rax, [rdi + 0x272]
cmp rsi, rax
jne 0x180055570
lea eax, [rbx - 0x2745]
test eax, 0xfffffffa
jne 0x180055570
cmp ebx, 0x2749
je 0x180055570
nop
nop
nop
cmp rcx, r13
je 0x180055658
test dword [rcx + 0x1c], 0x200
je 0x180055658
mov rcx, qword [rcx + 0x10]
lea r8, [0x180021620]
mov edx, 0x7c
mov r9d, ebx
mov dword [rsp + 0x20], r12d
call fcn.18005b9d0
jmp 0x180055658
mov r14d, 0x272
cmp rcx, r13
je 0x1800555aa
test dword [rcx + 0x1c], 0x10000000
je 0x1800555aa
mov rcx, qword [rcx + 0x10]
mov r9d, esi
lea r8, [0x180021620]
sub r9d, edi
mov edx, 0x7d
mov dword [rsp + 0x28], ebx
sub r9d, r14d
mov dword [rsp + 0x20], ebp
call fcn.18005b3d8
sub rsi, rdi
lea rdx, [0x1800555e0]
lea rcx, [0x180055628]
sub rsi, r14
mov r8, r12
mov dword [rsp + 0x28], ebx
mov r9, rsi
mov dword [rsp + 0x20], ebp
call fcn.18007c138
nop
jmp 0x180055658
test ebx, ebx
jne 0x180055661
mov ebx, 0x251e
mov eax, ebx
jmp 0x18002aa4a