Function at 0x14003a6b0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0x1d0]
sub rsp, 0x2d0
mov rax, qword [0x140ce2080]
xor rax, rsp
mov qword [rbp + 0x1c0], rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm0
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], rax
cmp dword [0x14128073c], eax
jbe 0x14003ae5f
mov eax, dword [0x141281a44]
dec eax
cmp eax, 9
ja case.default.0x14003a741
cdqe
lea rdx, [0x140000000]
mov ecx, dword [rdx + rax*4 + 0x3af44]
add rcx, rdx
jmp rcx
mov dword [rbp + 0x18], 0xc1a3ecc8
mov dword [rbp + 0x1c], 0xefe9e7f7
mov dword [rbp + 0x20], 0x100e6ec
xor ecx, ecx
nop word [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx + 0x18], al
inc rcx
cmp rcx, 0xa
jb 0x14003a760
mov byte [rbp + 0x23], 0
lea rbx, [rbp + 0x18]
jmp 0x14003a9eb
mov dword [rbp - 8], 0xc8a3ecc8
mov dword [rbp - 4], 0xe3eef0ec
mov word [rbp], 0x100
xor ecx, ecx
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 8], al
inc rcx
cmp rcx, 8
jb 0x14003a7a0
mov byte [rbp + 1], 0
lea rbx, [rbp - 8]
jmp 0x14003a9eb
mov dword [rbp - 0x20], 0xd0a3ecc8
mov dword [rbp - 0x1c], 0x100cbc1
xor ecx, ecx
nop dword [rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x20], al
inc rcx
cmp rcx, 6
jb 0x14003a7d0
mov byte [rbp - 0x19], 0
lea rbx, [rbp - 0x20]
jmp 0x14003a9eb
mov dword [rbp + 0x28], 0xc9a3ecc8
mov dword [rbp + 0x2c], 0xe5e6f4ec
mov dword [rbp + 0x30], 0x100f8e8
xor ecx, ecx
nop dword [rax]
nop dword [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx + 0x28], al
inc rcx
cmp rcx, 0xa
jb 0x14003a810
mov byte [rbp + 0x33], 0
lea rbx, [rbp + 0x28]
jmp 0x14003a9eb
mov dword [rbp + 8], 0xd7a3ecc8
mov dword [rbp + 0xc], 0xe7efe8e4
mov word [rbp + 0x10], 0xe2
mov byte [rbp + 0x12], 1
xor ecx, ecx
nop word [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx + 8], al
inc rcx
cmp rcx, 9
jb 0x14003a850
mov byte [rbp + 0x12], 0
lea rbx, [rbp + 8]
jmp 0x14003a9eb
mov dword [rbp + 0x38], 0xcfa3ecc8
mov dword [rbp + 0x3c], 0xe3e6f4e4
mov dword [rbp + 0x40], 0x100e4e0
xor ecx, ecx
nop dword [rax]
nop dword [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx + 0x38], al
inc rcx
cmp rcx, 0xa
jb 0x14003a890
mov byte [rbp + 0x43], 0
lea rbx, [rbp + 0x38]
jmp 0x14003a9eb
mov dword [rbp + 0x58], 0xc0a3ecc8
mov dword [rbp + 0x5c], 0xe6eeebea
mov dword [rbp + 0x60], 0xe3e2fee8
mov word [rbp + 0x64], 0xe3
mov byte [rbp + 0x66], 1
xor ecx, ecx
nop
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx + 0x58], al
inc rcx
cmp rcx, 0xd
jb 0x14003a8d0
mov byte [rbp + 0x66], 0
lea rbx, [rbp + 0x58]
jmp 0x14003a9eb
mov dword [rbp + 0x68], 0xc7a3ecc8
mov dword [rbp + 0x6c], 0xfae2e3ed
mov dword [rbp + 0x70], 0xfeeadaa9
mov word [rbp + 0x74], 0xe6
mov byte [rbp + 0x76], 1
xor ecx, ecx
nop
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx + 0x68], al
inc rcx
cmp rcx, 0xd
jb 0x14003a910
mov byte [rbp + 0x76], 0
lea rbx, [rbp + 0x68]
jmp 0x14003a9eb
mov dword [rbp - 0x18], 0xcaa3ecc8
mov dword [rbp - 0x14], 0xe6f5f0
mov byte [rbp - 0x10], 1
xor ecx, ecx
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx - 0x18], al
inc rcx
cmp rcx, 7
jb 0x14003a950
mov byte [rbp - 0x10], 0
lea rbx, [rbp - 0x18]
jmp 0x14003a9eb
mov dword [rbp + 0x48], 0xd0a3ecc8
mov dword [rbp + 0x4c], 0xe6eee7f7
mov dword [rbp + 0x50], 0xece4e0
mov byte [rbp + 0x54], 1
xor ecx, ecx
nop dword [rax + rax]
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx + 0x48], al
inc rcx
cmp rcx, 0xb
jb 0x14003a990
mov byte [rbp + 0x54], 0
lea rbx, [rbp + 0x48]
jmp 0x14003a9eb
mov dword [rbp + 0x78], 0xe7f7e3cc
mov dword [rbp + 0x7c], 0xfcd4a6ed
mov dword [rbp + 0x80], 0xe5fff8e8
mov dword [rbp + 0x84], 0x100e9e3
xor ecx, ecx
nop
lea eax, [rcx - 0x7f]
xor byte [rbp + rcx + 0x78], al
inc rcx
cmp rcx, 0xe
jb 0x14003a9d0
mov byte [rbp + 0x87], 0
lea rbx, [rbp + 0x78]
mov rcx, qword [0x141281b18]
sub rcx, qword [0x141281b10]
movabs rax, 0x3159721ed7e75347
imul rcx
mov r8, rdx
sar r8, 7
mov rax, r8
shr rax, 0x3f
add r8, rax
je 0x14003acc0
lea r9, [rbp + 0x1bd]
movabs r10, 0xcccccccccccccccd
nop
dec r9
mov rax, r10
mul r8
shr rdx, 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 r8, rdx
test rdx, rdx
jne 0x14003aa30
mov qword [rbp + 0x128], rdx
movdqa xmm0, xmmword [0x140cc4310]
movdqu xmmword [rbp + 0x138], xmm0
mov byte [rbp + 0x128], dl
lea rax, [rbp + 0x1bd]
cmp r9, rax
je 0x14003aa9d
lea r8, [rbp + 0x1bd]
sub r8, r9
mov rdx, r9
lea rcx, [rbp + 0x128]
call fcn.14002c840
nop
mov r9d, Ordinal_30
lea r8, [0x140cc02c0]
xor edx, edx
lea rcx, [rbp + 0x128]
call fcn.14003afd0
mov qword [rbp + 0xc8], 0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xd8], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xc8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xd8], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rcx, [rbp + 0x128]
call fcn.14002c7e0
lea rax, [rbp + 0xc8]
cmp qword [rbp + 0xe0], 0x10
cmovae rax, qword [rbp + 0xc8]
mov qword [rsp + 0x48], rax
mov edx, dword [0x1412807c0]
lea rcx, [rbp + 0x188]
call fcn.14000eb30
mov rdi, rax
mov edx, dword [0x1412807bc]
lea rcx, [rbp + 0x168]
call fcn.14000eb30
mov rsi, rax
mov qword [rbp + 0x88], 0
movdqa xmm0, xmmword [0x140cc4310]
movdqu xmmword [rbp + 0x98], xmm0
mov byte [rbp + 0x88], 0
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], 0
jne 0x14003ab71
mov rdx, rbx
lea rcx, [rbp + 0x88]
call fcn.14002c840
nop
lea rdx, [0x140cc02f0]
lea rcx, [rbp + 0x88]
call fcn.14002c5f0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x108], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x118], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9, rsi
lea r8, [rbp + 0x108]
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x148]
call fcn.14002ccd0
nop
lea rdx, [0x140cc02e0]
lea rcx, [rbp + 0x148]
call fcn.14002c5f0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xe8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xf8], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9, rdi
lea r8, [rbp + 0xe8]
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0xa8]
call fcn.14002ccd0
nop
lea rcx, [rbp + 0xe8]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0x148]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0x108]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0x88]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0x168]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0x188]
call fcn.14002c7e0
lea rax, [rbp + 0xa8]
cmp qword [rbp + 0xc0], 0x10
cmovae rax, qword [rbp + 0xa8]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0xa8]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0xc8]
call fcn.14002c7e0
jmp 0x14003ae77
lea rax, [0x140cc0300]
mov qword [rsp + 0x48], rax
mov edx, dword [0x1412807c0]
lea rcx, [rbp + 0x168]
call fcn.14000eb30
mov rdi, rax
mov edx, dword [0x1412807bc]
lea rcx, [rbp + 0x188]
call fcn.14000eb30
mov rsi, rax
mov qword [rbp + 0x88], 0
movdqa xmm0, xmmword [0x140cc4310]
movdqu xmmword [rbp + 0x98], xmm0
mov byte [rbp + 0x88], 0
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rbx + r8], 0
jne 0x14003ad20
mov rdx, rbx
lea rcx, [rbp + 0x88]
call fcn.14002c840
nop
lea rdx, [0x140cc02f0]
lea rcx, [rbp + 0x88]
call fcn.14002c5f0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xe8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xf8], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9, rsi
lea r8, [rbp + 0xe8]
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0x148]
call fcn.14002ccd0
nop
lea rdx, [0x140cc02e0]
lea rcx, [rbp + 0x148]
call fcn.14002c5f0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x108], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x118], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9, rdi
lea r8, [rbp + 0x108]
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp + 0xa8]
call fcn.14002ccd0
nop
lea rcx, [rbp + 0x108]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0x148]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0xe8]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0x88]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0x188]
call fcn.14002c7e0
nop
lea rcx, [rbp + 0x168]
call fcn.14002c7e0
lea rax, [rbp + 0xa8]
cmp qword [rbp + 0xc0], 0x10
cmovae rax, qword [rbp + 0xa8]
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0xa8]
call fcn.14002c7e0
jmp 0x14003ae77
lea rax, [0x140cc0310]
mov qword [rsp + 0x48], rax
lea rax, [0x140cc0320]
mov qword [rsp + 0x40], rax
mov rax, qword [0x141281bd0]
mov qword [rsp + 0x50], rax
lea rax, [0x140cc0338]
mov qword [rsp + 0x60], rax
lea rax, [0x140cc0378]
mov qword [rbp - 0x48], rax
lea rax, [0x140cc0388]
mov qword [rbp - 0x40], rax
lea rcx, [0x141282c40]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x14003aebf
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
mov r8d, dword [reloc.WS2_32.dll_accept]
lea eax, [r8 + 1]
mov dword [reloc.WS2_32.dll_accept], eax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea rcx, [0x1412b3708]
call fcn.14003fe20
mov qword [0x1412b3700], rax
mov eax, 1
xchg byte [0x141282c3e], al
lea rcx, [0x141282c40]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rcx, qword [0x1412b35c0]
test rcx, rcx
je 0x14003af1b
add rcx, 0x58
call qword [sym.imp.MSVCP140.dll__Cnd_broadcast]
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.1401308a0
lea r11, [rsp + 0x2d0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret