439b79:	23 5d f8             	and    -0x8(%ebp),%ebx
439b7c:	83 fb ff             	cmp    $0xffffffff,%ebx
439b7f:	0f 84 f5 fe ff ff    	je     0x439a7a
439b85:	6a 00                	push   $0x0
439b87:	ff 75 ec             	push   -0x14(%ebp)
439b8a:	ff 75 e8             	push   -0x18(%ebp)
439b8d:	57                   	push   %edi
439b8e:	e8 7e 7f ff ff       	call   0x431b11
439b93:	23 c2                	and    %edx,%eax
439b95:	83 c4 10             	add    $0x10,%esp
439b98:	83 f8 ff             	cmp    $0xffffffff,%eax
439b9b:	0f 84 d9 fe ff ff    	je     0x439a7a
439ba1:	33 c0                	xor    %eax,%eax
439ba3:	e9 d9 fe ff ff       	jmp    0x439a81
439ba8:	55                   	push   %ebp
439ba9:	8b ec                	mov    %esp,%ebp
439bab:	51                   	push   %ecx
439bac:	56                   	push   %esi
439bad:	8b 35 b4 41 4c 00    	mov    0x4c41b4,%esi
439bb3:	57                   	push   %edi
439bb4:	33 ff                	xor    %edi,%edi
439bb6:	89 7d fc             	mov    %edi,-0x4(%ebp)
439bb9:	eb 62                	jmp    0x439c1d
439bbb:	57                   	push   %edi
439bbc:	57                   	push   %edi
439bbd:	57                   	push   %edi
439bbe:	57                   	push   %edi
439bbf:	6a ff                	push   $0xffffffff
439bc1:	50                   	push   %eax
439bc2:	57                   	push   %edi
439bc3:	57                   	push   %edi
439bc4:	ff 15 ac f1 48 00    	call   *0x48f1ac
439bca:	8b f8                	mov    %eax,%edi
439bcc:	85 ff                	test   %edi,%edi
439bce:	74 62                	je     0x439c32
439bd0:	6a 01                	push   $0x1
439bd2:	57                   	push   %edi
439bd3:	e8 3d ee fe ff       	call   0x428a15
439bd8:	89 45 fc             	mov    %eax,-0x4(%ebp)
439bdb:	59                   	pop    %ecx
439bdc:	59                   	pop    %ecx
439bdd:	85 c0                	test   %eax,%eax
439bdf:	74 51                	je     0x439c32
439be1:	6a 00                	push   $0x0
439be3:	6a 00                	push   $0x0
439be5:	57                   	push   %edi
439be6:	50                   	push   %eax
439be7:	6a ff                	push   $0xffffffff
439be9:	ff 36                	push   (%esi)
439beb:	33 ff                	xor    %edi,%edi
439bed:	57                   	push   %edi
439bee:	57                   	push   %edi
439bef:	ff 15 ac f1 48 00    	call   *0x48f1ac
439bf5:	85 c0                	test   %eax,%eax
439bf7:	74 30                	je     0x439c29
439bf9:	8d 45 fc             	lea    -0x4(%ebp),%eax
439bfc:	57                   	push   %edi
439bfd:	50                   	push   %eax
439bfe:	e8 18 0f 00 00       	call   0x43ab1b
439c03:	59                   	pop    %ecx
439c04:	59                   	pop    %ecx
439c05:	85 c0                	test   %eax,%eax
439c07:	79 11                	jns    0x439c1a
439c09:	39 7d fc             	cmp    %edi,-0x4(%ebp)
439c0c:	74 0c                	je     0x439c1a
439c0e:	ff 75 fc             	push   -0x4(%ebp)
439c11:	e8 7f 93 fe ff       	call   0x422f95
439c16:	59                   	pop    %ecx
439c17:	89 7d fc             	mov    %edi,-0x4(%ebp)
439c1a:	83 c6 04             	add    $0x4,%esi
439c1d:	8b 06                	mov    (%esi),%eax
439c1f:	85 c0                	test   %eax,%eax
439c21:	75 98                	jne    0x439bbb
439c23:	5f                   	pop    %edi
439c24:	5e                   	pop    %esi
439c25:	8b e5                	mov    %ebp,%esp
439c27:	5d                   	pop    %ebp
439c28:	c3                   	ret
439c29:	ff 75 fc             	push   -0x4(%ebp)
439c2c:	e8 64 93 fe ff       	call   0x422f95
439c31:	59                   	pop    %ecx
439c32:	83 c8 ff             	or     $0xffffffff,%eax
439c35:	eb ec                	jmp    0x439c23
439c37:	55                   	push   %ebp
439c38:	8b ec                	mov    %esp,%ebp
439c3a:	6a 00                	push   $0x0
439c3c:	ff 75 10             	push   0x10(%ebp)
439c3f:	ff 75 0c             	push   0xc(%ebp)
439c42:	ff 75 08             	push   0x8(%ebp)
439c45:	e8 05 00 00 00       	call   0x439c4f
439c4a:	83 c4 10             	add    $0x10,%esp
439c4d:	5d                   	pop    %ebp
439c4e:	c3                   	ret
439c4f:	55                   	push   %ebp
439c50:	8b ec                	mov    %esp,%ebp
439c52:	83 ec 10             	sub    $0x10,%esp
439c55:	8d 4d f0             	lea    -0x10(%ebp),%ecx
439c58:	56                   	push   %esi
439c59:	57                   	push   %edi
439c5a:	ff 75 14             	push   0x14(%ebp)
439c5d:	e8 53 94 fe ff       	call   0x4230b5
439c62:	8b 45 10             	mov    0x10(%ebp),%eax
439c65:	85 c0                	test   %eax,%eax
439c67:	75 07                	jne    0x439c70
439c69:	33 f6                	xor    %esi,%esi
439c6b:	e9 80 00 00 00       	jmp    0x439cf0
439c70:	8b 4d 08             	mov    0x8(%ebp),%ecx
439c73:	85 c9                	test   %ecx,%ecx
439c75:	74 07                	je     0x439c7e
439c77:	8b 55 0c             	mov    0xc(%ebp),%edx
439c7a:	85 d2                	test   %edx,%edx
439c7c:	75 17                	jne    0x439c95
439c7e:	e8 e5 f0 fe ff       	call   0x428d68
439c83:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
439c89:	e8 68 f3 fe ff       	call   0x428ff6
439c8e:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
439c93:	eb 5b                	jmp    0x439cf0
439c95:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
439c9a:	3b c6                	cmp    %esi,%eax
439c9c:	76 12                	jbe    0x439cb0
439c9e:	e8 c5 f0 fe ff       	call   0x428d68
439ca3:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
439ca9:	e8 48 f3 fe ff       	call   0x428ff6
439cae:	eb 40                	jmp    0x439cf0
439cb0:	8b 7d f4             	mov    -0xc(%ebp),%edi
439cb3:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
439cb7:	75 12                	jne    0x439ccb
439cb9:	ff 75 14             	push   0x14(%ebp)
439cbc:	50                   	push   %eax
439cbd:	52                   	push   %edx
439cbe:	51                   	push   %ecx
439cbf:	e8 5a 11 00 00       	call   0x43ae1e
439cc4:	83 c4 10             	add    $0x10,%esp
439cc7:	8b f0                	mov    %eax,%esi
439cc9:	eb 25                	jmp    0x439cf0
439ccb:	ff 77 04             	push   0x4(%edi)
439cce:	50                   	push   %eax
439ccf:	52                   	push   %edx
439cd0:	50                   	push   %eax
439cd1:	51                   	push   %ecx
439cd2:	68 01 10 00 00       	push   $0x1001
439cd7:	ff b7 1c 02 00 00    	push   0x21c(%edi)
439cdd:	8d 45 f0             	lea    -0x10(%ebp),%eax
439ce0:	50                   	push   %eax
439ce1:	e8 a1 14 00 00       	call   0x43b187
439ce6:	83 c4 20             	add    $0x20,%esp
439ce9:	85 c0                	test   %eax,%eax
439ceb:	74 03                	je     0x439cf0
439ced:	8d 70 fe             	lea    -0x2(%eax),%esi
439cf0:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
439cf4:	74 07                	je     0x439cfd
439cf6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
439cf9:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
439cfd:	5f                   	pop    %edi
439cfe:	8b c6                	mov    %esi,%eax
439d00:	5e                   	pop    %esi
439d01:	8b e5                	mov    %ebp,%esp
439d03:	5d                   	pop    %ebp
439d04:	c3                   	ret
439d05:	55                   	push   %ebp
439d06:	8b ec                	mov    %esp,%ebp
439d08:	81 ec 88 00 00 00    	sub    $0x88,%esp
439d0e:	a1 50 fd 4b 00       	mov    0x4bfd50,%eax
439d13:	33 c5                	xor    %ebp,%eax
439d15:	89 45 fc             	mov    %eax,-0x4(%ebp)
439d18:	0f b7 55 10          	movzwl 0x10(%ebp),%edx
439d1c:	33 c9                	xor    %ecx,%ecx
439d1e:	53                   	push   %ebx
439d1f:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
439d22:	b8 ff 7f 00 00       	mov    $0x7fff,%eax
439d27:	56                   	push   %esi
439d28:	be 00 80 00 00       	mov    $0x8000,%esi
439d2d:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
439d30:	23 d6                	and    %esi,%edx
439d32:	c7 45 d0 cc cc cc cc 	movl   $0xcccccccc,-0x30(%ebp)
439d39:	0f b7 75 10          	movzwl 0x10(%ebp),%esi
439d3d:	41                   	inc    %ecx
439d3e:	23 f0                	and    %eax,%esi
439d40:	c7 45 d4 cc cc cc cc 	movl   $0xcccccccc,-0x2c(%ebp)
439d47:	c7 45 d8 cc cc fb 3f 	movl   $0x3ffbcccc,-0x28(%ebp)
439d4e:	89 55 80             	mov    %edx,-0x80(%ebp)
439d51:	89 45 9c             	mov    %eax,-0x64(%ebp)
439d54:	57                   	push   %edi
439d55:	66 85 d2             	test   %dx,%dx
439d58:	74 06                	je     0x439d60
439d5a:	c6 43 02 2d          	movb   $0x2d,0x2(%ebx)
439d5e:	eb 04                	jmp    0x439d64
439d60:	c6 43 02 20          	movb   $0x20,0x2(%ebx)
439d64:	8b 7d 0c             	mov    0xc(%ebp),%edi
439d67:	66 85 f6             	test   %si,%si
439d6a:	75 3a                	jne    0x439da6
439d6c:	85 ff                	test   %edi,%edi
439d6e:	0f 85 c7 00 00 00    	jne    0x439e3b
439d74:	39 7d 08             	cmp    %edi,0x8(%ebp)
439d77:	0f 85 be 00 00 00    	jne    0x439e3b
439d7d:	33 c0                	xor    %eax,%eax
439d7f:	88 4b 03             	mov    %cl,0x3(%ebx)
439d82:	66 89 03             	mov    %ax,(%ebx)
439d85:	b8 00 80 00 00       	mov    $0x8000,%eax
439d8a:	66 3b d0             	cmp    %ax,%dx
439d8d:	0f 95 c0             	setne  %al
439d90:	fe c8                	dec    %al
439d92:	24 0d                	and    $0xd,%al
439d94:	04 20                	add    $0x20,%al
439d96:	88 43 02             	mov    %al,0x2(%ebx)
439d99:	8b c1                	mov    %ecx,%eax
439d9b:	66 c7 43 04 30 00    	movw   $0x30,0x4(%ebx)
439da1:	e9 dc 08 00 00       	jmp    0x43a682
439da6:	66 3b f0             	cmp    %ax,%si
439da9:	0f 85 8c 00 00 00    	jne    0x439e3b
439daf:	8b 45 0c             	mov    0xc(%ebp),%eax
439db2:	ba 00 00 00 80       	mov    $0x80000000,%edx
439db7:	66 89 0b             	mov    %cx,(%ebx)
439dba:	8b 4d 08             	mov    0x8(%ebp),%ecx
439dbd:	3b c2                	cmp    %edx,%eax
439dbf:	75 04                	jne    0x439dc5
439dc1:	85 c9                	test   %ecx,%ecx
439dc3:	74 0e                	je     0x439dd3
439dc5:	a9 00 00 00 40       	test   $0x40000000,%eax
439dca:	75 07                	jne    0x439dd3
439dcc:	68 f4 2d 4a 00       	push   $0x4a2df4
439dd1:	eb 47                	jmp    0x439e1a
439dd3:	66 83 7d 80 00       	cmpw   $0x0,-0x80(%ebp)
439dd8:	74 12                	je     0x439dec
439dda:	3d 00 00 00 c0       	cmp    $0xc0000000,%eax
439ddf:	75 0b                	jne    0x439dec
439de1:	85 c9                	test   %ecx,%ecx
439de3:	75 30                	jne    0x439e15
439de5:	68 fc 2d 4a 00       	push   $0x4a2dfc
439dea:	eb 0d                	jmp    0x439df9
439dec:	3b c2                	cmp    %edx,%eax
439dee:	75 25                	jne    0x439e15
439df0:	85 c9                	test   %ecx,%ecx
439df2:	75 21                	jne    0x439e15
439df4:	68 04 2e 4a 00       	push   $0x4a2e04
439df9:	8d 43 04             	lea    0x4(%ebx),%eax
439dfc:	6a 16                	push   $0x16
439dfe:	50                   	push   %eax
439dff:	e8 fe a9 ff ff       	call   0x434802
439e04:	83 c4 0c             	add    $0xc,%esp
439e07:	85 c0                	test   %eax,%eax
439e09:	0f 85 bd 08 00 00    	jne    0x43a6cc
439e0f:	c6 43 03 05          	movb   $0x5,0x3(%ebx)
439e13:	eb 1f                	jmp    0x439e34
439e15:	68 0c 2e 4a 00       	push   $0x4a2e0c
439e1a:	8d 43 04             	lea    0x4(%ebx),%eax
439e1d:	6a 16                	push   $0x16
439e1f:	50                   	push   %eax
439e20:	e8 dd a9 ff ff       	call   0x434802
439e25:	83 c4 0c             	add    $0xc,%esp
439e28:	85 c0                	test   %eax,%eax
439e2a:	0f 85 9c 08 00 00    	jne    0x43a6cc
439e30:	c6 43 03 06          	movb   $0x6,0x3(%ebx)
439e34:	33 c0                	xor    %eax,%eax
439e36:	e9 47 08 00 00       	jmp    0x43a682
439e3b:	0f b7 d6             	movzwl %si,%edx
439e3e:	8b cf                	mov    %edi,%ecx
439e40:	c1 e9 18             	shr    $0x18,%ecx
439e43:	8b c2                	mov    %edx,%eax
439e45:	c1 e8 08             	shr    $0x8,%eax
439e48:	33 db                	xor    %ebx,%ebx
439e4a:	89 7d e6             	mov    %edi,-0x1a(%ebp)
439e4d:	bf 40 01 4c 00       	mov    $0x4c0140,%edi
439e52:	83 ef 60             	sub    $0x60,%edi
439e55:	66 89 75 ea          	mov    %si,-0x16(%ebp)
439e59:	c7 45 a8 05 00 00 00 	movl   $0x5,-0x58(%ebp)
439e60:	8d 04 48             	lea    (%eax,%ecx,2),%eax
439e63:	c7 45 90 fd bf 00 00 	movl   $0xbffd,-0x70(%ebp)
439e6a:	6b c8 4d             	imul   $0x4d,%eax,%ecx
439e6d:	69 c2 10 4d 00 00    	imul   $0x4d10,%edx,%eax
439e73:	c7 45 ac bf 3f 00 00 	movl   $0x3fbf,-0x54(%ebp)
439e7a:	05 0c ed bc ec       	add    $0xecbced0c,%eax
439e7f:	03 c1                	add    %ecx,%eax
439e81:	c1 f8 10             	sar    $0x10,%eax
439e84:	0f b7 c8             	movzwl %ax,%ecx
439e87:	8b 45 08             	mov    0x8(%ebp),%eax
439e8a:	89 45 e2             	mov    %eax,-0x1e(%ebp)
439e8d:	33 c0                	xor    %eax,%eax
439e8f:	66 89 45 e0          	mov    %ax,-0x20(%ebp)
439e93:	0f bf c1             	movswl %cx,%eax
439e96:	f7 d8                	neg    %eax
439e98:	89 4d b8             	mov    %ecx,-0x48(%ebp)
439e9b:	89 45 bc             	mov    %eax,-0x44(%ebp)
439e9e:	85 c0                	test   %eax,%eax
439ea0:	0f 84 2f 03 00 00    	je     0x43a1d5
439ea6:	79 0f                	jns    0x439eb7
439ea8:	f7 d8                	neg    %eax
439eaa:	bf a0 02 4c 00       	mov    $0x4c02a0,%edi
439eaf:	83 ef 60             	sub    $0x60,%edi
439eb2:	89 45 bc             	mov    %eax,-0x44(%ebp)
439eb5:	85 c0                	test   %eax,%eax
439eb7:	0f 84 18 03 00 00    	je     0x43a1d5
439ebd:	8b 75 e0             	mov    -0x20(%ebp),%esi
439ec0:	8b 55 e4             	mov    -0x1c(%ebp),%edx
439ec3:	89 75 c0             	mov    %esi,-0x40(%ebp)
439ec6:	c1 7d bc 03          	sarl   $0x3,-0x44(%ebp)
439eca:	83 c7 54             	add    $0x54,%edi
439ecd:	89 7d 94             	mov    %edi,-0x6c(%ebp)
439ed0:	83 e0 07             	and    $0x7,%eax
439ed3:	0f 84 ec 02 00 00    	je     0x43a1c5
439ed9:	6b c8 0c             	imul   $0xc,%eax,%ecx
439edc:	b8 00 80 00 00       	mov    $0x8000,%eax
439ee1:	03 cf                	add    %edi,%ecx
439ee3:	89 4d 98             	mov    %ecx,-0x68(%ebp)
439ee6:	66 39 01             	cmp    %ax,(%ecx)
439ee9:	72 11                	jb     0x439efc
439eeb:	8b f1                	mov    %ecx,%esi
439eed:	8d 7d c4             	lea    -0x3c(%ebp),%edi
439ef0:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
439ef3:	89 4d 98             	mov    %ecx,-0x68(%ebp)
439ef6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
439ef7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
439ef8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
439ef9:	ff 4d c6             	decl   -0x3a(%ebp)
439efc:	0f b7 79 0a          	movzwl 0xa(%ecx),%edi
439f00:	be 00 80 00 00       	mov    $0x8000,%esi
439f05:	8b 45 ea             	mov    -0x16(%ebp),%eax
439f08:	89 7d a4             	mov    %edi,-0x5c(%ebp)
439f0b:	81 e7 ff 7f 00 00    	and    $0x7fff,%edi
439f11:	31 45 a4             	xor    %eax,-0x5c(%ebp)
439f14:	25 ff 7f 00 00       	and    $0x7fff,%eax
439f19:	21 75 a4             	and    %esi,-0x5c(%ebp)
439f1c:	89 45 b0             	mov    %eax,-0x50(%ebp)
439f1f:	03 c7                	add    %edi,%eax
439f21:	89 7d a0             	mov    %edi,-0x60(%ebp)
439f24:	4e                   	dec    %esi
439f25:	0f b7 f8             	movzwl %ax,%edi
439f28:	8b 45 b0             	mov    -0x50(%ebp),%eax
439f2b:	66 3b c6             	cmp    %si,%ax
439f2e:	8b 75 c0             	mov    -0x40(%ebp),%esi
439f31:	89 5d 84             	mov    %ebx,-0x7c(%ebp)
439f34:	89 5d f0             	mov    %ebx,-0x10(%ebp)
439f37:	89 5d f4             	mov    %ebx,-0xc(%ebp)
439f3a:	89 5d f8             	mov    %ebx,-0x8(%ebp)
439f3d:	89 7d b4             	mov    %edi,-0x4c(%ebp)
439f40:	0f 83 58 02 00 00    	jae    0x43a19e
439f46:	b9 ff 7f 00 00       	mov    $0x7fff,%ecx
439f4b:	66 39 4d a0          	cmp    %cx,-0x60(%ebp)
439f4f:	8b 4d 98             	mov    -0x68(%ebp),%ecx
439f52:	0f 83 46 02 00 00    	jae    0x43a19e
439f58:	66 3b 7d 90          	cmp    -0x70(%ebp),%di
439f5c:	0f 87 3c 02 00 00    	ja     0x43a19e
439f62:	66 3b 7d ac          	cmp    -0x54(%ebp),%di
439f66:	77 08                	ja     0x439f70
439f68:	89 5d e8             	mov    %ebx,-0x18(%ebp)
439f6b:	e9 45 02 00 00       	jmp    0x43a1b5
439f70:	66 85 c0             	test   %ax,%ax
439f73:	75 20                	jne    0x439f95
439f75:	47                   	inc    %edi
439f76:	f7 45 e8 ff ff ff 7f 	testl  $0x7fffffff,-0x18(%ebp)