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

Disassembly:
jns 0x427aef
js 0x427aef
call 0x84527178
adc al, byte [ebx]
add byte [eax], al
test esi, esi
je 0x427e09
cmp edx, 0xa
jb 0x427aff
jae 0x427aff
call 0x37b18af6
movdqu xmm6, xmmword [edi]
movdqa xmm0, xmm5
pshufb xmm0, xmmword [0x4399d0]
movdqa xmm1, xmmword [esp + 0x40]
pxor xmm0, xmm1
pxor xmm1, xmm7
movdqa xmm2, xmmword [esp + 0x50]
aesenc xmm0, xmm2
jbe 0x427b2e
ja 0x427b2e
call 0x1ba7eab
jns 0x427b33
js 0x427b33
call 0xdc7a8a9d
retf 0x376
aesenc xmm1, xmm2
jbe 0x427b3d
ja 0x427b3d
call 0x54b18aa7
and al, 0x70
movdqa xmm2, xmmword [esp + 0x70]
aesenc xmm0, xmm2
js 0x427b4d
jns 0x427b4d
call 0xdc7a8ab7
retf 0xf66
aesenc xmm1, xmm2
movdqa xmm2, xmmword [esp + 0x80]
aesenc xmm0, xmm2
js 0x427b65
jns 0x427b65
call 0x1bd7ee3
jp 0x427b6a
jnp 0x427b6a
call 0xdc7a8ad4
retf 0x1e8
aesenc xmm1, xmm2
call 0x427b75
add al, ch
movdqa xmm2, xmmword [esp + 0xa0]
aesenc xmm0, xmm2
jne 0x427b89
je 0x427b89
call 0xdc7a8af3
retf 0xf66
aesenc xmm1, xmm2
movdqa xmm2, xmmword [esp + 0xc0]
aesenc xmm0, xmm2
jne 0x427ba1
je 0x427ba1
call 0x1ba7f1e
jns 0x427ba6
js 0x427ba6
call 0xdc7a8b10
retf 0x37e
aesenc xmm1, xmm2
jle 0x427bb0
jg 0x427bb0
call 0x54b18b1a
and al, 0x60
movdqa xmm2, xmmword [esp + 0x60]
aesenc xmm0, xmm2
jl 0x427bc0
jge 0x427bc0
call 0xdc7a8b2a
retf 0xf66
aesenc xmm1, xmm2
movdqa xmm2, xmmword [esp + 0x90]
outsd dx, dword [esi]
xchg esp, eax
and al, 0x90
add byte [eax], al
add byte [esi + 0xf], ah
cmp ah, bl
ret 0x37a
jnp 0x427bd8
call 0x1b87f53
ja 0x427bdd
jbe 0x427bdd
call 0xdc7a8b47
retf 0x376
aesenc xmm1, xmm2
jbe 0x427be7
ja 0x427be7
call 0x94b18b51
and al, 0xb0
add byte [eax], al
add byte [esi + 0xf], ah
cmp ah, bl
ret 0x37a
movdqa xmm2, xmmword [esp + 0xb0]
aesenc xmm0, xmm2
jp 0x427bfa
jnp 0x427bfa
call 0xdc7a8b64
retf 0xf66
aesenc xmm1, xmm2
aesenc xmm0, xmm4
jne 0x427c09
je 0x427c09
call 0x1be7f8a
jge 0x427c0e
jl 0x427c0e
call 0xdc7a8b78
int3
aesenc xmm1, xmm4
jne 0x427c2e
aesenclast xmm0, xmm3
ja 0x427c1f
jbe 0x427c1f
call 0x1c07fa2
jg 0x427c24
jle 0x427c24
call 0xdd7a8b8e
retf
aesenclast xmm1, xmm3
jmp 0x427cdd
cmp edx, 0xc
call fcn.00427c37
add al, ch
call 0xdc7a8ba2
ret
jp 0x427c42
jnp 0x427c42
call 0xdc7a8bac
retf
aesenc xmm1, xmm3
movdqa xmm2, xmmword [esp + 0x30]
aesenc xmm0, xmm2
jno 0x427c57
jo 0x427c57
call 0x1b67fd0
jne 0x427c5c
je 0x427c5c
call 0xdc7a8bc6
retf 0x1b75
aesenc xmm1, xmm2
jne 0x427c7e
movdqa xmm2, xmmword [esp]
aesenclast xmm0, xmm2
js 0x427c72
jns 0x427c72
call 0x1ba7fef
jns 0x427c77
js 0x427c77
call 0xdd7a8be1
retf 0x5feb
aesenclast xmm1, xmm2
jmp 0x427cdd
movdqa xmm2, xmmword [esp]
aesenc xmm0, xmm2
jne 0x427c8d
je 0x427c8d
call 0x1bc800c
jnp 0x427c92
jp 0x427c92
call 0xdc7a8bfc
retf 0x37e
aesenc xmm1, xmm2
jle 0x427c9c
jg 0x427c9c
call 0x64b18c06
and al, 0x10
movdqa xmm4, xmmword [esp + 0x10]
aesenc xmm0, xmm4
jne 0x427cac
je 0x427cac
call 0xdc7a8c16
int3
aesenc xmm1, xmm4
movdqa xmm2, xmmword [esp + 0x20]
aesenclast xmm0, xmm2
jbe 0x427cc1
ja 0x427cc1
call 0x1b38035
jo 0x427cc6
jno 0x427cc6
call 0xdd7a8c30
retf 0xf66
aesenclast xmm1, xmm2
movdqa xmm3, xmmword [esp + 0xd0]
movdqa xmm4, xmmword [esp + 0xe0]
jbe 0x427ce2
ja 0x427ce2
call 0x754440dc
add al, 0x66
movq mm1, mm7
test bl, 1
jne 0x427ceb
movdqa xmm1, xmm7
pxor xmm0, xmm6
movdqa xmm7, xmm1
pxor xmm7, xmm0
movdqu xmmword [edi], xmm0
add edi, 0x10
add esi, 0xfffffff0
paddq xmm5, xmmword [0x4399e0]
movdqa xmm0, xmm5
pcmpeqq xmm0, xmmword [0x4399f0]
pslldq xmm0, 8
psubq xmm5, xmm0
mov bl, 1
jne 0x427aea
pxor xmm7, xmmword [esp + 0x40]
aesenc xmm7, xmmword [esp + 0x50]
aesenc xmm7, xmmword [esp + 0x70]
aesenc xmm7, xmmword [esp + 0x80]
aesenc xmm7, xmmword [esp + 0xa0]
aesenc xmm7, xmmword [esp + 0xc0]
aesenc xmm7, xmmword [esp + 0x60]
aesenc xmm7, xmmword [esp + 0x90]
aesenc xmm7, xmmword [esp + 0xb0]
aesenc xmm7, xmm4
cmp edx, 0xa
jge 0x427d81
jl 0x427d81
call 0x1bf8101
jl 0x427d86
jge 0x427d86
call 0x1b88101
ja 0x427d8b
jbe 0x427d8b
call 0x1c0810e
jg 0x427d90
jle 0x427d90
call 0x1b58106
jb 0x427d95
jae 0x427d95
call 0x1b88110
ja 0x427d9a
jbe 0x427d9a
call 0x1c0811d
jg 0x427d9f
jle 0x427d9f
call 0x1b38113
jo 0x427da4
jno 0x427da4
call fcn.00427f90
add byte [eax], al
call 0x1be812c
call 0x427daa
add al, ch
jge 0x427db0
jl 0x427db0
call 0x3b98a29
jne 0x427dbe
ja 0x427db7
jbe 0x427db7
call 0xdd7a8d21
sti
aesenclast xmm7, xmm3
jmp 0x427e09
cmp edx, 0xc
aesenc xmm7, xmm3
jae 0x427dcb
jb 0x427dcb
call 0x1b78143
je 0x427dd0
jne 0x427dd0
call 0xdc7a8d3a
jl 0x427dfa
aesenc xmm7, xmmword [esp + 0x30]
jne 0x427de6
xor byte [ebp + 0xd], dh
jae 0x427dde
jb 0x427dde
call 0xdd7a8d48
cmp al, 0x24
aesenclast xmm7, xmmword [esp]
jmp 0x427e09
jl 0x427deb
jge 0x427deb
call 0xdc7a8d55
cmp al, 0x24
aesenc xmm7, xmmword [esp]
aesenc xmm7, xmmword [esp + 0x10]
jae 0x427dfd
jb 0x427dfd
call 0x1bc817c
jnp 0x427e02
jp 0x427e02
call 0xdd7a8d6c
jl 0x427e2c
aesenclast xmm7, xmmword [esp + 0x20]
and byte [esi + 0xf], ah
cmp byte [eax], al
sub eax, 0x4399d0
pshufb xmm5, xmmword [0x4399d0]
jne 0x427e17
je 0x427e17
call 0x29c18e0e
movdqu xmmword [ecx], xmm5
movdqu xmmword [eax], xmm7
jne 0x427e24
je 0x427e24
call 0x5f36e3b5
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x1c0
mov edx, dword [ebp + 0x18]
mov esi, dword [ebp + 0x14]
mov ebx, dword [ebp + 8]
jb 0x427e49
jae 0x427e49
call 0x1ba81c6
jns 0x427e4e
js 0x427e4e
call 0x13739dd
add byte [eax], al
mov edi, dword [ebx + 0xf4]
xor eax, eax
xor ecx, ecx
jb 0x427e5d
jae 0x427e5d
call 0x44b18e54
add eax, dword [esi]
movq qword [esp + eax + 0xc0], mm0
movdqu xmm0, xmmword [ebx + eax + 4]
movdqa xmmword [esp + eax + 0xc0], xmm0
inc ecx
add eax, 0x10
cmp ecx, edi
jbe 0x427e58
ja 0x427e79
jbe 0x427e79
call 0xf34ecc08
movq mm2, qword [ecx]
mov ecx, dword [ebp + 0xc]
movdqu xmm2, xmmword [ecx]
pshufb xmm2, xmmword [0x439a00]
mov eax, dword [ebp + 0x10]
movdqu xmm1, xmmword [eax]
test edx, edx
je 0x428195
call fcn.00427e9e
add al, ch
call 0x24c6a6b2
rol byte [eax], 0
add byte [edi], cl
sub dword [esp + 0xb0], eax