44254c:	e9 46 ff ff ff       	jmp    0x442497
442551:	55                   	push   %ebp
442552:	8b ec                	mov    %esp,%ebp
442554:	53                   	push   %ebx
442555:	8b 5d 0c             	mov    0xc(%ebp),%ebx
442558:	56                   	push   %esi
442559:	8b 0b                	mov    (%ebx),%ecx
44255b:	57                   	push   %edi
44255c:	8b 7d 08             	mov    0x8(%ebp),%edi
44255f:	8d 41 04             	lea    0x4(%ecx),%eax
442562:	8b 34 39             	mov    (%ecx,%edi,1),%esi
442565:	89 03                	mov    %eax,(%ebx)
442567:	33 c9                	xor    %ecx,%ecx
442569:	6a 02                	push   $0x2
44256b:	5a                   	pop    %edx
44256c:	8d 46 01             	lea    0x1(%esi),%eax
44256f:	f7 e2                	mul    %edx
442571:	0f 90 c1             	seto   %cl
442574:	89 75 08             	mov    %esi,0x8(%ebp)
442577:	f7 d9                	neg    %ecx
442579:	0b c8                	or     %eax,%ecx
44257b:	51                   	push   %ecx
44257c:	e8 69 cf fd ff       	call   0x41f4ea
442581:	8b 0b                	mov    (%ebx),%ecx
442583:	03 f6                	add    %esi,%esi
442585:	03 cf                	add    %edi,%ecx
442587:	56                   	push   %esi
442588:	51                   	push   %ecx
442589:	8b f8                	mov    %eax,%edi
44258b:	57                   	push   %edi
44258c:	e8 ef c8 fd ff       	call   0x41ee80
442591:	8b 4d 08             	mov    0x8(%ebp),%ecx
442594:	01 33                	add    %esi,(%ebx)
442596:	33 c0                	xor    %eax,%eax
442598:	83 c4 10             	add    $0x10,%esp
44259b:	66 89 04 3e          	mov    %ax,(%esi,%edi,1)
44259f:	85 c9                	test   %ecx,%ecx
4425a1:	7e 09                	jle    0x4425ac
4425a3:	66 31 0c 47          	xor    %cx,(%edi,%eax,2)
4425a7:	40                   	inc    %eax
4425a8:	3b c1                	cmp    %ecx,%eax
4425aa:	7c f7                	jl     0x4425a3
4425ac:	8b c7                	mov    %edi,%eax
4425ae:	5f                   	pop    %edi
4425af:	5e                   	pop    %esi
4425b0:	5b                   	pop    %ebx
4425b1:	5d                   	pop    %ebp
4425b2:	c2 08 00             	ret    $0x8
4425b5:	55                   	push   %ebp
4425b6:	8b ec                	mov    %esp,%ebp
4425b8:	b8 24 20 00 00       	mov    $0x2024,%eax
4425bd:	e8 de d2 fe ff       	call   0x42f8a0
4425c2:	56                   	push   %esi
4425c3:	68 ff 0f 00 00       	push   $0xfff
4425c8:	8d 85 e0 df ff ff    	lea    -0x2020(%ebp),%eax
4425ce:	8b f1                	mov    %ecx,%esi
4425d0:	50                   	push   %eax
4425d1:	ff 76 60             	push   0x60(%esi)
4425d4:	6a 00                	push   $0x0
4425d6:	ff 15 a8 d1 48 00    	call   *0x48d1a8
4425dc:	50                   	push   %eax
4425dd:	ff 15 ec d5 48 00    	call   *0x48d5ec
4425e3:	8d 85 e0 df ff ff    	lea    -0x2020(%ebp),%eax
4425e9:	50                   	push   %eax
4425ea:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4425ed:	e8 27 a8 fc ff       	call   0x40ce19
4425f2:	80 7e 02 00          	cmpb   $0x0,0x2(%esi)
4425f6:	8b 45 08             	mov    0x8(%ebp),%eax
4425f9:	74 22                	je     0x44261d
4425fb:	68 00 dc 49 00       	push   $0x49dc00
442600:	ff 75 14             	push   0x14(%ebp)
442603:	ff 75 10             	push   0x10(%ebp)
442606:	ff 75 0c             	push   0xc(%ebp)
442609:	ff 30                	push   (%eax)
44260b:	68 7c 32 4b 00       	push   $0x4b327c
442610:	e8 3b f7 fd ff       	call   0x421d50
442615:	83 c4 18             	add    $0x18,%esp
442618:	e9 92 00 00 00       	jmp    0x4426af
44261d:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
442621:	75 19                	jne    0x44263c
442623:	ff 75 0c             	push   0xc(%ebp)
442626:	8d 85 e0 df ff ff    	lea    -0x2020(%ebp),%eax
44262c:	68 b4 32 4b 00       	push   $0x4b32b4
442631:	50                   	push   %eax
442632:	e8 f4 f0 fd ff       	call   0x42172b
442637:	83 c4 0c             	add    $0xc,%esp
44263a:	eb 19                	jmp    0x442655
44263c:	ff 30                	push   (%eax)
44263e:	8d 85 e0 df ff ff    	lea    -0x2020(%ebp),%eax
442644:	ff 75 0c             	push   0xc(%ebp)
442647:	68 cc 32 4b 00       	push   $0x4b32cc
44264c:	50                   	push   %eax
44264d:	e8 d9 f0 fd ff       	call   0x42172b
442652:	83 c4 10             	add    $0x10,%esp
442655:	8d 85 e0 df ff ff    	lea    -0x2020(%ebp),%eax
44265b:	50                   	push   %eax
44265c:	8d 4d f0             	lea    -0x10(%ebp),%ecx
44265f:	e8 b5 a7 fc ff       	call   0x40ce19
442664:	ff 75 14             	push   0x14(%ebp)
442667:	8d 4d f0             	lea    -0x10(%ebp),%ecx
44266a:	e8 1d 2b fc ff       	call   0x40518c
44266f:	68 fc 32 4b 00       	push   $0x4b32fc
442674:	8d 4d f0             	lea    -0x10(%ebp),%ecx
442677:	e8 10 2b fc ff       	call   0x40518c
44267c:	ff 75 10             	push   0x10(%ebp)
44267f:	8d 4d f0             	lea    -0x10(%ebp),%ecx
442682:	e8 05 2b fc ff       	call   0x40518c
442687:	68 10 33 4b 00       	push   $0x4b3310
44268c:	8d 4d f0             	lea    -0x10(%ebp),%ecx
44268f:	e8 f8 2a fc ff       	call   0x40518c
442694:	68 10 10 01 00       	push   $0x11010
442699:	ff 75 e0             	push   -0x20(%ebp)
44269c:	ff 75 f0             	push   -0x10(%ebp)
44269f:	6a 00                	push   $0x0
4426a1:	ff 15 e0 d6 48 00    	call   *0x48d6e0
4426a7:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4426aa:	e8 88 a4 fc ff       	call   0x40cb37
4426af:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4426b2:	e8 80 a4 fc ff       	call   0x40cb37
4426b7:	5e                   	pop    %esi
4426b8:	c9                   	leave
4426b9:	c2 10 00             	ret    $0x10
4426bc:	55                   	push   %ebp
4426bd:	8b ec                	mov    %esp,%ebp
4426bf:	b8 58 20 00 00       	mov    $0x2058,%eax
4426c4:	e8 d7 d1 fe ff       	call   0x42f8a0
4426c9:	53                   	push   %ebx
4426ca:	8b 5d 08             	mov    0x8(%ebp),%ebx
4426cd:	56                   	push   %esi
4426ce:	57                   	push   %edi
4426cf:	85 db                	test   %ebx,%ebx
4426d1:	0f 8e 97 01 00 00    	jle    0x44286e
4426d7:	8b 3d a8 d1 48 00    	mov    0x48d1a8,%edi
4426dd:	68 ff 0f 00 00       	push   $0xfff
4426e2:	8d 85 ac df ff ff    	lea    -0x2054(%ebp),%eax
4426e8:	50                   	push   %eax
4426e9:	ff 35 60 21 4c 00    	push   0x4c2160
4426ef:	6a 00                	push   $0x0
4426f1:	ff d7                	call   *%edi
4426f3:	8b 35 ec d5 48 00    	mov    0x48d5ec,%esi
4426f9:	50                   	push   %eax
4426fa:	ff d6                	call   *%esi
4426fc:	8d 85 ac df ff ff    	lea    -0x2054(%ebp),%eax
442702:	50                   	push   %eax
442703:	8d 4d ac             	lea    -0x54(%ebp),%ecx
442706:	e8 0e a7 fc ff       	call   0x40ce19
44270b:	68 ff 0f 00 00       	push   $0xfff
442710:	8d 85 ac df ff ff    	lea    -0x2054(%ebp),%eax
442716:	50                   	push   %eax
442717:	ff 75 0c             	push   0xc(%ebp)
44271a:	6a 00                	push   $0x0
44271c:	ff d7                	call   *%edi
44271e:	50                   	push   %eax
44271f:	ff d6                	call   *%esi
442721:	8d 85 ac df ff ff    	lea    -0x2054(%ebp),%eax
442727:	50                   	push   %eax
442728:	8d 4d bc             	lea    -0x44(%ebp),%ecx
44272b:	e8 e9 a6 fc ff       	call   0x40ce19
442730:	53                   	push   %ebx
442731:	e8 7b 26 fc ff       	call   0x404db1
442736:	53                   	push   %ebx
442737:	89 45 08             	mov    %eax,0x8(%ebp)
44273a:	e8 36 01 00 00       	call   0x442875
44273f:	53                   	push   %ebx
442740:	8b f8                	mov    %eax,%edi
442742:	e8 60 01 00 00       	call   0x4428a7
442747:	8d 4d cc             	lea    -0x34(%ebp),%ecx
44274a:	8b f0                	mov    %eax,%esi
44274c:	e8 a6 b0 fc ff       	call   0x40d7f7
442751:	8d 45 cc             	lea    -0x34(%ebp),%eax
442754:	50                   	push   %eax
442755:	56                   	push   %esi
442756:	e8 7e 01 00 00       	call   0x4428d9
44275b:	84 c0                	test   %al,%al
44275d:	8d 85 ac df ff ff    	lea    -0x2054(%ebp),%eax
442763:	74 14                	je     0x442779
442765:	ff 75 cc             	push   -0x34(%ebp)
442768:	57                   	push   %edi
442769:	68 cc 32 4b 00       	push   $0x4b32cc
44276e:	50                   	push   %eax
44276f:	e8 b7 ef fd ff       	call   0x42172b
442774:	83 c4 10             	add    $0x10,%esp
442777:	eb 0f                	jmp    0x442788
442779:	57                   	push   %edi
44277a:	68 b4 32 4b 00       	push   $0x4b32b4
44277f:	50                   	push   %eax
442780:	e8 a6 ef fd ff       	call   0x42172b
442785:	83 c4 0c             	add    $0xc,%esp
442788:	8d 85 ac df ff ff    	lea    -0x2054(%ebp),%eax
44278e:	50                   	push   %eax
44278f:	8d 4d ec             	lea    -0x14(%ebp),%ecx
442792:	e8 82 a6 fc ff       	call   0x40ce19
442797:	8b 5d 08             	mov    0x8(%ebp),%ebx
44279a:	53                   	push   %ebx
44279b:	8d 4d ec             	lea    -0x14(%ebp),%ecx
44279e:	e8 e9 29 fc ff       	call   0x40518c
4427a3:	be b0 dc 49 00       	mov    $0x49dcb0,%esi
4427a8:	56                   	push   %esi
4427a9:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4427ac:	e8 db 29 fc ff       	call   0x40518c
4427b1:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4427b4:	e8 3e b0 fc ff       	call   0x40d7f7
4427b9:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
4427bd:	7c 38                	jl     0x4427f7
4427bf:	53                   	push   %ebx
4427c0:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4427c3:	e8 9b 42 fc ff       	call   0x406a63
4427c8:	6a ff                	push   $0xffffffff
4427ca:	ff 75 10             	push   0x10(%ebp)
4427cd:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4427d0:	e8 b6 89 fc ff       	call   0x40b18b
4427d5:	68 18 33 4b 00       	push   $0x4b3318
4427da:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4427dd:	e8 aa 29 fc ff       	call   0x40518c
4427e2:	8d 45 dc             	lea    -0x24(%ebp),%eax
4427e5:	50                   	push   %eax
4427e6:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4427e9:	e8 1f 29 fc ff       	call   0x40510d
4427ee:	56                   	push   %esi
4427ef:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4427f2:	e8 95 29 fc ff       	call   0x40518c
4427f7:	68 28 33 4b 00       	push   $0x4b3328
4427fc:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4427ff:	e8 88 29 fc ff       	call   0x40518c
442804:	8d 45 bc             	lea    -0x44(%ebp),%eax
442807:	50                   	push   %eax
442808:	8d 4d ec             	lea    -0x14(%ebp),%ecx
44280b:	e8 fd 28 fc ff       	call   0x40510d
442810:	80 3d 02 21 4c 00 00 	cmpb   $0x0,0x4c2102
442817:	74 1a                	je     0x442833
442819:	ff 75 dc             	push   -0x24(%ebp)
44281c:	53                   	push   %ebx
44281d:	ff 75 bc             	push   -0x44(%ebp)
442820:	57                   	push   %edi
442821:	ff 75 cc             	push   -0x34(%ebp)
442824:	68 3c 33 4b 00       	push   $0x4b333c
442829:	e8 22 f5 fd ff       	call   0x421d50
44282e:	83 c4 18             	add    $0x18,%esp
442831:	eb 13                	jmp    0x442846
442833:	68 10 10 01 00       	push   $0x11010
442838:	ff 75 ac             	push   -0x54(%ebp)
44283b:	ff 75 ec             	push   -0x14(%ebp)
44283e:	6a 00                	push   $0x0
442840:	ff 15 e0 d6 48 00    	call   *0x48d6e0
442846:	8d 4d dc             	lea    -0x24(%ebp),%ecx
442849:	e8 e9 a2 fc ff       	call   0x40cb37
44284e:	8d 4d ec             	lea    -0x14(%ebp),%ecx
442851:	e8 e1 a2 fc ff       	call   0x40cb37
442856:	8d 4d cc             	lea    -0x34(%ebp),%ecx
442859:	e8 d9 a2 fc ff       	call   0x40cb37
44285e:	8d 4d bc             	lea    -0x44(%ebp),%ecx
442861:	e8 d1 a2 fc ff       	call   0x40cb37
442866:	8d 4d ac             	lea    -0x54(%ebp),%ecx
442869:	e8 c9 a2 fc ff       	call   0x40cb37
44286e:	5f                   	pop    %edi
44286f:	5e                   	pop    %esi
442870:	5b                   	pop    %ebx
442871:	c9                   	leave
442872:	c2 0c 00             	ret    $0xc
442875:	55                   	push   %ebp
442876:	8b ec                	mov    %esp,%ebp
442878:	a1 08 21 4c 00       	mov    0x4c2108,%eax
44287d:	85 c0                	test   %eax,%eax
44287f:	74 1f                	je     0x4428a0
442881:	8b 4d 08             	mov    0x8(%ebp),%ecx
442884:	3b 0d 10 21 4c 00    	cmp    0x4c2110,%ecx
44288a:	7f 14                	jg     0x4428a0
44288c:	85 c9                	test   %ecx,%ecx
44288e:	7e 10                	jle    0x4428a0
442890:	49                   	dec    %ecx
442891:	85 c9                	test   %ecx,%ecx
442893:	7e 06                	jle    0x44289b
442895:	8b 40 0c             	mov    0xc(%eax),%eax
442898:	49                   	dec    %ecx
442899:	75 fa                	jne    0x442895
44289b:	8b 40 04             	mov    0x4(%eax),%eax
44289e:	eb 03                	jmp    0x4428a3
4428a0:	83 c8 ff             	or     $0xffffffff,%eax
4428a3:	5d                   	pop    %ebp
4428a4:	c2 04 00             	ret    $0x4
4428a7:	55                   	push   %ebp
4428a8:	8b ec                	mov    %esp,%ebp
4428aa:	a1 08 21 4c 00       	mov    0x4c2108,%eax
4428af:	85 c0                	test   %eax,%eax
4428b1:	74 1f                	je     0x4428d2
4428b3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4428b6:	3b 0d 10 21 4c 00    	cmp    0x4c2110,%ecx
4428bc:	7f 14                	jg     0x4428d2
4428be:	85 c9                	test   %ecx,%ecx
4428c0:	7e 10                	jle    0x4428d2
4428c2:	49                   	dec    %ecx
4428c3:	85 c9                	test   %ecx,%ecx
4428c5:	7e 06                	jle    0x4428cd
4428c7:	8b 40 0c             	mov    0xc(%eax),%eax
4428ca:	49                   	dec    %ecx
4428cb:	75 fa                	jne    0x4428c7
4428cd:	8b 40 08             	mov    0x8(%eax),%eax
4428d0:	eb 03                	jmp    0x4428d5
4428d2:	83 c8 ff             	or     $0xffffffff,%eax
4428d5:	5d                   	pop    %ebp
4428d6:	c2 04 00             	ret    $0x4
4428d9:	55                   	push   %ebp
4428da:	8b ec                	mov    %esp,%ebp
4428dc:	8b 4d 08             	mov    0x8(%ebp),%ecx
4428df:	3b 0d 20 21 4c 00    	cmp    0x4c2120,%ecx
4428e5:	7d 18                	jge    0x4428ff
4428e7:	85 c9                	test   %ecx,%ecx
4428e9:	78 14                	js     0x4428ff
4428eb:	a1 1c 21 4c 00       	mov    0x4c211c,%eax
4428f0:	ff 34 88             	push   (%eax,%ecx,4)
4428f3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4428f6:	e8 f2 45 fc ff       	call   0x406eed
4428fb:	b0 01                	mov    $0x1,%al
4428fd:	eb 0a                	jmp    0x442909
4428ff:	8b 4d 0c             	mov    0xc(%ebp),%ecx
442902:	e8 c7 93 fc ff       	call   0x40bcce
442907:	32 c0                	xor    %al,%al
442909:	5d                   	pop    %ebp
44290a:	c2 08 00             	ret    $0x8
44290d:	55                   	push   %ebp
44290e:	8b ec                	mov    %esp,%ebp
442910:	83 ec 2c             	sub    $0x2c,%esp
442913:	53                   	push   %ebx
442914:	56                   	push   %esi
442915:	57                   	push   %edi
442916:	8b 7d 08             	mov    0x8(%ebp),%edi
442919:	6a 20                	push   $0x20
44291b:	89 4d f4             	mov    %ecx,-0xc(%ebp)
44291e:	59                   	pop    %ecx
44291f:	6a 09                	push   $0x9
442921:	33 db                	xor    %ebx,%ebx
442923:	5e                   	pop    %esi
442924:	8b d3                	mov    %ebx,%edx
442926:	89 75 e8             	mov    %esi,-0x18(%ebp)
442929:	0f b7 04 57          	movzwl (%edi,%edx,2),%eax
44292d:	66 3b c1             	cmp    %cx,%ax
442930:	74 05                	je     0x442937
442932:	66 3b c6             	cmp    %si,%ax
442935:	75 03                	jne    0x44293a
442937:	42                   	inc    %edx
442938:	eb ef                	jmp    0x442929
44293a:	0f b7 04 57          	movzwl (%edi,%edx,2),%eax
44293e:	6a 22                	push   $0x22
442940:	59                   	pop    %ecx
442941:	89 4d fc             	mov    %ecx,-0x4(%ebp)
442944:	66 3b c1             	cmp    %cx,%ax
442947:	74 0b                	je     0x442954
442949:	6a 27                	push   $0x27
44294b:	59                   	pop    %ecx
44294c:	89 4d fc             	mov    %ecx,-0x4(%ebp)