41263c:	40                   	inc    %eax
41263d:	eb 2c                	jmp    0x41266b
41263f:	b8 00 00 08 00       	mov    $0x80000,%eax
412644:	3b d1                	cmp    %ecx,%edx
412646:	7f 13                	jg     0x41265b
412648:	7c 04                	jl     0x41264e
41264a:	3b f9                	cmp    %ecx,%edi
41264c:	73 0d                	jae    0x41265b
41264e:	3b f9                	cmp    %ecx,%edi
412650:	75 09                	jne    0x41265b
412652:	3b f0                	cmp    %eax,%esi
412654:	75 05                	jne    0x41265b
412656:	6a 04                	push   $0x4
412658:	58                   	pop    %eax
412659:	eb 10                	jmp    0x41266b
41265b:	23 d0                	and    %eax,%edx
41265d:	0b ca                	or     %edx,%ecx
41265f:	74 04                	je     0x412665
412661:	6a 02                	push   $0x2
412663:	eb f3                	jmp    0x412658
412665:	6a 03                	push   $0x3
412667:	eb ef                	jmp    0x412658
412669:	33 c0                	xor    %eax,%eax
41266b:	5f                   	pop    %edi
41266c:	5e                   	pop    %esi
41266d:	5d                   	pop    %ebp
41266e:	c3                   	ret
41266f:	8b ff                	mov    %edi,%edi
412671:	55                   	push   %ebp
412672:	8b ec                	mov    %esp,%ebp
412674:	8b 45 08             	mov    0x8(%ebp),%eax
412677:	53                   	push   %ebx
412678:	0f bf 5d 14          	movswl 0x14(%ebp),%ebx
41267c:	56                   	push   %esi
41267d:	8b 70 04             	mov    0x4(%eax),%esi
412680:	8b cb                	mov    %ebx,%ecx
412682:	57                   	push   %edi
412683:	8b 38                	mov    (%eax),%edi
412685:	8b d6                	mov    %esi,%edx
412687:	23 55 10             	and    0x10(%ebp),%edx
41268a:	8b c7                	mov    %edi,%eax
41268c:	23 45 0c             	and    0xc(%ebp),%eax
41268f:	81 e2 ff ff 0f 00    	and    $0xfffff,%edx
412695:	e8 76 6d 00 00       	call   0x419410
41269a:	6a 08                	push   $0x8
41269c:	0f b7 c0             	movzwl %ax,%eax
41269f:	59                   	pop    %ecx
4126a0:	66 3b c1             	cmp    %cx,%ax
4126a3:	77 66                	ja     0x41270b
4126a5:	73 04                	jae    0x4126ab
4126a7:	32 c0                	xor    %al,%al
4126a9:	eb 62                	jmp    0x41270d
4126ab:	33 c0                	xor    %eax,%eax
4126ad:	33 d2                	xor    %edx,%edx
4126af:	40                   	inc    %eax
4126b0:	8b cb                	mov    %ebx,%ecx
4126b2:	e8 39 6d 00 00       	call   0x4193f0
4126b7:	83 c0 ff             	add    $0xffffffff,%eax
4126ba:	83 d2 ff             	adc    $0xffffffff,%edx
4126bd:	23 c7                	and    %edi,%eax
4126bf:	23 d6                	and    %esi,%edx
4126c1:	81 e2 ff ff 0f 00    	and    $0xfffff,%edx
4126c7:	0b c2                	or     %edx,%eax
4126c9:	75 40                	jne    0x41270b
4126cb:	66 83 7d 14 30       	cmpw   $0x30,0x14(%ebp)
4126d0:	74 22                	je     0x4126f4
4126d2:	0f ac f7 04          	shrd   $0x4,%esi,%edi
4126d6:	8b cb                	mov    %ebx,%ecx
4126d8:	23 7d 0c             	and    0xc(%ebp),%edi
4126db:	c1 ee 04             	shr    $0x4,%esi
4126de:	8b c7                	mov    %edi,%eax
4126e0:	23 75 10             	and    0x10(%ebp),%esi
4126e3:	81 e6 ff ff 00 00    	and    $0xffff,%esi
4126e9:	8b d6                	mov    %esi,%edx
4126eb:	e8 20 6d 00 00       	call   0x419410
4126f0:	8a c8                	mov    %al,%cl
4126f2:	eb 10                	jmp    0x412704
4126f4:	33 c9                	xor    %ecx,%ecx
4126f6:	81 e6 00 00 f0 7f    	and    $0x7ff00000,%esi
4126fc:	8b c1                	mov    %ecx,%eax
4126fe:	0b c6                	or     %esi,%eax
412700:	74 02                	je     0x412704
412702:	b1 01                	mov    $0x1,%cl
412704:	80 e1 01             	and    $0x1,%cl
412707:	8a c1                	mov    %cl,%al
412709:	eb 02                	jmp    0x41270d
41270b:	b0 01                	mov    $0x1,%al
41270d:	5f                   	pop    %edi
41270e:	5e                   	pop    %esi
41270f:	5b                   	pop    %ebx
412710:	5d                   	pop    %ebp
412711:	c3                   	ret
412712:	8b ff                	mov    %edi,%edi
412714:	55                   	push   %ebp
412715:	8b ec                	mov    %esp,%ebp
412717:	83 ec 38             	sub    $0x38,%esp
41271a:	33 c0                	xor    %eax,%eax
41271c:	57                   	push   %edi
41271d:	8b 7d 1c             	mov    0x1c(%ebp),%edi
412720:	85 ff                	test   %edi,%edi
412722:	79 02                	jns    0x412726
412724:	8b f8                	mov    %eax,%edi
412726:	53                   	push   %ebx
412727:	56                   	push   %esi
412728:	8b 75 0c             	mov    0xc(%ebp),%esi
41272b:	8d 4d c8             	lea    -0x38(%ebp),%ecx
41272e:	ff 75 28             	push   0x28(%ebp)
412731:	88 06                	mov    %al,(%esi)
412733:	e8 12 a3 ff ff       	call   0x40ca4a
412738:	8d 47 0b             	lea    0xb(%edi),%eax
41273b:	39 45 10             	cmp    %eax,0x10(%ebp)
41273e:	77 14                	ja     0x412754
412740:	e8 8e c5 ff ff       	call   0x40ecd3
412745:	6a 22                	push   $0x22
412747:	5f                   	pop    %edi
412748:	89 38                	mov    %edi,(%eax)
41274a:	e8 c7 c4 ff ff       	call   0x40ec16
41274f:	e9 b6 02 00 00       	jmp    0x412a0a
412754:	8b 5d 08             	mov    0x8(%ebp),%ebx
412757:	8b 4b 04             	mov    0x4(%ebx),%ecx
41275a:	8b c1                	mov    %ecx,%eax
41275c:	8b 13                	mov    (%ebx),%edx
41275e:	c1 e8 14             	shr    $0x14,%eax
412761:	25 ff 07 00 00       	and    $0x7ff,%eax
412766:	3d ff 07 00 00       	cmp    $0x7ff,%eax
41276b:	75 53                	jne    0x4127c0
41276d:	ff 75 2c             	push   0x2c(%ebp)
412770:	33 c0                	xor    %eax,%eax
412772:	50                   	push   %eax
412773:	ff 75 24             	push   0x24(%ebp)
412776:	50                   	push   %eax
412777:	57                   	push   %edi
412778:	ff 75 18             	push   0x18(%ebp)
41277b:	ff 75 14             	push   0x14(%ebp)
41277e:	ff 75 10             	push   0x10(%ebp)
412781:	56                   	push   %esi
412782:	53                   	push   %ebx
412783:	e8 99 02 00 00       	call   0x412a21
412788:	8b f8                	mov    %eax,%edi
41278a:	83 c4 28             	add    $0x28,%esp
41278d:	85 ff                	test   %edi,%edi
41278f:	74 08                	je     0x412799
412791:	c6 06 00             	movb   $0x0,(%esi)
412794:	e9 71 02 00 00       	jmp    0x412a0a
412799:	6a 65                	push   $0x65
41279b:	56                   	push   %esi
41279c:	e8 8f 88 00 00       	call   0x41b030
4127a1:	59                   	pop    %ecx
4127a2:	59                   	pop    %ecx
4127a3:	85 c0                	test   %eax,%eax
4127a5:	74 12                	je     0x4127b9
4127a7:	8a 4d 20             	mov    0x20(%ebp),%cl
4127aa:	80 f1 01             	xor    $0x1,%cl
4127ad:	c0 e1 05             	shl    $0x5,%cl
4127b0:	80 c1 50             	add    $0x50,%cl
4127b3:	88 08                	mov    %cl,(%eax)
4127b5:	c6 40 03 00          	movb   $0x0,0x3(%eax)
4127b9:	33 ff                	xor    %edi,%edi
4127bb:	e9 4a 02 00 00       	jmp    0x412a0a
4127c0:	33 c0                	xor    %eax,%eax
4127c2:	3b c8                	cmp    %eax,%ecx
4127c4:	7f 0d                	jg     0x4127d3
4127c6:	7c 04                	jl     0x4127cc
4127c8:	3b d0                	cmp    %eax,%edx
4127ca:	73 07                	jae    0x4127d3
4127cc:	c6 06 2d             	movb   $0x2d,(%esi)
4127cf:	46                   	inc    %esi
4127d0:	8b 4b 04             	mov    0x4(%ebx),%ecx
4127d3:	8a 45 20             	mov    0x20(%ebp),%al
4127d6:	8d 56 01             	lea    0x1(%esi),%edx
4127d9:	34 01                	xor    $0x1,%al
4127db:	c7 45 f4 ff 03 00 00 	movl   $0x3ff,-0xc(%ebp)
4127e2:	88 45 ff             	mov    %al,-0x1(%ebp)
4127e5:	81 e1 00 00 f0 7f    	and    $0x7ff00000,%ecx
4127eb:	0f b6 c0             	movzbl %al,%eax
4127ee:	c1 e0 05             	shl    $0x5,%eax
4127f1:	83 c0 07             	add    $0x7,%eax
4127f4:	89 55 dc             	mov    %edx,-0x24(%ebp)
4127f7:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4127fa:	33 c0                	xor    %eax,%eax
4127fc:	0b c1                	or     %ecx,%eax
4127fe:	6a 30                	push   $0x30
412800:	58                   	pop    %eax
412801:	75 1e                	jne    0x412821
412803:	88 06                	mov    %al,(%esi)
412805:	8b 43 04             	mov    0x4(%ebx),%eax
412808:	8b 0b                	mov    (%ebx),%ecx
41280a:	25 ff ff 0f 00       	and    $0xfffff,%eax
41280f:	0b c8                	or     %eax,%ecx
412811:	75 05                	jne    0x412818
412813:	89 4d f4             	mov    %ecx,-0xc(%ebp)
412816:	eb 0e                	jmp    0x412826
412818:	c7 45 f4 fe 03 00 00 	movl   $0x3fe,-0xc(%ebp)
41281f:	eb 03                	jmp    0x412824
412821:	c6 06 31             	movb   $0x31,(%esi)
412824:	33 c9                	xor    %ecx,%ecx
412826:	8d 72 01             	lea    0x1(%edx),%esi
412829:	89 75 f8             	mov    %esi,-0x8(%ebp)
41282c:	85 ff                	test   %edi,%edi
41282e:	75 04                	jne    0x412834
412830:	8a c1                	mov    %cl,%al
412832:	eb 0d                	jmp    0x412841
412834:	8b 45 cc             	mov    -0x34(%ebp),%eax
412837:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
41283d:	8b 00                	mov    (%eax),%eax
41283f:	8a 00                	mov    (%eax),%al
412841:	88 02                	mov    %al,(%edx)
412843:	8b 43 04             	mov    0x4(%ebx),%eax
412846:	25 ff ff 0f 00       	and    $0xfffff,%eax
41284b:	89 45 ec             	mov    %eax,-0x14(%ebp)
41284e:	77 08                	ja     0x412858
412850:	39 0b                	cmp    %ecx,(%ebx)
412852:	0f 86 b7 00 00 00    	jbe    0x41290f
412858:	6a 30                	push   $0x30
41285a:	8b d1                	mov    %ecx,%edx
41285c:	b9 00 00 0f 00       	mov    $0xf0000,%ecx
412861:	58                   	pop    %eax
412862:	89 45 f8             	mov    %eax,-0x8(%ebp)
412865:	89 55 f0             	mov    %edx,-0x10(%ebp)
412868:	89 4d ec             	mov    %ecx,-0x14(%ebp)
41286b:	85 ff                	test   %edi,%edi
41286d:	7e 50                	jle    0x4128bf
41286f:	8b 03                	mov    (%ebx),%eax
412871:	23 c2                	and    %edx,%eax
412873:	8b 53 04             	mov    0x4(%ebx),%edx
412876:	23 d1                	and    %ecx,%edx
412878:	8b 4d f8             	mov    -0x8(%ebp),%ecx
41287b:	81 e2 ff ff 0f 00    	and    $0xfffff,%edx
412881:	0f bf c9             	movswl %cx,%ecx
412884:	e8 87 6b 00 00       	call   0x419410
412889:	6a 30                	push   $0x30
41288b:	59                   	pop    %ecx
41288c:	66 03 c1             	add    %cx,%ax
41288f:	0f b7 c0             	movzwl %ax,%eax
412892:	83 f8 39             	cmp    $0x39,%eax
412895:	76 03                	jbe    0x41289a
412897:	03 45 e4             	add    -0x1c(%ebp),%eax
41289a:	8b 55 f0             	mov    -0x10(%ebp),%edx
41289d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4128a0:	0f ac ca 04          	shrd   $0x4,%ecx,%edx
4128a4:	88 06                	mov    %al,(%esi)
4128a6:	46                   	inc    %esi
4128a7:	8b 45 f8             	mov    -0x8(%ebp),%eax
4128aa:	c1 e9 04             	shr    $0x4,%ecx
4128ad:	83 e8 04             	sub    $0x4,%eax
4128b0:	4f                   	dec    %edi
4128b1:	89 55 f0             	mov    %edx,-0x10(%ebp)
4128b4:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4128b7:	89 45 f8             	mov    %eax,-0x8(%ebp)
4128ba:	66 85 c0             	test   %ax,%ax
4128bd:	79 ac                	jns    0x41286b
4128bf:	89 75 f8             	mov    %esi,-0x8(%ebp)
4128c2:	66 85 c0             	test   %ax,%ax
4128c5:	78 48                	js     0x41290f
4128c7:	ff 75 2c             	push   0x2c(%ebp)
4128ca:	50                   	push   %eax
4128cb:	51                   	push   %ecx
4128cc:	52                   	push   %edx
4128cd:	53                   	push   %ebx
4128ce:	e8 5a 06 00 00       	call   0x412f2d
4128d3:	83 c4 14             	add    $0x14,%esp
4128d6:	84 c0                	test   %al,%al
4128d8:	74 35                	je     0x41290f
4128da:	6a 30                	push   $0x30
4128dc:	8d 46 ff             	lea    -0x1(%esi),%eax
4128df:	5b                   	pop    %ebx
4128e0:	8a 08                	mov    (%eax),%cl
4128e2:	80 f9 66             	cmp    $0x66,%cl
4128e5:	74 05                	je     0x4128ec
4128e7:	80 f9 46             	cmp    $0x46,%cl
4128ea:	75 05                	jne    0x4128f1
4128ec:	88 18                	mov    %bl,(%eax)
4128ee:	48                   	dec    %eax
4128ef:	eb ef                	jmp    0x4128e0
4128f1:	8b 5d 08             	mov    0x8(%ebp),%ebx
4128f4:	3b 45 dc             	cmp    -0x24(%ebp),%eax
4128f7:	74 13                	je     0x41290c
4128f9:	80 f9 39             	cmp    $0x39,%cl
4128fc:	75 08                	jne    0x412906
4128fe:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
412901:	80 c1 3a             	add    $0x3a,%cl
412904:	eb 02                	jmp    0x412908
412906:	fe c1                	inc    %cl
412908:	88 08                	mov    %cl,(%eax)
41290a:	eb 03                	jmp    0x41290f
41290c:	fe 40 ff             	incb   -0x1(%eax)
41290f:	85 ff                	test   %edi,%edi
412911:	7e 13                	jle    0x412926
412913:	57                   	push   %edi
412914:	6a 30                	push   $0x30
412916:	58                   	pop    %eax
412917:	50                   	push   %eax
412918:	56                   	push   %esi
412919:	e8 f2 67 ff ff       	call   0x409110
41291e:	83 c4 0c             	add    $0xc,%esp
412921:	03 f7                	add    %edi,%esi
412923:	89 75 f8             	mov    %esi,-0x8(%ebp)
412926:	8b 45 dc             	mov    -0x24(%ebp),%eax
412929:	80 38 00             	cmpb   $0x0,(%eax)
41292c:	75 05                	jne    0x412933
41292e:	8b f0                	mov    %eax,%esi
412930:	89 75 f8             	mov    %esi,-0x8(%ebp)
412933:	8a 45 ff             	mov    -0x1(%ebp),%al
412936:	b1 34                	mov    $0x34,%cl
412938:	c0 e0 05             	shl    $0x5,%al
41293b:	04 50                	add    $0x50,%al
41293d:	88 06                	mov    %al,(%esi)
41293f:	8b 03                	mov    (%ebx),%eax
412941:	8b 53 04             	mov    0x4(%ebx),%edx
412944:	e8 c7 6a 00 00       	call   0x419410
412949:	8b c8                	mov    %eax,%ecx
41294b:	33 f6                	xor    %esi,%esi
41294d:	8b 45 f8             	mov    -0x8(%ebp),%eax
412950:	81 e1 ff 07 00 00    	and    $0x7ff,%ecx
412956:	2b 4d f4             	sub    -0xc(%ebp),%ecx
412959:	1b f6                	sbb    %esi,%esi
41295b:	8d 50 02             	lea    0x2(%eax),%edx
41295e:	89 55 dc             	mov    %edx,-0x24(%ebp)
412961:	78 0a                	js     0x41296d
412963:	7f 04                	jg     0x412969
412965:	85 c9                	test   %ecx,%ecx
412967:	72 04                	jb     0x41296d
412969:	b3 2b                	mov    $0x2b,%bl
41296b:	eb 0a                	jmp    0x412977
41296d:	f7 d9                	neg    %ecx
41296f:	6a 2d                	push   $0x2d
412971:	83 d6 00             	adc    $0x0,%esi
412974:	f7 de                	neg    %esi
412976:	5b                   	pop    %ebx
412977:	88 58 01             	mov    %bl,0x1(%eax)
41297a:	8b fa                	mov    %edx,%edi
41297c:	6a 30                	push   $0x30
41297e:	58                   	pop    %eax
41297f:	88 02                	mov    %al,(%edx)
412981:	33 c0                	xor    %eax,%eax
412983:	3b f0                	cmp    %eax,%esi
412985:	7c 28                	jl     0x4129af
412987:	bb e8 03 00 00       	mov    $0x3e8,%ebx
41298c:	7f 04                	jg     0x412992
41298e:	3b cb                	cmp    %ebx,%ecx
412990:	72 1d                	jb     0x4129af
412992:	53                   	push   %ebx
412993:	50                   	push   %eax
412994:	53                   	push   %ebx
412995:	56                   	push   %esi
412996:	51                   	push   %ecx
412997:	e8 74 69 00 00       	call   0x419310
41299c:	8b f3                	mov    %ebx,%esi
41299e:	5b                   	pop    %ebx
41299f:	90                   	nop