405ccd:	e5 ff                	in     $0xff,%eax
405ccf:	40                   	inc    %eax
405cd0:	55                   	push   %ebp
405cd1:	8b ec                	mov    %esp,%ebp
405cd3:	81 ec ac 02 00 00    	sub    $0x2ac,%esp
405cd9:	53                   	push   %ebx
405cda:	56                   	push   %esi
405cdb:	57                   	push   %edi
405cdc:	33 c0                	xor    %eax,%eax
405cde:	68 a4 02 00 00       	push   $0x2a4
405ce3:	50                   	push   %eax
405ce4:	89 45 fc             	mov    %eax,-0x4(%ebp)
405ce7:	89 85 54 fd ff ff    	mov    %eax,-0x2ac(%ebp)
405ced:	8d 85 58 fd ff ff    	lea    -0x2a8(%ebp),%eax
405cf3:	50                   	push   %eax
405cf4:	e8 e7 26 01 00       	call   0x4183e0
405cf9:	8b 75 14             	mov    0x14(%ebp),%esi
405cfc:	8b 8e 00 03 00 00    	mov    0x300(%esi),%ecx
405d02:	8b 7d 08             	mov    0x8(%ebp),%edi
405d05:	51                   	push   %ecx
405d06:	57                   	push   %edi
405d07:	e8 34 ff ff ff       	call   0x405c40
405d0c:	83 c4 14             	add    $0x14,%esp
405d0f:	e8 bc 1f 01 00       	call   0x417cd0
405d14:	8b 96 d4 02 00 00    	mov    0x2d4(%esi),%edx
405d1a:	8d 9c 10 00 90 02 00 	lea    0x29000(%eax,%edx,1),%ebx
405d21:	c7 45 14 00 00 00 00 	movl   $0x0,0x14(%ebp)
405d28:	eb 06                	jmp    0x405d30
405d2a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
405d30:	68 80 3c 36 fe       	push   $0xfe363c80
405d35:	57                   	push   %edi
405d36:	e8 55 70 00 00       	call   0x40cd90
405d3b:	8b 8e f4 02 00 00    	mov    0x2f4(%esi),%ecx
405d41:	6a 00                	push   $0x0
405d43:	68 a8 02 00 00       	push   $0x2a8
405d48:	8d 85 54 fd ff ff    	lea    -0x2ac(%ebp),%eax
405d4e:	50                   	push   %eax
405d4f:	53                   	push   %ebx
405d50:	51                   	push   %ecx
405d51:	57                   	push   %edi
405d52:	e8 09 10 01 00       	call   0x416d60
405d57:	83 c4 20             	add    $0x20,%esp
405d5a:	89 86 dc 02 00 00    	mov    %eax,0x2dc(%esi)
405d60:	85 c0                	test   %eax,%eax
405d62:	78 33                	js     0x405d97
405d64:	66 83 bd 74 fd ff ff 	cmpw   $0x0,-0x28c(%ebp)
405d6b:	00
405d6c:	74 18                	je     0x405d86
405d6e:	83 bd 68 fd ff ff 00 	cmpl   $0x0,-0x298(%ebp)
405d75:	74 0f                	je     0x405d86
405d77:	83 bd 7c ff ff ff 00 	cmpl   $0x0,-0x84(%ebp)
405d7e:	74 06                	je     0x405d86
405d80:	83 7d 80 00          	cmpl   $0x0,-0x80(%ebp)
405d84:	75 1a                	jne    0x405da0
405d86:	8b 45 14             	mov    0x14(%ebp),%eax
405d89:	40                   	inc    %eax
405d8a:	89 45 14             	mov    %eax,0x14(%ebp)
405d8d:	83 f8 02             	cmp    $0x2,%eax
405d90:	72 9e                	jb     0x405d30
405d92:	8b 5d fc             	mov    -0x4(%ebp),%ebx
405d95:	eb 26                	jmp    0x405dbd
405d97:	5f                   	pop    %edi
405d98:	5e                   	pop    %esi
405d99:	33 c0                	xor    %eax,%eax
405d9b:	5b                   	pop    %ebx
405d9c:	8b e5                	mov    %ebp,%esp
405d9e:	5d                   	pop    %ebp
405d9f:	c3                   	ret
405da0:	8b 45 10             	mov    0x10(%ebp),%eax
405da3:	68 a8 02 00 00       	push   $0x2a8
405da8:	8d 95 54 fd ff ff    	lea    -0x2ac(%ebp),%edx
405dae:	52                   	push   %edx
405daf:	50                   	push   %eax
405db0:	bb 01 00 00 00       	mov    $0x1,%ebx
405db5:	e8 a6 25 01 00       	call   0x418360
405dba:	83 c4 0c             	add    $0xc,%esp
405dbd:	8b 8e f4 02 00 00    	mov    0x2f4(%esi),%ecx
405dc3:	51                   	push   %ecx
405dc4:	57                   	push   %edi
405dc5:	e8 26 0f 01 00       	call   0x416cf0
405dca:	83 c4 08             	add    $0x8,%esp
405dcd:	85 db                	test   %ebx,%ebx
405dcf:	74 c6                	je     0x405d97
405dd1:	8b 95 68 fd ff ff    	mov    -0x298(%ebp),%edx
405dd7:	8b 45 10             	mov    0x10(%ebp),%eax
405dda:	8b 8d 7c ff ff ff    	mov    -0x84(%ebp),%ecx
405de0:	89 50 14             	mov    %edx,0x14(%eax)
405de3:	8b 96 d0 02 00 00    	mov    0x2d0(%esi),%edx
405de9:	8d 86 e8 02 00 00    	lea    0x2e8(%esi),%eax
405def:	50                   	push   %eax
405df0:	89 08                	mov    %ecx,(%eax)
405df2:	8b 45 10             	mov    0x10(%ebp),%eax
405df5:	8d 9e 14 03 00 00    	lea    0x314(%esi),%ebx
405dfb:	53                   	push   %ebx
405dfc:	33 c9                	xor    %ecx,%ecx
405dfe:	52                   	push   %edx
405dff:	05 20 02 00 00       	add    $0x220,%eax
405e04:	50                   	push   %eax
405e05:	57                   	push   %edi
405e06:	c7 03 18 00 00 00    	movl   $0x18,(%ebx)
405e0c:	89 8e 18 03 00 00    	mov    %ecx,0x318(%esi)
405e12:	89 8e 20 03 00 00    	mov    %ecx,0x320(%esi)
405e18:	89 8e 1c 03 00 00    	mov    %ecx,0x31c(%esi)
405e1e:	89 8e 24 03 00 00    	mov    %ecx,0x324(%esi)
405e24:	89 8e 28 03 00 00    	mov    %ecx,0x328(%esi)
405e2a:	e8 41 07 01 00       	call   0x416570
405e2f:	33 c9                	xor    %ecx,%ecx
405e31:	83 c4 14             	add    $0x14,%esp
405e34:	89 86 dc 02 00 00    	mov    %eax,0x2dc(%esi)
405e3a:	3b c1                	cmp    %ecx,%eax
405e3c:	0f 8c 55 ff ff ff    	jl     0x405d97
405e42:	8b 55 80             	mov    -0x80(%ebp),%edx
405e45:	8d 86 e0 02 00 00    	lea    0x2e0(%esi),%eax
405e4b:	50                   	push   %eax
405e4c:	89 8e 18 03 00 00    	mov    %ecx,0x318(%esi)
405e52:	89 8e 20 03 00 00    	mov    %ecx,0x320(%esi)
405e58:	89 8e 1c 03 00 00    	mov    %ecx,0x31c(%esi)
405e5e:	89 8e 24 03 00 00    	mov    %ecx,0x324(%esi)
405e64:	89 8e 28 03 00 00    	mov    %ecx,0x328(%esi)
405e6a:	8b 4d 10             	mov    0x10(%ebp),%ecx
405e6d:	53                   	push   %ebx
405e6e:	6a 1a                	push   $0x1a
405e70:	81 c1 24 02 00 00    	add    $0x224,%ecx
405e76:	51                   	push   %ecx
405e77:	57                   	push   %edi
405e78:	89 96 e4 02 00 00    	mov    %edx,0x2e4(%esi)
405e7e:	c7 03 18 00 00 00    	movl   $0x18,(%ebx)
405e84:	c7 86 d0 02 00 00 1a 	movl   $0x1a,0x2d0(%esi)
405e8b:	00 00 00
405e8e:	e8 1d 07 01 00       	call   0x4165b0
405e93:	83 c4 14             	add    $0x14,%esp
405e96:	89 86 dc 02 00 00    	mov    %eax,0x2dc(%esi)
405e9c:	85 c0                	test   %eax,%eax
405e9e:	0f 88 f3 fe ff ff    	js     0x405d97
405ea4:	8b 55 0c             	mov    0xc(%ebp),%edx
405ea7:	8b 72 10             	mov    0x10(%edx),%esi
405eaa:	81 c6 00 02 00 00    	add    $0x200,%esi
405eb0:	e8 bb 1a 01 00       	call   0x417970
405eb5:	50                   	push   %eax
405eb6:	6a 00                	push   $0x0
405eb8:	e8 d3 1a 01 00       	call   0x417990
405ebd:	8b d8                	mov    %eax,%ebx
405ebf:	8b 43 28             	mov    0x28(%ebx),%eax
405ec2:	50                   	push   %eax
405ec3:	e8 88 27 01 00       	call   0x418650
405ec8:	8b 53 28             	mov    0x28(%ebx),%edx
405ecb:	8d 4c 00 02          	lea    0x2(%eax,%eax,1),%ecx
405ecf:	51                   	push   %ecx
405ed0:	52                   	push   %edx
405ed1:	56                   	push   %esi
405ed2:	e8 89 24 01 00       	call   0x418360
405ed7:	6a 00                	push   $0x0
405ed9:	6a 02                	push   $0x2
405edb:	8d 85 74 fd ff ff    	lea    -0x28c(%ebp),%eax
405ee1:	50                   	push   %eax
405ee2:	57                   	push   %edi
405ee3:	e8 e8 bf 00 00       	call   0x411ed0
405ee8:	83 c4 28             	add    $0x28,%esp
405eeb:	5f                   	pop    %edi
405eec:	5e                   	pop    %esi
405eed:	5b                   	pop    %ebx
405eee:	8b e5                	mov    %ebp,%esp
405ef0:	5d                   	pop    %ebp
405ef1:	c3                   	ret
405ef2:	04 90                	add    $0x90,%al
405ef4:	0f 1c 8a f4 4b 77 8f 	nopl   -0x7088b40c(%edx)
405efb:	e1 cd                	loope  0x405eca
405efd:	4e                   	dec    %esi
405efe:	2e d9 55 8b          	fsts   %cs:-0x75(%ebp)
405f02:	ec                   	in     (%dx),%al
405f03:	83 ec 58             	sub    $0x58,%esp
405f06:	53                   	push   %ebx
405f07:	56                   	push   %esi
405f08:	57                   	push   %edi
405f09:	6a 34                	push   $0x34
405f0b:	8d 45 ac             	lea    -0x54(%ebp),%eax
405f0e:	6a 00                	push   $0x0
405f10:	50                   	push   %eax
405f11:	e8 ca 24 01 00       	call   0x4183e0
405f16:	8b 45 0c             	mov    0xc(%ebp),%eax
405f19:	8b 48 10             	mov    0x10(%eax),%ecx
405f1c:	8b 5d 08             	mov    0x8(%ebp),%ebx
405f1f:	6a 06                	push   $0x6
405f21:	8d 55 a8             	lea    -0x58(%ebp),%edx
405f24:	52                   	push   %edx
405f25:	50                   	push   %eax
405f26:	53                   	push   %ebx
405f27:	89 4d a8             	mov    %ecx,-0x58(%ebp)
405f2a:	e8 b1 01 01 00       	call   0x4160e0
405f2f:	83 c4 1c             	add    $0x1c,%esp
405f32:	83 7d b8 00          	cmpl   $0x0,-0x48(%ebp)
405f36:	0f 84 7e 01 00 00    	je     0x4060ba
405f3c:	8b 75 14             	mov    0x14(%ebp),%esi
405f3f:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
405f42:	8d 86 f8 02 00 00    	lea    0x2f8(%esi),%eax
405f48:	50                   	push   %eax
405f49:	51                   	push   %ecx
405f4a:	e8 11 fb ff ff       	call   0x405a60
405f4f:	83 c4 08             	add    $0x8,%esp
405f52:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
405f56:	0f 84 5e 01 00 00    	je     0x4060ba
405f5c:	83 7d d4 00          	cmpl   $0x0,-0x2c(%ebp)
405f60:	0f 84 54 01 00 00    	je     0x4060ba
405f66:	8b 45 dc             	mov    -0x24(%ebp),%eax
405f69:	85 c0                	test   %eax,%eax
405f6b:	0f 84 49 01 00 00    	je     0x4060ba
405f71:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
405f75:	0f 84 3f 01 00 00    	je     0x4060ba
405f7b:	8b 96 d8 02 00 00    	mov    0x2d8(%esi),%edx
405f81:	89 10                	mov    %edx,(%eax)
405f83:	8b 86 d4 02 00 00    	mov    0x2d4(%esi),%eax
405f89:	8b 4d c8             	mov    -0x38(%ebp),%ecx
405f8c:	8b 55 18             	mov    0x18(%ebp),%edx
405f8f:	89 01                	mov    %eax,(%ecx)
405f91:	8b 42 08             	mov    0x8(%edx),%eax
405f94:	8b 4d d8             	mov    -0x28(%ebp),%ecx
405f97:	89 01                	mov    %eax,(%ecx)
405f99:	8b 96 00 03 00 00    	mov    0x300(%esi),%edx
405f9f:	8b 45 d4             	mov    -0x2c(%ebp),%eax
405fa2:	89 10                	mov    %edx,(%eax)
405fa4:	81 86 d4 02 00 00 00 	addl   $0x28000,0x2d4(%esi)
405fab:	80 02 00
405fae:	e8 1d 1d 01 00       	call   0x417cd0
405fb3:	8b be d8 02 00 00    	mov    0x2d8(%esi),%edi
405fb9:	b9 00 f0 ff ff       	mov    $0xfffff000,%ecx
405fbe:	2b c8                	sub    %eax,%ecx
405fc0:	01 8e d4 02 00 00    	add    %ecx,0x2d4(%esi)
405fc6:	6a 71                	push   $0x71
405fc8:	53                   	push   %ebx
405fc9:	81 c7 00 02 05 00    	add    $0x50200,%edi
405fcf:	e8 cc 16 00 00       	call   0x4076a0
405fd4:	50                   	push   %eax
405fd5:	6a 00                	push   $0x0
405fd7:	e8 b4 19 01 00       	call   0x417990
405fdc:	89 45 f8             	mov    %eax,-0x8(%ebp)
405fdf:	8b 86 d8 02 00 00    	mov    0x2d8(%esi),%eax
405fe5:	83 c4 10             	add    $0x10,%esp
405fe8:	05 00 04 05 00       	add    $0x50400,%eax
405fed:	68 22 02 00 00       	push   $0x222
405ff2:	89 45 fc             	mov    %eax,-0x4(%ebp)
405ff5:	e8 44 4b 01 00       	call   0x41ab3e
405ffa:	8b 55 fc             	mov    -0x4(%ebp),%edx
405ffd:	83 c0 02             	add    $0x2,%eax
406000:	50                   	push   %eax
406001:	52                   	push   %edx
406002:	e8 19 d1 00 00       	call   0x413120
406007:	8b 45 f8             	mov    -0x8(%ebp),%eax
40600a:	8b 48 28             	mov    0x28(%eax),%ecx
40600d:	57                   	push   %edi
40600e:	51                   	push   %ecx
40600f:	53                   	push   %ebx
406010:	e8 cb fa ff ff       	call   0x405ae0
406015:	83 c4 18             	add    $0x18,%esp
406018:	66 83 3f 00          	cmpw   $0x0,(%edi)
40601c:	0f 84 98 00 00 00    	je     0x4060ba
406022:	e8 ab 57 01 00       	call   0x41b7d2
406027:	83 c0 02             	add    $0x2,%eax
40602a:	89 45 f8             	mov    %eax,-0x8(%ebp)
40602d:	8b 45 f8             	mov    -0x8(%ebp),%eax
406030:	ff d0                	call   *%eax
406032:	8b 7d 10             	mov    0x10(%ebp),%edi
406035:	8b 55 0c             	mov    0xc(%ebp),%edx
406038:	6a 64                	push   $0x64
40603a:	56                   	push   %esi
40603b:	57                   	push   %edi
40603c:	52                   	push   %edx
40603d:	53                   	push   %ebx
40603e:	e8 8d fc ff ff       	call   0x405cd0
406043:	8b c8                	mov    %eax,%ecx
406045:	33 c0                	xor    %eax,%eax
406047:	83 c4 14             	add    $0x14,%esp
40604a:	89 4d 0c             	mov    %ecx,0xc(%ebp)
40604d:	89 45 e0             	mov    %eax,-0x20(%ebp)
406050:	89 45 e4             	mov    %eax,-0x1c(%ebp)
406053:	89 45 e8             	mov    %eax,-0x18(%ebp)
406056:	89 45 ec             	mov    %eax,-0x14(%ebp)
406059:	89 45 f0             	mov    %eax,-0x10(%ebp)
40605c:	89 45 f4             	mov    %eax,-0xc(%ebp)
40605f:	3b c8                	cmp    %eax,%ecx
406061:	74 4e                	je     0x4060b1
406063:	8b 97 20 02 00 00    	mov    0x220(%edi),%edx
406069:	50                   	push   %eax
40606a:	6a 18                	push   $0x18
40606c:	8d 4d e0             	lea    -0x20(%ebp),%ecx
40606f:	51                   	push   %ecx
406070:	50                   	push   %eax
406071:	52                   	push   %edx
406072:	53                   	push   %ebx
406073:	e8 e8 06 01 00       	call   0x416760
406078:	83 c4 18             	add    $0x18,%esp
40607b:	89 86 dc 02 00 00    	mov    %eax,0x2dc(%esi)
406081:	85 c0                	test   %eax,%eax
406083:	78 35                	js     0x4060ba
406085:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
406088:	8b 97 20 02 00 00    	mov    0x220(%edi),%edx
40608e:	6a 00                	push   $0x0
406090:	6a 04                	push   $0x4
406092:	8d 47 14             	lea    0x14(%edi),%eax
406095:	50                   	push   %eax
406096:	83 c1 08             	add    $0x8,%ecx
406099:	51                   	push   %ecx
40609a:	52                   	push   %edx
40609b:	53                   	push   %ebx
40609c:	e8 bf 0c 01 00       	call   0x416d60
4060a1:	83 c4 18             	add    $0x18,%esp
4060a4:	89 86 dc 02 00 00    	mov    %eax,0x2dc(%esi)
4060aa:	85 c0                	test   %eax,%eax
4060ac:	78 0c                	js     0x4060ba
4060ae:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4060b1:	8b c1                	mov    %ecx,%eax
4060b3:	5f                   	pop    %edi
4060b4:	5e                   	pop    %esi
4060b5:	5b                   	pop    %ebx
4060b6:	8b e5                	mov    %ebp,%esp
4060b8:	5d                   	pop    %ebp
4060b9:	c3                   	ret
4060ba:	5f                   	pop    %edi
4060bb:	5e                   	pop    %esi
4060bc:	33 c0                	xor    %eax,%eax
4060be:	5b                   	pop    %ebx
4060bf:	8b e5                	mov    %ebp,%esp
4060c1:	5d                   	pop    %ebp
4060c2:	c3                   	ret
4060c3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4060c4:	c6 06 d0             	movb   $0xd0,(%esi)
4060c7:	86 13                	xchg   %dl,(%ebx)
4060c9:	8d 30                	lea    (%eax),%esi
4060cb:	c0 98 a8 20 6e 55 8b 	rcrb   $0x8b,0x556e20a8(%eax)
4060d2:	ec                   	in     (%dx),%al
4060d3:	81 ec 70 06 00 00    	sub    $0x670,%esp
4060d9:	53                   	push   %ebx
4060da:	56                   	push   %esi
4060db:	8b 75 08             	mov    0x8(%ebp),%esi
4060de:	8d 45 ec             	lea    -0x14(%ebp),%eax
4060e1:	50                   	push   %eax
4060e2:	56                   	push   %esi
4060e3:	33 db                	xor    %ebx,%ebx
4060e5:	e8 f6 f6 ff ff       	call   0x4057e0
4060ea:	83 c4 08             	add    $0x8,%esp
4060ed:	85 c0                	test   %eax,%eax
4060ef:	0f 84 88 02 00 00    	je     0x40637d
4060f5:	57                   	push   %edi
4060f6:	8d 8d 90 f9 ff ff    	lea    -0x670(%ebp),%ecx
4060fc:	51                   	push   %ecx
4060fd:	8d 55 ec             	lea    -0x14(%ebp),%edx
406100:	52                   	push   %edx
406101:	e8 ea f8 ff ff       	call   0x4059f0
406106:	8b 7d 0c             	mov    0xc(%ebp),%edi
406109:	83 c4 08             	add    $0x8,%esp
40610c:	8d 64 24 00          	lea    0x0(%esp),%esp