Function at 0x140056a40
Capabilities:
Encode data using xor

Disassembly:
jmp 0x140056a40
push rbp
push rbx
push rsi
push rdi
push r14
push r15
sub rsp, 0x58
lea rbp, [rsp + 0x20]
mov r9, r8
mov r10d, dword [0x140898e28]
xor cl, cl
test r10d, r10d
jle 0x140056fb6
lea r8d, [r10 + 1]
cmp r10d, 0x50
jl 0x140056fff
mov eax, 0x66666667
mov r11d, r10d
imul r10d
sar r11d, 0x1f
pcmpeqd xmm1, xmm1
sar edx, 5
sub edx, r11d
xor r11d, r11d
movdqu xmm0, xmmword [0x1404ade80]
movups xmmword [rbp + 0x20], xmm6
movups xmmword [rbp + 0x10], xmm7
movups xmmword [rbp], xmm8
lea r14d, [rdx + rdx*4]
shl r14d, 4
xor edx, edx
neg r14d
add r14d, r10d
neg r14d
add r14d, r10d
movsxd rax, r14d
movq xmm3, qword [rdx + r9]
movdqa xmm4, xmm1
pcmpgtb xmm4, xmm3
pcmpeqb xmm3, xmm0
movdqa xmm8, xmm4
movdqa xmm2, xmm3
punpcklbw xmm8, xmm4
punpcklbw xmm2, xmm3
punpcklwd xmm8, xmm8
punpcklwd xmm2, xmm2
pxor xmm8, xmm1
movq xmm7, qword [rdx + r9 + 8]
pand xmm8, xmm2
psrldq xmm4, 4
movdqa xmm2, xmm1
punpcklbw xmm4, xmm4
pcmpgtb xmm2, xmm7
psrldq xmm3, 4
pcmpeqb xmm7, xmm0
punpcklbw xmm3, xmm3
movdqa xmm6, xmm2
punpcklwd xmm4, xmm4
movdqa xmm5, xmm7
punpcklwd xmm3, xmm3
pxor xmm4, xmm1
punpcklbw xmm6, xmm2
pand xmm4, xmm3
psrldq xmm2, 4
por xmm4, xmm8
punpcklbw xmm5, xmm7
punpcklwd xmm6, xmm6
punpcklbw xmm2, xmm2
pxor xmm6, xmm1
psrldq xmm7, 4
punpcklwd xmm5, xmm5
punpcklbw xmm7, xmm7
pand xmm6, xmm5
movmskps ebx, xmm4
movdqa xmm5, xmm1
movq xmm4, qword [rdx + r9 + 0x10]
punpcklwd xmm2, xmm2
pcmpgtb xmm5, xmm4
punpcklwd xmm7, xmm7
pxor xmm2, xmm1
pand xmm2, xmm7
pcmpeqb xmm4, xmm0
movdqa xmm7, xmm5
movdqa xmm3, xmm4
punpcklbw xmm7, xmm5
por xmm2, xmm6
psrldq xmm5, 4
movdqa xmm6, xmm1
punpcklbw xmm5, xmm5
or r11d, ebx
punpcklbw xmm3, xmm4
psrldq xmm4, 4
punpcklbw xmm4, xmm4
punpcklwd xmm5, xmm5
punpcklwd xmm7, xmm7
pxor xmm5, xmm1
punpcklwd xmm4, xmm4
pxor xmm7, xmm1
punpcklwd xmm3, xmm3
pand xmm5, xmm4
pand xmm7, xmm3
movq xmm8, qword [rdx + r9 + 0x18]
por xmm5, xmm7
movdqa xmm7, xmm1
pcmpgtb xmm7, xmm8
pcmpeqb xmm8, xmm0
movmskps esi, xmm2
movdqa xmm2, xmm7
punpcklbw xmm2, xmm7
movdqa xmm4, xmm8
punpcklbw xmm4, xmm8
punpcklwd xmm2, xmm2
or r11d, esi
punpcklwd xmm4, xmm4
pxor xmm2, xmm1
pand xmm2, xmm4
movq xmm4, qword [rdx + r9 + 0x20]
psrldq xmm7, 4
pcmpgtb xmm6, xmm4
movmskps edi, xmm5
pcmpeqb xmm4, xmm0
punpcklbw xmm7, xmm7
movdqa xmm5, xmm6
psrldq xmm8, 4
movdqa xmm3, xmm4
punpcklbw xmm8, xmm8
or r11d, edi
punpcklwd xmm7, xmm7
punpcklbw xmm5, xmm6
pxor xmm7, xmm1
punpcklwd xmm8, xmm8
psrldq xmm6, 4
pand xmm7, xmm8
punpcklbw xmm3, xmm4
por xmm7, xmm2
punpcklwd xmm5, xmm5
punpcklbw xmm6, xmm6
pxor xmm5, xmm1
psrldq xmm4, 4
punpcklwd xmm3, xmm3
movq xmm2, qword [rdx + r9 + 0x28]
pand xmm5, xmm3
punpcklbw xmm4, xmm4
movdqa xmm3, xmm1
punpcklwd xmm6, xmm6
pcmpgtb xmm3, xmm2
punpcklwd xmm4, xmm4
pxor xmm6, xmm1
pand xmm6, xmm4
pcmpeqb xmm2, xmm0
movdqa xmm4, xmm3
movdqa xmm8, xmm2
punpcklbw xmm4, xmm3
por xmm6, xmm5
psrldq xmm3, 4
punpcklbw xmm3, xmm3
punpcklbw xmm8, xmm2
psrldq xmm2, 4
punpcklbw xmm2, xmm2
punpcklwd xmm3, xmm3
punpcklwd xmm4, xmm4
pxor xmm3, xmm1
punpcklwd xmm2, xmm2
pxor xmm4, xmm1
punpcklwd xmm8, xmm8
pand xmm3, xmm2
pand xmm4, xmm8
movq xmm5, qword [rdx + r9 + 0x30]
por xmm3, xmm4
movdqa xmm4, xmm1
pcmpgtb xmm4, xmm5
pcmpeqb xmm5, xmm0
movmskps r15d, xmm7
movdqa xmm7, xmm4
punpcklbw xmm7, xmm4
psrldq xmm4, 4
movmskps ebx, xmm6
movdqa xmm6, xmm5
punpcklbw xmm4, xmm4
punpcklbw xmm6, xmm5
psrldq xmm5, 4
or r11d, r15d
punpcklbw xmm5, xmm5
or r11d, ebx
punpcklwd xmm4, xmm4
punpcklwd xmm7, xmm7
pxor xmm4, xmm1
punpcklwd xmm5, xmm5
pxor xmm7, xmm1
punpcklwd xmm6, xmm6
pand xmm4, xmm5
pand xmm7, xmm6
por xmm4, xmm7
movq xmm2, qword [rdx + r9 + 0x38]
movmskps edi, xmm4
movdqa xmm4, xmm1
pcmpgtb xmm4, xmm2
pcmpeqb xmm2, xmm0
movdqa xmm5, xmm4
movmskps esi, xmm3
movdqa xmm3, xmm2
punpcklbw xmm5, xmm4
psrldq xmm4, 4
punpcklbw xmm3, xmm2
or r11d, esi
punpcklwd xmm5, xmm5
or r11d, edi
punpcklbw xmm4, xmm4
pxor xmm5, xmm1
psrldq xmm2, 4
punpcklwd xmm3, xmm3
movq xmm8, qword [rdx + r9 + 0x40]
pand xmm5, xmm3
punpcklbw xmm2, xmm2
movdqa xmm3, xmm1
punpcklwd xmm4, xmm4
pcmpgtb xmm3, xmm8
punpcklwd xmm2, xmm2
pxor xmm4, xmm1
pand xmm4, xmm2
pcmpeqb xmm8, xmm0
movdqa xmm2, xmm3
movdqa xmm6, xmm8
punpcklbw xmm2, xmm3
por xmm4, xmm5
psrldq xmm3, 4
punpcklbw xmm3, xmm3
punpcklbw xmm6, xmm8
psrldq xmm8, 4
punpcklbw xmm8, xmm8
punpcklwd xmm3, xmm3
punpcklwd xmm8, xmm8
pxor xmm3, xmm1
movq xmm5, qword [rdx + r9 + 0x48]
pand xmm3, xmm8
movdqa xmm8, xmm1
add rdx, 0x50
punpcklwd xmm2, xmm2
pcmpgtb xmm8, xmm5
punpcklwd xmm6, xmm6
pxor xmm2, xmm1
pcmpeqb xmm5, xmm0
movdqa xmm7, xmm8
punpcklbw xmm7, xmm8
pand xmm2, xmm6
psrldq xmm8, 4
movdqa xmm6, xmm5
punpcklbw xmm8, xmm8
por xmm3, xmm2
punpcklbw xmm6, xmm5
psrldq xmm5, 4
punpcklbw xmm5, xmm5
punpcklwd xmm8, xmm8
punpcklwd xmm7, xmm7
pxor xmm8, xmm1
punpcklwd xmm5, xmm5
pxor xmm7, xmm1
punpcklwd xmm6, xmm6
pand xmm8, xmm5
movmskps r15d, xmm4
pand xmm7, xmm6
por xmm8, xmm7
movmskps ebx, xmm3
movmskps esi, xmm8
or r11d, r15d
or r11d, ebx
or r11d, esi
cmp rdx, rax
jb 0x140056abe
movups xmm6, xmmword [rbp + 0x20]
movups xmm7, xmmword [rbp + 0x10]
movups xmm8, xmmword [rbp]
test r11d, r11d
jne 0x140056ed3
lea eax, [r14 + 1]
cmp eax, r10d
ja 0x140056ec7
movsxd rax, r14d
jmp 0x140056ee1
mov dword [0x140898e80], r8d
jmp 0x140056fc0
inc r14d
mov cl, 0xff
cmp r14d, r10d
ja 0x140056fad
movsxd r10, r10d
sub r10, rax
cmp r10, 8
jl 0x140056ff7
mov r14d, r10d
xor edx, edx
and r14d, 0xfffffff8
xor r11d, r11d
movsxd r14, r14d
lea r15, [r9 + rax]
movdqu xmm0, xmmword [0x1404ade80]
pcmpeqd xmm1, xmm1
movq xmm2, qword [r11 + r15]
movdqa xmm5, xmm1
pcmpgtb xmm5, xmm2
pcmpeqb xmm2, xmm0
movdqa xmm4, xmm5
movdqa xmm3, xmm2
punpcklbw xmm4, xmm5
add r11, 8
psrldq xmm5, 4
punpcklbw xmm5, xmm5
punpcklbw xmm3, xmm2
psrldq xmm2, 4
punpcklbw xmm2, xmm2
punpcklwd xmm5, xmm5
punpcklwd xmm4, xmm4
pxor xmm5, xmm1
punpcklwd xmm2, xmm2
pxor xmm4, xmm1
punpcklwd xmm3, xmm3
pand xmm5, xmm2
pand xmm4, xmm3
por xmm5, xmm4
movmskps ebx, xmm5
or edx, ebx
cmp r11, r14
jb 0x140056f10
test edx, edx
jne 0x140056f85
cmp r14, r10
jae 0x140056fa0
lea r15, [r9 + rax]
jmp 0x140056f8c
mov cl, 0xff
cmp r14, r10
jae 0x140056fad
mov al, byte [r14 + r15]
cmp al, 0xff
jl 0x140056f98
cmp al, 2
je 0x140056feb
inc r14
cmp r14, r10
jb 0x140056f8c
mov dword [0x140898e80], r8d
test cl, cl
je 0x140056fc0
jmp 0x140056fde
mov dword [0x140898e80], r8d
jmp 0x140056fde
mov dword [0x140898e80], 1
mov eax, dword [0x140898f24]
test eax, eax
jle 0x140056fd4
inc eax
mov dword [0x140898f38], eax
jmp 0x140056fde
mov dword [0x140898f38], 1
lea rsp, [rbp + 0x38]
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
inc r14
mov cl, 0xff
cmp r14, r10
jb 0x140056f8c
jmp 0x140056fad
xor r14d, r14d
jmp 0x140056f7a
xor r14d, r14d
jmp 0x140056eb9