57c588:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
57c58c:	85 d2                	test   %edx,%edx
57c58e:	74 0c                	je     0x57c59c
57c590:	8b 04 8f             	mov    (%edi,%ecx,4),%eax
57c593:	3b 30                	cmp    (%eax),%esi
57c595:	75 16                	jne    0x57c5ad
57c597:	41                   	inc    %ecx
57c598:	3b ca                	cmp    %edx,%ecx
57c59a:	72 f4                	jb     0x57c590
57c59c:	ff 74 24 20          	push   0x20(%esp)
57c5a0:	57                   	push   %edi
57c5a1:	52                   	push   %edx
57c5a2:	53                   	push   %ebx
57c5a3:	ff d5                	call   *%ebp
57c5a5:	83 c4 10             	add    $0x10,%esp
57c5a8:	5f                   	pop    %edi
57c5a9:	5e                   	pop    %esi
57c5aa:	5d                   	pop    %ebp
57c5ab:	5b                   	pop    %ebx
57c5ac:	c3                   	ret
57c5ad:	68 08 04 00 00       	push   $0x408
57c5b2:	68 40 dd 6b 00       	push   $0x6bdd40
57c5b7:	6a 65                	push   $0x65
57c5b9:	68 88 00 00 00       	push   $0x88
57c5be:	6a 10                	push   $0x10
57c5c0:	e8 db 4e f2 ff       	call   0x4a14a0
57c5c5:	83 c4 14             	add    $0x14,%esp
57c5c8:	33 c0                	xor    %eax,%eax
57c5ca:	5f                   	pop    %edi
57c5cb:	5e                   	pop    %esi
57c5cc:	5d                   	pop    %ebp
57c5cd:	5b                   	pop    %ebx
57c5ce:	c3                   	ret
57c5cf:	cc                   	int3
57c5d0:	53                   	push   %ebx
57c5d1:	56                   	push   %esi
57c5d2:	57                   	push   %edi
57c5d3:	e8 48 b8 f5 ff       	call   0x4d7e20
57c5d8:	8b 74 24 10          	mov    0x10(%esp),%esi
57c5dc:	33 ff                	xor    %edi,%edi
57c5de:	8b d8                	mov    %eax,%ebx
57c5e0:	f7 46 34 00 00 00 80 	testl  $0x80000000,0x34(%esi)
57c5e7:	74 59                	je     0x57c642
57c5e9:	8b 86 ac 00 00 00    	mov    0xac(%esi),%eax
57c5ef:	85 c0                	test   %eax,%eax
57c5f1:	74 0f                	je     0x57c602
57c5f3:	50                   	push   %eax
57c5f4:	e8 47 43 ff ff       	call   0x570940
57c5f9:	83 c4 04             	add    $0x4,%esp
57c5fc:	89 be ac 00 00 00    	mov    %edi,0xac(%esi)
57c602:	85 db                	test   %ebx,%ebx
57c604:	74 49                	je     0x57c64f
57c606:	e8 75 43 ff ff       	call   0x570980
57c60b:	89 86 ac 00 00 00    	mov    %eax,0xac(%esi)
57c611:	85 c0                	test   %eax,%eax
57c613:	74 2d                	je     0x57c642
57c615:	53                   	push   %ebx
57c616:	8d 4e 08             	lea    0x8(%esi),%ecx
57c619:	51                   	push   %ecx
57c61a:	50                   	push   %eax
57c61b:	e8 c0 43 ff ff       	call   0x5709e0
57c620:	83 c4 0c             	add    $0xc,%esp
57c623:	85 c0                	test   %eax,%eax
57c625:	75 16                	jne    0x57c63d
57c627:	ff b6 ac 00 00 00    	push   0xac(%esi)
57c62d:	e8 0e 43 ff ff       	call   0x570940
57c632:	83 c4 04             	add    $0x4,%esp
57c635:	89 be ac 00 00 00    	mov    %edi,0xac(%esi)
57c63b:	eb 05                	jmp    0x57c642
57c63d:	bf 01 00 00 00       	mov    $0x1,%edi
57c642:	85 db                	test   %ebx,%ebx
57c644:	74 09                	je     0x57c64f
57c646:	53                   	push   %ebx
57c647:	e8 44 b7 f5 ff       	call   0x4d7d90
57c64c:	83 c4 04             	add    $0x4,%esp
57c64f:	8b c7                	mov    %edi,%eax
57c651:	5f                   	pop    %edi
57c652:	5e                   	pop    %esi
57c653:	5b                   	pop    %ebx
57c654:	c3                   	ret
57c655:	cc                   	int3
57c656:	cc                   	int3
57c657:	cc                   	int3
57c658:	cc                   	int3
57c659:	cc                   	int3
57c65a:	cc                   	int3
57c65b:	cc                   	int3
57c65c:	cc                   	int3
57c65d:	cc                   	int3
57c65e:	cc                   	int3
57c65f:	cc                   	int3
57c660:	b8 30 00 00 00       	mov    $0x30,%eax
57c665:	e8 86 4e 06 00       	call   0x5e14f0
57c66a:	57                   	push   %edi
57c66b:	8b 7c 24 38          	mov    0x38(%esp),%edi
57c66f:	33 c0                	xor    %eax,%eax
57c671:	85 ff                	test   %edi,%edi
57c673:	0f 8e c6 03 00 00    	jle    0x57ca3f
57c679:	b9 c8 07 6c 00       	mov    $0x6c07c8,%ecx
57c67e:	56                   	push   %esi
57c67f:	90                   	nop
57c680:	39 39                	cmp    %edi,(%ecx)
57c682:	74 0e                	je     0x57c692
57c684:	40                   	inc    %eax
57c685:	83 c1 10             	add    $0x10,%ecx
57c688:	83 f8 51             	cmp    $0x51,%eax
57c68b:	72 f3                	jb     0x57c680
57c68d:	e9 7a 03 00 00       	jmp    0x57ca0c
57c692:	c1 e0 04             	shl    $0x4,%eax
57c695:	33 c9                	xor    %ecx,%ecx
57c697:	05 c8 07 6c 00       	add    $0x6c07c8,%eax
57c69c:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
57c6a0:	53                   	push   %ebx
57c6a1:	33 f6                	xor    %esi,%esi
57c6a3:	89 4c 24 14          	mov    %ecx,0x14(%esp)
57c6a7:	55                   	push   %ebp
57c6a8:	0f 10 00             	movups (%eax),%xmm0
57c6ab:	33 c0                	xor    %eax,%eax
57c6ad:	89 74 24 1c          	mov    %esi,0x1c(%esp)
57c6b1:	89 4c 24 20          	mov    %ecx,0x20(%esp)
57c6b5:	33 db                	xor    %ebx,%ebx
57c6b7:	0f 11 44 24 30       	movups %xmm0,0x30(%esp)
57c6bc:	89 4c 24 28          	mov    %ecx,0x28(%esp)
57c6c0:	89 44 24 24          	mov    %eax,0x24(%esp)
57c6c4:	e8 57 b7 f5 ff       	call   0x4d7e20
57c6c9:	89 44 24 10          	mov    %eax,0x10(%esp)
57c6cd:	85 c0                	test   %eax,%eax
57c6cf:	75 20                	jne    0x57c6f1
57c6d1:	68 f9 0b 00 00       	push   $0xbf9
57c6d6:	68 e0 28 6c 00       	push   $0x6c28e0
57c6db:	6a 41                	push   $0x41
57c6dd:	68 af 00 00 00       	push   $0xaf
57c6e2:	6a 10                	push   $0x10
57c6e4:	e8 b7 4d f2 ff       	call   0x4a14a0
57c6e9:	83 c4 14             	add    $0x14,%esp
57c6ec:	e9 86 02 00 00       	jmp    0x57c977
57c6f1:	8b 44 24 34          	mov    0x34(%esp),%eax
57c6f5:	6a 00                	push   $0x0
57c6f7:	8b 48 04             	mov    0x4(%eax),%ecx
57c6fa:	8d 68 10             	lea    0x10(%eax),%ebp
57c6fd:	8b 58 08             	mov    0x8(%eax),%ebx
57c700:	03 e9                	add    %ecx,%ebp
57c702:	53                   	push   %ebx
57c703:	55                   	push   %ebp
57c704:	89 4c 24 38          	mov    %ecx,0x38(%esp)
57c708:	e8 03 65 f3 ff       	call   0x4b2c10
57c70d:	83 c4 0c             	add    $0xc,%esp
57c710:	89 44 24 14          	mov    %eax,0x14(%esp)
57c714:	85 c0                	test   %eax,%eax
57c716:	0f 84 3e 02 00 00    	je     0x57c95a
57c71c:	6a 00                	push   $0x0
57c71e:	8d 04 2b             	lea    (%ebx,%ebp,1),%eax
57c721:	53                   	push   %ebx
57c722:	50                   	push   %eax
57c723:	e8 e8 64 f3 ff       	call   0x4b2c10
57c728:	83 c4 0c             	add    $0xc,%esp
57c72b:	89 44 24 18          	mov    %eax,0x18(%esp)
57c72f:	85 c0                	test   %eax,%eax
57c731:	0f 84 23 02 00 00    	je     0x57c95a
57c737:	6a 00                	push   $0x0
57c739:	8d 04 5d 00 00 00 00 	lea    0x0(,%ebx,2),%eax
57c740:	03 c5                	add    %ebp,%eax
57c742:	53                   	push   %ebx
57c743:	50                   	push   %eax
57c744:	e8 c7 64 f3 ff       	call   0x4b2c10
57c749:	83 c4 0c             	add    $0xc,%esp
57c74c:	89 44 24 20          	mov    %eax,0x20(%esp)
57c750:	85 c0                	test   %eax,%eax
57c752:	0f 84 02 02 00 00    	je     0x57c95a
57c758:	8b 4c 24 38          	mov    0x38(%esp),%ecx
57c75c:	85 c9                	test   %ecx,%ecx
57c75e:	74 44                	je     0x57c7a4
57c760:	ff d1                	call   *%ecx
57c762:	50                   	push   %eax
57c763:	e8 48 f3 ff ff       	call   0x57bab0
57c768:	8b f0                	mov    %eax,%esi
57c76a:	83 c4 04             	add    $0x4,%esp
57c76d:	85 f6                	test   %esi,%esi
57c76f:	74 22                	je     0x57c793
57c771:	ff 74 24 10          	push   0x10(%esp)
57c775:	8b 4c 24 24          	mov    0x24(%esp),%ecx
57c779:	8b 06                	mov    (%esi),%eax
57c77b:	51                   	push   %ecx
57c77c:	8b 4c 24 20          	mov    0x20(%esp),%ecx
57c780:	51                   	push   %ecx
57c781:	8b 4c 24 20          	mov    0x20(%esp),%ecx
57c785:	8b 40 18             	mov    0x18(%eax),%eax
57c788:	51                   	push   %ecx
57c789:	56                   	push   %esi
57c78a:	ff d0                	call   *%eax
57c78c:	83 c4 14             	add    $0x14,%esp
57c78f:	85 c0                	test   %eax,%eax
57c791:	75 6a                	jne    0x57c7fd
57c793:	68 0e 0c 00 00       	push   $0xc0e
57c798:	68 e0 28 6c 00       	push   $0x6c28e0
57c79d:	6a 10                	push   $0x10
57c79f:	e9 c2 01 00 00       	jmp    0x57c966
57c7a4:	8b 4c 24 34          	mov    0x34(%esp),%ecx
57c7a8:	ff 74 24 10          	push   0x10(%esp)
57c7ac:	50                   	push   %eax
57c7ad:	81 39 96 01 00 00    	cmpl   $0x196,(%ecx)
57c7b3:	8b 4c 24 20          	mov    0x20(%esp),%ecx
57c7b7:	51                   	push   %ecx
57c7b8:	8b 4c 24 20          	mov    0x20(%esp),%ecx
57c7bc:	51                   	push   %ecx
57c7bd:	75 1f                	jne    0x57c7de
57c7bf:	e8 0c 33 01 00       	call   0x58fad0
57c7c4:	8b f0                	mov    %eax,%esi
57c7c6:	83 c4 10             	add    $0x10,%esp
57c7c9:	85 f6                	test   %esi,%esi
57c7cb:	75 30                	jne    0x57c7fd
57c7cd:	68 13 0c 00 00       	push   $0xc13
57c7d2:	68 e0 28 6c 00       	push   $0x6c28e0
57c7d7:	6a 10                	push   $0x10
57c7d9:	e9 88 01 00 00       	jmp    0x57c966
57c7de:	e8 9d 32 01 00       	call   0x58fa80
57c7e3:	8b f0                	mov    %eax,%esi
57c7e5:	83 c4 10             	add    $0x10,%esp
57c7e8:	85 f6                	test   %esi,%esi
57c7ea:	75 11                	jne    0x57c7fd
57c7ec:	68 1c 0c 00 00       	push   $0xc1c
57c7f1:	68 e0 28 6c 00       	push   $0x6c28e0
57c7f6:	6a 10                	push   $0x10
57c7f8:	e9 69 01 00 00       	jmp    0x57c966
57c7fd:	56                   	push   %esi
57c7fe:	e8 ed fa ff ff       	call   0x57c2f0
57c803:	83 c4 04             	add    $0x4,%esp
57c806:	89 44 24 1c          	mov    %eax,0x1c(%esp)
57c80a:	85 c0                	test   %eax,%eax
57c80c:	75 11                	jne    0x57c81f
57c80e:	68 23 0c 00 00       	push   $0xc23
57c813:	68 e0 28 6c 00       	push   $0x6c28e0
57c818:	6a 10                	push   $0x10
57c81a:	e9 47 01 00 00       	jmp    0x57c966
57c81f:	8d 04 5d 00 00 00 00 	lea    0x0(,%ebx,2),%eax
57c826:	6a 00                	push   $0x0
57c828:	03 c5                	add    %ebp,%eax
57c82a:	03 c3                	add    %ebx,%eax
57c82c:	53                   	push   %ebx
57c82d:	50                   	push   %eax
57c82e:	e8 dd 63 f3 ff       	call   0x4b2c10
57c833:	83 c4 0c             	add    $0xc,%esp
57c836:	89 44 24 44          	mov    %eax,0x44(%esp)
57c83a:	85 c0                	test   %eax,%eax
57c83c:	0f 84 07 01 00 00    	je     0x57c949
57c842:	6a 00                	push   $0x0
57c844:	8d 0c 9d 00 00 00 00 	lea    0x0(,%ebx,4),%ecx
57c84b:	03 cd                	add    %ebp,%ecx
57c84d:	53                   	push   %ebx
57c84e:	51                   	push   %ecx
57c84f:	e8 bc 63 f3 ff       	call   0x4b2c10
57c854:	83 c4 0c             	add    $0xc,%esp
57c857:	89 44 24 28          	mov    %eax,0x28(%esp)
57c85b:	85 c0                	test   %eax,%eax
57c85d:	0f 84 e6 00 00 00    	je     0x57c949
57c863:	ff 74 24 10          	push   0x10(%esp)
57c867:	50                   	push   %eax
57c868:	ff 74 24 4c          	push   0x4c(%esp)
57c86c:	ff 74 24 28          	push   0x28(%esp)
57c870:	56                   	push   %esi
57c871:	e8 0a fc ff ff       	call   0x57c480
57c876:	83 c4 14             	add    $0x14,%esp
57c879:	85 c0                	test   %eax,%eax
57c87b:	75 24                	jne    0x57c8a1
57c87d:	68 2d 0c 00 00       	push   $0xc2d
57c882:	68 e0 28 6c 00       	push   $0x6c28e0
57c887:	6a 10                	push   $0x10
57c889:	68 af 00 00 00       	push   $0xaf
57c88e:	6a 10                	push   $0x10
57c890:	e8 0b 4c f2 ff       	call   0x4a14a0
57c895:	8b 5c 24 58          	mov    0x58(%esp),%ebx
57c899:	83 c4 14             	add    $0x14,%esp
57c89c:	e9 d6 00 00 00       	jmp    0x57c977
57c8a1:	8d 04 9d 00 00 00 00 	lea    0x0(,%ebx,4),%eax
57c8a8:	6a 00                	push   $0x0
57c8aa:	03 c5                	add    %ebp,%eax
57c8ac:	03 c3                	add    %ebx,%eax
57c8ae:	53                   	push   %ebx
57c8af:	50                   	push   %eax
57c8b0:	e8 5b 63 f3 ff       	call   0x4b2c10
57c8b5:	8b 5c 24 50          	mov    0x50(%esp),%ebx
57c8b9:	83 c4 0c             	add    $0xc,%esp
57c8bc:	89 44 24 24          	mov    %eax,0x24(%esp)
57c8c0:	85 c0                	test   %eax,%eax
57c8c2:	74 68                	je     0x57c92c
57c8c4:	8b 44 24 34          	mov    0x34(%esp),%eax
57c8c8:	ff 70 0c             	push   0xc(%eax)
57c8cb:	53                   	push   %ebx
57c8cc:	e8 1f 6c f3 ff       	call   0x4b34f0
57c8d1:	83 c4 08             	add    $0x8,%esp
57c8d4:	85 c0                	test   %eax,%eax
57c8d6:	74 54                	je     0x57c92c
57c8d8:	8b 44 24 24          	mov    0x24(%esp),%eax
57c8dc:	53                   	push   %ebx
57c8dd:	50                   	push   %eax
57c8de:	ff 74 24 24          	push   0x24(%esp)
57c8e2:	56                   	push   %esi
57c8e3:	e8 58 f3 ff ff       	call   0x57bc40
57c8e8:	83 c4 10             	add    $0x10,%esp
57c8eb:	85 c0                	test   %eax,%eax
57c8ed:	75 1d                	jne    0x57c90c
57c8ef:	68 36 0c 00 00       	push   $0xc36
57c8f4:	68 e0 28 6c 00       	push   $0x6c28e0
57c8f9:	6a 10                	push   $0x10
57c8fb:	68 af 00 00 00       	push   $0xaf
57c900:	6a 10                	push   $0x10
57c902:	e8 99 4b f2 ff       	call   0x4a14a0
57c907:	83 c4 14             	add    $0x14,%esp
57c90a:	eb 6b                	jmp    0x57c977
57c90c:	8b 44 24 2c          	mov    0x2c(%esp),%eax
57c910:	85 c0                	test   %eax,%eax
57c912:	74 6e                	je     0x57c982
57c914:	50                   	push   %eax
57c915:	2b e8                	sub    %eax,%ebp
57c917:	55                   	push   %ebp
57c918:	56                   	push   %esi
57c919:	e8 f2 f3 ff ff       	call   0x57bd10
57c91e:	83 c4 0c             	add    $0xc,%esp
57c921:	85 c0                	test   %eax,%eax
57c923:	75 5d                	jne    0x57c982
57c925:	68 3b 0c 00 00       	push   $0xc3b
57c92a:	eb c8                	jmp    0x57c8f4
57c92c:	68 32 0c 00 00       	push   $0xc32
57c931:	68 e0 28 6c 00       	push   $0x6c28e0
57c936:	6a 03                	push   $0x3
57c938:	68 af 00 00 00       	push   $0xaf
57c93d:	6a 10                	push   $0x10
57c93f:	e8 5c 4b f2 ff       	call   0x4a14a0
57c944:	83 c4 14             	add    $0x14,%esp
57c947:	eb 2e                	jmp    0x57c977
57c949:	68 29 0c 00 00       	push   $0xc29
57c94e:	68 e0 28 6c 00       	push   $0x6c28e0
57c953:	6a 03                	push   $0x3
57c955:	e9 2f ff ff ff       	jmp    0x57c889
57c95a:	68 06 0c 00 00       	push   $0xc06
57c95f:	68 e0 28 6c 00       	push   $0x6c28e0
57c964:	6a 03                	push   $0x3
57c966:	68 af 00 00 00       	push   $0xaf
57c96b:	6a 10                	push   $0x10
57c96d:	e8 2e 4b f2 ff       	call   0x4a14a0
57c972:	83 c4 14             	add    $0x14,%esp
57c975:	33 db                	xor    %ebx,%ebx
57c977:	56                   	push   %esi
57c978:	e8 e3 ee ff ff       	call   0x57b860
57c97d:	83 c4 04             	add    $0x4,%esp
57c980:	33 f6                	xor    %esi,%esi
57c982:	8b 44 24 1c          	mov    0x1c(%esp),%eax
57c986:	85 c0                	test   %eax,%eax
57c988:	74 09                	je     0x57c993
57c98a:	50                   	push   %eax