46ba3b:	75 e4                	jne    0x46ba21
46ba3d:	33 c0                	xor    %eax,%eax
46ba3f:	5a                   	pop    %edx
46ba40:	59                   	pop    %ecx
46ba41:	59                   	pop    %ecx
46ba42:	64 89 10             	mov    %edx,%fs:(%eax)
46ba45:	68 6b ba 46 00       	push   $0x46ba6b
46ba4a:	8b 5d d0             	mov    -0x30(%ebp),%ebx
46ba4d:	85 db                	test   %ebx,%ebx
46ba4f:	74 12                	je     0x46ba63
46ba51:	4b                   	dec    %ebx
46ba52:	8b 84 dd b0 fd ff ff 	mov    -0x250(%ebp,%ebx,8),%eax
46ba59:	50                   	push   %eax
46ba5a:	e8 d1 bd f9 ff       	call   0x407830
46ba5f:	85 db                	test   %ebx,%ebx
46ba61:	75 ee                	jne    0x46ba51
46ba63:	c3                   	ret
46ba64:	e9 47 86 f9 ff       	jmp    0x4040b0
46ba69:	eb df                	jmp    0x46ba4a
46ba6b:	33 c0                	xor    %eax,%eax
46ba6d:	5a                   	pop    %edx
46ba6e:	59                   	pop    %ecx
46ba6f:	59                   	pop    %ecx
46ba70:	64 89 10             	mov    %edx,%fs:(%eax)
46ba73:	68 8e ba 46 00       	push   $0x46ba8e
46ba78:	8d 45 e0             	lea    -0x20(%ebp),%eax
46ba7b:	8b 15 e0 75 40 00    	mov    0x4075e0,%edx
46ba81:	e8 2e 98 f9 ff       	call   0x4052b4
46ba86:	c3                   	ret
46ba87:	e9 24 86 f9 ff       	jmp    0x4040b0
46ba8c:	eb ea                	jmp    0x46ba78
46ba8e:	5f                   	pop    %edi
46ba8f:	5e                   	pop    %esi
46ba90:	5b                   	pop    %ebx
46ba91:	8b e5                	mov    %ebp,%esp
46ba93:	5d                   	pop    %ebp
46ba94:	c2 08 00             	ret    $0x8
46ba97:	90                   	nop
46ba98:	55                   	push   %ebp
46ba99:	8b ec                	mov    %esp,%ebp
46ba9b:	83 c4 f8             	add    $0xfffffff8,%esp
46ba9e:	8b 45 08             	mov    0x8(%ebp),%eax
46baa1:	8b 40 fc             	mov    -0x4(%eax),%eax
46baa4:	89 45 f8             	mov    %eax,-0x8(%ebp)
46baa7:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
46baab:	8d 45 f8             	lea    -0x8(%ebp),%eax
46baae:	50                   	push   %eax
46baaf:	6a 00                	push   $0x0
46bab1:	8b 0d 18 77 4a 00    	mov    0x4a7718,%ecx
46bab7:	b2 01                	mov    $0x1,%dl
46bab9:	a1 68 ad 46 00       	mov    0x46ad68,%eax
46babe:	e8 45 0a fa ff       	call   0x40c508
46bac3:	e8 c8 86 f9 ff       	call   0x404190
46bac8:	59                   	pop    %ecx
46bac9:	59                   	pop    %ecx
46baca:	5d                   	pop    %ebp
46bacb:	c3                   	ret
46bacc:	55                   	push   %ebp
46bacd:	8b ec                	mov    %esp,%ebp
46bacf:	83 c4 e4             	add    $0xffffffe4,%esp
46bad2:	53                   	push   %ebx
46bad3:	56                   	push   %esi
46bad4:	57                   	push   %edi
46bad5:	89 4d f4             	mov    %ecx,-0xc(%ebp)
46bad8:	89 55 fc             	mov    %edx,-0x4(%ebp)
46badb:	89 45 e4             	mov    %eax,-0x1c(%ebp)
46bade:	8b 5d fc             	mov    -0x4(%ebp),%ebx
46bae1:	33 ff                	xor    %edi,%edi
46bae3:	89 65 f8             	mov    %esp,-0x8(%ebp)
46bae6:	8b 45 f4             	mov    -0xc(%ebp),%eax
46bae9:	40                   	inc    %eax
46baea:	c1 e0 02             	shl    $0x2,%eax
46baed:	29 c4                	sub    %eax,%esp
46baef:	8d 45 f0             	lea    -0x10(%ebp),%eax
46baf2:	89 20                	mov    %esp,(%eax)
46baf4:	8b c3                	mov    %ebx,%eax
46baf6:	e8 51 d8 f9 ff       	call   0x40934c
46bafb:	8b f0                	mov    %eax,%esi
46bafd:	6a 00                	push   $0x0
46baff:	6a 00                	push   $0x0
46bb01:	56                   	push   %esi
46bb02:	53                   	push   %ebx
46bb03:	6a 00                	push   $0x0
46bb05:	6a 00                	push   $0x0
46bb07:	e8 e4 af f9 ff       	call   0x406af0
46bb0c:	40                   	inc    %eax
46bb0d:	89 45 ec             	mov    %eax,-0x14(%ebp)
46bb10:	8b 45 ec             	mov    -0x14(%ebp),%eax
46bb13:	01 c0                	add    %eax,%eax
46bb15:	83 c0 03             	add    $0x3,%eax
46bb18:	83 e0 fc             	and    $0xfffffffc,%eax
46bb1b:	29 c4                	sub    %eax,%esp
46bb1d:	8d 45 e8             	lea    -0x18(%ebp),%eax
46bb20:	89 20                	mov    %esp,(%eax)
46bb22:	85 ff                	test   %edi,%edi
46bb24:	75 0a                	jne    0x46bb30
46bb26:	8b 45 f0             	mov    -0x10(%ebp),%eax
46bb29:	8b 55 e8             	mov    -0x18(%ebp),%edx
46bb2c:	89 10                	mov    %edx,(%eax)
46bb2e:	eb 0e                	jmp    0x46bb3e
46bb30:	8b 45 f4             	mov    -0xc(%ebp),%eax
46bb33:	2b c7                	sub    %edi,%eax
46bb35:	8b 55 f0             	mov    -0x10(%ebp),%edx
46bb38:	8b 4d e8             	mov    -0x18(%ebp),%ecx
46bb3b:	89 0c 82             	mov    %ecx,(%edx,%eax,4)
46bb3e:	8b 45 ec             	mov    -0x14(%ebp),%eax
46bb41:	50                   	push   %eax
46bb42:	8b 45 e8             	mov    -0x18(%ebp),%eax
46bb45:	50                   	push   %eax
46bb46:	56                   	push   %esi
46bb47:	53                   	push   %ebx
46bb48:	6a 00                	push   $0x0
46bb4a:	6a 00                	push   $0x0
46bb4c:	e8 9f af f9 ff       	call   0x406af0
46bb51:	8b 45 e8             	mov    -0x18(%ebp),%eax
46bb54:	8b 55 ec             	mov    -0x14(%ebp),%edx
46bb57:	66 c7 44 50 fe 00 00 	movw   $0x0,-0x2(%eax,%edx,2)
46bb5e:	46                   	inc    %esi
46bb5f:	03 de                	add    %esi,%ebx
46bb61:	47                   	inc    %edi
46bb62:	3b 7d f4             	cmp    -0xc(%ebp),%edi
46bb65:	75 8d                	jne    0x46baf4
46bb67:	8b 45 08             	mov    0x8(%ebp),%eax
46bb6a:	50                   	push   %eax
46bb6b:	e8 e8 ae f9 ff       	call   0x406a58
46bb70:	50                   	push   %eax
46bb71:	8b 45 f4             	mov    -0xc(%ebp),%eax
46bb74:	50                   	push   %eax
46bb75:	8b 45 f0             	mov    -0x10(%ebp),%eax
46bb78:	50                   	push   %eax
46bb79:	a1 a8 75 4a 00       	mov    0x4a75a8,%eax
46bb7e:	50                   	push   %eax
46bb7f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
46bb82:	50                   	push   %eax
46bb83:	8b 00                	mov    (%eax),%eax
46bb85:	ff 50 14             	call   *0x14(%eax)
46bb88:	3d 06 00 02 80       	cmp    $0x80020006,%eax
46bb8d:	75 09                	jne    0x46bb98
46bb8f:	55                   	push   %ebp
46bb90:	e8 03 ff ff ff       	call   0x46ba98
46bb95:	59                   	pop    %ecx
46bb96:	eb 05                	jmp    0x46bb9d
46bb98:	e8 0f f5 ff ff       	call   0x46b0ac
46bb9d:	8b 65 f8             	mov    -0x8(%ebp),%esp
46bba0:	5f                   	pop    %edi
46bba1:	5e                   	pop    %esi
46bba2:	5b                   	pop    %ebx
46bba3:	8b e5                	mov    %ebp,%esp
46bba5:	5d                   	pop    %ebp
46bba6:	c2 04 00             	ret    $0x4
46bba9:	8d 40 00             	lea    0x0(%eax),%eax
46bbac:	8b 0d 88 77 4a 00    	mov    0x4a7788,%ecx
46bbb2:	b2 01                	mov    $0x1,%dl
46bbb4:	a1 68 ad 46 00       	mov    0x46ad68,%eax
46bbb9:	e8 0e 09 fa ff       	call   0x40c4cc
46bbbe:	e8 cd 85 f9 ff       	call   0x404190
46bbc3:	c3                   	ret
46bbc4:	55                   	push   %ebp
46bbc5:	8b ec                	mov    %esp,%ebp
46bbc7:	81 c4 fc fe ff ff    	add    $0xfffffefc,%esp
46bbcd:	53                   	push   %ebx
46bbce:	56                   	push   %esi
46bbcf:	8b 5d 10             	mov    0x10(%ebp),%ebx
46bbd2:	8b 45 0c             	mov    0xc(%ebp),%eax
46bbd5:	8b 75 08             	mov    0x8(%ebp),%esi
46bbd8:	80 7b 01 40          	cmpb   $0x40,0x1(%ebx)
46bbdc:	76 17                	jbe    0x46bbf5
46bbde:	8b 0d 30 75 4a 00    	mov    0x4a7530,%ecx
46bbe4:	b2 01                	mov    $0x1,%dl
46bbe6:	a1 68 ad 46 00       	mov    0x46ad68,%eax
46bbeb:	e8 dc 08 fa ff       	call   0x40c4cc
46bbf0:	e8 9b 85 f9 ff       	call   0x404190
46bbf5:	0f b7 10             	movzwl (%eax),%edx
46bbf8:	66 83 fa 09          	cmp    $0x9,%dx
46bbfc:	75 08                	jne    0x46bc06
46bbfe:	8b 40 08             	mov    0x8(%eax),%eax
46bc01:	89 45 fc             	mov    %eax,-0x4(%ebp)
46bc04:	eb 16                	jmp    0x46bc1c
46bc06:	66 81 fa 09 40       	cmp    $0x4009,%dx
46bc0b:	75 0a                	jne    0x46bc17
46bc0d:	8b 40 08             	mov    0x8(%eax),%eax
46bc10:	8b 00                	mov    (%eax),%eax
46bc12:	89 45 fc             	mov    %eax,-0x4(%ebp)
46bc15:	eb 05                	jmp    0x46bc1c
46bc17:	e8 90 ff ff ff       	call   0x46bbac
46bc1c:	8d 85 fc fe ff ff    	lea    -0x104(%ebp),%eax
46bc22:	50                   	push   %eax
46bc23:	0f b6 4b 02          	movzbl 0x2(%ebx),%ecx
46bc27:	41                   	inc    %ecx
46bc28:	0f b6 43 01          	movzbl 0x1(%ebx),%eax
46bc2c:	8d 54 03 03          	lea    0x3(%ebx,%eax,1),%edx
46bc30:	8b 45 fc             	mov    -0x4(%ebp),%eax
46bc33:	e8 94 fe ff ff       	call   0x46bacc
46bc38:	85 f6                	test   %esi,%esi
46bc3a:	74 07                	je     0x46bc43
46bc3c:	8b c6                	mov    %esi,%eax
46bc3e:	e8 8d 40 fa ff       	call   0x40fcd0
46bc43:	8b 45 14             	mov    0x14(%ebp),%eax
46bc46:	50                   	push   %eax
46bc47:	56                   	push   %esi
46bc48:	8d 8d fc fe ff ff    	lea    -0x104(%ebp),%ecx
46bc4e:	8b d3                	mov    %ebx,%edx
46bc50:	8b 45 fc             	mov    -0x4(%ebp),%eax
46bc53:	e8 04 fb ff ff       	call   0x46b75c
46bc58:	5e                   	pop    %esi
46bc59:	5b                   	pop    %ebx
46bc5a:	8b e5                	mov    %ebp,%esp
46bc5c:	5d                   	pop    %ebp
46bc5d:	c3                   	ret
46bc5e:	8b c0                	mov    %eax,%eax
46bc60:	55                   	push   %ebp
46bc61:	8b ec                	mov    %esp,%ebp
46bc63:	6a 00                	push   $0x0
46bc65:	6a 00                	push   $0x0
46bc67:	6a 00                	push   $0x0
46bc69:	6a 00                	push   $0x0
46bc6b:	53                   	push   %ebx
46bc6c:	56                   	push   %esi
46bc6d:	89 4d fc             	mov    %ecx,-0x4(%ebp)
46bc70:	8b da                	mov    %edx,%ebx
46bc72:	33 d2                	xor    %edx,%edx
46bc74:	55                   	push   %ebp
46bc75:	68 25 bd 46 00       	push   $0x46bd25
46bc7a:	64 ff 32             	push   %fs:(%edx)
46bc7d:	64 89 22             	mov    %esp,%fs:(%edx)
46bc80:	3d 09 00 02 80       	cmp    $0x80020009,%eax
46bc85:	75 57                	jne    0x46bcde
46bc87:	8b 43 1c             	mov    0x1c(%ebx),%eax
46bc8a:	50                   	push   %eax
46bc8b:	8d 45 f8             	lea    -0x8(%ebp),%eax
46bc8e:	8b 53 04             	mov    0x4(%ebx),%edx
46bc91:	e8 3a 8d f9 ff       	call   0x4049d0
46bc96:	8b 45 f8             	mov    -0x8(%ebp),%eax
46bc99:	50                   	push   %eax
46bc9a:	8d 45 f4             	lea    -0xc(%ebp),%eax
46bc9d:	8b 53 0c             	mov    0xc(%ebx),%edx
46bca0:	e8 2b 8d f9 ff       	call   0x4049d0
46bca5:	8b 45 f4             	mov    -0xc(%ebp),%eax
46bca8:	50                   	push   %eax
46bca9:	8b 43 10             	mov    0x10(%ebx),%eax
46bcac:	50                   	push   %eax
46bcad:	8d 45 f0             	lea    -0x10(%ebp),%eax
46bcb0:	8b 53 08             	mov    0x8(%ebx),%edx
46bcb3:	e8 18 8d f9 ff       	call   0x4049d0
46bcb8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
46bcbb:	b2 01                	mov    $0x1,%dl
46bcbd:	a1 1c ae 46 00       	mov    0x46ae1c,%eax
46bcc2:	e8 31 f3 ff ff       	call   0x46aff8
46bcc7:	8b f0                	mov    %eax,%esi
46bcc9:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
46bccd:	74 22                	je     0x46bcf1
46bccf:	8b c3                	mov    %ebx,%eax
46bcd1:	8b 15 e0 75 40 00    	mov    0x4075e0,%edx
46bcd7:	e8 10 97 f9 ff       	call   0x4053ec
46bcdc:	eb 13                	jmp    0x46bcf1
46bcde:	50                   	push   %eax
46bcdf:	6a 00                	push   $0x0
46bce1:	33 c9                	xor    %ecx,%ecx
46bce3:	b2 01                	mov    $0x1,%dl
46bce5:	a1 c0 ad 46 00       	mov    0x46adc0,%eax
46bcea:	e8 35 f2 ff ff       	call   0x46af24
46bcef:	8b f0                	mov    %eax,%esi
46bcf1:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
46bcf5:	74 0c                	je     0x46bd03
46bcf7:	ff 75 fc             	push   -0x4(%ebp)
46bcfa:	8b c6                	mov    %esi,%eax
46bcfc:	e9 8f 84 f9 ff       	jmp    0x404190
46bd01:	eb 07                	jmp    0x46bd0a
46bd03:	8b c6                	mov    %esi,%eax
46bd05:	e8 86 84 f9 ff       	call   0x404190
46bd0a:	33 c0                	xor    %eax,%eax
46bd0c:	5a                   	pop    %edx
46bd0d:	59                   	pop    %ecx
46bd0e:	59                   	pop    %ecx
46bd0f:	64 89 10             	mov    %edx,%fs:(%eax)
46bd12:	68 2c bd 46 00       	push   $0x46bd2c
46bd17:	8d 45 f0             	lea    -0x10(%ebp),%eax
46bd1a:	ba 03 00 00 00       	mov    $0x3,%edx
46bd1f:	e8 48 8a f9 ff       	call   0x40476c
46bd24:	c3                   	ret
46bd25:	e9 86 83 f9 ff       	jmp    0x4040b0
46bd2a:	eb eb                	jmp    0x46bd17
46bd2c:	5e                   	pop    %esi
46bd2d:	5b                   	pop    %ebx
46bd2e:	8b e5                	mov    %ebp,%esp
46bd30:	5d                   	pop    %ebp
46bd31:	c2 04 00             	ret    $0x4
46bd34:	6a 00                	push   $0x0
46bd36:	33 c9                	xor    %ecx,%ecx
46bd38:	e8 23 ff ff ff       	call   0x46bc60
46bd3d:	c3                   	ret
46bd3e:	8b c0                	mov    %eax,%eax
46bd40:	33 c9                	xor    %ecx,%ecx
46bd42:	ba 20 00 00 00       	mov    $0x20,%edx
46bd47:	e8 0c 75 f9 ff       	call   0x403258
46bd4c:	c3                   	ret
46bd4d:	8d 40 00             	lea    0x0(%eax),%eax
46bd50:	55                   	push   %ebp
46bd51:	8b ec                	mov    %esp,%ebp
46bd53:	83 c4 d0             	add    $0xffffffd0,%esp
46bd56:	53                   	push   %ebx
46bd57:	56                   	push   %esi
46bd58:	57                   	push   %edi
46bd59:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46bd5c:	31 d2                	xor    %edx,%edx
46bd5e:	89 e7                	mov    %esp,%edi
46bd60:	0f b6 4b 01          	movzbl 0x1(%ebx),%ecx
46bd64:	89 4d f8             	mov    %ecx,-0x8(%ebp)
46bd67:	85 c9                	test   %ecx,%ecx
46bd69:	74 4b                	je     0x46bdb6
46bd6b:	83 c3 03             	add    $0x3,%ebx
46bd6e:	8b 75 18             	mov    0x18(%ebp),%esi
46bd71:	0f b6 03             	movzbl (%ebx),%eax
46bd74:	a8 80                	test   $0x80,%al
46bd76:	75 28                	jne    0x46bda0
46bd78:	3c 0c                	cmp    $0xc,%al
46bd7a:	74 14                	je     0x46bd90
46bd7c:	3c 05                	cmp    $0x5,%al
46bd7e:	72 27                	jb     0x46bda7
46bd80:	3c 07                	cmp    $0x7,%al
46bd82:	77 23                	ja     0x46bda7
46bd84:	ff 76 04             	push   0x4(%esi)
46bd87:	ff 36                	push   (%esi)
46bd89:	52                   	push   %edx
46bd8a:	50                   	push   %eax
46bd8b:	83 c6 08             	add    $0x8,%esi
46bd8e:	eb 1f                	jmp    0x46bdaf
46bd90:	ff 76 0c             	push   0xc(%esi)
46bd93:	ff 76 08             	push   0x8(%esi)
46bd96:	ff 76 04             	push   0x4(%esi)
46bd99:	ff 36                	push   (%esi)
46bd9b:	83 c6 10             	add    $0x10,%esi
46bd9e:	eb 0f                	jmp    0x46bdaf
46bda0:	24 7f                	and    $0x7f,%al
46bda2:	0d 00 40 00 00       	or     $0x4000,%eax
46bda7:	52                   	push   %edx
46bda8:	ff 36                	push   (%esi)
46bdaa:	52                   	push   %edx
46bdab:	50                   	push   %eax
46bdac:	83 c6 04             	add    $0x4,%esi
46bdaf:	43                   	inc    %ebx
46bdb0:	49                   	dec    %ecx
46bdb1:	75 be                	jne    0x46bd71
46bdb3:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46bdb6:	89 65 f0             	mov    %esp,-0x10(%ebp)
46bdb9:	0f b6 43 02          	movzbl 0x2(%ebx),%eax
46bdbd:	89 45 fc             	mov    %eax,-0x4(%ebp)
46bdc0:	85 c0                	test   %eax,%eax
46bdc2:	74 0a                	je     0x46bdce
46bdc4:	8b 75 14             	mov    0x14(%ebp),%esi