46fc52:	5b                   	pop    %ebx
46fc53:	33 c0                	xor    %eax,%eax
46fc55:	5a                   	pop    %edx
46fc56:	59                   	pop    %ecx
46fc57:	59                   	pop    %ecx
46fc58:	64 89 10             	mov    %edx,%fs:(%eax)
46fc5b:	eb 19                	jmp    0x46fc76
46fc5d:	e9 9a 41 f9 ff       	jmp    0x403dfc
46fc62:	a1 ac 76 4a 00       	mov    0x4a76ac,%eax
46fc67:	8b 00                	mov    (%eax),%eax
46fc69:	8b 55 f8             	mov    -0x8(%ebp),%edx
46fc6c:	e8 c3 6d ff ff       	call   0x466a34
46fc71:	e8 96 45 f9 ff       	call   0x40420c
46fc76:	5f                   	pop    %edi
46fc77:	5e                   	pop    %esi
46fc78:	5b                   	pop    %ebx
46fc79:	8b e5                	mov    %ebp,%esp
46fc7b:	5d                   	pop    %ebp
46fc7c:	c3                   	ret
46fc7d:	8d 40 00             	lea    0x0(%eax),%eax
46fc80:	c3                   	ret
46fc81:	8d 40 00             	lea    0x0(%eax),%eax
46fc84:	53                   	push   %ebx
46fc85:	56                   	push   %esi
46fc86:	51                   	push   %ecx
46fc87:	88 14 24             	mov    %dl,(%esp)
46fc8a:	8b f0                	mov    %eax,%esi
46fc8c:	33 db                	xor    %ebx,%ebx
46fc8e:	8b c6                	mov    %esi,%eax
46fc90:	e8 b7 20 fe ff       	call   0x451d4c
46fc95:	22 04 24             	and    (%esp),%al
46fc98:	74 22                	je     0x46fcbc
46fc9a:	6a 00                	push   $0x0
46fc9c:	6a 00                	push   $0x0
46fc9e:	68 0f 03 00 00       	push   $0x30f
46fca3:	8b c6                	mov    %esi,%eax
46fca5:	e8 02 1d fe ff       	call   0x4519ac
46fcaa:	50                   	push   %eax
46fcab:	8b 86 a8 01 00 00    	mov    0x1a8(%esi),%eax
46fcb1:	50                   	push   %eax
46fcb2:	e8 41 71 f9 ff       	call   0x406df8
46fcb7:	85 c0                	test   %eax,%eax
46fcb9:	0f 95 c3             	setne  %bl
46fcbc:	84 db                	test   %bl,%bl
46fcbe:	75 0d                	jne    0x46fccd
46fcc0:	0f b6 14 24          	movzbl (%esp),%edx
46fcc4:	8b c6                	mov    %esi,%eax
46fcc6:	e8 41 0f fe ff       	call   0x450c0c
46fccb:	8b d8                	mov    %eax,%ebx
46fccd:	8b c3                	mov    %ebx,%eax
46fccf:	5a                   	pop    %edx
46fcd0:	5e                   	pop    %esi
46fcd1:	5b                   	pop    %ebx
46fcd2:	c3                   	ret
46fcd3:	90                   	nop
46fcd4:	53                   	push   %ebx
46fcd5:	56                   	push   %esi
46fcd6:	57                   	push   %edi
46fcd7:	55                   	push   %ebp
46fcd8:	8b ea                	mov    %edx,%ebp
46fcda:	8b f0                	mov    %eax,%esi
46fcdc:	8b 9e 8c 02 00 00    	mov    0x28c(%esi),%ebx
46fce2:	85 db                	test   %ebx,%ebx
46fce4:	74 52                	je     0x46fd38
46fce6:	8b c5                	mov    %ebp,%eax
46fce8:	8b 15 84 2c 42 00    	mov    0x422c84,%edx
46fcee:	e8 b5 3d f9 ff       	call   0x403aa8
46fcf3:	84 c0                	test   %al,%al
46fcf5:	74 41                	je     0x46fd38
46fcf7:	8b 43 08             	mov    0x8(%ebx),%eax
46fcfa:	48                   	dec    %eax
46fcfb:	85 c0                	test   %eax,%eax
46fcfd:	7c 39                	jl     0x46fd38
46fcff:	40                   	inc    %eax
46fd00:	89 c3                	mov    %eax,%ebx
46fd02:	33 ff                	xor    %edi,%edi
46fd04:	8b d7                	mov    %edi,%edx
46fd06:	8b 86 8c 02 00 00    	mov    0x28c(%esi),%eax
46fd0c:	e8 c7 84 fa ff       	call   0x4181d8
46fd11:	3b e8                	cmp    %eax,%ebp
46fd13:	75 1f                	jne    0x46fd34
46fd15:	8b c5                	mov    %ebp,%eax
46fd17:	83 78 18 00          	cmpl   $0x0,0x18(%eax)
46fd1b:	74 1b                	je     0x46fd38
46fd1d:	8b 96 50 02 00 00    	mov    0x250(%esi),%edx
46fd23:	8b 52 40             	mov    0x40(%edx),%edx
46fd26:	8b 14 ba             	mov    (%edx,%edi,4),%edx
46fd29:	8b c8                	mov    %eax,%ecx
46fd2b:	8b c6                	mov    %esi,%eax
46fd2d:	e8 aa 03 00 00       	call   0x4700dc
46fd32:	eb 04                	jmp    0x46fd38
46fd34:	47                   	inc    %edi
46fd35:	4b                   	dec    %ebx
46fd36:	75 cc                	jne    0x46fd04
46fd38:	5d                   	pop    %ebp
46fd39:	5f                   	pop    %edi
46fd3a:	5e                   	pop    %esi
46fd3b:	5b                   	pop    %ebx
46fd3c:	c3                   	ret
46fd3d:	8d 40 00             	lea    0x0(%eax),%eax
46fd40:	55                   	push   %ebp
46fd41:	8b ec                	mov    %esp,%ebp
46fd43:	51                   	push   %ecx
46fd44:	53                   	push   %ebx
46fd45:	56                   	push   %esi
46fd46:	57                   	push   %edi
46fd47:	8b da                	mov    %edx,%ebx
46fd49:	89 45 fc             	mov    %eax,-0x4(%ebp)
46fd4c:	8b 45 fc             	mov    -0x4(%ebp),%eax
46fd4f:	e8 70 f9 ff ff       	call   0x46f6c4
46fd54:	33 c0                	xor    %eax,%eax
46fd56:	55                   	push   %ebp
46fd57:	68 e2 fd 46 00       	push   $0x46fde2
46fd5c:	64 ff 30             	push   %fs:(%eax)
46fd5f:	64 89 20             	mov    %esp,%fs:(%eax)
46fd62:	8b c3                	mov    %ebx,%eax
46fd64:	8b 10                	mov    (%eax),%edx
46fd66:	ff 12                	call   *(%edx)
46fd68:	50                   	push   %eax
46fd69:	6a 02                	push   $0x2
46fd6b:	e8 18 6d f9 ff       	call   0x406a88
46fd70:	8b f0                	mov    %eax,%esi
46fd72:	8b 45 fc             	mov    -0x4(%ebp),%eax
46fd75:	89 b0 5c 02 00 00    	mov    %esi,0x25c(%eax)
46fd7b:	85 f6                	test   %esi,%esi
46fd7d:	75 05                	jne    0x46fd84
46fd7f:	e8 80 c6 f9 ff       	call   0x40c404
46fd84:	8b 45 fc             	mov    -0x4(%ebp),%eax
46fd87:	8b 80 5c 02 00 00    	mov    0x25c(%eax),%eax
46fd8d:	50                   	push   %eax
46fd8e:	e8 15 6d f9 ff       	call   0x406aa8
46fd93:	8b f0                	mov    %eax,%esi
46fd95:	33 c0                	xor    %eax,%eax
46fd97:	55                   	push   %ebp
46fd98:	68 d1 fd 46 00       	push   $0x46fdd1
46fd9d:	64 ff 30             	push   %fs:(%eax)
46fda0:	64 89 20             	mov    %esp,%fs:(%eax)
46fda3:	8b c3                	mov    %ebx,%eax
46fda5:	8b 10                	mov    (%eax),%edx
46fda7:	ff 12                	call   *(%edx)
46fda9:	8b c8                	mov    %eax,%ecx
46fdab:	8b d6                	mov    %esi,%edx
46fdad:	8b c3                	mov    %ebx,%eax
46fdaf:	8b 18                	mov    (%eax),%ebx
46fdb1:	ff 53 0c             	call   *0xc(%ebx)
46fdb4:	33 c0                	xor    %eax,%eax
46fdb6:	5a                   	pop    %edx
46fdb7:	59                   	pop    %ecx
46fdb8:	59                   	pop    %ecx
46fdb9:	64 89 10             	mov    %edx,%fs:(%eax)
46fdbc:	68 d8 fd 46 00       	push   $0x46fdd8
46fdc1:	8b 45 fc             	mov    -0x4(%ebp),%eax
46fdc4:	8b 80 5c 02 00 00    	mov    0x25c(%eax),%eax
46fdca:	50                   	push   %eax
46fdcb:	e8 e8 6c f9 ff       	call   0x406ab8
46fdd0:	c3                   	ret
46fdd1:	e9 da 42 f9 ff       	jmp    0x4040b0
46fdd6:	eb e9                	jmp    0x46fdc1
46fdd8:	33 c0                	xor    %eax,%eax
46fdda:	5a                   	pop    %edx
46fddb:	59                   	pop    %ecx
46fddc:	59                   	pop    %ecx
46fddd:	64 89 10             	mov    %edx,%fs:(%eax)
46fde0:	eb 12                	jmp    0x46fdf4
46fde2:	e9 15 40 f9 ff       	jmp    0x403dfc
46fde7:	8b 45 fc             	mov    -0x4(%ebp),%eax
46fdea:	e8 d5 f8 ff ff       	call   0x46f6c4
46fdef:	e8 18 44 f9 ff       	call   0x40420c
46fdf4:	5f                   	pop    %edi
46fdf5:	5e                   	pop    %esi
46fdf6:	5b                   	pop    %ebx
46fdf7:	59                   	pop    %ecx
46fdf8:	5d                   	pop    %ebp
46fdf9:	c3                   	ret
46fdfa:	8b c0                	mov    %eax,%eax
46fdfc:	55                   	push   %ebp
46fdfd:	8b ec                	mov    %esp,%ebp
46fdff:	83 c4 e0             	add    $0xffffffe0,%esp
46fe02:	53                   	push   %ebx
46fe03:	56                   	push   %esi
46fe04:	89 4d f8             	mov    %ecx,-0x8(%ebp)
46fe07:	89 55 fc             	mov    %edx,-0x4(%ebp)
46fe0a:	8b d8                	mov    %eax,%ebx
46fe0c:	8b 75 0c             	mov    0xc(%ebp),%esi
46fe0f:	8b 43 48             	mov    0x48(%ebx),%eax
46fe12:	3b f0                	cmp    %eax,%esi
46fe14:	74 04                	je     0x46fe1a
46fe16:	85 c0                	test   %eax,%eax
46fe18:	7f 14                	jg     0x46fe2e
46fe1a:	8b 53 4c             	mov    0x4c(%ebx),%edx
46fe1d:	3b 55 08             	cmp    0x8(%ebp),%edx
46fe20:	0f 84 9b 00 00 00    	je     0x46fec1
46fe26:	85 d2                	test   %edx,%edx
46fe28:	0f 8e 93 00 00 00    	jle    0x46fec1
46fe2e:	f6 83 85 02 00 00 04 	testb  $0x4,0x285(%ebx)
46fe35:	75 4f                	jne    0x46fe86
46fe37:	a1 24 78 4a 00       	mov    0x4a7824,%eax
46fe3c:	8b 00                	mov    (%eax),%eax
46fe3e:	8b 40 40             	mov    0x40(%eax),%eax
46fe41:	50                   	push   %eax
46fe42:	68 ec 09 00 00       	push   $0x9ec
46fe47:	8b 45 08             	mov    0x8(%ebp),%eax
46fe4a:	50                   	push   %eax
46fe4b:	e8 98 6c f9 ff       	call   0x406ae8
46fe50:	50                   	push   %eax
46fe51:	a1 24 78 4a 00       	mov    0x4a7824,%eax
46fe56:	8b 00                	mov    (%eax),%eax
46fe58:	8b 40 40             	mov    0x40(%eax),%eax
46fe5b:	50                   	push   %eax
46fe5c:	68 ec 09 00 00       	push   $0x9ec
46fe61:	56                   	push   %esi
46fe62:	e8 81 6c f9 ff       	call   0x406ae8
46fe67:	8d 4d e0             	lea    -0x20(%ebp),%ecx
46fe6a:	5a                   	pop    %edx
46fe6b:	e8 e8 6e fa ff       	call   0x416d58
46fe70:	8d 45 e0             	lea    -0x20(%ebp),%eax
46fe73:	50                   	push   %eax
46fe74:	6a 01                	push   $0x1
46fe76:	8b 83 60 02 00 00    	mov    0x260(%ebx),%eax
46fe7c:	50                   	push   %eax
46fe7d:	8b 00                	mov    (%eax),%eax
46fe7f:	ff 50 44             	call   *0x44(%eax)
46fe82:	85 c0                	test   %eax,%eax
46fe84:	74 09                	je     0x46fe8f
46fe86:	8b 73 48             	mov    0x48(%ebx),%esi
46fe89:	8b 43 4c             	mov    0x4c(%ebx),%eax
46fe8c:	89 45 08             	mov    %eax,0x8(%ebp)
46fe8f:	83 bb 74 02 00 00 00 	cmpl   $0x0,0x274(%ebx)
46fe96:	74 29                	je     0x46fec1
46fe98:	8b 45 08             	mov    0x8(%ebp),%eax
46fe9b:	50                   	push   %eax
46fe9c:	8d 45 e8             	lea    -0x18(%ebp),%eax
46fe9f:	50                   	push   %eax
46fea0:	8b ce                	mov    %esi,%ecx
46fea2:	8b 53 44             	mov    0x44(%ebx),%edx
46fea5:	8b 43 40             	mov    0x40(%ebx),%eax
46fea8:	e8 d3 6e fa ff       	call   0x416d80
46fead:	8d 45 e8             	lea    -0x18(%ebp),%eax
46feb0:	50                   	push   %eax
46feb1:	8d 45 e8             	lea    -0x18(%ebp),%eax
46feb4:	50                   	push   %eax
46feb5:	8b 83 74 02 00 00    	mov    0x274(%ebx),%eax
46febb:	50                   	push   %eax
46febc:	8b 00                	mov    (%eax),%eax
46febe:	ff 50 1c             	call   *0x1c(%eax)
46fec1:	56                   	push   %esi
46fec2:	8b 45 08             	mov    0x8(%ebp),%eax
46fec5:	50                   	push   %eax
46fec6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
46fec9:	8b 55 fc             	mov    -0x4(%ebp),%edx
46fecc:	8b c3                	mov    %ebx,%eax
46fece:	e8 7d 14 fe ff       	call   0x451350
46fed3:	5e                   	pop    %esi
46fed4:	5b                   	pop    %ebx
46fed5:	8b e5                	mov    %ebp,%esp
46fed7:	5d                   	pop    %ebp
46fed8:	c2 08 00             	ret    $0x8
46fedb:	90                   	nop
46fedc:	e8 1b 00 00 00       	call   0x46fefc
46fee1:	c3                   	ret
46fee2:	8b c0                	mov    %eax,%eax
46fee4:	83 c4 f0             	add    $0xfffffff0,%esp
46fee7:	66 c7 04 24 09 00    	movw   $0x9,(%esp)
46feed:	89 4c 24 08          	mov    %ecx,0x8(%esp)
46fef1:	8b cc                	mov    %esp,%ecx
46fef3:	e8 d4 02 00 00       	call   0x4701cc
46fef8:	83 c4 10             	add    $0x10,%esp
46fefb:	c3                   	ret
46fefc:	83 c4 f0             	add    $0xfffffff0,%esp
46feff:	66 c7 04 24 03 00    	movw   $0x3,(%esp)
46ff05:	89 4c 24 08          	mov    %ecx,0x8(%esp)
46ff09:	8b cc                	mov    %esp,%ecx
46ff0b:	e8 bc 02 00 00       	call   0x4701cc
46ff10:	83 c4 10             	add    $0x10,%esp
46ff13:	c3                   	ret
46ff14:	55                   	push   %ebp
46ff15:	8b ec                	mov    %esp,%ebp
46ff17:	6a 00                	push   $0x0
46ff19:	6a 00                	push   $0x0
46ff1b:	53                   	push   %ebx
46ff1c:	56                   	push   %esi
46ff1d:	57                   	push   %edi
46ff1e:	8b f2                	mov    %edx,%esi
46ff20:	8b d8                	mov    %eax,%ebx
46ff22:	33 c0                	xor    %eax,%eax
46ff24:	55                   	push   %ebp
46ff25:	68 ba ff 46 00       	push   $0x46ffba
46ff2a:	64 ff 30             	push   %fs:(%eax)
46ff2d:	64 89 20             	mov    %esp,%fs:(%eax)
46ff30:	8d 45 fc             	lea    -0x4(%ebp),%eax
46ff33:	8b 53 08             	mov    0x8(%ebx),%edx
46ff36:	e8 a5 48 f9 ff       	call   0x4047e0
46ff3b:	8b d6                	mov    %esi,%edx
46ff3d:	8b c3                	mov    %ebx,%eax
46ff3f:	e8 18 9d fd ff       	call   0x449c5c
46ff44:	83 bb 68 02 00 00 00 	cmpl   $0x0,0x268(%ebx)
46ff4b:	74 52                	je     0x46ff9f
46ff4d:	68 42 fd ff ff       	push   $0xfffffd42
46ff52:	8b 83 68 02 00 00    	mov    0x268(%ebx),%eax
46ff58:	50                   	push   %eax
46ff59:	8b 00                	mov    (%eax),%eax
46ff5b:	ff 50 14             	call   *0x14(%eax)
46ff5e:	8b 83 50 02 00 00    	mov    0x250(%ebx),%eax
46ff64:	8b 40 2c             	mov    0x2c(%eax),%eax
46ff67:	a8 30                	test   $0x30,%al
46ff69:	74 34                	je     0x46ff9f
46ff6b:	a8 10                	test   $0x10,%al
46ff6d:	74 07                	je     0x46ff76
46ff6f:	bf fa fd ff ff       	mov    $0xfffffdfa,%edi
46ff74:	eb 05                	jmp    0x46ff7b
46ff76:	bf fb fd ff ff       	mov    $0xfffffdfb,%edi
46ff7b:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46ff7e:	8b d7                	mov    %edi,%edx
46ff80:	8b c3                	mov    %ebx,%eax
46ff82:	e8 35 f9 ff ff       	call   0x46f8bc
46ff87:	8b 55 f8             	mov    -0x8(%ebp),%edx
46ff8a:	8b 45 fc             	mov    -0x4(%ebp),%eax
46ff8d:	e8 c6 4b f9 ff       	call   0x404b58
46ff92:	75 0b                	jne    0x46ff9f
46ff94:	8b ce                	mov    %esi,%ecx
46ff96:	8b d7                	mov    %edi,%edx
46ff98:	8b c3                	mov    %ebx,%eax
46ff9a:	e8 e5 02 00 00       	call   0x470284
46ff9f:	33 c0                	xor    %eax,%eax
46ffa1:	5a                   	pop    %edx
46ffa2:	59                   	pop    %ecx
46ffa3:	59                   	pop    %ecx
46ffa4:	64 89 10             	mov    %edx,%fs:(%eax)
46ffa7:	68 c1 ff 46 00       	push   $0x46ffc1
46ffac:	8d 45 f8             	lea    -0x8(%ebp),%eax
46ffaf:	ba 02 00 00 00       	mov    $0x2,%edx
46ffb4:	e8 b3 47 f9 ff       	call   0x40476c
46ffb9:	c3                   	ret
46ffba:	e9 f1 40 f9 ff       	jmp    0x4040b0
46ffbf:	eb eb                	jmp    0x46ffac
46ffc1:	5f                   	pop    %edi
46ffc2:	5e                   	pop    %esi
46ffc3:	5b                   	pop    %ebx
46ffc4:	59                   	pop    %ecx
46ffc5:	59                   	pop    %ecx
46ffc6:	5d                   	pop    %ebp
46ffc7:	c3                   	ret
46ffc8:	83 c4 f0             	add    $0xfffffff0,%esp
46ffcb:	66 c7 04 24 0b 00    	movw   $0xb,(%esp)
46ffd1:	66 85 c9             	test   %cx,%cx
46ffd4:	74 09                	je     0x46ffdf
46ffd6:	66 c7 44 24 08 ff ff 	movw   $0xffff,0x8(%esp)
46ffdd:	eb 07                	jmp    0x46ffe6
46ffdf:	66 c7 44 24 08 00 00 	movw   $0x0,0x8(%esp)
46ffe6:	8b cc                	mov    %esp,%ecx