4867fb:	81 ce 00 00 01 50    	or     $0x50010000,%esi
486801:	56                   	push   %esi
486802:	8b 35 10 f5 48 00    	mov    0x48f510,%esi
486808:	6a f0                	push   $0xfffffff0
48680a:	ff 37                	push   (%edi)
48680c:	ff d6                	call   *%esi
48680e:	81 cb 00 00 01 00    	or     $0x10000,%ebx
486814:	53                   	push   %ebx
486815:	6a ec                	push   $0xffffffec
486817:	ff 37                	push   (%edi)
486819:	ff d6                	call   *%esi
48681b:	b0 01                	mov    $0x1,%al
48681d:	5f                   	pop    %edi
48681e:	5e                   	pop    %esi
48681f:	5b                   	pop    %ebx
486820:	59                   	pop    %ecx
486821:	5d                   	pop    %ebp
486822:	c2 28 00             	ret    $0x28
486825:	55                   	push   %ebp
486826:	8b ec                	mov    %esp,%ebp
486828:	8b 45 28             	mov    0x28(%ebp),%eax
48682b:	53                   	push   %ebx
48682c:	32 db                	xor    %bl,%bl
48682e:	40                   	inc    %eax
48682f:	f7 d8                	neg    %eax
486831:	56                   	push   %esi
486832:	1b c0                	sbb    %eax,%eax
486834:	23 45 28             	and    0x28(%ebp),%eax
486837:	57                   	push   %edi
486838:	0d 00 00 01 00       	or     $0x10000,%eax
48683d:	50                   	push   %eax
48683e:	e8 69 50 00 00       	call   0x48b8ac
486843:	a8 01                	test   $0x1,%al
486845:	74 05                	je     0x48684c
486847:	fe c3                	inc    %bl
486849:	83 f0 01             	xor    $0x1,%eax
48684c:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
48684f:	83 f9 ff             	cmp    $0xffffffff,%ecx
486852:	75 05                	jne    0x486859
486854:	b9 00 01 00 00       	mov    $0x100,%ecx
486859:	6a 01                	push   $0x1
48685b:	51                   	push   %ecx
48685c:	ff 75 10             	push   0x10(%ebp)
48685f:	8b 7d 08             	mov    0x8(%ebp),%edi
486862:	ff 75 24             	push   0x24(%ebp)
486865:	ff 75 20             	push   0x20(%ebp)
486868:	ff 75 1c             	push   0x1c(%ebp)
48686b:	ff 75 18             	push   0x18(%ebp)
48686e:	50                   	push   %eax
48686f:	ff 75 14             	push   0x14(%ebp)
486872:	68 2c b7 4b 00       	push   $0x4bb72c
486877:	51                   	push   %ecx
486878:	57                   	push   %edi
486879:	e8 b7 b4 f7 ff       	call   0x401d35
48687e:	8b 75 0c             	mov    0xc(%ebp),%esi
486881:	89 06                	mov    %eax,(%esi)
486883:	85 c0                	test   %eax,%eax
486885:	75 04                	jne    0x48688b
486887:	32 c0                	xor    %al,%al
486889:	eb 2d                	jmp    0x4868b8
48688b:	84 db                	test   %bl,%bl
48688d:	74 12                	je     0x4868a1
48688f:	6a 00                	push   $0x0
486891:	ff 75 10             	push   0x10(%ebp)
486894:	68 01 04 00 00       	push   $0x401
486899:	ff 37                	push   (%edi)
48689b:	ff 15 88 f6 48 00    	call   *0x48f688
4868a1:	83 3d b8 67 4c 00 00 	cmpl   $0x0,0x4c67b8
4868a8:	75 0c                	jne    0x4868b6
4868aa:	b9 00 03 00 00       	mov    $0x300,%ecx
4868af:	66 89 8e 86 00 00 00 	mov    %cx,0x86(%esi)
4868b6:	b0 01                	mov    $0x1,%al
4868b8:	5f                   	pop    %edi
4868b9:	5e                   	pop    %esi
4868ba:	5b                   	pop    %ebx
4868bb:	5d                   	pop    %ebp
4868bc:	c2 28 00             	ret    $0x28
4868bf:	55                   	push   %ebp
4868c0:	8b ec                	mov    %esp,%ebp
4868c2:	8b 45 28             	mov    0x28(%ebp),%eax
4868c5:	83 f8 ff             	cmp    $0xffffffff,%eax
4868c8:	75 03                	jne    0x4868cd
4868ca:	6a 03                	push   $0x3
4868cc:	58                   	pop    %eax
4868cd:	a8 07                	test   $0x7,%al
4868cf:	75 03                	jne    0x4868d4
4868d1:	83 c8 03             	or     $0x3,%eax
4868d4:	56                   	push   %esi
4868d5:	0d 00 00 01 00       	or     $0x10000,%eax
4868da:	50                   	push   %eax
4868db:	e8 cc 4f 00 00       	call   0x48b8ac
4868e0:	8b 4d 2c             	mov    0x2c(%ebp),%ecx
4868e3:	6a 01                	push   $0x1
4868e5:	41                   	inc    %ecx
4868e6:	f7 d9                	neg    %ecx
4868e8:	1b c9                	sbb    %ecx,%ecx
4868ea:	23 4d 2c             	and    0x2c(%ebp),%ecx
4868ed:	51                   	push   %ecx
4868ee:	ff 75 10             	push   0x10(%ebp)
4868f1:	ff 75 24             	push   0x24(%ebp)
4868f4:	ff 75 20             	push   0x20(%ebp)
4868f7:	ff 75 1c             	push   0x1c(%ebp)
4868fa:	ff 75 18             	push   0x18(%ebp)
4868fd:	50                   	push   %eax
4868fe:	ff 75 14             	push   0x14(%ebp)
486901:	68 2c b7 4b 00       	push   $0x4bb72c
486906:	51                   	push   %ecx
486907:	ff 75 08             	push   0x8(%ebp)
48690a:	e8 26 b4 f7 ff       	call   0x401d35
48690f:	8b 75 0c             	mov    0xc(%ebp),%esi
486912:	89 06                	mov    %eax,(%esi)
486914:	85 c0                	test   %eax,%eax
486916:	75 04                	jne    0x48691c
486918:	32 c0                	xor    %al,%al
48691a:	eb 22                	jmp    0x48693e
48691c:	6a 12                	push   $0x12
48691e:	ff 15 28 f5 48 00    	call   *0x48f528
486924:	89 46 4c             	mov    %eax,0x4c(%esi)
486927:	83 3d b8 67 4c 00 00 	cmpl   $0x0,0x4c67b8
48692e:	75 0c                	jne    0x48693c
486930:	b9 00 02 00 00       	mov    $0x200,%ecx
486935:	66 89 8e 86 00 00 00 	mov    %cx,0x86(%esi)
48693c:	b0 01                	mov    $0x1,%al
48693e:	5e                   	pop    %esi
48693f:	5d                   	pop    %ebp
486940:	c2 28 00             	ret    $0x28
486943:	55                   	push   %ebp
486944:	8b ec                	mov    %esp,%ebp
486946:	8b 45 28             	mov    0x28(%ebp),%eax
486949:	53                   	push   %ebx
48694a:	56                   	push   %esi
48694b:	57                   	push   %edi
48694c:	83 cf ff             	or     $0xffffffff,%edi
48694f:	3b c7                	cmp    %edi,%eax
486951:	75 05                	jne    0x486958
486953:	b8 42 00 20 00       	mov    $0x200042,%eax
486958:	0d 00 00 01 00       	or     $0x10000,%eax
48695d:	50                   	push   %eax
48695e:	e8 49 4f 00 00       	call   0x48b8ac
486963:	8b 55 2c             	mov    0x2c(%ebp),%edx
486966:	8b f0                	mov    %eax,%esi
486968:	b8 00 02 00 00       	mov    $0x200,%eax
48696d:	3b d7                	cmp    %edi,%edx
48696f:	75 02                	jne    0x486973
486971:	8b d0                	mov    %eax,%edx
486973:	8b 4d 20             	mov    0x20(%ebp),%ecx
486976:	3b cf                	cmp    %edi,%ecx
486978:	75 05                	jne    0x48697f
48697a:	b9 c8 00 00 00       	mov    $0xc8,%ecx
48697f:	8b 45 24             	mov    0x24(%ebp),%eax
486982:	3b c7                	cmp    %edi,%eax
486984:	75 05                	jne    0x48698b
486986:	b8 96 00 00 00       	mov    $0x96,%eax
48698b:	6a 01                	push   $0x1
48698d:	51                   	push   %ecx
48698e:	ff 75 10             	push   0x10(%ebp)
486991:	33 db                	xor    %ebx,%ebx
486993:	50                   	push   %eax
486994:	51                   	push   %ecx
486995:	ff 75 1c             	push   0x1c(%ebp)
486998:	ff 75 18             	push   0x18(%ebp)
48699b:	56                   	push   %esi
48699c:	53                   	push   %ebx
48699d:	68 3c b7 4b 00       	push   $0x4bb73c
4869a2:	52                   	push   %edx
4869a3:	ff 75 08             	push   0x8(%ebp)
4869a6:	e8 8a b3 f7 ff       	call   0x401d35
4869ab:	8b 7d 0c             	mov    0xc(%ebp),%edi
4869ae:	8b c8                	mov    %eax,%ecx
4869b0:	89 0f                	mov    %ecx,(%edi)
4869b2:	85 c9                	test   %ecx,%ecx
4869b4:	75 04                	jne    0x4869ba
4869b6:	32 c0                	xor    %al,%al
4869b8:	eb 39                	jmp    0x4869f3
4869ba:	8b 45 14             	mov    0x14(%ebp),%eax
4869bd:	66 39 18             	cmp    %bx,(%eax)
4869c0:	74 1b                	je     0x4869dd
4869c2:	8b 35 88 f6 48 00    	mov    0x48f688,%esi
4869c8:	50                   	push   %eax
4869c9:	53                   	push   %ebx
4869ca:	68 43 01 00 00       	push   $0x143
4869cf:	51                   	push   %ecx
4869d0:	ff d6                	call   *%esi
4869d2:	53                   	push   %ebx
4869d3:	53                   	push   %ebx
4869d4:	68 4e 01 00 00       	push   $0x14e
4869d9:	ff 37                	push   (%edi)
4869db:	ff d6                	call   *%esi
4869dd:	39 1d b8 67 4c 00    	cmp    %ebx,0x4c67b8
4869e3:	75 0c                	jne    0x4869f1
4869e5:	b9 00 02 00 00       	mov    $0x200,%ecx
4869ea:	66 89 8f 86 00 00 00 	mov    %cx,0x86(%edi)
4869f1:	b0 01                	mov    $0x1,%al
4869f3:	5f                   	pop    %edi
4869f4:	5e                   	pop    %esi
4869f5:	5b                   	pop    %ebx
4869f6:	5d                   	pop    %ebp
4869f7:	c2 28 00             	ret    $0x28
4869fa:	55                   	push   %ebp
4869fb:	8b ec                	mov    %esp,%ebp
4869fd:	51                   	push   %ecx
4869fe:	83 7d 14 ff          	cmpl   $0xffffffff,0x14(%ebp)
486a02:	56                   	push   %esi
486a03:	57                   	push   %edi
486a04:	75 3f                	jne    0x486a45
486a06:	8b 75 08             	mov    0x8(%ebp),%esi
486a09:	8b 7d 0c             	mov    0xc(%ebp),%edi
486a0c:	83 be a0 01 00 00 00 	cmpl   $0x0,0x1a0(%esi)
486a13:	0f 85 ad 00 00 00    	jne    0x486ac6
486a19:	ff 15 10 f7 48 00    	call   *0x48f710
486a1f:	89 86 a0 01 00 00    	mov    %eax,0x1a0(%esi)
486a25:	89 86 a4 01 00 00    	mov    %eax,0x1a4(%esi)
486a2b:	89 47 0c             	mov    %eax,0xc(%edi)
486a2e:	83 be a0 01 00 00 00 	cmpl   $0x0,0x1a0(%esi)
486a35:	0f 85 8b 00 00 00    	jne    0x486ac6
486a3b:	32 c0                	xor    %al,%al
486a3d:	5f                   	pop    %edi
486a3e:	5e                   	pop    %esi
486a3f:	8b e5                	mov    %ebp,%esp
486a41:	5d                   	pop    %ebp
486a42:	c2 10 00             	ret    $0x10
486a45:	8d 45 fc             	lea    -0x4(%ebp),%eax
486a48:	b9 b0 67 4c 00       	mov    $0x4c67b0,%ecx
486a4d:	50                   	push   %eax
486a4e:	8d 45 08             	lea    0x8(%ebp),%eax
486a51:	50                   	push   %eax
486a52:	ff 75 14             	push   0x14(%ebp)
486a55:	e8 a8 b9 f7 ff       	call   0x402402
486a5a:	84 c0                	test   %al,%al
486a5c:	74 dd                	je     0x486a3b
486a5e:	8b 4d 08             	mov    0x8(%ebp),%ecx
486a61:	a1 10 68 4c 00       	mov    0x4c6810,%eax
486a66:	8b 75 fc             	mov    -0x4(%ebp),%esi
486a69:	8b 04 88             	mov    (%eax,%ecx,4),%eax
486a6c:	8b 00                	mov    (%eax),%eax
486a6e:	89 45 14             	mov    %eax,0x14(%ebp)
486a71:	a1 24 68 4c 00       	mov    0x4c6824,%eax
486a76:	8b 04 b0             	mov    (%eax,%esi,4),%eax
486a79:	8b 08                	mov    (%eax),%ecx
486a7b:	8a 81 90 00 00 00    	mov    0x90(%ecx),%al
486a81:	3c 0e                	cmp    $0xe,%al
486a83:	74 b6                	je     0x486a3b
486a85:	3c 0f                	cmp    $0xf,%al
486a87:	74 b2                	je     0x486a3b
486a89:	3c 02                	cmp    $0x2,%al
486a8b:	74 ae                	je     0x486a3b
486a8d:	3c 03                	cmp    $0x3,%al
486a8f:	74 aa                	je     0x486a3b
486a91:	83 79 0c 00          	cmpl   $0x0,0xc(%ecx)
486a95:	75 a4                	jne    0x486a3b
486a97:	ff 15 10 f7 48 00    	call   *0x48f710
486a9d:	8b 7d 0c             	mov    0xc(%ebp),%edi
486aa0:	8b 4d 14             	mov    0x14(%ebp),%ecx
486aa3:	89 47 0c             	mov    %eax,0xc(%edi)
486aa6:	89 81 a4 01 00 00    	mov    %eax,0x1a4(%ecx)
486aac:	a1 24 68 4c 00       	mov    0x4c6824,%eax
486ab1:	8b 04 b0             	mov    (%eax,%esi,4),%eax
486ab4:	8b 08                	mov    (%eax),%ecx
486ab6:	8b 47 0c             	mov    0xc(%edi),%eax
486ab9:	89 41 0c             	mov    %eax,0xc(%ecx)
486abc:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
486ac0:	0f 84 75 ff ff ff    	je     0x486a3b
486ac6:	c6 87 92 00 00 00 00 	movb   $0x0,0x92(%edi)
486acd:	b0 01                	mov    $0x1,%al
486acf:	e9 69 ff ff ff       	jmp    0x486a3d
486ad4:	55                   	push   %ebp
486ad5:	8b ec                	mov    %esp,%ebp
486ad7:	8b 45 28             	mov    0x28(%ebp),%eax
486ada:	83 ec 14             	sub    $0x14,%esp
486add:	53                   	push   %ebx
486ade:	56                   	push   %esi
486adf:	83 ce ff             	or     $0xffffffff,%esi
486ae2:	57                   	push   %edi
486ae3:	3b c6                	cmp    %esi,%eax
486ae5:	75 03                	jne    0x486aea
486ae7:	6a 04                	push   $0x4
486ae9:	58                   	pop    %eax
486aea:	0d 00 00 01 00       	or     $0x10000,%eax
486aef:	50                   	push   %eax
486af0:	e8 b7 4d 00 00       	call   0x48b8ac
486af5:	8b 55 2c             	mov    0x2c(%ebp),%edx
486af8:	8b d8                	mov    %eax,%ebx
486afa:	bf 00 02 00 00       	mov    $0x200,%edi
486aff:	3b d6                	cmp    %esi,%edx
486b01:	75 02                	jne    0x486b05
486b03:	8b d7                	mov    %edi,%edx
486b05:	8b 45 20             	mov    0x20(%ebp),%eax
486b08:	3b c6                	cmp    %esi,%eax
486b0a:	75 05                	jne    0x486b11
486b0c:	b8 c8 00 00 00       	mov    $0xc8,%eax
486b11:	8b 4d 24             	mov    0x24(%ebp),%ecx
486b14:	3b ce                	cmp    %esi,%ecx
486b16:	75 03                	jne    0x486b1b
486b18:	6a 14                	push   $0x14
486b1a:	59                   	pop    %ecx
486b1b:	6a 01                	push   $0x1
486b1d:	51                   	push   %ecx
486b1e:	ff 75 10             	push   0x10(%ebp)
486b21:	51                   	push   %ecx
486b22:	50                   	push   %eax
486b23:	ff 75 1c             	push   0x1c(%ebp)
486b26:	ff 75 18             	push   0x18(%ebp)
486b29:	53                   	push   %ebx
486b2a:	6a 00                	push   $0x0
486b2c:	68 60 b7 4b 00       	push   $0x4bb760
486b31:	52                   	push   %edx
486b32:	ff 75 08             	push   0x8(%ebp)
486b35:	e8 fb b1 f7 ff       	call   0x401d35
486b3a:	8b 75 0c             	mov    0xc(%ebp),%esi
486b3d:	89 06                	mov    %eax,(%esi)
486b3f:	85 c0                	test   %eax,%eax
486b41:	75 04                	jne    0x486b47
486b43:	32 c0                	xor    %al,%al
486b45:	eb 3f                	jmp    0x486b86
486b47:	8b 4d 14             	mov    0x14(%ebp),%ecx
486b4a:	8d 55 f0             	lea    -0x10(%ebp),%edx
486b4d:	c0 eb 03             	shr    $0x3,%bl
486b50:	f6 d3                	not    %bl
486b52:	80 e3 01             	and    $0x1,%bl
486b55:	8a c3                	mov    %bl,%al
486b57:	6a 01                	push   $0x1
486b59:	50                   	push   %eax
486b5a:	e8 40 ed fd ff       	call   0x46589f
486b5f:	59                   	pop    %ecx
486b60:	59                   	pop    %ecx
486b61:	8d 45 f0             	lea    -0x10(%ebp),%eax
486b64:	50                   	push   %eax
486b65:	6a 00                	push   $0x0
486b67:	68 02 10 00 00       	push   $0x1002
486b6c:	ff 36                	push   (%esi)
486b6e:	ff 15 88 f6 48 00    	call   *0x48f688
486b74:	83 3d b8 67 4c 00 00 	cmpl   $0x0,0x4c67b8
486b7b:	75 07                	jne    0x486b84
486b7d:	66 89 be 86 00 00 00 	mov    %di,0x86(%esi)
486b84:	b0 01                	mov    $0x1,%al
486b86:	5f                   	pop    %edi
486b87:	5e                   	pop    %esi
486b88:	5b                   	pop    %ebx
486b89:	8b e5                	mov    %ebp,%esp
486b8b:	5d                   	pop    %ebp
486b8c:	c2 28 00             	ret    $0x28
486b8f:	55                   	push   %ebp
486b90:	8b ec                	mov    %esp,%ebp
486b92:	8b 45 28             	mov    0x28(%ebp),%eax
486b95:	83 f8 ff             	cmp    $0xffffffff,%eax
486b98:	75 05                	jne    0x486b9f
486b9a:	b8 c0 10 30 00       	mov    $0x3010c0,%eax
486b9f:	53                   	push   %ebx
486ba0:	56                   	push   %esi
486ba1:	a9 00 08 00 00       	test   $0x800,%eax