Function at 0x41ede0
Capabilities:
Encode data using xor
Encrypt data using aes via x86 extensions

Disassembly:
push ebp
mov ebp, esp
push esi
push ebx
mov esi, edx
mov ebx, eax
lea eax, [edx + 0x20]
and esp, 0xfffffff0
sub esp, 0x170
lea edx, [esp + 0x160]
lea ecx, [esp + 0xe0]
mov dword [esp + 0x1c], edx
lea edx, [esp + 0x150]
mov dword [esp + 0x18], edx
lea edx, [esp + 0x140]
mov dword [esp + 0x14], edx
lea edx, [esp + 0x130]
mov dword [esp + 0x10], edx
lea edx, [esp + 0x120]
mov dword [esp + 0xc], edx
lea edx, [esp + 0x110]
mov dword [esp + 8], edx
lea edx, [esp + 0x100]
mov dword [esp + 4], edx
lea edx, [esp + 0xf0]
mov dword [esp], edx
lea edx, [esp + 0xd0]
call fcn.0041e780
movdqa xmm0, xmmword [esp + 0xd0]
lea edx, [ebx + 0x100000]
mov eax, ebx
movaps xmmword [esp + 0xc0], xmm0
movdqa xmm0, xmmword [esp + 0xe0]
movaps xmmword [esp + 0xb0], xmm0
movdqa xmm0, xmmword [esp + 0xf0]
movaps xmmword [esp + 0xa0], xmm0
movdqa xmm0, xmmword [esp + 0x100]
movaps xmmword [esp + 0x90], xmm0
movdqa xmm0, xmmword [esp + 0x110]
movaps xmmword [esp + 0x80], xmm0
movdqa xmm0, xmmword [esp + 0x120]
movaps xmmword [esp + 0x70], xmm0
movdqa xmm0, xmmword [esp + 0x130]
movaps xmmword [esp + 0x60], xmm0
movdqa xmm0, xmmword [esp + 0x140]
movdqa xmm1, xmmword [esi + 0x40]
movaps xmmword [esp + 0x50], xmm0
movaps xmmword [esp + 0x20], xmm1
movdqa xmm0, xmmword [esp + 0x150]
movaps xmmword [esp + 0x40], xmm0
movdqa xmm0, xmmword [esp + 0x160]
movdqa xmm7, xmmword [esi + 0x50]
movaps xmmword [esp + 0x30], xmm0
movdqa xmm6, xmmword [esi + 0x60]
movdqa xmm5, xmmword [esi + 0x70]
movdqa xmm4, xmmword [esi + 0x80]
movdqa xmm3, xmmword [esi + 0x90]
movdqa xmm2, xmmword [esi + 0xa0]
movdqa xmm1, xmmword [esi + 0xb0]
movdqa xmm0, xmmword [esp + 0x20]
pxor xmm0, xmmword [eax]
sub eax, 0xffffff80
pxor xmm7, xmmword [eax - 0x70]
pxor xmm6, xmmword [eax - 0x60]
pxor xmm5, xmmword [eax - 0x50]
pxor xmm4, xmmword [eax - 0x40]
pxor xmm3, xmmword [eax - 0x30]
pxor xmm2, xmmword [eax - 0x20]
pxor xmm1, xmmword [eax - 0x10]
cmp edx, eax
aesenc xmm0, xmmword [esp + 0xc0]
aesenc xmm7, xmmword [esp + 0xc0]
aesenc xmm6, xmmword [esp + 0xc0]
aesenc xmm5, xmmword [esp + 0xc0]
aesenc xmm4, xmmword [esp + 0xc0]
aesenc xmm3, xmmword [esp + 0xc0]
aesenc xmm2, xmmword [esp + 0xc0]
aesenc xmm1, xmmword [esp + 0xc0]
aesenc xmm0, xmmword [esp + 0xb0]
aesenc xmm7, xmmword [esp + 0xb0]
aesenc xmm6, xmmword [esp + 0xb0]
aesenc xmm5, xmmword [esp + 0xb0]
aesenc xmm4, xmmword [esp + 0xb0]
aesenc xmm3, xmmword [esp + 0xb0]
aesenc xmm2, xmmword [esp + 0xb0]
aesenc xmm1, xmmword [esp + 0xb0]
aesenc xmm7, xmmword [esp + 0xa0]
aesenc xmm6, xmmword [esp + 0xa0]
aesenc xmm5, xmmword [esp + 0xa0]
aesenc xmm4, xmmword [esp + 0xa0]
aesenc xmm3, xmmword [esp + 0xa0]
aesenc xmm2, xmmword [esp + 0xa0]
aesenc xmm1, xmmword [esp + 0xa0]
aesenc xmm0, xmmword [esp + 0xa0]
aesenc xmm0, xmmword [esp + 0x90]
aesenc xmm7, xmmword [esp + 0x90]
aesenc xmm6, xmmword [esp + 0x90]
aesenc xmm5, xmmword [esp + 0x90]
aesenc xmm4, xmmword [esp + 0x90]
aesenc xmm3, xmmword [esp + 0x90]
aesenc xmm2, xmmword [esp + 0x90]
aesenc xmm1, xmmword [esp + 0x90]
aesenc xmm0, xmmword [esp + 0x80]
aesenc xmm7, xmmword [esp + 0x80]
aesenc xmm6, xmmword [esp + 0x80]
aesenc xmm5, xmmword [esp + 0x80]
aesenc xmm4, xmmword [esp + 0x80]
aesenc xmm3, xmmword [esp + 0x80]
aesenc xmm2, xmmword [esp + 0x80]
aesenc xmm1, xmmword [esp + 0x80]
aesenc xmm0, xmmword [esp + 0x70]
aesenc xmm7, xmmword [esp + 0x70]
aesenc xmm6, xmmword [esp + 0x70]
aesenc xmm5, xmmword [esp + 0x70]
aesenc xmm4, xmmword [esp + 0x70]
aesenc xmm3, xmmword [esp + 0x70]
aesenc xmm2, xmmword [esp + 0x70]
aesenc xmm1, xmmword [esp + 0x70]
aesenc xmm7, xmmword [esp + 0x60]
aesenc xmm6, xmmword [esp + 0x60]
aesenc xmm5, xmmword [esp + 0x60]
aesenc xmm4, xmmword [esp + 0x60]
aesenc xmm3, xmmword [esp + 0x60]
aesenc xmm2, xmmword [esp + 0x60]
aesenc xmm1, xmmword [esp + 0x60]
aesenc xmm0, xmmword [esp + 0x60]
aesenc xmm0, xmmword [esp + 0x50]
aesenc xmm7, xmmword [esp + 0x50]
aesenc xmm6, xmmword [esp + 0x50]
aesenc xmm5, xmmword [esp + 0x50]
aesenc xmm4, xmmword [esp + 0x50]
aesenc xmm3, xmmword [esp + 0x50]
aesenc xmm2, xmmword [esp + 0x50]
aesenc xmm1, xmmword [esp + 0x50]
aesenc xmm0, xmmword [esp + 0x40]
aesenc xmm7, xmmword [esp + 0x40]
aesenc xmm6, xmmword [esp + 0x40]
aesenc xmm5, xmmword [esp + 0x40]
aesenc xmm4, xmmword [esp + 0x40]
aesenc xmm3, xmmword [esp + 0x40]
aesenc xmm2, xmmword [esp + 0x40]
aesenc xmm1, xmmword [esp + 0x40]
aesenc xmm0, xmmword [esp + 0x30]
aesenc xmm7, xmmword [esp + 0x30]
aesenc xmm6, xmmword [esp + 0x30]
aesenc xmm5, xmmword [esp + 0x30]
aesenc xmm4, xmmword [esp + 0x30]
aesenc xmm3, xmmword [esp + 0x30]
aesenc xmm2, xmmword [esp + 0x30]
aesenc xmm1, xmmword [esp + 0x30]
jne 0x41ef41
movaps xmmword [esi + 0x40], xmm0
movaps xmmword [esi + 0x50], xmm7
movaps xmmword [esi + 0x60], xmm6
movaps xmmword [esi + 0x70], xmm5
movaps xmmword [esi + 0x80], xmm4
movaps xmmword [esi + 0x90], xmm3
movaps xmmword [esi + 0xa0], xmm2
movaps xmmword [esi + 0xb0], xmm1
lea esp, [ebp - 8]
pop ebx
pop esi
pop ebp
ret