440a05:	89 85 28 ff ff ff    	mov    %eax,-0xd8(%ebp)
440a0b:	8d 41 ff             	lea    -0x1(%ecx),%eax
440a0e:	85 ff                	test   %edi,%edi
440a10:	78 76                	js     0x440a88
440a12:	ff 73 1c             	push   0x1c(%ebx)
440a15:	f7 d8                	neg    %eax
440a17:	ff 73 18             	push   0x18(%ebx)
440a1a:	1b c0                	sbb    %eax,%eax
440a1c:	f7 d0                	not    %eax
440a1e:	23 85 3c ff ff ff    	and    -0xc4(%ebp),%eax
440a24:	50                   	push   %eax
440a25:	8d 42 ff             	lea    -0x1(%edx),%eax
440a28:	f7 d8                	neg    %eax
440a2a:	1b c0                	sbb    %eax,%eax
440a2c:	f7 d0                	not    %eax
440a2e:	23 85 28 ff ff ff    	and    -0xd8(%ebp),%eax
440a34:	50                   	push   %eax
440a35:	33 c0                	xor    %eax,%eax
440a37:	83 f9 01             	cmp    $0x1,%ecx
440a3a:	0f 95 c0             	setne  %al
440a3d:	48                   	dec    %eax
440a3e:	50                   	push   %eax
440a3f:	33 c0                	xor    %eax,%eax
440a41:	83 fa 01             	cmp    $0x1,%edx
440a44:	0f 95 c0             	setne  %al
440a47:	48                   	dec    %eax
440a48:	f7 de                	neg    %esi
440a4a:	50                   	push   %eax
440a4b:	8d 83 4c 04 00 00    	lea    0x44c(%ebx),%eax
440a51:	1b f6                	sbb    %esi,%esi
440a53:	50                   	push   %eax
440a54:	ff 73 30             	push   0x30(%ebx)
440a57:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
440a5d:	23 f0                	and    %eax,%esi
440a5f:	56                   	push   %esi
440a60:	ff b5 1c ff ff ff    	push   -0xe4(%ebp)
440a66:	ff b5 18 ff ff ff    	push   -0xe8(%ebp)
440a6c:	ff 73 38             	push   0x38(%ebx)
440a6f:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
440a75:	6a 01                	push   $0x1
440a77:	ff 35 88 09 45 00    	push   0x450988
440a7d:	ff 15 24 10 45 00    	call   *0x451024
440a83:	83 c4 3c             	add    $0x3c,%esp
440a86:	eb 75                	jmp    0x440afd
440a88:	f7 d8                	neg    %eax
440a8a:	57                   	push   %edi
440a8b:	ff 73 1c             	push   0x1c(%ebx)
440a8e:	1b c0                	sbb    %eax,%eax
440a90:	ff 73 18             	push   0x18(%ebx)
440a93:	f7 d0                	not    %eax
440a95:	23 85 3c ff ff ff    	and    -0xc4(%ebp),%eax
440a9b:	50                   	push   %eax
440a9c:	8d 42 ff             	lea    -0x1(%edx),%eax
440a9f:	f7 d8                	neg    %eax
440aa1:	1b c0                	sbb    %eax,%eax
440aa3:	f7 d0                	not    %eax
440aa5:	23 85 28 ff ff ff    	and    -0xd8(%ebp),%eax
440aab:	50                   	push   %eax
440aac:	33 c0                	xor    %eax,%eax
440aae:	83 f9 01             	cmp    $0x1,%ecx
440ab1:	0f 95 c0             	setne  %al
440ab4:	48                   	dec    %eax
440ab5:	50                   	push   %eax
440ab6:	33 c0                	xor    %eax,%eax
440ab8:	83 fa 01             	cmp    $0x1,%edx
440abb:	0f 95 c0             	setne  %al
440abe:	48                   	dec    %eax
440abf:	f7 de                	neg    %esi
440ac1:	50                   	push   %eax
440ac2:	8d 83 4c 04 00 00    	lea    0x44c(%ebx),%eax
440ac8:	1b f6                	sbb    %esi,%esi
440aca:	50                   	push   %eax
440acb:	ff 73 30             	push   0x30(%ebx)
440ace:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
440ad4:	23 f0                	and    %eax,%esi
440ad6:	56                   	push   %esi
440ad7:	ff b5 1c ff ff ff    	push   -0xe4(%ebp)
440add:	ff b5 18 ff ff ff    	push   -0xe8(%ebp)
440ae3:	ff 73 38             	push   0x38(%ebx)
440ae6:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
440aec:	6a 01                	push   $0x1
440aee:	ff 35 8c 09 45 00    	push   0x45098c
440af4:	ff 15 24 10 45 00    	call   *0x451024
440afa:	83 c4 40             	add    $0x40,%esp
440afd:	53                   	push   %ebx
440afe:	57                   	push   %edi
440aff:	e8 c7 00 00 00       	call   0x440bcb
440b04:	c7 45 fc 05 00 00 00 	movl   $0x5,-0x4(%ebp)
440b0b:	83 bd 34 ff ff ff 00 	cmpl   $0x0,-0xcc(%ebp)
440b12:	74 11                	je     0x440b25
440b14:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
440b1a:	8b 0d 80 0b 45 00    	mov    0x450b80,%ecx
440b20:	e8 05 8d fd ff       	call   0x41982a
440b25:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
440b29:	eb 05                	jmp    0x440b30
440b2b:	bf 06 10 04 80       	mov    $0x80041006,%edi
440b30:	85 ff                	test   %edi,%edi
440b32:	79 0f                	jns    0x440b43
440b34:	57                   	push   %edi
440b35:	ff 15 a0 12 45 00    	call   *0x4512a0
440b3b:	8b c8                	mov    %eax,%ecx
440b3d:	ff 15 a4 12 45 00    	call   *0x4512a4
440b43:	a1 00 f0 44 00       	mov    0x44f000,%eax
440b48:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
440b4d:	74 20                	je     0x440b6f
440b4f:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
440b53:	74 1a                	je     0x440b6f
440b55:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
440b59:	72 14                	jb     0x440b6f
440b5b:	57                   	push   %edi
440b5c:	ff 70 14             	push   0x14(%eax)
440b5f:	ba c8 7b 40 00       	mov    $0x407bc8,%edx
440b64:	ff 70 10             	push   0x10(%eax)
440b67:	6a 10                	push   $0x10
440b69:	59                   	pop    %ecx
440b6a:	e8 57 fc fe ff       	call   0x4307c6
440b6f:	8b c7                	mov    %edi,%eax
440b71:	e8 d9 ea fd ff       	call   0x41f64f
440b76:	c2 24 00             	ret    $0x24
440b79:	cc                   	int3
440b7a:	cc                   	int3
440b7b:	cc                   	int3
440b7c:	cc                   	int3
440b7d:	cc                   	int3
440b7e:	cc                   	int3
440b7f:	cc                   	int3
440b80:	8b ff                	mov    %edi,%edi
440b82:	56                   	push   %esi
440b83:	be 0c 10 04 80       	mov    $0x8004100c,%esi
440b88:	56                   	push   %esi
440b89:	ff 15 a0 12 45 00    	call   *0x4512a0
440b8f:	8b c8                	mov    %eax,%ecx
440b91:	ff 15 a4 12 45 00    	call   *0x4512a4
440b97:	8b 0d 00 f0 44 00    	mov    0x44f000,%ecx
440b9d:	81 f9 00 f0 44 00    	cmp    $0x44f000,%ecx
440ba3:	74 20                	je     0x440bc5
440ba5:	f6 41 1c 04          	testb  $0x4,0x1c(%ecx)
440ba9:	74 1a                	je     0x440bc5
440bab:	80 79 19 02          	cmpb   $0x2,0x19(%ecx)
440baf:	72 14                	jb     0x440bc5
440bb1:	56                   	push   %esi
440bb2:	ff 71 14             	push   0x14(%ecx)
440bb5:	ba c8 7b 40 00       	mov    $0x407bc8,%edx
440bba:	ff 71 10             	push   0x10(%ecx)
440bbd:	6a 21                	push   $0x21
440bbf:	59                   	pop    %ecx
440bc0:	e8 01 fc fe ff       	call   0x4307c6
440bc5:	8b c6                	mov    %esi,%eax
440bc7:	5e                   	pop    %esi
440bc8:	c2 30 00             	ret    $0x30
440bcb:	8b ff                	mov    %edi,%edi
440bcd:	55                   	push   %ebp
440bce:	8b ec                	mov    %esp,%ebp
440bd0:	56                   	push   %esi
440bd1:	8b 75 0c             	mov    0xc(%ebp),%esi
440bd4:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
440bd8:	74 3d                	je     0x440c17
440bda:	ff 15 ac 12 45 00    	call   *0x4512ac
440be0:	83 7e 20 01          	cmpl   $0x1,0x20(%esi)
440be4:	75 05                	jne    0x440beb
440be6:	8d 4e 3c             	lea    0x3c(%esi),%ecx
440be9:	eb 12                	jmp    0x440bfd
440beb:	8b 4e 24             	mov    0x24(%esi),%ecx
440bee:	8d 86 44 02 00 00    	lea    0x244(%esi),%eax
440bf4:	49                   	dec    %ecx
440bf5:	f7 d9                	neg    %ecx
440bf7:	1b c9                	sbb    %ecx,%ecx
440bf9:	f7 d1                	not    %ecx
440bfb:	23 c8                	and    %eax,%ecx
440bfd:	8b 76 38             	mov    0x38(%esi),%esi
440c00:	51                   	push   %ecx
440c01:	ff 15 fc 10 45 00    	call   *0x4510fc
440c07:	50                   	push   %eax
440c08:	68 bc 6a 40 00       	push   $0x406abc
440c0d:	ff 75 08             	push   0x8(%ebp)
440c10:	56                   	push   %esi
440c11:	ff 15 b0 12 45 00    	call   *0x4512b0
440c17:	5e                   	pop    %esi
440c18:	5d                   	pop    %ebp
440c19:	c2 08 00             	ret    $0x8
440c1c:	8b ff                	mov    %edi,%edi
440c1e:	55                   	push   %ebp
440c1f:	8b ec                	mov    %esp,%ebp
440c21:	8b 4d 10             	mov    0x10(%ebp),%ecx
440c24:	57                   	push   %edi
440c25:	33 ff                	xor    %edi,%edi
440c27:	85 c9                	test   %ecx,%ecx
440c29:	74 1f                	je     0x440c4a
440c2b:	8b d1                	mov    %ecx,%edx
440c2d:	56                   	push   %esi
440c2e:	8d 72 02             	lea    0x2(%edx),%esi
440c31:	66 8b 02             	mov    (%edx),%ax
440c34:	83 c2 02             	add    $0x2,%edx
440c37:	66 3b c7             	cmp    %di,%ax
440c3a:	75 f5                	jne    0x440c31
440c3c:	2b d6                	sub    %esi,%edx
440c3e:	d1 fa                	sar    $1,%edx
440c40:	5e                   	pop    %esi
440c41:	8d 14 55 02 00 00 00 	lea    0x2(,%edx,2),%edx
440c48:	eb 03                	jmp    0x440c4d
440c4a:	6a 0a                	push   $0xa
440c4c:	5a                   	pop    %edx
440c4d:	85 c9                	test   %ecx,%ecx
440c4f:	75 05                	jne    0x440c56
440c51:	b9 98 aa 40 00       	mov    $0x40aa98,%ecx
440c56:	57                   	push   %edi
440c57:	52                   	push   %edx
440c58:	51                   	push   %ecx
440c59:	6a 22                	push   $0x22
440c5b:	68 c8 7b 40 00       	push   $0x407bc8
440c60:	6a 2b                	push   $0x2b
440c62:	ff 75 0c             	push   0xc(%ebp)
440c65:	ff 75 08             	push   0x8(%ebp)
440c68:	ff 15 94 12 45 00    	call   *0x451294
440c6e:	83 c4 20             	add    $0x20,%esp
440c71:	5f                   	pop    %edi
440c72:	5d                   	pop    %ebp
440c73:	c2 0c 00             	ret    $0xc
440c76:	8b ff                	mov    %edi,%edi
440c78:	55                   	push   %ebp
440c79:	8b ec                	mov    %esp,%ebp
440c7b:	8b 4d 10             	mov    0x10(%ebp),%ecx
440c7e:	57                   	push   %edi
440c7f:	33 ff                	xor    %edi,%edi
440c81:	85 c9                	test   %ecx,%ecx
440c83:	74 1f                	je     0x440ca4
440c85:	8b d1                	mov    %ecx,%edx
440c87:	56                   	push   %esi
440c88:	8d 72 02             	lea    0x2(%edx),%esi
440c8b:	66 8b 02             	mov    (%edx),%ax
440c8e:	83 c2 02             	add    $0x2,%edx
440c91:	66 3b c7             	cmp    %di,%ax
440c94:	75 f5                	jne    0x440c8b
440c96:	2b d6                	sub    %esi,%edx
440c98:	d1 fa                	sar    $1,%edx
440c9a:	5e                   	pop    %esi
440c9b:	8d 14 55 02 00 00 00 	lea    0x2(,%edx,2),%edx
440ca2:	eb 03                	jmp    0x440ca7
440ca4:	6a 0a                	push   $0xa
440ca6:	5a                   	pop    %edx
440ca7:	85 c9                	test   %ecx,%ecx
440ca9:	75 05                	jne    0x440cb0
440cab:	b9 98 aa 40 00       	mov    $0x40aa98,%ecx
440cb0:	57                   	push   %edi
440cb1:	6a 04                	push   $0x4
440cb3:	8d 45 18             	lea    0x18(%ebp),%eax
440cb6:	50                   	push   %eax
440cb7:	6a 04                	push   $0x4
440cb9:	8d 45 14             	lea    0x14(%ebp),%eax
440cbc:	50                   	push   %eax
440cbd:	52                   	push   %edx
440cbe:	51                   	push   %ecx
440cbf:	6a 0c                	push   $0xc
440cc1:	68 c8 7b 40 00       	push   $0x407bc8
440cc6:	6a 2b                	push   $0x2b
440cc8:	ff 75 0c             	push   0xc(%ebp)
440ccb:	ff 75 08             	push   0x8(%ebp)
440cce:	ff 15 94 12 45 00    	call   *0x451294
440cd4:	83 c4 30             	add    $0x30,%esp
440cd7:	5f                   	pop    %edi
440cd8:	5d                   	pop    %ebp
440cd9:	c2 14 00             	ret    $0x14
440cdc:	8b ff                	mov    %edi,%edi
440cde:	55                   	push   %ebp
440cdf:	8b ec                	mov    %esp,%ebp
440ce1:	6a 00                	push   $0x0
440ce3:	6a 04                	push   $0x4
440ce5:	8d 45 14             	lea    0x14(%ebp),%eax
440ce8:	50                   	push   %eax
440ce9:	6a 04                	push   $0x4
440ceb:	8d 45 10             	lea    0x10(%ebp),%eax
440cee:	50                   	push   %eax
440cef:	6a 1c                	push   $0x1c
440cf1:	68 c8 7b 40 00       	push   $0x407bc8
440cf6:	6a 2b                	push   $0x2b
440cf8:	ff 75 0c             	push   0xc(%ebp)
440cfb:	ff 75 08             	push   0x8(%ebp)
440cfe:	ff 15 94 12 45 00    	call   *0x451294
440d04:	83 c4 28             	add    $0x28,%esp
440d07:	5d                   	pop    %ebp
440d08:	c2 10 00             	ret    $0x10
440d0b:	6a 04                	push   $0x4
440d0d:	b8 bf 3e 42 00       	mov    $0x423ebf,%eax
440d12:	e8 56 e9 fd ff       	call   0x41f66d
440d17:	8b f1                	mov    %ecx,%esi
440d19:	89 75 f0             	mov    %esi,-0x10(%ebp)
440d1c:	8b 5d 08             	mov    0x8(%ebp),%ebx
440d1f:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
440d23:	51                   	push   %ecx
440d24:	6a ff                	push   $0xffffffff
440d26:	51                   	push   %ecx
440d27:	53                   	push   %ebx
440d28:	8d 4e 20             	lea    0x20(%esi),%ecx
440d2b:	e8 10 6c fd ff       	call   0x417940
440d30:	53                   	push   %ebx
440d31:	8d 8e b0 00 00 00    	lea    0xb0(%esi),%ecx
440d37:	c7 45 fc 09 00 00 00 	movl   $0x9,-0x4(%ebp)
440d3e:	e8 df 07 ff ff       	call   0x431522
440d43:	8b 45 0c             	mov    0xc(%ebp),%eax
440d46:	8b ce                	mov    %esi,%ecx
440d48:	c6 45 fc 0a          	movb   $0xa,-0x4(%ebp)
440d4c:	33 d2                	xor    %edx,%edx
440d4e:	51                   	push   %ecx
440d4f:	6a 07                	push   $0x7
440d51:	c7 01 b4 53 40 00    	movl   $0x4053b4,(%ecx)
440d57:	c7 41 04 a0 53 40 00 	movl   $0x4053a0,0x4(%ecx)
440d5e:	c7 41 08 88 53 40 00 	movl   $0x405388,0x8(%ecx)
440d65:	c7 41 0c 74 53 40 00 	movl   $0x405374,0xc(%ecx)
440d6c:	c7 41 10 5c 53 40 00 	movl   $0x40535c,0x10(%ecx)
440d73:	c7 41 14 48 53 40 00 	movl   $0x405348,0x14(%ecx)
440d7a:	c7 41 18 34 53 40 00 	movl   $0x405334,0x18(%ecx)
440d81:	c7 41 1c 20 53 40 00 	movl   $0x405320,0x1c(%ecx)
440d88:	89 99 e0 00 00 00    	mov    %ebx,0xe0(%ecx)
440d8e:	89 91 e4 00 00 00    	mov    %edx,0xe4(%ecx)
440d94:	89 91 e8 00 00 00    	mov    %edx,0xe8(%ecx)
440d9a:	89 91 ec 00 00 00    	mov    %edx,0xec(%ecx)
440da0:	89 91 f0 00 00 00    	mov    %edx,0xf0(%ecx)
440da6:	89 91 fc 00 00 00    	mov    %edx,0xfc(%ecx)
440dac:	89 91 00 01 00 00    	mov    %edx,0x100(%ecx)
440db2:	89 91 04 01 00 00    	mov    %edx,0x104(%ecx)
440db8:	89 91 08 01 00 00    	mov    %edx,0x108(%ecx)
440dbe:	89 91 0c 01 00 00    	mov    %edx,0x10c(%ecx)
440dc4:	89 91 10 01 00 00    	mov    %edx,0x110(%ecx)
440dca:	89 91 14 01 00 00    	mov    %edx,0x114(%ecx)
440dd0:	89 91 18 01 00 00    	mov    %edx,0x118(%ecx)
440dd6:	89 91 1c 01 00 00    	mov    %edx,0x11c(%ecx)
440ddc:	89 91 20 01 00 00    	mov    %edx,0x120(%ecx)
440de2:	89 91 24 01 00 00    	mov    %edx,0x124(%ecx)
440de8:	89 91 28 01 00 00    	mov    %edx,0x128(%ecx)
440dee:	89 81 2c 01 00 00    	mov    %eax,0x12c(%ecx)
440df4:	89 91 30 01 00 00    	mov    %edx,0x130(%ecx)
440dfa:	81 c1 34 01 00 00    	add    $0x134,%ecx
440e00:	53                   	push   %ebx
440e01:	c7 46 20 d4 52 40 00 	movl   $0x4052d4,0x20(%esi)
440e08:	c7 86 b0 00 00 00 9c 	movl   $0x40529c,0xb0(%esi)
440e0f:	52 40 00
440e12:	e8 6d 1c ff ff       	call   0x432a84
440e17:	c6 45 fc 0b          	movb   $0xb,-0x4(%ebp)
440e1b:	8b 86 2c 01 00 00    	mov    0x12c(%esi),%eax
440e21:	f0 ff 00             	lock incl (%eax)
440e24:	a1 48 0a 45 00       	mov    0x450a48,%eax
440e29:	89 46 78             	mov    %eax,0x78(%esi)
440e2c:	f0 ff 05 94 0b 45 00 	lock incl 0x450b94
440e33:	f0 ff 05 7c 0b 45 00 	lock incl 0x450b7c
440e3a:	8b 86 2c 01 00 00    	mov    0x12c(%esi),%eax
440e40:	8b 80 58 06 00 00    	mov    0x658(%eax),%eax
440e46:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
440e4a:	89 86 30 01 00 00    	mov    %eax,0x130(%esi)
440e50:	8b c6                	mov    %esi,%eax
440e52:	e8 e4 e7 fd ff       	call   0x41f63b