14053fd99:	48 8b 49 08          	mov    0x8(%rcx),%rcx
14053fd9d:	49 2b ca             	sub    %r10,%rcx
14053fda0:	49 8b c3             	mov    %r11,%rax
14053fda3:	48 f7 e9             	imul   %rcx
14053fda6:	48 c1 fa 03          	sar    $0x3,%rdx
14053fdaa:	48 8b c2             	mov    %rdx,%rax
14053fdad:	48 c1 e8 3f          	shr    $0x3f,%rax
14053fdb1:	48 03 d0             	add    %rax,%rdx
14053fdb4:	49 b9 55 55 55 55 55 	movabs $0x555555555555555,%r9
14053fdbb:	55 55 05
14053fdbe:	49 3b d1             	cmp    %r9,%rdx
14053fdc1:	0f 84 3f 01 00 00    	je     0x14053ff06
14053fdc7:	4c 8d 6a 01          	lea    0x1(%rdx),%r13
14053fdcb:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
14053fdcf:	49 2b ca             	sub    %r10,%rcx
14053fdd2:	49 8b c3             	mov    %r11,%rax
14053fdd5:	48 f7 e9             	imul   %rcx
14053fdd8:	48 c1 fa 03          	sar    $0x3,%rdx
14053fddc:	48 8b c2             	mov    %rdx,%rax
14053fddf:	48 c1 e8 3f          	shr    $0x3f,%rax
14053fde3:	48 03 d0             	add    %rax,%rdx
14053fde6:	48 8b ca             	mov    %rdx,%rcx
14053fde9:	48 d1 e9             	shr    $1,%rcx
14053fdec:	49 8b c1             	mov    %r9,%rax
14053fdef:	48 2b c1             	sub    %rcx,%rax
14053fdf2:	48 3b d0             	cmp    %rax,%rdx
14053fdf5:	0f 87 05 01 00 00    	ja     0x14053ff00
14053fdfb:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
14053fdff:	49 8b fd             	mov    %r13,%rdi
14053fe02:	49 3b c5             	cmp    %r13,%rax
14053fe05:	48 0f 43 f8          	cmovae %rax,%rdi
14053fe09:	49 3b f9             	cmp    %r9,%rdi
14053fe0c:	0f 87 ee 00 00 00    	ja     0x14053ff00
14053fe12:	48 8d 0c 7f          	lea    (%rdi,%rdi,2),%rcx
14053fe16:	48 c1 e1 04          	shl    $0x4,%rcx
14053fe1a:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14053fe1f:	48 85 c9             	test   %rcx,%rcx
14053fe22:	75 09                	jne    0x14053fe2d
14053fe24:	33 db                	xor    %ebx,%ebx
14053fe26:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14053fe2b:	eb 45                	jmp    0x14053fe72
14053fe2d:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
14053fe34:	72 2c                	jb     0x14053fe62
14053fe36:	48 8d 41 27          	lea    0x27(%rcx),%rax
14053fe3a:	48 3b c1             	cmp    %rcx,%rax
14053fe3d:	0f 86 bd 00 00 00    	jbe    0x14053ff00
14053fe43:	48 8b c8             	mov    %rax,%rcx
14053fe46:	e8 bd b2 8d 00       	call   0x140e1b108
14053fe4b:	48 85 c0             	test   %rax,%rax
14053fe4e:	0f 84 b8 00 00 00    	je     0x14053ff0c
14053fe54:	48 8d 58 27          	lea    0x27(%rax),%rbx
14053fe58:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
14053fe5c:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
14053fe60:	eb 08                	jmp    0x14053fe6a
14053fe62:	e8 a1 b2 8d 00       	call   0x140e1b108
14053fe67:	48 8b d8             	mov    %rax,%rbx
14053fe6a:	4c 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8
14053fe71:	00
14053fe72:	48 89 9c 24 88 00 00 	mov    %rbx,0x88(%rsp)
14053fe79:	00
14053fe7a:	4f 8d 34 76          	lea    (%r14,%r14,2),%r14
14053fe7e:	49 c1 e6 04          	shl    $0x4,%r14
14053fe82:	4c 03 f3             	add    %rbx,%r14
14053fe85:	4d 8d 7e 30          	lea    0x30(%r14),%r15
14053fe89:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
14053fe8e:	4c 89 7c 24 78       	mov    %r15,0x78(%rsp)
14053fe93:	49 8b d0             	mov    %r8,%rdx
14053fe96:	49 8b ce             	mov    %r14,%rcx
14053fe99:	e8 82 23 00 00       	call   0x140542220
14053fe9e:	4c 89 74 24 78       	mov    %r14,0x78(%rsp)
14053fea3:	48 8b 56 08          	mov    0x8(%rsi),%rdx
14053fea7:	48 8b 0e             	mov    (%rsi),%rcx
14053feaa:	4c 8b ce             	mov    %rsi,%r9
14053fead:	4c 8b c3             	mov    %rbx,%r8
14053feb0:	4c 3b e2             	cmp    %rdx,%r12
14053feb3:	75 07                	jne    0x14053febc
14053feb5:	e8 46 06 00 00       	call   0x140540500
14053feba:	eb 20                	jmp    0x14053fedc
14053febc:	49 8b d4             	mov    %r12,%rdx
14053febf:	e8 9c 06 00 00       	call   0x140540560
14053fec4:	48 89 5c 24 78       	mov    %rbx,0x78(%rsp)
14053fec9:	4c 8b ce             	mov    %rsi,%r9
14053fecc:	4d 8b c7             	mov    %r15,%r8
14053fecf:	48 8b 56 08          	mov    0x8(%rsi),%rdx
14053fed3:	49 8b cc             	mov    %r12,%rcx
14053fed6:	e8 85 06 00 00       	call   0x140540560
14053fedb:	90                   	nop
14053fedc:	4c 8b cf             	mov    %rdi,%r9
14053fedf:	4d 8b c5             	mov    %r13,%r8
14053fee2:	48 8b d3             	mov    %rbx,%rdx
14053fee5:	48 8b ce             	mov    %rsi,%rcx
14053fee8:	e8 03 cb 00 00       	call   0x14054c9f0
14053feed:	49 8b c6             	mov    %r14,%rax
14053fef0:	48 83 c4 30          	add    $0x30,%rsp
14053fef4:	41 5f                	pop    %r15
14053fef6:	41 5e                	pop    %r14
14053fef8:	41 5d                	pop    %r13
14053fefa:	41 5c                	pop    %r12
14053fefc:	5f                   	pop    %rdi
14053fefd:	5e                   	pop    %rsi
14053fefe:	5b                   	pop    %rbx
14053feff:	c3                   	ret
14053ff00:	e8 8b d2 c5 ff       	call   0x14019d190
14053ff05:	cc                   	int3
14053ff06:	e8 85 d6 c5 ff       	call   0x14019d590
14053ff0b:	cc                   	int3
14053ff0c:	e8 93 a2 8e 00       	call   0x140e2a1a4
14053ff11:	cc                   	int3
14053ff12:	cc                   	int3
14053ff13:	cc                   	int3
14053ff14:	cc                   	int3
14053ff15:	cc                   	int3
14053ff16:	cc                   	int3
14053ff17:	cc                   	int3
14053ff18:	cc                   	int3
14053ff19:	cc                   	int3
14053ff1a:	cc                   	int3
14053ff1b:	cc                   	int3
14053ff1c:	cc                   	int3
14053ff1d:	cc                   	int3
14053ff1e:	cc                   	int3
14053ff1f:	cc                   	int3
14053ff20:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
14053ff25:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14053ff2a:	53                   	push   %rbx
14053ff2b:	56                   	push   %rsi
14053ff2c:	57                   	push   %rdi
14053ff2d:	41 54                	push   %r12
14053ff2f:	41 55                	push   %r13
14053ff31:	41 56                	push   %r14
14053ff33:	41 57                	push   %r15
14053ff35:	48 83 ec 40          	sub    $0x40,%rsp
14053ff39:	4c 8b e2             	mov    %rdx,%r12
14053ff3c:	48 8b f1             	mov    %rcx,%rsi
14053ff3f:	4c 8b 11             	mov    (%rcx),%r10
14053ff42:	4c 8b ca             	mov    %rdx,%r9
14053ff45:	4d 2b ca             	sub    %r10,%r9
14053ff48:	49 bb ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%r11
14053ff4f:	aa aa 2a
14053ff52:	49 8b c3             	mov    %r11,%rax
14053ff55:	49 f7 e9             	imul   %r9
14053ff58:	4c 8b f2             	mov    %rdx,%r14
14053ff5b:	49 c1 fe 03          	sar    $0x3,%r14
14053ff5f:	49 8b c6             	mov    %r14,%rax
14053ff62:	48 c1 e8 3f          	shr    $0x3f,%rax
14053ff66:	4c 03 f0             	add    %rax,%r14
14053ff69:	48 8b 49 08          	mov    0x8(%rcx),%rcx
14053ff6d:	49 2b ca             	sub    %r10,%rcx
14053ff70:	49 8b c3             	mov    %r11,%rax
14053ff73:	48 f7 e9             	imul   %rcx
14053ff76:	48 c1 fa 03          	sar    $0x3,%rdx
14053ff7a:	48 8b c2             	mov    %rdx,%rax
14053ff7d:	48 c1 e8 3f          	shr    $0x3f,%rax
14053ff81:	48 03 d0             	add    %rax,%rdx
14053ff84:	49 b9 55 55 55 55 55 	movabs $0x555555555555555,%r9
14053ff8b:	55 55 05
14053ff8e:	49 3b d1             	cmp    %r9,%rdx
14053ff91:	0f 84 5f 01 00 00    	je     0x1405400f6
14053ff97:	4c 8d 6a 01          	lea    0x1(%rdx),%r13
14053ff9b:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
14053ff9f:	49 2b ca             	sub    %r10,%rcx
14053ffa2:	49 8b c3             	mov    %r11,%rax
14053ffa5:	48 f7 e9             	imul   %rcx
14053ffa8:	48 c1 fa 03          	sar    $0x3,%rdx
14053ffac:	48 8b c2             	mov    %rdx,%rax
14053ffaf:	48 c1 e8 3f          	shr    $0x3f,%rax
14053ffb3:	48 03 d0             	add    %rax,%rdx
14053ffb6:	48 8b ca             	mov    %rdx,%rcx
14053ffb9:	48 d1 e9             	shr    $1,%rcx
14053ffbc:	49 8b c1             	mov    %r9,%rax
14053ffbf:	48 2b c1             	sub    %rcx,%rax
14053ffc2:	48 3b d0             	cmp    %rax,%rdx
14053ffc5:	0f 87 25 01 00 00    	ja     0x1405400f0
14053ffcb:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
14053ffcf:	49 8b fd             	mov    %r13,%rdi
14053ffd2:	49 3b c5             	cmp    %r13,%rax
14053ffd5:	48 0f 43 f8          	cmovae %rax,%rdi
14053ffd9:	49 3b f9             	cmp    %r9,%rdi
14053ffdc:	0f 87 0e 01 00 00    	ja     0x1405400f0
14053ffe2:	48 8d 0c 7f          	lea    (%rdi,%rdi,2),%rcx
14053ffe6:	48 c1 e1 04          	shl    $0x4,%rcx
14053ffea:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14053ffef:	48 85 c9             	test   %rcx,%rcx
14053fff2:	75 09                	jne    0x14053fffd
14053fff4:	33 db                	xor    %ebx,%ebx
14053fff6:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14053fffb:	eb 45                	jmp    0x140540042
14053fffd:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
140540004:	72 2c                	jb     0x140540032
140540006:	48 8d 41 27          	lea    0x27(%rcx),%rax
14054000a:	48 3b c1             	cmp    %rcx,%rax
14054000d:	0f 86 dd 00 00 00    	jbe    0x1405400f0
140540013:	48 8b c8             	mov    %rax,%rcx
140540016:	e8 ed b0 8d 00       	call   0x140e1b108
14054001b:	48 85 c0             	test   %rax,%rax
14054001e:	0f 84 d8 00 00 00    	je     0x1405400fc
140540024:	48 8d 58 27          	lea    0x27(%rax),%rbx
140540028:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
14054002c:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
140540030:	eb 08                	jmp    0x14054003a
140540032:	e8 d1 b0 8d 00       	call   0x140e1b108
140540037:	48 8b d8             	mov    %rax,%rbx
14054003a:	4c 8b 84 24 90 00 00 	mov    0x90(%rsp),%r8
140540041:	00
140540042:	48 89 9c 24 98 00 00 	mov    %rbx,0x98(%rsp)
140540049:	00
14054004a:	4f 8d 34 76          	lea    (%r14,%r14,2),%r14
14054004e:	49 c1 e6 04          	shl    $0x4,%r14
140540052:	4c 03 f3             	add    %rbx,%r14
140540055:	4d 8d 7e 30          	lea    0x30(%r14),%r15
140540059:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
14054005e:	4c 89 bc 24 88 00 00 	mov    %r15,0x88(%rsp)
140540065:	00
140540066:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
14054006b:	41 c6 46 28 ff       	movb   $0xff,0x28(%r14)
140540070:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
140540075:	49 0f be 48 28       	movsbq 0x28(%r8),%rcx
14054007a:	48 ff c1             	inc    %rcx
14054007d:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140540082:	e8 d9 09 00 00       	call   0x140540a60
140540087:	90                   	nop
140540088:	4c 89 b4 24 88 00 00 	mov    %r14,0x88(%rsp)
14054008f:	00
140540090:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140540094:	48 8b 0e             	mov    (%rsi),%rcx
140540097:	4c 8b ce             	mov    %rsi,%r9
14054009a:	4c 8b c3             	mov    %rbx,%r8
14054009d:	4c 3b e2             	cmp    %rdx,%r12
1405400a0:	75 07                	jne    0x1405400a9
1405400a2:	e8 59 04 00 00       	call   0x140540500
1405400a7:	eb 23                	jmp    0x1405400cc
1405400a9:	49 8b d4             	mov    %r12,%rdx
1405400ac:	e8 af 04 00 00       	call   0x140540560
1405400b1:	48 89 9c 24 88 00 00 	mov    %rbx,0x88(%rsp)
1405400b8:	00
1405400b9:	4c 8b ce             	mov    %rsi,%r9
1405400bc:	4d 8b c7             	mov    %r15,%r8
1405400bf:	48 8b 56 08          	mov    0x8(%rsi),%rdx
1405400c3:	49 8b cc             	mov    %r12,%rcx
1405400c6:	e8 95 04 00 00       	call   0x140540560
1405400cb:	90                   	nop
1405400cc:	4c 8b cf             	mov    %rdi,%r9
1405400cf:	4d 8b c5             	mov    %r13,%r8
1405400d2:	48 8b d3             	mov    %rbx,%rdx
1405400d5:	48 8b ce             	mov    %rsi,%rcx
1405400d8:	e8 13 c9 00 00       	call   0x14054c9f0
1405400dd:	49 8b c6             	mov    %r14,%rax
1405400e0:	48 83 c4 40          	add    $0x40,%rsp
1405400e4:	41 5f                	pop    %r15
1405400e6:	41 5e                	pop    %r14
1405400e8:	41 5d                	pop    %r13
1405400ea:	41 5c                	pop    %r12
1405400ec:	5f                   	pop    %rdi
1405400ed:	5e                   	pop    %rsi
1405400ee:	5b                   	pop    %rbx
1405400ef:	c3                   	ret
1405400f0:	e8 9b d0 c5 ff       	call   0x14019d190
1405400f5:	cc                   	int3
1405400f6:	e8 95 d4 c5 ff       	call   0x14019d590
1405400fb:	cc                   	int3
1405400fc:	e8 a3 a0 8e 00       	call   0x140e2a1a4
140540101:	cc                   	int3
140540102:	cc                   	int3
140540103:	cc                   	int3
140540104:	cc                   	int3
140540105:	cc                   	int3
140540106:	cc                   	int3
140540107:	cc                   	int3
140540108:	cc                   	int3
140540109:	cc                   	int3
14054010a:	cc                   	int3
14054010b:	cc                   	int3
14054010c:	cc                   	int3
14054010d:	cc                   	int3
14054010e:	cc                   	int3
14054010f:	cc                   	int3
140540110:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140540115:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14054011a:	57                   	push   %rdi
14054011b:	48 83 ec 20          	sub    $0x20,%rsp
14054011f:	48 8b f1             	mov    %rcx,%rsi
140540122:	48 8b 42 08          	mov    0x8(%rdx),%rax
140540126:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
14054012d:	48 8b 1a             	mov    (%rdx),%rbx
140540130:	48 85 db             	test   %rbx,%rbx
140540133:	74 30                	je     0x140540165
140540135:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
14054013c:	00 00 00 00
140540140:	48 8b 3b             	mov    (%rbx),%rdi
140540143:	48 8d 53 10          	lea    0x10(%rbx),%rdx
140540147:	48 8b ce             	mov    %rsi,%rcx
14054014a:	e8 b1 0d 00 00       	call   0x140540f00
14054014f:	ba 38 00 00 00       	mov    $0x38,%edx
140540154:	48 8b cb             	mov    %rbx,%rcx
140540157:	e8 e8 af 8d 00       	call   0x140e1b144
14054015c:	90                   	nop
14054015d:	48 8b df             	mov    %rdi,%rbx
140540160:	48 85 ff             	test   %rdi,%rdi
140540163:	75 db                	jne    0x140540140
140540165:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14054016a:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14054016f:	48 83 c4 20          	add    $0x20,%rsp
140540173:	5f                   	pop    %rdi
140540174:	c3                   	ret
140540175:	cc                   	int3
140540176:	cc                   	int3
140540177:	cc                   	int3
140540178:	cc                   	int3
140540179:	cc                   	int3
14054017a:	cc                   	int3
14054017b:	cc                   	int3
14054017c:	cc                   	int3
14054017d:	cc                   	int3
14054017e:	cc                   	int3
14054017f:	cc                   	int3
140540180:	49 3b d0             	cmp    %r8,%rdx
140540183:	0f 84 9f 02 00 00    	je     0x140540428
140540189:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14054018e:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140540193:	55                   	push   %rbp
140540194:	56                   	push   %rsi
140540195:	57                   	push   %rdi
140540196:	41 54                	push   %r12
140540198:	41 55                	push   %r13
14054019a:	41 56                	push   %r14
14054019c:	41 57                	push   %r15
14054019e:	48 83 ec 60          	sub    $0x60,%rsp
1405401a2:	49 8b d8             	mov    %r8,%rbx
1405401a5:	48 8b f2             	mov    %rdx,%rsi
1405401a8:	4c 8b e9             	mov    %rcx,%r13
1405401ab:	45 33 e4             	xor    %r12d,%r12d
1405401ae:	48 bd aa aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaa,%rbp
1405401b5:	aa aa 02
1405401b8:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
1405401bf:	01 00 00
1405401c2:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
1405401c9:	9c f2 cb
1405401cc:	4c 8b 46 10          	mov    0x10(%rsi),%r8
1405401d0:	48 8b d6             	mov    %rsi,%rdx
1405401d3:	48 83 7e 18 0f       	cmpq   $0xf,0x18(%rsi)
1405401d8:	76 03                	jbe    0x1405401dd
1405401da:	48 8b 16             	mov    (%rsi),%rdx
1405401dd:	48 8b f8             	mov    %rax,%rdi
1405401e0:	49 8b cc             	mov    %r12,%rcx
1405401e3:	4d 85 c0             	test   %r8,%r8
1405401e6:	74 1b                	je     0x140540203
1405401e8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1405401ef:	00
1405401f0:	0f b6 04 0a          	movzbl (%rdx,%rcx,1),%eax
1405401f4:	48 33 f8             	xor    %rax,%rdi