Function at 0x45f300
Capabilities:
Encode data using xor

Disassembly:
push ebx
push esi
push edi
push 0
push 0
mov eax, dword [esp + 0x20]
cmp eax, 3
jb 0x45f312
xor eax, eax
mov ebx, dword [eax*4 + 0x4ef190]
mov dword [esp], ebx
mov eax, dword [eax*4 + 0x4ef19c]
mov dword [esp + 4], eax
mov esi, dword [esp + 0x18]
lea edi, [esi + 0x200]
mov eax, 5
cmp dword [esp + 0x24], 0
je 0x45f340
add eax, 3
movaps xmm0, xmmword [esi]
movaps xmm1, xmmword [esi + 0x80]
movaps xmm2, xmmword [esi + 0x100]
movaps xmm3, xmmword [esi + 0x180]
movaps xmm4, xmm0
movaps xmm5, xmm2
shufps xmm0, xmm1, 0x44
shufps xmm4, xmm1, 0xee
shufps xmm2, xmm3, 0x44
shufps xmm5, xmm3, 0xee
movaps xmm1, xmm0
movaps xmm3, xmm4
shufps xmm1, xmm2, 0x88
shufps xmm0, xmm2, 0xdd
shufps xmm4, xmm5, 0x88
shufps xmm3, xmm5, 0xdd
movaps xmmword [edi], xmm1
movaps xmmword [edi + 0x10], xmm0
movaps xmmword [edi + 0x20], xmm4
movaps xmmword [edi + 0x30], xmm3
add esi, 0x10
add edi, 0x40
sub eax, 1
jne 0x45f340
cmp dword [esp + 0x24], 0
je 0x45f797
mov esi, dword [esp + 0x18]
movdqa xmm6, xmmword [0x4ef120]
movdqa xmm7, xmmword [0x4ef130]
movdqa xmm0, xmmword [esi + 0x200]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x400], xmm0
movdqa xmmword [esi + 0x500], xmm1
movdqa xmm0, xmmword [esi + 0x210]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x410], xmm0
movdqa xmmword [esi + 0x510], xmm1
movdqa xmm0, xmmword [esi + 0x220]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x420], xmm0
movdqa xmmword [esi + 0x520], xmm1
movdqa xmm0, xmmword [esi + 0x230]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x430], xmm0
movdqa xmmword [esi + 0x530], xmm1
movdqa xmm0, xmmword [esi + 0x240]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x440], xmm0
movdqa xmmword [esi + 0x540], xmm1
movdqa xmm0, xmmword [esi + 0x250]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x450], xmm0
movdqa xmmword [esi + 0x550], xmm1
movdqa xmm0, xmmword [esi + 0x260]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x460], xmm0
movdqa xmmword [esi + 0x560], xmm1
movdqa xmm0, xmmword [esi + 0x270]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x470], xmm0
movdqa xmmword [esi + 0x570], xmm1
movdqa xmm0, xmmword [esi + 0x280]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x480], xmm0
movdqa xmmword [esi + 0x580], xmm1
movdqa xmm0, xmmword [esi + 0x290]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x490], xmm0
movdqa xmmword [esi + 0x590], xmm1
movdqa xmm0, xmmword [esi + 0x2a0]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x4a0], xmm0
movdqa xmmword [esi + 0x5a0], xmm1
movdqa xmm0, xmmword [esi + 0x2b0]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x4b0], xmm0
movdqa xmmword [esi + 0x5b0], xmm1
movdqa xmm0, xmmword [esi + 0x2c0]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x4c0], xmm0
movdqa xmmword [esi + 0x5c0], xmm1
movdqa xmm0, xmmword [esi + 0x2d0]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x4d0], xmm0
movdqa xmmword [esi + 0x5d0], xmm1
movdqa xmm0, xmmword [esi + 0x2e0]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x4e0], xmm0
movdqa xmmword [esi + 0x5e0], xmm1
movdqa xmm0, xmmword [esi + 0x2f0]
movdqa xmm1, xmm0
pxor xmm0, xmm6
pxor xmm1, xmm7
movdqa xmmword [esi + 0x4f0], xmm0
movdqa xmmword [esi + 0x5f0], xmm1
mov edi, 0x4ef140
lea ecx, [esi + 0x680]
lea esi, [esi + 0x480]
call dword [esp + 4]
mov esi, dword [esp + 0x18]
movdqa xmmword [esi + 0x200], xmm0
movdqa xmmword [esi + 0x210], xmm1
movdqa xmmword [esi + 0x220], xmm2
movdqa xmmword [esi + 0x230], xmm3
movdqa xmmword [esi + 0x240], xmm4
mov edi, 0x4ef140
lea ecx, [esi + 0x680]
lea esi, [esi + 0x580]
call dword [esp + 4]
mov esi, dword [esp + 0x18]
movdqa xmmword [esi + 0x250], xmm0
movdqa xmmword [esi + 0x260], xmm1
movdqa xmmword [esi + 0x270], xmm2
movdqa xmmword [esi + 0x280], xmm3
movdqa xmmword [esi + 0x290], xmm4
lea edi, [esi + 0x200]
lea ecx, [esi + 0x680]
lea esi, [esi + 0x380]
call dword [esp + 4]
mov esi, dword [esp + 0x18]
movdqa xmmword [esi + 0x400], xmm0
movdqa xmmword [esi + 0x410], xmm1
movdqa xmmword [esi + 0x420], xmm2
movdqa xmmword [esi + 0x430], xmm3
movdqa xmmword [esi + 0x440], xmm4
movdqa xmm0, xmmword [0x4ef100]
movdqa xmmword [esi + 0x450], xmm0
pxor xmm1, xmm1
movdqa xmmword [esi + 0x460], xmm1
movdqa xmmword [esi + 0x470], xmm1
movdqa xmmword [esi + 0x480], xmm1
movdqa xmmword [esi + 0x490], xmm1
movdqa xmmword [esi + 0x4a0], xmm1
movdqa xmmword [esi + 0x4b0], xmm1
movdqa xmmword [esi + 0x4c0], xmm1
movdqa xmmword [esi + 0x4d0], xmm1
movdqa xmmword [esi + 0x4e0], xmm1
movdqa xmm2, xmmword [0x4ef110]
movdqa xmmword [esi + 0x4f0], xmm2
lea edi, [esi + 0x250]
lea ecx, [esi + 0x680]
lea esi, [esi + 0x480]
call dword [esp + 4]
mov esi, dword [esp + 0x18]
movdqa xmmword [esi + 0x2a0], xmm0
movdqa xmmword [esi + 0x2b0], xmm1
movdqa xmmword [esi + 0x2c0], xmm2
movdqa xmmword [esi + 0x2d0], xmm3
movdqa xmmword [esi + 0x2e0], xmm4
movdqa xmmword [esi + 0x2f0], xmm0
movdqa xmmword [esi + 0x300], xmm1
movdqa xmmword [esi + 0x310], xmm2
movdqa xmmword [esi + 0x320], xmm3
movdqa xmmword [esi + 0x330], xmm4
mov esi, dword [esp + 0x18]
movdqa xmm0, xmmword [0x4ef100]
movdqa xmmword [esi + 0x450], xmm0
movdqa xmmword [esi + 0x550], xmm0
pxor xmm1, xmm1
movdqa xmmword [esi + 0x460], xmm1
movdqa xmmword [esi + 0x560], xmm1
movdqa xmmword [esi + 0x470], xmm1
movdqa xmmword [esi + 0x570], xmm1
movdqa xmmword [esi + 0x480], xmm1
movdqa xmmword [esi + 0x580], xmm1
movdqa xmmword [esi + 0x490], xmm1
movdqa xmmword [esi + 0x590], xmm1
movdqa xmmword [esi + 0x4a0], xmm1
movdqa xmmword [esi + 0x5a0], xmm1
movdqa xmmword [esi + 0x4b0], xmm1
movdqa xmmword [esi + 0x5b0], xmm1
movdqa xmmword [esi + 0x4c0], xmm1
movdqa xmmword [esi + 0x5c0], xmm1
movdqa xmmword [esi + 0x4d0], xmm1
movdqa xmmword [esi + 0x5d0], xmm1
movdqa xmmword [esi + 0x4e0], xmm1
movdqa xmmword [esi + 0x5e0], xmm1
movdqa xmm2, xmmword [0x4ef110]
movdqa xmmword [esi + 0x4f0], xmm2
movdqa xmmword [esi + 0x5f0], xmm2
xor ebx, ebx
mov edx, dword [esp]
lea esp, [esp]
add eax, 0
mov esi, dword [esp + 0x18]
movdqa xmm0, xmmword [esi + 0x2a0]
movdqa xmm1, xmmword [esi + 0x2b0]
movdqa xmm2, xmmword [esi + 0x2c0]
movdqa xmm3, xmmword [esi + 0x2d0]
movdqa xmm4, xmmword [esi + 0x2e0]
movdqa xmmword [esi + 0x400], xmm0
movdqa xmmword [esi + 0x410], xmm1
movdqa xmmword [esi + 0x420], xmm2
movdqa xmmword [esi + 0x430], xmm3
movdqa xmmword [esi + 0x440], xmm4
lea edi, [esi + 0x200]
lea ecx, [esi + 0x680]
lea esi, [esi + 0x480]
call edx
mov esi, dword [esp + 0x18]
movdqa xmmword [esi + 0x500], xmm0
movdqa xmmword [esi + 0x510], xmm1
movdqa xmmword [esi + 0x520], xmm2
movdqa xmmword [esi + 0x530], xmm3
movdqa xmmword [esi + 0x540], xmm4
lea edi, [esi + 0x250]
lea ecx, [esi + 0x680]
lea esi, [esi + 0x580]
call edx
mov esi, dword [esp + 0x18]
movdqa xmmword [esi + 0x2a0], xmm0
movdqa xmmword [esi + 0x2b0], xmm1
movdqa xmmword [esi + 0x2c0], xmm2
movdqa xmmword [esi + 0x2d0], xmm3
movdqa xmmword [esi + 0x2e0], xmm4
pxor xmm0, xmmword [esi + 0x2f0]
pxor xmm1, xmmword [esi + 0x300]
pxor xmm2, xmmword [esi + 0x310]
pxor xmm3, xmmword [esi + 0x320]
pxor xmm4, xmmword [esi + 0x330]
movdqa xmmword [esi + 0x2f0], xmm0
movdqa xmmword [esi + 0x300], xmm1
movdqa xmmword [esi + 0x310], xmm2
movdqa xmmword [esi + 0x320], xmm3
movdqa xmmword [esi + 0x330], xmm4
add ebx, 1
cmp ebx, dword [esp + 0x1c]
jb 0x45f870
mov esi, dword [esp + 0x18]
lea edi, [esi + 0x200]
mov eax, 5
movaps xmm0, xmmword [edi]
movaps xmm1, xmmword [edi + 0x10]
movaps xmm2, xmmword [edi + 0x20]
movaps xmm3, xmmword [edi + 0x30]
movaps xmm4, xmm0
movaps xmm5, xmm2
shufps xmm0, xmm1, 0x44
shufps xmm4, xmm1, 0xee
shufps xmm2, xmm3, 0x44
shufps xmm5, xmm3, 0xee
movaps xmm1, xmm0
movaps xmm3, xmm4
shufps xmm1, xmm2, 0x88
shufps xmm0, xmm2, 0xdd
shufps xmm4, xmm5, 0x88
shufps xmm3, xmm5, 0xdd
movaps xmmword [esi], xmm1
movaps xmmword [esi + 0x80], xmm0
movaps xmmword [esi + 0x100], xmm4
movaps xmmword [esi + 0x180], xmm3
add esi, 0x10
add edi, 0x40
sub eax, 1
jne 0x45f9b0
pop ecx
pop eax
pop edi
pop esi
pop ebx
ret 0x10