42e4ea:	50                   	push   %eax
42e4eb:	e8 f6 02 00 00       	call   0x42e7e6
42e4f0:	59                   	pop    %ecx
42e4f1:	5d                   	pop    %ebp
42e4f2:	c2 04 00             	ret    $0x4
42e4f5:	cc                   	int3
42e4f6:	cc                   	int3
42e4f7:	cc                   	int3
42e4f8:	cc                   	int3
42e4f9:	cc                   	int3
42e4fa:	cc                   	int3
42e4fb:	cc                   	int3
42e4fc:	cc                   	int3
42e4fd:	cc                   	int3
42e4fe:	cc                   	int3
42e4ff:	cc                   	int3
42e500:	8b ff                	mov    %edi,%edi
42e502:	55                   	push   %ebp
42e503:	8b ec                	mov    %esp,%ebp
42e505:	8b 45 08             	mov    0x8(%ebp),%eax
42e508:	3b 48 04             	cmp    0x4(%eax),%ecx
42e50b:	75 0b                	jne    0x42e518
42e50d:	8b 00                	mov    (%eax),%eax
42e50f:	3b 45 0c             	cmp    0xc(%ebp),%eax
42e512:	75 04                	jne    0x42e518
42e514:	b0 01                	mov    $0x1,%al
42e516:	eb 02                	jmp    0x42e51a
42e518:	32 c0                	xor    %al,%al
42e51a:	5d                   	pop    %ebp
42e51b:	c2 08 00             	ret    $0x8
42e51e:	cc                   	int3
42e51f:	cc                   	int3
42e520:	8b ff                	mov    %edi,%edi
42e522:	55                   	push   %ebp
42e523:	8b ec                	mov    %esp,%ebp
42e525:	51                   	push   %ecx
42e526:	51                   	push   %ecx
42e527:	56                   	push   %esi
42e528:	57                   	push   %edi
42e529:	ff 75 0c             	push   0xc(%ebp)
42e52c:	8b f9                	mov    %ecx,%edi
42e52e:	8d 4d f8             	lea    -0x8(%ebp),%ecx
42e531:	ff 75 08             	push   0x8(%ebp)
42e534:	51                   	push   %ecx
42e535:	8b 07                	mov    (%edi),%eax
42e537:	8b 70 0c             	mov    0xc(%eax),%esi
42e53a:	8b ce                	mov    %esi,%ecx
42e53c:	ff 15 20 a5 43 00    	call   *0x43a520
42e542:	8b cf                	mov    %edi,%ecx
42e544:	ff d6                	call   *%esi
42e546:	8b c8                	mov    %eax,%ecx
42e548:	e8 dc 76 ff ff       	call   0x425c29
42e54d:	5f                   	pop    %edi
42e54e:	5e                   	pop    %esi
42e54f:	c9                   	leave
42e550:	c2 08 00             	ret    $0x8
42e553:	8b ff                	mov    %edi,%edi
42e555:	55                   	push   %ebp
42e556:	8b ec                	mov    %esp,%ebp
42e558:	8b 45 08             	mov    0x8(%ebp),%eax
42e55b:	56                   	push   %esi
42e55c:	8b f1                	mov    %ecx,%esi
42e55e:	39 46 10             	cmp    %eax,0x10(%esi)
42e561:	73 05                	jae    0x42e568
42e563:	e8 00 fc ff ff       	call   0x42e168
42e568:	50                   	push   %eax
42e569:	e8 68 fa ff ff       	call   0x42dfd6
42e56e:	8b c6                	mov    %esi,%eax
42e570:	5e                   	pop    %esi
42e571:	5d                   	pop    %ebp
42e572:	c2 04 00             	ret    $0x4
42e575:	8b ff                	mov    %edi,%edi
42e577:	55                   	push   %ebp
42e578:	8b ec                	mov    %esp,%ebp
42e57a:	56                   	push   %esi
42e57b:	8b f1                	mov    %ecx,%esi
42e57d:	8b 4d 08             	mov    0x8(%ebp),%ecx
42e580:	57                   	push   %edi
42e581:	8b 7e 10             	mov    0x10(%esi),%edi
42e584:	3b f9                	cmp    %ecx,%edi
42e586:	73 07                	jae    0x42e58f
42e588:	8b ce                	mov    %esi,%ecx
42e58a:	e8 d9 fb ff ff       	call   0x42e168
42e58f:	8b 55 0c             	mov    0xc(%ebp),%edx
42e592:	8b c7                	mov    %edi,%eax
42e594:	2b c1                	sub    %ecx,%eax
42e596:	3b c2                	cmp    %edx,%eax
42e598:	77 0a                	ja     0x42e5a4
42e59a:	51                   	push   %ecx
42e59b:	8b ce                	mov    %esi,%ecx
42e59d:	e8 34 fa ff ff       	call   0x42dfd6
42e5a2:	eb 33                	jmp    0x42e5d7
42e5a4:	85 d2                	test   %edx,%edx
42e5a6:	74 2f                	je     0x42e5d7
42e5a8:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
42e5ac:	72 04                	jb     0x42e5b2
42e5ae:	8b 06                	mov    (%esi),%eax
42e5b0:	eb 02                	jmp    0x42e5b4
42e5b2:	8b c6                	mov    %esi,%eax
42e5b4:	2b fa                	sub    %edx,%edi
42e5b6:	53                   	push   %ebx
42e5b7:	8d 1c 08             	lea    (%eax,%ecx,1),%ebx
42e5ba:	8b c7                	mov    %edi,%eax
42e5bc:	2b c1                	sub    %ecx,%eax
42e5be:	74 0e                	je     0x42e5ce
42e5c0:	50                   	push   %eax
42e5c1:	8d 04 13             	lea    (%ebx,%edx,1),%eax
42e5c4:	50                   	push   %eax
42e5c5:	53                   	push   %ebx
42e5c6:	e8 21 c9 fe ff       	call   0x41aeec
42e5cb:	83 c4 0c             	add    $0xc,%esp
42e5ce:	57                   	push   %edi
42e5cf:	8b ce                	mov    %esi,%ecx
42e5d1:	e8 00 fa ff ff       	call   0x42dfd6
42e5d6:	5b                   	pop    %ebx
42e5d7:	5f                   	pop    %edi
42e5d8:	8b c6                	mov    %esi,%eax
42e5da:	5e                   	pop    %esi
42e5db:	5d                   	pop    %ebp
42e5dc:	c2 08 00             	ret    $0x8
42e5df:	8b ff                	mov    %edi,%edi
42e5e1:	55                   	push   %ebp
42e5e2:	8b ec                	mov    %esp,%ebp
42e5e4:	83 ec 10             	sub    $0x10,%esp
42e5e7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42e5eb:	8d 45 fc             	lea    -0x4(%ebp),%eax
42e5ee:	57                   	push   %edi
42e5ef:	50                   	push   %eax
42e5f0:	8d 45 f8             	lea    -0x8(%ebp),%eax
42e5f3:	bf e0 8e 43 00       	mov    $0x438ee0,%edi
42e5f8:	50                   	push   %eax
42e5f9:	6a 00                	push   $0x0
42e5fb:	57                   	push   %edi
42e5fc:	ff 15 e4 a2 43 00    	call   *0x43a2e4
42e602:	85 c0                	test   %eax,%eax
42e604:	74 2f                	je     0x42e635
42e606:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
42e60a:	74 29                	je     0x42e635
42e60c:	ff 75 08             	push   0x8(%ebp)
42e60f:	89 7d f0             	mov    %edi,-0x10(%ebp)
42e612:	c7 45 fc e4 8e 43 00 	movl   $0x438ee4,-0x4(%ebp)
42e619:	c7 05 e4 8e 43 00 98 	movl   $0x401898,0x438ee4
42e620:	18 40 00
42e623:	e8 46 c6 fe ff       	call   0x41ac6e
42e628:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
42e62c:	59                   	pop    %ecx
42e62d:	8d 4d f0             	lea    -0x10(%ebp),%ecx
42e630:	e8 14 72 ff ff       	call   0x425849
42e635:	8b 45 fc             	mov    -0x4(%ebp),%eax
42e638:	5f                   	pop    %edi
42e639:	c9                   	leave
42e63a:	c2 04 00             	ret    $0x4
42e63d:	8b ff                	mov    %edi,%edi
42e63f:	55                   	push   %ebp
42e640:	8b ec                	mov    %esp,%ebp
42e642:	8b 55 08             	mov    0x8(%ebp),%edx
42e645:	85 d2                	test   %edx,%edx
42e647:	74 05                	je     0x42e64e
42e649:	8b 41 04             	mov    0x4(%ecx),%eax
42e64c:	89 02                	mov    %eax,(%edx)
42e64e:	8b 01                	mov    (%ecx),%eax
42e650:	8d 48 04             	lea    0x4(%eax),%ecx
42e653:	f7 d8                	neg    %eax
42e655:	1b c0                	sbb    %eax,%eax
42e657:	23 c1                	and    %ecx,%eax
42e659:	5d                   	pop    %ebp
42e65a:	c2 04 00             	ret    $0x4
42e65d:	8b ff                	mov    %edi,%edi
42e65f:	55                   	push   %ebp
42e660:	8b ec                	mov    %esp,%ebp
42e662:	8b 45 08             	mov    0x8(%ebp),%eax
42e665:	80 38 00             	cmpb   $0x0,(%eax)
42e668:	75 04                	jne    0x42e66e
42e66a:	33 c0                	xor    %eax,%eax
42e66c:	5d                   	pop    %ebp
42e66d:	c3                   	ret
42e66e:	8d 50 01             	lea    0x1(%eax),%edx
42e671:	8a 08                	mov    (%eax),%cl
42e673:	40                   	inc    %eax
42e674:	84 c9                	test   %cl,%cl
42e676:	75 f9                	jne    0x42e671
42e678:	2b c2                	sub    %edx,%eax
42e67a:	5d                   	pop    %ebp
42e67b:	c3                   	ret
42e67c:	8b ff                	mov    %edi,%edi
42e67e:	55                   	push   %ebp
42e67f:	8b ec                	mov    %esp,%ebp
42e681:	56                   	push   %esi
42e682:	8b f1                	mov    %ecx,%esi
42e684:	56                   	push   %esi
42e685:	ff 15 88 a2 43 00    	call   *0x43a288
42e68b:	8b 45 08             	mov    0x8(%ebp),%eax
42e68e:	89 30                	mov    %esi,(%eax)
42e690:	5e                   	pop    %esi
42e691:	5d                   	pop    %ebp
42e692:	c2 04 00             	ret    $0x4
42e695:	cc                   	int3
42e696:	cc                   	int3
42e697:	cc                   	int3
42e698:	cc                   	int3
42e699:	cc                   	int3
42e69a:	cc                   	int3
42e69b:	cc                   	int3
42e69c:	cc                   	int3
42e69d:	cc                   	int3
42e69e:	cc                   	int3
42e69f:	cc                   	int3
42e6a0:	8b ff                	mov    %edi,%edi
42e6a2:	55                   	push   %ebp
42e6a3:	8b ec                	mov    %esp,%ebp
42e6a5:	ff 75 0c             	push   0xc(%ebp)
42e6a8:	e8 b9 bd fe ff       	call   0x41a466
42e6ad:	59                   	pop    %ecx
42e6ae:	85 c0                	test   %eax,%eax
42e6b0:	75 05                	jne    0x42e6b7
42e6b2:	b8 08 75 40 00       	mov    $0x407508,%eax
42e6b7:	8b 4d 08             	mov    0x8(%ebp),%ecx
42e6ba:	50                   	push   %eax
42e6bb:	e8 dd 64 ff ff       	call   0x424b9d
42e6c0:	8b 45 08             	mov    0x8(%ebp),%eax
42e6c3:	5d                   	pop    %ebp
42e6c4:	c2 08 00             	ret    $0x8
42e6c7:	cc                   	int3
42e6c8:	cc                   	int3
42e6c9:	cc                   	int3
42e6ca:	cc                   	int3
42e6cb:	cc                   	int3
42e6cc:	cc                   	int3
42e6cd:	cc                   	int3
42e6ce:	cc                   	int3
42e6cf:	cc                   	int3
42e6d0:	8b ff                	mov    %edi,%edi
42e6d2:	55                   	push   %ebp
42e6d3:	8b ec                	mov    %esp,%ebp
42e6d5:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
42e6d9:	75 0f                	jne    0x42e6ea
42e6db:	8b 4d 08             	mov    0x8(%ebp),%ecx
42e6de:	68 24 75 40 00       	push   $0x407524
42e6e3:	e8 b5 64 ff ff       	call   0x424b9d
42e6e8:	eb 0b                	jmp    0x42e6f5
42e6ea:	ff 75 0c             	push   0xc(%ebp)
42e6ed:	ff 75 08             	push   0x8(%ebp)
42e6f0:	e8 ab ff ff ff       	call   0x42e6a0
42e6f5:	8b 45 08             	mov    0x8(%ebp),%eax
42e6f8:	5d                   	pop    %ebp
42e6f9:	c2 08 00             	ret    $0x8
42e6fc:	cc                   	int3
42e6fd:	cc                   	int3
42e6fe:	cc                   	int3
42e6ff:	cc                   	int3
42e700:	8b ff                	mov    %edi,%edi
42e702:	55                   	push   %ebp
42e703:	8b ec                	mov    %esp,%ebp
42e705:	ff 75 0c             	push   0xc(%ebp)
42e708:	e8 85 bd fe ff       	call   0x41a492
42e70d:	59                   	pop    %ecx
42e70e:	85 c0                	test   %eax,%eax
42e710:	75 05                	jne    0x42e717
42e712:	b8 08 75 40 00       	mov    $0x407508,%eax
42e717:	8b 4d 08             	mov    0x8(%ebp),%ecx
42e71a:	50                   	push   %eax
42e71b:	e8 7d 64 ff ff       	call   0x424b9d
42e720:	8b 45 08             	mov    0x8(%ebp),%eax
42e723:	5d                   	pop    %ebp
42e724:	c2 08 00             	ret    $0x8
42e727:	cc                   	int3
42e728:	cc                   	int3
42e729:	cc                   	int3
42e72a:	cc                   	int3
42e72b:	cc                   	int3
42e72c:	cc                   	int3
42e72d:	cc                   	int3
42e72e:	cc                   	int3
42e72f:	cc                   	int3
42e730:	b8 00 75 40 00       	mov    $0x407500,%eax
42e735:	c3                   	ret
42e736:	cc                   	int3
42e737:	cc                   	int3
42e738:	cc                   	int3
42e739:	cc                   	int3
42e73a:	cc                   	int3
42e73b:	cc                   	int3
42e73c:	cc                   	int3
42e73d:	cc                   	int3
42e73e:	cc                   	int3
42e73f:	cc                   	int3
42e740:	b8 18 75 40 00       	mov    $0x407518,%eax
42e745:	c3                   	ret
42e746:	cc                   	int3
42e747:	cc                   	int3
42e748:	cc                   	int3
42e749:	cc                   	int3
42e74a:	cc                   	int3
42e74b:	cc                   	int3
42e74c:	cc                   	int3
42e74d:	cc                   	int3
42e74e:	cc                   	int3
42e74f:	cc                   	int3
42e750:	b8 3c 75 40 00       	mov    $0x40753c,%eax
42e755:	c3                   	ret
42e756:	8b ff                	mov    %edi,%edi
42e758:	55                   	push   %ebp
42e759:	8b ec                	mov    %esp,%ebp
42e75b:	56                   	push   %esi
42e75c:	8b f1                	mov    %ecx,%esi
42e75e:	8b 4d 08             	mov    0x8(%ebp),%ecx
42e761:	e8 25 00 00 00       	call   0x42e78b
42e766:	8d 04 45 02 00 00 00 	lea    0x2(,%eax,2),%eax
42e76d:	50                   	push   %eax
42e76e:	ff 75 08             	push   0x8(%ebp)
42e771:	68 14 04 00 00       	push   $0x414
42e776:	56                   	push   %esi
42e777:	ff 15 80 a4 43 00    	call   *0x43a480
42e77d:	83 c4 10             	add    $0x10,%esp
42e780:	f7 d8                	neg    %eax
42e782:	1a c0                	sbb    %al,%al
42e784:	fe c0                	inc    %al
42e786:	5e                   	pop    %esi
42e787:	5d                   	pop    %ebp
42e788:	c2 04 00             	ret    $0x4
42e78b:	85 c9                	test   %ecx,%ecx
42e78d:	75 03                	jne    0x42e792
42e78f:	33 c0                	xor    %eax,%eax
42e791:	c3                   	ret
42e792:	8d 51 02             	lea    0x2(%ecx),%edx
42e795:	66 8b 01             	mov    (%ecx),%ax
42e798:	83 c1 02             	add    $0x2,%ecx
42e79b:	66 85 c0             	test   %ax,%ax
42e79e:	75 f5                	jne    0x42e795
42e7a0:	2b ca                	sub    %edx,%ecx
42e7a2:	d1 f9                	sar    $1,%ecx
42e7a4:	8b c1                	mov    %ecx,%eax
42e7a6:	c3                   	ret
42e7a7:	8b ff                	mov    %edi,%edi
42e7a9:	55                   	push   %ebp
42e7aa:	8b ec                	mov    %esp,%ebp
42e7ac:	56                   	push   %esi
42e7ad:	57                   	push   %edi
42e7ae:	8b 7d 0c             	mov    0xc(%ebp),%edi
42e7b1:	8b f1                	mov    %ecx,%esi
42e7b3:	57                   	push   %edi
42e7b4:	e8 0b fd ff ff       	call   0x42e4c4
42e7b9:	84 c0                	test   %al,%al
42e7bb:	74 23                	je     0x42e7e0
42e7bd:	8b 56 04             	mov    0x4(%esi),%edx
42e7c0:	8b 4e 08             	mov    0x8(%esi),%ecx
42e7c3:	2b ca                	sub    %edx,%ecx
42e7c5:	3b 56 08             	cmp    0x8(%esi),%edx
42e7c8:	57                   	push   %edi
42e7c9:	ff 75 08             	push   0x8(%ebp)