4888c7:	8d 4d ff             	lea    -0x1(%ebp),%ecx
4888ca:	89 45 f8             	mov    %eax,-0x8(%ebp)
4888cd:	89 45 f4             	mov    %eax,-0xc(%ebp)
4888d0:	8d 45 f8             	lea    -0x8(%ebp),%eax
4888d3:	50                   	push   %eax
4888d4:	ff 75 0c             	push   0xc(%ebp)
4888d7:	8d 45 f4             	lea    -0xc(%ebp),%eax
4888da:	50                   	push   %eax
4888db:	e8 54 ff ff ff       	call   0x488834
4888e0:	8b e5                	mov    %ebp,%esp
4888e2:	5d                   	pop    %ebp
4888e3:	c3                   	ret
4888e4:	8b ff                	mov    %edi,%edi
4888e6:	55                   	push   %ebp
4888e7:	8b ec                	mov    %esp,%ebp
4888e9:	8b 45 08             	mov    0x8(%ebp),%eax
4888ec:	8b 00                	mov    (%eax),%eax
4888ee:	89 01                	mov    %eax,(%ecx)
4888f0:	8b c1                	mov    %ecx,%eax
4888f2:	5d                   	pop    %ebp
4888f3:	c2 04 00             	ret    $0x4
4888f6:	8b ff                	mov    %edi,%edi
4888f8:	55                   	push   %ebp
4888f9:	8b ec                	mov    %esp,%ebp
4888fb:	8b 45 08             	mov    0x8(%ebp),%eax
4888fe:	89 01                	mov    %eax,(%ecx)
488900:	8b 45 0c             	mov    0xc(%ebp),%eax
488903:	89 41 04             	mov    %eax,0x4(%ecx)
488906:	8b c1                	mov    %ecx,%eax
488908:	5d                   	pop    %ebp
488909:	c2 08 00             	ret    $0x8
48890c:	8b ff                	mov    %edi,%edi
48890e:	55                   	push   %ebp
48890f:	8b ec                	mov    %esp,%ebp
488911:	8b 45 08             	mov    0x8(%ebp),%eax
488914:	8b 00                	mov    (%eax),%eax
488916:	89 01                	mov    %eax,(%ecx)
488918:	8b c1                	mov    %ecx,%eax
48891a:	5d                   	pop    %ebp
48891b:	c2 04 00             	ret    $0x4
48891e:	ff 31                	push   (%ecx)
488920:	e8 20 6a ff ff       	call   0x47f345
488925:	59                   	pop    %ecx
488926:	c3                   	ret
488927:	8b 01                	mov    (%ecx),%eax
488929:	56                   	push   %esi
48892a:	57                   	push   %edi
48892b:	8b 38                	mov    (%eax),%edi
48892d:	8b c7                	mov    %edi,%eax
48892f:	83 e0 3f             	and    $0x3f,%eax
488932:	8b f7                	mov    %edi,%esi
488934:	c1 fe 06             	sar    $0x6,%esi
488937:	6b d0 30             	imul   $0x30,%eax,%edx
48893a:	8b 04 b5 00 c0 4b 00 	mov    0x4bc000(,%esi,4),%eax
488941:	f6 44 10 28 01       	testb  $0x1,0x28(%eax,%edx,1)
488946:	74 13                	je     0x48895b
488948:	8b 41 04             	mov    0x4(%ecx),%eax
48894b:	ff 70 04             	push   0x4(%eax)
48894e:	ff 30                	push   (%eax)
488950:	57                   	push   %edi
488951:	e8 39 00 00 00       	call   0x48898f
488956:	83 c4 0c             	add    $0xc,%esp
488959:	eb 0c                	jmp    0x488967
48895b:	e8 cf 44 fc ff       	call   0x44ce2f
488960:	6a 09                	push   $0x9
488962:	59                   	pop    %ecx
488963:	89 08                	mov    %ecx,(%eax)
488965:	8b c1                	mov    %ecx,%eax
488967:	5f                   	pop    %edi
488968:	5e                   	pop    %esi
488969:	c3                   	ret
48896a:	ff 31                	push   (%ecx)
48896c:	e8 8b 6a ff ff       	call   0x47f3fc
488971:	59                   	pop    %ecx
488972:	c3                   	ret
488973:	8b ff                	mov    %edi,%edi
488975:	55                   	push   %ebp
488976:	8b ec                	mov    %esp,%ebp
488978:	8b 45 0c             	mov    0xc(%ebp),%eax
48897b:	99                   	cltd
48897c:	52                   	push   %edx
48897d:	50                   	push   %eax
48897e:	ff 75 08             	push   0x8(%ebp)
488981:	e8 9a 01 00 00       	call   0x488b20
488986:	83 c4 0c             	add    $0xc,%esp
488989:	f7 d8                	neg    %eax
48898b:	1b c0                	sbb    %eax,%eax
48898d:	5d                   	pop    %ebp
48898e:	c3                   	ret
48898f:	8b ff                	mov    %edi,%edi
488991:	55                   	push   %ebp
488992:	8b ec                	mov    %esp,%ebp
488994:	83 ec 10             	sub    $0x10,%esp
488997:	56                   	push   %esi
488998:	57                   	push   %edi
488999:	8b 7d 08             	mov    0x8(%ebp),%edi
48899c:	33 f6                	xor    %esi,%esi
48899e:	6a 01                	push   $0x1
4889a0:	56                   	push   %esi
4889a1:	56                   	push   %esi
4889a2:	57                   	push   %edi
4889a3:	e8 8c 11 ff ff       	call   0x479b34
4889a8:	8b c8                	mov    %eax,%ecx
4889aa:	89 45 f0             	mov    %eax,-0x10(%ebp)
4889ad:	23 ca                	and    %edx,%ecx
4889af:	89 55 f4             	mov    %edx,-0xc(%ebp)
4889b2:	83 c4 10             	add    $0x10,%esp
4889b5:	83 f9 ff             	cmp    $0xffffffff,%ecx
4889b8:	75 0c                	jne    0x4889c6
4889ba:	e8 70 44 fc ff       	call   0x44ce2f
4889bf:	8b 00                	mov    (%eax),%eax
4889c1:	e9 54 01 00 00       	jmp    0x488b1a
4889c6:	6a 02                	push   $0x2
4889c8:	56                   	push   %esi
4889c9:	56                   	push   %esi
4889ca:	57                   	push   %edi
4889cb:	e8 64 11 ff ff       	call   0x479b34
4889d0:	8b c8                	mov    %eax,%ecx
4889d2:	83 c4 10             	add    $0x10,%esp
4889d5:	23 ca                	and    %edx,%ecx
4889d7:	83 f9 ff             	cmp    $0xffffffff,%ecx
4889da:	74 de                	je     0x4889ba
4889dc:	53                   	push   %ebx
4889dd:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4889e0:	2b d8                	sub    %eax,%ebx
4889e2:	8b 45 10             	mov    0x10(%ebp),%eax
4889e5:	1b c2                	sbb    %edx,%eax
4889e7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4889ea:	0f 88 d8 00 00 00    	js     0x488ac8
4889f0:	7f 08                	jg     0x4889fa
4889f2:	3b de                	cmp    %esi,%ebx
4889f4:	0f 86 ce 00 00 00    	jbe    0x488ac8
4889fa:	6a 01                	push   $0x1
4889fc:	68 00 10 00 00       	push   $0x1000
488a01:	e8 4d 98 fe ff       	call   0x472253
488a06:	8b f0                	mov    %eax,%esi
488a08:	59                   	pop    %ecx
488a09:	59                   	pop    %ecx
488a0a:	85 f6                	test   %esi,%esi
488a0c:	75 10                	jne    0x488a1e
488a0e:	e8 1c 44 fc ff       	call   0x44ce2f
488a13:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
488a19:	e9 98 00 00 00       	jmp    0x488ab6
488a1e:	68 00 80 00 00       	push   $0x8000
488a23:	57                   	push   %edi
488a24:	e8 ab 5c fe ff       	call   0x46e6d4
488a29:	59                   	pop    %ecx
488a2a:	89 45 f8             	mov    %eax,-0x8(%ebp)
488a2d:	8b 45 fc             	mov    -0x4(%ebp),%eax
488a30:	59                   	pop    %ecx
488a31:	85 c0                	test   %eax,%eax
488a33:	7c 11                	jl     0x488a46
488a35:	7f 08                	jg     0x488a3f
488a37:	81 fb 00 10 00 00    	cmp    $0x1000,%ebx
488a3d:	72 07                	jb     0x488a46
488a3f:	b8 00 10 00 00       	mov    $0x1000,%eax
488a44:	eb 02                	jmp    0x488a48
488a46:	8b c3                	mov    %ebx,%eax
488a48:	50                   	push   %eax
488a49:	56                   	push   %esi
488a4a:	57                   	push   %edi
488a4b:	e8 da 17 ff ff       	call   0x47a22a
488a50:	83 c4 0c             	add    $0xc,%esp
488a53:	83 f8 ff             	cmp    $0xffffffff,%eax
488a56:	74 49                	je     0x488aa1
488a58:	99                   	cltd
488a59:	2b d8                	sub    %eax,%ebx
488a5b:	8b 45 fc             	mov    -0x4(%ebp),%eax
488a5e:	1b c2                	sbb    %edx,%eax
488a60:	89 45 fc             	mov    %eax,-0x4(%ebp)
488a63:	85 c0                	test   %eax,%eax
488a65:	7f d8                	jg     0x488a3f
488a67:	7c 04                	jl     0x488a6d
488a69:	85 db                	test   %ebx,%ebx
488a6b:	75 c4                	jne    0x488a31
488a6d:	ff 75 f8             	push   -0x8(%ebp)
488a70:	57                   	push   %edi
488a71:	e8 5e 5c fe ff       	call   0x46e6d4
488a76:	56                   	push   %esi
488a77:	e8 bd 98 fe ff       	call   0x472339
488a7c:	83 c4 0c             	add    $0xc,%esp
488a7f:	33 f6                	xor    %esi,%esi
488a81:	56                   	push   %esi
488a82:	ff 75 f4             	push   -0xc(%ebp)
488a85:	ff 75 f0             	push   -0x10(%ebp)
488a88:	57                   	push   %edi
488a89:	e8 a6 10 ff ff       	call   0x479b34
488a8e:	23 c2                	and    %edx,%eax
488a90:	83 c4 10             	add    $0x10,%esp
488a93:	83 f8 ff             	cmp    $0xffffffff,%eax
488a96:	75 7f                	jne    0x488b17
488a98:	e8 92 43 fc ff       	call   0x44ce2f
488a9d:	8b 00                	mov    (%eax),%eax
488a9f:	eb 78                	jmp    0x488b19
488aa1:	e8 76 43 fc ff       	call   0x44ce1c
488aa6:	83 38 05             	cmpl   $0x5,(%eax)
488aa9:	75 0b                	jne    0x488ab6
488aab:	e8 7f 43 fc ff       	call   0x44ce2f
488ab0:	c7 00 0d 00 00 00    	movl   $0xd,(%eax)
488ab6:	e8 74 43 fc ff       	call   0x44ce2f
488abb:	56                   	push   %esi
488abc:	8b 38                	mov    (%eax),%edi
488abe:	e8 76 98 fe ff       	call   0x472339
488ac3:	59                   	pop    %ecx
488ac4:	8b c7                	mov    %edi,%eax
488ac6:	eb 51                	jmp    0x488b19
488ac8:	3b c6                	cmp    %esi,%eax
488aca:	7f b5                	jg     0x488a81
488acc:	7c 04                	jl     0x488ad2
488ace:	3b de                	cmp    %esi,%ebx
488ad0:	73 af                	jae    0x488a81
488ad2:	56                   	push   %esi
488ad3:	ff 75 10             	push   0x10(%ebp)
488ad6:	ff 75 0c             	push   0xc(%ebp)
488ad9:	57                   	push   %edi
488ada:	e8 55 10 ff ff       	call   0x479b34
488adf:	23 c2                	and    %edx,%eax
488ae1:	83 c4 10             	add    $0x10,%esp
488ae4:	83 f8 ff             	cmp    $0xffffffff,%eax
488ae7:	74 af                	je     0x488a98
488ae9:	57                   	push   %edi
488aea:	e8 d3 6a ff ff       	call   0x47f5c2
488aef:	59                   	pop    %ecx
488af0:	50                   	push   %eax
488af1:	ff 15 cc 41 49 00    	call   *0x4941cc
488af7:	85 c0                	test   %eax,%eax
488af9:	75 86                	jne    0x488a81
488afb:	e8 2f 43 fc ff       	call   0x44ce2f
488b00:	c7 00 0d 00 00 00    	movl   $0xd,(%eax)
488b06:	e8 11 43 fc ff       	call   0x44ce1c
488b0b:	8b f0                	mov    %eax,%esi
488b0d:	ff 15 24 41 49 00    	call   *0x494124
488b13:	89 06                	mov    %eax,(%esi)
488b15:	eb 81                	jmp    0x488a98
488b17:	33 c0                	xor    %eax,%eax
488b19:	5b                   	pop    %ebx
488b1a:	5f                   	pop    %edi
488b1b:	5e                   	pop    %esi
488b1c:	8b e5                	mov    %ebp,%esp
488b1e:	5d                   	pop    %ebp
488b1f:	c3                   	ret
488b20:	8b ff                	mov    %edi,%edi
488b22:	55                   	push   %ebp
488b23:	8b ec                	mov    %esp,%ebp
488b25:	51                   	push   %ecx
488b26:	51                   	push   %ecx
488b27:	56                   	push   %esi
488b28:	8b 75 08             	mov    0x8(%ebp),%esi
488b2b:	83 fe fe             	cmp    $0xfffffffe,%esi
488b2e:	75 0d                	jne    0x488b3d
488b30:	e8 e7 42 fc ff       	call   0x44ce1c
488b35:	6a 09                	push   $0x9
488b37:	83 20 00             	andl   $0x0,(%eax)
488b3a:	58                   	pop    %eax
488b3b:	eb 79                	jmp    0x488bb6
488b3d:	85 f6                	test   %esi,%esi
488b3f:	78 5c                	js     0x488b9d
488b41:	3b 35 00 c2 4b 00    	cmp    0x4bc200,%esi
488b47:	73 54                	jae    0x488b9d
488b49:	8b c6                	mov    %esi,%eax
488b4b:	8b d6                	mov    %esi,%edx
488b4d:	83 e0 3f             	and    $0x3f,%eax
488b50:	c1 fa 06             	sar    $0x6,%edx
488b53:	6b c8 30             	imul   $0x30,%eax,%ecx
488b56:	8b 04 95 00 c0 4b 00 	mov    0x4bc000(,%edx,4),%eax
488b5d:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
488b62:	74 39                	je     0x488b9d
488b64:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
488b68:	7f 19                	jg     0x488b83
488b6a:	7c 06                	jl     0x488b72
488b6c:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
488b70:	73 11                	jae    0x488b83
488b72:	e8 a5 42 fc ff       	call   0x44ce1c
488b77:	83 20 00             	andl   $0x0,(%eax)
488b7a:	e8 b0 42 fc ff       	call   0x44ce2f
488b7f:	6a 16                	push   $0x16
488b81:	eb 29                	jmp    0x488bac
488b83:	8d 45 08             	lea    0x8(%ebp),%eax
488b86:	89 45 f8             	mov    %eax,-0x8(%ebp)
488b89:	8d 45 0c             	lea    0xc(%ebp),%eax
488b8c:	89 45 fc             	mov    %eax,-0x4(%ebp)
488b8f:	8d 45 f8             	lea    -0x8(%ebp),%eax
488b92:	50                   	push   %eax
488b93:	56                   	push   %esi
488b94:	e8 23 fd ff ff       	call   0x4888bc
488b99:	59                   	pop    %ecx
488b9a:	59                   	pop    %ecx
488b9b:	eb 19                	jmp    0x488bb6
488b9d:	e8 7a 42 fc ff       	call   0x44ce1c
488ba2:	83 20 00             	andl   $0x0,(%eax)
488ba5:	e8 85 42 fc ff       	call   0x44ce2f
488baa:	6a 09                	push   $0x9
488bac:	5e                   	pop    %esi
488bad:	89 30                	mov    %esi,(%eax)
488baf:	e8 22 41 fc ff       	call   0x44ccd6
488bb4:	8b c6                	mov    %esi,%eax
488bb6:	5e                   	pop    %esi
488bb7:	8b e5                	mov    %ebp,%esp
488bb9:	5d                   	pop    %ebp
488bba:	c3                   	ret
488bbb:	8b ff                	mov    %edi,%edi
488bbd:	55                   	push   %ebp
488bbe:	8b ec                	mov    %esp,%ebp
488bc0:	51                   	push   %ecx
488bc1:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
488bc5:	8d 45 fc             	lea    -0x4(%ebp),%eax
488bc8:	50                   	push   %eax
488bc9:	8b 45 08             	mov    0x8(%ebp),%eax
488bcc:	25 80 01 00 00       	and    $0x180,%eax
488bd1:	50                   	push   %eax
488bd2:	e8 09 00 00 00       	call   0x488be0
488bd7:	8b 45 fc             	mov    -0x4(%ebp),%eax
488bda:	59                   	pop    %ecx
488bdb:	59                   	pop    %ecx
488bdc:	8b e5                	mov    %ebp,%esp
488bde:	5d                   	pop    %ebp
488bdf:	c3                   	ret
488be0:	8b ff                	mov    %edi,%edi
488be2:	55                   	push   %ebp
488be3:	8b ec                	mov    %esp,%ebp
488be5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
488be8:	56                   	push   %esi
488be9:	85 c9                	test   %ecx,%ecx
488beb:	75 13                	jne    0x488c00
488bed:	e8 3d 42 fc ff       	call   0x44ce2f
488bf2:	6a 16                	push   $0x16
488bf4:	5e                   	pop    %esi
488bf5:	89 30                	mov    %esi,(%eax)
488bf7:	e8 da 40 fc ff       	call   0x44ccd6
488bfc:	8b c6                	mov    %esi,%eax
488bfe:	eb 18                	jmp    0x488c18
488c00:	a1 20 c3 4b 00       	mov    0x4bc320,%eax
488c05:	89 01                	mov    %eax,(%ecx)
488c07:	8b 45 08             	mov    0x8(%ebp),%eax
488c0a:	a9 7f fe ff ff       	test   $0xfffffe7f,%eax
488c0f:	75 dc                	jne    0x488bed
488c11:	a3 20 c3 4b 00       	mov    %eax,0x4bc320
488c16:	33 c0                	xor    %eax,%eax
488c18:	5e                   	pop    %esi
488c19:	5d                   	pop    %ebp
488c1a:	c3                   	ret
488c1b:	8b ff                	mov    %edi,%edi
488c1d:	55                   	push   %ebp
488c1e:	8b ec                	mov    %esp,%ebp
488c20:	56                   	push   %esi
488c21:	e8 da 9d fe ff       	call   0x472a00
488c26:	8b 75 08             	mov    0x8(%ebp),%esi
488c29:	89 06                	mov    %eax,(%esi)
488c2b:	e8 13 9e fe ff       	call   0x472a43
488c30:	89 46 04             	mov    %eax,0x4(%esi)