Function at 0x1404abe1c
Capabilities:
Authenticate hmac

Disassembly:
push rbp
push rsi
bt r10, 0x56
push rdi
push r12
shld r12w, cx, 0xb7
rcl r12b, 0x2b
btr bp, r12w
push r13
push r14
sal r10b, 0x96
movsx bp, r15b
add r12d, 0x63191444
push r15
shr r10b, 0x1e
sub rsp, 0x70
shrd r15w, r14w, 0xce
adc r10d, esi
btc r15w, 0x74
lea rbp, [rsp + 0x40]
test eax, 0x2b14275e
btr r12, 0xb5
mov qword [rbp + 0x78], rbx
ror rax, 0x31
mov rax, qword [0x1400b7288]
movzx r14w, r12b
movsx r14d, dx
movsxd r13, esp
xor rax, rbp
mov qword [rbp + 0x20], rax
add r10b, 0xe9
sal r12b, cl
mov r15, qword [rbp + 0x90]
xor r12b, 0x5c
jmp 0x1404abeab
xor r11d, r11d
neg r10b
mov r13, qword [rbp + 0x98]
add r12b, 0xd1
xor r12d, 0x33ac5a3c
test r11b, 0x19
mov r12, r9
mov qword [rbp], r8
rol r14b, cl
mov r10, r8
sub r14b, 0xd9
mov qword [rbp + 8], rcx
movsxd r14, r11d
btr r14w, r12w
mov r14d, edx
cmp r15b, r13b
test edx, edx
jmp 0x1404abef1
je 0x1404abf22
cmp edx, 1
je 0x1404abf11
mov rdi, qword [r13 + 0x2b0]
jmp 0x1404abf0c
jmp 0x1404abf33
mov rdi, qword [r13 + 0x2a8]
jmp 0x1404abf1d
jmp 0x1404abf33
mov rdi, qword [r13 + 0x2a0]
and dx, 0x7a13
movzx dx, bpl
mov edx, 1
cmp dword [r13 + 0x158], edx
je 0x1404ac2eb
movzx eax, word [r8 + 0x14]
xor ch, 0xf0
mov ecx, 0x76c
btc r9d, r8d
shr r9b, cl
add ax, cx
test edx, 0x4962857
sbb cx, 0xb9d
mov word [rbp + 0x1e], r11w
mov rcx, qword [r13 + 0x2b8]
adc r9w, 0x208d
mov r9, rdi
test r15, 0x6d575917
jmp 0x1404abf88
mov word [rbp + 0x10], ax
movzx eax, word [r8 + 0x10]
clc
test r8b, r10b
add ax, dx
test bx, 0x4e52
cmc
cmp spl, 0xa6
sub edx, edx
mov word [rbp + 0x12], ax
bts eax, edi
btr eax, 0xb5
movzx eax, word [r8 + 0xc]
mov word [rbp + 0x16], ax
cmc
movzx eax, word [r8 + 8]
clc
mov word [rbp + 0x18], ax
shr al, 0xb
or ax, r14w
ror ax, 0xee
movzx eax, word [r8 + 4]
test r12d, r9d
stc
mov word [rbp + 0x1a], ax
cbw
movzx eax, ax
not rax
movzx eax, word [r8]
xadd r8, r8
lea r8, [rbp + 0x10]
cmp r12b, 0x5d
mov word [rbp + 0x1c], ax
cmc
cmp r14d, 2
jmp 0x1404ac001
jne 0x1404ac020
mov dword [rsp + 0x28], r11d
jmp 0x1404ac011
mov qword [rsp + 0x20], r11
call fcn.1404cdc4d
jmp 0x1404ac043
mov qword [rsp + 0x30], r11
jmp 0x1404ac02a
mov dword [rsp + 0x28], r11d
jmp 0x1404ac034
mov qword [rsp + 0x20], r11
jmp 0x1404ac03e
call fcn.1404cd9f0
xor r11d, r11d
bt si, 0xf0
xor sil, 0x7c
mov esi, eax
test eax, eax
je 0x1404ac2d5
cdqe
cmc
btr cx, r14w
lea rax, [rax + rax]
xchg cl, ch
rcr ecx, 0x61
and cx, ax
lea rcx, [rax + 0x10]
stc
cmp rax, rcx
sbb rdx, rdx
cmp eax, 0x78f0d6d
and rdx, rcx
jmp 0x1404ac085
je 0x1404ac144
cmp rdx, 0x400
jmp 0x1404ac097
ja 0x1404ac0fc
lea rax, [rdx + 0xf]
cmp rax, rdx
jmp 0x1404ac0a9
ja 0x1404ac0bf
movabs rax, 0xffffffffffffff0
test r8w, 0x720
and rax, 0xfffffffffffffff0
jmp 0x1404ac0c8
call fcn.14044b6f7
sub rsp, rax
cmovnp ebx, edi
xor r11d, r11d
bsf ebx, edi
lea rbx, [rsp + 0x40]
test rbx, rbx
jmp 0x1404ac0e6
je 0x1404ac2d5
mov dword [rbx], 0xcccc
jmp 0x1404ac0f7
jmp 0x1404ac136
mov rcx, rdx
jmp 0x1404ac104
call fcn.1404cc3c2
sub r11d, r11d
bts bx, r15w
cmp r13w, r14w
mov rbx, rax
test r8b, r13b
stc
test rax, rax
jmp 0x1404ac124
je 0x1404ac147
mov dword [rax], 0xdddd
cmc
cmp dx, 0x126f
add rbx, 0x10
jmp 0x1404ac13f
jmp 0x1404ac147
mov rbx, r11
test rbx, rbx
je 0x1404ac2d5
mov rcx, qword [r13 + 0x2b8]
cmc
lea r8, [rbp + 0x10]
rcr r9b, cl
xor edx, edx
mov r9, rdi
cmp r14d, 2
jmp 0x1404ac16d
jne 0x1404ac190
mov dword [rsp + 0x28], esi
jmp 0x1404ac17c
mov qword [rsp + 0x20], rbx
jmp 0x1404ac186
call fcn.1404cdc4d
jmp 0x1404ac1ad
mov qword [rsp + 0x30], r11
jmp 0x1404ac19a
mov dword [rsp + 0x28], esi
jmp 0x1404ac1a3
mov qword [rsp + 0x20], rbx
call fcn.1404cd9f0
mov edx, eax
setne r8b
jmp 0x1404ac1bb
mov r8, rbx
jmp 0x1404ac1c3
dec edx
cmc
cmp spl, 0xc2
test edx, edx
jmp 0x1404ac1d1
jle 0x1404ac249
mov rax, qword [r15]
stc
jmp 0x1404ac1e0
test rax, rax
jmp 0x1404ac1e8
je 0x1404ac249
movzx eax, word [r8]
cmovp ecx, edi
dec edx
shl cl, cl
xchg ch, ch
mov rcx, qword [r12]
cmp rbx, 0x14812d22
jmp 0x1404ac20c
add r8, 2
cmp r14b, 0x89
jmp 0x1404ac21d
mov word [rcx], ax
btr eax, r8d
shr al, 0x8d
cmp r12d, edx
add qword [r12], 2
dec qword [r15]
movzx eax, r13w
mov rax, qword [r15]
cmp dh, 0xf8
test edx, edx
jmp 0x1404ac243
jg 0x1404ac1e0
lea rcx, [rbx - 0x10]
test bpl, 0xc0
cmp r9d, 0x1e1707cb
cmp dword [rcx], 0xdddd
jmp 0x1404ac263
jne 0x1404ac26e
call fcn.1404cc356
mov al, 1
cmc
jmp 0x1404ac276
mov rcx, qword [rbp + 0x20]
cmp r13b, 0xc9
xor rcx, rbp
jmp 0x1404ac286
call fcn.1404a2814
mov rbx, qword [rbp + 0x78]
movsx r15w, r15b
lea rsp, [rbp + 0x30]
movsx rsi, r14w
xchg r12b, r15b
pop r15
pop r14
movsxd r13, ebp
movzx bp, r12b
pop r13
pop r12
movzx rbp, ax
jmp 0x1404ac2b8
pop rdi
movsx rsi, r14w
setb bpl
pop rsi
cmove bp, r11w
xchg bpl, bpl
mov bp, 0x604c
pop rbp
jmp 0x1404ac2d4
ret
mov r10, qword [rbp]
rcr r9w, 0xb
jmp 0x1404ac2e3
mov edx, 1
ror r9b, cl
movzx r9d, word [rdi]
cmc
test r9w, r9w
jmp 0x1404ac2f9
je 0x1404ac26e
mov r14, qword [rbp + 8]
mov r8, qword [r15]
cmc
test r8, r8
jmp 0x1404ac30f
je 0x1404ac26e
mov bl, r11b
mov ecx, r11d
rol ax, cl
jmp 0x1404ac329
mov rax, r11
cmc
mov rsi, rdi
add rsi, 2
cmp di, sp
jmp 0x1404ac33c
add ecx, edx
cmp ax, 0xcd3
add rax, rdx
clc
cmp al, 0xb8
test ax, 0x58cf
cmp word [rsi], r9w
je 0x1404ac330
movzx edx, r9w
clc
cmp edx, 0x64
jmp 0x1404ac363
ja 0x1404ac5f7
mov r10d, 0x64
cmp edx, r10d
je 0x1404ac5a7
mov r10d, 0x27
jmp 0x1404ac388
cmp edx, r10d
je 0x1404ac500
lea eax, [r10 + 0x1a]
jmp 0x1404ac39a
cmp edx, eax
jmp 0x1404ac3a1
je 0x1404ac3e8
lea r8d, [r10 + 0x21]
clc
cmp edx, r8d
jmp 0x1404ac3b4
je 0x1404ac48a
lea eax, [r10 + 0x26]
jmp 0x1404ac3c7
cmp edx, eax
je 0x1404ac41f
lea eax, [r10 + 0x3a]
cmp r10d, r9d
jmp 0x1404ac3db
cmp edx, eax
jmp 0x1404ac3e2
jne 0x1404ac7cb
lea rdx, [0x1400d0e30]
movsxd rcx, edx
movzx cx, r15b
mov ecx, 0x4d3a144f
mov rcx, rdi
jmp 0x1404ac404
call fcn.1404cd11e
test eax, eax
jmp 0x1404ac410
jne 0x1404ac4c3
lea rsi, [rdi + 0xa]
jmp 0x1404ac4f1
sub ecx, 1
jmp 0x1404ac427
je 0x1404ac46e
sub ecx, 1
jmp 0x1404ac435
je 0x1404ac47b
sub ecx, 1
jmp 0x1404ac443
je 0x1404ac464
cmp ecx, 1
jmp 0x1404ac451
jne 0x1404ac7cb
lea eax, [rcx + 0x41]
jmp 0x1404ac45f
jmp 0x1404ac809
mov eax, 0x62
jmp 0x1404ac809
mov bl, 1
xchg al, al
movzx ax, r15b
movsx ax, ch
mov eax, 0x6d
jmp 0x1404ac485
jmp 0x1404ac809
sub ecx, 1
jmp 0x1404ac492
je 0x1404ac4ab
cmp ecx, 1
jmp 0x1404ac4a0
je 0x1404ac4b5
jmp 0x1404ac7cb
mov bl, 1
cdqe
movzx eax, r14w
bswap eax
movzx eax, r8w
jmp 0x1404ac4be
jmp 0x1404ac809
lea rdx, [0x1400d0870]
mov rcx, rdi
jmp 0x1404ac4d2
call fcn.1404cd11e
test eax, eax
jmp 0x1404ac4de
jne 0x1404ac4f1
lea rsi, [rdi + 6]
setbe al
cmovs rax, r11
not eax
mov eax, 0x70
jmp 0x1404ac4fb
jmp 0x1404ac809
mov edx, 1
test dl, cl
jmp 0x1404ac50c
jne 0x1404ac51e
movsxd rax, ecx
lea rdi, [rdi + rax*2]
jmp 0x1404ac86d
lea rdi, [rdi + rax*2]
and ecx, 0x2bc154e2
movzx ecx, word [rdi]
test r14b, al
test cx, cx
jmp 0x1404ac536
je 0x1404ac26e
test r8, r8
jmp 0x1404ac544
je 0x1404ac86d
add rdi, 2
jmp 0x1404ac553
cmp cx, r10w
jmp 0x1404ac55c
je 0x1404ac86d
mov rax, qword [r12]
mov word [rax], cx
btr r8w, 0x14
movsx cx, r11b
add qword [r12], 2
dec qword [r15]
rcr cx, cl
movzx ecx, word [rdi]
sal r8w, 0x36
mov r8, qword [r15]
test di, 0x1f29
jmp 0x1404ac594
test cx, cx
jmp 0x1404ac59c
jne 0x1404ac53c
jmp 0x1404ac86d
sub ecx, 1
jmp 0x1404ac5af
je 0x1404ac5ec
sub ecx, 1
je 0x1404ac5ee
sub ecx, 1
jmp 0x1404ac5c6
je 0x1404ac5e2
cmp ecx, 1
jmp 0x1404ac5d4
jne 0x1404ac7cb
lea eax, [rcx + 0x40]
jmp 0x1404ac809
mov eax, 0x61
jmp 0x1404ac809
mov bl, 1
movzx eax, r10w
jmp 0x1404ac809
sub edx, 0x68
jmp 0x1404ac5ff
je 0x1404ac7b4
sub edx, 5
jmp 0x1404ac60d
je 0x1404ac77b
sub edx, 6
jmp 0x1404ac61b
je 0x1404ac742
sub edx, 1
jmp 0x1404ac629
je 0x1404ac66b
cmp edx, 5
jne 0x1404ac7cb
cmp ecx, 2
jmp 0x1404ac640
je 0x1404ac65c
cmp ecx, 4
jne 0x1404ac7cb
lea eax, [rdx + 0x54]
jmp 0x1404ac657
jmp 0x1404ac809
mov eax, 0x79
jmp 0x1404ac666
jmp 0x1404ac809
cmp dword [r10 + 8], 0xb
jmp 0x1404ac675
jg 0x1404ac687
mov rdx, qword [r13 + 0x290]
jmp 0x1404ac692
mov rdx, qword [r13 + 0x298]
test r12b, 0x66
cmp ecx, 1
jmp 0x1404ac69a
jne 0x1404ac728
test r8, r8
jmp 0x1404ac6a8
je 0x1404ac728
mov rcx, qword [r12]
bsr ax, r12w
movsx eax, ax
shrd eax, r15d, 0x89
movzx eax, word [rdx]
cmp rcx, 0x37c90a7a
test r8d, r9d
mov word [rcx], ax
clc
jmp 0x1404ac6d5
add qword [r12], 2
jmp 0x1404ac6df
dec qword [r15]
jmp 0x1404ac6e7
jmp 0x1404ac865
test r8, r8
jmp 0x1404ac6f4
je 0x1404ac865
mov rax, qword [r12]
bsf r8d, ecx
rcl r8w, cl
add rdx, 2
mov word [rax], cx
add qword [r12], 2
movsxd rcx, r9d
cmovle r8d, edx
dec qword [r15]
neg cx
shl cl, 0xf8
mov r8, qword [r15]
test bpl, dil
movzx ecx, word [rdx]
test r9b, 0x8a
test cx, cx
jmp 0x1404ac737
jne 0x1404ac6ec
jmp 0x1404ac865
sub ecx, 1
jmp 0x1404ac74a
je 0x1404ac75e
cmp ecx, 1
je 0x1404ac76c
jmp 0x1404ac7cb
mov bl, 1
movsx ax, spl
movsx rax, r12w
bswap rax
mov eax, 0x53
jmp 0x1404ac776
jmp 0x1404ac809
sub ecx, 1
jmp 0x1404ac783
je 0x1404ac79c
cmp ecx, 1
jmp 0x1404ac791
je 0x1404ac7a5
jmp 0x1404ac7cb
mov bl, 1
bswap rax
mov eax, edx
cdqe
mov eax, 0x4d
jmp 0x1404ac7af
jmp 0x1404ac809
sub ecx, 1
je 0x1404ac7f7
cmp ecx, 1
jmp 0x1404ac7c5
je 0x1404ac7fe
mov rax, qword [r12]
cmp bp, 0x2e67
add rdi, 2
mov word [rax], r9w
stc
cmp edi, r14d
add qword [r12], 2
jmp 0x1404ac7ea
dec qword [r15]
jmp 0x1404ac7f2
jmp 0x1404ac868
mov bl, 1
cdqe
bswap dx
mov eax, 0x49
bswap r8w
cqo
mov r8, qword [rbp]
xchg dl, r9b
not ch
mov dx, 0x5060
mov r9, r12
cdq
movzx edx, r11w
bswap rcx
mov byte [rsp + 0x30], bl
movzx edx, r11w
xchg cx, cx
cwd
movzx edx, ax
bswap cx
cmovae cx, ax
movsx ecx, bx
mov qword [rsp + 0x28], r13
mov ch, 0x40
mov rcx, r14
mov qword [rsp + 0x20], r15
jmp 0x1404ac850
call fcn.1404aa1ce
xor r11d, r11d
test al, al
jmp 0x1404ac85f
je 0x1404ac88f
mov rdi, rsi
mov edx, 1
movzx r9d, word [rdi]
bswap r10w
mov r10, qword [rbp]
clc
stc
test r9w, r9w
jmp 0x1404ac884
jne 0x1404ac303
jmp 0x1404ac26e
call fcn.1404b83a5
mov dword [rax], 0x16
jmp 0x1404ac89f
xor al, al
jmp 0x1404ac8a6
jmp 0x1404ac276