Function at 0x1400e4290
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, 0x698
movaps xmmword [rsp + 0x680], xmm6
mov r13d, edx
mov rsi, rcx
mov rax, qword [0x1402b7040]
xor rax, rsp
mov qword [rsp + 0x678], rax
mov rbp, qword [rcx]
mov qword [rsp + 0x58], 0xffffffffffffffff
xorps xmm0, xmm0
movups xmmword [rsp + 0x65f], xmm0
movaps xmmword [rsp + 0x650], xmm0
movaps xmmword [rsp + 0x640], xmm0
movaps xmm6, xmmword [0x140275a70]
movaps xmmword [rsp + 0x630], xmm6
movaps xmmword [rsp + 0x620], xmm6
movaps xmmword [rsp + 0x610], xmm6
movaps xmmword [rsp + 0x600], xmm6
movaps xmmword [rsp + 0x5f0], xmm6
movaps xmmword [rsp + 0x5e0], xmm6
movaps xmmword [rsp + 0x5d0], xmm6
movaps xmmword [rsp + 0x5c0], xmm6
mov dword [rsp + 0x54], 0xaaaaaaaa
lea r15, [rsp + 0x1b0]
mov r8d, 0x401
mov rcx, r15
mov dl, 0xaa
call fcn.1401d8720
mov r12, qword [rbp + 0xc38]
mov qword [rsp + 0x48], 0
lea rcx, [rsp + 0xb0]
mov r8d, 0x100
mov dl, 0xaa
call fcn.1401d8720
test r12, r12
je 0x1400e438d
mov rcx, r12
call fcn.1401c0bd0
cmp rax, 2
jae 0x1400e4567
xor r14d, r14d
xor r12d, r12d
xor ebx, ebx
lea r8, [rsp + 0x54]
mov dword [r8], Ordinal_133
mov rcx, qword [rsi + 0x4c0]
lea rdx, [rsp + 0x5c0]
call qword [sym.imp.WS2_32.dll_getsockname]
test eax, eax
je 0x1400e4447
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, [rsp + 0xb0]
mov r8d, 0x100
mov ecx, eax
call fcn.1400d2920
lea rdx, str.getsockname___failed:__s
mov rcx, rbp
mov r8, rax
call fcn.1400b8d80
mov rax, qword [fcn.1400581d0]
mov rcx, r14
call qword [0x1402a7b00]
mov ebx, 0x1e
mov rcx, qword [rsp + 0x678]
xor rcx, rsp
cmp rcx, qword [0x1402b7040]
je 0x1400e441a
call fcn.14019f290
int3
mov eax, ebx
movaps xmm6, xmmword [rsp + 0x680]
add rsp, 0x698
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rdx, str.failed_to_resolve_the_address_provided_to_PORT:__s
mov rcx, rbp
mov r8, r15
jmp 0x1400e43e6
movzx ecx, word [rsp + 0x5c0]
cmp ecx, 0x17
je 0x1400e4464
lea rdx, [rsp + 0x5c4]
mov r9d, 0x401
jmp 0x1400e447f
lea rdx, [rsp + 0x5c8]
lea r15, [rsp + 0x1b0]
mov r9d, 0x401
mov ecx, Ordinal_26
mov r8, r15
call fcn.1400f8d30
xor edi, edi
mov dword [rsp + 0x3c], r13d
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, r15
xor r8d, r8d
xor r9d, r9d
call fcn.1400d0b20
cmp eax, 1
jne 0x1400e44bb
lea rdx, [rsp + 0x48]
mov rcx, rsi
call fcn.1400b7870
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x1400e4438
mov r13, qword [rdx]
mov rcx, rbp
call fcn.1400d0f10
test r13, r13
je 0x1400e4438
lea rax, [rsi + 0xa00]
mov qword [rsp + 0x40], rax
mov rax, qword [fcn.1400581d0]
mov rcx, r14
call qword [0x1402a7b00]
lea r14, [rsp + 0x58]
mov qword [r14], 0xffffffffffffffff
mov r15, qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, rsi
mov rdx, r13
xor r8d, r8d
mov r9, r14
call fcn.1400bfc80
test eax, eax
je 0x1400e469a
call r15
mov r13, qword [r13 + 0x28]
test r13, r13
jne 0x1400e450c
lea rdx, [rsp + 0xb0]
mov r8d, 0x100
mov ecx, eax
call fcn.1400d2920
lea rdx, str.socket_failure:__s
mov rcx, rbp
mov r8, rax
call fcn.1400b8d80
jmp 0x1400e43fb
mov ebx, reloc.WLDAP32.dll_Ordinal_27
jmp 0x1400e4400
cmp rax, 0x42
mov ecx, 0x41
cmovae rcx, rax
mov rax, qword [fcn.14009eba0]
inc rcx
mov edx, 1
call qword [0x1402a7b00]
test rax, rax
je 0x1400e455d
mov r14, rax
movzx eax, byte [r12]
cmp eax, 0x3a
je 0x1400e4643
mov rcx, r12
cmp eax, 0x5b
je 0x1400e461a
mov edx, 0x3a
call fcn.14019d90c
test rax, rax
je 0x1400e45d3
mov rbx, rax
lea r8, [rsp + 0x5c0]
mov ecx, Ordinal_26
mov rdx, r12
call fcn.1400cffa0
cmp eax, 1
jne 0x1400e462f
mov rcx, r14
mov rdx, r12
call fcn.1401c0470
xor ebx, ebx
xor r12d, r12d
xor eax, eax
cmp bx, r12w
cmova ebx, eax
cmova r12d, eax
cmp byte [r14], 0
je 0x1400e4395
mov rax, qword [rsi + 0x2e0]
mov rcx, qword [rax + 0x20]
call fcn.1400f9260
mov dil, 1
mov r15, r14
jmp 0x1400e4489
mov r12d, ebx
jmp 0x1400e45e3
mov edx, 0x5d
call fcn.14019d90c
test rax, rax
je 0x1400e45de
mov rbx, rax
inc r12
mov r8, rbx
sub r8, r12
mov rcx, r14
mov rdx, r12
call fcn.1401c0d20
mov r12, rbx
mov rcx, r12
mov edx, 0x3a
call fcn.14019d90c
test rax, rax
je 0x1400e45de
mov r12, rax
mov rcx, rax
inc rcx
xor edx, edx
mov r8d, 0xa
call fcn.14019dd2c
mov ebx, eax
mov rcx, r12
mov edx, Ordinal_46
call fcn.14019d90c
test rax, rax
je 0x1400e4615
inc rax
mov rcx, rax
xor edx, edx
mov r8d, 0xa
call fcn.14019dd2c
mov r12d, eax
jmp 0x1400e45e3
mov qword [rsp + 0x30], rbp
mov rdx, qword [r13 + 0x20]
movsxd r8, dword [r13 + 0x10]
lea rcx, [rsp + 0x5c0]
call fcn.1401d8080
mov eax, dword [r13 + 0x10]
mov dword [rsp + 0x54], eax
cmp bx, r12w
jbe 0x1400e46e5
lea rdx, str.bind___failed__we_ran_out_of_ports_
mov rcx, qword [rsp + 0x30]
call fcn.1400b8d80
mov rdx, qword [rsp + 0x58]
mov rcx, rsi
call fcn.1400bed00
jmp 0x1400e43fb
lea r14, [rsp + 0x5c0]
mov ebp, ebx
jmp 0x1400e46f9
inc ebp
cmp bp, r12w
ja 0x1400e46c2
mov ecx, ebp
call qword [sym.imp.WS2_32.dll_htons]
mov word [rsp + 0x5c2], ax
mov r8d, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x58]
mov rdx, r14
call qword [sym.imp.WS2_32.dll_bind]
test eax, eax
je 0x1400e4777
call r15
cmp eax, 0x2741
sete cl
and cl, dil
cmp cl, 1
je 0x1400e47d2
cmp eax, 0xd
je 0x1400e46f1
cmp eax, 0x2740
je 0x1400e46f1
movzx ebx, bp
lea rdx, [rsp + 0xb0]
mov r8d, 0x100
mov ecx, eax
call fcn.1400d2920
lea rdx, str.bind_port_hu__failed:__s
mov rcx, qword [rsp + 0x30]
mov r8d, ebx
mov r9, rax
call fcn.1400b8d80
jmp 0x1400e46d3
lea r8, [rsp + 0x54]
mov dword [r8], Ordinal_133
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x5c0]
call qword [sym.imp.WS2_32.dll_getsockname]
test eax, eax
je 0x1400e4830
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, [rsp + 0xb0]
mov r8d, 0x100
mov ecx, eax
call fcn.1400d2920
lea rdx, str.getsockname___failed:__s
mov rcx, qword [rsp + 0x30]
mov r8, rax
call fcn.1400b8d80
jmp 0x1400e46d3
movzx ebp, bp
mov r8d, 0x100
mov ecx, 0x2741
lea rdx, [rsp + 0xb0]
call fcn.1400d2920
mov rcx, qword [rsp + 0x30]
lea rdx, str.bind_port_hu__on_non_local_address_failed:__s_n
mov r8d, ebp
mov r9, rax
call fcn.1400b8a80
mov dword [rsp + 0x54], Ordinal_133
mov rcx, qword [rsi + 0x4c0]
mov rdx, r14
lea r8, [rsp + 0x54]
call qword [sym.imp.WS2_32.dll_getsockname]
xor edi, edi
test eax, eax
je 0x1400e46ed
jmp 0x1400e479e
mov rcx, qword [rsp + 0x58]
mov edx, 1
call qword [sym.imp.WS2_32.dll_listen]
test eax, eax
mov r14, qword [rsp + 0x30]
je 0x1400e4873
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, [rsp + 0xb0]
mov r8d, 0x100
mov ecx, eax
call fcn.1400d2920
lea rdx, str.socket_failure:__s
mov rcx, r14
jmp 0x1400e47c5
mov ecx, dword [r13 + 4]
cmp ecx, 2
je 0x1400e4888
cmp ecx, 0x17
jne 0x1400e48a4
mov edx, 8
jmp 0x1400e488d
mov edx, 4
add rdx, qword [r13 + 0x20]
lea r8, [rsp + 0x640]
mov r9d, 0x2f
call fcn.1400f8d30
cmp byte [rsi + 0x667], 0
jne 0x1400e48bd
cmp byte [rsi + 0x65f], 1
jne 0x1400e48bd
mov byte [rsi + 0x667], 1
mov edi, 2
mov ebp, dword [rsp + 0x3c]
cmp ebp, 2
je 0x1400e4a7b
mov rbx, qword [sym.imp.WS2_32.dll_ntohs]
jmp 0x1400e48fa
movzx ecx, word [rsp + 0x5c2]
call rbx
test ebp, ebp
je 0x1400e49ee
cmp ebp, 1
je 0x1400e4936
inc ebp
cmp ebp, 2
je 0x1400e4a7b
test ebp, ebp
jne 0x1400e4907
cmp byte [rsi + 0x667], 0
je 0x1400e48ef
cmp ebp, 1
setne cl
movzx eax, word [rsp + 0x5c0]
cmp ax, 2
sete dl
or dl, cl
cmp dl, 1
jne 0x1400e4a7b
movzx eax, ax
cmp eax, 0x17
je 0x1400e48d8
cmp eax, 2
je 0x1400e48d8
jmp 0x1400e48ef
lea rcx, [rsp + 0x60]
movaps xmmword [rcx + 0x30], xmm6
movaps xmmword [rcx + 0x20], xmm6
movaps xmmword [rcx + 0x10], xmm6
movaps xmmword [rcx], xmm6
mov dword [rcx + 0x3f], 0xaaaaaaaa
lea rdx, [rsp + 0x640]
jmp 0x1400e4969
mov r9d, r8d
mov byte [rcx], r9b
inc rcx
inc rdx
je 0x1400e497b
movzx r8d, byte [rdx]
mov r9b, Ordinal_46
cmp r8d, 0x2e
je 0x1400e495e
test r8d, r8d
jne 0x1400e495b
mov byte [rcx], 0
movzx r9d, ax
movzx eax, r9b
shr r9d, 8
mov dword [rsp + 0x20], eax
lea r8, str.__d__d
mov edx, 0x14
call fcn.1400c5cf0
lea rdx, [0x14027d15e]
lea r8, str.PORT
lea r9, [rsp + 0x60]
mov rcx, qword [rsp + 0x40]
call fcn.140100a10
test eax, eax
je 0x1400e4a72
mov ebx, eax
mov ecx, eax
call fcn.1400d2900
lea rdx, str.Failure_sending_PORT_command:__s
mov rcx, r14
mov r8, rax
call fcn.1400b8d80
mov rdx, qword [rsp + 0x58]
mov rcx, rsi
call fcn.1400bed00
jmp 0x1400e4a63
movzx eax, ax
xor r9d, r9d
cmp word [rsp + 0x5c0], 2
setne r9b
inc r9d
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0x640]
mov qword [rsp + 0x20], rax
lea rdx, str._s__d_s_hu
lea r8, str.EPRT
mov rcx, qword [rsp + 0x40]
call fcn.140100a10
test eax, eax
je 0x1400e4a79
mov ebx, eax
mov ecx, eax
call fcn.1400d2900
lea rdx, str.Failure_sending_EPRT_command:__s
mov rcx, r14
mov r8, rax
call fcn.1400b8d80
mov rdx, qword [rsp + 0x58]
mov rcx, rsi
call fcn.1400bed00
mov dword [rsi + 0xaac], 1
mov dword [rsi + 0xab8], 0
jmp 0x1400e4400
mov edi, 1
jmp 0x1400e4a7b
xor edi, edi
mov dword [rsi + 0xaac], edi
mov rdx, qword [rsi + 0x4c8]
cmp rdx, 0xffffffffffffffff
je 0x1400e4a96
mov rcx, rsi
call fcn.1400bed00
mov rax, qword [rsp + 0x58]
mov qword [rsi + 0x4c8], rax
mov byte [rsi + 0x653], 1
mov dword [rsi + 0xab8], 0x1c
xor ebx, ebx
jmp 0x1400e4400