Function at 0x1401fefa0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1e0]
sub rsp, 0x2e0
mov rax, qword [0x1405bdab8]
xor rax, rsp
mov qword [rbp + 0x1d0], rax
mov rsi, r8
mov rdi, rdx
mov r14, rcx
xor r13d, r13d
mov r15d, r13d
mov dword [rsp + 0x64], r13d
lea r12, vtable.google::protobuf::FieldOptions.0
cmp qword [rdx + 0x78], r13
jne 0x1401feff5
mov qword [rdx + 0x78], r12
mov rcx, qword [rcx + 0x60]
call fcn.1401f20a0
mov eax, dword [rsi + 0x10]
shr eax, 1
and al, 1
je 0x1401ff46a
mov rbx, qword [rsi + 0x20]
and rbx, 0xfffffffffffffffe
mov byte [rsp + 0x28], 1
mov dword [rsp + 0x20], r13d
mov r9, qword [rdi + 8]
mov r8, rbx
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.14020cd30
mov eax, dword [rsp + 0x70]
test eax, eax
jne 0x1401ff0b3
mov rcx, qword [r14]
cmp byte [rcx + 0x2a], r13b
je 0x1401ff08c
mov rax, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x1401ff04f
mov rax, qword [rbx]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x10]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
mov r9d, 2
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x30]
call fcn.14020dbc0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
movd eax, xmm0
test eax, eax
jne 0x1401ff0b3
mov rax, qword [rsi + 0x20]
and rax, 0xfffffffffffffffe
mov qword [rsp + 0x20], rax
mov r9d, 3
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f27c0
jmp 0x14020074d
cmp eax, 1
je 0x1401ff25d
mov r8, qword [rsi + 0x20]
and r8, 0xfffffffffffffffe
mov rcx, qword [r8 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 1
jb 0x140200795
mov rax, r8
cmp qword [r8 + 0x18], 0x10
jb 0x1401ff0ec
mov rax, qword [r8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x14049efb4]
movzx edx, byte [rsp + 0x60]
lea rcx, [rbp - 0x30]
call fcn.1401ee960
nop
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x18]
mov rax, rdx
sub rax, rcx
cmp rax, 0x18
jb 0x1401ff160
lea rax, [rcx + 0x18]
mov qword [rbp - 0x20], rax
lea rbx, [rbp - 0x30]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x30]
add rbx, rcx
mov r8d, 0x18
lea rdx, str.__is_not_a_message_type.
mov rcx, rbx
call fcn.140320ff0
mov byte [rbx + 0x18], 0
lea rax, [rbp - 0x30]
jmp 0x1401ff180
mov qword [rsp + 0x20], 0x18
lea r9, str.__is_not_a_message_type.
xor r8d, r8d
lea edx, [r8 + 0x18]
lea rcx, [rbp - 0x30]
call fcn.1400f8cc0
mov qword [rsp + 0x70], r13
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], r13
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], recv
mov byte [rax], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, 3
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x1401ff208
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ff203
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14020079b
call fcn.14031dc44
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], recv
mov byte [rsp + 0x70], 0
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x14020074d
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ff253
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007a1
call fcn.14031dc44
jmp 0x14020074d
mov rax, qword [rsp + 0x78]
mov qword [rdi + 0x50], rax
mov ebx, dword [rdi + 0x44]
mov edx, r13d
movsxd rcx, dword [rax + 0x7c]
test ecx, ecx
jle 0x1401ff2aa
mov r9, qword [rax + 0x48]
mov r8, rcx
mov rcx, r13
mov rax, r9
cmp ebx, dword [rax]
jl 0x1401ff28a
cmp ebx, dword [rax + 4]
jl 0x1401ff29a
inc edx
inc rcx
add rax, 0x10
cmp rcx, r8
jge 0x1401ff2aa
jmp 0x1401ff281
movsxd rax, edx
shl rax, 4
add rax, r9
jne 0x1401ff46a
mov rax, qword [r14]
cmp byte [rax + 0x2a], r13b
je 0x1401ff2e9
mov rax, qword [rsi + 0x20]
and rax, 0xfffffffffffffffe
mov rcx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1401ff2c8
mov rcx, qword [rax]
cmp qword [rax + 0x10], 0x21
jne 0x1401ff2e9
mov r8d, 0x21
lea rdx, str.google.protobuf.bridge.MessageSet
call fcn.1403229e0
test eax, eax
je 0x1401ff46a
lea rdx, [rbp - 0x54]
mov ecx, ebx
call fcn.140237b50
mov qword [rbp - 0x60], rax
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [rax + rcx], r13b
jne 0x1401ff300
mov dword [rbp - 0x58], ecx
mov rax, qword [rdi + 0x50]
mov rcx, qword [rax + 8]
mov rax, rcx
cmp qword [rcx + 0x18], 0x10
jb 0x1401ff321
mov rax, qword [rcx]
mov qword [rbp + 0x140], rax
mov eax, dword [rcx + 0x10]
mov dword [rbp + 0x148], eax
mov qword [rsp + 0x70], r13
mov dword [rsp + 0x78], 0xffffffff
mov qword [rbp - 0x30], r13
mov dword [rbp - 0x28], 0xffffffff
mov qword [rbp + 0x20], r13
mov dword [rbp + 0x28], 0xffffffff
mov qword [rbp + 0x50], r13
mov dword [rbp + 0x58], 0xffffffff
mov qword [rbp + 0x80], r13
mov dword [rbp + 0x88], 0xffffffff
mov qword [rbp + 0xb0], r13
mov dword [rbp + 0xb8], 0xffffffff
mov qword [rbp + 0xe0], r13
mov dword [rbp + 0xe8], 0xffffffff
mov qword [rbp + 0x110], r13
mov dword [rbp + 0x118], 0xffffffff
lea rax, [rsp + 0x70]
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x80]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x110]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
lea r8, [rbp + 0x140]
lea rdx, str.__0__does_not_declare__1_as_an_extension_number.
lea rcx, [rbp]
call fcn.1402770c0
nop
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x1401ff46a
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ff465
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007a7
call fcn.14031dc44
cmp qword [rdi + 0x58], 0
je 0x1401ff556
cmp dword [rdi + 0x3c], 1
je 0x1401ff556
mov rbx, qword [rdi + 8]
mov qword [rsp + 0x70], r13
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], recv
mov byte [rsp + 0x70], 0
mov ecx, 0x40
call fcn.14031dc78
mov qword [rbp - 0x80], 0x3b
mov qword [rbp - 0x78], 0x3f
movups xmm0, xmmword [str.Fields_of_oneofs_must_themselves_have_label_LABEL_OPTIONAL.]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x1404a0048]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x1404a0058]
movups xmmword [rax + 0x20], xmm0
movsd xmm1, qword [0x1404a0068]
movsd qword [rax + 0x30], xmm1
movzx ecx, word [0x1404a0070]
mov word [rax + 0x38], cx
movzx ecx, byte [0x1404a0072]
mov byte [rax + 0x3a], cl
mov byte [rax + 0x3b], 0
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, rsi
mov rdx, rbx
mov rcx, r14
call fcn.1401f1cd0
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x1401ff556
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ff551
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007ad
call fcn.14031dc44
mov ecx, dword [rsi + 0x10]
mov eax, ecx
shr eax, 2
and al, 1
je 0x1402000ca
cmp dword [rsi + 0x58], 0xe
je 0x1401ff578
shr ecx, 3
and cl, 1
mov dword [rbp - 0x30], r13d
je 0x1401ff57f
mov dword [rbp - 0x30], 1
mov rcx, qword [r14]
cmp byte [rcx + 0x2b], 0
jne 0x1401ff5a0
mov rax, qword [rsi + 0x40]
test rax, rax
cmovne r12, rax
cmp byte [r12 + 0x57], 0
je 0x1401ff5a0
mov r13b, 1
jmp 0x1401ff5a3
xor r13b, r13b
cmp byte [rcx + 0x29], 0
je 0x1401ff5b2
test r13b, r13b
jne 0x1401ff5b2
mov al, 1
jmp 0x1401ff5b4
xor al, al
mov byte [rsp + 0x60], al
mov r12, qword [rsi + 0x28]
and r12, 0xfffffffffffffffe
xor al, 1
mov byte [rsp + 0x28], al
mov dword [rsp + 0x20], 1
mov r9, qword [rdi + 8]
mov r8, r12
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.14020cd30
mov ebx, dword [rsp + 0x70]
test ebx, ebx
jne 0x1401ff83d
mov rcx, qword [r14]
cmp byte [rcx + 0x2a], bl
je 0x1401ff645
mov rax, r12
cmp qword [r12 + 0x18], 0x10
jb 0x1401ff605
mov rax, qword [r12]
mov qword [rsp + 0x70], rax
mov rax, qword [r12 + 0x10]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
mov r9d, dword [rbp - 0x30]
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x30]
call fcn.14020dbc0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
movd ebx, xmm0
test ebx, ebx
jne 0x1401ff83d
cmp byte [rsp + 0x60], 0
je 0x1401ff75a
mov rdx, qword [rsi + 0x28]
and rdx, 0xfffffffffffffffe
lea rcx, [rbp - 0x60]
call fcn.140153250
nop
mov rcx, qword [r14 + 8]
call fcn.1401f5910
mov qword [rdi + 0x30], rax
lea rax, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rax, qword [rbp - 0x60]
mov qword [rsp + 0x70], rax
mov rax, qword [rbp - 0x50]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
lea rdx, [rsp + 0x70]
mov rcx, qword [r14 + 8]
call fcn.1401f5bc0
mov qword [rdi + 0x80], rax
mov eax, dword [rsi + 0x10]
shr eax, 3
and al, 1
je 0x1401ff6f8
mov rax, qword [rsi + 0x30]
and rax, 0xfffffffffffffffe
mov rcx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1401ff6ca
mov rcx, qword [rax]
mov qword [rsp + 0x70], rcx
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
lea rdx, [rsp + 0x70]
mov rcx, qword [r14 + 8]
call fcn.1401f5bc0
mov qword [rdi + 0x88], rax
mov rdx, rdi
mov rcx, qword [r14 + 0x60]
call fcn.1401f2050
cmp byte [rdi + 0x43], 0
je 0x1401ff717
mov rdx, rdi
mov rcx, qword [r14 + 8]
call fcn.1401f1ef0
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x14020074d
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ff253
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14020077d
jmp 0x1401ff253
test r13b, r13b
je 0x1401ff816
xor r13d, r13d
mov qword [rbp - 0x60], r13
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x48], recv
mov byte [rbp - 0x60], r13b
lea ecx, [r13 + 0x20]
call fcn.14031dc78
mov qword [rbp - 0x50], 0x15
mov qword [rbp - 0x48], 0x1f
movups xmm0, xmmword [str.google.protobuf.Empty]
movups xmmword [rax], xmm0
mov ecx, dword [0x14049ec70]
mov dword [rax + 0x10], ecx
movzx ecx, byte [0x14049ec74]
mov byte [rax + 0x14], cl
mov byte [rax + 0x15], r13b
mov qword [rbp - 0x60], rax
mov r9b, 1
lea r8, [rbp - 0x60]
lea rdx, [rbp - 0x30]
mov rcx, r14
call fcn.140208330
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x1401ff80e
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ff809
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007b3
call fcn.14031dc44
mov ebx, dword [rsp + 0x70]
test ebx, ebx
jne 0x1401ff840
mov rax, qword [rsi + 0x28]
and rax, 0xfffffffffffffffe
mov qword [rsp + 0x20], rax
mov r9d, 2
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f27c0
jmp 0x14020074d
xor r13d, r13d
mov eax, dword [rsi + 0x10]
shr eax, 0xa
and al, 1
jne 0x1401ff85a
cmp ebx, 1
jne 0x1401ff92b
mov dword [rdi + 0x38], recv
mov rcx, rdi
call fcn.140170240
movsxd rcx, eax
lea r12, [0x14049e850]
cmp dword [r12 + rcx*4], 0xa
jne 0x1401ffbfd
cmp ebx, 1
je 0x1401ffbd8
mov r8, qword [rsi + 0x28]
and r8, 0xfffffffffffffffe
mov rcx, qword [r8 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 1
jb 0x1402007b9
mov rax, r8
cmp qword [r8 + 0x18], 0x10
jb 0x1401ff8b0
mov rax, qword [r8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x14049efb4]
movzx edx, byte [rsp + 0x60]
lea rcx, [rbp - 0x60]
call fcn.1401ee960
nop
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x48]
mov rax, rdx
sub rax, rcx
cmp rax, 0x18
jb 0x1401ffadc
lea rax, [rcx + 0x18]
mov qword [rbp - 0x50], rax
lea rbx, [rbp - 0x60]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x60]
add rbx, rcx
mov r8d, 0x18
lea rdx, str.__is_not_a_message_type.
mov rcx, rbx
call fcn.140320ff0
mov byte [rbx + 0x18], 0
lea rax, [rbp - 0x60]
jmp 0x1401ffafc
cmp ebx, 4
jne 0x1401ff93c
mov dword [rdi + 0x38], recv
jmp 0x1401ff85a
mov r8, qword [rsi + 0x28]
and r8, 0xfffffffffffffffe
mov rcx, qword [r8 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 1
jb 0x1402007bf
mov rax, r8
cmp qword [r8 + 0x18], 0x10
jb 0x1401ff96c
mov rax, qword [r8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x14049efb4]
movzx edx, byte [rsp + 0x60]
lea rcx, [rbp - 0x60]
call fcn.1401ee960
nop
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x48]
mov rax, rdx
sub rax, rcx
cmp rax, 0x10
jb 0x1401ff9e0
lea rax, [rcx + 0x10]
mov qword [rbp - 0x50], rax
lea rbx, [rbp - 0x60]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x60]
add rbx, rcx
mov r8d, reloc.WS2_32.dll_recv
lea rdx, str.__is_not_a_type.
mov rcx, rbx
call fcn.140320ff0
mov byte [rbx + 0x10], 0
lea rax, [rbp - 0x60]
jmp 0x1401ffa00
mov qword [rsp + 0x20], reloc.WS2_32.dll_recv
lea r9, str.__is_not_a_type.
xor r8d, r8d
lea edx, [r8 + 0x10]
lea rcx, [rbp - 0x60]
call fcn.1400f8cc0
mov qword [rsp + 0x70], r13
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], r13
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], recv
mov byte [rax], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, 2
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x1401ffa88
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ffa83
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007c5
call fcn.14031dc44
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], recv
mov byte [rsp + 0x70], 0
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x14020074d
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ff253
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140200783
jmp 0x1401ff253
mov qword [rsp + 0x20], 0x18
lea r9, str.__is_not_a_message_type.
xor r8d, r8d
lea edx, [r8 + 0x18]
lea rcx, [rbp - 0x60]
call fcn.1400f8cc0
mov qword [rsp + 0x70], r13
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], r13
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], recv
mov byte [rax], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, 2
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x1401ffb84
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ffb7f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007cb
call fcn.14031dc44
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], recv
mov byte [rsp + 0x70], 0
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x14020074d
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ff253
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140200789
jmp 0x1401ff253
mov rax, qword [rsp + 0x78]
mov qword [rdi + 0x68], rax
cmp byte [rdi + 0x40], 0
je 0x140200116
lea rax, str.Messages_cant_have_default_values.
mov r9d, 4
jmp 0x140200102
mov rcx, rdi
call fcn.140170240
movsxd rcx, eax
cmp dword [r12 + rcx*4], 8
jne 0x1402000c1
cmp ebx, 4
je 0x1401ffdbc
mov r8, qword [rsi + 0x28]
and r8, 0xfffffffffffffffe
mov rcx, qword [r8 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 1
jb 0x1402007d1
mov rax, r8
cmp qword [r8 + 0x18], 0x10
jb 0x1401ffc4c
mov rax, qword [r8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x14049efb4]
movzx edx, byte [rsp + 0x60]
lea rcx, [rbp - 0x60]
call fcn.1401ee960
nop
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x48]
mov rax, rdx
sub rax, rcx
cmp rax, 0x16
jb 0x1401ffcc0
lea rax, [rcx + 0x16]
mov qword [rbp - 0x50], rax
lea rbx, [rbp - 0x60]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x60]
add rbx, rcx
mov r8d, 0x16
lea rdx, str.__is_not_an_enum_type.
mov rcx, rbx
call fcn.140320ff0
mov byte [rbx + 0x16], 0
lea rax, [rbp - 0x60]
jmp 0x1401ffce0
mov qword [rsp + 0x20], 0x16
lea r9, str.__is_not_an_enum_type.
xor r8d, r8d
lea edx, [r8 + 0x16]
lea rcx, [rbp - 0x60]
call fcn.1400f8cc0
mov qword [rsp + 0x70], r13
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], r13
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], recv
mov byte [rax], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, 2
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x1401ffd68
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ffd63
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007d7
call fcn.14031dc44
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], recv
mov byte [rsp + 0x70], 0
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x14020074d
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401ff253
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14020078f
jmp 0x1401ff253
mov rax, qword [rsp + 0x78]
mov qword [rdi + 0x70], rax
mov rcx, rdi
call fcn.1402196c0
cmp byte [rax + 0x28], 0
je 0x1401ffe01
mov byte [rdi + 0x40], 0
mov rcx, rdi
call fcn.1402196c0
cmp dword [rax + 0x2c], 0
jle 0x140200116
mov rcx, rdi
call fcn.1402196c0
mov rcx, qword [rax + 0x30]
mov qword [rdi + 0x90], rcx
jmp 0x140200116
cmp byte [rdi + 0x40], 0
je 0x1401ffdd7
mov rcx, qword [rsi + 0x30]
and rcx, 0xfffffffffffffffe
call fcn.14026df50
test al, al
jne 0x1401ffe2a
lea rax, str.Default_value_for_an_enum_field_must_be_an_identifier.
mov r9d, 4
jmp 0x140200102
mov rbx, qword [rsi + 0x30]
and rbx, 0xfffffffffffffffe
mov rcx, rdi
call fcn.1402196c0
mov byte [rsp + 0x28], 1
mov dword [rsp + 0x20], r13d
mov r9, qword [rax + 8]
mov r8, rbx
lea rdx, [rsp + 0x70]
mov rcx, r14
call fcn.14020cd30
cmp dword [rsp + 0x70], 5
jne 0x1401ffe7e
mov rcx, rdi
call fcn.1402196c0
mov rcx, qword [rsp + 0x78]
cmp qword [rcx + 0x18], rax
jne 0x1401ffe7e
mov qword [rdi + 0x90], rcx
jmp 0x140200116
mov rcx, rdi
call fcn.1402196c0
mov r8, qword [rax + 8]
mov rcx, qword [r8 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 0xb
jb 0x1402007dd
mov rax, r8
cmp qword [r8 + 0x18], 0x10
jb 0x1401ffeb2
mov rax, qword [r8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], recv
lea r9, str.Enum_type__
movzx edx, byte [rsp + 0x60]
lea rcx, [rbp]
call fcn.1401ee960
nop
mov r8d, 0x16
lea rdx, str.__has_no_value_named__
lea rcx, [rbp]
call fcn.14010b180
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x20], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], recv
mov byte [rax], 0
mov r8, qword [rsi + 0x30]
and r8, 0xfffffffffffffffe
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x60]
call fcn.1401e6cb0
nop
mov r8d, 2
lea rdx, [0x14049f460]
mov rcx, rax
call fcn.14010b180
mov qword [rsp + 0x70], r13
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], r13
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], recv
mov byte [rax], 0
mov r15d, 0x7000
mov dword [rsp + 0x64], r15d
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, 4
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x1401fffd9
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401fffd4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007e3
call fcn.14031dc44
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], recv
mov byte [rsp + 0x70], 0
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x140200025
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140200020
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007e9
call fcn.14031dc44
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x48], recv
mov byte [rbp - 0x60], 0
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x140200070
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14020006b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007ef
call fcn.14031dc44
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], recv
mov byte [rbp - 0x30], 0
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x140200116
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402000ba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007f5
call fcn.14031dc44
jmp 0x140200116
lea rax, str.Field_with_primitive_type_has_type_name.
jmp 0x1402000fc
mov rcx, rdi
call fcn.140170240
movsxd rcx, eax
lea r12, [0x14049e850]
cmp dword [r12 + rcx*4], 0xa
je 0x1402000f5
mov rcx, rdi
call fcn.140170240
movsxd rcx, eax
cmp dword [r12 + rcx*4], 8
jne 0x140200116
lea rax, str.Field_with_message_or_enum_type_missing_type_name.
mov r9d, 2
mov qword [rsp + 0x20], rax
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1e10
mov rdx, rdi
mov rcx, qword [r14 + 0x60]
call fcn.1401f2050
test al, al
jne 0x1402004d9
mov rbx, qword [rdi + 0x50]
mov r8d, dword [rdi + 0x44]
mov rdx, rbx
mov rcx, qword [r14 + 0x60]
call fcn.140207e60
mov r12, rax
test rbx, rbx
jne 0x14020017b
mov qword [rsp + 0x70], r13
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], recv
mov byte [rsp + 0x70], bl
lea r8d, [rbx + 7]
lea rdx, [0x14049e708]
lea rcx, [rsp + 0x70]
call fcn.1400f6dc0
lea rax, [rsp + 0x70]
or r15d, 1
jmp 0x14020018d
mov rdx, qword [rbx + 8]
lea rcx, [rbp]
call fcn.140153250
nop
or r15d, 2
mov dword [rsp + 0x64], r15d
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.140153250
nop
test r15b, 2
je 0x1402001b3
and r15d, 0xfffffffd
lea rcx, [rbp]
call fcn.1400f6560
nop
test r15b, 1
je 0x1402001f5
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x1402001f5
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402001f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1402007fb
call fcn.14031dc44
cmp byte [rdi + 0x43], 0
je 0x140200364
mov rax, qword [r12 + 8]
mov rcx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140200211
mov rcx, qword [rax]
mov qword [rbp + 0x170], rcx
mov eax, dword [rax + 0x10]
mov dword [rbp + 0x178], eax
lea rax, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rax, qword [rbp - 0x60]
mov qword [rbp + 0x1a0], rax
mov eax, dword [rbp - 0x50]
mov dword [rbp + 0x1a8], eax
lea rdx, [rbp - 0x24]
mov ecx, dword [rdi + 0x44]
call fcn.140237b50
mov qword [rbp - 0x30], rax
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x140200256
mov dword [rbp - 0x28], ecx
mov qword [rbp + 0x140], r13
mov dword [rbp + 0x148], 0xffffffff
mov qword [rbp + 0x110], r13
mov dword [rbp + 0x118], 0xffffffff
mov qword [rbp + 0xe0], r13
mov dword [rbp + 0xe8], 0xffffffff
mov qword [rbp + 0xb0], r13
mov dword [rbp + 0xb8], 0xffffffff
mov qword [rbp + 0x80], r13
mov dword [rbp + 0x88], 0xffffffff
mov qword [rbp + 0x50], r13
mov dword [rbp + 0x58], 0xffffffff
mov qword [rbp + 0x20], r13
mov dword [rbp + 0x28], 0xffffffff
lea rax, [rbp + 0x140]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x110]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x80]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x170]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x1a0]
lea r8, [rbp - 0x30]
lea rdx, str.Extension_number__0_has_already_been_used_in___1__by_extension___2_.
lea rcx, [rsp + 0x70]
call fcn.1402770c0
nop
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
jmp 0x1402004c5
mov rax, qword [r12]
mov rcx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140200375
mov rcx, qword [rax]
mov qword [rbp + 0x50], rcx
mov eax, dword [rax + 0x10]
mov dword [rbp + 0x58], eax
lea rax, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rax, qword [rbp - 0x60]
mov qword [rbp + 0x20], rax
mov eax, dword [rbp - 0x50]
mov dword [rbp + 0x28], eax
lea rdx, [rbp - 0x24]
mov ecx, dword [rdi + 0x44]
call fcn.140237b50
mov qword [rbp - 0x30], rax
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [rax + rcx], 0
jne 0x1402003b0
mov dword [rbp - 0x28], ecx
mov qword [rbp + 0x1a0], r13
mov dword [rbp + 0x1a8], 0xffffffff
mov qword [rbp + 0x170], r13
mov dword [rbp + 0x178], 0xffffffff
mov qword [rbp + 0x140], r13
mov dword [rbp + 0x148], 0xffffffff
mov qword [rbp + 0x110], r13
mov dword [rbp + 0x118], 0xffffffff
mov qword [rbp + 0xe0], r13
mov dword [rbp + 0xe8], 0xffffffff
mov qword [rbp + 0xb0], r13
mov dword [rbp + 0xb8], 0xffffffff
mov qword [rbp + 0x80], r13
mov dword [rbp + 0x88], 0xffffffff
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x170]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x140]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x110]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x20]
lea r8, [rbp - 0x30]
lea rdx, str.Field_number__0_has_already_been_used_in___1__by_field___2_.
lea rcx, [rsp + 0x70]
call fcn.1402770c0
nop
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
lea rcx, [rsp + 0x70]
call fcn.1400f6560
nop
lea rcx, [rbp - 0x60]
jmp 0x140200748
cmp byte [rdi + 0x43], 0
je 0x14020074d
mov rdx, rdi
mov rcx, qword [r14 + 8]
call fcn.1401f1ef0
test al, al
jne 0x14020074d
mov rbx, qword [rdi + 0x50]
mov r8d, dword [rdi + 0x44]
mov rdx, rbx
mov rcx, qword [r14 + 8]
call fcn.140207800
mov r13, rax
test rbx, rbx
jne 0x140200546
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x48], recv
mov byte [rbp - 0x60], bl
mov r8d, 7
lea rdx, [0x14049e708]
lea rcx, [rbp - 0x60]
call fcn.1400f6dc0
lea rax, [rbp - 0x60]
or r15d, 4
jmp 0x14020055a
mov rdx, qword [rbx + 8]
lea rcx, [rbp - 0x30]
call fcn.140153250
nop
or r15d, 8
xor ebx, ebx
mov dword [rsp + 0x64], r15d
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.140153250
nop
test r15b, 8
je 0x140200581
and r15d, 0xfffffff7
lea rcx, [rbp - 0x30]
call fcn.1400f6560
nop
test r15b, 4
je 0x1402005c2
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x1402005c2
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1402005bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140200777
call fcn.14031dc44
mov rax, qword [r13 + 0x28]
mov rcx, qword [rax]
mov rax, rcx
cmp qword [rcx + 0x18], 0x10
jb 0x1402005d6
mov rax, qword [rcx]
mov qword [rbp + 0x80], rax
mov eax, dword [rcx + 0x10]
mov dword [rbp + 0x88], eax
mov rax, qword [r13 + 8]
mov rcx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1402005f7
mov rcx, qword [rax]
mov qword [rbp + 0x50], rcx
mov eax, dword [rax + 0x10]
mov dword [rbp + 0x58], eax
lea rax, [rsp + 0x70]
cmp qword [rbp - 0x78], 0x10
cmovae rax, qword [rsp + 0x70]
mov qword [rbp + 0x20], rax
mov eax, dword [rbp - 0x80]
mov dword [rbp + 0x28], eax
lea rdx, [rbp - 0x54]
mov ecx, dword [rdi + 0x44]
call fcn.140237b50
mov qword [rbp - 0x60], rax
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x140200632
mov dword [rbp - 0x58], ecx
mov qword [rbp + 0x1a0], rbx
mov dword [rbp + 0x1a8], 0xffffffff
mov qword [rbp + 0x170], rbx
mov dword [rbp + 0x178], 0xffffffff
mov qword [rbp + 0x140], rbx
mov dword [rbp + 0x148], 0xffffffff
mov qword [rbp + 0x110], rbx
mov dword [rbp + 0x118], 0xffffffff
mov qword [rbp + 0xe0], rbx
mov dword [rbp + 0xe8], 0xffffffff
mov qword [rbp + 0xb0], rbx
mov dword [rbp + 0xb8], 0xffffffff
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x170]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x140]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x110]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x80]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x20]
lea r8, [rbp - 0x60]
lea rdx, str.Extension_number__0_has_already_been_used_in___1__by_extension___2__defined_in__3.
lea rcx, [rbp]
call fcn.1402770c0
nop
lea rax, [rbp]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, rsi
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f5340
nop
lea rcx, [rbp]
call fcn.1400f6560
nop
lea rcx, [rsp + 0x70]
call fcn.1400f6560
mov rcx, qword [rbp + 0x1d0]
xor rcx, rsp
call fcn.14031e660
mov rbx, qword [rsp + 0x338]
add rsp, 0x2e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14032c23c
nop
call fcn.14032c23c
int3
call fcn.14032c23c
int3
call fcn.14032c23c
int3
call fcn.14032c23c
int3
call fcn.1400f6da0
nop
call fcn.14032c23c
nop
call fcn.14032c23c
int3
call fcn.14032c23c
int3
call fcn.14032c23c
int3
call fcn.14032c23c
int3
call fcn.1400f6da0
int3
call fcn.1400f6da0
nop
call fcn.14032c23c
nop
call fcn.14032c23c
nop
call fcn.1400f6da0
nop
call fcn.14032c23c
nop
call fcn.1400f6da0
nop
call fcn.14032c23c
nop
call fcn.14032c23c
nop
call fcn.14032c23c
nop
call fcn.14032c23c
nop
call fcn.14032c23c
int3