4624d4:	7e 03                	jle    0x4624d9
4624d6:	89 46 28             	mov    %eax,0x28(%esi)
4624d9:	8b c1                	mov    %ecx,%eax
4624db:	0b c2                	or     %edx,%eax
4624dd:	75 04                	jne    0x4624e3
4624df:	83 66 20 df          	andl   $0xffffffdf,0x20(%esi)
4624e3:	c6 46 3c 01          	movb   $0x1,0x3c(%esi)
4624e7:	ff 75 0c             	push   0xc(%ebp)
4624ea:	ff 75 08             	push   0x8(%ebp)
4624ed:	83 fb 08             	cmp    $0x8,%ebx
4624f0:	75 0b                	jne    0x4624fd
4624f2:	52                   	push   %edx
4624f3:	51                   	push   %ecx
4624f4:	8b ce                	mov    %esi,%ecx
4624f6:	e8 04 67 ff ff       	call   0x458bff
4624fb:	eb 08                	jmp    0x462505
4624fd:	51                   	push   %ecx
4624fe:	8b ce                	mov    %esi,%ecx
462500:	e8 ac 60 ff ff       	call   0x4585b1
462505:	8b 46 20             	mov    0x20(%esi),%eax
462508:	c1 e8 07             	shr    $0x7,%eax
46250b:	a8 01                	test   $0x1,%al
46250d:	74 1e                	je     0x46252d
46250f:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
462513:	6a 30                	push   $0x30
462515:	5a                   	pop    %edx
462516:	74 08                	je     0x462520
462518:	8b 46 34             	mov    0x34(%esi),%eax
46251b:	66 39 10             	cmp    %dx,(%eax)
46251e:	74 0d                	je     0x46252d
462520:	83 46 34 fe          	addl   $0xfffffffe,0x34(%esi)
462524:	8b 4e 34             	mov    0x34(%esi),%ecx
462527:	66 89 11             	mov    %dx,(%ecx)
46252a:	ff 46 38             	incl   0x38(%esi)
46252d:	b0 01                	mov    $0x1,%al
46252f:	5e                   	pop    %esi
462530:	5b                   	pop    %ebx
462531:	5d                   	pop    %ebp
462532:	c2 08 00             	ret    $0x8
462535:	8b ff                	mov    %edi,%edi
462537:	55                   	push   %ebp
462538:	8b ec                	mov    %esp,%ebp
46253a:	51                   	push   %ecx
46253b:	51                   	push   %ecx
46253c:	53                   	push   %ebx
46253d:	56                   	push   %esi
46253e:	8b f1                	mov    %ecx,%esi
462540:	ff 76 2c             	push   0x2c(%esi)
462543:	e8 ad d6 ff ff       	call   0x45fbf5
462548:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
46254c:	8b d8                	mov    %eax,%ebx
46254e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
462552:	59                   	pop    %ecx
462553:	8b cb                	mov    %ebx,%ecx
462555:	83 e9 01             	sub    $0x1,%ecx
462558:	0f 84 81 00 00 00    	je     0x4625df
46255e:	83 e9 01             	sub    $0x1,%ecx
462561:	74 5e                	je     0x4625c1
462563:	49                   	dec    %ecx
462564:	83 e9 01             	sub    $0x1,%ecx
462567:	74 3a                	je     0x4625a3
462569:	83 e9 04             	sub    $0x4,%ecx
46256c:	74 17                	je     0x462585
46256e:	e8 bc a8 fe ff       	call   0x44ce2f
462573:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
462579:	e8 58 a7 fe ff       	call   0x44ccd6
46257e:	32 c0                	xor    %al,%al
462580:	e9 2e 01 00 00       	jmp    0x4626b3
462585:	8b 46 20             	mov    0x20(%esi),%eax
462588:	8b ce                	mov    %esi,%ecx
46258a:	c1 e8 04             	shr    $0x4,%eax
46258d:	a8 01                	test   $0x1,%al
46258f:	8d 45 f8             	lea    -0x8(%ebp),%eax
462592:	50                   	push   %eax
462593:	74 07                	je     0x46259c
462595:	e8 a1 50 ff ff       	call   0x45763b
46259a:	eb 5f                	jmp    0x4625fb
46259c:	e8 52 53 ff ff       	call   0x4578f3
4625a1:	eb 58                	jmp    0x4625fb
4625a3:	8b 46 20             	mov    0x20(%esi),%eax
4625a6:	8b ce                	mov    %esi,%ecx
4625a8:	c1 e8 04             	shr    $0x4,%eax
4625ab:	a8 01                	test   $0x1,%al
4625ad:	8d 45 f8             	lea    -0x8(%ebp),%eax
4625b0:	50                   	push   %eax
4625b1:	74 07                	je     0x4625ba
4625b3:	e8 bd 40 ff ff       	call   0x456675
4625b8:	eb 41                	jmp    0x4625fb
4625ba:	e8 34 43 ff ff       	call   0x4568f3
4625bf:	eb 3a                	jmp    0x4625fb
4625c1:	8b 46 20             	mov    0x20(%esi),%eax
4625c4:	8b ce                	mov    %esi,%ecx
4625c6:	c1 e8 04             	shr    $0x4,%eax
4625c9:	a8 01                	test   $0x1,%al
4625cb:	8d 45 f8             	lea    -0x8(%ebp),%eax
4625ce:	50                   	push   %eax
4625cf:	74 07                	je     0x4625d8
4625d1:	e8 83 3a ff ff       	call   0x456059
4625d6:	eb 23                	jmp    0x4625fb
4625d8:	e8 24 3e ff ff       	call   0x456401
4625dd:	eb 1c                	jmp    0x4625fb
4625df:	8b 46 20             	mov    0x20(%esi),%eax
4625e2:	8b ce                	mov    %esi,%ecx
4625e4:	c1 e8 04             	shr    $0x4,%eax
4625e7:	a8 01                	test   $0x1,%al
4625e9:	8d 45 f8             	lea    -0x8(%ebp),%eax
4625ec:	50                   	push   %eax
4625ed:	74 07                	je     0x4625f6
4625ef:	e8 75 35 ff ff       	call   0x455b69
4625f4:	eb 05                	jmp    0x4625fb
4625f6:	e8 e6 37 ff ff       	call   0x455de1
4625fb:	84 c0                	test   %al,%al
4625fd:	0f 84 7b ff ff ff    	je     0x46257e
462603:	8b ce                	mov    %esi,%ecx
462605:	e8 a3 98 ff ff       	call   0x45bead
46260a:	84 c0                	test   %al,%al
46260c:	0f 84 9f 00 00 00    	je     0x4626b1
462612:	8b 55 fc             	mov    -0x4(%ebp),%edx
462615:	8b 4d f8             	mov    -0x8(%ebp),%ecx
462618:	57                   	push   %edi
462619:	8b 7e 20             	mov    0x20(%esi),%edi
46261c:	8b c7                	mov    %edi,%eax
46261e:	c1 e8 04             	shr    $0x4,%eax
462621:	a8 01                	test   $0x1,%al
462623:	74 17                	je     0x46263c
462625:	85 d2                	test   %edx,%edx
462627:	7f 13                	jg     0x46263c
462629:	7c 04                	jl     0x46262f
46262b:	85 c9                	test   %ecx,%ecx
46262d:	73 0d                	jae    0x46263c
46262f:	f7 d9                	neg    %ecx
462631:	83 d2 00             	adc    $0x0,%edx
462634:	f7 da                	neg    %edx
462636:	83 cf 40             	or     $0x40,%edi
462639:	89 7e 20             	mov    %edi,0x20(%esi)
46263c:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
462640:	5f                   	pop    %edi
462641:	7d 09                	jge    0x46264c
462643:	c7 46 28 01 00 00 00 	movl   $0x1,0x28(%esi)
46264a:	eb 11                	jmp    0x46265d
46264c:	83 66 20 f7          	andl   $0xfffffff7,0x20(%esi)
462650:	b8 00 02 00 00       	mov    $0x200,%eax
462655:	39 46 28             	cmp    %eax,0x28(%esi)
462658:	7e 03                	jle    0x46265d
46265a:	89 46 28             	mov    %eax,0x28(%esi)
46265d:	8b c1                	mov    %ecx,%eax
46265f:	0b c2                	or     %edx,%eax
462661:	75 04                	jne    0x462667
462663:	83 66 20 df          	andl   $0xffffffdf,0x20(%esi)
462667:	c6 46 3c 01          	movb   $0x1,0x3c(%esi)
46266b:	ff 75 0c             	push   0xc(%ebp)
46266e:	ff 75 08             	push   0x8(%ebp)
462671:	83 fb 08             	cmp    $0x8,%ebx
462674:	75 0b                	jne    0x462681
462676:	52                   	push   %edx
462677:	51                   	push   %ecx
462678:	8b ce                	mov    %esi,%ecx
46267a:	e8 1b 66 ff ff       	call   0x458c9a
46267f:	eb 08                	jmp    0x462689
462681:	51                   	push   %ecx
462682:	8b ce                	mov    %esi,%ecx
462684:	e8 ae 5f ff ff       	call   0x458637
462689:	8b 46 20             	mov    0x20(%esi),%eax
46268c:	c1 e8 07             	shr    $0x7,%eax
46268f:	a8 01                	test   $0x1,%al
462691:	74 1e                	je     0x4626b1
462693:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
462697:	6a 30                	push   $0x30
462699:	59                   	pop    %ecx
46269a:	74 08                	je     0x4626a4
46269c:	8b 46 34             	mov    0x34(%esi),%eax
46269f:	66 39 08             	cmp    %cx,(%eax)
4626a2:	74 0d                	je     0x4626b1
4626a4:	83 46 34 fe          	addl   $0xfffffffe,0x34(%esi)
4626a8:	8b 46 34             	mov    0x34(%esi),%eax
4626ab:	66 89 08             	mov    %cx,(%eax)
4626ae:	ff 46 38             	incl   0x38(%esi)
4626b1:	b0 01                	mov    $0x1,%al
4626b3:	5e                   	pop    %esi
4626b4:	5b                   	pop    %ebx
4626b5:	8b e5                	mov    %ebp,%esp
4626b7:	5d                   	pop    %ebp
4626b8:	c2 08 00             	ret    $0x8
4626bb:	8b ff                	mov    %edi,%edi
4626bd:	55                   	push   %ebp
4626be:	8b ec                	mov    %esp,%ebp
4626c0:	53                   	push   %ebx
4626c1:	56                   	push   %esi
4626c2:	8b f1                	mov    %ecx,%esi
4626c4:	ff 76 2c             	push   0x2c(%esi)
4626c7:	e8 29 d5 ff ff       	call   0x45fbf5
4626cc:	59                   	pop    %ecx
4626cd:	8b d8                	mov    %eax,%ebx
4626cf:	8b cb                	mov    %ebx,%ecx
4626d1:	83 e9 01             	sub    $0x1,%ecx
4626d4:	74 78                	je     0x46274e
4626d6:	83 e9 01             	sub    $0x1,%ecx
4626d9:	74 56                	je     0x462731
4626db:	49                   	dec    %ecx
4626dc:	83 e9 01             	sub    $0x1,%ecx
4626df:	74 33                	je     0x462714
4626e1:	83 e9 04             	sub    $0x4,%ecx
4626e4:	74 17                	je     0x4626fd
4626e6:	e8 44 a7 fe ff       	call   0x44ce2f
4626eb:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4626f1:	e8 e0 a5 fe ff       	call   0x44ccd6
4626f6:	32 c0                	xor    %al,%al
4626f8:	e9 0a 01 00 00       	jmp    0x462807
4626fd:	8b 46 20             	mov    0x20(%esi),%eax
462700:	83 46 14 08          	addl   $0x8,0x14(%esi)
462704:	c1 e8 04             	shr    $0x4,%eax
462707:	a8 01                	test   $0x1,%al
462709:	8b 46 14             	mov    0x14(%esi),%eax
46270c:	8b 48 f8             	mov    -0x8(%eax),%ecx
46270f:	8b 50 fc             	mov    -0x4(%eax),%edx
462712:	eb 58                	jmp    0x46276c
462714:	8b 46 20             	mov    0x20(%esi),%eax
462717:	83 46 14 04          	addl   $0x4,0x14(%esi)
46271b:	c1 e8 04             	shr    $0x4,%eax
46271e:	a8 01                	test   $0x1,%al
462720:	8b 46 14             	mov    0x14(%esi),%eax
462723:	74 05                	je     0x46272a
462725:	8b 40 fc             	mov    -0x4(%eax),%eax
462728:	eb 3f                	jmp    0x462769
46272a:	8b 48 fc             	mov    -0x4(%eax),%ecx
46272d:	33 d2                	xor    %edx,%edx
46272f:	eb 3b                	jmp    0x46276c
462731:	8b 46 20             	mov    0x20(%esi),%eax
462734:	83 46 14 04          	addl   $0x4,0x14(%esi)
462738:	c1 e8 04             	shr    $0x4,%eax
46273b:	a8 01                	test   $0x1,%al
46273d:	8b 46 14             	mov    0x14(%esi),%eax
462740:	74 06                	je     0x462748
462742:	0f bf 40 fc          	movswl -0x4(%eax),%eax
462746:	eb 21                	jmp    0x462769
462748:	0f b7 40 fc          	movzwl -0x4(%eax),%eax
46274c:	eb 1b                	jmp    0x462769
46274e:	8b 46 20             	mov    0x20(%esi),%eax
462751:	83 46 14 04          	addl   $0x4,0x14(%esi)
462755:	c1 e8 04             	shr    $0x4,%eax
462758:	a8 01                	test   $0x1,%al
46275a:	8b 46 14             	mov    0x14(%esi),%eax
46275d:	74 06                	je     0x462765
46275f:	0f be 40 fc          	movsbl -0x4(%eax),%eax
462763:	eb 04                	jmp    0x462769
462765:	0f b6 40 fc          	movzbl -0x4(%eax),%eax
462769:	99                   	cltd
46276a:	8b c8                	mov    %eax,%ecx
46276c:	57                   	push   %edi
46276d:	8b 7e 20             	mov    0x20(%esi),%edi
462770:	8b c7                	mov    %edi,%eax
462772:	c1 e8 04             	shr    $0x4,%eax
462775:	a8 01                	test   $0x1,%al
462777:	74 17                	je     0x462790
462779:	85 d2                	test   %edx,%edx
46277b:	7f 13                	jg     0x462790
46277d:	7c 04                	jl     0x462783
46277f:	85 c9                	test   %ecx,%ecx
462781:	73 0d                	jae    0x462790
462783:	f7 d9                	neg    %ecx
462785:	83 d2 00             	adc    $0x0,%edx
462788:	f7 da                	neg    %edx
46278a:	83 cf 40             	or     $0x40,%edi
46278d:	89 7e 20             	mov    %edi,0x20(%esi)
462790:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
462794:	5f                   	pop    %edi
462795:	7d 09                	jge    0x4627a0
462797:	c7 46 28 01 00 00 00 	movl   $0x1,0x28(%esi)
46279e:	eb 11                	jmp    0x4627b1
4627a0:	83 66 20 f7          	andl   $0xfffffff7,0x20(%esi)
4627a4:	b8 00 02 00 00       	mov    $0x200,%eax
4627a9:	39 46 28             	cmp    %eax,0x28(%esi)
4627ac:	7e 03                	jle    0x4627b1
4627ae:	89 46 28             	mov    %eax,0x28(%esi)
4627b1:	8b c1                	mov    %ecx,%eax
4627b3:	0b c2                	or     %edx,%eax
4627b5:	75 04                	jne    0x4627bb
4627b7:	83 66 20 df          	andl   $0xffffffdf,0x20(%esi)
4627bb:	c6 46 3c 01          	movb   $0x1,0x3c(%esi)
4627bf:	ff 75 0c             	push   0xc(%ebp)
4627c2:	ff 75 08             	push   0x8(%ebp)
4627c5:	83 fb 08             	cmp    $0x8,%ebx
4627c8:	75 0b                	jne    0x4627d5
4627ca:	52                   	push   %edx
4627cb:	51                   	push   %ecx
4627cc:	8b ce                	mov    %esi,%ecx
4627ce:	e8 62 65 ff ff       	call   0x458d35
4627d3:	eb 08                	jmp    0x4627dd
4627d5:	51                   	push   %ecx
4627d6:	8b ce                	mov    %esi,%ecx
4627d8:	e8 e0 5e ff ff       	call   0x4586bd
4627dd:	8b 46 20             	mov    0x20(%esi),%eax
4627e0:	c1 e8 07             	shr    $0x7,%eax
4627e3:	a8 01                	test   $0x1,%al
4627e5:	74 1e                	je     0x462805
4627e7:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
4627eb:	6a 30                	push   $0x30
4627ed:	5a                   	pop    %edx
4627ee:	74 08                	je     0x4627f8
4627f0:	8b 46 34             	mov    0x34(%esi),%eax
4627f3:	66 39 10             	cmp    %dx,(%eax)
4627f6:	74 0d                	je     0x462805
4627f8:	83 46 34 fe          	addl   $0xfffffffe,0x34(%esi)
4627fc:	8b 4e 34             	mov    0x34(%esi),%ecx
4627ff:	66 89 11             	mov    %dx,(%ecx)
462802:	ff 46 38             	incl   0x38(%esi)
462805:	b0 01                	mov    $0x1,%al
462807:	5e                   	pop    %esi
462808:	5b                   	pop    %ebx
462809:	5d                   	pop    %ebp
46280a:	c2 08 00             	ret    $0x8
46280d:	8b ff                	mov    %edi,%edi
46280f:	55                   	push   %ebp
462810:	8b ec                	mov    %esp,%ebp
462812:	53                   	push   %ebx
462813:	56                   	push   %esi
462814:	8b f1                	mov    %ecx,%esi
462816:	ff 76 2c             	push   0x2c(%esi)
462819:	e8 d7 d3 ff ff       	call   0x45fbf5
46281e:	59                   	pop    %ecx
46281f:	8b d8                	mov    %eax,%ebx
462821:	8b cb                	mov    %ebx,%ecx
462823:	83 e9 01             	sub    $0x1,%ecx
462826:	74 78                	je     0x4628a0
462828:	83 e9 01             	sub    $0x1,%ecx
46282b:	74 56                	je     0x462883
46282d:	49                   	dec    %ecx
46282e:	83 e9 01             	sub    $0x1,%ecx
462831:	74 33                	je     0x462866
462833:	83 e9 04             	sub    $0x4,%ecx
462836:	74 17                	je     0x46284f
462838:	e8 f2 a5 fe ff       	call   0x44ce2f
46283d:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
462843:	e8 8e a4 fe ff       	call   0x44ccd6
462848:	32 c0                	xor    %al,%al
46284a:	e9 0a 01 00 00       	jmp    0x462959
46284f:	8b 46 20             	mov    0x20(%esi),%eax
462852:	83 46 14 08          	addl   $0x8,0x14(%esi)
462856:	c1 e8 04             	shr    $0x4,%eax
462859:	a8 01                	test   $0x1,%al
46285b:	8b 46 14             	mov    0x14(%esi),%eax
46285e:	8b 48 f8             	mov    -0x8(%eax),%ecx
462861:	8b 50 fc             	mov    -0x4(%eax),%edx
462864:	eb 58                	jmp    0x4628be
462866:	8b 46 20             	mov    0x20(%esi),%eax
462869:	83 46 14 04          	addl   $0x4,0x14(%esi)
46286d:	c1 e8 04             	shr    $0x4,%eax
462870:	a8 01                	test   $0x1,%al
462872:	8b 46 14             	mov    0x14(%esi),%eax
462875:	74 05                	je     0x46287c