571434:	74 0b                	je     0x571441
571436:	68 3f 15 6a 00       	push   $0x6a153f
57143b:	e8 14 8b 00 00       	call   0x579f54
571440:	59                   	pop    %ecx
571441:	46                   	inc    %esi
571442:	8b 43 18             	mov    0x18(%ebx),%eax
571445:	0f b7 48 10          	movzwl 0x10(%eax),%ecx
571449:	3b f1                	cmp    %ecx,%esi
57144b:	7c 9b                	jl     0x5713e8
57144d:	eb 0b                	jmp    0x57145a
57144f:	68 66 15 6a 00       	push   $0x6a1566
571454:	e8 fb 8a 00 00       	call   0x579f54
571459:	59                   	pop    %ecx
57145a:	8b 43 14             	mov    0x14(%ebx),%eax
57145d:	85 c0                	test   %eax,%eax
57145f:	75 10                	jne    0x571471
571461:	68 85 15 6a 00       	push   $0x6a1585
571466:	e8 e9 8a 00 00       	call   0x579f54
57146b:	59                   	pop    %ecx
57146c:	e9 ad 03 00 00       	jmp    0x57181e
571471:	8b 53 14             	mov    0x14(%ebx),%edx
571474:	8a 4a 10             	mov    0x10(%edx),%cl
571477:	fe c9                	dec    %cl
571479:	74 06                	je     0x571481
57147b:	fe c9                	dec    %cl
57147d:	74 15                	je     0x571494
57147f:	eb 67                	jmp    0x5714e8
571481:	8b 43 14             	mov    0x14(%ebx),%eax
571484:	83 c0 10             	add    $0x10,%eax
571487:	e8 5c 05 00 00       	call   0x5719e8
57148c:	8b 53 18             	mov    0x18(%ebx),%edx
57148f:	89 42 18             	mov    %eax,0x18(%edx)
571492:	eb 54                	jmp    0x5714e8
571494:	8b 4b 14             	mov    0x14(%ebx),%ecx
571497:	8b 41 1c             	mov    0x1c(%ecx),%eax
57149a:	3d 80 00 00 00       	cmp    $0x80,%eax
57149f:	7d 05                	jge    0x5714a6
5714a1:	e8 a2 96 fe ff       	call   0x55ab48
5714a6:	8b 53 14             	mov    0x14(%ebx),%edx
5714a9:	33 c9                	xor    %ecx,%ecx
5714ab:	8b 42 18             	mov    0x18(%edx),%eax
5714ae:	33 d2                	xor    %edx,%edx
5714b0:	0f b6 70 10          	movzbl 0x10(%eax),%esi
5714b4:	8a 50 11             	mov    0x11(%eax),%dl
5714b7:	8a 48 12             	mov    0x12(%eax),%cl
5714ba:	0f b6 40 13          	movzbl 0x13(%eax),%eax
5714be:	c1 e2 10             	shl    $0x10,%edx
5714c1:	c1 e6 18             	shl    $0x18,%esi
5714c4:	c1 e1 08             	shl    $0x8,%ecx
5714c7:	0b f2                	or     %edx,%esi
5714c9:	0b f1                	or     %ecx,%esi
5714cb:	0b f0                	or     %eax,%esi
5714cd:	56                   	push   %esi
5714ce:	68 99 15 6a 00       	push   $0x6a1599
5714d3:	e8 7c 8a 00 00       	call   0x579f54
5714d8:	83 c4 08             	add    $0x8,%esp
5714db:	8b c6                	mov    %esi,%eax
5714dd:	e8 32 05 00 00       	call   0x571a14
5714e2:	8b 53 18             	mov    0x18(%ebx),%edx
5714e5:	89 42 18             	mov    %eax,0x18(%edx)
5714e8:	8b 4b 10             	mov    0x10(%ebx),%ecx
5714eb:	85 c9                	test   %ecx,%ecx
5714ed:	74 1e                	je     0x57150d
5714ef:	8b 03                	mov    (%ebx),%eax
5714f1:	85 c0                	test   %eax,%eax
5714f3:	75 18                	jne    0x57150d
5714f5:	68 ae 15 6a 00       	push   $0x6a15ae
5714fa:	e8 55 8a 00 00       	call   0x579f54
5714ff:	59                   	pop    %ecx
571500:	8b 43 10             	mov    0x10(%ebx),%eax
571503:	e8 0c 25 00 00       	call   0x573a14
571508:	33 d2                	xor    %edx,%edx
57150a:	89 53 10             	mov    %edx,0x10(%ebx)
57150d:	8b 4b 10             	mov    0x10(%ebx),%ecx
571510:	85 c9                	test   %ecx,%ecx
571512:	75 1c                	jne    0x571530
571514:	8b 03                	mov    (%ebx),%eax
571516:	85 c0                	test   %eax,%eax
571518:	74 16                	je     0x571530
57151a:	68 e1 15 6a 00       	push   $0x6a15e1
57151f:	e8 30 8a 00 00       	call   0x579f54
571524:	59                   	pop    %ecx
571525:	8b 03                	mov    (%ebx),%eax
571527:	e8 e8 24 00 00       	call   0x573a14
57152c:	33 d2                	xor    %edx,%edx
57152e:	89 13                	mov    %edx,(%ebx)
571530:	8b 4b 10             	mov    0x10(%ebx),%ecx
571533:	85 c9                	test   %ecx,%ecx
571535:	74 09                	je     0x571540
571537:	8b 43 10             	mov    0x10(%ebx),%eax
57153a:	66 8b 50 10          	mov    0x10(%eax),%dx
57153e:	eb 07                	jmp    0x571547
571540:	8b 4b 18             	mov    0x18(%ebx),%ecx
571543:	66 8b 51 10          	mov    0x10(%ecx),%dx
571547:	66 89 53 1c          	mov    %dx,0x1c(%ebx)
57154b:	8b 43 10             	mov    0x10(%ebx),%eax
57154e:	85 c0                	test   %eax,%eax
571550:	74 53                	je     0x5715a5
571552:	33 f6                	xor    %esi,%esi
571554:	eb 47                	jmp    0x57159d
571556:	8b 43 10             	mov    0x10(%ebx),%eax
571559:	8b 50 14             	mov    0x14(%eax),%edx
57155c:	8b 43 18             	mov    0x18(%ebx),%eax
57155f:	66 8b 0c b2          	mov    (%edx,%esi,4),%cx
571563:	66 3b 48 10          	cmp    0x10(%eax),%cx
571567:	72 10                	jb     0x571579
571569:	68 14 16 6a 00       	push   $0x6a1614
57156e:	e8 e1 89 00 00       	call   0x579f54
571573:	59                   	pop    %ecx
571574:	e9 a5 02 00 00       	jmp    0x57181e
571579:	8b 53 10             	mov    0x10(%ebx),%edx
57157c:	8b 4a 14             	mov    0x14(%edx),%ecx
57157f:	8b 13                	mov    (%ebx),%edx
571581:	8a 44 b1 03          	mov    0x3(%ecx,%esi,4),%al
571585:	8a 4a 12             	mov    0x12(%edx),%cl
571588:	3a c1                	cmp    %cl,%al
57158a:	72 10                	jb     0x57159c
57158c:	68 41 16 6a 00       	push   $0x6a1641
571591:	e8 be 89 00 00       	call   0x579f54
571596:	59                   	pop    %ecx
571597:	e9 82 02 00 00       	jmp    0x57181e
57159c:	46                   	inc    %esi
57159d:	0f b7 43 1c          	movzwl 0x1c(%ebx),%eax
5715a1:	3b f0                	cmp    %eax,%esi
5715a3:	7c b1                	jl     0x571556
5715a5:	0f b7 43 1c          	movzwl 0x1c(%ebx),%eax
5715a9:	03 c0                	add    %eax,%eax
5715ab:	e8 cc 6d 00 00       	call   0x57837c
5715b0:	89 43 20             	mov    %eax,0x20(%ebx)
5715b3:	85 c0                	test   %eax,%eax
5715b5:	75 10                	jne    0x5715c7
5715b7:	68 60 16 6a 00       	push   $0x6a1660
5715bc:	e8 93 89 00 00       	call   0x579f54
5715c1:	59                   	pop    %ecx
5715c2:	e9 57 02 00 00       	jmp    0x57181e
5715c7:	8b 53 10             	mov    0x10(%ebx),%edx
5715ca:	85 d2                	test   %edx,%edx
5715cc:	75 19                	jne    0x5715e7
5715ce:	33 f6                	xor    %esi,%esi
5715d0:	eb 08                	jmp    0x5715da
5715d2:	8b 43 20             	mov    0x20(%ebx),%eax
5715d5:	66 89 34 70          	mov    %si,(%eax,%esi,2)
5715d9:	46                   	inc    %esi
5715da:	0f b7 53 1c          	movzwl 0x1c(%ebx),%edx
5715de:	3b f2                	cmp    %edx,%esi
5715e0:	7c f0                	jl     0x5715d2
5715e2:	e9 23 01 00 00       	jmp    0x57170a
5715e7:	8b 4b 10             	mov    0x10(%ebx),%ecx
5715ea:	83 c1 10             	add    $0x10,%ecx
5715ed:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
5715f1:	8b 3b                	mov    (%ebx),%edi
5715f3:	8b 43 04             	mov    0x4(%ebx),%eax
5715f6:	83 c0 10             	add    $0x10,%eax
5715f9:	83 c7 10             	add    $0x10,%edi
5715fc:	33 d2                	xor    %edx,%edx
5715fe:	89 44 24 10          	mov    %eax,0x10(%esp)
571602:	89 54 24 14          	mov    %edx,0x14(%esp)
571606:	e9 ec 00 00 00       	jmp    0x5716f7
57160b:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
57160f:	8b 54 24 14          	mov    0x14(%esp),%edx
571613:	c1 e2 02             	shl    $0x2,%edx
571616:	8b 41 04             	mov    0x4(%ecx),%eax
571619:	03 c2                	add    %edx,%eax
57161b:	89 44 24 24          	mov    %eax,0x24(%esp)
57161f:	8b 4c 24 24          	mov    0x24(%esp),%ecx
571623:	8a 41 02             	mov    0x2(%ecx),%al
571626:	84 c0                	test   %al,%al
571628:	75 15                	jne    0x57163f
57162a:	8b 53 20             	mov    0x20(%ebx),%edx
57162d:	8b 4c 24 14          	mov    0x14(%esp),%ecx
571631:	66 8b 44 24 14       	mov    0x14(%esp),%ax
571636:	66 89 04 4a          	mov    %ax,(%edx,%ecx,2)
57163a:	e9 b4 00 00 00       	jmp    0x5716f3
57163f:	8b 54 24 24          	mov    0x24(%esp),%edx
571643:	8a 4a 02             	mov    0x2(%edx),%cl
571646:	80 f9 01             	cmp    $0x1,%cl
571649:	0f 85 a4 00 00 00    	jne    0x5716f3
57164f:	0f b7 07             	movzwl (%edi),%eax
571652:	c1 e0 02             	shl    $0x2,%eax
571655:	e8 22 6d 00 00       	call   0x57837c
57165a:	89 44 24 1c          	mov    %eax,0x1c(%esp)
57165e:	33 f6                	xor    %esi,%esi
571660:	8b 44 24 1c          	mov    0x1c(%esp),%eax
571664:	eb 1f                	jmp    0x571685
571666:	8b 54 24 24          	mov    0x24(%esp),%edx
57166a:	33 c9                	xor    %ecx,%ecx
57166c:	8a 4a 03             	mov    0x3(%edx),%cl
57166f:	33 d2                	xor    %edx,%edx
571671:	8a 57 02             	mov    0x2(%edi),%dl
571674:	0f af d6             	imul   %esi,%edx
571677:	03 ca                	add    %edx,%ecx
571679:	8b 57 04             	mov    0x4(%edi),%edx
57167c:	46                   	inc    %esi
57167d:	8b 0c 8a             	mov    (%edx,%ecx,4),%ecx
571680:	89 08                	mov    %ecx,(%eax)
571682:	83 c0 04             	add    $0x4,%eax
571685:	0f b7 17             	movzwl (%edi),%edx
571688:	3b f2                	cmp    %edx,%esi
57168a:	7c da                	jl     0x571666
57168c:	8b 43 18             	mov    0x18(%ebx),%eax
57168f:	33 c9                	xor    %ecx,%ecx
571691:	0f b7 70 10          	movzwl 0x10(%eax),%esi
571695:	8b 44 24 1c          	mov    0x1c(%esp),%eax
571699:	50                   	push   %eax
57169a:	8b 54 24 28          	mov    0x28(%esp),%edx
57169e:	8b 47 08             	mov    0x8(%edi),%eax
5716a1:	8a 4a 03             	mov    0x3(%edx),%cl
5716a4:	33 d2                	xor    %edx,%edx
5716a6:	8a 14 08             	mov    (%eax,%ecx,1),%dl
5716a9:	8b 4c 24 28          	mov    0x28(%esp),%ecx
5716ad:	33 c0                	xor    %eax,%eax
5716af:	8a 41 03             	mov    0x3(%ecx),%al
5716b2:	8b 4f 08             	mov    0x8(%edi),%ecx
5716b5:	c1 fa 07             	sar    $0x7,%edx
5716b8:	0f b6 04 01          	movzbl (%ecx,%eax,1),%eax
5716bc:	83 e0 7f             	and    $0x7f,%eax
5716bf:	83 e2 01             	and    $0x1,%edx
5716c2:	40                   	inc    %eax
5716c3:	c1 e2 07             	shl    $0x7,%edx
5716c6:	83 e0 7f             	and    $0x7f,%eax
5716c9:	0b d0                	or     %eax,%edx
5716cb:	52                   	push   %edx
5716cc:	56                   	push   %esi
5716cd:	8b 54 24 30          	mov    0x30(%esp),%edx
5716d1:	8b 43 18             	mov    0x18(%ebx),%eax
5716d4:	0f b7 0f             	movzwl (%edi),%ecx
5716d7:	0f b7 12             	movzwl (%edx),%edx
5716da:	e8 49 43 00 00       	call   0x575a28
5716df:	8b 4b 20             	mov    0x20(%ebx),%ecx
5716e2:	8b 44 24 14          	mov    0x14(%esp),%eax
5716e6:	66 89 34 41          	mov    %si,(%ecx,%eax,2)
5716ea:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5716ee:	e8 91 6c 00 00       	call   0x578384
5716f3:	ff 44 24 14          	incl   0x14(%esp)
5716f7:	8b 54 24 0c          	mov    0xc(%esp),%edx
5716fb:	8b 44 24 14          	mov    0x14(%esp),%eax
5716ff:	0f b7 0a             	movzwl (%edx),%ecx
571702:	3b c8                	cmp    %eax,%ecx
571704:	0f 8f 01 ff ff ff    	jg     0x57160b
57170a:	33 f6                	xor    %esi,%esi
57170c:	eb 0e                	jmp    0x57171c
57170e:	8b 40 14             	mov    0x14(%eax),%eax
571711:	8b 14 b0             	mov    (%eax,%esi,4),%edx
571714:	46                   	inc    %esi
571715:	c7 42 24 00 00 01 00 	movl   $0x10000,0x24(%edx)
57171c:	8b 43 18             	mov    0x18(%ebx),%eax
57171f:	0f b7 50 10          	movzwl 0x10(%eax),%edx
571723:	3b f2                	cmp    %edx,%esi
571725:	7c e7                	jl     0x57170e
571727:	8b 4b 04             	mov    0x4(%ebx),%ecx
57172a:	85 c9                	test   %ecx,%ecx
57172c:	74 50                	je     0x57177e
57172e:	33 f6                	xor    %esi,%esi
571730:	eb 42                	jmp    0x571774
571732:	8b 43 04             	mov    0x4(%ebx),%eax
571735:	8d 3c 76             	lea    (%esi,%esi,2),%edi
571738:	8b 50 14             	mov    0x14(%eax),%edx
57173b:	8b 43 04             	mov    0x4(%ebx),%eax
57173e:	0f b7 4c 7a 04       	movzwl 0x4(%edx,%edi,2),%ecx
571743:	8b 50 14             	mov    0x14(%eax),%edx
571746:	8b 43 18             	mov    0x18(%ebx),%eax
571749:	0f b7 54 7a 02       	movzwl 0x2(%edx,%edi,2),%edx
57174e:	8b 40 18             	mov    0x18(%eax),%eax
571751:	e8 1e 02 00 00       	call   0x571974
571756:	8b 53 04             	mov    0x4(%ebx),%edx
571759:	46                   	inc    %esi
57175a:	8b 4a 14             	mov    0x14(%edx),%ecx
57175d:	0f b7 14 79          	movzwl (%ecx,%edi,2),%edx
571761:	8b 4b 20             	mov    0x20(%ebx),%ecx
571764:	0f b7 14 51          	movzwl (%ecx,%edx,2),%edx
571768:	8b 4b 18             	mov    0x18(%ebx),%ecx
57176b:	8b 49 14             	mov    0x14(%ecx),%ecx
57176e:	8b 14 91             	mov    (%ecx,%edx,4),%edx
571771:	89 42 24             	mov    %eax,0x24(%edx)
571774:	0f b7 43 1c          	movzwl 0x1c(%ebx),%eax
571778:	3b f0                	cmp    %eax,%esi
57177a:	7c b6                	jl     0x571732
57177c:	eb 30                	jmp    0x5717ae
57177e:	33 f6                	xor    %esi,%esi
571780:	eb 24                	jmp    0x5717a6
571782:	8d 4e 01             	lea    0x1(%esi),%ecx
571785:	8b 43 18             	mov    0x18(%ebx),%eax
571788:	8b 40 18             	mov    0x18(%eax),%eax
57178b:	33 d2                	xor    %edx,%edx
57178d:	e8 e2 01 00 00       	call   0x571974
571792:	8b 4b 20             	mov    0x20(%ebx),%ecx
571795:	0f b7 14 71          	movzwl (%ecx,%esi,2),%edx
571799:	8b 4b 18             	mov    0x18(%ebx),%ecx
57179c:	46                   	inc    %esi
57179d:	8b 49 14             	mov    0x14(%ecx),%ecx
5717a0:	8b 14 91             	mov    (%ecx,%edx,4),%edx
5717a3:	89 42 24             	mov    %eax,0x24(%edx)
5717a6:	0f b7 43 1c          	movzwl 0x1c(%ebx),%eax
5717aa:	3b f0                	cmp    %eax,%esi
5717ac:	7c d4                	jl     0x571782
5717ae:	8b 43 18             	mov    0x18(%ebx),%eax
5717b1:	0f b7 70 10          	movzwl 0x10(%eax),%esi
5717b5:	4e                   	dec    %esi
5717b6:	85 f6                	test   %esi,%esi
5717b8:	7c 20                	jl     0x5717da
5717ba:	8b 43 18             	mov    0x18(%ebx),%eax
5717bd:	8b 50 14             	mov    0x14(%eax),%edx
5717c0:	8b 0c b2             	mov    (%edx,%esi,4),%ecx
5717c3:	8b 51 24             	mov    0x24(%ecx),%edx
5717c6:	81 fa 00 00 01 00    	cmp    $0x10000,%edx
5717cc:	75 07                	jne    0x5717d5
5717ce:	8b d6                	mov    %esi,%edx
5717d0:	e8 17 3e 00 00       	call   0x5755ec
5717d5:	4e                   	dec    %esi
5717d6:	85 f6                	test   %esi,%esi
5717d8:	7d e0                	jge    0x5717ba
5717da:	8b 4b 18             	mov    0x18(%ebx),%ecx
5717dd:	66 83 79 10 00       	cmpw   $0x0,0x10(%ecx)
5717e2:	75 0d                	jne    0x5717f1
5717e4:	68 72 16 6a 00       	push   $0x6a1672
5717e9:	e8 66 87 00 00       	call   0x579f54
5717ee:	59                   	pop    %ecx
5717ef:	eb 2d                	jmp    0x57181e
5717f1:	8b 43 18             	mov    0x18(%ebx),%eax
5717f4:	0f b7 50 10          	movzwl 0x10(%eax),%edx
5717f8:	52                   	push   %edx
5717f9:	68 88 16 6a 00       	push   $0x6a1688
5717fe:	68 80 2e 6a 00       	push   $0x6a2e80
571803:	e8 c4 88 00 00       	call   0x57a0cc
571808:	83 c4 0c             	add    $0xc,%esp
57180b:	33 c0                	xor    %eax,%eax
57180d:	8b 73 18             	mov    0x18(%ebx),%esi
571810:	89 43 18             	mov    %eax,0x18(%ebx)
571813:	8b c3                	mov    %ebx,%eax
571815:	e8 ee 00 00 00       	call   0x571908
57181a:	8b c6                	mov    %esi,%eax
57181c:	eb 18                	jmp    0x571836
57181e:	85 ed                	test   %ebp,%ebp
571820:	74 07                	je     0x571829
571822:	8b c5                	mov    %ebp,%eax
571824:	e8 eb 21 00 00       	call   0x573a14
571829:	85 db                	test   %ebx,%ebx
57182b:	74 07                	je     0x571834
57182d:	8b c3                	mov    %ebx,%eax
57182f:	e8 d4 00 00 00       	call   0x571908
571834:	33 c0                	xor    %eax,%eax
571836:	83 c4 28             	add    $0x28,%esp
571839:	5d                   	pop    %ebp
57183a:	5f                   	pop    %edi
57183b:	5e                   	pop    %esi
57183c:	5b                   	pop    %ebx
57183d:	c3                   	ret
57183e:	90                   	nop
57183f:	90                   	nop
571840:	53                   	push   %ebx