45c89a:	0f b6 15 d8 c8 45 00 	movzbl 0x45c8d8,%edx
45c8a1:	3a d0                	cmp    %al,%dl
45c8a3:	75 2c                	jne    0x45c8d1
45c8a5:	8b 45 08             	mov    0x8(%ebp),%eax
45c8a8:	8b 40 fc             	mov    -0x4(%eax),%eax
45c8ab:	8b 55 08             	mov    0x8(%ebp),%edx
45c8ae:	8b 52 f8             	mov    -0x8(%edx),%edx
45c8b1:	8b 52 0c             	mov    0xc(%edx),%edx
45c8b4:	03 53 40             	add    0x40(%ebx),%edx
45c8b7:	03 53 48             	add    0x48(%ebx),%edx
45c8ba:	3b d0                	cmp    %eax,%edx
45c8bc:	7c 02                	jl     0x45c8c0
45c8be:	8b c2                	mov    %edx,%eax
45c8c0:	8b 55 08             	mov    0x8(%ebp),%edx
45c8c3:	89 42 fc             	mov    %eax,-0x4(%edx)
45c8c6:	eb 09                	jmp    0x45c8d1
45c8c8:	8b 45 08             	mov    0x8(%ebp),%eax
45c8cb:	8b 53 48             	mov    0x48(%ebx),%edx
45c8ce:	01 50 f4             	add    %edx,-0xc(%eax)
45c8d1:	5b                   	pop    %ebx
45c8d2:	5d                   	pop    %ebp
45c8d3:	c3                   	ret
45c8d4:	05 00 00 00 01       	add    $0x1000000,%eax
45c8d9:	00 00                	add    %al,(%eax)
45c8db:	00 55 8b             	add    %dl,-0x75(%ebp)
45c8de:	ec                   	in     (%dx),%al
45c8df:	53                   	push   %ebx
45c8e0:	8b d8                	mov    %eax,%ebx
45c8e2:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
45c8e6:	74 53                	je     0x45c93b
45c8e8:	0f b6 43 5b          	movzbl 0x5b(%ebx),%eax
45c8ec:	2c 02                	sub    $0x2,%al
45c8ee:	72 04                	jb     0x45c8f4
45c8f0:	74 40                	je     0x45c932
45c8f2:	eb 47                	jmp    0x45c93b
45c8f4:	80 7b 5b 01          	cmpb   $0x1,0x5b(%ebx)
45c8f8:	74 15                	je     0x45c90f
45c8fa:	0f b6 05 40 c9 45 00 	movzbl 0x45c940,%eax
45c901:	22 43 61             	and    0x61(%ebx),%al
45c904:	0f b6 15 44 c9 45 00 	movzbl 0x45c944,%edx
45c90b:	3a d0                	cmp    %al,%dl
45c90d:	75 2c                	jne    0x45c93b
45c90f:	8b 45 08             	mov    0x8(%ebp),%eax
45c912:	8b 40 fc             	mov    -0x4(%eax),%eax
45c915:	8b 55 08             	mov    0x8(%ebp),%edx
45c918:	8b 52 f8             	mov    -0x8(%edx),%edx
45c91b:	8b 52 0c             	mov    0xc(%edx),%edx
45c91e:	03 53 44             	add    0x44(%ebx),%edx
45c921:	03 53 4c             	add    0x4c(%ebx),%edx
45c924:	3b d0                	cmp    %eax,%edx
45c926:	7c 02                	jl     0x45c92a
45c928:	8b c2                	mov    %edx,%eax
45c92a:	8b 55 08             	mov    0x8(%ebp),%edx
45c92d:	89 42 fc             	mov    %eax,-0x4(%edx)
45c930:	eb 09                	jmp    0x45c93b
45c932:	8b 45 08             	mov    0x8(%ebp),%eax
45c935:	8b 53 4c             	mov    0x4c(%ebx),%edx
45c938:	01 50 f4             	add    %edx,-0xc(%eax)
45c93b:	5b                   	pop    %ebx
45c93c:	5d                   	pop    %ebp
45c93d:	c3                   	ret
45c93e:	00 00                	add    %al,(%eax)
45c940:	0a 00                	or     (%eax),%al
45c942:	00 00                	add    %al,(%eax)
45c944:	02 00                	add    (%eax),%al
45c946:	00 00                	add    %al,(%eax)
45c948:	55                   	push   %ebp
45c949:	8b ec                	mov    %esp,%ebp
45c94b:	83 c4 f4             	add    $0xfffffff4,%esp
45c94e:	53                   	push   %ebx
45c94f:	56                   	push   %esi
45c950:	89 45 f8             	mov    %eax,-0x8(%ebp)
45c953:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c956:	8b 58 04             	mov    0x4(%eax),%ebx
45c959:	80 bb 58 02 00 00 00 	cmpb   $0x0,0x258(%ebx)
45c960:	0f 84 87 00 00 00    	je     0x45c9ed
45c966:	8b c3                	mov    %ebx,%eax
45c968:	8b 10                	mov    (%eax),%edx
45c96a:	ff 92 d8 00 00 00    	call   *0xd8(%edx)
45c970:	84 c0                	test   %al,%al
45c972:	74 6f                	je     0x45c9e3
45c974:	33 c0                	xor    %eax,%eax
45c976:	89 45 fc             	mov    %eax,-0x4(%ebp)
45c979:	33 c0                	xor    %eax,%eax
45c97b:	89 45 f4             	mov    %eax,-0xc(%ebp)
45c97e:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c981:	8b 40 04             	mov    0x4(%eax),%eax
45c984:	e8 7b 13 ff ff       	call   0x44dd04
45c989:	8b d8                	mov    %eax,%ebx
45c98b:	4b                   	dec    %ebx
45c98c:	85 db                	test   %ebx,%ebx
45c98e:	7c 3a                	jl     0x45c9ca
45c990:	43                   	inc    %ebx
45c991:	33 f6                	xor    %esi,%esi
45c993:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c996:	80 78 18 00          	cmpb   $0x0,0x18(%eax)
45c99a:	75 16                	jne    0x45c9b2
45c99c:	55                   	push   %ebp
45c99d:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c9a0:	8b 40 04             	mov    0x4(%eax),%eax
45c9a3:	8b d6                	mov    %esi,%edx
45c9a5:	e8 1e 13 ff ff       	call   0x44dcc8
45c9aa:	e8 bd fe ff ff       	call   0x45c86c
45c9af:	59                   	pop    %ecx
45c9b0:	eb 14                	jmp    0x45c9c6
45c9b2:	55                   	push   %ebp
45c9b3:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c9b6:	8b 40 04             	mov    0x4(%eax),%eax
45c9b9:	8b d6                	mov    %esi,%edx
45c9bb:	e8 08 13 ff ff       	call   0x44dcc8
45c9c0:	e8 17 ff ff ff       	call   0x45c8dc
45c9c5:	59                   	pop    %ecx
45c9c6:	46                   	inc    %esi
45c9c7:	4b                   	dec    %ebx
45c9c8:	75 c9                	jne    0x45c993
45c9ca:	8b 55 fc             	mov    -0x4(%ebp),%edx
45c9cd:	03 55 f4             	add    -0xc(%ebp),%edx
45c9d0:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c9d3:	0f b7 40 1a          	movzwl 0x1a(%eax),%eax
45c9d7:	03 d0                	add    %eax,%edx
45c9d9:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c9dc:	e8 bb 06 00 00       	call   0x45d09c
45c9e1:	eb 0a                	jmp    0x45c9ed
45c9e3:	33 d2                	xor    %edx,%edx
45c9e5:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c9e8:	e8 af 06 00 00       	call   0x45d09c
45c9ed:	5e                   	pop    %esi
45c9ee:	5b                   	pop    %ebx
45c9ef:	8b e5                	mov    %ebp,%esp
45c9f1:	5d                   	pop    %ebp
45c9f2:	c3                   	ret
45c9f3:	90                   	nop
45c9f4:	53                   	push   %ebx
45c9f5:	56                   	push   %esi
45c9f6:	8b d8                	mov    %eax,%ebx
45c9f8:	be 00 00 10 00       	mov    $0x100000,%esi
45c9fd:	80 7b 18 01          	cmpb   $0x1,0x18(%ebx)
45ca01:	75 05                	jne    0x45ca08
45ca03:	be 00 00 20 00       	mov    $0x200000,%esi
45ca08:	80 7b 1c 00          	cmpb   $0x0,0x1c(%ebx)
45ca0c:	74 14                	je     0x45ca22
45ca0e:	6a f0                	push   $0xfffffff0
45ca10:	8b 43 04             	mov    0x4(%ebx),%eax
45ca13:	e8 94 4f ff ff       	call   0x4519ac
45ca18:	50                   	push   %eax
45ca19:	e8 82 a6 fa ff       	call   0x4070a0
45ca1e:	85 f0                	test   %esi,%eax
45ca20:	75 05                	jne    0x45ca27
45ca22:	33 c0                	xor    %eax,%eax
45ca24:	5e                   	pop    %esi
45ca25:	5b                   	pop    %ebx
45ca26:	c3                   	ret
45ca27:	b0 01                	mov    $0x1,%al
45ca29:	5e                   	pop    %esi
45ca2a:	5b                   	pop    %ebx
45ca2b:	c3                   	ret
45ca2c:	55                   	push   %ebp
45ca2d:	8b ec                	mov    %esp,%ebp
45ca2f:	53                   	push   %ebx
45ca30:	bb 00 00 10 00       	mov    $0x100000,%ebx
45ca35:	66 83 f8 01          	cmp    $0x1,%ax
45ca39:	75 05                	jne    0x45ca40
45ca3b:	bb 00 00 20 00       	mov    $0x200000,%ebx
45ca40:	6a f0                	push   $0xfffffff0
45ca42:	8b 45 08             	mov    0x8(%ebp),%eax
45ca45:	8b 40 fc             	mov    -0x4(%eax),%eax
45ca48:	8b 40 04             	mov    0x4(%eax),%eax
45ca4b:	e8 5c 4f ff ff       	call   0x4519ac
45ca50:	50                   	push   %eax
45ca51:	e8 4a a6 fa ff       	call   0x4070a0
45ca56:	85 d8                	test   %ebx,%eax
45ca58:	0f 95 c0             	setne  %al
45ca5b:	5b                   	pop    %ebx
45ca5c:	5d                   	pop    %ebp
45ca5d:	c3                   	ret
45ca5e:	8b c0                	mov    %eax,%eax
45ca60:	55                   	push   %ebp
45ca61:	8b ec                	mov    %esp,%ebp
45ca63:	53                   	push   %ebx
45ca64:	56                   	push   %esi
45ca65:	57                   	push   %edi
45ca66:	8b fa                	mov    %edx,%edi
45ca68:	8b f0                	mov    %eax,%esi
45ca6a:	33 db                	xor    %ebx,%ebx
45ca6c:	8b 45 08             	mov    0x8(%ebp),%eax
45ca6f:	80 78 fb 00          	cmpb   $0x0,-0x5(%eax)
45ca73:	75 60                	jne    0x45cad5
45ca75:	8b 45 08             	mov    0x8(%ebp),%eax
45ca78:	80 78 fa 00          	cmpb   $0x0,-0x6(%eax)
45ca7c:	74 29                	je     0x45caa7
45ca7e:	8b 45 08             	mov    0x8(%ebp),%eax
45ca81:	50                   	push   %eax
45ca82:	8b c6                	mov    %esi,%eax
45ca84:	e8 a3 ff ff ff       	call   0x45ca2c
45ca89:	59                   	pop    %ecx
45ca8a:	84 c0                	test   %al,%al
45ca8c:	75 19                	jne    0x45caa7
45ca8e:	0f b7 c7             	movzwl %di,%eax
45ca91:	50                   	push   %eax
45ca92:	a1 28 75 4a 00       	mov    0x4a7528,%eax
45ca97:	8b 00                	mov    (%eax),%eax
45ca99:	ff d0                	call   *%eax
45ca9b:	8b d8                	mov    %eax,%ebx
45ca9d:	8b 45 08             	mov    0x8(%ebp),%eax
45caa0:	2b 58 f4             	sub    -0xc(%eax),%ebx
45caa3:	f7 db                	neg    %ebx
45caa5:	eb 2e                	jmp    0x45cad5
45caa7:	8b 45 08             	mov    0x8(%ebp),%eax
45caaa:	80 78 fa 00          	cmpb   $0x0,-0x6(%eax)
45caae:	75 25                	jne    0x45cad5
45cab0:	8b 45 08             	mov    0x8(%ebp),%eax
45cab3:	50                   	push   %eax
45cab4:	8b c6                	mov    %esi,%eax
45cab6:	e8 71 ff ff ff       	call   0x45ca2c
45cabb:	59                   	pop    %ecx
45cabc:	84 c0                	test   %al,%al
45cabe:	74 15                	je     0x45cad5
45cac0:	0f b7 c7             	movzwl %di,%eax
45cac3:	50                   	push   %eax
45cac4:	a1 28 75 4a 00       	mov    0x4a7528,%eax
45cac9:	8b 00                	mov    (%eax),%eax
45cacb:	ff d0                	call   *%eax
45cacd:	8b d8                	mov    %eax,%ebx
45cacf:	8b 45 08             	mov    0x8(%ebp),%eax
45cad2:	2b 58 f4             	sub    -0xc(%eax),%ebx
45cad5:	8b c3                	mov    %ebx,%eax
45cad7:	5f                   	pop    %edi
45cad8:	5e                   	pop    %esi
45cad9:	5b                   	pop    %ebx
45cada:	5d                   	pop    %ebp
45cadb:	c3                   	ret
45cadc:	55                   	push   %ebp
45cadd:	8b ec                	mov    %esp,%ebp
45cadf:	83 c4 f4             	add    $0xfffffff4,%esp
45cae2:	53                   	push   %ebx
45cae3:	88 4d fa             	mov    %cl,-0x6(%ebp)
45cae6:	88 55 fb             	mov    %dl,-0x5(%ebp)
45cae9:	89 45 fc             	mov    %eax,-0x4(%ebp)
45caec:	6a f0                	push   $0xfffffff0
45caee:	8b 45 fc             	mov    -0x4(%ebp),%eax
45caf1:	8b 40 04             	mov    0x4(%eax),%eax
45caf4:	e8 b3 4e ff ff       	call   0x4519ac
45caf9:	50                   	push   %eax
45cafa:	e8 a1 a5 fa ff       	call   0x4070a0
45caff:	a9 00 00 84 00       	test   $0x840000,%eax
45cb04:	0f 95 c0             	setne  %al
45cb07:	83 e0 7f             	and    $0x7f,%eax
45cb0a:	89 45 f4             	mov    %eax,-0xc(%ebp)
45cb0d:	8b 45 fc             	mov    -0x4(%ebp),%eax
45cb10:	80 78 18 01          	cmpb   $0x1,0x18(%eax)
45cb14:	75 20                	jne    0x45cb36
45cb16:	55                   	push   %ebp
45cb17:	66 ba 15 00          	mov    $0x15,%dx
45cb1b:	33 c0                	xor    %eax,%eax
45cb1d:	e8 3e ff ff ff       	call   0x45ca60
45cb22:	59                   	pop    %ecx
45cb23:	8b d8                	mov    %eax,%ebx
45cb25:	8b 45 fc             	mov    -0x4(%ebp),%eax
45cb28:	8b 40 04             	mov    0x4(%eax),%eax
45cb2b:	e8 f4 cc fe ff       	call   0x449824
45cb30:	03 d8                	add    %eax,%ebx
45cb32:	8b c3                	mov    %ebx,%eax
45cb34:	eb 20                	jmp    0x45cb56
45cb36:	55                   	push   %ebp
45cb37:	66 ba 14 00          	mov    $0x14,%dx
45cb3b:	66 b8 01 00          	mov    $0x1,%ax
45cb3f:	e8 1c ff ff ff       	call   0x45ca60
45cb44:	59                   	pop    %ecx
45cb45:	8b d8                	mov    %eax,%ebx
45cb47:	8b 45 fc             	mov    -0x4(%ebp),%eax
45cb4a:	8b 40 04             	mov    0x4(%eax),%eax
45cb4d:	e8 8e cc fe ff       	call   0x4497e0
45cb52:	03 d8                	add    %eax,%ebx
45cb54:	8b c3                	mov    %ebx,%eax
45cb56:	5b                   	pop    %ebx
45cb57:	8b e5                	mov    %ebp,%esp
45cb59:	5d                   	pop    %ebp
45cb5a:	c3                   	ret
45cb5b:	90                   	nop
45cb5c:	53                   	push   %ebx
45cb5d:	8b d8                	mov    %eax,%ebx
45cb5f:	33 c9                	xor    %ecx,%ecx
45cb61:	33 d2                	xor    %edx,%edx
45cb63:	8b c3                	mov    %ebx,%eax
45cb65:	e8 72 ff ff ff       	call   0x45cadc
45cb6a:	3b 43 10             	cmp    0x10(%ebx),%eax
45cb6d:	0f 9c c0             	setl   %al
45cb70:	5b                   	pop    %ebx
45cb71:	c3                   	ret
45cb72:	8b c0                	mov    %eax,%eax
45cb74:	55                   	push   %ebp
45cb75:	8b ec                	mov    %esp,%ebp
45cb77:	83 c4 e4             	add    $0xffffffe4,%esp
45cb7a:	53                   	push   %ebx
45cb7b:	56                   	push   %esi
45cb7c:	c7 45 e4 1c 00 00 00 	movl   $0x1c,-0x1c(%ebp)
45cb83:	c7 45 e8 10 00 00 00 	movl   $0x10,-0x18(%ebp)
45cb8a:	33 db                	xor    %ebx,%ebx
45cb8c:	8b 45 08             	mov    0x8(%ebp),%eax
45cb8f:	8b 40 fc             	mov    -0x4(%eax),%eax
45cb92:	80 78 18 01          	cmpb   $0x1,0x18(%eax)
45cb96:	75 05                	jne    0x45cb9d
45cb98:	bb 01 00 00 00       	mov    $0x1,%ebx
45cb9d:	8b 45 08             	mov    0x8(%ebp),%eax
45cba0:	8b 70 f8             	mov    -0x8(%eax),%esi
45cba3:	0f bf 76 06          	movswl 0x6(%esi),%esi
45cba7:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45cbaa:	50                   	push   %eax
45cbab:	53                   	push   %ebx
45cbac:	8b 45 08             	mov    0x8(%ebp),%eax
45cbaf:	8b 40 fc             	mov    -0x4(%eax),%eax
45cbb2:	8b 40 04             	mov    0x4(%eax),%eax
45cbb5:	e8 f2 4d ff ff       	call   0x4519ac
45cbba:	50                   	push   %eax
45cbbb:	a1 a0 75 4a 00       	mov    0x4a75a0,%eax
45cbc0:	8b 00                	mov    (%eax),%eax
45cbc2:	ff d0                	call   *%eax
45cbc4:	85 c0                	test   %eax,%eax
45cbc6:	74 03                	je     0x45cbcb
45cbc8:	8b 75 fc             	mov    -0x4(%ebp),%esi
45cbcb:	8b c6                	mov    %esi,%eax
45cbcd:	5e                   	pop    %esi
45cbce:	5b                   	pop    %ebx
45cbcf:	8b e5                	mov    %ebp,%esp
45cbd1:	5d                   	pop    %ebp
45cbd2:	c3                   	ret
45cbd3:	90                   	nop
45cbd4:	55                   	push   %ebp
45cbd5:	8b ec                	mov    %esp,%ebp
45cbd7:	83 c4 ec             	add    $0xffffffec,%esp
45cbda:	53                   	push   %ebx
45cbdb:	56                   	push   %esi
45cbdc:	57                   	push   %edi
45cbdd:	89 55 f8             	mov    %edx,-0x8(%ebp)
45cbe0:	89 45 fc             	mov    %eax,-0x4(%ebp)
45cbe3:	8b 45 fc             	mov    -0x4(%ebp),%eax
45cbe6:	80 78 1f 00          	cmpb   $0x0,0x1f(%eax)
45cbea:	0f 84 bf 01 00 00    	je     0x45cdaf
45cbf0:	8b 45 f8             	mov    -0x8(%ebp),%eax
45cbf3:	0f b7 40 04          	movzwl 0x4(%eax),%eax
45cbf7:	66 83 e8 04          	sub    $0x4,%ax
45cbfb:	0f 83 ae 01 00 00    	jae    0x45cdaf
45cc01:	8b 45 f8             	mov    -0x8(%ebp),%eax
45cc04:	0f b7 40 04          	movzwl 0x4(%eax),%eax
45cc08:	66 83 e8 02          	sub    $0x2,%ax
45cc0c:	72 08                	jb     0x45cc16
45cc0e:	66 83 e8 02          	sub    $0x2,%ax
45cc12:	72 23                	jb     0x45cc37
45cc14:	eb 47                	jmp    0x45cc5d
45cc16:	8b 45 fc             	mov    -0x4(%ebp),%eax