140019ea5:	75 e9                	jne    0x140019e90
140019ea7:	4d 8b c1             	mov    %r9,%r8
140019eaa:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140019eaf:	48 8b cb             	mov    %rbx,%rcx
140019eb2:	e8 29 f7 fe ff       	call   0x1400095e0
140019eb7:	48 8b c7             	mov    %rdi,%rax
140019eba:	48 89 1f             	mov    %rbx,(%rdi)
140019ebd:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
140019ec2:	48 33 cc             	xor    %rsp,%rcx
140019ec5:	e8 36 f9 03 00       	call   0x140059800
140019eca:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140019ecf:	48 83 c4 40          	add    $0x40,%rsp
140019ed3:	5f                   	pop    %rdi
140019ed4:	c3                   	ret
140019ed5:	cc                   	int3
140019ed6:	cc                   	int3
140019ed7:	cc                   	int3
140019ed8:	cc                   	int3
140019ed9:	cc                   	int3
140019eda:	cc                   	int3
140019edb:	cc                   	int3
140019edc:	cc                   	int3
140019edd:	cc                   	int3
140019ede:	cc                   	int3
140019edf:	cc                   	int3
140019ee0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140019ee5:	48 89 7c 24 10       	mov    %rdi,0x10(%rsp)
140019eea:	44 69 d1 09 a2 09 00 	imul   $0x9a209,%ecx,%r10d
140019ef1:	4c 8d 0d 08 78 04 00 	lea    0x47808(%rip),%r9        # 0x140061700
140019ef8:	8b f9                	mov    %ecx,%edi
140019efa:	b8 1f 00 00 00       	mov    $0x1f,%eax
140019eff:	41 81 ea 1f fe 03 00 	sub    $0x3fe1f,%r10d
140019f06:	41 c1 fa 15          	sar    $0x15,%r10d
140019f0a:	41 2b c2             	sub    %r10d,%eax
140019f0d:	45 69 da b1 6c e5 ff 	imul   $0xffe56cb1,%r10d,%r11d
140019f14:	48 63 d0             	movslq %eax,%rdx
140019f17:	4d 8b 0c d1          	mov    (%r9,%rdx,8),%r9
140019f1b:	41 c1 fb 13          	sar    $0x13,%r11d
140019f1f:	49 8b c1             	mov    %r9,%rax
140019f22:	48 c1 e8 19          	shr    $0x19,%rax
140019f26:	44 03 d9             	add    %ecx,%r11d
140019f29:	b9 28 00 00 00       	mov    $0x28,%ecx
140019f2e:	4d 8b c1             	mov    %r9,%r8
140019f31:	4c 2b c0             	sub    %rax,%r8
140019f34:	41 2b cb             	sub    %r11d,%ecx
140019f37:	49 d3 e8             	shr    %cl,%r8
140019f3a:	8d 47 fe             	lea    -0x2(%rdi),%eax
140019f3d:	49 8b d1             	mov    %r9,%rdx
140019f40:	48 c1 ea 18          	shr    $0x18,%rdx
140019f44:	49 03 d1             	add    %r9,%rdx
140019f47:	48 d3 ea             	shr    %cl,%rdx
140019f4a:	41 8d 58 01          	lea    0x1(%r8),%ebx
140019f4e:	83 f8 01             	cmp    $0x1,%eax
140019f51:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
140019f56:	41 0f 46 d8          	cmovbe %r8d,%ebx
140019f5a:	f7 e2                	mul    %edx
140019f5c:	c1 ea 03             	shr    $0x3,%edx
140019f5f:	8d 04 92             	lea    (%rdx,%rdx,4),%eax
140019f62:	03 c0                	add    %eax,%eax
140019f64:	3b c3                	cmp    %ebx,%eax
140019f66:	0f 82 7e 00 00 00    	jb     0x140019fea
140019f6c:	69 ca 29 5c 8f c2    	imul   $0xc28f5c29,%edx,%ecx
140019f72:	41 ff c2             	inc    %r10d
140019f75:	45 33 c0             	xor    %r8d,%r8d
140019f78:	8b c1                	mov    %ecx,%eax
140019f7a:	c1 e9 02             	shr    $0x2,%ecx
140019f7d:	c1 e0 1e             	shl    $0x1e,%eax
140019f80:	0b c1                	or     %ecx,%eax
140019f82:	3d 28 5c 8f 02       	cmp    $0x28f5c28,%eax
140019f87:	77 24                	ja     0x140019fad
140019f89:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140019f90:	69 c8 29 5c 8f c2    	imul   $0xc28f5c29,%eax,%ecx
140019f96:	8b d0                	mov    %eax,%edx
140019f98:	41 83 c0 02          	add    $0x2,%r8d
140019f9c:	8b c1                	mov    %ecx,%eax
140019f9e:	c1 e9 02             	shr    $0x2,%ecx
140019fa1:	c1 e0 1e             	shl    $0x1e,%eax
140019fa4:	0b c1                	or     %ecx,%eax
140019fa6:	3d 28 5c 8f 02       	cmp    $0x28f5c28,%eax
140019fab:	76 e3                	jbe    0x140019f90
140019fad:	69 c2 cd cc cc cc    	imul   $0xcccccccd,%edx,%eax
140019fb3:	8b c8                	mov    %eax,%ecx
140019fb5:	d1 e8                	shr    $1,%eax
140019fb7:	c1 e1 1f             	shl    $0x1f,%ecx
140019fba:	0b c8                	or     %eax,%ecx
140019fbc:	41 8b c0             	mov    %r8d,%eax
140019fbf:	83 c8 01             	or     $0x1,%eax
140019fc2:	81 f9 99 99 99 19    	cmp    $0x19999999,%ecx
140019fc8:	41 0f 47 c0          	cmova  %r8d,%eax
140019fcc:	41 03 c2             	add    %r10d,%eax
140019fcf:	48 c1 e0 20          	shl    $0x20,%rax
140019fd3:	81 f9 99 99 99 19    	cmp    $0x19999999,%ecx
140019fd9:	0f 47 ca             	cmova  %edx,%ecx
140019fdc:	48 0b c1             	or     %rcx,%rax
140019fdf:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
140019fe4:	48 8b 7c 24 10       	mov    0x10(%rsp),%rdi
140019fe9:	c3                   	ret
140019fea:	b9 27 00 00 00       	mov    $0x27,%ecx
140019fef:	8d 47 23             	lea    0x23(%rdi),%eax
140019ff2:	41 2b cb             	sub    %r11d,%ecx
140019ff5:	49 d3 e9             	shr    %cl,%r9
140019ff8:	41 ff c1             	inc    %r9d
140019ffb:	41 d1 e9             	shr    $1,%r9d
140019ffe:	85 c0                	test   %eax,%eax
14001a000:	75 0e                	jne    0x14001a010
14001a002:	41 f6 c1 01          	test   $0x1,%r9b
14001a006:	41 8d 49 ff          	lea    -0x1(%r9),%ecx
14001a00a:	41 0f 44 c9          	cmove  %r9d,%ecx
14001a00e:	eb 0c                	jmp    0x14001a01c
14001a010:	41 8b c9             	mov    %r9d,%ecx
14001a013:	44 3b cb             	cmp    %ebx,%r9d
14001a016:	73 04                	jae    0x14001a01c
14001a018:	41 8d 49 01          	lea    0x1(%r9),%ecx
14001a01c:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
14001a021:	48 8b 7c 24 10       	mov    0x10(%rsp),%rdi
14001a026:	41 8b c2             	mov    %r10d,%eax
14001a029:	48 c1 e0 20          	shl    $0x20,%rax
14001a02d:	48 0b c1             	or     %rcx,%rax
14001a030:	c3                   	ret
14001a031:	cc                   	int3
14001a032:	cc                   	int3
14001a033:	cc                   	int3
14001a034:	cc                   	int3
14001a035:	cc                   	int3
14001a036:	cc                   	int3
14001a037:	cc                   	int3
14001a038:	cc                   	int3
14001a039:	cc                   	int3
14001a03a:	cc                   	int3
14001a03b:	cc                   	int3
14001a03c:	cc                   	int3
14001a03d:	cc                   	int3
14001a03e:	cc                   	int3
14001a03f:	cc                   	int3
14001a040:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14001a045:	55                   	push   %rbp
14001a046:	56                   	push   %rsi
14001a047:	57                   	push   %rdi
14001a048:	41 54                	push   %r12
14001a04a:	41 55                	push   %r13
14001a04c:	41 56                	push   %r14
14001a04e:	41 57                	push   %r15
14001a050:	48 8d 6c 24 e0       	lea    -0x20(%rsp),%rbp
14001a055:	48 81 ec 20 01 00 00 	sub    $0x120,%rsp
14001a05c:	48 8b 05 dd df 05 00 	mov    0x5dfdd(%rip),%rax        # 0x140078040
14001a063:	48 33 c4             	xor    %rsp,%rax
14001a066:	48 89 45 18          	mov    %rax,0x18(%rbp)
14001a06a:	4d 8b e9             	mov    %r9,%r13
14001a06d:	4d 8b d0             	mov    %r8,%r10
14001a070:	4c 89 44 24 38       	mov    %r8,0x38(%rsp)
14001a075:	48 8b da             	mov    %rdx,%rbx
14001a078:	48 89 4c 24 40       	mov    %rcx,0x40(%rsp)
14001a07d:	48 8b 85 80 00 00 00 	mov    0x80(%rbp),%rax
14001a084:	48 89 45 a8          	mov    %rax,-0x58(%rbp)
14001a088:	4c 8b c8             	mov    %rax,%r9
14001a08b:	49 c1 e9 30          	shr    $0x30,%r9
14001a08f:	4c 8b c0             	mov    %rax,%r8
14001a092:	49 c1 e8 28          	shr    $0x28,%r8
14001a096:	45 8b 3a             	mov    (%r10),%r15d
14001a099:	44 89 7d a0          	mov    %r15d,-0x60(%rbp)
14001a09d:	41 8b cf             	mov    %r15d,%ecx
14001a0a0:	83 c9 01             	or     $0x1,%ecx
14001a0a3:	33 f6                	xor    %esi,%esi
14001a0a5:	89 75 b0             	mov    %esi,-0x50(%rbp)
14001a0a8:	0f bd c9             	bsr    %ecx,%ecx
14001a0ab:	48 63 d1             	movslq %ecx,%rdx
14001a0ae:	48 8d 0d 4b 5f fe ff 	lea    -0x1a0b5(%rip),%rcx        # 0x140000000
14001a0b5:	45 8b d7             	mov    %r15d,%r10d
14001a0b8:	4c 03 94 d1 90 1f 06 	add    0x61f90(%rcx,%rdx,8),%r10
14001a0bf:	00
14001a0c0:	49 c1 ea 20          	shr    $0x20,%r10
14001a0c4:	44 89 55 9c          	mov    %r10d,-0x64(%rbp)
14001a0c8:	41 b4 30             	mov    $0x30,%r12b
14001a0cb:	44 88 65 99          	mov    %r12b,-0x67(%rbp)
14001a0cf:	0f b6 4d ad          	movzbl -0x53(%rbp),%ecx
14001a0d3:	88 4c 24 30          	mov    %cl,0x30(%rsp)
14001a0d7:	88 4d 98             	mov    %cl,-0x68(%rbp)
14001a0da:	8b ce                	mov    %esi,%ecx
14001a0dc:	45 84 c0             	test   %r8b,%r8b
14001a0df:	0f 95 c1             	setne  %cl
14001a0e2:	45 8d 34 0a          	lea    (%r10,%rcx,1),%r14d
14001a0e6:	48 8b bd 88 00 00 00 	mov    0x88(%rbp),%rdi
14001a0ed:	41 f6 c1 02          	test   $0x2,%r9b
14001a0f1:	74 27                	je     0x14001a11a
14001a0f3:	48 8b cf             	mov    %rdi,%rcx
14001a0f6:	e8 b5 38 00 00       	call   0x14001d9b0
14001a0fb:	44 0f b6 c0          	movzbl %al,%r8d
14001a0ff:	44 8b 7d a0          	mov    -0x60(%rbp),%r15d
14001a103:	44 8b 55 9c          	mov    -0x64(%rbp),%r10d
14001a107:	44 0f b6 65 99       	movzbl -0x67(%rbp),%r12d
14001a10c:	0f b6 45 98          	movzbl -0x68(%rbp),%eax
14001a110:	88 44 24 30          	mov    %al,0x30(%rsp)
14001a114:	48 8b 45 a8          	mov    -0x58(%rbp),%rax
14001a118:	eb 03                	jmp    0x14001a11d
14001a11a:	41 b0 2e             	mov    $0x2e,%r8b
14001a11d:	44 88 45 9a          	mov    %r8b,-0x66(%rbp)
14001a121:	4c 8b 5c 24 38       	mov    0x38(%rsp),%r11
14001a126:	45 8b 5b 04          	mov    0x4(%r11),%r11d
14001a12a:	43 8d 14 13          	lea    (%r11,%r10,1),%edx
14001a12e:	44 8d 4a ff          	lea    -0x1(%rdx),%r9d
14001a132:	48 8b c8             	mov    %rax,%rcx
14001a135:	48 c1 e9 20          	shr    $0x20,%rcx
14001a139:	80 f9 01             	cmp    $0x1,%cl
14001a13c:	0f 84 33 05 00 00    	je     0x14001a675
14001a142:	84 c9                	test   %cl,%cl
14001a144:	75 1d                	jne    0x14001a163
14001a146:	41 83 f9 fc          	cmp    $0xfffffffc,%r9d
14001a14a:	0f 8c 25 05 00 00    	jl     0x14001a675
14001a150:	b9 10 00 00 00       	mov    $0x10,%ecx
14001a155:	85 c0                	test   %eax,%eax
14001a157:	0f 4f c8             	cmovg  %eax,%ecx
14001a15a:	44 3b c9             	cmp    %ecx,%r9d
14001a15d:	0f 8d 12 05 00 00    	jge    0x14001a675
14001a163:	89 55 c0             	mov    %edx,-0x40(%rbp)
14001a166:	45 85 db             	test   %r11d,%r11d
14001a169:	0f 88 78 01 00 00    	js     0x14001a2e7
14001a16f:	4d 03 f3             	add    %r11,%r14
14001a172:	2b c2                	sub    %edx,%eax
14001a174:	89 45 b8             	mov    %eax,-0x48(%rbp)
14001a177:	44 0f b6 45 ae       	movzbl -0x52(%rbp),%r8d
14001a17c:	41 f6 c0 08          	test   $0x8,%r8b
14001a180:	74 1a                	je     0x14001a19c
14001a182:	49 ff c6             	inc    %r14
14001a185:	85 c0                	test   %eax,%eax
14001a187:	7f 0e                	jg     0x14001a197
14001a189:	80 7d ac 02          	cmpb   $0x2,-0x54(%rbp)
14001a18d:	74 0d                	je     0x14001a19c
14001a18f:	b8 01 00 00 00       	mov    $0x1,%eax
14001a194:	89 45 b8             	mov    %eax,-0x48(%rbp)
14001a197:	8b c8                	mov    %eax,%ecx
14001a199:	4c 03 f1             	add    %rcx,%r14
14001a19c:	41 d0 e8             	shr    $1,%r8b
14001a19f:	41 80 e0 01          	and    $0x1,%r8b
14001a1a3:	48 8b d7             	mov    %rdi,%rdx
14001a1a6:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
14001a1aa:	e8 21 2a 00 00       	call   0x14001cbd0
14001a1af:	90                   	nop
14001a1b0:	48 8d 55 c8          	lea    -0x38(%rbp),%rdx
14001a1b4:	4c 8b 55 c8          	mov    -0x38(%rbp),%r10
14001a1b8:	4c 8b 4d e0          	mov    -0x20(%rbp),%r9
14001a1bc:	49 83 f9 0f          	cmp    $0xf,%r9
14001a1c0:	49 0f 47 d2          	cmova  %r10,%rdx
14001a1c4:	8b ce                	mov    %esi,%ecx
14001a1c6:	44 8b 7d c0          	mov    -0x40(%rbp),%r15d
14001a1ca:	0f b6 7d e8          	movzbl -0x18(%rbp),%edi
14001a1ce:	4c 8b 5d d8          	mov    -0x28(%rbp),%r11
14001a1d2:	40 84 ff             	test   %dil,%dil
14001a1d5:	74 45                	je     0x14001a21c
14001a1d7:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
14001a1db:	49 83 f9 0f          	cmp    $0xf,%r9
14001a1df:	41 0f 97 c0          	seta   %r8b
14001a1e3:	49 0f 47 c2          	cmova  %r10,%rax
14001a1e7:	49 03 c3             	add    %r11,%rax
14001a1ea:	48 3b d0             	cmp    %rax,%rdx
14001a1ed:	75 17                	jne    0x14001a206
14001a1ef:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
14001a1f3:	45 84 c0             	test   %r8b,%r8b
14001a1f6:	49 0f 45 c2          	cmovne %r10,%rax
14001a1fa:	41 0f be 44 03 ff    	movsbl -0x1(%r11,%rax,1),%eax
14001a200:	03 c8                	add    %eax,%ecx
14001a202:	8b c1                	mov    %ecx,%eax
14001a204:	eb 1b                	jmp    0x14001a221
14001a206:	44 0f be 02          	movsbl (%rdx),%r8d
14001a20a:	41 8d 40 ff          	lea    -0x1(%r8),%eax
14001a20e:	3c 7d                	cmp    $0x7d,%al
14001a210:	77 0a                	ja     0x14001a21c
14001a212:	48 ff c2             	inc    %rdx
14001a215:	41 03 c8             	add    %r8d,%ecx
14001a218:	8b c1                	mov    %ecx,%eax
14001a21a:	eb 05                	jmp    0x14001a221
14001a21c:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
14001a221:	44 3b f8             	cmp    %eax,%r15d
14001a224:	7e 04                	jle    0x14001a22a
14001a226:	ff c6                	inc    %esi
14001a228:	eb a8                	jmp    0x14001a1d2
14001a22a:	8b c6                	mov    %esi,%eax
14001a22c:	4c 03 f0             	add    %rax,%r14
14001a22f:	48 8d 45 98          	lea    -0x68(%rbp),%rax
14001a233:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
14001a238:	48 8d 45 a0          	lea    -0x60(%rbp),%rax
14001a23c:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
14001a241:	48 8d 45 9c          	lea    -0x64(%rbp),%rax
14001a245:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
14001a24a:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
14001a24f:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
14001a254:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
14001a258:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
14001a25d:	48 8d 45 a8          	lea    -0x58(%rbp),%rax
14001a261:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
14001a266:	48 8d 45 9a          	lea    -0x66(%rbp),%rax
14001a26a:	48 89 44 24 78       	mov    %rax,0x78(%rsp)
14001a26f:	48 8d 45 b8          	lea    -0x48(%rbp),%rax
14001a273:	48 89 45 80          	mov    %rax,-0x80(%rbp)
14001a277:	48 8d 45 99          	lea    -0x67(%rbp),%rax
14001a27b:	48 89 45 88          	mov    %rax,-0x78(%rbp)
14001a27f:	48 8d 44 24 48       	lea    0x48(%rsp),%rax
14001a284:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14001a289:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
14001a28e:	4d 8b c5             	mov    %r13,%r8
14001a291:	48 8b d3             	mov    %rbx,%rdx
14001a294:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14001a299:	48 8b cb             	mov    %rbx,%rcx
14001a29c:	e8 4f 4d 00 00       	call   0x14001eff0
14001a2a1:	90                   	nop
14001a2a2:	48 8b 55 e0          	mov    -0x20(%rbp),%rdx
14001a2a6:	48 83 fa 0f          	cmp    $0xf,%rdx
14001a2aa:	0f 86 5b 02 00 00    	jbe    0x14001a50b
14001a2b0:	48 ff c2             	inc    %rdx
14001a2b3:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
14001a2b7:	48 8b c1             	mov    %rcx,%rax
14001a2ba:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14001a2c1:	0f 82 3f 02 00 00    	jb     0x14001a506
14001a2c7:	48 83 c2 27          	add    $0x27,%rdx
14001a2cb:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14001a2cf:	48 2b c1             	sub    %rcx,%rax
14001a2d2:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14001a2d6:	48 83 f8 1f          	cmp    $0x1f,%rax
14001a2da:	0f 86 26 02 00 00    	jbe    0x14001a506
14001a2e0:	ff 15 ba 52 04 00    	call   *0x452ba(%rip)        # 0x14005f5a0
14001a2e6:	cc                   	int3
14001a2e7:	85 d2                	test   %edx,%edx
14001a2e9:	0f 8e 24 02 00 00    	jle    0x14001a513
14001a2ef:	44 0f b6 45 ae       	movzbl -0x52(%rbp),%r8d
14001a2f4:	41 2b c2             	sub    %r10d,%eax
14001a2f7:	8b ce                	mov    %esi,%ecx
14001a2f9:	41 f6 c0 08          	test   $0x8,%r8b
14001a2fd:	0f 45 c8             	cmovne %eax,%ecx
14001a300:	89 4d b8             	mov    %ecx,-0x48(%rbp)
14001a303:	8b c6                	mov    %esi,%eax
14001a305:	85 c9                	test   %ecx,%ecx
14001a307:	0f 4f c1             	cmovg  %ecx,%eax
14001a30a:	ff c0                	inc    %eax
14001a30c:	4c 03 f0             	add    %rax,%r14
14001a30f:	41 d0 e8             	shr    $1,%r8b
14001a312:	41 80 e0 01          	and    $0x1,%r8b
14001a316:	48 8b d7             	mov    %rdi,%rdx
14001a319:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
14001a31d:	e8 ae 28 00 00       	call   0x14001cbd0
14001a322:	90                   	nop
14001a323:	44 8b ce             	mov    %esi,%r9d
14001a326:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
14001a32a:	4c 8b 5d f0          	mov    -0x10(%rbp),%r11
14001a32e:	4c 8b 55 08          	mov    0x8(%rbp),%r10
14001a332:	49 83 fa 0f          	cmp    $0xf,%r10
14001a336:	49 0f 47 d3          	cmova  %r11,%rdx
14001a33a:	8b ce                	mov    %esi,%ecx
14001a33c:	44 8b 65 9c          	mov    -0x64(%rbp),%r12d
14001a340:	44 0f b6 7d 10       	movzbl 0x10(%rbp),%r15d
14001a345:	48 8b 7d 00          	mov    0x0(%rbp),%rdi
14001a349:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)