452cc8:	66 83 eb 09          	sub    $0x9,%bx
452ccc:	74 1c                	je     0x452cea
452cce:	83 c3 ed             	add    $0xffffffed,%ebx
452cd1:	66 83 eb 04          	sub    $0x4,%bx
452cd5:	73 24                	jae    0x452cfb
452cd7:	6a 00                	push   $0x0
452cd9:	b9 02 00 01 00       	mov    $0x10002,%ecx
452cde:	ba 27 01 00 00       	mov    $0x127,%edx
452ce3:	e8 44 84 ff ff       	call   0x44b12c
452ce8:	eb 11                	jmp    0x452cfb
452cea:	6a 00                	push   $0x0
452cec:	b9 02 00 02 00       	mov    $0x20002,%ecx
452cf1:	ba 27 01 00 00       	mov    $0x127,%edx
452cf6:	e8 31 84 ff ff       	call   0x44b12c
452cfb:	5b                   	pop    %ebx
452cfc:	c3                   	ret
452cfd:	8d 40 00             	lea    0x0(%eax),%eax
452d00:	55                   	push   %ebp
452d01:	8b ec                	mov    %esp,%ebp
452d03:	83 c4 f8             	add    $0xfffffff8,%esp
452d06:	53                   	push   %ebx
452d07:	89 55 fc             	mov    %edx,-0x4(%ebp)
452d0a:	8b d8                	mov    %eax,%ebx
452d0c:	8b 45 fc             	mov    -0x4(%ebp),%eax
452d0f:	83 78 0c 01          	cmpl   $0x1,0xc(%eax)
452d13:	74 67                	je     0x452d7c
452d15:	8b 45 fc             	mov    -0x4(%ebp),%eax
452d18:	f6 40 08 01          	testb  $0x1,0x8(%eax)
452d1c:	74 06                	je     0x452d24
452d1e:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
452d22:	74 4c                	je     0x452d70
452d24:	8b 45 fc             	mov    -0x4(%ebp),%eax
452d27:	8b 40 04             	mov    0x4(%eax),%eax
452d2a:	50                   	push   %eax
452d2b:	e8 10 40 fb ff       	call   0x406d40
452d30:	89 45 f8             	mov    %eax,-0x8(%ebp)
452d33:	33 c0                	xor    %eax,%eax
452d35:	55                   	push   %ebp
452d36:	68 69 2d 45 00       	push   $0x452d69
452d3b:	64 ff 30             	push   %fs:(%eax)
452d3e:	64 89 20             	mov    %esp,%fs:(%eax)
452d41:	8b 55 fc             	mov    -0x4(%ebp),%edx
452d44:	8b c3                	mov    %ebx,%eax
452d46:	e8 d9 c5 ff ff       	call   0x44f324
452d4b:	33 c0                	xor    %eax,%eax
452d4d:	5a                   	pop    %edx
452d4e:	59                   	pop    %ecx
452d4f:	59                   	pop    %ecx
452d50:	64 89 10             	mov    %edx,%fs:(%eax)
452d53:	68 86 2d 45 00       	push   $0x452d86
452d58:	8b 45 f8             	mov    -0x8(%ebp),%eax
452d5b:	50                   	push   %eax
452d5c:	8b 45 fc             	mov    -0x4(%ebp),%eax
452d5f:	8b 40 04             	mov    0x4(%eax),%eax
452d62:	50                   	push   %eax
452d63:	e8 d0 3f fb ff       	call   0x406d38
452d68:	c3                   	ret
452d69:	e9 42 13 fb ff       	jmp    0x4040b0
452d6e:	eb e8                	jmp    0x452d58
452d70:	8b 55 fc             	mov    -0x4(%ebp),%edx
452d73:	8b c3                	mov    %ebx,%eax
452d75:	8b 08                	mov    (%eax),%ecx
452d77:	ff 51 f0             	call   *-0x10(%ecx)
452d7a:	eb 0a                	jmp    0x452d86
452d7c:	8b 55 fc             	mov    -0x4(%ebp),%edx
452d7f:	8b c3                	mov    %ebx,%eax
452d81:	8b 08                	mov    (%eax),%ecx
452d83:	ff 51 f0             	call   *-0x10(%ecx)
452d86:	5b                   	pop    %ebx
452d87:	59                   	pop    %ecx
452d88:	59                   	pop    %ecx
452d89:	5d                   	pop    %ebp
452d8a:	c3                   	ret
452d8b:	90                   	nop
452d8c:	f6 40 52 04          	testb  $0x4,0x52(%eax)
452d90:	0f 95 c0             	setne  %al
452d93:	c3                   	ret
452d94:	53                   	push   %ebx
452d95:	56                   	push   %esi
452d96:	8b da                	mov    %edx,%ebx
452d98:	8b f0                	mov    %eax,%esi
452d9a:	8b c6                	mov    %esi,%eax
452d9c:	e8 eb ff ff ff       	call   0x452d8c
452da1:	3a d8                	cmp    %al,%bl
452da3:	74 28                	je     0x452dcd
452da5:	84 db                	test   %bl,%bl
452da7:	74 0d                	je     0x452db6
452da9:	a1 d0 2d 45 00       	mov    0x452dd0,%eax
452dae:	0b 46 50             	or     0x50(%esi),%eax
452db1:	89 46 50             	mov    %eax,0x50(%esi)
452db4:	eb 0d                	jmp    0x452dc3
452db6:	a1 d0 2d 45 00       	mov    0x452dd0,%eax
452dbb:	f7 d0                	not    %eax
452dbd:	23 46 50             	and    0x50(%esi),%eax
452dc0:	89 46 50             	mov    %eax,0x50(%esi)
452dc3:	8b c6                	mov    %esi,%eax
452dc5:	8b 10                	mov    (%eax),%edx
452dc7:	ff 92 80 00 00 00    	call   *0x80(%edx)
452dcd:	5e                   	pop    %esi
452dce:	5b                   	pop    %ebx
452dcf:	c3                   	ret
452dd0:	00 00                	add    %al,(%eax)
452dd2:	04 00                	add    $0x0,%al
452dd4:	56                   	push   %esi
452dd5:	8b f0                	mov    %eax,%esi
452dd7:	8b c6                	mov    %esi,%eax
452dd9:	8b 08                	mov    (%eax),%ecx
452ddb:	ff 51 f0             	call   *-0x10(%ecx)
452dde:	33 d2                	xor    %edx,%edx
452de0:	8b c6                	mov    %esi,%eax
452de2:	e8 05 00 00 00       	call   0x452dec
452de7:	5e                   	pop    %esi
452de8:	c3                   	ret
452de9:	8d 40 00             	lea    0x0(%eax),%eax
452dec:	56                   	push   %esi
452ded:	8b f0                	mov    %eax,%esi
452def:	8b 48 30             	mov    0x30(%eax),%ecx
452df2:	eb 05                	jmp    0x452df9
452df4:	8b f1                	mov    %ecx,%esi
452df6:	8b 49 30             	mov    0x30(%ecx),%ecx
452df9:	83 be 94 00 00 00 00 	cmpl   $0x0,0x94(%esi)
452e00:	75 04                	jne    0x452e06
452e02:	85 c9                	test   %ecx,%ecx
452e04:	75 ee                	jne    0x452df4
452e06:	85 f6                	test   %esi,%esi
452e08:	74 12                	je     0x452e1c
452e0a:	83 e2 7f             	and    $0x7f,%edx
452e0d:	52                   	push   %edx
452e0e:	8b c8                	mov    %eax,%ecx
452e10:	8b c6                	mov    %esi,%eax
452e12:	ba 46 b0 00 00       	mov    $0xb046,%edx
452e17:	e8 e4 6b ff ff       	call   0x449a00
452e1c:	5e                   	pop    %esi
452e1d:	c3                   	ret
452e1e:	8b c0                	mov    %eax,%eax
452e20:	55                   	push   %ebp
452e21:	8b ec                	mov    %esp,%ebp
452e23:	33 c0                	xor    %eax,%eax
452e25:	5d                   	pop    %ebp
452e26:	c2 0c 00             	ret    $0xc
452e29:	8d 40 00             	lea    0x0(%eax),%eax
452e2c:	33 c0                	xor    %eax,%eax
452e2e:	c3                   	ret
452e2f:	90                   	nop
452e30:	53                   	push   %ebx
452e31:	8b d8                	mov    %eax,%ebx
452e33:	0f b7 05 2e b5 4a 00 	movzwl 0x4ab52e,%eax
452e3a:	50                   	push   %eax
452e3b:	8b 83 b4 01 00 00    	mov    0x1b4(%ebx),%eax
452e41:	50                   	push   %eax
452e42:	e8 d1 43 fb ff       	call   0x407218
452e47:	0f b7 05 2c b5 4a 00 	movzwl 0x4ab52c,%eax
452e4e:	50                   	push   %eax
452e4f:	8b 83 b4 01 00 00    	mov    0x1b4(%ebx),%eax
452e55:	50                   	push   %eax
452e56:	e8 bd 43 fb ff       	call   0x407218
452e5b:	5b                   	pop    %ebx
452e5c:	c3                   	ret
452e5d:	8d 40 00             	lea    0x0(%eax),%eax
452e60:	53                   	push   %ebx
452e61:	56                   	push   %esi
452e62:	8b f2                	mov    %edx,%esi
452e64:	8b d8                	mov    %eax,%ebx
452e66:	3b 9e 94 00 00 00    	cmp    0x94(%esi),%ebx
452e6c:	75 0f                	jne    0x452e7d
452e6e:	8b c3                	mov    %ebx,%eax
452e70:	e8 47 d5 ff ff       	call   0x4503bc
452e75:	48                   	dec    %eax
452e76:	7f 05                	jg     0x452e7d
452e78:	33 c0                	xor    %eax,%eax
452e7a:	5e                   	pop    %esi
452e7b:	5b                   	pop    %ebx
452e7c:	c3                   	ret
452e7d:	b0 01                	mov    $0x1,%al
452e7f:	5e                   	pop    %esi
452e80:	5b                   	pop    %ebx
452e81:	c3                   	ret
452e82:	8b c0                	mov    %eax,%eax
452e84:	e8 bf a9 ff ff       	call   0x44d848
452e89:	c3                   	ret
452e8a:	8b c0                	mov    %eax,%eax
452e8c:	8b 80 a0 01 00 00    	mov    0x1a0(%eax),%eax
452e92:	8b 08                	mov    (%eax),%ecx
452e94:	ff 51 08             	call   *0x8(%ecx)
452e97:	c3                   	ret
452e98:	53                   	push   %ebx
452e99:	56                   	push   %esi
452e9a:	57                   	push   %edi
452e9b:	55                   	push   %ebp
452e9c:	8b da                	mov    %edx,%ebx
452e9e:	8b e8                	mov    %eax,%ebp
452ea0:	84 db                	test   %bl,%bl
452ea2:	74 08                	je     0x452eac
452ea4:	66 81 4d 54 00 20    	orw    $0x2000,0x54(%ebp)
452eaa:	eb 06                	jmp    0x452eb2
452eac:	66 81 65 54 ff df    	andw   $0xdfff,0x54(%ebp)
452eb2:	8b 85 d0 01 00 00    	mov    0x1d0(%ebp),%eax
452eb8:	85 c0                	test   %eax,%eax
452eba:	74 23                	je     0x452edf
452ebc:	8b 70 08             	mov    0x8(%eax),%esi
452ebf:	4e                   	dec    %esi
452ec0:	85 f6                	test   %esi,%esi
452ec2:	7c 1b                	jl     0x452edf
452ec4:	46                   	inc    %esi
452ec5:	33 ff                	xor    %edi,%edi
452ec7:	8b d7                	mov    %edi,%edx
452ec9:	8b 85 d0 01 00 00    	mov    0x1d0(%ebp),%eax
452ecf:	e8 04 53 fc ff       	call   0x4181d8
452ed4:	8b d3                	mov    %ebx,%edx
452ed6:	e8 bd ff ff ff       	call   0x452e98
452edb:	47                   	inc    %edi
452edc:	4e                   	dec    %esi
452edd:	75 e8                	jne    0x452ec7
452edf:	5d                   	pop    %ebp
452ee0:	5f                   	pop    %edi
452ee1:	5e                   	pop    %esi
452ee2:	5b                   	pop    %ebx
452ee3:	c3                   	ret
452ee4:	53                   	push   %ebx
452ee5:	56                   	push   %esi
452ee6:	83 c4 f0             	add    $0xfffffff0,%esp
452ee9:	8b f1                	mov    %ecx,%esi
452eeb:	8b d8                	mov    %eax,%ebx
452eed:	f6 43 1c 02          	testb  $0x2,0x1c(%ebx)
452ef1:	74 19                	je     0x452f0c
452ef3:	f6 42 1c 10          	testb  $0x10,0x1c(%edx)
452ef7:	75 41                	jne    0x452f3a
452ef9:	8b 83 42 02 00 00    	mov    0x242(%ebx),%eax
452eff:	89 06                	mov    %eax,(%esi)
452f01:	8b 83 46 02 00 00    	mov    0x246(%ebx),%eax
452f07:	89 46 04             	mov    %eax,0x4(%esi)
452f0a:	eb 2e                	jmp    0x452f3a
452f0c:	8b c3                	mov    %ebx,%eax
452f0e:	e8 39 ee ff ff       	call   0x451d4c
452f13:	84 c0                	test   %al,%al
452f15:	74 18                	je     0x452f2f
452f17:	8b d4                	mov    %esp,%edx
452f19:	8b c3                	mov    %ebx,%eax
452f1b:	8b 08                	mov    (%eax),%ecx
452f1d:	ff 51 44             	call   *0x44(%ecx)
452f20:	8b 44 24 08          	mov    0x8(%esp),%eax
452f24:	89 06                	mov    %eax,(%esi)
452f26:	8b 44 24 0c          	mov    0xc(%esp),%eax
452f2a:	89 46 04             	mov    %eax,0x4(%esi)
452f2d:	eb 0b                	jmp    0x452f3a
452f2f:	8b 43 48             	mov    0x48(%ebx),%eax
452f32:	89 06                	mov    %eax,(%esi)
452f34:	8b 43 4c             	mov    0x4c(%ebx),%eax
452f37:	89 46 04             	mov    %eax,0x4(%esi)
452f3a:	8b 83 a0 01 00 00    	mov    0x1a0(%ebx),%eax
452f40:	8b 50 08             	mov    0x8(%eax),%edx
452f43:	03 50 10             	add    0x10(%eax),%edx
452f46:	29 16                	sub    %edx,(%esi)
452f48:	8b 83 a0 01 00 00    	mov    0x1a0(%ebx),%eax
452f4e:	8b 50 0c             	mov    0xc(%eax),%edx
452f51:	03 50 14             	add    0x14(%eax),%edx
452f54:	29 56 04             	sub    %edx,0x4(%esi)
452f57:	83 c4 10             	add    $0x10,%esp
452f5a:	5e                   	pop    %esi
452f5b:	5b                   	pop    %ebx
452f5c:	c3                   	ret
452f5d:	8d 40 00             	lea    0x0(%eax),%eax
452f60:	55                   	push   %ebp
452f61:	8b ec                	mov    %esp,%ebp
452f63:	83 c4 f8             	add    $0xfffffff8,%esp
452f66:	53                   	push   %ebx
452f67:	8b da                	mov    %edx,%ebx
452f69:	89 45 fc             	mov    %eax,-0x4(%ebp)
452f6c:	8b 45 fc             	mov    -0x4(%ebp),%eax
452f6f:	e8 d8 ed ff ff       	call   0x451d4c
452f74:	84 c0                	test   %al,%al
452f76:	74 09                	je     0x452f81
452f78:	8b 45 fc             	mov    -0x4(%ebp),%eax
452f7b:	f6 40 55 20          	testb  $0x20,0x55(%eax)
452f7f:	74 04                	je     0x452f85
452f81:	33 c0                	xor    %eax,%eax
452f83:	eb 02                	jmp    0x452f87
452f85:	b0 01                	mov    $0x1,%al
452f87:	88 45 fb             	mov    %al,-0x5(%ebp)
452f8a:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
452f8e:	74 0a                	je     0x452f9a
452f90:	b2 01                	mov    $0x1,%dl
452f92:	8b 45 fc             	mov    -0x4(%ebp),%eax
452f95:	e8 fe fe ff ff       	call   0x452e98
452f9a:	33 c0                	xor    %eax,%eax
452f9c:	55                   	push   %ebp
452f9d:	68 d0 2f 45 00       	push   $0x452fd0
452fa2:	64 ff 30             	push   %fs:(%eax)
452fa5:	64 89 20             	mov    %esp,%fs:(%eax)
452fa8:	8b d3                	mov    %ebx,%edx
452faa:	8b 45 fc             	mov    -0x4(%ebp),%eax
452fad:	e8 96 6d ff ff       	call   0x449d48
452fb2:	33 c0                	xor    %eax,%eax
452fb4:	5a                   	pop    %edx
452fb5:	59                   	pop    %ecx
452fb6:	59                   	pop    %ecx
452fb7:	64 89 10             	mov    %edx,%fs:(%eax)
452fba:	68 d7 2f 45 00       	push   $0x452fd7
452fbf:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
452fc3:	74 0a                	je     0x452fcf
452fc5:	33 d2                	xor    %edx,%edx
452fc7:	8b 45 fc             	mov    -0x4(%ebp),%eax
452fca:	e8 c9 fe ff ff       	call   0x452e98
452fcf:	c3                   	ret
452fd0:	e9 db 10 fb ff       	jmp    0x4040b0
452fd5:	eb e8                	jmp    0x452fbf
452fd7:	5b                   	pop    %ebx
452fd8:	59                   	pop    %ecx
452fd9:	59                   	pop    %ecx
452fda:	5d                   	pop    %ebp
452fdb:	c3                   	ret
452fdc:	55                   	push   %ebp
452fdd:	8b ec                	mov    %esp,%ebp
452fdf:	51                   	push   %ecx
452fe0:	53                   	push   %ebx
452fe1:	56                   	push   %esi
452fe2:	84 d2                	test   %dl,%dl
452fe4:	74 08                	je     0x452fee
452fe6:	83 c4 f0             	add    $0xfffffff0,%esp
452fe9:	e8 52 0c fb ff       	call   0x403c40
452fee:	88 55 ff             	mov    %dl,-0x1(%ebp)
452ff1:	8b d8                	mov    %eax,%ebx
452ff3:	33 d2                	xor    %edx,%edx
452ff5:	8b c3                	mov    %ebx,%eax
452ff7:	e8 d0 5c ff ff       	call   0x448ccc
452ffc:	b2 01                	mov    $0x1,%dl
452ffe:	a1 e4 40 44 00       	mov    0x4440e4,%eax
453003:	e8 38 1a fd ff       	call   0x424a40
453008:	8b f0                	mov    %eax,%esi
45300a:	89 b3 90 01 00 00    	mov    %esi,0x190(%ebx)
453010:	8b c6                	mov    %esi,%eax
453012:	8b d3                	mov    %ebx,%edx
453014:	e8 f7 56 ff ff       	call   0x448710
453019:	8b c3                	mov    %ebx,%eax
45301b:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
45301f:	74 0f                	je     0x453030
453021:	e8 72 0c fb ff       	call   0x403c98
453026:	64 8f 05 00 00 00 00 	pop    %fs:0x0
45302d:	83 c4 0c             	add    $0xc,%esp
453030:	8b c3                	mov    %ebx,%eax
453032:	5e                   	pop    %esi
453033:	5b                   	pop    %ebx
453034:	59                   	pop    %ecx
453035:	5d                   	pop    %ebp
453036:	c3                   	ret
453037:	90                   	nop
453038:	53                   	push   %ebx
453039:	56                   	push   %esi
45303a:	e8 a9 0c fb ff       	call   0x403ce8
45303f:	8b da                	mov    %edx,%ebx