Function at 0x1400050c0
Capabilities:
Initialize winsock library
Resolve dns
Send data
Send data on socket
Set console window title

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
mov eax, 0x1308
call fcn.140014460
sub rsp, rax
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x1278], 0xfffffffffffffffe
vstmxcsr dword [rbp - 0x60]
or dword [rbp - 0x60], 0x8040
vldmxcsr dword [rbp - 0x60]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp + 0x1118], ymm0
vmovups ymmword [rbp + 0x1100], ymm0
vmovups ymmword [rbp + 0x10e0], ymm0
vmovups ymmword [rbp + 0x10c0], ymm0
vmovups ymmword [rbp + 0x10a0], ymm0
vmovups ymmword [rbp + 0x1080], ymm0
vmovups ymmword [rbp + 0x1060], ymm0
vmovups ymmword [rbp + 0x1040], ymm0
vmovups ymmword [rbp + 0x1020], ymm0
vmovups ymmword [rbp + 0x1000], ymm0
vmovups ymmword [rbp + 0xfe0], ymm0
vmovups ymmword [rbp + 0xfc0], ymm0
vmovups ymmword [rbp + 0xfa0], ymm0
mov qword [rbp + 0x1208], 0
lea rcx, str.ws2_32.dll
mov rsi, qword [sym.imp.KERNEL32.dll_LoadLibraryW]
vzeroupper
call rsi
lea rcx, str.advapi32.dll
call rsi
lea rcx, str.coolmathgames__csgo_server_lagger
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleW]
lea rcx, [rbp - 0x60]
mov r8d, 0x1000
xor edx, edx
call fcn.140009be0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [rbp + 0x11e0], xmm0
mov qword [rbp + 0x11f0], 0
mov qword [rbp + 0x11f8], 7
vmovaps xmmword [rbp + 0x1190], xmm0
mov qword [rbp + 0x11a0], 0
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp + 0x1150], ymm0
vmovaps xmm0, xmmword [0x140042870]
vmovaps xmmword [rbp + 0x1140], xmm0
lea rdx, [rbp + 0xfa0]
mov cx, 0x202
vzeroupper
call qword [sym.imp.WS2_32.dll_WSAStartup]
lea rcx, str._coolmathgames__enter_an_ip_address__ip:port_:
call fcn.140007050
lea rdi, [0x14004f5c0]
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
mov rcx, qword [rax + rdi + 0x48]
test rcx, rcx
je 0x140005253
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140049cf8]
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
mov ecx, dword [rax + rdi + 0x10]
movabs r13, 0x7ffffffffffffffe
test ecx, ecx
je 0x14000529b
xor edx, edx
cmp qword [rax + rdi + 0x48], 0
sete dl
shl edx, 2
and ecx, 0x15
or ecx, edx
or ecx, 2
mov dword [rax + rdi + 0x10], ecx
mov eax, dword [rax + rdi + 0x14]
and ecx, eax
jne 0x140006988
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
jmp 0x1400054c2
mov rcx, qword [rax + rdi + 0x50]
test rcx, rcx
je 0x1400052bc
call fcn.140007830
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
lea rdi, [0x14004f5c0]
test byte [rax + rdi + 0x18], 1
je 0x14000549b
lea rdi, [0x14004f5c0]
mov rax, qword [rax + rdi + 0x40]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x1248], rcx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140049cf8]
lea rcx, [rbp + 0x1240]
call fcn.140007a30
mov rsi, rax
mov rcx, qword [rbp + 0x1248]
test rcx, rcx
je 0x14000532f
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x140049cf8]
test rax, rax
je 0x14000532f
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov edx, 1
mov rax, r8
call qword [0x140049cf8]
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
mov rcx, qword [rax + rdi + 0x48]
mov rax, qword [rcx + 0x38]
mov rax, qword [rax]
test rax, rax
je 0x14000535a
mov rdx, qword [rcx + 0x50]
cmp dword [rdx], 0
jle 0x14000535a
movzx r8d, word [rax]
jmp 0x140005382
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
call qword [0x140049cf8]
mov r8d, eax
jmp 0x140005382
dec r8d
mov dword [rdx], r8d
lea rdx, [rax + 2]
mov qword [rcx], rdx
movzx r8d, word [rax + 2]
cmp r8w, 0xffff
je 0x140005458
mov rax, qword [rsi]
mov rax, qword [rax + 0x20]
mov rcx, rsi
mov dx, 0x48
call qword [0x140049cf8]
test al, al
je 0x14000549b
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
lea rcx, [0x14004f5c0]
mov rdi, qword [rax + rcx + 0x48]
mov rcx, qword [rdi + 0x38]
mov rax, qword [rcx]
test rax, rax
je 0x140005400
mov rdx, qword [rdi + 0x50]
mov r8d, dword [rdx]
cmp r8d, 2
jge 0x140005370
cmp r8d, 1
jne 0x140005400
mov dword [rdx], 0
lea rdx, [rax + 2]
mov qword [rcx], rdx
movzx eax, word [rax]
jmp 0x140005410
mov rax, qword [rdi]
mov rax, qword [rax + 0x38]
mov rcx, rdi
call qword [0x140049cf8]
mov r8w, 0xffff
cmp ax, 0xffff
je 0x140005382
mov rax, qword [rdi + 0x38]
mov rax, qword [rax]
test rax, rax
je 0x140005440
mov rcx, qword [rdi + 0x50]
cmp dword [rcx], 0
jle 0x140005440
movzx r8d, word [rax]
jmp 0x140005382
mov rax, qword [rdi]
mov rax, qword [rax + 0x30]
mov rcx, rdi
call qword [0x140049cf8]
mov r8d, eax
jmp 0x140005382
mov rax, qword [0x14004f5c0]
movsxd rdx, dword [rax + 4]
xor r8d, r8d
lea r9, [0x14004f5c0]
cmp qword [rdx + r9 + 0x48], 0
sete r8b
shl r8d, 2
mov eax, dword [rdx + r9 + 0x10]
mov ecx, dword [rdx + r9 + 0x14]
and eax, 0x14
or eax, r8d
or eax, 3
mov dword [rdx + r9 + 0x10], eax
and eax, ecx
jne 0x1400069e8
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
lea rdi, [0x14004f5c0]
cmp dword [rax + rdi + 0x10], 0
je 0x140006459
movabs r13, 0x7ffffffffffffffe
mov qword [rax + rdi + 0x28], 0
xor r12d, r12d
or r12d, 2
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
or r12d, dword [rax + rdi + 0x10]
xor ecx, ecx
cmp qword [rax + rdi + 0x48], 0
sete cl
shl ecx, 2
and r12d, 0x17
or r12d, ecx
mov dword [rax + rdi + 0x10], r12d
and r12d, dword [rax + rdi + 0x14]
jne 0x140006901
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
mov rcx, qword [rax + rdi + 0x48]
test rcx, rcx
je 0x140005529
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x140049cf8]
lea rcx, str._coolmathgames__starting_connection...
call fcn.140007050
call fcn.140007fc0
mov rcx, qword [rbp + 0x11f0]
cmp qword [rbp + 0x11f8], 8
jb 0x14000555a
mov rax, qword [rbp + 0x11e0]
cmp rcx, 1
jne 0x140005567
jmp 0x14000559a
lea rax, [rbp + 0x11e0]
cmp rcx, 1
je 0x14000559a
test rcx, rcx
je 0x140006404
mov rdx, rcx
shr rdx, 1
lea rsi, [rax + 2]
nop word [rax + rax]
cmp word [rsi - 2], 0x3a
je 0x1400063f3
cmp word [rsi], 0x3a
je 0x1400055b9
add rsi, 4
dec rdx
jne 0x140005580
mov rdx, rcx
and rdx, 0xfffffffffffffffe
cmp rdx, rcx
je 0x140006404
cmp word [rax + rdx*2], 0x3a
jne 0x140006404
lea rsi, [rax + rdx*2]
sub rsi, rax
cmp rsi, 0xfffffffffffffffe
je 0x140006404
sar rsi, 1
lea rcx, [rbp + 0x11e0]
lea rdx, [rbp + 0x1240]
xor r8d, r8d
mov r9, rsi
call fcn.1400082e0
lea rcx, [rbp + 0x1190]
lea rdx, [rbp + 0x1240]
call fcn.140008410
mov rax, qword [rbp + 0x1258]
cmp rax, 8
jb 0x140005641
mov rcx, qword [rbp + 0x1240]
lea rdx, [rax*2 + 2]
cmp rdx, 0x1000
jb 0x14000563c
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rdx
cmp rcx, 0x20
jae 0x1400068de
add rax, rax
add rax, 0x29
mov rcx, rdx
mov rdx, rax
call fcn.1400135dc
inc rsi
lea rcx, [rbp + 0x11e0]
lea rdx, [rbp + 0x1240]
mov r8, rsi
mov r9, 0xffffffffffffffff
call fcn.1400082e0
lea rcx, [rbp + 0x1190]
lea rdx, [rbp + 0x1240]
call fcn.140008410
mov rax, qword [rbp + 0x1258]
cmp rax, 8
jb 0x1400056c0
mov rcx, qword [rbp + 0x1240]
lea rdx, [rax*2 + 2]
cmp rdx, 0x1000
jb 0x1400056bb
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rdx
cmp rcx, 0x20
jae 0x1400068de
add rax, rax
add rax, 0x29
mov rcx, rdx
mov rdx, rax
call fcn.1400135dc
movabs r12, 0x7fffffffffffffff
jmp 0x1400056d5
call fcn.1400135dc
mov rcx, qword [rbp + 0x1190]
lea rdx, [rcx + 0x20]
cmp qword [rcx + 0x38], 8
jb 0x1400056ea
mov rdx, qword [rdx]
cmp qword [rcx + 0x18], 8
jb 0x1400056f4
mov rcx, qword [rcx]
lea r8, [rbp + 0x1140]
lea r9, [rbp + 0x1208]
call qword [sym.imp.WS2_32.dll_GetAddrInfoW]
test eax, eax
jne 0x140006379
mov rax, qword [rbp + 0x1208]
mov r8d, dword [rax + 0xc]
mov ecx, dword [rax + 4]
mov edx, dword [rax + 8]
call qword [sym.imp.WS2_32.dll_socket]
mov rcx, rax
cmp rax, 0xffffffffffffffff
mov qword [rbp + 0x1218], rax
jne 0x140005762
lea rcx, str.L_coolmathgames__failed_to_create_a_socket
call fcn.1400087d0
call fcn.140007fc0
mov rcx, qword [rbp + 0x1208]
call qword [sym.imp.WS2_32.dll_FreeAddrInfoW]
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rcx, qword [rbp + 0x1218]
mov rax, qword [rbp + 0x1208]
mov rdx, qword [rax + 0x20]
mov r8d, send
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x1400057af
lea rcx, str._coolmathgames__failed_to_connect_to_the_host
call fcn.140007050
call fcn.140007fc0
mov rcx, qword [rbp + 0x1208]
call qword [sym.imp.WS2_32.dll_FreeAddrInfoW]
mov rcx, qword [rbp + 0x1218]
call qword [sym.imp.WS2_32.dll_closesocket]
call qword [sym.imp.WS2_32.dll_WSACleanup]
lea rcx, str._coolmathgames__connection_established
call fcn.140007050
call fcn.140007fc0
mov r8d, 0x1000
lea rbx, [rbp - 0x60]
mov rcx, rbx
xor edx, edx
call fcn.140009be0
mov r14, qword [sym.imp.WS2_32.dll_send]
movabs r15, 0x7fffffffff1b1e3f
nop word cs:[rax + rax]
mov rcx, qword [rbp + 0x1218]
mov rdx, rbx
mov r8d, 0x1000
xor r9d, r9d
call r14
cmp eax, 0xffffffff
je 0x140005a10
call fcn.140013474
mov rsi, rax
call fcn.140013458
cmp rsi, 0x989680
jne 0x14000595d
imul rdx, rax, 0x64
lea rdi, [rdx + 0xe4e1c0]
cmp rdx, r15
cmovge rdi, r12
jmp 0x140005845
call sub.KERNEL32.dll_Sleep
call fcn.140013474
mov rsi, rax
call fcn.140013458
cmp rsi, 0x989680
jne 0x1400058ad
imul rdx, rax, 0x64
mov r8, rdi
sub r8, rdx
jle 0x1400057f0
mov ecx, 0x5265c00
movabs rax, 0x4e94914f0000
cmp r8, rax
jg 0x140005840
mov rax, r8
movabs rcx, 0x431bde82d7b634db
imul rcx
mov rax, rdx
shr rax, 0x3f
sar rdx, 0x12
add rdx, rax
imul rax, rdx, 0xf4240
xor ecx, ecx
cmp rax, r8
setl cl
add rcx, rdx
jmp 0x140005840
mov rcx, rax
cmp rsi, 0x16e3600
jne 0x14000590b
movabs r9, 0xb2f4fc0794908cf3
imul r9
mov r8, rdx
add r8, rcx
mov rax, r8
shr rax, 0x3f
sar r8, 0x18
add r8, rax
imul rax, r8, 0x16e3600
sub rcx, rax
imul rcx, rcx, 0x3b9aca00
mov rax, rcx
imul r9
imul rax, r8, 0x3b9aca00
add rdx, rcx
mov rcx, rdx
shr rcx, 0x3f
sar rdx, 0x18
add rdx, rcx
jmp 0x140005949
or rcx, rsi
shr rcx, 0x20
je 0x14000591e
cqo
idiv rsi
mov rcx, rax
jmp 0x140005924
xor edx, edx
div esi
mov ecx, eax
imul rax, rdx, 0x3b9aca00
mov rdx, rsi
or rdx, rax
shr rdx, 0x20
je 0x14000593e
cqo
idiv rsi
jmp 0x140005942
xor edx, edx
div esi
imul rdx, rcx, 0x3b9aca00
add rdx, rax
mov r8, rdi
sub r8, rdx
jg 0x140005867
jmp 0x1400057f0
mov rcx, rax
cmp rsi, 0x16e3600
jne 0x1400059bb
movabs r9, 0xb2f4fc0794908cf3
imul r9
mov r8, rdx
add r8, rcx
mov rax, r8
shr rax, 0x3f
sar r8, 0x18
add r8, rax
imul rax, r8, 0x16e3600
sub rcx, rax
imul rcx, rcx, 0x3b9aca00
mov rax, rcx
imul r9
imul rax, r8, 0x3b9aca00
add rdx, rcx
mov rcx, rdx
shr rcx, 0x3f
sar rdx, 0x18
add rdx, rcx
jmp 0x1400059f9
or rcx, rsi
shr rcx, 0x20
je 0x1400059ce
cqo
idiv rsi
mov rcx, rax
jmp 0x1400059d4
xor edx, edx
div esi
mov ecx, eax
imul rax, rdx, 0x3b9aca00
mov rdx, rsi
or rdx, rax
shr rdx, 0x20
je 0x1400059ee
cqo
idiv rsi
jmp 0x1400059f2
xor edx, edx
div esi
imul rdx, rcx, 0x3b9aca00
add rdx, rax
jmp 0x14000582d
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
mov r9d, 0xcccccccd
nop
mov edx, eax
imul rdx, r9
shr rdx, 0x23
lea r8d, [rdx + rdx]
lea r8d, [r8 + r8*4]
neg r8d
add r8d, eax
add r8d, 0x30
mov word [rbp + rcx + 0x1268], r8w
add rcx, 0xfffffffffffffffe
cmp eax, 9
mov eax, edx
ja 0x140005a20
mov rsi, rcx
neg rsi
mov r14, rsi
sar r14, 1
vxorps xmm0, xmm0, xmm0
vmovups ymmword [rbp + 0x1220], ymm0
cmp r14, r12
lea r15, [0x14004f660]
jae 0x140006875
lea rdi, [rcx + rbp]
add rdi, 0x126a
cmp r14, 7
ja 0x140005ac0
mov qword [rbp + 0x1230], r14
mov qword [rbp + 0x1238], 7
lea rcx, [rbp + 0x1220]
mov rdx, rdi
mov r8, rsi
vzeroupper
call fcn.140009cb0
mov word [rbp + r14*2 + 0x1220], 0
jmp 0x140005b40
mov rax, r14
or rax, 7
cmp rax, 0xb
mov r15d, 0xa
cmovae r15, rax
lea rcx, [r15 + r15]
cmp rax, 0x7ff
jb 0x140005b00
add rcx, 0x29
vzeroupper
call fcn.140013598
mov rbx, rax
add rbx, 0x27
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140005b0f
add rcx, 2
vzeroupper
call fcn.140013598
mov rbx, rax
mov qword [rbp + 0x1220], rbx
mov qword [rbp + 0x1230], r14
mov qword [rbp + 0x1238], r15
mov rcx, rbx
mov rdx, rdi
mov r8, rsi
call fcn.140009cb0
mov word [rbx + r14*2], 0
lea r15, [0x14004f660]
mov rbx, qword [rbp + 0x1230]
mov r14, qword [rbp + 0x1238]
mov rax, r14
sub rax, rbx
cmp rax, 0x29
jae 0x140005c00
movabs rax, 0x800000000000002a
add rax, rbx
cmp rax, 0x28
jbe 0x1400068ed
lea rdi, [rbx + 0x29]
mov rax, rdi
or rax, 7
cmp rax, r13
ja 0x1400068e3
mov r15, r14
shr r15, 1
mov rcx, r13
sub rcx, r15
add r15, r14
cmp rax, r15
cmova r15, rax
cmp rcx, r14
cmovb r15, r13
mov rax, r15
inc rax
js 0x1400068f2
je 0x140005cb8
lea rcx, [rax + rax]
cmp rax, 0x800
jb 0x140005cbc
movabs rdx, 0x7fffffffffffffed
cmp rax, rdx
jae 0x1400068e3
add rcx, 0x27
call fcn.140013598
mov rsi, rax
add rsi, 0x27
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x140005cc4
mov rsi, qword [rbp + 0x1220]
lea rcx, [rsi + 0x52]
cmp r14, 8
lea rax, [rbp + 0x1220]
cmovb rsi, rax
lea rax, [rbp + 0x1272]
cmovb rcx, rax
mov r14, rsi
lea r13, str._coolmathgames__failed_to_send_a_packet__
sub r14, r13
sar r14, 1
cmp rsi, r13
mov eax, 0
cmovbe r14, rax
lea rax, [rbx + 0x29]
mov qword [rbp + 0x1230], rax
lea rax, [rsi + rbx*2]
cmp rax, r13
mov edx, 0x29
cmovb r14, rdx
lea rax, [0x140045c56]
cmp rsi, rax
cmovae r14, rdx
lea r8, [rbx*2 + 2]
mov rdx, rsi
call fcn.140038120
lea rdi, [r14 + r14]
mov rcx, rsi
mov rdx, r13
mov r8, rdi
call fcn.140009cb0
lea rdx, [r14*2 + 0x52]
add rdx, r13
movabs r13, 0x7ffffffffffffffe
lea rcx, [rsi + r14*2]
mov r8d, 0x52
sub r8, rdi
call fcn.140009cb0
jmp 0x140005dbf
xor esi, esi
jmp 0x140005cc4
call fcn.140013598
mov rsi, rax
mov qword [rbp + 0x1230], rdi
mov qword [rbp + 0x1238], r15
cmp r14, 8
jb 0x140005d70
mov rdi, qword [rbp + 0x1220]
vmovups ymm0, ymmword [0x140045c36]
vmovups ymmword [rsi + 0x32], ymm0
vmovups ymm0, ymmword [0x140045c24]
vmovups ymmword [rsi + 0x20], ymm0
vmovups ymm0, ymmword [str._coolmathgames__failed_to_send_a_packet__]
vmovups ymmword [rsi], ymm0
lea rcx, [rsi + 0x52]
lea r8, [rbx*2 + 2]
mov rdx, rdi
vzeroupper
call fcn.140009cb0
lea rdx, [r14*2 + 2]
cmp rdx, 0x1000
lea r15, [0x14004f660]
jb 0x140005d5a
mov rax, qword [rdi - 8]
add rdi, 0xfffffffffffffff8
sub rdi, rax
cmp rdi, 0x20
jae 0x1400068de
add r14, r14
add r14, 0x29
mov rdi, rax
mov rdx, r14
mov rcx, rdi
call fcn.1400135dc
mov qword [rbp + 0x1220], rsi
jmp 0x140005dbf
vmovups ymm0, ymmword [0x140045c36]
vmovups ymmword [rsi + 0x32], ymm0
vmovups ymm0, ymmword [0x140045c24]
vmovups ymmword [rsi + 0x20], ymm0
vmovups ymm0, ymmword [str._coolmathgames__failed_to_send_a_packet__]
vmovups ymmword [rsi], ymm0
lea rcx, [rsi + 0x52]
lea r8, [rbx*2 + 2]
lea rdx, [rbp + 0x1220]
vzeroupper
call fcn.140009cb0
mov qword [rbp + 0x1220], rsi
lea r15, [0x14004f660]
mov rax, qword [rbp + 0x1220]
mov qword [rbp + 0x1240], rax
vmovups xmm0, xmmword [rbp + 0x1228]
vmovups xmmword [rbp + 0x1248], xmm0
mov rax, qword [rbp + 0x1238]
mov qword [rbp + 0x1258], rax
mov qword [rbp + 0x1230], 0
mov qword [rbp + 0x1238], 7
mov word [rbp + 0x1220], 0
mov r14, qword [rbp + 0x1250]
mov rax, qword [rbp + 0x1258]
cmp rax, r14
jne 0x140005eb0
cmp r14, r13
je 0x1400068f7
lea rdi, [r14 + 1]
mov rax, rdi
or rax, 7
cmp rax, r13
ja 0x1400068e8
mov rbx, r14
shr rbx, 1
mov rcx, r13
sub rcx, rbx
add rbx, r14
cmp rax, rbx
cmova rbx, rax
cmp rcx, r14
cmovb rbx, r13
mov rax, rbx
inc rax
js 0x1400068fc
je 0x140005ee3
lea rcx, [rax + rax]
cmp rax, 0x800
jb 0x140005ee7
movabs rdx, 0x7fffffffffffffed
cmp rax, rdx
jae 0x1400068e8
add rcx, 0x27
call fcn.140013598
mov rsi, rax
add rsi, 0x27
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x140005eef
lea rcx, [r14 + 1]
mov qword [rbp + 0x1250], rcx
lea rcx, [rbp + 0x1240]
cmp rax, 8
jb 0x140005ecf
mov rcx, qword [rbp + 0x1240]
mov word [rcx + r14*2], 0x29
mov word [rcx + r14*2 + 2], 0
jmp 0x140005f81
xor esi, esi
jmp 0x140005eef
call fcn.140013598
mov rsi, rax
mov qword [rbp + 0x1250], rdi
mov qword [rbp + 0x1258], rbx
lea rdi, [r14 + r14]
cmp r14, 8
jb 0x140005f60
mov rbx, qword [rbp + 0x1240]
mov rcx, rsi
mov rdx, rbx
mov r8, rdi
call fcn.140009cb0
mov dword [rsi + r14*2], 0x29
lea rdx, [rdi + 2]
cmp rdx, 0x1000
jb 0x140005f50
mov rax, qword [rbx - 8]
add rbx, 0xfffffffffffffff8
sub rbx, rax
cmp rbx, 0x20
jae 0x1400068de
add rdi, 0x29
mov rbx, rax
mov rdx, rdi
mov rcx, rbx
call fcn.1400135dc
jmp 0x140005f7a
mov rcx, rsi
lea rdx, [rbp + 0x1240]
mov r8, rdi
call fcn.140009cb0
mov dword [rsi + r14*2], 0x29
mov qword [rbp + 0x1240], rsi
mov rax, qword [rbp + 0x1240]
mov qword [rbp + 0x11c0], rax
vmovups xmm0, xmmword [rbp + 0x1248]
vmovups xmmword [rbp + 0x11c8], xmm0
mov rax, qword [rbp + 0x1258]
mov qword [rbp + 0x11d8], rax
mov rax, qword [rbp + 0x1238]
cmp rax, 8
jb 0x140005ff9
mov rcx, qword [rbp + 0x1220]
lea rdx, [rax*2 + 2]
cmp rdx, 0x1000
jb 0x140005ff4
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rdx
cmp rcx, 0x20
jae 0x1400068de
add rax, rax
add rax, 0x29
mov rcx, rdx
mov rdx, rax
call fcn.1400135dc
mov rsi, qword [rbp + 0x11d0]
cmp qword [rbp + 0x11d8], 8
lea rdi, [rbp + 0x11c0]
jb 0x140006018
mov rdi, qword [rbp + 0x11c0]
mov rax, qword [0x14004f660]
movsxd rdx, dword [rax + 4]
mov r8, qword [rdx + r15 + 0x28]
mov rcx, qword [rdx + r15 + 0x48]
mov r14, r8
sub r14, rsi
mov ebx, 0
cmova rbx, r14
test r8, r8
mov r8d, 0
cmovle rbx, r8
mov qword [rbp + 0x11b0], r15
test rcx, rcx
je 0x14000606d
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140049cf8]
mov rax, qword [0x14004f660]
movsxd rdx, dword [rax + 4]
cmp dword [rdx + r15 + 0x10], 0
je 0x140006090
mov byte [rbp + 0x11b8], 0
mov ecx, 4
jmp 0x1400062a1
mov rcx, qword [rdx + r15 + 0x50]
test rcx, rcx
je 0x1400060c9
cmp rcx, r15
je 0x1400060c9
call fcn.140007830
mov rax, qword [0x14004f660]
movsxd rdx, dword [rax + 4]
cmp dword [rdx + r15 + 0x10], 0
sete byte [rbp + 0x11b8]
mov ecx, 4
jne 0x1400062a1
jmp 0x1400060d0
mov byte [rbp + 0x11b8], 1
mov ecx, dword [rdx + r15 + 0x18]
mov edx, 0x1c0
and ecx, edx
cmp ecx, 0x40
je 0x14000617f
test rbx, rbx
je 0x14000617f
nop
mov rax, qword [0x14004f660]
movsxd rax, dword [rax + 4]
mov rcx, qword [rax + r15 + 0x48]
movzx eax, word [rax + r15 + 0x58]
mov rdx, qword [rcx + 0x40]
mov r8, qword [rdx]
test r8, r8
je 0x140006140
mov r9, qword [rcx + 0x58]
mov r10d, dword [r9]
test r10d, r10d
jle 0x140006140
dec r10d
mov dword [r9], r10d
lea rcx, [r8 + 2]
mov qword [rdx], rcx
mov word [r8], ax
jmp 0x140006160
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x18]
mov r9, qword [0x140049cf8]
mov dword [rbp + 0x1214], 0
mov edx, eax
mov rax, r8
call r9
cmp ax, 0xffff
je 0x1400061d5
dec r14
lea r15, [0x14004f660]
jne 0x1400060f0
mov rax, qword [0x14004f660]
xor ebx, ebx
movsxd rax, dword [rax + 4]
mov rcx, qword [rax + r15 + 0x48]
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
mov r9, qword [0x140049cf8]
mov dword [rbp + 0x1214], 0
mov rdx, rdi
mov r8, rsi
call r9
mov ecx, 4
xor edi, edi
cmp rax, rsi
movabs r13, 0x7ffffffffffffffe
movabs r12, 0x7fffffffffffffff
lea r15, [0x14004f660]
je 0x140006232
jmp 0x14000628d
mov edi, 4
mov rbx, r14
movabs r13, 0x7ffffffffffffffe
movabs r12, 0x7fffffffffffffff
lea r15, [0x14004f660]
jmp 0x140006232
dec r10d
mov dword [r9], r10d
lea rcx, [r8 + 2]
mov qword [rdx], rcx
mov word [r8], ax
cmp ax, 0xffff
movabs r13, 0x7ffffffffffffffe
movabs r12, 0x7fffffffffffffff
lea r15, [0x14004f660]
je 0x140006288
sub rbx, 1
jb 0x140006284
mov rax, qword [0x14004f660]
movsxd rax, dword [rax + 4]
mov rcx, qword [rax + r15 + 0x48]
movzx eax, word [rax + r15 + 0x58]
mov rdx, qword [rcx + 0x40]
mov r8, qword [rdx]
test r8, r8
je 0x140006266
mov r9, qword [rcx + 0x58]
mov r10d, dword [r9]
test r10d, r10d
jg 0x140006200
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x18]
mov r9, qword [0x140049cf8]
mov dword [rbp + 0x1214], edi
mov edx, eax
mov rax, r8
call r9
jmp 0x140006211
mov ecx, edi
jmp 0x14000628d
mov ecx, 4
mov rax, qword [0x14004f660]
movsxd rax, dword [rax + 4]
mov qword [rax + r15 + 0x28], 0
mov rax, qword [0x14004f660]
movsxd rax, dword [rax + 4]
or ecx, dword [rax + r15 + 0x10]
xor edx, edx
cmp qword [rax + r15 + 0x48], 0
sete dl
shl edx, 2
and ecx, 0x17
or ecx, edx
mov dword [rax + r15 + 0x10], ecx
and ecx, dword [rax + r15 + 0x14]
jne 0x14000687d
lea rcx, [rbp + 0x11b0]
call fcn.140008cd0
call fcn.140007fc0
mov rcx, qword [rbp + 0x1208]
call qword [sym.imp.WS2_32.dll_FreeAddrInfoW]
mov rcx, qword [rbp + 0x1218]
call qword [sym.imp.WS2_32.dll_closesocket]
mov rax, qword [rbp + 0x11d8]
cmp rax, 8
jb 0x1400056d5
mov rcx, qword [rbp + 0x11c0]
lea rdx, [rax*2 + 2]
cmp rdx, 0x1000
jb 0x1400056d0
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rdx
cmp rcx, 0x20
jae 0x1400068de
add rax, rax
add rax, 0x29
mov rcx, rdx
mov rdx, rax
jmp 0x1400056d0
lea rcx, [rbp + 0x1190]
call fcn.140008e30
mov rax, qword [rbp + 0x11f8]
cmp rax, 8
jb 0x1400063d1
mov rcx, qword [rbp + 0x11e0]
lea rdx, [rax*2 + 2]
cmp rdx, 0x1000
jb 0x1400063cc
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rdx
cmp rcx, 0x20
jae 0x1400068de
add rax, rax
add rax, 0x29
mov rcx, rdx
mov rdx, rax
call fcn.1400135dc
lea rcx, [0x14004efd0]
call sub.libiomp5md.dll___kmpc_end
xor eax, eax
add rsp, 0x1308
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
add rsi, 0xfffffffffffffffe
sub rsi, rax
cmp rsi, 0xfffffffffffffffe
jne 0x1400055c6
lea rax, vtable.std::exception.0
mov qword [rbp + 0x1170], rax
lea rdx, [rbp + 0x1178]
vxorps xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0x1178], xmm0
lea rax, str.invalid_ip
mov qword [rbp + 0x1240], rax
mov byte [rbp + 0x1248], 1
lea rcx, [rbp + 0x1240]
call fcn.1400159a4
lea rdx, [0x14004ca18]
lea rcx, [rbp + 0x1170]
call fcn.1400148bc
mov rax, qword [rax + rdi + 0x40]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x1248], rcx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x140049cf8]
lea rcx, [rbp + 0x1240]
call fcn.140007a30
mov qword [rbp + 0x1188], rax
mov rcx, qword [rbp + 0x1248]
test rcx, rcx
movabs rsi, 0x7ffffffffffffffe
je 0x1400064c8
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x140049cf8]
test rax, rax
je 0x1400064c8
mov rcx, qword [rax]
mov r8, qword [rcx]
mov rcx, rax
mov edx, 1
mov rax, r8
call qword [0x140049cf8]
mov qword [rbp + 0x11f0], 0
cmp qword [rbp + 0x11f8], 8
jb 0x1400064e6
mov rax, qword [rbp + 0x11e0]
jmp 0x1400064ed
lea rax, [rbp + 0x11e0]
mov word [rax], 0
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
mov r8, qword [rax + rdi + 0x28]
lea rcx, [r8 - 1]
movabs rdx, 0x7ffffffffffffffd
cmp rcx, rdx
cmovae r8, rsi
mov qword [rbp + 0x1218], r8
mov rcx, qword [rax + rdi + 0x48]
mov rax, qword [rcx + 0x38]
mov rax, qword [rax]
test rax, rax
je 0x14000653d
mov rdx, qword [rcx + 0x50]
cmp dword [rdx], 0
jle 0x14000653d
movzx ebx, word [rax]
jmp 0x140006557
mov rax, qword [rcx]
mov rax, qword [rax + 0x30]
mov rdx, qword [0x140049cf8]
mov byte [rbp + 0x1277], 0
call rdx
mov bx, ax
xor r12d, r12d
xor r14d, r14d
jmp 0x140006574
dec r8d
mov dword [rdx], r8d
lea rdx, [rax + 2]
mov qword [rcx], rdx
movzx ebx, word [rax + 2]
mov r14b, 1
mov rax, qword [rbp + 0x1218]
sub rax, 1
jb 0x140006842
cmp bx, 0xffff
je 0x14000683c
mov qword [rbp + 0x1218], rax
mov rcx, qword [rbp + 0x1188]
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
mov r9, qword [0x140049cf8]
mov byte [rbp + 0x1277], r14b
mov dx, 0x48
mov r8d, ebx
call r9
test al, al
jne 0x140006842
mov rsi, qword [rbp + 0x11f0]
mov r13, qword [rbp + 0x11f8]
cmp rsi, r13
jae 0x140006610
lea rax, [rsi + 1]
mov qword [rbp + 0x11f0], rax
lea rax, [rbp + 0x11e0]
cmp r13, 8
jb 0x1400065f6
mov rax, qword [rbp + 0x11e0]
mov word [rax + rsi*2], bx
mov word [rax + rsi*2 + 2], 0
jmp 0x140006753
movabs rdx, 0x7ffffffffffffffe
cmp rsi, rdx
je 0x14000697c
lea r15, [rsi + 1]
mov rax, r15
or rax, 7
cmp rax, rdx
ja 0x140006964
mov rdi, r13
shr rdi, 1
mov rcx, rdx
sub rcx, rdi
add rdi, r13
cmp rax, rdi
cmova rdi, rax
cmp rcx, r13
cmovb rdi, rdx
mov rax, rdi
inc rax
js 0x140006970
je 0x1400066a2
lea rcx, [rax + rax]
cmp rax, 0x800
jb 0x1400066a7
movabs rdx, 0x7fffffffffffffed
cmp rax, rdx
jae 0x140006964
add rcx, 0x27
mov byte [rbp + 0x1277], r14b
call fcn.140013598
mov r14, rax
add r14, 0x27
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x1400066b6
xor r14d, r14d
jmp 0x1400066b6
mov byte [rbp + 0x1277], r14b
call fcn.140013598
mov r14, rax
mov qword [rbp + 0x11f0], r15
mov qword [rbp + 0x11f8], rdi
lea r8, [rsi + rsi]
cmp r13, 8
jb 0x140006730
mov r15, qword [rbp + 0x11e0]
mov rcx, r14
mov rdx, r15
call fcn.140009cb0
mov word [r14 + rsi*2], bx
mov word [r14 + rsi*2 + 2], 0
lea rdx, [r13*2 + 2]
cmp rdx, 0x1000
jb 0x14000675c
mov rax, qword [r15 - 8]
add r15, 0xfffffffffffffff8
sub r15, rax
cmp r15, 0x20
lea rsi, [0x14004f5c0]
jae 0x1400068de
add r13, r13
add r13, 0x29
mov r15, rax
mov rdx, r13
jmp 0x140006763
mov rcx, r14
lea rdx, [rbp + 0x11e0]
call fcn.140009cb0
mov word [r14 + rsi*2], bx
mov word [r14 + rsi*2 + 2], 0
mov qword [rbp + 0x11e0], r14
lea rsi, [0x14004f5c0]
jmp 0x140006772
lea rsi, [0x14004f5c0]
mov rcx, r15
call fcn.1400135dc
mov qword [rbp + 0x11e0], r14
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
mov rbx, qword [rax + rsi + 0x48]
mov rcx, qword [rbx + 0x38]
mov rax, qword [rcx]
test rax, rax
je 0x1400067c0
mov rdx, qword [rbx + 0x50]
mov r8d, dword [rdx]
cmp r8d, 2
jge 0x140006560
cmp r8d, 1
jne 0x1400067c0
mov dword [rdx], 0
lea rdx, [rax + 2]
mov qword [rcx], rdx
movzx eax, word [rax]
jmp 0x1400067da
mov rax, qword [rbx]
mov rax, qword [rax + 0x38]
mov rdx, qword [0x140049cf8]
mov byte [rbp + 0x1277], 1
mov rcx, rbx
call rdx
cmp ax, 0xffff
je 0x140006830
mov rax, qword [rbx + 0x38]
mov rax, qword [rax]
test rax, rax
je 0x140006800
mov rcx, qword [rbx + 0x50]
cmp dword [rcx], 0
jle 0x140006800
movzx ebx, word [rax]
mov r14b, 1
jmp 0x140006574
mov rax, qword [rbx]
mov rax, qword [rax + 0x30]
mov rdx, qword [0x140049cf8]
mov byte [rbp + 0x1277], 1
mov rcx, rbx
call rdx
mov bx, ax
mov r14b, 1
jmp 0x140006574
mov bx, 0xffff
mov r14b, 1
jmp 0x140006574
mov r12d, 1
mov rax, qword [0x14004f5c0]
movsxd rax, dword [rax + 4]
lea rdi, [0x14004f5c0]
mov qword [rax + rdi + 0x28], 0
test r14b, r14b
movabs r13, 0x7ffffffffffffffe
jne 0x1400054d2
jmp 0x1400054ce
vzeroupper
call fcn.140007f40
test cl, 2
lea rax, [0x140044967]
lea r8, [0x140044951]
cmove r8, rax
test cl, 4
lea rdx, [0x14004497c]
cmove rdx, r8
mov dword [rbp + 0x1220], 1
lea rax, [0x140042880]
mov qword [rbp + 0x1228], rax
lea rcx, [rbp + 0x1240]
lea r8, [rbp + 0x1220]
call fcn.140007400
lea rdx, [0x14004cac8]
lea rcx, [rbp + 0x1240]
call fcn.1400148bc
call fcn.14001eb84
call fcn.140007f60
call fcn.140007f60
call fcn.140007f40
call fcn.140007f60
call fcn.140007f40
call fcn.140007f60
test r12b, 2
lea rax, [0x140044967]
lea rcx, [0x140044951]
cmove rcx, rax
test r12b, 4
lea rdx, [0x14004497c]
cmove rdx, rcx
mov dword [rbp + 0x11c0], 1
lea rax, [0x140042880]
mov qword [rbp + 0x11c8], rax
lea rcx, [rbp + 0x1240]
lea r8, [rbp + 0x11c0]
call fcn.140007400
lea rdx, [0x14004cac8]
lea rcx, [rbp + 0x1240]
call fcn.1400148bc
mov byte [rbp + 0x1277], r14b
call fcn.140007f60
mov byte [rbp + 0x1277], r14b
call fcn.140007f60
mov byte [rbp + 0x1277], r14b
call fcn.140007f40
test al, 2
lea rax, [0x140044967]
lea r8, [0x140044951]
cmove r8, rax
test cl, 4
lea rdx, [0x14004497c]
cmove rdx, r8
mov dword [rbp + 0x11c0], 1
lea rax, [0x140042880]
mov qword [rbp + 0x11c8], rax
lea rcx, [rbp + 0x1240]
lea r8, [rbp + 0x11c0]
call fcn.140007400
lea rdx, [0x14004cac8]
lea rcx, [rbp + 0x1240]
call fcn.1400148bc
test cl, 2
lea rcx, [0x140044967]
lea r8, [0x140044951]
cmove r8, rcx
test al, 4
lea rdx, [0x14004497c]
cmove rdx, r8
mov dword [rbp + 0x11c0], 1
lea rax, [0x140042880]
mov qword [rbp + 0x11c8], rax
lea rcx, [rbp + 0x1240]
lea r8, [rbp + 0x11c0]
call fcn.140007400
lea rdx, [0x14004cac8]
lea rcx, [rbp + 0x1240]
call fcn.1400148bc
xor r12d, r12d
movzx r14d, byte [rbp + 0x1277]
jmp 0x140006842