Function at 0x100cf998
Capabilities:
Encrypt data using aes mixcolumns step
Encrypt data using chaskey

Disassembly:
sal dword [esp + ecx*2 - 0x1fff1], cl
lea eax, [ecx + eax - 0x9197102]
sub byte [esp + ecx - 0xfff7], 0x1a
xor eax, 0x6795e4a3
movsx edx, cx
pop ecx
inc edx
xor ebx, eax
mov ecx, 0xfb9c929e
xchg dword [esp + 8], ecx
xadd dword [esp + ecx - 0x8403dc], ecx
adc ebp, eax
xor edx, 0x5e2d0385
dec dword [esp + 8]
mov eax, dword [esi - 0xb]
shr dx, 0x8a
rol edx, 0x26
shl dword [esp + edx - 0x74800fe3], cl
lea esi, [esi + edx - 0x74800ff3]
or dword [esp + edx - 0x74800fe0], 0x880e848e
ror byte [esp + edx - 0x74800fe4], 0x27
rol byte [esp + edx - 0x74800fdf], 0x64
xor eax, ebx
neg dx
sar cl, 0x63
and dword [esp + edx - 0x7480f010], edx
neg eax
jmp 0x10121304
or dx, cx
btc edx, ecx
xor eax, ebx
dec eax
push ecx
not dword [esp]
neg eax
dec eax
sub cx, cx
not cx
not eax
neg eax
not ecx
inc dword [esp + ecx - 0x505e0000]
not edx
not eax
xor ebx, eax
sub cl, cl
adc ebp, eax
push edx
movsx eax, cx
jmp 0x10175677
rol dx, 0xea
bswap eax
lea eax, [eax + edx + 0x253756]
jae 0x10171849
pop ebp
inc ebp
movsx esi, al
dec eax
xor edx, 0x3237050f
inc esp
mov edx, eax
inc ebp
movsx esp, dh
dec esi
lea ebx, [esi + esi - 0x666eb9d6]
dec esp
xor edi, edx
inc cx
bt eax, ebp
dec eax
inc esi
jno 0x10182068
mov edx, 0x4388ccaf
inc edi
mov eax, dword [ecx + eax*2 - 0x4e]
xor word [esp + eax - 0x1e], si
sal dword [esp + eax - 0x20], 0x9d
inc ebp
xor eax, edi
dec eax
lea edx, [edx*2 - 0x1a7be076]
inc ecx
neg eax
dec eax
mul dword [esp + eax - 0x20]
inc ecx
rol eax, 2
inc sp
btr eax, ebx
dec ecx
xadd esi, ebp
sbb al, 0xab
inc ecx
xor eax, 0x2843296
inc sp
add dword [esp + ebp*2 - 0x3d], edx
mul word [esp + ebp*8 - 0x106]
inc ecx
ror eax, 1
shl dword [esp + ebp - 0x20], 0xfd
dec eax
lea eax, [eax + ebp*2 + 0x213b402d]
inc ecx
bts esi, edx
dec esp
mov dword [esp + ebp*2 - 0x42], edi
dec ecx
cmovae ebp, esi
inc esp
xor dword [esp + ebp*2 - 0x884], eax
inc ecx
pop edi
and si, 0x38a2
dec ebp
arpl ax, ax
dec ecx
adc ebx, eax
dec esp
xadd ebp, esp
inc ecx
mul ebx
inc esi
movzx ebx, byte [eax + ecx - 0x6300a5e1]
div eax
inc sp
add esi, ebp
sbb esi, esi
dec ebp
lea ecx, [ecx + eax - 0x1408f540]
dec esp
lea eax, [eax*8 + 0x3aa890b7]
inc ebp
xor bl, bh
inc cx
shl esi, 0x2d
inc ecx
neg bl
movzx ecx, ax
dec edx
inc ebp
xadd dh, al
inc ecx
rol bl, 1
inc eax
or cl, ch
inc ecx
adc bl, 0x23
rol cl, 0xa6
inc ecx
xor bl, 0xc
inc ebp
xor bh, bl
cwd
dec esp
and esi, edx
dec esp
adc ebx, esp
dec eax
lea eax, [ecx*4 + 0x592b8f12]
call fcn.1012114b
sub al, 0x51
mov eax, dword [0x30adff60]
cld
xchg edx, eax
pushal
push ebx
in eax, dx
push eax
cld
xchg edx, eax
pushal
add esp, dword [ecx + 0x6092fc04]
xlatb
movsd dword es:[edi], dword [esi]
insb byte es:[edi], dx
cld
xchg edx, eax
pushal
lahf
mov dword [edx - 0x3212947a], esp
dec eax
bnd jl 0x1012c78c
add dword [edi - 0x6882ad71], esp
push esi
mov ebx, 0x5b432205
je 0x1012c7e1
ror byte [edi - 0x4b], cl
add byte [ebx - 0x4c], ah
fbstp tbyte [eax - 0x5e65c65f]
mov dword [0x1d94cb04], eax
movsb byte es:[edi], byte [esi]
int1
adc ebx, dword [eax + 0x641de960]
push es
xor cl, al
pop eax
jmp 0xfa982c3a
neg eax
dec eax
sub cx, dx
sbb dword [esp + edx - 0x748063ba], edx
neg eax
ror byte [esp + edx - 0x748063ba], 0xa2
or cx, dx
ror dx, 2
xor ebx, eax
sal dword [esp + edx - 0x748018e8], cl
add byte [esp + edx - 0x748018e7], dl
sar ecx, cl
mov dword [edi + edx - 0x748018fa], eax
add cx, dx
pop edx
bswap edx
lea edi, [edi + edx - 0x7a8ec20a]
movsx eax, dx
dec dword [esp + edx - 0x7a8ec1fe]
setne dl
pop ecx
pop edx
jb fcn.102260e1
mov ecx, dword [esi - 4]
adc esi, 0xfffffffc
sub byte [esp + 1], 0x8c
xor ecx, ebx
ror word [esp], 0xe2
dec ecx
jmp 0x10236a26
inc ecx
xor ebx, ecx
add ebp, ecx
push eax
movzx cx, byte [edi + eax - 0x63a8bd27]
mov al, byte [edi + eax - 0x63a8bd25]
or edx, 0x6db5caba
add dl, 0xa4
and cl, al
neg dword [esp]
add word [esp + 1], 0x468a
movzx eax, word [esp]
not cl
sar edx, 0x51
mov word [edi + eax*4 - 0x33376], cx
lea ecx, [eax*4 - 0x695e5b69]
lea edi, [eax + edi - 0xccdf]
shr byte [esp + eax - 0xccda], 0x86
pop edx
jne fcn.102260e1
dec edx
mov dword [edi + eax - 0x29], edx
inc ecx
push eax
ja 0x1012c6e4
bswap ecx
mov edx, 0x63a8bd23
mov eax, edx
pop edx
xor ecx, 0xad092fb1
or eax, eax
add edx, eax
jge 0x1017ab6e
push ebx
mov ebx, 0xad2ae52c
push ebx
pushfd
sub dword [esp + ebx + 0x52d51ad8], 0x82c7f36
mov ebx, dword [esp + ebx + 0x52d51adc]
mov dword [esp + 8], 0xcd0a8764
push dword [esp]
popfd
lea esp, [esp + 8]
call fcn.10232747
mov edx, 0xc5b29994
sub esi, 4
lea ecx, [edx + edx*2 + 0x5e8a2418]
shr cl, 0xa5
mov eax, dword [esi]
jns 0x100f2ba2