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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x478]
sub rsp, 0x578
mov rax, qword [0x1405bdab8]
xor rax, rsp
mov qword [rbp + 0x460], rax
mov rdi, r9
mov qword [rbp - 0x50], r8
mov r13, rdx
mov rbx, rcx
mov qword [rsp + 0x68], rcx
test r8, r8
jne 0x1401f7c7e
mov rax, qword [rcx + 0x58]
mov rdx, qword [rax + 8]
jmp 0x1401f7c82
mov rdx, qword [r8 + 8]
mov r8, qword [r13 + 0x18]
and r8, 0xfffffffffffffffe
call fcn.1401f57a0
mov r14, rax
mov rdx, qword [r13 + 0x18]
and rdx, 0xfffffffffffffffe
mov r9, r13
mov r8, rax
mov rcx, rbx
call fcn.140216c40
mov rcx, qword [r13 + 0x18]
and rcx, 0xfffffffffffffffe
mov r15, rcx
cmp qword [rcx + 0x18], 0x10
jb 0x1401f7cbd
mov r15, qword [rcx]
mov r12, qword [rcx + 0x10]
mov rax, qword [rbx + 8]
mov qword [rsp + 0x70], rax
mov ecx, 0x20
call fcn.14031dc78
mov rbx, rax
mov qword [rbp - 0x48], rax
xor esi, esi
test rax, rax
je 0x1401f7d09
mov qword [rax + 0x18], recv
mov qword [rax], rsi
mov qword [rax + 0x10], rsi
mov byte [rax], sil
test r15, r15
je 0x1401f7d0c
mov r8, r12
mov rdx, r15
mov rcx, rax
call fcn.1400f6dc0
jmp 0x1401f7d0c
mov rbx, rsi
mov qword [rbp - 0x48], rbx
mov rcx, qword [rsp + 0x70]
add rcx, 0x130
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1401f7d30
mov qword [rdx], rbx
add qword [rcx + 8], 8
jmp 0x1401f7d39
lea r8, [rbp - 0x48]
call fcn.1401ea5e0
mov qword [rdi], rbx
mov qword [rdi + 8], r14
mov r12, qword [rsp + 0x68]
mov rax, qword [r12 + 0x58]
mov qword [rdi + 0x28], rax
mov eax, dword [r13 + 0x48]
mov dword [rdi + 0x44], eax
movzx eax, byte [rbp + 0x4e0]
mov byte [rdi + 0x43], al
movzx eax, byte [r13 + 0x50]
mov byte [rdi + 0x41], al
movabs rdx, 0x7fffffffffffffff
cmp byte [r13 + 0x50], 0
je 0x1401f7e3e
mov rax, qword [r12 + 0x58]
cmp dword [rax + 0x3c], 3
je 0x1401f7e3e
mov rcx, qword [r14 + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 0x47
jb 0x1401f918b
mov rax, r14
cmp qword [r14 + 0x18], 0x10
jb 0x1401f7dac
mov rax, qword [r14]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x47
lea r9, str.The__proto3_optionaltrue__option_may_only_be_set_on_proto3fields__not
mov r8, r14
movzx edx, byte [rsp + 0x60]
lea rcx, [rbp + 0x80]
call fcn.1401ee960
nop
lea rax, [rbp + 0x80]
mov qword [rsp + 0x20], rax
mov r9d, 2
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r12
call fcn.1401f1cd0
nop
mov rdx, qword [rbp + 0x98]
cmp rdx, 0x10
jb 0x1401f7e3e
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401f7e39
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401f9191
call fcn.14031dc44
mov rdx, qword [r13 + 0x18]
and rdx, 0xfffffffffffffffe
lea rcx, [rbp + 0x40]
call fcn.140153250
nop
lea r8, [rbp + 0x40]
mov r14, qword [rbp + 0x40]
mov r15, qword [rbp + 0x58]
cmp r15, 0x10
cmovae r8, r14
mov rbx, qword [rbp + 0x50]
add r8, rbx
lea rax, [rbp + 0x40]
cmp r15, 0x10
cmovae rax, r14
cmp rax, r8
je 0x1401f7ea4
nop dword [rax]
movzx edx, byte [rax]
lea ecx, [rdx - 0x41]
cmp cl, 0x19
ja 0x1401f7e90
add dl, 0x20
mov byte [rax], dl
inc rax
cmp rax, r8
jne 0x1401f7e80
mov r15, qword [rbp + 0x58]
mov rbx, qword [rbp + 0x50]
mov r14, qword [rbp + 0x40]
mov rax, qword [r13 + 0x18]
and rax, 0xfffffffffffffffe
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1401f7eb9
mov rdx, qword [rax]
lea rcx, [rbp + 0x40]
cmp r15, 0x10
cmovae rcx, r14
cmp rbx, qword [rax + 0x10]
jne 0x1401f7edc
mov r8, rbx
call fcn.1403229e0
test eax, eax
jne 0x1401f7edc
mov rax, qword [rdi]
jmp 0x1401f7f07
lea rax, [rbp + 0x40]
cmp r15, 0x10
cmovae rax, r14
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rbx
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x40], xmm0
lea rdx, [rbp - 0x40]
mov rcx, qword [r12 + 8]
call fcn.1401f5bc0
mov qword [rdi + 0x10], rax
mov rdx, qword [r13 + 0x18]
and rdx, 0xfffffffffffffffe
mov r8b, 1
lea rcx, [rbp + 0xb0]
call fcn.140212a20
nop
mov r14, rax
cmp qword [rax + 0x18], 0x10
jb 0x1401f7f30
mov r14, qword [rax]
mov r15, qword [rax + 0x10]
mov r12, qword [r12 + 8]
mov ecx, 0x20
call fcn.14031dc78
mov rbx, rax
mov qword [rsp + 0x70], rax
test rax, rax
je 0x1401f7f83
mov qword [rax], rsi
mov qword [rax + 0x18], recv
test r14, r14
jne 0x1401f7f6c
mov byte [rax], r14b
mov qword [rax + 0x10], rsi
mov byte [rax], r14b
jmp 0x1401f7f86
mov qword [rax + 0x10], rsi
mov byte [rax], 0
mov r8, r15
mov rdx, r14
mov rcx, rax
call fcn.1400f6dc0
jmp 0x1401f7f86
mov rbx, rsi
mov qword [rsp + 0x70], rbx
lea rcx, [r12 + 0x130]
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x1401f7fa7
mov qword [rdx], rbx
add qword [rcx + 8], 8
jmp 0x1401f7fb1
lea r8, [rsp + 0x70]
call fcn.1401ea5e0
mov qword [rdi + 0x18], rbx
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0x10
jb 0x1401f7ff6
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401f7ff1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401f9197
call fcn.14031dc44
mov eax, dword [r13 + 0x10]
shr eax, 4
and al, 1
je 0x1401f804a
mov byte [rdi + 0x42], 1
mov rax, qword [r13 + 0x38]
and rax, 0xfffffffffffffffe
mov rcx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1401f801a
mov rcx, qword [rax]
mov qword [rbp - 0x60], rcx
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x58], rax
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp - 0x80], xmm0
lea rdx, [rbp - 0x80]
mov r14, qword [rsp + 0x68]
mov rcx, qword [r14 + 8]
call fcn.1401f5bc0
mov qword [rdi + 0x20], rax
jmp 0x1401f80d3
mov byte [rdi + 0x42], 0
mov rdx, qword [r13 + 0x18]
and rdx, 0xfffffffffffffffe
lea rcx, [rbp + 0x60]
call fcn.140212bb0
nop
mov rcx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1401f806d
mov rcx, qword [rax]
mov qword [rbp - 0x60], rcx
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x58], rax
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp - 0x80], xmm0
lea rdx, [rbp - 0x80]
mov r14, qword [rsp + 0x68]
mov rcx, qword [r14 + 8]
call fcn.1401f5bc0
mov qword [rdi + 0x20], rax
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x1401f80d3
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401f80ce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401f919d
call fcn.14031dc44
mov eax, dword [r13 + 0x58]
mov dword [rdi + 0x38], eax
mov eax, dword [r13 + 0x54]
mov dword [rdi + 0x3c], eax
movabs r15, 0x7fffffffffffffff
cmp eax, 2
jne 0x1401f8286
cmp byte [rdi + 0x43], 0
je 0x1401f8286
mov r8, qword [rdi + 8]
mov rcx, qword [r8 + 0x10]
mov rax, r15
sub rax, rcx
cmp rax, 0xe
jb 0x1401f91a3
mov rax, r8
cmp qword [r8 + 0x18], 0x10
jb 0x1401f8123
mov rax, qword [r8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], recv
lea r9, str.The_extension
movzx edx, byte [rsp + 0x60]
lea rcx, [rbp + 0x20]
call fcn.1401ee960
nop
mov rcx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x38]
mov rax, rdx
sub rax, rcx
cmp rax, 0x14
jb 0x1401f8197
lea rax, [rcx + 0x14]
mov qword [rbp + 0x30], rax
lea rbx, [rbp + 0x20]
cmp rdx, 0x10
cmovae rbx, qword [rbp + 0x20]
add rbx, rcx
mov r8d, 0x14
lea rdx, str._cannot_be_required.
mov rcx, rbx
call fcn.140320ff0
mov byte [rbx + 0x14], 0
lea rax, [rbp + 0x20]
jmp 0x1401f81b7
mov qword [rsp + 0x20], 0x14
lea r9, str._cannot_be_required.
xor r8d, r8d
lea edx, [r8 + 0x14]
lea rcx, [rbp + 0x20]
call fcn.1400f8cc0
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x10], rsi
mov qword [rbp - 8], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], recv
mov byte [rax], 0
lea rax, [rbp - 0x20]
mov qword [rsp + 0x20], rax
mov r9d, 2
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x1401f823b
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401f8236
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401f91a9
call fcn.14031dc44
mov qword [rbp - 0x10], rsi
mov qword [rbp - 8], recv
mov byte [rbp - 0x20], 0
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x1401f8286
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401f8281
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401f91af
call fcn.14031dc44
mov qword [rdi + 0x50], rsi
mov qword [rdi + 0x60], rsi
mov qword [rdi + 0x68], rsi
mov qword [rdi + 0x70], rsi
mov qword [rdi + 0x80], rsi
mov qword [rdi + 0x30], rsi
mov qword [rdi + 0x90], rsi
mov qword [rdi + 0x88], rsi
mov eax, dword [r13 + 0x10]
shr eax, 3
and al, 1
mov byte [rdi + 0x40], al
mov ecx, dword [r13 + 0x10]
mov eax, ecx
shr eax, 3
and al, 1
je 0x1401f839a
cmp dword [rdi + 0x3c], 3
jne 0x1401f839a
mov rbx, qword [rdi + 8]
mov qword [rbp], rsi
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x18], recv
mov byte [rbp], 0
mov ecx, 0x30
call fcn.14031dc78
mov qword [rbp + 0x10], 0x2a
mov qword [rbp + 0x18], 0x2f
movups xmm0, xmmword [str.Repeated_fields_cant_have_default_values.]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x14049f890]
movups xmmword [rax + 0x10], xmm1
movsd xmm0, qword [0x14049f8a0]
movsd qword [rax + 0x20], xmm0
movzx ecx, word [0x14049f8a8]
mov word [rax + 0x28], cx
mov byte [rax + 0x2a], 0
mov qword [rbp], rax
lea rax, [rbp]
mov qword [rsp + 0x20], rax
mov r9d, 4
mov r8, r13
mov rdx, rbx
mov rcx, r14
call fcn.1401f1cd0
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x1401f8396
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401f8391
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401f91b5
call fcn.14031dc44
mov ecx, dword [r13 + 0x10]
mov eax, ecx
shr eax, 0xa
and al, 1
je case.default.0x1401f89fc
shr ecx, 3
and cl, 1
mov rcx, rdi
je 0x1401f89d3
mov qword [rsp + 0x68], rsi
call fcn.140170240
movsxd rcx, eax
lea rdx, [0x140000000]
mov eax, dword [rdx + rcx*4 + 0x49e850]
dec eax
cmp eax, 9
ja case.default.0x1401f83e8
cdqe
mov ecx, dword [rdx + rax*4 + 0x1f91d4]
add rcx, rdx
jmp rcx
mov rcx, qword [r13 + 0x30]
and rcx, 0xfffffffffffffffe
cmp qword [rcx + 0x18], 0x10
jb 0x1401f83fc
mov rcx, qword [rcx]
xor r8d, r8d
lea rdx, [rsp + 0x68]
call fcn.1403380b4
mov dword [rdi + 0x90], eax
jmp case.default.0x1401f83e8
mov rcx, qword [r13 + 0x30]
and rcx, 0xfffffffffffffffe
cmp qword [rcx + 0x18], 0x10
jb 0x1401f8426
mov rcx, qword [rcx]
xor r8d, r8d
lea rdx, [rsp + 0x68]
call fcn.1403380e0
mov qword [rdi + 0x90], rax
jmp case.default.0x1401f83e8
mov rcx, qword [r13 + 0x30]
and rcx, 0xfffffffffffffffe
cmp qword [rcx + 0x18], 0x10
jb 0x1401f8451
mov rcx, qword [rcx]
xor r8d, r8d
lea rdx, [rsp + 0x68]
call fcn.14033810c
mov dword [rdi + 0x90], eax
jmp case.default.0x1401f83e8
mov rcx, qword [r13 + 0x30]
and rcx, 0xfffffffffffffffe
cmp qword [rcx + 0x18], 0x10
jb 0x1401f847b
mov rcx, qword [rcx]
xor r8d, r8d
lea rdx, [rsp + 0x68]
call fcn.140338088
mov qword [rdi + 0x90], rax
jmp case.default.0x1401f83e8
mov r8, qword [r13 + 0x30]
and r8, 0xfffffffffffffffe
mov rax, r8
mov r11, qword [r8 + 0x18]
cmp r11, 0x10
jb 0x1401f84ac
mov rax, qword [r8]
mov r10, qword [r8 + 0x10]
cmp r10, 3
jne 0x1401f84e9
cmp byte [rax], 0x69
jne 0x1401f84cb
cmp byte [rax + 1], 0x6e
jne 0x1401f84cb
cmp byte [rax + 2], 0x66
jne 0x1401f84cb
mov eax, esi
jmp 0x1401f84d0
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1401f84e9
movss xmm0, dword [0x1404a16ec]
movss dword [rdi + 0x90], xmm0
jmp case.default.0x1401f83e8
mov r9, r8
cmp r11, 0x10
jb 0x1401f84f5
mov r9, qword [r8]
cmp r10, 4
jne 0x1401f8546
mov rcx, rsi
lea rdx, str._inf
nop word [rax + rax]
movzx eax, byte [r9 + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x1401f8528
cmp rcx, 4
jne 0x1401f8510
mov eax, esi
jmp 0x1401f852d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1401f8546
movss xmm0, dword [0x1404a1708]
movss dword [rdi + 0x90], xmm0
jmp case.default.0x1401f83e8
mov rax, r8
cmp r11, 0x10
jb 0x1401f8552
mov rax, qword [r8]
cmp r10, 3
jne 0x1401f858b
cmp byte [rax], 0x6e
jne 0x1401f856d
cmp byte [rax + 1], 0x61
jne 0x1401f856d
cmp byte [rax + 2], 0x6e
jne 0x1401f856d
mov eax, esi
jmp 0x1401f8572
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1401f858b
movss xmm0, dword [0x1404a16f0]
movss dword [rdi + 0x90], xmm0
jmp case.default.0x1401f83e8
cmp r11, 0x10
jb 0x1401f8594
mov r8, qword [r8]
lea rdx, [rsp + 0x68]
mov rcx, r8
call fcn.140277660
call fcn.140277670
movss dword [rdi + 0x90], xmm0
jmp case.default.0x1401f83e8
mov r8, qword [r13 + 0x30]
and r8, 0xfffffffffffffffe
mov rax, r8
mov r11, qword [r8 + 0x18]
cmp r11, 0x10
jb 0x1401f85cb
mov rax, qword [r8]
mov r10, qword [r8 + 0x10]
cmp r10, 3
jne 0x1401f8608
cmp byte [rax], 0x69
jne 0x1401f85ea
cmp byte [rax + 1], 0x6e
jne 0x1401f85ea
cmp byte [rax + 2], 0x66
jne 0x1401f85ea
mov eax, esi
jmp 0x1401f85ef
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1401f8608
movsd xmm0, qword [0x1404a16f8]
movsd qword [rdi + 0x90], xmm0
jmp case.default.0x1401f83e8
mov r9, r8
cmp r11, 0x10
jb 0x1401f8614
mov r9, qword [r8]
cmp r10, 4
jne 0x1401f8666
mov rcx, rsi
lea rdx, str._inf
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r9 + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x1401f8648
cmp rcx, 4
jne 0x1401f8630
mov eax, esi
jmp 0x1401f864d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1401f8666
movsd xmm0, qword [0x1404a1710]
movsd qword [rdi + 0x90], xmm0
jmp case.default.0x1401f83e8
mov rax, r8
cmp r11, 0x10
jb 0x1401f8672
mov rax, qword [r8]
cmp r10, 3
jne 0x1401f86ab
cmp byte [rax], 0x6e
jne 0x1401f868d
cmp byte [rax + 1], 0x61
jne 0x1401f868d
cmp byte [rax + 2], 0x6e
jne 0x1401f868d
mov eax, esi
jmp 0x1401f8692
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1401f86ab
movsd xmm0, qword [0x1404a1700]
movsd qword [rdi + 0x90], xmm0
jmp case.default.0x1401f83e8
cmp r11, 0x10
jb 0x1401f86b4
mov r8, qword [r8]
lea rdx, [rsp + 0x68]
mov rcx, r8
call fcn.140277660
movsd qword [rdi + 0x90], xmm0
jmp case.default.0x1401f83e8
mov rdx, qword [r13 + 0x30]
and rdx, 0xfffffffffffffffe
mov r8, rdx
mov r10, qword [rdx + 0x18]
cmp r10, 0x10
jb 0x1401f86e6
mov r8, qword [rdx]
mov r9, qword [rdx + 0x10]
cmp r9, 4
jne 0x1401f872e
mov rcx, rsi
lea r11, [0x140483014]
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
inc rcx
cmp al, byte [r11 + rcx - 1]
jne 0x1401f8719
cmp rcx, 4
jne 0x1401f8700
mov eax, esi
jmp 0x1401f871e
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1401f872e
mov byte [rdi + 0x90], 1
jmp case.default.0x1401f83e8
cmp r10, 0x10
jb 0x1401f8737
mov rdx, qword [rdx]
cmp r9, 5
jne 0x1401f877c
mov rcx, rsi
lea r8, [0x14048300c]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r8 + rcx - 1]
jne 0x1401f8768
cmp rcx, 5
jne 0x1401f8750
mov eax, esi
jmp 0x1401f876d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1401f877c
mov byte [rdi + 0x90], al
jmp case.default.0x1401f83e8
lea rax, str.Boolean_default_must_be_true_or_false.
mov qword [rsp + 0x20], rax
mov r9d, 4
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1e10
jmp case.default.0x1401f83e8
mov qword [rdi + 0x90], rsi
jmp case.default.0x1401f83e8
mov rbx, qword [rdi + 0x30]
test rbx, rbx
je 0x1401f8803
xor r9d, r9d
lea r8, [rsp + 0x70]
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_InitOnceBeginInitialize]
test eax, eax
je 0x1401f91bb
cmp dword [rsp + 0x70], 0
je 0x1401f8803
mov qword [rbp - 0x80], rbx
mov dword [rbp - 0x78], 4
mov rcx, rdi
call fcn.14020a0c0
nop
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_InitOnceComplete]
test eax, eax
je 0x1401f91bb
mov rdx, qword [r13 + 0x30]
and rdx, 0xfffffffffffffffe
cmp dword [rdi + 0x38], 0xc
jne 0x1401f884d
lea rcx, [rbp + 0x60]
call fcn.140238de0
nop
mov rdx, rax
lea rcx, [rbp - 0x40]
call fcn.1401e6880
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x80], xmm0
lea rdx, [rbp - 0x80]
mov rcx, qword [r14 + 8]
call fcn.1401f5bc0
mov qword [rdi + 0x90], rax
lea rcx, [rbp + 0x60]
call fcn.1400f6560
jmp case.default.0x1401f83e8
lea rcx, [rbp - 0x40]
call fcn.1401e6880
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x80], xmm0
lea rdx, [rbp - 0x80]
mov rcx, qword [r14 + 8]
call fcn.1401f5bc0
mov qword [rdi + 0x90], rax
jmp case.default.0x1401f83e8
lea rax, str.Messages_cant_have_default_values.
mov qword [rsp + 0x20], rax
mov r9d, 4
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1e10
mov byte [rdi + 0x40], 0
mov rax, rsi
xchg qword [rdi + 0x90], rax
mov rax, qword [rsp + 0x68]
test rax, rax
je case.default.0x1401f89fc
mov r8, qword [r13 + 0x30]
and r8, 0xfffffffffffffffe
mov rcx, qword [r8 + 0x10]
test rcx, rcx
je 0x1401f88ca
cmp byte [rax], 0
je case.default.0x1401f89fc
sub r15, rcx
cmp r15, 0x1e
jb 0x1401f91c1
mov rax, r8
cmp qword [r8 + 0x18], 0x10
jb 0x1401f88e4
mov rax, qword [r8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x1e
lea r9, str.Couldnt_parse_default_value__
movzx edx, byte [rsp + 0x60]
lea rcx, [rbp + 0x20]
call fcn.1401ee960
nop
mov r8d, 2
lea rdx, [0x14049f460]
lea rcx, [rbp + 0x20]
call fcn.14010b180
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x10], rsi
mov qword [rbp - 8], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x10], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], recv
mov byte [rax], 0
lea rax, [rbp - 0x20]
mov qword [rsp + 0x20], rax
mov r9d, 4
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x1401f89a7
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401f89a2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401f91c7
call fcn.14031dc44
mov qword [rbp - 0x10], rsi
mov qword [rbp - 8], recv
mov byte [rbp - 0x20], 0
mov r8, qword [rbp + 0x38]
cmp r8, 0x10
jb case.default.0x1401f89fc
inc r8
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x20]
call fcn.140147ba0
jmp case.default.0x1401f89fc
call fcn.140170240
movsxd rcx, eax
lea rdx, [0x140000000]
mov eax, dword [rdx + rcx*4 + 0x49e850]
dec eax
cmp eax, 9
ja case.default.0x1401f89fc
cdqe
mov ecx, dword [rdx + rax*4 + 0x1f91fc]
add rcx, rdx
jmp rcx
mov dword [rdi + 0x90], esi
jmp case.default.0x1401f89fc
mov qword [rdi + 0x90], rsi
jmp case.default.0x1401f89fc
mov byte [rdi + 0x90], 0
jmp case.default.0x1401f89fc
call fcn.140209430
mov qword [rdi + 0x90], rax
jmp case.default.0x1401f89fc
mov rax, rsi
xchg qword [rdi + 0x90], rax
mov eax, dword [rdi + 0x44]
test eax, eax
jg 0x1401f8a64
lea rax, str.Field_numbers_must_be_positive_integers.
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1e10
movzx ebx, byte [rbp + 0x4e0]
jmp 0x1401f8ded
movzx ebx, byte [rbp + 0x4e0]
test bl, bl
jne 0x1401f8c56
cmp eax, 0x1fffffff
jle 0x1401f8c56
lea rdx, [rbp + 0x8c]
mov ecx, 0x1fffffff
call fcn.140237b50
mov qword [rbp + 0x80], rax
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1401f8aa0
mov dword [rbp + 0x88], ecx
mov qword [rbp + 0xd0], rsi
mov dword [rbp + 0xd8], 0xffffffff
mov qword [rbp + 0x100], rsi
mov dword [rbp + 0x108], 0xffffffff
mov qword [rbp + 0x130], rsi
mov dword [rbp + 0x138], 0xffffffff
mov qword [rbp + 0x160], rsi
mov dword [rbp + 0x168], 0xffffffff
mov qword [rbp + 0x190], rsi
mov dword [rbp + 0x198], 0xffffffff
mov qword [rbp + 0x1c0], rsi
mov dword [rbp + 0x1c8], 0xffffffff
mov qword [rbp + 0x1f0], rsi
mov dword [rbp + 0x1f8], 0xffffffff
mov qword [rbp + 0x220], rsi
mov dword [rbp + 0x228], 0xffffffff
mov qword [rbp + 0x250], rsi
mov dword [rbp + 0x258], 0xffffffff
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x130]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x160]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x190]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x1c0]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x1f0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x220]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x250]
lea r8, [rbp + 0x80]
lea rdx, str.Field_numbers_cannot_be_greater_than__0.
lea rcx, [rbp + 0x60]
call fcn.1402770c0
nop
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
lea rcx, [rbp + 0x60]
call fcn.1400f6560
mov eax, dword [r13 + 0x10]
shr eax, 1
and al, 1
test al, al
je 0x1401f8c18
lea rax, str.FieldDescriptorProto.extendee_set_for_non_extension_field.
mov qword [rsp + 0x20], rax
mov r9d, 3
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1e10
mov r15, qword [rbp - 0x50]
mov qword [rdi + 0x50], r15
mov eax, dword [r13 + 0x10]
shr eax, 7
and al, 1
je 0x1401f8fe0
movsxd rcx, dword [r13 + 0x4c]
test ecx, ecx
js 0x1401f8e5f
cmp ecx, dword [r15 + 0x6c]
jge 0x1401f8e5f
lea rax, [rcx + rcx*2]
shl rax, 4
add rax, qword [r15 + 0x30]
jmp 0x1401f8fe3
add eax, 0xffffb5c8
cmp eax, 0x3e7
ja 0x1401f8ded
lea rdx, [rbp + 0x8c]
mov ecx, 0x4e1f
call fcn.140237b50
mov qword [rbp + 0x80], rax
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x1401f8c85
mov dword [rbp + 0x88], ecx
lea rdx, [rbp + 0xdc]
mov ecx, 0x4a38
call fcn.140237b50
mov qword [rbp + 0xd0], rax
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x1401f8cb3
mov dword [rbp + 0xd8], ecx
mov qword [rbp + 0x250], rsi
mov dword [rbp + 0x258], 0xffffffff
mov qword [rbp + 0x220], rsi
mov dword [rbp + 0x228], 0xffffffff
mov qword [rbp + 0x1f0], rsi
mov dword [rbp + 0x1f8], 0xffffffff
mov qword [rbp + 0x1c0], rsi
mov dword [rbp + 0x1c8], 0xffffffff
mov qword [rbp + 0x190], rsi
mov dword [rbp + 0x198], 0xffffffff
mov qword [rbp + 0x160], rsi
mov dword [rbp + 0x168], 0xffffffff
mov qword [rbp + 0x130], rsi
mov dword [rbp + 0x138], 0xffffffff
mov qword [rbp + 0x100], rsi
mov dword [rbp + 0x108], 0xffffffff
lea rax, [rbp + 0x250]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x220]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x1f0]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x1c0]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x190]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x160]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x130]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x80]
lea r8, [rbp + 0xd0]
lea rdx, str.Field_numbers__0_through__1_are_reserved_for_the_protocol_buffer_library_implementation.
lea rcx, [rbp + 0x60]
call fcn.1402770c0
nop
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
lea rcx, [rbp + 0x60]
call fcn.1400f6560
mov eax, dword [r13 + 0x10]
shr eax, 1
and al, 1
test bl, bl
je 0x1401f8bf3
test al, al
jne 0x1401f8e22
lea rax, str.FieldDescriptorProto.extendee_not_set_for_extension_field.
mov qword [rsp + 0x20], rax
mov r9d, 3
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1e10
mov r15, qword [rbp - 0x50]
mov qword [rdi + 0x60], r15
mov eax, dword [r13 + 0x10]
shr eax, 7
and al, 1
je 0x1401f8fe0
lea rax, str.FieldDescriptorProto.oneof_index_should_not_be_set_for_extensions.
mov qword [rsp + 0x20], rax
mov r9d, 2
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1e10
jmp 0x1401f8fe0
mov rax, qword [r15]
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1401f8e6f
mov rdx, qword [rax]
mov qword [rbp + 0x430], rdx
mov eax, dword [rax + 0x10]
mov dword [rbp + 0x438], eax
lea rdx, [rbp + 0x28c]
call fcn.140237b50
mov qword [rbp + 0x280], rax
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1401f8ea0
mov dword [rbp + 0x288], ecx
mov qword [rbp + 0x2b0], rsi
mov dword [rbp + 0x2b8], 0xffffffff
mov qword [rbp + 0x2e0], rsi
mov dword [rbp + 0x2e8], 0xffffffff
mov qword [rbp + 0x310], rsi
mov dword [rbp + 0x318], 0xffffffff
mov qword [rbp + 0x340], rsi
mov dword [rbp + 0x348], 0xffffffff
mov qword [rbp + 0x370], rsi
mov dword [rbp + 0x378], 0xffffffff
mov qword [rbp + 0x3a0], rsi
mov dword [rbp + 0x3a8], 0xffffffff
mov qword [rbp + 0x3d0], rsi
mov dword [rbp + 0x3d8], 0xffffffff
mov qword [rbp + 0x400], rsi
mov dword [rbp + 0x408], 0xffffffff
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x2e0]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x310]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x340]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x370]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x3a0]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3d0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x400]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x430]
lea r8, [rbp + 0x280]
lea rdx, str.FieldDescriptorProto.oneof_index__0_is_out_of_range_for_type___1_.
lea rcx, [rbp + 0xb0]
call fcn.1402770c0
nop
mov qword [rsp + 0x20], rax
mov r9d, 2
mov r8, r13
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f1cd0
nop
lea rcx, [rbp + 0xb0]
call fcn.1400f6560
mov rax, rsi
mov qword [rdi + 0x58], rax
mov qword [rdi + 0x78], rsi
mov eax, dword [r13 + 0x10]
shr eax, 5
and al, 1
je 0x1401f9124
mov qword [rbp], rsi
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x18], recv
mov byte [rbp], 0
mov r8d, 0x1c
lea rdx, str.google.protobuf.FieldOptions
lea rcx, [rbp]
call fcn.1400f6dc0
nop
mov rax, qword [r13 + 0x40]
lea rbx, vtable.google::protobuf::FieldOptions.0
test rax, rax
cmovne rbx, rax
mov dword [rsp + 0x70], 8
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], rsi
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.1402096a0
mov rdx, qword [rbp - 0x78]
cmp rdx, qword [rbp - 0x70]
je 0x1401f906e
mov dword [rdx], 8
add qword [rbp - 0x78], 4
jmp 0x1401f907c
lea r8, [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.1401eaa20
mov rdx, qword [rdi + 8]
lea rax, [rbp]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
mov r9, rbx
mov r8, rdx
mov rcx, r14
call fcn.1401e8430
nop
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x1401f90ed
mov rax, qword [rbp - 0x70]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401f90e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401f91cd
call fcn.14031dc44
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x1401f9124
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401f911f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401f9185
call fcn.14031dc44
mov dword [rbp - 0x60], 2
mov qword [rbp - 0x58], rdi
movaps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp - 0x80], xmm0
lea rax, [rbp - 0x80]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9, qword [rdi]
mov r8, r15
mov rdx, qword [rdi + 8]
mov rcx, r14
call fcn.1401f4180
nop
lea rcx, [rbp + 0x40]
call fcn.1400f6560
mov rcx, qword [rbp + 0x460]
xor rcx, rsp
call fcn.14031e660
add rsp, 0x578
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.14032c23c
nop
call fcn.1400f6da0
int3
call fcn.14032c23c
nop
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.140333208
int3
call fcn.1400f6da0
nop
call fcn.14032c23c
nop
call fcn.14032c23c
int3