Function at 0x14042cd97
Capabilities:
Authenticate hmac

Disassembly:
push r15
adc r15b, 0xf7
cbw
push r14
bt r15, rdi
push r12
push rsi
sbb r14d, 0x4d9c15df
push rdi
movzx r15w, r14b
rcr r14, cl
push rbp
btr eax, 0x70
push rbx
sub bl, r15b
neg r15w
btr r15w, r11w
sub rsp, 0x30
shrd eax, r9d, 0xd8
rol bh, 0xf3
mov rbx, r9
sal r15b, cl
or r15b, 0x8f
mov r14, r8
mov r15, rdx
sal ax, 0x79
movsxd rsi, ebp
test rdx, rdx
movzx si, dl
movsx si, cl
lea rax, [rsp + 0x2c]
cmove r15, rax
movsx si, r9b
btr si, 0x8b
test r8, rbx
mov rsi, rcx
cmc
test r8, r8
jmp 0x14042ce1a
cmove r14, rax
jmp 0x14042ce23
test r9, r9
jmp 0x14042ce2b
cmove rbx, rax
mov rcx, qword [rcx + 0xd0]
and ax, r9w
adc al, 0x73
mov rax, qword [rsi + 0xd8]
jmp 0x14042ce48
mov qword [rsi + 0xc0], rcx
jmp 0x14042ce56
mov qword [rsi + 0xc8], rax
cmp rcx, rax
jmp 0x14042ce65
jae 0x14042cea4
lea rdx, [rcx + 1]
rcl ebp, 0x78
shrd ebp, r14d, 0xc
sal bp, cl
mov qword [rsi + 0xc0], rdx
xor ebp, 0x5bad6f83
sal bp, cl
dec bpl
movzx ebp, byte [rcx]
cmc
cmp rdx, rax
jmp 0x14042ce99
jae 0x14042cf4f
jmp 0x14042d00a
cmp dword [rsi + 0x30], 0
jmp 0x14042cead
je 0x14042cf31
mov r8d, dword [rsi + 0x34]
lea rdi, [rsi + 0x38]
cdq
xchg rcx, rdx
cmovge cx, cx
mov rcx, qword [rsi + 0x28]
movzx edx, sp
xchg dx, dx
mov edx, edx
mov rdx, rdi
jmp 0x14042ced7
call qword [rsi + 0x10]
mov edx, dword [rsi + 0xc0]
sar ch, 0x6b
movzx rcx, r15w
mov rcx, qword [rsi + 0xd0]
test r9b, bpl
cmp bpl, sil
sub edx, ecx
add dword [rsi + 0xb8], edx
cmp ax, r12w
test r14d, 0x170a5d6e
test eax, eax
jmp 0x14042cf0e
je 0x14042cfba
cdqe
adc bpl, dl
mov bpl, cl
add rax, rdi
mov ebp, 0x76e532d2
movzx ebp, byte [rdi]
jmp 0x14042cf2c
jmp 0x14042cfe2
sub ebp, ebp
bswap dx
movsx rdx, r15w
movzx rdx, r14w
mov rdx, rcx
cmp rdx, rax
jmp 0x14042cf49
jb 0x14042d00a
cmp dword [rsi + 0x30], 0
jmp 0x14042cf58
je 0x14042d0f5
mov r8d, dword [rsi + 0x34]
lea rdi, [rsi + 0x38]
mov rcx, qword [rsi + 0x28]
cqo
mov rdx, rdi
jmp 0x14042cf74
call qword [rsi + 0x10]
mov edx, dword [rsi + 0xc0]
shr cx, cl
bsf cx, r8w
sal cl, 0x23
mov rcx, qword [rsi + 0xd0]
test edx, ebx
cmp esi, r15d
sub edx, ecx
cmc
cmp r12b, dl
add dword [rsi + 0xb8], edx
test eax, eax
je 0x14042d035
movsxd rdx, eax
nop
add rdx, rdi
cdqe
movzx eax, byte [rdi]
jmp 0x14042d051
mov dword [rsi + 0x30], 0
add dx, cx
jmp 0x14042cfcc
lea rax, [rsi + 0x39]
cwd
add rdx, rsp
mov byte [rsi + 0x38], 0
xor ebp, ebp
shl rdx, cl
btc edx, r11d
mov qword [rsi + 0xc8], rax
xor rdx, rdx
lea rdx, [rsi + 0x39]
mov qword [rsi + 0xc0], rdx
cmp dx, r12w
cmc
cmp rdx, rax
jmp 0x14042d004
jae 0x14042cf4f
lea rax, [rdx + 1]
jmp 0x14042d017
mov qword [rsi + 0xc0], rax
movzx eax, byte [rdx]
cmp bpl, 0x50
jmp 0x14042d02a
je 0x14042d07f
jmp 0x14042d0f5
mov dword [rsi + 0x30], 0
inc dl
xchg edx, edx
lea rdx, [rsi + 0x39]
clc
test ch, 0xa3
cmp r14b, r15b
mov byte [rsi + 0x38], 0
sub eax, eax
mov qword [rsi + 0xc8], rdx
or dx, di
shr dx, cl
bt rdx, r12
lea rdx, [rsi + 0x39]
cmp bpl, r13b
mov qword [rsi + 0xc0], rdx
cmp bpl, 0x50
jmp 0x14042d079
jne 0x14042d0f5
lea edx, [rax - 0x37]
cmc
cmp dl, 0xfd
jmp 0x14042d08b
jbe 0x14042d0f5
sub ecx, ecx
cmp al, 0x36
mov cl, bl
cbw
movsx ax, r10b
sete cl
cwde
movsx ax, ch
mov al, 0x3f
lea eax, [rcx + rcx]
jmp 0x14042d0b0
inc eax
stc
mov dword [rbx], eax
shl rax, 0x3b
stc
mov rax, qword [rsi + 0xc0]
cmp esi, ecx
test eax, r8d
cmp rax, qword [rsi + 0xc8]
jmp 0x14042d0d2
jae 0x14042d124
lea rcx, [rax + 1]
jmp 0x14042d0e1
mov qword [rsi + 0xc0], rcx
jmp 0x14042d0ed
movzx eax, byte [rax]
jmp 0x14042d1f7
mov qword [rsi + 0xc0], rcx
bts ax, r10w
mov rax, qword [rsi + 0xd8]
cmp r11w, 0x29fe
test r8d, 0x2d036e2
mov qword [rsi + 0xc8], rax
clc
sub eax, eax
jmp 0x14042d783
cmp dword [rsi + 0x30], 0
jmp 0x14042d12d
je 0x14042d18c
mov r8d, dword [rsi + 0x34]
mov dl, 0xef
bswap dx
lea rdi, [rsi + 0x38]
mov rcx, qword [rsi + 0x28]
mov rdx, rdi
jmp 0x14042d14c
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
cmp r14b, al
clc
test r15b, 0xf3
sub ecx, dword [rsi + 0xd0]
add dword [rsi + 0xb8], ecx
cmp spl, 0x7d
clc
test eax, eax
jmp 0x14042d175
je 0x14042d198
movsxd rcx, eax
add rcx, rdi
movsxd rax, ecx
movzx eax, byte [rdi]
jmp 0x14042d1cf
xor eax, eax
jmp 0x14042d193
jmp 0x14042d1f7
mov dword [rsi + 0x30], 0
shrd rcx, r12, 0x1b
sub rcx, 0x69bb554a
btr dx, r15w
lea rcx, [rsi + 0x39]
ror dx, 0x82
not dl
mov byte [rsi + 0x38], 0
movzx edx, bx
mov dl, r10b
sal rdx, 0x5c
xor eax, eax
movsx dx, r8b
mov qword [rsi + 0xc8], rcx
movsx rcx, r15w
lea rcx, [rsi + 0x39]
cwd
xchg rdx, rdx
mov dl, dh
mov qword [rsi + 0xc0], rcx
xchg cl, ch
movsx rcx, r13w
movzx dx, r11b
mov byte [rsp + 0x2b], al
not dl
lea rdx, [rsp + 0x2b]
mov ecx, 0x221d78c8
mov rcx, rsi
jmp 0x14042d20f
call fcn.14042d7b9
lea rbx, [rsi + 0x38]
lea r12, [rsi + 0x39]
neg ebp
sub edi, edi
jmp 0x14042d22b
movzx ebp, byte [rsp + 0x2b]
jmp 0x14042d25e
lea rcx, [rax + 1]
test cl, 0x7b
ror bpl, 0x35
mov qword [rsi + 0xc0], rcx
or ebp, 0x5254182b
shl bpl, cl
movsx bp, r13b
movzx ebp, byte [rax]
jmp 0x14042d25e
cmp qword [rsi + 0x10], 0
jmp 0x14042d268
je 0x14042d28c
mov rcx, qword [rsi + 0x28]
jmp 0x14042d277
call qword [rsi + 0x20]
test eax, eax
je 0x14042d2be
cmp dword [rsi + 0x30], 0
je 0x14042d3bd
mov rax, qword [rsi + 0xc0]
sar cx, cl
mov rcx, qword [rsi + 0xc8]
cmp rax, rcx
jmp 0x14042d2a5
jae 0x14042d3bd
lea edx, [rbp - 0x3a]
cmc
clc
cmp dl, 0xf6
jae 0x14042d2ee
jmp 0x14042d3bd
lea eax, [rbp - 0x3a]
test r13w, 0x5155
cmc
cmp al, 0xf6
jmp 0x14042d2cf
jb 0x14042d3bd
mov rax, qword [rsi + 0xc0]
sar rcx, 0x58
mov rcx, qword [rsi + 0xc8]
cqo
jmp 0x14042d2ee
lea edx, [rdi + rdi*4]
movzx ebp, bpl
movzx rdi, r15w
lea edi, [rbp + rdx*2 - 0x30]
cmp rax, rcx
jb 0x14042d235
xor ebp, ebp
cmp dword [rsi + 0x30], 0
jmp 0x14042d311
je 0x14042d25e
mov r8d, dword [rsi + 0x34]
movsx rcx, bx
mov rcx, qword [rsi + 0x28]
cmovno dx, r8w
mov dh, bl
mov dh, 0x77
mov rdx, rbx
jmp 0x14042d335
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
test bpl, r12b
cmc
sub ecx, dword [rsi + 0xd0]
add dword [rsi + 0xb8], ecx
test r9d, 0x17266d2c
cmp ah, 0xeb
test eax, eax
je 0x14042d377
cdqe
cmp dl, r15b
add rax, rbx
movzx ebp, bx
movzx rbp, r11w
movzx ebp, byte [rbx]
jmp 0x14042d3a0
mov dword [rsi + 0x30], 0
rol rax, 2
sal al, 0x5c
add rax, 0x583f2e4e
mov byte [rsi + 0x38], 0
inc ax
sub ebp, ebp
lahf
cbw
mov rax, r12
jmp 0x14042d3a0
mov qword [rsi + 0xc8], rax
jmp 0x14042d3ac
mov qword [rsi + 0xc0], r12
jmp 0x14042d3b8
jmp 0x14042d25e
mov byte [rsp + 0x2b], bpl
mov dword [r15], edi
movzx rcx, di
cmovno rcx, r10
lea rdx, [rsp + 0x2b]
movsx rcx, r13w
jmp 0x14042d3de
mov rcx, rsi
jmp 0x14042d3e6
call fcn.14042d7b9
sub edi, edi
mov bpl, 0x7f
movsx ebp, ax
movzx ebp, byte [rsp + 0x2b]
jmp 0x14042d413
lea rcx, [rax + 1]
mov qword [rsi + 0xc0], rcx
and bpl, r9b
movzx ebp, byte [rax]
cmp r9b, 0xa6
cmc
cmp qword [rsi + 0x10], 0
jmp 0x14042d41d
je 0x14042d44b
mov rcx, qword [rsi + 0x28]
jmp 0x14042d42c
call qword [rsi + 0x20]
test eax, eax
jmp 0x14042d436
je 0x14042d482
cmp dword [rsi + 0x30], 0
jmp 0x14042d445
je 0x14042d578
mov rax, qword [rsi + 0xc0]
mov rcx, qword [rsi + 0xc8]
test r9b, 0xdf
cmp rax, rcx
jae 0x14042d578
lea edx, [rbp - 0x3a]
cmp edi, ebx
stc
test cl, r8b
cmp dl, 0xf6
jmp 0x14042d477
jae 0x14042d4af
jmp 0x14042d578
lea eax, [rbp - 0x3a]
cmp al, 0xf6
jmp 0x14042d48c
jb 0x14042d578
mov rax, qword [rsi + 0xc0]
jmp 0x14042d4a4
mov rcx, qword [rsi + 0xc8]
movsx rdx, r10w
lea edx, [rdi + rdi*4]
bts edi, r8d
bsf edi, r9d
add dil, 0x7c
movzx ebp, bpl
lea edi, [rbp + rdx*2 - 0x30]
cmp r11w, r14w
stc
cmp rax, rcx
jmp 0x14042d4d3
jb 0x14042d3fd
sub ebp, ebp
cmp dword [rsi + 0x30], 0
jmp 0x14042d4e4
je 0x14042d413
mov r8d, dword [rsi + 0x34]
cqo
mov rcx, qword [rsi + 0x28]
mov rdx, rbx
jmp 0x14042d4fc
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
cmp r15w, 0x31cb
jmp 0x14042d510
sub ecx, dword [rsi + 0xd0]
add dword [rsi + 0xb8], ecx
test eax, eax
jmp 0x14042d523
je 0x14042d543
cdqe
bt ebp, 3
stc
rol bpl, cl
add rax, rbx
movzx ebp, byte [rbx]
jmp 0x14042d53e
jmp 0x14042d560
mov dword [rsi + 0x30], 0
mov byte [rsi + 0x38], 0
shr al, cl
shrd eax, esp, 0x61
sub ebp, ebp
movzx rax, cx
movsx eax, dx
mov rax, r12
mov qword [rsi + 0xc8], rax
mov qword [rsi + 0xc0], r12
jmp 0x14042d573
jmp 0x14042d413
mov byte [rsp + 0x2b], bpl
movzx dx, r8b
seta dh
mov dword [r14], edi
xchg dh, cl
lea rdx, [rsp + 0x2b]
movsx cx, r10b
mov rcx, rsi
jmp 0x14042d59c
call fcn.14042d7b9
sub edi, edi
not bpl
jmp 0x14042d5ab
movzx ebp, byte [rsp + 0x2b]
jmp 0x14042d5b5
jmp 0x14042d5c8
lea rcx, [rax + 1]
mov qword [rsi + 0xc0], rcx
movzx ebp, byte [rax]
cmp qword [rsi + 0x10], 0
jmp 0x14042d5d2
je 0x14042d600
mov rcx, qword [rsi + 0x28]
jmp 0x14042d5e1
call qword [rsi + 0x20]
test eax, eax
jmp 0x14042d5eb
je 0x14042d63a
cmp dword [rsi + 0x30], 0
jmp 0x14042d5fa
je 0x14042d744
mov rax, qword [rsi + 0xc0]
mov rcx, qword [rsi + 0xc8]
test edx, 0x16c6273d
cmp rax, rcx
jmp 0x14042d61c
jae 0x14042d744
lea edx, [rbp - 0x3a]
test al, 0xdf
cmp dl, 0xf6
jmp 0x14042d62f
jae 0x14042d666
jmp 0x14042d744
lea eax, [rbp - 0x3a]
cmp r8d, r11d
clc
cmp al, 0xf6
jmp 0x14042d648
jb 0x14042d744
mov rax, qword [rsi + 0xc0]
test r10b, dl
sets ch
mov rcx, qword [rsi + 0xc8]
cqo
sar dl, cl
lea edx, [rdi + rdi*4]
movzx ebp, bpl
btc di, 0x5f
shrd edi, ecx, 0x37
ror di, cl
lea edi, [rbp + rdx*2 - 0x30]
clc
cmp rax, rcx
jmp 0x14042d686
jb 0x14042d5ba
sub ebp, ebp
stc
test r13w, r12w
cmp dword [rsi + 0x30], 0
jmp 0x14042d69c
je 0x14042d5c8
mov r8d, dword [rsi + 0x34]
bswap cx
mov rcx, qword [rsi + 0x28]
mov rdx, rbx
jmp 0x14042d6b5
call qword [rsi + 0x10]
mov ecx, dword [rsi + 0xc0]
test eax, 0x3f5d18fd
clc
cmc
sub ecx, dword [rsi + 0xd0]
cmc
test r14b, 0xa8
add dword [rsi + 0xb8], ecx
jmp 0x14042d6df
test eax, eax
je 0x14042d710
cdqe
and ebp, 0x7543124d
sbb ebp, r15d
mov bp, 0x68b6
add rax, rbx
not bpl
movsx ebp, di
setns bpl
movzx ebp, byte [rbx]
jmp 0x14042d70b
jmp 0x14042d72c
mov dword [rsi + 0x30], 0
mov byte [rsi + 0x38], 0
sub ebp, ebp
mov al, r15b
movsx rax, r14w
mov rax, r12
jmp 0x14042d72c
mov qword [rsi + 0xc8], rax
mov qword [rsi + 0xc0], r12
jmp 0x14042d73f
jmp 0x14042d5c8
xor eax, eax
cmc
cmp edi, 0xffff
jmp 0x14042d752
jg 0x14042d783
xor eax, eax
xor r14b, bpl
neg r15b
cmp edi, 0x100
mov r15b, 0xff
movsxd r15, r15d
setge al
neg rdi
lea eax, [rax*8 + 8]
movzx rbp, dx
shld si, r10w, 0x5b
add rsp, 0x30
pop rbx
movzx r15d, di
pop rbp
not r15b
movsx r12d, r10w
pop rdi
movsxd r14, r13d
pop rsi
movsx r12w, dil
pop r12
movzx r14d, r15w
pop r14
movsx r15d, r13w
mov r15b, dl
bswap r15w
pop r15
jmp 0x14042d7b8
ret