63e30d:	83 c4 04             	add    $0x4,%esp
63e310:	3b f2                	cmp    %edx,%esi
63e312:	73 0e                	jae    0x63e322
63e314:	8b ca                	mov    %edx,%ecx
63e316:	8d 3c b7             	lea    (%edi,%esi,4),%edi
63e319:	2b ce                	sub    %esi,%ecx
63e31b:	33 c0                	xor    %eax,%eax
63e31d:	f3 ab                	rep stos %eax,%es:(%edi)
63e31f:	8b 7d fc             	mov    -0x4(%ebp),%edi
63e322:	89 7b 04             	mov    %edi,0x4(%ebx)
63e325:	8d 4b 08             	lea    0x8(%ebx),%ecx
63e328:	89 13                	mov    %edx,(%ebx)
63e32a:	e8 71 d4 ff ff       	call   0x63b7a0
63e32f:	5f                   	pop    %edi
63e330:	5e                   	pop    %esi
63e331:	b0 01                	mov    $0x1,%al
63e333:	5b                   	pop    %ebx
63e334:	8b e5                	mov    %ebp,%esp
63e336:	5d                   	pop    %ebp
63e337:	c2 04 00             	ret    $0x4
63e33a:	cc                   	int3
63e33b:	cc                   	int3
63e33c:	cc                   	int3
63e33d:	cc                   	int3
63e33e:	cc                   	int3
63e33f:	cc                   	int3
63e340:	55                   	push   %ebp
63e341:	8b ec                	mov    %esp,%ebp
63e343:	6a ff                	push   $0xffffffff
63e345:	68 9f 43 66 00       	push   $0x66439f
63e34a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
63e350:	50                   	push   %eax
63e351:	53                   	push   %ebx
63e352:	56                   	push   %esi
63e353:	57                   	push   %edi
63e354:	a1 d4 89 72 00       	mov    0x7289d4,%eax
63e359:	33 c5                	xor    %ebp,%eax
63e35b:	50                   	push   %eax
63e35c:	8d 45 f4             	lea    -0xc(%ebp),%eax
63e35f:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
63e365:	8b f1                	mov    %ecx,%esi
63e367:	8b 7d 08             	mov    0x8(%ebp),%edi
63e36a:	3b 3e                	cmp    (%esi),%edi
63e36c:	72 40                	jb     0x63e3ae
63e36e:	8b 06                	mov    (%esi),%eax
63e370:	03 c0                	add    %eax,%eax
63e372:	50                   	push   %eax
63e373:	e8 28 ff ff ff       	call   0x63e2a0
63e378:	84 c0                	test   %al,%al
63e37a:	74 1c                	je     0x63e398
63e37c:	3b 3e                	cmp    (%esi),%edi
63e37e:	72 2e                	jb     0x63e3ae
63e380:	e8 5b 80 ff ff       	call   0x6363e0
63e385:	68 58 0a 6e 00       	push   $0x6e0a58
63e38a:	68 fc 56 6e 00       	push   $0x6e56fc
63e38f:	50                   	push   %eax
63e390:	8b 08                	mov    (%eax),%ecx
63e392:	ff 51 1c             	call   *0x1c(%ecx)
63e395:	83 c4 0c             	add    $0xc,%esp
63e398:	32 c0                	xor    %al,%al
63e39a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
63e39d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
63e3a4:	59                   	pop    %ecx
63e3a5:	5f                   	pop    %edi
63e3a6:	5e                   	pop    %esi
63e3a7:	5b                   	pop    %ebx
63e3a8:	8b e5                	mov    %ebp,%esp
63e3aa:	5d                   	pop    %ebp
63e3ab:	c2 08 00             	ret    $0x8
63e3ae:	8b 5d 0c             	mov    0xc(%ebp),%ebx
63e3b1:	85 db                	test   %ebx,%ebx
63e3b3:	75 2e                	jne    0x63e3e3
63e3b5:	e8 26 80 ff ff       	call   0x6363e0
63e3ba:	68 98 0a 6e 00       	push   $0x6e0a98
63e3bf:	68 fc 56 6e 00       	push   $0x6e56fc
63e3c4:	50                   	push   %eax
63e3c5:	8b 08                	mov    (%eax),%ecx
63e3c7:	ff 51 1c             	call   *0x1c(%ecx)
63e3ca:	83 c4 0c             	add    $0xc,%esp
63e3cd:	32 c0                	xor    %al,%al
63e3cf:	8b 4d f4             	mov    -0xc(%ebp),%ecx
63e3d2:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
63e3d9:	59                   	pop    %ecx
63e3da:	5f                   	pop    %edi
63e3db:	5e                   	pop    %esi
63e3dc:	5b                   	pop    %ebx
63e3dd:	8b e5                	mov    %ebp,%esp
63e3df:	5d                   	pop    %ebp
63e3e0:	c2 08 00             	ret    $0x8
63e3e3:	8b 46 04             	mov    0x4(%esi),%eax
63e3e6:	c1 e7 02             	shl    $0x2,%edi
63e3e9:	89 7d 08             	mov    %edi,0x8(%ebp)
63e3ec:	8b 0c 07             	mov    (%edi,%eax,1),%ecx
63e3ef:	85 c9                	test   %ecx,%ecx
63e3f1:	74 24                	je     0x63e417
63e3f3:	e8 38 d5 ff ff       	call   0x63b930
63e3f8:	8b 46 04             	mov    0x4(%esi),%eax
63e3fb:	8b 3c 07             	mov    (%edi,%eax,1),%edi
63e3fe:	85 ff                	test   %edi,%edi
63e400:	74 12                	je     0x63e414
63e402:	8b cf                	mov    %edi,%ecx
63e404:	e8 37 d4 ff ff       	call   0x63b840
63e409:	6a 48                	push   $0x48
63e40b:	57                   	push   %edi
63e40c:	e8 61 2c fa ff       	call   0x5e1072
63e411:	83 c4 08             	add    $0x8,%esp
63e414:	8b 7d 08             	mov    0x8(%ebp),%edi
63e417:	6a 48                	push   $0x48
63e419:	e8 24 2c fa ff       	call   0x5e1042
63e41e:	83 c4 04             	add    $0x4,%esp
63e421:	89 45 08             	mov    %eax,0x8(%ebp)
63e424:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
63e42b:	85 c0                	test   %eax,%eax
63e42d:	74 13                	je     0x63e442
63e42f:	6a 00                	push   $0x0
63e431:	6a 00                	push   $0x0
63e433:	6a 00                	push   $0x0
63e435:	6a 00                	push   $0x0
63e437:	8b c8                	mov    %eax,%ecx
63e439:	e8 82 d3 ff ff       	call   0x63b7c0
63e43e:	8b c8                	mov    %eax,%ecx
63e440:	eb 02                	jmp    0x63e444
63e442:	33 c9                	xor    %ecx,%ecx
63e444:	89 0b                	mov    %ecx,(%ebx)
63e446:	8b 46 04             	mov    0x4(%esi),%eax
63e449:	89 0c 07             	mov    %ecx,(%edi,%eax,1)
63e44c:	b0 01                	mov    $0x1,%al
63e44e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
63e451:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
63e458:	59                   	pop    %ecx
63e459:	5f                   	pop    %edi
63e45a:	5e                   	pop    %esi
63e45b:	5b                   	pop    %ebx
63e45c:	8b e5                	mov    %ebp,%esp
63e45e:	5d                   	pop    %ebp
63e45f:	c2 08 00             	ret    $0x8
63e462:	cc                   	int3
63e463:	cc                   	int3
63e464:	cc                   	int3
63e465:	cc                   	int3
63e466:	cc                   	int3
63e467:	cc                   	int3
63e468:	cc                   	int3
63e469:	cc                   	int3
63e46a:	cc                   	int3
63e46b:	cc                   	int3
63e46c:	cc                   	int3
63e46d:	cc                   	int3
63e46e:	cc                   	int3
63e46f:	cc                   	int3
63e470:	56                   	push   %esi
63e471:	8b f1                	mov    %ecx,%esi
63e473:	57                   	push   %edi
63e474:	8d 4e 08             	lea    0x8(%esi),%ecx
63e477:	e8 04 d3 ff ff       	call   0x63b780
63e47c:	33 ff                	xor    %edi,%edi
63e47e:	39 3e                	cmp    %edi,(%esi)
63e480:	76 3c                	jbe    0x63e4be
63e482:	53                   	push   %ebx
63e483:	8b 46 04             	mov    0x4(%esi),%eax
63e486:	8b 0c b8             	mov    (%eax,%edi,4),%ecx
63e489:	85 c9                	test   %ecx,%ecx
63e48b:	74 2b                	je     0x63e4b8
63e48d:	e8 9e d4 ff ff       	call   0x63b930
63e492:	8b 46 04             	mov    0x4(%esi),%eax
63e495:	8b 1c b8             	mov    (%eax,%edi,4),%ebx
63e498:	85 db                	test   %ebx,%ebx
63e49a:	74 12                	je     0x63e4ae
63e49c:	8b cb                	mov    %ebx,%ecx
63e49e:	e8 9d d3 ff ff       	call   0x63b840
63e4a3:	6a 48                	push   $0x48
63e4a5:	53                   	push   %ebx
63e4a6:	e8 c7 2b fa ff       	call   0x5e1072
63e4ab:	83 c4 08             	add    $0x8,%esp
63e4ae:	8b 46 04             	mov    0x4(%esi),%eax
63e4b1:	c7 04 b8 00 00 00 00 	movl   $0x0,(%eax,%edi,4)
63e4b8:	47                   	inc    %edi
63e4b9:	3b 3e                	cmp    (%esi),%edi
63e4bb:	72 c6                	jb     0x63e483
63e4bd:	5b                   	pop    %ebx
63e4be:	ff 76 04             	push   0x4(%esi)
63e4c1:	e8 c3 2b fa ff       	call   0x5e1089
63e4c6:	83 c4 04             	add    $0x4,%esp
63e4c9:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
63e4d0:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
63e4d6:	8d 4e 08             	lea    0x8(%esi),%ecx
63e4d9:	5f                   	pop    %edi
63e4da:	5e                   	pop    %esi
63e4db:	e9 c0 d2 ff ff       	jmp    0x63b7a0
63e4e0:	55                   	push   %ebp
63e4e1:	8b ec                	mov    %esp,%ebp
63e4e3:	51                   	push   %ecx
63e4e4:	53                   	push   %ebx
63e4e5:	56                   	push   %esi
63e4e6:	8b f1                	mov    %ecx,%esi
63e4e8:	57                   	push   %edi
63e4e9:	8d 46 08             	lea    0x8(%esi),%eax
63e4ec:	8b c8                	mov    %eax,%ecx
63e4ee:	89 45 fc             	mov    %eax,-0x4(%ebp)
63e4f1:	e8 8a d2 ff ff       	call   0x63b780
63e4f6:	8b 7d 08             	mov    0x8(%ebp),%edi
63e4f9:	b3 01                	mov    $0x1,%bl
63e4fb:	3b 3e                	cmp    (%esi),%edi
63e4fd:	72 33                	jb     0x63e532
63e4ff:	e8 dc 7e ff ff       	call   0x6363e0
63e504:	8b c8                	mov    %eax,%ecx
63e506:	8b 06                	mov    (%esi),%eax
63e508:	50                   	push   %eax
63e509:	57                   	push   %edi
63e50a:	68 a8 0b 6e 00       	push   $0x6e0ba8
63e50f:	8b 11                	mov    (%ecx),%edx
63e511:	68 fc 56 6e 00       	push   $0x6e56fc
63e516:	51                   	push   %ecx
63e517:	ff 52 1c             	call   *0x1c(%edx)
63e51a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
63e51d:	83 c4 14             	add    $0x14,%esp
63e520:	32 db                	xor    %bl,%bl
63e522:	e8 79 d2 ff ff       	call   0x63b7a0
63e527:	5f                   	pop    %edi
63e528:	5e                   	pop    %esi
63e529:	8a c3                	mov    %bl,%al
63e52b:	5b                   	pop    %ebx
63e52c:	8b e5                	mov    %ebp,%esp
63e52e:	5d                   	pop    %ebp
63e52f:	c2 04 00             	ret    $0x4
63e532:	8b 46 04             	mov    0x4(%esi),%eax
63e535:	8b 0c b8             	mov    (%eax,%edi,4),%ecx
63e538:	85 c9                	test   %ecx,%ecx
63e53a:	74 30                	je     0x63e56c
63e53c:	e8 ef d3 ff ff       	call   0x63b930
63e541:	8b 46 04             	mov    0x4(%esi),%eax
63e544:	8b 3c b8             	mov    (%eax,%edi,4),%edi
63e547:	85 ff                	test   %edi,%edi
63e549:	74 12                	je     0x63e55d
63e54b:	8b cf                	mov    %edi,%ecx
63e54d:	e8 ee d2 ff ff       	call   0x63b840
63e552:	6a 48                	push   $0x48
63e554:	57                   	push   %edi
63e555:	e8 18 2b fa ff       	call   0x5e1072
63e55a:	83 c4 08             	add    $0x8,%esp
63e55d:	8b 46 04             	mov    0x4(%esi),%eax
63e560:	b3 01                	mov    $0x1,%bl
63e562:	8b 55 08             	mov    0x8(%ebp),%edx
63e565:	c7 04 90 00 00 00 00 	movl   $0x0,(%eax,%edx,4)
63e56c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
63e56f:	e8 2c d2 ff ff       	call   0x63b7a0
63e574:	5f                   	pop    %edi
63e575:	5e                   	pop    %esi
63e576:	8a c3                	mov    %bl,%al
63e578:	5b                   	pop    %ebx
63e579:	8b e5                	mov    %ebp,%esp
63e57b:	5d                   	pop    %ebp
63e57c:	c2 04 00             	ret    $0x4
63e57f:	cc                   	int3
63e580:	55                   	push   %ebp
63e581:	8b ec                	mov    %esp,%ebp
63e583:	83 ec 08             	sub    $0x8,%esp
63e586:	53                   	push   %ebx
63e587:	56                   	push   %esi
63e588:	57                   	push   %edi
63e589:	8b f9                	mov    %ecx,%edi
63e58b:	8d 47 08             	lea    0x8(%edi),%eax
63e58e:	8b c8                	mov    %eax,%ecx
63e590:	89 45 f8             	mov    %eax,-0x8(%ebp)
63e593:	e8 e8 d1 ff ff       	call   0x63b780
63e598:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
63e59c:	8d 77 04             	lea    0x4(%edi),%esi
63e59f:	89 75 fc             	mov    %esi,-0x4(%ebp)
63e5a2:	74 13                	je     0x63e5b7
63e5a4:	8b cf                	mov    %edi,%ecx
63e5a6:	e8 c5 fe ff ff       	call   0x63e470
63e5ab:	6a 04                	push   $0x4
63e5ad:	ff 36                	push   (%esi)
63e5af:	e8 be 2a fa ff       	call   0x5e1072
63e5b4:	83 c4 08             	add    $0x8,%esp
63e5b7:	8b 5d 08             	mov    0x8(%ebp),%ebx
63e5ba:	33 c9                	xor    %ecx,%ecx
63e5bc:	8b c3                	mov    %ebx,%eax
63e5be:	ba 04 00 00 00       	mov    $0x4,%edx
63e5c3:	f7 e2                	mul    %edx
63e5c5:	68 38 26 73 00       	push   $0x732638
63e5ca:	0f 90 c1             	seto   %cl
63e5cd:	f7 d9                	neg    %ecx
63e5cf:	0b c8                	or     %eax,%ecx
63e5d1:	51                   	push   %ecx
63e5d2:	e8 04 cb 00 00       	call   0x64b0db
63e5d7:	83 c4 08             	add    $0x8,%esp
63e5da:	89 06                	mov    %eax,(%esi)
63e5dc:	85 c0                	test   %eax,%eax
63e5de:	75 2e                	jne    0x63e60e
63e5e0:	e8 fb 7d ff ff       	call   0x6363e0
63e5e5:	53                   	push   %ebx
63e5e6:	68 e0 09 6e 00       	push   $0x6e09e0
63e5eb:	68 fc 56 6e 00       	push   $0x6e56fc
63e5f0:	8b 08                	mov    (%eax),%ecx
63e5f2:	50                   	push   %eax
63e5f3:	ff 51 1c             	call   *0x1c(%ecx)
63e5f6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
63e5f9:	83 c4 10             	add    $0x10,%esp
63e5fc:	32 db                	xor    %bl,%bl
63e5fe:	e8 9d d1 ff ff       	call   0x63b7a0
63e603:	5f                   	pop    %edi
63e604:	5e                   	pop    %esi
63e605:	8a c3                	mov    %bl,%al
63e607:	5b                   	pop    %ebx
63e608:	8b e5                	mov    %ebp,%esp
63e60a:	5d                   	pop    %ebp
63e60b:	c2 04 00             	ret    $0x4
63e60e:	33 d2                	xor    %edx,%edx
63e610:	89 1f                	mov    %ebx,(%edi)
63e612:	c6 45 0b 01          	movb   $0x1,0xb(%ebp)
63e616:	85 db                	test   %ebx,%ebx
63e618:	74 4a                	je     0x63e664
63e61a:	83 fb 04             	cmp    $0x4,%ebx
63e61d:	72 30                	jb     0x63e64f
63e61f:	8b 3e                	mov    (%esi),%edi
63e621:	8d 43 ff             	lea    -0x1(%ebx),%eax
63e624:	8d 04 87             	lea    (%edi,%eax,4),%eax
63e627:	3b fe                	cmp    %esi,%edi
63e629:	77 04                	ja     0x63e62f
63e62b:	3b c6                	cmp    %esi,%eax
63e62d:	73 20                	jae    0x63e64f
63e62f:	8b c3                	mov    %ebx,%eax
63e631:	8b cb                	mov    %ebx,%ecx
63e633:	83 e0 03             	and    $0x3,%eax
63e636:	2b c8                	sub    %eax,%ecx
63e638:	83 c2 04             	add    $0x4,%edx
63e63b:	3b d1                	cmp    %ecx,%edx
63e63d:	72 f9                	jb     0x63e638
63e63f:	83 c1 03             	add    $0x3,%ecx
63e642:	c1 e9 02             	shr    $0x2,%ecx
63e645:	c1 e1 04             	shl    $0x4,%ecx
63e648:	c1 e9 02             	shr    $0x2,%ecx
63e64b:	33 c0                	xor    %eax,%eax
63e64d:	f3 ab                	rep stos %eax,%es:(%edi)
63e64f:	3b d3                	cmp    %ebx,%edx
63e651:	73 11                	jae    0x63e664
63e653:	8b 36                	mov    (%esi),%esi
63e655:	c7 04 96 00 00 00 00 	movl   $0x0,(%esi,%edx,4)
63e65c:	42                   	inc    %edx
63e65d:	8b 75 fc             	mov    -0x4(%ebp),%esi
63e660:	3b d3                	cmp    %ebx,%edx
63e662:	72 ef                	jb     0x63e653
63e664:	8b 4d f8             	mov    -0x8(%ebp),%ecx
63e667:	8a 5d 0b             	mov    0xb(%ebp),%bl
63e66a:	e8 31 d1 ff ff       	call   0x63b7a0
63e66f:	5f                   	pop    %edi
63e670:	5e                   	pop    %esi
63e671:	8a c3                	mov    %bl,%al
63e673:	5b                   	pop    %ebx