Function at 0x1400404a0
Capabilities:
Authenticate hmac

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
nop
mov qword [rsp - 8], rbp
sub rsp, 8
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov esi, edx
xchg rcx, rbx
mov rcx, rbx
xchg rcx, rbx
mov dword [rbp + 0x58], 0x6fb24bef
xor dword [rbp + 0x58], 0xad35a89
sub dword [rbp + 0x58], 0xe668400
xor dword [rbp + 0x58], 0x6e696d4f
add dword [rbp + 0x58], 0x37edfb49
xor dword [rbp + 0x58], 0x5e416ddb
xor dword [rbp + 0x58], 0x6866ac69
xor dword [rbp + 0x58], 0x46a61ac0
xor r9d, r9d
lea r10, [rbp + 0x5b]
nop
inc qword [rbx + 0x18]
mov rax, qword [rbx]
cmp rax, qword [rbx + 8]
je 0x140040533
movzx ecx, byte [rax]
inc rax
xchg rdi, rax
mov qword [rbx], rdi
xchg rdi, rax
jmp 0x140040568
mov ecx, 0x5e7df6e5
xor ecx, 0x2e5dea8d
sub ecx, 0x47092133
add ecx, 0x13641b58
add ecx, 0x39e07245
sub ecx, 0x3803c091
add ecx, 0x1c028368
xor ecx, 0x7cee492a
xor ecx, 0xd94bfd7c
mov dword [rbx + 0x10], ecx
cmp ecx, 0xffffffff
je 0x1400405de
cmp byte [rbx + 0x20], 1
je 0x140040586
mov byte [r10], cl
jmp 0x14004058b
mov byte [rbp + r9 + 0x58], cl
inc r9
dec r10
cmp r9, 4
jb 0x140040510
mov eax, dword [rbp + 0x58]
mov dword [r8], eax
mov al, 0x5a
sub al, 0x15
sub al, 0x44
add al, 0x73
xor al, 0x6d
sub al, 0x18
lea r11, [rsp + 0x130]
xchg rdi, rbx
mov rdi, qword [r11 + 0x10]
xchg rbx, rdi
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
push rbx
push rax
xchg qword [rsp + 0x10], rbp
add rsp, 0x18
nop
add rsp, 8
jmp qword [rsp - 8]
mov rdi, qword [rbx + 0x28]
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 0x101f54f2
add qword [rsp + 0x40], 0x3189fbb1
add qword [rsp + 0x40], 0x22adf2fd
sub qword [rsp + 0x40], 0x5f0ce5c7
add qword [rsp + 0x40], 0x5d9373fd
xor qword [rsp + 0x40], 0x342ffd87
xor qword [rsp + 0x40], 0x4bee1861
xor qword [rsp + 0x40], 0x1d1c3436
mov qword [rsp + 0x48], 0x1304d190
sub qword [rsp + 0x48], 0x10085e5f
add qword [rsp + 0x48], 0x740a3a95
xor qword [rsp + 0x48], 0x5f2b30a3
add qword [rsp + 0x48], 0x4d33efd4
add qword [rsp + 0x48], 0x86fe9d1
sub qword [rsp + 0x48], 0x659ca838
add qword [rsp + 0x48], 0x297c6ff2
sub qword [rsp + 0x48], 0x41b13eb5
mov eax, dword [0x1400017b4]
mov dword [rsp + 0x30], eax
movzx eax, word [0x1400017b8]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x36], 0x31
add byte [rsp + 0x36], 0x36
sub byte [rsp + 0x36], 0xa
xor byte [rsp + 0x36], 3
sub byte [rsp + 0x36], 0x44
add byte [rsp + 0x36], 0x3a
sub byte [rsp + 0x36], 0x54
movups xmmword [rsp + 0x50], xmm0
mov edx, 0x4dd0de52
sub edx, 0x2cf22ac0
add edx, 0x4b413091
xor edx, 0x126e7f0a
sub edx, 0x32d4eaa0
add edx, 0xff75c23
sub edx, 0x47a5c22e
xor edx, 0x13ee4a5e
lea rcx, [rsp + 0x50]
call fcn.1400536a0
mov rdx, rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x60], 0x59d5ccd8
xor qword [rsp + 0x60], 0x2b03a6b6
sub qword [rsp + 0x60], 0x568a3de0
sub qword [rsp + 0x60], 0x13174524
add qword [rsp + 0x60], 0x27aeb883
xor qword [rsp + 0x60], 0x6a60f4fc
sub qword [rsp + 0x60], 0x5a836afa
mov qword [rsp + 0x68], 0x772dcd18
xor qword [rsp + 0x68], 0x17802d95
xor qword [rsp + 0x68], 0x7c8cc4d9
add qword [rsp + 0x68], 0x60d1579a
sub qword [rsp + 0x68], 0x25689e36
sub qword [rsp + 0x68], 0x260fa5e6
sub qword [rsp + 0x68], 0x317a37b3
movups xmm0, xmmword [0x140001948]
xchg rsi, rax
movups xmmword [rsi], xmm0
xchg rsi, rax
mov ecx, dword [0x140001958]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x14000195c]
mov word [rax + 0x14], cx
movzx eax, byte [0x14000195e]
mov byte [rdx + 0x16], al
mov byte [rdx + 0x17], 0x65
sub byte [rdx + 0x17], 0x22
sub byte [rdx + 0x17], 0x23
xor byte [rdx + 0x17], 0x5c
sub byte [rdx + 0x17], 0x4d
xor byte [rdx + 0x17], 0x78
xor byte [rdx + 0x17], 0x57
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
mov r8d, esi
lea rdx, [rbp - 0x70]
mov rcx, rbx
call fcn.140055580
nop
mov qword [rsp + 0x20], 0x7897fde4
sub qword [rsp + 0x20], 0x190e7114
add qword [rsp + 0x20], 0x8be075a
sub qword [rsp + 0x20], 0x67f6a2e
add qword [rsp + 0x20], 0x174f43ac
xor qword [rsp + 0x20], 0x79176da8
xchg r11, rax
mov r9, r11
xchg r11, rax
mov r8, qword [rbx + 0x18]
mov edx, 0x6d3c40a3
sub edx, 0x8a65661
sub edx, 0x2c729101
xor edx, 0x238d9321
add edx, 0x1ad183bf
xor edx, 0x36804e71
lea rcx, [rbp - 0x50]
call fcn.140038c10
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], 0x7d3e4628
xor qword [rbp - 0x80], 0x65df37
xor qword [rbp - 0x80], 0x6c84d2d5
add qword [rbp - 0x80], 0x43ea0c38
sub qword [rbp - 0x80], 0x31e7e4aa
add qword [rbp - 0x80], 0x7ae667c
xor qword [rbp - 0x80], 0x5adfbfef
sub qword [rbp - 0x80], 0x1de1cfea
sub qword [rbp - 0x80], 0x536e9644
mov qword [rbp - 0x78], 0x3de855cb
xor qword [rbp - 0x78], 0x599ab1bb
sub qword [rbp - 0x78], 0x161227e7
xor qword [rbp - 0x78], 0x153c4850
sub qword [rbp - 0x78], 0x2144733f
xor qword [rbp - 0x78], 0x3a188195
movsd xmm0, qword [0x140001960]
movsd qword [rsp + 0x70], xmm0
mov ecx, dword [0x140001968]
mov dword [rsp + 0x78], ecx
movzx ecx, byte [0x14000196c]
mov byte [rsp + 0x7c], cl
mov byte [rsp + 0x7d], 0x2e
sub byte [rsp + 0x7d], 0x1a
xor byte [rsp + 0x7d], 0x3e
xor byte [rsp + 0x7d], 0x37
add byte [rsp + 0x7d], 7
add byte [rsp + 0x7d], 0x3a
xor byte [rsp + 0x7d], 0x45
add byte [rsp + 0x7d], 0x4d
sub byte [rsp + 0x7d], 0x68
mov byte [rdi + 0x28], 0x77
sub byte [rdi + 0x28], 9
xor byte [rdi + 0x28], 0x77
add byte [rdi + 0x28], 0
add byte [rdi + 0x28], 0x60
sub byte [rdi + 0x28], 6
sub byte [rdi + 0x28], 0x72
cmp byte [rdi + 0x29], 0
jne 0x140040b2c
lea rbx, [0x140004a88]
mov qword [rbp - 0x30], rbx
lea rcx, [rbp - 0x28]
call fcn.1401fe5f8
mov qword [rbp - 0x50], rbx
lea rcx, [rbp - 0x48]
call fcn.1401fe5f8
nop
xchg rdx, r8
mov r8, qword [rbp - 0x58]
xchg r8, rdx
cmp rdx, 0x10
jb 0x1400409d5
inc rdx
mov rcx, qword [rbp - 0x70]
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x1400409d0
nop
sub rdx, 0x45a0a9aa
add rdx, 0x45a0a9d1
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
sub rax, 0xffffffffa3f36850
add rax, 0xffffffffa3f36848
cmp rax, 0x1f
jbe 0x1400409d0
call 0x1408d2d0b
int3
call fcn.1401fd590
mov qword [rbp - 0x60], 0x2912f88c
add qword [rbp - 0x60], 0x1d241da
add qword [rbp - 0x60], 0x3b7c92bb
sub qword [rbp - 0x60], 0x392fafad
sub qword [rbp - 0x60], 0x22b2abfd
xor qword [rbp - 0x60], 0x424c2544
add qword [rbp - 0x60], 0x162b2f22
sub qword [rbp - 0x60], 0x5e5e8355
mov qword [rbp - 0x58], 0x7304e7e3
sub qword [rbp - 0x58], 0x2f1f0f98
sub qword [rbp - 0x58], 0x428f3d09
add qword [rbp - 0x58], 0x38c162c9
xor qword [rbp - 0x58], 0x690a96a4
xor qword [rbp - 0x58], 0x26b7a233
xor qword [rbp - 0x58], 0x75aaca93
mov byte [rbp - 0x70], 0x33
sub byte [rbp - 0x70], 7
sub byte [rbp - 0x70], 0x22
add byte [rbp - 0x70], 0x68
xor byte [rbp - 0x70], 0x52
xor byte [rbp - 0x70], 0x11
xor byte [rbp - 0x70], 0x77
xor byte [rbp - 0x70], 0x46
xchg rbx, rdx
mov rbx, qword [rsp + 0x68]
xchg rdx, rbx
cmp rdx, 0x10
jb 0x140040ac4
inc rdx
mov rcx, qword [rsp + 0x50]
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x140040abe
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x140040abe
push rdx
call 0x140bb79bb
int3
call fcn.1401fd590
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x140040b25
inc rdx
xchg rcx, r15
mov r15, qword [rsp + 0x30]
xchg r15, rcx
xchg r8, rax
mov r8, rcx
xchg r8, rax
cmp rdx, 0x1000
jb 0x140040b20
nop
add rdx, 0x49c61ecd
sub rdx, 0x49c61ea6
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x140040b20
call 0x14094cac5
int3
call fcn.1401fd590
xor al, al
jmp 0x1400405ad
xchg rdx, r15
mov r15, rax
xchg rdx, r15
lea rcx, [rbp - 0x10]
call fcn.14004c040
lea rdx, [0x140215fb8]
lea rcx, [rbp - 0x10]
call fcn.1401fe5fe
int3