14057a206:	89 41 10             	mov    %eax,0x10(%rcx)
14057a209:	85 c0                	test   %eax,%eax
14057a20b:	7f 14                	jg     0x14057a221
14057a20d:	78 33                	js     0x14057a242
14057a20f:	48 8b 01             	mov    (%rcx),%rax
14057a212:	ba 01 00 00 00       	mov    $0x1,%edx
14057a217:	48 8b 00             	mov    (%rax),%rax
14057a21a:	ff 15 00 98 a0 00    	call   *0xa09800(%rip)        # 0x140f83a20
14057a220:	90                   	nop
14057a221:	48 8b c7             	mov    %rdi,%rax
14057a224:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
14057a229:	48 33 cc             	xor    %rsp,%rcx
14057a22c:	e8 cf 12 8a 00       	call   0x140e1b500
14057a231:	48 8b 9c 24 a8 00 00 	mov    0xa8(%rsp),%rbx
14057a238:	00
14057a239:	48 83 c4 70          	add    $0x70,%rsp
14057a23d:	41 5e                	pop    %r14
14057a23f:	5f                   	pop    %rdi
14057a240:	5e                   	pop    %rsi
14057a241:	c3                   	ret
14057a242:	b9 02 00 00 00       	mov    $0x2,%ecx
14057a247:	e8 b4 04 21 00       	call   0x14078a700
14057a24c:	90                   	nop
14057a24d:	b9 02 00 00 00       	mov    $0x2,%ecx
14057a252:	e8 a9 04 21 00       	call   0x14078a700
14057a257:	90                   	nop
14057a258:	48 8d 0d 89 7e ea 00 	lea    0xea7e89(%rip),%rcx        # 0x1414220e8
14057a25f:	e8 68 14 8a 00       	call   0x140e1b6cc
14057a264:	83 3d 7d 7e ea 00 ff 	cmpl   $0xffffffff,0xea7e7d(%rip)        # 0x1414220e8
14057a26b:	0f 85 7f fe ff ff    	jne    0x14057a0f0
14057a271:	48 8d 0d c8 95 9f 00 	lea    0x9f95c8(%rip),%rcx        # 0x140f73840
14057a278:	e8 f7 10 8a 00       	call   0x140e1b374
14057a27d:	48 8d 0d 64 7e ea 00 	lea    0xea7e64(%rip),%rcx        # 0x1414220e8
14057a284:	e8 d7 13 8a 00       	call   0x140e1b660
14057a289:	e9 62 fe ff ff       	jmp    0x14057a0f0
14057a28e:	e8 11 ff 8a 00       	call   0x140e2a1a4
14057a293:	90                   	nop
14057a294:	b9 02 00 00 00       	mov    $0x2,%ecx
14057a299:	e8 62 04 21 00       	call   0x14078a700
14057a29e:	cc                   	int3
14057a29f:	cc                   	int3
14057a2a0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14057a2a5:	57                   	push   %rdi
14057a2a6:	48 83 ec 30          	sub    $0x30,%rsp
14057a2aa:	48 8b f9             	mov    %rcx,%rdi
14057a2ad:	48 8b da             	mov    %rdx,%rbx
14057a2b0:	48 8b ca             	mov    %rdx,%rcx
14057a2b3:	e8 a8 81 22 00       	call   0x1407a2460
14057a2b8:	44 8b 43 18          	mov    0x18(%rbx),%r8d
14057a2bc:	4c 8b c8             	mov    %rax,%r9
14057a2bf:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14057a2c3:	48 8b cf             	mov    %rdi,%rcx
14057a2c6:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14057a2cd:	00 00
14057a2cf:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
14057a2d6:	00 00
14057a2d8:	e8 53 01 00 00       	call   0x14057a430
14057a2dd:	85 c0                	test   %eax,%eax
14057a2df:	78 1b                	js     0x14057a2fc
14057a2e1:	48 98                	cltq
14057a2e3:	48 c1 e0 05          	shl    $0x5,%rax
14057a2e7:	48 03 47 40          	add    0x40(%rdi),%rax
14057a2eb:	74 0f                	je     0x14057a2fc
14057a2ed:	48 8b 40 10          	mov    0x10(%rax),%rax
14057a2f1:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14057a2f6:	48 83 c4 30          	add    $0x30,%rsp
14057a2fa:	5f                   	pop    %rdi
14057a2fb:	c3                   	ret
14057a2fc:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14057a301:	33 c0                	xor    %eax,%eax
14057a303:	48 83 c4 30          	add    $0x30,%rsp
14057a307:	5f                   	pop    %rdi
14057a308:	c3                   	ret
14057a309:	cc                   	int3
14057a30a:	cc                   	int3
14057a30b:	cc                   	int3
14057a30c:	cc                   	int3
14057a30d:	cc                   	int3
14057a30e:	cc                   	int3
14057a30f:	cc                   	int3
14057a310:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14057a315:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14057a31a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14057a31f:	57                   	push   %rdi
14057a320:	41 54                	push   %r12
14057a322:	41 55                	push   %r13
14057a324:	41 56                	push   %r14
14057a326:	41 57                	push   %r15
14057a328:	48 83 ec 20          	sub    $0x20,%rsp
14057a32c:	48 63 74 24 70       	movslq 0x70(%rsp),%rsi
14057a331:	4c 8b e9             	mov    %rcx,%r13
14057a334:	8b 6c 24 78          	mov    0x78(%rsp),%ebp
14057a338:	4d 8b f9             	mov    %r9,%r15
14057a33b:	45 8b f0             	mov    %r8d,%r14d
14057a33e:	4c 8b e2             	mov    %rdx,%r12
14057a341:	8b fe                	mov    %esi,%edi
14057a343:	b9 ff ff 00 00       	mov    $0xffff,%ecx
14057a348:	3b f5                	cmp    %ebp,%esi
14057a34a:	7d 70                	jge    0x14057a3bc
14057a34c:	49 8b 5d 40          	mov    0x40(%r13),%rbx
14057a350:	48 8b c6             	mov    %rsi,%rax
14057a353:	48 c1 e0 05          	shl    $0x5,%rax
14057a357:	48 83 c3 18          	add    $0x18,%rbx
14057a35b:	48 03 d8             	add    %rax,%rbx
14057a35e:	66 90                	xchg   %ax,%ax
14057a360:	0f b7 43 e8          	movzwl -0x18(%rbx),%eax
14057a364:	66 3b c1             	cmp    %cx,%ax
14057a367:	74 53                	je     0x14057a3bc
14057a369:	8b cf                	mov    %edi,%ecx
14057a36b:	2b c8                	sub    %eax,%ecx
14057a36d:	3b ce                	cmp    %esi,%ecx
14057a36f:	7f 46                	jg     0x14057a3b7
14057a371:	75 2f                	jne    0x14057a3a2
14057a373:	8b 43 f0             	mov    -0x10(%rbx),%eax
14057a376:	49 33 c7             	xor    %r15,%rax
14057a379:	8b c0                	mov    %eax,%eax
14057a37b:	48 85 c0             	test   %rax,%rax
14057a37e:	75 22                	jne    0x14057a3a2
14057a380:	8b 43 ec             	mov    -0x14(%rbx),%eax
14057a383:	41 3b c6             	cmp    %r14d,%eax
14057a386:	75 1a                	jne    0x14057a3a2
14057a388:	48 8b cb             	mov    %rbx,%rcx
14057a38b:	83 f8 08             	cmp    $0x8,%eax
14057a38e:	76 03                	jbe    0x14057a393
14057a390:	48 8b 0b             	mov    (%rbx),%rcx
14057a393:	4c 8b c0             	mov    %rax,%r8
14057a396:	49 8b d4             	mov    %r12,%rdx
14057a399:	e8 b2 56 96 00       	call   0x140edfa50
14057a39e:	85 c0                	test   %eax,%eax
14057a3a0:	74 11                	je     0x14057a3b3
14057a3a2:	ff c7                	inc    %edi
14057a3a4:	48 83 c3 20          	add    $0x20,%rbx
14057a3a8:	b9 ff ff 00 00       	mov    $0xffff,%ecx
14057a3ad:	3b fd                	cmp    %ebp,%edi
14057a3af:	7d 0b                	jge    0x14057a3bc
14057a3b1:	eb ad                	jmp    0x14057a360
14057a3b3:	8b c7                	mov    %edi,%eax
14057a3b5:	eb 2e                	jmp    0x14057a3e5
14057a3b7:	b9 ff ff 00 00       	mov    $0xffff,%ecx
14057a3bc:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
14057a3c3:	00
14057a3c4:	48 85 c0             	test   %rax,%rax
14057a3c7:	74 02                	je     0x14057a3cb
14057a3c9:	89 38                	mov    %edi,(%rax)
14057a3cb:	48 8b 84 24 88 00 00 	mov    0x88(%rsp),%rax
14057a3d2:	00
14057a3d3:	48 85 c0             	test   %rax,%rax
14057a3d6:	74 08                	je     0x14057a3e0
14057a3d8:	2b fe                	sub    %esi,%edi
14057a3da:	89 38                	mov    %edi,(%rax)
14057a3dc:	3b f9                	cmp    %ecx,%edi
14057a3de:	7d 22                	jge    0x14057a402
14057a3e0:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
14057a3e5:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
14057a3ea:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
14057a3ef:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
14057a3f4:	48 83 c4 20          	add    $0x20,%rsp
14057a3f8:	41 5f                	pop    %r15
14057a3fa:	41 5e                	pop    %r14
14057a3fc:	41 5d                	pop    %r13
14057a3fe:	41 5c                	pop    %r12
14057a400:	5f                   	pop    %rdi
14057a401:	c3                   	ret
14057a402:	49 8b cd             	mov    %r13,%rcx
14057a405:	e8 c6 bc cf ff       	call   0x1402760d0
14057a40a:	48 8b 0d e7 70 eb 00 	mov    0xeb70e7(%rip),%rcx        # 0x1414314f8
14057a411:	48 8d 15 80 44 a6 00 	lea    0xa64480(%rip),%rdx        # 0x140fde898
14057a418:	44 8b cf             	mov    %edi,%r9d
14057a41b:	44 8b c0             	mov    %eax,%r8d
14057a41e:	e8 2d 95 21 00       	call   0x140793950
14057a423:	cc                   	int3
14057a424:	cc                   	int3
14057a425:	cc                   	int3
14057a426:	cc                   	int3
14057a427:	cc                   	int3
14057a428:	cc                   	int3
14057a429:	cc                   	int3
14057a42a:	cc                   	int3
14057a42b:	cc                   	int3
14057a42c:	cc                   	int3
14057a42d:	cc                   	int3
14057a42e:	cc                   	int3
14057a42f:	cc                   	int3
14057a430:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14057a435:	44 89 44 24 18       	mov    %r8d,0x18(%rsp)
14057a43a:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14057a43f:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14057a444:	53                   	push   %rbx
14057a445:	55                   	push   %rbp
14057a446:	56                   	push   %rsi
14057a447:	57                   	push   %rdi
14057a448:	41 54                	push   %r12
14057a44a:	41 55                	push   %r13
14057a44c:	41 56                	push   %r14
14057a44e:	41 57                	push   %r15
14057a450:	48 83 ec 68          	sub    $0x68,%rsp
14057a454:	48 83 79 40 00       	cmpq   $0x0,0x40(%rcx)
14057a459:	4c 8b d2             	mov    %rdx,%r10
14057a45c:	48 8b d9             	mov    %rcx,%rbx
14057a45f:	0f 84 b6 01 00 00    	je     0x14057a61b
14057a465:	0f b7 41 02          	movzwl 0x2(%rcx),%eax
14057a469:	48 be 15 7c 4a 7f b9 	movabs $0x9e3779b97f4a7c15,%rsi
14057a470:	79 37 9e
14057a473:	41 8b f9             	mov    %r9d,%edi
14057a476:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
14057a47b:	66 85 c0             	test   %ax,%ax
14057a47e:	75 04                	jne    0x14057a484
14057a480:	33 d2                	xor    %edx,%edx
14057a482:	eb 1a                	jmp    0x14057a49e
14057a484:	48 8b d7             	mov    %rdi,%rdx
14057a487:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
14057a48c:	48 0f af d6          	imul   %rsi,%rdx
14057a490:	b9 40 00 00 00       	mov    $0x40,%ecx
14057a495:	48 2b c8             	sub    %rax,%rcx
14057a498:	48 d3 e2             	shl    %cl,%rdx
14057a49b:	48 d3 ea             	shr    %cl,%rdx
14057a49e:	8b 4b 04             	mov    0x4(%rbx),%ecx
14057a4a1:	48 8b 84 24 d8 00 00 	mov    0xd8(%rsp),%rax
14057a4a8:	00
14057a4a9:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14057a4ae:	48 8b 84 24 d0 00 00 	mov    0xd0(%rsp),%rax
14057a4b5:	00
14057a4b6:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14057a4bb:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
14057a4bf:	48 8b cb             	mov    %rbx,%rcx
14057a4c2:	89 54 24 20          	mov    %edx,0x20(%rsp)
14057a4c6:	49 8b d2             	mov    %r10,%rdx
14057a4c9:	e8 42 fe ff ff       	call   0x14057a310
14057a4ce:	85 c0                	test   %eax,%eax
14057a4d0:	0f 89 4a 01 00 00    	jns    0x14057a620
14057a4d6:	0f b7 03             	movzwl (%rbx),%eax
14057a4d9:	41 bf 01 00 00 00    	mov    $0x1,%r15d
14057a4df:	66 89 44 24 40       	mov    %ax,0x40(%rsp)
14057a4e4:	66 44 3b f8          	cmp    %ax,%r15w
14057a4e8:	0f 87 2d 01 00 00    	ja     0x14057a61b
14057a4ee:	0f b7 43 02          	movzwl 0x2(%rbx),%eax
14057a4f2:	41 bd 41 00 00 00    	mov    $0x41,%r13d
14057a4f8:	8b 53 10             	mov    0x10(%rbx),%edx
14057a4fb:	44 2b e8             	sub    %eax,%r13d
14057a4fe:	89 54 24 48          	mov    %edx,0x48(%rsp)
14057a502:	44 8d 60 ff          	lea    -0x1(%rax),%r12d
14057a506:	41 b8 ff ff 00 00    	mov    $0xffff,%r8d
14057a50c:	45 85 e4             	test   %r12d,%r12d
14057a50f:	75 04                	jne    0x14057a515
14057a511:	33 ff                	xor    %edi,%edi
14057a513:	eb 0d                	jmp    0x14057a522
14057a515:	48 0f af fe          	imul   %rsi,%rdi
14057a519:	49 63 cd             	movslq %r13d,%rcx
14057a51c:	48 d3 e7             	shl    %cl,%rdi
14057a51f:	48 d3 ef             	shr    %cl,%rdi
14057a522:	3b fa                	cmp    %edx,%edi
14057a524:	0f 8f 9d 00 00 00    	jg     0x14057a5c7
14057a52a:	8d 42 01             	lea    0x1(%rdx),%eax
14057a52d:	8b f7                	mov    %edi,%esi
14057a52f:	3b f8                	cmp    %eax,%edi
14057a531:	0f 8d 7e 00 00 00    	jge    0x14057a5b5
14057a537:	48 8b 5b 40          	mov    0x40(%rbx),%rbx
14057a53b:	4c 63 f0             	movslq %eax,%r14
14057a53e:	48 83 c3 18          	add    $0x18,%rbx
14057a542:	48 63 ef             	movslq %edi,%rbp
14057a545:	48 8b c5             	mov    %rbp,%rax
14057a548:	48 c1 e0 05          	shl    $0x5,%rax
14057a54c:	48 03 d8             	add    %rax,%rbx
14057a54f:	90                   	nop
14057a550:	0f b7 43 e8          	movzwl -0x18(%rbx),%eax
14057a554:	66 41 3b c0          	cmp    %r8w,%ax
14057a558:	74 5b                	je     0x14057a5b5
14057a55a:	8b ce                	mov    %esi,%ecx
14057a55c:	2b c8                	sub    %eax,%ecx
14057a55e:	3b cf                	cmp    %edi,%ecx
14057a560:	7f 53                	jg     0x14057a5b5
14057a562:	75 43                	jne    0x14057a5a7
14057a564:	8b 43 f0             	mov    -0x10(%rbx),%eax
14057a567:	48 33 84 24 c8 00 00 	xor    0xc8(%rsp),%rax
14057a56e:	00
14057a56f:	8b c0                	mov    %eax,%eax
14057a571:	48 85 c0             	test   %rax,%rax
14057a574:	75 31                	jne    0x14057a5a7
14057a576:	8b 43 ec             	mov    -0x14(%rbx),%eax
14057a579:	3b 84 24 c0 00 00 00 	cmp    0xc0(%rsp),%eax
14057a580:	75 25                	jne    0x14057a5a7
14057a582:	48 8b cb             	mov    %rbx,%rcx
14057a585:	83 f8 08             	cmp    $0x8,%eax
14057a588:	76 03                	jbe    0x14057a58d
14057a58a:	48 8b 0b             	mov    (%rbx),%rcx
14057a58d:	48 8b 94 24 b8 00 00 	mov    0xb8(%rsp),%rdx
14057a594:	00
14057a595:	4c 8b c0             	mov    %rax,%r8
14057a598:	e8 b3 54 96 00       	call   0x140edfa50
14057a59d:	85 c0                	test   %eax,%eax
14057a59f:	74 4f                	je     0x14057a5f0
14057a5a1:	41 b8 ff ff 00 00    	mov    $0xffff,%r8d
14057a5a7:	ff c6                	inc    %esi
14057a5a9:	48 ff c5             	inc    %rbp
14057a5ac:	48 83 c3 20          	add    $0x20,%rbx
14057a5b0:	49 3b ee             	cmp    %r14,%rbp
14057a5b3:	7c 9b                	jl     0x14057a550
14057a5b5:	c7 44 24 44 ff ff ff 	movl   $0xffffffff,0x44(%rsp)
14057a5bc:	ff
14057a5bd:	48 be 15 7c 4a 7f b9 	movabs $0x9e3779b97f4a7c15,%rsi
14057a5c4:	79 37 9e
14057a5c7:	0f b7 44 24 40       	movzwl 0x40(%rsp),%eax
14057a5cc:	41 ff c7             	inc    %r15d
14057a5cf:	41 ff cc             	dec    %r12d
14057a5d2:	41 ff c5             	inc    %r13d
14057a5d5:	44 3b f8             	cmp    %eax,%r15d
14057a5d8:	7f 41                	jg     0x14057a61b
14057a5da:	48 8b 9c 24 b0 00 00 	mov    0xb0(%rsp),%rbx
14057a5e1:	00
14057a5e2:	8b 54 24 48          	mov    0x48(%rsp),%edx
14057a5e6:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
14057a5eb:	e9 16 ff ff ff       	jmp    0x14057a506
14057a5f0:	89 74 24 44          	mov    %esi,0x44(%rsp)
14057a5f4:	85 f6                	test   %esi,%esi
14057a5f6:	78 c5                	js     0x14057a5bd
14057a5f8:	48 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%rcx
14057a5ff:	00
14057a600:	66 83 79 0c 00       	cmpw   $0x0,0xc(%rcx)
14057a605:	75 10                	jne    0x14057a617
14057a607:	4c 8d 44 24 44       	lea    0x44(%rsp),%r8
14057a60c:	8b d6                	mov    %esi,%edx
14057a60e:	e8 fd 05 00 00       	call   0x14057ac10
14057a613:	8b 74 24 44          	mov    0x44(%rsp),%esi
14057a617:	8b c6                	mov    %esi,%eax
14057a619:	eb 05                	jmp    0x14057a620
14057a61b:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
14057a620:	48 83 c4 68          	add    $0x68,%rsp
14057a624:	41 5f                	pop    %r15
14057a626:	41 5e                	pop    %r14
14057a628:	41 5d                	pop    %r13
14057a62a:	41 5c                	pop    %r12
14057a62c:	5f                   	pop    %rdi
14057a62d:	5e                   	pop    %rsi
14057a62e:	5d                   	pop    %rbp
14057a62f:	5b                   	pop    %rbx
14057a630:	c3                   	ret
14057a631:	cc                   	int3
14057a632:	cc                   	int3
14057a633:	cc                   	int3
14057a634:	cc                   	int3
14057a635:	cc                   	int3
14057a636:	cc                   	int3
14057a637:	cc                   	int3
14057a638:	cc                   	int3
14057a639:	cc                   	int3
14057a63a:	cc                   	int3
14057a63b:	cc                   	int3
14057a63c:	cc                   	int3
14057a63d:	cc                   	int3
14057a63e:	cc                   	int3