Function at 0x14003be10
Capabilities:
Authenticate hmac

Disassembly:
xchg rbx, r15
mov qword [rsp + 8], r15
xchg r15, rbx
xchg r10, rsi
mov qword [rsp + 0x10], r10
xchg rsi, r10
nop
mov qword [rsp - 8], rbp
sub rsp, 8
nop
mov qword [rsp - 8], rdi
sub rsp, 8
nop
mov qword [rsp - 8], r12
sub rsp, 8
push r10
mov qword [rsp], r14
push r15
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rdi, r9
mov r14d, r8d
mov r12d, edx
xchg rcx, rbx
mov rcx, rbx
xchg rcx, rbx
mov r15b, 0x32
sub r15b, 0x1f
add r15b, 0x36
xor r15b, 0x78
add r15b, 0x25
xor r15b, 0x1c
xor r15b, 0x34
xor r15b, 4
sub r15b, 0x79
xor esi, esi
test r8d, r8d
je 0x14003bf3f
nop dword [rax]
nop dword [rax + rax]
inc qword [rbx + 0x18]
xchg r11, rax
mov r11, qword [rbx]
xchg r11, rax
cmp rax, qword [rbx + 8]
je 0x14003becb
movzx ecx, byte [rax]
inc rax
xchg r14, rax
mov qword [rbx], r14
xchg r14, rax
jmp 0x14003befa
mov ecx, 0x3f21fef8
xor ecx, 0x25e19278
xor ecx, 0x6e9b890e
xor ecx, 0x1db43c19
sub ecx, 0x3b068445
add ecx, 0x3d6d4d0a
xor ecx, 0x3997a054
add ecx, 0xaa3efdf7
mov dword [rbx + 0x10], ecx
cmp ecx, 0xffffffff
je 0x14003bfa9
mov byte [rbp + 0x70], cl
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x14003bf22
mov byte [rdx], cl
inc qword [rdi + 8]
jmp 0x14003bf34
lea r8, [rbp + 0x70]
xchg rdi, rcx
mov rdi, rcx
xchg rcx, rdi
call fcn.140032cc0
inc esi
cmp esi, r14d
jb 0x14003bea4
movzx eax, r15b
lea r11, [rsp + 0x130]
xchg rsi, rbx
mov rsi, qword [r11 + 0x30]
xchg rsi, rbx
xchg rsi, r13
mov r13, qword [r11 + 0x38]
xchg rsi, r13
mov rsp, r11
push rdx
push rax
xchg qword [rsp + 0x10], r15
add rsp, 0x18
nop
xchg qword [rsp], r14
add rsp, 8
nop
xchg qword [rsp], r12
add rsp, 8
push rcx
xchg qword [rsp + 8], rdi
add rsp, 0x10
push rdx
push rax
push rbx
push rbx
push rbx
push rbx
push rcx
xchg qword [rsp + 0x38], rbp
pop rcx
pop rbx
pop rbx
pop rbx
pop rbx
pop rax
pop rdx
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
xchg rdi, rbp
mov rbp, qword [rbx + 0x28]
xchg rbp, rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 0x14cdf1c7
add qword [rsp + 0x40], 0x44065d5d
sub qword [rsp + 0x40], 0x3408734c
sub qword [rsp + 0x40], 0x4f596c7
xor qword [rsp + 0x40], 0x2afad451
xor qword [rsp + 0x40], 0x22871af5
xor qword [rsp + 0x40], 0x17ab8bb3
mov qword [rsp + 0x48], 0x9aafcbc
add qword [rsp + 0x48], 0x6dcce5e
xor qword [rsp + 0x48], 0x5ee90641
sub qword [rsp + 0x48], 0xa37e6c
sub qword [rsp + 0x48], 0xcca99d9
add qword [rsp + 0x48], 0x59d09e3
xor qword [rsp + 0x48], 0x68d3af0a
sub qword [rsp + 0x48], 0x2e4e11e4
mov eax, dword [0x1400017a0]
mov dword [rsp + 0x30], eax
movzx eax, word [0x1400017a4]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x36], 0x19
add byte [rsp + 0x36], 7
sub byte [rsp + 0x36], 0x1d
add byte [rsp + 0x36], 6
add byte [rsp + 0x36], 0x62
sub byte [rsp + 0x36], 0x6b
movups xmmword [rsp + 0x50], xmm0
mov edx, 0x16035fba
sub edx, 0x6fe7774
xor edx, 0x4baa55b9
add edx, 0x3a8f4f73
sub edx, 0x17ef782f
sub edx, 0x4d24a9fd
sub edx, 0x1a29eb26
lea rcx, [rsp + 0x50]
call fcn.1400536f0
xchg rbp, rax
mov rcx, rbp
xchg rbp, rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x60], 0x1517655
add qword [rsp + 0x60], 0x59994615
xor qword [rsp + 0x60], 0x6c7f95b1
sub qword [rsp + 0x60], 0x14864e27
xor qword [rsp + 0x60], 0x17aae8eb
sub qword [rsp + 0x60], 0x1701dfdc
add qword [rsp + 0x60], 0xcdd7c08
add qword [rsp + 0x60], 0xef69ff4
xor qword [rsp + 0x60], 0x3a766f68
mov qword [rsp + 0x68], 0x1aac8f69
xor qword [rsp + 0x68], 0x3d67bbf3
add qword [rsp + 0x68], 0x3d05d15f
sub qword [rsp + 0x68], 0x4d55d88b
xor qword [rsp + 0x68], 0x389782f8
sub qword [rsp + 0x68], 0x853ab88
add qword [rsp + 0x68], 0x38c35536
sub qword [rsp + 0x68], 0x582d6eae
xor qword [rsp + 0x68], 0x82eea89
movups xmm0, xmmword [0x140001948]
xchg r13, rax
movups xmmword [r13], xmm0
xchg r13, rax
mov eax, dword [0x140001958]
mov dword [rcx + 0x10], eax
movzx eax, word [0x14000195c]
mov word [rcx + 0x14], ax
movzx eax, byte [0x14000195e]
mov byte [rcx + 0x16], al
mov byte [rcx + 0x17], 0x2f
add byte [rcx + 0x17], 0x22
xor byte [rcx + 0x17], 0x5b
sub byte [rcx + 0x17], 5
add byte [rcx + 0x17], 0x71
sub byte [rcx + 0x17], 0x2c
sub byte [rcx + 0x17], 0x4a
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
mov r8d, r12d
lea rdx, [rbp - 0x70]
xchg r11, rbx
mov rcx, r11
xchg rbx, r11
call fcn.1400555c0
nop
mov qword [rsp + 0x20], 0x400c630f
xor qword [rsp + 0x20], 0x4e38f7fd
xor qword [rsp + 0x20], 0x1c3bd433
add qword [rsp + 0x20], 0x23e33531
add qword [rsp + 0x20], 0x2a0581ad
xor qword [rsp + 0x20], 0x4fcc7b87
add qword [rsp + 0x20], 0x2e7478e3
sub qword [rsp + 0x20], 0x3eb004fb
xchg r9, rax
mov rax, r9
xchg r9, rax
mov r8, qword [rbx + 0x18]
mov edx, 0x294feddb
xor edx, 0x3e275540
sub edx, 0x14c0d7f7
add edx, 0x34550bc1
xor edx, 0x6790ef88
xor edx, 0x8f9ef4d
sub edx, 0x5995ec32
lea rcx, [rbp - 0x50]
call fcn.140038c90
mov rdx, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], 0x7b31896
add qword [rbp - 0x80], 0xd785ddd
add qword [rbp - 0x80], 0x4adc9eaa
add qword [rbp - 0x80], 0x7f0f40
xor qword [rbp - 0x80], 0x26f1f62f
xor qword [rbp - 0x80], 0x4676d27f
mov qword [rbp - 0x78], 0x5a751c22
sub qword [rbp - 0x78], 0x56fd426b
add qword [rbp - 0x78], 0x2acb2568
sub qword [rbp - 0x78], 0x12e429da
xor qword [rbp - 0x78], 0x1f94b872
xor qword [rbp - 0x78], 0x4ca6d38
movsd xmm0, qword [0x140001960]
movsd qword [rsp + 0x70], xmm0
mov eax, dword [0x140001968]
mov dword [rsp + 0x78], eax
movzx eax, byte [0x14000196c]
mov byte [rsp + 0x7c], al
mov byte [rsp + 0x7d], 0x19
add byte [rsp + 0x7d], 0x36
sub byte [rsp + 0x7d], 0x4a
add byte [rsp + 0x7d], 0x41
sub byte [rsp + 0x7d], 0x13
xor byte [rsp + 0x7d], 0x33
mov byte [rdi + 0x28], 0x5d
add byte [rdi + 0x28], 8
xor byte [rdi + 0x28], 0x5c
add byte [rdi + 0x28], 0x1d
sub byte [rdi + 0x28], 0x55
add byte [rdi + 0x28], 0
cmp byte [rdi + 0x29], 0
jne 0x14003c500
lea rbx, [0x140004a88]
mov qword [rbp - 0x30], rbx
lea rcx, [rbp - 0x28]
call fcn.1401fe348
mov qword [rbp - 0x50], rbx
lea rcx, [rbp - 0x48]
call fcn.1401fe348
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14003c39f
inc rdx
xchg rdi, rcx
mov rdi, qword [rbp - 0x70]
xchg rcx, rdi
xchg r8, rax
mov r8, rcx
xchg r8, rax
cmp rdx, 0x1000
jb 0x14003c39a
nop
sub rdx, 0x62a4eb9f
add rdx, 0x62a4ebc6
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x14003c39a
push rbx
call 0x14088b33d
int3
call fcn.1401fd2cc
mov qword [rbp - 0x60], 0x32291507
add qword [rbp - 0x60], 0x2c7054b3
xor qword [rbp - 0x60], 0x3af47961
sub qword [rbp - 0x60], 0x90c9921
sub qword [rbp - 0x60], 0x55d82e83
xor qword [rbp - 0x60], 0x354621da
sub qword [rbp - 0x60], 0x30ce68ed
mov qword [rbp - 0x58], 0x29c18d5d
add qword [rbp - 0x58], 0x2b1d8697
sub qword [rbp - 0x58], 0x172782f0
sub qword [rbp - 0x58], 0x339fa115
xor qword [rbp - 0x58], 0x3d61c6f4
xor qword [rbp - 0x58], 0x37762914
mov byte [rbp - 0x70], 8
add byte [rbp - 0x70], 0x59
add byte [rbp - 0x70], 0x18
sub byte [rbp - 0x70], 0x29
sub byte [rbp - 0x70], 0x37
xor byte [rbp - 0x70], 4
add byte [rbp - 0x70], 0x3c
add byte [rbp - 0x70], 0xe
xor byte [rbp - 0x70], 0x67
xchg rdx, rsi
mov rsi, qword [rsp + 0x68]
xchg rdx, rsi
cmp rdx, 0x10
jb 0x14003c492
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003c48c
nop
sub rdx, 0x440fd647
add rdx, 0x440fd66e
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xffffffffe37bcfcb
sub rax, 0xffffffffe37bcfd3
cmp rax, 0x1f
jbe 0x14003c48c
push rsi
call 0x140608107
int3
call fcn.1401fd2cc
nop
xchg rdx, r15
mov r15, qword [rsp + 0x48]
xchg rdx, r15
cmp rdx, 0x10
jb 0x14003c4f8
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003c4f3
nop
add rdx, 0x11e517de
sub rdx, 0x11e517b7
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xffffffff8d158836
sub rax, 0xffffffff8d15883e
cmp rax, 0x1f
jbe 0x14003c4f3
call 0x1408b2c11
int3
call fcn.1401fd2cc
xor r15b, r15b
jmp 0x14003bf3f
lea rcx, [rbp - 0x10]
call fcn.14004bfc0
lea rdx, [0x140215b38]
lea rcx, [rbp - 0x10]
call fcn.1401fe34e
int3