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
40d3d6:	75 05                	jne    0x40d3dd
40d3d8:	5e                   	pop    %esi
40d3d9:	8b e5                	mov    %ebp,%esp
40d3db:	5d                   	pop    %ebp
40d3dc:	c3                   	ret
40d3dd:	8b 75 0c             	mov    0xc(%ebp),%esi
40d3e0:	85 f6                	test   %esi,%esi
40d3e2:	74 21                	je     0x40d405
40d3e4:	8d 95 40 fd ff ff    	lea    -0x2c0(%ebp),%edx
40d3ea:	52                   	push   %edx
40d3eb:	e8 60 b2 00 00       	call   0x418650
40d3f0:	8d 44 00 02          	lea    0x2(%eax,%eax,1),%eax
40d3f4:	50                   	push   %eax
40d3f5:	8d 8d 40 fd ff ff    	lea    -0x2c0(%ebp),%ecx
40d3fb:	51                   	push   %ecx
40d3fc:	56                   	push   %esi
40d3fd:	e8 5e af 00 00       	call   0x418360
40d402:	83 c4 10             	add    $0x10,%esp
40d405:	b8 01 00 00 00       	mov    $0x1,%eax
40d40a:	5e                   	pop    %esi
40d40b:	8b e5                	mov    %ebp,%esp
40d40d:	5d                   	pop    %ebp
40d40e:	c3                   	ret
40d40f:	cc                   	int3
40d410:	55                   	push   %ebp
40d411:	8b ec                	mov    %esp,%ebp
40d413:	81 ec 28 05 00 00    	sub    $0x528,%esp
40d419:	53                   	push   %ebx
40d41a:	56                   	push   %esi
40d41b:	33 db                	xor    %ebx,%ebx
40d41d:	68 a4 02 00 00       	push   $0x2a4
40d422:	8d 85 48 fd ff ff    	lea    -0x2b8(%ebp),%eax
40d428:	53                   	push   %ebx
40d429:	50                   	push   %eax
40d42a:	89 9d 44 fd ff ff    	mov    %ebx,-0x2bc(%ebp)
40d430:	e8 ab af 00 00       	call   0x4183e0
40d435:	68 28 02 00 00       	push   $0x228
40d43a:	8d 8d dc fa ff ff    	lea    -0x524(%ebp),%ecx
40d440:	53                   	push   %ebx
40d441:	51                   	push   %ecx
40d442:	89 9d d8 fa ff ff    	mov    %ebx,-0x528(%ebp)
40d448:	e8 93 af 00 00       	call   0x4183e0
40d44d:	8b 75 08             	mov    0x8(%ebp),%esi
40d450:	8b 96 98 0b 00 00    	mov    0xb98(%esi),%edx
40d456:	68 f7 5e 14 cc       	push   $0xcc145ef7
40d45b:	53                   	push   %ebx
40d45c:	53                   	push   %ebx
40d45d:	8d 46 1c             	lea    0x1c(%esi),%eax
40d460:	52                   	push   %edx
40d461:	50                   	push   %eax
40d462:	c7 45 8c 44 00 00 00 	movl   $0x44,-0x74(%ebp)
40d469:	c7 45 f4 8b ff 55 8b 	movl   $0x8b55ff8b,-0xc(%ebp)
40d470:	c7 45 f8 ec e8 00 00 	movl   $0xe8ec,-0x8(%ebp)
40d477:	66 89 5d fc          	mov    %bx,-0x4(%ebp)
40d47b:	e8 50 4e 00 00       	call   0x4122d0
40d480:	83 c4 2c             	add    $0x2c,%esp
40d483:	89 45 08             	mov    %eax,0x8(%ebp)
40d486:	3b c3                	cmp    %ebx,%eax
40d488:	0f 84 47 03 00 00    	je     0x40d7d5
40d48e:	57                   	push   %edi
40d48f:	8b 7d 0c             	mov    0xc(%ebp),%edi
40d492:	53                   	push   %ebx
40d493:	6a 02                	push   $0x2
40d495:	57                   	push   %edi
40d496:	56                   	push   %esi
40d497:	e8 34 4a 00 00       	call   0x411ed0
40d49c:	83 c4 10             	add    $0x10,%esp
40d49f:	89 85 5c fd ff ff    	mov    %eax,-0x2a4(%ebp)
40d4a5:	3b c3                	cmp    %ebx,%eax
40d4a7:	0f 84 27 03 00 00    	je     0x40d7d4
40d4ad:	50                   	push   %eax
40d4ae:	e8 5d ad 00 00       	call   0x418210
40d4b3:	53                   	push   %ebx
40d4b4:	89 45 84             	mov    %eax,-0x7c(%ebp)
40d4b7:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
40d4bd:	50                   	push   %eax
40d4be:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
40d4c1:	51                   	push   %ecx
40d4c2:	53                   	push   %ebx
40d4c3:	53                   	push   %ebx
40d4c4:	6a 0c                	push   $0xc
40d4c6:	53                   	push   %ebx
40d4c7:	53                   	push   %ebx
40d4c8:	53                   	push   %ebx
40d4c9:	53                   	push   %ebx
40d4ca:	57                   	push   %edi
40d4cb:	53                   	push   %ebx
40d4cc:	56                   	push   %esi
40d4cd:	e8 6e 9a 00 00       	call   0x416f40
40d4d2:	83 c4 38             	add    $0x38,%esp
40d4d5:	85 c0                	test   %eax,%eax
40d4d7:	0f 84 e7 02 00 00    	je     0x40d7c4
40d4dd:	8d 85 6c ff ff ff    	lea    -0x94(%ebp),%eax
40d4e3:	50                   	push   %eax
40d4e4:	8d 8e 1c 0a 00 00    	lea    0xa1c(%esi),%ecx
40d4ea:	51                   	push   %ecx
40d4eb:	56                   	push   %esi
40d4ec:	e8 ef c0 00 00       	call   0x4195e0
40d4f1:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
40d4f7:	8b 95 68 ff ff ff    	mov    -0x98(%ebp),%edx
40d4fd:	8b 8d 6c ff ff ff    	mov    -0x94(%ebp),%ecx
40d503:	89 85 f0 fa ff ff    	mov    %eax,-0x510(%ebp)
40d509:	8b 85 5c fd ff ff    	mov    -0x2a4(%ebp),%eax
40d50f:	89 85 f4 fa ff ff    	mov    %eax,-0x50c(%ebp)
40d515:	8b 86 d8 07 00 00    	mov    0x7d8(%esi),%eax
40d51b:	89 95 e8 fa ff ff    	mov    %edx,-0x518(%ebp)
40d521:	8b 55 84             	mov    -0x7c(%ebp),%edx
40d524:	83 c4 0c             	add    $0xc,%esp
40d527:	89 8d e0 fa ff ff    	mov    %ecx,-0x520(%ebp)
40d52d:	89 95 f8 fa ff ff    	mov    %edx,-0x508(%ebp)
40d533:	3b c3                	cmp    %ebx,%eax
40d535:	0f 84 7e 02 00 00    	je     0x40d7b9
40d53b:	89 88 48 20 00 00    	mov    %ecx,0x2048(%eax)
40d541:	89 5d f0             	mov    %ebx,-0x10(%ebp)
40d544:	39 5e 1c             	cmp    %ebx,0x1c(%esi)
40d547:	0f 84 8c 00 00 00    	je     0x40d5d9
40d54d:	8b 95 64 ff ff ff    	mov    -0x9c(%ebp),%edx
40d553:	53                   	push   %ebx
40d554:	6a 04                	push   $0x4
40d556:	8d 4d f0             	lea    -0x10(%ebp),%ecx
40d559:	51                   	push   %ecx
40d55a:	6a 1a                	push   $0x1a
40d55c:	52                   	push   %edx
40d55d:	56                   	push   %esi
40d55e:	e8 fd 91 00 00       	call   0x416760
40d563:	83 c4 18             	add    $0x18,%esp
40d566:	39 5d f0             	cmp    %ebx,-0x10(%ebp)
40d569:	75 6e                	jne    0x40d5d9
40d56b:	8b 86 7c 0b 00 00    	mov    0xb7c(%esi),%eax
40d571:	39 58 10             	cmp    %ebx,0x10(%eax)
40d574:	74 4c                	je     0x40d5c2
40d576:	39 9e d4 07 00 00    	cmp    %ebx,0x7d4(%esi)
40d57c:	74 13                	je     0x40d591
40d57e:	6a 64                	push   $0x64
40d580:	8d 8d 64 ff ff ff    	lea    -0x9c(%ebp),%ecx
40d586:	51                   	push   %ecx
40d587:	50                   	push   %eax
40d588:	56                   	push   %esi
40d589:	e8 e2 c7 ff ff       	call   0x409d70
40d58e:	83 c4 10             	add    $0x10,%esp
40d591:	8b 95 64 ff ff ff    	mov    -0x9c(%ebp),%edx
40d597:	52                   	push   %edx
40d598:	56                   	push   %esi
40d599:	e8 52 97 00 00       	call   0x416cf0
40d59e:	8b 86 7c 0b 00 00    	mov    0xb7c(%esi),%eax
40d5a4:	8b 8e 78 0b 00 00    	mov    0xb78(%esi),%ecx
40d5aa:	68 ff ff 00 00       	push   $0xffff
40d5af:	50                   	push   %eax
40d5b0:	51                   	push   %ecx
40d5b1:	8d 95 d8 fa ff ff    	lea    -0x528(%ebp),%edx
40d5b7:	52                   	push   %edx
40d5b8:	53                   	push   %ebx
40d5b9:	56                   	push   %esi
40d5ba:	e8 d1 85 00 00       	call   0x415b90
40d5bf:	83 c4 20             	add    $0x20,%esp
40d5c2:	8b 85 5c fd ff ff    	mov    -0x2a4(%ebp),%eax
40d5c8:	50                   	push   %eax
40d5c9:	56                   	push   %esi
40d5ca:	e8 71 ad 00 00       	call   0x418340
40d5cf:	83 c4 08             	add    $0x8,%esp
40d5d2:	5f                   	pop    %edi
40d5d3:	5e                   	pop    %esi
40d5d4:	5b                   	pop    %ebx
40d5d5:	8b e5                	mov    %ebp,%esp
40d5d7:	5d                   	pop    %ebp
40d5d8:	c3                   	ret
40d5d9:	6a 3f                	push   $0x3f
40d5db:	8d 8d 05 fd ff ff    	lea    -0x2fb(%ebp),%ecx
40d5e1:	53                   	push   %ebx
40d5e2:	51                   	push   %ecx
40d5e3:	88 9d 04 fd ff ff    	mov    %bl,-0x2fc(%ebp)
40d5e9:	e8 f2 ad 00 00       	call   0x4183e0
40d5ee:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
40d5f4:	6a 20                	push   $0x20
40d5f6:	8d 95 04 fd ff ff    	lea    -0x2fc(%ebp),%edx