Function at 0x1400491c0
Capabilities:
Authenticate hmac

Disassembly:
xchg rbx, rsi
mov qword [rsp + 0x20], rsi
xchg rsi, rbx
mov byte [rsp + 0x18], r8b
push rbp
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
mov qword [rsp - 8], rdi
sub rsp, 8
push r15
mov qword [rsp], r12
nop
sub rsp, 8
mov qword [rsp], r13
nop
sub rsp, 8
mov qword [rsp], r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xc0
movzx r15d, r9b
xchg rcx, r13
mov rcx, r13
xchg rcx, r13
mov byte [rcx], 2
add byte [rcx], 0x42
sub byte [rcx], 0xe
add byte [rcx], 0x44
sub byte [rcx], 0x10
xor byte [rcx], 0x53
xor byte [rcx], 0x68
xor byte [rcx], 0x51
xor eax, eax
mov qword [rcx + 8], rax
xchg r12, rcx
mov rcx, qword [rdx + 8]
xchg rcx, r12
mov rbx, qword [rdx]
xchg rbx, r15
mov rdi, r15
xchg r15, rbx
cmp rbx, r12
je 0x1400492d6
mov rsi, qword [rdi + 0x10]
xchg rdx, rax
mov rdx, rdi
xchg rdx, rax
test rsi, rsi
cmovne rax, rsi
cmp byte [rax], 2
jne 0x1400493da
xchg rbp, rdi
mov rcx, rbp
xchg rdi, rbp
test rsi, rsi
cmovne rcx, rsi
call fcn.1400704b0
cmp rax, 2
jne 0x1400493da
xchg rdi, r11
mov r14, r11
xchg rdi, r11
test rsi, rsi
cmovne r14, rsi
cmp byte [r14], al
jne 0x1400497bd
mov rax, qword [r14 + 8]
xchg rcx, r9
mov r9, qword [rax]
xchg r9, rcx
cmp byte [rcx], 3
jne 0x1400493da
neg rdi
add rdi, 0xffffffffffffffe8
neg rdi
cmp rdi, r12
jne 0x140049255
movzx r8d, byte [rbp + 0x77]
mov al, 0x64
xor al, 0x36
xor al, 0x48
add al, 0x41
xor al, 0x76
add al, 4
xor al, 0xa
sub al, 0x1d
sub al, 0x1d
test r8b, r8b
jne 0x140049312
xor ecx, ecx
movzx eax, al
cmp r15b, 2
cmovne ecx, eax
movzx eax, cl
cmp r15b, 1
jne 0x140049312
test cl, cl
je 0x14004975c
test al, al
je 0x140049655
mov byte [r13], 0x5c
sub byte [r13], 0x32
add byte [r13], 0x2d
sub byte [r13], 0x2f
xor byte [r13], 0x7b
xor byte [r13], 0x52
mov dl, 0x5a
sub dl, 0x11
xor dl, 0x28
xor dl, 0x52
sub dl, 0xc
xor dl, 0x3e
xor dl, 0x76
xor dl, 0x6e
lea rcx, [rbp + 0x67]
call fcn.14004baf0
mov rax, qword [rbp + 0x67]
mov qword [r13 + 8], rax
cmp rbx, r12
je 0x1400496e9
movabs rdi, 0x333333347ac47eb
add rdi, 0x18d7106b
xor rdi, 0x346c07a2
sub rdi, 0x330b8118
xor rdi, 0x2a760be0
add rdi, 0x3294fdca
sub rdi, 0x159a1b50
xor rdi, 0x2e2d62b
add rdi, 0x8c0d196
nop dword [rax + rax]
mov rdx, qword [rbx + 0x10]
test rdx, rdx
jne 0x1400493e6
movzx esi, byte [rbx]
mov byte [rbp - 0x79], sil
mov rax, qword [rbx + 8]
mov qword [rbp - 0x71], rax
mov byte [rbx], dl
mov qword [rbx + 8], rdx
jmp 0x1400493fb
xor al, al
movzx r8d, byte [rbp + 0x77]
jmp 0x1400492e8
lea rcx, [rbp - 0x79]
call fcn.140048e80
xchg r8, rax
mov r8, qword [rbp - 0x71]
xchg r8, rax
movzx esi, byte [rbp - 0x79]
xchg r14, r9
mov r9, qword [r13 + 8]
xchg r9, r14
xchg rdi, r15
mov rdi, qword [rax]
xchg rdi, r15
mov qword [rbp + 0x67], r15
mov r15, qword [r15 + 8]
xchg r8, r13
mov r13, r15
xchg r8, r13
lea rdx, [rbp - 0x49]
xchg r14, r13
mov rcx, r13
xchg r13, r14
call fcn.140033d40
xchg r13, rax
movups xmm0, xmmword [r13]
xchg r13, rax
movups xmmword [rbp - 0x69], xmm0
xchg r13, rax
movsd xmm0, qword [r13 + 0x10]
xchg r13, rax
movsd qword [rbp - 0x19], xmm0
mov r8, qword [rbp - 0x19]
cmp byte [r8 + 0x19], 0
jne 0x14004947f
neg r8
add r8, 0xffffffffffffffe0
neg r8
mov rdx, r15
xchg rcx, r14
mov r14, rcx
xchg rcx, r14
call fcn.140030980
test al, al
je 0x14004962a
cmp qword [r14 + 8], rdi
je 0x140049756
mov rdi, qword [r14]
xchg r11, r14
mov qword [rbp - 0x59], r11
xchg r14, r11
mov qword [rbp - 0x51], 0x262f15d8
xor qword [rbp - 0x51], 0x4ba46419
xor qword [rbp - 0x51], 0xeb03918
xor qword [rbp - 0x51], 0x25648e3a
sub qword [rbp - 0x51], 0x87b5f3a
add qword [rbp - 0x51], 0xea7c395
xor qword [rbp - 0x51], 0x112c141e
xor qword [rbp - 0x51], 0x23621dc7
xor qword [rbp - 0x51], 0x7ec222e7
mov ecx, 0x6e22a6d3
xor ecx, 0x2a792bb0
sub ecx, 0x34245988
xor ecx, 0x1ea62f3f
add ecx, 0x34afd6d4
sub ecx, 0x1ca0ce18
sub ecx, 0x1d886729
sub ecx, 0x917be27
call fcn.1401fd05c
xchg rbx, rax
mov r8, rbx
xchg rbx, rax
xorps xmm0, xmm0
movups xmmword [rax + 0x20], xmm0
xor edx, edx
xchg r15, rdx
mov qword [rax + 0x30], r15
xchg rdx, r15
mov qword [rax + 0x38], rdx
movups xmm0, xmmword [r15]
xchg rbx, rax
movups xmmword [rbx + 0x20], xmm0
xchg rbx, rax
xchg rsi, r15
movups xmm1, xmmword [rsi + 0x10]
xchg r15, rsi
xchg r11, rax
movups xmmword [r11 + 0x30], xmm1
xchg r11, rax
xchg rdx, r14
mov qword [r15 + 0x10], r14
xchg rdx, r14
mov qword [r15 + 0x18], 0x53b866da
sub qword [r15 + 0x18], 0x458dd9ef
xor qword [r15 + 0x18], 0x374aa329
add qword [r15 + 0x18], 0x426211c3
xor qword [r15 + 0x18], 0x6f063cc
sub qword [r15 + 0x18], 0x7d32223a
mov byte [r15], dl
mov rcx, qword [rbp + 0x67]
movzx eax, byte [rcx + 0x10]
mov byte [r8 + 0x40], al
mov rax, qword [rcx + 0x18]
mov qword [r8 + 0x48], rax
mov byte [rcx + 0x10], dl
mov qword [rcx + 0x18], rdx
mov qword [r8], rdi
mov qword [r8 + 8], rdi
xchg rdx, rdi
mov qword [r8 + 0x10], rdx
xchg rdx, rdi
mov word [r8 + 0x18], dx
mov qword [rbp - 0x51], rdx
xchg rcx, rbp
movups xmm0, xmmword [rcx - 0x69]
xchg rcx, rbp
xchg rbp, r8
movaps xmmword [r8 - 0x69], xmm0
xchg rbp, r8
lea rdx, [rbp - 0x69]
xchg r12, r14
mov rcx, r12
xchg r14, r12
call fcn.140052e90
movabs rdi, 0x33333334030cc76
xor rdi, 0x7c7987a1
xor rdi, 0x11ae2991
add rdi, 0x41c7b216
sub rdi, 0x2bac0719
xor rdi, 0xaf7b3d8
sub rdi, 0x3f558589
add rdi, 0x3c8fb606
xor rdi, 0x7f1ddc2b
movzx edx, sil
lea rcx, [rbp - 0x71]
call fcn.1400542b0
nop
nop
add rbx, 0x5d922830
sub rbx, 0x5d922818
cmp rbx, r12
jne 0x1400493b3
jmp 0x1400496e9
mov byte [r13], 0x25
xor byte [r13], 0xf
add byte [r13], 0x30
add byte [r13], 7
add byte [r13], 9
xor byte [r13], 0x18
xor byte [r13], 0x2b
sub byte [r13], 0x57
mov ecx, 0x79df8aaa
xor ecx, 0x70b37144
add ecx, 0x3fbaad40
xor ecx, 0xe612e1a
sub ecx, 0x1f611e77
sub ecx, 0xf53e8af
xor ecx, 0x145f9c6c
sub ecx, 0xcce1c4a
call fcn.1401fd05c
xchg r10, rdi
mov r10, rax
xchg r10, rdi
lea rax, [rbp + 0x67]
mov qword [rbp - 0x69], rax
xchg rdi, r14
mov qword [rbp - 0x61], r14
xchg r14, rdi
lea r9, [rbp + 0x6f]
mov r8, r12
mov rdx, rbx
xchg rcx, rdi
mov rdi, rcx
xchg rcx, rdi
call fcn.140030270
nop
mov qword [r13 + 8], rdi
xchg rbp, r13
mov rax, rbp
xchg r13, rbp
mov rbx, qword [rsp + 0x118]
add rsp, 0xc0
push rdx
push rbx
push rdx
xchg qword [rsp + 0x18], r15
add rsp, 0x20
nop
xchg qword [rsp], r14
add rsp, 8
nop
xchg qword [rsp], r13
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], r12
push rbx
push rbx
push rax
push rcx
xchg qword [rsp + 0x20], rdi
pop rcx
pop rax
pop rbx
pop rbx
add rsp, 8
nop
mov rsi, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rbp, qword [rsp - 8]
nop
add rsp, 8
jmp qword [rsp - 8]
call fcn.14002f810
nop
lea rdx, [0x140001708]
lea rcx, [rbp - 0x49]
call fcn.140049a20
nop
xor r9d, r9d
lea r8, [rbp - 0x49]
mov edx, 0x2445182d
xor edx, 0x2fa2070b
add edx, 0x1d03f304
add edx, 0x54c76db
sub edx, 0x11836bf5
add edx, 0x5145427b
sub edx, 0x298b13cb
sub edx, 0x446e4a93
lea rcx, [rbp - 0x11]
call fcn.1400395e0
lea rdx, [0x140215860]
lea rcx, [rbp - 0x11]
call fcn.1401fe10e
nop
mov rcx, r14
call fcn.140071410
xchg r13, rax
mov qword [rbp + 0x67], r13
xchg r13, rax
lea r8, [rbp + 0x67]
lea rdx, [0x1400016d0]
lea rcx, [rbp - 0x49]
call fcn.1400374c0
nop
mov r9, r14
xchg r8, rax
mov rax, r8
xchg r8, rax
mov edx, 0x13ffc2b8
sub edx, 0x1170a09
sub edx, 0xc30d4e
sub edx, 0xfcb765a
add edx, 0x7cd0976b
xor edx, 0xcc940bb
sub edx, 0x23d82256
xor edx, 0x1b42b293
xor edx, 0x4b49d9d1
lea rcx, [rbp - 0x11]
call fcn.14003a130
lea rdx, [0x140215860]
lea rcx, [rbp - 0x11]
call fcn.1401fe10e
int3