464951:	75 f7                	jne    0x46494a
464953:	3b f1                	cmp    %ecx,%esi
464955:	7e 0f                	jle    0x464966
464957:	68 44 a3 4b 00       	push   $0x4ba344
46495c:	57                   	push   %edi
46495d:	e8 9a e6 fb ff       	call   0x422ffc
464962:	59                   	pop    %ecx
464963:	59                   	pop    %ecx
464964:	eb 48                	jmp    0x4649ae
464966:	6a 04                	push   $0x4
464968:	ff 74 b2 fc          	push   -0x4(%edx,%esi,4)
46496c:	8d 45 fc             	lea    -0x4(%ebp),%eax
46496f:	50                   	push   %eax
464970:	e8 0b c7 fb ff       	call   0x421080
464975:	83 c4 0c             	add    $0xc,%esp
464978:	ff 75 fc             	push   -0x4(%ebp)
46497b:	ff 15 14 f8 48 00    	call   *0x48f814
464981:	50                   	push   %eax
464982:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
464988:	50                   	push   %eax
464989:	e8 e2 fb fb ff       	call   0x424570
46498e:	83 ca ff             	or     $0xffffffff,%edx
464991:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
464997:	e8 a2 0d 00 00       	call   0x46573e
46499c:	8b f0                	mov    %eax,%esi
46499e:	56                   	push   %esi
46499f:	57                   	push   %edi
4649a0:	e8 57 e6 fb ff       	call   0x422ffc
4649a5:	56                   	push   %esi
4649a6:	e8 c1 c6 fb ff       	call   0x42106c
4649ab:	83 c4 14             	add    $0x14,%esp
4649ae:	ff 15 c8 f7 48 00    	call   *0x48f7c8
4649b4:	eb 0d                	jmp    0x4649c3
4649b6:	68 10 f9 48 00       	push   $0x48f910
4649bb:	57                   	push   %edi
4649bc:	e8 3b e6 fb ff       	call   0x422ffc
4649c1:	59                   	pop    %ecx
4649c2:	59                   	pop    %ecx
4649c3:	5f                   	pop    %edi
4649c4:	5e                   	pop    %esi
4649c5:	8b e5                	mov    %ebp,%esp
4649c7:	5d                   	pop    %ebp
4649c8:	c3                   	ret
4649c9:	53                   	push   %ebx
4649ca:	56                   	push   %esi
4649cb:	8b f1                	mov    %ecx,%esi
4649cd:	33 db                	xor    %ebx,%ebx
4649cf:	57                   	push   %edi
4649d0:	8b fb                	mov    %ebx,%edi
4649d2:	66 39 1e             	cmp    %bx,(%esi)
4649d5:	74 19                	je     0x4649f0
4649d7:	8b c6                	mov    %esi,%eax
4649d9:	0f b7 00             	movzwl (%eax),%eax
4649dc:	50                   	push   %eax
4649dd:	e8 8a ee fb ff       	call   0x42386c
4649e2:	59                   	pop    %ecx
4649e3:	85 c0                	test   %eax,%eax
4649e5:	74 14                	je     0x4649fb
4649e7:	47                   	inc    %edi
4649e8:	8d 04 7e             	lea    (%esi,%edi,2),%eax
4649eb:	66 39 18             	cmp    %bx,(%eax)
4649ee:	75 e9                	jne    0x4649d9
4649f0:	56                   	push   %esi
4649f1:	e8 dd ed fb ff       	call   0x4237d3
4649f6:	59                   	pop    %ecx
4649f7:	5f                   	pop    %edi
4649f8:	5e                   	pop    %esi
4649f9:	5b                   	pop    %ebx
4649fa:	c3                   	ret
4649fb:	33 c0                	xor    %eax,%eax
4649fd:	eb f8                	jmp    0x4649f7
4649ff:	55                   	push   %ebp
464a00:	8b ec                	mov    %esp,%ebp
464a02:	81 ec 08 02 00 00    	sub    $0x208,%esp
464a08:	8d 85 f8 fd ff ff    	lea    -0x208(%ebp),%eax
464a0e:	56                   	push   %esi
464a0f:	50                   	push   %eax
464a10:	33 c0                	xor    %eax,%eax
464a12:	8b f2                	mov    %edx,%esi
464a14:	50                   	push   %eax
464a15:	50                   	push   %eax
464a16:	51                   	push   %ecx
464a17:	50                   	push   %eax
464a18:	ff 15 b0 f4 48 00    	call   *0x48f4b0
464a1e:	8d 85 f8 fd ff ff    	lea    -0x208(%ebp),%eax
464a24:	8b ce                	mov    %esi,%ecx
464a26:	50                   	push   %eax
464a27:	e8 00 33 fa ff       	call   0x407d2c
464a2c:	5e                   	pop    %esi
464a2d:	8b e5                	mov    %ebp,%esp
464a2f:	5d                   	pop    %ebp
464a30:	c3                   	ret
464a31:	55                   	push   %ebp
464a32:	8b ec                	mov    %esp,%ebp
464a34:	b8 00 00 01 00       	mov    $0x10000,%eax
464a39:	e8 52 d1 fc ff       	call   0x431b90
464a3e:	56                   	push   %esi
464a3f:	57                   	push   %edi
464a40:	68 ff 7f 00 00       	push   $0x7fff
464a45:	8d 85 00 00 ff ff    	lea    -0x10000(%ebp),%eax
464a4b:	8b fa                	mov    %edx,%edi
464a4d:	50                   	push   %eax
464a4e:	ff 31                	push   (%ecx)
464a50:	ff 15 10 f2 48 00    	call   *0x48f210
464a56:	8b f0                	mov    %eax,%esi
464a58:	8b cf                	mov    %edi,%ecx
464a5a:	8d 85 00 00 ff ff    	lea    -0x10000(%ebp),%eax
464a60:	50                   	push   %eax
464a61:	e8 c6 32 fa ff       	call   0x407d2c
464a66:	85 f6                	test   %esi,%esi
464a68:	5f                   	pop    %edi
464a69:	0f 95 c0             	setne  %al
464a6c:	5e                   	pop    %esi
464a6d:	8b e5                	mov    %ebp,%esp
464a6f:	5d                   	pop    %ebp
464a70:	c3                   	ret
464a71:	55                   	push   %ebp
464a72:	8b ec                	mov    %esp,%ebp
464a74:	83 ec 14             	sub    $0x14,%esp
464a77:	53                   	push   %ebx
464a78:	56                   	push   %esi
464a79:	89 4d f4             	mov    %ecx,-0xc(%ebp)
464a7c:	8b ca                	mov    %edx,%ecx
464a7e:	57                   	push   %edi
464a7f:	e8 42 b4 fb ff       	call   0x41fec6
464a84:	50                   	push   %eax
464a85:	8d 4d ec             	lea    -0x14(%ebp),%ecx
464a88:	e8 01 09 fa ff       	call   0x40538e
464a8d:	8b 5d 08             	mov    0x8(%ebp),%ebx
464a90:	33 c0                	xor    %eax,%eax
464a92:	8b 7d ec             	mov    -0x14(%ebp),%edi
464a95:	8b f0                	mov    %eax,%esi
464a97:	57                   	push   %edi
464a98:	89 45 fc             	mov    %eax,-0x4(%ebp)
464a9b:	89 43 04             	mov    %eax,0x4(%ebx)
464a9e:	89 03                	mov    %eax,(%ebx)
464aa0:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
464aa7:	e8 90 e3 fb ff       	call   0x422e3c
464aac:	59                   	pop    %ecx
464aad:	85 c0                	test   %eax,%eax
464aaf:	74 1d                	je     0x464ace
464ab1:	33 db                	xor    %ebx,%ebx
464ab3:	43                   	inc    %ebx
464ab4:	66 83 3c 77 0a       	cmpw   $0xa,(%edi,%esi,2)
464ab9:	75 01                	jne    0x464abc
464abb:	43                   	inc    %ebx
464abc:	57                   	push   %edi
464abd:	46                   	inc    %esi
464abe:	e8 79 e3 fb ff       	call   0x422e3c
464ac3:	59                   	pop    %ecx
464ac4:	3b f0                	cmp    %eax,%esi
464ac6:	72 ec                	jb     0x464ab4
464ac8:	89 5d f8             	mov    %ebx,-0x8(%ebp)
464acb:	8b 5d 08             	mov    0x8(%ebp),%ebx
464ace:	68 70 a4 4b 00       	push   $0x4ba470
464ad3:	57                   	push   %edi
464ad4:	e8 8f fb fb ff       	call   0x424668
464ad9:	8b f0                	mov    %eax,%esi
464adb:	59                   	pop    %ecx
464adc:	59                   	pop    %ecx
464add:	85 f6                	test   %esi,%esi
464adf:	74 36                	je     0x464b17
464ae1:	8b 7d fc             	mov    -0x4(%ebp),%edi
464ae4:	53                   	push   %ebx
464ae5:	56                   	push   %esi
464ae6:	e8 51 e3 fb ff       	call   0x422e3c
464aeb:	59                   	pop    %ecx
464aec:	50                   	push   %eax
464aed:	56                   	push   %esi
464aee:	ff 75 f4             	push   -0xc(%ebp)
464af1:	ff 15 cc f0 48 00    	call   *0x48f0cc
464af7:	39 3b                	cmp    %edi,(%ebx)
464af9:	7e 02                	jle    0x464afd
464afb:	8b 3b                	mov    (%ebx),%edi
464afd:	68 70 a4 4b 00       	push   $0x4ba470
464b02:	6a 00                	push   $0x0
464b04:	e8 5f fb fb ff       	call   0x424668
464b09:	8b f0                	mov    %eax,%esi
464b0b:	59                   	pop    %ecx
464b0c:	59                   	pop    %ecx
464b0d:	85 f6                	test   %esi,%esi
464b0f:	75 d3                	jne    0x464ae4
464b11:	89 7d fc             	mov    %edi,-0x4(%ebp)
464b14:	8b 7d ec             	mov    -0x14(%ebp),%edi
464b17:	8b 43 04             	mov    0x4(%ebx),%eax
464b1a:	0f af 45 f8          	imul   -0x8(%ebp),%eax
464b1e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
464b21:	89 0b                	mov    %ecx,(%ebx)
464b23:	89 43 04             	mov    %eax,0x4(%ebx)
464b26:	8b 45 f0             	mov    -0x10(%ebp),%eax
464b29:	ff 08                	decl   (%eax)
464b2b:	75 0e                	jne    0x464b3b
464b2d:	50                   	push   %eax
464b2e:	e8 39 c5 fb ff       	call   0x42106c
464b33:	57                   	push   %edi
464b34:	e8 33 c5 fb ff       	call   0x42106c
464b39:	59                   	pop    %ecx
464b3a:	59                   	pop    %ecx
464b3b:	5f                   	pop    %edi
464b3c:	5e                   	pop    %esi
464b3d:	5b                   	pop    %ebx
464b3e:	8b e5                	mov    %ebp,%esp
464b40:	5d                   	pop    %ebp
464b41:	c3                   	ret
464b42:	55                   	push   %ebp
464b43:	8b ec                	mov    %esp,%ebp
464b45:	53                   	push   %ebx
464b46:	56                   	push   %esi
464b47:	57                   	push   %edi
464b48:	8b f1                	mov    %ecx,%esi
464b4a:	bf 04 74 4c 00       	mov    $0x4c7404,%edi
464b4f:	8b cf                	mov    %edi,%ecx
464b51:	8a da                	mov    %dl,%bl
464b53:	e8 94 33 fa ff       	call   0x407eec
464b58:	6a 00                	push   $0x0
464b5a:	68 7a 4b 46 00       	push   $0x464b7a
464b5f:	56                   	push   %esi
464b60:	88 1d b6 62 4c 00    	mov    %bl,0x4c62b6
464b66:	ff 15 78 f6 48 00    	call   *0x48f678
464b6c:	8b 4d 08             	mov    0x8(%ebp),%ecx
464b6f:	57                   	push   %edi
464b70:	e8 32 36 fa ff       	call   0x4081a7
464b75:	5f                   	pop    %edi
464b76:	5e                   	pop    %esi
464b77:	5b                   	pop    %ebx
464b78:	5d                   	pop    %ebp
464b79:	c3                   	ret
464b7a:	55                   	push   %ebp
464b7b:	8b ec                	mov    %esp,%ebp
464b7d:	83 ec 10             	sub    $0x10,%esp
464b80:	56                   	push   %esi
464b81:	8b 75 08             	mov    0x8(%ebp),%esi
464b84:	8b ce                	mov    %esi,%ecx
464b86:	e8 85 01 00 00       	call   0x464d10
464b8b:	84 c0                	test   %al,%al
464b8d:	75 4f                	jne    0x464bde
464b8f:	56                   	push   %esi
464b90:	ff 15 50 f6 48 00    	call   *0x48f650
464b96:	85 c0                	test   %eax,%eax
464b98:	75 09                	jne    0x464ba3
464b9a:	80 3d b6 62 4c 00 01 	cmpb   $0x1,0x4c62b6
464ba1:	75 3b                	jne    0x464bde
464ba3:	8d 4d f0             	lea    -0x10(%ebp),%ecx
464ba6:	89 75 08             	mov    %esi,0x8(%ebp)
464ba9:	e8 19 2c fa ff       	call   0x4077c7
464bae:	8d 45 f0             	lea    -0x10(%ebp),%eax
464bb1:	50                   	push   %eax
464bb2:	8d 4d 08             	lea    0x8(%ebp),%ecx
464bb5:	e8 22 64 ff ff       	call   0x45afdc
464bba:	8d 45 f0             	lea    -0x10(%ebp),%eax
464bbd:	be 04 74 4c 00       	mov    $0x4c7404,%esi
464bc2:	50                   	push   %eax
464bc3:	8b ce                	mov    %esi,%ecx
464bc5:	e8 c4 30 fa ff       	call   0x407c8e
464bca:	68 b8 2b 49 00       	push   $0x492bb8
464bcf:	8b ce                	mov    %esi,%ecx
464bd1:	e8 35 32 fa ff       	call   0x407e0b
464bd6:	8d 4d f0             	lea    -0x10(%ebp),%ecx
464bd9:	e8 86 0e fa ff       	call   0x405a64
464bde:	33 c0                	xor    %eax,%eax
464be0:	40                   	inc    %eax
464be1:	5e                   	pop    %esi
464be2:	8b e5                	mov    %ebp,%esp
464be4:	5d                   	pop    %ebp
464be5:	c2 08 00             	ret    $0x8
464be8:	85 c9                	test   %ecx,%ecx
464bea:	79 09                	jns    0x464bf5
464bec:	83 c8 ff             	or     $0xffffffff,%eax
464bef:	2b c1                	sub    %ecx,%eax
464bf1:	8b c8                	mov    %eax,%ecx
464bf3:	eb 0b                	jmp    0x464c00
464bf5:	83 f9 01             	cmp    $0x1,%ecx
464bf8:	75 04                	jne    0x464bfe
464bfa:	33 c9                	xor    %ecx,%ecx
464bfc:	eb 02                	jmp    0x464c00
464bfe:	f7 d9                	neg    %ecx
464c00:	8b c1                	mov    %ecx,%eax
464c02:	c3                   	ret
464c03:	55                   	push   %ebp
464c04:	8b ec                	mov    %esp,%ebp
464c06:	83 ec 10             	sub    $0x10,%esp
464c09:	53                   	push   %ebx
464c0a:	33 db                	xor    %ebx,%ebx
464c0c:	66 c7 45 f4 00 05    	movw   $0x500,-0xc(%ebp)
464c12:	8d 45 f8             	lea    -0x8(%ebp),%eax
464c15:	89 5d f0             	mov    %ebx,-0x10(%ebp)
464c18:	50                   	push   %eax
464c19:	53                   	push   %ebx
464c1a:	53                   	push   %ebx
464c1b:	53                   	push   %ebx
464c1c:	53                   	push   %ebx
464c1d:	53                   	push   %ebx
464c1e:	53                   	push   %ebx
464c1f:	68 20 02 00 00       	push   $0x220
464c24:	6a 20                	push   $0x20
464c26:	6a 02                	push   $0x2
464c28:	8d 45 f0             	lea    -0x10(%ebp),%eax
464c2b:	50                   	push   %eax
464c2c:	ff 15 58 f0 48 00    	call   *0x48f058
464c32:	8b c8                	mov    %eax,%ecx
464c34:	89 4d fc             	mov    %ecx,-0x4(%ebp)
464c37:	85 c9                	test   %ecx,%ecx
464c39:	74 21                	je     0x464c5c
464c3b:	8d 45 fc             	lea    -0x4(%ebp),%eax
464c3e:	50                   	push   %eax
464c3f:	ff 75 f8             	push   -0x8(%ebp)
464c42:	53                   	push   %ebx
464c43:	ff 15 5c f0 48 00    	call   *0x48f05c
464c49:	ff 75 f8             	push   -0x8(%ebp)
464c4c:	f7 d8                	neg    %eax
464c4e:	1b c0                	sbb    %eax,%eax
464c50:	21 45 fc             	and    %eax,-0x4(%ebp)
464c53:	ff 15 64 f0 48 00    	call   *0x48f064
464c59:	8b 4d fc             	mov    -0x4(%ebp),%ecx
464c5c:	33 c0                	xor    %eax,%eax
464c5e:	83 f9 01             	cmp    $0x1,%ecx
464c61:	5b                   	pop    %ebx
464c62:	0f 94 c0             	sete   %al
464c65:	8b e5                	mov    %ebp,%esp
464c67:	5d                   	pop    %ebp
464c68:	c3                   	ret
464c69:	55                   	push   %ebp
464c6a:	8b ec                	mov    %esp,%ebp
464c6c:	83 ec 24             	sub    $0x24,%esp
464c6f:	53                   	push   %ebx
464c70:	56                   	push   %esi
464c71:	8b f1                	mov    %ecx,%esi
464c73:	8d 4d e0             	lea    -0x20(%ebp),%ecx
464c76:	57                   	push   %edi
464c77:	8b fa                	mov    %edx,%edi
464c79:	e8 49 2b fa ff       	call   0x4077c7
464c7e:	8d 4d f0             	lea    -0x10(%ebp),%ecx
464c81:	e8 41 2b fa ff       	call   0x4077c7
464c86:	33 db                	xor    %ebx,%ebx
464c88:	8d 55 e0             	lea    -0x20(%ebp),%edx
464c8b:	53                   	push   %ebx
464c8c:	53                   	push   %ebx
464c8d:	53                   	push   %ebx
464c8e:	8b ce                	mov    %esi,%ecx
464c90:	e8 64 fa f9 ff       	call   0x4046f9
464c95:	83 c4 0c             	add    $0xc,%esp
464c98:	8d 55 f0             	lea    -0x10(%ebp),%edx
464c9b:	8b cf                	mov    %edi,%ecx
464c9d:	53                   	push   %ebx
464c9e:	53                   	push   %ebx
464c9f:	53                   	push   %ebx
464ca0:	e8 54 fa f9 ff       	call   0x4046f9
464ca5:	83 c4 0c             	add    $0xc,%esp
464ca8:	8d 45 f0             	lea    -0x10(%ebp),%eax
464cab:	8d 4d e0             	lea    -0x20(%ebp),%ecx