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

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc0
mov rbx, r8
mov rdi, rdx
mov rsi, rcx
cmp byte [rdx + 0x18], 0
je 0x14007c48d
mov r14, qword [rdi + 8]
mov r15, qword [rdi + 0x10]
mov rdx, qword [rbx + 0x30]
mov rcx, qword [rbx + 0x38]
mov rax, rdx
sub rax, rcx
cmp rax, 5
jb 0x14007c42a
cmp rdx, rcx
jb 0x14007cc49
mov rax, qword [rbx + 0x28]
mov byte [rax + rcx], 0xa
inc rcx
mov qword [rbx + 0x38], rcx
jmp 0x14007c458
mov dword [rsp + 0x41], 0
mov byte [rsp + 0x40], 0xa
lea rcx, [rsp + 0x28]
lea r8, [rsp + 0x40]
mov r9d, 1
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_bytes::h778fe9e274eae3f0
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007c4cd
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, r15d
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint32::hd5881c692a870c1f
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007c4cd
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8, r14
mov r9, r15
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_bytes::h778fe9e274eae3f0
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007c4cd
cmp byte [rdi + 0x38], 0
je 0x14007c553
mov r14, qword [rdi + 0x28]
mov r15, qword [rdi + 0x30]
mov rdx, qword [rbx + 0x30]
mov rcx, qword [rbx + 0x38]
mov rax, rdx
sub rax, rcx
cmp rax, 5
jb 0x14007c4f0
cmp rdx, rcx
jb 0x14007cc49
mov rax, qword [rbx + 0x28]
mov byte [rax + rcx], 0x42
inc rcx
mov qword [rbx + 0x38], rcx
jmp 0x14007c51e
mov ecx, dword [rsp + 0x3c]
mov dword [rsp + 0x70], ecx
movups xmm0, xmmword [rsp + 0x2c]
movaps xmmword [rsp + 0x60], xmm0
mov ecx, dword [rsp + 0x70]
mov dword [rsi + 0x14], ecx
movaps xmm0, xmmword [rsp + 0x60]
jmp 0x14007cc2e
mov dword [rsp + 0x41], 0
mov byte [rsp + 0x40], 0x42
lea rcx, [rsp + 0x28]
lea r8, [rsp + 0x40]
mov r9d, 1
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_bytes::h778fe9e274eae3f0
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007c592
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, r15d
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint32::hd5881c692a870c1f
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007c592
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8, r14
mov r9, r15
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_bytes::h778fe9e274eae3f0
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007c592
movzx ebp, byte [rdi + 0x170]
cmp bpl, 2
je 0x14007c614
mov rdx, qword [rbx + 0x30]
mov rcx, qword [rbx + 0x38]
mov rax, rdx
sub rax, rcx
cmp rax, 5
jb 0x14007c5c1
cmp rdx, rcx
jb 0x14007cc49
mov rax, qword [rbx + 0x28]
mov byte [rax + rcx], 0x50
inc rcx
mov qword [rbx + 0x38], rcx
jmp 0x14007c5f3
mov ecx, dword [rsp + 0x3c]
mov dword [rsp + 0x90], ecx
movups xmm0, xmmword [rsp + 0x2c]
movaps xmmword [rsp + 0x80], xmm0
mov ecx, dword [rsp + 0x90]
mov dword [rsi + 0x14], ecx
movaps xmm0, xmmword [rsp + 0x80]
jmp 0x14007cc2e
mov dword [rsp + 0x5c], 0
mov byte [rsp + 0x5b], 0x50
lea rcx, [rsp + 0x28]
lea r8, [rsp + 0x5b]
mov r9d, 1
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_bytes::h778fe9e274eae3f0
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cc10
test bpl, bpl
setne r8b
lea rcx, [rsp + 0x28]
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_bool_no_tag::h01c468c8cdfeb56b
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cc10
movzx ebp, byte [rdi + 0x171]
cmp bpl, 2
jne 0x14007c678
movzx ebp, byte [rdi + 0x172]
cmp bpl, 2
jne 0x14007c6be
movzx r14d, byte [rdi + 0x179]
test r14, r14
je 0x14007c753
mov rdx, qword [rbx + 0x30]
mov rcx, qword [rbx + 0x38]
mov rax, rdx
sub rax, rcx
cmp rax, 5
jb 0x14007c704
cmp rdx, rcx
jb 0x14007cc49
mov rax, qword [rbx + 0x28]
mov byte [rax + rcx], 0x48
inc rcx
mov qword [rbx + 0x38], rcx
jmp 0x14007c736
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0xa0
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint32::hd5881c692a870c1f
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cc10
test bpl, bpl
setne r8b
lea rcx, [rsp + 0x28]
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_bool_no_tag::h01c468c8cdfeb56b
mov eax, dword [rsp + 0x28]
cmp eax, 4
je 0x14007c621
jmp 0x14007cc10
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0xd8
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint32::hd5881c692a870c1f
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cc10
test bpl, bpl
setne r8b
lea rcx, [rsp + 0x28]
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_bool_no_tag::h01c468c8cdfeb56b
mov eax, dword [rsp + 0x28]
cmp eax, 4
je 0x14007c632
jmp 0x14007cc10
mov dword [rsp + 0x5c], 0
mov byte [rsp + 0x5b], 0x48
lea rcx, [rsp + 0x28]
lea r8, [rsp + 0x5b]
mov r9d, 1
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_bytes::h778fe9e274eae3f0
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cc10
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8, r14
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint64::h9ac194f1e6635634
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cc10
cmp byte [rdi + 0x58], 0
je 0x14007c802
mov r14, qword [rdi + 0x48]
mov r15, qword [rdi + 0x50]
mov rdx, qword [rbx + 0x30]
mov rcx, qword [rbx + 0x38]
mov rax, rdx
sub rax, rcx
cmp rax, 5
jb 0x14007c793
cmp rdx, rcx
jb 0x14007cc49
mov rax, qword [rbx + 0x28]
mov byte [rax + rcx], 0x5a
inc rcx
mov qword [rbx + 0x38], rcx
jmp 0x14007c7c5
mov dword [rsp + 0x41], 0
mov byte [rsp + 0x40], 0x5a
lea rcx, [rsp + 0x28]
lea r8, [rsp + 0x40]
mov r9d, 1
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_bytes::h778fe9e274eae3f0
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cb11
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, r15d
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint32::hd5881c692a870c1f
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cb11
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8, r14
mov r9, r15
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_bytes::h778fe9e274eae3f0
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cb11
movzx ebp, byte [rdi + 0x173]
cmp bpl, 2
jne 0x14007cb40
movzx ebp, byte [rdi + 0x174]
cmp bpl, 2
jne 0x14007cb86
movzx ebp, byte [rdi + 0x175]
cmp bpl, 2
jne 0x14007cbd3
movzx eax, byte [rdi + 0x176]
cmp al, 2
je 0x14007c866
test al, al
setne r9b
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x2a
call sym.protobuf::coded_output_stream::CodedOutputStream::write_bool::h7d3c7fa206e15377
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
movzx eax, byte [rdi + 0x177]
cmp al, 2
je 0x14007c897
test al, al
setne r9b
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x17
call sym.protobuf::coded_output_stream::CodedOutputStream::write_bool::h7d3c7fa206e15377
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
movzx eax, byte [rdi + 0x178]
cmp al, 2
je 0x14007c8c8
test al, al
setne r9b
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x1f
call sym.protobuf::coded_output_stream::CodedOutputStream::write_bool::h7d3c7fa206e15377
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
cmp byte [rdi + 0x78], 0
je 0x14007c8fb
mov r9, qword [rdi + 0x68]
mov rax, qword [rdi + 0x70]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x24
call sym.protobuf::coded_output_stream::CodedOutputStream::write_string::h7f64d628a5bfdb10
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
cmp byte [rdi + 0x98], 0
je 0x14007c937
mov r9, qword [rdi + 0x88]
mov rax, qword [rdi + 0x90]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x25
call sym.protobuf::coded_output_stream::CodedOutputStream::write_string::h7f64d628a5bfdb10
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
cmp byte [rdi + 0xb8], 0
je 0x14007c973
mov r9, qword [rdi + 0xa8]
mov rax, qword [rdi + 0xb0]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x27
call sym.protobuf::coded_output_stream::CodedOutputStream::write_string::h7f64d628a5bfdb10
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
cmp byte [rdi + 0xd8], 0
je 0x14007c9af
mov r9, qword [rdi + 0xc8]
mov rax, qword [rdi + 0xd0]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x28
call sym.protobuf::coded_output_stream::CodedOutputStream::write_string::h7f64d628a5bfdb10
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
cmp byte [rdi + 0xf8], 0
je 0x14007c9eb
mov r9, qword [rdi + 0xe8]
mov rax, qword [rdi + 0xf0]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x29
call sym.protobuf::coded_output_stream::CodedOutputStream::write_string::h7f64d628a5bfdb10
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
cmp byte [rdi + 0x118], 0
je 0x14007ca27
mov r9, qword [rdi + 0x108]
mov rax, qword [rdi + 0x110]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x2c
call sym.protobuf::coded_output_stream::CodedOutputStream::write_string::h7f64d628a5bfdb10
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
cmp byte [rdi + 0x138], 0
je 0x14007ca63
mov r9, qword [rdi + 0x128]
mov rax, qword [rdi + 0x130]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x2d
call sym.protobuf::coded_output_stream::CodedOutputStream::write_string::h7f64d628a5bfdb10
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
lea rcx, [rdi + 0x140]
call fcn.1400dc690
cmp rax, rdx
je 0x14007cae3
mov r14, rax
mov r15, rdx
lea r12, [rsp + 0x28]
mov rcx, r12
mov rdx, rbx
mov r8d, 0x1f3a
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint32::hd5881c692a870c1f
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
mov r8, qword [r14 + 0xb8]
mov rcx, r12
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint32::hd5881c692a870c1f
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
mov rcx, r12
mov rdx, r14
mov r8, rbx
call sym._ZN88__LT_protobuf..descriptor..UninterpretedOption_u20_as_u20_protobuf..message..Message_GT_26write_to_with_cached_sizes17ha1
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
add r14, 0xc0
cmp r14, r15
jne 0x14007ca7f
add rdi, 0x160
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8, rdi
call sym.protobuf::coded_output_stream::CodedOutputStream::write_unknown_fields::hd14043d523b275e7
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cbc5
mov eax, 4
jmp 0x14007cc32
mov ecx, dword [rsp + 0x3c]
mov dword [rsp + 0xb0], ecx
movups xmm0, xmmword [rsp + 0x2c]
movaps xmmword [rsp + 0xa0], xmm0
mov ecx, dword [rsp + 0xb0]
mov dword [rsi + 0x14], ecx
movaps xmm0, xmmword [rsp + 0xa0]
jmp 0x14007cc2e
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, pe_nt_image_headers64
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint32::hd5881c692a870c1f
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cc10
test bpl, bpl
setne r8b
lea rcx, [rsp + 0x28]
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_bool_no_tag::h01c468c8cdfeb56b
mov eax, dword [rsp + 0x28]
cmp eax, 4
je 0x14007c813
jmp 0x14007cc10
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x88
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint32::hd5881c692a870c1f
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cc10
test bpl, bpl
setne r8b
lea rcx, [rsp + 0x28]
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_bool_no_tag::h01c468c8cdfeb56b
mov eax, dword [rsp + 0x28]
cmp eax, 4
je 0x14007c824
jmp 0x14007cc10
mov ecx, dword [rsp + 0x3c]
mov dword [rsi + 0x14], ecx
movups xmm0, xmmword [rsp + 0x2c]
jmp 0x14007cc2e
lea rcx, [rsp + 0x28]
mov rdx, rbx
mov r8d, 0x90
call sym.protobuf::coded_output_stream::CodedOutputStream::write_raw_varint32::hd5881c692a870c1f
mov eax, dword [rsp + 0x28]
cmp eax, 4
jne 0x14007cc10
test bpl, bpl
setne r8b
lea rcx, [rsp + 0x28]
mov rdx, rbx
call sym.protobuf::coded_output_stream::CodedOutputStream::write_bool_no_tag::h01c468c8cdfeb56b
mov eax, dword [rsp + 0x28]
cmp eax, 4
je 0x14007c835
mov ecx, dword [rsp + 0x3c]
mov dword [rsp + 0x50], ecx
movups xmm0, xmmword [rsp + 0x2c]
movaps xmmword [rsp + 0x40], xmm0
mov ecx, dword [rsp + 0x50]
mov dword [rsi + 0x14], ecx
movaps xmm0, xmmword [rsp + 0x40]
movups xmmword [rsi + 4], xmm0
mov dword [rsi], eax
mov rax, rsi
add rsp, 0xc0
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
lea r8, [0x1402fb910]
call sym.core::slice::index::slice_start_index_len_fail::h8d3d56967d6340e8
int3