14015f2b9:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
14015f2be:	c7 83 b0 00 00 00 11 	movl   $0x11,0xb0(%rbx)
14015f2c5:	00 00 00
14015f2c8:	48 83 c4 20          	add    $0x20,%rsp
14015f2cc:	5b                   	pop    %rbx
14015f2cd:	c3                   	ret
14015f2ce:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14015f2d2:	48 8b cb             	mov    %rbx,%rcx
14015f2d5:	c7 83 94 00 00 00 01 	movl   $0x1,0x94(%rbx)
14015f2dc:	00 00 00
14015f2df:	e8 6c 1c 00 00       	call   0x140160f50
14015f2e4:	85 c0                	test   %eax,%eax
14015f2e6:	75 49                	jne    0x14015f331
14015f2e8:	48 8b 43 08          	mov    0x8(%rbx),%rax
14015f2ec:	c7 83 ac 00 00 00 00 	movl   $0x0,0xac(%rbx)
14015f2f3:	00 00 00
14015f2f6:	48 85 c0             	test   %rax,%rax
14015f2f9:	75 0e                	jne    0x14015f309
14015f2fb:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
14015f302:	33 d2                	xor    %edx,%edx
14015f304:	e8 37 c7 f8 ff       	call   0x1400eba40
14015f309:	48 8b d3             	mov    %rbx,%rdx
14015f30c:	48 89 83 b8 00 00 00 	mov    %rax,0xb8(%rbx)
14015f313:	33 c9                	xor    %ecx,%ecx
14015f315:	c7 83 b0 00 00 00 42 	movl   $0x42,0xb0(%rbx)
14015f31c:	00 00 00
14015f31f:	ff 53 38             	call   *0x38(%rbx)
14015f322:	85 c0                	test   %eax,%eax
14015f324:	75 0b                	jne    0x14015f331
14015f326:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
14015f32b:	48 83 c4 20          	add    $0x20,%rsp
14015f32f:	5b                   	pop    %rbx
14015f330:	c3                   	ret
14015f331:	48 8b 8b f0 00 00 00 	mov    0xf0(%rbx),%rcx
14015f338:	48 85 c9             	test   %rcx,%rcx
14015f33b:	74 17                	je     0x14015f354
14015f33d:	48 8b 49 08          	mov    0x8(%rcx),%rcx
14015f341:	e8 fa c3 f8 ff       	call   0x1400eb740
14015f346:	85 c0                	test   %eax,%eax
14015f348:	7e 0a                	jle    0x14015f354
14015f34a:	48 8b cb             	mov    %rbx,%rcx
14015f34d:	e8 ee 32 00 00       	call   0x140162640
14015f352:	eb 08                	jmp    0x14015f35c
14015f354:	48 8b cb             	mov    %rbx,%rcx
14015f357:	e8 84 3d 00 00       	call   0x1401630e0
14015f35c:	85 c0                	test   %eax,%eax
14015f35e:	7f 13                	jg     0x14015f373
14015f360:	83 bb b0 00 00 00 00 	cmpl   $0x0,0xb0(%rbx)
14015f367:	75 0a                	jne    0x14015f373
14015f369:	c7 83 b0 00 00 00 01 	movl   $0x1,0xb0(%rbx)
14015f370:	00 00 00
14015f373:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
14015f378:	48 83 c4 20          	add    $0x20,%rsp
14015f37c:	5b                   	pop    %rbx
14015f37d:	c3                   	ret
14015f37e:	cc                   	int3
14015f37f:	cc                   	int3
14015f380:	40 53                	rex push %rbx
14015f382:	55                   	push   %rbp
14015f383:	56                   	push   %rsi
14015f384:	57                   	push   %rdi
14015f385:	41 54                	push   %r12
14015f387:	41 55                	push   %r13
14015f389:	41 56                	push   %r14
14015f38b:	41 57                	push   %r15
14015f38d:	b8 48 00 00 00       	mov    $0x48,%eax
14015f392:	e8 99 17 15 00       	call   0x1402b0b30
14015f397:	48 2b e0             	sub    %rax,%rsp
14015f39a:	4c 8b a9 f0 00 00 00 	mov    0xf0(%rcx),%r13
14015f3a1:	48 8b d9             	mov    %rcx,%rbx
14015f3a4:	48 8b 89 98 00 00 00 	mov    0x98(%rcx),%rcx
14015f3ab:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
14015f3b0:	e8 8b c3 f8 ff       	call   0x1400eb740
14015f3b5:	33 ff                	xor    %edi,%edi
14015f3b7:	89 bc 24 90 00 00 00 	mov    %edi,0x90(%rsp)
14015f3be:	44 8b ff             	mov    %edi,%r15d
14015f3c1:	44 8b e7             	mov    %edi,%r12d
14015f3c4:	8d 77 03             	lea    0x3(%rdi),%esi
14015f3c7:	83 f8 01             	cmp    $0x1,%eax
14015f3ca:	0f 85 c4 04 00 00    	jne    0x14015f894
14015f3d0:	39 83 94 00 00 00    	cmp    %eax,0x94(%rbx)
14015f3d6:	0f 85 b8 04 00 00    	jne    0x14015f894
14015f3dc:	48 8b 43 10          	mov    0x10(%rbx),%rax
14015f3e0:	8b ef                	mov    %edi,%ebp
14015f3e2:	48 85 c0             	test   %rax,%rax
14015f3e5:	40 0f 95 c5          	setne  %bpl
14015f3e9:	4d 85 ed             	test   %r13,%r13
14015f3ec:	74 18                	je     0x14015f406
14015f3ee:	41 8b 4d 28          	mov    0x28(%r13),%ecx
14015f3f2:	40 84 ce             	test   %cl,%sil
14015f3f5:	75 0f                	jne    0x14015f406
14015f3f7:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
14015f3fc:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
14015f401:	f6 c1 0c             	test   $0xc,%cl
14015f404:	75 39                	jne    0x14015f43f
14015f406:	48 85 c0             	test   %rax,%rax
14015f409:	74 23                	je     0x14015f42e
14015f40b:	48 8b 43 20          	mov    0x20(%rbx),%rax
14015f40f:	8b 48 14             	mov    0x14(%rax),%ecx
14015f412:	0f ba e1 0f          	bt     $0xf,%ecx
14015f416:	72 16                	jb     0x14015f42e
14015f418:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
14015f41d:	0f ba e1 14          	bt     $0x14,%ecx
14015f421:	72 13                	jb     0x14015f436
14015f423:	48 c7 44 24 30 01 00 	movq   $0x1,0x30(%rsp)
14015f42a:	00 00
14015f42c:	eb 08                	jmp    0x14015f436
14015f42e:	83 cd 02             	or     $0x2,%ebp
14015f431:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
14015f436:	48 c7 44 24 38 01 00 	movq   $0x1,0x38(%rsp)
14015f43d:	00 00
14015f43f:	e8 9c c1 f8 ff       	call   0x1400eb5e0
14015f444:	48 89 84 24 a8 00 00 	mov    %rax,0xa8(%rsp)
14015f44b:	00
14015f44c:	4c 8b f8             	mov    %rax,%r15
14015f44f:	48 85 c0             	test   %rax,%rax
14015f452:	0f 84 d5 04 00 00    	je     0x14015f92d
14015f458:	4d 85 ed             	test   %r13,%r13
14015f45b:	74 29                	je     0x14015f486
14015f45d:	49 8b 4d 08          	mov    0x8(%r13),%rcx
14015f461:	e8 da c2 f8 ff       	call   0x1400eb740
14015f466:	85 c0                	test   %eax,%eax
14015f468:	7e 1c                	jle    0x14015f486
14015f46a:	49 8b 55 10          	mov    0x10(%r13),%rdx
14015f46e:	48 85 d2             	test   %rdx,%rdx
14015f471:	74 13                	je     0x14015f486
14015f473:	45 33 c0             	xor    %r8d,%r8d
14015f476:	49 8b cf             	mov    %r15,%rcx
14015f479:	e8 e2 4a fa ff       	call   0x140103f60
14015f47e:	85 c0                	test   %eax,%eax
14015f480:	0f 84 a7 04 00 00    	je     0x14015f92d
14015f486:	48 8b 53 10          	mov    0x10(%rbx),%rdx
14015f48a:	45 33 c0             	xor    %r8d,%r8d
14015f48d:	49 8b cf             	mov    %r15,%rcx
14015f490:	e8 cb 4a fa ff       	call   0x140103f60
14015f495:	85 c0                	test   %eax,%eax
14015f497:	0f 84 90 04 00 00    	je     0x14015f92d
14015f49d:	48 8b 43 20          	mov    0x20(%rbx),%rax
14015f4a1:	81 78 20 ff ff ff 3f 	cmpl   $0x3fffffff,0x20(%rax)
14015f4a8:	7e 0b                	jle    0x14015f4b5
14015f4aa:	c7 40 20 ff ff ff 3f 	movl   $0x3fffffff,0x20(%rax)
14015f4b1:	48 8b 43 20          	mov    0x20(%rbx),%rax
14015f4b5:	8b 40 20             	mov    0x20(%rax),%eax
14015f4b8:	ff c0                	inc    %eax
14015f4ba:	89 84 24 98 00 00 00 	mov    %eax,0x98(%rsp)
14015f4c1:	85 ed                	test   %ebp,%ebp
14015f4c3:	0f 84 1b 06 00 00    	je     0x14015fae4
14015f4c9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
14015f4d0:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
14015f4d7:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14015f4dc:	e8 5f c2 f8 ff       	call   0x1400eb740
14015f4e1:	44 8b f0             	mov    %eax,%r14d
14015f4e4:	ff c8                	dec    %eax
14015f4e6:	89 84 24 a0 00 00 00 	mov    %eax,0xa0(%rsp)
14015f4ed:	89 83 ac 00 00 00    	mov    %eax,0xac(%rbx)
14015f4f3:	40 f6 c5 02          	test   $0x2,%bpl
14015f4f7:	0f 84 5f 02 00 00    	je     0x14015f75c
14015f4fd:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
14015f504:	44 8b ed             	mov    %ebp,%r13d
14015f507:	41 83 e5 04          	and    $0x4,%r13d
14015f50b:	45 8b fe             	mov    %r14d,%r15d
14015f50e:	45 0f 45 fc          	cmovne %r12d,%r15d
14015f512:	41 8d 57 ff          	lea    -0x1(%r15),%edx
14015f516:	e8 25 c5 f8 ff       	call   0x1400eba40
14015f51b:	4c 8b e0             	mov    %rax,%r12
14015f51e:	44 3b b4 24 98 00 00 	cmp    0x98(%rsp),%r14d
14015f525:	00
14015f526:	0f 8f bb 01 00 00    	jg     0x14015f6e7
14015f52c:	48 8b bb 98 00 00 00 	mov    0x98(%rbx),%rdi
14015f533:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14015f538:	4c 8b c0             	mov    %rax,%r8
14015f53b:	48 c7 83 98 00 00 00 	movq   $0x0,0x98(%rbx)
14015f542:	00 00 00 00
14015f546:	48 8b d3             	mov    %rbx,%rdx
14015f549:	ff 53 40             	call   *0x40(%rbx)
14015f54c:	48 89 bb 98 00 00 00 	mov    %rdi,0x98(%rbx)
14015f553:	85 c0                	test   %eax,%eax
14015f555:	0f 88 0f 04 00 00    	js     0x14015f96a
14015f55b:	0f 8e 86 01 00 00    	jle    0x14015f6e7
14015f561:	33 d2                	xor    %edx,%edx
14015f563:	49 8b cc             	mov    %r12,%rcx
14015f566:	e8 75 fb ff ff       	call   0x14015f0e0
14015f56b:	8b f8                	mov    %eax,%edi
14015f56d:	85 c0                	test   %eax,%eax
14015f56f:	0f 88 0d 03 00 00    	js     0x14015f882
14015f575:	45 85 ed             	test   %r13d,%r13d
14015f578:	0f 84 a2 00 00 00    	je     0x14015f620
14015f57e:	45 3b f7             	cmp    %r15d,%r14d
14015f581:	0f 8e fb 02 00 00    	jle    0x14015f882
14015f587:	45 85 ff             	test   %r15d,%r15d
14015f58a:	0f 8e f2 02 00 00    	jle    0x14015f882
14015f590:	85 c0                	test   %eax,%eax
14015f592:	0f 85 ea 02 00 00    	jne    0x14015f882
14015f598:	83 e5 fb             	and    $0xfffffffb,%ebp
14015f59b:	45 2b f7             	sub    %r15d,%r14d
14015f59e:	41 8b fe             	mov    %r14d,%edi
14015f5a1:	45 8b f7             	mov    %r15d,%r14d
14015f5a4:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
14015f5ab:	e8 a0 c1 f8 ff       	call   0x1400eb750
14015f5b0:	48 8b c8             	mov    %rax,%rcx
14015f5b3:	e8 78 3e fa ff       	call   0x140103430
14015f5b8:	48 83 ef 01          	sub    $0x1,%rdi
14015f5bc:	75 e6                	jne    0x14015f5a4
14015f5be:	48 8b 7c 24 28       	mov    0x28(%rsp),%rdi
14015f5c3:	44 89 bb 94 00 00 00 	mov    %r15d,0x94(%rbx)
14015f5ca:	48 85 ff             	test   %rdi,%rdi
14015f5cd:	74 55                	je     0x14015f624
14015f5cf:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
14015f5d3:	e8 68 c1 f8 ff       	call   0x1400eb740
14015f5d8:	85 c0                	test   %eax,%eax
14015f5da:	7e 23                	jle    0x14015f5ff
14015f5dc:	8b 83 94 00 00 00    	mov    0x94(%rbx),%eax
14015f5e2:	39 47 2c             	cmp    %eax,0x2c(%rdi)
14015f5e5:	7c 18                	jl     0x14015f5ff
14015f5e7:	48 8b 4f 20          	mov    0x20(%rdi),%rcx
14015f5eb:	c7 47 2c ff ff ff ff 	movl   $0xffffffff,0x2c(%rdi)
14015f5f2:	e8 39 3e fa ff       	call   0x140103430
14015f5f7:	48 c7 47 20 00 00 00 	movq   $0x0,0x20(%rdi)
14015f5fe:	00
14015f5ff:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
14015f603:	e8 38 c1 f8 ff       	call   0x1400eb740
14015f608:	85 c0                	test   %eax,%eax
14015f60a:	7e 18                	jle    0x14015f624
14015f60c:	8b 83 94 00 00 00    	mov    0x94(%rbx),%eax
14015f612:	39 47 30             	cmp    %eax,0x30(%rdi)
14015f615:	7c 0d                	jl     0x14015f624
14015f617:	c7 47 30 ff ff ff ff 	movl   $0xffffffff,0x30(%rdi)
14015f61e:	eb 04                	jmp    0x14015f624
14015f620:	85 c0                	test   %eax,%eax
14015f622:	75 4d                	jne    0x14015f671
14015f624:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
14015f629:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
14015f630:	e8 eb c1 f8 ff       	call   0x1400eb820
14015f635:	85 c0                	test   %eax,%eax
14015f637:	0f 84 de 02 00 00    	je     0x14015f91b
14015f63d:	48 8b 7c 24 20       	mov    0x20(%rsp),%rdi
14015f642:	48 8b cf             	mov    %rdi,%rcx
14015f645:	e8 b6 50 fa ff       	call   0x140104700
14015f64a:	48 85 c0             	test   %rax,%rax
14015f64d:	0f 84 97 02 00 00    	je     0x14015f8ea
14015f653:	48 8b cf             	mov    %rdi,%rcx
14015f656:	e8 95 c7 fb ff       	call   0x14011bdf0
14015f65b:	85 c0                	test   %eax,%eax
14015f65d:	0f 84 29 02 00 00    	je     0x14015f88c
14015f663:	8b bf d8 00 00 00    	mov    0xd8(%rdi),%edi
14015f669:	c1 ef 0d             	shr    $0xd,%edi
14015f66c:	83 e7 01             	and    $0x1,%edi
14015f66f:	eb 48                	jmp    0x14015f6b9
14015f671:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
14015f676:	49 8b cc             	mov    %r12,%rcx
14015f679:	e8 82 4e fa ff       	call   0x140104500
14015f67e:	85 c0                	test   %eax,%eax
14015f680:	74 0c                	je     0x14015f68e
14015f682:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
14015f687:	e8 a4 3d fa ff       	call   0x140103430
14015f68c:	eb 59                	jmp    0x14015f6e7
14015f68e:	49 8b cc             	mov    %r12,%rcx
14015f691:	e8 9a 3d fa ff       	call   0x140103430
14015f696:	44 8b b4 24 a0 00 00 	mov    0xa0(%rsp),%r14d
14015f69d:	00
14015f69e:	41 8b d6             	mov    %r14d,%edx
14015f6a1:	4c 8b 44 24 20       	mov    0x20(%rsp),%r8
14015f6a6:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
14015f6ad:	44 89 b3 94 00 00 00 	mov    %r14d,0x94(%rbx)
14015f6b4:	e8 07 c2 f8 ff       	call   0x1400eb8c0
14015f6b9:	44 39 b3 94 00 00 00 	cmp    %r14d,0x94(%rbx)
14015f6c0:	0f 8f c6 01 00 00    	jg     0x14015f88c
14015f6c6:	41 8b d6             	mov    %r14d,%edx
14015f6c9:	48 8b cb             	mov    %rbx,%rcx
14015f6cc:	83 e5 fe             	and    $0xfffffffe,%ebp
14015f6cf:	e8 3c 24 00 00       	call   0x140161b10
14015f6d4:	8b f0                	mov    %eax,%esi
14015f6d6:	83 f8 03             	cmp    $0x3,%eax
14015f6d9:	0f 85 f8 03 00 00    	jne    0x14015fad7
14015f6df:	85 ff                	test   %edi,%edi
14015f6e1:	0f 84 7c 01 00 00    	je     0x14015f863
14015f6e7:	40 f6 c5 01          	test   $0x1,%bpl
14015f6eb:	75 5f                	jne    0x14015f74c
14015f6ed:	8b c5                	mov    %ebp,%eax
14015f6ef:	83 e0 04             	and    $0x4,%eax
14015f6f2:	74 1c                	je     0x14015f710
14015f6f4:	44 8b a4 24 90 00 00 	mov    0x90(%rsp),%r12d
14015f6fb:	00
14015f6fc:	41 ff cc             	dec    %r12d
14015f6ff:	44 89 a4 24 90 00 00 	mov    %r12d,0x90(%rsp)
14015f706:	00
14015f707:	45 85 e4             	test   %r12d,%r12d
14015f70a:	0f 8f 5b 01 00 00    	jg     0x14015f86b
14015f710:	48 83 7c 24 30 00    	cmpq   $0x0,0x30(%rsp)
14015f716:	0f 84 bb 03 00 00    	je     0x14015fad7
14015f71c:	85 c0                	test   %eax,%eax
14015f71e:	0f 85 b3 03 00 00    	jne    0x14015fad7
14015f724:	8b 83 94 00 00 00    	mov    0x94(%rbx),%eax
14015f72a:	4c 8b bc 24 a8 00 00 	mov    0xa8(%rsp),%r15
14015f731:	00
14015f732:	83 f8 02             	cmp    $0x2,%eax
14015f735:	0f 8c a4 03 00 00    	jl     0x14015fadf
14015f73b:	44 8d 60 ff          	lea    -0x1(%rax),%r12d
14015f73f:	83 cd 04             	or     $0x4,%ebp
14015f742:	44 89 a4 24 90 00 00 	mov    %r12d,0x90(%rsp)
14015f749:	00
14015f74a:	eb 10                	jmp    0x14015f75c
14015f74c:	44 8b a4 24 90 00 00 	mov    0x90(%rsp),%r12d
14015f753:	00
14015f754:	4c 8b bc 24 a8 00 00 	mov    0xa8(%rsp),%r15
14015f75b:	00
14015f75c:	40 f6 c5 01          	test   $0x1,%bpl
14015f760:	0f 84 05 01 00 00    	je     0x14015f86b
14015f766:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
14015f76d:	e8 ce bf f8 ff       	call   0x1400eb740
14015f772:	8b f8                	mov    %eax,%edi
14015f774:	3b 83 94 00 00 00    	cmp    0x94(%rbx),%eax
14015f77a:	0f 85 14 01 00 00    	jne    0x14015f894
14015f780:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
14015f787:	8d 50 ff             	lea    -0x1(%rax),%edx
14015f78a:	e8 b1 c2 f8 ff       	call   0x1400eba40
14015f78f:	33 d2                	xor    %edx,%edx
14015f791:	48 8b c8             	mov    %rax,%rcx
14015f794:	4c 8b f0             	mov    %rax,%r14
14015f797:	e8 44 f9 ff ff       	call   0x14015f0e0
14015f79c:	85 c0                	test   %eax,%eax
14015f79e:	0f 8f ac 00 00 00    	jg     0x14015f850
14015f7a4:	3b bc 24 98 00 00 00 	cmp    0x98(%rsp),%edi
14015f7ab:	0f 8f 9f 00 00 00    	jg     0x14015f850
14015f7b1:	4d 8b c6             	mov    %r14,%r8
14015f7b4:	49 8b d7             	mov    %r15,%rdx
14015f7b7:	48 8b cb             	mov    %rbx,%rcx
14015f7ba:	e8 11 30 00 00       	call   0x1401627d0
14015f7bf:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14015f7c4:	48 85 c0             	test   %rax,%rax
14015f7c7:	0f 84 83 00 00 00    	je     0x14015f850
14015f7cd:	48 8b d0             	mov    %rax,%rdx
14015f7d0:	49 8b cf             	mov    %r15,%rcx
14015f7d3:	e8 38 b8 f8 ff       	call   0x1400eb010
14015f7d8:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
14015f7dd:	41 b8 01 00 00 00    	mov    $0x1,%r8d
14015f7e3:	48 8b 8b 98 00 00 00 	mov    0x98(%rbx),%rcx
14015f7ea:	e8 71 45 fa ff       	call   0x140103d60
14015f7ef:	85 c0                	test   %eax,%eax
14015f7f1:	0f 84 9d 00 00 00    	je     0x14015f894
14015f7f7:	8b bb 94 00 00 00    	mov    0x94(%rbx),%edi
14015f7fd:	8d 47 01             	lea    0x1(%rdi),%eax
14015f800:	89 83 94 00 00 00    	mov    %eax,0x94(%rbx)
14015f806:	48 8b 83 f0 00 00 00 	mov    0xf0(%rbx),%rax
14015f80d:	48 85 c0             	test   %rax,%rax
14015f810:	74 37                	je     0x14015f849
14015f812:	f6 40 28 05          	testb  $0x5,0x28(%rax)
14015f816:	74 31                	je     0x14015f849
14015f818:	85 ff                	test   %edi,%edi
14015f81a:	74 2d                	je     0x14015f849