Function at 0x14005bed0
Capabilities:
Resolve dns

Disassembly:
push rbp
push rsi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3f8]
sub rsp, 0x4f8
mov rax, qword [0x1400ec008]
xor rax, rsp
mov qword [rbp + 0x3e0], rax
mov r13, qword [r8]
xor r12d, r12d
mov qword [rsp + 0x78], rcx
mov rsi, rcx
mov rcx, qword [rbp + 0x450]
mov r14, r9
mov dword [rsp + 0x60], r12d
mov r15, r8
test r13, r13
jne 0x14005bf33
lea rcx, str.No_forward_host_name.
call fcn.140046b30
xor eax, eax
jmp 0x14005c473
or rax, 0xffffffffffffffff
inc rax
cmp byte [rax + r13], r12b
jne 0x14005bf37
cmp rax, 0x401
jb 0x14005bf5b
lea rcx, str.Forward_host_name_too_long.
call fcn.140046b30
xor eax, eax
jmp 0x14005c473
mov qword [rsp + 0x20], rcx
lea r8, [rsp + 0x60]
mov rcx, rsi
mov qword [rsp + 0x538], rbx
xor r9d, r9d
mov qword [rsp + 0x4f0], rdi
mov rdx, r13
call fcn.14005bd30
mov ebx, dword [rsp + 0x60]
lea rcx, [0x1400cc4b0]
test rax, rax
mov qword [rsp + 0x70], rax
mov rdi, rax
lea rdx, str.channel_setup_fwd_listener_tcpip
cmove rax, rcx
mov r9d, ebx
lea rcx, str._s:_type__d_wildcard__d_addr__s
mov qword [rsp + 0x20], rax
mov r8d, inet_ntoa
call fcn.140046c70
mov r9d, dword [r15 + 8]
lea r8, [0x1400cab18]
xor eax, eax
mov edx, 0x20
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rax
mov rax, qword [rsi + 0x868]
mov ecx, dword [rax + 0x9c]
xor eax, eax
mov dword [rbp - 0x7c], ecx
test ebx, ebx
lea rcx, [rbp - 0x50]
mov dword [rbp - 0x78], 1
setne al
mov dword [rbp - 0x80], eax
call fcn.140003260
lea r9, [rsp + 0x68]
mov rcx, rdi
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x50]
call fcn.140031b10
test eax, eax
je 0x14005c05b
mov ecx, eax
call fcn.14003d9b0
test rdi, rdi
je 0x14005c494
mov r9, rax
lea rdx, str.channel_setup_fwd_listener_tcpip
mov r8, rdi
lea rcx, str._s:_getaddrinfo__.64s_:__s
call fcn.140046b30
xor eax, eax
jmp 0x14005c463
test r14, r14
je 0x14005c063
mov dword [r14], r12d
mov rdi, qword [rsp + 0x68]
mov rsi, rdi
test rdi, rdi
je 0x14005c406
mov rdi, qword [rsp + 0x70]
nop dword [rax]
mov eax, dword [rsi + 4]
cmp eax, 2
je 0x14005c091
cmp eax, 0x17
jne 0x14005c3ef
cmp dword [r15 + 8], 0
mov rbx, qword [rsi + 0x20]
jne 0x14005c0b5
test r14, r14
je 0x14005c0b5
cmp dword [r14], 0
jle 0x14005c0b5
movzx ecx, word [r14]
call qword [sym.imp.WS2_32.dll_htons]
mov word [rbx + 2], ax
mov edx, dword [rsi + 0x10]
lea rax, [rbp - 0x50]
mov rcx, qword [rsi + 0x20]
lea r8, [rbp - 0x30]
mov dword [rsp + 0x30], 0xa
mov r9d, 0x401
mov dword [rsp + 0x28], 0x20
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_getnameinfo]
test eax, eax
je 0x14005c101
lea rdx, str.channel_setup_fwd_listener_tcpip
lea rcx, str._s:_getnameinfo_failed
call fcn.140046b30
jmp 0x14005c3ef
mov r8d, dword [rsi + 0xc]
mov edx, dword [rsi + 8]
mov ecx, dword [rsi + 4]
call fcn.14002dd40
mov ebx, eax
cmp eax, 0xffffffff
jne 0x14005c168
call fcn.140084fc0
mov r8d, dword [rax]
lea eax, [r8 - 0x64]
cmp eax, 0x28
ja 0x14005c137
cdqe
lea rcx, str.Address_already_in_use
mov r9, qword [rcx + rax*8]
jmp 0x14005c14f
mov edx, 0x5e
lea rcx, [0x1400ff560]
call fcn.14008b31c
lea r9, [0x1400ff560]
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x30]
lea rcx, str.socket___s_:_s:__.100s
call fcn.140046be0
jmp 0x14005c3ef
lea r9, [rsp + 0x60]
mov dword [rsp + 0x60], 1
mov edx, 0xffff
mov r8d, 4
mov ecx, ebx
call fcn.14002df80
cmp eax, 0xffffffff
jne 0x14005c1d2
call fcn.140084fc0
mov r8d, dword [rax]
lea eax, [r8 - 0x64]
cmp eax, 0x28
ja 0x14005c1ac
cdqe
lea rcx, str.Address_already_in_use
mov r8, qword [rcx + rax*8]
jmp 0x14005c1c4
mov edx, 0x5e
lea rcx, [0x1400ff560]
call fcn.14008b31c
lea r8, [0x1400ff560]
mov edx, ebx
lea rcx, str.setsockopt_SO_REUSEADDR_fd__d:__s
call fcn.140046b30
cmp dword [rsi + 4], 0x17
jne 0x14005c254
mov r8d, ebx
mov dword [rsp + 0x60], 1
lea rdx, str.sock_set_v6only
lea rcx, str._s:_set_socket__d_IPV6_V6ONLY
call fcn.140046c70
mov edx, 0x29
lea r9, [rsp + 0x60]
mov ecx, ebx
lea r8d, [rdx - 0xe]
call fcn.14002df80
cmp eax, 0xffffffff
jne 0x14005c254
call fcn.140084fc0
mov r8d, dword [rax]
lea eax, [r8 - 0x64]
cmp eax, 0x28
ja 0x14005c230
cdqe
lea rcx, str.Address_already_in_use
mov rdx, qword [rcx + rax*8]
jmp 0x14005c248
mov edx, 0x5e
lea rcx, [0x1400ff560]
call fcn.14008b31c
lea rdx, [0x1400ff560]
lea rcx, str.setsockopt_IPV6_V6ONLY:__s
call fcn.140046b30
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x30]
lea rcx, str.Local_forwarding_listening_on__s_port__s.
call fcn.140046c10
mov r8d, dword [rsi + 0x10]
mov ecx, ebx
mov rdx, qword [rsi + 0x20]
call fcn.14002e510
cmp eax, 0xffffffff
jne 0x14005c2e1
cmp qword [rsi + 0x28], 0
jne 0x14005c2b2
call fcn.140084fc0
mov ecx, dword [rax]
call fcn.14002af70
mov r9, rax
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x30]
lea rcx, str.bind___s_:_s:__.100s
call fcn.140046b30
mov ecx, ebx
call fcn.14002ed90
jmp 0x14005c3ef
call fcn.140084fc0
mov ecx, dword [rax]
call fcn.14002af70
mov r9, rax
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x30]
lea rcx, str.bind___s_:_s:__.100s
call fcn.140046be0
mov ecx, ebx
call fcn.14002ed90
jmp 0x14005c3ef
mov ecx, ebx
call fcn.14002e430
cmp eax, 0xffffffff
jne 0x14005c337
call fcn.140084fc0
mov ecx, dword [rax]
call fcn.14002af70
mov rdx, rax
lea rcx, str.listen:__.100s
call fcn.140046b30
call fcn.140084fc0
mov ecx, dword [rax]
call fcn.14002af70
mov r9, rax
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x30]
lea rcx, str.listen___s_:_s:__.100s
call fcn.140046b30
mov ecx, ebx
call fcn.14002ed90
jmp 0x14005c3ef
cmp dword [r15 + 8], 0
jne 0x14005c366
test r14, r14
je 0x14005c366
cmp dword [r14], 0
jne 0x14005c366
mov edx, 1
mov ecx, ebx
call fcn.14004dcc0
mov edx, eax
mov dword [r14], eax
lea rcx, str.Allocated_listen_port__d
call fcn.140046c10
mov rcx, qword [rsp + 0x78]
lea rax, str.port_listener
mov qword [rsp + 0x48], rax
mov r9d, ebx
mov dword [rsp + 0x38], 0x8000
mov r8d, inet_ntoa
mov dword [rsp + 0x30], 0x200000
mov rdx, rax
mov dword [rsp + 0x20], ebx
call fcn.140055ab0
mov rcx, r13
mov rbx, rax
call fcn.14004ccf0
mov qword [rbx + 0x68], rax
mov eax, dword [r15 + 0x20]
mov dword [rbx + 0x80], eax
test rdi, rdi
jne 0x14005c3be
xor eax, eax
jmp 0x14005c3c6
mov rcx, rdi
call fcn.14004ccf0
mov qword [rbx + 0x78], rax
mov eax, dword [r15 + 8]
test eax, eax
jne 0x14005c3e6
test r14, r14
je 0x14005c3e6
test dword [0x1400feffc], 0x8000000
jne 0x14005c3e6
mov eax, dword [r14]
mov dword [rbx + 0x70], eax
mov r12d, 1
mov rsi, qword [rsi + 0x28]
test rsi, rsi
jne 0x14005c080
mov rdi, qword [rsp + 0x68]
test r12d, r12d
jne 0x14005c41d
mov r8d, dword [r15 + 8]
lea rdx, str.channel_setup_fwd_listener_tcpip
lea rcx, str._s:_cannot_listen_to_port:__d
call fcn.140046b30
test rdi, rdi
je 0x14005c460
nop dword [rax]
nop word [rax + rax]
mov rbx, rdi
mov rdi, qword [rdi + 0x28]
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x14005c445
call fcn.14007a8b4
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x14005c453
call fcn.14007a8b4
mov rcx, rbx
call fcn.14007a8b4
test rdi, rdi
jne 0x14005c430
mov eax, r12d
mov rbx, qword [rsp + 0x538]
mov rdi, qword [rsp + 0x4f0]
mov rcx, qword [rbp + 0x3e0]
xor rcx, rsp
call fcn.140078840
add rsp, 0x4f8
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
ret
mov r8, rax
lea rdx, str.getaddrinfo:_fatal_error:__s
mov rcx, rsi
call fcn.14004a790
int3