Function at 0x2a8354
Capabilities:
Authenticate hmac

Disassembly:
call rax
mov rbx, qword [rsp + 0x40]
sar rbp, 0xac
mov rax, rsi
shrd bp, cx, 0x10
stc
add rsp, 0x20
pop rdi
cmovg esi, r9d
pop rsi
bswap bp
pop rbp
jmp 0x2a87bd
call rax
test eax, eax
jmp 0x2a842f
call rax
mov rbx, rax
jmp 0x2a83ed
mov qword [rsp + 8], rbx
bsf r9, rbx
push rbp
push rsi
shl dx, cl
neg bpl
push rdi
bt edx, 0x55
cmp r13b, 0xf9
sub rsp, 0x20
sub esi, esi
mov rbp, rcx
shl dh, 0xca
cdq
lea r9, [rsp + 0x48]
jmp 0x2a8389
lea rdx, [rsp + 0x50]
lea ecx, [rsi + 0xb]
xor r8d, r8d
movzx rax, r8w
movsx rax, bx
mov qword [rsp + 0x50], rsi
not ax
cwde
mov dword [rsp + 0x48], esi
lahf
movsx eax, ax
cmovge eax, r12d
mov rax, qword [0x00299028]
call rax
mov eax, dword [rsp + 0x48]
cmp r15d, esi
test rbp, r15
test eax, eax
je 0x2a8797
lea edx, [rax + rax]
xor rax, rdi
xor ecx, ecx
movsx rax, dx
movsx eax, r13w
movsxd rax, ebp
mov rax, qword [0x00299020]
jmp 0x295ec3
mov qword [rsp + 0x50], rax
test r9d, ebx
test rax, rax
je 0x2a87a1
mov r8d, dword [rsp + 0x48]
shld cx, r11w, 0x90
lea r9, [rsp + 0x48]
clc
lea ecx, [rsi + 0xb]
clc
xor dl, bh
xor dx, 0x100e
add r8d, r8d
cqo
mov rdx, rax
lahf
mov rax, qword [0x00299028]
jmp 0x1bab4b
js 0x2a8797
lea r10, [0x002a3740]
mov r9, rsi
sub r10, rbp
xchg r8w, dx
nop
not cl
movzx r8d, byte [r9 + rbp]
bt cx, 0x9f
lea rax, [r9 + rbp]
movsxd rcx, r13d
jmp 0x2a8462
mov ecx, r9d
btr edx, 0x36
movzx edx, byte [r10 + rax]
btr ax, 0xbc
cmovo ax, r13w
mov eax, 0xeff1c2a
stc
rol eax, cl
stc
add al, r9b
jmp 0x2a8489
inc r9
cmp r12, rdi
xor dl, al
rcl ax, 0x71
lea eax, [rdx - 0x41]
cmc
test r14b, r14b
cmp al, 0x19
jmp 0x2a84a3
ja 0x2a84b3
add dl, 0x20
ror ah, cl
sar ah, 0xc
inc al
lea eax, [r8 - 0x41]
stc
cmp al, 0x19
jmp 0x2a84bf
ja 0x2a84d0
add r8b, 0x20
cmp rdx, 0x19b85679
test dl, dl
jmp 0x2a84d7
je 0x2a84eb
cmp dl, r8b
jmp 0x2a84e5
je 0x2a8449
cmp dl, r8b
jmp 0x2a84f3
jb 0x2a8510
ja 0x2a8510
mov r8, qword [0x00299038]
jmp 0x2a850b
jmp 0x2a85e8
lea r10, [0x002a374d]
seto r8b
ror cx, 0xc2
neg ah
mov r9, rsi
bt cx, ax
bts dx, r10w
sub r10, rbp
bts cx, bx
movzx r8, r12w
nop
movzx r8d, byte [r9 + rbp]
bt edx, r11d
cwde
lea rax, [r9 + rbp]
mov dl, dil
movzx edx, ax
mov ecx, r9d
cmc
movzx edx, byte [r10 + rax]
cdqe
mov eax, 0xeff1c2a
rol eax, cl
add al, r9b
jmp 0x2a8567
inc r9
cmp r13b, 0xb2
jmp 0x2a8576
xor dl, al
nop
ror ah, 0x3f
lea eax, [rdx - 0x41]
cmp al, 0x19
jmp 0x2a8587
ja 0x2a8590
add dl, 0x20
lea eax, [r8 - 0x41]
cmp al, 0x19
jmp 0x2a859b
ja 0x2a85ac
add r8b, 0x20
cmp dil, 0x5c
cmp r12b, r13b
test dl, dl
jmp 0x2a85b3
je 0x2a85c7
cmp dl, r8b
jmp 0x2a85c1
je 0x2a8539
cmp dl, r8b
jmp 0x2a85cf
jb 0x2a867e
ja 0x2a867e
mov r8, qword [0x00299088]
clc
jmp 0x2a85e8
test r8, r8
jmp 0x2a85f0
je 0x2a867e
mov rbx, qword [rsp + 0x50]
rcl r10b, cl
mov rdx, rsi
sub r10d, 0x6d960076
mov r10d, dword [rbx]
test ebp, 0x48c329f3
test r10, r10
jmp 0x2a8619
je 0x2a87a1
lea rcx, [rbx + 0x18]
nop
mov r9, qword [rcx]
test al, r13b
cmp r9, r8
jmp 0x2a8632
jae 0x2a8654
mov eax, dword [rcx + 8]
test r9b, 0x3f
lea rax, [rax + r9]
cmp bl, dil
cmp rax, r8
jmp 0x2a864e
ja 0x2a8671
inc rdx
add rcx, 0x128
cmp rdx, r10
jmp 0x2a8666
jb 0x2a8624
jmp 0x2a87a1
mov rsi, r9
jmp 0x2a8679
jmp 0x2a87a1
mov rbx, qword [rsp + 0x50]
movzx rdi, si
bsr r11w, r12w
bts r11, r9
mov r11, rsi
movsx edi, r8w
mov edi, dword [rbx]
clc
cmp spl, 0x26
test rdi, rdi
jmp 0x2a86a6
je 0x2a87a1
lea r10, [rbx + 8]
nop
jmp 0x2a86bf
movzx eax, word [r10 + 0x26]
mov r9, rbp
cmc
btc rcx, 0xd7
cmp ebp, esi
sub r9, rax
rcr cl, 0xdb
lea r8, [rax + r10 + 0x28]
sub r9, r10
movzx cx, r11b
jmp 0x2a86e7
nop
inc al
rdtsc
cmovae ecx, esi
movzx ecx, byte [r9 + r8 - 0x28]
cqo
movzx edx, byte [r8]
inc ah
jmp 0x2a8705
inc r8
bts ax, si
lea eax, [rcx - 0x41]
test rax, 0x29c006bb
cmp al, 0x19
jmp 0x2a871c
ja 0x2a8730
add cl, 0x20
bts ax, ax
shl ax, 0x44
xadd al, al
lea eax, [rdx - 0x41]
cmp al, 0x19
jmp 0x2a873a
ja 0x2a8743
add dl, 0x20
test cl, cl
jmp 0x2a874a
je 0x2a875d
cmp cl, dl
jmp 0x2a8757
je 0x2a86ef
cmp cl, dl
jmp 0x2a8764
jb 0x2a8770
jbe 0x2a878e
inc r11
add r10, 0x128
cmc
cmp r11, rdi
jmp 0x2a8783
jb 0x2a86bf
jmp 0x2a87a1
mov rsi, qword [r10 + 0x10]
jmp 0x2a87a1
mov rbx, qword [rsp + 0x50]
jmp 0x2a87a1
sub edx, edx
movzx rax, r14w
setnp ah
mov rcx, rbx
movzx eax, r14w
mov rax, qword [0x00299030]
jmp 0x1b8a05
ret