40cf5f:	33 f6                	xor    %esi,%esi
40cf61:	81 7d fc 00 04 00 00 	cmpl   $0x400,-0x4(%ebp)
40cf68:	0f 82 44 ff ff ff    	jb     0x40ceb2
40cf6e:	8b c6                	mov    %esi,%eax
40cf70:	5e                   	pop    %esi
40cf71:	5b                   	pop    %ebx
40cf72:	5f                   	pop    %edi
40cf73:	8b e5                	mov    %ebp,%esp
40cf75:	5d                   	pop    %ebp
40cf76:	c3                   	ret
40cf77:	5e                   	pop    %esi
40cf78:	5b                   	pop    %ebx
40cf79:	b8 01 00 00 00       	mov    $0x1,%eax
40cf7e:	5f                   	pop    %edi
40cf7f:	8b e5                	mov    %ebp,%esp
40cf81:	5d                   	pop    %ebp
40cf82:	c3                   	ret
40cf83:	5e                   	pop    %esi
40cf84:	5b                   	pop    %ebx
40cf85:	33 c0                	xor    %eax,%eax
40cf87:	5f                   	pop    %edi
40cf88:	8b e5                	mov    %ebp,%esp
40cf8a:	5d                   	pop    %ebp
40cf8b:	c3                   	ret
40cf8c:	9d                   	popf
40cf8d:	1c ad                	sbb    $0xad,%al
40cf8f:	c0 55 8b ec          	rclb   $0xec,-0x75(%ebp)
40cf93:	81 ec d4 00 00 00    	sub    $0xd4,%esp
40cf99:	56                   	push   %esi
40cf9a:	57                   	push   %edi
40cf9b:	68 08 ab ed ad       	push   $0xadedab08
40cfa0:	e8 4b ac 00 00       	call   0x417bf0
40cfa5:	8b 7d 08             	mov    0x8(%ebp),%edi
40cfa8:	33 c9                	xor    %ecx,%ecx
40cfaa:	6a 36                	push   $0x36
40cfac:	51                   	push   %ecx
40cfad:	8d 55 b6             	lea    -0x4a(%ebp),%edx
40cfb0:	8b f0                	mov    %eax,%esi
40cfb2:	52                   	push   %edx
40cfb3:	89 b7 14 0a 00 00    	mov    %esi,0xa14(%edi)
40cfb9:	c7 45 ac 50 00 41 00 	movl   $0x410050,-0x54(%ebp)
40cfc0:	c7 45 b0 54 00 48 00 	movl   $0x480054,-0x50(%ebp)
40cfc7:	66 89 4d b4          	mov    %cx,-0x4c(%ebp)
40cfcb:	e8 10 b4 00 00       	call   0x4183e0
40cfd0:	33 d2                	xor    %edx,%edx
40cfd2:	83 c4 10             	add    $0x10,%esp
40cfd5:	c7 45 ec 46 00 69 00 	movl   $0x690046,-0x14(%ebp)
40cfdc:	c7 45 f0 72 00 65 00 	movl   $0x650072,-0x10(%ebp)
40cfe3:	c7 45 f4 66 00 6f 00 	movl   $0x6f0066,-0xc(%ebp)
40cfea:	c7 45 f8 78 00 5c 00 	movl   $0x5c0078,-0x8(%ebp)
40cff1:	66 89 55 fc          	mov    %dx,-0x4(%ebp)
40cff5:	85 f6                	test   %esi,%esi
40cff7:	75 08                	jne    0x40d001
40cff9:	5f                   	pop    %edi
40cffa:	33 c0                	xor    %eax,%eax
40cffc:	5e                   	pop    %esi
40cffd:	8b e5                	mov    %ebp,%esp
40cfff:	5d                   	pop    %ebp
40d000:	c3                   	ret
40d001:	8b 47 04             	mov    0x4(%edi),%eax
40d004:	33 c6                	xor    %esi,%eax
40d006:	68 00 10 00 00       	push   $0x1000
40d00b:	57                   	push   %edi
40d00c:	89 87 14 0a 00 00    	mov    %eax,0xa14(%edi)
40d012:	e8 f9 b4 00 00       	call   0x418510
40d017:	68 74 73 00 00       	push   $0x7374
40d01c:	57                   	push   %edi
40d01d:	89 87 04 0a 00 00    	mov    %eax,0xa04(%edi)
40d023:	e8 e8 b4 00 00       	call   0x418510
40d028:	8b f0                	mov    %eax,%esi
40d02a:	83 c4 10             	add    $0x10,%esp
40d02d:	85 f6                	test   %esi,%esi
40d02f:	74 c8                	je     0x40cff9
40d031:	83 bf 04 0a 00 00 00 	cmpl   $0x0,0xa04(%edi)
40d038:	74 bf                	je     0x40cff9
40d03a:	53                   	push   %ebx
40d03b:	6a 3f                	push   $0x3f
40d03d:	8d 8d 6d ff ff ff    	lea    -0x93(%ebp),%ecx
40d043:	6a 00                	push   $0x0
40d045:	51                   	push   %ecx
40d046:	c6 85 6c ff ff ff 00 	movb   $0x0,-0x94(%ebp)
40d04d:	e8 8e b3 00 00       	call   0x4183e0
40d052:	8d 95 6c ff ff ff    	lea    -0x94(%ebp),%edx
40d058:	6a 00                	push   $0x0
40d05a:	52                   	push   %edx
40d05b:	e8 20 bf 00 00       	call   0x418f80
40d060:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
40d066:	8d 47 1c             	lea    0x1c(%edi),%eax
40d069:	51                   	push   %ecx
40d06a:	50                   	push   %eax
40d06b:	8d 5e 0c             	lea    0xc(%esi),%ebx
40d06e:	e8 ad b3 ff ff       	call   0x408420
40d073:	8b 16                	mov    (%esi),%edx
40d075:	52                   	push   %edx
40d076:	53                   	push   %ebx
40d077:	57                   	push   %edi
40d078:	89 03                	mov    %eax,(%ebx)
40d07a:	e8 81 86 00 00       	call   0x415700
40d07f:	83 c4 28             	add    $0x28,%esp
40d082:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
40d086:	0f 84 26 01 00 00    	je     0x40d1b2
40d08c:	83 7e 14 00          	cmpl   $0x0,0x14(%esi)
40d090:	0f 84 1c 01 00 00    	je     0x40d1b2
40d096:	83 7e 18 00          	cmpl   $0x0,0x18(%esi)
40d09a:	0f 84 12 01 00 00    	je     0x40d1b2
40d0a0:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
40d0a4:	0f 84 08 01 00 00    	je     0x40d1b2
40d0aa:	83 7e 20 00          	cmpl   $0x0,0x20(%esi)
40d0ae:	0f 84 fe 00 00 00    	je     0x40d1b2
40d0b4:	83 7e 24 00          	cmpl   $0x0,0x24(%esi)
40d0b8:	0f 84 f4 00 00 00    	je     0x40d1b2
40d0be:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
40d0c2:	0f 84 ea 00 00 00    	je     0x40d1b2
40d0c8:	83 7e 2c 00          	cmpl   $0x0,0x2c(%esi)
40d0cc:	0f 84 e0 00 00 00    	je     0x40d1b2
40d0d2:	83 7e 30 00          	cmpl   $0x0,0x30(%esi)
40d0d6:	0f 84 d6 00 00 00    	je     0x40d1b2
40d0dc:	83 7e 34 00          	cmpl   $0x0,0x34(%esi)
40d0e0:	0f 84 cc 00 00 00    	je     0x40d1b2
40d0e6:	6a 3f                	push   $0x3f
40d0e8:	8d 85 2d ff ff ff    	lea    -0xd3(%ebp),%eax
40d0ee:	6a 00                	push   $0x0
40d0f0:	50                   	push   %eax
40d0f1:	c6 85 2c ff ff ff 00 	movb   $0x0,-0xd4(%ebp)
40d0f8:	e8 e3 b2 00 00       	call   0x4183e0
40d0fd:	8d 8d 2c ff ff ff    	lea    -0xd4(%ebp),%ecx
40d103:	6a 06                	push   $0x6
40d105:	51                   	push   %ecx
40d106:	e8 75 be 00 00       	call   0x418f80
40d10b:	8d 95 2c ff ff ff    	lea    -0xd4(%ebp),%edx
40d111:	52                   	push   %edx
40d112:	8d 5f 1c             	lea    0x1c(%edi),%ebx
40d115:	53                   	push   %ebx
40d116:	e8 05 b3 ff ff       	call   0x408420
40d11b:	83 c4 1c             	add    $0x1c,%esp
40d11e:	85 c0                	test   %eax,%eax
40d120:	0f 84 8c 00 00 00    	je     0x40d1b2
40d126:	68 2b 51 30 24       	push   $0x2430512b
40d12b:	6a 00                	push   $0x0
40d12d:	6a 00                	push   $0x0
40d12f:	50                   	push   %eax
40d130:	53                   	push   %ebx
40d131:	e8 9a 51 00 00       	call   0x4122d0
40d136:	83 c4 14             	add    $0x14,%esp
40d139:	89 46 44             	mov    %eax,0x44(%esi)
40d13c:	85 c0                	test   %eax,%eax
40d13e:	74 72                	je     0x40d1b2
40d140:	8b 45 0c             	mov    0xc(%ebp),%eax
40d143:	85 c0                	test   %eax,%eax
40d145:	74 05                	je     0x40d14c
40d147:	89 46 04             	mov    %eax,0x4(%esi)
40d14a:	eb 07                	jmp    0x40d153
40d14c:	c7 46 04 20 00 00 00 	movl   $0x20,0x4(%esi)
40d153:	6a 08                	push   $0x8
40d155:	8d 45 ac             	lea    -0x54(%ebp),%eax
40d158:	50                   	push   %eax
40d159:	8d 4e 48             	lea    0x48(%esi),%ecx
40d15c:	51                   	push   %ecx
40d15d:	c7 06 32 00 00 00    	movl   $0x32,(%esi)
40d163:	e8 f8 b1 00 00       	call   0x418360
40d168:	8d 9f 30 14 01 00    	lea    0x11430(%edi),%ebx
40d16e:	53                   	push   %ebx
40d16f:	e8 dc b4 00 00       	call   0x418650
40d174:	03 c0                	add    %eax,%eax
40d176:	50                   	push   %eax
40d177:	8d 97 f0 08 00 00    	lea    0x8f0(%edi),%edx
40d17d:	53                   	push   %ebx
40d17e:	52                   	push   %edx
40d17f:	e8 dc b1 00 00       	call   0x418360
40d184:	56                   	push   %esi
40d185:	8d 45 ec             	lea    -0x14(%ebp),%eax
40d188:	50                   	push   %eax
40d189:	57                   	push   %edi
40d18a:	e8 21 0e 00 00       	call   0x40dfb0
40d18f:	56                   	push   %esi
40d190:	57                   	push   %edi
40d191:	e8 aa b1 00 00       	call   0x418340
40d196:	8b 8f 04 0a 00 00    	mov    0xa04(%edi),%ecx
40d19c:	51                   	push   %ecx
40d19d:	57                   	push   %edi
40d19e:	e8 9d b1 00 00       	call   0x418340
40d1a3:	83 c4 38             	add    $0x38,%esp
40d1a6:	5b                   	pop    %ebx
40d1a7:	5f                   	pop    %edi
40d1a8:	b8 01 00 00 00       	mov    $0x1,%eax
40d1ad:	5e                   	pop    %esi
40d1ae:	8b e5                	mov    %ebp,%esp
40d1b0:	5d                   	pop    %ebp
40d1b1:	c3                   	ret
40d1b2:	5b                   	pop    %ebx
40d1b3:	5f                   	pop    %edi
40d1b4:	33 c0                	xor    %eax,%eax
40d1b6:	5e                   	pop    %esi
40d1b7:	8b e5                	mov    %ebp,%esp
40d1b9:	5d                   	pop    %ebp
40d1ba:	c3                   	ret
40d1bb:	63 52 b2             	arpl   %edx,-0x4e(%edx)
40d1be:	fb                   	sti
40d1bf:	13 55 8b             	adc    -0x75(%ebp),%edx
40d1c2:	ec                   	in     (%dx),%al
40d1c3:	81 ec c0 02 00 00    	sub    $0x2c0,%esp
40d1c9:	56                   	push   %esi
40d1ca:	33 c0                	xor    %eax,%eax
40d1cc:	68 fe 01 00 00       	push   $0x1fe
40d1d1:	50                   	push   %eax
40d1d2:	8d 8d 42 fd ff ff    	lea    -0x2be(%ebp),%ecx
40d1d8:	51                   	push   %ecx
40d1d9:	66 89 85 40 fd ff ff 	mov    %ax,-0x2c0(%ebp)
40d1e0:	e8 fb b1 00 00       	call   0x4183e0
40d1e5:	33 c0                	xor    %eax,%eax
40d1e7:	6a 36                	push   $0x36
40d1e9:	50                   	push   %eax
40d1ea:	8d 8d 4a ff ff ff    	lea    -0xb6(%ebp),%ecx
40d1f0:	51                   	push   %ecx
40d1f1:	c7 85 40 ff ff ff 2e 	movl   $0x65002e,-0xc0(%ebp)
40d1f8:	00 65 00
40d1fb:	c7 85 44 ff ff ff 78 	movl   $0x650078,-0xbc(%ebp)
40d202:	00 65 00
40d205:	66 89 85 48 ff ff ff 	mov    %ax,-0xb8(%ebp)
40d20c:	e8 cf b1 00 00       	call   0x4183e0
40d211:	33 c9                	xor    %ecx,%ecx
40d213:	6a 2e                	push   $0x2e
40d215:	51                   	push   %ecx
40d216:	8d 55 92             	lea    -0x6e(%ebp),%edx
40d219:	52                   	push   %edx
40d21a:	c7 45 80 20 00 46 00 	movl   $0x460020,-0x80(%ebp)
40d221:	c7 45 84 69 00 72 00 	movl   $0x720069,-0x7c(%ebp)
40d228:	c7 45 88 65 00 66 00 	movl   $0x660065,-0x78(%ebp)
40d22f:	c7 45 8c 6f 00 78 00 	movl   $0x78006f,-0x74(%ebp)
40d236:	66 89 4d 90          	mov    %cx,-0x70(%ebp)
40d23a:	e8 a1 b1 00 00       	call   0x4183e0
40d23f:	8b 75 08             	mov    0x8(%ebp),%esi
40d242:	33 c0                	xor    %eax,%eax
40d244:	50                   	push   %eax
40d245:	6a 05                	push   $0x5
40d247:	8d 95 40 fd ff ff    	lea    -0x2c0(%ebp),%edx
40d24d:	52                   	push   %edx
40d24e:	56                   	push   %esi
40d24f:	c7 45 c0 50 00 72 00 	movl   $0x720050,-0x40(%ebp)
40d256:	c7 45 c4 6f 00 67 00 	movl   $0x67006f,-0x3c(%ebp)
40d25d:	c7 45 c8 72 00 61 00 	movl   $0x610072,-0x38(%ebp)
40d264:	c7 45 cc 6d 00 20 00 	movl   $0x20006d,-0x34(%ebp)
40d26b:	c7 45 d0 46 00 69 00 	movl   $0x690046,-0x30(%ebp)
40d272:	c7 45 d4 6c 00 65 00 	movl   $0x65006c,-0x2c(%ebp)
40d279:	c7 45 d8 73 00 00 00 	movl   $0x73,-0x28(%ebp)
40d280:	89 45 dc             	mov    %eax,-0x24(%ebp)
40d283:	89 45 e0             	mov    %eax,-0x20(%ebp)
40d286:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40d289:	89 45 e8             	mov    %eax,-0x18(%ebp)
40d28c:	89 45 ec             	mov    %eax,-0x14(%ebp)
40d28f:	89 45 f0             	mov    %eax,-0x10(%ebp)
40d292:	89 45 f4             	mov    %eax,-0xc(%ebp)
40d295:	89 45 f8             	mov    %eax,-0x8(%ebp)
40d298:	89 45 fc             	mov    %eax,-0x4(%ebp)
40d29b:	e8 d0 b4 ff ff       	call   0x408770
40d2a0:	83 c4 34             	add    $0x34,%esp
40d2a3:	6a 01                	push   $0x1
40d2a5:	8d 85 40 fd ff ff    	lea    -0x2c0(%ebp),%eax
40d2ab:	6a 13                	push   $0x13
40d2ad:	50                   	push   %eax
40d2ae:	e8 9d b3 00 00       	call   0x418650
40d2b3:	83 c4 04             	add    $0x4,%esp
40d2b6:	8d 8c 45 40 fd ff ff 	lea    -0x2c0(%ebp,%eax,2),%ecx
40d2bd:	51                   	push   %ecx
40d2be:	56                   	push   %esi
40d2bf:	e8 ac b4 ff ff       	call   0x408770
40d2c4:	6a 00                	push   $0x0
40d2c6:	8d 55 80             	lea    -0x80(%ebp),%edx
40d2c9:	52                   	push   %edx
40d2ca:	8d 85 40 fd ff ff    	lea    -0x2c0(%ebp),%eax
40d2d0:	50                   	push   %eax
40d2d1:	e8 ea b4 00 00       	call   0x4187c0
40d2d6:	6a 00                	push   $0x0
40d2d8:	8d 55 80             	lea    -0x80(%ebp),%edx
40d2db:	52                   	push   %edx
40d2dc:	8d 85 40 fd ff ff    	lea    -0x2c0(%ebp),%eax
40d2e2:	b9 5c 00 00 00       	mov    $0x5c,%ecx
40d2e7:	50                   	push   %eax
40d2e8:	66 89 4d 80          	mov    %cx,-0x80(%ebp)
40d2ec:	e8 cf b4 00 00       	call   0x4187c0
40d2f1:	6a 00                	push   $0x0
40d2f3:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
40d2f9:	51                   	push   %ecx
40d2fa:	8d 95 40 fd ff ff    	lea    -0x2c0(%ebp),%edx
40d300:	52                   	push   %edx
40d301:	e8 ba b4 00 00       	call   0x4187c0
40d306:	6a 00                	push   $0x0
40d308:	6a 15                	push   $0x15
40d30a:	8d 85 40 fd ff ff    	lea    -0x2c0(%ebp),%eax
40d310:	50                   	push   %eax
40d311:	56                   	push   %esi
40d312:	e8 b9 4b 00 00       	call   0x411ed0
40d317:	83 c4 44             	add    $0x44,%esp
40d31a:	85 c0                	test   %eax,%eax
40d31c:	0f 85 bb 00 00 00    	jne    0x40d3dd
40d322:	8d 8d 46 fd ff ff    	lea    -0x2ba(%ebp),%ecx
40d328:	68 80 00 00 00       	push   $0x80
40d32d:	51                   	push   %ecx
40d32e:	e8 5d b0 00 00       	call   0x418390
40d333:	8d 45 c0             	lea    -0x40(%ebp),%eax
40d336:	ba 20 00 00 00       	mov    $0x20,%edx
40d33b:	50                   	push   %eax
40d33c:	66 89 55 80          	mov    %dx,-0x80(%ebp)
40d340:	e8 0b b3 00 00       	call   0x418650
40d345:	8d 4c 00 02          	lea    0x2(%eax,%eax,1),%ecx
40d349:	51                   	push   %ecx
40d34a:	8d 55 c0             	lea    -0x40(%ebp),%edx
40d34d:	52                   	push   %edx
40d34e:	8d 85 46 fd ff ff    	lea    -0x2ba(%ebp),%eax
40d354:	50                   	push   %eax
40d355:	e8 06 b0 00 00       	call   0x418360
40d35a:	83 c4 18             	add    $0x18,%esp
40d35d:	6a 01                	push   $0x1
40d35f:	8d 8d 40 fd ff ff    	lea    -0x2c0(%ebp),%ecx
40d365:	6a 13                	push   $0x13
40d367:	51                   	push   %ecx
40d368:	e8 e3 b2 00 00       	call   0x418650
40d36d:	83 c4 04             	add    $0x4,%esp
40d370:	8d 94 45 40 fd ff ff 	lea    -0x2c0(%ebp,%eax,2),%edx
40d377:	52                   	push   %edx
40d378:	56                   	push   %esi
40d379:	e8 f2 b3 ff ff       	call   0x408770
40d37e:	6a 00                	push   $0x0
40d380:	8d 45 80             	lea    -0x80(%ebp),%eax
40d383:	50                   	push   %eax
40d384:	8d 8d 40 fd ff ff    	lea    -0x2c0(%ebp),%ecx
40d38a:	51                   	push   %ecx
40d38b:	e8 30 b4 00 00       	call   0x4187c0
40d390:	6a 00                	push   $0x0
40d392:	8d 45 80             	lea    -0x80(%ebp),%eax
40d395:	50                   	push   %eax
40d396:	8d 8d 40 fd ff ff    	lea    -0x2c0(%ebp),%ecx
40d39c:	ba 5c 00 00 00       	mov    $0x5c,%edx
40d3a1:	51                   	push   %ecx
40d3a2:	66 89 55 80          	mov    %dx,-0x80(%ebp)
40d3a6:	e8 15 b4 00 00       	call   0x4187c0
40d3ab:	6a 00                	push   $0x0
40d3ad:	8d 95 40 ff ff ff    	lea    -0xc0(%ebp),%edx
40d3b3:	52                   	push   %edx
40d3b4:	8d 85 40 fd ff ff    	lea    -0x2c0(%ebp),%eax
40d3ba:	50                   	push   %eax
40d3bb:	e8 00 b4 00 00       	call   0x4187c0
40d3c0:	6a 00                	push   $0x0
40d3c2:	6a 15                	push   $0x15
40d3c4:	8d 8d 40 fd ff ff    	lea    -0x2c0(%ebp),%ecx
40d3ca:	51                   	push   %ecx
40d3cb:	56                   	push   %esi
40d3cc:	e8 ff 4a 00 00       	call   0x411ed0
40d3d1:	83 c4 44             	add    $0x44,%esp
40d3d4:	85 c0                	test   %eax,%eax