40e8f4:	55                   	push   %ebp
40e8f5:	8b ec                	mov    %esp,%ebp
40e8f7:	6a 00                	push   $0x0
40e8f9:	53                   	push   %ebx
40e8fa:	33 c0                	xor    %eax,%eax
40e8fc:	55                   	push   %ebp
40e8fd:	68 4e e9 40 00       	push   $0x40e94e
40e902:	64 ff 30             	push   %fs:(%eax)
40e905:	64 89 20             	mov    %esp,%fs:(%eax)
40e908:	81 7d 0c 00 04 00 00 	cmpl   $0x400,0xc(%ebp)
40e90f:	74 07                	je     0x40e918
40e911:	bb 01 40 00 80       	mov    $0x80004001,%ebx
40e916:	eb 20                	jmp    0x40e938
40e918:	8d 45 fc             	lea    -0x4(%ebp),%eax
40e91b:	8b 55 08             	mov    0x8(%ebp),%edx
40e91e:	e8 ad 60 ff ff       	call   0x4049d0
40e923:	8b 45 fc             	mov    -0x4(%ebp),%eax
40e926:	8b 55 14             	mov    0x14(%ebp),%edx
40e929:	e8 8e b9 ff ff       	call   0x40a2bc
40e92e:	83 e0 7f             	and    $0x7f,%eax
40e931:	8b 1c 85 08 ba 49 00 	mov    0x49ba08(,%eax,4),%ebx
40e938:	33 c0                	xor    %eax,%eax
40e93a:	5a                   	pop    %edx
40e93b:	59                   	pop    %ecx
40e93c:	59                   	pop    %ecx
40e93d:	64 89 10             	mov    %edx,%fs:(%eax)
40e940:	68 55 e9 40 00       	push   $0x40e955
40e945:	8d 45 fc             	lea    -0x4(%ebp),%eax
40e948:	e8 fb 5d ff ff       	call   0x404748
40e94d:	c3                   	ret
40e94e:	e9 5d 57 ff ff       	jmp    0x4040b0
40e953:	eb f0                	jmp    0x40e945
40e955:	8b c3                	mov    %ebx,%eax
40e957:	5b                   	pop    %ebx
40e958:	59                   	pop    %ecx
40e959:	5d                   	pop    %ebp
40e95a:	c2 10 00             	ret    $0x10
40e95d:	8d 40 00             	lea    0x0(%eax),%eax
40e960:	55                   	push   %ebp
40e961:	8b ec                	mov    %esp,%ebp
40e963:	83 c4 f8             	add    $0xfffffff8,%esp
40e966:	53                   	push   %ebx
40e967:	33 c0                	xor    %eax,%eax
40e969:	89 45 f8             	mov    %eax,-0x8(%ebp)
40e96c:	33 c0                	xor    %eax,%eax
40e96e:	55                   	push   %ebp
40e96f:	68 cd e9 40 00       	push   $0x40e9cd
40e974:	64 ff 30             	push   %fs:(%eax)
40e977:	64 89 20             	mov    %esp,%fs:(%eax)
40e97a:	81 7d 0c 00 04 00 00 	cmpl   $0x400,0xc(%ebp)
40e981:	74 07                	je     0x40e98a
40e983:	bb 01 40 00 80       	mov    $0x80004001,%ebx
40e988:	eb 2d                	jmp    0x40e9b7
40e98a:	8d 45 f8             	lea    -0x8(%ebp),%eax
40e98d:	8b 55 08             	mov    0x8(%ebp),%edx
40e990:	e8 3b 60 ff ff       	call   0x4049d0
40e995:	8b 45 f8             	mov    -0x8(%ebp),%eax
40e998:	8d 55 ff             	lea    -0x1(%ebp),%edx
40e99b:	e8 0c a6 ff ff       	call   0x408fac
40e9a0:	83 e0 7f             	and    $0x7f,%eax
40e9a3:	8b 1c 85 08 ba 49 00 	mov    0x49ba08(,%eax,4),%ebx
40e9aa:	80 7d ff 01          	cmpb   $0x1,-0x1(%ebp)
40e9ae:	f5                   	cmc
40e9af:	1b c0                	sbb    %eax,%eax
40e9b1:	8b 55 14             	mov    0x14(%ebp),%edx
40e9b4:	66 89 02             	mov    %ax,(%edx)
40e9b7:	33 c0                	xor    %eax,%eax
40e9b9:	5a                   	pop    %edx
40e9ba:	59                   	pop    %ecx
40e9bb:	59                   	pop    %ecx
40e9bc:	64 89 10             	mov    %edx,%fs:(%eax)
40e9bf:	68 d4 e9 40 00       	push   $0x40e9d4
40e9c4:	8d 45 f8             	lea    -0x8(%ebp),%eax
40e9c7:	e8 7c 5d ff ff       	call   0x404748
40e9cc:	c3                   	ret
40e9cd:	e9 de 56 ff ff       	jmp    0x4040b0
40e9d2:	eb f0                	jmp    0x40e9c4
40e9d4:	8b c3                	mov    %ebx,%eax
40e9d6:	5b                   	pop    %ebx
40e9d7:	59                   	pop    %ecx
40e9d8:	59                   	pop    %ecx
40e9d9:	5d                   	pop    %ebp
40e9da:	c2 10 00             	ret    $0x10
40e9dd:	8d 40 00             	lea    0x0(%eax),%eax
40e9e0:	55                   	push   %ebp
40e9e1:	8b ec                	mov    %esp,%ebp
40e9e3:	6a 00                	push   $0x0
40e9e5:	53                   	push   %ebx
40e9e6:	8b 45 18             	mov    0x18(%ebp),%eax
40e9e9:	85 c0                	test   %eax,%eax
40e9eb:	74 04                	je     0x40e9f1
40e9ed:	33 d2                	xor    %edx,%edx
40e9ef:	89 10                	mov    %edx,(%eax)
40e9f1:	33 c0                	xor    %eax,%eax
40e9f3:	55                   	push   %ebp
40e9f4:	68 40 ea 40 00       	push   $0x40ea40
40e9f9:	64 ff 30             	push   %fs:(%eax)
40e9fc:	64 89 20             	mov    %esp,%fs:(%eax)
40e9ff:	81 7d 10 00 04 00 00 	cmpl   $0x400,0x10(%ebp)
40ea06:	74 07                	je     0x40ea0f
40ea08:	bb 01 40 00 80       	mov    $0x80004001,%ebx
40ea0d:	eb 1b                	jmp    0x40ea2a
40ea0f:	ff 75 0c             	push   0xc(%ebp)
40ea12:	ff 75 08             	push   0x8(%ebp)
40ea15:	8d 45 fc             	lea    -0x4(%ebp),%eax
40ea18:	e8 bf b7 ff ff       	call   0x40a1dc
40ea1d:	8b 55 fc             	mov    -0x4(%ebp),%edx
40ea20:	8b 45 18             	mov    0x18(%ebp),%eax
40ea23:	e8 7c 66 ff ff       	call   0x4050a4
40ea28:	33 db                	xor    %ebx,%ebx
40ea2a:	33 c0                	xor    %eax,%eax
40ea2c:	5a                   	pop    %edx
40ea2d:	59                   	pop    %ecx
40ea2e:	59                   	pop    %ecx
40ea2f:	64 89 10             	mov    %edx,%fs:(%eax)
40ea32:	68 47 ea 40 00       	push   $0x40ea47
40ea37:	8d 45 fc             	lea    -0x4(%ebp),%eax
40ea3a:	e8 09 5d ff ff       	call   0x404748
40ea3f:	c3                   	ret
40ea40:	e9 6b 56 ff ff       	jmp    0x4040b0
40ea45:	eb f0                	jmp    0x40ea37
40ea47:	8b c3                	mov    %ebx,%eax
40ea49:	5b                   	pop    %ebx
40ea4a:	59                   	pop    %ecx
40ea4b:	5d                   	pop    %ebp
40ea4c:	c2 14 00             	ret    $0x14
40ea4f:	90                   	nop
40ea50:	55                   	push   %ebp
40ea51:	8b ec                	mov    %esp,%ebp
40ea53:	6a 00                	push   $0x0
40ea55:	53                   	push   %ebx
40ea56:	8b 45 18             	mov    0x18(%ebp),%eax
40ea59:	85 c0                	test   %eax,%eax
40ea5b:	74 04                	je     0x40ea61
40ea5d:	33 d2                	xor    %edx,%edx
40ea5f:	89 10                	mov    %edx,(%eax)
40ea61:	33 c0                	xor    %eax,%eax
40ea63:	55                   	push   %ebp
40ea64:	68 b2 ea 40 00       	push   $0x40eab2
40ea69:	64 ff 30             	push   %fs:(%eax)
40ea6c:	64 89 20             	mov    %esp,%fs:(%eax)
40ea6f:	81 7d 10 00 04 00 00 	cmpl   $0x400,0x10(%ebp)
40ea76:	74 07                	je     0x40ea7f
40ea78:	bb 01 40 00 80       	mov    $0x80004001,%ebx
40ea7d:	eb 1d                	jmp    0x40ea9c
40ea7f:	ff 75 0c             	push   0xc(%ebp)
40ea82:	ff 75 08             	push   0x8(%ebp)
40ea85:	8d 45 fc             	lea    -0x4(%ebp),%eax
40ea88:	33 d2                	xor    %edx,%edx
40ea8a:	e8 a5 c7 ff ff       	call   0x40b234
40ea8f:	8b 45 18             	mov    0x18(%ebp),%eax
40ea92:	8b 55 fc             	mov    -0x4(%ebp),%edx
40ea95:	e8 0a 66 ff ff       	call   0x4050a4
40ea9a:	33 db                	xor    %ebx,%ebx
40ea9c:	33 c0                	xor    %eax,%eax
40ea9e:	5a                   	pop    %edx
40ea9f:	59                   	pop    %ecx
40eaa0:	59                   	pop    %ecx
40eaa1:	64 89 10             	mov    %edx,%fs:(%eax)
40eaa4:	68 b9 ea 40 00       	push   $0x40eab9
40eaa9:	8d 45 fc             	lea    -0x4(%ebp),%eax
40eaac:	e8 97 5c ff ff       	call   0x404748
40eab1:	c3                   	ret
40eab2:	e9 f9 55 ff ff       	jmp    0x4040b0
40eab7:	eb f0                	jmp    0x40eaa9
40eab9:	8b c3                	mov    %ebx,%eax
40eabb:	5b                   	pop    %ebx
40eabc:	59                   	pop    %ecx
40eabd:	5d                   	pop    %ebp
40eabe:	c2 14 00             	ret    $0x14
40eac1:	8d 40 00             	lea    0x0(%eax),%eax
40eac4:	55                   	push   %ebp
40eac5:	8b ec                	mov    %esp,%ebp
40eac7:	6a 00                	push   $0x0
40eac9:	53                   	push   %ebx
40eaca:	8b 45 14             	mov    0x14(%ebp),%eax
40eacd:	85 c0                	test   %eax,%eax
40eacf:	74 04                	je     0x40ead5
40ead1:	33 d2                	xor    %edx,%edx
40ead3:	89 10                	mov    %edx,(%eax)
40ead5:	33 c0                	xor    %eax,%eax
40ead7:	55                   	push   %ebp
40ead8:	68 28 eb 40 00       	push   $0x40eb28
40eadd:	64 ff 30             	push   %fs:(%eax)
40eae0:	64 89 20             	mov    %esp,%fs:(%eax)
40eae3:	81 7d 0c 00 04 00 00 	cmpl   $0x400,0xc(%ebp)
40eaea:	74 07                	je     0x40eaf3
40eaec:	bb 01 40 00 80       	mov    $0x80004001,%ebx
40eaf1:	eb 1f                	jmp    0x40eb12
40eaf3:	66 83 7d 08 01       	cmpw   $0x1,0x8(%ebp)
40eaf8:	1b c0                	sbb    %eax,%eax
40eafa:	40                   	inc    %eax
40eafb:	8d 4d fc             	lea    -0x4(%ebp),%ecx
40eafe:	33 d2                	xor    %edx,%edx
40eb00:	e8 43 a5 ff ff       	call   0x409048
40eb05:	8b 55 fc             	mov    -0x4(%ebp),%edx
40eb08:	8b 45 14             	mov    0x14(%ebp),%eax
40eb0b:	e8 94 65 ff ff       	call   0x4050a4
40eb10:	33 db                	xor    %ebx,%ebx
40eb12:	33 c0                	xor    %eax,%eax
40eb14:	5a                   	pop    %edx
40eb15:	59                   	pop    %ecx
40eb16:	59                   	pop    %ecx
40eb17:	64 89 10             	mov    %edx,%fs:(%eax)
40eb1a:	68 2f eb 40 00       	push   $0x40eb2f
40eb1f:	8d 45 fc             	lea    -0x4(%ebp),%eax
40eb22:	e8 21 5c ff ff       	call   0x404748
40eb27:	c3                   	ret
40eb28:	e9 83 55 ff ff       	jmp    0x4040b0
40eb2d:	eb f0                	jmp    0x40eb1f
40eb2f:	8b c3                	mov    %ebx,%eax
40eb31:	5b                   	pop    %ebx
40eb32:	59                   	pop    %ecx
40eb33:	5d                   	pop    %ebp
40eb34:	c2 10 00             	ret    $0x10
40eb37:	90                   	nop
40eb38:	ff 25 60 ce 4a 00    	jmp    *0x4ace60
40eb3e:	8b c0                	mov    %eax,%eax
40eb40:	ff 25 5c ce 4a 00    	jmp    *0x4ace5c
40eb46:	8b c0                	mov    %eax,%eax
40eb48:	ff 25 58 ce 4a 00    	jmp    *0x4ace58
40eb4e:	8b c0                	mov    %eax,%eax
40eb50:	ff 25 54 ce 4a 00    	jmp    *0x4ace54
40eb56:	8b c0                	mov    %eax,%eax
40eb58:	55                   	push   %ebp
40eb59:	8b ec                	mov    %esp,%ebp
40eb5b:	53                   	push   %ebx
40eb5c:	8b da                	mov    %edx,%ebx
40eb5e:	8b d3                	mov    %ebx,%edx
40eb60:	8b 4d 08             	mov    0x8(%ebp),%ecx
40eb63:	83 79 fc 00          	cmpl   $0x0,-0x4(%ecx)
40eb67:	74 15                	je     0x40eb7e
40eb69:	50                   	push   %eax
40eb6a:	8b 45 08             	mov    0x8(%ebp),%eax
40eb6d:	8b 40 fc             	mov    -0x4(%eax),%eax
40eb70:	50                   	push   %eax
40eb71:	e8 d2 7e ff ff       	call   0x406a48
40eb76:	8b d0                	mov    %eax,%edx
40eb78:	85 d2                	test   %edx,%edx
40eb7a:	75 02                	jne    0x40eb7e
40eb7c:	8b d3                	mov    %ebx,%edx
40eb7e:	8b c2                	mov    %edx,%eax
40eb80:	5b                   	pop    %ebx
40eb81:	5d                   	pop    %ebp
40eb82:	c3                   	ret
40eb83:	90                   	nop
40eb84:	55                   	push   %ebp
40eb85:	8b ec                	mov    %esp,%ebp
40eb87:	51                   	push   %ecx
40eb88:	68 7c ed 40 00       	push   $0x40ed7c
40eb8d:	e8 ae 7e ff ff       	call   0x406a40
40eb92:	89 45 fc             	mov    %eax,-0x4(%ebp)
40eb95:	55                   	push   %ebp
40eb96:	ba f0 e6 40 00       	mov    $0x40e6f0,%edx
40eb9b:	b8 8c ed 40 00       	mov    $0x40ed8c,%eax
40eba0:	e8 b3 ff ff ff       	call   0x40eb58
40eba5:	59                   	pop    %ecx
40eba6:	a3 28 b2 4a 00       	mov    %eax,0x4ab228
40ebab:	55                   	push   %ebp
40ebac:	ba 20 e7 40 00       	mov    $0x40e720,%edx
40ebb1:	b8 a0 ed 40 00       	mov    $0x40eda0,%eax
40ebb6:	e8 9d ff ff ff       	call   0x40eb58
40ebbb:	59                   	pop    %ecx
40ebbc:	a3 2c b2 4a 00       	mov    %eax,0x4ab22c
40ebc1:	55                   	push   %ebp
40ebc2:	ba 20 e7 40 00       	mov    $0x40e720,%edx
40ebc7:	b8 a8 ed 40 00       	mov    $0x40eda8,%eax
40ebcc:	e8 87 ff ff ff       	call   0x40eb58
40ebd1:	59                   	pop    %ecx
40ebd2:	a3 30 b2 4a 00       	mov    %eax,0x4ab230
40ebd7:	55                   	push   %ebp
40ebd8:	ba 2c e7 40 00       	mov    $0x40e72c,%edx
40ebdd:	b8 b0 ed 40 00       	mov    $0x40edb0,%eax
40ebe2:	e8 71 ff ff ff       	call   0x40eb58
40ebe7:	59                   	pop    %ecx
40ebe8:	a3 34 b2 4a 00       	mov    %eax,0x4ab234
40ebed:	55                   	push   %ebp
40ebee:	ba 2c e7 40 00       	mov    $0x40e72c,%edx
40ebf3:	b8 b8 ed 40 00       	mov    $0x40edb8,%eax
40ebf8:	e8 5b ff ff ff       	call   0x40eb58
40ebfd:	59                   	pop    %ecx
40ebfe:	a3 38 b2 4a 00       	mov    %eax,0x4ab238
40ec03:	55                   	push   %ebp
40ec04:	ba 2c e7 40 00       	mov    $0x40e72c,%edx
40ec09:	b8 c0 ed 40 00       	mov    $0x40edc0,%eax
40ec0e:	e8 45 ff ff ff       	call   0x40eb58
40ec13:	59                   	pop    %ecx
40ec14:	a3 3c b2 4a 00       	mov    %eax,0x4ab23c
40ec19:	55                   	push   %ebp
40ec1a:	ba 2c e7 40 00       	mov    $0x40e72c,%edx
40ec1f:	b8 c8 ed 40 00       	mov    $0x40edc8,%eax
40ec24:	e8 2f ff ff ff       	call   0x40eb58
40ec29:	59                   	pop    %ecx
40ec2a:	a3 40 b2 4a 00       	mov    %eax,0x4ab240
40ec2f:	55                   	push   %ebp
40ec30:	ba 2c e7 40 00       	mov    $0x40e72c,%edx
40ec35:	b8 d0 ed 40 00       	mov    $0x40edd0,%eax
40ec3a:	e8 19 ff ff ff       	call   0x40eb58
40ec3f:	59                   	pop    %ecx
40ec40:	a3 44 b2 4a 00       	mov    %eax,0x4ab244
40ec45:	55                   	push   %ebp
40ec46:	ba 2c e7 40 00       	mov    $0x40e72c,%edx
40ec4b:	b8 d8 ed 40 00       	mov    $0x40edd8,%eax
40ec50:	e8 03 ff ff ff       	call   0x40eb58
40ec55:	59                   	pop    %ecx
40ec56:	a3 48 b2 4a 00       	mov    %eax,0x4ab248
40ec5b:	55                   	push   %ebp
40ec5c:	ba 2c e7 40 00       	mov    $0x40e72c,%edx
40ec61:	b8 e0 ed 40 00       	mov    $0x40ede0,%eax
40ec66:	e8 ed fe ff ff       	call   0x40eb58
40ec6b:	59                   	pop    %ecx
40ec6c:	a3 4c b2 4a 00       	mov    %eax,0x4ab24c
40ec71:	55                   	push   %ebp
40ec72:	ba 2c e7 40 00       	mov    $0x40e72c,%edx
40ec77:	b8 e8 ed 40 00       	mov    $0x40ede8,%eax
40ec7c:	e8 d7 fe ff ff       	call   0x40eb58
40ec81:	59                   	pop    %ecx
40ec82:	a3 50 b2 4a 00       	mov    %eax,0x4ab250
40ec87:	55                   	push   %ebp
40ec88:	ba 2c e7 40 00       	mov    $0x40e72c,%edx
40ec8d:	b8 f0 ed 40 00       	mov    $0x40edf0,%eax
40ec92:	e8 c1 fe ff ff       	call   0x40eb58
40ec97:	59                   	pop    %ecx
40ec98:	a3 54 b2 4a 00       	mov    %eax,0x4ab254
40ec9d:	55                   	push   %ebp
40ec9e:	ba 38 e7 40 00       	mov    $0x40e738,%edx
40eca3:	b8 f8 ed 40 00       	mov    $0x40edf8,%eax
40eca8:	e8 ab fe ff ff       	call   0x40eb58
40ecad:	59                   	pop    %ecx
40ecae:	a3 58 b2 4a 00       	mov    %eax,0x4ab258
40ecb3:	55                   	push   %ebp
40ecb4:	ba 44 e7 40 00       	mov    $0x40e744,%edx
40ecb9:	b8 00 ee 40 00       	mov    $0x40ee00,%eax
40ecbe:	e8 95 fe ff ff       	call   0x40eb58
40ecc3:	59                   	pop    %ecx
40ecc4:	a3 5c b2 4a 00       	mov    %eax,0x4ab25c
40ecc9:	55                   	push   %ebp
40ecca:	ba b0 e7 40 00       	mov    $0x40e7b0,%edx
40eccf:	b8 10 ee 40 00       	mov    $0x40ee10,%eax
40ecd4:	e8 7f fe ff ff       	call   0x40eb58
40ecd9:	59                   	pop    %ecx
40ecda:	a3 60 b2 4a 00       	mov    %eax,0x4ab260
40ecdf:	55                   	push   %ebp
40ece0:	ba 1c e8 40 00       	mov    $0x40e81c,%edx
40ece5:	b8 20 ee 40 00       	mov    $0x40ee20,%eax
40ecea:	e8 69 fe ff ff       	call   0x40eb58
40ecef:	59                   	pop    %ecx
40ecf0:	a3 64 b2 4a 00       	mov    %eax,0x4ab264
40ecf5:	55                   	push   %ebp
40ecf6:	ba 88 e8 40 00       	mov    $0x40e888,%edx