414537:	c7 85 b4 af ff ff 00 	movl   $0x0,-0x504c(%ebp)
41453e:	00 00 00
414541:	3b c2                	cmp    %edx,%eax
414543:	0f 82 1e 05 00 00    	jb     0x414a67
414549:	2b c2                	sub    %edx,%eax
41454b:	83 c9 ff             	or     $0xffffffff,%ecx
41454e:	83 f8 ff             	cmp    $0xffffffff,%eax
414551:	0f 42 c8             	cmovb  %eax,%ecx
414554:	83 7d 1c 08          	cmpl   $0x8,0x1c(%ebp)
414558:	8d 45 08             	lea    0x8(%ebp),%eax
41455b:	0f 43 45 08          	cmovae 0x8(%ebp),%eax
41455f:	51                   	push   %ecx
414560:	8d 8d a0 af ff ff    	lea    -0x5060(%ebp),%ecx
414566:	8d 04 50             	lea    (%eax,%edx,2),%eax
414569:	50                   	push   %eax
41456a:	e8 91 ea fe ff       	call   0x403000
41456f:	8b 8d d8 af ff ff    	mov    -0x5028(%ebp),%ecx
414575:	83 f9 08             	cmp    $0x8,%ecx
414578:	72 35                	jb     0x4145af
41457a:	8b 95 c4 af ff ff    	mov    -0x503c(%ebp),%edx
414580:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
414587:	8b c2                	mov    %edx,%eax
414589:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
41458f:	72 14                	jb     0x4145a5
414591:	8b 50 fc             	mov    -0x4(%eax),%edx
414594:	83 c1 23             	add    $0x23,%ecx
414597:	2b c2                	sub    %edx,%eax
414599:	83 c0 fc             	add    $0xfffffffc,%eax
41459c:	83 f8 1f             	cmp    $0x1f,%eax
41459f:	0f 87 c7 04 00 00    	ja     0x414a6c
4145a5:	51                   	push   %ecx
4145a6:	52                   	push   %edx
4145a7:	e8 0c 56 00 00       	call   0x419bb8
4145ac:	83 c4 08             	add    $0x8,%esp
4145af:	0f 10 85 a0 af ff ff 	movups -0x5060(%ebp),%xmm0
4145b6:	0f 11 85 c4 af ff ff 	movups %xmm0,-0x503c(%ebp)
4145bd:	f3 0f 7e 85 b0 af ff 	movq   -0x5050(%ebp),%xmm0
4145c4:	ff
4145c5:	66 0f d6 85 d4 af ff 	movq   %xmm0,-0x502c(%ebp)
4145cc:	ff
4145cd:	8b bd d8 af ff ff    	mov    -0x5028(%ebp),%edi
4145d3:	80 bd bf af ff ff 00 	cmpb   $0x0,-0x5041(%ebp)
4145da:	8d 8d c0 af ff ff    	lea    -0x5040(%ebp),%ecx
4145e0:	8d 85 c4 af ff ff    	lea    -0x503c(%ebp),%eax
4145e6:	51                   	push   %ecx
4145e7:	74 07                	je     0x4145f0
4145e9:	68 19 00 02 00       	push   $0x20019
4145ee:	eb 05                	jmp    0x4145f5
4145f0:	68 19 01 02 00       	push   $0x20119
4145f5:	83 ff 08             	cmp    $0x8,%edi
4145f8:	6a 00                	push   $0x0
4145fa:	0f 43 85 c4 af ff ff 	cmovae -0x503c(%ebp),%eax
414601:	50                   	push   %eax
414602:	56                   	push   %esi
414603:	ff 15 04 e0 43 00    	call   *0x43e004
414609:	85 c0                	test   %eax,%eax
41460b:	74 7a                	je     0x414687
41460d:	8b 35 24 72 45 00    	mov    0x457224,%esi
414613:	85 f6                	test   %esi,%esi
414615:	74 35                	je     0x41464c
414617:	50                   	push   %eax
414618:	68 f0 f9 44 00       	push   $0x44f9f0
41461d:	68 54 9f 44 00       	push   $0x449f54
414622:	68 54 9f 44 00       	push   $0x449f54
414627:	68 1c f6 44 00       	push   $0x44f61c
41462c:	68 24 ea 44 00       	push   $0x44ea24
414631:	6a 28                	push   $0x28
414633:	8b ce                	mov    %esi,%ecx
414635:	ff 15 5c e2 43 00    	call   *0x43e25c
41463b:	ff d6                	call   *%esi
41463d:	83 c4 1c             	add    $0x1c,%esp
414640:	c6 85 bf af ff ff 00 	movb   $0x0,-0x5041(%ebp)
414647:	e9 bb 02 00 00       	jmp    0x414907
41464c:	8b 0d 28 72 45 00    	mov    0x457228,%ecx
414652:	85 c9                	test   %ecx,%ecx
414654:	74 25                	je     0x41467b
414656:	8b 31                	mov    (%ecx),%esi
414658:	50                   	push   %eax
414659:	68 f0 f9 44 00       	push   $0x44f9f0
41465e:	68 1c f6 44 00       	push   $0x44f61c
414663:	8b 76 34             	mov    0x34(%esi),%esi
414666:	68 54 9f 44 00       	push   $0x449f54
41466b:	6a 28                	push   $0x28
41466d:	51                   	push   %ecx
41466e:	8b ce                	mov    %esi,%ecx
414670:	ff 15 5c e2 43 00    	call   *0x43e25c
414676:	ff d6                	call   *%esi
414678:	83 c4 18             	add    $0x18,%esp
41467b:	c6 85 bf af ff ff 00 	movb   $0x0,-0x5041(%ebp)
414682:	e9 80 02 00 00       	jmp    0x414907
414687:	83 7d 4c 08          	cmpl   $0x8,0x4c(%ebp)
41468b:	8d 75 38             	lea    0x38(%ebp),%esi
41468e:	8b 55 48             	mov    0x48(%ebp),%edx
414691:	0f 43 75 38          	cmovae 0x38(%ebp),%esi
414695:	c6 85 bf af ff ff 00 	movb   $0x0,-0x5041(%ebp)
41469c:	83 fa 09             	cmp    $0x9,%edx
41469f:	0f 85 06 01 00 00    	jne    0x4147ab
4146a5:	b9 5c fa 44 00       	mov    $0x44fa5c,%ecx
4146aa:	85 d2                	test   %edx,%edx
4146ac:	74 17                	je     0x4146c5
4146ae:	2b f1                	sub    %ecx,%esi
4146b0:	66 8b 04 31          	mov    (%ecx,%esi,1),%ax
4146b4:	66 3b 01             	cmp    (%ecx),%ax
4146b7:	0f 85 ee 00 00 00    	jne    0x4147ab
4146bd:	83 c1 02             	add    $0x2,%ecx
4146c0:	83 ea 01             	sub    $0x1,%edx
4146c3:	75 eb                	jne    0x4146b0
4146c5:	83 7d 34 08          	cmpl   $0x8,0x34(%ebp)
4146c9:	8d 8d ec af ff ff    	lea    -0x5014(%ebp),%ecx
4146cf:	51                   	push   %ecx
4146d0:	8d 8d e8 af ff ff    	lea    -0x5018(%ebp),%ecx
4146d6:	c7 85 ec af ff ff 04 	movl   $0x4,-0x5014(%ebp)
4146dd:	00 00 00
4146e0:	51                   	push   %ecx
4146e1:	6a 00                	push   $0x0
4146e3:	8d 45 20             	lea    0x20(%ebp),%eax
4146e6:	c7 85 e8 af ff ff 00 	movl   $0x0,-0x5018(%ebp)
4146ed:	00 00 00
4146f0:	0f 43 45 20          	cmovae 0x20(%ebp),%eax
4146f4:	6a 00                	push   $0x0
4146f6:	50                   	push   %eax
4146f7:	ff b5 c0 af ff ff    	push   -0x5040(%ebp)
4146fd:	ff 15 00 e0 43 00    	call   *0x43e000
414703:	8b c8                	mov    %eax,%ecx
414705:	85 c9                	test   %ecx,%ecx
414707:	75 66                	jne    0x41476f
414709:	8b b5 e8 af ff ff    	mov    -0x5018(%ebp),%esi
41470f:	68 b0 00 00 00       	push   $0xb0
414714:	50                   	push   %eax
414715:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
41471b:	50                   	push   %eax
41471c:	e8 ef 74 00 00       	call   0x41bc10
414721:	83 c4 08             	add    $0x8,%esp
414724:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
41472a:	e8 41 33 ff ff       	call   0x407a70
41472f:	6a 00                	push   $0x0
414731:	56                   	push   %esi
414732:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
414738:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
41473c:	e8 cf 34 ff ff       	call   0x407c10
414741:	8b bd b8 af ff ff    	mov    -0x5048(%ebp),%edi
414747:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
41474d:	8b d7                	mov    %edi,%edx
41474f:	e8 9c 57 ff ff       	call   0x409ef0
414754:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
41475a:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
41475e:	e8 bd 28 ff ff       	call   0x407020
414763:	c6 85 bf af ff ff 01 	movb   $0x1,-0x5041(%ebp)
41476a:	e9 f0 00 00 00       	jmp    0x41485f
41476f:	8b 35 24 72 45 00    	mov    0x457224,%esi
414775:	85 f6                	test   %esi,%esi
414777:	0f 84 ae 00 00 00    	je     0x41482b
41477d:	51                   	push   %ecx
41477e:	68 70 fa 44 00       	push   $0x44fa70
414783:	68 54 9f 44 00       	push   $0x449f54
414788:	68 54 9f 44 00       	push   $0x449f54
41478d:	68 1c f6 44 00       	push   $0x44f61c
414792:	68 24 ea 44 00       	push   $0x44ea24
414797:	6a 28                	push   $0x28
414799:	8b ce                	mov    %esi,%ecx
41479b:	ff 15 5c e2 43 00    	call   *0x43e25c
4147a1:	ff d6                	call   *%esi
4147a3:	83 c4 1c             	add    $0x1c,%esp
4147a6:	e9 ae 00 00 00       	jmp    0x414859
4147ab:	83 7d 34 08          	cmpl   $0x8,0x34(%ebp)
4147af:	8d 8d ec af ff ff    	lea    -0x5014(%ebp),%ecx
4147b5:	51                   	push   %ecx
4147b6:	8d 8d f0 af ff ff    	lea    -0x5010(%ebp),%ecx
4147bc:	c7 85 ec af ff ff 00 	movl   $0x5000,-0x5014(%ebp)
4147c3:	50 00 00
4147c6:	51                   	push   %ecx
4147c7:	6a 00                	push   $0x0
4147c9:	8d 45 20             	lea    0x20(%ebp),%eax
4147cc:	0f 43 45 20          	cmovae 0x20(%ebp),%eax
4147d0:	6a 00                	push   $0x0
4147d2:	50                   	push   %eax
4147d3:	ff b5 c0 af ff ff    	push   -0x5040(%ebp)
4147d9:	ff 15 00 e0 43 00    	call   *0x43e000
4147df:	8b c8                	mov    %eax,%ecx
4147e1:	85 c9                	test   %ecx,%ecx
4147e3:	75 38                	jne    0x41481d
4147e5:	8d 8d f0 af ff ff    	lea    -0x5010(%ebp),%ecx
4147eb:	8d 51 02             	lea    0x2(%ecx),%edx
4147ee:	66 90                	xchg   %ax,%ax
4147f0:	66 8b 01             	mov    (%ecx),%ax
4147f3:	83 c1 02             	add    $0x2,%ecx
4147f6:	66 85 c0             	test   %ax,%ax
4147f9:	75 f5                	jne    0x4147f0
4147fb:	8b bd b8 af ff ff    	mov    -0x5048(%ebp),%edi
414801:	8d 85 f0 af ff ff    	lea    -0x5010(%ebp),%eax
414807:	2b ca                	sub    %edx,%ecx
414809:	d1 f9                	sar    $1,%ecx
41480b:	51                   	push   %ecx
41480c:	50                   	push   %eax
41480d:	8b cf                	mov    %edi,%ecx
41480f:	e8 dc e6 fe ff       	call   0x402ef0
414814:	c6 85 bf af ff ff 01 	movb   $0x1,-0x5041(%ebp)
41481b:	eb 42                	jmp    0x41485f
41481d:	8b 35 24 72 45 00    	mov    0x457224,%esi
414823:	85 f6                	test   %esi,%esi
414825:	0f 85 52 ff ff ff    	jne    0x41477d
41482b:	a1 28 72 45 00       	mov    0x457228,%eax
414830:	85 c0                	test   %eax,%eax
414832:	74 25                	je     0x414859
414834:	8b 30                	mov    (%eax),%esi
414836:	51                   	push   %ecx
414837:	68 70 fa 44 00       	push   $0x44fa70
41483c:	68 1c f6 44 00       	push   $0x44f61c
414841:	8b 76 34             	mov    0x34(%esi),%esi
414844:	8b ce                	mov    %esi,%ecx
414846:	68 54 9f 44 00       	push   $0x449f54
41484b:	6a 28                	push   $0x28
41484d:	50                   	push   %eax
41484e:	ff 15 5c e2 43 00    	call   *0x43e25c
414854:	ff d6                	call   *%esi
414856:	83 c4 18             	add    $0x18,%esp
414859:	8b bd b8 af ff ff    	mov    -0x5048(%ebp),%edi
41485f:	ff b5 c0 af ff ff    	push   -0x5040(%ebp)
414865:	ff 15 2c e0 43 00    	call   *0x43e02c
41486b:	83 3d 24 72 45 00 00 	cmpl   $0x0,0x457224
414872:	74 48                	je     0x4148bc
414874:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
414878:	72 02                	jb     0x41487c
41487a:	8b 3f                	mov    (%edi),%edi
41487c:	ff 15 6c e0 43 00    	call   *0x43e06c
414882:	8b 35 24 72 45 00    	mov    0x457224,%esi
414888:	8b ce                	mov    %esi,%ecx
41488a:	50                   	push   %eax
41488b:	0f b6 85 bf af ff ff 	movzbl -0x5041(%ebp),%eax
414892:	57                   	push   %edi
414893:	50                   	push   %eax
414894:	68 e8 fa 44 00       	push   $0x44fae8
414899:	68 54 9f 44 00       	push   $0x449f54
41489e:	68 54 9f 44 00       	push   $0x449f54
4148a3:	68 1c f6 44 00       	push   $0x44f61c
4148a8:	68 24 ea 44 00       	push   $0x44ea24
4148ad:	6a 0a                	push   $0xa
4148af:	ff 15 5c e2 43 00    	call   *0x43e25c
4148b5:	ff d6                	call   *%esi
4148b7:	83 c4 24             	add    $0x24,%esp
4148ba:	eb 4b                	jmp    0x414907
4148bc:	8b 35 28 72 45 00    	mov    0x457228,%esi
4148c2:	85 f6                	test   %esi,%esi
4148c4:	74 41                	je     0x414907
4148c6:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
4148ca:	72 02                	jb     0x4148ce
4148cc:	8b 3f                	mov    (%edi),%edi
4148ce:	8b 36                	mov    (%esi),%esi
4148d0:	ff 15 6c e0 43 00    	call   *0x43e06c
4148d6:	8b 76 34             	mov    0x34(%esi),%esi
4148d9:	8b ce                	mov    %esi,%ecx
4148db:	50                   	push   %eax
4148dc:	0f b6 85 bf af ff ff 	movzbl -0x5041(%ebp),%eax
4148e3:	57                   	push   %edi
4148e4:	50                   	push   %eax
4148e5:	68 e8 fa 44 00       	push   $0x44fae8
4148ea:	68 1c f6 44 00       	push   $0x44f61c
4148ef:	68 54 9f 44 00       	push   $0x449f54
4148f4:	6a 0a                	push   $0xa
4148f6:	ff 35 28 72 45 00    	push   0x457228
4148fc:	ff 15 5c e2 43 00    	call   *0x43e25c
414902:	ff d6                	call   *%esi
414904:	83 c4 20             	add    $0x20,%esp
414907:	8b 8d d8 af ff ff    	mov    -0x5028(%ebp),%ecx
41490d:	83 f9 08             	cmp    $0x8,%ecx
414910:	72 35                	jb     0x414947
414912:	8b 95 c4 af ff ff    	mov    -0x503c(%ebp),%edx
414918:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
41491f:	8b c2                	mov    %edx,%eax
414921:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
414927:	72 14                	jb     0x41493d
414929:	8b 50 fc             	mov    -0x4(%eax),%edx
41492c:	83 c1 23             	add    $0x23,%ecx
41492f:	2b c2                	sub    %edx,%eax
414931:	83 c0 fc             	add    $0xfffffffc,%eax
414934:	83 f8 1f             	cmp    $0x1f,%eax
414937:	0f 87 2f 01 00 00    	ja     0x414a6c
41493d:	51                   	push   %ecx
41493e:	52                   	push   %edx
41493f:	e8 74 52 00 00       	call   0x419bb8
414944:	83 c4 08             	add    $0x8,%esp
414947:	33 c0                	xor    %eax,%eax
414949:	c7 85 d4 af ff ff 00 	movl   $0x0,-0x502c(%ebp)
414950:	00 00 00
414953:	c7 85 d8 af ff ff 07 	movl   $0x7,-0x5028(%ebp)
41495a:	00 00 00
41495d:	66 89 85 c4 af ff ff 	mov    %ax,-0x503c(%ebp)
414964:	eb 07                	jmp    0x41496d
414966:	c6 85 bf af ff ff 00 	movb   $0x0,-0x5041(%ebp)
41496d:	8d 8d dc af ff ff    	lea    -0x5024(%ebp),%ecx
414973:	e8 18 02 ff ff       	call   0x404b90
414978:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
41497b:	83 f9 08             	cmp    $0x8,%ecx
41497e:	72 32                	jb     0x4149b2
414980:	8b 55 08             	mov    0x8(%ebp),%edx
414983:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
41498a:	8b c2                	mov    %edx,%eax
41498c:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
414992:	72 14                	jb     0x4149a8
414994:	8b 50 fc             	mov    -0x4(%eax),%edx
414997:	83 c1 23             	add    $0x23,%ecx
41499a:	2b c2                	sub    %edx,%eax
41499c:	83 c0 fc             	add    $0xfffffffc,%eax
41499f:	83 f8 1f             	cmp    $0x1f,%eax
4149a2:	0f 87 c4 00 00 00    	ja     0x414a6c
4149a8:	51                   	push   %ecx
4149a9:	52                   	push   %edx
4149aa:	e8 09 52 00 00       	call   0x419bb8
4149af:	83 c4 08             	add    $0x8,%esp
4149b2:	8b 4d 34             	mov    0x34(%ebp),%ecx
4149b5:	33 c0                	xor    %eax,%eax
4149b7:	c7 45 18 00 00 00 00 	movl   $0x0,0x18(%ebp)
4149be:	c7 45 1c 07 00 00 00 	movl   $0x7,0x1c(%ebp)
4149c5:	66 89 45 08          	mov    %ax,0x8(%ebp)
4149c9:	83 f9 08             	cmp    $0x8,%ecx
4149cc:	72 2e                	jb     0x4149fc
4149ce:	8b 55 20             	mov    0x20(%ebp),%edx
4149d1:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
4149d8:	8b c2                	mov    %edx,%eax
4149da:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4149e0:	72 10                	jb     0x4149f2
4149e2:	8b 50 fc             	mov    -0x4(%eax),%edx
4149e5:	83 c1 23             	add    $0x23,%ecx
4149e8:	2b c2                	sub    %edx,%eax
4149ea:	83 c0 fc             	add    $0xfffffffc,%eax
4149ed:	83 f8 1f             	cmp    $0x1f,%eax
4149f0:	77 7a                	ja     0x414a6c
4149f2:	51                   	push   %ecx
4149f3:	52                   	push   %edx
4149f4:	e8 bf 51 00 00       	call   0x419bb8
4149f9:	83 c4 08             	add    $0x8,%esp
4149fc:	8b 4d 4c             	mov    0x4c(%ebp),%ecx
4149ff:	33 c0                	xor    %eax,%eax
414a01:	c7 45 30 00 00 00 00 	movl   $0x0,0x30(%ebp)
414a08:	c7 45 34 07 00 00 00 	movl   $0x7,0x34(%ebp)
414a0f:	66 89 45 20          	mov    %ax,0x20(%ebp)
414a13:	83 f9 08             	cmp    $0x8,%ecx
414a16:	72 2e                	jb     0x414a46
414a18:	8b 55 38             	mov    0x38(%ebp),%edx
414a1b:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
414a22:	8b c2                	mov    %edx,%eax
414a24:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
414a2a:	72 10                	jb     0x414a3c
414a2c:	8b 50 fc             	mov    -0x4(%eax),%edx
414a2f:	83 c1 23             	add    $0x23,%ecx
414a32:	2b c2                	sub    %edx,%eax
414a34:	83 c0 fc             	add    $0xfffffffc,%eax
414a37:	83 f8 1f             	cmp    $0x1f,%eax
414a3a:	77 30                	ja     0x414a6c
414a3c:	51                   	push   %ecx