4cd3db:	03 c2                	add    %edx,%eax
4cd3dd:	83 f8 02             	cmp    $0x2,%eax
4cd3e0:	7c 46                	jl     0x4cd428
4cd3e2:	83 ee 58             	sub    $0x58,%esi
4cd3e5:	8d 4c 24 08          	lea    0x8(%esp),%ecx
4cd3e9:	56                   	push   %esi
4cd3ea:	e8 1a e6 f4 ff       	call   0x41ba09
4cd3ef:	57                   	push   %edi
4cd3f0:	8b ce                	mov    %esi,%ecx
4cd3f2:	e8 ea dc f3 ff       	call   0x40b0e1
4cd3f7:	ff 74 24 70          	push   0x70(%esp)
4cd3fb:	2b f7                	sub    %edi,%esi
4cd3fd:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
4cd401:	b8 e9 a2 8b 2e       	mov    $0x2e8ba2e9,%eax
4cd406:	f7 ee                	imul   %esi
4cd408:	51                   	push   %ecx
4cd409:	c1 fa 04             	sar    $0x4,%edx
4cd40c:	8b c2                	mov    %edx,%eax
4cd40e:	c1 e8 1f             	shr    $0x1f,%eax
4cd411:	03 c2                	add    %edx,%eax
4cd413:	50                   	push   %eax
4cd414:	6a 00                	push   $0x0
4cd416:	57                   	push   %edi
4cd417:	e8 49 b6 f5 ff       	call   0x428a65
4cd41c:	83 c4 14             	add    $0x14,%esp
4cd41f:	8d 4c 24 08          	lea    0x8(%esp),%ecx
4cd423:	e8 fc 0b f5 ff       	call   0x41e024
4cd428:	8b 4c 24 60          	mov    0x60(%esp),%ecx
4cd42c:	5f                   	pop    %edi
4cd42d:	5e                   	pop    %esi
4cd42e:	33 cc                	xor    %esp,%ecx
4cd430:	e8 81 e3 f4 ff       	call   0x41b7b6
4cd435:	83 c4 5c             	add    $0x5c,%esp
4cd438:	c3                   	ret
4cd439:	cc                   	int3
4cd43a:	cc                   	int3
4cd43b:	cc                   	int3
4cd43c:	cc                   	int3
4cd43d:	cc                   	int3
4cd43e:	cc                   	int3
4cd43f:	cc                   	int3
4cd440:	cc                   	int3
4cd441:	cc                   	int3
4cd442:	cc                   	int3
4cd443:	cc                   	int3
4cd444:	cc                   	int3
4cd445:	cc                   	int3
4cd446:	cc                   	int3
4cd447:	cc                   	int3
4cd448:	cc                   	int3
4cd449:	cc                   	int3
4cd44a:	cc                   	int3
4cd44b:	cc                   	int3
4cd44c:	cc                   	int3
4cd44d:	cc                   	int3
4cd44e:	cc                   	int3
4cd44f:	cc                   	int3
4cd450:	cc                   	int3
4cd451:	cc                   	int3
4cd452:	cc                   	int3
4cd453:	cc                   	int3
4cd454:	cc                   	int3
4cd455:	cc                   	int3
4cd456:	cc                   	int3
4cd457:	cc                   	int3
4cd458:	cc                   	int3
4cd459:	cc                   	int3
4cd45a:	cc                   	int3
4cd45b:	cc                   	int3
4cd45c:	cc                   	int3
4cd45d:	cc                   	int3
4cd45e:	cc                   	int3
4cd45f:	cc                   	int3
4cd460:	83 ec 60             	sub    $0x60,%esp
4cd463:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
4cd468:	33 c4                	xor    %esp,%eax
4cd46a:	89 44 24 5c          	mov    %eax,0x5c(%esp)
4cd46e:	56                   	push   %esi
4cd46f:	8b 74 24 6c          	mov    0x6c(%esp),%esi
4cd473:	b8 c9 42 16 b2       	mov    $0xb21642c9,%eax
4cd478:	57                   	push   %edi
4cd479:	8b 7c 24 6c          	mov    0x6c(%esp),%edi
4cd47d:	8b ce                	mov    %esi,%ecx
4cd47f:	2b cf                	sub    %edi,%ecx
4cd481:	f7 e9                	imul   %ecx
4cd483:	03 d1                	add    %ecx,%edx
4cd485:	c1 fa 06             	sar    $0x6,%edx
4cd488:	8b c2                	mov    %edx,%eax
4cd48a:	c1 e8 1f             	shr    $0x1f,%eax
4cd48d:	03 c2                	add    %edx,%eax
4cd48f:	83 f8 02             	cmp    $0x2,%eax
4cd492:	7c 48                	jl     0x4cd4dc
4cd494:	83 ee 5c             	sub    $0x5c,%esi
4cd497:	8d 4c 24 08          	lea    0x8(%esp),%ecx
4cd49b:	56                   	push   %esi
4cd49c:	e8 95 18 f4 ff       	call   0x40ed36
4cd4a1:	57                   	push   %edi
4cd4a2:	8b ce                	mov    %esi,%ecx
4cd4a4:	e8 d2 3a f6 ff       	call   0x430f7b
4cd4a9:	ff 74 24 74          	push   0x74(%esp)
4cd4ad:	2b f7                	sub    %edi,%esi
4cd4af:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
4cd4b3:	b8 c9 42 16 b2       	mov    $0xb21642c9,%eax
4cd4b8:	f7 ee                	imul   %esi
4cd4ba:	51                   	push   %ecx
4cd4bb:	03 d6                	add    %esi,%edx
4cd4bd:	c1 fa 06             	sar    $0x6,%edx
4cd4c0:	8b c2                	mov    %edx,%eax
4cd4c2:	c1 e8 1f             	shr    $0x1f,%eax
4cd4c5:	03 c2                	add    %edx,%eax
4cd4c7:	50                   	push   %eax
4cd4c8:	6a 00                	push   $0x0
4cd4ca:	57                   	push   %edi
4cd4cb:	e8 2e 22 f5 ff       	call   0x41f6fe
4cd4d0:	83 c4 14             	add    $0x14,%esp
4cd4d3:	8d 4c 24 08          	lea    0x8(%esp),%ecx
4cd4d7:	e8 88 f4 f3 ff       	call   0x40c964
4cd4dc:	8b 4c 24 64          	mov    0x64(%esp),%ecx
4cd4e0:	5f                   	pop    %edi
4cd4e1:	5e                   	pop    %esi
4cd4e2:	33 cc                	xor    %esp,%ecx
4cd4e4:	e8 cd e2 f4 ff       	call   0x41b7b6
4cd4e9:	83 c4 60             	add    $0x60,%esp
4cd4ec:	c3                   	ret
4cd4ed:	cc                   	int3
4cd4ee:	cc                   	int3
4cd4ef:	cc                   	int3
4cd4f0:	cc                   	int3
4cd4f1:	cc                   	int3
4cd4f2:	cc                   	int3
4cd4f3:	cc                   	int3
4cd4f4:	cc                   	int3
4cd4f5:	cc                   	int3
4cd4f6:	cc                   	int3
4cd4f7:	cc                   	int3
4cd4f8:	cc                   	int3
4cd4f9:	cc                   	int3
4cd4fa:	cc                   	int3
4cd4fb:	cc                   	int3
4cd4fc:	cc                   	int3
4cd4fd:	cc                   	int3
4cd4fe:	cc                   	int3
4cd4ff:	cc                   	int3
4cd500:	cc                   	int3
4cd501:	cc                   	int3
4cd502:	cc                   	int3
4cd503:	cc                   	int3
4cd504:	cc                   	int3
4cd505:	cc                   	int3
4cd506:	cc                   	int3
4cd507:	cc                   	int3
4cd508:	cc                   	int3
4cd509:	cc                   	int3
4cd50a:	cc                   	int3
4cd50b:	cc                   	int3
4cd50c:	cc                   	int3
4cd50d:	cc                   	int3
4cd50e:	cc                   	int3
4cd50f:	cc                   	int3
4cd510:	32 c0                	xor    %al,%al
4cd512:	c3                   	ret
4cd513:	cc                   	int3
4cd514:	cc                   	int3
4cd515:	cc                   	int3
4cd516:	cc                   	int3
4cd517:	cc                   	int3
4cd518:	cc                   	int3
4cd519:	cc                   	int3
4cd51a:	cc                   	int3
4cd51b:	cc                   	int3
4cd51c:	cc                   	int3
4cd51d:	cc                   	int3
4cd51e:	cc                   	int3
4cd51f:	cc                   	int3
4cd520:	8b 44 24 04          	mov    0x4(%esp),%eax
4cd524:	c3                   	ret
4cd525:	cc                   	int3
4cd526:	cc                   	int3
4cd527:	cc                   	int3
4cd528:	cc                   	int3
4cd529:	cc                   	int3
4cd52a:	cc                   	int3
4cd52b:	cc                   	int3
4cd52c:	cc                   	int3
4cd52d:	cc                   	int3
4cd52e:	cc                   	int3
4cd52f:	cc                   	int3
4cd530:	8b 44 24 04          	mov    0x4(%esp),%eax
4cd534:	c3                   	ret
4cd535:	cc                   	int3
4cd536:	cc                   	int3
4cd537:	cc                   	int3
4cd538:	cc                   	int3
4cd539:	cc                   	int3
4cd53a:	cc                   	int3
4cd53b:	cc                   	int3
4cd53c:	cc                   	int3
4cd53d:	cc                   	int3
4cd53e:	cc                   	int3
4cd53f:	cc                   	int3
4cd540:	32 c0                	xor    %al,%al
4cd542:	c3                   	ret
4cd543:	cc                   	int3
4cd544:	cc                   	int3
4cd545:	cc                   	int3
4cd546:	cc                   	int3
4cd547:	cc                   	int3
4cd548:	cc                   	int3
4cd549:	cc                   	int3
4cd54a:	cc                   	int3
4cd54b:	cc                   	int3
4cd54c:	cc                   	int3
4cd54d:	cc                   	int3
4cd54e:	cc                   	int3
4cd54f:	cc                   	int3
4cd550:	32 c0                	xor    %al,%al
4cd552:	c3                   	ret
4cd553:	cc                   	int3
4cd554:	cc                   	int3
4cd555:	cc                   	int3
4cd556:	cc                   	int3
4cd557:	cc                   	int3
4cd558:	cc                   	int3
4cd559:	cc                   	int3
4cd55a:	cc                   	int3
4cd55b:	cc                   	int3
4cd55c:	cc                   	int3
4cd55d:	cc                   	int3
4cd55e:	cc                   	int3
4cd55f:	cc                   	int3
4cd560:	32 c0                	xor    %al,%al
4cd562:	c3                   	ret
4cd563:	cc                   	int3
4cd564:	cc                   	int3
4cd565:	cc                   	int3
4cd566:	cc                   	int3
4cd567:	cc                   	int3
4cd568:	cc                   	int3
4cd569:	cc                   	int3
4cd56a:	cc                   	int3
4cd56b:	cc                   	int3
4cd56c:	cc                   	int3
4cd56d:	cc                   	int3
4cd56e:	cc                   	int3
4cd56f:	cc                   	int3
4cd570:	32 c0                	xor    %al,%al
4cd572:	c3                   	ret
4cd573:	cc                   	int3
4cd574:	cc                   	int3
4cd575:	cc                   	int3
4cd576:	cc                   	int3
4cd577:	cc                   	int3
4cd578:	cc                   	int3
4cd579:	cc                   	int3
4cd57a:	cc                   	int3
4cd57b:	cc                   	int3
4cd57c:	cc                   	int3
4cd57d:	cc                   	int3
4cd57e:	cc                   	int3
4cd57f:	cc                   	int3
4cd580:	83 ec 08             	sub    $0x8,%esp
4cd583:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4cd587:	8d 41 ff             	lea    -0x1(%ecx),%eax
4cd58a:	99                   	cltd
4cd58b:	2b c2                	sub    %edx,%eax
4cd58d:	d1 f8                	sar    $1,%eax
4cd58f:	89 04 24             	mov    %eax,(%esp)
4cd592:	39 4c 24 14          	cmp    %ecx,0x14(%esp)
4cd596:	0f 8d 9e 00 00 00    	jge    0x4cd63a
4cd59c:	57                   	push   %edi
4cd59d:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
4cd5a1:	53                   	push   %ebx
4cd5a2:	55                   	push   %ebp
4cd5a3:	56                   	push   %esi
4cd5a4:	6b c0 58             	imul   $0x58,%eax,%eax
4cd5a7:	03 44 24 1c          	add    0x1c(%esp),%eax
4cd5ab:	89 44 24 14          	mov    %eax,0x14(%esp)
4cd5af:	83 c0 3c             	add    $0x3c,%eax
4cd5b2:	83 7f 50 10          	cmpl   $0x10,0x50(%edi)
4cd5b6:	72 05                	jb     0x4cd5bd
4cd5b8:	8b 77 3c             	mov    0x3c(%edi),%esi
4cd5bb:	eb 03                	jmp    0x4cd5c0
4cd5bd:	8d 77 3c             	lea    0x3c(%edi),%esi
4cd5c0:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
4cd5c4:	8d 48 10             	lea    0x10(%eax),%ecx
4cd5c7:	72 02                	jb     0x4cd5cb
4cd5c9:	8b 00                	mov    (%eax),%eax
4cd5cb:	8b 5f 4c             	mov    0x4c(%edi),%ebx
4cd5ce:	8b d3                	mov    %ebx,%edx
4cd5d0:	8b 29                	mov    (%ecx),%ebp
4cd5d2:	3b eb                	cmp    %ebx,%ebp
4cd5d4:	0f 42 d5             	cmovb  %ebp,%edx
4cd5d7:	85 d2                	test   %edx,%edx
4cd5d9:	74 73                	je     0x4cd64e
4cd5db:	83 ea 04             	sub    $0x4,%edx
4cd5de:	72 11                	jb     0x4cd5f1
4cd5e0:	8b 08                	mov    (%eax),%ecx
4cd5e2:	3b 0e                	cmp    (%esi),%ecx
4cd5e4:	75 10                	jne    0x4cd5f6
4cd5e6:	83 c0 04             	add    $0x4,%eax
4cd5e9:	83 c6 04             	add    $0x4,%esi
4cd5ec:	83 ea 04             	sub    $0x4,%edx
4cd5ef:	73 ef                	jae    0x4cd5e0
4cd5f1:	83 fa fc             	cmp    $0xfffffffc,%edx
4cd5f4:	74 34                	je     0x4cd62a
4cd5f6:	8a 08                	mov    (%eax),%cl
4cd5f8:	3a 0e                	cmp    (%esi),%cl
4cd5fa:	75 27                	jne    0x4cd623
4cd5fc:	83 fa fd             	cmp    $0xfffffffd,%edx
4cd5ff:	74 29                	je     0x4cd62a
4cd601:	8a 48 01             	mov    0x1(%eax),%cl
4cd604:	3a 4e 01             	cmp    0x1(%esi),%cl
4cd607:	75 1a                	jne    0x4cd623
4cd609:	83 fa fe             	cmp    $0xfffffffe,%edx
4cd60c:	74 1c                	je     0x4cd62a
4cd60e:	8a 48 02             	mov    0x2(%eax),%cl
4cd611:	3a 4e 02             	cmp    0x2(%esi),%cl
4cd614:	75 0d                	jne    0x4cd623
4cd616:	83 fa ff             	cmp    $0xffffffff,%edx
4cd619:	74 0f                	je     0x4cd62a
4cd61b:	8a 40 03             	mov    0x3(%eax),%al
4cd61e:	3a 46 03             	cmp    0x3(%esi),%al
4cd621:	74 07                	je     0x4cd62a
4cd623:	1b c0                	sbb    %eax,%eax
4cd625:	83 c8 01             	or     $0x1,%eax
4cd628:	eb 02                	jmp    0x4cd62c
4cd62a:	33 c0                	xor    %eax,%eax
4cd62c:	85 c0                	test   %eax,%eax
4cd62e:	74 1e                	je     0x4cd64e
4cd630:	78 20                	js     0x4cd652
4cd632:	8b 4c 24 20          	mov    0x20(%esp),%ecx
4cd636:	5e                   	pop    %esi
4cd637:	5d                   	pop    %ebp
4cd638:	5b                   	pop    %ebx
4cd639:	5f                   	pop    %edi
4cd63a:	ff 74 24 18          	push   0x18(%esp)
4cd63e:	6b c9 58             	imul   $0x58,%ecx,%ecx
4cd641:	03 4c 24 10          	add    0x10(%esp),%ecx
4cd645:	e8 97 da f3 ff       	call   0x40b0e1
4cd64a:	83 c4 08             	add    $0x8,%esp
4cd64d:	c3                   	ret
4cd64e:	3b eb                	cmp    %ebx,%ebp
4cd650:	73 e0                	jae    0x4cd632
4cd652:	6b 4c 24 20 58       	imul   $0x58,0x20(%esp),%ecx
4cd657:	ff 74 24 14          	push   0x14(%esp)
4cd65b:	03 4c 24 20          	add    0x20(%esp),%ecx
4cd65f:	e8 7d da f3 ff       	call   0x40b0e1
4cd664:	8b 44 24 10          	mov    0x10(%esp),%eax
4cd668:	8b c8                	mov    %eax,%ecx
4cd66a:	48                   	dec    %eax