1402bf20c:	40 8a c6             	mov    %sil,%al
1402bf20f:	eb 15                	jmp    0x1402bf226
1402bf211:	4d 85 e4             	test   %r12,%r12
1402bf214:	74 1f                	je     0x1402bf235
1402bf216:	45 84 ff             	test   %r15b,%r15b
1402bf219:	75 08                	jne    0x1402bf223
1402bf21b:	48 83 7c 24 20 00    	cmpq   $0x0,0x20(%rsp)
1402bf221:	74 12                	je     0x1402bf235
1402bf223:	41 8a c6             	mov    %r14b,%al
1402bf226:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
1402bf22b:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
1402bf232:	00
1402bf233:	eb 0f                	jmp    0x1402bf244
1402bf235:	44 8b 4c 24 70       	mov    0x70(%rsp),%r9d
1402bf23a:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
1402bf241:	00
1402bf242:	32 c0                	xor    %al,%al
1402bf244:	44 8b 7c 24 78       	mov    0x78(%rsp),%r15d
1402bf249:	41 8b cd             	mov    %r13d,%ecx
1402bf24c:	48 d3 eb             	shr    %cl,%rbx
1402bf24f:	49 bc 00 00 80 ff ff 	movabs $0xfffffff800000,%r12
1402bf256:	ff 0f 00
1402bf259:	0f b6 c0             	movzbl %al,%eax
1402bf25c:	48 03 d8             	add    %rax,%rbx
1402bf25f:	41 8a 52 08          	mov    0x8(%r10),%dl
1402bf263:	48 85 db             	test   %rbx,%rbx
1402bf266:	75 24                	jne    0x1402bf28c
1402bf268:	49 8b 0a             	mov    (%r10),%rcx
1402bf26b:	84 d2                	test   %dl,%dl
1402bf26d:	74 0c                	je     0x1402bf27b
1402bf26f:	48 8b c6             	mov    %rsi,%rax
1402bf272:	48 c1 e0 3f          	shl    $0x3f,%rax
1402bf276:	48 89 01             	mov    %rax,(%rcx)
1402bf279:	eb 07                	jmp    0x1402bf282
1402bf27b:	8b c6                	mov    %esi,%eax
1402bf27d:	c1 e0 1f             	shl    $0x1f,%eax
1402bf280:	89 01                	mov    %eax,(%rcx)
1402bf282:	b8 02 00 00 00       	mov    $0x2,%eax
1402bf287:	e9 c4 01 00 00       	jmp    0x1402bf450
1402bf28c:	8a c2                	mov    %dl,%al
1402bf28e:	f6 d8                	neg    %al
1402bf290:	48 1b c9             	sbb    %rcx,%rcx
1402bf293:	49 23 cc             	and    %r12,%rcx
1402bf296:	48 81 c1 ff ff 7f 00 	add    $0x7fffff,%rcx
1402bf29d:	48 3b d9             	cmp    %rcx,%rbx
1402bf2a0:	0f 86 4b 01 00 00    	jbe    0x1402bf3f1
1402bf2a6:	41 8b ff             	mov    %r15d,%edi
1402bf2a9:	41 2b f9             	sub    %r9d,%edi
1402bf2ac:	2b fd                	sub    %ebp,%edi
1402bf2ae:	41 2b fe             	sub    %r14d,%edi
1402bf2b1:	e9 3b 01 00 00       	jmp    0x1402bf3f1
1402bf2b6:	41 8b c9             	mov    %r9d,%ecx
1402bf2b9:	e9 30 01 00 00       	jmp    0x1402bf3ee
1402bf2be:	85 ed                	test   %ebp,%ebp
1402bf2c0:	0f 89 24 01 00 00    	jns    0x1402bf3ea
1402bf2c6:	f7 dd                	neg    %ebp
1402bf2c8:	83 fd 40             	cmp    $0x40,%ebp
1402bf2cb:	72 07                	jb     0x1402bf2d4
1402bf2cd:	33 db                	xor    %ebx,%ebx
1402bf2cf:	e9 a6 00 00 00       	jmp    0x1402bf37a
1402bf2d4:	41 be 01 00 00 00    	mov    $0x1,%r14d
1402bf2da:	8b cd                	mov    %ebp,%ecx
1402bf2dc:	45 8b ee             	mov    %r14d,%r13d
1402bf2df:	41 8b c6             	mov    %r14d,%eax
1402bf2e2:	49 d3 e5             	shl    %cl,%r13
1402bf2e5:	8d 4d ff             	lea    -0x1(%rbp),%ecx
1402bf2e8:	48 d3 e0             	shl    %cl,%rax
1402bf2eb:	4c 23 eb             	and    %rbx,%r13
1402bf2ee:	4c 8b e0             	mov    %rax,%r12
1402bf2f1:	4c 23 e3             	and    %rbx,%r12
1402bf2f4:	45 84 db             	test   %r11b,%r11b
1402bf2f7:	74 0d                	je     0x1402bf306
1402bf2f9:	48 ff c8             	dec    %rax
1402bf2fc:	48 85 c3             	test   %rax,%rbx
1402bf2ff:	75 05                	jne    0x1402bf306
1402bf301:	45 32 ff             	xor    %r15b,%r15b
1402bf304:	eb 03                	jmp    0x1402bf309
1402bf306:	45 8a fe             	mov    %r14b,%r15b
1402bf309:	4d 85 e4             	test   %r12,%r12
1402bf30c:	75 05                	jne    0x1402bf313
1402bf30e:	45 84 ff             	test   %r15b,%r15b
1402bf311:	74 50                	je     0x1402bf363
1402bf313:	e8 90 69 01 00       	call   0x1402d5ca8
1402bf318:	85 c0                	test   %eax,%eax
1402bf31a:	74 23                	je     0x1402bf33f
1402bf31c:	3d 00 01 00 00       	cmp    $0x100,%eax
1402bf321:	74 17                	je     0x1402bf33a
1402bf323:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
1402bf32a:	00
1402bf32b:	3d 00 02 00 00       	cmp    $0x200,%eax
1402bf330:	75 31                	jne    0x1402bf363
1402bf332:	40 8a c6             	mov    %sil,%al
1402bf335:	41 32 c6             	xor    %r14b,%al
1402bf338:	eb 2b                	jmp    0x1402bf365
1402bf33a:	40 8a c6             	mov    %sil,%al
1402bf33d:	eb 12                	jmp    0x1402bf351
1402bf33f:	4d 85 e4             	test   %r12,%r12
1402bf342:	74 17                	je     0x1402bf35b
1402bf344:	45 84 ff             	test   %r15b,%r15b
1402bf347:	75 05                	jne    0x1402bf34e
1402bf349:	4d 85 ed             	test   %r13,%r13
1402bf34c:	74 0d                	je     0x1402bf35b
1402bf34e:	41 8a c6             	mov    %r14b,%al
1402bf351:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
1402bf358:	00
1402bf359:	eb 0a                	jmp    0x1402bf365
1402bf35b:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
1402bf362:	00
1402bf363:	32 c0                	xor    %al,%al
1402bf365:	8b cd                	mov    %ebp,%ecx
1402bf367:	0f b6 c0             	movzbl %al,%eax
1402bf36a:	48 d3 eb             	shr    %cl,%rbx
1402bf36d:	49 bc 00 00 80 ff ff 	movabs $0xfffffff800000,%r12
1402bf374:	ff 0f 00
1402bf377:	48 03 d8             	add    %rax,%rbx
1402bf37a:	41 8a 52 08          	mov    0x8(%r10),%dl
1402bf37e:	8a c2                	mov    %dl,%al
1402bf380:	f6 d8                	neg    %al
1402bf382:	48 b8 00 00 00 ff ff 	movabs $0x1fffffff000000,%rax
1402bf389:	ff 1f 00
1402bf38c:	48 1b c9             	sbb    %rcx,%rcx
1402bf38f:	48 23 c8             	and    %rax,%rcx
1402bf392:	48 81 c1 ff ff ff 00 	add    $0xffffff,%rcx
1402bf399:	48 3b d9             	cmp    %rcx,%rbx
1402bf39c:	76 53                	jbe    0x1402bf3f1
1402bf39e:	48 d1 eb             	shr    $1,%rbx
1402bf3a1:	8a c2                	mov    %dl,%al
1402bf3a3:	ff c7                	inc    %edi
1402bf3a5:	f6 d8                	neg    %al
1402bf3a7:	1b c9                	sbb    %ecx,%ecx
1402bf3a9:	81 e1 80 03 00 00    	and    $0x380,%ecx
1402bf3af:	83 c1 7f             	add    $0x7f,%ecx
1402bf3b2:	3b f9                	cmp    %ecx,%edi
1402bf3b4:	7e 3b                	jle    0x1402bf3f1
1402bf3b6:	4d 8b 02             	mov    (%r10),%r8
1402bf3b9:	84 d2                	test   %dl,%dl
1402bf3bb:	74 19                	je     0x1402bf3d6
1402bf3bd:	48 8b c6             	mov    %rsi,%rax
1402bf3c0:	48 b9 00 00 00 00 00 	movabs $0x7ff0000000000000,%rcx
1402bf3c7:	00 f0 7f
1402bf3ca:	48 c1 e0 3f          	shl    $0x3f,%rax
1402bf3ce:	48 0b c1             	or     %rcx,%rax
1402bf3d1:	49 89 00             	mov    %rax,(%r8)
1402bf3d4:	eb 0d                	jmp    0x1402bf3e3
1402bf3d6:	8b c6                	mov    %esi,%eax
1402bf3d8:	c1 e0 1f             	shl    $0x1f,%eax
1402bf3db:	0d 00 00 80 7f       	or     $0x7f800000,%eax
1402bf3e0:	41 89 00             	mov    %eax,(%r8)
1402bf3e3:	b8 03 00 00 00       	mov    $0x3,%eax
1402bf3e8:	eb 66                	jmp    0x1402bf450
1402bf3ea:	7e 05                	jle    0x1402bf3f1
1402bf3ec:	8b cd                	mov    %ebp,%ecx
1402bf3ee:	48 d3 e3             	shl    %cl,%rbx
1402bf3f1:	4d 8b 0a             	mov    (%r10),%r9
1402bf3f4:	8a c2                	mov    %dl,%al
1402bf3f6:	f6 d8                	neg    %al
1402bf3f8:	4d 1b c0             	sbb    %r8,%r8
1402bf3fb:	4d 23 c4             	and    %r12,%r8
1402bf3fe:	49 81 c0 ff ff 7f 00 	add    $0x7fffff,%r8
1402bf405:	4c 23 c3             	and    %rbx,%r8
1402bf408:	84 d2                	test   %dl,%dl
1402bf40a:	74 22                	je     0x1402bf42e
1402bf40c:	8d 8f ff 03 00 00    	lea    0x3ff(%rdi),%ecx
1402bf412:	48 8b c6             	mov    %rsi,%rax
1402bf415:	81 e1 ff 07 00 00    	and    $0x7ff,%ecx
1402bf41b:	48 c1 e0 0b          	shl    $0xb,%rax
1402bf41f:	48 0b c8             	or     %rax,%rcx
1402bf422:	48 c1 e1 34          	shl    $0x34,%rcx
1402bf426:	49 0b c8             	or     %r8,%rcx
1402bf429:	49 89 09             	mov    %rcx,(%r9)
1402bf42c:	eb 20                	jmp    0x1402bf44e
1402bf42e:	8d 4f 7f             	lea    0x7f(%rdi),%ecx
1402bf431:	8b c6                	mov    %esi,%eax
1402bf433:	c1 e1 17             	shl    $0x17,%ecx
1402bf436:	41 81 e0 ff ff 7f 00 	and    $0x7fffff,%r8d
1402bf43d:	81 e1 00 00 80 7f    	and    $0x7f800000,%ecx
1402bf443:	c1 e0 1f             	shl    $0x1f,%eax
1402bf446:	0b c8                	or     %eax,%ecx
1402bf448:	41 0b c8             	or     %r8d,%ecx
1402bf44b:	41 89 09             	mov    %ecx,(%r9)
1402bf44e:	33 c0                	xor    %eax,%eax
1402bf450:	48 8b 9c 24 80 00 00 	mov    0x80(%rsp),%rbx
1402bf457:	00
1402bf458:	48 83 c4 30          	add    $0x30,%rsp
1402bf45c:	41 5f                	pop    %r15
1402bf45e:	41 5e                	pop    %r14
1402bf460:	41 5d                	pop    %r13
1402bf462:	41 5c                	pop    %r12
1402bf464:	5f                   	pop    %rdi
1402bf465:	5e                   	pop    %rsi
1402bf466:	5d                   	pop    %rbp
1402bf467:	c3                   	ret
1402bf468:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1402bf46d:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1402bf472:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1402bf477:	57                   	push   %rdi
1402bf478:	41 54                	push   %r12
1402bf47a:	41 55                	push   %r13
1402bf47c:	41 56                	push   %r14
1402bf47e:	41 57                	push   %r15
1402bf480:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1402bf485:	8b fa                	mov    %edx,%edi
1402bf487:	41 bd 40 00 00 00    	mov    $0x40,%r13d
1402bf48d:	45 8a f8             	mov    %r8b,%r15b
1402bf490:	4c 8b d9             	mov    %rcx,%r11
1402bf493:	8a 45 08             	mov    0x8(%rbp),%al
1402bf496:	f6 d8                	neg    %al
1402bf498:	1b d2                	sbb    %edx,%edx
1402bf49a:	45 33 d2             	xor    %r10d,%r10d
1402bf49d:	83 e2 1d             	and    $0x1d,%edx
1402bf4a0:	83 c2 17             	add    $0x17,%edx
1402bf4a3:	41 3b fd             	cmp    %r13d,%edi
1402bf4a6:	77 29                	ja     0x1402bf4d1
1402bf4a8:	44 39 11             	cmp    %r10d,(%rcx)
1402bf4ab:	76 0e                	jbe    0x1402bf4bb
1402bf4ad:	83 39 01             	cmpl   $0x1,(%rcx)
1402bf4b0:	8b 41 04             	mov    0x4(%rcx),%eax
1402bf4b3:	76 09                	jbe    0x1402bf4be
1402bf4b5:	44 8b 51 08          	mov    0x8(%rcx),%r10d
1402bf4b9:	eb 03                	jmp    0x1402bf4be
1402bf4bb:	41 8b c2             	mov    %r10d,%eax
1402bf4be:	41 8b ca             	mov    %r10d,%ecx
1402bf4c1:	41 80 f1 01          	xor    $0x1,%r9b
1402bf4c5:	48 c1 e1 20          	shl    $0x20,%rcx
1402bf4c9:	48 03 c8             	add    %rax,%rcx
1402bf4cc:	e9 d4 00 00 00       	jmp    0x1402bf5a5
1402bf4d1:	44 8b c7             	mov    %edi,%r8d
1402bf4d4:	c1 ef 05             	shr    $0x5,%edi
1402bf4d7:	8d 77 fe             	lea    -0x2(%rdi),%esi
1402bf4da:	44 8b 64 b1 04       	mov    0x4(%rcx,%rsi,4),%r12d
1402bf4df:	8d 47 ff             	lea    -0x1(%rdi),%eax
1402bf4e2:	8b 5c 81 04          	mov    0x4(%rcx,%rax,4),%ebx
1402bf4e6:	44 8b f6             	mov    %esi,%r14d
1402bf4e9:	41 c1 e6 05          	shl    $0x5,%r14d
1402bf4ed:	41 83 e0 1f          	and    $0x1f,%r8d
1402bf4f1:	75 36                	jne    0x1402bf529
1402bf4f3:	48 c1 e3 20          	shl    $0x20,%rbx
1402bf4f7:	41 03 d6             	add    %r14d,%edx
1402bf4fa:	49 03 dc             	add    %r12,%rbx
1402bf4fd:	41 80 f1 01          	xor    $0x1,%r9b
1402bf501:	41 8b fa             	mov    %r10d,%edi
1402bf504:	85 f6                	test   %esi,%esi
1402bf506:	0f 84 93 00 00 00    	je     0x1402bf59f
1402bf50c:	8b cf                	mov    %edi,%ecx
1402bf50e:	45 8b c2             	mov    %r10d,%r8d
1402bf511:	41 0f b6 c1          	movzbl %r9b,%eax
1402bf515:	45 39 54 8b 04       	cmp    %r10d,0x4(%r11,%rcx,4)
1402bf51a:	44 0f 44 c0          	cmove  %eax,%r8d
1402bf51e:	ff c7                	inc    %edi
1402bf520:	45 8a c8             	mov    %r8b,%r9b
1402bf523:	3b fe                	cmp    %esi,%edi
1402bf525:	75 e5                	jne    0x1402bf50c
1402bf527:	eb 76                	jmp    0x1402bf59f
1402bf529:	45 2b e8             	sub    %r8d,%r13d
1402bf52c:	41 8b c8             	mov    %r8d,%ecx
1402bf52f:	45 03 f0             	add    %r8d,%r14d
1402bf532:	b8 01 00 00 00       	mov    $0x1,%eax
1402bf537:	44 03 f2             	add    %edx,%r14d
1402bf53a:	d3 e0                	shl    %cl,%eax
1402bf53c:	41 8b 54 bb 04       	mov    0x4(%r11,%rdi,4),%edx
1402bf541:	ff c8                	dec    %eax
1402bf543:	41 8d 4d e0          	lea    -0x20(%r13),%ecx
1402bf547:	8b f8                	mov    %eax,%edi
1402bf549:	48 23 d7             	and    %rdi,%rdx
1402bf54c:	48 d3 e3             	shl    %cl,%rbx
1402bf54f:	41 8b cd             	mov    %r13d,%ecx
1402bf552:	48 d3 e2             	shl    %cl,%rdx
1402bf555:	41 8b c8             	mov    %r8d,%ecx
1402bf558:	48 03 da             	add    %rdx,%rbx
1402bf55b:	8b d0                	mov    %eax,%edx
1402bf55d:	f7 d2                	not    %edx
1402bf55f:	49 23 d4             	and    %r12,%rdx
1402bf562:	48 d3 ea             	shr    %cl,%rdx
1402bf565:	48 03 da             	add    %rdx,%rbx
1402bf568:	45 84 c9             	test   %r9b,%r9b
1402bf56b:	75 07                	jne    0x1402bf574
1402bf56d:	b0 01                	mov    $0x1,%al
1402bf56f:	44 85 e7             	test   %r12d,%edi
1402bf572:	74 03                	je     0x1402bf577
1402bf574:	41 8a c2             	mov    %r10b,%al
1402bf577:	41 8b ca             	mov    %r10d,%ecx
1402bf57a:	85 f6                	test   %esi,%esi
1402bf57c:	74 1b                	je     0x1402bf599
1402bf57e:	44 8b c1             	mov    %ecx,%r8d
1402bf581:	45 8b ca             	mov    %r10d,%r9d
1402bf584:	0f b6 c0             	movzbl %al,%eax
1402bf587:	47 39 54 83 04       	cmp    %r10d,0x4(%r11,%r8,4)
1402bf58c:	44 0f 44 c8          	cmove  %eax,%r9d
1402bf590:	ff c1                	inc    %ecx
1402bf592:	41 8a c1             	mov    %r9b,%al
1402bf595:	3b ce                	cmp    %esi,%ecx
1402bf597:	75 e5                	jne    0x1402bf57e
1402bf599:	44 8a c8             	mov    %al,%r9b
1402bf59c:	41 8b d6             	mov    %r14d,%edx
1402bf59f:	48 8b cb             	mov    %rbx,%rcx
1402bf5a2:	45 8a c7             	mov    %r15b,%r8b
1402bf5a5:	48 89 6c 24 50       	mov    %rbp,0x50(%rsp)
1402bf5aa:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1402bf5af:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
1402bf5b4:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1402bf5b9:	41 5f                	pop    %r15
1402bf5bb:	41 5e                	pop    %r14
1402bf5bd:	41 5d                	pop    %r13
1402bf5bf:	41 5c                	pop    %r12
1402bf5c1:	5f                   	pop    %rdi
1402bf5c2:	e9 f5 fa ff ff       	jmp    0x1402bf0bc
1402bf5c7:	cc                   	int3
1402bf5c8:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1402bf5cd:	55                   	push   %rbp
1402bf5ce:	56                   	push   %rsi
1402bf5cf:	57                   	push   %rdi
1402bf5d0:	41 54                	push   %r12
1402bf5d2:	41 55                	push   %r13
1402bf5d4:	41 56                	push   %r14
1402bf5d6:	41 57                	push   %r15
1402bf5d8:	48 8d ac 24 80 f5 ff 	lea    -0xa80(%rsp),%rbp
1402bf5df:	ff
1402bf5e0:	48 81 ec 80 0b 00 00 	sub    $0xb80,%rsp
1402bf5e7:	48 8b 05 92 64 11 00 	mov    0x116492(%rip),%rax        # 0x1403d5a80
1402bf5ee:	48 33 c4             	xor    %rsp,%rax
1402bf5f1:	48 89 85 70 0a 00 00 	mov    %rax,0xa70(%rbp)
1402bf5f8:	8a 42 08             	mov    0x8(%rdx),%al
1402bf5fb:	4c 8d 25 fe 09 d4 ff 	lea    -0x2bf602(%rip),%r12        # 0x140000000
1402bf602:	44 8b 11             	mov    (%rcx),%r10d
1402bf605:	f6 d8                	neg    %al
1402bf607:	4c 8b c9             	mov    %rcx,%r9
1402bf60a:	48 89 54 24 60       	mov    %rdx,0x60(%rsp)
1402bf60f:	8b 51 04             	mov    0x4(%rcx),%edx
1402bf612:	1b c0                	sbb    %eax,%eax
1402bf614:	83 e0 1d             	and    $0x1d,%eax
1402bf617:	48 89 4c 24 58       	mov    %rcx,0x58(%rsp)
1402bf61c:	83 c0 19             	add    $0x19,%eax
1402bf61f:	45 33 db             	xor    %r11d,%r11d
1402bf622:	45 85 d2             	test   %r10d,%r10d
1402bf625:	89 44 24 50          	mov    %eax,0x50(%rsp)
1402bf629:	4d 8d 41 08          	lea    0x8(%r9),%r8
1402bf62d:	44 89 9d 30 03 00 00 	mov    %r11d,0x330(%rbp)
1402bf634:	45 0f 48 d3          	cmovs  %r11d,%r10d
1402bf638:	45 8b f3             	mov    %r11d,%r14d
1402bf63b:	44 3b d2             	cmp    %edx,%r10d
1402bf63e:	41 8d 5b 26          	lea    0x26(%r11),%ebx
1402bf642:	41 8b c2             	mov    %r10d,%eax
1402bf645:	45 8b fb             	mov    %r11d,%r15d
1402bf648:	0f 43 c2             	cmovae %edx,%eax
1402bf64b:	45 8b eb             	mov    %r11d,%r13d
1402bf64e:	44 2b d0             	sub    %eax,%r10d
1402bf651:	8b c8                	mov    %eax,%ecx
1402bf653:	4c 03 c1             	add    %rcx,%r8
1402bf656:	44 89 54 24 34       	mov    %r10d,0x34(%rsp)
1402bf65b:	49 8d 41 08          	lea    0x8(%r9),%rax