43536b:	eb 05                	jmp    0x435372
43536d:	80 fb 2b             	cmp    $0x2b,%bl
435370:	75 0e                	jne    0x435380
435372:	8b 75 0c             	mov    0xc(%ebp),%esi
435375:	8a 1e                	mov    (%esi),%bl
435377:	46                   	inc    %esi
435378:	88 5d fc             	mov    %bl,-0x4(%ebp)
43537b:	89 75 0c             	mov    %esi,0xc(%ebp)
43537e:	eb 03                	jmp    0x435383
435380:	8b 75 0c             	mov    0xc(%ebp),%esi
435383:	85 ff                	test   %edi,%edi
435385:	74 05                	je     0x43538c
435387:	83 ff 10             	cmp    $0x10,%edi
43538a:	75 78                	jne    0x435404
43538c:	8a c3                	mov    %bl,%al
43538e:	2c 30                	sub    $0x30,%al
435390:	3c 09                	cmp    $0x9,%al
435392:	77 08                	ja     0x43539c
435394:	0f be c3             	movsbl %bl,%eax
435397:	83 c0 d0             	add    $0xffffffd0,%eax
43539a:	eb 23                	jmp    0x4353bf
43539c:	8a c3                	mov    %bl,%al
43539e:	2c 61                	sub    $0x61,%al
4353a0:	3c 19                	cmp    $0x19,%al
4353a2:	77 08                	ja     0x4353ac
4353a4:	0f be c3             	movsbl %bl,%eax
4353a7:	83 c0 a9             	add    $0xffffffa9,%eax
4353aa:	eb 13                	jmp    0x4353bf
4353ac:	8a c3                	mov    %bl,%al
4353ae:	2c 41                	sub    $0x41,%al
4353b0:	3c 19                	cmp    $0x19,%al
4353b2:	77 08                	ja     0x4353bc
4353b4:	0f be c3             	movsbl %bl,%eax
4353b7:	83 c0 c9             	add    $0xffffffc9,%eax
4353ba:	eb 03                	jmp    0x4353bf
4353bc:	83 c8 ff             	or     $0xffffffff,%eax
4353bf:	85 c0                	test   %eax,%eax
4353c1:	74 09                	je     0x4353cc
4353c3:	85 ff                	test   %edi,%edi
4353c5:	75 3d                	jne    0x435404
4353c7:	6a 0a                	push   $0xa
4353c9:	5f                   	pop    %edi
4353ca:	eb 38                	jmp    0x435404
4353cc:	8a 06                	mov    (%esi),%al
4353ce:	46                   	inc    %esi
4353cf:	88 45 f0             	mov    %al,-0x10(%ebp)
4353d2:	89 75 0c             	mov    %esi,0xc(%ebp)
4353d5:	3c 78                	cmp    $0x78,%al
4353d7:	74 1b                	je     0x4353f4
4353d9:	3c 58                	cmp    $0x58,%al
4353db:	74 17                	je     0x4353f4
4353dd:	85 ff                	test   %edi,%edi
4353df:	75 03                	jne    0x4353e4
4353e1:	6a 08                	push   $0x8
4353e3:	5f                   	pop    %edi
4353e4:	ff 75 f0             	push   -0x10(%ebp)
4353e7:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4353ea:	e8 ed 07 00 00       	call   0x435bdc
4353ef:	8b 75 0c             	mov    0xc(%ebp),%esi
4353f2:	eb 10                	jmp    0x435404
4353f4:	85 ff                	test   %edi,%edi
4353f6:	75 03                	jne    0x4353fb
4353f8:	6a 10                	push   $0x10
4353fa:	5f                   	pop    %edi
4353fb:	8a 1e                	mov    (%esi),%bl
4353fd:	46                   	inc    %esi
4353fe:	88 5d fc             	mov    %bl,-0x4(%ebp)
435401:	89 75 0c             	mov    %esi,0xc(%ebp)
435404:	33 d2                	xor    %edx,%edx
435406:	83 c8 ff             	or     $0xffffffff,%eax
435409:	f7 f7                	div    %edi
43540b:	89 55 ec             	mov    %edx,-0x14(%ebp)
43540e:	8b 55 f8             	mov    -0x8(%ebp),%edx
435411:	89 45 f0             	mov    %eax,-0x10(%ebp)
435414:	8d 4b d0             	lea    -0x30(%ebx),%ecx
435417:	80 f9 09             	cmp    $0x9,%cl
43541a:	77 08                	ja     0x435424
43541c:	0f be cb             	movsbl %bl,%ecx
43541f:	83 c1 d0             	add    $0xffffffd0,%ecx
435422:	eb 23                	jmp    0x435447
435424:	8a c3                	mov    %bl,%al
435426:	2c 61                	sub    $0x61,%al
435428:	3c 19                	cmp    $0x19,%al
43542a:	77 08                	ja     0x435434
43542c:	0f be cb             	movsbl %bl,%ecx
43542f:	83 c1 a9             	add    $0xffffffa9,%ecx
435432:	eb 13                	jmp    0x435447
435434:	8a c3                	mov    %bl,%al
435436:	2c 41                	sub    $0x41,%al
435438:	3c 19                	cmp    $0x19,%al
43543a:	77 08                	ja     0x435444
43543c:	0f be cb             	movsbl %bl,%ecx
43543f:	83 c1 c9             	add    $0xffffffc9,%ecx
435442:	eb 03                	jmp    0x435447
435444:	83 c9 ff             	or     $0xffffffff,%ecx
435447:	83 f9 ff             	cmp    $0xffffffff,%ecx
43544a:	74 30                	je     0x43547c
43544c:	3b cf                	cmp    %edi,%ecx
43544e:	73 2c                	jae    0x43547c
435450:	8b 45 f4             	mov    -0xc(%ebp),%eax
435453:	83 ca 08             	or     $0x8,%edx
435456:	8b 5d f0             	mov    -0x10(%ebp),%ebx
435459:	3b c3                	cmp    %ebx,%eax
43545b:	72 0c                	jb     0x435469
43545d:	75 05                	jne    0x435464
43545f:	3b 4d ec             	cmp    -0x14(%ebp),%ecx
435462:	76 05                	jbe    0x435469
435464:	83 ca 04             	or     $0x4,%edx
435467:	eb 08                	jmp    0x435471
435469:	0f af c7             	imul   %edi,%eax
43546c:	03 c1                	add    %ecx,%eax
43546e:	89 45 f4             	mov    %eax,-0xc(%ebp)
435471:	8a 1e                	mov    (%esi),%bl
435473:	46                   	inc    %esi
435474:	88 5d fc             	mov    %bl,-0x4(%ebp)
435477:	89 75 0c             	mov    %esi,0xc(%ebp)
43547a:	eb 98                	jmp    0x435414
43547c:	ff 75 fc             	push   -0x4(%ebp)
43547f:	8d 4d 0c             	lea    0xc(%ebp),%ecx
435482:	89 55 f8             	mov    %edx,-0x8(%ebp)
435485:	e8 52 07 00 00       	call   0x435bdc
43548a:	8b 5d f8             	mov    -0x8(%ebp),%ebx
43548d:	f6 c3 08             	test   $0x8,%bl
435490:	75 0a                	jne    0x43549c
435492:	8b 45 e8             	mov    -0x18(%ebp),%eax
435495:	33 db                	xor    %ebx,%ebx
435497:	89 45 0c             	mov    %eax,0xc(%ebp)
43549a:	eb 41                	jmp    0x4354dd
43549c:	8b 75 f4             	mov    -0xc(%ebp),%esi
43549f:	56                   	push   %esi
4354a0:	53                   	push   %ebx
4354a1:	e8 f6 fd ff ff       	call   0x43529c
4354a6:	59                   	pop    %ecx
4354a7:	59                   	pop    %ecx
4354a8:	84 c0                	test   %al,%al
4354aa:	74 28                	je     0x4354d4
4354ac:	e8 85 e9 ff ff       	call   0x433e36
4354b1:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
4354b7:	f6 c3 01             	test   $0x1,%bl
4354ba:	75 05                	jne    0x4354c1
4354bc:	83 ce ff             	or     $0xffffffff,%esi
4354bf:	eb 1a                	jmp    0x4354db
4354c1:	f6 c3 02             	test   $0x2,%bl
4354c4:	74 07                	je     0x4354cd
4354c6:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4354cb:	eb 10                	jmp    0x4354dd
4354cd:	bb ff ff ff 7f       	mov    $0x7fffffff,%ebx
4354d2:	eb 09                	jmp    0x4354dd
4354d4:	f6 c3 02             	test   $0x2,%bl
4354d7:	74 02                	je     0x4354db
4354d9:	f7 de                	neg    %esi
4354db:	8b de                	mov    %esi,%ebx
4354dd:	80 7d e4 00          	cmpb   $0x0,-0x1c(%ebp)
4354e1:	5e                   	pop    %esi
4354e2:	0f 84 20 fe ff ff    	je     0x435308
4354e8:	8b 45 d8             	mov    -0x28(%ebp),%eax
4354eb:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
4354f2:	e9 11 fe ff ff       	jmp    0x435308
4354f7:	8b ff                	mov    %edi,%edi
4354f9:	55                   	push   %ebp
4354fa:	8b ec                	mov    %esp,%ebp
4354fc:	83 ec 1c             	sub    $0x1c,%esp
4354ff:	8d 4d 0c             	lea    0xc(%ebp),%ecx
435502:	53                   	push   %ebx
435503:	57                   	push   %edi
435504:	e8 2d e3 ff ff       	call   0x433836
435509:	84 c0                	test   %al,%al
43550b:	74 23                	je     0x435530
43550d:	8b 45 14             	mov    0x14(%ebp),%eax
435510:	6a 02                	push   $0x2
435512:	5f                   	pop    %edi
435513:	85 c0                	test   %eax,%eax
435515:	74 2f                	je     0x435546
435517:	3b c7                	cmp    %edi,%eax
435519:	7c 05                	jl     0x435520
43551b:	83 f8 24             	cmp    $0x24,%eax
43551e:	7e 26                	jle    0x435546
435520:	e8 11 e9 ff ff       	call   0x433e36
435525:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
43552b:	e8 4a e8 ff ff       	call   0x433d7a
435530:	33 db                	xor    %ebx,%ebx
435532:	8b 55 10             	mov    0x10(%ebp),%edx
435535:	85 d2                	test   %edx,%edx
435537:	74 05                	je     0x43553e
435539:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43553c:	89 0a                	mov    %ecx,(%edx)
43553e:	5f                   	pop    %edi
43553f:	8b c3                	mov    %ebx,%eax
435541:	5b                   	pop    %ebx
435542:	8b e5                	mov    %ebp,%esp
435544:	5d                   	pop    %ebp
435545:	c3                   	ret
435546:	56                   	push   %esi
435547:	ff 75 08             	push   0x8(%ebp)
43554a:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43554d:	e8 65 c4 ff ff       	call   0x4319b7
435552:	8b 45 0c             	mov    0xc(%ebp),%eax
435555:	33 f6                	xor    %esi,%esi
435557:	89 75 f8             	mov    %esi,-0x8(%ebp)
43555a:	89 45 f4             	mov    %eax,-0xc(%ebp)
43555d:	eb 03                	jmp    0x435562
43555f:	8b 45 0c             	mov    0xc(%ebp),%eax
435562:	0f b7 30             	movzwl (%eax),%esi
435565:	03 c7                	add    %edi,%eax
435567:	6a 08                	push   $0x8
435569:	56                   	push   %esi
43556a:	89 45 0c             	mov    %eax,0xc(%ebp)
43556d:	e8 1b 07 00 00       	call   0x435c8d
435572:	59                   	pop    %ecx
435573:	59                   	pop    %ecx
435574:	85 c0                	test   %eax,%eax
435576:	75 e7                	jne    0x43555f
435578:	33 db                	xor    %ebx,%ebx
43557a:	38 5d 18             	cmp    %bl,0x18(%ebp)
43557d:	0f 95 c3             	setne  %bl
435580:	66 83 fe 2d          	cmp    $0x2d,%si
435584:	75 04                	jne    0x43558a
435586:	0b df                	or     %edi,%ebx
435588:	eb 06                	jmp    0x435590
43558a:	66 83 fe 2b          	cmp    $0x2b,%si
43558e:	75 0e                	jne    0x43559e
435590:	8b 7d 0c             	mov    0xc(%ebp),%edi
435593:	0f b7 37             	movzwl (%edi),%esi
435596:	83 c7 02             	add    $0x2,%edi
435599:	89 7d 0c             	mov    %edi,0xc(%ebp)
43559c:	eb 03                	jmp    0x4355a1
43559e:	8b 7d 0c             	mov    0xc(%ebp),%edi
4355a1:	8b 4d 14             	mov    0x14(%ebp),%ecx
4355a4:	c7 45 fc 19 00 00 00 	movl   $0x19,-0x4(%ebp)
4355ab:	6a 30                	push   $0x30
4355ad:	58                   	pop    %eax
4355ae:	6a 10                	push   $0x10
4355b0:	5a                   	pop    %edx
4355b1:	85 c9                	test   %ecx,%ecx
4355b3:	74 08                	je     0x4355bd
4355b5:	3b ca                	cmp    %edx,%ecx
4355b7:	0f 85 db 02 00 00    	jne    0x435898
4355bd:	66 3b f0             	cmp    %ax,%si
4355c0:	0f 82 55 02 00 00    	jb     0x43581b
4355c6:	6a 3a                	push   $0x3a
4355c8:	58                   	pop    %eax
4355c9:	66 3b f0             	cmp    %ax,%si
4355cc:	73 0b                	jae    0x4355d9
4355ce:	0f b7 c6             	movzwl %si,%eax
4355d1:	83 e8 30             	sub    $0x30,%eax
4355d4:	e9 3d 02 00 00       	jmp    0x435816
4355d9:	b8 10 ff 00 00       	mov    $0xff10,%eax
4355de:	66 3b f0             	cmp    %ax,%si
4355e1:	0f 83 18 02 00 00    	jae    0x4357ff
4355e7:	b8 60 06 00 00       	mov    $0x660,%eax
4355ec:	66 3b f0             	cmp    %ax,%si
4355ef:	0f 82 26 02 00 00    	jb     0x43581b
4355f5:	83 c0 0a             	add    $0xa,%eax
4355f8:	66 3b f0             	cmp    %ax,%si
4355fb:	73 0d                	jae    0x43560a
4355fd:	0f b7 c6             	movzwl %si,%eax
435600:	2d 60 06 00 00       	sub    $0x660,%eax
435605:	e9 0c 02 00 00       	jmp    0x435816
43560a:	b8 f0 06 00 00       	mov    $0x6f0,%eax
43560f:	66 3b f0             	cmp    %ax,%si
435612:	0f 82 03 02 00 00    	jb     0x43581b
435618:	83 c0 0a             	add    $0xa,%eax
43561b:	66 3b f0             	cmp    %ax,%si
43561e:	73 0d                	jae    0x43562d
435620:	0f b7 c6             	movzwl %si,%eax
435623:	2d f0 06 00 00       	sub    $0x6f0,%eax
435628:	e9 e9 01 00 00       	jmp    0x435816
43562d:	b8 66 09 00 00       	mov    $0x966,%eax
435632:	66 3b f0             	cmp    %ax,%si
435635:	0f 82 e0 01 00 00    	jb     0x43581b
43563b:	83 c0 0a             	add    $0xa,%eax
43563e:	66 3b f0             	cmp    %ax,%si
435641:	73 0d                	jae    0x435650
435643:	0f b7 c6             	movzwl %si,%eax
435646:	2d 66 09 00 00       	sub    $0x966,%eax
43564b:	e9 c6 01 00 00       	jmp    0x435816
435650:	b8 e6 09 00 00       	mov    $0x9e6,%eax
435655:	66 3b f0             	cmp    %ax,%si
435658:	0f 82 bd 01 00 00    	jb     0x43581b
43565e:	83 c0 0a             	add    $0xa,%eax
435661:	66 3b f0             	cmp    %ax,%si
435664:	73 0d                	jae    0x435673
435666:	0f b7 c6             	movzwl %si,%eax
435669:	2d e6 09 00 00       	sub    $0x9e6,%eax
43566e:	e9 a3 01 00 00       	jmp    0x435816
435673:	b8 66 0a 00 00       	mov    $0xa66,%eax
435678:	66 3b f0             	cmp    %ax,%si
43567b:	0f 82 9a 01 00 00    	jb     0x43581b
435681:	83 c0 0a             	add    $0xa,%eax
435684:	66 3b f0             	cmp    %ax,%si
435687:	73 0d                	jae    0x435696
435689:	0f b7 c6             	movzwl %si,%eax
43568c:	2d 66 0a 00 00       	sub    $0xa66,%eax
435691:	e9 80 01 00 00       	jmp    0x435816
435696:	b8 e6 0a 00 00       	mov    $0xae6,%eax
43569b:	66 3b f0             	cmp    %ax,%si
43569e:	0f 82 77 01 00 00    	jb     0x43581b
4356a4:	83 c0 0a             	add    $0xa,%eax
4356a7:	66 3b f0             	cmp    %ax,%si
4356aa:	73 0d                	jae    0x4356b9
4356ac:	0f b7 c6             	movzwl %si,%eax
4356af:	2d e6 0a 00 00       	sub    $0xae6,%eax
4356b4:	e9 5d 01 00 00       	jmp    0x435816
4356b9:	b8 66 0b 00 00       	mov    $0xb66,%eax
4356be:	66 3b f0             	cmp    %ax,%si
4356c1:	0f 82 54 01 00 00    	jb     0x43581b
4356c7:	83 c0 0a             	add    $0xa,%eax
4356ca:	66 3b f0             	cmp    %ax,%si
4356cd:	73 0d                	jae    0x4356dc
4356cf:	0f b7 c6             	movzwl %si,%eax
4356d2:	2d 66 0b 00 00       	sub    $0xb66,%eax
4356d7:	e9 3a 01 00 00       	jmp    0x435816
4356dc:	b8 66 0c 00 00       	mov    $0xc66,%eax
4356e1:	66 3b f0             	cmp    %ax,%si
4356e4:	0f 82 31 01 00 00    	jb     0x43581b
4356ea:	83 c0 0a             	add    $0xa,%eax
4356ed:	66 3b f0             	cmp    %ax,%si
4356f0:	73 0d                	jae    0x4356ff
4356f2:	0f b7 c6             	movzwl %si,%eax
4356f5:	2d 66 0c 00 00       	sub    $0xc66,%eax
4356fa:	e9 17 01 00 00       	jmp    0x435816
4356ff:	b8 e6 0c 00 00       	mov    $0xce6,%eax
435704:	66 3b f0             	cmp    %ax,%si
435707:	0f 82 0e 01 00 00    	jb     0x43581b
43570d:	83 c0 0a             	add    $0xa,%eax
435710:	66 3b f0             	cmp    %ax,%si
435713:	73 0d                	jae    0x435722
435715:	0f b7 c6             	movzwl %si,%eax
435718:	2d e6 0c 00 00       	sub    $0xce6,%eax
43571d:	e9 f4 00 00 00       	jmp    0x435816
435722:	b8 66 0d 00 00       	mov    $0xd66,%eax
435727:	66 3b f0             	cmp    %ax,%si
43572a:	0f 82 eb 00 00 00    	jb     0x43581b
435730:	83 c0 0a             	add    $0xa,%eax
435733:	66 3b f0             	cmp    %ax,%si
435736:	73 0d                	jae    0x435745
435738:	0f b7 c6             	movzwl %si,%eax
43573b:	2d 66 0d 00 00       	sub    $0xd66,%eax
435740:	e9 d1 00 00 00       	jmp    0x435816
435745:	b8 50 0e 00 00       	mov    $0xe50,%eax
43574a:	66 3b f0             	cmp    %ax,%si
43574d:	0f 82 c8 00 00 00    	jb     0x43581b
435753:	83 c0 0a             	add    $0xa,%eax
435756:	66 3b f0             	cmp    %ax,%si
435759:	73 0d                	jae    0x435768
43575b:	0f b7 c6             	movzwl %si,%eax
43575e:	2d 50 0e 00 00       	sub    $0xe50,%eax
435763:	e9 ae 00 00 00       	jmp    0x435816
435768:	b8 d0 0e 00 00       	mov    $0xed0,%eax
43576d:	66 3b f0             	cmp    %ax,%si