450679:	cc                   	int3
45067a:	cc                   	int3
45067b:	cc                   	int3
45067c:	cc                   	int3
45067d:	cc                   	int3
45067e:	cc                   	int3
45067f:	cc                   	int3
450680:	55                   	push   %ebp
450681:	8b ec                	mov    %esp,%ebp
450683:	51                   	push   %ecx
450684:	8b 45 0c             	mov    0xc(%ebp),%eax
450687:	53                   	push   %ebx
450688:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
45068b:	89 45 fc             	mov    %eax,-0x4(%ebp)
45068e:	57                   	push   %edi
45068f:	8b 7d 14             	mov    0x14(%ebp),%edi
450692:	85 db                	test   %ebx,%ebx
450694:	74 58                	je     0x4506ee
450696:	56                   	push   %esi
450697:	85 ff                	test   %edi,%edi
450699:	74 46                	je     0x4506e1
45069b:	8b 47 20             	mov    0x20(%edi),%eax
45069e:	83 38 00             	cmpl   $0x0,(%eax)
4506a1:	74 20                	je     0x4506c3
4506a3:	8b 4f 30             	mov    0x30(%edi),%ecx
4506a6:	8b 01                	mov    (%ecx),%eax
4506a8:	85 c0                	test   %eax,%eax
4506aa:	7e 17                	jle    0x4506c3
4506ac:	48                   	dec    %eax
4506ad:	89 01                	mov    %eax,(%ecx)
4506af:	8b 4f 20             	mov    0x20(%edi),%ecx
4506b2:	8b 11                	mov    (%ecx),%edx
4506b4:	8d 42 01             	lea    0x1(%edx),%eax
4506b7:	89 01                	mov    %eax,(%ecx)
4506b9:	8a 45 18             	mov    0x18(%ebp),%al
4506bc:	88 02                	mov    %al,(%edx)
4506be:	0f b6 c0             	movzbl %al,%eax
4506c1:	eb 16                	jmp    0x4506d9
4506c3:	8b 17                	mov    (%edi),%edx
4506c5:	0f b6 45 18          	movzbl 0x18(%ebp),%eax
4506c9:	50                   	push   %eax
4506ca:	8b 72 0c             	mov    0xc(%edx),%esi
4506cd:	8b ce                	mov    %esi,%ecx
4506cf:	ff 15 e0 24 68 00    	call   *0x6824e0
4506d5:	8b cf                	mov    %edi,%ecx
4506d7:	ff d6                	call   *%esi
4506d9:	8b 7d 14             	mov    0x14(%ebp),%edi
4506dc:	83 f8 ff             	cmp    $0xffffffff,%eax
4506df:	75 04                	jne    0x4506e5
4506e1:	c6 45 10 01          	movb   $0x1,0x10(%ebp)
4506e5:	83 eb 01             	sub    $0x1,%ebx
4506e8:	75 ad                	jne    0x450697
4506ea:	8b 45 fc             	mov    -0x4(%ebp),%eax
4506ed:	5e                   	pop    %esi
4506ee:	8b 4d 10             	mov    0x10(%ebp),%ecx
4506f1:	89 78 04             	mov    %edi,0x4(%eax)
4506f4:	5f                   	pop    %edi
4506f5:	89 08                	mov    %ecx,(%eax)
4506f7:	5b                   	pop    %ebx
4506f8:	8b e5                	mov    %ebp,%esp
4506fa:	5d                   	pop    %ebp
4506fb:	c3                   	ret
4506fc:	cc                   	int3
4506fd:	cc                   	int3
4506fe:	cc                   	int3
4506ff:	cc                   	int3
450700:	55                   	push   %ebp
450701:	8b ec                	mov    %esp,%ebp
450703:	56                   	push   %esi
450704:	57                   	push   %edi
450705:	8b 7d 08             	mov    0x8(%ebp),%edi
450708:	8b f1                	mov    %ecx,%esi
45070a:	3b f7                	cmp    %edi,%esi
45070c:	74 61                	je     0x45076f
45070e:	8b 4e 14             	mov    0x14(%esi),%ecx
450711:	83 f9 10             	cmp    $0x10,%ecx
450714:	72 27                	jb     0x45073d
450716:	8b 06                	mov    (%esi),%eax
450718:	41                   	inc    %ecx
450719:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
45071f:	72 12                	jb     0x450733
450721:	8b 50 fc             	mov    -0x4(%eax),%edx
450724:	83 c1 23             	add    $0x23,%ecx
450727:	2b c2                	sub    %edx,%eax
450729:	83 c0 fc             	add    $0xfffffffc,%eax
45072c:	83 f8 1f             	cmp    $0x1f,%eax
45072f:	77 46                	ja     0x450777
450731:	8b c2                	mov    %edx,%eax
450733:	51                   	push   %ecx
450734:	50                   	push   %eax
450735:	e8 38 09 19 00       	call   0x5e1072
45073a:	83 c4 08             	add    $0x8,%esp
45073d:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
450744:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
45074b:	c6 06 00             	movb   $0x0,(%esi)
45074e:	0f 10 07             	movups (%edi),%xmm0
450751:	0f 11 06             	movups %xmm0,(%esi)
450754:	f3 0f 7e 47 10       	movq   0x10(%edi),%xmm0
450759:	66 0f d6 46 10       	movq   %xmm0,0x10(%esi)
45075e:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
450765:	c7 47 14 0f 00 00 00 	movl   $0xf,0x14(%edi)
45076c:	c6 07 00             	movb   $0x0,(%edi)
45076f:	5f                   	pop    %edi
450770:	8b c6                	mov    %esi,%eax
450772:	5e                   	pop    %esi
450773:	5d                   	pop    %ebp
450774:	c2 04 00             	ret    $0x4
450777:	e8 b3 c7 19 00       	call   0x5ecf2f
45077c:	cc                   	int3
45077d:	cc                   	int3
45077e:	cc                   	int3
45077f:	cc                   	int3
450780:	55                   	push   %ebp
450781:	8b ec                	mov    %esp,%ebp
450783:	8b 4d 0c             	mov    0xc(%ebp),%ecx
450786:	8b 45 08             	mov    0x8(%ebp),%eax
450789:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
45078f:	72 12                	jb     0x4507a3
450791:	8b 50 fc             	mov    -0x4(%eax),%edx
450794:	83 c1 23             	add    $0x23,%ecx
450797:	2b c2                	sub    %edx,%eax
450799:	83 c0 fc             	add    $0xfffffffc,%eax
45079c:	83 f8 1f             	cmp    $0x1f,%eax
45079f:	77 10                	ja     0x4507b1
4507a1:	8b c2                	mov    %edx,%eax
4507a3:	51                   	push   %ecx
4507a4:	50                   	push   %eax
4507a5:	e8 c8 08 19 00       	call   0x5e1072
4507aa:	83 c4 08             	add    $0x8,%esp
4507ad:	5d                   	pop    %ebp
4507ae:	c2 08 00             	ret    $0x8
4507b1:	e8 79 c7 19 00       	call   0x5ecf2f
4507b6:	cc                   	int3
4507b7:	cc                   	int3
4507b8:	cc                   	int3
4507b9:	cc                   	int3
4507ba:	cc                   	int3
4507bb:	cc                   	int3
4507bc:	cc                   	int3
4507bd:	cc                   	int3
4507be:	cc                   	int3
4507bf:	cc                   	int3
4507c0:	8a 41 0c             	mov    0xc(%ecx),%al
4507c3:	c3                   	ret
4507c4:	cc                   	int3
4507c5:	cc                   	int3
4507c6:	cc                   	int3
4507c7:	cc                   	int3
4507c8:	cc                   	int3
4507c9:	cc                   	int3
4507ca:	cc                   	int3
4507cb:	cc                   	int3
4507cc:	cc                   	int3
4507cd:	cc                   	int3
4507ce:	cc                   	int3
4507cf:	cc                   	int3
4507d0:	55                   	push   %ebp
4507d1:	8b ec                	mov    %esp,%ebp
4507d3:	51                   	push   %ecx
4507d4:	8b 51 10             	mov    0x10(%ecx),%edx
4507d7:	8b ca                	mov    %edx,%ecx
4507d9:	56                   	push   %esi
4507da:	8b 75 08             	mov    0x8(%ebp),%esi
4507dd:	57                   	push   %edi
4507de:	89 75 fc             	mov    %esi,-0x4(%ebp)
4507e1:	8d 79 01             	lea    0x1(%ecx),%edi
4507e4:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
4507eb:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
4507f2:	c6 06 00             	movb   $0x0,(%esi)
4507f5:	8a 01                	mov    (%ecx),%al
4507f7:	41                   	inc    %ecx
4507f8:	84 c0                	test   %al,%al
4507fa:	75 f9                	jne    0x4507f5
4507fc:	2b cf                	sub    %edi,%ecx
4507fe:	51                   	push   %ecx
4507ff:	52                   	push   %edx
450800:	8b ce                	mov    %esi,%ecx
450802:	e8 39 4a ff ff       	call   0x445240
450807:	5f                   	pop    %edi
450808:	8b c6                	mov    %esi,%eax
45080a:	5e                   	pop    %esi
45080b:	8b e5                	mov    %ebp,%esp
45080d:	5d                   	pop    %ebp
45080e:	c2 04 00             	ret    $0x4
450811:	cc                   	int3
450812:	cc                   	int3
450813:	cc                   	int3
450814:	cc                   	int3
450815:	cc                   	int3
450816:	cc                   	int3
450817:	cc                   	int3
450818:	cc                   	int3
450819:	cc                   	int3
45081a:	cc                   	int3
45081b:	cc                   	int3
45081c:	cc                   	int3
45081d:	cc                   	int3
45081e:	cc                   	int3
45081f:	cc                   	int3
450820:	55                   	push   %ebp
450821:	8b ec                	mov    %esp,%ebp
450823:	51                   	push   %ecx
450824:	8b 51 08             	mov    0x8(%ecx),%edx
450827:	8b ca                	mov    %edx,%ecx
450829:	56                   	push   %esi
45082a:	8b 75 08             	mov    0x8(%ebp),%esi
45082d:	57                   	push   %edi
45082e:	89 75 fc             	mov    %esi,-0x4(%ebp)
450831:	8d 79 01             	lea    0x1(%ecx),%edi
450834:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
45083b:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
450842:	c6 06 00             	movb   $0x0,(%esi)
450845:	8a 01                	mov    (%ecx),%al
450847:	41                   	inc    %ecx
450848:	84 c0                	test   %al,%al
45084a:	75 f9                	jne    0x450845
45084c:	2b cf                	sub    %edi,%ecx
45084e:	51                   	push   %ecx
45084f:	52                   	push   %edx
450850:	8b ce                	mov    %esi,%ecx
450852:	e8 e9 49 ff ff       	call   0x445240
450857:	5f                   	pop    %edi
450858:	8b c6                	mov    %esi,%eax
45085a:	5e                   	pop    %esi
45085b:	8b e5                	mov    %ebp,%esp
45085d:	5d                   	pop    %ebp
45085e:	c2 04 00             	ret    $0x4
450861:	cc                   	int3
450862:	cc                   	int3
450863:	cc                   	int3
450864:	cc                   	int3
450865:	cc                   	int3
450866:	cc                   	int3
450867:	cc                   	int3
450868:	cc                   	int3
450869:	cc                   	int3
45086a:	cc                   	int3
45086b:	cc                   	int3
45086c:	cc                   	int3
45086d:	cc                   	int3
45086e:	cc                   	int3
45086f:	cc                   	int3
450870:	55                   	push   %ebp
450871:	8b ec                	mov    %esp,%ebp
450873:	8a 45 08             	mov    0x8(%ebp),%al
450876:	5d                   	pop    %ebp
450877:	c2 08 00             	ret    $0x8
45087a:	cc                   	int3
45087b:	cc                   	int3
45087c:	cc                   	int3
45087d:	cc                   	int3
45087e:	cc                   	int3
45087f:	cc                   	int3
450880:	55                   	push   %ebp
450881:	8b ec                	mov    %esp,%ebp
450883:	8b 55 14             	mov    0x14(%ebp),%edx
450886:	56                   	push   %esi
450887:	8b 75 08             	mov    0x8(%ebp),%esi
45088a:	57                   	push   %edi
45088b:	8b 7d 0c             	mov    0xc(%ebp),%edi
45088e:	8b cf                	mov    %edi,%ecx
450890:	2b ce                	sub    %esi,%ecx
450892:	51                   	push   %ecx
450893:	56                   	push   %esi
450894:	52                   	push   %edx
450895:	e8 66 26 19 00       	call   0x5e2f00
45089a:	83 c4 0c             	add    $0xc,%esp
45089d:	8b c7                	mov    %edi,%eax
45089f:	5f                   	pop    %edi
4508a0:	5e                   	pop    %esi
4508a1:	5d                   	pop    %ebp
4508a2:	c2 10 00             	ret    $0x10
4508a5:	cc                   	int3
4508a6:	cc                   	int3
4508a7:	cc                   	int3
4508a8:	cc                   	int3
4508a9:	cc                   	int3
4508aa:	cc                   	int3
4508ab:	cc                   	int3
4508ac:	cc                   	int3
4508ad:	cc                   	int3
4508ae:	cc                   	int3
4508af:	cc                   	int3
4508b0:	55                   	push   %ebp
4508b1:	8b ec                	mov    %esp,%ebp
4508b3:	83 ec 54             	sub    $0x54,%esp
4508b6:	a1 d4 89 72 00       	mov    0x7289d4,%eax
4508bb:	33 c5                	xor    %ebp,%eax
4508bd:	89 45 fc             	mov    %eax,-0x4(%ebp)
4508c0:	0f b6 45 f5          	movzbl -0xb(%ebp),%eax
4508c4:	53                   	push   %ebx
4508c5:	56                   	push   %esi
4508c6:	8b 75 14             	mov    0x14(%ebp),%esi
4508c9:	89 4d ac             	mov    %ecx,-0x54(%ebp)
4508cc:	8b 5d ac             	mov    -0x54(%ebp),%ebx
4508cf:	c7 45 b0 2b 00 00 00 	movl   $0x2b,-0x50(%ebp)
4508d6:	8b 4e 14             	mov    0x14(%esi),%ecx
4508d9:	8b d1                	mov    %ecx,%edx
4508db:	83 e2 20             	and    $0x20,%edx
4508de:	c6 45 f4 25          	movb   $0x25,-0xc(%ebp)
4508e2:	57                   	push   %edi
4508e3:	0f 45 45 b0          	cmovne -0x50(%ebp),%eax
4508e7:	85 d2                	test   %edx,%edx
4508e9:	8b 7d 08             	mov    0x8(%ebp),%edi
4508ec:	8d 55 f6             	lea    -0xa(%ebp),%edx
4508ef:	88 45 f5             	mov    %al,-0xb(%ebp)
4508f2:	8d 45 f5             	lea    -0xb(%ebp),%eax
4508f5:	0f 45 c2             	cmovne %edx,%eax
4508f8:	f6 c1 08             	test   $0x8,%cl
4508fb:	74 04                	je     0x450901
4508fd:	c6 00 23             	movb   $0x23,(%eax)
450900:	40                   	inc    %eax
450901:	8b d1                	mov    %ecx,%edx
450903:	c6 00 6c             	movb   $0x6c,(%eax)
450906:	81 e2 00 0e 00 00    	and    $0xe00,%edx
45090c:	81 fa 00 04 00 00    	cmp    $0x400,%edx
450912:	75 04                	jne    0x450918
450914:	b1 6f                	mov    $0x6f,%cl
450916:	eb 17                	jmp    0x45092f
450918:	81 fa 00 08 00 00    	cmp    $0x800,%edx
45091e:	74 04                	je     0x450924
450920:	b1 64                	mov    $0x64,%cl
450922:	eb 0b                	jmp    0x45092f
450924:	c0 e1 03             	shl    $0x3,%cl
450927:	f6 d1                	not    %cl
450929:	80 e1 20             	and    $0x20,%cl
45092c:	80 c9 58             	or     $0x58,%cl
45092f:	ff 75 1c             	push   0x1c(%ebp)
450932:	88 48 01             	mov    %cl,0x1(%eax)
450935:	c6 40 02 00          	movb   $0x0,0x2(%eax)
450939:	8d 45 f4             	lea    -0xc(%ebp),%eax
45093c:	50                   	push   %eax
45093d:	8d 45 b4             	lea    -0x4c(%ebp),%eax
450940:	6a 40                	push   $0x40
450942:	50                   	push   %eax
450943:	e8 08 8c fe ff       	call   0x439550
450948:	50                   	push   %eax
450949:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45094c:	50                   	push   %eax
45094d:	ff 75 18             	push   0x18(%ebp)
450950:	56                   	push   %esi
450951:	ff 75 10             	push   0x10(%ebp)
450954:	ff 75 0c             	push   0xc(%ebp)
450957:	57                   	push   %edi
450958:	53                   	push   %ebx
450959:	e8 22 f6 ff ff       	call   0x44ff80
45095e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
450961:	83 c4 30             	add    $0x30,%esp
450964:	8b c7                	mov    %edi,%eax
450966:	33 cd                	xor    %ebp,%ecx