40cea8:	50                   	push   %eax
40cea9:	6a 00                	push   $0x0
40ceab:	ff 75 dc             	push   -0x24(%ebp)
40ceae:	68 10 66 00 00       	push   $0x6610
40ceb3:	ff 75 d8             	push   -0x28(%ebp)
40ceb6:	e8 8d 77 ff ff       	call   0x404648
40cebb:	89 45 94             	mov    %eax,-0x6c(%ebp)
40cebe:	e8 6f 45 ff ff       	call   0x401432
40cec3:	83 7d 94 00          	cmpl   $0x0,-0x6c(%ebp)
40cec7:	75 05                	jne    0x40cece
40cec9:	e9 13 01 00 00       	jmp    0x40cfe1
40cece:	0f bf 45 10          	movswl 0x10(%ebp),%eax
40ced2:	85 c0                	test   %eax,%eax
40ced4:	74 6f                	je     0x40cf45
40ced6:	8b 45 08             	mov    0x8(%ebp),%eax
40ced9:	ff 30                	push   (%eax)
40cedb:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40cede:	50                   	push   %eax
40cedf:	e8 fc 45 ff ff       	call   0x4014e0
40cee4:	8d 45 e8             	lea    -0x18(%ebp),%eax
40cee7:	50                   	push   %eax
40cee8:	8b 45 d4             	mov    -0x2c(%ebp),%eax
40ceeb:	33 c9                	xor    %ecx,%ecx
40ceed:	2b 48 14             	sub    0x14(%eax),%ecx
40cef0:	8b 45 d4             	mov    -0x2c(%ebp),%eax
40cef3:	8b 40 0c             	mov    0xc(%eax),%eax
40cef6:	03 c1                	add    %ecx,%eax
40cef8:	50                   	push   %eax
40cef9:	6a 00                	push   $0x0
40cefb:	6a 01                	push   $0x1
40cefd:	6a 00                	push   $0x0
40ceff:	ff 75 ec             	push   -0x14(%ebp)
40cf02:	e8 01 78 ff ff       	call   0x404708
40cf07:	89 45 94             	mov    %eax,-0x6c(%ebp)
40cf0a:	e8 23 45 ff ff       	call   0x401432
40cf0f:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40cf12:	50                   	push   %eax
40cf13:	e8 c2 45 ff ff       	call   0x4014da
40cf18:	83 7d 94 00          	cmpl   $0x0,-0x6c(%ebp)
40cf1c:	75 05                	jne    0x40cf23
40cf1e:	e9 be 00 00 00       	jmp    0x40cfe1
40cf23:	6a 00                	push   $0x0
40cf25:	8b 45 e8             	mov    -0x18(%ebp),%eax
40cf28:	48                   	dec    %eax
40cf29:	50                   	push   %eax
40cf2a:	6a 01                	push   $0x1
40cf2c:	6a 11                	push   $0x11
40cf2e:	ff 75 08             	push   0x8(%ebp)
40cf31:	6a 01                	push   $0x1
40cf33:	68 80 00 00 00       	push   $0x80
40cf38:	e8 a1 44 ff ff       	call   0x4013de
40cf3d:	83 c4 1c             	add    $0x1c,%esp
40cf40:	e9 97 00 00 00       	jmp    0x40cfdc
40cf45:	8b 45 e8             	mov    -0x18(%ebp),%eax
40cf48:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40cf4b:	ff 75 e4             	push   -0x1c(%ebp)
40cf4e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40cf51:	50                   	push   %eax
40cf52:	6a 00                	push   $0x0
40cf54:	6a 00                	push   $0x0
40cf56:	6a 01                	push   $0x1
40cf58:	6a 00                	push   $0x0
40cf5a:	ff 75 ec             	push   -0x14(%ebp)
40cf5d:	e8 e6 77 ff ff       	call   0x404748
40cf62:	89 45 94             	mov    %eax,-0x6c(%ebp)
40cf65:	e8 c8 44 ff ff       	call   0x401432
40cf6a:	83 7d 94 00          	cmpl   $0x0,-0x6c(%ebp)
40cf6e:	75 02                	jne    0x40cf72
40cf70:	eb 6f                	jmp    0x40cfe1
40cf72:	6a 00                	push   $0x0
40cf74:	8b 45 e4             	mov    -0x1c(%ebp),%eax
40cf77:	48                   	dec    %eax
40cf78:	50                   	push   %eax
40cf79:	6a 01                	push   $0x1
40cf7b:	6a 11                	push   $0x11
40cf7d:	ff 75 08             	push   0x8(%ebp)
40cf80:	6a 01                	push   $0x1
40cf82:	68 80 00 00 00       	push   $0x80
40cf87:	e8 52 44 ff ff       	call   0x4013de
40cf8c:	83 c4 1c             	add    $0x1c,%esp
40cf8f:	8b 45 08             	mov    0x8(%ebp),%eax
40cf92:	ff 30                	push   (%eax)
40cf94:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40cf97:	50                   	push   %eax
40cf98:	e8 43 45 ff ff       	call   0x4014e0
40cf9d:	ff 75 e4             	push   -0x1c(%ebp)
40cfa0:	8d 45 e8             	lea    -0x18(%ebp),%eax
40cfa3:	50                   	push   %eax
40cfa4:	8b 45 d4             	mov    -0x2c(%ebp),%eax
40cfa7:	33 c9                	xor    %ecx,%ecx
40cfa9:	2b 48 14             	sub    0x14(%eax),%ecx
40cfac:	8b 45 d4             	mov    -0x2c(%ebp),%eax
40cfaf:	8b 40 0c             	mov    0xc(%eax),%eax
40cfb2:	03 c1                	add    %ecx,%eax
40cfb4:	50                   	push   %eax
40cfb5:	6a 00                	push   $0x0
40cfb7:	6a 01                	push   $0x1
40cfb9:	6a 00                	push   $0x0
40cfbb:	ff 75 ec             	push   -0x14(%ebp)
40cfbe:	e8 85 77 ff ff       	call   0x404748
40cfc3:	89 45 94             	mov    %eax,-0x6c(%ebp)
40cfc6:	e8 67 44 ff ff       	call   0x401432
40cfcb:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40cfce:	50                   	push   %eax
40cfcf:	e8 06 45 ff ff       	call   0x4014da
40cfd4:	83 7d 94 00          	cmpl   $0x0,-0x6c(%ebp)
40cfd8:	75 02                	jne    0x40cfdc
40cfda:	eb 05                	jmp    0x40cfe1
40cfdc:	66 83 4d e0 ff       	orw    $0xffff,-0x20(%ebp)
40cfe1:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
40cfe5:	74 0d                	je     0x40cff4
40cfe7:	ff 75 ec             	push   -0x14(%ebp)
40cfea:	e8 d9 76 ff ff       	call   0x4046c8
40cfef:	e8 3e 44 ff ff       	call   0x401432
40cff4:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
40cff8:	74 0d                	je     0x40d007
40cffa:	ff 75 dc             	push   -0x24(%ebp)
40cffd:	e8 86 76 ff ff       	call   0x404688
40d002:	e8 2b 44 ff ff       	call   0x401432
40d007:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
40d00b:	74 0f                	je     0x40d01c
40d00d:	6a 00                	push   $0x0
40d00f:	ff 75 d8             	push   -0x28(%ebp)
40d012:	e8 71 75 ff ff       	call   0x404588
40d017:	e8 16 44 ff ff       	call   0x401432
40d01c:	68 4c d0 40 00       	push   $0x40d04c
40d021:	eb 28                	jmp    0x40d04b
40d023:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40d026:	50                   	push   %eax
40d027:	e8 ae 44 ff ff       	call   0x4014da
40d02c:	8d 45 c8             	lea    -0x38(%ebp),%eax
40d02f:	50                   	push   %eax
40d030:	8d 45 cc             	lea    -0x34(%ebp),%eax
40d033:	50                   	push   %eax
40d034:	8d 45 d0             	lea    -0x30(%ebp),%eax
40d037:	50                   	push   %eax
40d038:	6a 03                	push   $0x3
40d03a:	e8 f9 43 ff ff       	call   0x401438
40d03f:	83 c4 10             	add    $0x10,%esp
40d042:	8d 4d b8             	lea    -0x48(%ebp),%ecx
40d045:	e8 5a 44 ff ff       	call   0x4014a4
40d04a:	c3                   	ret
40d04b:	c3                   	ret
40d04c:	66 8b 45 e0          	mov    -0x20(%ebp),%ax
40d050:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40d053:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40d05a:	5f                   	pop    %edi
40d05b:	5e                   	pop    %esi
40d05c:	5b                   	pop    %ebx
40d05d:	c9                   	leave
40d05e:	c2 0c 00             	ret    $0xc
40d061:	55                   	push   %ebp
40d062:	8b ec                	mov    %esp,%ebp
40d064:	6a 20                	push   $0x20
40d066:	58                   	pop    %eax
40d067:	e8 c4 42 ff ff       	call   0x401330
40d06c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40d06f:	50                   	push   %eax
40d070:	e8 41 44 ff ff       	call   0x4014b6
40d075:	50                   	push   %eax
40d076:	8b 45 08             	mov    0x8(%ebp),%eax
40d079:	83 c0 3c             	add    $0x3c,%eax
40d07c:	50                   	push   %eax
40d07d:	e8 c0 93 ff ff       	call   0x406442
40d082:	8d 45 f0             	lea    -0x10(%ebp),%eax
40d085:	50                   	push   %eax
40d086:	e8 2b 44 ff ff       	call   0x4014b6
40d08b:	50                   	push   %eax
40d08c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
40d08f:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d092:	8d 84 01 80 00 00 00 	lea    0x80(%ecx,%eax,1),%eax
40d099:	50                   	push   %eax
40d09a:	e8 a3 93 ff ff       	call   0x406442
40d09f:	8b 45 f0             	mov    -0x10(%ebp),%eax
40d0a2:	89 45 fc             	mov    %eax,-0x4(%ebp)
40d0a5:	8d 45 e8             	lea    -0x18(%ebp),%eax
40d0a8:	50                   	push   %eax
40d0a9:	e8 08 44 ff ff       	call   0x4014b6
40d0ae:	50                   	push   %eax
40d0af:	8b 45 fc             	mov    -0x4(%ebp),%eax
40d0b2:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d0b5:	8d 44 01 0c          	lea    0xc(%ecx,%eax,1),%eax
40d0b9:	50                   	push   %eax
40d0ba:	e8 83 93 ff ff       	call   0x406442
40d0bf:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
40d0c3:	75 05                	jne    0x40d0ca
40d0c5:	e9 d0 00 00 00       	jmp    0x40d19a
40d0ca:	ff 75 0c             	push   0xc(%ebp)
40d0cd:	8b 45 08             	mov    0x8(%ebp),%eax
40d0d0:	03 45 e8             	add    -0x18(%ebp),%eax
40d0d3:	50                   	push   %eax
40d0d4:	e8 cf 9f ff ff       	call   0x4070a8
40d0d9:	0f bf c0             	movswl %ax,%eax
40d0dc:	85 c0                	test   %eax,%eax
40d0de:	0f 84 a8 00 00 00    	je     0x40d18c
40d0e4:	8d 45 f8             	lea    -0x8(%ebp),%eax
40d0e7:	50                   	push   %eax
40d0e8:	e8 c9 43 ff ff       	call   0x4014b6
40d0ed:	50                   	push   %eax
40d0ee:	8b 45 fc             	mov    -0x4(%ebp),%eax
40d0f1:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d0f4:	8d 44 01 10          	lea    0x10(%ecx,%eax,1),%eax
40d0f8:	50                   	push   %eax
40d0f9:	e8 44 93 ff ff       	call   0x406442
40d0fe:	8d 45 f8             	lea    -0x8(%ebp),%eax
40d101:	50                   	push   %eax
40d102:	e8 af 43 ff ff       	call   0x4014b6
40d107:	50                   	push   %eax
40d108:	8b 45 08             	mov    0x8(%ebp),%eax
40d10b:	03 45 f8             	add    -0x8(%ebp),%eax
40d10e:	50                   	push   %eax
40d10f:	e8 2e 93 ff ff       	call   0x406442
40d114:	8b 45 f8             	mov    -0x8(%ebp),%eax
40d117:	66 25 00 00          	and    $0x0,%ax
40d11b:	05 00 00 01 00       	add    $0x10000,%eax
40d120:	89 45 f4             	mov    %eax,-0xc(%ebp)
40d123:	8b 45 f4             	mov    -0xc(%ebp),%eax
40d126:	2d 00 00 01 00       	sub    $0x10000,%eax
40d12b:	89 45 f4             	mov    %eax,-0xc(%ebp)
40d12e:	8d 45 ec             	lea    -0x14(%ebp),%eax
40d131:	50                   	push   %eax
40d132:	e8 7f 43 ff ff       	call   0x4014b6
40d137:	50                   	push   %eax
40d138:	ff 75 f4             	push   -0xc(%ebp)
40d13b:	e8 02 93 ff ff       	call   0x406442
40d140:	8b 45 ec             	mov    -0x14(%ebp),%eax
40d143:	25 ff ff 00 00       	and    $0xffff,%eax
40d148:	3d 4d 5a 00 00       	cmp    $0x5a4d,%eax
40d14d:	75 d4                	jne    0x40d123
40d14f:	8d 45 ec             	lea    -0x14(%ebp),%eax
40d152:	50                   	push   %eax
40d153:	e8 5e 43 ff ff       	call   0x4014b6
40d158:	50                   	push   %eax
40d159:	8b 45 f4             	mov    -0xc(%ebp),%eax
40d15c:	83 c0 3c             	add    $0x3c,%eax
40d15f:	50                   	push   %eax
40d160:	e8 dd 92 ff ff       	call   0x406442
40d165:	8d 45 ec             	lea    -0x14(%ebp),%eax
40d168:	50                   	push   %eax
40d169:	e8 48 43 ff ff       	call   0x4014b6
40d16e:	50                   	push   %eax
40d16f:	8b 45 f4             	mov    -0xc(%ebp),%eax
40d172:	03 45 ec             	add    -0x14(%ebp),%eax
40d175:	50                   	push   %eax
40d176:	e8 c7 92 ff ff       	call   0x406442
40d17b:	81 7d ec 50 45 00 00 	cmpl   $0x4550,-0x14(%ebp)
40d182:	75 9f                	jne    0x40d123
40d184:	8b 45 f4             	mov    -0xc(%ebp),%eax
40d187:	89 45 e0             	mov    %eax,-0x20(%ebp)
40d18a:	eb 0e                	jmp    0x40d19a
40d18c:	8b 45 fc             	mov    -0x4(%ebp),%eax
40d18f:	83 c0 14             	add    $0x14,%eax
40d192:	89 45 fc             	mov    %eax,-0x4(%ebp)
40d195:	e9 0b ff ff ff       	jmp    0x40d0a5
40d19a:	8b 45 e0             	mov    -0x20(%ebp),%eax
40d19d:	c9                   	leave
40d19e:	c2 08 00             	ret    $0x8
40d1a1:	55                   	push   %ebp
40d1a2:	8b ec                	mov    %esp,%ebp
40d1a4:	51                   	push   %ecx
40d1a5:	51                   	push   %ecx
40d1a6:	68 36 13 40 00       	push   $0x401336
40d1ab:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40d1b1:	50                   	push   %eax
40d1b2:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
40d1b9:	6a 5c                	push   $0x5c
40d1bb:	58                   	pop    %eax
40d1bc:	e8 6f 41 ff ff       	call   0x401330
40d1c1:	53                   	push   %ebx
40d1c2:	56                   	push   %esi
40d1c3:	57                   	push   %edi
40d1c4:	89 65 f8             	mov    %esp,-0x8(%ebp)
40d1c7:	c7 45 fc 98 12 40 00 	movl   $0x401298,-0x4(%ebp)
40d1ce:	8d 45 b0             	lea    -0x50(%ebp),%eax
40d1d1:	50                   	push   %eax
40d1d2:	e8 df 42 ff ff       	call   0x4014b6
40d1d7:	50                   	push   %eax
40d1d8:	8b 45 08             	mov    0x8(%ebp),%eax
40d1db:	83 c0 3c             	add    $0x3c,%eax
40d1de:	50                   	push   %eax
40d1df:	e8 5e 92 ff ff       	call   0x406442
40d1e4:	8d 45 bc             	lea    -0x44(%ebp),%eax
40d1e7:	50                   	push   %eax
40d1e8:	e8 c9 42 ff ff       	call   0x4014b6
40d1ed:	50                   	push   %eax
40d1ee:	8b 45 b0             	mov    -0x50(%ebp),%eax
40d1f1:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d1f4:	8d 44 01 78          	lea    0x78(%ecx,%eax,1),%eax
40d1f8:	50                   	push   %eax
40d1f9:	e8 44 92 ff ff       	call   0x406442
40d1fe:	8d 45 dc             	lea    -0x24(%ebp),%eax
40d201:	50                   	push   %eax
40d202:	e8 af 42 ff ff       	call   0x4014b6
40d207:	50                   	push   %eax
40d208:	8b 45 b0             	mov    -0x50(%ebp),%eax
40d20b:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d20e:	8d 44 01 7c          	lea    0x7c(%ecx,%eax,1),%eax
40d212:	50                   	push   %eax
40d213:	e8 2a 92 ff ff       	call   0x406442
40d218:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40d21b:	50                   	push   %eax
40d21c:	e8 95 42 ff ff       	call   0x4014b6
40d221:	50                   	push   %eax
40d222:	8b 45 bc             	mov    -0x44(%ebp),%eax
40d225:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d228:	8d 44 01 10          	lea    0x10(%ecx,%eax,1),%eax
40d22c:	50                   	push   %eax
40d22d:	e8 10 92 ff ff       	call   0x406442
40d232:	8d 45 b8             	lea    -0x48(%ebp),%eax
40d235:	50                   	push   %eax
40d236:	e8 7b 42 ff ff       	call   0x4014b6
40d23b:	50                   	push   %eax
40d23c:	8b 45 bc             	mov    -0x44(%ebp),%eax
40d23f:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d242:	8d 44 01 14          	lea    0x14(%ecx,%eax,1),%eax
40d246:	50                   	push   %eax
40d247:	e8 f6 91 ff ff       	call   0x406442
40d24c:	8d 45 ac             	lea    -0x54(%ebp),%eax
40d24f:	50                   	push   %eax
40d250:	e8 61 42 ff ff       	call   0x4014b6
40d255:	50                   	push   %eax
40d256:	8b 45 bc             	mov    -0x44(%ebp),%eax
40d259:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d25c:	8d 44 01 18          	lea    0x18(%ecx,%eax,1),%eax
40d260:	50                   	push   %eax
40d261:	e8 dc 91 ff ff       	call   0x406442
40d266:	8d 45 b4             	lea    -0x4c(%ebp),%eax
40d269:	50                   	push   %eax
40d26a:	e8 47 42 ff ff       	call   0x4014b6
40d26f:	50                   	push   %eax
40d270:	8b 45 bc             	mov    -0x44(%ebp),%eax
40d273:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d276:	8d 44 01 1c          	lea    0x1c(%ecx,%eax,1),%eax
40d27a:	50                   	push   %eax
40d27b:	e8 c2 91 ff ff       	call   0x406442
40d280:	8d 45 a8             	lea    -0x58(%ebp),%eax
40d283:	50                   	push   %eax
40d284:	e8 2d 42 ff ff       	call   0x4014b6
40d289:	50                   	push   %eax
40d28a:	8b 45 bc             	mov    -0x44(%ebp),%eax
40d28d:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d290:	8d 44 01 20          	lea    0x20(%ecx,%eax,1),%eax
40d294:	50                   	push   %eax
40d295:	e8 a8 91 ff ff       	call   0x406442
40d29a:	8d 45 e0             	lea    -0x20(%ebp),%eax
40d29d:	50                   	push   %eax
40d29e:	e8 13 42 ff ff       	call   0x4014b6
40d2a3:	50                   	push   %eax
40d2a4:	8b 45 bc             	mov    -0x44(%ebp),%eax
40d2a7:	8b 4d 08             	mov    0x8(%ebp),%ecx