Function at 0x8b6df8
Capabilities:
Authenticate hmac

Disassembly:
movsx ecx, dl
lea edx, [ecx + ecx - 0x1a53a347]
xor eax, ebx
bswap eax
ror eax, 3
dec edx
sub eax, 0x45b74685
neg cl
not eax
inc ecx
add ecx, edx
imul edx, edx
inc eax
imul edx, edx
rol dx, 0xab
xor ebx, eax
shl ecx, cl
dec ecx
ror dx, 0x6c
adc edi, eax
sub dl, dl
movsx eax, cx
not eax
movzx ecx, byte [ebp + eax + 4]
imul ax
lea ebp, [eax + ebp + 5]
mul edx
xor cl, bl
sub cl, 0x82
xor cl, 0xad
mul edx
neg cl
ror cl, 1
ror edx, 0x75
sbb edx, 0x88dc4bc
xor bl, cl
add ecx, esp
ror edx, 0xb6
movzx dx, byte [ecx + eax*8]
movsx ecx, ax
adc cl, cl
not cl
mov word [esi + eax*8], dx
btc ecx, eax
sar cl, 0xc4
movsx edx, ax
xor eax, edi
jmp eax
mov word [edx + eax*2 - 0x58], cx
jmp edi
dec eax
adc ebp, edx
cbw
inc ecx
and ah, 0xbd
inc edi
mov dl, byte [edx + ebx - 0xd2]
inc sp
xor eax, ecx
inc cx
sbb ecx, esp
dec esp
adc dword [esp + eax + 8], esp
neg edx
dec esi
mov dword [esp + edx - 0xd2], ecx
inc edx
xor dword [esp + edx*4 - 0x348], edx
shl al, 0x83
inc ecx
push esp
dec esi
mov ecx, dword [esp + edx - 0xca]
dec esi
mov dword [esp + edx - 0xca], edi
dec eax
arpl dx, dx
adc cx, di
inc bp
bts eax, edi
jae 0x8508db
rol dl, 0x41
inc ebp
xor cl, dl
dec esp
add edx, esp
dec ecx
and ebx, edi
inc ebp
mov ebp, dword [edx + eax*8 - 0x7fff8]
dec eax
idiv edi
inc esp
mov dword [esi + ebx - 0x20000103], ebp
inc cx
sub eax, esp
dec eax
lea esi, [esi + ebx - 0x20000103]
dec ebx
dec esi
lea ebp, [ebx + eax*4 - 0x77fa34d7]
rol bx, 0xe4
inc edi
mov edx, dword [ebx - 0x8ffe]
dec eax
cwde
imul ebx
dec ebp
lea ebx, [ebx + ebx*2 - 0x40001fba]
inc ebp
xadd esp, edi
sar dl, 0xc2
inc ebp
xor edx, ecx
inc ecx
dec edx
call fcn.008ba01c
inc edx
ror byte [esp + edx - 0xcf], 0x21
neg edx
xor edx, 0x3b924399
inc ecx
shl al, 0xe2
jae 0x867f2b
movzx cx, byte [esi]
mov edx, 0xa985d6a4
mov al, byte [esi + 2]
not cl
xor edx, edx
xor dl, 0x3c
not al
not dx
or dl, dl
inc edx
and cl, al
mov eax, 0xf9899594
mov word [edx + esi - 0xffc2], cx
mov eax, dword [ebp + edx*8 - 0x7fe20]
jmp 0x75c671
rol edx, 1
inc dx
shl dword [esp + edx - 0xd0], 0xee
js 0x870ffc
xor edx, ebx
sub edx, 0xb4157aaf
movzx eax, cl
ror edx, 1
cwde
sub edx, 0x9991df2f
shr eax, cl
xor edx, 0x1501ac1a
add al, al
or eax, eax
xor ebx, edx
btc ax, cx
rol ecx, cl
jb 0x8d713f
dec eax
mov dword [esp + ecx], edi
inc esp
mov edi, eax
dec eax
xadd dword [esp + ecx + 7], ecx
sets cl
dec esp
adc esp, dword [esp + ecx + 7]
inc esp
mov esi, dword [esi + ecx*4 + 0xc]
inc esp
movsx edx, bh
inc sp
xor dword [esp + ecx*4 + 2], esp
inc eax
or bh, cl
inc ecx
not edi
dec eax
bswap edx
inc ecx
not esi
inc ecx
mov eax, esp
inc ebp
or edi, esi
inc ecx
mov esi, 0xc425f915
inc sp
xadd eax, esp
jbe 0x88d148
inc esp
mov dword [ecx + esi + 0xc], edi
dec eax
lea esi, [esi + ecx + 0xc]
dec eax
cwde
inc esi
mov esi, dword [ecx + ebx]
dec ebp
lea ebx, [ebx + ecx + 4]
dec esi
lea ebp, [0x4cb85801]
inc ebp
xor esi, ecx
inc ebp
lea esi, [esi + edi - 0x55c7e582]
pop ecx
ror cl, cl
inc ecx
mul esp
inc ecx
xor esi, 0xa88b1695
inc esp
mov eax, ecx
inc ecx
rol al, 1
cwd
inc ecx
inc esi
inc ecx
shr ah, 0x61
inc ecx
bswap esi
dec esp
xor dword [esp + eax*2 - 0x58040000], ecx
sar eax, cl
movzx ebx, dx
inc ecx
imul dl
inc esi
xor dword [esp + 0x796ec100], esi
inc ecx
pop ecx
push eax
dec ebp
arpl si, si
dec eax
dec ecx
add ebp, esi
inc esp
xor dl, bl
rol eax, cl
dec eax
mov dword [esp + edx - 0x46bc0000], ebp
ret
add edi, edx
mov edx, dword [esi + eax*2 - 0x58]
btc ecx, ecx
mov cx, word [esi + eax - 0x28]
lea esi, [esi + eax*8 - 0x15a]
jae 0x822805
jmp fcn.0081bed0