6434dc:	2b c1                	sub    %ecx,%eax
6434de:	c1 f8 02             	sar    $0x2,%eax
6434e1:	50                   	push   %eax
6434e2:	51                   	push   %ecx
6434e3:	8b ce                	mov    %esi,%ecx
6434e5:	e8 67 8b df ff       	call   0x43c051
6434ea:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
6434f0:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
6434f7:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
6434fe:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
643503:	74 0b                	je     0x643510
643505:	6a 0c                	push   $0xc
643507:	56                   	push   %esi
643508:	e8 8f e9 db ff       	call   0x401e9c
64350d:	83 c4 08             	add    $0x8,%esp
643510:	8b c6                	mov    %esi,%eax
643512:	5e                   	pop    %esi
643513:	c2 04 00             	ret    $0x4
643516:	cc                   	int3
643517:	cc                   	int3
643518:	cc                   	int3
643519:	cc                   	int3
64351a:	cc                   	int3
64351b:	cc                   	int3
64351c:	cc                   	int3
64351d:	cc                   	int3
64351e:	cc                   	int3
64351f:	cc                   	int3
643520:	cc                   	int3
643521:	cc                   	int3
643522:	cc                   	int3
643523:	cc                   	int3
643524:	cc                   	int3
643525:	cc                   	int3
643526:	cc                   	int3
643527:	cc                   	int3
643528:	cc                   	int3
643529:	cc                   	int3
64352a:	cc                   	int3
64352b:	cc                   	int3
64352c:	cc                   	int3
64352d:	cc                   	int3
64352e:	cc                   	int3
64352f:	cc                   	int3
643530:	56                   	push   %esi
643531:	8b f1                	mov    %ecx,%esi
643533:	8b 0e                	mov    (%esi),%ecx
643535:	85 c9                	test   %ecx,%ecx
643537:	74 25                	je     0x64355e
643539:	8b 46 08             	mov    0x8(%esi),%eax
64353c:	2b c1                	sub    %ecx,%eax
64353e:	c1 f8 02             	sar    $0x2,%eax
643541:	50                   	push   %eax
643542:	51                   	push   %ecx
643543:	8b ce                	mov    %esi,%ecx
643545:	e8 ae b6 df ff       	call   0x43ebf8
64354a:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
643550:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
643557:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
64355e:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
643563:	74 0b                	je     0x643570
643565:	6a 0c                	push   $0xc
643567:	56                   	push   %esi
643568:	e8 2f e9 db ff       	call   0x401e9c
64356d:	83 c4 08             	add    $0x8,%esp
643570:	8b c6                	mov    %esi,%eax
643572:	5e                   	pop    %esi
643573:	c2 04 00             	ret    $0x4
643576:	cc                   	int3
643577:	cc                   	int3
643578:	cc                   	int3
643579:	cc                   	int3
64357a:	cc                   	int3
64357b:	cc                   	int3
64357c:	cc                   	int3
64357d:	cc                   	int3
64357e:	cc                   	int3
64357f:	cc                   	int3
643580:	cc                   	int3
643581:	cc                   	int3
643582:	cc                   	int3
643583:	cc                   	int3
643584:	cc                   	int3
643585:	cc                   	int3
643586:	cc                   	int3
643587:	cc                   	int3
643588:	cc                   	int3
643589:	cc                   	int3
64358a:	cc                   	int3
64358b:	cc                   	int3
64358c:	cc                   	int3
64358d:	cc                   	int3
64358e:	cc                   	int3
64358f:	cc                   	int3
643590:	56                   	push   %esi
643591:	8b f1                	mov    %ecx,%esi
643593:	8b 0e                	mov    (%esi),%ecx
643595:	85 c9                	test   %ecx,%ecx
643597:	74 25                	je     0x6435be
643599:	8b 46 08             	mov    0x8(%esi),%eax
64359c:	2b c1                	sub    %ecx,%eax
64359e:	c1 f8 02             	sar    $0x2,%eax
6435a1:	50                   	push   %eax
6435a2:	51                   	push   %ecx
6435a3:	8b ce                	mov    %esi,%ecx
6435a5:	e8 e0 c1 dd ff       	call   0x41f78a
6435aa:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
6435b0:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
6435b7:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
6435be:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
6435c3:	74 0b                	je     0x6435d0
6435c5:	6a 0c                	push   $0xc
6435c7:	56                   	push   %esi
6435c8:	e8 cf e8 db ff       	call   0x401e9c
6435cd:	83 c4 08             	add    $0x8,%esp
6435d0:	8b c6                	mov    %esi,%eax
6435d2:	5e                   	pop    %esi
6435d3:	c2 04 00             	ret    $0x4
6435d6:	cc                   	int3
6435d7:	cc                   	int3
6435d8:	cc                   	int3
6435d9:	cc                   	int3
6435da:	cc                   	int3
6435db:	cc                   	int3
6435dc:	cc                   	int3
6435dd:	cc                   	int3
6435de:	cc                   	int3
6435df:	cc                   	int3
6435e0:	cc                   	int3
6435e1:	cc                   	int3
6435e2:	cc                   	int3
6435e3:	cc                   	int3
6435e4:	cc                   	int3
6435e5:	cc                   	int3
6435e6:	cc                   	int3
6435e7:	cc                   	int3
6435e8:	cc                   	int3
6435e9:	cc                   	int3
6435ea:	cc                   	int3
6435eb:	cc                   	int3
6435ec:	cc                   	int3
6435ed:	cc                   	int3
6435ee:	cc                   	int3
6435ef:	cc                   	int3
6435f0:	56                   	push   %esi
6435f1:	8b f1                	mov    %ecx,%esi
6435f3:	8b 0e                	mov    (%esi),%ecx
6435f5:	85 c9                	test   %ecx,%ecx
6435f7:	74 25                	je     0x64361e
6435f9:	8b 46 08             	mov    0x8(%esi),%eax
6435fc:	2b c1                	sub    %ecx,%eax
6435fe:	c1 f8 02             	sar    $0x2,%eax
643601:	50                   	push   %eax
643602:	51                   	push   %ecx
643603:	8b ce                	mov    %esi,%ecx
643605:	e8 22 06 de ff       	call   0x423c2c
64360a:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
643610:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
643617:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
64361e:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
643623:	74 0b                	je     0x643630
643625:	6a 0c                	push   $0xc
643627:	56                   	push   %esi
643628:	e8 6f e8 db ff       	call   0x401e9c
64362d:	83 c4 08             	add    $0x8,%esp
643630:	8b c6                	mov    %esi,%eax
643632:	5e                   	pop    %esi
643633:	c2 04 00             	ret    $0x4
643636:	cc                   	int3
643637:	cc                   	int3
643638:	cc                   	int3
643639:	cc                   	int3
64363a:	cc                   	int3
64363b:	cc                   	int3
64363c:	cc                   	int3
64363d:	cc                   	int3
64363e:	cc                   	int3
64363f:	cc                   	int3
643640:	cc                   	int3
643641:	cc                   	int3
643642:	cc                   	int3
643643:	cc                   	int3
643644:	cc                   	int3
643645:	cc                   	int3
643646:	cc                   	int3
643647:	cc                   	int3
643648:	cc                   	int3
643649:	cc                   	int3
64364a:	cc                   	int3
64364b:	cc                   	int3
64364c:	cc                   	int3
64364d:	cc                   	int3
64364e:	cc                   	int3
64364f:	cc                   	int3
643650:	56                   	push   %esi
643651:	8b f1                	mov    %ecx,%esi
643653:	57                   	push   %edi
643654:	8b 7c 24 0c          	mov    0xc(%esp),%edi
643658:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
64365e:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
643665:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
64366c:	85 ff                	test   %edi,%edi
64366e:	75 07                	jne    0x643677
643670:	5f                   	pop    %edi
643671:	32 c0                	xor    %al,%al
643673:	5e                   	pop    %esi
643674:	c2 04 00             	ret    $0x4
643677:	81 ff ff ff ff 3f    	cmp    $0x3fffffff,%edi
64367d:	77 1a                	ja     0x643699
64367f:	57                   	push   %edi
643680:	e8 18 cc dd ff       	call   0x42029d
643685:	89 06                	mov    %eax,(%esi)
643687:	89 46 04             	mov    %eax,0x4(%esi)
64368a:	8b 06                	mov    (%esi),%eax
64368c:	8d 04 b8             	lea    (%eax,%edi,4),%eax
64368f:	89 46 08             	mov    %eax,0x8(%esi)
643692:	b0 01                	mov    $0x1,%al
643694:	5f                   	pop    %edi
643695:	5e                   	pop    %esi
643696:	c2 04 00             	ret    $0x4
643699:	68 58 20 bd 00       	push   $0xbd2058
64369e:	e8 73 61 de ff       	call   0x429816
6436a3:	cc                   	int3
6436a4:	cc                   	int3
6436a5:	cc                   	int3
6436a6:	cc                   	int3
6436a7:	cc                   	int3
6436a8:	cc                   	int3
6436a9:	cc                   	int3
6436aa:	cc                   	int3
6436ab:	cc                   	int3
6436ac:	cc                   	int3
6436ad:	cc                   	int3
6436ae:	cc                   	int3
6436af:	cc                   	int3
6436b0:	cc                   	int3
6436b1:	cc                   	int3
6436b2:	cc                   	int3
6436b3:	cc                   	int3
6436b4:	cc                   	int3
6436b5:	cc                   	int3
6436b6:	cc                   	int3
6436b7:	cc                   	int3
6436b8:	cc                   	int3
6436b9:	cc                   	int3
6436ba:	cc                   	int3
6436bb:	cc                   	int3
6436bc:	cc                   	int3
6436bd:	cc                   	int3
6436be:	cc                   	int3
6436bf:	cc                   	int3
6436c0:	56                   	push   %esi
6436c1:	8b f1                	mov    %ecx,%esi
6436c3:	57                   	push   %edi
6436c4:	8b 7c 24 0c          	mov    0xc(%esp),%edi
6436c8:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
6436ce:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
6436d5:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
6436dc:	85 ff                	test   %edi,%edi
6436de:	75 07                	jne    0x6436e7
6436e0:	5f                   	pop    %edi
6436e1:	32 c0                	xor    %al,%al
6436e3:	5e                   	pop    %esi
6436e4:	c2 04 00             	ret    $0x4
6436e7:	81 ff ff ff ff 3f    	cmp    $0x3fffffff,%edi
6436ed:	77 1a                	ja     0x643709
6436ef:	57                   	push   %edi
6436f0:	e8 58 f8 dd ff       	call   0x422f4d
6436f5:	89 06                	mov    %eax,(%esi)
6436f7:	89 46 04             	mov    %eax,0x4(%esi)
6436fa:	8b 06                	mov    (%esi),%eax
6436fc:	8d 04 b8             	lea    (%eax,%edi,4),%eax
6436ff:	89 46 08             	mov    %eax,0x8(%esi)
643702:	b0 01                	mov    $0x1,%al
643704:	5f                   	pop    %edi
643705:	5e                   	pop    %esi
643706:	c2 04 00             	ret    $0x4
643709:	68 58 20 bd 00       	push   $0xbd2058
64370e:	e8 03 61 de ff       	call   0x429816
643713:	cc                   	int3
643714:	cc                   	int3
643715:	cc                   	int3
643716:	cc                   	int3
643717:	cc                   	int3
643718:	cc                   	int3
643719:	cc                   	int3
64371a:	cc                   	int3
64371b:	cc                   	int3
64371c:	cc                   	int3
64371d:	cc                   	int3
64371e:	cc                   	int3
64371f:	cc                   	int3
643720:	cc                   	int3
643721:	cc                   	int3
643722:	cc                   	int3
643723:	cc                   	int3
643724:	cc                   	int3
643725:	cc                   	int3
643726:	cc                   	int3
643727:	cc                   	int3
643728:	cc                   	int3
643729:	cc                   	int3
64372a:	cc                   	int3
64372b:	cc                   	int3
64372c:	cc                   	int3
64372d:	cc                   	int3
64372e:	cc                   	int3
64372f:	cc                   	int3
643730:	56                   	push   %esi
643731:	8b f1                	mov    %ecx,%esi
643733:	57                   	push   %edi
643734:	8b 7c 24 0c          	mov    0xc(%esp),%edi
643738:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
64373e:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
643745:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
64374c:	85 ff                	test   %edi,%edi
64374e:	75 07                	jne    0x643757
643750:	5f                   	pop    %edi
643751:	32 c0                	xor    %al,%al
643753:	5e                   	pop    %esi
643754:	c2 04 00             	ret    $0x4
643757:	81 ff ff ff ff 3f    	cmp    $0x3fffffff,%edi
64375d:	77 1a                	ja     0x643779
64375f:	57                   	push   %edi
643760:	e8 a4 62 df ff       	call   0x439a09
643765:	89 06                	mov    %eax,(%esi)
643767:	89 46 04             	mov    %eax,0x4(%esi)
64376a:	8b 06                	mov    (%esi),%eax
64376c:	8d 04 b8             	lea    (%eax,%edi,4),%eax
64376f:	89 46 08             	mov    %eax,0x8(%esi)
643772:	b0 01                	mov    $0x1,%al
643774:	5f                   	pop    %edi
643775:	5e                   	pop    %esi
643776:	c2 04 00             	ret    $0x4
643779:	68 58 20 bd 00       	push   $0xbd2058
64377e:	e8 93 60 de ff       	call   0x429816
643783:	cc                   	int3
643784:	cc                   	int3
643785:	cc                   	int3
643786:	cc                   	int3
643787:	cc                   	int3
643788:	cc                   	int3
643789:	cc                   	int3
64378a:	cc                   	int3
64378b:	cc                   	int3
64378c:	cc                   	int3
64378d:	cc                   	int3
64378e:	cc                   	int3
64378f:	cc                   	int3
643790:	cc                   	int3