Function at 0x47dd0a
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
mov edi, edi
push ebx
mov ebx, esp
push ecx
push ecx
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x88
xor eax, eax
mov dword [ebp - 8], ecx
push esi
push edi
lea edi, [ebp - 0x50]
mov ecx, dword [ebx + 0xc]
stosd dword es:[edi], eax
mov esi, edx
mov edx, dword [ebx + 8]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x40]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x30]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x20]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x60]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x70]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x80]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov edi, dword [ebp - 8]
cmp ecx, 0x80
jb 0x47de97
mov eax, ecx
shr eax, 7
mov dword [ebp - 8], eax
movups xmm0, xmmword [edi]
mov eax, dword [edi + 0x1d0]
movups xmm1, xmmword [esi]
mov dword [ebp - 4], eax
lea eax, [edi + 0x10]
movups xmm5, xmmword [esi + 0x10]
movups xmm4, xmmword [esi + 0x20]
movups xmm3, xmmword [esi + 0x30]
movups xmm7, xmmword [esi + 0x50]
movups xmm6, xmmword [esi + 0x60]
movups xmm2, xmmword [esi + 0x70]
pxor xmm1, xmm0
pxor xmm5, xmm0
movaps xmmword [ebp - 0x20], xmm1
pxor xmm4, xmm0
movups xmm1, xmmword [esi + 0x40]
pxor xmm3, xmm0
pxor xmm7, xmm0
pxor xmm1, xmm0
pxor xmm6, xmm0
pxor xmm2, xmm0
jmp 0x47de15
movaps xmm1, xmmword [ebp - 0x20]
add eax, 0x10
aesenc xmm1, xmm0
movaps xmmword [ebp - 0x20], xmm1
movaps xmm1, xmmword [ebp - 0x30]
aesenc xmm5, xmm0
aesenc xmm4, xmm0
aesenc xmm3, xmm0
aesenc xmm1, xmm0
aesenc xmm7, xmm0
aesenc xmm6, xmm0
aesenc xmm2, xmm0
movups xmm0, xmmword [eax]
movaps xmmword [ebp - 0x30], xmm1
cmp eax, dword [ebp - 4]
jb 0x47ddde
aesenclast xmm1, xmm0
movaps xmmword [ebp - 0x30], xmm1
mov eax, 0x80
movaps xmm1, xmmword [ebp - 0x20]
add esi, eax
aesenclast xmm1, xmm0
aesenclast xmm2, xmm0
aesenclast xmm5, xmm0
aesenclast xmm4, xmm0
aesenclast xmm3, xmm0
aesenclast xmm7, xmm0
aesenclast xmm6, xmm0
movaps xmmword [ebp - 0x20], xmm1
sub ecx, eax
movaps xmm0, xmmword [ebp - 0x20]
movaps xmm1, xmmword [ebp - 0x30]
movups xmmword [edx], xmm0
movups xmmword [edx + 0x10], xmm5
movups xmmword [edx + 0x20], xmm4
movups xmmword [edx + 0x30], xmm3
movups xmmword [edx + 0x40], xmm1
movups xmmword [edx + 0x50], xmm7
movups xmmword [edx + 0x60], xmm6
movups xmmword [edx + 0x70], xmm2
add edx, eax
sub dword [ebp - 8], 1
movaps xmmword [ebp - 0x50], xmm2
jne 0x47dd8a
jmp 0x47debb
movaps xmm1, xmmword [ebp - 0x20]
movaps xmm0, xmmword [ebp - 0x80]
movaps xmm5, xmmword [ebp - 0x50]
movaps xmm3, xmmword [ebp - 0x30]
movaps xmm4, xmmword [ebp - 0x40]
movaps xmm7, xmmword [ebp - 0x60]
movaps xmm6, xmmword [ebp - 0x70]
movaps xmmword [ebp - 0x30], xmm1
movaps xmmword [ebp - 0x50], xmm0
cmp ecx, 0x10
jb 0x47e07c
movups xmm0, xmmword [esi]
movaps xmmword [ebp - 0x40], xmm0
cmp ecx, 0x20
jb 0x47df05
movups xmm5, xmmword [esi + 0x10]
cmp ecx, 0x30
jb 0x47df05
movups xmm4, xmmword [esi + 0x20]
cmp ecx, 0x40
jb 0x47df05
movups xmm3, xmmword [esi + 0x30]
cmp ecx, 0x50
jb 0x47df05
movups xmm1, xmmword [esi + 0x40]
movaps xmmword [ebp - 0x30], xmm1
cmp ecx, 0x60
jb 0x47df05
movups xmm7, xmmword [esi + 0x50]
cmp ecx, 0x70
jb 0x47df05
movups xmm6, xmmword [esi + 0x60]
mov esi, dword [edi + 0x1d0]
lea eax, [edi + 0x10]
movups xmm0, xmmword [edi]
cmp ecx, 0x50
jb 0x47dfb7
movaps xmmword [ebp - 0x20], xmm0
movaps xmm2, xmm0
pxor xmm4, xmmword [ebp - 0x20]
pxor xmm5, xmm0
movaps xmm0, xmmword [ebp - 0x20]
pxor xmm0, xmmword [ebp - 0x50]
pxor xmm3, xmmword [ebp - 0x20]
pxor xmm1, xmmword [ebp - 0x20]
pxor xmm7, xmmword [ebp - 0x20]
pxor xmm6, xmmword [ebp - 0x20]
pxor xmm2, xmmword [ebp - 0x40]
movaps xmmword [ebp - 0x20], xmm0
jmp 0x47df8d
aesenc xmm1, xmm0
movaps xmmword [ebp - 0x30], xmm1
add eax, 0x10
movaps xmm1, xmmword [ebp - 0x20]
aesenc xmm1, xmm0
movaps xmmword [ebp - 0x20], xmm1
movaps xmm1, xmmword [ebp - 0x30]
aesenc xmm2, xmm0
aesenc xmm5, xmm0
aesenc xmm4, xmm0
aesenc xmm3, xmm0
aesenc xmm7, xmm0
aesenc xmm6, xmm0
movups xmm0, xmmword [eax]
cmp eax, esi
jb 0x47df52
aesenclast xmm5, xmm0
aesenclast xmm4, xmm0
aesenclast xmm3, xmm0
aesenclast xmm1, xmm0
aesenclast xmm7, xmm0
aesenclast xmm6, xmm0
jmp 0x47e03e
movups xmmword [ebp - 0x20], xmm0
cmp ecx, 0x20
jb 0x47e007
pxor xmm4, xmmword [ebp - 0x20]
movaps xmm2, xmm0
pxor xmm2, xmmword [ebp - 0x40]
pxor xmm5, xmm0
pxor xmm3, xmmword [ebp - 0x20]
jmp 0x47dfef
add eax, 0x10
aesenc xmm2, xmm0
aesenc xmm5, xmm0
aesenc xmm4, xmm0
aesenc xmm3, xmm0
movups xmm0, xmmword [eax]
cmp eax, esi
jb 0x47dfd8
aesenclast xmm5, xmm0
aesenclast xmm4, xmm0
aesenclast xmm3, xmm0
jmp 0x47e03e
movups xmm0, xmmword [eax]
add eax, 0x10
movaps xmm2, xmmword [ebp - 0x20]
pxor xmm2, xmmword [ebp - 0x40]
aesenc xmm2, xmm0
cmp eax, esi
jae 0x47e03b
movups xmm1, xmmword [eax]
movups xmm0, xmmword [eax + 0x10]
add eax, 0x20
aesenc xmm2, xmm1
aesenc xmm2, xmm0
cmp eax, esi
jb 0x47e01f
movaps xmm1, xmmword [ebp - 0x30]
movups xmm0, xmmword [eax]
aesenclast xmm2, xmm0
movups xmmword [edx], xmm2
cmp ecx, 0x20
jb 0x47e07c
movups xmmword [edx + 0x10], xmm5
cmp ecx, 0x30
jb 0x47e07c
movups xmmword [edx + 0x20], xmm4
cmp ecx, 0x40
jb 0x47e07c
movups xmmword [edx + 0x30], xmm3
cmp ecx, 0x50
jb 0x47e07c
movups xmmword [edx + 0x40], xmm1
cmp ecx, 0x60
jb 0x47e07c
movups xmmword [edx + 0x50], xmm7
cmp ecx, 0x70
jb 0x47e07c
movups xmmword [edx + 0x60], xmm6
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 8