451c8f:	8b c6                	mov    %esi,%eax
451c91:	8b 15 54 f9 44 00    	mov    0x44f954,%edx
451c97:	e8 5c 17 fb ff       	call   0x4033f8
451c9c:	84 c0                	test   %al,%al
451c9e:	74 2a                	je     0x451cca
451ca0:	8b fe                	mov    %esi,%edi
451ca2:	8a 57 1c             	mov    0x1c(%edi),%dl
451ca5:	8b c3                	mov    %ebx,%eax
451ca7:	e8 a4 08 00 00       	call   0x452550
451cac:	8b 57 10             	mov    0x10(%edi),%edx
451caf:	8b c3                	mov    %ebx,%eax
451cb1:	e8 7a 08 00 00       	call   0x452530
451cb6:	8b 57 0c             	mov    0xc(%edi),%edx
451cb9:	8b c3                	mov    %ebx,%eax
451cbb:	e8 20 07 00 00       	call   0x4523e0
451cc0:	66 8b 47 08          	mov    0x8(%edi),%ax
451cc4:	66 89 43 08          	mov    %ax,0x8(%ebx)
451cc8:	eb 09                	jmp    0x451cd3
451cca:	8b d6                	mov    %esi,%edx
451ccc:	8b c3                	mov    %ebx,%eax
451cce:	e8 75 26 fc ff       	call   0x414348
451cd3:	5f                   	pop    %edi
451cd4:	5e                   	pop    %esi
451cd5:	5b                   	pop    %ebx
451cd6:	c3                   	ret
451cd7:	90                   	nop
451cd8:	53                   	push   %ebx
451cd9:	8b d8                	mov    %eax,%ebx
451cdb:	80 7b 18 00          	cmpb   $0x0,0x18(%ebx)
451cdf:	75 2c                	jne    0x451d0d
451ce1:	8b c3                	mov    %ebx,%eax
451ce3:	e8 a8 01 00 00       	call   0x451e90
451ce8:	84 c0                	test   %al,%al
451cea:	74 21                	je     0x451d0d
451cec:	8b 43 04             	mov    0x4(%ebx),%eax
451cef:	e8 f4 95 fe ff       	call   0x43b2e8
451cf4:	84 c0                	test   %al,%al
451cf6:	75 0b                	jne    0x451d03
451cf8:	33 d2                	xor    %edx,%edx
451cfa:	8b c3                	mov    %ebx,%eax
451cfc:	e8 df 06 00 00       	call   0x4523e0
451d01:	eb 0a                	jmp    0x451d0d
451d03:	8b 53 10             	mov    0x10(%ebx),%edx
451d06:	8b c3                	mov    %ebx,%eax
451d08:	e8 d3 06 00 00       	call   0x4523e0
451d0d:	5b                   	pop    %ebx
451d0e:	c3                   	ret
451d0f:	90                   	nop
451d10:	55                   	push   %ebp
451d11:	8b ec                	mov    %esp,%ebp
451d13:	53                   	push   %ebx
451d14:	8b d8                	mov    %eax,%ebx
451d16:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
451d1a:	74 54                	je     0x451d70
451d1c:	8a 43 5b             	mov    0x5b(%ebx),%al
451d1f:	2c 01                	sub    $0x1,%al
451d21:	72 0a                	jb     0x451d2d
451d23:	2c 02                	sub    $0x2,%al
451d25:	74 06                	je     0x451d2d
451d27:	fe c8                	dec    %al
451d29:	74 3c                	je     0x451d67
451d2b:	eb 43                	jmp    0x451d70
451d2d:	80 7b 5b 03          	cmpb   $0x3,0x5b(%ebx)
451d31:	74 12                	je     0x451d45
451d33:	a0 74 1d 45 00       	mov    0x451d74,%al
451d38:	22 43 61             	and    0x61(%ebx),%al
451d3b:	8a 15 78 1d 45 00    	mov    0x451d78,%dl
451d41:	3a d0                	cmp    %al,%dl
451d43:	75 2b                	jne    0x451d70
451d45:	8b 45 08             	mov    0x8(%ebp),%eax
451d48:	8b 40 f8             	mov    -0x8(%eax),%eax
451d4b:	8b 50 0c             	mov    0xc(%eax),%edx
451d4e:	03 53 40             	add    0x40(%ebx),%edx
451d51:	03 53 48             	add    0x48(%ebx),%edx
451d54:	8b 45 08             	mov    0x8(%ebp),%eax
451d57:	8b 40 fc             	mov    -0x4(%eax),%eax
451d5a:	e8 49 22 fd ff       	call   0x423fa8
451d5f:	8b 55 08             	mov    0x8(%ebp),%edx
451d62:	89 42 fc             	mov    %eax,-0x4(%edx)
451d65:	eb 09                	jmp    0x451d70
451d67:	8b 45 08             	mov    0x8(%ebp),%eax
451d6a:	8b 53 48             	mov    0x48(%ebx),%edx
451d6d:	01 50 f4             	add    %edx,-0xc(%eax)
451d70:	5b                   	pop    %ebx
451d71:	5d                   	pop    %ebp
451d72:	c3                   	ret
451d73:	00 05 00 00 00 01    	add    %al,0x1000000
451d79:	00 00                	add    %al,(%eax)
451d7b:	00 55 8b             	add    %dl,-0x75(%ebp)
451d7e:	ec                   	in     (%dx),%al
451d7f:	53                   	push   %ebx
451d80:	8b d8                	mov    %eax,%ebx
451d82:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
451d86:	74 4e                	je     0x451dd6
451d88:	8a 43 5b             	mov    0x5b(%ebx),%al
451d8b:	2c 02                	sub    $0x2,%al
451d8d:	72 04                	jb     0x451d93
451d8f:	74 3c                	je     0x451dcd
451d91:	eb 43                	jmp    0x451dd6
451d93:	80 7b 5b 01          	cmpb   $0x1,0x5b(%ebx)
451d97:	74 12                	je     0x451dab
451d99:	a0 dc 1d 45 00       	mov    0x451ddc,%al
451d9e:	22 43 61             	and    0x61(%ebx),%al
451da1:	8a 15 e0 1d 45 00    	mov    0x451de0,%dl
451da7:	3a d0                	cmp    %al,%dl
451da9:	75 2b                	jne    0x451dd6
451dab:	8b 45 08             	mov    0x8(%ebp),%eax
451dae:	8b 40 f8             	mov    -0x8(%eax),%eax
451db1:	8b 50 0c             	mov    0xc(%eax),%edx
451db4:	03 53 44             	add    0x44(%ebx),%edx
451db7:	03 53 4c             	add    0x4c(%ebx),%edx
451dba:	8b 45 08             	mov    0x8(%ebp),%eax
451dbd:	8b 40 fc             	mov    -0x4(%eax),%eax
451dc0:	e8 e3 21 fd ff       	call   0x423fa8
451dc5:	8b 55 08             	mov    0x8(%ebp),%edx
451dc8:	89 42 fc             	mov    %eax,-0x4(%edx)
451dcb:	eb 09                	jmp    0x451dd6
451dcd:	8b 45 08             	mov    0x8(%ebp),%eax
451dd0:	8b 53 4c             	mov    0x4c(%ebx),%edx
451dd3:	01 50 f4             	add    %edx,-0xc(%eax)
451dd6:	5b                   	pop    %ebx
451dd7:	5d                   	pop    %ebp
451dd8:	c3                   	ret
451dd9:	00 00                	add    %al,(%eax)
451ddb:	00 0a                	add    %cl,(%edx)
451ddd:	00 00                	add    %al,(%eax)
451ddf:	00 02                	add    %al,(%edx)
451de1:	00 00                	add    %al,(%eax)
451de3:	00 55 8b             	add    %dl,-0x75(%ebp)
451de6:	ec                   	in     (%dx),%al
451de7:	83 c4 f4             	add    $0xfffffff4,%esp
451dea:	53                   	push   %ebx
451deb:	56                   	push   %esi
451dec:	89 45 f8             	mov    %eax,-0x8(%ebp)
451def:	8b 45 f8             	mov    -0x8(%ebp),%eax
451df2:	8b 58 04             	mov    0x4(%eax),%ebx
451df5:	80 bb 10 02 00 00 00 	cmpb   $0x0,0x210(%ebx)
451dfc:	0f 84 87 00 00 00    	je     0x451e89
451e02:	8b c3                	mov    %ebx,%eax
451e04:	8b 10                	mov    (%eax),%edx
451e06:	ff 92 c8 00 00 00    	call   *0xc8(%edx)
451e0c:	84 c0                	test   %al,%al
451e0e:	74 6f                	je     0x451e7f
451e10:	33 c0                	xor    %eax,%eax
451e12:	89 45 fc             	mov    %eax,-0x4(%ebp)
451e15:	33 c0                	xor    %eax,%eax
451e17:	89 45 f4             	mov    %eax,-0xc(%ebp)
451e1a:	8b 45 f8             	mov    -0x8(%ebp),%eax
451e1d:	8b 40 04             	mov    0x4(%eax),%eax
451e20:	e8 67 c3 fe ff       	call   0x43e18c
451e25:	8b d8                	mov    %eax,%ebx
451e27:	4b                   	dec    %ebx
451e28:	85 db                	test   %ebx,%ebx
451e2a:	7c 3a                	jl     0x451e66
451e2c:	43                   	inc    %ebx
451e2d:	33 f6                	xor    %esi,%esi
451e2f:	8b 45 f8             	mov    -0x8(%ebp),%eax
451e32:	80 78 18 00          	cmpb   $0x0,0x18(%eax)
451e36:	75 16                	jne    0x451e4e
451e38:	55                   	push   %ebp
451e39:	8b 45 f8             	mov    -0x8(%ebp),%eax
451e3c:	8b 40 04             	mov    0x4(%eax),%eax
451e3f:	8b d6                	mov    %esi,%edx
451e41:	e8 0a c3 fe ff       	call   0x43e150
451e46:	e8 c5 fe ff ff       	call   0x451d10
451e4b:	59                   	pop    %ecx
451e4c:	eb 14                	jmp    0x451e62
451e4e:	55                   	push   %ebp
451e4f:	8b 45 f8             	mov    -0x8(%ebp),%eax
451e52:	8b 40 04             	mov    0x4(%eax),%eax
451e55:	8b d6                	mov    %esi,%edx
451e57:	e8 f4 c2 fe ff       	call   0x43e150
451e5c:	e8 1b ff ff ff       	call   0x451d7c
451e61:	59                   	pop    %ecx
451e62:	46                   	inc    %esi
451e63:	4b                   	dec    %ebx
451e64:	75 c9                	jne    0x451e2f
451e66:	8b 55 fc             	mov    -0x4(%ebp),%edx
451e69:	03 55 f4             	add    -0xc(%ebp),%edx
451e6c:	8b 45 f8             	mov    -0x8(%ebp),%eax
451e6f:	0f b7 40 1a          	movzwl 0x1a(%eax),%eax
451e73:	03 d0                	add    %eax,%edx
451e75:	8b 45 f8             	mov    -0x8(%ebp),%eax
451e78:	e8 9b 06 00 00       	call   0x452518
451e7d:	eb 0a                	jmp    0x451e89
451e7f:	33 d2                	xor    %edx,%edx
451e81:	8b 45 f8             	mov    -0x8(%ebp),%eax
451e84:	e8 8f 06 00 00       	call   0x452518
451e89:	5e                   	pop    %esi
451e8a:	5b                   	pop    %ebx
451e8b:	8b e5                	mov    %ebp,%esp
451e8d:	5d                   	pop    %ebp
451e8e:	c3                   	ret
451e8f:	90                   	nop
451e90:	53                   	push   %ebx
451e91:	56                   	push   %esi
451e92:	8b d8                	mov    %eax,%ebx
451e94:	be 00 00 10 00       	mov    $0x100000,%esi
451e99:	80 7b 18 01          	cmpb   $0x1,0x18(%ebx)
451e9d:	75 05                	jne    0x451ea4
451e9f:	be 00 00 20 00       	mov    $0x200000,%esi
451ea4:	80 7b 1c 00          	cmpb   $0x0,0x1c(%ebx)
451ea8:	74 14                	je     0x451ebe
451eaa:	6a f0                	push   $0xfffffff0
451eac:	8b 43 04             	mov    0x4(%ebx),%eax
451eaf:	e8 a8 f5 fe ff       	call   0x44145c
451eb4:	50                   	push   %eax
451eb5:	e8 f6 47 fb ff       	call   0x4066b0
451eba:	85 f0                	test   %esi,%eax
451ebc:	75 05                	jne    0x451ec3
451ebe:	33 c0                	xor    %eax,%eax
451ec0:	5e                   	pop    %esi
451ec1:	5b                   	pop    %ebx
451ec2:	c3                   	ret
451ec3:	b0 01                	mov    $0x1,%al
451ec5:	5e                   	pop    %esi
451ec6:	5b                   	pop    %ebx
451ec7:	c3                   	ret
451ec8:	55                   	push   %ebp
451ec9:	8b ec                	mov    %esp,%ebp
451ecb:	53                   	push   %ebx
451ecc:	bb 00 00 10 00       	mov    $0x100000,%ebx
451ed1:	66 83 f8 01          	cmp    $0x1,%ax
451ed5:	75 05                	jne    0x451edc
451ed7:	bb 00 00 20 00       	mov    $0x200000,%ebx
451edc:	6a f0                	push   $0xfffffff0
451ede:	8b 45 08             	mov    0x8(%ebp),%eax
451ee1:	8b 40 fc             	mov    -0x4(%eax),%eax
451ee4:	8b 40 04             	mov    0x4(%eax),%eax
451ee7:	e8 70 f5 fe ff       	call   0x44145c
451eec:	50                   	push   %eax
451eed:	e8 be 47 fb ff       	call   0x4066b0
451ef2:	85 d8                	test   %ebx,%eax
451ef4:	0f 95 c0             	setne  %al
451ef7:	5b                   	pop    %ebx
451ef8:	5d                   	pop    %ebp
451ef9:	c3                   	ret
451efa:	8b c0                	mov    %eax,%eax
451efc:	55                   	push   %ebp
451efd:	8b ec                	mov    %esp,%ebp
451eff:	53                   	push   %ebx
451f00:	56                   	push   %esi
451f01:	57                   	push   %edi
451f02:	8b fa                	mov    %edx,%edi
451f04:	8b f0                	mov    %eax,%esi
451f06:	33 db                	xor    %ebx,%ebx
451f08:	8b 45 08             	mov    0x8(%ebp),%eax
451f0b:	80 78 fb 00          	cmpb   $0x0,-0x5(%eax)
451f0f:	75 60                	jne    0x451f71
451f11:	8b 45 08             	mov    0x8(%ebp),%eax
451f14:	80 78 fa 00          	cmpb   $0x0,-0x6(%eax)
451f18:	74 29                	je     0x451f43
451f1a:	8b 45 08             	mov    0x8(%ebp),%eax
451f1d:	50                   	push   %eax
451f1e:	8b c6                	mov    %esi,%eax
451f20:	e8 a3 ff ff ff       	call   0x451ec8
451f25:	59                   	pop    %ecx
451f26:	84 c0                	test   %al,%al
451f28:	75 19                	jne    0x451f43
451f2a:	0f b7 c7             	movzwl %di,%eax
451f2d:	50                   	push   %eax
451f2e:	a1 b4 7d 46 00       	mov    0x467db4,%eax
451f33:	8b 00                	mov    (%eax),%eax
451f35:	ff d0                	call   *%eax
451f37:	8b d8                	mov    %eax,%ebx
451f39:	8b 45 08             	mov    0x8(%ebp),%eax
451f3c:	2b 58 f4             	sub    -0xc(%eax),%ebx
451f3f:	f7 db                	neg    %ebx
451f41:	eb 2e                	jmp    0x451f71
451f43:	8b 45 08             	mov    0x8(%ebp),%eax
451f46:	80 78 fa 00          	cmpb   $0x0,-0x6(%eax)
451f4a:	75 25                	jne    0x451f71
451f4c:	8b 45 08             	mov    0x8(%ebp),%eax
451f4f:	50                   	push   %eax
451f50:	8b c6                	mov    %esi,%eax
451f52:	e8 71 ff ff ff       	call   0x451ec8
451f57:	59                   	pop    %ecx
451f58:	84 c0                	test   %al,%al
451f5a:	74 15                	je     0x451f71
451f5c:	0f b7 c7             	movzwl %di,%eax
451f5f:	50                   	push   %eax
451f60:	a1 b4 7d 46 00       	mov    0x467db4,%eax
451f65:	8b 00                	mov    (%eax),%eax
451f67:	ff d0                	call   *%eax
451f69:	8b d8                	mov    %eax,%ebx
451f6b:	8b 45 08             	mov    0x8(%ebp),%eax
451f6e:	2b 58 f4             	sub    -0xc(%eax),%ebx
451f71:	8b c3                	mov    %ebx,%eax
451f73:	5f                   	pop    %edi
451f74:	5e                   	pop    %esi
451f75:	5b                   	pop    %ebx
451f76:	5d                   	pop    %ebp
451f77:	c3                   	ret
451f78:	55                   	push   %ebp
451f79:	8b ec                	mov    %esp,%ebp
451f7b:	83 c4 f4             	add    $0xfffffff4,%esp
451f7e:	53                   	push   %ebx
451f7f:	88 4d fa             	mov    %cl,-0x6(%ebp)
451f82:	88 55 fb             	mov    %dl,-0x5(%ebp)
451f85:	89 45 fc             	mov    %eax,-0x4(%ebp)
451f88:	6a f0                	push   $0xfffffff0
451f8a:	8b 45 fc             	mov    -0x4(%ebp),%eax
451f8d:	8b 40 04             	mov    0x4(%eax),%eax
451f90:	e8 c7 f4 fe ff       	call   0x44145c
451f95:	50                   	push   %eax
451f96:	e8 15 47 fb ff       	call   0x4066b0
451f9b:	a9 00 00 84 00       	test   $0x840000,%eax
451fa0:	0f 95 c0             	setne  %al
451fa3:	83 e0 7f             	and    $0x7f,%eax
451fa6:	89 45 f4             	mov    %eax,-0xc(%ebp)
451fa9:	8b 45 fc             	mov    -0x4(%ebp),%eax
451fac:	80 78 18 01          	cmpb   $0x1,0x18(%eax)
451fb0:	75 20                	jne    0x451fd2
451fb2:	55                   	push   %ebp
451fb3:	66 ba 15 00          	mov    $0x15,%dx
451fb7:	33 c0                	xor    %eax,%eax
451fb9:	e8 3e ff ff ff       	call   0x451efc
451fbe:	59                   	pop    %ecx
451fbf:	8b d8                	mov    %eax,%ebx
451fc1:	8b 45 fc             	mov    -0x4(%ebp),%eax
451fc4:	8b 40 04             	mov    0x4(%eax),%eax
451fc7:	e8 fc 86 fe ff       	call   0x43a6c8
451fcc:	03 d8                	add    %eax,%ebx
451fce:	8b c3                	mov    %ebx,%eax
451fd0:	eb 20                	jmp    0x451ff2
451fd2:	55                   	push   %ebp
451fd3:	66 ba 14 00          	mov    $0x14,%dx
451fd7:	66 b8 01 00          	mov    $0x1,%ax
451fdb:	e8 1c ff ff ff       	call   0x451efc
451fe0:	59                   	pop    %ecx
451fe1:	8b d8                	mov    %eax,%ebx
451fe3:	8b 45 fc             	mov    -0x4(%ebp),%eax
451fe6:	8b 40 04             	mov    0x4(%eax),%eax
451fe9:	e8 96 86 fe ff       	call   0x43a684
451fee:	03 d8                	add    %eax,%ebx
451ff0:	8b c3                	mov    %ebx,%eax
451ff2:	5b                   	pop    %ebx
451ff3:	8b e5                	mov    %ebp,%esp
451ff5:	5d                   	pop    %ebp
451ff6:	c3                   	ret
451ff7:	90                   	nop
451ff8:	53                   	push   %ebx
451ff9:	8b d8                	mov    %eax,%ebx
451ffb:	33 c9                	xor    %ecx,%ecx
451ffd:	33 d2                	xor    %edx,%edx
451fff:	8b c3                	mov    %ebx,%eax
452001:	e8 72 ff ff ff       	call   0x451f78
452006:	3b 43 10             	cmp    0x10(%ebx),%eax
452009:	0f 9c c0             	setl   %al
45200c:	5b                   	pop    %ebx