Function at 0x140217670
Capabilities:
Authenticate hmac

Disassembly:
push rbp
sub rsp, 0x2a0
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rcx
mov rax, r8
mov qword [rbp + 8], rax
mov rax, rdx
mov qword [rbp], rax
mov qword [rbp + 0x18], r8
mov qword [rbp + 0x10], rdx
lea rcx, [rbp + 0x20]
mov edx, 0xaa
mov r8d, 0xb0
call fcn.140375530
lea rax, [rbp + 0x20]
mov qword [rbp + 0xd0], 0x4d430001
mov qword [rbp + 0xd8], rax
mov qword [rbp + 0xe0], 0xb0
mov qword [rbp + 0xe8], 0
mov qword [rbp + 0xf0], 0
mov qword [rbp + 0xf8], 0
lea rax, [rbp + 0xd0]
xor ecx, ecx
mov edx, ecx
rol rdi, 3
rol rdi, 0xd
rol rdi, 0x3d
rol rdi, 0x33
xchg rbx, rbx
lea rcx, [rbp + 0x100]
mov edx, 0xaa
mov r8d, 0x40
call fcn.140375530
lea rax, [rbp + 0x100]
mov qword [rbp + 0xd0], 0x4d430001
mov qword [rbp + 0xd8], rax
mov qword [rbp + 0xe0], 0x40
mov qword [rbp + 0xe8], 0
mov qword [rbp + 0xf0], 0
mov qword [rbp + 0xf8], 0
lea rax, [rbp + 0xd0]
xor ecx, ecx
mov edx, ecx
rol rdi, 3
rol rdi, 0xd
rol rdi, 0x3d
rol rdi, 0x33
xchg rbx, rbx
lea rcx, [rbp + 0x140]
mov edx, 0xaa
mov r8d, 0x40
call fcn.140375530
mov r8, qword [rbp + 8]
lea rax, [rbp + 0x140]
mov qword [rbp + 0xd0], 0x4d430001
mov qword [rbp + 0xd8], rax
mov qword [rbp + 0xe0], 0x40
mov qword [rbp + 0xe8], 0
mov qword [rbp + 0xf0], 0
mov qword [rbp + 0xf8], 0
lea rax, [rbp + 0xd0]
xor ecx, ecx
mov edx, ecx
rol rdi, 3
rol rdi, 0xd
rol rdi, 0x3d
rol rdi, 0x33
xchg rbx, rbx
cmp r8, 0x40
ja 0x14021782e
jmp 0x14021785c
mov qword [rbp + 0x180], 0
lea rax, [rbp + 0x20]
add rax, 0x70
mov qword [rbp - 0x18], rax
jmp 0x140217a90
mov rdx, qword [rbp + 8]
mov rcx, qword [rbp]
lea r8, [rbp + 0x100]
call fcn.1401533d0
lea rcx, [rbp + 0x100]
add rcx, 0x20
xor edx, edx
mov r8d, 0x20
call fcn.140375530
jmp 0x140217812
mov rax, qword [rbp + 8]
cmp rax, 0x40
jb 0x14021786a
jmp 0x140217882
jmp 0x140217812
mov rcx, qword [rbp + 8]
lea rax, [rbp + 0x100]
mov qword [rbp - 0x20], rax
xor eax, eax
cmp rax, rcx
jbe 0x1402178a5
jmp 0x1402178a7
mov rcx, qword [rbp + 8]
mov eax, 0x40
cmp rax, rcx
je 0x140217a27
jmp 0x140217a29
mov rax, qword [rbp + 8]
cmp rax, 0x40
jbe 0x1402178c1
jmp 0x1402178c3
jmp 0x140217899
mov rdx, qword [rbp + 8]
xor eax, eax
mov ecx, eax
call fcn.140010910
mov rcx, qword [rbp + 8]
xor eax, eax
cmp rax, rcx
jbe 0x1402178eb
jmp 0x1402178ed
jmp 0x1402178b4
mov rcx, qword [rbp + 8]
mov edx, 0x40
call fcn.1400011f0
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp - 0x20]
mov rax, rcx
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rdx
cmp rax, rcx
je 0x140217926
jmp 0x140217928
jmp 0x1402178d1
mov rdx, qword [rbp + 8]
xor eax, eax
mov ecx, eax
call fcn.1400011f0
mov rcx, qword [rbp]
mov rax, qword [rbp - 0x28]
mov r9, qword [rbp - 0x30]
mov r8, rcx
add r8, r9
mov rdx, rax
add rdx, r9
cmp rax, r8
setae al
cmp rcx, rdx
setae cl
or al, cl
test al, 1
jne 0x140217970
jmp 0x140217972
jmp 0x1402178fa
lea rcx, str._memcpy_arguments_have_non_equal_lengths
mov edx, 0x28
xor eax, eax
mov r8d, eax
lea r9, [0x1403f7090]
call fcn.140001170
mov r8, qword [rbp - 0x30]
mov rdx, qword [rbp]
mov rcx, qword [rbp - 0x28]
call fcn.1403750f0
mov rax, qword [rbp + 8]
lea rcx, [rbp + 0x100]
add rcx, rax
mov qword [rbp - 0x38], rcx
cmp rax, 0x40
jbe 0x1402179a7
jmp 0x1402179a9
jmp 0x140217945
lea rcx, str._memcpy_arguments_alias
mov edx, 0x17
xor eax, eax
mov r8d, eax
lea r9, [0x1403f7090]
call fcn.140001170
mov rcx, qword [rbp + 8]
mov eax, 0x40
sub rax, rcx
mov qword [rbp - 0x40], rax
mov al, 1
test al, 1
jne 0x1402179c3
jmp 0x1402179c5
jmp 0x14021798f
mov rcx, qword [rbp + 8]
mov edx, 0x40
call fcn.140010910
mov rax, qword [rbp + 8]
cmp rax, 0x40
jbe 0x1402179e6
jmp 0x1402179e8
jmp 0x1402179b7
mov edx, 0x40
mov rcx, rdx
call fcn.1400011f0
mov rcx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x40]
xor edx, edx
call fcn.140375530
jmp 0x140217868
jmp 0x1402179d2
mov rcx, qword [rbp + 8]
mov edx, 0x40
call fcn.1400011f0
mov rcx, qword [rbp]
mov r8, rcx
add r8, 0x40
lea rdx, [rbp + 0x100]
add rdx, 0x40
lea rax, [rbp + 0x100]
cmp rax, r8
setae al
cmp rcx, rdx
setae cl
or al, cl
test al, 1
jne 0x140217a61
jmp 0x140217a63
jmp 0x1402179f6
lea rcx, str._memcpy_arguments_have_non_equal_lengths
mov edx, 0x28
xor eax, eax
mov r8d, eax
lea r9, [0x1403f7090]
call fcn.140001170
mov rdx, qword [rbp]
lea rcx, [rbp + 0x100]
mov r8d, 0x40
call fcn.1403750f0
jmp 0x140217868
jmp 0x140217a46
lea rcx, str._memcpy_arguments_alias
mov edx, 0x17
xor eax, eax
mov r8d, eax
lea r9, [0x1403f7090]
call fcn.140001170
mov qword [rbp + 0x198], 0
jmp 0x140217b7a
mov rax, qword [rbp + 0x180]
mov qword [rbp - 0x48], rax
cmp rax, 0x40
jb 0x140217ab4
jmp 0x140217ad9
mov rax, qword [rbp - 0x48]
add rax, 1
mov qword [rbp + 0x180], rax
jmp 0x140217a90
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x18]
add rcx, rax
mov qword [rbp - 0x50], rcx
mov qword [rbp + 0x188], rcx
mov qword [rbp + 0x190], rax
cmp rax, 0x40
jb 0x140217af1
jmp 0x140217af3
jmp 0x140217a80
mov rax, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x48]
mov cl, byte [rbp + rcx + 0x100]
xor cl, 0x5c
mov byte [rax], cl
jmp 0x140217aa3
jmp 0x140217adb
mov rcx, qword [rbp - 0x48]
mov edx, 0x40
call fcn.1400011f0
lea rcx, [rbp + 0x1b0]
call fcn.14015ad40
vmovdqu ymm0, ymmword [rbp + 0x1b0]
vmovdqu ymm1, ymmword [rbp + 0x1d0]
vmovdqu ymm2, ymmword [rbp + 0x1f0]
vmovdqu ymm3, ymmword [rbp + 0x200]
vmovdqu ymmword [rbp + 0x70], ymm3
vmovdqu ymmword [rbp + 0x60], ymm2
vmovdqu ymmword [rbp + 0x40], ymm1
vmovdqu ymmword [rbp + 0x20], ymm0
lea rcx, [rbp + 0x20]
mov r8d, 0x40
lea rdx, [rbp + 0x140]
vzeroupper
call fcn.14015ae40
mov rcx, qword [rbp - 0x10]
lea rdx, [rbp + 0x20]
mov r8d, 0xb0
call fcn.1403750f0
mov rax, qword [rbp - 8]
add rsp, 0x2a0
pop rbp
ret
mov rax, qword [rbp + 0x198]
mov qword [rbp - 0x58], rax
cmp rax, 0x40
jb 0x140217b9e
jmp 0x140217bc6
mov rax, qword [rbp - 0x58]
add rax, 1
mov qword [rbp + 0x198], rax
jmp 0x140217b7a
mov rax, qword [rbp - 0x58]
lea rcx, [rbp + 0x140]
add rcx, rax
mov qword [rbp - 0x60], rcx
mov qword [rbp + 0x1a0], rcx
mov qword [rbp + 0x1a8], rax
cmp rax, 0x40
jb 0x140217be1
jmp 0x140217be3
jmp 0x140217b01
mov rax, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x58]
mov cl, byte [rbp + rcx + 0x100]
xor cl, 0x36
mov byte [rax], cl
jmp 0x140217b8d
jmp 0x140217bcb
mov rcx, qword [rbp - 0x58]
mov edx, 0x40
call fcn.1400011f0
int3