Function at 0x195e535
Capabilities:
Authenticate hmac

Disassembly:
dec ecx
sub edi, 4
push 0x789d4da4
shl word [esp + 4], 0xab
inc ebp
mov eax, dword [edi]
sal dword [esp + 2], 0xb1
inc ebp
xor eax, edx
mov ecx, 0x3f3a3ab0
inc ecx
xor eax, 0x53061786
dec eax
lea eax, [ecx + ecx*8 + 0x2500ff1e]
jmp 0x1c120ce
xor eax, ebx
lea edx, [ecx + ecx*2 - 0x2fce0273]
bt ecx, 0x2d
inc eax
shl dx, 0x49
mov dword [esp], ecx
push ecx
rol eax, 3
rol ecx, 0xfe
xor eax, 0x70a65da1
btr dx, dx
dec ecx
jns 0x1c1f753
mov eax, 0x49b698af
lea esi, [eax + esi - 0x49b698b3]
movzx edx, al
mov eax, dword [eax + esi - 0x49b698af]
xor edx, 0x20a91b3b
lea edx, [edx*2 + 0x23b3ed03]
xor eax, ebx
btc edx, 0x9b
lea eax, [eax + edx - 0x67734b8f]
sar dl, 0x21
xor eax, 0x9a2e2121
not eax
push edx
shl edx, 0xad
sbb eax, 0x7812d013
shl byte [esp + 2], 3
mov ecx, 0x912dc528
sal byte [esp], 0xe7
bswap eax
ror word [esp], 0x49
mov dword [esp], edx
not cl
xor ebx, eax
and dl, 0xb2
sar word [esp + 2], 4
sbb edi, 4
shr cl, 0x86
push ecx
and word [esp + 4], dx
mov dword [edi], eax
rol edx, cl
imul cx, cx
lea esi, [esi + edx*2 - 0x482a0010]
imul edx, edx
shl edx, cl
mov edx, dword [esi]
xor edx, ebx
mov eax, ecx
or ecx, eax
adc eax, 0x91b8c88
dec edx
rol word [esp], 0x6f
shl ecx, 0x1e
xchg ecx, eax
rol edx, 2
sar cl, 0x66
call fcn.01ac1dbd
jmp 0x130bf68
call fcn.01ad8f47
bt ecx, ecx
mov ecx, dword [ecx + ebp - 0x2ebf]
mov edx, 0x3d0bdd37
xor ecx, ebx
add dx, 0x61b7
or edx, edx
bts edx, 0xb2
rol ecx, 1
lea eax, [edx*4 + 0x741cb63a]
xor dl, ah
cwde
lea ecx, [ecx + edx*2 - 0x25953fa3]
xor ax, dx
btr eax, edx
and edx, edx
ror ecx, 2
inc edx
idiv eax
call fcn.012af76c
push ecx
inc ebp
xor ecx, edx
inc edx
dec byte [esp + ebx*2 - 0x128]
dec ebx
lea ebx, [ebx + ebp*4 - 0x4c742454]
inc edx
shl dword [esp + ebx*8 - 0x4bd], 0xd8
inc ecx
bswap ecx
inc esi
or dword [esp + ebx - 0x8d], ebx
inc ecx
not ecx
inc ebp
xor al, al
inc edx
movzx eax, byte [esp + ebx - 0x93]
inc sp
btr ebx, esp
inc ecx
ror ecx, 3
inc ecx
bswap ecx
inc ecx
ror ecx, 3
inc ecx
dec ecx
dec eax
cdq
inc dx
not dword [esp + ebx*8 - 0x4c1]
dec edx
add dword [esp + ebx - 0x94], edi
dec esi
mov dword [esp + ebx*2 - 0x12a], edx
dec ecx
bt eax, eax
dec eax
cdq
inc esi
xor dword [esp + ebx*2 - 0x12a], ecx
inc esp
add al, dl
inc ecx
dec ah
inc esp
mov esi, ecx
dec esi
mov edx, dword [esp + ebx - 0x91]
dec ebp
arpl cx, cx
dec ecx
adc esi, ecx
dec edx
mov dword [esp + ebp*2 - 0x12a], ecx
dec edi
lea ecx, [eax + esi*4 + 0x169506bd]
pop edx
pop ebx
jmp fcn.019f821c
rol dx, 0xac
neg al
dec cl
sub cx, cx
shl ecx, 0x97
sbb al, 0xba
neg dl
ror al, 1
sub al, 0xa
jmp 0x1bf77b3
btr eax, 0x89
mov ax, word [ebp + 4]
and cx, 0x61b9
call fcn.01ae2732
xor bl, al
or dx, cx
jnp 0x2546bc4
shr dl, 0xa2
adc ecx, ecx
xor bl, al
add eax, esp
not cx
shl edx, 0x50
add dl, byte [eax + ecx*4 - 0x3fffc]
movzx eax, cx
lea ebp, [ebp + ecx - 0x10001]
dec ax
mov word [ecx + ebp - 0xffff], dx
xor eax, 0x50bcfbba
inc cl
lea edi, [edi + ecx - 0xff04]
movzx edx, al
shr ecx, 0x43
mov eax, dword [edi + ecx*2 - 0x3fc0]
add ecx, 0xf1b858b
xadd ecx, edx
xadd edx, ecx
xor eax, ebx
inc dx
not eax
btc dx, dx
xor dx, dx
neg eax
bts ecx, 5
or edx, 0x64a21cb6
lea eax, [ecx + eax - 0x38516578]
btr dx, 0xaa
neg eax
xor ebx, eax
add esi, eax
push edx
mov eax, 0x16898914
not dword [esp + ecx - 0xf1ba56b]
pop ecx
jmp fcn.01b51770
mov byte [esp + ecx - 0x3f3a3aad], cl
inc ecx
ror eax, 1
dec eax
cdq
and byte [esp + ecx*2 - 0x7e74755d], dl
shr cx, 0x4b
inc ebp
lea eax, [eax + ecx*2 + 0x78df40e]
bt dx, 0xa0
rol dword [esp + ecx - 0x3f3a0003], cl
inc ecx
xor eax, 0xa28a6b96
inc ecx
mov esp, 0xbc889000
dec esp
mov dword [esp + ecx - 0x3f3a0007], edx
dec ax
inc esp
movzx esi, cx
inc esp
xor dword [esp + ecx - 0x3f3a0007], eax
call fcn.01c640ff
mov ecx, 0x6b110f91
lea eax, [ecx*8 - 0x684df9c4]
movsx edx, al
lea edi, [edi + ecx - 0x6b110f92]
movzx eax, byte [edi + ecx - 0x6b110f91]
btc cx, dx
xor al, bl
bt edx, edx
dec al
neg ecx
lea ecx, [ecx*4 - 0x725380dc]
xor dl, 0x96
rol al, 1
sub edx, edx
sar cx, 1
sbb al, 0x82
rol al, 1
bts ecx, 0x36
jb 0x1a4d273
mov dword [esp + edx], esi
ret 0xc
inc eax
shr cl, 0x24
xchg dword [esp + ecx - 0x7dc6a40a], edx
bswap eax
adc ecx, ecx
xor ebx, eax
lea edx, [edx*4 + 0x5a2d94be]
push ecx
add esi, eax
pop eax
xchg byte [esp + edx*2 - 0x6d2fc701], ah
mov edx, dword [ebp + edx*2 - 0x6d2fc704]
jmp 0x1b20ffd
and edx, edx
adc eax, esp
xchg ch, dl
movzx dx, byte [edx + eax - 0xbfba]
jmp 0x19e3deb