Function at 0x18003c540
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x28
cmp byte [rcx + 0x20], 0
mov rax, rcx
je 0x18003d315
movdqa xmm3, xmmword [0x180164c10]
xor r9d, r9d
movdqa xmm4, xmmword [0x180164b70]
mov r8d, r9d
movdqa xmm5, xmmword [0x180164bb0]
mov qword [rsp + 0x38], rbp
mov ebp, dword [0x180182290]
movaps xmmword [rsp + 0x10], xmm6
movaps xmmword [rsp], xmm7
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rdi
cmp ebp, 5
jl 0x18003c6ba
movdqa xmm2, xmmword [0x18016d340]
lea r8, [rcx + 4]
mov rbx, 0xfffffffffffffffe
mov rsi, rcx
mov edi, 2
sub rbx, rcx
neg rsi
sub rdi, rcx
mov r11, 0xfffffffffffffffc
mov rdx, r8
sub r11, rcx
nop dword [rax]
lea rcx, [r11 + rdx]
movq xmm0, rcx
movzx ecx, word [rdx - 4]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 4], cx
lea rcx, [rbx + rdx]
movq xmm0, rcx
movzx ecx, word [rdx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 2], cx
lea rcx, [rsi + rdx]
movq xmm0, rcx
movzx ecx, word [rdx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx], cx
lea rcx, [rdi + rdx]
movq xmm0, rcx
movzx ecx, word [rdx + 2]
punpcklqdq xmm0, xmm0
lea rdx, [rdx + 8]
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 6], cx
lea rcx, [r11 + rdx]
cmp rcx, 0x20
jb 0x18003c5d0
jmp 0x18003c713
movabs r10, 0xfefe7ffefe7f7ffe
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r8b
mov rdx, r10
and cl, 3
shl cl, 3
shr rdx, cl
xor byte [rax + r8], dl
inc r8
cmp r8, 0x20
jb 0x18003c6d0
mov rbx, 0xfffffffffffffffe
lea r8, [rax + 4]
mov rsi, rax
mov edi, 2
sub rbx, rax
neg rsi
sub rdi, rax
mov r11, 0xfffffffffffffffc
sub r11, rax
movzx ecx, byte [rax + 9]
mov r10, r9
movzx edx, byte [r8]
not cl
xor byte [rax], 0xf9
xor cl, 0xa0
xor byte [rax + 1], 0x88
not dl
xor byte [rax + 2], 0x9f
xor dl, 0x7f
xor byte [rax + 3], 0xdf
xor dl, 0xbf
xor byte [rax + 5], 0x6c
xor byte [rax + 6], 0x9c
xor byte [rax + 7], 0xf9
xor byte [rax + 8], 0xcb
xor byte [rax + 0xa], 0xfe
xor byte [rax + 0xb], 0x5d
xor byte [rax + 0xc], 0xac
xor byte [rax + 0xd], 0xbc
xor byte [rax + 0xf], 0x8b
xor byte [rax + 0x10], 0xde
xor byte [rax + 0x11], 0x3c
xor byte [rax + 0x12], 0xbd
xor byte [rax + 0x14], 0xdf
xor byte [rax + 0x15], 0xfa
xor byte [rax + 0x16], 0xaa
xor byte [rax + 0x17], 0x3c
xor byte [rax + 0x19], 0xbd
xor byte [rax + 0x1a], 0xef
xor byte [rax + 0x1b], 0x9f
xor byte [rax + 0x1c], 0xfb
xor byte [rax + 0x1e], 0xfc
xor byte [rax + 0x1f], 0xdc
movdqa xmm6, xmmword [0x180164be0]
mov byte [rax + 9], cl
movzx ecx, byte [rax + 0xe]
not cl
mov qword [rsp + 0x20], r14
xor cl, 0xe5
mov byte [r8], dl
mov byte [rax + 0xe], cl
movzx ecx, byte [rax + 0x13]
not cl
xor cl, 0xd3
mov byte [rax + 0x13], cl
movzx ecx, byte [rax + 0x18]
not cl
xor cl, 0x83
mov byte [rax + 0x18], cl
movzx ecx, byte [rax + 0x1d]
not cl
xor cl, 0x17
mov byte [rax + 0x1d], cl
cmp ebp, 5
jl 0x18003c8da
movdqa xmm2, xmmword [0x1801695d0]
mov rdx, r8
nop dword [rax]
lea rcx, [rdx + r11]
movq xmm0, rcx
movzx ecx, word [rdx - 4]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 4], cx
lea rcx, [rdx + rbx]
movq xmm0, rcx
movzx ecx, word [rdx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 2], cx
lea rcx, [rdx + rsi]
movq xmm0, rcx
movzx ecx, word [rdx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx], cx
lea rcx, [rdx + rdi]
movq xmm0, rcx
movzx ecx, word [rdx + 2]
punpcklqdq xmm0, xmm0
lea rdx, [rdx + 8]
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 6], cx
lea rcx, [rdx + r11]
cmp rcx, 0x20
jb 0x18003c7f0
jmp 0x18003c90d
movabs r14, 0x99dffd9dffd9dbbf
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r10b
mov rdx, r14
and cl, 7
shl cl, 3
shr rdx, cl
xor byte [rax + r10], dl
inc r10
cmp r10, 0x20
jb 0x18003c8f0
movdqa xmm2, xmmword [0x180169d70]
mov r10, r9
movdqa xmm7, xmmword [0x180164b80]
movdqa xmm1, xmm2
movdqu xmm0, xmmword [rax]
xorps xmm1, xmm0
movdqu xmmword [rax], xmm1
movdqu xmm0, xmmword [rax + 0x10]
xorps xmm2, xmm0
movdqu xmmword [rax + 0x10], xmm2
cmp ebp, 5
jl 0x18003ca3a
movdqa xmm2, xmmword [0x1801679f0]
mov rdx, r8
lea rcx, [r11 + rdx]
movq xmm0, rcx
movzx ecx, word [rdx - 4]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 4], cx
lea rcx, [rbx + rdx]
movq xmm0, rcx
movzx ecx, word [rdx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 2], cx
lea rcx, [rsi + rdx]
movq xmm0, rcx
movzx ecx, word [rdx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx], cx
lea rcx, [rdi + rdx]
movq xmm0, rcx
movzx ecx, word [rdx + 2]
punpcklqdq xmm0, xmm0
lea rdx, [rdx + 8]
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 6], cx
lea rcx, [r11 + rdx]
cmp rcx, 0x20
jb 0x18003c950
jmp 0x18003ca6d
movabs r14, 0x77f77f7f77ff7fff
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r10b
mov rdx, r14
and cl, 1
shl cl, 3
shr rdx, cl
xor byte [rax + r10], dl
inc r10
cmp r10, 0x20
jb 0x18003ca50
xor byte [rax], 0xf7
mov r10, r9
xor byte [rax + 1], 0x76
xor byte [rax + 2], 0x76
xor byte [rax + 3], 0xf7
xor byte [r8], 0x76
xor byte [rax + 5], 0x76
xor byte [rax + 6], 0xf7
xor byte [rax + 7], 0x76
xor byte [rax + 8], 0x76
xor byte [rax + 9], 0xf7
xor byte [rax + 0xa], 0x76
xor byte [rax + 0xb], 0x76
xor byte [rax + 0xc], 0xf7
xor byte [rax + 0xd], 0x76
xor byte [rax + 0xe], 0x76
xor byte [rax + 0xf], 0xf7
xor byte [rax + 0x10], 0x76
xor byte [rax + 0x11], 0x76
xor byte [rax + 0x12], 0xf7
xor byte [rax + 0x13], 0x76
xor byte [rax + 0x14], 0x76
xor byte [rax + 0x15], 0xf7
xor byte [rax + 0x16], 0x76
xor byte [rax + 0x17], 0x76
xor byte [rax + 0x18], 0xf7
xor byte [rax + 0x19], 0x76
xor byte [rax + 0x1a], 0x76
xor byte [rax + 0x1b], 0xf7
xor byte [rax + 0x1c], 0x76
xor byte [rax + 0x1d], 0x76
xor byte [rax + 0x1e], 0xf7
xor byte [rax + 0x1f], 0x76
cmp ebp, 5
jl 0x18003cbed
movdqa xmm2, xmmword [0x180166a70]
mov rdx, r8
lea rcx, [r11 + rdx]
movq xmm0, rcx
movzx ecx, word [rdx - 4]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 4], cx
lea rcx, [rbx + rdx]
movq xmm0, rcx
movzx ecx, word [rdx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 2], cx
lea rcx, [rsi + rdx]
movq xmm0, rcx
movzx ecx, word [rdx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx], cx
lea rcx, [rdi + rdx]
movq xmm0, rcx
movzx ecx, word [rdx + 2]
punpcklqdq xmm0, xmm0
lea rdx, [rdx + 8]
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 6], cx
lea rcx, [r11 + rdx]
cmp rcx, 0x20
jb 0x18003cb03
jmp 0x18003cc1d
movabs r14, 0x5d55df7fddf5dff7
nop word [rax + rax]
movzx ecx, r10b
mov rdx, r14
and cl, 3
shl cl, 3
shr rdx, cl
xor byte [rax + r10], dl
inc r10
cmp r10, 0x20
jb 0x18003cc00
xor byte [r8], 0x5e
mov r10, r9
movzx ecx, byte [rax + 2]
movzx edx, byte [r8]
not cl
xor byte [rax], 0xf9
xor cl, 0x8b
xor byte [rax + 1], 0x60
xor dl, 0x7f
xor byte [rax + 3], 0x31
xor dl, 0x32
xor byte [rax + 5], 0x35
xor byte [rax + 6], 0xf0
xor byte [rax + 7], 0xb5
xor byte [rax + 9], 0x1f
xor byte [rax + 0xa], 0x60
xor byte [rax + 0xb], 0x29
xor byte [rax + 0xc], 0x39
xor byte [rax + 0xd], 0xb4
xor byte [rax + 0xf], 0xf1
xor byte [rax + 0x10], 0x65
xor byte [rax + 0x11], 0xe8
xor byte [rax + 0x12], 0x2d
xor byte [rax + 0x13], 0x56
xor byte [rax + 0x15], 0x24
xor byte [rax + 0x16], 0x39
xor byte [rax + 0x17], 0xe5
xor byte [rax + 0x18], 0xc7
xor byte [rax + 0x19], 0xf8
xor byte [rax + 0x1b], 0x2d
xor byte [rax + 0x1c], 0xe4
xor byte [rax + 0x1d], 0x92
xor byte [rax + 0x1e], 0x70
xor byte [rax + 0x1f], 0x39
mov byte [rax + 2], cl
movzx ecx, byte [rax + 8]
not cl
mov byte [r8], dl
xor cl, 0xdf
mov byte [rax + 8], cl
movzx ecx, byte [rax + 0xe]
not cl
xor cl, 0x21
mov byte [rax + 0xe], cl
movzx ecx, byte [rax + 0x14]
not cl
xor cl, 0x9a
mov byte [rax + 0x14], cl
movzx ecx, byte [rax + 0x1a]
not cl
xor cl, 0x53
mov byte [rax + 0x1a], cl
cmp ebp, 5
jl 0x18003cdda
movdqa xmm2, xmmword [0x1801650c0]
mov rdx, r8
nop dword [rax + rax]
lea rcx, [r11 + rdx]
movq xmm0, rcx
movzx ecx, word [rdx - 4]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 4], cx
lea rcx, [rdx + rbx]
movq xmm0, rcx
movzx ecx, word [rdx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 2], cx
lea rcx, [rdx + rsi]
movq xmm0, rcx
movzx ecx, word [rdx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx], cx
lea rcx, [rdx + rdi]
movq xmm0, rcx
movzx ecx, word [rdx + 2]
punpcklqdq xmm0, xmm0
lea rdx, [rdx + 8]
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 6], cx
lea rcx, [r11 + rdx]
cmp rcx, 0x20
jb 0x18003ccf0
jmp 0x18003ce0d
movabs r14, 0x17dd5f311f551fd9
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r10b
mov rdx, r14
and cl, 7
shl cl, 3
shr rdx, cl
xor byte [rax + r10], dl
inc r10
cmp r10, 0x20
jb 0x18003cdf0
movdqa xmm2, xmmword [0x18016bfc0]
mov r10, r9
movdqa xmm1, xmm2
movdqu xmm0, xmmword [rax]
xorps xmm1, xmm0
movdqu xmmword [rax], xmm1
movdqu xmm0, xmmword [rax + 0x10]
xorps xmm2, xmm0
movdqu xmmword [rax + 0x10], xmm2
cmp ebp, 5
jl 0x18003cf3a
movdqa xmm2, xmmword [0x18016c070]
mov rdx, r8
nop dword [rax + rax]
lea rcx, [rdx + r11]
movq xmm0, rcx
movzx ecx, word [rdx - 4]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 4], cx
lea rcx, [rdx + rbx]
movq xmm0, rcx
movzx ecx, word [rdx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 2], cx
lea rcx, [rdx + rsi]
movq xmm0, rcx
movzx ecx, word [rdx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx], cx
lea rcx, [rdx + rdi]
movq xmm0, rcx
movzx ecx, word [rdx + 2]
punpcklqdq xmm0, xmm0
lea rdx, [rdx + 8]
paddq xmm0, xmm4
andps xmm0, xmm7
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 6], cx
lea rcx, [rdx + r11]
cmp rcx, 0x20
jb 0x18003ce50
jmp 0x18003cf6d
movabs r14, 0xebd17ef5fc7ae5fc
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r10b
mov rdx, r14
and cl, 1
shl cl, 3
shr rdx, cl
xor byte [rax + r10], dl
inc r10
cmp r10, 0x20
jb 0x18003cf50
xor byte [rax], 0x39
mov r10, r9
xor byte [rax + 1], 0xf6
xor byte [rax + 2], 0xac
xor byte [rax + 3], 0x39
xor byte [r8], 0xf6
xor byte [rax + 5], 0xac
xor byte [rax + 6], 0x39
xor byte [rax + 7], 0xf6
xor byte [rax + 8], 0xac
xor byte [rax + 9], 0x39
xor byte [rax + 0xa], 0xf6
xor byte [rax + 0xb], 0xac
xor byte [rax + 0xc], 0x39
xor byte [rax + 0xd], 0xf6
xor byte [rax + 0xe], 0xac
xor byte [rax + 0xf], 0x39
xor byte [rax + 0x10], 0xf6
xor byte [rax + 0x11], 0xac
xor byte [rax + 0x12], 0x39
xor byte [rax + 0x13], 0xf6
xor byte [rax + 0x14], 0xac
xor byte [rax + 0x15], 0x39
xor byte [rax + 0x16], 0xf6
xor byte [rax + 0x17], 0xac
xor byte [rax + 0x18], 0x39
xor byte [rax + 0x19], 0xf6
xor byte [rax + 0x1a], 0xac
xor byte [rax + 0x1b], 0x39
xor byte [rax + 0x1c], 0xf6
xor byte [rax + 0x1d], 0xac
xor byte [rax + 0x1e], 0x39
xor byte [rax + 0x1f], 0xf6
movaps xmm7, xmmword [rsp]
cmp ebp, 5
jl 0x18003d0fa
movdqa xmm2, xmmword [0x18016ad60]
mov rdx, r8
nop word [rax + rax]
lea rcx, [rdx + r11]
movq xmm0, rcx
movzx ecx, word [rdx - 4]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 4], cx
lea rcx, [rdx + rbx]
movq xmm0, rcx
movzx ecx, word [rdx - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 2], cx
lea rcx, [rdx + rsi]
movq xmm0, rcx
movzx ecx, word [rdx]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx], cx
lea rcx, [rdx + rdi]
movq xmm0, rcx
movzx ecx, word [rdx + 2]
punpcklqdq xmm0, xmm0
lea rdx, [rdx + 8]
paddq xmm0, xmm4
andps xmm0, xmm5
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [rdx - 6], cx
lea rcx, [rdx + r11]
cmp rcx, 0x20
jb 0x18003d010
jmp 0x18003d12d
movabs r14, 0xd0b1737c7370fe95
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r10b
mov rdx, r14
and cl, 3
shl cl, 3
shr rdx, cl
xor byte [rax + r10], dl
inc r10
cmp r10, 0x20
jb 0x18003d110
xor byte [r8], 0xd9
movzx ecx, byte [r8]
xor byte [rax], 0xae
xor cl, 0xdc
xor byte [rax + 1], 0xb6
xor cl, 0x22
xor byte [rax + 2], 0xd
xor byte [rax + 3], 0xdb
xor byte [rax + 5], 0xb3
xor byte [rax + 6], 0x7c
xor byte [rax + 7], 0x8a
xor byte [rax + 8], 0x92
xor byte [rax + 9], 0x39
xor byte [rax + 0xa], 0x6d
xor byte [rax + 0xb], 0xbc
xor byte [rax + 0xc], 0xcd
xor byte [rax + 0xd], 0xf8
xor byte [rax + 0xe], 0xad
xor byte [rax + 0xf], 0xb6
xor byte [rax + 0x10], 0xeb
xor byte [rax + 0x11], 0x21
xor byte [rax + 0x12], 0x62
xor byte [rax + 0x13], 0x4a
xor byte [rax + 0x14], 0xcf
xor byte [rax + 0x15], 0xed
xor byte [rax + 0x16], 0xb3
xor byte [rax + 0x17], 7
xor byte [rax + 0x18], 0xfc
xor byte [rax + 0x19], 0xf5
xor byte [rax + 0x1a], 0x19
xor byte [rax + 0x1b], 0x58
xor byte [rax + 0x1c], 0x48
xor byte [rax + 0x1d], 0x5c
xor byte [rax + 0x1e], 0xca
xor byte [rax + 0x1f], 0xf
mov r14, qword [rsp + 0x20]
cmp ebp, 5
mov rbp, qword [rsp + 0x38]
mov byte [r8], cl
jl 0x18003d2d2
movdqa xmm2, xmmword [0x1801690b0]
nop dword [rax]
nop dword [rax + rax]
lea rcx, [r11 + r8]
movq xmm0, rcx
movzx ecx, word [r8 - 4]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [r8 - 4], cx
lea rcx, [rbx + r8]
movq xmm0, rcx
movzx ecx, word [r8 - 2]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [r8 - 2], cx
lea rcx, [rsi + r8]
movq xmm0, rcx
movzx ecx, word [r8]
punpcklqdq xmm0, xmm0
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [r8], cx
lea rcx, [rdi + r8]
movq xmm0, rcx
movzx ecx, word [r8 + 2]
punpcklqdq xmm0, xmm0
lea r8, [r8 + 8]
paddq xmm0, xmm4
andps xmm0, xmm6
psllq xmm0, 3
vpsrlvq xmm1, xmm2, xmm0
movd xmm0, ecx
pshufb xmm1, xmm3
xorps xmm1, xmm0
movd ecx, xmm1
mov word [r8 - 6], cx
lea rcx, [r11 + r8]
cmp rcx, 0x20
jb 0x18003d1e0
jmp 0x18003d2fd
movabs r8, 0x852de5ddd9dfef83
nop dword [rax]
movzx ecx, r9b
mov rdx, r8
and cl, 7
shl cl, 3
shr rdx, cl
xor byte [rax + r9], dl
inc r9
cmp r9, 0x20
jb 0x18003d2e0
movaps xmm6, xmmword [rsp + 0x10]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
mov byte [rax + 0x20], 0
add rsp, 0x28
ret