458768:	89 45 c8             	mov    %eax,-0x38(%ebp)
45876b:	33 db                	xor    %ebx,%ebx
45876d:	83 6d c8 10          	subl   $0x10,-0x38(%ebp)
458771:	0f b6 44 1e 03       	movzbl 0x3(%esi,%ebx,1),%eax
458776:	8b d0                	mov    %eax,%edx
458778:	80 e2 7f             	and    $0x7f,%dl
45877b:	0f b6 d2             	movzbl %dl,%edx
45877e:	89 55 d4             	mov    %edx,-0x2c(%ebp)
458781:	24 80                	and    $0x80,%al
458783:	83 7d d4 0a          	cmpl   $0xa,-0x2c(%ebp)
458787:	75 18                	jne    0x4587a1
458789:	8b 45 c8             	mov    -0x38(%ebp),%eax
45878c:	c7 00 0a 00 00 00    	movl   $0xa,(%eax)
458792:	8b 45 c8             	mov    -0x38(%ebp),%eax
458795:	c7 40 08 04 00 02 80 	movl   $0x80020004,0x8(%eax)
45879c:	e9 6e 01 00 00       	jmp    0x45890f
4587a1:	83 7d d4 48          	cmpl   $0x48,-0x2c(%ebp)
4587a5:	75 74                	jne    0x45881b
4587a7:	8b 55 d0             	mov    -0x30(%ebp),%edx
4587aa:	8d 94 d5 b0 fd ff ff 	lea    -0x250(%ebp,%edx,8),%edx
4587b1:	89 55 c4             	mov    %edx,-0x3c(%ebp)
4587b4:	84 c0                	test   %al,%al
4587b6:	74 30                	je     0x4587e8
4587b8:	8b 45 cc             	mov    -0x34(%ebp),%eax
4587bb:	8b 00                	mov    (%eax),%eax
4587bd:	8b 00                	mov    (%eax),%eax
4587bf:	e8 5c ce fa ff       	call   0x405620
4587c4:	8b 55 c4             	mov    -0x3c(%ebp),%edx
4587c7:	89 02                	mov    %eax,(%edx)
4587c9:	8b 45 cc             	mov    -0x34(%ebp),%eax
4587cc:	8b 00                	mov    (%eax),%eax
4587ce:	8b 55 c4             	mov    -0x3c(%ebp),%edx
4587d1:	89 42 04             	mov    %eax,0x4(%edx)
4587d4:	8b 45 c8             	mov    -0x38(%ebp),%eax
4587d7:	c7 00 08 40 00 00    	movl   $0x4008,(%eax)
4587dd:	8b 45 c4             	mov    -0x3c(%ebp),%eax
4587e0:	8b 55 c8             	mov    -0x38(%ebp),%edx
4587e3:	89 42 08             	mov    %eax,0x8(%edx)
4587e6:	eb 2b                	jmp    0x458813
4587e8:	8b 45 cc             	mov    -0x34(%ebp),%eax
4587eb:	8b 00                	mov    (%eax),%eax
4587ed:	e8 2e ce fa ff       	call   0x405620
4587f2:	8b 55 c4             	mov    -0x3c(%ebp),%edx
4587f5:	89 02                	mov    %eax,(%edx)
4587f7:	8b 45 c4             	mov    -0x3c(%ebp),%eax
4587fa:	33 d2                	xor    %edx,%edx
4587fc:	89 50 04             	mov    %edx,0x4(%eax)
4587ff:	8b 45 c8             	mov    -0x38(%ebp),%eax
458802:	c7 00 08 00 00 00    	movl   $0x8,(%eax)
458808:	8b 45 c4             	mov    -0x3c(%ebp),%eax
45880b:	8b 00                	mov    (%eax),%eax
45880d:	8b 55 c8             	mov    -0x38(%ebp),%edx
458810:	89 42 08             	mov    %eax,0x8(%edx)
458813:	ff 45 d0             	incl   -0x30(%ebp)
458816:	e9 f0 00 00 00       	jmp    0x45890b
45881b:	84 c0                	test   %al,%al
45881d:	74 45                	je     0x458864
45881f:	83 7d d4 0c          	cmpl   $0xc,-0x2c(%ebp)
458823:	75 22                	jne    0x458847
458825:	8b 45 cc             	mov    -0x34(%ebp),%eax
458828:	8b 00                	mov    (%eax),%eax
45882a:	66 81 38 00 01       	cmpw   $0x100,(%eax)
45882f:	75 16                	jne    0x458847
458831:	8b 45 cc             	mov    -0x34(%ebp),%eax
458834:	8b 00                	mov    (%eax),%eax
458836:	8b d0                	mov    %eax,%edx
458838:	8b 45 cc             	mov    -0x34(%ebp),%eax
45883b:	8b 00                	mov    (%eax),%eax
45883d:	b9 08 00 00 00       	mov    $0x8,%ecx
458842:	e8 a1 76 fb ff       	call   0x40fee8
458847:	8b 45 d4             	mov    -0x2c(%ebp),%eax
45884a:	0d 00 40 00 00       	or     $0x4000,%eax
45884f:	8b 55 c8             	mov    -0x38(%ebp),%edx
458852:	89 02                	mov    %eax,(%edx)
458854:	8b 45 cc             	mov    -0x34(%ebp),%eax
458857:	8b 00                	mov    (%eax),%eax
458859:	8b 55 c8             	mov    -0x38(%ebp),%edx
45885c:	89 42 08             	mov    %eax,0x8(%edx)
45885f:	e9 a7 00 00 00       	jmp    0x45890b
458864:	83 7d d4 0c          	cmpl   $0xc,-0x2c(%ebp)
458868:	75 73                	jne    0x4588dd
45886a:	8b 45 cc             	mov    -0x34(%ebp),%eax
45886d:	66 81 38 00 01       	cmpw   $0x100,(%eax)
458872:	75 3e                	jne    0x4588b2
458874:	8b 45 d0             	mov    -0x30(%ebp),%eax
458877:	8d 84 c5 b0 fd ff ff 	lea    -0x250(%ebp,%eax,8),%eax
45887e:	89 45 c0             	mov    %eax,-0x40(%ebp)
458881:	8b 45 cc             	mov    -0x34(%ebp),%eax
458884:	8b 40 08             	mov    0x8(%eax),%eax
458887:	e8 94 cd fa ff       	call   0x405620
45888c:	8b 55 c0             	mov    -0x40(%ebp),%edx
45888f:	89 02                	mov    %eax,(%edx)
458891:	8b 45 c0             	mov    -0x40(%ebp),%eax
458894:	33 d2                	xor    %edx,%edx
458896:	89 50 04             	mov    %edx,0x4(%eax)
458899:	8b 45 c8             	mov    -0x38(%ebp),%eax
45889c:	c7 00 08 00 00 00    	movl   $0x8,(%eax)
4588a2:	8b 45 c0             	mov    -0x40(%ebp),%eax
4588a5:	8b 00                	mov    (%eax),%eax
4588a7:	8b 55 c8             	mov    -0x38(%ebp),%edx
4588aa:	89 42 08             	mov    %eax,0x8(%edx)
4588ad:	ff 45 d0             	incl   -0x30(%ebp)
4588b0:	eb 59                	jmp    0x45890b
4588b2:	8b 45 cc             	mov    -0x34(%ebp),%eax
4588b5:	8b 10                	mov    (%eax),%edx
4588b7:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4588ba:	89 11                	mov    %edx,(%ecx)
4588bc:	8b 50 04             	mov    0x4(%eax),%edx
4588bf:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4588c2:	89 51 04             	mov    %edx,0x4(%ecx)
4588c5:	8b 50 08             	mov    0x8(%eax),%edx
4588c8:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4588cb:	89 51 08             	mov    %edx,0x8(%ecx)
4588ce:	8b 40 0c             	mov    0xc(%eax),%eax
4588d1:	8b 55 c8             	mov    -0x38(%ebp),%edx
4588d4:	89 42 0c             	mov    %eax,0xc(%edx)
4588d7:	83 45 cc 0c          	addl   $0xc,-0x34(%ebp)
4588db:	eb 2e                	jmp    0x45890b
4588dd:	8b 45 c8             	mov    -0x38(%ebp),%eax
4588e0:	8b 55 d4             	mov    -0x2c(%ebp),%edx
4588e3:	89 10                	mov    %edx,(%eax)
4588e5:	8b 45 cc             	mov    -0x34(%ebp),%eax
4588e8:	8b 00                	mov    (%eax),%eax
4588ea:	8b 55 c8             	mov    -0x38(%ebp),%edx
4588ed:	89 42 08             	mov    %eax,0x8(%edx)
4588f0:	83 7d d4 05          	cmpl   $0x5,-0x2c(%ebp)
4588f4:	7c 15                	jl     0x45890b
4588f6:	83 7d d4 07          	cmpl   $0x7,-0x2c(%ebp)
4588fa:	7f 0f                	jg     0x45890b
4588fc:	83 45 cc 04          	addl   $0x4,-0x34(%ebp)
458900:	8b 45 cc             	mov    -0x34(%ebp),%eax
458903:	8b 00                	mov    (%eax),%eax
458905:	8b 55 c8             	mov    -0x38(%ebp),%edx
458908:	89 42 0c             	mov    %eax,0xc(%edx)
45890b:	83 45 cc 04          	addl   $0x4,-0x34(%ebp)
45890f:	43                   	inc    %ebx
458910:	3b fb                	cmp    %ebx,%edi
458912:	0f 85 55 fe ff ff    	jne    0x45876d
458918:	8d 85 b0 f9 ff ff    	lea    -0x650(%ebp),%eax
45891e:	89 45 b0             	mov    %eax,-0x50(%ebp)
458921:	8b 45 d8             	mov    -0x28(%ebp),%eax
458924:	83 c0 04             	add    $0x4,%eax
458927:	89 45 b4             	mov    %eax,-0x4c(%ebp)
45892a:	89 7d b8             	mov    %edi,-0x48(%ebp)
45892d:	0f b6 46 02          	movzbl 0x2(%esi),%eax
458931:	89 45 bc             	mov    %eax,-0x44(%ebp)
458934:	8b 45 d8             	mov    -0x28(%ebp),%eax
458937:	8b 10                	mov    (%eax),%edx
458939:	0f b6 06             	movzbl (%esi),%eax
45893c:	83 f8 04             	cmp    $0x4,%eax
45893f:	75 28                	jne    0x458969
458941:	8b 8d b0 f9 ff ff    	mov    -0x650(%ebp),%ecx
458947:	81 e1 ff 0f 00 00    	and    $0xfff,%ecx
45894d:	83 f9 09             	cmp    $0x9,%ecx
458950:	75 05                	jne    0x458957
458952:	b8 08 00 00 00       	mov    $0x8,%eax
458957:	8b 4d d8             	mov    -0x28(%ebp),%ecx
45895a:	c7 01 fd ff ff ff    	movl   $0xfffffffd,(%ecx)
458960:	83 6d b4 04          	subl   $0x4,-0x4c(%ebp)
458964:	ff 45 bc             	incl   -0x44(%ebp)
458967:	eb 14                	jmp    0x45897d
458969:	83 f8 01             	cmp    $0x1,%eax
45896c:	75 0f                	jne    0x45897d
45896e:	85 ff                	test   %edi,%edi
458970:	75 0b                	jne    0x45897d
458972:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
458976:	74 05                	je     0x45897d
458978:	b8 03 00 00 00       	mov    $0x3,%eax
45897d:	6a 00                	push   $0x0
45897f:	8d 4d e0             	lea    -0x20(%ebp),%ecx
458982:	51                   	push   %ecx
458983:	8b 4d 08             	mov    0x8(%ebp),%ecx
458986:	51                   	push   %ecx
458987:	8d 4d b0             	lea    -0x50(%ebp),%ecx
45898a:	51                   	push   %ecx
45898b:	50                   	push   %eax
45898c:	6a 00                	push   $0x0
45898e:	a1 8c d5 46 00       	mov    0x46d58c,%eax
458993:	50                   	push   %eax
458994:	52                   	push   %edx
458995:	8b 45 dc             	mov    -0x24(%ebp),%eax
458998:	50                   	push   %eax
458999:	8b 00                	mov    (%eax),%eax
45899b:	ff 50 18             	call   *0x18(%eax)
45899e:	85 c0                	test   %eax,%eax
4589a0:	74 08                	je     0x4589aa
4589a2:	8d 55 e0             	lea    -0x20(%ebp),%edx
4589a5:	e8 1a 03 00 00       	call   0x458cc4
4589aa:	8b 5d d0             	mov    -0x30(%ebp),%ebx
4589ad:	85 db                	test   %ebx,%ebx
4589af:	74 1c                	je     0x4589cd
4589b1:	4b                   	dec    %ebx
4589b2:	8d b4 dd b0 fd ff ff 	lea    -0x250(%ebp,%ebx,8),%esi
4589b9:	8b 7e 04             	mov    0x4(%esi),%edi
4589bc:	85 ff                	test   %edi,%edi
4589be:	74 09                	je     0x4589c9
4589c0:	8b d7                	mov    %edi,%edx
4589c2:	8b 06                	mov    (%esi),%eax
4589c4:	e8 33 cc fa ff       	call   0x4055fc
4589c9:	85 db                	test   %ebx,%ebx
4589cb:	75 e4                	jne    0x4589b1
4589cd:	33 c0                	xor    %eax,%eax
4589cf:	5a                   	pop    %edx
4589d0:	59                   	pop    %ecx
4589d1:	59                   	pop    %ecx
4589d2:	64 89 10             	mov    %edx,%fs:(%eax)
4589d5:	68 fb 89 45 00       	push   $0x4589fb
4589da:	8b 5d d0             	mov    -0x30(%ebp),%ebx
4589dd:	85 db                	test   %ebx,%ebx
4589df:	74 12                	je     0x4589f3
4589e1:	4b                   	dec    %ebx
4589e2:	8b 84 dd b0 fd ff ff 	mov    -0x250(%ebp,%ebx,8),%eax
4589e9:	50                   	push   %eax
4589ea:	e8 15 ed fa ff       	call   0x407704
4589ef:	85 db                	test   %ebx,%ebx
4589f1:	75 ee                	jne    0x4589e1
4589f3:	c3                   	ret
4589f4:	e9 8f b6 fa ff       	jmp    0x404088
4589f9:	eb df                	jmp    0x4589da
4589fb:	33 c0                	xor    %eax,%eax
4589fd:	5a                   	pop    %edx
4589fe:	59                   	pop    %ecx
4589ff:	59                   	pop    %ecx
458a00:	64 89 10             	mov    %edx,%fs:(%eax)
458a03:	68 1e 8a 45 00       	push   $0x458a1e
458a08:	8d 45 e0             	lea    -0x20(%ebp),%eax
458a0b:	8b 15 cc 74 40 00    	mov    0x4074cc,%edx
458a11:	e8 4a c8 fa ff       	call   0x405260
458a16:	c3                   	ret
458a17:	e9 6c b6 fa ff       	jmp    0x404088
458a1c:	eb ea                	jmp    0x458a08
458a1e:	5f                   	pop    %edi
458a1f:	5e                   	pop    %esi
458a20:	5b                   	pop    %ebx
458a21:	8b e5                	mov    %ebp,%esp
458a23:	5d                   	pop    %ebp
458a24:	c2 08 00             	ret    $0x8
458a27:	90                   	nop
458a28:	55                   	push   %ebp
458a29:	8b ec                	mov    %esp,%ebp
458a2b:	83 c4 f8             	add    $0xfffffff8,%esp
458a2e:	8b 45 08             	mov    0x8(%ebp),%eax
458a31:	8b 40 fc             	mov    -0x4(%eax),%eax
458a34:	89 45 f8             	mov    %eax,-0x8(%ebp)
458a37:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
458a3b:	8d 45 f8             	lea    -0x8(%ebp),%eax
458a3e:	50                   	push   %eax
458a3f:	6a 00                	push   $0x0
458a41:	8b 0d e4 d6 46 00    	mov    0x46d6e4,%ecx
458a47:	b2 01                	mov    $0x1,%dl
458a49:	a1 24 80 45 00       	mov    0x458024,%eax
458a4e:	e8 e1 38 fb ff       	call   0x40c334
458a53:	e8 10 b7 fa ff       	call   0x404168
458a58:	59                   	pop    %ecx
458a59:	59                   	pop    %ecx
458a5a:	5d                   	pop    %ebp
458a5b:	c3                   	ret
458a5c:	55                   	push   %ebp
458a5d:	8b ec                	mov    %esp,%ebp
458a5f:	83 c4 e4             	add    $0xffffffe4,%esp
458a62:	53                   	push   %ebx
458a63:	56                   	push   %esi
458a64:	57                   	push   %edi
458a65:	89 4d f4             	mov    %ecx,-0xc(%ebp)
458a68:	89 55 fc             	mov    %edx,-0x4(%ebp)
458a6b:	89 45 e4             	mov    %eax,-0x1c(%ebp)
458a6e:	8b 5d fc             	mov    -0x4(%ebp),%ebx
458a71:	33 ff                	xor    %edi,%edi
458a73:	89 65 f8             	mov    %esp,-0x8(%ebp)
458a76:	8b 45 f4             	mov    -0xc(%ebp),%eax
458a79:	40                   	inc    %eax
458a7a:	c1 e0 02             	shl    $0x2,%eax
458a7d:	29 c4                	sub    %eax,%esp
458a7f:	8d 45 f0             	lea    -0x10(%ebp),%eax
458a82:	89 20                	mov    %esp,(%eax)
458a84:	8b c3                	mov    %ebx,%eax
458a86:	e8 3d 07 fb ff       	call   0x4091c8
458a8b:	8b f0                	mov    %eax,%esi
458a8d:	6a 00                	push   $0x0
458a8f:	6a 00                	push   $0x0
458a91:	56                   	push   %esi
458a92:	53                   	push   %ebx
458a93:	6a 00                	push   $0x0
458a95:	6a 00                	push   $0x0
458a97:	e8 dc df fa ff       	call   0x406a78
458a9c:	40                   	inc    %eax
458a9d:	89 45 ec             	mov    %eax,-0x14(%ebp)
458aa0:	8b 45 ec             	mov    -0x14(%ebp),%eax
458aa3:	01 c0                	add    %eax,%eax
458aa5:	83 c0 03             	add    $0x3,%eax
458aa8:	83 e0 fc             	and    $0xfffffffc,%eax
458aab:	29 c4                	sub    %eax,%esp
458aad:	8d 45 e8             	lea    -0x18(%ebp),%eax
458ab0:	89 20                	mov    %esp,(%eax)
458ab2:	85 ff                	test   %edi,%edi
458ab4:	75 0a                	jne    0x458ac0
458ab6:	8b 45 f0             	mov    -0x10(%ebp),%eax
458ab9:	8b 55 e8             	mov    -0x18(%ebp),%edx
458abc:	89 10                	mov    %edx,(%eax)
458abe:	eb 0e                	jmp    0x458ace
458ac0:	8b 45 f4             	mov    -0xc(%ebp),%eax
458ac3:	2b c7                	sub    %edi,%eax
458ac5:	8b 55 f0             	mov    -0x10(%ebp),%edx
458ac8:	8b 4d e8             	mov    -0x18(%ebp),%ecx
458acb:	89 0c 82             	mov    %ecx,(%edx,%eax,4)
458ace:	8b 45 ec             	mov    -0x14(%ebp),%eax
458ad1:	50                   	push   %eax
458ad2:	8b 45 e8             	mov    -0x18(%ebp),%eax
458ad5:	50                   	push   %eax
458ad6:	56                   	push   %esi
458ad7:	53                   	push   %ebx
458ad8:	6a 00                	push   $0x0
458ada:	6a 00                	push   $0x0
458adc:	e8 97 df fa ff       	call   0x406a78
458ae1:	8b 45 e8             	mov    -0x18(%ebp),%eax
458ae4:	8b 55 ec             	mov    -0x14(%ebp),%edx
458ae7:	66 c7 44 50 fe 00 00 	movw   $0x0,-0x2(%eax,%edx,2)
458aee:	46                   	inc    %esi
458aef:	03 de                	add    %esi,%ebx
458af1:	47                   	inc    %edi
458af2:	3b 7d f4             	cmp    -0xc(%ebp),%edi
458af5:	75 8d                	jne    0x458a84
458af7:	8b 45 08             	mov    0x8(%ebp),%eax
458afa:	50                   	push   %eax
458afb:	e8 e0 de fa ff       	call   0x4069e0
458b00:	50                   	push   %eax
458b01:	8b 45 f4             	mov    -0xc(%ebp),%eax
458b04:	50                   	push   %eax
458b05:	8b 45 f0             	mov    -0x10(%ebp),%eax
458b08:	50                   	push   %eax
458b09:	a1 8c d5 46 00       	mov    0x46d58c,%eax
458b0e:	50                   	push   %eax
458b0f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
458b12:	50                   	push   %eax
458b13:	8b 00                	mov    (%eax),%eax
458b15:	ff 50 14             	call   *0x14(%eax)
458b18:	3d 06 00 02 80       	cmp    $0x80020006,%eax
458b1d:	75 09                	jne    0x458b28
458b1f:	55                   	push   %ebp
458b20:	e8 03 ff ff ff       	call   0x458a28
458b25:	59                   	pop    %ecx
458b26:	eb 05                	jmp    0x458b2d
458b28:	e8 3b f8 ff ff       	call   0x458368
458b2d:	8b 65 f8             	mov    -0x8(%ebp),%esp
458b30:	5f                   	pop    %edi
458b31:	5e                   	pop    %esi
458b32:	5b                   	pop    %ebx
458b33:	8b e5                	mov    %ebp,%esp
458b35:	5d                   	pop    %ebp
458b36:	c2 04 00             	ret    $0x4