5e0447:	8b 45 0c             	mov    0xc(%ebp),%eax
5e044a:	89 01                	mov    %eax,(%ecx)
5e044c:	e9 80 01 00 00       	jmp    0x5e05d1
5e0451:	8b 45 0c             	mov    0xc(%ebp),%eax
5e0454:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
5e0458:	57                   	push   %edi
5e0459:	8b 7d 08             	mov    0x8(%ebp),%edi
5e045c:	8a 18                	mov    (%eax),%bl
5e045e:	89 45 ec             	mov    %eax,-0x14(%ebp)
5e0461:	40                   	inc    %eax
5e0462:	88 5d fc             	mov    %bl,-0x4(%ebp)
5e0465:	80 7f 14 00          	cmpb   $0x0,0x14(%edi)
5e0469:	89 45 0c             	mov    %eax,0xc(%ebp)
5e046c:	75 07                	jne    0x5e0475
5e046e:	8b cf                	mov    %edi,%ecx
5e0470:	e8 0b a3 ff ff       	call   0x5da780
5e0475:	83 c7 0c             	add    $0xc,%edi
5e0478:	eb 0c                	jmp    0x5e0486
5e047a:	8b 45 0c             	mov    0xc(%ebp),%eax
5e047d:	8a 18                	mov    (%eax),%bl
5e047f:	40                   	inc    %eax
5e0480:	88 5d fc             	mov    %bl,-0x4(%ebp)
5e0483:	89 45 0c             	mov    %eax,0xc(%ebp)
5e0486:	57                   	push   %edi
5e0487:	0f b6 c3             	movzbl %bl,%eax
5e048a:	6a 08                	push   $0x8
5e048c:	50                   	push   %eax
5e048d:	e8 a0 f4 ff ff       	call   0x5df932
5e0492:	83 c4 0c             	add    $0xc,%esp
5e0495:	85 c0                	test   %eax,%eax
5e0497:	75 e1                	jne    0x5e047a
5e0499:	0f b6 45 18          	movzbl 0x18(%ebp),%eax
5e049d:	89 45 f8             	mov    %eax,-0x8(%ebp)
5e04a0:	80 fb 2d             	cmp    $0x2d,%bl
5e04a3:	75 08                	jne    0x5e04ad
5e04a5:	83 c8 02             	or     $0x2,%eax
5e04a8:	89 45 f8             	mov    %eax,-0x8(%ebp)
5e04ab:	eb 05                	jmp    0x5e04b2
5e04ad:	80 fb 2b             	cmp    $0x2b,%bl
5e04b0:	75 0e                	jne    0x5e04c0
5e04b2:	8b 7d 0c             	mov    0xc(%ebp),%edi
5e04b5:	8a 1f                	mov    (%edi),%bl
5e04b7:	47                   	inc    %edi
5e04b8:	88 5d fc             	mov    %bl,-0x4(%ebp)
5e04bb:	89 7d 0c             	mov    %edi,0xc(%ebp)
5e04be:	eb 03                	jmp    0x5e04c3
5e04c0:	8b 7d 0c             	mov    0xc(%ebp),%edi
5e04c3:	85 f6                	test   %esi,%esi
5e04c5:	74 05                	je     0x5e04cc
5e04c7:	83 fe 10             	cmp    $0x10,%esi
5e04ca:	75 73                	jne    0x5e053f
5e04cc:	8a c3                	mov    %bl,%al
5e04ce:	2c 30                	sub    $0x30,%al
5e04d0:	3c 09                	cmp    $0x9,%al
5e04d2:	77 08                	ja     0x5e04dc
5e04d4:	0f be c3             	movsbl %bl,%eax
5e04d7:	83 c0 d0             	add    $0xffffffd0,%eax
5e04da:	eb 1e                	jmp    0x5e04fa
5e04dc:	8a c3                	mov    %bl,%al
5e04de:	2c 61                	sub    $0x61,%al
5e04e0:	3c 19                	cmp    $0x19,%al
5e04e2:	77 08                	ja     0x5e04ec
5e04e4:	0f be c3             	movsbl %bl,%eax
5e04e7:	83 c0 a9             	add    $0xffffffa9,%eax
5e04ea:	eb 0e                	jmp    0x5e04fa
5e04ec:	8a c3                	mov    %bl,%al
5e04ee:	2c 41                	sub    $0x41,%al
5e04f0:	3c 19                	cmp    $0x19,%al
5e04f2:	77 44                	ja     0x5e0538
5e04f4:	0f be c3             	movsbl %bl,%eax
5e04f7:	83 c0 c9             	add    $0xffffffc9,%eax
5e04fa:	85 c0                	test   %eax,%eax
5e04fc:	75 3a                	jne    0x5e0538
5e04fe:	8a 07                	mov    (%edi),%al
5e0500:	47                   	inc    %edi
5e0501:	88 45 f0             	mov    %al,-0x10(%ebp)
5e0504:	89 7d 0c             	mov    %edi,0xc(%ebp)
5e0507:	3c 78                	cmp    $0x78,%al
5e0509:	74 1b                	je     0x5e0526
5e050b:	3c 58                	cmp    $0x58,%al
5e050d:	74 17                	je     0x5e0526
5e050f:	85 f6                	test   %esi,%esi
5e0511:	75 03                	jne    0x5e0516
5e0513:	6a 08                	push   $0x8
5e0515:	5e                   	pop    %esi
5e0516:	ff 75 f0             	push   -0x10(%ebp)
5e0519:	8d 4d 0c             	lea    0xc(%ebp),%ecx
5e051c:	e8 06 a2 ff ff       	call   0x5da727
5e0521:	8b 7d 0c             	mov    0xc(%ebp),%edi
5e0524:	eb 19                	jmp    0x5e053f
5e0526:	85 f6                	test   %esi,%esi
5e0528:	75 03                	jne    0x5e052d
5e052a:	6a 10                	push   $0x10
5e052c:	5e                   	pop    %esi
5e052d:	8a 1f                	mov    (%edi),%bl
5e052f:	47                   	inc    %edi
5e0530:	88 5d fc             	mov    %bl,-0x4(%ebp)
5e0533:	89 7d 0c             	mov    %edi,0xc(%ebp)
5e0536:	eb 07                	jmp    0x5e053f
5e0538:	85 f6                	test   %esi,%esi
5e053a:	75 03                	jne    0x5e053f
5e053c:	6a 0a                	push   $0xa
5e053e:	5e                   	pop    %esi
5e053f:	83 c8 ff             	or     $0xffffffff,%eax
5e0542:	33 d2                	xor    %edx,%edx
5e0544:	f7 f6                	div    %esi
5e0546:	89 45 f0             	mov    %eax,-0x10(%ebp)
5e0549:	8a c3                	mov    %bl,%al
5e054b:	2c 30                	sub    $0x30,%al
5e054d:	3c 09                	cmp    $0x9,%al
5e054f:	77 08                	ja     0x5e0559
5e0551:	0f be cb             	movsbl %bl,%ecx
5e0554:	83 c1 d0             	add    $0xffffffd0,%ecx
5e0557:	eb 23                	jmp    0x5e057c
5e0559:	8a c3                	mov    %bl,%al
5e055b:	2c 61                	sub    $0x61,%al
5e055d:	3c 19                	cmp    $0x19,%al
5e055f:	77 08                	ja     0x5e0569
5e0561:	0f be cb             	movsbl %bl,%ecx
5e0564:	83 c1 a9             	add    $0xffffffa9,%ecx
5e0567:	eb 13                	jmp    0x5e057c
5e0569:	8a c3                	mov    %bl,%al
5e056b:	2c 41                	sub    $0x41,%al
5e056d:	3c 19                	cmp    $0x19,%al
5e056f:	77 08                	ja     0x5e0579
5e0571:	0f be cb             	movsbl %bl,%ecx
5e0574:	83 c1 c9             	add    $0xffffffc9,%ecx
5e0577:	eb 03                	jmp    0x5e057c
5e0579:	83 c9 ff             	or     $0xffffffff,%ecx
5e057c:	3b ce                	cmp    %esi,%ecx
5e057e:	73 31                	jae    0x5e05b1
5e0580:	8b 5d f4             	mov    -0xc(%ebp),%ebx
5e0583:	8b c3                	mov    %ebx,%eax
5e0585:	0f af c6             	imul   %esi,%eax
5e0588:	8d 14 08             	lea    (%eax,%ecx,1),%edx
5e058b:	3b d0                	cmp    %eax,%edx
5e058d:	89 55 f4             	mov    %edx,-0xc(%ebp)
5e0590:	1b c9                	sbb    %ecx,%ecx
5e0592:	f7 d9                	neg    %ecx
5e0594:	39 5d f0             	cmp    %ebx,-0x10(%ebp)
5e0597:	8a 1f                	mov    (%edi),%bl
5e0599:	1b c0                	sbb    %eax,%eax
5e059b:	88 5d fc             	mov    %bl,-0x4(%ebp)
5e059e:	f7 d8                	neg    %eax
5e05a0:	0b c8                	or     %eax,%ecx
5e05a2:	c1 e1 02             	shl    $0x2,%ecx
5e05a5:	83 c9 08             	or     $0x8,%ecx
5e05a8:	09 4d f8             	or     %ecx,-0x8(%ebp)
5e05ab:	47                   	inc    %edi
5e05ac:	89 7d 0c             	mov    %edi,0xc(%ebp)
5e05af:	eb 98                	jmp    0x5e0549
5e05b1:	ff 75 fc             	push   -0x4(%ebp)
5e05b4:	8d 4d 0c             	lea    0xc(%ebp),%ecx
5e05b7:	e8 6b a1 ff ff       	call   0x5da727
5e05bc:	8b 5d f8             	mov    -0x8(%ebp),%ebx
5e05bf:	5f                   	pop    %edi
5e05c0:	f6 c3 08             	test   $0x8,%bl
5e05c3:	75 10                	jne    0x5e05d5
5e05c5:	8b 45 10             	mov    0x10(%ebp),%eax
5e05c8:	85 c0                	test   %eax,%eax
5e05ca:	74 05                	je     0x5e05d1
5e05cc:	8b 4d ec             	mov    -0x14(%ebp),%ecx
5e05cf:	89 08                	mov    %ecx,(%eax)
5e05d1:	33 c0                	xor    %eax,%eax
5e05d3:	eb 65                	jmp    0x5e063a
5e05d5:	8b 75 f4             	mov    -0xc(%ebp),%esi
5e05d8:	56                   	push   %esi
5e05d9:	53                   	push   %ebx
5e05da:	e8 84 66 ff ff       	call   0x5d6c63
5e05df:	59                   	pop    %ecx
5e05e0:	59                   	pop    %ecx
5e05e1:	84 c0                	test   %al,%al
5e05e3:	74 40                	je     0x5e0625
5e05e5:	8b 45 08             	mov    0x8(%ebp),%eax
5e05e8:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5e05ec:	c7 40 18 22 00 00 00 	movl   $0x22,0x18(%eax)
5e05f3:	f6 c3 01             	test   $0x1,%bl
5e05f6:	75 05                	jne    0x5e05fd
5e05f8:	83 ce ff             	or     $0xffffffff,%esi
5e05fb:	eb 2f                	jmp    0x5e062c
5e05fd:	8b 4d 10             	mov    0x10(%ebp),%ecx
5e0600:	f6 c3 02             	test   $0x2,%bl
5e0603:	74 10                	je     0x5e0615
5e0605:	85 c9                	test   %ecx,%ecx
5e0607:	74 05                	je     0x5e060e
5e0609:	8b 45 0c             	mov    0xc(%ebp),%eax
5e060c:	89 01                	mov    %eax,(%ecx)
5e060e:	b8 00 00 00 80       	mov    $0x80000000,%eax
5e0613:	eb 25                	jmp    0x5e063a
5e0615:	85 c9                	test   %ecx,%ecx
5e0617:	74 05                	je     0x5e061e
5e0619:	8b 45 0c             	mov    0xc(%ebp),%eax
5e061c:	89 01                	mov    %eax,(%ecx)
5e061e:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
5e0623:	eb 15                	jmp    0x5e063a
5e0625:	f6 c3 02             	test   $0x2,%bl
5e0628:	74 02                	je     0x5e062c
5e062a:	f7 de                	neg    %esi
5e062c:	8b 55 10             	mov    0x10(%ebp),%edx
5e062f:	85 d2                	test   %edx,%edx
5e0631:	74 05                	je     0x5e0638
5e0633:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5e0636:	89 0a                	mov    %ecx,(%edx)
5e0638:	8b c6                	mov    %esi,%eax
5e063a:	5e                   	pop    %esi
5e063b:	5b                   	pop    %ebx
5e063c:	c9                   	leave
5e063d:	c3                   	ret
5e063e:	8b ff                	mov    %edi,%edi
5e0640:	55                   	push   %ebp
5e0641:	8b ec                	mov    %esp,%ebp
5e0643:	81 ec 90 00 00 00    	sub    $0x90,%esp
5e0649:	8d 4d 0c             	lea    0xc(%ebp),%ecx
5e064c:	53                   	push   %ebx
5e064d:	56                   	push   %esi
5e064e:	57                   	push   %edi
5e064f:	e8 87 a1 ff ff       	call   0x5da7db
5e0654:	84 c0                	test   %al,%al
5e0656:	74 2f                	je     0x5e0687
5e0658:	8b 7d 14             	mov    0x14(%ebp),%edi
5e065b:	85 ff                	test   %edi,%edi
5e065d:	74 3d                	je     0x5e069c
5e065f:	83 ff 02             	cmp    $0x2,%edi
5e0662:	7c 05                	jl     0x5e0669
5e0664:	83 ff 24             	cmp    $0x24,%edi
5e0667:	7e 33                	jle    0x5e069c
5e0669:	8b 45 08             	mov    0x8(%ebp),%eax
5e066c:	50                   	push   %eax
5e066d:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5e0671:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
5e0678:	33 c0                	xor    %eax,%eax
5e067a:	50                   	push   %eax
5e067b:	50                   	push   %eax
5e067c:	50                   	push   %eax
5e067d:	50                   	push   %eax
5e067e:	50                   	push   %eax
5e067f:	e8 df 5a ff ff       	call   0x5d6163
5e0684:	83 c4 18             	add    $0x18,%esp
5e0687:	8b 4d 10             	mov    0x10(%ebp),%ecx
5e068a:	85 c9                	test   %ecx,%ecx
5e068c:	0f 84 4c 05 00 00    	je     0x5e0bde
5e0692:	8b 45 0c             	mov    0xc(%ebp),%eax
5e0695:	89 01                	mov    %eax,(%ecx)
5e0697:	e9 42 05 00 00       	jmp    0x5e0bde
5e069c:	8b 45 0c             	mov    0xc(%ebp),%eax
5e069f:	8b 4d 08             	mov    0x8(%ebp),%ecx
5e06a2:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
5e06a6:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
5e06ac:	0f b7 30             	movzwl (%eax),%esi
5e06af:	83 c0 02             	add    $0x2,%eax
5e06b2:	80 79 14 00          	cmpb   $0x0,0x14(%ecx)
5e06b6:	89 45 0c             	mov    %eax,0xc(%ebp)
5e06b9:	75 13                	jne    0x5e06ce
5e06bb:	e8 c0 a0 ff ff       	call   0x5da780
5e06c0:	eb 0c                	jmp    0x5e06ce
5e06c2:	8b 45 0c             	mov    0xc(%ebp),%eax
5e06c5:	0f b7 30             	movzwl (%eax),%esi
5e06c8:	83 c0 02             	add    $0x2,%eax
5e06cb:	89 45 0c             	mov    %eax,0xc(%ebp)
5e06ce:	6a 08                	push   $0x8
5e06d0:	56                   	push   %esi
5e06d1:	e8 04 be 00 00       	call   0x5ec4da
5e06d6:	59                   	pop    %ecx
5e06d7:	59                   	pop    %ecx
5e06d8:	85 c0                	test   %eax,%eax
5e06da:	75 e6                	jne    0x5e06c2
5e06dc:	0f b6 5d 18          	movzbl 0x18(%ebp),%ebx
5e06e0:	66 83 fe 2d          	cmp    $0x2d,%si
5e06e4:	75 05                	jne    0x5e06eb
5e06e6:	83 cb 02             	or     $0x2,%ebx
5e06e9:	eb 06                	jmp    0x5e06f1
5e06eb:	66 83 fe 2b          	cmp    $0x2b,%si
5e06ef:	75 0e                	jne    0x5e06ff
5e06f1:	8b 55 0c             	mov    0xc(%ebp),%edx
5e06f4:	0f b7 32             	movzwl (%edx),%esi
5e06f7:	83 c2 02             	add    $0x2,%edx
5e06fa:	89 55 0c             	mov    %edx,0xc(%ebp)
5e06fd:	eb 03                	jmp    0x5e0702
5e06ff:	8b 55 0c             	mov    0xc(%ebp),%edx
5e0702:	c7 85 74 ff ff ff 3a 	movl   $0x3a,-0x8c(%ebp)
5e0709:	00 00 00
5e070c:	b8 10 ff 00 00       	mov    $0xff10,%eax
5e0711:	c7 45 f8 60 06 00 00 	movl   $0x660,-0x8(%ebp)
5e0718:	c7 45 f4 6a 06 00 00 	movl   $0x66a,-0xc(%ebp)
5e071f:	c7 45 f0 f0 06 00 00 	movl   $0x6f0,-0x10(%ebp)
5e0726:	c7 45 ec fa 06 00 00 	movl   $0x6fa,-0x14(%ebp)
5e072d:	c7 45 e8 66 09 00 00 	movl   $0x966,-0x18(%ebp)
5e0734:	c7 45 e4 70 09 00 00 	movl   $0x970,-0x1c(%ebp)
5e073b:	c7 45 e0 e6 09 00 00 	movl   $0x9e6,-0x20(%ebp)
5e0742:	c7 45 dc f0 09 00 00 	movl   $0x9f0,-0x24(%ebp)
5e0749:	c7 45 d8 66 0a 00 00 	movl   $0xa66,-0x28(%ebp)
5e0750:	c7 45 d4 70 0a 00 00 	movl   $0xa70,-0x2c(%ebp)
5e0757:	c7 45 d0 e6 0a 00 00 	movl   $0xae6,-0x30(%ebp)
5e075e:	c7 45 cc f0 0a 00 00 	movl   $0xaf0,-0x34(%ebp)
5e0765:	c7 45 c8 66 0b 00 00 	movl   $0xb66,-0x38(%ebp)
5e076c:	c7 45 c4 70 0b 00 00 	movl   $0xb70,-0x3c(%ebp)
5e0773:	c7 45 c0 66 0c 00 00 	movl   $0xc66,-0x40(%ebp)
5e077a:	c7 45 bc 70 0c 00 00 	movl   $0xc70,-0x44(%ebp)
5e0781:	c7 45 b8 e6 0c 00 00 	movl   $0xce6,-0x48(%ebp)
5e0788:	c7 45 b4 f0 0c 00 00 	movl   $0xcf0,-0x4c(%ebp)
5e078f:	c7 45 b0 66 0d 00 00 	movl   $0xd66,-0x50(%ebp)
5e0796:	c7 45 ac 70 0d 00 00 	movl   $0xd70,-0x54(%ebp)
5e079d:	c7 45 a8 50 0e 00 00 	movl   $0xe50,-0x58(%ebp)
5e07a4:	c7 45 a4 5a 0e 00 00 	movl   $0xe5a,-0x5c(%ebp)
5e07ab:	c7 45 a0 d0 0e 00 00 	movl   $0xed0,-0x60(%ebp)
5e07b2:	c7 45 9c da 0e 00 00 	movl   $0xeda,-0x64(%ebp)
5e07b9:	c7 45 98 20 0f 00 00 	movl   $0xf20,-0x68(%ebp)
5e07c0:	c7 45 94 2a 0f 00 00 	movl   $0xf2a,-0x6c(%ebp)
5e07c7:	c7 45 90 40 10 00 00 	movl   $0x1040,-0x70(%ebp)
5e07ce:	c7 45 8c 4a 10 00 00 	movl   $0x104a,-0x74(%ebp)
5e07d5:	c7 45 88 e0 17 00 00 	movl   $0x17e0,-0x78(%ebp)
5e07dc:	c7 45 84 ea 17 00 00 	movl   $0x17ea,-0x7c(%ebp)
5e07e3:	c7 45 80 10 18 00 00 	movl   $0x1810,-0x80(%ebp)
5e07ea:	c7 85 7c ff ff ff 1a 	movl   $0x181a,-0x84(%ebp)
5e07f1:	18 00 00
5e07f4:	c7 85 78 ff ff ff 1a 	movl   $0xff1a,-0x88(%ebp)
5e07fb:	ff 00 00
5e07fe:	6a 30                	push   $0x30
5e0800:	59                   	pop    %ecx
5e0801:	85 ff                	test   %edi,%edi
5e0803:	74 09                	je     0x5e080e
5e0805:	83 ff 10             	cmp    $0x10,%edi
5e0808:	0f 85 e2 01 00 00    	jne    0x5e09f0
5e080e:	66 3b f1             	cmp    %cx,%si
5e0811:	0f 82 66 01 00 00    	jb     0x5e097d
5e0817:	66 3b b5 74 ff ff ff 	cmp    -0x8c(%ebp),%si
5e081e:	73 0a                	jae    0x5e082a
5e0820:	0f b7 c6             	movzwl %si,%eax
5e0823:	2b c1                	sub    %ecx,%eax
5e0825:	e9 4e 01 00 00       	jmp    0x5e0978
5e082a:	66 3b f0             	cmp    %ax,%si
5e082d:	0f 83 34 01 00 00    	jae    0x5e0967
5e0833:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5e0836:	66 3b f1             	cmp    %cx,%si
5e0839:	0f 82 3e 01 00 00    	jb     0x5e097d
5e083f:	66 3b 75 f4          	cmp    -0xc(%ebp),%si
5e0843:	72 db                	jb     0x5e0820
5e0845:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5e0848:	66 3b f1             	cmp    %cx,%si
5e084b:	0f 82 2c 01 00 00    	jb     0x5e097d
5e0851:	66 3b 75 ec          	cmp    -0x14(%ebp),%si
5e0855:	72 c9                	jb     0x5e0820
5e0857:	8b 4d e8             	mov    -0x18(%ebp),%ecx
5e085a:	66 3b f1             	cmp    %cx,%si
5e085d:	0f 82 1a 01 00 00    	jb     0x5e097d
5e0863:	66 3b 75 e4          	cmp    -0x1c(%ebp),%si
5e0867:	72 b7                	jb     0x5e0820
5e0869:	8b 4d e0             	mov    -0x20(%ebp),%ecx
5e086c:	66 3b f1             	cmp    %cx,%si
5e086f:	0f 82 08 01 00 00    	jb     0x5e097d