Function at 0x14000a340
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 - 0x57]
sub rsp, 0xf0
mov rax, qword [0x1400f0e40]
xor rax, rsp
mov qword [rbp + 0x47], rax
movzx edx, byte [0x1400f68ba]
xor esi, esi
movzx eax, dl
mov qword [rbp - 5], rsi
neg al
mov qword [rbp + 0xf], 2
mov eax, esi
mov qword [rbp + 0x27], 2
sbb ecx, ecx
mov qword [rbp - 0x19], rsi
and ecx, 0x3c
mov dword [rbp - 9], 0x1c
test dl, dl
mov dword [rbp - 0x11], ecx
lea edx, [rsi + 1]
mov dword [rbp + 0xb], 0x20
setne al
mov qword [rbp + 3], 1
mov dword [rbp - 0xd], eax
xor r9d, r9d
mov rax, qword [0x1400f6e38]
xor r8d, r8d
mov qword [rbp + 0x17], rax
xor ecx, ecx
lea rax, [0x1400f6e20]
mov qword [rbp + 0x1f], 1
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x50], rax
lea rax, [0x1400f6e18]
mov qword [rsp + 0x48], rax
lea rax, [0x1400f6e28]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x19]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x39]
mov dword [rsp + 0x30], 7
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x39], 0xb000
call sub.d3d11.dll_D3D11CreateDeviceAndSwapChain
mov rcx, qword [0x1400f6e28]
lea r9, [rbp - 0x31]
lea r8, [0x1400a73d0]
xor edx, edx
mov rax, qword [rcx]
call qword [rax + 0x48]
mov rcx, qword [0x1400f6e18]
lea r9, [0x1400f6e30]
mov rdx, qword [rbp - 0x31]
xor r8d, r8d
mov rax, qword [rcx]
call qword [rax + 0x48]
mov rcx, qword [rbp - 0x31]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov qword [rsp + 0x30], 2
lea r9d, [rsi + 8]
mov qword [rsp + 0x28], shutdown
lea rcx, str.1.90_WIP
mov edx, 0x37c0
mov qword [rsp + 0x20], reloc.WS2_32.dll_recv
mov r8d, 0x460
call fcn.140019540
xor ecx, ecx
call fcn.1400191d0
call fcn.14001c830
mov rdi, rax
mov rbx, qword [rax + 0x30]
or dword [rax], 3
mov rcx, rbx
call fcn.140035a10
movss xmm3, dword [0x1400a78c4]
lea rdx, [0x1400cf150]
mov qword [rsp + 0x28], rax
mov r8d, 0xa06c
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.1400304c0
mov qword [0x1400f6dd8], rax
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.140035a10
movss xmm3, dword [0x1400a78cc]
lea rdx, [0x1400cf150]
mov qword [rsp + 0x28], rax
mov r8d, 0xa06c
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.1400304c0
mov qword [0x1400f6e00], rax
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.140035a10
movss xmm3, dword [0x1400a78d0]
lea rdx, [0x1400d91c0]
mov qword [rsp + 0x28], rax
mov r8d, 0xa25c
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.1400304c0
mov qword [0x1400f6de0], rax
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.140035a10
movss xmm3, dword [0x1400a78c4]
lea rdx, [0x1400d91c0]
mov qword [rsp + 0x28], rax
mov r8d, 0xa25c
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.1400304c0
mov qword [0x1400f6de8], rax
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.140035a10
movss xmm3, dword [0x1400a78c8]
lea rdx, [0x1400d91c0]
mov qword [rsp + 0x28], rax
mov r8d, 0xa25c
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.1400304c0
mov qword [0x1400f6df0], rax
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.140035a10
movss xmm3, dword [0x1400a78c0]
lea rdx, [0x1400d91c0]
mov qword [rsp + 0x28], rax
mov r8d, 0xa25c
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.1400304c0
mov qword [0x1400f6df8], rax
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.140035a10
movss xmm3, dword [0x1400a78bc]
lea rdx, [0x1400e3420]
mov qword [rsp + 0x28], rax
mov r8d, 0x54c
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.1400304c0
mov qword [0x1400f6e08], rax
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.140035a10
movss xmm3, dword [0x1400a78bc]
lea rdx, [0x1400e3970]
mov qword [rsp + 0x28], rax
mov r8d, 0xb8d8
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.1400304c0
movsd xmm0, qword [0x1400a73e0]
mov qword [0x1400f6e10], rax
mov eax, dword [0x1400a73e8]
mov dword [rbp + 0x3f], eax
movzx eax, word [0x1400a73ec]
movsd qword [rbp + 0x37], xmm0
cmp dword [0x1400f0e00], 2
mov ecx, esi
mov word [rbp + 0x43], ax
movzx eax, byte [0x1400a73ee]
mov byte [rbp + 0x45], al
jl 0x14000a7c2
movdqa xmm2, xmmword [0x1400a79b0]
mov ecx, 8
movdqa xmm3, xmmword [0x1400a79c0]
movdqa xmm1, xmm2
movdqa xmm4, xmmword [0x1400a7c10]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400a79d0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [0x1400a73e0]
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
andps xmm2, xmmword [0x1400a79e0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.4444444444444444]
xorps xmm2, xmm0
punpckldq xmm1, xmm3
movd dword [rbp + 0x37], xmm2
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400a79d0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rbp + 0x3b]
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400a79e0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.4444444444444444]
xorps xmm2, xmm0
movd dword [rbp + 0x3b], xmm2
movsxd rax, ecx
lea r8, [rbp + 0x37]
add r8, rax
nop dword [rax]
mov eax, 0x8d3dcb09
lea r8, [r8 + 1]
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x3a
movzx eax, cl
inc ecx
sub al, dl
add al, 0x34
xor byte [r8 - 1], al
cmp ecx, 0xf
jl 0x14000a7d0
movss xmm2, dword [0x1400a78bc]
lea rdx, [rbp + 0x37]
mov rcx, qword [rdi + 0x30]
xor r9d, r9d
mov qword [rsp + 0x20], rsi
call fcn.14002ffd0
mov rcx, qword [0x1400f6e38]
mov qword [0x1400f6850], rax
call fcn.140044300
mov rdx, qword [0x1400f6e20]
mov rcx, qword [0x1400f6e18]
call fcn.140043370
mov rcx, qword [0x1400f6e18]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov al, 1
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.14009fba0
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret