Function at 0x1400650c0
Capabilities:
Hash data using fnv

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x28
mov rdi, rcx
mov ebp, r9d
mov rcx, qword [rcx]
mov rbx, r8
mov rsi, rdx
cmp qword [r8 + 0x50], rcx
je 0x140028944
lea r9, str.Field_does_not_match_message_type.
mov rdx, rbx
lea r8, str.GetRepeatedEnumValue
call fcn.14002a6d0
cmp dword [rbx + 0x3c], 3
je 0x140028963
mov rcx, qword [rdi]
lea r9, str.Field_is_singular__the_method_requires_a_repeated_field.
lea r8, str.GetRepeatedEnumValue
mov rdx, rbx
call fcn.14002a6d0
mov rcx, rbx
call fcn.14002d2b0
movsxd rcx, eax
lea rax, [0x140113b90]
cmp dword [rax + rcx*4], 8
je 0x140028993
mov rcx, qword [rdi]
lea r8, str.GetRepeatedEnumValue
mov r9d, 8
mov rdx, rbx
call fcn.14002a7c0
cmp byte [rbx + 0x42], 0
je 0x1400289ae
mov ecx, dword [rdi + 0x28]
mov r8d, ebp
mov edx, dword [rbx + 0x44]
add rcx, rsi
call fcn.140043b80
mov edi, eax
jmp 0x1400289c8
mov r8, rbx
mov rdx, rsi
mov rcx, rdi
call fcn.1400245d0
mov rcx, rax
mov edx, ebp
call fcn.14003b820
mov edi, dword [rax]
mov rcx, rbx
call fcn.140074970
mov rcx, rax
mov edx, edi
add rsp, 0x28
pop rdi
pop rsi
pop rbp
pop rbx
jmp 0x140066500
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xc0
mov qword [rbp - 0x59], 0xfffffffffffffffe
mov qword [rsp + 0x118], rbx
mov rax, qword [0x14015a7a0]
xor rax, rsp
mov qword [rbp + 0x17], rax
movsxd rdi, r8d
mov rsi, rdx
mov r14, rcx
mov dword [rbp - 0x71], 0
imul r15, rdi, 0x1000193
imul rax, rdx, 0x100011b
xor r15, rax
mov rdx, qword [rcx + 0x150]
and rdx, r15
mov r8, qword [rcx + 0x138]
mov rax, rdx
add rax, rax
mov rax, qword [r8 + rax*8]
add rdx, rdx
lea r10, [rdx*8 + 8]
mov rcx, qword [rcx + 0x128]
mov r9, qword [r8 + rdx*8]
cmp r9, rcx
jne 0x140065152
mov rdx, rcx
jmp 0x140065159
mov rdx, qword [r10 + r8]
mov rdx, qword [rdx]
cmp rax, rdx
je 0x140065174
cmp qword [rax + 0x10], rsi
jne 0x140065169
cmp edi, dword [rax + 0x18]
je 0x14006516e
mov rax, qword [rax]
jmp 0x140065148
cmovne rax, rcx
jmp 0x140065177
mov rax, rcx
cmp rax, rcx
je 0x140065189
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x140065537
lea rbx, [r14 + 0x1e8]
mov rcx, rbx
call fcn.1400b155c
test eax, eax
je 0x1400651a3
mov ecx, eax
call fcn.1400b00c0
add r14, 0x160
mov qword [rbp - 0x61], r14
mov rdx, qword [r14 + 0x30]
and rdx, r15
mov r8, qword [r14 + 0x18]
mov rax, rdx
add rax, rax
mov rax, qword [r8 + rax*8]
add rdx, rdx
lea r10, [rdx*8 + 8]
mov rcx, qword [r14 + 8]
mov r9, qword [r8 + rdx*8]
cmp r9, rcx
jne 0x1400651e0
mov rdx, rcx
jmp 0x1400651e7
mov rdx, qword [r10 + r8]
mov rdx, qword [rdx]
cmp rax, rdx
je 0x140065202
cmp qword [rax + 0x10], rsi
jne 0x1400651f7
cmp edi, dword [rax + 0x18]
je 0x1400651fc
mov rax, qword [rax]
jmp 0x1400651d6
cmovne rax, rcx
jmp 0x140065205
mov rax, rcx
cmp rax, rcx
je 0x140065230
mov r14, qword [rax + 0x20]
test r14, r14
je 0x14006522c
mov rcx, rbx
call fcn.1400b1564
test eax, eax
je 0x140065227
mov ecx, eax
call fcn.1400b00c0
nop
jmp 0x140065534
mov r14, qword [rbp - 0x61]
mov rcx, rbx
call fcn.1400b1564
test eax, eax
je 0x140065244
mov ecx, eax
call fcn.1400b00c0
nop
mov qword [rbp - 0x51], rbx
mov rcx, rbx
call fcn.1400b155c
test eax, eax
je 0x14006525c
mov ecx, eax
call fcn.1400b00c0
nop
mov rdx, qword [r14 + 0x30]
and rdx, r15
mov r8, qword [r14 + 0x18]
mov rax, rdx
add rax, rax
mov rax, qword [r8 + rax*8]
add rdx, rdx
lea r10, [rdx*8 + 8]
mov rcx, qword [r14 + 8]
mov r9, qword [r8 + rdx*8]
cmp r9, rcx
jne 0x14006528e
mov rdx, rcx
jmp 0x140065295
mov rdx, qword [r10 + r8]
mov rdx, qword [rdx]
cmp rax, rdx
je 0x1400652b0
cmp qword [rax + 0x10], rsi
jne 0x1400652a5
cmp edi, dword [rax + 0x18]
je 0x1400652aa
mov rax, qword [rax]
jmp 0x140065284
cmovne rax, rcx
jmp 0x1400652b3
mov rax, rcx
cmp rax, rcx
je 0x1400652c5
mov r14, qword [rax + 0x20]
test r14, r14
jne 0x140065520
mov r8, qword [rsi]
cmp qword [r8 + 0x18], 0x10
jb 0x1400652d2
mov r8, qword [r8]
mov r9d, edi
lea rdx, str.UNKNOWN_ENUM_VALUE__s__d
lea rcx, [rbp - 0x29]
call fcn.140080180
nop
call fcn.1400750b0
mov r13, qword [rax + 0x20]
mov ecx, 0x28
call fcn.1400d4294
mov qword [rbp - 0x71], rax
lea rcx, [r13 + 0xd8]
lea rdx, [rbp - 0x71]
call fcn.140050570
mov rax, qword [r13 + 0xe0]
mov r14, qword [rax - 8]
mov ecx, 0x20
call fcn.1400d38e0
mov qword [rbp - 0x71], rax
test rax, rax
je 0x140065338
lea rdx, [rbp - 0x29]
mov rcx, rax
call fcn.140005a40
nop
mov qword [rbp - 0x71], rax
lea rcx, [r13 + 0xf0]
lea rdx, [rbp - 0x71]
call fcn.14004ff60
mov rax, qword [rbp - 0x71]
mov qword [r14], rax
mov r15, qword [rsi + 8]
movdqa xmm0, xmmword [0x140134670]
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x49], 0
mov dword [rbp - 0x71], 1
lea r12, [r15 + 0x10]
mov rdx, qword [r12]
inc rdx
lea rcx, [rbp - 0x49]
call fcn.1400133f0
cmp qword [r15 + 0x18], 0x10
jb 0x14006538d
mov r15, qword [r15]
mov r8, qword [r12]
mov rdx, r15
lea rcx, [rbp - 0x49]
call fcn.1400134e0
mov r8d, 1
lea rdx, [0x1401120a0]
lea rcx, [rbp - 0x49]
call fcn.1400134e0
lea rdx, [rbp - 0x29]
cmp qword [rbp - 0x11], 0x10
cmovae rdx, qword [rbp - 0x29]
mov r8, qword [rbp - 0x19]
lea rcx, [rbp - 0x49]
call fcn.1400134e0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 9], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 7], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov dword [rbp - 0x71], 3
lea rdx, [rbp - 9]
mov rcx, r13
call fcn.140055c40
mov qword [r14 + 8], rax
mov rax, qword [rbp + 0xf]
cmp rax, 0x10
jb 0x14006544c
inc rax
mov rcx, qword [rbp - 9]
cmp rax, 0x1000
jb 0x140065446
test cl, 0x1f
jne 0x140065440
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x140065440
sub rcx, rax
sub rcx, 8
cmp rcx, 0x1f
ja 0x140065440
mov rcx, rax
jmp 0x140065446
call fcn.1400dac14
int3
call fcn.1400d417c
nop
mov rax, qword [rbp - 0x31]
cmp rax, 0x10
jb 0x140065490
inc rax
mov rcx, qword [rbp - 0x49]
cmp rax, 0x1000
jb 0x14006548b
test cl, 0x1f
jne 0x140065485
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x140065485
sub rcx, rax
sub rcx, 8
cmp rcx, 0x1f
ja 0x140065485
mov rcx, rax
jmp 0x14006548b
call fcn.1400dac14
int3
call fcn.1400d417c
mov dword [r14 + 0x10], edi
mov qword [r14 + 0x18], rsi
call fcn.1400a6d80
mov qword [r14 + 0x20], rax
mov qword [rbp - 0x71], rsi
mov dword [rbp - 0x69], edi
movups xmm0, xmmword [rbp - 0x71]
movups xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x39], r14
movzx r9d, byte [rbp - 0x79]
lea r8, [rbp - 0x49]
lea rdx, [rbp - 0x71]
mov rcx, qword [rbp - 0x61]
call fcn.14004ad20
nop
mov rax, qword [rbp - 0x11]
cmp rax, 0x10
jb 0x14006550f
inc rax
mov rcx, qword [rbp - 0x29]
cmp rax, 0x1000
jb 0x14006550a
test cl, 0x1f
jne 0x140065504
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x140065504
sub rcx, rax
sub rcx, 8
cmp rcx, 0x1f
ja 0x140065504
mov rcx, rax
jmp 0x14006550a
call fcn.1400dac14
int3
call fcn.1400d417c
movdqa xmm0, xmmword [0x140134670]
movdqu xmmword [rbp - 0x19], xmm0
mov byte [rbp - 0x29], 0
mov rcx, rbx
call fcn.1400b1564
test eax, eax
je 0x140065534
mov ecx, eax
call fcn.1400b00c0
nop
mov rax, r14
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1400d38c0
mov rbx, qword [rsp + 0x118]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rax, rcx
mov r8d, edx
mov rcx, qword [rcx + 0x10]
mov rdx, rax
mov rcx, qword [rcx + 0x90]
jmp 0x1400650c0