Function at 0x5d0160
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x40
mov ebx, dword [ebp + 8]
movaps xmm0, xmmword [ebx]
movaps xmm1, xmmword [ebx + 0x10]
xorps xmm0, xmmword [ecx]
movaps xmmword [ebx], xmm0
xorps xmm1, xmmword [ecx + 0x10]
movaps xmmword [ebx + 0x10], xmm1
movaps xmm0, xmmword [ebx + 0x20]
xorps xmm0, xmmword [ecx + 0x20]
movaps xmmword [ebx + 0x20], xmm0
movaps xmm0, xmmword [ebx + 0x30]
xorps xmm0, xmmword [ecx + 0x30]
movaps xmmword [ebx + 0x30], xmm0
movaps xmm0, xmmword [ebx + 0x40]
xorps xmm0, xmmword [ecx + 0x40]
movaps xmmword [ebx + 0x40], xmm0
movaps xmm0, xmmword [ebx + 0x50]
xorps xmm0, xmmword [ecx + 0x50]
movaps xmmword [ebx + 0x50], xmm0
movaps xmm0, xmmword [ebx + 0x60]
xorps xmm0, xmmword [ecx + 0x60]
movaps xmmword [ebx + 0x60], xmm0
movaps xmm0, xmmword [ebx + 0x70]
mov dword [esp + 8], ecx
xorps xmm0, xmmword [ecx + 0x70]
movaps xmmword [ebx + 0x70], xmm0
mov dword [esp + 0xc], edx
cmp edx, 2
jb 0x5d04b1
mov eax, dword [esp + 0xc]
lea esi, [eax - 1]
mov eax, dword [esp + 8]
lea edi, [eax + 0xf0]
mov ecx, ebx
call fcn.005e0420
movdqa xmm1, xmmword [ebx]
movdqa xmm0, xmm1
movdqa xmm4, xmmword [0x6e1d00]
pand xmm0, xmm4
pshufd xmm2, xmm1, 0x39
movdqa xmm5, xmmword [0x6e1d10]
pand xmm2, xmm5
por xmm2, xmm0
pshufd xmm3, xmm1, 0x4e
movdqa xmm6, xmmword [0x6e1d20]
pand xmm1, xmm6
movdqa xmm0, xmm1
pslldq xmm0, 4
movdqa xmm7, xmmword [0x6e1d30]
pand xmm3, xmm7
por xmm3, xmm0
movdqa xmm0, xmmword [ebx + 0x10]
psrldq xmm1, 0xc
por xmm3, xmm1
por xmm3, xmm2
movdqa xmmword [ebx], xmm3
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
pand xmm1, xmm5
por xmm1, xmm2
pshufd xmm2, xmm0, 0x4e
pand xmm0, xmm6
movdqa xmm3, xmm0
pslldq xmm3, 4
psrldq xmm0, 0xc
pand xmm2, xmm7
por xmm2, xmm3
por xmm2, xmm0
por xmm2, xmm1
movdqa xmmword [ebx + 0x10], xmm2
movdqa xmm0, xmmword [ebx + 0x20]
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
pand xmm1, xmm5
por xmm1, xmm2
pshufd xmm2, xmm0, 0x4e
pand xmm0, xmm6
movdqa xmm3, xmm0
pslldq xmm3, 4
psrldq xmm0, 0xc
pand xmm2, xmm7
por xmm2, xmm3
por xmm2, xmm0
por xmm2, xmm1
movdqa xmmword [ebx + 0x20], xmm2
movdqa xmm0, xmmword [ebx + 0x30]
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
pand xmm1, xmm5
por xmm1, xmm2
pshufd xmm2, xmm0, 0x4e
pand xmm0, xmm6
movdqa xmm3, xmm0
pslldq xmm3, 4
psrldq xmm0, 0xc
pand xmm2, xmm7
por xmm2, xmm3
por xmm2, xmm0
por xmm2, xmm1
movdqa xmmword [ebx + 0x30], xmm2
movdqa xmm0, xmmword [ebx + 0x40]
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
pand xmm1, xmm5
por xmm1, xmm2
pshufd xmm2, xmm0, 0x4e
pand xmm0, xmm6
movdqa xmm3, xmm0
pslldq xmm3, 4
psrldq xmm0, 0xc
pand xmm2, xmm7
por xmm2, xmm3
por xmm2, xmm0
por xmm2, xmm1
movdqa xmmword [ebx + 0x40], xmm2
movdqa xmm0, xmmword [ebx + 0x50]
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
pand xmm1, xmm5
por xmm1, xmm2
pshufd xmm2, xmm0, 0x4e
pand xmm0, xmm6
movdqa xmm3, xmm0
pslldq xmm3, 4
psrldq xmm0, 0xc
pand xmm2, xmm7
por xmm2, xmm3
por xmm2, xmm0
por xmm2, xmm1
movdqa xmmword [ebx + 0x50], xmm2
movdqa xmm0, xmmword [ebx + 0x60]
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
pand xmm1, xmm5
por xmm1, xmm2
pshufd xmm2, xmm0, 0x4e
pand xmm0, xmm6
movdqa xmm3, xmm0
pslldq xmm3, 4
psrldq xmm0, 0xc
pand xmm2, xmm7
por xmm2, xmm3
por xmm2, xmm0
por xmm2, xmm1
movdqa xmmword [ebx + 0x60], xmm2
movdqa xmm0, xmmword [ebx + 0x70]
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
pand xmm1, xmm5
por xmm1, xmm2
pshufd xmm2, xmm0, 0x4e
pand xmm0, xmm6
movdqa xmm3, xmm0
pslldq xmm3, 4
pand xmm2, xmm7
por xmm2, xmm3
psrldq xmm0, 0xc
por xmm2, xmm0
por xmm2, xmm1
movdqa xmmword [ebx + 0x70], xmm2
mov ecx, ebx
call fcn.005e0950
movaps xmm0, xmmword [ebx]
xorps xmm0, xmmword [edi - 0x70]
movaps xmm1, xmmword [ebx + 0x10]
movaps xmmword [ebx], xmm0
xorps xmm1, xmmword [edi - 0x60]
movaps xmmword [ebx + 0x10], xmm1
movaps xmm0, xmmword [ebx + 0x20]
xorps xmm0, xmmword [edi - 0x50]
movaps xmmword [ebx + 0x20], xmm0
movaps xmm0, xmmword [ebx + 0x30]
xorps xmm0, xmmword [edi - 0x40]
movaps xmmword [ebx + 0x30], xmm0
movaps xmm0, xmmword [ebx + 0x40]
xorps xmm0, xmmword [edi - 0x30]
movaps xmmword [ebx + 0x40], xmm0
movaps xmm0, xmmword [ebx + 0x50]
xorps xmm0, xmmword [edi - 0x20]
movaps xmmword [ebx + 0x50], xmm0
movaps xmm0, xmmword [ebx + 0x60]
xorps xmm0, xmmword [edi - 0x10]
movaps xmmword [ebx + 0x60], xmm0
movaps xmm0, xmmword [ebx + 0x70]
xorps xmm0, xmmword [edi]
movaps xmmword [ebx + 0x70], xmm0
sub edi, 0xffffff80
dec esi
jne 0x5d01ee
mov ecx, ebx
call fcn.005e0420
movdqa xmm4, xmmword [0x6e1d00]
movdqa xmm1, xmmword [ebx]
movdqa xmm0, xmm1
pand xmm0, xmm4
pshufd xmm5, xmm1, 0x39
pand xmm5, xmmword [0x6e1d10]
por xmm5, xmm0
movdqa xmm7, xmmword [0x6e1d20]
pshufd xmm2, xmm1, 0x4e
pand xmm1, xmm7
movdqa xmm0, xmm1
pslldq xmm0, 4
movdqa xmm6, xmmword [0x6e1d30]
pand xmm2, xmm6
por xmm2, xmm0
movdqa xmm0, xmmword [ebx + 0x10]
psrldq xmm1, 0xc
por xmm2, xmm1
por xmm2, xmm5
movdqa xmm3, xmm2
movdqa xmmword [esp + 0x20], xmm2
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
pand xmm1, xmmword [0x6e1d10]
por xmm1, xmm2
pshufd xmm5, xmm0, 0x4e
pand xmm0, xmm7
movdqa xmm2, xmm0
pslldq xmm2, 4
pand xmm5, xmm6
por xmm5, xmm2
movdqa xmmword [ebx], xmm3
psrldq xmm0, 0xc
por xmm5, xmm0
por xmm5, xmm1
movdqa xmmword [esp + 0x10], xmm5
movdqa xmmword [ebx + 0x10], xmm5
movdqa xmm0, xmmword [ebx + 0x20]
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
movdqa xmm3, xmmword [0x6e1d10]
pand xmm1, xmm3
por xmm1, xmm2
pshufd xmm6, xmm0, 0x4e
movdqa xmm5, xmm7
pand xmm0, xmm7
movdqa xmm2, xmm0
pslldq xmm2, 4
movdqa xmm7, xmmword [0x6e1d30]
pand xmm6, xmm7
por xmm6, xmm2
psrldq xmm0, 0xc
por xmm6, xmm0
por xmm6, xmm1
movdqa xmmword [ebx + 0x20], xmm6
movdqa xmm0, xmmword [ebx + 0x30]
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
pand xmm1, xmm3
por xmm1, xmm2
pshufd xmm2, xmm0, 0x4e
pand xmm0, xmm5
movdqa xmm3, xmm0
pslldq xmm3, 4
pand xmm2, xmm7
por xmm2, xmm3
psrldq xmm0, 0xc
por xmm2, xmm0
por xmm2, xmm1
movdqa xmmword [ebx + 0x30], xmm2
movdqa xmm0, xmmword [ebx + 0x40]
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
movdqa xmm5, xmmword [0x6e1d10]
pand xmm1, xmm5
por xmm1, xmm2
pshufd xmm7, xmm0, 0x4e
pand xmm0, xmmword [0x6e1d20]
movdqa xmm2, xmm0
pslldq xmm2, 4
movdqa xmm3, xmmword [0x6e1d30]
pand xmm7, xmm3
por xmm7, xmm2
psrldq xmm0, 0xc
por xmm7, xmm0
por xmm7, xmm1
movdqa xmmword [ebx + 0x40], xmm7
movdqa xmm0, xmmword [ebx + 0x50]
movdqa xmm2, xmm0
pand xmm2, xmm4
pshufd xmm1, xmm0, 0x39
pand xmm1, xmm5
por xmm1, xmm2
pshufd xmm5, xmm0, 0x4e
pand xmm0, xmmword [0x6e1d20]
movdqa xmm2, xmm0
pslldq xmm2, 4
pand xmm5, xmm3
por xmm5, xmm2
psrldq xmm0, 0xc
por xmm5, xmm0
por xmm5, xmm1
movdqa xmmword [ebx + 0x50], xmm5
movdqa xmm1, xmmword [ebx + 0x60]
movdqa xmm0, xmm1
pand xmm0, xmm4
pshufd xmm2, xmm1, 0x39
pand xmm2, xmmword [0x6e1d10]
por xmm2, xmm0
pshufd xmm0, xmm1, 0x4e
pand xmm1, xmmword [0x6e1d20]
movdqa xmm3, xmm1
pslldq xmm3, 4
pand xmm0, xmmword [0x6e1d30]
por xmm0, xmm3
psrldq xmm1, 0xc
por xmm0, xmm1
por xmm0, xmm2
movdqa xmmword [ebx + 0x60], xmm0
movdqa xmm2, xmmword [ebx + 0x70]
pshufd xmm1, xmm2, 0x39
pand xmm1, xmmword [0x6e1d10]
pand xmm4, xmm2
por xmm1, xmm4
movdqa xmm3, xmmword [0x6e1d20]
pand xmm3, xmm2
pshufd xmm4, xmm2, 0x4e
pand xmm4, xmmword [0x6e1d30]
movdqa xmm2, xmm3
pslldq xmm2, 4
por xmm4, xmm2
psrldq xmm3, 0xc
por xmm4, xmm3
por xmm4, xmm1
movdqa xmmword [ebx + 0x70], xmm4
mov eax, dword [esp + 0xc]
shl eax, 7
mov ecx, dword [esp + 8]
movaps xmm1, xmmword [esp + 0x20]
xorps xmm1, xmmword [ecx + eax]
movaps xmmword [ebx], xmm1
movaps xmm1, xmmword [esp + 0x10]
xorps xmm1, xmmword [ecx + eax + 0x10]
movaps xmmword [ebx + 0x10], xmm1
pxor xmm6, xmmword [ecx + eax + 0x20]
movdqa xmmword [ebx + 0x20], xmm6
movaps xmm1, xmmword [ebx + 0x30]
xorps xmm1, xmmword [ecx + eax + 0x30]
movaps xmmword [ebx + 0x30], xmm1
pxor xmm7, xmmword [ecx + eax + 0x40]
movdqa xmmword [ebx + 0x40], xmm7
pxor xmm5, xmmword [ecx + eax + 0x50]
movdqa xmmword [ebx + 0x50], xmm5
pxor xmm0, xmmword [ecx + eax + 0x60]
movdqa xmmword [ebx + 0x60], xmm0
pxor xmm4, xmmword [ecx + eax + 0x70]
movdqa xmmword [ebx + 0x70], xmm4
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret