47f362:	85 c9                	test   %ecx,%ecx
47f364:	74 05                	je     0x47f36b
47f366:	8b 45 0c             	mov    0xc(%ebp),%eax
47f369:	89 01                	mov    %eax,(%ecx)
47f36b:	b8 00 00 00 80       	mov    $0x80000000,%eax
47f370:	eb 25                	jmp    0x47f397
47f372:	85 c9                	test   %ecx,%ecx
47f374:	74 05                	je     0x47f37b
47f376:	8b 45 0c             	mov    0xc(%ebp),%eax
47f379:	89 01                	mov    %eax,(%ecx)
47f37b:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
47f380:	eb 15                	jmp    0x47f397
47f382:	f6 c3 02             	test   $0x2,%bl
47f385:	74 02                	je     0x47f389
47f387:	f7 de                	neg    %esi
47f389:	8b 55 10             	mov    0x10(%ebp),%edx
47f38c:	85 d2                	test   %edx,%edx
47f38e:	74 05                	je     0x47f395
47f390:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47f393:	89 0a                	mov    %ecx,(%edx)
47f395:	8b c6                	mov    %esi,%eax
47f397:	5f                   	pop    %edi
47f398:	5e                   	pop    %esi
47f399:	5b                   	pop    %ebx
47f39a:	c9                   	leave
47f39b:	c3                   	ret
47f39c:	8b ff                	mov    %edi,%edi
47f39e:	55                   	push   %ebp
47f39f:	8b ec                	mov    %esp,%ebp
47f3a1:	81 ec a0 00 00 00    	sub    $0xa0,%esp
47f3a7:	8d 4d 0c             	lea    0xc(%ebp),%ecx
47f3aa:	53                   	push   %ebx
47f3ab:	56                   	push   %esi
47f3ac:	57                   	push   %edi
47f3ad:	e8 b9 9d ff ff       	call   0x47916b
47f3b2:	84 c0                	test   %al,%al
47f3b4:	74 2f                	je     0x47f3e5
47f3b6:	8b 7d 14             	mov    0x14(%ebp),%edi
47f3b9:	85 ff                	test   %edi,%edi
47f3bb:	74 3d                	je     0x47f3fa
47f3bd:	83 ff 02             	cmp    $0x2,%edi
47f3c0:	7c 05                	jl     0x47f3c7
47f3c2:	83 ff 24             	cmp    $0x24,%edi
47f3c5:	7e 33                	jle    0x47f3fa
47f3c7:	8b 45 08             	mov    0x8(%ebp),%eax
47f3ca:	50                   	push   %eax
47f3cb:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
47f3cf:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
47f3d6:	33 c0                	xor    %eax,%eax
47f3d8:	50                   	push   %eax
47f3d9:	50                   	push   %eax
47f3da:	50                   	push   %eax
47f3db:	50                   	push   %eax
47f3dc:	50                   	push   %eax
47f3dd:	e8 c2 a1 ff ff       	call   0x4795a4
47f3e2:	83 c4 18             	add    $0x18,%esp
47f3e5:	8b 4d 10             	mov    0x10(%ebp),%ecx
47f3e8:	85 c9                	test   %ecx,%ecx
47f3ea:	0f 84 af 05 00 00    	je     0x47f99f
47f3f0:	8b 45 0c             	mov    0xc(%ebp),%eax
47f3f3:	89 01                	mov    %eax,(%ecx)
47f3f5:	e9 a5 05 00 00       	jmp    0x47f99f
47f3fa:	8b 45 0c             	mov    0xc(%ebp),%eax
47f3fd:	33 db                	xor    %ebx,%ebx
47f3ff:	8b 4d 08             	mov    0x8(%ebp),%ecx
47f402:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
47f406:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
47f40c:	0f b7 30             	movzwl (%eax),%esi
47f40f:	83 c0 02             	add    $0x2,%eax
47f412:	89 45 0c             	mov    %eax,0xc(%ebp)
47f415:	38 59 14             	cmp    %bl,0x14(%ecx)
47f418:	75 13                	jne    0x47f42d
47f41a:	e8 f1 9c ff ff       	call   0x479110
47f41f:	eb 0c                	jmp    0x47f42d
47f421:	8b 45 0c             	mov    0xc(%ebp),%eax
47f424:	0f b7 30             	movzwl (%eax),%esi
47f427:	83 c0 02             	add    $0x2,%eax
47f42a:	89 45 0c             	mov    %eax,0xc(%ebp)
47f42d:	6a 08                	push   $0x8
47f42f:	56                   	push   %esi
47f430:	e8 6b a4 00 00       	call   0x4898a0
47f435:	59                   	pop    %ecx
47f436:	59                   	pop    %ecx
47f437:	85 c0                	test   %eax,%eax
47f439:	75 e6                	jne    0x47f421
47f43b:	0f b6 45 18          	movzbl 0x18(%ebp),%eax
47f43f:	89 45 fc             	mov    %eax,-0x4(%ebp)
47f442:	66 83 fe 2d          	cmp    $0x2d,%si
47f446:	75 08                	jne    0x47f450
47f448:	83 c8 02             	or     $0x2,%eax
47f44b:	89 45 fc             	mov    %eax,-0x4(%ebp)
47f44e:	eb 06                	jmp    0x47f456
47f450:	66 83 fe 2b          	cmp    $0x2b,%si
47f454:	75 0e                	jne    0x47f464
47f456:	8b 55 0c             	mov    0xc(%ebp),%edx
47f459:	0f b7 32             	movzwl (%edx),%esi
47f45c:	83 c2 02             	add    $0x2,%edx
47f45f:	89 55 0c             	mov    %edx,0xc(%ebp)
47f462:	eb 03                	jmp    0x47f467
47f464:	8b 55 0c             	mov    0xc(%ebp),%edx
47f467:	c7 45 f4 3a 00 00 00 	movl   $0x3a,-0xc(%ebp)
47f46e:	b8 10 ff 00 00       	mov    $0xff10,%eax
47f473:	c7 85 70 ff ff ff 60 	movl   $0x660,-0x90(%ebp)
47f47a:	06 00 00
47f47d:	c7 45 f0 6a 06 00 00 	movl   $0x66a,-0x10(%ebp)
47f484:	c7 45 ec f0 06 00 00 	movl   $0x6f0,-0x14(%ebp)
47f48b:	c7 45 e8 fa 06 00 00 	movl   $0x6fa,-0x18(%ebp)
47f492:	c7 45 e4 66 09 00 00 	movl   $0x966,-0x1c(%ebp)
47f499:	c7 45 e0 70 09 00 00 	movl   $0x970,-0x20(%ebp)
47f4a0:	c7 45 dc e6 09 00 00 	movl   $0x9e6,-0x24(%ebp)
47f4a7:	c7 45 d8 f0 09 00 00 	movl   $0x9f0,-0x28(%ebp)
47f4ae:	c7 45 d4 66 0a 00 00 	movl   $0xa66,-0x2c(%ebp)
47f4b5:	c7 45 d0 70 0a 00 00 	movl   $0xa70,-0x30(%ebp)
47f4bc:	c7 45 cc e6 0a 00 00 	movl   $0xae6,-0x34(%ebp)
47f4c3:	c7 45 c8 f0 0a 00 00 	movl   $0xaf0,-0x38(%ebp)
47f4ca:	c7 45 c4 66 0b 00 00 	movl   $0xb66,-0x3c(%ebp)
47f4d1:	c7 45 c0 70 0b 00 00 	movl   $0xb70,-0x40(%ebp)
47f4d8:	c7 45 bc 66 0c 00 00 	movl   $0xc66,-0x44(%ebp)
47f4df:	c7 45 b8 70 0c 00 00 	movl   $0xc70,-0x48(%ebp)
47f4e6:	c7 45 b4 e6 0c 00 00 	movl   $0xce6,-0x4c(%ebp)
47f4ed:	c7 45 b0 f0 0c 00 00 	movl   $0xcf0,-0x50(%ebp)
47f4f4:	c7 45 ac 66 0d 00 00 	movl   $0xd66,-0x54(%ebp)
47f4fb:	c7 45 a8 70 0d 00 00 	movl   $0xd70,-0x58(%ebp)
47f502:	c7 45 a4 50 0e 00 00 	movl   $0xe50,-0x5c(%ebp)
47f509:	c7 45 a0 5a 0e 00 00 	movl   $0xe5a,-0x60(%ebp)
47f510:	c7 45 9c d0 0e 00 00 	movl   $0xed0,-0x64(%ebp)
47f517:	c7 45 98 da 0e 00 00 	movl   $0xeda,-0x68(%ebp)
47f51e:	c7 45 94 20 0f 00 00 	movl   $0xf20,-0x6c(%ebp)
47f525:	c7 45 90 2a 0f 00 00 	movl   $0xf2a,-0x70(%ebp)
47f52c:	c7 45 8c 40 10 00 00 	movl   $0x1040,-0x74(%ebp)
47f533:	c7 45 88 4a 10 00 00 	movl   $0x104a,-0x78(%ebp)
47f53a:	c7 45 84 e0 17 00 00 	movl   $0x17e0,-0x7c(%ebp)
47f541:	c7 45 80 ea 17 00 00 	movl   $0x17ea,-0x80(%ebp)
47f548:	c7 85 7c ff ff ff 10 	movl   $0x1810,-0x84(%ebp)
47f54f:	18 00 00
47f552:	c7 85 78 ff ff ff 1a 	movl   $0x181a,-0x88(%ebp)
47f559:	18 00 00
47f55c:	c7 85 74 ff ff ff 1a 	movl   $0xff1a,-0x8c(%ebp)
47f563:	ff 00 00
47f566:	6a 30                	push   $0x30
47f568:	59                   	pop    %ecx
47f569:	85 ff                	test   %edi,%edi
47f56b:	74 09                	je     0x47f576
47f56d:	83 ff 10             	cmp    $0x10,%edi
47f570:	0f 85 ea 01 00 00    	jne    0x47f760
47f576:	66 3b f1             	cmp    %cx,%si
47f579:	0f 82 71 01 00 00    	jb     0x47f6f0
47f57f:	66 3b 75 f4          	cmp    -0xc(%ebp),%si
47f583:	73 0a                	jae    0x47f58f
47f585:	0f b7 c6             	movzwl %si,%eax
47f588:	2b c1                	sub    %ecx,%eax
47f58a:	e9 5c 01 00 00       	jmp    0x47f6eb
47f58f:	66 3b f0             	cmp    %ax,%si
47f592:	0f 83 42 01 00 00    	jae    0x47f6da
47f598:	8b 8d 70 ff ff ff    	mov    -0x90(%ebp),%ecx
47f59e:	66 3b f1             	cmp    %cx,%si
47f5a1:	0f 82 49 01 00 00    	jb     0x47f6f0
47f5a7:	66 3b 75 f0          	cmp    -0x10(%ebp),%si
47f5ab:	72 d8                	jb     0x47f585
47f5ad:	8b 4d ec             	mov    -0x14(%ebp),%ecx
47f5b0:	66 3b f1             	cmp    %cx,%si
47f5b3:	0f 82 37 01 00 00    	jb     0x47f6f0
47f5b9:	66 3b 75 e8          	cmp    -0x18(%ebp),%si
47f5bd:	72 c6                	jb     0x47f585
47f5bf:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
47f5c2:	66 3b f1             	cmp    %cx,%si
47f5c5:	0f 82 25 01 00 00    	jb     0x47f6f0
47f5cb:	66 3b 75 e0          	cmp    -0x20(%ebp),%si
47f5cf:	72 b4                	jb     0x47f585
47f5d1:	8b 4d dc             	mov    -0x24(%ebp),%ecx
47f5d4:	66 3b f1             	cmp    %cx,%si
47f5d7:	0f 82 13 01 00 00    	jb     0x47f6f0
47f5dd:	66 3b 75 d8          	cmp    -0x28(%ebp),%si
47f5e1:	72 a2                	jb     0x47f585
47f5e3:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
47f5e6:	66 3b f1             	cmp    %cx,%si
47f5e9:	0f 82 01 01 00 00    	jb     0x47f6f0
47f5ef:	66 3b 75 d0          	cmp    -0x30(%ebp),%si
47f5f3:	72 90                	jb     0x47f585
47f5f5:	8b 4d cc             	mov    -0x34(%ebp),%ecx
47f5f8:	66 3b f1             	cmp    %cx,%si
47f5fb:	0f 82 ef 00 00 00    	jb     0x47f6f0
47f601:	66 3b 75 c8          	cmp    -0x38(%ebp),%si
47f605:	0f 82 7a ff ff ff    	jb     0x47f585
47f60b:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
47f60e:	66 3b f1             	cmp    %cx,%si
47f611:	0f 82 d9 00 00 00    	jb     0x47f6f0
47f617:	66 3b 75 c0          	cmp    -0x40(%ebp),%si
47f61b:	0f 82 64 ff ff ff    	jb     0x47f585
47f621:	8b 4d bc             	mov    -0x44(%ebp),%ecx
47f624:	66 3b f1             	cmp    %cx,%si
47f627:	0f 82 c3 00 00 00    	jb     0x47f6f0
47f62d:	66 3b 75 b8          	cmp    -0x48(%ebp),%si
47f631:	0f 82 4e ff ff ff    	jb     0x47f585
47f637:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
47f63a:	66 3b f1             	cmp    %cx,%si
47f63d:	0f 82 ad 00 00 00    	jb     0x47f6f0
47f643:	66 3b 75 b0          	cmp    -0x50(%ebp),%si
47f647:	0f 82 38 ff ff ff    	jb     0x47f585
47f64d:	8b 4d ac             	mov    -0x54(%ebp),%ecx
47f650:	66 3b f1             	cmp    %cx,%si
47f653:	0f 82 97 00 00 00    	jb     0x47f6f0
47f659:	66 3b 75 a8          	cmp    -0x58(%ebp),%si
47f65d:	0f 82 22 ff ff ff    	jb     0x47f585
47f663:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
47f666:	66 3b f1             	cmp    %cx,%si
47f669:	0f 82 81 00 00 00    	jb     0x47f6f0
47f66f:	66 3b 75 a0          	cmp    -0x60(%ebp),%si
47f673:	0f 82 0c ff ff ff    	jb     0x47f585
47f679:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
47f67c:	66 3b f1             	cmp    %cx,%si
47f67f:	72 6f                	jb     0x47f6f0
47f681:	66 3b 75 98          	cmp    -0x68(%ebp),%si
47f685:	0f 82 fa fe ff ff    	jb     0x47f585
47f68b:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
47f68e:	66 3b f1             	cmp    %cx,%si
47f691:	72 5d                	jb     0x47f6f0
47f693:	66 3b 75 90          	cmp    -0x70(%ebp),%si
47f697:	0f 82 e8 fe ff ff    	jb     0x47f585
47f69d:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
47f6a0:	66 3b f1             	cmp    %cx,%si
47f6a3:	72 4b                	jb     0x47f6f0
47f6a5:	66 3b 75 88          	cmp    -0x78(%ebp),%si
47f6a9:	0f 82 d6 fe ff ff    	jb     0x47f585
47f6af:	8b 4d 84             	mov    -0x7c(%ebp),%ecx
47f6b2:	66 3b f1             	cmp    %cx,%si
47f6b5:	72 39                	jb     0x47f6f0
47f6b7:	66 3b 75 80          	cmp    -0x80(%ebp),%si
47f6bb:	0f 82 c4 fe ff ff    	jb     0x47f585
47f6c1:	8b 8d 7c ff ff ff    	mov    -0x84(%ebp),%ecx
47f6c7:	66 3b f1             	cmp    %cx,%si
47f6ca:	72 24                	jb     0x47f6f0
47f6cc:	66 3b b5 78 ff ff ff 	cmp    -0x88(%ebp),%si
47f6d3:	73 1b                	jae    0x47f6f0
47f6d5:	e9 ab fe ff ff       	jmp    0x47f585
47f6da:	66 3b b5 74 ff ff ff 	cmp    -0x8c(%ebp),%si
47f6e1:	73 0d                	jae    0x47f6f0
47f6e3:	0f b7 c6             	movzwl %si,%eax
47f6e6:	2d 10 ff 00 00       	sub    $0xff10,%eax
47f6eb:	83 f8 ff             	cmp    $0xffffffff,%eax
47f6ee:	75 25                	jne    0x47f715
47f6f0:	0f b7 c6             	movzwl %si,%eax
47f6f3:	83 f8 41             	cmp    $0x41,%eax
47f6f6:	72 0a                	jb     0x47f702
47f6f8:	83 f8 5a             	cmp    $0x5a,%eax
47f6fb:	77 05                	ja     0x47f702
47f6fd:	8d 48 9f             	lea    -0x61(%eax),%ecx
47f700:	eb 08                	jmp    0x47f70a
47f702:	8d 48 9f             	lea    -0x61(%eax),%ecx
47f705:	83 f9 19             	cmp    $0x19,%ecx
47f708:	77 4c                	ja     0x47f756
47f70a:	83 f9 19             	cmp    $0x19,%ecx
47f70d:	77 03                	ja     0x47f712
47f70f:	83 c0 e0             	add    $0xffffffe0,%eax
47f712:	83 c0 c9             	add    $0xffffffc9,%eax
47f715:	85 c0                	test   %eax,%eax
47f717:	75 3d                	jne    0x47f756
47f719:	0f b7 02             	movzwl (%edx),%eax
47f71c:	8d 4a 02             	lea    0x2(%edx),%ecx
47f71f:	89 4d 0c             	mov    %ecx,0xc(%ebp)
47f722:	83 f8 78             	cmp    $0x78,%eax
47f725:	74 1a                	je     0x47f741
47f727:	83 f8 58             	cmp    $0x58,%eax
47f72a:	74 15                	je     0x47f741
47f72c:	85 ff                	test   %edi,%edi
47f72e:	75 06                	jne    0x47f736
47f730:	6a 08                	push   $0x8
47f732:	5f                   	pop    %edi
47f733:	89 7d 14             	mov    %edi,0x14(%ebp)
47f736:	50                   	push   %eax
47f737:	8d 4d 0c             	lea    0xc(%ebp),%ecx
47f73a:	e8 9b 99 ff ff       	call   0x4790da
47f73f:	eb 1f                	jmp    0x47f760
47f741:	85 ff                	test   %edi,%edi
47f743:	75 06                	jne    0x47f74b
47f745:	6a 10                	push   $0x10
47f747:	5f                   	pop    %edi
47f748:	89 7d 14             	mov    %edi,0x14(%ebp)
47f74b:	0f b7 31             	movzwl (%ecx),%esi
47f74e:	83 c1 02             	add    $0x2,%ecx
47f751:	89 4d 0c             	mov    %ecx,0xc(%ebp)
47f754:	eb 0a                	jmp    0x47f760
47f756:	85 ff                	test   %edi,%edi
47f758:	75 06                	jne    0x47f760
47f75a:	6a 0a                	push   $0xa
47f75c:	5f                   	pop    %edi
47f75d:	89 7d 14             	mov    %edi,0x14(%ebp)
47f760:	8b c7                	mov    %edi,%eax
47f762:	99                   	cltd
47f763:	8b ca                	mov    %edx,%ecx
47f765:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
47f76b:	51                   	push   %ecx
47f76c:	50                   	push   %eax
47f76d:	6a ff                	push   $0xffffffff
47f76f:	6a ff                	push   $0xffffffff
47f771:	89 4d f4             	mov    %ecx,-0xc(%ebp)
47f774:	e8 e7 ab fe ff       	call   0x46a360
47f779:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
47f77f:	89 95 68 ff ff ff    	mov    %edx,-0x98(%ebp)
47f785:	6a 30                	push   $0x30
47f787:	58                   	pop    %eax
47f788:	66 3b f0             	cmp    %ax,%si
47f78b:	0f 82 5a 01 00 00    	jb     0x47f8eb
47f791:	6a 3a                	push   $0x3a
47f793:	59                   	pop    %ecx
47f794:	66 3b f1             	cmp    %cx,%si
47f797:	0f 82 44 01 00 00    	jb     0x47f8e1
47f79d:	b8 10 ff 00 00       	mov    $0xff10,%eax
47f7a2:	66 3b f0             	cmp    %ax,%si
47f7a5:	0f 83 2d 01 00 00    	jae    0x47f8d8
47f7ab:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
47f7b1:	66 3b f0             	cmp    %ax,%si
47f7b4:	0f 82 31 01 00 00    	jb     0x47f8eb
47f7ba:	66 3b 75 f0          	cmp    -0x10(%ebp),%si
47f7be:	0f 82 1d 01 00 00    	jb     0x47f8e1
47f7c4:	8b 45 ec             	mov    -0x14(%ebp),%eax
47f7c7:	66 3b f0             	cmp    %ax,%si
47f7ca:	0f 82 1b 01 00 00    	jb     0x47f8eb
47f7d0:	66 3b 75 e8          	cmp    -0x18(%ebp),%si
47f7d4:	0f 82 07 01 00 00    	jb     0x47f8e1
47f7da:	8b 45 e4             	mov    -0x1c(%ebp),%eax
47f7dd:	66 3b f0             	cmp    %ax,%si
47f7e0:	0f 82 05 01 00 00    	jb     0x47f8eb
47f7e6:	66 3b 75 e0          	cmp    -0x20(%ebp),%si
47f7ea:	0f 82 f1 00 00 00    	jb     0x47f8e1
47f7f0:	8b 45 dc             	mov    -0x24(%ebp),%eax
47f7f3:	66 3b f0             	cmp    %ax,%si
47f7f6:	0f 82 ef 00 00 00    	jb     0x47f8eb
47f7fc:	66 3b 75 d8          	cmp    -0x28(%ebp),%si
47f800:	0f 82 db 00 00 00    	jb     0x47f8e1
47f806:	8b 45 d4             	mov    -0x2c(%ebp),%eax
47f809:	66 3b f0             	cmp    %ax,%si
47f80c:	0f 82 d9 00 00 00    	jb     0x47f8eb
47f812:	66 3b 75 d0          	cmp    -0x30(%ebp),%si
47f816:	0f 82 c5 00 00 00    	jb     0x47f8e1
47f81c:	8b 45 cc             	mov    -0x34(%ebp),%eax
47f81f:	66 3b f0             	cmp    %ax,%si
47f822:	0f 82 c3 00 00 00    	jb     0x47f8eb
47f828:	66 3b 75 c8          	cmp    -0x38(%ebp),%si
47f82c:	0f 82 af 00 00 00    	jb     0x47f8e1
47f832:	8b 45 c4             	mov    -0x3c(%ebp),%eax
47f835:	66 3b f0             	cmp    %ax,%si
47f838:	0f 82 ad 00 00 00    	jb     0x47f8eb
47f83e:	66 3b 75 c0          	cmp    -0x40(%ebp),%si
47f842:	0f 82 99 00 00 00    	jb     0x47f8e1
47f848:	8b 45 bc             	mov    -0x44(%ebp),%eax
47f84b:	66 3b f0             	cmp    %ax,%si
47f84e:	0f 82 97 00 00 00    	jb     0x47f8eb
47f854:	66 3b 75 b8          	cmp    -0x48(%ebp),%si
47f858:	0f 82 83 00 00 00    	jb     0x47f8e1