46b2e4:	50                   	push   %eax
46b2e5:	8d 45 f8             	lea    -0x8(%ebp),%eax
46b2e8:	50                   	push   %eax
46b2e9:	8d 85 c8 fd ff ff    	lea    -0x238(%ebp),%eax
46b2ef:	50                   	push   %eax
46b2f0:	56                   	push   %esi
46b2f1:	51                   	push   %ecx
46b2f2:	51                   	push   %ecx
46b2f3:	8d 45 c8             	lea    -0x38(%ebp),%eax
46b2f6:	50                   	push   %eax
46b2f7:	51                   	push   %ecx
46b2f8:	eb 67                	jmp    0x46b361
46b2fa:	8b 45 08             	mov    0x8(%ebp),%eax
46b2fd:	8b 40 04             	mov    0x4(%eax),%eax
46b300:	8b 70 0c             	mov    0xc(%eax),%esi
46b303:	8b ce                	mov    %esi,%ecx
46b305:	75 21                	jne    0x46b328
46b307:	e8 8b e6 f9 ff       	call   0x409997
46b30c:	8b 46 08             	mov    0x8(%esi),%eax
46b30f:	8d 4d f4             	lea    -0xc(%ebp),%ecx
46b312:	51                   	push   %ecx
46b313:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46b316:	51                   	push   %ecx
46b317:	8d 8d c8 fd ff ff    	lea    -0x238(%ebp),%ecx
46b31d:	51                   	push   %ecx
46b31e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46b321:	51                   	push   %ecx
46b322:	ff 30                	push   (%eax)
46b324:	6a 00                	push   $0x0
46b326:	eb 33                	jmp    0x46b35b
46b328:	e8 6a e6 f9 ff       	call   0x409997
46b32d:	8b 46 08             	mov    0x8(%esi),%eax
46b330:	8b 38                	mov    (%eax),%edi
46b332:	8b 45 08             	mov    0x8(%ebp),%eax
46b335:	8b 40 04             	mov    0x4(%eax),%eax
46b338:	8b 70 10             	mov    0x10(%eax),%esi
46b33b:	8b ce                	mov    %esi,%ecx
46b33d:	e8 55 e6 f9 ff       	call   0x409997
46b342:	8b 46 08             	mov    0x8(%esi),%eax
46b345:	8d 4d f4             	lea    -0xc(%ebp),%ecx
46b348:	51                   	push   %ecx
46b349:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46b34c:	51                   	push   %ecx
46b34d:	8d 8d c8 fd ff ff    	lea    -0x238(%ebp),%ecx
46b353:	51                   	push   %ecx
46b354:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46b357:	51                   	push   %ecx
46b358:	57                   	push   %edi
46b359:	ff 30                	push   (%eax)
46b35b:	8d 45 c8             	lea    -0x38(%ebp),%eax
46b35e:	50                   	push   %eax
46b35f:	6a 00                	push   $0x0
46b361:	ff 15 f8 f3 48 00    	call   *0x48f3f8
46b367:	8b 7d 0c             	mov    0xc(%ebp),%edi
46b36a:	8b f0                	mov    %eax,%esi
46b36c:	85 f6                	test   %esi,%esi
46b36e:	74 74                	je     0x46b3e4
46b370:	8b cf                	mov    %edi,%ecx
46b372:	e8 a9 e6 f9 ff       	call   0x409a20
46b377:	33 c9                	xor    %ecx,%ecx
46b379:	33 c0                	xor    %eax,%eax
46b37b:	41                   	inc    %ecx
46b37c:	89 07                	mov    %eax,(%edi)
46b37e:	89 4f 0c             	mov    %ecx,0xc(%edi)
46b381:	83 fe 05             	cmp    $0x5,%esi
46b384:	75 05                	jne    0x46b38b
46b386:	50                   	push   %eax
46b387:	6a 02                	push   $0x2
46b389:	eb 4d                	jmp    0x46b3d8
46b38b:	83 fe 55             	cmp    $0x55,%esi
46b38e:	74 45                	je     0x46b3d5
46b390:	81 fe b2 04 00 00    	cmp    $0x4b2,%esi
46b396:	74 3d                	je     0x46b3d5
46b398:	50                   	push   %eax
46b399:	81 fe b0 04 00 00    	cmp    $0x4b0,%esi
46b39f:	75 04                	jne    0x46b3a5
46b3a1:	6a 04                	push   $0x4
46b3a3:	eb 33                	jmp    0x46b3d8
46b3a5:	83 fe 43             	cmp    $0x43,%esi
46b3a8:	75 04                	jne    0x46b3ae
46b3aa:	6a 05                	push   $0x5
46b3ac:	eb 2a                	jmp    0x46b3d8
46b3ae:	8b 03                	mov    (%ebx),%eax
46b3b0:	83 fe 56             	cmp    $0x56,%esi
46b3b3:	75 04                	jne    0x46b3b9
46b3b5:	6a 06                	push   $0x6
46b3b7:	eb 21                	jmp    0x46b3da
46b3b9:	51                   	push   %ecx
46b3ba:	8b 48 04             	mov    0x4(%eax),%ecx
46b3bd:	03 cb                	add    %ebx,%ecx
46b3bf:	e8 df b6 fe ff       	call   0x456aa3
46b3c4:	8b 03                	mov    (%ebx),%eax
46b3c6:	6a 00                	push   $0x0
46b3c8:	56                   	push   %esi
46b3c9:	8b 48 04             	mov    0x4(%eax),%ecx
46b3cc:	03 cb                	add    %ebx,%ecx
46b3ce:	e8 8e 4b fb ff       	call   0x41ff61
46b3d3:	eb 0f                	jmp    0x46b3e4
46b3d5:	50                   	push   %eax
46b3d6:	6a 03                	push   $0x3
46b3d8:	8b 03                	mov    (%ebx),%eax
46b3da:	8b 48 04             	mov    0x4(%eax),%ecx
46b3dd:	03 cb                	add    %ebx,%ecx
46b3df:	e8 bf b6 fe ff       	call   0x456aa3
46b3e4:	8b 75 e8             	mov    -0x18(%ebp),%esi
46b3e7:	6a 2a                	push   $0x2a
46b3e9:	58                   	pop    %eax
46b3ea:	66 39 06             	cmp    %ax,(%esi)
46b3ed:	75 1e                	jne    0x46b40d
46b3ef:	f7 45 f4 00 01 00 00 	testl  $0x100,-0xc(%ebp)
46b3f6:	8b cf                	mov    %edi,%ecx
46b3f8:	74 09                	je     0x46b403
46b3fa:	8d 85 c8 fd ff ff    	lea    -0x238(%ebp),%eax
46b400:	50                   	push   %eax
46b401:	eb 05                	jmp    0x46b408
46b403:	68 10 f9 48 00       	push   $0x48f910
46b408:	e8 eb e7 f9 ff       	call   0x409bf8
46b40d:	56                   	push   %esi
46b40e:	e8 59 5c fb ff       	call   0x42106c
46b413:	ff 75 ec             	push   -0x14(%ebp)
46b416:	e8 51 5c fb ff       	call   0x42106c
46b41b:	59                   	pop    %ecx
46b41c:	59                   	pop    %ecx
46b41d:	5f                   	pop    %edi
46b41e:	5e                   	pop    %esi
46b41f:	33 c0                	xor    %eax,%eax
46b421:	5b                   	pop    %ebx
46b422:	8b e5                	mov    %ebp,%esp
46b424:	5d                   	pop    %ebp
46b425:	c2 08 00             	ret    $0x8
46b428:	55                   	push   %ebp
46b429:	8b ec                	mov    %esp,%ebp
46b42b:	8b 45 08             	mov    0x8(%ebp),%eax
46b42e:	53                   	push   %ebx
46b42f:	56                   	push   %esi
46b430:	57                   	push   %edi
46b431:	8b 40 04             	mov    0x4(%eax),%eax
46b434:	8b f9                	mov    %ecx,%edi
46b436:	8b 30                	mov    (%eax),%esi
46b438:	8b ce                	mov    %esi,%ecx
46b43a:	e8 58 e5 f9 ff       	call   0x409997
46b43f:	8b 46 08             	mov    0x8(%esi),%eax
46b442:	6a 01                	push   $0x1
46b444:	6a 01                	push   $0x1
46b446:	ff 30                	push   (%eax)
46b448:	ff 15 fc f3 48 00    	call   *0x48f3fc
46b44e:	8b d8                	mov    %eax,%ebx
46b450:	85 db                	test   %ebx,%ebx
46b452:	74 23                	je     0x46b477
46b454:	8b 75 0c             	mov    0xc(%ebp),%esi
46b457:	8b ce                	mov    %esi,%ecx
46b459:	e8 c2 e5 f9 ff       	call   0x409a20
46b45e:	83 26 00             	andl   $0x0,(%esi)
46b461:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
46b468:	8b 07                	mov    (%edi),%eax
46b46a:	6a 00                	push   $0x0
46b46c:	53                   	push   %ebx
46b46d:	8b 48 04             	mov    0x4(%eax),%ecx
46b470:	03 cf                	add    %edi,%ecx
46b472:	e8 ea 4a fb ff       	call   0x41ff61
46b477:	6a 0a                	push   $0xa
46b479:	ff 15 7c f1 48 00    	call   *0x48f17c
46b47f:	5f                   	pop    %edi
46b480:	5e                   	pop    %esi
46b481:	33 c0                	xor    %eax,%eax
46b483:	5b                   	pop    %ebx
46b484:	5d                   	pop    %ebp
46b485:	c2 08 00             	ret    $0x8
46b488:	55                   	push   %ebp
46b489:	8b ec                	mov    %esp,%ebp
46b48b:	81 ec 04 08 00 00    	sub    $0x804,%esp
46b491:	8b 45 08             	mov    0x8(%ebp),%eax
46b494:	56                   	push   %esi
46b495:	57                   	push   %edi
46b496:	c7 45 fc 00 04 00 00 	movl   $0x400,-0x4(%ebp)
46b49d:	8b f9                	mov    %ecx,%edi
46b49f:	8b 40 04             	mov    0x4(%eax),%eax
46b4a2:	8b 30                	mov    (%eax),%esi
46b4a4:	8b ce                	mov    %esi,%ecx
46b4a6:	e8 ec e4 f9 ff       	call   0x409997
46b4ab:	8b 46 08             	mov    0x8(%esi),%eax
46b4ae:	8d 4d fc             	lea    -0x4(%ebp),%ecx
46b4b1:	51                   	push   %ecx
46b4b2:	8d 8d fc f7 ff ff    	lea    -0x804(%ebp),%ecx
46b4b8:	51                   	push   %ecx
46b4b9:	ff 30                	push   (%eax)
46b4bb:	ff 15 00 f4 48 00    	call   *0x48f400
46b4c1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46b4c4:	8b f0                	mov    %eax,%esi
46b4c6:	85 f6                	test   %esi,%esi
46b4c8:	74 2b                	je     0x46b4f5
46b4ca:	68 10 f9 48 00       	push   $0x48f910
46b4cf:	e8 24 e7 f9 ff       	call   0x409bf8
46b4d4:	8b 07                	mov    (%edi),%eax
46b4d6:	6a 00                	push   $0x0
46b4d8:	6a 01                	push   $0x1
46b4da:	8b 48 04             	mov    0x4(%eax),%ecx
46b4dd:	03 cf                	add    %edi,%ecx
46b4df:	e8 bf b5 fe ff       	call   0x456aa3
46b4e4:	8b 07                	mov    (%edi),%eax
46b4e6:	6a 00                	push   $0x0
46b4e8:	56                   	push   %esi
46b4e9:	8b 48 04             	mov    0x4(%eax),%ecx
46b4ec:	03 cf                	add    %edi,%ecx
46b4ee:	e8 6e 4a fb ff       	call   0x41ff61
46b4f3:	eb 0c                	jmp    0x46b501
46b4f5:	8d 85 fc f7 ff ff    	lea    -0x804(%ebp),%eax
46b4fb:	50                   	push   %eax
46b4fc:	e8 f7 e6 f9 ff       	call   0x409bf8
46b501:	5f                   	pop    %edi
46b502:	33 c0                	xor    %eax,%eax
46b504:	5e                   	pop    %esi
46b505:	8b e5                	mov    %ebp,%esp
46b507:	5d                   	pop    %ebp
46b508:	c2 08 00             	ret    $0x8
46b50b:	55                   	push   %ebp
46b50c:	8b ec                	mov    %esp,%ebp
46b50e:	83 ec 10             	sub    $0x10,%esp
46b511:	53                   	push   %ebx
46b512:	56                   	push   %esi
46b513:	57                   	push   %edi
46b514:	6a 01                	push   $0x1
46b516:	ff 15 a4 f1 48 00    	call   *0x48f1a4
46b51c:	8b 5d 08             	mov    0x8(%ebp),%ebx
46b51f:	8b f0                	mov    %eax,%esi
46b521:	8b 43 04             	mov    0x4(%ebx),%eax
46b524:	8b 38                	mov    (%eax),%edi
46b526:	8b cf                	mov    %edi,%ecx
46b528:	e8 6a e4 f9 ff       	call   0x409997
46b52d:	8b 4f 08             	mov    0x8(%edi),%ecx
46b530:	8b 01                	mov    (%ecx),%eax
46b532:	89 45 f0             	mov    %eax,-0x10(%ebp)
46b535:	8b 41 04             	mov    0x4(%ecx),%eax
46b538:	89 45 f4             	mov    %eax,-0xc(%ebp)
46b53b:	8b 41 08             	mov    0x8(%ecx),%eax
46b53e:	89 45 f8             	mov    %eax,-0x8(%ebp)
46b541:	8b 41 0c             	mov    0xc(%ecx),%eax
46b544:	8d 4d f0             	lea    -0x10(%ebp),%ecx
46b547:	89 45 fc             	mov    %eax,-0x4(%ebp)
46b54a:	ff 00                	incl   (%eax)
46b54c:	e8 17 8c ff ff       	call   0x464168
46b551:	8b 43 04             	mov    0x4(%ebx),%eax
46b554:	8b 78 04             	mov    0x4(%eax),%edi
46b557:	8b cf                	mov    %edi,%ecx
46b559:	e8 39 e4 f9 ff       	call   0x409997
46b55e:	8b 47 08             	mov    0x8(%edi),%eax
46b561:	ff 30                	push   (%eax)
46b563:	ff 75 f0             	push   -0x10(%ebp)
46b566:	ff 15 c8 f2 48 00    	call   *0x48f2c8
46b56c:	85 c0                	test   %eax,%eax
46b56e:	75 14                	jne    0x46b584
46b570:	8b 7d 0c             	mov    0xc(%ebp),%edi
46b573:	8b cf                	mov    %edi,%ecx
46b575:	e8 a6 e4 f9 ff       	call   0x409a20
46b57a:	83 27 00             	andl   $0x0,(%edi)
46b57d:	c7 47 0c 01 00 00 00 	movl   $0x1,0xc(%edi)
46b584:	8d 4d f0             	lea    -0x10(%ebp),%ecx
46b587:	e8 d8 a4 f9 ff       	call   0x405a64
46b58c:	56                   	push   %esi
46b58d:	ff 15 a4 f1 48 00    	call   *0x48f1a4
46b593:	5f                   	pop    %edi
46b594:	5e                   	pop    %esi
46b595:	33 c0                	xor    %eax,%eax
46b597:	5b                   	pop    %ebx
46b598:	8b e5                	mov    %ebp,%esp
46b59a:	5d                   	pop    %ebp
46b59b:	c2 08 00             	ret    $0x8
46b59e:	55                   	push   %ebp
46b59f:	8b ec                	mov    %esp,%ebp
46b5a1:	83 ec 30             	sub    $0x30,%esp
46b5a4:	53                   	push   %ebx
46b5a5:	56                   	push   %esi
46b5a6:	57                   	push   %edi
46b5a7:	33 ff                	xor    %edi,%edi
46b5a9:	89 4d fc             	mov    %ecx,-0x4(%ebp)
46b5ac:	47                   	inc    %edi
46b5ad:	57                   	push   %edi
46b5ae:	ff 15 a4 f1 48 00    	call   *0x48f1a4
46b5b4:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46b5b7:	8b f0                	mov    %eax,%esi
46b5b9:	8b cb                	mov    %ebx,%ecx
46b5bb:	e8 60 e4 f9 ff       	call   0x409a20
46b5c0:	8b 45 08             	mov    0x8(%ebp),%eax
46b5c3:	83 23 00             	andl   $0x0,(%ebx)
46b5c6:	89 7b 0c             	mov    %edi,0xc(%ebx)
46b5c9:	8b 40 04             	mov    0x4(%eax),%eax
46b5cc:	8b 38                	mov    (%eax),%edi
46b5ce:	8b cf                	mov    %edi,%ecx
46b5d0:	e8 c2 e3 f9 ff       	call   0x409997
46b5d5:	8b 4f 08             	mov    0x8(%edi),%ecx
46b5d8:	8b 01                	mov    (%ecx),%eax
46b5da:	89 45 d0             	mov    %eax,-0x30(%ebp)
46b5dd:	8b 41 04             	mov    0x4(%ecx),%eax
46b5e0:	89 45 d4             	mov    %eax,-0x2c(%ebp)
46b5e3:	8b 41 08             	mov    0x8(%ecx),%eax
46b5e6:	89 45 d8             	mov    %eax,-0x28(%ebp)
46b5e9:	8b 41 0c             	mov    0xc(%ecx),%eax
46b5ec:	8d 4d d0             	lea    -0x30(%ebp),%ecx
46b5ef:	89 45 dc             	mov    %eax,-0x24(%ebp)
46b5f2:	ff 00                	incl   (%eax)
46b5f4:	e8 6f 8b ff ff       	call   0x464168
46b5f9:	8d 45 e8             	lea    -0x18(%ebp),%eax
46b5fc:	50                   	push   %eax
46b5fd:	8d 45 e0             	lea    -0x20(%ebp),%eax
46b600:	50                   	push   %eax
46b601:	8d 45 f0             	lea    -0x10(%ebp),%eax
46b604:	50                   	push   %eax
46b605:	ff 75 d0             	push   -0x30(%ebp)
46b608:	ff 15 bc f2 48 00    	call   *0x48f2bc
46b60e:	85 c0                	test   %eax,%eax
46b610:	74 27                	je     0x46b639
46b612:	df 6d f0             	fildll -0x10(%ebp)
46b615:	8b cb                	mov    %ebx,%ecx
46b617:	dd 5d f8             	fstpl  -0x8(%ebp)
46b61a:	dd 45 f8             	fldl   -0x8(%ebp)
46b61d:	dc 0d a8 ba 4b 00    	fmull  0x4bbaa8
46b623:	dd 5d f8             	fstpl  -0x8(%ebp)
46b626:	e8 f5 e3 f9 ff       	call   0x409a20
46b62b:	dd 45 f8             	fldl   -0x8(%ebp)
46b62e:	dd 1b                	fstpl  (%ebx)
46b630:	c7 43 0c 03 00 00 00 	movl   $0x3,0xc(%ebx)
46b637:	eb 13                	jmp    0x46b64c
46b639:	8b 55 fc             	mov    -0x4(%ebp),%edx
46b63c:	6a 00                	push   $0x0
46b63e:	6a 01                	push   $0x1
46b640:	8b 02                	mov    (%edx),%eax
46b642:	8b 48 04             	mov    0x4(%eax),%ecx
46b645:	03 ca                	add    %edx,%ecx
46b647:	e8 57 b4 fe ff       	call   0x456aa3
46b64c:	8d 4d d0             	lea    -0x30(%ebp),%ecx
46b64f:	e8 10 a4 f9 ff       	call   0x405a64
46b654:	56                   	push   %esi
46b655:	ff 15 a4 f1 48 00    	call   *0x48f1a4
46b65b:	5f                   	pop    %edi
46b65c:	5e                   	pop    %esi
46b65d:	33 c0                	xor    %eax,%eax
46b65f:	5b                   	pop    %ebx
46b660:	8b e5                	mov    %ebp,%esp
46b662:	5d                   	pop    %ebp
46b663:	c2 08 00             	ret    $0x8
46b666:	55                   	push   %ebp
46b667:	8b ec                	mov    %esp,%ebp
46b669:	83 ec 30             	sub    $0x30,%esp
46b66c:	53                   	push   %ebx
46b66d:	56                   	push   %esi
46b66e:	57                   	push   %edi
46b66f:	33 ff                	xor    %edi,%edi
46b671:	89 4d fc             	mov    %ecx,-0x4(%ebp)
46b674:	47                   	inc    %edi
46b675:	57                   	push   %edi