6906cf:	8b 5d 10             	mov    0x10(%ebp),%ebx
6906d2:	83 c4 08             	add    $0x8,%esp
6906d5:	8b f8                	mov    %eax,%edi
6906d7:	89 7c 24 20          	mov    %edi,0x20(%esp)
6906db:	39 5c 24 28          	cmp    %ebx,0x28(%esp)
6906df:	0f 8d 34 03 00 00    	jge    0x690a19
6906e5:	8b 44 24 24          	mov    0x24(%esp),%eax
6906e9:	c7 80 c0 91 01 00 2d 	movl   $0x2d,0x191c0(%eax)
6906f0:	00 00 00
6906f3:	33 c0                	xor    %eax,%eax
6906f5:	5f                   	pop    %edi
6906f6:	5e                   	pop    %esi
6906f7:	5b                   	pop    %ebx
6906f8:	8b 4c 24 30          	mov    0x30(%esp),%ecx
6906fc:	33 cc                	xor    %esp,%ecx
6906fe:	e8 b3 b0 d8 ff       	call   0x41b7b6
690703:	8b e5                	mov    %ebp,%esp
690705:	5d                   	pop    %ebp
690706:	c3                   	ret
690707:	ff 8b ec 60 00 00    	decl   0x60ec(%ebx)
69070d:	b8 3c 00 00 00       	mov    $0x3c,%eax
690712:	eb a6                	jmp    0x6906ba
690714:	6a 00                	push   $0x0
690716:	6a 00                	push   $0x0
690718:	53                   	push   %ebx
690719:	c7 83 10 61 00 00 00 	movl   $0x0,0x6110(%ebx)
690720:	00 00 00
690723:	e8 b9 35 d8 ff       	call   0x413ce1
690728:	83 c4 0c             	add    $0xc,%esp
69072b:	85 c0                	test   %eax,%eax
69072d:	0f 85 77 fc ff ff    	jne    0x6903aa
690733:	0f 1f 40 00          	nopl   0x0(%eax)
690737:	66 0f 1f 84 00 00 00 	nopw   0x0(%eax,%eax,1)
69073e:	00 00
690740:	8b 8b 10 61 00 00    	mov    0x6110(%ebx),%ecx
690746:	8b 83 0c 61 00 00    	mov    0x610c(%ebx),%eax
69074c:	8b d0                	mov    %eax,%edx
69074e:	8b b3 08 61 00 00    	mov    0x6108(%ebx),%esi
690754:	03 f1                	add    %ecx,%esi
690756:	89 83 10 61 00 00    	mov    %eax,0x6110(%ebx)
69075c:	2b d1                	sub    %ecx,%edx
69075e:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%esp)
690765:	00
690766:	89 54 24 18          	mov    %edx,0x18(%esp)
69076a:	0f 84 4d 01 00 00    	je     0x6908bd
690770:	8b ca                	mov    %edx,%ecx
690772:	83 7c 24 10 00       	cmpl   $0x0,0x10(%esp)
690777:	7e 0f                	jle    0x690788
690779:	8a 07                	mov    (%edi),%al
69077b:	47                   	inc    %edi
69077c:	88 06                	mov    %al,(%esi)
69077e:	46                   	inc    %esi
69077f:	ff 4c 24 10          	decl   0x10(%esp)
690783:	e9 24 01 00 00       	jmp    0x6908ac
690788:	53                   	push   %ebx
690789:	e8 6e 1f d8 ff       	call   0x4126fc
69078e:	8b 53 04             	mov    0x4(%ebx),%edx
690791:	83 c4 04             	add    $0x4,%esp
690794:	f7 c2 00 00 00 02    	test   $0x2000000,%edx
69079a:	0f 84 46 01 00 00    	je     0x6908e6
6907a0:	3d 80 00 00 00       	cmp    $0x80,%eax
6907a5:	7d 12                	jge    0x6907b9
6907a7:	8d 88 80 ff ff 7f    	lea    0x7fffff80(%eax),%ecx
6907ad:	81 f9 79 ff ff 7f    	cmp    $0x7fffff79,%ecx
6907b3:	0f 87 2d 01 00 00    	ja     0x6908e6
6907b9:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
6907be:	8b c8                	mov    %eax,%ecx
6907c0:	3d 00 08 00 00       	cmp    $0x800,%eax
6907c5:	7d 16                	jge    0x6907dd
6907c7:	c1 f9 06             	sar    $0x6,%ecx
6907ca:	8d 54 24 35          	lea    0x35(%esp),%edx
6907ce:	80 e1 1f             	and    $0x1f,%cl
6907d1:	80 c9 c0             	or     $0xc0,%cl
6907d4:	88 4c 24 34          	mov    %cl,0x34(%esp)
6907d8:	e9 98 00 00 00       	jmp    0x690875
6907dd:	3d 00 00 01 00       	cmp    $0x10000,%eax
6907e2:	7d 13                	jge    0x6907f7
6907e4:	c1 f9 0c             	sar    $0xc,%ecx
6907e7:	8d 54 24 35          	lea    0x35(%esp),%edx
6907eb:	80 e1 0f             	and    $0xf,%cl
6907ee:	80 c9 e0             	or     $0xe0,%cl
6907f1:	88 4c 24 34          	mov    %cl,0x34(%esp)
6907f5:	eb 70                	jmp    0x690867
6907f7:	3d 00 00 20 00       	cmp    $0x200000,%eax
6907fc:	7d 13                	jge    0x690811
6907fe:	c1 f9 12             	sar    $0x12,%ecx
690801:	8d 54 24 35          	lea    0x35(%esp),%edx
690805:	80 e1 07             	and    $0x7,%cl
690808:	80 c9 f0             	or     $0xf0,%cl
69080b:	88 4c 24 34          	mov    %cl,0x34(%esp)
69080f:	eb 48                	jmp    0x690859
690811:	3d 00 00 00 04       	cmp    $0x4000000,%eax
690816:	7d 13                	jge    0x69082b
690818:	c1 f9 18             	sar    $0x18,%ecx
69081b:	8d 54 24 35          	lea    0x35(%esp),%edx
69081f:	80 e1 03             	and    $0x3,%cl
690822:	80 c9 f8             	or     $0xf8,%cl
690825:	88 4c 24 34          	mov    %cl,0x34(%esp)
690829:	eb 20                	jmp    0x69084b
69082b:	c1 f9 1e             	sar    $0x1e,%ecx
69082e:	8d 54 24 36          	lea    0x36(%esp),%edx
690832:	80 e1 01             	and    $0x1,%cl
690835:	80 c9 fc             	or     $0xfc,%cl
690838:	88 4c 24 34          	mov    %cl,0x34(%esp)
69083c:	8b c8                	mov    %eax,%ecx
69083e:	c1 f9 18             	sar    $0x18,%ecx
690841:	80 e1 3f             	and    $0x3f,%cl
690844:	80 c9 80             	or     $0x80,%cl
690847:	88 4c 24 35          	mov    %cl,0x35(%esp)
69084b:	8b c8                	mov    %eax,%ecx
69084d:	c1 f9 12             	sar    $0x12,%ecx
690850:	80 e1 3f             	and    $0x3f,%cl
690853:	80 c9 80             	or     $0x80,%cl
690856:	88 0a                	mov    %cl,(%edx)
690858:	42                   	inc    %edx
690859:	8b c8                	mov    %eax,%ecx
69085b:	c1 f9 0c             	sar    $0xc,%ecx
69085e:	80 e1 3f             	and    $0x3f,%cl
690861:	80 c9 80             	or     $0x80,%cl
690864:	88 0a                	mov    %cl,(%edx)
690866:	42                   	inc    %edx
690867:	8b c8                	mov    %eax,%ecx
690869:	c1 f9 06             	sar    $0x6,%ecx
69086c:	80 e1 3f             	and    $0x3f,%cl
69086f:	80 c9 80             	or     $0x80,%cl
690872:	88 0a                	mov    %cl,(%edx)
690874:	42                   	inc    %edx
690875:	24 3f                	and    $0x3f,%al
690877:	8d 7c 24 35          	lea    0x35(%esp),%edi
69087b:	0c 80                	or     $0x80,%al
69087d:	88 02                	mov    %al,(%edx)
69087f:	8d 44 24 34          	lea    0x34(%esp),%eax
690883:	2b d0                	sub    %eax,%edx
690885:	8a 44 24 34          	mov    0x34(%esp),%al
690889:	89 54 24 10          	mov    %edx,0x10(%esp)
69088d:	88 06                	mov    %al,(%esi)
69088f:	8b 54 24 28          	mov    0x28(%esp),%edx
690893:	46                   	inc    %esi
690894:	8b 45 14             	mov    0x14(%ebp),%eax
690897:	42                   	inc    %edx
690898:	89 54 24 28          	mov    %edx,0x28(%esp)
69089c:	85 c0                	test   %eax,%eax
69089e:	78 08                	js     0x6908a8
6908a0:	3b d0                	cmp    %eax,%edx
6908a2:	0f 8f ef fd ff ff    	jg     0x690697
6908a8:	8b 4c 24 18          	mov    0x18(%esp),%ecx
6908ac:	8b 44 24 20          	mov    0x20(%esp),%eax
6908b0:	40                   	inc    %eax
6908b1:	89 44 24 20          	mov    %eax,0x20(%esp)
6908b5:	3b c1                	cmp    %ecx,%eax
6908b7:	0f 82 b5 fe ff ff    	jb     0x690772
6908bd:	6a 00                	push   $0x0
6908bf:	6a 00                	push   $0x0
6908c1:	53                   	push   %ebx
6908c2:	e8 1a 34 d8 ff       	call   0x413ce1
6908c7:	83 c4 0c             	add    $0xc,%esp
6908ca:	85 c0                	test   %eax,%eax
6908cc:	0f 84 6e fe ff ff    	je     0x690740
6908d2:	33 c0                	xor    %eax,%eax
6908d4:	5f                   	pop    %edi
6908d5:	5e                   	pop    %esi
6908d6:	5b                   	pop    %ebx
6908d7:	8b 4c 24 30          	mov    0x30(%esp),%ecx
6908db:	33 cc                	xor    %esp,%ecx
6908dd:	e8 d4 ae d8 ff       	call   0x41b7b6
6908e2:	8b e5                	mov    %ebp,%esp
6908e4:	5d                   	pop    %ebp
6908e5:	c3                   	ret
6908e6:	83 f8 fa             	cmp    $0xfffffffa,%eax
6908e9:	7f 34                	jg     0x69091f
6908eb:	74 2a                	je     0x690917
6908ed:	8d 88 de ff ff 7f    	lea    0x7fffffde(%eax),%ecx
6908f3:	83 f9 1c             	cmp    $0x1c,%ecx
6908f6:	0f 87 b6 00 00 00    	ja     0x6909b2
6908fc:	0f b6 89 24 0b 69 00 	movzbl 0x690b24(%ecx),%ecx
690903:	ff 24 8d 0c 0b 69 00 	jmp    *0x690b0c(,%ecx,4)
69090a:	c6 06 3e             	movb   $0x3e,(%esi)
69090d:	eb 80                	jmp    0x69088f
69090f:	c6 06 26             	movb   $0x26,(%esi)
690912:	e9 78 ff ff ff       	jmp    0x69088f
690917:	c6 06 27             	movb   $0x27,(%esi)
69091a:	e9 70 ff ff ff       	jmp    0x69088f
69091f:	8d 48 05             	lea    0x5(%eax),%ecx
690922:	83 f9 34             	cmp    $0x34,%ecx
690925:	0f 87 87 00 00 00    	ja     0x6909b2
69092b:	0f b6 89 5c 0b 69 00 	movzbl 0x690b5c(%ecx),%ecx
690932:	ff 24 8d 44 0b 69 00 	jmp    *0x690b44(,%ecx,4)
690939:	8b 4c 24 14          	mov    0x14(%esp),%ecx
69093d:	85 c9                	test   %ecx,%ecx
69093f:	0f 84 75 fd ff ff    	je     0x6906ba
690945:	49                   	dec    %ecx
690946:	c6 06 3c             	movb   $0x3c,(%esi)
690949:	89 4c 24 14          	mov    %ecx,0x14(%esp)
69094d:	bf f8 6d bd 00       	mov    $0xbd6df8,%edi
690952:	c7 44 24 10 01 00 00 	movl   $0x1,0x10(%esp)
690959:	00
69095a:	e9 30 ff ff ff       	jmp    0x69088f
69095f:	83 7c 24 2c 00       	cmpl   $0x0,0x2c(%esp)
690964:	0f 84 50 fd ff ff    	je     0x6906ba
69096a:	8b 4c 24 14          	mov    0x14(%esp),%ecx
69096e:	85 c9                	test   %ecx,%ecx
690970:	0f 84 44 fd ff ff    	je     0x6906ba
690976:	41                   	inc    %ecx
690977:	89 4c 24 14          	mov    %ecx,0x14(%esp)
69097b:	c6 06 3c             	movb   $0x3c,(%esi)
69097e:	e9 0c ff ff ff       	jmp    0x69088f
690983:	c6 06 22             	movb   $0x22,(%esi)
690986:	e9 04 ff ff ff       	jmp    0x69088f
69098b:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
690990:	7e 18                	jle    0x6909aa
690992:	53                   	push   %ebx
690993:	e8 70 e7 d9 ff       	call   0x42f108
690998:	83 c4 04             	add    $0x4,%esp
69099b:	83 f8 fc             	cmp    $0xfffffffc,%eax
69099e:	75 04                	jne    0x6909a4
6909a0:	ff 4c 24 14          	decl   0x14(%esp)
6909a4:	89 83 f4 60 00 00    	mov    %eax,0x60f4(%ebx)
6909aa:	c6 06 2f             	movb   $0x2f,(%esi)
6909ad:	e9 dd fe ff ff       	jmp    0x69088f
6909b2:	83 f8 ff             	cmp    $0xffffffff,%eax
6909b5:	0f 84 ff fc ff ff    	je     0x6906ba
6909bb:	f7 c2 00 00 00 04    	test   $0x4000000,%edx
6909c1:	0f 84 c6 fe ff ff    	je     0x69088d
6909c7:	50                   	push   %eax
6909c8:	6a 08                	push   $0x8
6909ca:	8d 44 24 3c          	lea    0x3c(%esp),%eax
6909ce:	c7 44 24 18 00 00 00 	movl   $0x0,0x18(%esp)
6909d5:	00
6909d6:	50                   	push   %eax
6909d7:	8d 44 24 1c          	lea    0x1c(%esp),%eax
6909db:	50                   	push   %eax
6909dc:	e8 81 fb d9 ff       	call   0x430562
6909e1:	83 c4 10             	add    $0x10,%esp
6909e4:	83 7c 24 10 01       	cmpl   $0x1,0x10(%esp)
6909e9:	7c 1e                	jl     0x690a09
6909eb:	e8 89 e6 d7 ff       	call   0x40f079
6909f0:	39 44 24 10          	cmp    %eax,0x10(%esp)
6909f4:	7f 13                	jg     0x690a09
6909f6:	8a 44 24 34          	mov    0x34(%esp),%al
6909fa:	8d 7c 24 35          	lea    0x35(%esp),%edi
6909fe:	88 06                	mov    %al,(%esi)
690a00:	ff 4c 24 10          	decl   0x10(%esp)
690a04:	e9 86 fe ff ff       	jmp    0x69088f
690a09:	c6 06 7f             	movb   $0x7f,(%esi)
690a0c:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
690a13:	00
690a14:	e9 76 fe ff ff       	jmp    0x69088f
690a19:	8b 54 24 30          	mov    0x30(%esp),%edx
690a1d:	8b 4c 24 24          	mov    0x24(%esp),%ecx
690a21:	85 d2                	test   %edx,%edx
690a23:	74 24                	je     0x690a49
690a25:	8b 81 60 60 00 00    	mov    0x6060(%ecx),%eax
690a2b:	85 c0                	test   %eax,%eax
690a2d:	74 1a                	je     0x690a49
690a2f:	56                   	push   %esi
690a30:	52                   	push   %edx
690a31:	51                   	push   %ecx
690a32:	ff d0                	call   *%eax
690a34:	8b 4c 24 30          	mov    0x30(%esp),%ecx
690a38:	83 c4 0c             	add    $0xc,%esp
690a3b:	89 81 c0 91 01 00    	mov    %eax,0x191c0(%ecx)
690a41:	85 c0                	test   %eax,%eax
690a43:	0f 85 61 f9 ff ff    	jne    0x6903aa
690a49:	83 7d 0c 02          	cmpl   $0x2,0xc(%ebp)
690a4d:	75 1f                	jne    0x690a6e
690a4f:	ff 75 14             	push   0x14(%ebp)
690a52:	8d 44 24 24          	lea    0x24(%esp),%eax
690a56:	53                   	push   %ebx
690a57:	50                   	push   %eax
690a58:	57                   	push   %edi
690a59:	51                   	push   %ecx
690a5a:	e8 29 df d9 ff       	call   0x42e988
690a5f:	83 c4 14             	add    $0x14,%esp
690a62:	85 c0                	test   %eax,%eax
690a64:	0f 85 40 f9 ff ff    	jne    0x6903aa
690a6a:	8b 7c 24 20          	mov    0x20(%esp),%edi
690a6e:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
690a72:	8b c7                	mov    %edi,%eax
690a74:	5f                   	pop    %edi
690a75:	5e                   	pop    %esi
690a76:	5b                   	pop    %ebx
690a77:	33 cc                	xor    %esp,%ecx
690a79:	e8 38 ad d8 ff       	call   0x41b7b6
690a7e:	8b e5                	mov    %ebp,%esp
690a80:	5d                   	pop    %ebp
690a81:	c3                   	ret
690a82:	66 90                	xchg   %ax,%ax
690a84:	6e                   	outsb  %ds:(%esi),(%dx)
690a85:	03 69 00             	add    0x0(%ecx),%ebp
690a88:	be 03 69 00 c8       	mov    $0xc8006903,%esi
690a8d:	03 69 00             	add    0x0(%ecx),%ebp
690a90:	d2 03                	rolb   %cl,(%ebx)
690a92:	69 00 e7 03 69 00    	imul   $0x6903e7,(%eax),%eax
690a98:	06                   	push   %es
690a99:	04 69                	add    $0x69,%al
690a9b:	00 1f                	add    %bl,(%edi)
690a9d:	04 69                	add    $0x69,%al
690a9f:	00 41 04             	add    %al,0x4(%ecx)
690aa2:	69 00 ee 04 69 00    	imul   $0x6904ee,(%eax),%eax
690aa8:	e6 04                	out    %al,$0x4
690aaa:	69 00 de 04 69 00    	imul   $0x6904de,(%eax),%eax
690ab0:	7d 04                	jge    0x690ab6
690ab2:	69 00 a3 04 69 00    	imul   $0x6904a3,(%eax),%eax
690ab8:	f6 04 69 00          	testb  $0x0,(%ecx,%ebp,2)
690abc:	1d 05 69 00 23       	sbb    $0x23006905,%eax
690ac1:	06                   	push   %es
690ac2:	69 00 00 01 02 03    	imul   $0x3020100,(%eax),%eax
690ac8:	04 07                	add    $0x7,%al
690aca:	07                   	pop    %es
690acb:	07                   	pop    %es
690acc:	07                   	pop    %es
690acd:	07                   	pop    %es
690ace:	07                   	pop    %es
690acf:	07                   	pop    %es
690ad0:	07                   	pop    %es
690ad1:	07                   	pop    %es
690ad2:	07                   	pop    %es
690ad3:	07                   	pop    %es
690ad4:	07                   	pop    %es
690ad5:	07                   	pop    %es
690ad6:	07                   	pop    %es
690ad7:	07                   	pop    %es
690ad8:	07                   	pop    %es
690ad9:	07                   	pop    %es
690ada:	07                   	pop    %es
690adb:	07                   	pop    %es
690adc:	07                   	pop    %es
690add:	07                   	pop    %es
690ade:	07                   	pop    %es
690adf:	07                   	pop    %es
690ae0:	07                   	pop    %es
690ae1:	07                   	pop    %es
690ae2:	07                   	pop    %es
690ae3:	07                   	pop    %es
690ae4:	07                   	pop    %es
690ae5:	07                   	pop    %es
690ae6:	07                   	pop    %es
690ae7:	07                   	pop    %es
690ae8:	07                   	pop    %es
690ae9:	07                   	pop    %es
690aea:	07                   	pop    %es
690aeb:	07                   	pop    %es
690aec:	01 07                	add    %eax,(%edi)
690aee:	07                   	pop    %es
690aef:	07                   	pop    %es
690af0:	07                   	pop    %es
690af1:	07                   	pop    %es
690af2:	07                   	pop    %es
690af3:	07                   	pop    %es
690af4:	07                   	pop    %es