000000000041d9f0 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)>:
M0000000000000000: pushq %rbp ; 1 bytes
M0000000000000001: pushq %r14 ; 2 bytes
M0000000000000003: pushq %rbx ; 1 bytes
M0000000000000004: testq %rcx, %rcx ; 3 bytes
M0000000000000007: jle 0x41dbec <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1fc> ; 6 bytes
M000000000000000d: addq %rdx, %rcx ; 3 bytes
M0000000000000010: xorl %eax, %eax ; 2 bytes
M0000000000000012: movq %rdx, %r9 ; 3 bytes
M0000000000000015: jmp 0x41da1f <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x2f> ; 2 bytes
M0000000000000017: nopw (%rax,%rax) ; 9 bytes
M0000000000000020: incq %rax ; 3 bytes
M0000000000000023: movq %rdx, %r9 ; 3 bytes
M0000000000000026: cmpq %rcx, %rdx ; 3 bytes
M0000000000000029: jae 0x41dbee <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1fe> ; 6 bytes
M000000000000002f: cmpq %rax, %r8 ; 3 bytes
M0000000000000032: je 0x41db75 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x185> ; 6 bytes
M0000000000000038: leaq 1(%r9), %rdx ; 4 bytes
M000000000000003c: movzbl (%r9), %r10d ; 4 bytes
M0000000000000040: movq %r10, %rbx ; 3 bytes
M0000000000000043: shrq $4, %rbx ; 4 bytes
M0000000000000047: jmpq *4491496(,%rbx,8) ; 7 bytes
M000000000000004e: leaq 2(%r9), %rbx ; 4 bytes
M0000000000000052: cmpq %rcx, %rbx ; 3 bytes
M0000000000000055: ja 0x41db88 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x198> ; 6 bytes
M000000000000005b: movzbl (%rdx), %edx ; 3 bytes
M000000000000005e: andb $-64, %dl ; 3 bytes
M0000000000000061: cmpb $-128, %dl ; 3 bytes
M0000000000000064: jne 0x41dbe4 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1f4> ; 6 bytes
M000000000000006a: movq %rbx, %rdx ; 3 bytes
M000000000000006d: testb $30, %r10b ; 4 bytes
M0000000000000071: jne 0x41da10 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x20> ; 2 bytes
M0000000000000073: jmp 0x41db80 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x190> ; 5 bytes
M0000000000000078: leaq 3(%r9), %r11 ; 4 bytes
M000000000000007c: cmpq %rcx, %r11 ; 3 bytes
M000000000000007f: ja 0x41db90 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1a0> ; 6 bytes
M0000000000000085: movzbl (%rdx), %ebx ; 3 bytes
M0000000000000088: movl %ebx, %edx ; 2 bytes
M000000000000008a: andb $-64, %dl ; 3 bytes
M000000000000008d: cmpb $-128, %dl ; 3 bytes
M0000000000000090: jne 0x41dbe4 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1f4> ; 6 bytes
M0000000000000096: movzbl 2(%r9), %edx ; 5 bytes
M000000000000009b: andb $-64, %dl ; 3 bytes
M000000000000009e: cmpb $-128, %dl ; 3 bytes
M00000000000000a1: jne 0x41dbe4 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1f4> ; 6 bytes
M00000000000000a7: andl $15, %r10d ; 4 bytes
M00000000000000ab: shll $12, %r10d ; 4 bytes
M00000000000000af: andl $63, %ebx ; 3 bytes
M00000000000000b2: shll $6, %ebx ; 3 bytes
M00000000000000b5: orl %r10d, %ebx ; 3 bytes
M00000000000000b8: cmpl $2047, %ebx ; 6 bytes
M00000000000000be: jbe 0x41db80 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x190> ; 6 bytes
M00000000000000c4: andl $63488, %ebx ; 6 bytes
M00000000000000ca: movq %r11, %rdx ; 3 bytes
M00000000000000cd: cmpl $55296, %ebx ; 6 bytes
M00000000000000d3: jne 0x41da10 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x20> ; 6 bytes
M00000000000000d9: jmp 0x41dbb4 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1c4> ; 5 bytes
M00000000000000de: testb $8, %r10b ; 4 bytes
M00000000000000e2: jne 0x41dbbc <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1cc> ; 6 bytes
M00000000000000e8: leaq 4(%r9), %r11 ; 4 bytes
M00000000000000ec: cmpq %rcx, %r11 ; 3 bytes
M00000000000000ef: ja 0x41dbc4 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1d4> ; 6 bytes
M00000000000000f5: movzbl (%rdx), %ebp ; 3 bytes
M00000000000000f8: movl %ebp, %ebx ; 2 bytes
M00000000000000fa: andb $-64, %bl ; 3 bytes
M00000000000000fd: cmpb $-128, %bl ; 3 bytes
M0000000000000100: jne 0x41dbe4 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1f4> ; 6 bytes
M0000000000000106: movzbl 2(%r9), %ebx ; 5 bytes
M000000000000010b: movl %ebx, %edx ; 2 bytes
M000000000000010d: andb $-64, %dl ; 3 bytes
M0000000000000110: cmpb $-128, %dl ; 3 bytes
M0000000000000113: jne 0x41dbe4 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1f4> ; 6 bytes
M0000000000000119: movzbl 3(%r9), %r14d ; 5 bytes
M000000000000011e: movl %r14d, %edx ; 3 bytes
M0000000000000121: andb $-64, %dl ; 3 bytes
M0000000000000124: cmpb $-128, %dl ; 3 bytes
M0000000000000127: jne 0x41dbe4 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1f4> ; 6 bytes
M000000000000012d: andl $7, %r10d ; 4 bytes
M0000000000000131: shll $18, %r10d ; 4 bytes
M0000000000000135: andl $63, %ebp ; 3 bytes
M0000000000000138: shll $12, %ebp ; 3 bytes
M000000000000013b: orl %r10d, %ebp ; 3 bytes
M000000000000013e: andl $63, %ebx ; 3 bytes
M0000000000000141: shll $6, %ebx ; 3 bytes
M0000000000000144: orl %ebp, %ebx ; 2 bytes
M0000000000000146: andl $63, %r14d ; 4 bytes
M000000000000014a: leal -65536(%r14,%rbx), %ebp ; 8 bytes
M0000000000000152: movq %r11, %rdx ; 3 bytes
M0000000000000155: cmpl $1048576, %ebp ; 6 bytes
M000000000000015b: jb 0x41da10 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x20> ; 6 bytes
M0000000000000161: orl %r14d, %ebx ; 3 bytes
M0000000000000164: xorl %ecx, %ecx ; 2 bytes
M0000000000000166: cmpl $1114112, %ebx ; 6 bytes
M000000000000016c: setb %cl ; 3 bytes
M000000000000016f: leal -6(%rcx,%rcx), %ecx ; 4 bytes
M0000000000000173: movl %ecx, (%rdi) ; 2 bytes
M0000000000000175: jmp 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 2 bytes
M0000000000000177: movl $4294967294, (%rdi) ; 6 bytes
M000000000000017d: movq %r9, (%rsi) ; 3 bytes
M0000000000000180: popq %rbx ; 1 bytes
M0000000000000181: popq %r14 ; 2 bytes
M0000000000000183: popq %rbp ; 1 bytes
M0000000000000184: retq ; 1 bytes
M0000000000000185: movl $0, (%rdi) ; 6 bytes
M000000000000018b: movq %r8, %rax ; 3 bytes
M000000000000018e: jmp 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 2 bytes
M0000000000000190: movl $4294967292, (%rdi) ; 6 bytes
M0000000000000196: jmp 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 2 bytes
M0000000000000198: movl $4294967295, (%rdi) ; 6 bytes
M000000000000019e: jmp 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 2 bytes
M00000000000001a0: leaq 2(%r9), %r8 ; 4 bytes
M00000000000001a4: movl $4294967295, %ebx ; 5 bytes
M00000000000001a9: cmpq %rcx, %r8 ; 3 bytes
M00000000000001ac: jne 0x41dbb0 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1c0> ; 2 bytes
M00000000000001ae: movb (%rdx), %cl ; 2 bytes
M00000000000001b0: andb $-64, %cl ; 3 bytes
M00000000000001b3: xorl %ebx, %ebx ; 2 bytes
M00000000000001b5: cmpb $-128, %cl ; 3 bytes
M00000000000001b8: sete %bl ; 3 bytes
M00000000000001bb: addl %ebx, %ebx ; 2 bytes
M00000000000001bd: orl $-3, %ebx ; 3 bytes
M00000000000001c0: movl %ebx, (%rdi) ; 2 bytes
M00000000000001c2: jmp 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 2 bytes
M00000000000001c4: movl $4294967289, (%rdi) ; 6 bytes
M00000000000001ca: jmp 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 2 bytes
M00000000000001cc: movl $4294967291, (%rdi) ; 6 bytes
M00000000000001d2: jmp 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 2 bytes
M00000000000001d4: movl $4294967295, (%rdi) ; 6 bytes
M00000000000001da: cmpq %rcx, %rdx ; 3 bytes
M00000000000001dd: jae 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 2 bytes
M00000000000001df: movzbl (%rdx), %ebx ; 3 bytes
M00000000000001e2: andb $-64, %bl ; 3 bytes
M00000000000001e5: cmpb $-128, %bl ; 3 bytes
M00000000000001e8: jne 0x41dbe4 <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1f4> ; 2 bytes
M00000000000001ea: incq %rdx ; 3 bytes
M00000000000001ed: cmpq %rdx, %rcx ; 3 bytes
M00000000000001f0: jne 0x41dbcf <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x1df> ; 2 bytes
M00000000000001f2: jmp 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 2 bytes
M00000000000001f4: movl $4294967293, (%rdi) ; 6 bytes
M00000000000001fa: jmp 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 2 bytes
M00000000000001fc: xorl %eax, %eax ; 2 bytes
M00000000000001fe: movl $0, (%rdi) ; 6 bytes
M0000000000000204: movq %rdx, %r9 ; 3 bytes
M0000000000000207: jmp 0x41db6d <BloombergLP::bdlde::Utf8Util::advanceIfValid(int*, char const**, char const*, unsigned long, long)+0x17d> ; 5 bytes
M000000000000020c: nopl (%rax) ; 4 bytes