Function at 0x550780
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rbx
sub rsp, 0x1d8
vmovups xmmword [rsp + 0x130], xmm6
vmovups xmmword [rsp + 0x140], xmm7
vmovups xmmword [rsp + 0x150], xmm8
vmovups xmmword [rsp + 0x160], xmm9
vmovups xmmword [rsp + 0x170], xmm10
vmovups xmmword [rsp + 0x180], xmm11
vmovups xmmword [rsp + 0x190], xmm12
vmovups xmmword [rsp + 0x1a0], xmm13
vmovups xmmword [rsp + 0x1b0], xmm14
vmovups xmmword [rsp + 0x1c0], xmm15
vmovdqu xmm4, xmmword [0x006d1e00]
mov rsi, rdx
mov edx, dword [rcx + 0x1190]
mov rbx, rcx
vmovups xmmword [rcx + rdx], xmm4
lea ecx, [rdx + 1]
mov edx, 0x20
sub edx, ecx
test edx, edx
jle 0x550829
mov r8d, 0x1f
xor edx, edx
sub r8d, ecx
shl rcx, 4
add r8, 1
add rcx, rbx
shl r8, 4
call sub.msvcrt.dll_memset
mov rdx, rbx
mov rcx, rbx
call fcn.0054f5c0
vmovdqu xmm4, xmmword [rbx + 0x1080]
vmovdqu xmm15, xmmword [rbx + 0x1100]
mov r9d, 0x20
vmovdqu xmm11, xmmword [rbx + 0x1170]
vmovdqu xmm2, xmmword [rbx + 0x1180]
vmovups xmmword [rsp + 0x30], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1090]
mov r8d, dword [rbx + 0x1194]
vmovups xmmword [rsp + 0x40], xmm4
vmovdqu xmm4, xmmword [rbx + 0x10a0]
vmovups xmmword [rsp + 0x120], xmm4
vmovdqu xmm4, xmmword [rbx + 0x10b0]
vmovups xmmword [rsp + 0x50], xmm4
vmovdqu xmm4, xmmword [rbx + 0x10c0]
vmovdqu xmm12, xmm4
vmovdqu xmm4, xmmword [rbx + 0x10d0]
vmovups xmmword [rsp + 0x60], xmm4
vmovdqu xmm4, xmmword [rbx + 0x10e0]
vmovups xmmword [rsp + 0x70], xmm4
vmovdqu xmm4, xmmword [rbx + 0x10f0]
vmovups xmmword [rsp + 0x20], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1110]
vmovups xmmword [rsp + 0x80], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1120]
vmovups xmmword [rsp + 0x90], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1130]
vmovups xmmword [rsp + 0xa0], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1140]
vmovups xmmword [rsp + 0xb0], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1150]
vmovups xmmword [rsp + 0xc0], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1160]
vmovups xmmword [rsp + 0xd0], xmm4
vpcmpeqq xmm4, xmm4, xmm4
nop dword [rax]
lea r10d, [r8 + 4]
lea edx, [r8 - 8]
mov ecx, r8d
vmovdqu xmm3, xmmword [rsp + 0x50]
lea r8d, [r8 - 1]
and edx, 0x1f
vmovdqu xmm6, xmmword [rsp + 0x60]
xor ecx, 0x10
and r8d, 0x1f
shl rdx, 7
mov eax, r8d
add rdx, rbx
shl rax, 7
vmovdqu xmm7, xmmword [rdx + 0x80]
add rax, rbx
vpxor xmm0, xmm7, xmmword [rax + 0xa0]
vmovups xmmword [rdx + 0x80], xmm0
vpxor xmm0, xmm3, xmmword [rax + 0xa0]
vmovups xmmword [rax + 0xa0], xmm0
vmovdqu xmm5, xmmword [rdx + 0x90]
vpxor xmm0, xmm5, xmmword [rax + 0xb0]
vmovdqu xmm5, xmm12
vmovups xmmword [rdx + 0x90], xmm0
vpxor xmm0, xmm12, xmmword [rax + 0xb0]
vmovups xmmword [rax + 0xb0], xmm0
vmovdqu xmm1, xmmword [rdx + 0xa0]
vpxor xmm0, xmm1, xmmword [rax + 0xc0]
vmovups xmmword [rdx + 0xa0], xmm0
vpxor xmm0, xmm6, xmmword [rax + 0xc0]
vmovups xmmword [rax + 0xc0], xmm0
vmovdqu xmm7, xmmword [rdx + 0xb0]
vpxor xmm0, xmm7, xmmword [rax + 0xd0]
vmovdqu xmm7, xmmword [rsp + 0x70]
vmovups xmmword [rdx + 0xb0], xmm0
vpxor xmm0, xmm7, xmmword [rax + 0xd0]
vmovups xmmword [rax + 0xd0], xmm0
vmovdqu xmm1, xmmword [rdx + 0xc0]
vpxor xmm0, xmm1, xmmword [rax + 0xe0]
vmovdqu xmm1, xmmword [rsp + 0x20]
vmovups xmmword [rdx + 0xc0], xmm0
vpxor xmm0, xmm1, xmmword [rax + 0xe0]
vmovups xmmword [rax + 0xe0], xmm0
vmovdqu xmm0, xmmword [rdx + 0xd0]
vpxor xmm0, xmm0, xmmword [rax + 0xf0]
vmovups xmmword [rdx + 0xd0], xmm0
vpxor xmm0, xmm15, xmmword [rax + 0xf0]
vmovdqu xmm8, xmmword [rsp + 0x40]
vmovdqu xmm9, xmmword [rsp + 0x120]
vmovups xmmword [rax + 0xf0], xmm0
vmovdqu xmm0, xmmword [rdx + 0xe0]
vpxor xmm14, xmm4, xmm8
vpxor xmm0, xmm0, xmmword [rax + 0x80]
vpor xmm14, xmm14, xmm9
vpxor xmm10, xmm4, xmm9
vmovups xmmword [rdx + 0xe0], xmm0
vpxor xmm0, xmm8, xmmword [rax + 0x80]
vpor xmm10, xmm10, xmm3
vpxor xmm10, xmm10, xmm8
vpxor xmm8, xmm4, xmm2
vpor xmm8, xmm8, xmmword [rsp + 0x30]
vmovups xmmword [rax + 0x80], xmm0
vmovdqu xmm0, xmmword [rdx + 0xf0]
vpxor xmm0, xmm0, xmmword [rax + 0x90]
vpxor xmm8, xmm8, xmm11
vmovups xmmword [rdx + 0xf0], xmm0
vpxor xmm0, xmm9, xmmword [rax + 0x90]
vmovups xmmword [rax + 0x90], xmm0
vpxor xmm0, xmm14, xmmword [rsp + 0x30]
mov eax, r10d
and eax, 0x1f
vmovups xmmword [rsp + 0x110], xmm0
vpxor xmm0, xmm4, xmm15
vpor xmm0, xmm0, xmmword [rsp + 0x80]
add rax, 1
shl rax, 7
vpxor xmm0, xmm0, xmm1
add rax, rbx
vpsrld xmm1, xmm0, 0x1f
vpslld xmm0, xmm0, 1
vpor xmm12, xmm0, xmm1
vpxor xmm0, xmm4, xmm11
vmovdqu xmm1, xmm5
vmovups xmmword [rsp + 0xe0], xmm12
vpor xmm0, xmm0, xmm2
vpxor xmm0, xmm0, xmmword [rsp + 0xd0]
vpsrld xmm13, xmm0, 0x1d
vpslld xmm0, xmm0, 3
vpor xmm13, xmm0, xmm13
vpxor xmm0, xmm4, xmm6
vmovups xmmword [rsp + 0xf0], xmm13
vpor xmm0, xmm0, xmm7
vmovdqu xmm13, xmmword [rsp + 0xc0]
vpxor xmm7, xmm4, xmm7
vpxor xmm0, xmm0, xmm5
vpor xmm7, xmm7, xmmword [rsp + 0x20]
vpsrld xmm14, xmm0, 0x1a
vpslld xmm0, xmm0, 6
vpor xmm5, xmm0, xmm14
vmovdqu xmm14, xmm9
vpxor xmm7, xmm7, xmm6
vmovups xmmword [rsp + 0x100], xmm5
vpxor xmm6, xmm4, xmm13
vmovdqu xmm5, xmmword [rsp + 0xb0]
vpxor xmm9, xmm4, xmmword [rsp + 0x80]
vpor xmm9, xmm9, xmmword [rsp + 0x90]
vpor xmm6, xmm6, xmmword [rsp + 0xd0]
vpxor xmm12, xmm4, xmm5
vpor xmm12, xmm12, xmm13
vpxor xmm9, xmm9, xmm15
vpxor xmm6, xmm6, xmm5
vpxor xmm12, xmm12, xmmword [rsp + 0xa0]
vpxor xmm5, xmm4, xmm3
vmovdqu xmm13, xmm1
vpor xmm5, xmm5, xmm1
vpxor xmm13, xmm4, xmm13
vpxor xmm3, xmm4, xmmword [rsp + 0x90]
vpsrld xmm0, xmm12, 0x16
vpslld xmm12, xmm12, 0xa
vpxor xmm5, xmm5, xmm14
vpor xmm3, xmm3, xmmword [rsp + 0xa0]
vpor xmm12, xmm12, xmm0
vpxor xmm3, xmm3, xmmword [rsp + 0x80]
vpsrld xmm0, xmm10, 0x11
vpslld xmm10, xmm10, 0xf
vpxor xmm14, xmm4, xmmword [rsp + 0x30]
vpor xmm10, xmm10, xmm0
vpsrld xmm0, xmm9, 0xb
vpor xmm14, xmm14, xmmword [rsp + 0x40]
vpslld xmm9, xmm9, 0x15
vpor xmm13, xmm13, xmmword [rsp + 0x60]
vpxor xmm13, xmm13, xmmword [rsp + 0x50]
vpor xmm9, xmm9, xmm0
vpsrld xmm0, xmm8, 4
vpxor xmm14, xmm14, xmm2
vpslld xmm8, xmm8, 0x1c
vpslld xmm1, xmm14, 0xe
vpshufb xmm13, xmm13, xmmword [0x006d1de0]
vpor xmm8, xmm8, xmm0
vpsrld xmm0, xmm7, 0x1c
vpslld xmm7, xmm7, 4
vpor xmm7, xmm7, xmm0
vpsrld xmm0, xmm6, 0x13
vpslld xmm6, xmm6, 0xd
vpor xmm6, xmm6, xmm0
vpsrld xmm0, xmm5, 9
vpslld xmm5, xmm5, 0x17
vpor xmm5, xmm5, xmm0
vpsrld xmm0, xmm3, 0x1e
vpslld xmm3, xmm3, 2
vpor xmm3, xmm3, xmm0
vpsrld xmm0, xmm14, 0x12
vpor xmm1, xmm1, xmm0
vpxor xmm0, xmm4, xmmword [rsp + 0x20]
vpor xmm15, xmm0, xmm15
vpxor xmm15, xmm15, xmmword [rsp + 0x70]
vpsrld xmm2, xmm15, 5
vpslld xmm15, xmm15, 0x1b
vpor xmm0, xmm15, xmm2
vpxor xmm2, xmm4, xmmword [rsp + 0xd0]
vpxor xmm15, xmm12, xmmword [rsp + 0xe0]
vpor xmm11, xmm2, xmm11
vpxor xmm11, xmm11, xmmword [rsp + 0xc0]
vpsrld xmm14, xmm11, 0x17
vpslld xmm11, xmm11, 9
vpor xmm2, xmm11, xmm14
vmovdqu xmm11, xmmword [rsp + 0x110]
vpxor xmm11, xmm11, xmmword [0x006d1e00]
vpxor xmm14, xmm4, xmmword [rsp + 0xa0]
vpor xmm14, xmm14, xmmword [rsp + 0xb0]
vpxor xmm14, xmm14, xmmword [rsp + 0x90]
vpxor xmm15, xmm15, xmm11
vmovdqu xmm11, xmmword [rsp + 0xe0]
vpxor xmm11, xmm11, xmmword [rsp + 0xf0]
vmovups xmmword [rsp + 0x30], xmm15
vpxor xmm15, xmm10, xmmword [rax]
vpshufb xmm14, xmm14, xmmword [0x006d1df0]
vpxor xmm15, xmm15, xmm11
vmovdqu xmm11, xmmword [rsp + 0xf0]
vpxor xmm11, xmm11, xmmword [rsp + 0x100]
vmovups xmmword [rsp + 0x40], xmm15
vpxor xmm15, xmm9, xmmword [rax + 0x10]
vpxor xmm15, xmm15, xmm11
vpxor xmm11, xmm12, xmmword [rsp + 0x100]
vpxor xmm12, xmm12, xmm10
vmovups xmmword [rsp + 0x120], xmm15
vpxor xmm15, xmm8, xmmword [rax + 0x20]
vpxor xmm10, xmm10, xmm9
vpxor xmm9, xmm9, xmm8
vpxor xmm8, xmm8, xmm7
vpxor xmm15, xmm15, xmm11
vpxor xmm11, xmm7, xmmword [rax + 0x30]
vpxor xmm7, xmm7, xmm6
vmovups xmmword [rsp + 0x50], xmm15
vpxor xmm15, xmm11, xmm12
vpxor xmm11, xmm6, xmmword [rax + 0x40]
vpxor xmm6, xmm6, xmm5
vmovdqu xmm12, xmm15
vpxor xmm15, xmm5, xmmword [rax + 0x50]
vpxor xmm5, xmm5, xmm3
vpxor xmm10, xmm11, xmm10
vmovups xmmword [rsp + 0x60], xmm10
vpxor xmm10, xmm15, xmm9
vmovups xmmword [rsp + 0x70], xmm10
vpxor xmm15, xmm3, xmmword [rax + 0x60]
vpxor xmm3, xmm3, xmm1
vpxor xmm10, xmm15, xmm8
vpxor xmm15, xmm1, xmmword [rax + 0x70]
vpxor xmm1, xmm1, xmm0
mov rax, rcx
shl rax, 7
vmovups xmmword [rsp + 0x20], xmm10
vpxor xmm15, xmm15, xmm7
mov rcx, rax
vpxor xmm7, xmm0, xmmword [rax + rbx + 0x80]
add rcx, rbx
vpxor xmm0, xmm0, xmm2
vpxor xmm6, xmm7, xmm6
vmovups xmmword [rsp + 0x80], xmm6
vpxor xmm6, xmm2, xmmword [rcx + 0x90]
vpxor xmm2, xmm2, xmmword [rsp + 0xe0]
vpxor xmm6, xmm6, xmm5
vpxor xmm5, xmm13, xmmword [rcx + 0xa0]
vmovups xmmword [rsp + 0x90], xmm6
vpxor xmm3, xmm5, xmm3
vmovups xmmword [rsp + 0xa0], xmm3
vpxor xmm3, xmm14, xmmword [rcx + 0xb0]
vpxor xmm3, xmm3, xmm1
vmovdqu xmm1, xmmword [rsp + 0x110]
vpxor xmm11, xmm1, xmmword [rcx + 0xc0]
vmovups xmmword [rsp + 0xb0], xmm3
vpxor xmm7, xmm11, xmm0
vpxor xmm11, xmm13, xmmword [rcx + 0xd0]
vpxor xmm13, xmm14, xmm13
vpxor xmm14, xmm14, xmmword [rsp + 0x100]
vmovups xmmword [rsp + 0xc0], xmm7
vpxor xmm2, xmm11, xmm2
vmovdqu xmm11, xmmword [rsp + 0xf0]
vpxor xmm11, xmm11, xmmword [rcx + 0xe0]
vmovups xmmword [rsp + 0xd0], xmm2
vpxor xmm2, xmm1, xmmword [rcx + 0xf0]
vpxor xmm11, xmm11, xmm13
vpxor xmm2, xmm2, xmm14
sub r9d, 1
jne 0x550938
vmovdqu xmm4, xmmword [rsp + 0x30]
vmovups xmmword [rbx + 0x1120], xmm6
vmovdqu xmm5, xmmword [rsp + 0xa0]
vmovups xmmword [rbx + 0x10c0], xmm12
vmovups xmmword [rbx + 0x1080], xmm4
vmovdqu xmm4, xmmword [rsp + 0x40]
vmovups xmmword [rbx + 0x1130], xmm5
vmovdqu xmm5, xmmword [rsp + 0xd0]
vmovups xmmword [rbx + 0x1090], xmm4
vmovdqu xmm4, xmmword [rsp + 0x120]
vmovups xmmword [rbx + 0x10f0], xmm10
vmovups xmmword [rbx + 0x10a0], xmm4
vmovdqu xmm4, xmmword [rsp + 0x50]
vmovups xmmword [rbx + 0x1100], xmm15
vmovups xmmword [rbx + 0x10b0], xmm4
vmovdqu xmm4, xmmword [rsp + 0x60]
vmovups xmmword [rbx + 0x1140], xmm3
vmovups xmmword [rbx + 0x10d0], xmm4
vmovdqu xmm4, xmmword [rsp + 0x70]
vmovups xmmword [rbx + 0x1150], xmm7
vmovups xmmword [rbx + 0x10e0], xmm4
vmovdqu xmm4, xmmword [rsp + 0x80]
vmovups xmmword [rbx + 0x1170], xmm11
vmovups xmmword [rbx + 0x1110], xmm4
vmovups xmmword [rbx + 0x1180], xmm2
vmovups xmmword [rbx + 0x1160], xmm5
vmovups xmmword [rsi], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1120]
vmovups xmmword [rsi + 0x10], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1130]
vmovups xmmword [rsi + 0x20], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1140]
vmovups xmmword [rsi + 0x30], xmm4
vmovdqu xmm4, xmmword [rbx + 0x1150]
vmovups xmm6, xmmword [rsp + 0x130]
vmovups xmm7, xmmword [rsp + 0x140]
vmovups xmm8, xmmword [rsp + 0x150]
vmovups xmm9, xmmword [rsp + 0x160]
vmovups xmmword [rsi + 0x40], xmm4
vmovdqu xmm2, xmmword [rbx + 0x1160]
vmovups xmm10, xmmword [rsp + 0x170]
vmovups xmm11, xmmword [rsp + 0x180]
vmovups xmm12, xmmword [rsp + 0x190]
vmovups xmmword [rsi + 0x50], xmm2
vmovdqu xmm4, xmmword [rbx + 0x1170]
vmovups xmm13, xmmword [rsp + 0x1a0]
vmovups xmm14, xmmword [rsp + 0x1b0]
vmovups xmm15, xmmword [rsp + 0x1c0]
vmovups xmmword [rsi + 0x60], xmm4
vmovdqu xmm0, xmmword [rbx + 0x1180]
vmovups xmmword [rsi + 0x70], xmm0
add rsp, 0x1d8
pop rbx
pop rsi
ret