40f2ca:	68 4d 02 00 00       	push   $0x24d
40f2cf:	e9 aa 01 00 00       	jmp    0x40f47e
40f2d4:	50                   	push   %eax
40f2d5:	ff 15 b4 60 41 00    	call   *0x4160b4
40f2db:	8b 4d 08             	mov    0x8(%ebp),%ecx
40f2de:	56                   	push   %esi
40f2df:	8b 41 04             	mov    0x4(%ecx),%eax
40f2e2:	50                   	push   %eax
40f2e3:	8b 08                	mov    (%eax),%ecx
40f2e5:	8b 59 1c             	mov    0x1c(%ecx),%ebx
40f2e8:	8b cb                	mov    %ebx,%ecx
40f2ea:	ff 15 28 63 41 00    	call   *0x416328
40f2f0:	ff d3                	call   *%ebx
40f2f2:	8b d8                	mov    %eax,%ebx
40f2f4:	85 db                	test   %ebx,%ebx
40f2f6:	79 6f                	jns    0x40f367
40f2f8:	53                   	push   %ebx
40f2f9:	68 bc 3f 40 00       	push   $0x403fbc
40f2fe:	68 64 02 00 00       	push   $0x264
40f303:	e9 76 01 00 00       	jmp    0x40f47e
40f308:	6a 00                	push   $0x0
40f30a:	68 00 04 00 00       	push   $0x400
40f30f:	56                   	push   %esi
40f310:	ff 74 24 18          	push   0x18(%esp)
40f314:	ff 15 88 61 41 00    	call   *0x416188
40f31a:	83 f8 01             	cmp    $0x1,%eax
40f31d:	75 48                	jne    0x40f367
40f31f:	8b 45 08             	mov    0x8(%ebp),%eax
40f322:	8b 48 04             	mov    0x4(%eax),%ecx
40f325:	85 c9                	test   %ecx,%ecx
40f327:	75 15                	jne    0x40f33e
40f329:	b8 ff ff 00 80       	mov    $0x8000ffff,%eax
40f32e:	50                   	push   %eax
40f32f:	68 bc 3f 40 00       	push   $0x403fbc
40f334:	68 76 02 00 00       	push   $0x276
40f339:	e9 2d fe ff ff       	jmp    0x40f16b
40f33e:	8b 01                	mov    (%ecx),%eax
40f340:	57                   	push   %edi
40f341:	6a 00                	push   $0x0
40f343:	51                   	push   %ecx
40f344:	8b 58 20             	mov    0x20(%eax),%ebx
40f347:	8b cb                	mov    %ebx,%ecx
40f349:	ff 15 28 63 41 00    	call   *0x416328
40f34f:	ff d3                	call   *%ebx
40f351:	8b d8                	mov    %eax,%ebx
40f353:	85 db                	test   %ebx,%ebx
40f355:	79 10                	jns    0x40f367
40f357:	53                   	push   %ebx
40f358:	68 bc 3f 40 00       	push   $0x403fbc
40f35d:	68 7b 02 00 00       	push   $0x27b
40f362:	e9 17 01 00 00       	jmp    0x40f47e
40f367:	68 60 3f 40 00       	push   $0x403f60
40f36c:	68 82 02 00 00       	push   $0x282
40f371:	e9 78 01 00 00       	jmp    0x40f4ee
40f376:	8b 4d 08             	mov    0x8(%ebp),%ecx
40f379:	e8 94 e8 ff ff       	call   0x40dc12
40f37e:	e9 75 01 00 00       	jmp    0x40f4f8
40f383:	68 60 3f 40 00       	push   $0x403f60
40f388:	68 80 01 00 00       	push   $0x180
40f38d:	68 f8 2a 40 00       	push   $0x402af8
40f392:	e8 86 1b 00 00       	call   0x410f1d
40f397:	8b 45 08             	mov    0x8(%ebp),%eax
40f39a:	8b 48 04             	mov    0x4(%eax),%ecx
40f39d:	85 c9                	test   %ecx,%ecx
40f39f:	75 15                	jne    0x40f3b6
40f3a1:	b8 ff ff 00 80       	mov    $0x8000ffff,%eax
40f3a6:	50                   	push   %eax
40f3a7:	68 bc 3f 40 00       	push   $0x403fbc
40f3ac:	68 8a 01 00 00       	push   $0x18a
40f3b1:	e9 b5 fd ff ff       	jmp    0x40f16b
40f3b6:	8b 01                	mov    (%ecx),%eax
40f3b8:	8d 54 24 18          	lea    0x18(%esp),%edx
40f3bc:	52                   	push   %edx
40f3bd:	51                   	push   %ecx
40f3be:	8b 58 24             	mov    0x24(%eax),%ebx
40f3c1:	8b cb                	mov    %ebx,%ecx
40f3c3:	ff 15 28 63 41 00    	call   *0x416328
40f3c9:	ff d3                	call   *%ebx
40f3cb:	8b d8                	mov    %eax,%ebx
40f3cd:	85 db                	test   %ebx,%ebx
40f3cf:	0f 88 29 01 00 00    	js     0x40f4fe
40f3d5:	ff 74 24 18          	push   0x18(%esp)
40f3d9:	bb 60 3f 40 00       	mov    $0x403f60,%ebx
40f3de:	68 93 01 00 00       	push   $0x193
40f3e3:	53                   	push   %ebx
40f3e4:	51                   	push   %ecx
40f3e5:	e8 9c 1a 00 00       	call   0x410e86
40f3ea:	8b 44 24 18          	mov    0x18(%esp),%eax
40f3ee:	83 e8 04             	sub    $0x4,%eax
40f3f1:	74 36                	je     0x40f429
40f3f3:	83 e8 01             	sub    $0x1,%eax
40f3f6:	0f 85 ec 00 00 00    	jne    0x40f4e8
40f3fc:	53                   	push   %ebx
40f3fd:	68 de 01 00 00       	push   $0x1de
40f402:	68 f8 2a 40 00       	push   $0x402af8
40f407:	e8 11 1b 00 00       	call   0x410f1d
40f40c:	8b 4d 08             	mov    0x8(%ebp),%ecx
40f40f:	e8 fe e7 ff ff       	call   0x40dc12
40f414:	8b 4d 08             	mov    0x8(%ebp),%ecx
40f417:	6a 00                	push   $0x0
40f419:	e8 0b f3 ff ff       	call   0x40e729
40f41e:	53                   	push   %ebx
40f41f:	68 e8 01 00 00       	push   $0x1e8
40f424:	e9 b5 00 00 00       	jmp    0x40f4de
40f429:	53                   	push   %ebx
40f42a:	68 a8 01 00 00       	push   $0x1a8
40f42f:	68 f8 2a 40 00       	push   $0x402af8
40f434:	e8 e4 1a 00 00       	call   0x410f1d
40f439:	8b 45 08             	mov    0x8(%ebp),%eax
40f43c:	8b 48 04             	mov    0x4(%eax),%ecx
40f43f:	85 c9                	test   %ecx,%ecx
40f441:	75 15                	jne    0x40f458
40f443:	b8 ff ff 00 80       	mov    $0x8000ffff,%eax
40f448:	50                   	push   %eax
40f449:	68 bc 3f 40 00       	push   $0x403fbc
40f44e:	68 b6 01 00 00       	push   $0x1b6
40f453:	e9 13 fd ff ff       	jmp    0x40f16b
40f458:	8b 01                	mov    (%ecx),%eax
40f45a:	8d 54 24 10          	lea    0x10(%esp),%edx
40f45e:	52                   	push   %edx
40f45f:	51                   	push   %ecx
40f460:	8b 58 14             	mov    0x14(%eax),%ebx
40f463:	8b cb                	mov    %ebx,%ecx
40f465:	ff 15 28 63 41 00    	call   *0x416328
40f46b:	ff d3                	call   *%ebx
40f46d:	8b d8                	mov    %eax,%ebx
40f46f:	85 db                	test   %ebx,%ebx
40f471:	79 18                	jns    0x40f48b
40f473:	53                   	push   %ebx
40f474:	68 bc 3f 40 00       	push   $0x403fbc
40f479:	68 bc 01 00 00       	push   $0x1bc
40f47e:	68 60 3f 40 00       	push   $0x403f60
40f483:	51                   	push   %ecx
40f484:	e8 49 1b 00 00       	call   0x410fd2
40f489:	eb 6f                	jmp    0x40f4fa
40f48b:	83 7c 24 10 00       	cmpl   $0x0,0x10(%esp)
40f490:	75 41                	jne    0x40f4d3
40f492:	33 c0                	xor    %eax,%eax
40f494:	50                   	push   %eax
40f495:	50                   	push   %eax
40f496:	ff 75 08             	push   0x8(%ebp)
40f499:	68 f0 f5 40 00       	push   $0x40f5f0
40f49e:	50                   	push   %eax
40f49f:	50                   	push   %eax
40f4a0:	ff 15 f0 60 41 00    	call   *0x4160f0
40f4a6:	85 c0                	test   %eax,%eax
40f4a8:	75 22                	jne    0x40f4cc
40f4aa:	ff 15 68 61 41 00    	call   *0x416168
40f4b0:	8b d8                	mov    %eax,%ebx
40f4b2:	85 db                	test   %ebx,%ebx
40f4b4:	7e 09                	jle    0x40f4bf
40f4b6:	0f b7 db             	movzwl %bx,%ebx
40f4b9:	81 cb 00 00 07 80    	or     $0x80070000,%ebx
40f4bf:	53                   	push   %ebx
40f4c0:	68 bc 3f 40 00       	push   $0x403fbc
40f4c5:	68 d1 01 00 00       	push   $0x1d1
40f4ca:	eb b2                	jmp    0x40f47e
40f4cc:	50                   	push   %eax
40f4cd:	ff 15 b4 60 41 00    	call   *0x4160b4
40f4d3:	bb 60 3f 40 00       	mov    $0x403f60,%ebx
40f4d8:	53                   	push   %ebx
40f4d9:	68 d9 01 00 00       	push   $0x1d9
40f4de:	68 68 2c 40 00       	push   $0x402c68
40f4e3:	e8 35 1a 00 00       	call   0x410f1d
40f4e8:	53                   	push   %ebx
40f4e9:	68 f5 01 00 00       	push   $0x1f5
40f4ee:	68 68 2c 40 00       	push   $0x402c68
40f4f3:	e8 25 1a 00 00       	call   0x410f1d
40f4f8:	33 db                	xor    %ebx,%ebx
40f4fa:	85 db                	test   %ebx,%ebx
40f4fc:	79 0a                	jns    0x40f508
40f4fe:	8b 4d 08             	mov    0x8(%ebp),%ecx
40f501:	6a 01                	push   $0x1
40f503:	e8 21 f2 ff ff       	call   0x40e729
40f508:	57                   	push   %edi
40f509:	ff 15 b8 61 41 00    	call   *0x4161b8
40f50f:	56                   	push   %esi
40f510:	ff 15 b8 61 41 00    	call   *0x4161b8
40f516:	ff 74 24 0c          	push   0xc(%esp)
40f51a:	ff 15 b8 61 41 00    	call   *0x4161b8
40f520:	6a 00                	push   $0x0
40f522:	ff 15 b8 61 41 00    	call   *0x4161b8
40f528:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
40f52c:	e8 be 74 ff ff       	call   0x4069ef
40f531:	5f                   	pop    %edi
40f532:	5e                   	pop    %esi
40f533:	8b c3                	mov    %ebx,%eax
40f535:	5b                   	pop    %ebx
40f536:	8b e5                	mov    %ebp,%esp
40f538:	5d                   	pop    %ebp
40f539:	c2 24 00             	ret    $0x24
40f53c:	b9 0e 00 07 80       	mov    $0x8007000e,%ecx
40f541:	e8 a9 56 ff ff       	call   0x404bef
40f546:	cc                   	int3
40f547:	8b ff                	mov    %edi,%edi
40f549:	55                   	push   %ebp
40f54a:	8b ec                	mov    %esp,%ebp
40f54c:	53                   	push   %ebx
40f54d:	8b 5d 08             	mov    0x8(%ebp),%ebx
40f550:	56                   	push   %esi
40f551:	57                   	push   %edi
40f552:	8b f9                	mov    %ecx,%edi
40f554:	85 db                	test   %ebx,%ebx
40f556:	75 12                	jne    0x40f56a
40f558:	be 57 00 07 80       	mov    $0x80070057,%esi
40f55d:	56                   	push   %esi
40f55e:	68 ec 3f 40 00       	push   $0x403fec
40f563:	68 af 02 00 00       	push   $0x2af
40f568:	eb 72                	jmp    0x40f5dc
40f56a:	8b 4f 0c             	mov    0xc(%edi),%ecx
40f56d:	85 c9                	test   %ecx,%ecx
40f56f:	74 30                	je     0x40f5a1
40f571:	83 7f 10 00          	cmpl   $0x0,0x10(%edi)
40f575:	74 2a                	je     0x40f5a1
40f577:	8b 01                	mov    (%ecx),%eax
40f579:	ff 77 10             	push   0x10(%edi)
40f57c:	51                   	push   %ecx
40f57d:	8b 70 18             	mov    0x18(%eax),%esi
40f580:	8b ce                	mov    %esi,%ecx
40f582:	ff 15 28 63 41 00    	call   *0x416328
40f588:	ff d6                	call   *%esi
40f58a:	8b 47 0c             	mov    0xc(%edi),%eax
40f58d:	83 67 10 00          	andl   $0x0,0x10(%edi)
40f591:	50                   	push   %eax
40f592:	8b 08                	mov    (%eax),%ecx
40f594:	8b 71 08             	mov    0x8(%ecx),%esi
40f597:	8b ce                	mov    %esi,%ecx
40f599:	ff 15 28 63 41 00    	call   *0x416328
40f59f:	ff d6                	call   *%esi
40f5a1:	89 5f 0c             	mov    %ebx,0xc(%edi)
40f5a4:	8b 03                	mov    (%ebx),%eax
40f5a6:	53                   	push   %ebx
40f5a7:	8b 70 04             	mov    0x4(%eax),%esi
40f5aa:	8b ce                	mov    %esi,%ecx
40f5ac:	ff 15 28 63 41 00    	call   *0x416328
40f5b2:	ff d6                	call   *%esi
40f5b4:	8b 4f 0c             	mov    0xc(%edi),%ecx
40f5b7:	8d 47 10             	lea    0x10(%edi),%eax
40f5ba:	50                   	push   %eax
40f5bb:	57                   	push   %edi
40f5bc:	51                   	push   %ecx
40f5bd:	8b 31                	mov    (%ecx),%esi
40f5bf:	8b 4e 14             	mov    0x14(%esi),%ecx
40f5c2:	ff 15 28 63 41 00    	call   *0x416328
40f5c8:	ff 56 14             	call   *0x14(%esi)
40f5cb:	8b f0                	mov    %eax,%esi
40f5cd:	85 f6                	test   %esi,%esi
40f5cf:	79 16                	jns    0x40f5e7
40f5d1:	56                   	push   %esi
40f5d2:	68 ec 3f 40 00       	push   $0x403fec
40f5d7:	68 bf 02 00 00       	push   $0x2bf
40f5dc:	68 60 3f 40 00       	push   $0x403f60
40f5e1:	51                   	push   %ecx
40f5e2:	e8 eb 19 00 00       	call   0x410fd2
40f5e7:	5f                   	pop    %edi
40f5e8:	8b c6                	mov    %esi,%eax
40f5ea:	5e                   	pop    %esi
40f5eb:	5b                   	pop    %ebx
40f5ec:	5d                   	pop    %ebp
40f5ed:	c2 04 00             	ret    $0x4
40f5f0:	6a 18                	push   $0x18
40f5f2:	b8 78 30 41 00       	mov    $0x413078,%eax
40f5f7:	e8 62 2f 00 00       	call   0x41255e
40f5fc:	33 db                	xor    %ebx,%ebx
40f5fe:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
40f601:	89 5d f0             	mov    %ebx,-0x10(%ebp)
40f604:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40f607:	89 5d e8             	mov    %ebx,-0x18(%ebp)
40f60a:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40f60d:	8b 7d 08             	mov    0x8(%ebp),%edi
40f610:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
40f614:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40f617:	85 ff                	test   %edi,%edi
40f619:	75 1f                	jne    0x40f63a
40f61b:	68 03 40 00 80       	push   $0x80004003
40f620:	68 1c 40 40 00       	push   $0x40401c
40f625:	68 15 03 00 00       	push   $0x315
40f62a:	68 60 3f 40 00       	push   $0x403f60
40f62f:	51                   	push   %ecx
40f630:	e8 9d 19 00 00       	call   0x410fd2
40f635:	e9 b7 01 00 00       	jmp    0x40f7f1
40f63a:	8d 45 f0             	lea    -0x10(%ebp),%eax
40f63d:	50                   	push   %eax
40f63e:	68 08 2b 40 00       	push   $0x402b08
40f643:	6a 04                	push   $0x4
40f645:	53                   	push   %ebx
40f646:	68 c8 2c 40 00       	push   $0x402cc8
40f64b:	ff 15 20 62 41 00    	call   *0x416220
40f651:	85 c0                	test   %eax,%eax
40f653:	79 10                	jns    0x40f665
40f655:	50                   	push   %eax
40f656:	68 1c 40 40 00       	push   $0x40401c
40f65b:	68 1d 03 00 00       	push   $0x31d
40f660:	e9 20 01 00 00       	jmp    0x40f785
40f665:	8b 4f 04             	mov    0x4(%edi),%ecx
40f668:	85 c9                	test   %ecx,%ecx
40f66a:	75 14                	jne    0x40f680
40f66c:	68 03 40 00 80       	push   $0x80004003
40f671:	68 1c 40 40 00       	push   $0x40401c
40f676:	68 23 03 00 00       	push   $0x323
40f67b:	e9 05 01 00 00       	jmp    0x40f785
40f680:	8b 01                	mov    (%ecx),%eax
40f682:	8d 55 ec             	lea    -0x14(%ebp),%edx
40f685:	52                   	push   %edx
40f686:	51                   	push   %ecx
40f687:	8b 70 10             	mov    0x10(%eax),%esi
40f68a:	8b ce                	mov    %esi,%ecx
40f68c:	ff 15 28 63 41 00    	call   *0x416328
40f692:	ff d6                	call   *%esi
40f694:	85 c0                	test   %eax,%eax
40f696:	79 10                	jns    0x40f6a8
40f698:	50                   	push   %eax
40f699:	68 1c 40 40 00       	push   $0x40401c
40f69e:	68 25 03 00 00       	push   $0x325
40f6a3:	e9 dd 00 00 00       	jmp    0x40f785
40f6a8:	8b 45 f0             	mov    -0x10(%ebp),%eax
40f6ab:	ff 75 ec             	push   -0x14(%ebp)
40f6ae:	50                   	push   %eax
40f6af:	8b 08                	mov    (%eax),%ecx
40f6b1:	8b 71 40             	mov    0x40(%ecx),%esi
40f6b4:	8b ce                	mov    %esi,%ecx
40f6b6:	ff 15 28 63 41 00    	call   *0x416328
40f6bc:	ff d6                	call   *%esi
40f6be:	85 c0                	test   %eax,%eax
40f6c0:	79 10                	jns    0x40f6d2
40f6c2:	50                   	push   %eax
40f6c3:	68 1c 40 40 00       	push   $0x40401c
40f6c8:	68 26 03 00 00       	push   $0x326
40f6cd:	e9 b3 00 00 00       	jmp    0x40f785
40f6d2:	8b 45 f0             	mov    -0x10(%ebp),%eax
40f6d5:	53                   	push   %ebx
40f6d6:	6a 01                	push   $0x1
40f6d8:	6a 01                	push   $0x1
40f6da:	8b 30                	mov    (%eax),%esi
40f6dc:	50                   	push   %eax
40f6dd:	8b 4e 1c             	mov    0x1c(%esi),%ecx
40f6e0:	ff 15 28 63 41 00    	call   *0x416328
40f6e6:	ff 56 1c             	call   *0x1c(%esi)
40f6e9:	85 c0                	test   %eax,%eax
40f6eb:	79 10                	jns    0x40f6fd
40f6ed:	50                   	push   %eax
40f6ee:	68 1c 40 40 00       	push   $0x40401c
40f6f3:	68 33 03 00 00       	push   $0x333
40f6f8:	e9 88 00 00 00       	jmp    0x40f785
40f6fd:	8b 45 f0             	mov    -0x10(%ebp),%eax
40f700:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
40f703:	53                   	push   %ebx
40f704:	51                   	push   %ecx
40f705:	50                   	push   %eax
40f706:	8b 30                	mov    (%eax),%esi