Function at 0x1400809a0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x90]
sub rsp, 0x190
mov rax, qword [0x140298cb8]
xor rax, rsp
mov qword [rbp + 0x80], rax
mov r12, rcx
mov qword [rbp - 0x40], rcx
lea r8, [rcx + 0x1c8]
lea rcx, [rbp - 0x58]
call fcn.14007e5c0
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
xor r15d, r15d
mov qword [rsp + 0x38], r15
movdqu xmmword [rbp - 0x70], xmm0
mov esi, r15d
mov qword [rsp + 0x20], r15
mov qword [rbp - 0x60], r15
lea rdx, [rsp + 0x28]
mov rcx, qword [r12 + 0x28]
call fcn.14006f2e0
cmp byte [r12 + 0x51], r15b
je 0x140080b9f
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r15
lea rdx, [rsp + 0x58]
mov rcx, qword [r12 + 0x28]
call fcn.1400756d0
mov edi, r15d
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
sub rax, rdx
sar rax, 3
mov r14, qword [rbp - 0x68]
test rax, rax
je 0x140080b42
mov ebx, r15d
nop dword [rax]
mov rax, qword [rdx + rbx]
mov rcx, qword [rax + 0x50]
mov qword [rsp + 0x20], rcx
mov rdx, qword [rsp + 0x30]
cmp rdx, qword [rsp + 0x38]
je 0x140080a94
mov qword [rdx], rcx
add qword [rsp + 0x30], 8
jmp 0x140080aa3
lea r8, [rsp + 0x20]
lea rcx, [rsp + 0x28]
call fcn.14000e5a0
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + rbx]
call fcn.140194a80
mov qword [rsp + 0x20], rax
mov rdx, qword [rsp + 0x30]
cmp rdx, qword [rsp + 0x38]
je 0x140080acd
mov qword [rdx], rax
add qword [rsp + 0x30], 8
jmp 0x140080adc
lea r8, [rsp + 0x20]
lea rcx, [rsp + 0x28]
call fcn.14000e5a0
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + rbx]
call fcn.140194410
mov qword [rsp + 0x20], rax
cmp r14, rsi
je 0x140080b01
mov qword [r14], rax
add r14, 8
mov qword [rbp - 0x68], r14
jmp 0x140080b1a
lea r8, [rsp + 0x20]
mov rdx, r14
lea rcx, [rbp - 0x70]
call fcn.140006cf0
mov rsi, qword [rbp - 0x60]
mov r14, qword [rbp - 0x68]
inc edi
add rbx, 8
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
sub rcx, rdx
sar rcx, 3
movsxd rax, edi
cmp rax, rcx
jb 0x140080a70
mov qword [rsp + 0x20], rsi
lea rdx, [rsp + 0x28]
mov rcx, qword [r12 + 0x28]
call fcn.140075790
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140080ba3
mov rax, qword [rsp + 0x68]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140080b98
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140080b98
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401f41fc
jmp 0x140080ba3
mov r14, qword [rbp - 0x68]
xorps xmm0, xmm0
movss dword [rbp - 0x20], xmm0
mov qword [rbp - 0x18], r15
mov qword [rbp - 0x10], r15
mov ecx, 0x18
call fcn.1401f41c0
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp - 0x18], rax
mov qword [rbp - 8], r15
xorps xmm0, xmm0
movdqa xmmword [rbp], xmm0
mov qword [rbp + 0x10], 7
mov qword [rbp + 0x18], 8
movss xmm0, dword [0x14020afc0]
movss dword [rbp - 0x20], xmm0
mov r8, rax
mov edx, 0x10
lea rcx, [rbp - 8]
call fcn.14003d6a0
nop
mov rbx, qword [r12 + 0x28]
mov edi, r15d
cmp dword [rbx + 0x24], r15d
jle 0x140080c67
mov rsi, r15
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbx + 0x58]
mov edx, dword [rax + rsi]
mov rcx, rbx
call fcn.140194380
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x20]
call fcn.14007d060
cmp byte [rsp + 0x60], 0
je 0x140080c5c
lea rdx, [rbp - 0x20]
mov rcx, qword [rsp + 0x50]
call fcn.14008bc00
inc edi
add rsi, 4
cmp edi, dword [rbx + 0x24]
jl 0x140080c20
xor ebx, ebx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
lea ecx, [rbx + 0x60]
call fcn.1401f41c0
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x50], ebx
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x28]
sub rax, r9
sar rax, 3
movabs rcx, 0xcbf29ce484222325
movabs r10, 0x100000001b3
test rax, rax
je 0x1400810f6
mov r13d, ebx
mov qword [rbp - 0x38], rbx
nop word [rax + rax]
mov r13, qword [r9 + r13]
test r13, r13
je 0x1400810bf
mov r8, qword [r13 + 0x10]
movzx edx, r8b
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x18
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x20
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x28
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x30
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x38
xor rdx, rax
imul rdx, r10
mov rcx, qword [rbp + 0x10]
and rcx, rdx
add rcx, rcx
mov rdx, qword [rbp - 8]
mov rax, qword [rdx + rcx*8 + 8]
cmp rax, qword [rbp - 0x18]
je 0x140080d94
mov rcx, qword [rdx + rcx*8]
cmp r8, qword [rax + 0x10]
je 0x140080d97
cmp rax, rcx
je 0x140080d94
mov rax, qword [rax + 8]
cmp r8, qword [rax + 0x10]
jne 0x140080d83
jmp 0x140080d97
mov rax, rbx
test rax, rax
jne 0x1400810bf
lea r8, [r12 + 0x30]
mov rdx, r13
lea rcx, [rbp + 0x40]
call fcn.140076a00
mov rsi, rax
mov r15, qword [rsp + 0x40]
mov rbx, qword [r15 + 8]
mov qword [rsp + 0x70], rbx
xor r12d, r12d
mov dword [rsp + 0x78], r12d
mov rdi, r15
cmp byte [rbx + 0x19], r12b
jne 0x140080e0a
mov qword [rsp + 0x70], rbx
lea rcx, [rbx + 0x20]
mov rdx, rsi
call fcn.140008640
shr eax, 0x1f
test al, al
je 0x140080df6
mov dword [rsp + 0x78], r12d
mov rbx, qword [rbx + 0x10]
jmp 0x140080e04
mov dword [rsp + 0x78], 1
mov rdi, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], r12b
je 0x140080dd3
cmp byte [rdi + 0x19], r12b
jne 0x140080e27
lea rdx, [rdi + 0x20]
mov rcx, rsi
call fcn.140008640
shr eax, 0x1f
test al, al
je 0x140080f20
movabs rax, 0x2aaaaaaaaaaaaaa
cmp qword [rsp + 0x48], rax
je 0x1400814f2
lea rax, [rsp + 0x40]
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], r12
mov ecx, 0x60
call fcn.1401f41c0
mov rdi, rax
mov qword [rbp + 0x28], rax
lea rcx, [rax + 0x20]
mov qword [rbp + 0x30], rcx
mov qword [rcx], r12
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x18], r12
movups xmm0, xmmword [rsi]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rsi + 0x10]
movups xmmword [rcx + 0x10], xmm1
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
lea rbx, [rcx + 0x20]
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
mov qword [rbp + 0x38], rbx
mov qword [rbx], r12
mov qword [rbx + 8], r12
mov ecx, 0x48
call fcn.1401f41c0
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbx], rax
add rbx, 0x10
mov qword [rbp - 0x30], rbx
mov qword [rbx], r12
mov qword [rbx + 8], r12
mov ecx, 0x48
call fcn.1401f41c0
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbx], rax
mov qword [rdi], r15
mov qword [rdi + 8], r15
mov qword [rdi + 0x10], r15
mov word [rdi + 0x18], 0
mov qword [rbp + 0x28], r12
movups xmm0, xmmword [rsp + 0x70]
movaps xmmword [rbp - 0x30], xmm0
mov r8, rdi
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x40]
call fcn.140008290
mov rdi, rax
lea r12, [rdi + 0x40]
mov rdx, r13
lea rcx, [rbp + 0x60]
call fcn.14006c6e0
mov rdi, rax
mov r15, qword [r12]
mov rbx, qword [r15 + 8]
mov qword [rsp + 0x70], rbx
mov dword [rsp + 0x78], 0
mov rsi, r15
cmp byte [rbx + 0x19], 0
jne 0x140080f8b
mov qword [rsp + 0x70], rbx
lea rcx, [rbx + 0x20]
mov rdx, rdi
call fcn.140008640
shr eax, 0x1f
test al, al
je 0x140080f77
mov dword [rsp + 0x78], 0
mov rbx, qword [rbx + 0x10]
jmp 0x140080f85
mov dword [rsp + 0x78], 1
mov rsi, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x140080f51
cmp byte [rsi + 0x19], 0
jne 0x140080fab
lea rdx, [rsi + 0x20]
mov rcx, rdi
call fcn.140008640
shr eax, 0x1f
test al, al
jne 0x140080fab
xor ebx, ebx
jmp 0x140081031
movabs rax, 0x38e38e38e38e38e
cmp qword [r12 + 8], rax
je 0x1400814f8
mov qword [rsp + 0x58], r12
xor ebx, ebx
mov qword [rsp + 0x60], rbx
lea ecx, [rbx + 0x48]
call fcn.1401f41c0
nop
mov qword [rax + 0x20], rbx
mov qword [rax + 0x30], rbx
mov qword [rax + 0x38], rbx
movups xmm0, xmmword [rdi]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rax + 0x30], xmm1
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], 0xf
mov byte [rdi], bl
mov qword [rax + 0x40], rbx
mov qword [rax], r15
mov qword [rax + 8], r15
mov qword [rax + 0x10], r15
mov word [rax + 0x18], bx
mov qword [rsp + 0x60], rbx
movups xmm0, xmmword [rsp + 0x70]
movaps xmmword [rbp - 0x30], xmm0
mov r8, rax
lea rdx, [rbp - 0x30]
mov rcx, r12
call fcn.140008290
mov rsi, rax
mov qword [rsi + 0x40], r13
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x140081071
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008106b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400811d3
call fcn.1401f41fc
nop
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x1400810ac
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400810a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400811da
call fcn.1401f41fc
movabs r10, 0x100000001b3
mov r12, qword [rbp - 0x40]
mov r9, qword [rsp + 0x28]
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov r13, qword [rbp - 0x38]
add r13, 8
mov qword [rbp - 0x38], r13
mov rcx, qword [rsp + 0x30]
sub rcx, r9
sar rcx, 3
cdqe
cmp rax, rcx
movabs rcx, 0xcbf29ce484222325
jb 0x140080cd0
mov esi, ebx
mov r15, qword [rbp - 0x70]
sub r14, r15
sar r14, 3
test r14, r14
je 0x140081283
mov rdi, r15
nop
mov rbx, qword [rdi]
test rbx, rbx
je 0x140081253
mov r8, qword [rbx + 0x10]
movzx edx, r8b
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x18
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x20
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x28
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x30
movzx ecx, al
xor rdx, rcx
imul rdx, r10
mov rax, r8
shr rax, 0x38
xor rdx, rax
imul rdx, r10
mov rcx, qword [rbp + 0x10]
and rcx, rdx
add rcx, rcx
mov rdx, qword [rbp - 8]
mov rax, qword [rdx + rcx*8 + 8]
cmp rax, qword [rbp - 0x18]
je 0x1400811e1
mov rcx, qword [rdx + rcx*8]
cmp r8, qword [rax + 0x10]
je 0x1400811e3
cmp rax, rcx
je 0x1400811e1
mov rax, qword [rax + 8]
cmp r8, qword [rax + 0x10]
jne 0x1400811c2
jmp 0x1400811e3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
xor eax, eax
test rax, rax
jne 0x140081253
lea r8, [r12 + 0x30]
mov rdx, rbx
lea rcx, [rbp + 0x40]
call fcn.140076a00
nop
mov r8, rax
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x40]
call fcn.14007cea0
mov rcx, qword [rax]
add rcx, 0x40
mov rdx, rbx
call fcn.14007f0f0
nop
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x140081253
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14008124e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14008127a
call fcn.1401f41fc
inc esi
add rdi, 8
movsxd rax, esi
cmp rax, r14
jae 0x140081281
movabs rcx, 0xcbf29ce484222325
movabs r10, 0x100000001b3
jmp 0x140081110
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
xor ebx, ebx
mov rax, qword [rbp - 0x58]
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], rbx
mov rbx, qword [rsp + 0x40]
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
jne 0x140081325
nop word [rax + rax]
lea rdx, [rbx + 0x20]
lea rcx, [rsp + 0x70]
call fcn.14007f2a0
lea rcx, [rbx + 0x40]
lea r8, [r12 + 0x30]
lea rdx, [rbp - 0x58]
call fcn.14008b420
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x1400812fc
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1400812f7
cmp rbx, qword [rax + 0x10]
jne 0x1400812f7
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1400812e4
mov rbx, rax
jmp 0x14008131f
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x14008131f
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x140081310
cmp byte [rbx + 0x19], 0
je 0x1400812b0
lea rcx, [rsp + 0x70]
call fcn.14007f050
lea rdx, str.PROTOBUF_NAMESPACE_OPEN_n
lea rcx, [rbp - 0x58]
call fcn.140067810
mov rbx, qword [rsp + 0x40]
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
jne 0x1400813b5
nop dword [rax]
lea rcx, [rbx + 0x40]
lea r8, [r12 + 0x30]
lea rdx, [rbp - 0x58]
call fcn.14008b980
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x14008138e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x140081389
cmp rbx, qword [rax + 0x10]
jne 0x140081389
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140081376
mov rbx, rax
jmp 0x1400813af
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x1400813af
nop word [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x1400813a0
cmp byte [rbx + 0x19], 0
je 0x140081350
lea rdx, str.PROTOBUF_NAMESPACE_CLOSE_n
lea rcx, [rbp - 0x58]
call fcn.140067810
nop
mov r8, qword [rsp + 0x40]
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x40]
call fcn.14007c7a0
mov edx, 0x60
mov rcx, qword [rsp + 0x40]
call fcn.1401f41fc
nop
lea rcx, [rbp - 0x20]
call fcn.14007e890
nop
test r15, r15
je 0x140081442
mov rdx, qword [rsp + 0x20]
sub rdx, r15
sar rdx, 3
lea rdx, [rdx*8]
mov rax, r15
cmp rdx, 0x1000
jb 0x140081439
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140081439
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r15
call fcn.1401f41fc
nop
mov rcx, qword [rsp + 0x28]
test rcx, rcx
je 0x14008149f
mov rax, qword [rsp + 0x38]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140081488
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140081488
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401f41fc
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x38], 0
mov r8, qword [rbp - 0x50]
mov r8, qword [r8 + 8]
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x50]
call fcn.140006e90
mov edx, 0x60
mov rcx, qword [rbp - 0x50]
call fcn.1401f41fc
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.1401f42a0
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140008520
nop
call fcn.140008520
int3