4a35b5:	8b 4c 24 40          	mov    0x40(%esp),%ecx
4a35b9:	8b 54 24 04          	mov    0x4(%esp),%edx
4a35bd:	8d 44 24 08          	lea    0x8(%esp),%eax
4a35c1:	50                   	push   %eax
4a35c2:	51                   	push   %ecx
4a35c3:	52                   	push   %edx
4a35c4:	e8 a7 ed ff ff       	call   0x4a2370
4a35c9:	83 c4 0c             	add    $0xc,%esp
4a35cc:	89 46 04             	mov    %eax,0x4(%esi)
4a35cf:	85 c0                	test   %eax,%eax
4a35d1:	74 07                	je     0x4a35da
4a35d3:	33 c0                	xor    %eax,%eax
4a35d5:	5e                   	pop    %esi
4a35d6:	83 c4 28             	add    $0x28,%esp
4a35d9:	c3                   	ret
4a35da:	8b 44 24 30          	mov    0x30(%esp),%eax
4a35de:	8d 48 fe             	lea    -0x2(%eax),%ecx
4a35e1:	48                   	dec    %eax
4a35e2:	83 f8 02             	cmp    $0x2,%eax
4a35e5:	7c 16                	jl     0x4a35fd
4a35e7:	8d 14 40             	lea    (%eax,%eax,2),%edx
4a35ea:	8d 54 94 3c          	lea    0x3c(%esp,%edx,4),%edx
4a35ee:	83 3a 00             	cmpl   $0x0,(%edx)
4a35f1:	75 0a                	jne    0x4a35fd
4a35f3:	49                   	dec    %ecx
4a35f4:	48                   	dec    %eax
4a35f5:	83 ea 0c             	sub    $0xc,%edx
4a35f8:	83 f8 02             	cmp    $0x2,%eax
4a35fb:	7d f1                	jge    0x4a35ee
4a35fd:	33 c0                	xor    %eax,%eax
4a35ff:	8d 54 24 4c          	lea    0x4c(%esp),%edx
4a3603:	89 44 24 0c          	mov    %eax,0xc(%esp)
4a3607:	52                   	push   %edx
4a3608:	89 44 24 14          	mov    %eax,0x14(%esp)
4a360c:	8b 54 24 08          	mov    0x8(%esp),%edx
4a3610:	89 44 24 18          	mov    %eax,0x18(%esp)
4a3614:	51                   	push   %ecx
4a3615:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4a3619:	89 44 24 20          	mov    %eax,0x20(%esp)
4a361d:	8d 44 24 14          	lea    0x14(%esp),%eax
4a3621:	50                   	push   %eax
4a3622:	6a 01                	push   $0x1
4a3624:	51                   	push   %ecx
4a3625:	52                   	push   %edx
4a3626:	e8 95 ed ff ff       	call   0x4a23c0
4a362b:	89 46 04             	mov    %eax,0x4(%esi)
4a362e:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a3632:	83 c4 18             	add    $0x18,%esp
4a3635:	8b 08                	mov    (%eax),%ecx
4a3637:	50                   	push   %eax
4a3638:	ff 51 08             	call   *0x8(%ecx)
4a363b:	8b 44 24 0c          	mov    0xc(%esp),%eax
4a363f:	33 f6                	xor    %esi,%esi
4a3641:	66 3d 08 00          	cmp    $0x8,%ax
4a3645:	74 4c                	je     0x4a3693
4a3647:	8b 54 24 10          	mov    0x10(%esp),%edx
4a364b:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4a364f:	89 54 24 20          	mov    %edx,0x20(%esp)
4a3653:	33 d2                	xor    %edx,%edx
4a3655:	89 54 24 0c          	mov    %edx,0xc(%esp)
4a3659:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4a365d:	8b 44 24 14          	mov    0x14(%esp),%eax
4a3661:	89 54 24 10          	mov    %edx,0x10(%esp)
4a3665:	89 44 24 24          	mov    %eax,0x24(%esp)
4a3669:	89 54 24 14          	mov    %edx,0x14(%esp)
4a366d:	89 4c 24 28          	mov    %ecx,0x28(%esp)
4a3671:	6a 08                	push   $0x8
4a3673:	8d 44 24 20          	lea    0x20(%esp),%eax
4a3677:	52                   	push   %edx
4a3678:	8d 4c 24 14          	lea    0x14(%esp),%ecx
4a367c:	50                   	push   %eax
4a367d:	51                   	push   %ecx
4a367e:	89 54 24 28          	mov    %edx,0x28(%esp)
4a3682:	ff 15 e8 31 4b 00    	call   *0x4b31e8
4a3688:	85 c0                	test   %eax,%eax
4a368a:	7c 16                	jl     0x4a36a2
4a368c:	8b 54 24 14          	mov    0x14(%esp),%edx
4a3690:	52                   	push   %edx
4a3691:	eb 05                	jmp    0x4a3698
4a3693:	8b 44 24 14          	mov    0x14(%esp),%eax
4a3697:	50                   	push   %eax
4a3698:	e8 73 ec ff ff       	call   0x4a2310
4a369d:	83 c4 04             	add    $0x4,%esp
4a36a0:	8b f0                	mov    %eax,%esi
4a36a2:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
4a36a6:	51                   	push   %ecx
4a36a7:	ff 15 cc 31 4b 00    	call   *0x4b31cc
4a36ad:	8b c6                	mov    %esi,%eax
4a36af:	5e                   	pop    %esi
4a36b0:	83 c4 28             	add    $0x28,%esp
4a36b3:	c3                   	ret
4a36b4:	90                   	nop
4a36b5:	90                   	nop
4a36b6:	90                   	nop
4a36b7:	90                   	nop
4a36b8:	90                   	nop
4a36b9:	90                   	nop
4a36ba:	90                   	nop
4a36bb:	90                   	nop
4a36bc:	90                   	nop
4a36bd:	90                   	nop
4a36be:	90                   	nop
4a36bf:	90                   	nop
4a36c0:	55                   	push   %ebp
4a36c1:	8b ec                	mov    %esp,%ebp
4a36c3:	83 ec 2c             	sub    $0x2c,%esp
4a36c6:	8b 45 0c             	mov    0xc(%ebp),%eax
4a36c9:	56                   	push   %esi
4a36ca:	8b f0                	mov    %eax,%esi
4a36cc:	83 38 00             	cmpl   $0x0,(%eax)
4a36cf:	75 0c                	jne    0x4a36dd
4a36d1:	c7 40 04 03 40 00 80 	movl   $0x80004003,0x4(%eax)
4a36d8:	5e                   	pop    %esi
4a36d9:	8b e5                	mov    %ebp,%esp
4a36db:	5d                   	pop    %ebp
4a36dc:	c3                   	ret
4a36dd:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4a36e4:	8b 00                	mov    (%eax),%eax
4a36e6:	8d 55 fc             	lea    -0x4(%ebp),%edx
4a36e9:	8b 08                	mov    (%eax),%ecx
4a36eb:	52                   	push   %edx
4a36ec:	68 b0 35 4b 00       	push   $0x4b35b0
4a36f1:	50                   	push   %eax
4a36f2:	ff 11                	call   *(%ecx)
4a36f4:	85 c0                	test   %eax,%eax
4a36f6:	89 46 04             	mov    %eax,0x4(%esi)
4a36f9:	0f 85 66 01 00 00    	jne    0x4a3865
4a36ff:	8b 4d 18             	mov    0x18(%ebp),%ecx
4a3702:	8b 55 fc             	mov    -0x4(%ebp),%edx
4a3705:	8d 45 f8             	lea    -0x8(%ebp),%eax
4a3708:	50                   	push   %eax
4a3709:	51                   	push   %ecx
4a370a:	52                   	push   %edx
4a370b:	e8 60 ec ff ff       	call   0x4a2370
4a3710:	83 c4 0c             	add    $0xc,%esp
4a3713:	89 46 04             	mov    %eax,0x4(%esi)
4a3716:	85 c0                	test   %eax,%eax
4a3718:	0f 85 47 01 00 00    	jne    0x4a3865
4a371e:	8b 45 08             	mov    0x8(%ebp),%eax
4a3721:	8d 48 fe             	lea    -0x2(%eax),%ecx
4a3724:	48                   	dec    %eax
4a3725:	83 f8 02             	cmp    $0x2,%eax
4a3728:	7c 16                	jl     0x4a3740
4a372a:	8d 14 40             	lea    (%eax,%eax,2),%edx
4a372d:	8d 54 95 14          	lea    0x14(%ebp,%edx,4),%edx
4a3731:	83 3a 00             	cmpl   $0x0,(%edx)
4a3734:	75 0a                	jne    0x4a3740
4a3736:	49                   	dec    %ecx
4a3737:	48                   	dec    %eax
4a3738:	83 ea 0c             	sub    $0xc,%edx
4a373b:	83 f8 02             	cmp    $0x2,%eax
4a373e:	7d f1                	jge    0x4a3731
4a3740:	33 c0                	xor    %eax,%eax
4a3742:	8d 55 24             	lea    0x24(%ebp),%edx
4a3745:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4a3748:	52                   	push   %edx
4a3749:	89 45 d8             	mov    %eax,-0x28(%ebp)
4a374c:	8b 55 fc             	mov    -0x4(%ebp),%edx
4a374f:	89 45 dc             	mov    %eax,-0x24(%ebp)
4a3752:	51                   	push   %ecx
4a3753:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4a3756:	89 45 e0             	mov    %eax,-0x20(%ebp)
4a3759:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4a375c:	50                   	push   %eax
4a375d:	6a 01                	push   $0x1
4a375f:	51                   	push   %ecx
4a3760:	52                   	push   %edx
4a3761:	e8 5a ec ff ff       	call   0x4a23c0
4a3766:	89 46 04             	mov    %eax,0x4(%esi)
4a3769:	8b 45 fc             	mov    -0x4(%ebp),%eax
4a376c:	83 c4 18             	add    $0x18,%esp
4a376f:	8b 08                	mov    (%eax),%ecx
4a3771:	50                   	push   %eax
4a3772:	ff 51 08             	call   *0x8(%ecx)
4a3775:	8b 55 d4             	mov    -0x2c(%ebp),%edx
4a3778:	81 e2 ff ff 00 00    	and    $0xffff,%edx
4a377e:	8d 42 fe             	lea    -0x2(%edx),%eax
4a3781:	83 f8 11             	cmp    $0x11,%eax
4a3784:	0f 87 bd 00 00 00    	ja     0x4a3847
4a378a:	ff 24 85 6c 38 4a 00 	jmp    *0x4a386c(,%eax,4)
4a3791:	8b 45 dc             	mov    -0x24(%ebp),%eax
4a3794:	25 ff 00 00 00       	and    $0xff,%eax
4a3799:	89 45 08             	mov    %eax,0x8(%ebp)
4a379c:	db 45 08             	fildl  0x8(%ebp)
4a379f:	dd 5d e4             	fstpl  -0x1c(%ebp)
4a37a2:	e9 ae 00 00 00       	jmp    0x4a3855
4a37a7:	0f bf 4d dc          	movswl -0x24(%ebp),%ecx
4a37ab:	89 4d 08             	mov    %ecx,0x8(%ebp)
4a37ae:	db 45 08             	fildl  0x8(%ebp)
4a37b1:	dd 5d e4             	fstpl  -0x1c(%ebp)
4a37b4:	e9 9c 00 00 00       	jmp    0x4a3855
4a37b9:	db 45 dc             	fildl  -0x24(%ebp)
4a37bc:	dd 5d e4             	fstpl  -0x1c(%ebp)
4a37bf:	e9 91 00 00 00       	jmp    0x4a3855
4a37c4:	d9 45 dc             	flds   -0x24(%ebp)
4a37c7:	dd 5d e4             	fstpl  -0x1c(%ebp)
4a37ca:	e9 86 00 00 00       	jmp    0x4a3855
4a37cf:	8b 55 dc             	mov    -0x24(%ebp),%edx
4a37d2:	8b 45 e0             	mov    -0x20(%ebp),%eax
4a37d5:	89 55 e4             	mov    %edx,-0x1c(%ebp)
4a37d8:	89 45 e8             	mov    %eax,-0x18(%ebp)
4a37db:	eb 78                	jmp    0x4a3855
4a37dd:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4a37e0:	8b 55 e0             	mov    -0x20(%ebp),%edx
4a37e3:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4a37e6:	89 55 e8             	mov    %edx,-0x18(%ebp)
4a37e9:	eb 6a                	jmp    0x4a3855
4a37eb:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4a37ee:	8b 55 dc             	mov    -0x24(%ebp),%edx
4a37f1:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4a37f4:	50                   	push   %eax
4a37f5:	51                   	push   %ecx
4a37f6:	52                   	push   %edx
4a37f7:	ff 15 ec 31 4b 00    	call   *0x4b31ec
4a37fd:	eb 56                	jmp    0x4a3855
4a37ff:	0f be 45 dc          	movsbl -0x24(%ebp),%eax
4a3803:	89 45 08             	mov    %eax,0x8(%ebp)
4a3806:	db 45 08             	fildl  0x8(%ebp)
4a3809:	dd 5d e4             	fstpl  -0x1c(%ebp)
4a380c:	eb 47                	jmp    0x4a3855
4a380e:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4a3811:	81 e1 ff ff 00 00    	and    $0xffff,%ecx
4a3817:	89 4d 08             	mov    %ecx,0x8(%ebp)
4a381a:	db 45 08             	fildl  0x8(%ebp)
4a381d:	dd 5d e4             	fstpl  -0x1c(%ebp)
4a3820:	eb 33                	jmp    0x4a3855
4a3822:	8b 55 dc             	mov    -0x24(%ebp),%edx
4a3825:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
4a382c:	89 55 f0             	mov    %edx,-0x10(%ebp)
4a382f:	df 6d f0             	fildll -0x10(%ebp)
4a3832:	dd 5d e4             	fstpl  -0x1c(%ebp)
4a3835:	eb 1e                	jmp    0x4a3855
4a3837:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4a383a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4a383d:	50                   	push   %eax
4a383e:	51                   	push   %ecx
4a383f:	ff 15 bc 31 4b 00    	call   *0x4b31bc
4a3845:	eb 0e                	jmp    0x4a3855
4a3847:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
4a384e:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
4a3855:	8d 55 d4             	lea    -0x2c(%ebp),%edx
4a3858:	52                   	push   %edx
4a3859:	ff 15 cc 31 4b 00    	call   *0x4b31cc
4a385f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4a3862:	8b 55 e8             	mov    -0x18(%ebp),%edx
4a3865:	5e                   	pop    %esi
4a3866:	8b e5                	mov    %ebp,%esp
4a3868:	5d                   	pop    %ebp
4a3869:	c3                   	ret
4a386a:	8b ff                	mov    %edi,%edi
4a386c:	a7                   	cmpsl  %es:(%edi),%ds:(%esi)
4a386d:	37                   	aaa
4a386e:	4a                   	dec    %edx
4a386f:	00 b9 37 4a 00 c4    	add    %bh,-0x3bffb5c9(%ecx)
4a3875:	37                   	aaa
4a3876:	4a                   	dec    %edx
4a3877:	00 cf                	add    %cl,%bh
4a3879:	37                   	aaa
4a387a:	4a                   	dec    %edx
4a387b:	00 eb                	add    %ch,%bl
4a387d:	37                   	aaa
4a387e:	4a                   	dec    %edx
4a387f:	00 dd                	add    %bl,%ch
4a3881:	37                   	aaa
4a3882:	4a                   	dec    %edx
4a3883:	00 47 38             	add    %al,0x38(%edi)
4a3886:	4a                   	dec    %edx
4a3887:	00 47 38             	add    %al,0x38(%edi)
4a388a:	4a                   	dec    %edx
4a388b:	00 47 38             	add    %al,0x38(%edi)
4a388e:	4a                   	dec    %edx
4a388f:	00 37                	add    %dh,(%edi)
4a3891:	38 4a 00             	cmp    %cl,0x0(%edx)
4a3894:	47                   	inc    %edi
4a3895:	38 4a 00             	cmp    %cl,0x0(%edx)
4a3898:	47                   	inc    %edi
4a3899:	38 4a 00             	cmp    %cl,0x0(%edx)
4a389c:	47                   	inc    %edi
4a389d:	38 4a 00             	cmp    %cl,0x0(%edx)
4a38a0:	47                   	inc    %edi
4a38a1:	38 4a 00             	cmp    %cl,0x0(%edx)
4a38a4:	ff 37                	push   (%edi)
4a38a6:	4a                   	dec    %edx
4a38a7:	00 91 37 4a 00 0e    	add    %dl,0xe004a37(%ecx)
4a38ad:	38 4a 00             	cmp    %cl,0x0(%edx)
4a38b0:	22 38                	and    (%eax),%bh
4a38b2:	4a                   	dec    %edx
4a38b3:	00 90 90 90 90 90    	add    %dl,-0x6f6f6f70(%eax)
4a38b9:	90                   	nop
4a38ba:	90                   	nop
4a38bb:	90                   	nop
4a38bc:	90                   	nop
4a38bd:	90                   	nop
4a38be:	90                   	nop
4a38bf:	90                   	nop
4a38c0:	8b 44 24 08          	mov    0x8(%esp),%eax
4a38c4:	83 ec 18             	sub    $0x18,%esp
4a38c7:	8b 08                	mov    (%eax),%ecx
4a38c9:	56                   	push   %esi
4a38ca:	85 c9                	test   %ecx,%ecx
4a38cc:	8b f0                	mov    %eax,%esi
4a38ce:	75 0e                	jne    0x4a38de
4a38d0:	c7 40 04 03 40 00 80 	movl   $0x80004003,0x4(%eax)
4a38d7:	33 c0                	xor    %eax,%eax
4a38d9:	5e                   	pop    %esi
4a38da:	83 c4 18             	add    $0x18,%esp
4a38dd:	c3                   	ret
4a38de:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
4a38e5:	00
4a38e6:	8b 00                	mov    (%eax),%eax
4a38e8:	8d 54 24 04          	lea    0x4(%esp),%edx
4a38ec:	8b 08                	mov    (%eax),%ecx
4a38ee:	52                   	push   %edx
4a38ef:	68 b0 35 4b 00       	push   $0x4b35b0
4a38f4:	50                   	push   %eax
4a38f5:	ff 11                	call   *(%ecx)
4a38f7:	85 c0                	test   %eax,%eax
4a38f9:	89 46 04             	mov    %eax,0x4(%esi)
4a38fc:	74 07                	je     0x4a3905
4a38fe:	33 c0                	xor    %eax,%eax
4a3900:	5e                   	pop    %esi
4a3901:	83 c4 18             	add    $0x18,%esp
4a3904:	c3                   	ret
4a3905:	8b 4c 24 30          	mov    0x30(%esp),%ecx
4a3909:	8b 54 24 04          	mov    0x4(%esp),%edx
4a390d:	8d 44 24 08          	lea    0x8(%esp),%eax
4a3911:	50                   	push   %eax
4a3912:	51                   	push   %ecx
4a3913:	52                   	push   %edx
4a3914:	e8 57 ea ff ff       	call   0x4a2370
4a3919:	83 c4 0c             	add    $0xc,%esp
4a391c:	89 46 04             	mov    %eax,0x4(%esi)
4a391f:	85 c0                	test   %eax,%eax
4a3921:	74 07                	je     0x4a392a
4a3923:	33 c0                	xor    %eax,%eax
4a3925:	5e                   	pop    %esi
4a3926:	83 c4 18             	add    $0x18,%esp
4a3929:	c3                   	ret
4a392a:	8b 44 24 20          	mov    0x20(%esp),%eax
4a392e:	8d 48 fe             	lea    -0x2(%eax),%ecx
4a3931:	48                   	dec    %eax
4a3932:	83 f8 02             	cmp    $0x2,%eax
4a3935:	7c 16                	jl     0x4a394d
4a3937:	8d 14 40             	lea    (%eax,%eax,2),%edx
4a393a:	8d 54 94 2c          	lea    0x2c(%esp,%edx,4),%edx
4a393e:	83 3a 00             	cmpl   $0x0,(%edx)
4a3941:	75 0a                	jne    0x4a394d
4a3943:	49                   	dec    %ecx
4a3944:	48                   	dec    %eax
4a3945:	83 ea 0c             	sub    $0xc,%edx