4643f0:	68 80 fb 48 00       	push   $0x48fb80
4643f5:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4643f8:	e8 0e 3a fa ff       	call   0x407e0b
4643fd:	8d 45 ec             	lea    -0x14(%ebp),%eax
464400:	50                   	push   %eax
464401:	8d 4d dc             	lea    -0x24(%ebp),%ecx
464404:	e8 85 38 fa ff       	call   0x407c8e
464409:	8b 4d 08             	mov    0x8(%ebp),%ecx
46440c:	8d 45 dc             	lea    -0x24(%ebp),%eax
46440f:	50                   	push   %eax
464410:	e8 79 38 fa ff       	call   0x407c8e
464415:	8d 4d cc             	lea    -0x34(%ebp),%ecx
464418:	e8 47 16 fa ff       	call   0x405a64
46441d:	8d 4d ac             	lea    -0x54(%ebp),%ecx
464420:	e8 3f 16 fa ff       	call   0x405a64
464425:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
464428:	e8 37 16 fa ff       	call   0x405a64
46442d:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
464430:	e8 2f 16 fa ff       	call   0x405a64
464435:	8d 4d ec             	lea    -0x14(%ebp),%ecx
464438:	e8 27 16 fa ff       	call   0x405a64
46443d:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
464443:	e8 1c 16 fa ff       	call   0x405a64
464448:	8d 4d bc             	lea    -0x44(%ebp),%ecx
46444b:	e8 14 16 fa ff       	call   0x405a64
464450:	8d 4d dc             	lea    -0x24(%ebp),%ecx
464453:	e8 0c 16 fa ff       	call   0x405a64
464458:	5f                   	pop    %edi
464459:	5e                   	pop    %esi
46445a:	5b                   	pop    %ebx
46445b:	8b e5                	mov    %ebp,%esp
46445d:	5d                   	pop    %ebp
46445e:	c3                   	ret
46445f:	55                   	push   %ebp
464460:	8b ec                	mov    %esp,%ebp
464462:	83 ec 10             	sub    $0x10,%esp
464465:	53                   	push   %ebx
464466:	8b 5d 08             	mov    0x8(%ebp),%ebx
464469:	33 c0                	xor    %eax,%eax
46446b:	56                   	push   %esi
46446c:	57                   	push   %edi
46446d:	8b fa                	mov    %edx,%edi
46446f:	89 4d f4             	mov    %ecx,-0xc(%ebp)
464472:	8b cb                	mov    %ebx,%ecx
464474:	89 7d f0             	mov    %edi,-0x10(%ebp)
464477:	8b f0                	mov    %eax,%esi
464479:	89 45 f8             	mov    %eax,-0x8(%ebp)
46447c:	e8 6b 3a fa ff       	call   0x407eec
464481:	68 18 9e 4b 00       	push   $0x4b9e18
464486:	8b cf                	mov    %edi,%ecx
464488:	e8 5f 12 00 00       	call   0x4656ec
46448d:	83 f8 ff             	cmp    $0xffffffff,%eax
464490:	0f 84 8f 00 00 00    	je     0x464525
464496:	56                   	push   %esi
464497:	8b cf                	mov    %edi,%ecx
464499:	e8 82 36 fa ff       	call   0x407b20
46449e:	6a 2a                	push   $0x2a
4644a0:	59                   	pop    %ecx
4644a1:	66 39 08             	cmp    %cx,(%eax)
4644a4:	74 16                	je     0x4644bc
4644a6:	56                   	push   %esi
4644a7:	8b cf                	mov    %edi,%ecx
4644a9:	e8 72 36 fa ff       	call   0x407b20
4644ae:	8b cb                	mov    %ebx,%ecx
4644b0:	0f b7 00             	movzwl (%eax),%eax
4644b3:	50                   	push   %eax
4644b4:	e8 cb 35 fa ff       	call   0x407a84
4644b9:	46                   	inc    %esi
4644ba:	eb da                	jmp    0x464496
4644bc:	8b 7d f8             	mov    -0x8(%ebp),%edi
4644bf:	89 75 fc             	mov    %esi,-0x4(%ebp)
4644c2:	8b 75 f4             	mov    -0xc(%ebp),%esi
4644c5:	57                   	push   %edi
4644c6:	8b ce                	mov    %esi,%ecx
4644c8:	e8 53 36 fa ff       	call   0x407b20
4644cd:	33 c9                	xor    %ecx,%ecx
4644cf:	66 39 08             	cmp    %cx,(%eax)
4644d2:	74 16                	je     0x4644ea
4644d4:	57                   	push   %edi
4644d5:	8b ce                	mov    %esi,%ecx
4644d7:	e8 44 36 fa ff       	call   0x407b20
4644dc:	8b cb                	mov    %ebx,%ecx
4644de:	0f b7 00             	movzwl (%eax),%eax
4644e1:	50                   	push   %eax
4644e2:	e8 9d 35 fa ff       	call   0x407a84
4644e7:	47                   	inc    %edi
4644e8:	eb db                	jmp    0x4644c5
4644ea:	8b 75 fc             	mov    -0x4(%ebp),%esi
4644ed:	8b 7d f0             	mov    -0x10(%ebp),%edi
4644f0:	46                   	inc    %esi
4644f1:	8b cf                	mov    %edi,%ecx
4644f3:	56                   	push   %esi
4644f4:	e8 27 36 fa ff       	call   0x407b20
4644f9:	33 c9                	xor    %ecx,%ecx
4644fb:	66 39 08             	cmp    %cx,(%eax)
4644fe:	74 2d                	je     0x46452d
464500:	56                   	push   %esi
464501:	8b cf                	mov    %edi,%ecx
464503:	e8 18 36 fa ff       	call   0x407b20
464508:	6a 2a                	push   $0x2a
46450a:	59                   	pop    %ecx
46450b:	66 39 08             	cmp    %cx,(%eax)
46450e:	74 e0                	je     0x4644f0
464510:	56                   	push   %esi
464511:	8b cf                	mov    %edi,%ecx
464513:	e8 08 36 fa ff       	call   0x407b20
464518:	8b cb                	mov    %ebx,%ecx
46451a:	0f b7 00             	movzwl (%eax),%eax
46451d:	50                   	push   %eax
46451e:	e8 61 35 fa ff       	call   0x407a84
464523:	eb cb                	jmp    0x4644f0
464525:	57                   	push   %edi
464526:	8b cb                	mov    %ebx,%ecx
464528:	e8 7a 3c fa ff       	call   0x4081a7
46452d:	5f                   	pop    %edi
46452e:	5e                   	pop    %esi
46452f:	5b                   	pop    %ebx
464530:	8b e5                	mov    %ebp,%esp
464532:	5d                   	pop    %ebp
464533:	c3                   	ret
464534:	55                   	push   %ebp
464535:	8b ec                	mov    %esp,%ebp
464537:	81 ec 08 04 00 00    	sub    $0x408,%esp
46453d:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
464543:	53                   	push   %ebx
464544:	bb 00 01 00 00       	mov    $0x100,%ebx
464549:	53                   	push   %ebx
46454a:	50                   	push   %eax
46454b:	51                   	push   %ecx
46454c:	6a 00                	push   $0x0
46454e:	ff 15 b8 f1 48 00    	call   *0x48f1b8
464554:	50                   	push   %eax
464555:	ff 15 04 f6 48 00    	call   *0x48f604
46455b:	53                   	push   %ebx
46455c:	8d 85 f8 fb ff ff    	lea    -0x408(%ebp),%eax
464562:	33 db                	xor    %ebx,%ebx
464564:	50                   	push   %eax
464565:	68 89 13 00 00       	push   $0x1389
46456a:	53                   	push   %ebx
46456b:	ff 15 b8 f1 48 00    	call   *0x48f1b8
464571:	50                   	push   %eax
464572:	ff 15 04 f6 48 00    	call   *0x48f604
464578:	38 5d 0c             	cmp    %bl,0xc(%ebp)
46457b:	74 25                	je     0x4645a2
46457d:	b8 10 f9 48 00       	mov    $0x48f910,%eax
464582:	50                   	push   %eax
464583:	50                   	push   %eax
464584:	8d 85 f8 fb ff ff    	lea    -0x408(%ebp),%eax
46458a:	50                   	push   %eax
46458b:	53                   	push   %ebx
46458c:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
464592:	50                   	push   %eax
464593:	68 e0 9e 4b 00       	push   $0x4b9ee0
464598:	e8 2d f9 fb ff       	call   0x423eca
46459d:	83 c4 18             	add    $0x18,%esp
4645a0:	eb 1a                	jmp    0x4645bc
4645a2:	68 10 10 01 00       	push   $0x11010
4645a7:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
4645ad:	50                   	push   %eax
4645ae:	8d 85 f8 fb ff ff    	lea    -0x408(%ebp),%eax
4645b4:	50                   	push   %eax
4645b5:	53                   	push   %ebx
4645b6:	ff 15 b8 f6 48 00    	call   *0x48f6b8
4645bc:	5b                   	pop    %ebx
4645bd:	8b e5                	mov    %ebp,%esp
4645bf:	5d                   	pop    %ebp
4645c0:	c3                   	ret
4645c1:	55                   	push   %ebp
4645c2:	8b ec                	mov    %esp,%ebp
4645c4:	53                   	push   %ebx
4645c5:	56                   	push   %esi
4645c6:	57                   	push   %edi
4645c7:	33 db                	xor    %ebx,%ebx
4645c9:	8b fa                	mov    %edx,%edi
4645cb:	53                   	push   %ebx
4645cc:	68 80 00 00 02       	push   $0x2000080
4645d1:	6a 03                	push   $0x3
4645d3:	53                   	push   %ebx
4645d4:	6a 01                	push   $0x1
4645d6:	68 00 00 00 40       	push   $0x40000000
4645db:	51                   	push   %ecx
4645dc:	ff 15 d4 f1 48 00    	call   *0x48f1d4
4645e2:	8b f0                	mov    %eax,%esi
4645e4:	83 fe ff             	cmp    $0xffffffff,%esi
4645e7:	75 04                	jne    0x4645ed
4645e9:	32 c0                	xor    %al,%al
4645eb:	eb 26                	jmp    0x464613
4645ed:	39 5d 08             	cmp    %ebx,0x8(%ebp)
4645f0:	75 04                	jne    0x4645f6
4645f2:	57                   	push   %edi
4645f3:	53                   	push   %ebx
4645f4:	eb 0c                	jmp    0x464602
4645f6:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
4645fa:	53                   	push   %ebx
4645fb:	75 04                	jne    0x464601
4645fd:	53                   	push   %ebx
4645fe:	57                   	push   %edi
4645ff:	eb 02                	jmp    0x464603
464601:	57                   	push   %edi
464602:	53                   	push   %ebx
464603:	56                   	push   %esi
464604:	ff 15 fc f1 48 00    	call   *0x48f1fc
46460a:	56                   	push   %esi
46460b:	ff 15 5c f3 48 00    	call   *0x48f35c
464611:	b0 01                	mov    $0x1,%al
464613:	5f                   	pop    %edi
464614:	5e                   	pop    %esi
464615:	5b                   	pop    %ebx
464616:	5d                   	pop    %ebp
464617:	c3                   	ret
464618:	53                   	push   %ebx
464619:	56                   	push   %esi
46461a:	8b f1                	mov    %ecx,%esi
46461c:	bb 04 74 4c 00       	mov    $0x4c7404,%ebx
464621:	57                   	push   %edi
464622:	8b cb                	mov    %ebx,%ecx
464624:	8b fa                	mov    %edx,%edi
464626:	e8 c1 38 fa ff       	call   0x407eec
46462b:	6a 00                	push   $0x0
46462d:	68 45 46 46 00       	push   $0x464645
464632:	56                   	push   %esi
464633:	ff 15 78 f6 48 00    	call   *0x48f678
464639:	53                   	push   %ebx
46463a:	8b cf                	mov    %edi,%ecx
46463c:	e8 66 3b fa ff       	call   0x4081a7
464641:	5f                   	pop    %edi
464642:	5e                   	pop    %esi
464643:	5b                   	pop    %ebx
464644:	c3                   	ret
464645:	55                   	push   %ebp
464646:	8b ec                	mov    %esp,%ebp
464648:	56                   	push   %esi
464649:	68 00 00 01 00       	push   $0x10000
46464e:	e8 a3 c9 fb ff       	call   0x420ff6
464653:	8b f0                	mov    %eax,%esi
464655:	c7 04 24 ff 7f 00 00 	movl   $0x7fff,(%esp)
46465c:	56                   	push   %esi
46465d:	ff 75 08             	push   0x8(%ebp)
464660:	ff 15 48 f7 48 00    	call   *0x48f748
464666:	66 83 3e 00          	cmpw   $0x0,(%esi)
46466a:	74 1b                	je     0x464687
46466c:	57                   	push   %edi
46466d:	bf 04 74 4c 00       	mov    $0x4c7404,%edi
464672:	56                   	push   %esi
464673:	8b cf                	mov    %edi,%ecx
464675:	e8 91 37 fa ff       	call   0x407e0b
46467a:	68 b8 2b 49 00       	push   $0x492bb8
46467f:	8b cf                	mov    %edi,%ecx
464681:	e8 85 37 fa ff       	call   0x407e0b
464686:	5f                   	pop    %edi
464687:	56                   	push   %esi
464688:	e8 df c9 fb ff       	call   0x42106c
46468d:	59                   	pop    %ecx
46468e:	33 c0                	xor    %eax,%eax
464690:	40                   	inc    %eax
464691:	5e                   	pop    %esi
464692:	5d                   	pop    %ebp
464693:	c2 08 00             	ret    $0x8
464696:	55                   	push   %ebp
464697:	8b ec                	mov    %esp,%ebp
464699:	83 e4 f8             	and    $0xfffffff8,%esp
46469c:	81 ec 54 02 00 00    	sub    $0x254,%esp
4646a2:	56                   	push   %esi
4646a3:	8b f1                	mov    %ecx,%esi
4646a5:	56                   	push   %esi
4646a6:	ff 15 00 f2 48 00    	call   *0x48f200
4646ac:	83 f8 ff             	cmp    $0xffffffff,%eax
4646af:	75 20                	jne    0x4646d1
4646b1:	8d 4c 24 08          	lea    0x8(%esp),%ecx
4646b5:	51                   	push   %ecx
4646b6:	56                   	push   %esi
4646b7:	ff 15 04 f2 48 00    	call   *0x48f204
4646bd:	83 f8 ff             	cmp    $0xffffffff,%eax
4646c0:	75 04                	jne    0x4646c6
4646c2:	0b c0                	or     %eax,%eax
4646c4:	eb 0b                	jmp    0x4646d1
4646c6:	50                   	push   %eax
4646c7:	ff 15 ec f3 48 00    	call   *0x48f3ec
4646cd:	8b 44 24 08          	mov    0x8(%esp),%eax
4646d1:	5e                   	pop    %esi
4646d2:	8b e5                	mov    %ebp,%esp
4646d4:	5d                   	pop    %ebp
4646d5:	c3                   	ret
4646d6:	55                   	push   %ebp
4646d7:	8b ec                	mov    %esp,%ebp
4646d9:	83 ec 18             	sub    $0x18,%esp
4646dc:	8d 45 e8             	lea    -0x18(%ebp),%eax
4646df:	53                   	push   %ebx
4646e0:	56                   	push   %esi
4646e1:	57                   	push   %edi
4646e2:	8b f9                	mov    %ecx,%edi
4646e4:	8b da                	mov    %edx,%ebx
4646e6:	50                   	push   %eax
4646e7:	57                   	push   %edi
4646e8:	ff 15 70 f7 48 00    	call   *0x48f770
4646ee:	8b f0                	mov    %eax,%esi
4646f0:	85 f6                	test   %esi,%esi
4646f2:	75 07                	jne    0x4646fb
4646f4:	32 c0                	xor    %al,%al
4646f6:	e9 a8 01 00 00       	jmp    0x4648a3
4646fb:	56                   	push   %esi
4646fc:	e8 f5 c8 fb ff       	call   0x420ff6
464701:	59                   	pop    %ecx
464702:	50                   	push   %eax
464703:	89 45 fc             	mov    %eax,-0x4(%ebp)
464706:	33 c0                	xor    %eax,%eax
464708:	56                   	push   %esi
464709:	50                   	push   %eax
46470a:	57                   	push   %edi
46470b:	89 45 f4             	mov    %eax,-0xc(%ebp)
46470e:	ff 15 6c f7 48 00    	call   *0x48f76c
464714:	8b 75 08             	mov    0x8(%ebp),%esi
464717:	56                   	push   %esi
464718:	e8 1f e7 fb ff       	call   0x422e3c
46471d:	33 c9                	xor    %ecx,%ecx
46471f:	83 c0 1a             	add    $0x1a,%eax
464722:	6a 02                	push   $0x2
464724:	5a                   	pop    %edx
464725:	f7 e2                	mul    %edx
464727:	0f 90 c1             	seto   %cl
46472a:	f7 d9                	neg    %ecx
46472c:	0b c8                	or     %eax,%ecx
46472e:	51                   	push   %ecx
46472f:	e8 c2 c8 fb ff       	call   0x420ff6
464734:	8b f8                	mov    %eax,%edi
464736:	68 c0 fa 48 00       	push   $0x48fac0
46473b:	57                   	push   %edi
46473c:	e8 bb e8 fb ff       	call   0x422ffc
464741:	68 c0 fa 48 00       	push   $0x48fac0
464746:	56                   	push   %esi
464747:	e8 40 f0 fb ff       	call   0x42378c
46474c:	83 c4 18             	add    $0x18,%esp
46474f:	85 c0                	test   %eax,%eax
464751:	0f 84 90 00 00 00    	je     0x4647e7
464757:	68 90 a2 4b 00       	push   $0x4ba290
46475c:	57                   	push   %edi
46475d:	e8 6b e8 fb ff       	call   0x422fcd
464762:	68 c0 fa 48 00       	push   $0x48fac0
464767:	56                   	push   %esi
464768:	e8 4d f4 fb ff       	call   0x423bba
46476d:	83 c4 10             	add    $0x10,%esp
464770:	85 c0                	test   %eax,%eax
464772:	75 6a                	jne    0x4647de
464774:	8d 45 ec             	lea    -0x14(%ebp),%eax
464777:	50                   	push   %eax
464778:	8d 45 f0             	lea    -0x10(%ebp),%eax
46477b:	50                   	push   %eax
46477c:	68 b0 a2 4b 00       	push   $0x4ba2b0
464781:	ff 75 fc             	push   -0x4(%ebp)
464784:	ff 15 74 f7 48 00    	call   *0x48f774