Function at 0x14003b550
Capabilities:
Authenticate hmac

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
nop
mov qword [rsp - 8], rbp
sub rsp, 8
push rdi
push r12
nop
mov qword [rsp - 8], r14
sub rsp, 8
push r8
mov qword [rsp], r15
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rdi, r9
mov r14d, r8d
mov r12d, edx
mov rbx, rcx
mov r15b, 0x38
xor r15b, 0x60
xor r15b, 0xf
sub r15b, 0x50
add r15b, 0x40
sub r15b, 0x11
add r15b, 0x2e
xor r15b, 0x65
xor esi, esi
test r8d, r8d
jle 0x14003b66c
nop dword [rax]
nop dword [rax + rax]
inc qword [rbx + 0x18]
xchg r13, rax
mov r13, qword [rbx]
xchg r13, rax
cmp rax, qword [rbx + 8]
je 0x14003b5ec
movzx ecx, byte [rax]
inc rax
xchg rdx, rax
mov qword [rbx], rdx
xchg rdx, rax
jmp 0x14003b621
mov ecx, 0x38226247
sub ecx, 0xccd86a0
xor ecx, 0x2de318b6
xor ecx, 0x3fd09eff
xor ecx, 0x31d207d1
sub ecx, 0x514d593
xor ecx, 0x4e555693
add ecx, 0x8ed8ec9
add ecx, 0xa91c9ef7
mov dword [rbx + 0x10], ecx
cmp ecx, 0xffffffff
je 0x14003b6b8
mov byte [rbp + 0x70], cl
xchg rdx, r8
mov r8, qword [rdi + 8]
xchg rdx, r8
cmp rdx, qword [rdi + 0x10]
je 0x14003b64f
mov byte [rdx], cl
inc qword [rdi + 8]
jmp 0x14003b661
lea r8, [rbp + 0x70]
xchg rdi, rdx
mov rcx, rdx
xchg rdx, rdi
call fcn.140032d80
inc esi
cmp esi, r14d
jl 0x14003b5c5
movzx eax, r15b
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
nop
add rsp, 8
xchg qword [rsp - 8], r15
push rbx
push rax
push rcx
xchg qword [rsp + 0x18], r14
add rsp, 0x20
push rax
xchg qword [rsp + 8], r12
pop rax
add rsp, 8
push rdx
xchg qword [rsp + 8], rdi
add rsp, 0x10
nop
xchg qword [rsp], rbp
add rsp, 8
ret
xchg rdi, rdx
mov rdx, qword [rbx + 0x28]
xchg rdx, rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 0x32868a6d
add qword [rsp + 0x40], 0x1565293
xor qword [rsp + 0x40], 0x105b029c
add qword [rsp + 0x40], 0x386ca3db
sub qword [rsp + 0x40], 0x25af0e62
add qword [rsp + 0x40], 0x99d79af
xor qword [rsp + 0x40], 0x79eb99ec
sub qword [rsp + 0x40], 0x10dfb6b9
sub qword [rsp + 0x40], 0x3529c069
mov qword [rsp + 0x48], 0x56e159f7
xor qword [rsp + 0x48], 0x6add9ed4
add qword [rsp + 0x48], 0x13eb6b3e
sub qword [rsp + 0x48], 0x2aff132d
sub qword [rsp + 0x48], 0xfd1b0c2
add qword [rsp + 0x48], 0x317e62c3
sub qword [rsp + 0x48], 0x46d5d126
mov eax, dword [0x1400017a0]
mov dword [rsp + 0x30], eax
movzx eax, word [0x1400017a4]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x36], 0x67
sub byte [rsp + 0x36], 0x2b
xor byte [rsp + 0x36], 0x2f
add byte [rsp + 0x36], 0x3b
sub byte [rsp + 0x36], 0x17
add byte [rsp + 0x36], 0x18
xor byte [rsp + 0x36], 0x4f
movups xmmword [rsp + 0x50], xmm0
mov edx, 0x392bf2ca
xor edx, 0x24c1ee9e
add edx, 0x4e322b9b
sub edx, 0x919f699
sub edx, 0x3c365faf
add edx, 0x1bbf3163
xor edx, 0x428b232a
lea rcx, [rsp + 0x50]
call fcn.1400536a0
mov rcx, rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x60], 0x61f3aed0
sub qword [rsp + 0x60], 0x1750eb1c
sub qword [rsp + 0x60], 0x34b7838f
add qword [rsp + 0x60], 0x28b73261
sub qword [rsp + 0x60], 0x15a6167c
sub qword [rsp + 0x60], 0x27a60781
add qword [rsp + 0x60], 0xc6e9e49
xor qword [rsp + 0x60], 0x21e1468d
sub qword [rsp + 0x60], 0x2c25b448
mov qword [rsp + 0x68], 0x38da7f49
sub qword [rsp + 0x68], 0x2684d44d
xor qword [rsp + 0x68], 0x2f2013aa
xor qword [rsp + 0x68], 0xa0300b8
sub qword [rsp + 0x68], 0x624e2dd
add qword [rsp + 0x68], 0x24005808
xor qword [rsp + 0x68], 0x55522f06
movups xmm0, xmmword [0x140001948]
xchg rsi, rax
movups xmmword [rsi], xmm0
xchg rsi, 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], 0x73
add byte [rcx + 0x17], 0
sub byte [rcx + 0x17], 0x17
sub byte [rcx + 0x17], 0x25
add byte [rcx + 0x17], 0x38
xor byte [rcx + 0x17], 0x6a
sub byte [rcx + 0x17], 5
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
mov r8d, r12d
lea rdx, [rbp - 0x70]
mov rcx, rbx
call fcn.140055580
nop
mov qword [rsp + 0x20], 0x70fd7a75
xor qword [rsp + 0x20], 0x71ea2a2e
xor qword [rsp + 0x20], 0x3382226d
sub qword [rsp + 0x20], 0x2cb623c5
xor qword [rsp + 0x20], 0x3a15891c
sub qword [rsp + 0x20], 0x7477fb1
add qword [rsp + 0x20], 0x2b27735f
sub qword [rsp + 0x20], 0x13ed9f21
sub qword [rsp + 0x20], 0x4fbd1bfa
xchg rcx, rax
mov r9, rcx
xchg rcx, rax
mov r8, qword [rbx + 0x18]
mov edx, 0x68914157
xor edx, 0x214f5507
sub edx, 0x2b1770c6
add edx, 0xaa53d86
add edx, 0x18a06620
xor edx, 0x15c29245
add edx, 0x20868dbd
xor edx, 0x1ab4c2bf
xor edx, 0x62e1a1e3
lea rcx, [rbp - 0x50]
call fcn.140038c10
mov rdx, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], 0x509a2bb9
add qword [rbp - 0x80], 0x19168bcc
sub qword [rbp - 0x80], 0x271a3ad9
add qword [rbp - 0x80], 0x1b1429ac
xor qword [rbp - 0x80], 0x342c0082
sub qword [rbp - 0x80], 0x68bded83
add qword [rbp - 0x80], 0x7b0c245d
sub qword [rbp - 0x80], 0x7bd4dda7
mov qword [rbp - 0x78], 0x3c68aa38
add qword [rbp - 0x78], 0x3509713e
sub qword [rbp - 0x78], 0x36f1531a
xor qword [rbp - 0x78], 0xea9b82e
xor qword [rbp - 0x78], 0x432027b
sub qword [rbp - 0x78], 0x301b71fa
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], 0x5c
sub byte [rsp + 0x7d], 0xa
sub byte [rsp + 0x7d], 0x36
xor byte [rsp + 0x7d], 0x6a
sub byte [rsp + 0x7d], 0x5d
add byte [rsp + 0x7d], 0x3d
xor byte [rsp + 0x7d], 0x3f
sub byte [rsp + 0x7d], 0x69
mov byte [rdi + 0x28], 0x51
sub byte [rdi + 0x28], 0x35
add byte [rdi + 0x28], 0x41
xor byte [rdi + 0x28], 0x1d
sub byte [rdi + 0x28], 0x3a
xor byte [rdi + 0x28], 0x2a
xor byte [rdi + 0x28], 0x2d
cmp byte [rdi + 0x29], 0
jne 0x14003bc3f
lea rbx, [0x140004a88]
xchg rsi, rbx
mov qword [rbp - 0x30], rsi
xchg rsi, rbx
lea rcx, [rbp - 0x28]
call fcn.1401fe5f8
mov qword [rbp - 0x50], rbx
lea rcx, [rbp - 0x48]
call fcn.1401fe5f8
nop
xchg r10, rdx
mov r10, qword [rbp - 0x58]
xchg r10, rdx
cmp rdx, 0x10
jb 0x14003bad5
inc rdx
mov rcx, qword [rbp - 0x70]
xchg r12, rax
mov r12, rcx
xchg r12, rax
cmp rdx, 0x1000
jb 0x14003bad0
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xffffffffd79cf437
sub rax, 0xffffffffd79cf43f
cmp rax, 0x1f
jbe 0x14003bad0
call 0x140634988
int3
call fcn.1401fd590
mov qword [rbp - 0x60], 0x790df032
sub qword [rbp - 0x60], 0x5a1cb7f8
xor qword [rbp - 0x60], 0x6fc7778e
sub qword [rbp - 0x60], 0x4a637860
xor qword [rbp - 0x60], 0x533b57c5
xor qword [rbp - 0x60], 0x5dc907e4
add qword [rbp - 0x60], 0x39716455
sub qword [rbp - 0x60], 0x2ba0df97
sub qword [rbp - 0x60], 0x35f10c33
mov qword [rbp - 0x58], 0x2d11733a
xor qword [rbp - 0x58], 0x521f58bf
sub qword [rbp - 0x58], 0x3f0f9867
xor qword [rbp - 0x58], 0x6b6494b6
sub qword [rbp - 0x58], 0x43c954db
sub qword [rbp - 0x58], 0x10d0b2be
mov byte [rbp - 0x70], 0x7d
sub byte [rbp - 0x70], 0x49
add byte [rbp - 0x70], 5
xor byte [rbp - 0x70], 0x5e
sub byte [rbp - 0x70], 0x22
sub byte [rbp - 0x70], 0x25
xor byte [rbp - 0x70], 0x20
xchg rbx, rdx
mov rbx, qword [rsp + 0x68]
xchg rdx, rbx
cmp rdx, 0x10
jb 0x14003bbcf
inc rdx
xchg rdx, rcx
mov rdx, qword [rsp + 0x50]
xchg rcx, rdx
xchg r11, rax
mov r11, rcx
xchg r11, rax
cmp rdx, 0x1000
jb 0x14003bbc9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xfffffffff5bdae35
sub rax, 0xfffffffff5bdae3d
cmp rax, 0x1f
jbe 0x14003bbc9
push rbp
call 0x140d7252b
int3
call fcn.1401fd590
nop
xchg r12, rdx
mov r12, qword [rsp + 0x48]
xchg r12, rdx
cmp rdx, 0x10
jb 0x14003bc37
inc rdx
xchg r15, rcx
mov r15, qword [rsp + 0x30]
xchg rcx, r15
xchg r15, rax
mov r15, rcx
xchg r15, rax
cmp rdx, 0x1000
jb 0x14003bc32
neg rdx
add rdx, 0xffffffffffffffd9
neg rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
neg rax
add rax, 8
neg rax
cmp rax, 0x1f
jbe 0x14003bc32
call 0x14085e852
int3
call fcn.1401fd590
xor r15b, r15b
jmp 0x14003b66c
lea rcx, [rbp - 0x10]
call fcn.14004c040
lea rdx, [0x140215fb8]
lea rcx, [rbp - 0x10]
call fcn.1401fe5fe
int3