Function at 0x1403fd1aa
Capabilities:
Authenticate hmac

Disassembly:
push r15
neg r15d
sar ax, 0x5c
clc
push r14
sal r9b, cl
sbb r15d, 0x61373bdc
rol al, 0xe1
push r13
add r9b, 0x28
push r12
bt r9d, esi
push rsi
clc
jmp 0x1403fd1d6
push rdi
stc
sbb edi, 0x4b0c5ede
mov al, r15b
push rbp
push rbx
cmp dl, r12b
sub rsp, 0x28
btr di, r11w
jmp 0x1403fd1f4
mov rbx, rdx
cmc
mov r12, rcx
movabs r9, 0x276276276276276
sub r15b, 0xe9
btr ax, 0x54
mov rdi, qword [rcx]
mov r15, qword [rcx + 8]
shl si, 0x3e
lahf
btc cx, 0x5f
sub r15, rdi
sar r15, 3
shrd rsi, r14, 0xa9
sal si, cl
shr cl, cl
movabs rcx, 0x4ec4ec4ec4ec4ec5
imul r15, rcx
bswap si
bt eax, r8d
mov rax, rdx
sub rax, rdi
movsx edx, r14w
imul rcx
movzx esi, r15w
movsx ax, bl
mov rsi, rdx
movsxd rdx, r12d
cdq
inc r15
rcr dh, 0x3a
mov rdx, qword [r12 + 0x10]
sar ah, cl
stc
xor ax, 0x202f
sub rdx, rdi
add rax, 0x14f12e22
movzx eax, ax
sar rdx, 3
cwde
cdqe
imul rdx, rcx
rcr al, cl
mov rax, rdx
rcl cx, 0x30
cmp dil, r14b
movzx cx, r8b
shr rax, 1
mov rcx, r9
cmc
cmp r15b, r14b
stc
sub rcx, rax
add rax, rdx
test al, sil
cmp rax, r15
jmp 0x1403fd2b8
cmovbe rax, r15
cmp rdx, rcx
jmp 0x1403fd2c4
cmova rax, r9
stc
jmp 0x1403fd2ce
cmp rax, r9
jmp 0x1403fd2d6
ja 0x1403fd9b1
mov r13, r8
xadd r14, r14
imul r14, rax, 0x68
cmp bpl, 0x2f
test r13b, 0x36
cmc
cmp rax, 0x28
jmp 0x1403fd2f9
jb 0x1403fd336
cmp rax, r9
jmp 0x1403fd307
jae 0x1403fd9b1
lea rcx, [r14 + 0x27]
jmp 0x1403fd316
call fcn.140447930
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
jmp 0x1403fd328
mov qword [rdi - 8], rax
jmp 0x1403fd331
jmp 0x1403fd34b
mov rcx, r14
jmp 0x1403fd33e
call fcn.140447930
mov rdi, rax
adc cx, 0x2f8e
mov rax, rsi
shr rax, 0x3f
or cl, 0xb1
shl rcx, cl
bsr ecx, eax
sar rsi, 5
mov cx, 0x75a1
shrd ecx, r9d, 0x57
bts cx, di
add rsi, rax
and al, r14b
shrd cx, ax, 0
imul rsi, rsi, 0x68
movsx rax, bp
setae cl
lea rcx, [rdi + rsi]
cbw
cwde
mov rax, qword [r13]
mov r13, rcx
jmp 0x1403fd395
xorps xmm0, xmm0
movups xmmword [rdi + rsi + 8], xmm0
jmp 0x1403fd3a2
mov qword [rdi + rsi + 0x18], 0
jmp 0x1403fd3b0
mov qword [rdi + rsi + 0x20], 0xf
movups xmmword [rdi + rsi + 0x28], xmm0
mov qword [rdi + rsi + 0x38], 0
mov qword [rdi + rsi + 0x40], 0xf
movups xmmword [rdi + rsi + 0x48], xmm0
mov qword [rdi + rsi + 0x58], 0
jmp 0x1403fd3e3
mov qword [rdi + rsi], rax
jmp 0x1403fd3ec
mov dword [rdi + rsi + 0x60], 0
mov byte [rdi + rsi + 0x64], 0
jmp 0x1403fd3fe
call fcn.1403fc8ed
mov rax, qword [r12]
sbb bp, r10w
shl bp, 0xf5
rol bpl, 0xfc
mov rbp, qword [r12 + 8]
cmp rbp, rbx
jmp 0x1403fd420
je 0x1403fd713
cmp rax, rbx
jmp 0x1403fd42e
je 0x1403fd58c
xor ecx, ecx
jmp 0x1403fd43b
xorps xmm0, xmm0
movaps xmm1, xmmword [0x1400bd400]
rol dh, cl
nop word cs:[rax + rax]
bsf rdx, rbx
ror rdx, 0xd5
mov rdx, qword [rax + rcx]
cmp bh, cl
mov qword [rdi + rcx], rdx
cdq
movups xmmword [rdi + rcx + 8], xmm0
movups xmmword [rdi + rcx + 0x18], xmm0
cmp di, 0x5b08
bt dx, 0xfb
movups xmm2, xmmword [rax + rcx + 0x18]
movups xmmword [rdi + rcx + 0x18], xmm2
movsxd rdx, r14d
add dh, 0x53
sbb dx, r11w
movups xmm2, xmmword [rax + rcx + 8]
neg dx
test bp, 0x2229
movups xmmword [rdi + rcx + 8], xmm2
movups xmmword [rax + rcx + 0x18], xmm1
mov byte [rax + rcx + 8], 0
sal dx, 0xcc
cmp r11b, 0x6f
movzx dx, r12b
movups xmmword [rdi + rcx + 0x38], xmm0
test bp, 0x2b32
movups xmmword [rdi + rcx + 0x28], xmm0
cmovp dx, ax
adc dl, 7
sub dl, dil
movups xmm2, xmmword [rax + rcx + 0x28]
ror dl, cl
movups xmm3, xmmword [rax + rcx + 0x38]
sbb rdx, 0xbfb28cd
movups xmmword [rdi + rcx + 0x38], xmm3
or dl, 0x41
bsr dx, r11w
movups xmmword [rdi + rcx + 0x28], xmm2
movups xmmword [rax + rcx + 0x38], xmm1
jmp 0x1403fd504
mov byte [rax + rcx + 0x28], 0
shld dx, r12w, 0x7e
clc
and dl, 0x13
mov rdx, qword [rax + rcx + 0x58]
clc
mov qword [rax + rcx + 0x58], 0
test r8b, r12b
stc
movups xmm2, xmmword [rax + rcx + 0x48]
cmp r15w, r8w
movups xmmword [rax + rcx + 0x48], xmm0
test r14w, r10w
movups xmmword [rdi + rcx + 0x48], xmm2
mov qword [rdi + rcx + 0x58], rdx
movzx edx, byte [rax + rcx + 0x64]
clc
test bh, 0x92
jmp 0x1403fd550
mov byte [rdi + rcx + 0x64], dl
btr edx, r12d
mov edx, dword [rax + rcx + 0x60]
test r10b, 0xd9
mov dword [rdi + rcx + 0x60], edx
sal edx, 0x57
adc dl, spl
lea rdx, [rax + rcx]
cmc
stc
add rdx, 0x68
stc
add rcx, 0x68
cmp rdx, rbx
jmp 0x1403fd581
jne 0x1403fd45d
mov rbp, qword [r12 + 8]
cmp rbp, rbx
je 0x1403fd877
lea rax, [rsi + rdi]
clc
stc
add rax, 0xc8
cmp sil, 0x29
xor edx, edx
jmp 0x1403fd5ac
xorps xmm0, xmm0
movaps xmm1, xmmword [0x1400bd400]
add rcx, rsi
nop word cs:[rax + rax]
mov rsi, qword [rbx + rdx]
mov qword [rax + rdx - 0x60], rsi
movsx cx, r8b
mov sil, sil
movups xmmword [rax + rdx - 0x58], xmm0
neg esi
xor ch, 0xf4
shl ch, cl
movups xmmword [rax + rdx - 0x48], xmm0
sbb cl, r11b
shrd rsi, rsi, 0x33
inc rcx
movups xmm2, xmmword [rbx + rdx + 0x18]
shr ch, cl
not sil
movups xmmword [rax + rdx - 0x48], xmm2
clc
rcl esi, cl
shld ecx, r14d, 0xbe
movups xmm2, xmmword [rbx + rdx + 8]
movzx esi, r12w
movups xmmword [rax + rdx - 0x58], xmm2
ror rcx, 0x66
movups xmmword [rbx + rdx + 0x18], xmm1
jmp 0x1403fd62b
mov byte [rbx + rdx + 8], 0
add si, r11w
movups xmmword [rax + rdx - 0x28], xmm0
or ch, 0x74
xadd sil, sil
clc
movups xmmword [rax + rdx - 0x38], xmm0
adc cx, 0x3599
movups xmm2, xmmword [rbx + rdx + 0x28]
btc cx, sp
movups xmm3, xmmword [rbx + rdx + 0x38]
rcr sil, 0x51
movups xmmword [rax + rdx - 0x28], xmm3
xor sil, 0x86
movups xmmword [rax + rdx - 0x38], xmm2
movups xmmword [rbx + rdx + 0x38], xmm1
inc sil
mov byte [rbx + rdx + 0x28], 0
cmovno rsi, r8
btr si, 0x44
btc si, r14w
mov rsi, qword [rbx + rdx + 0x58]
movsxd rcx, r10d
bsr cx, ax
btr cx, dx
mov qword [rbx + rdx + 0x58], 0
sete ch
sbb cl, r11b
rcr cx, 0xef
movups xmm2, xmmword [rbx + rdx + 0x48]
adc ecx, esi
shl cx, cl
movups xmmword [rbx + rdx + 0x48], xmm0
movups xmmword [rax + rdx - 0x18], xmm2
mov qword [rax + rdx - 8], rsi
xchg cx, cx
movzx ecx, byte [rbx + rdx + 0x64]
cmc
test rdi, rdx
mov byte [rax + rdx + 4], cl
or ecx, edi
sub cx, r9w
mov ecx, dword [rbx + rdx + 0x60]
cmp r8b, 0xd5
jmp 0x1403fd6e6
mov dword [rax + rdx], ecx
btc ecx, 0x65
lea rcx, [rbx + rdx]
add rcx, 0x68
jmp 0x1403fd6fc
add rdx, 0x68
cmp rcx, rbp
jmp 0x1403fd708
jne 0x1403fd5c5
jmp 0x1403fd877
cmp rax, rbx
jmp 0x1403fd71b
je 0x1403fd885
sub ecx, ecx
xorps xmm0, xmm0
movaps xmm1, xmmword [0x1400bd400]
cmova dx, r14w
btr dx, sp
or dh, ch
nop word [rax + rax]
cmp r8d, 0x24de48fa
sal dh, 0xc
xchg dx, dx
mov rdx, qword [rax + rcx]
cmc
cmp sil, al
test r15w, 0x7507
mov qword [rdi + rcx], rdx
movsx dx, r12b
test bp, sp
movups xmmword [rdi + rcx + 8], xmm0
movups xmmword [rdi + rcx + 0x18], xmm0
cmp r14b, r14b
sub dl, r8b
movups xmm2, xmmword [rax + rcx + 0x18]
movups xmmword [rdi + rcx + 0x18], xmm2
movups xmm2, xmmword [rax + rcx + 8]
rcr dx, 0xf5
sal dl, cl
movups xmmword [rdi + rcx + 8], xmm2
shr edx, 0x7e
btc dx, r8w
stc
movups xmmword [rax + rcx + 0x18], xmm1
sal dh, cl
movsxd rdx, r11d
dec dl
mov byte [rax + rcx + 8], 0
sal dh, cl
sal dx, 0xd2
movups xmmword [rdi + rcx + 0x38], xmm0
movzx rdx, r9w
movups xmmword [rdi + rcx + 0x28], xmm0
test r11b, bpl
xor dx, r12w
bts rdx, r10
movups xmm2, xmmword [rax + rcx + 0x28]
rcl dx, cl
movups xmm3, xmmword [rax + rcx + 0x38]
movsx rdx, cx
movups xmmword [rdi + rcx + 0x38], xmm3
cmp r9b, 0x23
sbb dl, r12b
movups xmmword [rdi + rcx + 0x28], xmm2
movsx rdx, sp
rcl dh, 0xe2
test spl, r12b
movups xmmword [rax + rcx + 0x38], xmm1
sar dl, 0xae
xor dx, 0x5842
rcr dh, cl
mov byte [rax + rcx + 0x28], 0
bsr edx, r9d
and dl, bpl
mov rdx, qword [rax + rcx + 0x58]
mov qword [rax + rcx + 0x58], 0
cmc
cmp r15b, 0x38
movups xmm2, xmmword [rax + rcx + 0x48]
cmp sil, r14b
movups xmmword [rax + rcx + 0x48], xmm0
test r11w, di
stc
movups xmmword [rdi + rcx + 0x48], xmm2
test al, 0x57
test r9, r10
mov qword [rdi + rcx + 0x58], rdx
clc
movzx edx, byte [rax + rcx + 0x64]
test ecx, 0x59ef2f81
mov byte [rdi + rcx + 0x64], dl
mov edx, dword [rax + rcx + 0x60]
clc
mov dword [rdi + rcx + 0x60], edx
lea rdx, [rax + rcx]
add rdx, 0x68
add rcx, 0x68
stc
cmp rdx, rbx
jmp 0x1403fd871
jne 0x1403fd74b
mov rbx, qword [r12]
test si, r8w
jmp 0x1403fd885
test rbx, rbx
jmp 0x1403fd88d
je 0x1403fd910
mov rdx, qword [r12 + 8]
movsx rcx, r10w
cmovs cx, cx
mov rcx, rbx
movzx r8, di
mov r8, r12
jmp 0x1403fd8af
call fcn.1403fd9c1
mov rcx, qword [r12]
mov rdx, qword [r12 + 0x10]
cmp r13b, 0xc1
jmp 0x1403fd8c6
sub rdx, rcx
cmp di, ax
cmp rdx, 0x1000
jb 0x1403fd90b
mov rax, qword [rcx - 8]
clc
jmp 0x1403fd8e3
add rcx, 0xfffffffffffffff8
sub rcx, rax
test bpl, cl
cmp rcx, 0x20
jmp 0x1403fd8f6
jae 0x1403fd9b6
add rdx, 0x27
movzx ecx, ax
mov rcx, rax
jmp 0x1403fd90b
call fcn.140158ff6
mov qword [r12], rdi
sal bh, 0xc9
rcl ah, cl
xchg rbx, rbp
imul rax, r15, 0x68
ror bh, cl
add rax, rdi
movsx r15, bx
or rsi, 0x7b1450b6
xadd bpl, bl
mov qword [r12 + 8], rax
btr r15w, cx
xchg sil, bpl
btc ebx, 0x95
add r14, rdi
rcr r15w, 0xb6
shl r15, cl
setne r15b
mov qword [r12 + 0x10], r14
inc ah
rol bh, cl
mov rax, r13
shl r15d, cl
btc rdi, rsp
add rsp, 0x28
mov bl, r13b
sete bh
cmovge bx, r14w
pop rbx
movzx bp, bpl
pop rbp
mov sil, cl
pop rdi
movzx r15, cx
not r15b
pop rsi
movzx r13, r10w
mov r15d, 0x1e9855b4
pop r12
bswap r14w
setg r15b
pop r13
movsx r14w, r10b
mov r15b, 0x3f
pop r14
pop r15
jmp 0x1403fd9b0
ret
call fcn.1403b2ceb
call fcn.1404b5d90
int3