Function at 0xcaa1e4
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using aes mixcolumns step

Disassembly:
xor edx, ebx
sub edx, 0x4209e983
sal ecx, 0x74
sub al, 0x8f
or eax, 0x33b34e2e
ror edx, 1
or eax, ecx
mov word [esp + 2], ax
inc edx
neg word [esp]
add ecx, 0x81aae296
xor edx, 0xc8b42f3c
neg dword [esp + ecx - 0x7daae296]
not cl
sal ax, 2
xor ebx, edx
sub cx, 0xfea6
add edi, edx
cdq
sub byte [esp + ecx - 0x7daae3c0], 0x30
mov ax, word [esi + ecx - 0x7daae3c1]
mov cx, word [esi + ecx - 0x7daae3bf]
dec dx
rol edx, 8
jne 0xa08941
mov edx, 0x4914341d
dec ebp
lea edx, [edx + edx - 0x4914341e]
inc esp
movzx edi, dx
inc ebp
movsx esi, di
inc esp
mov ebp, edx
inc ecx
movzx ecx, byte [edx + edx - 0x4914341d]
inc ecx
xor cl, ah
inc ecx
mov ebx, esi
dec edi
lea eax, [esi + esi*8 + 0x341e3031]
rol cl, 1
inc ecx
push edi
inc cl
not byte [esp + edx - 0x49143419]
inc bp
and ebp, esi
dec esi
lea ecx, [eax*2 - 0x32e6637d]
ror cl, 1
inc ecx
mov eax, eax
dec eax
idiv dword [esp + edx - 0x4914341d]
sub cl, 0x9c
neg cl
inc edx
neg byte [esp + edi - 0x3416]
dec ecx
shl esi, 0x47
inc ecx
ror cl, 0x63
inc esp
xor ah, cl
inc ecx
movzx esi, al
sub esi, 0x2f1b2d2d
inc edx
dec dword [esp + edi - 0x341a]
dec edx
lea edi, [edi + edi - 0x341f]
inc edx
ror dword [esp + edi*8 - 0x1a0e5], 0x6e
dec edx
shl dword [esp + esi*2 - 0x341d00], 0xfb
inc dx
mov dword [edi + edi*2 - 0x683a], ecx
dec edi
lea edx, [edi + edx - 0x3421]
inc edx
seta byte [esp + edi*4 - 0xd071]
inc dx
sal dword [esp + esi - 0x1a0e7c], 0x4f
dec edx
sar dword [esp + edi - 0x341d], 0xd9
inc ebx
mov eax, dword [edi + edx - 0x341d]
inc ecx
xor eax, esp
inc dx
add dword [esp + edi*2 - 0x6837], 0xf46c0a6
scasd eax, dword es:[edi]
lodsb al, byte [esi]
mov esp, 0xffff2f8d
not eax
rol eax, 1
inc ecx
pop ebp
inc edx
lea eax, [eax + eax*2 + 0x565c67c7]
inc cx
dec esi
inc ecx
sal ecx, 0xc5
inc ecx
movsx ecx, bh
neg eax
dec esp
bt edx, eax
sbb eax, 0xfb35ea9f
inc ecx
push ebp
ror eax, 3
dec eax
shr ebx, cl
dec eax
dec edx
sar dword [esp + edi - 0x341d], 0xb8
ror eax, 1
inc ecx
shl cl, 2
inc ecx
inc cl
shl bl, 0x66
dec esi
mov dword [esp + edi*8 - 0x1a0e8], esp
dec ebp
imul ecx, ebp
inc ecx
inc dh
inc edx
xor dword [esp + edi - 0x341d], eax
shl dx, 0xc8
inc ecx
dec edi
inc ecx
pop esp
sal cx, 0x2e
inc ebp
add ch, bh
dec eax
arpl ax, ax
inc cx
rol ebp, 0x4a
dec esp
adc ebx, eax
mov eax, 0x3c9c55bc
inc cx
sal eax, 0x6c
jp fcn.008c5046
syscall
inc ecx
push ebp
pushfd
dec ecx
mov ebp, 0x1136f937
xchg esp, eax
test dword [edx], eax
jle 0x8ade61
dec esp
mov ebp, dword [esp + 0x10]
dec eax
mov dword [esp + 0x10], 0xb9015e44
push dword [esp + 8]
popfd
dec eax
lea esp, [esp + 0x10]
call fcn.0073fd82
ror byte [edi], cl
rcl ecx, 0xc1
enter 0xf02, 0xffffffffffffffba
int1
invalid
add edi, eax
lea ebp, [ebp + edx*2 - 2]
movzx ecx, word [ebp + edx]
mov dword [esp + edx*2 + 4], edx
dec edx
or edx, edx
xor cx, bx
neg cx
mov eax, dword [esp + 4]
bts eax, 0x20
sbb cx, 0x4b6
cwde
ror cx, 1
mov dword [esp + eax + 7], eax
call fcn.0094ca48
shl eax, 0xbc
or ax, word ss:[edx + ecx - 0x6095fa3d]
sar dword [esp + ecx - 0x6095fa3d], 0xc1
ror dword [esp + ecx - 0x6095fa3d], 0x89
or ecx, 0x26bd6b96
mov word [esi + ecx - 0x66bdfbbd], ax
mov edx, dword [ebp + ecx - 0x66bdfbc3]
sal ecx, 0x26
movsx eax, cl
sbb ebp, 3
jmp 0x8adc2d