140011055:	4c 8b c8             	mov    %rax,%r9
140011058:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
14001105f:	48 d1 e8             	shr    $1,%rax
140011062:	49 8d 51 ff          	lea    -0x1(%r9),%rdx
140011066:	48 03 d0             	add    %rax,%rdx
140011069:	48 89 51 40          	mov    %rdx,0x40(%rcx)
14001106d:	4c 8b c2             	mov    %rdx,%r8
140011070:	8b 41 30             	mov    0x30(%rcx),%eax
140011073:	85 c0                	test   %eax,%eax
140011075:	7f 05                	jg     0x14001107c
140011077:	4d 85 d2             	test   %r10,%r10
14001107a:	74 31                	je     0x1400110ad
14001107c:	ff c8                	dec    %eax
14001107e:	89 41 30             	mov    %eax,0x30(%rcx)
140011081:	41 8a c2             	mov    %r10b,%al
140011084:	24 0f                	and    $0xf,%al
140011086:	49 c1 ea 04          	shr    $0x4,%r10
14001108a:	04 30                	add    $0x30,%al
14001108c:	44 8a c8             	mov    %al,%r9b
14001108f:	3c 39                	cmp    $0x39,%al
140011091:	76 0d                	jbe    0x1400110a0
140011093:	41 8a c3             	mov    %r11b,%al
140011096:	34 01                	xor    $0x1,%al
140011098:	c0 e0 05             	shl    $0x5,%al
14001109b:	04 07                	add    $0x7,%al
14001109d:	41 02 c1             	add    %r9b,%al
1400110a0:	41 88 00             	mov    %al,(%r8)
1400110a3:	48 ff 49 40          	decq   0x40(%rcx)
1400110a7:	4c 8b 41 40          	mov    0x40(%rcx),%r8
1400110ab:	eb c3                	jmp    0x140011070
1400110ad:	2b 51 40             	sub    0x40(%rcx),%edx
1400110b0:	49 8d 40 01          	lea    0x1(%r8),%rax
1400110b4:	89 51 48             	mov    %edx,0x48(%rcx)
1400110b7:	48 89 41 40          	mov    %rax,0x40(%rcx)
1400110bb:	c3                   	ret
1400110bc:	4c 8d 49 50          	lea    0x50(%rcx),%r9
1400110c0:	45 8a d8             	mov    %r8b,%r11b
1400110c3:	49 8b 81 08 04 00 00 	mov    0x408(%r9),%rax
1400110ca:	4c 8b d2             	mov    %rdx,%r10
1400110cd:	48 85 c0             	test   %rax,%rax
1400110d0:	75 07                	jne    0x1400110d9
1400110d2:	b8 00 01 00 00       	mov    $0x100,%eax
1400110d7:	eb 0e                	jmp    0x1400110e7
1400110d9:	4c 8b c8             	mov    %rax,%r9
1400110dc:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
1400110e3:	48 c1 e8 02          	shr    $0x2,%rax
1400110e7:	48 8d 40 ff          	lea    -0x1(%rax),%rax
1400110eb:	49 8d 14 41          	lea    (%r9,%rax,2),%rdx
1400110ef:	48 89 51 40          	mov    %rdx,0x40(%rcx)
1400110f3:	48 8b c2             	mov    %rdx,%rax
1400110f6:	4c 8b ca             	mov    %rdx,%r9
1400110f9:	44 8b 41 30          	mov    0x30(%rcx),%r8d
1400110fd:	45 85 c0             	test   %r8d,%r8d
140011100:	7f 05                	jg     0x140011107
140011102:	4d 85 d2             	test   %r10,%r10
140011105:	74 43                	je     0x14001114a
140011107:	41 8d 40 ff          	lea    -0x1(%r8),%eax
14001110b:	45 0f b7 c2          	movzwl %r10w,%r8d
14001110f:	66 41 83 e0 0f       	and    $0xf,%r8w
140011114:	49 c1 ea 04          	shr    $0x4,%r10
140011118:	66 41 83 c0 30       	add    $0x30,%r8w
14001111d:	89 41 30             	mov    %eax,0x30(%rcx)
140011120:	66 41 83 f8 39       	cmp    $0x39,%r8w
140011125:	76 11                	jbe    0x140011138
140011127:	41 8a c3             	mov    %r11b,%al
14001112a:	34 01                	xor    $0x1,%al
14001112c:	c0 e0 05             	shl    $0x5,%al
14001112f:	04 07                	add    $0x7,%al
140011131:	41 02 c0             	add    %r8b,%al
140011134:	44 0f b6 c0          	movzbl %al,%r8d
140011138:	66 45 89 01          	mov    %r8w,(%r9)
14001113c:	48 83 41 40 fe       	addq   $0xfffffffffffffffe,0x40(%rcx)
140011141:	48 8b 41 40          	mov    0x40(%rcx),%rax
140011145:	4c 8b c8             	mov    %rax,%r9
140011148:	eb af                	jmp    0x1400110f9
14001114a:	48 2b d0             	sub    %rax,%rdx
14001114d:	48 83 c0 02          	add    $0x2,%rax
140011151:	48 d1 fa             	sar    $1,%rdx
140011154:	89 51 48             	mov    %edx,0x48(%rcx)
140011157:	48 89 41 40          	mov    %rax,0x40(%rcx)
14001115b:	c3                   	ret
14001115c:	48 8b c4             	mov    %rsp,%rax
14001115f:	48 89 58 10          	mov    %rbx,0x10(%rax)
140011163:	48 89 70 18          	mov    %rsi,0x18(%rax)
140011167:	48 89 78 20          	mov    %rdi,0x20(%rax)
14001116b:	55                   	push   %rbp
14001116c:	41 56                	push   %r14
14001116e:	41 57                	push   %r15
140011170:	48 8d a8 48 fc ff ff 	lea    -0x3b8(%rax),%rbp
140011177:	48 81 ec a0 04 00 00 	sub    $0x4a0,%rsp
14001117e:	48 8b 05 3b d0 03 00 	mov    0x3d03b(%rip),%rax        # 0x14004e1c0
140011185:	48 33 c4             	xor    %rsp,%rax
140011188:	48 89 85 90 03 00 00 	mov    %rax,0x390(%rbp)
14001118f:	48 8b 01             	mov    (%rcx),%rax
140011192:	48 8b d9             	mov    %rcx,%rbx
140011195:	4c 8b 71 08          	mov    0x8(%rcx),%r14
140011199:	4c 8b 38             	mov    (%rax),%r15
14001119c:	49 8b cf             	mov    %r15,%rcx
14001119f:	e8 40 1b 01 00       	call   0x140022ce4
1400111a4:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
1400111a8:	0f 57 c0             	xorps  %xmm0,%xmm0
1400111ab:	4c 8b 0b             	mov    (%rbx),%r9
1400111ae:	40 8a f0             	mov    %al,%sil
1400111b1:	48 8b 53 20          	mov    0x20(%rbx),%rdx
1400111b5:	4c 8b 19             	mov    (%rcx),%r11
1400111b8:	4d 8b 09             	mov    (%r9),%r9
1400111bb:	48 8b 3a             	mov    (%rdx),%rdi
1400111be:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
1400111c2:	4c 8b 11             	mov    (%rcx),%r10
1400111c5:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1400111c9:	83 64 24 40 00       	andl   $0x0,0x40(%rsp)
1400111ce:	83 64 24 48 00       	andl   $0x0,0x48(%rsp)
1400111d3:	83 64 24 4c 00       	andl   $0x0,0x4c(%rsp)
1400111d8:	83 64 24 50 00       	andl   $0x0,0x50(%rsp)
1400111dd:	66 83 64 24 58 00    	andw   $0x0,0x58(%rsp)
1400111e3:	83 64 24 68 00       	andl   $0x0,0x68(%rsp)
1400111e8:	83 a5 88 03 00 00 00 	andl   $0x0,0x388(%rbp)
1400111ef:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1400111f4:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1400111f9:	c6 44 24 44 00       	movb   $0x0,0x44(%rsp)
1400111fe:	c6 44 24 6c 00       	movb   $0x0,0x6c(%rsp)
140011203:	66 0f 7f 85 70 03 00 	movdqa %xmm0,0x370(%rbp)
14001120a:	00
14001120b:	4c 89 8d 80 03 00 00 	mov    %r9,0x380(%rbp)
140011212:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
140011217:	4c 89 5c 24 30       	mov    %r11,0x30(%rsp)
14001121c:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140011221:	e8 fa 02 00 00       	call   0x140011520
140011226:	48 8b 8d 78 03 00 00 	mov    0x378(%rbp),%rcx
14001122d:	8b d8                	mov    %eax,%ebx
14001122f:	e8 ac 02 ff ff       	call   0x1400014e0
140011234:	48 83 a5 78 03 00 00 	andq   $0x0,0x378(%rbp)
14001123b:	00
14001123c:	4d 8b c6             	mov    %r14,%r8
14001123f:	49 8b d7             	mov    %r15,%rdx
140011242:	40 8a ce             	mov    %sil,%cl
140011245:	e8 62 1b 01 00       	call   0x140022dac
14001124a:	8b c3                	mov    %ebx,%eax
14001124c:	48 8b 8d 90 03 00 00 	mov    0x390(%rbp),%rcx
140011253:	48 33 cc             	xor    %rsp,%rcx
140011256:	e8 45 81 ff ff       	call   0x1400093a0
14001125b:	4c 8d 9c 24 a0 04 00 	lea    0x4a0(%rsp),%r11
140011262:	00
140011263:	49 8b 5b 28          	mov    0x28(%r11),%rbx
140011267:	49 8b 73 30          	mov    0x30(%r11),%rsi
14001126b:	49 8b 7b 38          	mov    0x38(%r11),%rdi
14001126f:	49 8b e3             	mov    %r11,%rsp
140011272:	41 5f                	pop    %r15
140011274:	41 5e                	pop    %r14
140011276:	5d                   	pop    %rbp
140011277:	c3                   	ret
140011278:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14001127d:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140011282:	55                   	push   %rbp
140011283:	57                   	push   %rdi
140011284:	41 54                	push   %r12
140011286:	41 56                	push   %r14
140011288:	41 57                	push   %r15
14001128a:	48 8d ac 24 60 fc ff 	lea    -0x3a0(%rsp),%rbp
140011291:	ff
140011292:	48 81 ec a0 04 00 00 	sub    $0x4a0,%rsp
140011299:	48 8b 05 20 cf 03 00 	mov    0x3cf20(%rip),%rax        # 0x14004e1c0
1400112a0:	48 33 c4             	xor    %rsp,%rax
1400112a3:	48 89 85 90 03 00 00 	mov    %rax,0x390(%rbp)
1400112aa:	48 8b 01             	mov    (%rcx),%rax
1400112ad:	48 8b d9             	mov    %rcx,%rbx
1400112b0:	4c 8b 71 08          	mov    0x8(%rcx),%r14
1400112b4:	4c 8b 38             	mov    (%rax),%r15
1400112b7:	49 8b cf             	mov    %r15,%rcx
1400112ba:	e8 25 1a 01 00       	call   0x140022ce4
1400112bf:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
1400112c3:	45 33 e4             	xor    %r12d,%r12d
1400112c6:	4c 8b 0b             	mov    (%rbx),%r9
1400112c9:	0f 57 c0             	xorps  %xmm0,%xmm0
1400112cc:	48 8b 53 20          	mov    0x20(%rbx),%rdx
1400112d0:	40 8a f0             	mov    %al,%sil
1400112d3:	4c 8b 19             	mov    (%rcx),%r11
1400112d6:	4d 8b 09             	mov    (%r9),%r9
1400112d9:	48 8b 3a             	mov    (%rdx),%rdi
1400112dc:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
1400112e0:	4c 8b 11             	mov    (%rcx),%r10
1400112e3:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1400112e7:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1400112ec:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1400112f1:	44 89 64 24 40       	mov    %r12d,0x40(%rsp)
1400112f6:	44 88 64 24 44       	mov    %r12b,0x44(%rsp)
1400112fb:	4c 89 64 24 48       	mov    %r12,0x48(%rsp)
140011300:	44 89 64 24 50       	mov    %r12d,0x50(%rsp)
140011305:	44 88 64 24 58       	mov    %r12b,0x58(%rsp)
14001130a:	66 44 89 64 24 5a    	mov    %r12w,0x5a(%rsp)
140011310:	44 89 64 24 68       	mov    %r12d,0x68(%rsp)
140011315:	44 88 64 24 6c       	mov    %r12b,0x6c(%rsp)
14001131a:	66 0f 7f 85 70 03 00 	movdqa %xmm0,0x370(%rbp)
140011321:	00
140011322:	4c 89 8d 80 03 00 00 	mov    %r9,0x380(%rbp)
140011329:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
14001132e:	4c 89 5c 24 30       	mov    %r11,0x30(%rsp)
140011333:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140011338:	44 89 a5 88 03 00 00 	mov    %r12d,0x388(%rbp)
14001133f:	e8 f4 08 00 00       	call   0x140011c38
140011344:	48 8b 8d 78 03 00 00 	mov    0x378(%rbp),%rcx
14001134b:	8b d8                	mov    %eax,%ebx
14001134d:	e8 8e 01 ff ff       	call   0x1400014e0
140011352:	4d 8b c6             	mov    %r14,%r8
140011355:	4c 89 a5 78 03 00 00 	mov    %r12,0x378(%rbp)
14001135c:	49 8b d7             	mov    %r15,%rdx
14001135f:	40 8a ce             	mov    %sil,%cl
140011362:	e8 45 1a 01 00       	call   0x140022dac
140011367:	8b c3                	mov    %ebx,%eax
140011369:	48 8b 8d 90 03 00 00 	mov    0x390(%rbp),%rcx
140011370:	48 33 cc             	xor    %rsp,%rcx
140011373:	e8 28 80 ff ff       	call   0x1400093a0
140011378:	4c 8d 9c 24 a0 04 00 	lea    0x4a0(%rsp),%r11
14001137f:	00
140011380:	49 8b 5b 38          	mov    0x38(%r11),%rbx
140011384:	49 8b 73 40          	mov    0x40(%r11),%rsi
140011388:	49 8b e3             	mov    %r11,%rsp
14001138b:	41 5f                	pop    %r15
14001138d:	41 5e                	pop    %r14
14001138f:	41 5c                	pop    %r12
140011391:	5f                   	pop    %rdi
140011392:	5d                   	pop    %rbp
140011393:	c3                   	ret
140011394:	48 8b 02             	mov    (%rdx),%rax
140011397:	48 8b 90 f8 00 00 00 	mov    0xf8(%rax),%rdx
14001139e:	48 8b 02             	mov    (%rdx),%rax
1400113a1:	44 8a 08             	mov    (%rax),%r9b
1400113a4:	8a 01                	mov    (%rcx),%al
1400113a6:	84 c0                	test   %al,%al
1400113a8:	74 14                	je     0x1400113be
1400113aa:	8a d0                	mov    %al,%dl
1400113ac:	8a c2                	mov    %dl,%al
1400113ae:	41 3a d1             	cmp    %r9b,%dl
1400113b1:	74 0b                	je     0x1400113be
1400113b3:	48 ff c1             	inc    %rcx
1400113b6:	8a 01                	mov    (%rcx),%al
1400113b8:	8a d0                	mov    %al,%dl
1400113ba:	84 c0                	test   %al,%al
1400113bc:	75 ee                	jne    0x1400113ac
1400113be:	48 ff c1             	inc    %rcx
1400113c1:	84 c0                	test   %al,%al
1400113c3:	74 38                	je     0x1400113fd
1400113c5:	eb 09                	jmp    0x1400113d0
1400113c7:	2c 45                	sub    $0x45,%al
1400113c9:	a8 df                	test   $0xdf,%al
1400113cb:	74 09                	je     0x1400113d6
1400113cd:	48 ff c1             	inc    %rcx
1400113d0:	8a 01                	mov    (%rcx),%al
1400113d2:	84 c0                	test   %al,%al
1400113d4:	75 f1                	jne    0x1400113c7
1400113d6:	4c 8b c1             	mov    %rcx,%r8
1400113d9:	48 ff c9             	dec    %rcx
1400113dc:	8a 01                	mov    (%rcx),%al
1400113de:	3c 30                	cmp    $0x30,%al
1400113e0:	74 f7                	je     0x1400113d9
1400113e2:	41 3a c1             	cmp    %r9b,%al
1400113e5:	48 8d 51 ff          	lea    -0x1(%rcx),%rdx
1400113e9:	48 0f 45 d1          	cmovne %rcx,%rdx
1400113ed:	4c 2b c2             	sub    %rdx,%r8
1400113f0:	41 8a 04 10          	mov    (%r8,%rdx,1),%al
1400113f4:	48 ff c2             	inc    %rdx
1400113f7:	88 02                	mov    %al,(%rdx)
1400113f9:	84 c0                	test   %al,%al
1400113fb:	75 f3                	jne    0x1400113f0
1400113fd:	c3                   	ret
1400113fe:	cc                   	int3
1400113ff:	cc                   	int3
140011400:	4c 8b dc             	mov    %rsp,%r11
140011403:	49 89 5b 10          	mov    %rbx,0x10(%r11)
140011407:	49 89 6b 18          	mov    %rbp,0x18(%r11)
14001140b:	49 89 73 20          	mov    %rsi,0x20(%r11)
14001140f:	57                   	push   %rdi
140011410:	48 83 ec 30          	sub    $0x30,%rsp
140011414:	48 8b 69 08          	mov    0x8(%rcx),%rbp
140011418:	48 8b f1             	mov    %rcx,%rsi
14001141b:	48 8b 41 10          	mov    0x10(%rcx),%rax
14001141f:	48 8b fa             	mov    %rdx,%rdi
140011422:	49 8d 4b 08          	lea    0x8(%r11),%rcx
140011426:	48 ff c8             	dec    %rax
140011429:	49 89 4b f0          	mov    %rcx,-0x10(%r11)
14001142d:	49 8d 53 e8          	lea    -0x18(%r11),%rdx
140011431:	48 8b 5d 2c          	mov    0x2c(%rbp),%rbx
140011435:	41 b1 01             	mov    $0x1,%r9b
140011438:	41 b8 0a 00 00 00    	mov    $0xa,%r8d
14001143e:	49 89 43 08          	mov    %rax,0x8(%r11)
140011442:	48 8b cd             	mov    %rbp,%rcx
140011445:	49 89 43 e8          	mov    %rax,-0x18(%r11)
140011449:	e8 9e df ff ff       	call   0x14000f3ec
14001144e:	89 07                	mov    %eax,(%rdi)
140011450:	33 c9                	xor    %ecx,%ecx
140011452:	48 8b 46 08          	mov    0x8(%rsi),%rax
140011456:	38 48 30             	cmp    %cl,0x30(%rax)
140011459:	74 06                	je     0x140011461
14001145b:	83 78 2c 22          	cmpl   $0x22,0x2c(%rax)
14001145f:	74 11                	je     0x140011472
140011461:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
140011466:	48 3b 46 10          	cmp    0x10(%rsi),%rax
14001146a:	72 06                	jb     0x140011472
14001146c:	48 89 46 10          	mov    %rax,0x10(%rsi)
140011470:	b1 01                	mov    $0x1,%cl
140011472:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
140011477:	8a c1                	mov    %cl,%al
140011479:	48 89 5d 2c          	mov    %rbx,0x2c(%rbp)
14001147d:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140011482:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140011487:	48 83 c4 30          	add    $0x30,%rsp
14001148b:	5f                   	pop    %rdi
14001148c:	c3                   	ret
14001148d:	cc                   	int3
14001148e:	cc                   	int3
14001148f:	cc                   	int3
140011490:	4c 8b dc             	mov    %rsp,%r11
140011493:	49 89 5b 10          	mov    %rbx,0x10(%r11)
140011497:	49 89 6b 18          	mov    %rbp,0x18(%r11)
14001149b:	49 89 73 20          	mov    %rsi,0x20(%r11)
14001149f:	57                   	push   %rdi
1400114a0:	48 83 ec 30          	sub    $0x30,%rsp
1400114a4:	48 8b 69 08          	mov    0x8(%rcx),%rbp
1400114a8:	48 8b f1             	mov    %rcx,%rsi
1400114ab:	48 8b 41 10          	mov    0x10(%rcx),%rax
1400114af:	48 8b fa             	mov    %rdx,%rdi
1400114b2:	49 8d 4b 08          	lea    0x8(%r11),%rcx
1400114b6:	48 83 c0 fe          	add    $0xfffffffffffffffe,%rax
1400114ba:	49 89 4b f0          	mov    %rcx,-0x10(%r11)
1400114be:	49 8d 53 e8          	lea    -0x18(%r11),%rdx
1400114c2:	48 8b 5d 2c          	mov    0x2c(%rbp),%rbx
1400114c6:	41 b1 01             	mov    $0x1,%r9b
1400114c9:	41 b8 0a 00 00 00    	mov    $0xa,%r8d
1400114cf:	49 89 43 08          	mov    %rax,0x8(%r11)
1400114d3:	48 8b cd             	mov    %rbp,%rcx
1400114d6:	49 89 43 e8          	mov    %rax,-0x18(%r11)
1400114da:	e8 c1 e1 ff ff       	call   0x14000f6a0
1400114df:	89 07                	mov    %eax,(%rdi)
1400114e1:	33 c9                	xor    %ecx,%ecx
1400114e3:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400114e7:	38 48 30             	cmp    %cl,0x30(%rax)
1400114ea:	74 06                	je     0x1400114f2
1400114ec:	83 78 2c 22          	cmpl   $0x22,0x2c(%rax)
1400114f0:	74 11                	je     0x140011503
1400114f2:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
1400114f7:	48 3b 46 10          	cmp    0x10(%rsi),%rax
1400114fb:	72 06                	jb     0x140011503
1400114fd:	48 89 46 10          	mov    %rax,0x10(%rsi)
140011501:	b1 01                	mov    $0x1,%cl
140011503:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
140011508:	8a c1                	mov    %cl,%al
14001150a:	48 89 5d 2c          	mov    %rbx,0x2c(%rbp)
14001150e:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140011513:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140011518:	48 83 c4 30          	add    $0x30,%rsp