Function at 0x1404a7955
Capabilities:
Authenticate hmac

Disassembly:
mov rax, rsp
xor ch, 0x5c
btr rcx, rbx
shl rcx, cl
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
btc ecx, 0x1b
shld cx, r8w, 0x7a
push rdi
sbb rcx, rdi
rcl ch, 0xe
rcl cl, cl
push r12
cmp r15b, 0x7e
sub cx, 0x2811
push r13
push r14
bts cx, si
sbb cx, 0x2fe5
push r15
sub rsp, 0x50
movzx cx, r8b
cmovs ecx, eax
xor edx, edx
not ecx
xchg ch, ch
lea rcx, [rax - 0x48]
jmp 0x1404a79b6
call fcn.1404a5fcd
mov rax, qword [rsp + 0x38]
ror r13b, 0xe3
shr r15w, 0xc6
sub edi, edi
add r15b, 0x17
shr r15b, cl
mov r13d, edi
xor r15w, 0x632e
shl bpl, 0xe8
adc bpl, r11b
mov ebx, 0x2c0
clc
mov r14d, edi
add bpl, sil
mov r15d, edi
shl ebp, cl
mov rbp, qword [rax + 0x120]
stc
cmp r15d, 1
jmp 0x1404a7a04
jne 0x1404a7a5e
mov rcx, rbx
jmp 0x1404a7a12
call fcn.1404cab11
mov r14, rax
clc
test r12w, r15w
test rax, rax
je 0x1404a879f
mov r8, rbx
btc cx, 0xe1
sub edx, edx
movsx rcx, bp
movsx cx, sil
mov cx, sp
mov rcx, rax
jmp 0x1404a7a46
call fcn.1404a5ab9
mov r13, rbx
inc rsi
mov r12b, dl
mov ebx, 0x2c0
movzx r12w, r9b
mov r12, r14
movzx si, bpl
mov rsi, rdi
sub r12, rbp
dec di
mov rdi, rbp
test ax, r9w
cmp r15d, 1
jmp 0x1404a7a7f
jne 0x1404a7acf
lea rcx, [r14 + rbx]
shr dh, cl
movsxd rdx, r9d
bsr dx, cx
mov rdx, r13
sbb r8w, r10w
sbb r8b, 0x9a
mov qword [r12 + rdi], rcx
shr r8b, cl
add r8b, r11b
sub rdx, rbx
movsxd r8, r10d
setnp r8b
cmovb r8d, r10d
mov r8, qword [rdi]
jmp 0x1404a7abd
call fcn.1404ca8a4
test eax, eax
jmp 0x1404a7ac9
jne 0x1404a87ac
mov rcx, qword [rdi]
or rax, 0xffffffffffffffff
inc rax
test r10b, 0xe6
stc
cmp byte [rcx + rax], 0
jmp 0x1404a7ae7
jne 0x1404a7ad6
inc rbx
inc rsi
add rbx, rax
stc
clc
add rdi, 8
cmp rsi, 7
jmp 0x1404a7b05
jb 0x1404a7a76
xor esi, esi
jmp 0x1404a7b19
lea rdi, [rbp + 0x38]
test rax, r12
test r10w, 0x692b
cmp r15d, 1
jmp 0x1404a7b2f
jne 0x1404a7b6a
lea rcx, [r14 + rbx]
movzx r8d, ax
mov rdx, r13
mov qword [rdi + r12], rcx
shl r8, cl
movzx r8d, r15w
sub rdx, rbx
mov r8b, 0x96
setbe r8b
mov r8, qword [rdi]
jmp 0x1404a7b5d
call fcn.1404ca8a4
test eax, eax
jne 0x1404a87ac
mov rcx, qword [rdi]
or rax, 0xffffffffffffffff
jmp 0x1404a7b76
inc rax
test bpl, spl
cmp byte [rcx + rax], 0
jmp 0x1404a7b85
jne 0x1404a7b76
inc rbx
jmp 0x1404a7b93
inc rsi
add rbx, rax
cmp r9d, 0x2a110719
clc
add rdi, 8
cmp rsi, 7
jmp 0x1404a7bae
jb 0x1404a7b26
xor esi, esi
xor di, dx
lea rdi, [rbp + 0x70]
test cl, 0xd0
cmp r15d, 1
jmp 0x1404a7bc9
jne 0x1404a7c10
lea rcx, [r14 + rbx]
bt dx, r15w
mov rdx, r13
sub r8, 0x5d147717
or r8b, 0x70
add r8b, r11b
mov qword [rdi + r12], rcx
adc r8w, 0x1627
sub rdx, rbx
movsx r8w, bl
mov r8, qword [rdi]
call fcn.1404ca8a4
test eax, eax
jmp 0x1404a7c0a
jne 0x1404a87ac
mov rcx, qword [rdi]
or rax, 0xffffffffffffffff
jmp 0x1404a7c1c
inc rax
cmp byte [rcx + rax], 0
jmp 0x1404a7c28
jne 0x1404a7c1c
inc rbx
jmp 0x1404a7c36
inc rsi
test r8w, 0x5f0f
cmp spl, r11b
add rbx, rax
cmc
test r14, rbx
add rdi, 8
cmp r12w, 0x21fe
stc
test r14w, 0x7614
cmp rsi, 0xc
jb 0x1404a7bc0
xor esi, esi
add edi, r9d
movzx edi, r13w
lea rdi, [rbp + 0xd0]
cmp r15d, 1
jmp 0x1404a7c7d
jne 0x1404a7cbd
lea rcx, [r14 + rbx]
or r8w, r12w
mov rdx, r13
adc r8b, 0xf2
mov qword [rdi + r12], rcx
sal r8b, cl
sub rdx, rbx
bswap r8
movsx r8, dx
mov r8, qword [rdi]
jmp 0x1404a7cab
call fcn.1404ca8a4
test eax, eax
jmp 0x1404a7cb7
jne 0x1404a87ac
mov rcx, qword [rdi]
cmp ebx, eax
jmp 0x1404a7cc8
or rax, 0xffffffffffffffff
jmp 0x1404a7cd1
inc rax
clc
test dl, dh
stc
cmp byte [rcx + rax], 0
jmp 0x1404a7ce1
jne 0x1404a7cd1
inc rbx
inc rsi
test ebp, ecx
add rbx, rax
add rdi, 8
cmp rsi, 0xc
jmp 0x1404a7cff
jb 0x1404a7c74
xor esi, esi
bt rdi, r8
btc di, 0x39
inc edi
lea rdi, [rbp + 0x130]
test r8d, r8d
cmp r15d, 1
jmp 0x1404a7d25
jne 0x1404a7d6b
lea rcx, [r14 + rbx]
xadd r8d, edx
jmp 0x1404a7d3d
mov rdx, r13
sub r8b, r13b
mov qword [rdi + r12], rcx
bsr r8d, r10d
sub rdx, rbx
cmovb r8, rax
movsx r8d, di
mov r8, qword [rdi]
call fcn.1404ca8a4
test eax, eax
jmp 0x1404a7d65
jne 0x1404a87ac
mov rcx, qword [rdi]
jmp 0x1404a7d7d
or rax, 0xffffffffffffffff
jmp 0x1404a7d86
inc rax
stc
cmp ebp, esp
cmp byte [rcx + rax], 0
jmp 0x1404a7d95
jne 0x1404a7d86
inc rbx
jmp 0x1404a7da3
inc rsi
clc
add rbx, rax
test bpl, 0xc1
add rdi, 8
test r14b, 0xc3
test r14d, r9d
cmp rsi, 2
jmp 0x1404a7dc2
jb 0x1404a7d1c
cmp r15d, 1
jmp 0x1404a7dd1
jne 0x1404a7e28
lea rcx, [r14 + rbx]
movzx r8w, r10b
btr r8, r12
mov rdx, r13
rcl r8b, 0xf5
btc r8d, edx
mov qword [r14 + 0x140], rcx
bsf r8d, r11d
sar r8b, 0x93
shl r8b, 0x8a
sub rdx, rbx
mov r8, qword [rbp + 0x140]
call fcn.1404ca8a4
xor edi, edi
test dh, 0x8d
test eax, eax
jmp 0x1404a7e1d
jne 0x1404a87ae
jmp 0x1404a7e2a
xor edi, edi
mov rcx, qword [rbp + 0x140]
or rsi, 0xffffffffffffffff
mov rax, rsi
jmp 0x1404a7e3d
inc rax
cmp byte [rcx + rax], dil
jmp 0x1404a7e49
jne 0x1404a7e3d
inc rbx
cmp cl, r10b
lea rbx, [rbx + rax]
cmp r15d, 1
jmp 0x1404a7e62
jne 0x1404a7ea0
lea rcx, [r14 + rbx]
xor r8b, 0x41
mov rdx, r13
xor r8, r11
mov qword [r14 + 0x148], rcx
movsx r8d, dx
sub rdx, rbx
movsxd r8, r9d
mov r8, qword [rbp + 0x148]
jmp 0x1404a7e93
call fcn.1404ca8a4
test eax, eax
jne 0x1404a87ae
mov rcx, qword [rbp + 0x148]
setg al
mov rax, rsi
jmp 0x1404a7eb2
inc rax
cmp byte [rcx + rax], dil
jmp 0x1404a7ebe
jne 0x1404a7eb2
inc rbx
test r15, r9
cmp r13b, r10b
clc
lea rbx, [rbx + rax]
cmp r14b, spl
stc
cmc
cmp r15d, 1
jmp 0x1404a7ee0
jne 0x1404a7f34
lea rcx, [r14 + rbx]
sal dx, cl
mov rdx, r13
sar r8w, cl
shrd r8w, r14w, 4
shld r8, r11, 0xf5
mov qword [r14 + 0x150], rcx
shr r8b, cl
test al, bpl
sub rdx, rbx
bswap r8
movsx r8, r15w
mov r8, qword [rbp + 0x150]
jmp 0x1404a7f22
call fcn.1404ca8a4
test eax, eax
jmp 0x1404a7f2e
jne 0x1404a87ae
mov rcx, qword [rbp + 0x150]
movsx eax, r13w
mov rax, rsi
jmp 0x1404a7f47
inc rax
cmc
cmp byte [rcx + rax], dil
jne 0x1404a7f47
inc rbx
clc
test r9w, 0x7ea2
stc
lea rbx, [rbx + rax]
cmp r15d, 1
jne 0x1404a7f84
mov eax, dword [rbp + 0x158]
mov dword [r14 + 0x158], eax
neg esi
mov dword [r14 + 0x15c], edi
mov rsi, rdi
xor dil, r9b
sub edx, edx
cmovne di, r8w
lea rdi, [rbp + 0x160]
jmp 0x1404a7f9d
jmp 0x1404a7fac
inc rbx
cmp sil, r8b
test r15b, r8b
stc
test bl, 1
jmp 0x1404a7fb4
jne 0x1404a7fa2
cmp r15d, 1
jmp 0x1404a7fc3
jne 0x1404a8010
mov rax, rbx
test sil, spl
movsx rcx, r14w
mov rdx, r13
shr rax, 1
btc r8d, r14d
sub rdx, rbx
xor r8w, 0x5e81
shr rdx, 1
lea rcx, [r14 + rax*2]
cmovge r8w, di
mov r8b, spl
mov qword [rdi + r12], rcx
mov r8, qword [rdi]
jmp 0x1404a8001
call fcn.1404cb758
xor edx, edx
test eax, eax
jne 0x1404a87ac
mov rcx, qword [rdi]
jmp 0x1404a8018
or rax, 0xffffffffffffffff
jmp 0x1404a8021
inc rax
test r8d, 0x475a3cf1
jmp 0x1404a8030
cmp word [rcx + rax*2], dx
jmp 0x1404a8039
jne 0x1404a8021
lea rbx, [rbx + rax*2]
jmp 0x1404a8048
inc rsi
stc
add rbx, 2
test dl, r9b
add rdi, 8
clc
test r15, 0x59fe397b
cmp rsi, 7
jmp 0x1404a8068
jb 0x1404a7fac
mov rsi, rdx
mov dil, 5
bswap edi
movsxd rdi, r10d
lea rdi, [rbp + 0x198]
jmp 0x1404a8085
jmp 0x1404a808d
inc rbx
test bl, 1
jmp 0x1404a8095
jne 0x1404a808a
cmp r15d, 1
jmp 0x1404a80a4
jne 0x1404a8103
mov rax, rbx
rol cx, 0x69
dec edx
not r8w
mov rdx, r13
bts r8w, r10w
xchg cx, cx
add r8b, dil
shr rax, 1
sal ch, cl
sub rdx, rbx
shr rdx, 1
lea rcx, [r14 + rax*2]
mov r8b, spl
movsx r8, r8w
mov qword [rdi + r12], rcx
movzx r8d, r15w
cmovnp r8d, eax
mov r8, qword [rdi]
jmp 0x1404a80ef
call fcn.1404cb758
xor edx, edx
test eax, eax
jmp 0x1404a80fd
jne 0x1404a87ac
mov rcx, qword [rdi]
stc
test cl, r11b
cmp r11b, 0xd0
or rax, 0xffffffffffffffff
jmp 0x1404a8117
inc rax
cmp word [rcx + rax*2], dx
jmp 0x1404a8123
jne 0x1404a8117
lea rbx, [rbx + rax*2]
jmp 0x1404a8132
inc rsi
cmp dil, dil
add rbx, 2
cmp esi, esi
cmc
add rdi, 8
stc
test bl, bl
cmp rsi, 7
jmp 0x1404a814f
jb 0x1404a808d
mov rsi, rdx
movzx rdi, cx
cmovl edi, r15d
mov di, si
lea rdi, [rbp + 0x1d0]
jmp 0x1404a816f
jmp 0x1404a817a
inc rbx
cmp r8, rsp
test bl, 1
jmp 0x1404a8182
jne 0x1404a8174
cmp r15d, 1
jmp 0x1404a8191
jne 0x1404a81e7
mov rax, rbx
or ch, 0x47
mov rdx, r13
shrd ecx, r9d, 0x58
adc r8w, di
shr rax, 1
bsr ecx, esi
bswap rcx
sar r8, cl
sub rdx, rbx
btr r8w, 0x88
shr rdx, 1
lea rcx, [r14 + rax*2]
mov qword [rdi + r12], rcx
mov r8, qword [rdi]
call fcn.1404cb758
xor edx, edx
test r10w, 0x4110
stc
test eax, eax
jmp 0x1404a81e1
jne 0x1404a87ac
mov rcx, qword [rdi]
or rax, 0xffffffffffffffff
jmp 0x1404a81f3
inc rax
cmp word [rcx + rax*2], dx
jmp 0x1404a81ff
jne 0x1404a81f3
lea rbx, [rbx + rax*2]
inc rsi
cmp dil, dl
add rbx, 2
cmc
add rdi, 8
cmp rsi, 0xc
jmp 0x1404a8221
jb 0x1404a817a
mov rsi, rdx
jmp 0x1404a8235
lea rdi, [rbp + 0x230]
jmp 0x1404a8241
jmp 0x1404a8250
inc rbx
cmp r13b, 0x93
test rax, r12
test bl, 1
jmp 0x1404a8258
jne 0x1404a8246
cmp r15d, 1
jmp 0x1404a8267
jne 0x1404a82d3
mov rax, rbx
or cx, r10w
xchg rdx, r8
mov rdx, r13
not r8b
adc cx, dx
shr rax, 1
rol r8w, 0x2d
sub rdx, rbx
btr rcx, r12
shr cx, cl
shr rdx, 1
xchg r8, r8
lea rcx, [r14 + rax*2]
movsx r8d, bp
mov r8w, 0x4ae2
mov qword [rdi + r12], rcx
movzx r8, r13w
movsxd r8, r11d
not r8w
mov r8, qword [rdi]
jmp 0x1404a82bc
call fcn.1404cb758
sub edx, edx
cmp bp, ax
test eax, eax
jmp 0x1404a82cd
jne 0x1404a87ac
mov rcx, qword [rdi]
cmc
jmp 0x1404a82dc
or rax, 0xffffffffffffffff
jmp 0x1404a82e5
inc rax
cmc
cmp word [rcx + rax*2], dx
jmp 0x1404a82f2
jne 0x1404a82e5
lea rbx, [rbx + rax*2]
jmp 0x1404a8301
inc rsi
cmp r9w, 0x1d0d
add rbx, 2
add rdi, 8
cmp r9w, 0x221c
cmp rsi, 0xc
jmp 0x1404a8321
jb 0x1404a8250
mov rsi, rdx
movsx di, r11b
lea rdi, [rbp + 0x290]
jmp 0x1404a833b
jmp 0x1404a834a
inc rbx
test r12b, r10b
stc
cmp r10b, sil
test bl, 1
jmp 0x1404a8352
jne 0x1404a8340
cmp r15d, 1
jne 0x1404a83c2
mov rax, rbx
mov rdx, r13
shr rax, 1
sar r8b, 0xb8
sub rdx, rbx
shrd ecx, ecx, 0xa2
btc r8d, 0x64
sub r8w, 0x33d4
shr rdx, 1
bswap rcx
mov r8, r10
setno ch
lea rcx, [r14 + rax*2]
bswap r8
movzx r8w, spl
mov qword [rdi + r12], rcx
jmp 0x1404a83a5
mov r8, qword [rdi]
call fcn.1404cb758
sub edx, edx
jmp 0x1404a83b5
test eax, eax
jmp 0x1404a83bc
jne 0x1404a87ac
mov rcx, qword [rdi]
cmc
cmp r9b, bpl
or rax, 0xffffffffffffffff
jmp 0x1404a83d2
inc rax
test ebp, r10d
cmp word [rcx + rax*2], dx
jmp 0x1404a83e1
jne 0x1404a83d2
lea rbx, [rbx + rax*2]
jmp 0x1404a83f0
inc rsi
add rbx, 2
add rdi, 8
clc
cmp rsi, 2
jb 0x1404a834a
jmp 0x1404a8413
inc rbx
jmp 0x1404a8413
test bl, 1
jmp 0x1404a841b
jne 0x1404a840b
cmp r15d, 1
jmp 0x1404a842a
jne 0x1404a849b
mov rax, rbx
setns r8b
bsr r8w, r13w
movsx cx, cl
mov rdx, r13
sal ecx, 0x7f
btc r8w, 0x36
bswap ecx
shr rax, 1
sub r8w, r9w
rcl cl, 0xd4
sub rdx, rbx
bswap r8d
shr rdx, 1
movsx ecx, r10w
lea rcx, [r14 + rax*2]
movsxd r8, r9d
mov qword [r14 + 0x2a0], rcx
movsxd r8, esp
mov r8, qword [rbp + 0x2a0]
call fcn.1404cb758
xor edi, edi
cmp r10d, esp
test dl, ah
test eax, eax
jmp 0x1404a8490
jne 0x1404a87ae
jmp 0x1404a84a5
sub edi, edi
bts rax, rbx
bsr ecx, r11d
mov rcx, qword [rbp + 0x2a0]
cwde
movsx rax, r9w
jmp 0x1404a84b6
or rsi, 0xffffffffffffffff
mov rax, 0x10e943fb
mov rax, rsi
jmp 0x1404a84c9
inc rax
test esp, r10d
jmp 0x1404a84db
cmp word [rcx + rax*2], di
jne 0x1404a84c9
lea rbx, [rbx + rax*2]
add rbx, 2
jmp 0x1404a84f2
jmp 0x1404a84fc
cmp byte [rsp + 0x48], dil
jmp 0x1404a873c
je 0x1404a874e
mov rcx, qword [rsp + 0x30]
and dword [rcx + 0x3a8], 0xfffffffd
lea r11, [rsp + 0x50]
movsx ebp, si
sete sil
mov rax, r14
mov rbx, qword [r11 + 0x30]
mov r14b, 4
movzx r12, r12w
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
bswap r12w
movsx r14, ax
mov rsp, r11
bswap r12d
setg r15b
pop r15
movzx edi, r8w
movzx r14, r11w
not r12b
pop r14
pop r13
movsx edi, bx
pop r12
pop rdi
jmp 0x1404a879e
ret
mov r14, rdi
jmp 0x1404a87a7
jmp 0x1404a8732
xor edi, edi
sub r9d, r9d
mov qword [rsp + 0x20], rdi
clc
sub r8d, r8d
cmp r8d, r14d
sub edx, edx
test r8b, sil
clc
sub ecx, ecx
jmp 0x1404a87ca
call fcn.1404b7a4f
int3