45b3d3:	8d 44 24 24          	lea    0x24(%esp),%eax
45b3d7:	50                   	push   %eax
45b3d8:	ff 75 08             	push   0x8(%ebp)
45b3db:	ff 15 48 f7 48 00    	call   *0x48f748
45b3e1:	8d 44 24 20          	lea    0x20(%esp),%eax
45b3e5:	50                   	push   %eax
45b3e6:	ff b3 a4 00 00 00    	push   0xa4(%ebx)
45b3ec:	e8 9b 83 fc ff       	call   0x42378c
45b3f1:	59                   	pop    %ecx
45b3f2:	59                   	pop    %ecx
45b3f3:	85 c0                	test   %eax,%eax
45b3f5:	75 01                	jne    0x45b3f8
45b3f7:	47                   	inc    %edi
45b3f8:	46                   	inc    %esi
45b3f9:	89 74 24 0c          	mov    %esi,0xc(%esp)
45b3fd:	f6 43 08 01          	testb  $0x1,0x8(%ebx)
45b401:	0f 84 b5 00 00 00    	je     0x45b4bc
45b407:	68 00 04 00 00       	push   $0x400
45b40c:	8d 44 24 24          	lea    0x24(%esp),%eax
45b410:	50                   	push   %eax
45b411:	ff 75 08             	push   0x8(%ebp)
45b414:	ff 15 6c f6 48 00    	call   *0x48f66c
45b41a:	80 7b 0c 00          	cmpb   $0x0,0xc(%ebx)
45b41e:	75 17                	jne    0x45b437
45b420:	8d 44 24 20          	lea    0x20(%esp),%eax
45b424:	50                   	push   %eax
45b425:	e8 12 7a fc ff       	call   0x422e3c
45b42a:	59                   	pop    %ecx
45b42b:	50                   	push   %eax
45b42c:	8d 44 24 24          	lea    0x24(%esp),%eax
45b430:	50                   	push   %eax
45b431:	ff 15 7c f6 48 00    	call   *0x48f67c
45b437:	8b 43 10             	mov    0x10(%ebx),%eax
45b43a:	89 7c 24 0c          	mov    %edi,0xc(%esp)
45b43e:	48                   	dec    %eax
45b43f:	74 2c                	je     0x45b46d
45b441:	48                   	dec    %eax
45b442:	74 14                	je     0x45b458
45b444:	48                   	dec    %eax
45b445:	75 3e                	jne    0x45b485
45b447:	ff 73 14             	push   0x14(%ebx)
45b44a:	8d 44 24 24          	lea    0x24(%esp),%eax
45b44e:	50                   	push   %eax
45b44f:	e8 38 83 fc ff       	call   0x42378c
45b454:	59                   	pop    %ecx
45b455:	59                   	pop    %ecx
45b456:	eb 28                	jmp    0x45b480
45b458:	ff 73 14             	push   0x14(%ebx)
45b45b:	8d 44 24 24          	lea    0x24(%esp),%eax
45b45f:	50                   	push   %eax
45b460:	e8 55 87 fc ff       	call   0x423bba
45b465:	59                   	pop    %ecx
45b466:	59                   	pop    %ecx
45b467:	85 c0                	test   %eax,%eax
45b469:	74 1a                	je     0x45b485
45b46b:	eb 17                	jmp    0x45b484
45b46d:	ff 73 18             	push   0x18(%ebx)
45b470:	8d 44 24 24          	lea    0x24(%esp),%eax
45b474:	50                   	push   %eax
45b475:	ff 73 14             	push   0x14(%ebx)
45b478:	e8 25 84 fc ff       	call   0x4238a2
45b47d:	83 c4 0c             	add    $0xc,%esp
45b480:	85 c0                	test   %eax,%eax
45b482:	75 01                	jne    0x45b485
45b484:	47                   	inc    %edi
45b485:	f6 43 08 18          	testb  $0x18,0x8(%ebx)
45b489:	75 2c                	jne    0x45b4b7
45b48b:	68 00 04 00 00       	push   $0x400
45b490:	8d 44 24 24          	lea    0x24(%esp),%eax
45b494:	50                   	push   %eax
45b495:	ff 75 08             	push   0x8(%ebp)
45b498:	ff 15 48 f7 48 00    	call   *0x48f748
45b49e:	8d 44 24 20          	lea    0x20(%esp),%eax
45b4a2:	50                   	push   %eax
45b4a3:	68 94 97 4b 00       	push   $0x4b9794
45b4a8:	e8 df 82 fc ff       	call   0x42378c
45b4ad:	59                   	pop    %ecx
45b4ae:	59                   	pop    %ecx
45b4af:	85 c0                	test   %eax,%eax
45b4b1:	75 04                	jne    0x45b4b7
45b4b3:	8b 7c 24 0c          	mov    0xc(%esp),%edi
45b4b7:	46                   	inc    %esi
45b4b8:	89 74 24 0c          	mov    %esi,0xc(%esp)
45b4bc:	f6 43 08 02          	testb  $0x2,0x8(%ebx)
45b4c0:	74 7b                	je     0x45b53d
45b4c2:	68 00 04 00 00       	push   $0x400
45b4c7:	8d 44 24 24          	lea    0x24(%esp),%eax
45b4cb:	50                   	push   %eax
45b4cc:	ff 75 08             	push   0x8(%ebp)
45b4cf:	ff 15 6c f6 48 00    	call   *0x48f66c
45b4d5:	8d 44 24 20          	lea    0x20(%esp),%eax
45b4d9:	50                   	push   %eax
45b4da:	8d 4c 24 14          	lea    0x14(%esp),%ecx
45b4de:	e8 5e ca fa ff       	call   0x407f41
45b4e3:	8d 44 24 10          	lea    0x10(%esp),%eax
45b4e7:	50                   	push   %eax
45b4e8:	8d 4b 34             	lea    0x34(%ebx),%ecx
45b4eb:	e8 34 a8 fb ff       	call   0x415d24
45b4f0:	8d 4c 24 10          	lea    0x10(%esp),%ecx
45b4f4:	e8 6b a5 fa ff       	call   0x405a64
45b4f9:	8d 4b 34             	lea    0x34(%ebx),%ecx
45b4fc:	e8 b3 43 00 00       	call   0x45f8b4
45b501:	84 c0                	test   %al,%al
45b503:	74 2f                	je     0x45b534
45b505:	f6 43 08 18          	testb  $0x18,0x8(%ebx)
45b509:	75 28                	jne    0x45b533
45b50b:	68 00 04 00 00       	push   $0x400
45b510:	8d 44 24 24          	lea    0x24(%esp),%eax
45b514:	50                   	push   %eax
45b515:	ff 75 08             	push   0x8(%ebp)
45b518:	ff 15 48 f7 48 00    	call   *0x48f748
45b51e:	8d 44 24 20          	lea    0x20(%esp),%eax
45b522:	50                   	push   %eax
45b523:	68 94 97 4b 00       	push   $0x4b9794
45b528:	e8 5f 82 fc ff       	call   0x42378c
45b52d:	59                   	pop    %ecx
45b52e:	59                   	pop    %ecx
45b52f:	85 c0                	test   %eax,%eax
45b531:	74 01                	je     0x45b534
45b533:	47                   	inc    %edi
45b534:	8b 74 24 0c          	mov    0xc(%esp),%esi
45b538:	46                   	inc    %esi
45b539:	89 74 24 0c          	mov    %esi,0xc(%esp)
45b53d:	f6 43 08 10          	testb  $0x10,0x8(%ebx)
45b541:	74 49                	je     0x45b58c
45b543:	68 00 04 00 00       	push   $0x400
45b548:	8d 44 24 24          	lea    0x24(%esp),%eax
45b54c:	50                   	push   %eax
45b54d:	ff 75 08             	push   0x8(%ebp)
45b550:	ff 15 48 f7 48 00    	call   *0x48f748
45b556:	8d 44 24 20          	lea    0x20(%esp),%eax
45b55a:	50                   	push   %eax
45b55b:	8d 4c 24 14          	lea    0x14(%esp),%ecx
45b55f:	e8 dd c9 fa ff       	call   0x407f41
45b564:	8d 44 24 10          	lea    0x10(%esp),%eax
45b568:	50                   	push   %eax
45b569:	8d 4b 6c             	lea    0x6c(%ebx),%ecx
45b56c:	e8 b3 a7 fb ff       	call   0x415d24
45b571:	8d 4c 24 10          	lea    0x10(%esp),%ecx
45b575:	e8 ea a4 fa ff       	call   0x405a64
45b57a:	8d 4b 6c             	lea    0x6c(%ebx),%ecx
45b57d:	e8 32 43 00 00       	call   0x45f8b4
45b582:	84 c0                	test   %al,%al
45b584:	74 01                	je     0x45b587
45b586:	47                   	inc    %edi
45b587:	8b 74 24 0c          	mov    0xc(%esp),%esi
45b58b:	46                   	inc    %esi
45b58c:	f6 43 08 04          	testb  $0x4,0x8(%ebx)
45b590:	74 14                	je     0x45b5a6
45b592:	3b fe                	cmp    %esi,%edi
45b594:	75 0f                	jne    0x45b5a5
45b596:	ff 75 08             	push   0x8(%ebp)
45b599:	8b cb                	mov    %ebx,%ecx
45b59b:	e8 ca 00 00 00       	call   0x45b66a
45b5a0:	84 c0                	test   %al,%al
45b5a2:	74 01                	je     0x45b5a5
45b5a4:	47                   	inc    %edi
45b5a5:	46                   	inc    %esi
45b5a6:	8b 4b 08             	mov    0x8(%ebx),%ecx
45b5a9:	f7 c1 80 07 00 00    	test   $0x780,%ecx
45b5af:	74 6b                	je     0x45b61c
45b5b1:	8d 44 24 10          	lea    0x10(%esp),%eax
45b5b5:	50                   	push   %eax
45b5b6:	ff 75 08             	push   0x8(%ebp)
45b5b9:	ff 15 94 f6 48 00    	call   *0x48f694
45b5bf:	8b 4b 08             	mov    0x8(%ebx),%ecx
45b5c2:	84 c9                	test   %cl,%cl
45b5c4:	79 0e                	jns    0x45b5d4
45b5c6:	8b 44 24 10          	mov    0x10(%esp),%eax
45b5ca:	39 83 bc 00 00 00    	cmp    %eax,0xbc(%ebx)
45b5d0:	75 01                	jne    0x45b5d3
45b5d2:	47                   	inc    %edi
45b5d3:	46                   	inc    %esi
45b5d4:	8b 54 24 14          	mov    0x14(%esp),%edx
45b5d8:	f7 c1 00 01 00 00    	test   $0x100,%ecx
45b5de:	74 0a                	je     0x45b5ea
45b5e0:	39 93 c0 00 00 00    	cmp    %edx,0xc0(%ebx)
45b5e6:	75 01                	jne    0x45b5e9
45b5e8:	47                   	inc    %edi
45b5e9:	46                   	inc    %esi
45b5ea:	f7 c1 00 02 00 00    	test   $0x200,%ecx
45b5f0:	74 12                	je     0x45b604
45b5f2:	8b 44 24 18          	mov    0x18(%esp),%eax
45b5f6:	2b 44 24 10          	sub    0x10(%esp),%eax
45b5fa:	39 83 c4 00 00 00    	cmp    %eax,0xc4(%ebx)
45b600:	75 01                	jne    0x45b603
45b602:	47                   	inc    %edi
45b603:	46                   	inc    %esi
45b604:	f7 c1 00 04 00 00    	test   $0x400,%ecx
45b60a:	74 10                	je     0x45b61c
45b60c:	8b 44 24 1c          	mov    0x1c(%esp),%eax
45b610:	2b c2                	sub    %edx,%eax
45b612:	39 83 c8 00 00 00    	cmp    %eax,0xc8(%ebx)
45b618:	75 01                	jne    0x45b61b
45b61a:	47                   	inc    %edi
45b61b:	46                   	inc    %esi
45b61c:	f6 c1 20             	test   $0x20,%cl
45b61f:	74 1a                	je     0x45b63b
45b621:	3b fe                	cmp    %esi,%edi
45b623:	75 15                	jne    0x45b63a
45b625:	ff 83 b8 00 00 00    	incl   0xb8(%ebx)
45b62b:	8b 83 b8 00 00 00    	mov    0xb8(%ebx),%eax
45b631:	3b 83 b4 00 00 00    	cmp    0xb4(%ebx),%eax
45b637:	75 01                	jne    0x45b63a
45b639:	47                   	inc    %edi
45b63a:	46                   	inc    %esi
45b63b:	3b fe                	cmp    %esi,%edi
45b63d:	75 1f                	jne    0x45b65e
45b63f:	8d 45 08             	lea    0x8(%ebp),%eax
45b642:	50                   	push   %eax
45b643:	8d 8b d4 00 00 00    	lea    0xd4(%ebx),%ecx
45b649:	e8 74 7e fa ff       	call   0x4034c2
45b64e:	ff 83 cc 00 00 00    	incl   0xcc(%ebx)
45b654:	33 c0                	xor    %eax,%eax
45b656:	38 43 04             	cmp    %al,0x4(%ebx)
45b659:	0f 94 c0             	sete   %al
45b65c:	eb 03                	jmp    0x45b661
45b65e:	33 c0                	xor    %eax,%eax
45b660:	40                   	inc    %eax
45b661:	5f                   	pop    %edi
45b662:	5e                   	pop    %esi
45b663:	5b                   	pop    %ebx
45b664:	8b e5                	mov    %ebp,%esp
45b666:	5d                   	pop    %ebp
45b667:	c2 08 00             	ret    $0x8
45b66a:	55                   	push   %ebp
45b66b:	8b ec                	mov    %esp,%ebp
45b66d:	56                   	push   %esi
45b66e:	8b f1                	mov    %ecx,%esi
45b670:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
45b674:	75 04                	jne    0x45b67a
45b676:	b0 01                	mov    $0x1,%al
45b678:	eb 30                	jmp    0x45b6aa
45b67a:	ff 75 08             	push   0x8(%ebp)
45b67d:	e8 18 ab fb ff       	call   0x41619a
45b682:	84 c0                	test   %al,%al
45b684:	74 04                	je     0x45b68a
45b686:	32 c0                	xor    %al,%al
45b688:	eb 20                	jmp    0x45b6aa
45b68a:	56                   	push   %esi
45b68b:	68 af b6 45 00       	push   $0x45b6af
45b690:	ff 75 08             	push   0x8(%ebp)
45b693:	c6 86 d0 00 00 00 00 	movb   $0x0,0xd0(%esi)
45b69a:	ff 15 78 f6 48 00    	call   *0x48f678
45b6a0:	80 be d0 00 00 00 00 	cmpb   $0x0,0xd0(%esi)
45b6a7:	0f 95 c0             	setne  %al
45b6aa:	5e                   	pop    %esi
45b6ab:	5d                   	pop    %ebp
45b6ac:	c2 04 00             	ret    $0x4
45b6af:	55                   	push   %ebp
45b6b0:	8b ec                	mov    %esp,%ebp
45b6b2:	8b 4d 0c             	mov    0xc(%ebp),%ecx
45b6b5:	5d                   	pop    %ebp
45b6b6:	e9 00 00 00 00       	jmp    0x45b6bb
45b6bb:	55                   	push   %ebp
45b6bc:	8b ec                	mov    %esp,%ebp
45b6be:	51                   	push   %ecx
45b6bf:	53                   	push   %ebx
45b6c0:	56                   	push   %esi
45b6c1:	57                   	push   %edi
45b6c2:	ff 75 08             	push   0x8(%ebp)
45b6c5:	8b d9                	mov    %ecx,%ebx
45b6c7:	ff 15 50 f6 48 00    	call   *0x48f650
45b6cd:	85 c0                	test   %eax,%eax
45b6cf:	75 0a                	jne    0x45b6db
45b6d1:	80 7b 05 01          	cmpb   $0x1,0x5(%ebx)
45b6d5:	0f 85 97 00 00 00    	jne    0x45b772
45b6db:	33 c0                	xor    %eax,%eax
45b6dd:	50                   	push   %eax
45b6de:	50                   	push   %eax
45b6df:	6a 0e                	push   $0xe
45b6e1:	ff 75 08             	push   0x8(%ebp)
45b6e4:	ff 15 88 f6 48 00    	call   *0x48f688
45b6ea:	89 45 fc             	mov    %eax,-0x4(%ebp)
45b6ed:	85 c0                	test   %eax,%eax
45b6ef:	75 08                	jne    0x45b6f9
45b6f1:	b8 ff 7f 00 00       	mov    $0x7fff,%eax
45b6f6:	89 45 fc             	mov    %eax,-0x4(%ebp)
45b6f9:	8d 70 01             	lea    0x1(%eax),%esi
45b6fc:	33 c9                	xor    %ecx,%ecx
45b6fe:	6a 02                	push   $0x2
45b700:	5a                   	pop    %edx
45b701:	8b c6                	mov    %esi,%eax
45b703:	f7 e2                	mul    %edx
45b705:	0f 90 c1             	seto   %cl
45b708:	f7 d9                	neg    %ecx
45b70a:	0b c8                	or     %eax,%ecx
45b70c:	51                   	push   %ecx
45b70d:	e8 e4 58 fc ff       	call   0x420ff6
45b712:	59                   	pop    %ecx
45b713:	8b f8                	mov    %eax,%edi
45b715:	57                   	push   %edi
45b716:	56                   	push   %esi
45b717:	6a 0d                	push   $0xd
45b719:	ff 75 08             	push   0x8(%ebp)
45b71c:	ff 15 88 f6 48 00    	call   *0x48f688
45b722:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45b725:	33 d2                	xor    %edx,%edx
45b727:	66 89 14 4f          	mov    %dx,(%edi,%ecx,2)
45b72b:	85 c0                	test   %eax,%eax
45b72d:	7f 05                	jg     0x45b734
45b72f:	33 f6                	xor    %esi,%esi
45b731:	46                   	inc    %esi
45b732:	eb 2c                	jmp    0x45b760
45b734:	38 53 0c             	cmp    %dl,0xc(%ebx)
45b737:	75 0f                	jne    0x45b748
45b739:	57                   	push   %edi
45b73a:	e8 fd 76 fc ff       	call   0x422e3c
45b73f:	59                   	pop    %ecx
45b740:	50                   	push   %eax
45b741:	57                   	push   %edi
45b742:	ff 15 7c f6 48 00    	call   *0x48f67c
45b748:	ff 73 24             	push   0x24(%ebx)
45b74b:	57                   	push   %edi
45b74c:	e8 69 84 fc ff       	call   0x423bba
45b751:	59                   	pop    %ecx
45b752:	59                   	pop    %ecx
45b753:	85 c0                	test   %eax,%eax
45b755:	74 14                	je     0x45b76b
45b757:	c6 83 d0 00 00 00 01 	movb   $0x1,0xd0(%ebx)
45b75e:	33 f6                	xor    %esi,%esi
45b760:	57                   	push   %edi
45b761:	e8 06 59 fc ff       	call   0x42106c
45b766:	59                   	pop    %ecx
45b767:	8b c6                	mov    %esi,%eax
45b769:	eb 0a                	jmp    0x45b775
45b76b:	57                   	push   %edi
45b76c:	e8 fb 58 fc ff       	call   0x42106c
45b771:	59                   	pop    %ecx
45b772:	33 c0                	xor    %eax,%eax
45b774:	40                   	inc    %eax
45b775:	5f                   	pop    %edi
45b776:	5e                   	pop    %esi
45b777:	5b                   	pop    %ebx
45b778:	8b e5                	mov    %ebp,%esp
45b77a:	5d                   	pop    %ebp
45b77b:	c2 08 00             	ret    $0x8
45b77e:	55                   	push   %ebp
45b77f:	8b ec                	mov    %esp,%ebp
45b781:	57                   	push   %edi
45b782:	8b f9                	mov    %ecx,%edi
45b784:	8b 4f 08             	mov    0x8(%edi),%ecx
45b787:	c7 07 c4 1c 49 00    	movl   $0x491cc4,(%edi)
45b78d:	85 c9                	test   %ecx,%ecx
45b78f:	74 11                	je     0x45b7a2
45b791:	56                   	push   %esi
45b792:	8b 71 38             	mov    0x38(%ecx),%esi
45b795:	51                   	push   %ecx
45b796:	e8 81 48 fc ff       	call   0x42001c
45b79b:	8b ce                	mov    %esi,%ecx