45c5f2:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
45c5f9:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
45c5fd:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
45c604:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
45c60b:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
45c612:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
45c619:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
45c620:	c6 45 c0 00          	movb   $0x0,-0x40(%ebp)
45c624:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
45c628:	85 c9                	test   %ecx,%ecx
45c62a:	8b 07                	mov    (%edi),%eax
45c62c:	8b 70 04             	mov    0x4(%eax),%esi
45c62f:	8d 45 d8             	lea    -0x28(%ebp),%eax
45c632:	50                   	push   %eax
45c633:	68 dc 50 4c 00       	push   $0x4c50dc
45c638:	68 60 17 4b 00       	push   $0x4b1760
45c63d:	8b ce                	mov    %esi,%ecx
45c63f:	74 14                	je     0x45c655
45c641:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c647:	8b cf                	mov    %edi,%ecx
45c649:	ff d6                	call   *%esi
45c64b:	84 c0                	test   %al,%al
45c64d:	0f 84 ba 00 00 00    	je     0x45c70d
45c653:	eb 0a                	jmp    0x45c65f
45c655:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c65b:	8b cf                	mov    %edi,%ecx
45c65d:	ff d6                	call   *%esi
45c65f:	8b 07                	mov    (%edi),%eax
45c661:	8d 4d c0             	lea    -0x40(%ebp),%ecx
45c664:	51                   	push   %ecx
45c665:	68 dc 50 4c 00       	push   $0x4c50dc
45c66a:	68 6c 17 4b 00       	push   $0x4b176c
45c66f:	8b 70 04             	mov    0x4(%eax),%esi
45c672:	8b ce                	mov    %esi,%ecx
45c674:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c67a:	8b cf                	mov    %edi,%ecx
45c67c:	ff d6                	call   *%esi
45c67e:	80 7d d8 00          	cmpb   $0x0,-0x28(%ebp)
45c682:	74 08                	je     0x45c68c
45c684:	8b 45 e8             	mov    -0x18(%ebp),%eax
45c687:	8b 4d ec             	mov    -0x14(%ebp),%ecx
45c68a:	eb 06                	jmp    0x45c692
45c68c:	8b 45 e0             	mov    -0x20(%ebp),%eax
45c68f:	8b 4d dc             	mov    -0x24(%ebp),%ecx
45c692:	50                   	push   %eax
45c693:	51                   	push   %ecx
45c694:	8d 4b 18             	lea    0x18(%ebx),%ecx
45c697:	e8 04 3e fb ff       	call   0x4104a0
45c69c:	80 7d c0 00          	cmpb   $0x0,-0x40(%ebp)
45c6a0:	74 08                	je     0x45c6aa
45c6a2:	8b 45 d0             	mov    -0x30(%ebp),%eax
45c6a5:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
45c6a8:	eb 06                	jmp    0x45c6b0
45c6aa:	8b 45 c8             	mov    -0x38(%ebp),%eax
45c6ad:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
45c6b0:	50                   	push   %eax
45c6b1:	51                   	push   %ecx
45c6b2:	8d 4b 24             	lea    0x24(%ebx),%ecx
45c6b5:	e8 e6 3d fb ff       	call   0x4104a0
45c6ba:	8b 55 d4             	mov    -0x2c(%ebp),%edx
45c6bd:	32 c0                	xor    %al,%al
45c6bf:	8b 4d d0             	mov    -0x30(%ebp),%ecx
45c6c2:	8b fa                	mov    %edx,%edi
45c6c4:	c7 43 34 00 00 00 00 	movl   $0x0,0x34(%ebx)
45c6cb:	f3 aa                	rep stos %al,%es:(%edi)
45c6cd:	52                   	push   %edx
45c6ce:	e8 af cf 01 00       	call   0x479682
45c6d3:	8b 55 ec             	mov    -0x14(%ebp),%edx
45c6d6:	32 c0                	xor    %al,%al
45c6d8:	8b 4d e8             	mov    -0x18(%ebp),%ecx
45c6db:	8b fa                	mov    %edx,%edi
45c6dd:	f3 aa                	rep stos %al,%es:(%edi)
45c6df:	52                   	push   %edx
45c6e0:	e8 9d cf 01 00       	call   0x479682
45c6e5:	83 c4 08             	add    $0x8,%esp
45c6e8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45c6eb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45c6f2:	59                   	pop    %ecx
45c6f3:	5f                   	pop    %edi
45c6f4:	5e                   	pop    %esi
45c6f5:	5b                   	pop    %ebx
45c6f6:	8b 8d 88 00 00 00    	mov    0x88(%ebp),%ecx
45c6fc:	33 cd                	xor    %ebp,%ecx
45c6fe:	e8 c7 d2 00 00       	call   0x4699ca
45c703:	8d a5 8c 00 00 00    	lea    0x8c(%ebp),%esp
45c709:	5d                   	pop    %ebp
45c70a:	c2 04 00             	ret    $0x4
45c70d:	68 08 70 4b 00       	push   $0x4b7008
45c712:	8d 4d 48             	lea    0x48(%ebp),%ecx
45c715:	e8 26 e9 fa ff       	call   0x40b040
45c71a:	68 60 65 4b 00       	push   $0x4b6560
45c71f:	8b d0                	mov    %eax,%edx
45c721:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
45c725:	8d 4d 30             	lea    0x30(%ebp),%ecx
45c728:	e8 33 50 fb ff       	call   0x411760
45c72d:	68 60 17 4b 00       	push   $0x4b1760
45c732:	8b d0                	mov    %eax,%edx
45c734:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
45c738:	8d 4d 18             	lea    0x18(%ebp),%ecx
45c73b:	e8 20 50 fb ff       	call   0x411760
45c740:	68 30 15 4b 00       	push   $0x4b1530
45c745:	8b d0                	mov    %eax,%edx
45c747:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
45c74b:	8d 4d 00             	lea    0x0(%ebp),%ecx
45c74e:	e8 0d 50 fb ff       	call   0x411760
45c753:	83 c4 0c             	add    $0xc,%esp
45c756:	50                   	push   %eax
45c757:	8d 4d 60             	lea    0x60(%ebp),%ecx
45c75a:	c6 45 fc 07          	movb   $0x7,-0x4(%ebp)
45c75e:	e8 2d f7 fa ff       	call   0x40be90
45c763:	68 b8 1d 4c 00       	push   $0x4c1db8
45c768:	8d 45 60             	lea    0x60(%ebp),%eax
45c76b:	50                   	push   %eax
45c76c:	e8 3d ee 00 00       	call   0x46b5ae
45c771:	cc                   	int3
45c772:	cc                   	int3
45c773:	cc                   	int3
45c774:	cc                   	int3
45c775:	cc                   	int3
45c776:	cc                   	int3
45c777:	cc                   	int3
45c778:	cc                   	int3
45c779:	cc                   	int3
45c77a:	cc                   	int3
45c77b:	cc                   	int3
45c77c:	cc                   	int3
45c77d:	cc                   	int3
45c77e:	cc                   	int3
45c77f:	cc                   	int3
45c780:	51                   	push   %ecx
45c781:	53                   	push   %ebx
45c782:	55                   	push   %ebp
45c783:	56                   	push   %esi
45c784:	8b f1                	mov    %ecx,%esi
45c786:	57                   	push   %edi
45c787:	8b 46 14             	mov    0x14(%esi),%eax
45c78a:	83 f8 04             	cmp    $0x4,%eax
45c78d:	0f 87 20 02 00 00    	ja     0x45c9b3
45c793:	ff 24 85 c0 c9 45 00 	jmp    *0x45c9c0(,%eax,4)
45c79a:	83 7e 30 00          	cmpl   $0x0,0x30(%esi)
45c79e:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
45c7a5:	0f 84 20 01 00 00    	je     0x45c8cb
45c7ab:	33 c9                	xor    %ecx,%ecx
45c7ad:	eb 7c                	jmp    0x45c82b
45c7af:	8b 46 30             	mov    0x30(%esi),%eax
45c7b2:	2b 46 34             	sub    0x34(%esi),%eax
45c7b5:	8b 6e 10             	mov    0x10(%esi),%ebp
45c7b8:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
45c7bc:	2b cd                	sub    %ebp,%ecx
45c7be:	3b c1                	cmp    %ecx,%eax
45c7c0:	0f 42 c8             	cmovb  %eax,%ecx
45c7c3:	8b 06                	mov    (%esi),%eax
45c7c5:	89 4c 24 10          	mov    %ecx,0x10(%esp)
45c7c9:	8b b8 a4 00 00 00    	mov    0xa4(%eax),%edi
45c7cf:	8b cf                	mov    %edi,%ecx
45c7d1:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c7d7:	8b ce                	mov    %esi,%ecx
45c7d9:	ff d7                	call   *%edi
45c7db:	ff 74 24 24          	push   0x24(%esp)
45c7df:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
45c7e3:	8b d8                	mov    %eax,%ebx
45c7e5:	6a 00                	push   $0x0
45c7e7:	ff 74 24 18          	push   0x18(%esp)
45c7eb:	03 cd                	add    %ebp,%ecx
45c7ed:	8b 3b                	mov    (%ebx),%edi
45c7ef:	51                   	push   %ecx
45c7f0:	68 40 4e 4c 00       	push   $0x4c4e40
45c7f5:	8b bf 88 00 00 00    	mov    0x88(%edi),%edi
45c7fb:	8b cf                	mov    %edi,%ecx
45c7fd:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c803:	8b cb                	mov    %ebx,%ecx
45c805:	ff d7                	call   *%edi
45c807:	8b 56 10             	mov    0x10(%esi),%edx
45c80a:	8b c8                	mov    %eax,%ecx
45c80c:	f7 d9                	neg    %ecx
45c80e:	1b c9                	sbb    %ecx,%ecx
45c810:	83 e1 02             	and    $0x2,%ecx
45c813:	89 4e 14             	mov    %ecx,0x14(%esi)
45c816:	85 c0                	test   %eax,%eax
45c818:	0f 85 95 00 00 00    	jne    0x45c8b3
45c81e:	8b 44 24 10          	mov    0x10(%esp),%eax
45c822:	01 46 34             	add    %eax,0x34(%esi)
45c825:	8d 0c 02             	lea    (%edx,%eax,1),%ecx
45c828:	89 4e 10             	mov    %ecx,0x10(%esi)
45c82b:	3b 4c 24 1c          	cmp    0x1c(%esp),%ecx
45c82f:	0f 83 f9 00 00 00    	jae    0x45c92e
45c835:	8b 46 34             	mov    0x34(%esi),%eax
45c838:	3b 46 30             	cmp    0x30(%esi),%eax
45c83b:	0f 85 6e ff ff ff    	jne    0x45c7af
45c841:	8b 46 20             	mov    0x20(%esi),%eax
45c844:	8b 6e 1c             	mov    0x1c(%esi),%ebp
45c847:	89 44 24 10          	mov    %eax,0x10(%esp)
45c84b:	8b 06                	mov    (%esi),%eax
45c84d:	8b b8 a4 00 00 00    	mov    0xa4(%eax),%edi
45c853:	8b cf                	mov    %edi,%ecx
45c855:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c85b:	8b ce                	mov    %esi,%ecx
45c85d:	ff d7                	call   *%edi
45c85f:	ff 74 24 24          	push   0x24(%esp)
45c863:	8b d8                	mov    %eax,%ebx
45c865:	6a 00                	push   $0x0
45c867:	55                   	push   %ebp
45c868:	ff 74 24 1c          	push   0x1c(%esp)
45c86c:	8b 3b                	mov    (%ebx),%edi
45c86e:	68 40 4e 4c 00       	push   $0x4c4e40
45c873:	8b bf 88 00 00 00    	mov    0x88(%edi),%edi
45c879:	8b cf                	mov    %edi,%ecx
45c87b:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c881:	8b cb                	mov    %ebx,%ecx
45c883:	ff d7                	call   *%edi
45c885:	33 c9                	xor    %ecx,%ecx
45c887:	85 c0                	test   %eax,%eax
45c889:	0f 95 c1             	setne  %cl
45c88c:	89 4e 14             	mov    %ecx,0x14(%esi)
45c88f:	85 c0                	test   %eax,%eax
45c891:	75 08                	jne    0x45c89b
45c893:	89 46 34             	mov    %eax,0x34(%esi)
45c896:	e9 14 ff ff ff       	jmp    0x45c7af
45c89b:	8b 4e 1c             	mov    0x1c(%esi),%ecx
45c89e:	b8 01 00 00 00       	mov    $0x1,%eax
45c8a3:	2b 4e 10             	sub    0x10(%esi),%ecx
45c8a6:	5f                   	pop    %edi
45c8a7:	5e                   	pop    %esi
45c8a8:	3b c8                	cmp    %eax,%ecx
45c8aa:	5d                   	pop    %ebp
45c8ab:	0f 47 c1             	cmova  %ecx,%eax
45c8ae:	5b                   	pop    %ebx
45c8af:	59                   	pop    %ecx
45c8b0:	c2 10 00             	ret    $0x10
45c8b3:	8b 4c 24 10          	mov    0x10(%esp),%ecx
45c8b7:	b8 01 00 00 00       	mov    $0x1,%eax
45c8bc:	5f                   	pop    %edi
45c8bd:	2b ca                	sub    %edx,%ecx
45c8bf:	5e                   	pop    %esi
45c8c0:	3b c8                	cmp    %eax,%ecx
45c8c2:	5d                   	pop    %ebp
45c8c3:	0f 47 c1             	cmova  %ecx,%eax
45c8c6:	5b                   	pop    %ebx
45c8c7:	59                   	pop    %ecx
45c8c8:	c2 10 00             	ret    $0x10
45c8cb:	8b 06                	mov    (%esi),%eax
45c8cd:	8b b8 a4 00 00 00    	mov    0xa4(%eax),%edi
45c8d3:	8b cf                	mov    %edi,%ecx
45c8d5:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c8db:	8b ce                	mov    %esi,%ecx
45c8dd:	ff d7                	call   *%edi
45c8df:	ff 74 24 24          	push   0x24(%esp)
45c8e3:	8b 6c 24 20          	mov    0x20(%esp),%ebp
45c8e7:	8b d8                	mov    %eax,%ebx
45c8e9:	6a 00                	push   $0x0
45c8eb:	55                   	push   %ebp
45c8ec:	ff 74 24 24          	push   0x24(%esp)
45c8f0:	8b 3b                	mov    (%ebx),%edi
45c8f2:	68 40 4e 4c 00       	push   $0x4c4e40
45c8f7:	8b bf 88 00 00 00    	mov    0x88(%edi),%edi
45c8fd:	8b cf                	mov    %edi,%ecx
45c8ff:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c905:	8b cb                	mov    %ebx,%ecx
45c907:	ff d7                	call   *%edi
45c909:	8b c8                	mov    %eax,%ecx
45c90b:	f7 d9                	neg    %ecx
45c90d:	1b c9                	sbb    %ecx,%ecx
45c90f:	83 e1 03             	and    $0x3,%ecx
45c912:	89 4e 14             	mov    %ecx,0x14(%esi)
45c915:	85 c0                	test   %eax,%eax
45c917:	74 15                	je     0x45c92e
45c919:	2b 6e 10             	sub    0x10(%esi),%ebp
45c91c:	b8 01 00 00 00       	mov    $0x1,%eax
45c921:	5f                   	pop    %edi
45c922:	3b e8                	cmp    %eax,%ebp
45c924:	5e                   	pop    %esi
45c925:	0f 47 c5             	cmova  %ebp,%eax
45c928:	5d                   	pop    %ebp
45c929:	5b                   	pop    %ebx
45c92a:	59                   	pop    %ecx
45c92b:	c2 10 00             	ret    $0x10
45c92e:	83 7c 24 20 00       	cmpl   $0x0,0x20(%esp)
45c933:	74 7e                	je     0x45c9b3
45c935:	8b 46 2c             	mov    0x2c(%esi),%eax
45c938:	8b 6e 28             	mov    0x28(%esi),%ebp
45c93b:	89 44 24 10          	mov    %eax,0x10(%esp)
45c93f:	8b 06                	mov    (%esi),%eax
45c941:	8b b8 a4 00 00 00    	mov    0xa4(%eax),%edi
45c947:	8b cf                	mov    %edi,%ecx
45c949:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c94f:	8b ce                	mov    %esi,%ecx
45c951:	ff d7                	call   *%edi
45c953:	ff 74 24 24          	push   0x24(%esp)
45c957:	8b d8                	mov    %eax,%ebx
45c959:	8b 44 24 24          	mov    0x24(%esp),%eax
45c95d:	85 c0                	test   %eax,%eax
45c95f:	8b 3b                	mov    (%ebx),%edi
45c961:	8d 48 ff             	lea    -0x1(%eax),%ecx
45c964:	0f 44 c8             	cmove  %eax,%ecx
45c967:	51                   	push   %ecx
45c968:	55                   	push   %ebp
45c969:	ff 74 24 1c          	push   0x1c(%esp)
45c96d:	8b bf 88 00 00 00    	mov    0x88(%edi),%edi
45c973:	8b cf                	mov    %edi,%ecx
45c975:	68 40 4e 4c 00       	push   $0x4c4e40
45c97a:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45c980:	8b cb                	mov    %ebx,%ecx
45c982:	ff d7                	call   *%edi
45c984:	8b c8                	mov    %eax,%ecx
45c986:	f7 d9                	neg    %ecx
45c988:	1b c9                	sbb    %ecx,%ecx
45c98a:	83 e1 04             	and    $0x4,%ecx
45c98d:	89 4e 14             	mov    %ecx,0x14(%esi)
45c990:	85 c0                	test   %eax,%eax
45c992:	74 18                	je     0x45c9ac
45c994:	8b 4e 28             	mov    0x28(%esi),%ecx
45c997:	b8 01 00 00 00       	mov    $0x1,%eax
45c99c:	2b 4e 10             	sub    0x10(%esi),%ecx
45c99f:	5f                   	pop    %edi
45c9a0:	5e                   	pop    %esi
45c9a1:	3b c8                	cmp    %eax,%ecx
45c9a3:	5d                   	pop    %ebp
45c9a4:	0f 47 c1             	cmova  %ecx,%eax
45c9a7:	5b                   	pop    %ebx
45c9a8:	59                   	pop    %ecx
45c9a9:	c2 10 00             	ret    $0x10
45c9ac:	c7 46 34 00 00 00 00 	movl   $0x0,0x34(%esi)
45c9b3:	5f                   	pop    %edi
45c9b4:	5e                   	pop    %esi
45c9b5:	5d                   	pop    %ebp
45c9b6:	33 c0                	xor    %eax,%eax
45c9b8:	5b                   	pop    %ebx
45c9b9:	59                   	pop    %ecx
45c9ba:	c2 10 00             	ret    $0x10
45c9bd:	0f 1f 00             	nopl   (%eax)
45c9c0:	9a c7 45 00 41 c8 45 	lcall  $0x45c8,$0x410045c7
45c9c7:	00 af c7 45 00 cb    	add    %ch,-0x34ffba39(%edi)
45c9cd:	c8 45 00 35          	enter  $0x45,$0x35
45c9d1:	c9                   	leave
45c9d2:	45                   	inc    %ebp
45c9d3:	00 cc                	add    %cl,%ah
45c9d5:	cc                   	int3
45c9d6:	cc                   	int3
45c9d7:	cc                   	int3
45c9d8:	cc                   	int3
45c9d9:	cc                   	int3
45c9da:	cc                   	int3
45c9db:	cc                   	int3
45c9dc:	cc                   	int3
45c9dd:	cc                   	int3
45c9de:	cc                   	int3
45c9df:	cc                   	int3
45c9e0:	55                   	push   %ebp
45c9e1:	8b ec                	mov    %esp,%ebp
45c9e3:	6a ff                	push   $0xffffffff