Function at 0x18004ef30
Capabilities:
Resolve dns

Disassembly:
push rbp
push rbx
push rdi
mov rbp, rsp
sub rsp, 0x80
mov rbx, r8
mov rdi, rdx
test rcx, rcx
je 0x18004ef62
mov r10, qword [0x18032f588]
test r10, r10
je 0x18004ef62
add rsp, 0x80
pop rdi
pop rbx
pop rbp
jmp r10
mov qword [rsp + 0xa8], rsi
mov qword [rsp + 0xb0], r12
xor r12d, r12d
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x50], r12
lea esi, [r12 - 1]
test r9, r9
je 0x18004efa4
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movups xmmword [rbp - 0x48], xmm0
movups xmm0, xmmword [r9 + 0x20]
movups xmmword [rbp - 0x38], xmm1
movups xmmword [rbp - 0x28], xmm0
jmp 0x18004efb3
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
movups xmmword [rbp - 0x38], xmm0
movups xmmword [rbp - 0x28], xmm0
lea rax, [rbp + 0x20]
mov rdx, rbx
lea r9, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x48]
mov rcx, rdi
call fcn.18004e7c0
mov r15d, eax
test eax, eax
je 0x18004f252
cmp eax, 8
je 0x18004f252
cmp eax, 0x2af9
je 0x18004f252
cmp dword [0x18032f584], r12d
mov qword [rsp + 0xb8], r13
jne 0x18004f004
call fcn.1800503a0
cmp dword [0x18032f57c], r12d
mov r13d, 1
mov qword [rsp + 0x78], r14
je 0x18004f068
test rbx, rbx
je 0x18004f068
mov eax, dword [rbp - 0x40]
test eax, eax
jne 0x18004f06b
mov rcx, rbx
call fcn.1800501c0
mov dword [rbp + 0x20], eax
mov esi, eax
test eax, eax
js 0x18004f068
test rdi, rdi
jne 0x18004f05d
lea rax, [rbp + 0x20]
mov rdx, rbx
lea r9, [rbp - 0x50]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x48]
xor ecx, ecx
call fcn.18004e7c0
mov r15d, eax
jmp 0x18004f245
mov eax, dword [rbp - 0x40]
mov rbx, r12
mov r14d, r13d
jmp 0x18004f06e
mov eax, dword [rbp - 0x40]
mov r14d, r12d
cmp dword [0x18032f584], r12d
jne 0x18004f07f
call fcn.1800503a0
mov eax, dword [rbp - 0x40]
cmp dword [0x18032f580], r12d
je 0x18004f0cf
mov ecx, dword [rbp - 0x3c]
test ecx, ecx
jne 0x18004f0af
test eax, eax
je 0x18004f0cf
cmp eax, 2
jne 0x18004f0a1
mov dword [rbp - 0x3c], reloc.WS2_32.dll_recvfrom
jmp 0x18004f0cf
cmp eax, r13d
jne 0x18004f0af
mov dword [rbp - 0x3c], 6
jmp 0x18004f0cf
test eax, eax
jne 0x18004f0cf
test ecx, ecx
je 0x18004f0cf
cmp ecx, 0x11
jne 0x18004f0c5
mov dword [rbp - 0x40], 2
jmp 0x18004f0cf
cmp ecx, 6
cmove eax, r13d
mov dword [rbp - 0x40], eax
and dword [rbp - 0x48], 0x7fffffff
lea r9, [rbp - 0x50]
lea r8, [rbp - 0x48]
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.WS2_32.dll_getaddrinfo]
mov r15d, eax
test r14d, r14d
je 0x18004f156
mov rcx, qword [rbp - 0x50]
lea rbx, [rbp - 0x50]
test rcx, rcx
je 0x18004f156
nop
mov rdi, qword [rcx + 0x20]
test rdi, rdi
je 0x18004f136
movzx eax, word [rdi]
cmp ax, 2
jne 0x18004f121
movzx ecx, si
call qword [sym.imp.WS2_32.dll_htons]
mov word [rdi + 2], ax
jmp 0x18004f147
cmp ax, 0x17
jne 0x18004f136
movzx ecx, si
call qword [sym.imp.WS2_32.dll_htons]
mov word [rdi + 2], ax
jmp 0x18004f147
mov rax, qword [rcx + 0x28]
mov qword [rbx], rax
mov qword [rcx + 0x28], r12
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
mov rbx, qword [rbx]
add rbx, 0x28
mov rcx, qword [rbx]
test rcx, rcx
jne 0x18004f100
cmp dword [0x18032f584], r12d
jne 0x18004f164
call fcn.1800503a0
cmp dword [0x18032f580], r12d
je 0x18004f245
mov rbx, qword [rbp - 0x50]
test rbx, rbx
je 0x18004f245
nop
mov eax, dword [rbx + 0xc]
test eax, eax
jne 0x18004f1b3
mov ecx, dword [rbx + 8]
mov eax, r12d
test ecx, ecx
je 0x18004f1b3
cmp ecx, 2
jne 0x18004f1a2
mov dword [rbx + 0xc], reloc.WS2_32.dll_recvfrom
lea eax, [rcx + 0xf]
jmp 0x18004f1b3
cmp ecx, r13d
jne 0x18004f1b3
mov dword [rbx + 0xc], 6
mov eax, 6
cmp dword [rbx + 8], r12d
jne 0x18004f223
test eax, eax
je 0x18004f1d6
cmp eax, 0x11
jne 0x18004f1cb
mov dword [rbx + 8], 2
jmp 0x18004f223
cmp eax, 6
jne 0x18004f223
mov dword [rbx + 8], r13d
jmp 0x18004f223
mov ecx, gethostbyaddr
call fcn.18022c454
mov rcx, rax
test rax, rax
je 0x18004f232
movups xmm0, xmmword [rbx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rax + 0x20], xmm0
mov dword [rbx + 8], r13d
mov dword [rbx + 0xc], 6
mov dword [rax + 8], 2
mov dword [rax + 0xc], reloc.WS2_32.dll_recvfrom
mov rax, qword [rbx + 0x28]
mov qword [rcx + 0x28], rax
mov qword [rbx + 0x28], rcx
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x18004f180
jmp 0x18004f245
mov rcx, qword [rbp - 0x50]
call fcn.18004dc00
mov qword [rbp - 0x50], r12
mov r15d, 8
mov r14, qword [rsp + 0x78]
mov r13, qword [rsp + 0xb8]
mov r8, qword [rbp + 0x48]
mov ecx, r15d
mov rdx, qword [rbp - 0x50]
call qword [rbp + 0x40]
mov r15, qword [rsp + 0x70]
xor eax, eax
mov r12, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0xa8]
add rsp, 0x80
pop rdi
pop rbx
pop rbp
ret