Function at 0x18005f7c0
Capabilities:
Resolve dns

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x170
mov rax, qword [0x180a3f180]
xor rax, rsp
mov qword [rsp + 0x160], rax
mov rdi, rcx
xor ebx, ebx
lea rcx, [rsp + 0x40]
call fcn.180041970
mov rdx, rax
movabs rax, 0x431bde82d7b634db
imul qword [rdx]
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rdi + 0x458], rdx
cmp dword [rdi + 0x4b0], 1
je 0x1800602bf
xorps xmm0, xmm0
movups xmmword [rsp + 0xd0], xmm0
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe8], rbx
mov ecx, 0x20
call fcn.180337400
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xe0], 0x18
mov qword [rsp + 0xe8], 0x1f
movups xmm0, xmmword [str.ircserver.solstice.works]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x1803f6b38]
movsd qword [rax + 0x10], xmm0
mov byte [rax + 0x18], bl
lea r9, [rsp + 0x125]
mov r8d, 0x8373
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x18005f8a0
lea r8, [rsp + 0x125]
mov rdx, r9
lea rcx, [rsp + 0xb0]
call fcn.180041240
nop
mov qword [rsp + 0x58], rbx
mov dword [rsp + 0x60], ebx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x80], xmm1
mov dword [rsp + 0x64], 2
mov dword [rsp + 0x68], 1
mov dword [rsp + 0x6c], 6
lea rdx, [rsp + 0xb0]
cmp qword [rsp + 0xc8], 0xf
cmova rdx, qword [rsp + 0xb0]
lea rcx, [rsp + 0xd0]
cmp qword [rsp + 0xe8], 0xf
cmova rcx, qword [rsp + 0xd0]
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x60]
call qword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
je 0x18005fa10
mov rdx, qword [rsp + 0xc8]
cmp rdx, 0xf
jbe 0x18005f9a8
inc rdx
mov rcx, qword [rsp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005f9a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180060354
call fcn.180337884
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xc8], 0xf
mov byte [rsp + 0xb0], 0
mov rdx, qword [rsp + 0xe8]
cmp rdx, 0xf
jbe 0x1800602bf
inc rdx
mov rcx, qword [rsp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005fa06
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006035a
call fcn.180337884
jmp 0x1800602bf
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
mov ecx, dword [rcx + 4]
call qword [sym.imp.WS2_32.dll_inet_ntoa]
xorps xmm0, xmm0
movups xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x108], rbx
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x18005fa44
mov rdx, rax
lea rcx, [rsp + 0xf0]
call fcn.18000c860
mov rdx, qword [rsp + 0xe8]
cmp rdx, 0xf
jbe 0x18005faa1
inc rdx
mov rcx, qword [rsp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005fa9c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800602f3
call fcn.180337884
movups xmm0, xmmword [rsp + 0xf0]
movups xmmword [rsp + 0xd0], xmm0
movups xmm1, xmmword [rsp + 0x100]
movups xmmword [rsp + 0xe0], xmm1
lea rcx, [rsp + 0x50]
call fcn.18005cce0
nop
lea rax, [rsp + 0x50]
cmp rdi, rax
je 0x18005faf7
cmp qword [rdi], 0
je 0x18005fae4
mov rcx, rdi
call fcn.18005b730
mov rcx, qword [rsp + 0x50]
mov qword [rdi], rcx
test rcx, rcx
je 0x18005faf7
mov rax, qword [rcx]
call qword [rax + 8]
mov ecx, 0x18
call fcn.180337400
mov rdx, rax
mov qword [rsp + 0x40], rax
mov qword [rax + 8], rdi
lock inc dword [0x180a57458]
mov dword [rax + 0x10], 1
lea rax, [0x1803f6608]
mov qword [rdx], rax
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x38], rbx
mov rcx, qword [rdi]
mov rax, qword [rcx]
lea r8, [rsp + 0x38]
call qword [rax + 0x40]
test eax, eax
js 0x1800602f9
lea rcx, [rsp + 0x20]
call fcn.18005b730
mov ecx, 0x18
call fcn.180337400
mov rsi, rax
mov qword [rsp + 0x40], rax
mov qword [rax + 8], rdi
lock inc dword [0x180a57458]
mov dword [rax + 0x10], 1
lea rax, [0x1803f65e8]
mov qword [rsi], rax
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x38], rbx
mov rcx, qword [rdi]
mov qword [rsp + 0x28], rbx
test rcx, rcx
jne 0x18005fb99
mov rcx, rbx
jmp 0x18005fbb4
mov rax, qword [rcx]
lea r8, [rsp + 0x28]
lea rdx, [0x1803f6840]
call qword [rax]
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x28], rcx
mov rax, qword [rcx]
lea r8, [rsp + 0x38]
mov rdx, rsi
call qword [rax + 0x48]
test eax, eax
js 0x180060301
lea rcx, [rsp + 0x28]
call fcn.18005b730
nop
lea rcx, [rsp + 0x20]
call fcn.18005b730
mov qword [rsp + 0x20], rbx
mov rcx, qword [rdi]
mov qword [rsp + 0x28], rbx
test rcx, rcx
jne 0x18005fbf6
mov rcx, rbx
jmp 0x18005fc11
mov rax, qword [rcx]
lea r8, [rsp + 0x28]
lea rdx, [0x1803f6840]
call qword [rax]
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x28], rcx
mov rax, qword [rcx]
lea rdx, [rsp + 0x20]
call qword [rax + 0x30]
test eax, eax
js 0x180060309
lea rcx, [rsp + 0x28]
call fcn.18005b730
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x38], rax
lea rax, [0x180a57318]
mov qword [rsp + 0x40], rax
lock inc qword [0x180a57318]
mov rcx, qword [0x180a57310]
test rcx, rcx
je 0x18005fc93
mov qword [rsp + 0x20], rbx
mov rax, qword [rcx]
lea r8, [rsp + 0x20]
mov rdx, qword [rsp + 0x30]
call qword [rax + 0x30]
test eax, eax
js 0x180060311
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x48], rax
lock dec qword [0x180a57318]
jmp 0x18005fcab
lock dec qword [0x180a57318]
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x48]
call fcn.18005d240
nop
cmp qword [rsp + 0x30], 0
je 0x18005fcbd
lea rcx, [rsp + 0x30]
call fcn.18005b730
lea rsi, [rdi + 8]
lea rax, [rsp + 0x48]
cmp rsi, rax
je 0x18005fcec
cmp qword [rsi], 0
je 0x18005fcd9
mov rcx, rsi
call fcn.18005b730
mov rcx, qword [rsp + 0x48]
mov qword [rsi], rcx
test rcx, rcx
je 0x18005fcec
mov rax, qword [rcx]
call qword [rax + 8]
mov dword [rdi + 0x4b0], 1
mov r15, qword [rsp + 0xe0]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r15
cmp rax, 5
jb 0x180060319
lea r13, [rsp + 0xd0]
cmp qword [rsp + 0xe8], 0xf
cmova r13, qword [rsp + 0xd0]
xorps xmm0, xmm0
movups xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x108], rbx
lea r12, [r15 + 5]
mov r14d, 0xf
lea rsi, [rsp + 0xf0]
cmp r12, r14
jbe 0x18005fde2
mov r14, r12
or r14, 0xf
cmp r14, rcx
jbe 0x18005fda0
mov r14, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.180337400
test rax, rax
je 0x18006034e
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x18005fdda
mov eax, 0x16
cmp r14, rax
cmovb r14, rax
lea rcx, [r14 + 1]
test rcx, rcx
jne 0x18005fdba
mov rsi, rbx
jmp 0x18005fdda
cmp rcx, 0x1000
jb 0x18005fdd2
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18006031e
jmp 0x18005fd81
call fcn.180337400
mov rsi, rax
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0x100], r12
mov qword [rsp + 0x108], r14
mov eax, dword [str.ws:__]
mov dword [rsi], eax
movzx eax, byte [0x1803f6b70]
mov byte [rsi + 4], al
lea rcx, [rsi + 5]
mov r8, r15
mov rdx, r13
call fcn.1803752c0
mov byte [rsi + r12], 0
mov r8d, 1
lea rdx, [0x1803f6b74]
lea rcx, [rsp + 0xf0]
call fcn.180028b30
xorps xmm0, xmm0
movups xmmword [rsp + 0x130], xmm0
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x130], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x140], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rdx, [rsp + 0xb0]
cmp qword [rsp + 0xc8], 0xf
cmova rdx, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
lea rcx, [rsp + 0x130]
call fcn.180028b30
xorps xmm0, xmm0
movups xmmword [rsp + 0x110], xmm0
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x128], rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x110], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x120], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0x38]
call fcn.180065460
nop
mov rax, qword [rax]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x20], rax
lea rax, [0x180a57378]
mov qword [rsp + 0x40], rax
lock inc qword [0x180a57378]
mov rcx, qword [0x180a57370]
test rcx, rcx
je 0x18005ff62
mov qword [rsp + 0x20], rbx
mov rax, qword [rcx]
lea r8, [rsp + 0x20]
mov rdx, qword [rsp + 0x90]
call qword [rax + 0x30]
test eax, eax
js 0x180060324
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x30], rax
lock dec qword [0x180a57378]
jmp 0x18005ff7a
lock dec qword [0x180a57378]
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x30]
call fcn.18005cb50
nop
mov qword [rsp + 0x28], rbx
mov rcx, qword [rdi]
mov qword [rsp + 0x20], rbx
test rcx, rcx
jne 0x18005ff91
mov rcx, rbx
jmp 0x18005ffac
mov rax, qword [rcx]
lea r8, [rsp + 0x20]
lea rdx, [0x1803f6840]
call qword [rax]
mov rcx, qword [rsp + 0x20]
mov qword [rsp + 0x20], rcx
mov rax, qword [rcx]
lea r8, [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
call qword [rax + 0x38]
test eax, eax
js 0x18006032c
lea rcx, [rsp + 0x20]
call fcn.18005b730
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x40], rax
mov ecx, 0x18
call fcn.180337400
mov rdx, rax
mov qword [rsp + 0x20], rax
mov qword [rax + 8], rdi
lock inc dword [0x180a57458]
mov dword [rax + 0x10], 1
lea rax, [0x1803f65c8]
mov qword [rdx], rax
mov qword [rsp + 0x20], rdx
mov rdi, qword [rsp + 0x28]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x30]
test eax, eax
js 0x180060334
lea rcx, [rsp + 0x20]
call fcn.18005b730
nop
test rdi, rdi
je 0x18006003c
lea rcx, [rsp + 0x40]
call fcn.18005b730
nop
cmp qword [rsp + 0x30], 0
je 0x18006004f
lea rcx, [rsp + 0x30]
call fcn.18005b730
nop
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x180060082
mov rax, 0xffffffffffffffff
lock xadd dword [rdi + 0x18], eax
sub eax, 1
jne 0x1800600c2
nop
call sub.KERNEL32.dll_GetProcessHeap
mov rcx, rax
mov r8, rdi
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov qword [rsp + 0x38], rbx
mov rdx, qword [rsp + 0x128]
cmp rdx, 0xf
jbe 0x1800600d1
inc rdx
mov rcx, qword [rsp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800600cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006033c
jmp 0x1800600cc
test eax, eax
js 0x180060342
jmp 0x18006007d
call fcn.180337884
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x128], 0xf
mov byte [rsp + 0x110], 0
mov rdx, qword [rsp + 0x148]
cmp rdx, 0xf
jbe 0x180060130
inc rdx
mov rcx, qword [rsp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006012b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180060348
call fcn.180337884
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], 0xf
mov byte [rsp + 0x130], 0
mov rdx, qword [rsp + 0x108]
cmp rdx, 0xf
jbe 0x180060190
inc rdx
mov rcx, qword [rsp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006018a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006034e
call fcn.180337884
nop
cmp qword [rsp + 0x48], 0
je 0x1800601a3
lea rcx, [rsp + 0x48]
call fcn.18005b730
nop
cmp qword [rsp + 0x50], 0
je 0x1800601b6
lea rcx, [rsp + 0x50]
call fcn.18005b730
nop
mov rdx, qword [rsp + 0xc8]
cmp rdx, 0xf
jbe 0x1800601f9
inc rdx
mov rcx, qword [rsp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800601f4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180060354
call fcn.180337884
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xc8], 0xf
mov byte [rsp + 0xb0], 0
mov rdx, qword [rsp + 0xe8]
cmp rdx, 0xf
jbe 0x180060258
inc rdx
mov rcx, qword [rsp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180060253
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006035a
call fcn.180337884
mov al, 1
jmp 0x1800602c1
xor al, al
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
call fcn.1803373e0
lea r11, [rsp + 0x170]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.1803459e4
nop
mov ecx, eax
call fcn.18005c630
nop
mov ecx, eax
call fcn.18005c630
nop
mov ecx, eax
call fcn.18005c630
nop
mov ecx, eax
call fcn.18005c630
nop
call fcn.18000c760
call fcn.18000c6c0
nop
mov ecx, eax
call fcn.18005c630
nop
mov ecx, eax
call fcn.18005c630
nop
mov ecx, eax
call fcn.18005c630
nop
call fcn.1803459e4
nop
call fcn.180350628
nop
call fcn.1803459e4
nop
call fcn.1803459e4
nop
call fcn.1803459e4
nop
call fcn.1803459e4
int3