443cf8:	8b c8                	mov    %eax,%ecx
443cfa:	e8 41 99 fc ff       	call   0x40d640
443cff:	8b d8                	mov    %eax,%ebx
443d01:	eb 02                	jmp    0x443d05
443d03:	8b de                	mov    %esi,%ebx
443d05:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
443d09:	85 db                	test   %ebx,%ebx
443d0b:	0f 84 03 01 00 00    	je     0x443e14
443d11:	f0 ff 03             	lock incl (%ebx)
443d14:	8b 47 28             	mov    0x28(%edi),%eax
443d17:	8b cb                	mov    %ebx,%ecx
443d19:	ff b0 08 01 00 00    	push   0x108(%eax)
443d1f:	ff b0 04 01 00 00    	push   0x104(%eax)
443d25:	ff b0 e8 00 00 00    	push   0xe8(%eax)
443d2b:	e8 97 3c 00 00       	call   0x4479c7
443d30:	89 47 2c             	mov    %eax,0x2c(%edi)
443d33:	85 c0                	test   %eax,%eax
443d35:	0f 88 d0 00 00 00    	js     0x443e0b
443d3b:	a1 70 02 45 00       	mov    0x450270,%eax
443d40:	8b cb                	mov    %ebx,%ecx
443d42:	89 83 9c 06 00 00    	mov    %eax,0x69c(%ebx)
443d48:	8b 47 28             	mov    0x28(%edi),%eax
443d4b:	ff b0 00 01 00 00    	push   0x100(%eax)
443d51:	83 ec 0c             	sub    $0xc,%esp
443d54:	e8 5f 39 00 00       	call   0x4476b8
443d59:	89 47 2c             	mov    %eax,0x2c(%edi)
443d5c:	85 c0                	test   %eax,%eax
443d5e:	0f 88 a7 00 00 00    	js     0x443e0b
443d64:	8b 83 80 06 00 00    	mov    0x680(%ebx),%eax
443d6a:	83 f8 0b             	cmp    $0xb,%eax
443d6d:	74 05                	je     0x443d74
443d6f:	83 f8 08             	cmp    $0x8,%eax
443d72:	75 10                	jne    0x443d84
443d74:	83 7b 24 01          	cmpl   $0x1,0x24(%ebx)
443d78:	75 0a                	jne    0x443d84
443d7a:	c7 83 80 06 00 00 03 	movl   $0x3,0x680(%ebx)
443d81:	00 00 00
443d84:	8d 85 48 ff ff ff    	lea    -0xb8(%ebp),%eax
443d8a:	33 d2                	xor    %edx,%edx
443d8c:	50                   	push   %eax
443d8d:	ff b5 50 ff ff ff    	push   -0xb0(%ebp)
443d93:	8b cb                	mov    %ebx,%ecx
443d95:	56                   	push   %esi
443d96:	56                   	push   %esi
443d97:	e8 14 c9 fc ff       	call   0x4106b0
443d9c:	89 47 2c             	mov    %eax,0x2c(%edi)
443d9f:	85 c0                	test   %eax,%eax
443da1:	78 68                	js     0x443e0b
443da3:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
443da9:	8d 8d 4c ff ff ff    	lea    -0xb4(%ebp),%ecx
443daf:	51                   	push   %ecx
443db0:	89 b5 4c ff ff ff    	mov    %esi,-0xb4(%ebp)
443db6:	68 84 7a 40 00       	push   $0x407a84
443dbb:	8b 30                	mov    (%eax),%esi
443dbd:	50                   	push   %eax
443dbe:	8b 0e                	mov    (%esi),%ecx
443dc0:	ff 15 c4 12 45 00    	call   *0x4512c4
443dc6:	ff 16                	call   *(%esi)
443dc8:	89 47 2c             	mov    %eax,0x2c(%edi)
443dcb:	85 c0                	test   %eax,%eax
443dcd:	78 26                	js     0x443df5
443dcf:	ff b5 4c ff ff ff    	push   -0xb4(%ebp)
443dd5:	8b cf                	mov    %edi,%ecx
443dd7:	e8 25 fe ff ff       	call   0x443c01
443ddc:	89 47 2c             	mov    %eax,0x2c(%edi)
443ddf:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
443de5:	50                   	push   %eax
443de6:	8b 08                	mov    (%eax),%ecx
443de8:	8b 71 08             	mov    0x8(%ecx),%esi
443deb:	8b ce                	mov    %esi,%ecx
443ded:	ff 15 c4 12 45 00    	call   *0x4512c4
443df3:	ff d6                	call   *%esi
443df5:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
443dfb:	50                   	push   %eax
443dfc:	8b 08                	mov    (%eax),%ecx
443dfe:	8b 71 08             	mov    0x8(%ecx),%esi
443e01:	8b ce                	mov    %esi,%ecx
443e03:	ff 15 c4 12 45 00    	call   *0x4512c4
443e09:	ff d6                	call   *%esi
443e0b:	8b cb                	mov    %ebx,%ecx
443e0d:	e8 1c 3b 00 00       	call   0x44792e
443e12:	eb 07                	jmp    0x443e1b
443e14:	c7 47 2c 06 10 04 80 	movl   $0x80041006,0x2c(%edi)
443e1b:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
443e22:	83 bd 50 ff ff ff 00 	cmpl   $0x0,-0xb0(%ebp)
443e29:	74 11                	je     0x443e3c
443e2b:	ff b5 50 ff ff ff    	push   -0xb0(%ebp)
443e31:	8b 0d 80 0b 45 00    	mov    0x450b80,%ecx
443e37:	e8 ee 59 fd ff       	call   0x41982a
443e3c:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
443e40:	eb 07                	jmp    0x443e49
443e42:	c7 47 2c 06 10 04 80 	movl   $0x80041006,0x2c(%edi)
443e49:	8b 07                	mov    (%edi),%eax
443e4b:	8b 70 1c             	mov    0x1c(%eax),%esi
443e4e:	8b ce                	mov    %esi,%ecx
443e50:	ff 15 c4 12 45 00    	call   *0x4512c4
443e56:	8b cf                	mov    %edi,%ecx
443e58:	ff d6                	call   *%esi
443e5a:	33 c0                	xor    %eax,%eax
443e5c:	e8 ee b7 fd ff       	call   0x41f64f
443e61:	c2 04 00             	ret    $0x4
443e64:	8b ff                	mov    %edi,%edi
443e66:	55                   	push   %ebp
443e67:	8b ec                	mov    %esp,%ebp
443e69:	51                   	push   %ecx
443e6a:	51                   	push   %ecx
443e6b:	53                   	push   %ebx
443e6c:	8b d9                	mov    %ecx,%ebx
443e6e:	56                   	push   %esi
443e6f:	33 f6                	xor    %esi,%esi
443e71:	57                   	push   %edi
443e72:	8b fe                	mov    %esi,%edi
443e74:	89 75 fc             	mov    %esi,-0x4(%ebp)
443e77:	89 75 f8             	mov    %esi,-0x8(%ebp)
443e7a:	39 73 38             	cmp    %esi,0x38(%ebx)
443e7d:	74 1b                	je     0x443e9a
443e7f:	8d 45 fc             	lea    -0x4(%ebp),%eax
443e82:	50                   	push   %eax
443e83:	68 e4 b4 40 00       	push   $0x40b4e4
443e88:	ff 73 38             	push   0x38(%ebx)
443e8b:	ff 15 34 30 45 00    	call   *0x453034
443e91:	8b f8                	mov    %eax,%edi
443e93:	89 73 38             	mov    %esi,0x38(%ebx)
443e96:	85 ff                	test   %edi,%edi
443e98:	78 1c                	js     0x443eb6
443e9a:	39 73 3c             	cmp    %esi,0x3c(%ebx)
443e9d:	74 17                	je     0x443eb6
443e9f:	8d 45 f8             	lea    -0x8(%ebp),%eax
443ea2:	50                   	push   %eax
443ea3:	68 48 6b 40 00       	push   $0x406b48
443ea8:	ff 73 3c             	push   0x3c(%ebx)
443eab:	ff 15 34 30 45 00    	call   *0x453034
443eb1:	8b f8                	mov    %eax,%edi
443eb3:	89 73 3c             	mov    %esi,0x3c(%ebx)
443eb6:	39 75 fc             	cmp    %esi,-0x4(%ebp)
443eb9:	74 1e                	je     0x443ed9
443ebb:	ff 75 fc             	push   -0x4(%ebp)
443ebe:	8b 4b 28             	mov    0x28(%ebx),%ecx
443ec1:	e8 af f3 ff ff       	call   0x443275
443ec6:	8b 45 fc             	mov    -0x4(%ebp),%eax
443ec9:	50                   	push   %eax
443eca:	8b 08                	mov    (%eax),%ecx
443ecc:	8b 71 08             	mov    0x8(%ecx),%esi
443ecf:	8b ce                	mov    %esi,%ecx
443ed1:	ff 15 c4 12 45 00    	call   *0x4512c4
443ed7:	ff d6                	call   *%esi
443ed9:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
443edd:	74 1e                	je     0x443efd
443edf:	ff 75 f8             	push   -0x8(%ebp)
443ee2:	8b 4b 28             	mov    0x28(%ebx),%ecx
443ee5:	e8 d1 f6 ff ff       	call   0x4435bb
443eea:	8b 45 f8             	mov    -0x8(%ebp),%eax
443eed:	50                   	push   %eax
443eee:	8b 08                	mov    (%eax),%ecx
443ef0:	8b 71 08             	mov    0x8(%ecx),%esi
443ef3:	8b ce                	mov    %esi,%ecx
443ef5:	ff 15 c4 12 45 00    	call   *0x4512c4
443efb:	ff d6                	call   *%esi
443efd:	85 ff                	test   %edi,%edi
443eff:	79 0f                	jns    0x443f10
443f01:	57                   	push   %edi
443f02:	ff 15 a0 12 45 00    	call   *0x4512a0
443f08:	8b c8                	mov    %eax,%ecx
443f0a:	ff 15 a4 12 45 00    	call   *0x4512a4
443f10:	a1 00 f0 44 00       	mov    0x44f000,%eax
443f15:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
443f1a:	74 20                	je     0x443f3c
443f1c:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
443f20:	74 1a                	je     0x443f3c
443f22:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
443f26:	72 14                	jb     0x443f3c
443f28:	57                   	push   %edi
443f29:	ff 70 14             	push   0x14(%eax)
443f2c:	ba ac b3 40 00       	mov    $0x40b3ac,%edx
443f31:	ff 70 10             	push   0x10(%eax)
443f34:	6a 0b                	push   $0xb
443f36:	59                   	pop    %ecx
443f37:	e8 8a c8 fe ff       	call   0x4307c6
443f3c:	8b c7                	mov    %edi,%eax
443f3e:	5f                   	pop    %edi
443f3f:	5e                   	pop    %esi
443f40:	5b                   	pop    %ebx
443f41:	c9                   	leave
443f42:	c3                   	ret
443f43:	8b ff                	mov    %edi,%edi
443f45:	55                   	push   %ebp
443f46:	8b ec                	mov    %esp,%ebp
443f48:	51                   	push   %ecx
443f49:	56                   	push   %esi
443f4a:	8b f1                	mov    %ecx,%esi
443f4c:	57                   	push   %edi
443f4d:	33 ff                	xor    %edi,%edi
443f4f:	21 7d fc             	and    %edi,-0x4(%ebp)
443f52:	39 7e 40             	cmp    %edi,0x40(%esi)
443f55:	74 4f                	je     0x443fa6
443f57:	8d 45 fc             	lea    -0x4(%ebp),%eax
443f5a:	50                   	push   %eax
443f5b:	68 84 7a 40 00       	push   $0x407a84
443f60:	ff 76 40             	push   0x40(%esi)
443f63:	ff 15 34 30 45 00    	call   *0x453034
443f69:	83 66 40 00          	andl   $0x0,0x40(%esi)
443f6d:	8b f8                	mov    %eax,%edi
443f6f:	85 ff                	test   %edi,%edi
443f71:	78 24                	js     0x443f97
443f73:	ff 75 fc             	push   -0x4(%ebp)
443f76:	8b 4e 28             	mov    0x28(%esi),%ecx
443f79:	e8 9b f4 ff ff       	call   0x443419
443f7e:	8b f8                	mov    %eax,%edi
443f80:	8b 45 fc             	mov    -0x4(%ebp),%eax
443f83:	50                   	push   %eax
443f84:	8b 08                	mov    (%eax),%ecx
443f86:	8b 71 08             	mov    0x8(%ecx),%esi
443f89:	8b ce                	mov    %esi,%ecx
443f8b:	ff 15 c4 12 45 00    	call   *0x4512c4
443f91:	ff d6                	call   *%esi
443f93:	85 ff                	test   %edi,%edi
443f95:	79 0f                	jns    0x443fa6
443f97:	57                   	push   %edi
443f98:	ff 15 a0 12 45 00    	call   *0x4512a0
443f9e:	8b c8                	mov    %eax,%ecx
443fa0:	ff 15 a4 12 45 00    	call   *0x4512a4
443fa6:	a1 00 f0 44 00       	mov    0x44f000,%eax
443fab:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
443fb0:	74 20                	je     0x443fd2
443fb2:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
443fb6:	74 1a                	je     0x443fd2
443fb8:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
443fbc:	72 14                	jb     0x443fd2
443fbe:	57                   	push   %edi
443fbf:	ff 70 14             	push   0x14(%eax)
443fc2:	ba ac b3 40 00       	mov    $0x40b3ac,%edx
443fc7:	ff 70 10             	push   0x10(%eax)
443fca:	6a 0d                	push   $0xd
443fcc:	59                   	pop    %ecx
443fcd:	e8 f4 c7 fe ff       	call   0x4307c6
443fd2:	8b c7                	mov    %edi,%eax
443fd4:	5f                   	pop    %edi
443fd5:	5e                   	pop    %esi
443fd6:	c9                   	leave
443fd7:	c3                   	ret
443fd8:	8b ff                	mov    %edi,%edi
443fda:	56                   	push   %esi
443fdb:	8b f1                	mov    %ecx,%esi
443fdd:	8b 16                	mov    (%esi),%edx
443fdf:	85 d2                	test   %edx,%edx
443fe1:	74 2a                	je     0x44400d
443fe3:	8b 42 18             	mov    0x18(%edx),%eax
443fe6:	85 c0                	test   %eax,%eax
443fe8:	74 0b                	je     0x443ff5
443fea:	8b d0                	mov    %eax,%edx
443fec:	8b 42 14             	mov    0x14(%edx),%eax
443fef:	85 c0                	test   %eax,%eax
443ff1:	75 f7                	jne    0x443fea
443ff3:	eb 18                	jmp    0x44400d
443ff5:	8b 4a 1c             	mov    0x1c(%edx),%ecx
443ff8:	eb 0d                	jmp    0x444007
443ffa:	8b 42 1c             	mov    0x1c(%edx),%eax
443ffd:	39 50 18             	cmp    %edx,0x18(%eax)
444000:	75 09                	jne    0x44400b
444002:	8b d1                	mov    %ecx,%edx
444004:	8b 49 1c             	mov    0x1c(%ecx),%ecx
444007:	85 c9                	test   %ecx,%ecx
444009:	75 ef                	jne    0x443ffa
44400b:	8b d1                	mov    %ecx,%edx
44400d:	89 16                	mov    %edx,(%esi)
44400f:	8b c6                	mov    %esi,%eax
444011:	5e                   	pop    %esi
444012:	c3                   	ret
444013:	8b ff                	mov    %edi,%edi
444015:	55                   	push   %ebp
444016:	8b ec                	mov    %esp,%ebp
444018:	51                   	push   %ecx
444019:	56                   	push   %esi
44401a:	8b 31                	mov    (%ecx),%esi
44401c:	2b 32                	sub    (%edx),%esi
44401e:	75 08                	jne    0x444028
444020:	8b 41 04             	mov    0x4(%ecx),%eax
444023:	2b 42 04             	sub    0x4(%edx),%eax
444026:	74 18                	je     0x444040
444028:	85 f6                	test   %esi,%esi
44402a:	75 06                	jne    0x444032
44402c:	8b 71 04             	mov    0x4(%ecx),%esi
44402f:	2b 72 04             	sub    0x4(%edx),%esi
444032:	33 c0                	xor    %eax,%eax
444034:	85 f6                	test   %esi,%esi
444036:	0f 99 c0             	setns  %al
444039:	8d 04 45 ff ff ff ff 	lea    -0x1(,%eax,2),%eax
444040:	5e                   	pop    %esi
444041:	c9                   	leave
444042:	c3                   	ret
444043:	33 c0                	xor    %eax,%eax
444045:	c7 41 10 20 00 00 00 	movl   $0x20,0x10(%ecx)
44404c:	89 01                	mov    %eax,(%ecx)
44404e:	89 41 04             	mov    %eax,0x4(%ecx)
444051:	89 41 08             	mov    %eax,0x8(%ecx)
444054:	89 41 0c             	mov    %eax,0xc(%ecx)
444057:	89 41 1c             	mov    %eax,0x1c(%ecx)
44405a:	89 41 18             	mov    %eax,0x18(%ecx)
44405d:	89 41 14             	mov    %eax,0x14(%ecx)
444060:	89 41 20             	mov    %eax,0x20(%ecx)
444063:	8b c1                	mov    %ecx,%eax
444065:	c3                   	ret
444066:	8b ff                	mov    %edi,%edi
444068:	55                   	push   %ebp
444069:	8b ec                	mov    %esp,%ebp
44406b:	6a ff                	push   $0xffffffff
44406d:	68 31 3a 42 00       	push   $0x423a31
444072:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
444078:	50                   	push   %eax
444079:	56                   	push   %esi
44407a:	a1 54 02 45 00       	mov    0x450254,%eax
44407f:	33 c5                	xor    %ebp,%eax
444081:	50                   	push   %eax
444082:	8d 45 f4             	lea    -0xc(%ebp),%eax
444085:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
44408b:	8b f1                	mov    %ecx,%esi
44408d:	83 3e 00             	cmpl   $0x0,(%esi)
444090:	74 0a                	je     0x44409c
444092:	ff 36                	push   (%esi)
444094:	e8 1f 17 00 00       	call   0x4457b8
444099:	83 26 00             	andl   $0x0,(%esi)
44409c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
44409f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4440a6:	59                   	pop    %ecx
4440a7:	5e                   	pop    %esi
4440a8:	c9                   	leave
4440a9:	c3                   	ret
4440aa:	8b ff                	mov    %edi,%edi
4440ac:	55                   	push   %ebp
4440ad:	8b ec                	mov    %esp,%ebp
4440af:	6a ff                	push   $0xffffffff
4440b1:	68 b6 3f 42 00       	push   $0x423fb6
4440b6:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4440bc:	50                   	push   %eax
4440bd:	56                   	push   %esi
4440be:	57                   	push   %edi
4440bf:	a1 54 02 45 00       	mov    0x450254,%eax
4440c4:	33 c5                	xor    %ebp,%eax
4440c6:	50                   	push   %eax
4440c7:	8d 45 f4             	lea    -0xc(%ebp),%eax
4440ca:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4440d0:	8b f9                	mov    %ecx,%edi
4440d2:	c7 07 88 11 40 00    	movl   $0x401188,(%edi)
4440d8:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4440dc:	8d 4f 34             	lea    0x34(%edi),%ecx
4440df:	e8 50 9a fd ff       	call   0x41db34
4440e4:	8d 4f 34             	lea    0x34(%edi),%ecx
4440e7:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4440eb:	e8 44 9a fd ff       	call   0x41db34
4440f0:	8d 77 28             	lea    0x28(%edi),%esi