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

Disassembly:
mov dword [esp + edx - 0x100d766f], edx
lea ebp, [ebp + edx - 0x100d7673]
mov ecx, dword [esp + edx - 0x100d766f]
sbb dl, ch
call fcn.101b7bba
mov eax, 0xb59831b8
mov eax, dword [esi]
mov edx, 0xed02e4a2
ror edx, 0xe3
movsx ecx, dx
mov edx, dword [edx + esi - 0x5da05c90]
xor ecx, ecx
xor cx, 0x9ca4
lea esi, [esi + ecx*8 - 0x4e51c]
lea ecx, [ecx + ecx*8 - 0x5071424d]
imul ecx, ecx
add eax, edx
btr ecx, 0x1f
call fcn.1021b69f
mov edx, 0xd4b69b02
mov eax, dword [ebp]
add dx, dx
mov ecx, edx
sar cl, cl
xor eax, ebx
ror cl, 0x85
sbb eax, 0x9c989d2e
xor dx, 0x811f
ror eax, 1
inc ecx
xchg ecx, edx
inc ecx
neg eax
shl cl, 0xc4
inc eax
bt edx, edx
sal cx, 0xcb
xor ebx, eax
btr edx, ecx
btr cx, cx
add edx, 0x289a5d3e
mov dword [edi - 4], eax
rol edx, 0x5b
rol ecx, 0xfb
mov edx, dword [ebp + ecx - 0x6a5affc]
sal cx, 0x43
xor edx, ebx
jmp 0x101f0561
xor edx, dword [esp + edx*8 - 0xa23e9cc]
imul edx, edx
not eax
and dl, byte [esp + 4]
lea edx, [edx + edx*2 - 0x11c1bd5a]
and ecx, eax
lea eax, [edx + edx*8 - 0x2a44dd69]
xor dx, 0x3716
dec dl
mov dword [edi + edx*2 - 0x201aecde], ecx
jno 0x10191853
xor ebx, edx
add esi, edx
ror word [esp + eax - 0x28e6874b], 0xb
movzx ecx, word [eax + edi - 0x28e6874d]
lea edi, [edi + eax*2 - 0x51cd0e98]
lea eax, [eax + eax*2 + 0x3190f8a9]
xor cx, bx
inc eax
neg cx
sub edx, 0x9c989d2e
sub ecx, ecx
bt ecx, ecx
lea eax, [ecx + ecx - 0x548aa4f]
ror edx, 1
bt cx, cx
neg edx
inc edx
shl eax, 0x9f
ror eax, 0x73
xor ebx, edx
lea ecx, [eax*8 - 0x3e7e7a4c]
mov dword [edi + eax*8 - 0x8008], edx
mov eax, dword [ebp + eax*2 - 0x1ff8]
sub ebp, 0xfffffff4
not ecx
shl cl, 0x86
add ecx, 0x1f009d11
xor eax, ebx
inc eax
neg eax
movsx edx, cx
bts cx, dx
rol eax, 1
bts edx, ecx
sar dl, 6
add ecx, ecx
bswap eax
add cx, dx
cmovnp ecx, edx
xor ebx, eax
bt dx, 2
inc cx
rol cl, 0xa4
adc esi, eax
not edx
movzx eax, dl
lea eax, [edi + edx*2 - 0xd008]
sal edx, 5
mov dword [edi + edx*2 - 0x1a000c], eax
not cx
lea edi, [edx + edi - 0xd000c]
inc edx
bswap edx
jg 0x10235b8e
push 0x94955b25
mov edx, dword [edi]
mov eax, 0x60b14a88
xor byte [esp + eax - 0x60b14a86], al
lea edi, [edi + eax - 0x60b14a84]
jg 0x1021a385
mov dx, word [edi]
mov eax, 0x6abaf916
and eax, eax
mov ax, word [edi + eax - 0x6abaf914]
mov ecx, 0x8a938816
adc edi, 2
bts ecx, ecx
or cx, 0x5d80
inc cl
adc dx, ax
bts ecx, 0x96
imul ecx, ecx
push ecx
mov word [edi], dx
sbb esi, 3
lea eax, [ecx*8 - 0x6fcbff56]
sar cl, 0xc4
sbb byte [esp + eax - 0x25f47932], ah
mov ecx, dword [esi + eax - 0x25f47932]
xor ecx, ebx
sal ax, 0x6c
ror ecx, 2
lea ecx, [ecx + eax*2 + 0x24caa184]
rol eax, 0xf3
not ecx
lea ecx, [ecx + eax + 0x31286685]
mov edx, 0x92aee521
sar eax, 0xe4
rol ecx, 3
cdq
xor ecx, 0x49b8570d
not edx
call fcn.10234d86
push edx
add dword [esp + edx*4 - 0x1fc00], edx
mov word [edi + edx - 0x7f00], ax
mov dword [esp + edx*2 - 0xfe00], esi
ret 8
shr word [esp + ecx*4 - 0x1280], 0x42
xor edx, 0x95046e0b
jmp 0x102306c0
movsx ecx, byte [esp + eax - 0x60b14a88]
rol ecx, cl
xor edx, ebx
not dword [esp + eax - 0x60b14a88]
rol edx, 1
sub edx, 0xbe8b628f
lea eax, [eax*2 + 0x6783f23d]
jmp 0x10215aa5
inc cl
not edx
ror edx, cl
bswap ecx
jmp 0x101a57c1