430503:	8b ec                	mov    %esp,%ebp
430505:	56                   	push   %esi
430506:	8b 75 0c             	mov    0xc(%ebp),%esi
430509:	56                   	push   %esi
43050a:	e8 d1 e8 fe ff       	call   0x41ede0
43050f:	59                   	pop    %ecx
430510:	8b 4d 08             	mov    0x8(%ebp),%ecx
430513:	85 c0                	test   %eax,%eax
430515:	8b c1                	mov    %ecx,%eax
430517:	89 31                	mov    %esi,(%ecx)
430519:	5e                   	pop    %esi
43051a:	74 09                	je     0x430525
43051c:	c7 41 04 10 f0 44 00 	movl   $0x44f010,0x4(%ecx)
430523:	eb 07                	jmp    0x43052c
430525:	c7 41 04 18 f0 44 00 	movl   $0x44f018,0x4(%ecx)
43052c:	5d                   	pop    %ebp
43052d:	c2 08 00             	ret    $0x8
430530:	8b ff                	mov    %edi,%edi
430532:	55                   	push   %ebp
430533:	8b ec                	mov    %esp,%ebp
430535:	8b 45 08             	mov    0x8(%ebp),%eax
430538:	8b 55 0c             	mov    0xc(%ebp),%edx
43053b:	89 10                	mov    %edx,(%eax)
43053d:	89 48 04             	mov    %ecx,0x4(%eax)
430540:	5d                   	pop    %ebp
430541:	c2 08 00             	ret    $0x8
430544:	cc                   	int3
430545:	cc                   	int3
430546:	cc                   	int3
430547:	cc                   	int3
430548:	cc                   	int3
430549:	cc                   	int3
43054a:	cc                   	int3
43054b:	cc                   	int3
43054c:	cc                   	int3
43054d:	cc                   	int3
43054e:	cc                   	int3
43054f:	cc                   	int3
430550:	8b ff                	mov    %edi,%edi
430552:	55                   	push   %ebp
430553:	8b ec                	mov    %esp,%ebp
430555:	8b 45 08             	mov    0x8(%ebp),%eax
430558:	3b 48 04             	cmp    0x4(%eax),%ecx
43055b:	75 0b                	jne    0x430568
43055d:	8b 00                	mov    (%eax),%eax
43055f:	3b 45 0c             	cmp    0xc(%ebp),%eax
430562:	75 04                	jne    0x430568
430564:	b0 01                	mov    $0x1,%al
430566:	eb 02                	jmp    0x43056a
430568:	32 c0                	xor    %al,%al
43056a:	5d                   	pop    %ebp
43056b:	c2 08 00             	ret    $0x8
43056e:	cc                   	int3
43056f:	cc                   	int3
430570:	8b ff                	mov    %edi,%edi
430572:	55                   	push   %ebp
430573:	8b ec                	mov    %esp,%ebp
430575:	51                   	push   %ecx
430576:	51                   	push   %ecx
430577:	56                   	push   %esi
430578:	57                   	push   %edi
430579:	ff 75 0c             	push   0xc(%ebp)
43057c:	8b f9                	mov    %ecx,%edi
43057e:	8d 4d f8             	lea    -0x8(%ebp),%ecx
430581:	ff 75 08             	push   0x8(%ebp)
430584:	51                   	push   %ecx
430585:	8b 07                	mov    (%edi),%eax
430587:	8b 70 0c             	mov    0xc(%eax),%esi
43058a:	8b ce                	mov    %esi,%ecx
43058c:	ff 15 c4 12 45 00    	call   *0x4512c4
430592:	8b cf                	mov    %edi,%ecx
430594:	ff d6                	call   *%esi
430596:	8b c8                	mov    %eax,%ecx
430598:	e8 41 de ff ff       	call   0x42e3de
43059d:	5f                   	pop    %edi
43059e:	5e                   	pop    %esi
43059f:	c9                   	leave
4305a0:	c2 08 00             	ret    $0x8
4305a3:	8b ff                	mov    %edi,%edi
4305a5:	55                   	push   %ebp
4305a6:	8b ec                	mov    %esp,%ebp
4305a8:	8b 45 08             	mov    0x8(%ebp),%eax
4305ab:	56                   	push   %esi
4305ac:	8b f1                	mov    %ecx,%esi
4305ae:	39 46 10             	cmp    %eax,0x10(%esi)
4305b1:	73 05                	jae    0x4305b8
4305b3:	e8 f7 fb ff ff       	call   0x4301af
4305b8:	50                   	push   %eax
4305b9:	e8 03 fa ff ff       	call   0x42ffc1
4305be:	8b c6                	mov    %esi,%eax
4305c0:	5e                   	pop    %esi
4305c1:	5d                   	pop    %ebp
4305c2:	c2 04 00             	ret    $0x4
4305c5:	8b ff                	mov    %edi,%edi
4305c7:	55                   	push   %ebp
4305c8:	8b ec                	mov    %esp,%ebp
4305ca:	56                   	push   %esi
4305cb:	8b f1                	mov    %ecx,%esi
4305cd:	8b 4d 08             	mov    0x8(%ebp),%ecx
4305d0:	57                   	push   %edi
4305d1:	8b 7e 10             	mov    0x10(%esi),%edi
4305d4:	3b f9                	cmp    %ecx,%edi
4305d6:	73 07                	jae    0x4305df
4305d8:	8b ce                	mov    %esi,%ecx
4305da:	e8 d0 fb ff ff       	call   0x4301af
4305df:	8b 55 0c             	mov    0xc(%ebp),%edx
4305e2:	8b c7                	mov    %edi,%eax
4305e4:	2b c1                	sub    %ecx,%eax
4305e6:	3b c2                	cmp    %edx,%eax
4305e8:	77 0a                	ja     0x4305f4
4305ea:	51                   	push   %ecx
4305eb:	8b ce                	mov    %esi,%ecx
4305ed:	e8 cf f9 ff ff       	call   0x42ffc1
4305f2:	eb 33                	jmp    0x430627
4305f4:	85 d2                	test   %edx,%edx
4305f6:	74 2f                	je     0x430627
4305f8:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
4305fc:	72 04                	jb     0x430602
4305fe:	8b 06                	mov    (%esi),%eax
430600:	eb 02                	jmp    0x430604
430602:	8b c6                	mov    %esi,%eax
430604:	2b fa                	sub    %edx,%edi
430606:	53                   	push   %ebx
430607:	8d 1c 08             	lea    (%eax,%ecx,1),%ebx
43060a:	8b c7                	mov    %edi,%eax
43060c:	2b c1                	sub    %ecx,%eax
43060e:	74 0e                	je     0x43061e
430610:	50                   	push   %eax
430611:	8d 04 13             	lea    (%ebx,%edx,1),%eax
430614:	50                   	push   %eax
430615:	53                   	push   %ebx
430616:	e8 30 f1 fe ff       	call   0x41f74b
43061b:	83 c4 0c             	add    $0xc,%esp
43061e:	57                   	push   %edi
43061f:	8b ce                	mov    %esi,%ecx
430621:	e8 9b f9 ff ff       	call   0x42ffc1
430626:	5b                   	pop    %ebx
430627:	5f                   	pop    %edi
430628:	8b c6                	mov    %esi,%eax
43062a:	5e                   	pop    %esi
43062b:	5d                   	pop    %ebp
43062c:	c2 08 00             	ret    $0x8
43062f:	8b ff                	mov    %edi,%edi
430631:	55                   	push   %ebp
430632:	8b ec                	mov    %esp,%ebp
430634:	8b 45 08             	mov    0x8(%ebp),%eax
430637:	39 41 10             	cmp    %eax,0x10(%ecx)
43063a:	73 05                	jae    0x430641
43063c:	e8 6e fb ff ff       	call   0x4301af
430641:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
430645:	89 41 10             	mov    %eax,0x10(%ecx)
430648:	72 04                	jb     0x43064e
43064a:	8b 11                	mov    (%ecx),%edx
43064c:	eb 02                	jmp    0x430650
43064e:	8b d1                	mov    %ecx,%edx
430650:	56                   	push   %esi
430651:	33 f6                	xor    %esi,%esi
430653:	66 89 34 42          	mov    %si,(%edx,%eax,2)
430657:	8b c1                	mov    %ecx,%eax
430659:	5e                   	pop    %esi
43065a:	5d                   	pop    %ebp
43065b:	c2 04 00             	ret    $0x4
43065e:	8b ff                	mov    %edi,%edi
430660:	55                   	push   %ebp
430661:	8b ec                	mov    %esp,%ebp
430663:	56                   	push   %esi
430664:	8b f1                	mov    %ecx,%esi
430666:	8b 4d 0c             	mov    0xc(%ebp),%ecx
430669:	57                   	push   %edi
43066a:	8b 7e 10             	mov    0x10(%esi),%edi
43066d:	3b f9                	cmp    %ecx,%edi
43066f:	77 17                	ja     0x430688
430671:	83 66 10 00          	andl   $0x0,0x10(%esi)
430675:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
430679:	72 04                	jb     0x43067f
43067b:	8b 06                	mov    (%esi),%eax
43067d:	eb 02                	jmp    0x430681
43067f:	8b c6                	mov    %esi,%eax
430681:	33 c9                	xor    %ecx,%ecx
430683:	66 89 08             	mov    %cx,(%eax)
430686:	eb 3e                	jmp    0x4306c6
430688:	85 c9                	test   %ecx,%ecx
43068a:	74 3a                	je     0x4306c6
43068c:	8b 46 14             	mov    0x14(%esi),%eax
43068f:	83 f8 08             	cmp    $0x8,%eax
430692:	72 04                	jb     0x430698
430694:	8b 16                	mov    (%esi),%edx
430696:	eb 02                	jmp    0x43069a
430698:	8b d6                	mov    %esi,%edx
43069a:	2b f9                	sub    %ecx,%edi
43069c:	74 14                	je     0x4306b2
43069e:	8d 04 3f             	lea    (%edi,%edi,1),%eax
4306a1:	50                   	push   %eax
4306a2:	8d 04 4a             	lea    (%edx,%ecx,2),%eax
4306a5:	50                   	push   %eax
4306a6:	52                   	push   %edx
4306a7:	e8 9f f0 fe ff       	call   0x41f74b
4306ac:	8b 46 14             	mov    0x14(%esi),%eax
4306af:	83 c4 0c             	add    $0xc,%esp
4306b2:	89 7e 10             	mov    %edi,0x10(%esi)
4306b5:	83 f8 08             	cmp    $0x8,%eax
4306b8:	72 04                	jb     0x4306be
4306ba:	8b 06                	mov    (%esi),%eax
4306bc:	eb 02                	jmp    0x4306c0
4306be:	8b c6                	mov    %esi,%eax
4306c0:	33 c9                	xor    %ecx,%ecx
4306c2:	66 89 0c 78          	mov    %cx,(%eax,%edi,2)
4306c6:	5f                   	pop    %edi
4306c7:	8b c6                	mov    %esi,%eax
4306c9:	5e                   	pop    %esi
4306ca:	5d                   	pop    %ebp
4306cb:	c2 08 00             	ret    $0x8
4306ce:	8b ff                	mov    %edi,%edi
4306d0:	55                   	push   %ebp
4306d1:	8b ec                	mov    %esp,%ebp
4306d3:	8b 45 08             	mov    0x8(%ebp),%eax
4306d6:	80 38 00             	cmpb   $0x0,(%eax)
4306d9:	75 04                	jne    0x4306df
4306db:	33 c0                	xor    %eax,%eax
4306dd:	5d                   	pop    %ebp
4306de:	c3                   	ret
4306df:	8d 50 01             	lea    0x1(%eax),%edx
4306e2:	8a 08                	mov    (%eax),%cl
4306e4:	40                   	inc    %eax
4306e5:	84 c9                	test   %cl,%cl
4306e7:	75 f9                	jne    0x4306e2
4306e9:	2b c2                	sub    %edx,%eax
4306eb:	5d                   	pop    %ebp
4306ec:	c3                   	ret
4306ed:	33 d2                	xor    %edx,%edx
4306ef:	66 39 11             	cmp    %dx,(%ecx)
4306f2:	74 16                	je     0x43070a
4306f4:	56                   	push   %esi
4306f5:	8d 71 02             	lea    0x2(%ecx),%esi
4306f8:	66 8b 01             	mov    (%ecx),%ax
4306fb:	83 c1 02             	add    $0x2,%ecx
4306fe:	66 3b c2             	cmp    %dx,%ax
430701:	75 f5                	jne    0x4306f8
430703:	8b d1                	mov    %ecx,%edx
430705:	2b d6                	sub    %esi,%edx
430707:	d1 fa                	sar    $1,%edx
430709:	5e                   	pop    %esi
43070a:	8b c2                	mov    %edx,%eax
43070c:	c3                   	ret
43070d:	cc                   	int3
43070e:	cc                   	int3
43070f:	cc                   	int3
430710:	8b ff                	mov    %edi,%edi
430712:	55                   	push   %ebp
430713:	8b ec                	mov    %esp,%ebp
430715:	ff 75 0c             	push   0xc(%ebp)
430718:	e8 c3 e6 fe ff       	call   0x41ede0
43071d:	59                   	pop    %ecx
43071e:	85 c0                	test   %eax,%eax
430720:	75 05                	jne    0x430727
430722:	b8 e8 a6 40 00       	mov    $0x40a6e8,%eax
430727:	8b 4d 08             	mov    0x8(%ebp),%ecx
43072a:	50                   	push   %eax
43072b:	e8 23 db ff ff       	call   0x42e253
430730:	8b 45 08             	mov    0x8(%ebp),%eax
430733:	5d                   	pop    %ebp
430734:	c2 08 00             	ret    $0x8
430737:	cc                   	int3
430738:	cc                   	int3
430739:	cc                   	int3
43073a:	cc                   	int3
43073b:	cc                   	int3
43073c:	cc                   	int3
43073d:	cc                   	int3
43073e:	cc                   	int3
43073f:	cc                   	int3
430740:	8b ff                	mov    %edi,%edi
430742:	55                   	push   %ebp
430743:	8b ec                	mov    %esp,%ebp
430745:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
430749:	75 0f                	jne    0x43075a
43074b:	8b 4d 08             	mov    0x8(%ebp),%ecx
43074e:	68 04 a7 40 00       	push   $0x40a704
430753:	e8 fb da ff ff       	call   0x42e253
430758:	eb 0b                	jmp    0x430765
43075a:	ff 75 0c             	push   0xc(%ebp)
43075d:	ff 75 08             	push   0x8(%ebp)
430760:	e8 ab ff ff ff       	call   0x430710
430765:	8b 45 08             	mov    0x8(%ebp),%eax
430768:	5d                   	pop    %ebp
430769:	c2 08 00             	ret    $0x8
43076c:	cc                   	int3
43076d:	cc                   	int3
43076e:	cc                   	int3
43076f:	cc                   	int3
430770:	8b ff                	mov    %edi,%edi
430772:	55                   	push   %ebp
430773:	8b ec                	mov    %esp,%ebp
430775:	ff 75 0c             	push   0xc(%ebp)
430778:	e8 8f e6 fe ff       	call   0x41ee0c
43077d:	59                   	pop    %ecx
43077e:	85 c0                	test   %eax,%eax
430780:	75 05                	jne    0x430787
430782:	b8 e8 a6 40 00       	mov    $0x40a6e8,%eax
430787:	8b 4d 08             	mov    0x8(%ebp),%ecx
43078a:	50                   	push   %eax
43078b:	e8 c3 da ff ff       	call   0x42e253
430790:	8b 45 08             	mov    0x8(%ebp),%eax
430793:	5d                   	pop    %ebp
430794:	c2 08 00             	ret    $0x8
430797:	cc                   	int3
430798:	cc                   	int3
430799:	cc                   	int3
43079a:	cc                   	int3
43079b:	cc                   	int3
43079c:	cc                   	int3
43079d:	cc                   	int3
43079e:	cc                   	int3
43079f:	cc                   	int3
4307a0:	b8 e0 a6 40 00       	mov    $0x40a6e0,%eax
4307a5:	c3                   	ret
4307a6:	cc                   	int3
4307a7:	cc                   	int3
4307a8:	cc                   	int3
4307a9:	cc                   	int3
4307aa:	cc                   	int3
4307ab:	cc                   	int3
4307ac:	cc                   	int3
4307ad:	cc                   	int3
4307ae:	cc                   	int3
4307af:	cc                   	int3
4307b0:	b8 f8 a6 40 00       	mov    $0x40a6f8,%eax
4307b5:	c3                   	ret
4307b6:	cc                   	int3
4307b7:	cc                   	int3
4307b8:	cc                   	int3
4307b9:	cc                   	int3
4307ba:	cc                   	int3
4307bb:	cc                   	int3
4307bc:	cc                   	int3
4307bd:	cc                   	int3
4307be:	cc                   	int3
4307bf:	cc                   	int3
4307c0:	b8 1c a7 40 00       	mov    $0x40a71c,%eax
4307c5:	c3                   	ret
4307c6:	8b ff                	mov    %edi,%edi
4307c8:	55                   	push   %ebp
4307c9:	8b ec                	mov    %esp,%ebp
4307cb:	6a 00                	push   $0x0
4307cd:	6a 04                	push   $0x4
4307cf:	8d 45 10             	lea    0x10(%ebp),%eax
4307d2:	50                   	push   %eax
4307d3:	51                   	push   %ecx
4307d4:	52                   	push   %edx
4307d5:	6a 2b                	push   $0x2b