444b61:	50                   	push   %eax
444b62:	ff 36                	push   (%esi)
444b64:	e8 e4 e8 fe ff       	call   0x43344d
444b69:	59                   	pop    %ecx
444b6a:	33 db                	xor    %ebx,%ebx
444b6c:	59                   	pop    %ecx
444b6d:	85 c0                	test   %eax,%eax
444b6f:	75 30                	jne    0x444ba1
444b71:	81 4e 08 00 02 00 00 	orl    $0x200,0x8(%esi)
444b78:	8b 46 08             	mov    0x8(%esi),%eax
444b7b:	39 5e 10             	cmp    %ebx,0x10(%esi)
444b7e:	74 0a                	je     0x444b8a
444b80:	0d 00 01 00 00       	or     $0x100,%eax
444b85:	89 46 08             	mov    %eax,0x8(%esi)
444b88:	eb 48                	jmp    0x444bd2
444b8a:	39 5e 0c             	cmp    %ebx,0xc(%esi)
444b8d:	74 3c                	je     0x444bcb
444b8f:	ff 36                	push   (%esi)
444b91:	e8 da 66 ff ff       	call   0x43b270
444b96:	59                   	pop    %ecx
444b97:	3b 46 0c             	cmp    0xc(%esi),%eax
444b9a:	75 2f                	jne    0x444bcb
444b9c:	56                   	push   %esi
444b9d:	6a 01                	push   $0x1
444b9f:	eb 1d                	jmp    0x444bbe
444ba1:	39 5e 10             	cmp    %ebx,0x10(%esi)
444ba4:	75 34                	jne    0x444bda
444ba6:	39 5e 0c             	cmp    %ebx,0xc(%esi)
444ba9:	74 2f                	je     0x444bda
444bab:	8d 45 84             	lea    -0x7c(%ebp),%eax
444bae:	50                   	push   %eax
444baf:	ff 36                	push   (%esi)
444bb1:	e8 97 e8 fe ff       	call   0x43344d
444bb6:	59                   	pop    %ecx
444bb7:	59                   	pop    %ecx
444bb8:	85 c0                	test   %eax,%eax
444bba:	75 1e                	jne    0x444bda
444bbc:	56                   	push   %esi
444bbd:	53                   	push   %ebx
444bbe:	8b c7                	mov    %edi,%eax
444bc0:	e8 05 fe ff ff       	call   0x4449ca
444bc5:	59                   	pop    %ecx
444bc6:	59                   	pop    %ecx
444bc7:	85 c0                	test   %eax,%eax
444bc9:	74 0f                	je     0x444bda
444bcb:	81 4e 08 00 01 00 00 	orl    $0x100,0x8(%esi)
444bd2:	39 5e 18             	cmp    %ebx,0x18(%esi)
444bd5:	75 03                	jne    0x444bda
444bd7:	89 7e 18             	mov    %edi,0x18(%esi)
444bda:	8b 46 08             	mov    0x8(%esi),%eax
444bdd:	c1 e8 02             	shr    $0x2,%eax
444be0:	f7 d0                	not    %eax
444be2:	83 e0 01             	and    $0x1,%eax
444be5:	8b 4d fc             	mov    -0x4(%ebp),%ecx
444be8:	5f                   	pop    %edi
444be9:	5e                   	pop    %esi
444bea:	33 cd                	xor    %ebp,%ecx
444bec:	5b                   	pop    %ebx
444bed:	e8 9f 9d ff ff       	call   0x43e991
444bf2:	c9                   	leave
444bf3:	c2 04 00             	ret    $0x4
444bf6:	8b ff                	mov    %edi,%edi
444bf8:	55                   	push   %ebp
444bf9:	8b ec                	mov    %esp,%ebp
444bfb:	83 ec 7c             	sub    $0x7c,%esp
444bfe:	a1 a8 f6 46 00       	mov    0x46f6a8,%eax
444c03:	33 c5                	xor    %ebp,%eax
444c05:	89 45 fc             	mov    %eax,-0x4(%ebp)
444c08:	56                   	push   %esi
444c09:	57                   	push   %edi
444c0a:	8b 7d 08             	mov    0x8(%ebp),%edi
444c0d:	e8 16 fa fe ff       	call   0x434628
444c12:	8b d7                	mov    %edi,%edx
444c14:	8d b0 9c 00 00 00    	lea    0x9c(%eax),%esi
444c1a:	e8 b8 fc ff ff       	call   0x4448d7
444c1f:	8b f8                	mov    %eax,%edi
444c21:	6a 78                	push   $0x78
444c23:	8d 45 84             	lea    -0x7c(%ebp),%eax
444c26:	50                   	push   %eax
444c27:	8b 46 10             	mov    0x10(%esi),%eax
444c2a:	f7 d8                	neg    %eax
444c2c:	1b c0                	sbb    %eax,%eax
444c2e:	25 02 f0 ff ff       	and    $0xfffff002,%eax
444c33:	05 01 10 00 00       	add    $0x1001,%eax
444c38:	50                   	push   %eax
444c39:	57                   	push   %edi
444c3a:	ff 15 c8 35 47 00    	call   *0x4735c8
444c40:	85 c0                	test   %eax,%eax
444c42:	75 06                	jne    0x444c4a
444c44:	21 46 08             	and    %eax,0x8(%esi)
444c47:	40                   	inc    %eax
444c48:	eb 5c                	jmp    0x444ca6
444c4a:	8d 45 84             	lea    -0x7c(%ebp),%eax
444c4d:	50                   	push   %eax
444c4e:	ff 36                	push   (%esi)
444c50:	e8 f8 e7 fe ff       	call   0x43344d
444c55:	59                   	pop    %ecx
444c56:	59                   	pop    %ecx
444c57:	85 c0                	test   %eax,%eax
444c59:	75 0a                	jne    0x444c65
444c5b:	39 46 10             	cmp    %eax,0x10(%esi)
444c5e:	75 31                	jne    0x444c91
444c60:	56                   	push   %esi
444c61:	6a 01                	push   $0x1
444c63:	eb 1f                	jmp    0x444c84
444c65:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
444c69:	75 30                	jne    0x444c9b
444c6b:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
444c6f:	74 2a                	je     0x444c9b
444c71:	8d 45 84             	lea    -0x7c(%ebp),%eax
444c74:	50                   	push   %eax
444c75:	ff 36                	push   (%esi)
444c77:	e8 d1 e7 fe ff       	call   0x43344d
444c7c:	59                   	pop    %ecx
444c7d:	59                   	pop    %ecx
444c7e:	85 c0                	test   %eax,%eax
444c80:	75 19                	jne    0x444c9b
444c82:	56                   	push   %esi
444c83:	50                   	push   %eax
444c84:	8b c7                	mov    %edi,%eax
444c86:	e8 3f fd ff ff       	call   0x4449ca
444c8b:	59                   	pop    %ecx
444c8c:	59                   	pop    %ecx
444c8d:	85 c0                	test   %eax,%eax
444c8f:	74 0a                	je     0x444c9b
444c91:	83 4e 08 04          	orl    $0x4,0x8(%esi)
444c95:	89 7e 18             	mov    %edi,0x18(%esi)
444c98:	89 7e 1c             	mov    %edi,0x1c(%esi)
444c9b:	8b 46 08             	mov    0x8(%esi),%eax
444c9e:	c1 e8 02             	shr    $0x2,%eax
444ca1:	f7 d0                	not    %eax
444ca3:	83 e0 01             	and    $0x1,%eax
444ca6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
444ca9:	5f                   	pop    %edi
444caa:	33 cd                	xor    %ebp,%ecx
444cac:	5e                   	pop    %esi
444cad:	e8 df 9c ff ff       	call   0x43e991
444cb2:	c9                   	leave
444cb3:	c2 04 00             	ret    $0x4
444cb6:	ff 76 04             	push   0x4(%esi)
444cb9:	e8 b2 65 ff ff       	call   0x43b270
444cbe:	83 e8 03             	sub    $0x3,%eax
444cc1:	f7 d8                	neg    %eax
444cc3:	59                   	pop    %ecx
444cc4:	1b c0                	sbb    %eax,%eax
444cc6:	6a 01                	push   $0x1
444cc8:	40                   	inc    %eax
444cc9:	68 23 49 44 00       	push   $0x444923
444cce:	89 46 14             	mov    %eax,0x14(%esi)
444cd1:	ff 15 cc 35 47 00    	call   *0x4735cc
444cd7:	f6 46 08 04          	testb  $0x4,0x8(%esi)
444cdb:	75 04                	jne    0x444ce1
444cdd:	83 66 08 00          	andl   $0x0,0x8(%esi)
444ce1:	c3                   	ret
444ce2:	ff 36                	push   (%esi)
444ce4:	e8 87 65 ff ff       	call   0x43b270
444ce9:	ff 76 04             	push   0x4(%esi)
444cec:	83 e8 03             	sub    $0x3,%eax
444cef:	f7 d8                	neg    %eax
444cf1:	1b c0                	sbb    %eax,%eax
444cf3:	40                   	inc    %eax
444cf4:	89 46 10             	mov    %eax,0x10(%esi)
444cf7:	e8 74 65 ff ff       	call   0x43b270
444cfc:	83 e8 03             	sub    $0x3,%eax
444cff:	f7 d8                	neg    %eax
444d01:	1b c0                	sbb    %eax,%eax
444d03:	83 66 18 00          	andl   $0x0,0x18(%esi)
444d07:	40                   	inc    %eax
444d08:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
444d0c:	59                   	pop    %ecx
444d0d:	59                   	pop    %ecx
444d0e:	89 46 14             	mov    %eax,0x14(%esi)
444d11:	74 05                	je     0x444d18
444d13:	6a 02                	push   $0x2
444d15:	58                   	pop    %eax
444d16:	eb 07                	jmp    0x444d1f
444d18:	8b 16                	mov    (%esi),%edx
444d1a:	e8 e9 fb ff ff       	call   0x444908
444d1f:	6a 01                	push   $0x1
444d21:	68 25 4a 44 00       	push   $0x444a25
444d26:	89 46 0c             	mov    %eax,0xc(%esi)
444d29:	ff 15 cc 35 47 00    	call   *0x4735cc
444d2f:	8b 46 08             	mov    0x8(%esi),%eax
444d32:	a9 00 01 00 00       	test   $0x100,%eax
444d37:	74 0b                	je     0x444d44
444d39:	a9 00 02 00 00       	test   $0x200,%eax
444d3e:	74 04                	je     0x444d44
444d40:	a8 07                	test   $0x7,%al
444d42:	75 04                	jne    0x444d48
444d44:	83 66 08 00          	andl   $0x0,0x8(%esi)
444d48:	c3                   	ret
444d49:	ff 36                	push   (%esi)
444d4b:	e8 20 65 ff ff       	call   0x43b270
444d50:	83 e8 03             	sub    $0x3,%eax
444d53:	f7 d8                	neg    %eax
444d55:	1b c0                	sbb    %eax,%eax
444d57:	40                   	inc    %eax
444d58:	59                   	pop    %ecx
444d59:	89 46 10             	mov    %eax,0x10(%esi)
444d5c:	74 05                	je     0x444d63
444d5e:	6a 02                	push   $0x2
444d60:	58                   	pop    %eax
444d61:	eb 07                	jmp    0x444d6a
444d63:	8b 16                	mov    (%esi),%edx
444d65:	e8 9e fb ff ff       	call   0x444908
444d6a:	6a 01                	push   $0x1
444d6c:	68 f6 4b 44 00       	push   $0x444bf6
444d71:	89 46 0c             	mov    %eax,0xc(%esi)
444d74:	ff 15 cc 35 47 00    	call   *0x4735cc
444d7a:	f6 46 08 04          	testb  $0x4,0x8(%esi)
444d7e:	75 04                	jne    0x444d84
444d80:	83 66 08 00          	andl   $0x0,0x8(%esi)
444d84:	c3                   	ret
444d85:	8b ff                	mov    %edi,%edi
444d87:	55                   	push   %ebp
444d88:	8b ec                	mov    %esp,%ebp
444d8a:	53                   	push   %ebx
444d8b:	56                   	push   %esi
444d8c:	57                   	push   %edi
444d8d:	e8 96 f8 fe ff       	call   0x434628
444d92:	8d b8 9c 00 00 00    	lea    0x9c(%eax),%edi
444d98:	8b 45 08             	mov    0x8(%ebp),%eax
444d9b:	85 c0                	test   %eax,%eax
444d9d:	75 0c                	jne    0x444dab
444d9f:	81 4f 08 04 01 00 00 	orl    $0x104,0x8(%edi)
444da6:	e9 c3 00 00 00       	jmp    0x444e6e
444dab:	89 07                	mov    %eax,(%edi)
444dad:	83 c0 40             	add    $0x40,%eax
444db0:	8d 5f 04             	lea    0x4(%edi),%ebx
444db3:	89 03                	mov    %eax,(%ebx)
444db5:	74 15                	je     0x444dcc
444db7:	80 38 00             	cmpb   $0x0,(%eax)
444dba:	74 10                	je     0x444dcc
444dbc:	53                   	push   %ebx
444dbd:	6a 16                	push   $0x16
444dbf:	68 28 a4 46 00       	push   $0x46a428
444dc4:	e8 ef f9 ff ff       	call   0x4447b8
444dc9:	83 c4 0c             	add    $0xc,%esp
444dcc:	8b 07                	mov    (%edi),%eax
444dce:	83 67 08 00          	andl   $0x0,0x8(%edi)
444dd2:	85 c0                	test   %eax,%eax
444dd4:	74 5b                	je     0x444e31
444dd6:	80 38 00             	cmpb   $0x0,(%eax)
444dd9:	74 56                	je     0x444e31
444ddb:	8b 03                	mov    (%ebx),%eax
444ddd:	85 c0                	test   %eax,%eax
444ddf:	74 0e                	je     0x444def
444de1:	80 38 00             	cmpb   $0x0,(%eax)
444de4:	74 09                	je     0x444def
444de6:	8b f7                	mov    %edi,%esi
444de8:	e8 f5 fe ff ff       	call   0x444ce2
444ded:	eb 07                	jmp    0x444df6
444def:	8b f7                	mov    %edi,%esi
444df1:	e8 53 ff ff ff       	call   0x444d49
444df6:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
444dfa:	0f 85 84 00 00 00    	jne    0x444e84
444e00:	57                   	push   %edi
444e01:	6a 40                	push   $0x40
444e03:	68 20 a2 46 00       	push   $0x46a220
444e08:	e8 ab f9 ff ff       	call   0x4447b8
444e0d:	83 c4 0c             	add    $0xc,%esp
444e10:	85 c0                	test   %eax,%eax
444e12:	74 66                	je     0x444e7a
444e14:	8b 1b                	mov    (%ebx),%ebx
444e16:	85 db                	test   %ebx,%ebx
444e18:	74 0e                	je     0x444e28
444e1a:	80 3b 00             	cmpb   $0x0,(%ebx)
444e1d:	74 09                	je     0x444e28
444e1f:	8b f7                	mov    %edi,%esi
444e21:	e8 bc fe ff ff       	call   0x444ce2
444e26:	eb 52                	jmp    0x444e7a
444e28:	8b f7                	mov    %edi,%esi
444e2a:	e8 1a ff ff ff       	call   0x444d49
444e2f:	eb 49                	jmp    0x444e7a
444e31:	8b 1b                	mov    (%ebx),%ebx
444e33:	85 db                	test   %ebx,%ebx
444e35:	74 30                	je     0x444e67
444e37:	80 3b 00             	cmpb   $0x0,(%ebx)
444e3a:	74 2b                	je     0x444e67
444e3c:	53                   	push   %ebx
444e3d:	e8 2e 64 ff ff       	call   0x43b270
444e42:	83 e8 03             	sub    $0x3,%eax
444e45:	f7 d8                	neg    %eax
444e47:	59                   	pop    %ecx
444e48:	1b c0                	sbb    %eax,%eax
444e4a:	6a 01                	push   $0x1
444e4c:	40                   	inc    %eax
444e4d:	68 23 49 44 00       	push   $0x444923
444e52:	89 47 14             	mov    %eax,0x14(%edi)
444e55:	ff 15 cc 35 47 00    	call   *0x4735cc
444e5b:	f6 47 08 04          	testb  $0x4,0x8(%edi)
444e5f:	75 19                	jne    0x444e7a
444e61:	83 67 08 00          	andl   $0x0,0x8(%edi)
444e65:	eb 13                	jmp    0x444e7a
444e67:	c7 47 08 04 01 00 00 	movl   $0x104,0x8(%edi)
444e6e:	ff 15 c4 35 47 00    	call   *0x4735c4
444e74:	89 47 18             	mov    %eax,0x18(%edi)
444e77:	89 47 1c             	mov    %eax,0x1c(%edi)
444e7a:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
444e7e:	0f 84 eb 00 00 00    	je     0x444f6f
444e84:	8b 75 08             	mov    0x8(%ebp),%esi
444e87:	8b c6                	mov    %esi,%eax
444e89:	83 e8 80             	sub    $0xffffff80,%eax
444e8c:	f7 de                	neg    %esi
444e8e:	1b f6                	sbb    %esi,%esi
444e90:	23 f0                	and    %eax,%esi
444e92:	e8 97 f9 ff ff       	call   0x44482e
444e97:	8b f0                	mov    %eax,%esi
444e99:	89 75 08             	mov    %esi,0x8(%ebp)
444e9c:	85 f6                	test   %esi,%esi
444e9e:	0f 84 cb 00 00 00    	je     0x444f6f
444ea4:	81 fe e8 fd 00 00    	cmp    $0xfde8,%esi
444eaa:	0f 84 bf 00 00 00    	je     0x444f6f
444eb0:	81 fe e9 fd 00 00    	cmp    $0xfde9,%esi
444eb6:	0f 84 b3 00 00 00    	je     0x444f6f
444ebc:	0f b7 c6             	movzwl %si,%eax
444ebf:	50                   	push   %eax
444ec0:	ff 15 94 35 47 00    	call   *0x473594
444ec6:	85 c0                	test   %eax,%eax
444ec8:	0f 84 a1 00 00 00    	je     0x444f6f
444ece:	6a 01                	push   $0x1
444ed0:	ff 77 18             	push   0x18(%edi)
444ed3:	ff 15 d0 35 47 00    	call   *0x4735d0
444ed9:	85 c0                	test   %eax,%eax
444edb:	0f 84 8e 00 00 00    	je     0x444f6f
444ee1:	8b 45 0c             	mov    0xc(%ebp),%eax
444ee4:	85 c0                	test   %eax,%eax
444ee6:	74 13                	je     0x444efb
444ee8:	66 8b 4f 18          	mov    0x18(%edi),%cx
444eec:	66 89 08             	mov    %cx,(%eax)
444eef:	66 8b 4f 1c          	mov    0x1c(%edi),%cx
444ef3:	66 89 48 02          	mov    %cx,0x2(%eax)
444ef7:	66 89 70 04          	mov    %si,0x4(%eax)
444efb:	8b 5d 10             	mov    0x10(%ebp),%ebx
444efe:	85 db                	test   %ebx,%ebx
444f00:	74 68                	je     0x444f6a
444f02:	8b 35 c8 35 47 00    	mov    0x4735c8,%esi
444f08:	b9 14 08 00 00       	mov    $0x814,%ecx
444f0d:	66 39 08             	cmp    %cx,(%eax)
444f10:	75 20                	jne    0x444f32
444f12:	68 fc a4 46 00       	push   $0x46a4fc
444f17:	6a 40                	push   $0x40
444f19:	53                   	push   %ebx
444f1a:	e8 f5 cc ff ff       	call   0x441c14
444f1f:	83 c4 0c             	add    $0xc,%esp
444f22:	85 c0                	test   %eax,%eax
444f24:	74 1d                	je     0x444f43
444f26:	33 c0                	xor    %eax,%eax
444f28:	50                   	push   %eax
444f29:	50                   	push   %eax