4817c6:	c6 41 1c 01          	movb   $0x1,0x1c(%ecx)
4817ca:	89 71 18             	mov    %esi,0x18(%ecx)
4817cd:	e8 d2 7d ff ff       	call   0x4795a4
4817d2:	83 c4 18             	add    $0x18,%esp
4817d5:	8b c6                	mov    %esi,%eax
4817d7:	eb 44                	jmp    0x48181d
4817d9:	8d 42 fe             	lea    -0x2(%edx),%eax
4817dc:	3b c8                	cmp    %eax,%ecx
4817de:	7c 02                	jl     0x4817e2
4817e0:	8b c8                	mov    %eax,%ecx
4817e2:	8b 75 20             	mov    0x20(%ebp),%esi
4817e5:	56                   	push   %esi
4817e6:	57                   	push   %edi
4817e7:	57                   	push   %edi
4817e8:	8b 7d 10             	mov    0x10(%ebp),%edi
4817eb:	57                   	push   %edi
4817ec:	51                   	push   %ecx
4817ed:	52                   	push   %edx
4817ee:	ff 75 08             	push   0x8(%ebp)
4817f1:	e8 1e 9c 00 00       	call   0x48b414
4817f6:	83 c4 1c             	add    $0x1c,%esp
4817f9:	85 c0                	test   %eax,%eax
4817fb:	74 09                	je     0x481806
4817fd:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
481801:	89 46 18             	mov    %eax,0x18(%esi)
481804:	eb 17                	jmp    0x48181d
481806:	8b 45 1c             	mov    0x1c(%ebp),%eax
481809:	33 c9                	xor    %ecx,%ecx
48180b:	83 3f 2d             	cmpl   $0x2d,(%edi)
48180e:	0f 94 c1             	sete   %cl
481811:	89 08                	mov    %ecx,(%eax)
481813:	8b 45 18             	mov    0x18(%ebp),%eax
481816:	8b 4f 04             	mov    0x4(%edi),%ecx
481819:	89 08                	mov    %ecx,(%eax)
48181b:	33 c0                	xor    %eax,%eax
48181d:	5f                   	pop    %edi
48181e:	5e                   	pop    %esi
48181f:	5d                   	pop    %ebp
481820:	c3                   	ret
481821:	8b ff                	mov    %edi,%edi
481823:	55                   	push   %ebp
481824:	8b ec                	mov    %esp,%ebp
481826:	83 ec 28             	sub    $0x28,%esp
481829:	8d 4d d8             	lea    -0x28(%ebp),%ecx
48182c:	56                   	push   %esi
48182d:	6a 00                	push   $0x0
48182f:	e8 ac 5a ff ff       	call   0x4772e0
481834:	dd 45 10             	fldl   0x10(%ebp)
481837:	8d 45 d8             	lea    -0x28(%ebp),%eax
48183a:	50                   	push   %eax
48183b:	ff 75 20             	push   0x20(%ebp)
48183e:	ff 75 1c             	push   0x1c(%ebp)
481841:	ff 75 18             	push   0x18(%ebp)
481844:	51                   	push   %ecx
481845:	51                   	push   %ecx
481846:	dd 1c 24             	fstpl  (%esp)
481849:	ff 75 0c             	push   0xc(%ebp)
48184c:	ff 75 08             	push   0x8(%ebp)
48184f:	e8 5c fe ff ff       	call   0x4816b0
481854:	83 c4 20             	add    $0x20,%esp
481857:	8d 4d d8             	lea    -0x28(%ebp),%ecx
48185a:	8b f0                	mov    %eax,%esi
48185c:	e8 df 5a ff ff       	call   0x477340
481861:	8b c6                	mov    %esi,%eax
481863:	5e                   	pop    %esi
481864:	c9                   	leave
481865:	c3                   	ret
481866:	8b ff                	mov    %edi,%edi
481868:	55                   	push   %ebp
481869:	8b ec                	mov    %esp,%ebp
48186b:	83 ec 0c             	sub    $0xc,%esp
48186e:	8b 45 0c             	mov    0xc(%ebp),%eax
481871:	33 c9                	xor    %ecx,%ecx
481873:	53                   	push   %ebx
481874:	8b 5d 08             	mov    0x8(%ebp),%ebx
481877:	56                   	push   %esi
481878:	8b f0                	mov    %eax,%esi
48187a:	89 45 f8             	mov    %eax,-0x8(%ebp)
48187d:	57                   	push   %edi
48187e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
481881:	38 4d 18             	cmp    %cl,0x18(%ebp)
481884:	74 14                	je     0x48189a
481886:	6a 2d                	push   $0x2d
481888:	59                   	pop    %ecx
481889:	66 89 08             	mov    %cx,(%eax)
48188c:	8d 70 02             	lea    0x2(%eax),%esi
48188f:	33 c9                	xor    %ecx,%ecx
481891:	89 75 f8             	mov    %esi,-0x8(%ebp)
481894:	41                   	inc    %ecx
481895:	f7 db                	neg    %ebx
481897:	89 4d fc             	mov    %ecx,-0x4(%ebp)
48189a:	89 75 f4             	mov    %esi,-0xc(%ebp)
48189d:	8b 75 f8             	mov    -0x8(%ebp),%esi
4818a0:	33 d2                	xor    %edx,%edx
4818a2:	8b c3                	mov    %ebx,%eax
4818a4:	f7 75 14             	divl   0x14(%ebp)
4818a7:	8b c3                	mov    %ebx,%eax
4818a9:	8b fe                	mov    %esi,%edi
4818ab:	8b ca                	mov    %edx,%ecx
4818ad:	33 d2                	xor    %edx,%edx
4818af:	f7 75 14             	divl   0x14(%ebp)
4818b2:	6a 09                	push   $0x9
4818b4:	8b d8                	mov    %eax,%ebx
4818b6:	8d 56 02             	lea    0x2(%esi),%edx
4818b9:	58                   	pop    %eax
4818ba:	3b c1                	cmp    %ecx,%eax
4818bc:	1b c0                	sbb    %eax,%eax
4818be:	83 e0 27             	and    $0x27,%eax
4818c1:	83 c0 30             	add    $0x30,%eax
4818c4:	66 03 c1             	add    %cx,%ax
4818c7:	8b 4d 10             	mov    0x10(%ebp),%ecx
4818ca:	66 89 06             	mov    %ax,(%esi)
4818cd:	8b 45 fc             	mov    -0x4(%ebp),%eax
4818d0:	40                   	inc    %eax
4818d1:	89 45 fc             	mov    %eax,-0x4(%ebp)
4818d4:	85 db                	test   %ebx,%ebx
4818d6:	74 06                	je     0x4818de
4818d8:	8b f2                	mov    %edx,%esi
4818da:	3b c1                	cmp    %ecx,%eax
4818dc:	72 c2                	jb     0x4818a0
4818de:	8b 75 f4             	mov    -0xc(%ebp),%esi
4818e1:	3b c1                	cmp    %ecx,%eax
4818e3:	72 1b                	jb     0x481900
4818e5:	8b 45 0c             	mov    0xc(%ebp),%eax
4818e8:	33 c9                	xor    %ecx,%ecx
4818ea:	66 89 08             	mov    %cx,(%eax)
4818ed:	e8 43 86 ff ff       	call   0x479f35
4818f2:	6a 22                	push   $0x22
4818f4:	5e                   	pop    %esi
4818f5:	89 30                	mov    %esi,(%eax)
4818f7:	e8 25 7d ff ff       	call   0x479621
4818fc:	8b c6                	mov    %esi,%eax
4818fe:	eb 1d                	jmp    0x48191d
481900:	33 c0                	xor    %eax,%eax
481902:	66 89 02             	mov    %ax,(%edx)
481905:	66 8b 06             	mov    (%esi),%ax
481908:	0f b7 0f             	movzwl (%edi),%ecx
48190b:	66 89 07             	mov    %ax,(%edi)
48190e:	83 ef 02             	sub    $0x2,%edi
481911:	66 89 0e             	mov    %cx,(%esi)
481914:	83 c6 02             	add    $0x2,%esi
481917:	3b f7                	cmp    %edi,%esi
481919:	72 ea                	jb     0x481905
48191b:	33 c0                	xor    %eax,%eax
48191d:	5f                   	pop    %edi
48191e:	5e                   	pop    %esi
48191f:	5b                   	pop    %ebx
481920:	c9                   	leave
481921:	c3                   	ret
481922:	8b ff                	mov    %edi,%edi
481924:	55                   	push   %ebp
481925:	8b ec                	mov    %esp,%ebp
481927:	8b 4d 0c             	mov    0xc(%ebp),%ecx
48192a:	56                   	push   %esi
48192b:	85 c9                	test   %ecx,%ecx
48192d:	75 13                	jne    0x481942
48192f:	e8 01 86 ff ff       	call   0x479f35
481934:	6a 16                	push   $0x16
481936:	5e                   	pop    %esi
481937:	89 30                	mov    %esi,(%eax)
481939:	e8 e3 7c ff ff       	call   0x479621
48193e:	8b c6                	mov    %esi,%eax
481940:	eb 4f                	jmp    0x481991
481942:	8b 55 10             	mov    0x10(%ebp),%edx
481945:	53                   	push   %ebx
481946:	85 d2                	test   %edx,%edx
481948:	74 24                	je     0x48196e
48194a:	8b 5d 18             	mov    0x18(%ebp),%ebx
48194d:	33 c0                	xor    %eax,%eax
48194f:	66 89 01             	mov    %ax,(%ecx)
481952:	0f b6 c3             	movzbl %bl,%eax
481955:	40                   	inc    %eax
481956:	3b d0                	cmp    %eax,%edx
481958:	77 09                	ja     0x481963
48195a:	e8 d6 85 ff ff       	call   0x479f35
48195f:	6a 22                	push   $0x22
481961:	eb 12                	jmp    0x481975
481963:	8b 75 14             	mov    0x14(%ebp),%esi
481966:	8d 46 fe             	lea    -0x2(%esi),%eax
481969:	83 f8 22             	cmp    $0x22,%eax
48196c:	76 13                	jbe    0x481981
48196e:	e8 c2 85 ff ff       	call   0x479f35
481973:	6a 16                	push   $0x16
481975:	5e                   	pop    %esi
481976:	89 30                	mov    %esi,(%eax)
481978:	e8 a4 7c ff ff       	call   0x479621
48197d:	8b c6                	mov    %esi,%eax
48197f:	eb 0f                	jmp    0x481990
481981:	53                   	push   %ebx
481982:	56                   	push   %esi
481983:	52                   	push   %edx
481984:	51                   	push   %ecx
481985:	ff 75 08             	push   0x8(%ebp)
481988:	e8 d9 fe ff ff       	call   0x481866
48198d:	83 c4 14             	add    $0x14,%esp
481990:	5b                   	pop    %ebx
481991:	5e                   	pop    %esi
481992:	5d                   	pop    %ebp
481993:	c3                   	ret
481994:	8b ff                	mov    %edi,%edi
481996:	55                   	push   %ebp
481997:	8b ec                	mov    %esp,%ebp
481999:	51                   	push   %ecx
48199a:	83 7d 14 0a          	cmpl   $0xa,0x14(%ebp)
48199e:	75 0a                	jne    0x4819aa
4819a0:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4819a4:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4819a8:	7c 04                	jl     0x4819ae
4819aa:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
4819ae:	ff 75 fc             	push   -0x4(%ebp)
4819b1:	ff 75 14             	push   0x14(%ebp)
4819b4:	ff 75 10             	push   0x10(%ebp)
4819b7:	ff 75 0c             	push   0xc(%ebp)
4819ba:	ff 75 08             	push   0x8(%ebp)
4819bd:	e8 60 ff ff ff       	call   0x481922
4819c2:	83 c4 14             	add    $0x14,%esp
4819c5:	c9                   	leave
4819c6:	c3                   	ret
4819c7:	8b ff                	mov    %edi,%edi
4819c9:	55                   	push   %ebp
4819ca:	8b ec                	mov    %esp,%ebp
4819cc:	6a 02                	push   $0x2
4819ce:	ff 75 0c             	push   0xc(%ebp)
4819d1:	ff 75 08             	push   0x8(%ebp)
4819d4:	ff 15 c0 e1 49 00    	call   *0x49e1c0
4819da:	85 c0                	test   %eax,%eax
4819dc:	75 12                	jne    0x4819f0
4819de:	ff 15 30 e1 49 00    	call   *0x49e130
4819e4:	50                   	push   %eax
4819e5:	e8 f1 84 ff ff       	call   0x479edb
4819ea:	59                   	pop    %ecx
4819eb:	83 c8 ff             	or     $0xffffffff,%eax
4819ee:	5d                   	pop    %ebp
4819ef:	c3                   	ret
4819f0:	33 c0                	xor    %eax,%eax
4819f2:	5d                   	pop    %ebp
4819f3:	c3                   	ret
4819f4:	8b ff                	mov    %edi,%edi
4819f6:	55                   	push   %ebp
4819f7:	8b ec                	mov    %esp,%ebp
4819f9:	81 ec c4 00 00 00    	sub    $0xc4,%esp
4819ff:	a1 14 40 4c 00       	mov    0x4c4014,%eax
481a04:	33 c5                	xor    %ebp,%eax
481a06:	89 45 fc             	mov    %eax,-0x4(%ebp)
481a09:	56                   	push   %esi
481a0a:	8b 75 08             	mov    0x8(%ebp),%esi
481a0d:	85 f6                	test   %esi,%esi
481a0f:	75 1e                	jne    0x481a2f
481a11:	e8 1f 85 ff ff       	call   0x479f35
481a16:	6a 16                	push   $0x16
481a18:	5e                   	pop    %esi
481a19:	89 30                	mov    %esi,(%eax)
481a1b:	e8 01 7c ff ff       	call   0x479621
481a20:	8b c6                	mov    %esi,%eax
481a22:	8b 4d fc             	mov    -0x4(%ebp),%ecx
481a25:	33 cd                	xor    %ebp,%ecx
481a27:	5e                   	pop    %esi
481a28:	e8 9d 7f fe ff       	call   0x4699ca
481a2d:	c9                   	leave
481a2e:	c3                   	ret
481a2f:	53                   	push   %ebx
481a30:	57                   	push   %edi
481a31:	e8 6f 94 00 00       	call   0x48aea5
481a36:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
481a3c:	33 db                	xor    %ebx,%ebx
481a3e:	50                   	push   %eax
481a3f:	89 9d 4c ff ff ff    	mov    %ebx,-0xb4(%ebp)
481a45:	e8 31 8b 00 00       	call   0x48a57b
481a4a:	59                   	pop    %ecx
481a4b:	85 c0                	test   %eax,%eax
481a4d:	0f 85 00 01 00 00    	jne    0x481b53
481a53:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
481a59:	6a 3c                	push   $0x3c
481a5b:	99                   	cltd
481a5c:	59                   	pop    %ecx
481a5d:	f7 f9                	idiv   %ecx
481a5f:	66 89 46 0a          	mov    %ax,0xa(%esi)
481a63:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
481a69:	50                   	push   %eax
481a6a:	e8 00 6f 00 00       	call   0x48896f
481a6f:	8b bd 48 ff ff ff    	mov    -0xb8(%ebp),%edi
481a75:	53                   	push   %ebx
481a76:	8b 9d 44 ff ff ff    	mov    -0xbc(%ebp),%ebx
481a7c:	68 00 46 c3 23       	push   $0x23c34600
481a81:	57                   	push   %edi
481a82:	53                   	push   %ebx
481a83:	e8 d8 88 fe ff       	call   0x46a360
481a88:	8b c8                	mov    %eax,%ecx
481a8a:	8b c2                	mov    %edx,%eax
481a8c:	89 8d 40 ff ff ff    	mov    %ecx,-0xc0(%ebp)
481a92:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
481a98:	3b 0d 18 84 4c 00    	cmp    0x4c8418,%ecx
481a9e:	75 0f                	jne    0x481aaf
481aa0:	3b 05 1c 84 4c 00    	cmp    0x4c841c,%eax
481aa6:	75 07                	jne    0x481aaf
481aa8:	a1 ac 41 4c 00       	mov    0x4c41ac,%eax
481aad:	eb 58                	jmp    0x481b07
481aaf:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
481ab5:	50                   	push   %eax
481ab6:	ff 15 24 e1 49 00    	call   *0x49e124
481abc:	8b c8                	mov    %eax,%ecx
481abe:	83 c8 ff             	or     $0xffffffff,%eax
481ac1:	3b c8                	cmp    %eax,%ecx
481ac3:	74 19                	je     0x481ade
481ac5:	83 f9 02             	cmp    $0x2,%ecx
481ac8:	75 12                	jne    0x481adc
481aca:	66 83 7d ea 00       	cmpw   $0x0,-0x16(%ebp)
481acf:	74 0b                	je     0x481adc
481ad1:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
481ad5:	74 05                	je     0x481adc
481ad7:	33 c0                	xor    %eax,%eax
481ad9:	40                   	inc    %eax
481ada:	eb 02                	jmp    0x481ade
481adc:	33 c0                	xor    %eax,%eax
481ade:	8b 8d 40 ff ff ff    	mov    -0xc0(%ebp),%ecx
481ae4:	8b bd 48 ff ff ff    	mov    -0xb8(%ebp),%edi
481aea:	8b 9d 44 ff ff ff    	mov    -0xbc(%ebp),%ebx
481af0:	89 0d 18 84 4c 00    	mov    %ecx,0x4c8418
481af6:	8b 8d 3c ff ff ff    	mov    -0xc4(%ebp),%ecx
481afc:	a3 ac 41 4c 00       	mov    %eax,0x4c41ac
481b01:	89 0d 1c 84 4c 00    	mov    %ecx,0x4c841c
481b07:	6a 00                	push   $0x0
481b09:	68 10 27 00 00       	push   $0x2710
481b0e:	57                   	push   %edi
481b0f:	53                   	push   %ebx
481b10:	66 89 46 0c          	mov    %ax,0xc(%esi)
481b14:	e8 47 88 fe ff       	call   0x46a360
481b19:	6a 00                	push   $0x0
481b1b:	68 e8 03 00 00       	push   $0x3e8
481b20:	52                   	push   %edx
481b21:	50                   	push   %eax
481b22:	e8 a9 3e 01 00       	call   0x4959d0
481b27:	6a 00                	push   $0x0
481b29:	81 c3 00 80 c1 2a    	add    $0x2ac18000,%ebx
481b2f:	66 89 46 08          	mov    %ax,0x8(%esi)
481b33:	68 80 96 98 00       	push   $0x989680
481b38:	81 d7 21 4e 62 fe    	adc    $0xfe624e21,%edi
481b3e:	57                   	push   %edi
481b3f:	53                   	push   %ebx
481b40:	e8 1b 88 fe ff       	call   0x46a360
481b45:	5f                   	pop    %edi
481b46:	89 06                	mov    %eax,(%esi)
481b48:	33 c0                	xor    %eax,%eax
481b4a:	89 56 04             	mov    %edx,0x4(%esi)
481b4d:	5b                   	pop    %ebx
481b4e:	e9 cf fe ff ff       	jmp    0x481a22
481b53:	53                   	push   %ebx
481b54:	53                   	push   %ebx
481b55:	53                   	push   %ebx
481b56:	53                   	push   %ebx