41ea1a:	83 e8 01             	sub    $0x1,%eax
41ea1d:	0f 85 33 f4 00 00    	jne    0x42de56
41ea23:	8b 55 0c             	mov    0xc(%ebp),%edx
41ea26:	88 1f                	mov    %bl,(%edi)
41ea28:	8b 42 1c             	mov    0x1c(%edx),%eax
41ea2b:	83 e8 00             	sub    $0x0,%eax
41ea2e:	74 e1                	je     0x41ea11
41ea30:	83 e8 01             	sub    $0x1,%eax
41ea33:	0f 85 2c f4 00 00    	jne    0x42de65
41ea39:	8b 06                	mov    (%esi),%eax
41ea3b:	8b 78 18             	mov    0x18(%eax),%edi
41ea3e:	85 ff                	test   %edi,%edi
41ea40:	0f 85 dc f4 00 00    	jne    0x42df22
41ea46:	89 11                	mov    %edx,(%ecx)
41ea48:	8b 4a 14             	mov    0x14(%edx),%ecx
41ea4b:	85 c9                	test   %ecx,%ecx
41ea4d:	75 21                	jne    0x41ea70
41ea4f:	8b 06                	mov    (%esi),%eax
41ea51:	21 58 1c             	and    %ebx,0x1c(%eax)
41ea54:	8b 0e                	mov    (%esi),%ecx
41ea56:	8b 42 14             	mov    0x14(%edx),%eax
41ea59:	89 41 10             	mov    %eax,0x10(%ecx)
41ea5c:	8b 06                	mov    (%esi),%eax
41ea5e:	89 50 18             	mov    %edx,0x18(%eax)
41ea61:	21 5a 1c             	and    %ebx,0x1c(%edx)
41ea64:	8b 06                	mov    (%esi),%eax
41ea66:	89 42 14             	mov    %eax,0x14(%edx)
41ea69:	89 7a 18             	mov    %edi,0x18(%edx)
41ea6c:	89 16                	mov    %edx,(%esi)
41ea6e:	eb a1                	jmp    0x41ea11
41ea70:	8b 06                	mov    (%esi),%eax
41ea72:	89 41 18             	mov    %eax,0x18(%ecx)
41ea75:	eb d8                	jmp    0x41ea4f
41ea77:	cc                   	int3
41ea78:	cc                   	int3
41ea79:	cc                   	int3
41ea7a:	cc                   	int3
41ea7b:	cc                   	int3
41ea7c:	cc                   	int3
41ea7d:	cc                   	int3
41ea7e:	cc                   	int3
41ea7f:	cc                   	int3
41ea80:	6a 20                	push   $0x20
41ea82:	b8 fb 39 42 00       	mov    $0x4239fb,%eax
41ea87:	e8 e1 0b 00 00       	call   0x41f66d
41ea8c:	a1 00 f0 44 00       	mov    0x44f000,%eax
41ea91:	bb 00 f0 44 00       	mov    $0x44f000,%ebx
41ea96:	3b c3                	cmp    %ebx,%eax
41ea98:	74 0a                	je     0x41eaa4
41ea9a:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
41ea9e:	0f 85 93 f4 00 00    	jne    0x42df37
41eaa4:	8b 7d 08             	mov    0x8(%ebp),%edi
41eaa7:	33 c9                	xor    %ecx,%ecx
41eaa9:	be 24 10 04 80       	mov    $0x80041024,%esi
41eaae:	39 8f b8 00 00 00    	cmp    %ecx,0xb8(%edi)
41eab4:	0f 84 fb f4 00 00    	je     0x42dfb5
41eaba:	8b 87 34 01 00 00    	mov    0x134(%edi),%eax
41eac0:	39 88 9c 07 00 00    	cmp    %ecx,0x79c(%eax)
41eac6:	0f 84 e9 f4 00 00    	je     0x42dfb5
41eacc:	89 4d f0             	mov    %ecx,-0x10(%ebp)
41eacf:	8d 45 e4             	lea    -0x1c(%ebp),%eax
41ead2:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41ead5:	50                   	push   %eax
41ead6:	8d 45 e0             	lea    -0x20(%ebp),%eax
41ead9:	8b cf                	mov    %edi,%ecx
41eadb:	50                   	push   %eax
41eadc:	8d 45 ec             	lea    -0x14(%ebp),%eax
41eadf:	50                   	push   %eax
41eae0:	8d 45 e8             	lea    -0x18(%ebp),%eax
41eae3:	50                   	push   %eax
41eae4:	8d 45 dc             	lea    -0x24(%ebp),%eax
41eae7:	50                   	push   %eax
41eae8:	8d 45 d8             	lea    -0x28(%ebp),%eax
41eaeb:	50                   	push   %eax
41eaec:	8d 45 d4             	lea    -0x2c(%ebp),%eax
41eaef:	50                   	push   %eax
41eaf0:	e8 4a ea ff ff       	call   0x41d53f
41eaf5:	8b f0                	mov    %eax,%esi
41eaf7:	85 f6                	test   %esi,%esi
41eaf9:	78 4e                	js     0x41eb49
41eafb:	ff 75 18             	push   0x18(%ebp)
41eafe:	8d 4d f0             	lea    -0x10(%ebp),%ecx
41eb01:	e8 8a 66 ff ff       	call   0x415190
41eb06:	8b f0                	mov    %eax,%esi
41eb08:	85 f6                	test   %esi,%esi
41eb0a:	0f 88 5b f4 00 00    	js     0x42df6b
41eb10:	ff 75 ec             	push   -0x14(%ebp)
41eb13:	8b cf                	mov    %edi,%ecx
41eb15:	ff 75 20             	push   0x20(%ebp)
41eb18:	ff 75 1c             	push   0x1c(%ebp)
41eb1b:	ff 75 18             	push   0x18(%ebp)
41eb1e:	ff 75 14             	push   0x14(%ebp)
41eb21:	ff 75 10             	push   0x10(%ebp)
41eb24:	ff 75 0c             	push   0xc(%ebp)
41eb27:	ff 75 e8             	push   -0x18(%ebp)
41eb2a:	e8 d9 f0 ff ff       	call   0x41dc08
41eb2f:	ff 75 e4             	push   -0x1c(%ebp)
41eb32:	8b f0                	mov    %eax,%esi
41eb34:	ff 75 e0             	push   -0x20(%ebp)
41eb37:	51                   	push   %ecx
41eb38:	51                   	push   %ecx
41eb39:	ff 75 dc             	push   -0x24(%ebp)
41eb3c:	8b cf                	mov    %edi,%ecx
41eb3e:	ff 75 d8             	push   -0x28(%ebp)
41eb41:	ff 75 d4             	push   -0x2c(%ebp)
41eb44:	e8 9d e9 ff ff       	call   0x41d4e6
41eb49:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
41eb4d:	8d 4d f0             	lea    -0x10(%ebp),%ecx
41eb50:	e8 25 00 00 00       	call   0x41eb7a
41eb55:	85 f6                	test   %esi,%esi
41eb57:	0f 88 58 f4 00 00    	js     0x42dfb5
41eb5d:	a1 00 f0 44 00       	mov    0x44f000,%eax
41eb62:	3b c3                	cmp    %ebx,%eax
41eb64:	74 0a                	je     0x41eb70
41eb66:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
41eb6a:	0f 85 59 f4 00 00    	jne    0x42dfc9
41eb70:	8b c6                	mov    %esi,%eax
41eb72:	e8 c4 0a 00 00       	call   0x41f63b
41eb77:	c2 1c 00             	ret    $0x1c
41eb7a:	8b ff                	mov    %edi,%edi
41eb7c:	55                   	push   %ebp
41eb7d:	8b ec                	mov    %esp,%ebp
41eb7f:	6a ff                	push   $0xffffffff
41eb81:	68 16 3a 42 00       	push   $0x423a16
41eb86:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41eb8c:	50                   	push   %eax
41eb8d:	51                   	push   %ecx
41eb8e:	56                   	push   %esi
41eb8f:	a1 54 02 45 00       	mov    0x450254,%eax
41eb94:	33 c5                	xor    %ebp,%eax
41eb96:	50                   	push   %eax
41eb97:	8d 45 f4             	lea    -0xc(%ebp),%eax
41eb9a:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41eba0:	8b f1                	mov    %ecx,%esi
41eba2:	83 3e 00             	cmpl   $0x0,(%esi)
41eba5:	74 21                	je     0x41ebc8
41eba7:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
41ebab:	8d 45 f0             	lea    -0x10(%ebp),%eax
41ebae:	50                   	push   %eax
41ebaf:	ff 36                	push   (%esi)
41ebb1:	6a 08                	push   $0x8
41ebb3:	ff 15 bc 12 45 00    	call   *0x4512bc
41ebb9:	85 c0                	test   %eax,%eax
41ebbb:	78 0b                	js     0x41ebc8
41ebbd:	ff 36                	push   (%esi)
41ebbf:	ff 15 b8 12 45 00    	call   *0x4512b8
41ebc5:	83 26 00             	andl   $0x0,(%esi)
41ebc8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41ebcb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41ebd2:	59                   	pop    %ecx
41ebd3:	5e                   	pop    %esi
41ebd4:	c9                   	leave
41ebd5:	c3                   	ret
41ebd6:	8b ff                	mov    %edi,%edi
41ebd8:	55                   	push   %ebp
41ebd9:	8b ec                	mov    %esp,%ebp
41ebdb:	51                   	push   %ecx
41ebdc:	51                   	push   %ecx
41ebdd:	53                   	push   %ebx
41ebde:	8b 5d 10             	mov    0x10(%ebp),%ebx
41ebe1:	8b c2                	mov    %edx,%eax
41ebe3:	56                   	push   %esi
41ebe4:	57                   	push   %edi
41ebe5:	8b 7d 14             	mov    0x14(%ebp),%edi
41ebe8:	53                   	push   %ebx
41ebe9:	ff 75 0c             	push   0xc(%ebp)
41ebec:	89 45 fc             	mov    %eax,-0x4(%ebp)
41ebef:	ff 75 08             	push   0x8(%ebp)
41ebf2:	83 27 00             	andl   $0x0,(%edi)
41ebf5:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41ebf8:	e8 22 00 00 00       	call   0x41ec1f
41ebfd:	8b f0                	mov    %eax,%esi
41ebff:	85 f6                	test   %esi,%esi
41ec01:	0f 89 e5 f3 00 00    	jns    0x42dfec
41ec07:	81 fe 02 10 04 80    	cmp    $0x80041002,%esi
41ec0d:	75 09                	jne    0x41ec18
41ec0f:	5f                   	pop    %edi
41ec10:	8b c6                	mov    %esi,%eax
41ec12:	5e                   	pop    %esi
41ec13:	5b                   	pop    %ebx
41ec14:	c9                   	leave
41ec15:	c2 10 00             	ret    $0x10
41ec18:	be 0a 10 04 80       	mov    $0x8004100a,%esi
41ec1d:	eb f0                	jmp    0x41ec0f
41ec1f:	8b ff                	mov    %edi,%edi
41ec21:	55                   	push   %ebp
41ec22:	8b ec                	mov    %esp,%ebp
41ec24:	83 ec 10             	sub    $0x10,%esp
41ec27:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
41ec2b:	8d 45 f8             	lea    -0x8(%ebp),%eax
41ec2e:	53                   	push   %ebx
41ec2f:	56                   	push   %esi
41ec30:	57                   	push   %edi
41ec31:	8b 7d 0c             	mov    0xc(%ebp),%edi
41ec34:	8b d9                	mov    %ecx,%ebx
41ec36:	50                   	push   %eax
41ec37:	ff 75 08             	push   0x8(%ebp)
41ec3a:	89 55 f4             	mov    %edx,-0xc(%ebp)
41ec3d:	8b 37                	mov    (%edi),%esi
41ec3f:	57                   	push   %edi
41ec40:	8b 0e                	mov    (%esi),%ecx
41ec42:	ff 15 c4 12 45 00    	call   *0x4512c4
41ec48:	ff 16                	call   *(%esi)
41ec4a:	8b f8                	mov    %eax,%edi
41ec4c:	85 ff                	test   %edi,%edi
41ec4e:	78 47                	js     0x41ec97
41ec50:	8b 45 0c             	mov    0xc(%ebp),%eax
41ec53:	8d 4d fc             	lea    -0x4(%ebp),%ecx
41ec56:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41ec5a:	51                   	push   %ecx
41ec5b:	68 a4 7a 40 00       	push   $0x407aa4
41ec60:	8b 30                	mov    (%eax),%esi
41ec62:	50                   	push   %eax
41ec63:	8b 0e                	mov    (%esi),%ecx
41ec65:	ff 15 c4 12 45 00    	call   *0x4512c4
41ec6b:	ff 16                	call   *(%esi)
41ec6d:	8b f8                	mov    %eax,%edi
41ec6f:	85 ff                	test   %edi,%edi
41ec71:	0f 89 c5 f3 00 00    	jns    0x42e03c
41ec77:	81 ff 02 40 00 80    	cmp    $0x80004002,%edi
41ec7d:	75 05                	jne    0x41ec84
41ec7f:	bf 02 10 04 80       	mov    $0x80041002,%edi
41ec84:	8b 45 f8             	mov    -0x8(%ebp),%eax
41ec87:	50                   	push   %eax
41ec88:	8b 08                	mov    (%eax),%ecx
41ec8a:	8b 71 08             	mov    0x8(%ecx),%esi
41ec8d:	8b ce                	mov    %esi,%ecx
41ec8f:	ff 15 c4 12 45 00    	call   *0x4512c4
41ec95:	ff d6                	call   *%esi
41ec97:	8b c7                	mov    %edi,%eax
41ec99:	5f                   	pop    %edi
41ec9a:	5e                   	pop    %esi
41ec9b:	5b                   	pop    %ebx
41ec9c:	c9                   	leave
41ec9d:	c2 0c 00             	ret    $0xc
41eca0:	8b ff                	mov    %edi,%edi
41eca2:	55                   	push   %ebp
41eca3:	8b ec                	mov    %esp,%ebp
41eca5:	53                   	push   %ebx
41eca6:	56                   	push   %esi
41eca7:	57                   	push   %edi
41eca8:	a1 00 f0 44 00       	mov    0x44f000,%eax
41ecad:	bb 00 f0 44 00       	mov    $0x44f000,%ebx
41ecb2:	8b 7d 08             	mov    0x8(%ebp),%edi
41ecb5:	3b c3                	cmp    %ebx,%eax
41ecb7:	74 0a                	je     0x41ecc3
41ecb9:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
41ecbd:	0f 85 05 f4 00 00    	jne    0x42e0c8
41ecc3:	ff 75 18             	push   0x18(%ebp)
41ecc6:	ff 75 14             	push   0x14(%ebp)
41ecc9:	ff 75 10             	push   0x10(%ebp)
41eccc:	ff 75 0c             	push   0xc(%ebp)
41eccf:	57                   	push   %edi
41ecd0:	e8 2b e3 ff ff       	call   0x41d000
41ecd5:	8b 4f 6c             	mov    0x6c(%edi),%ecx
41ecd8:	8b f0                	mov    %eax,%esi
41ecda:	85 c9                	test   %ecx,%ecx
41ecdc:	74 50                	je     0x41ed2e
41ecde:	f7 45 0c ff e0 ff ff 	testl  $0xffffe0ff,0xc(%ebp)
41ece5:	75 47                	jne    0x41ed2e
41ece7:	ff 75 18             	push   0x18(%ebp)
41ecea:	8b 81 34 01 00 00    	mov    0x134(%ecx),%eax
41ecf0:	ff 75 14             	push   0x14(%ebp)
41ecf3:	ff 75 10             	push   0x10(%ebp)
41ecf6:	ff 77 68             	push   0x68(%edi)
41ecf9:	ff 77 64             	push   0x64(%edi)
41ecfc:	ff 77 60             	push   0x60(%edi)
41ecff:	ff 77 5c             	push   0x5c(%edi)
41ed02:	ff b1 44 01 00 00    	push   0x144(%ecx)
41ed08:	ff b1 38 01 00 00    	push   0x138(%ecx)
41ed0e:	ff b1 3c 01 00 00    	push   0x13c(%ecx)
41ed14:	ff 70 38             	push   0x38(%eax)
41ed17:	ff b1 40 01 00 00    	push   0x140(%ecx)
41ed1d:	6a 01                	push   $0x1
41ed1f:	ff 35 f8 09 45 00    	push   0x4509f8
41ed25:	ff 15 24 10 45 00    	call   *0x451024
41ed2b:	83 c4 38             	add    $0x38,%esp
41ed2e:	85 f6                	test   %esi,%esi
41ed30:	0f 88 bc f3 00 00    	js     0x42e0f2
41ed36:	a1 00 f0 44 00       	mov    0x44f000,%eax
41ed3b:	3b c3                	cmp    %ebx,%eax
41ed3d:	74 0a                	je     0x41ed49
41ed3f:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
41ed43:	0f 85 bd f3 00 00    	jne    0x42e106
41ed49:	5f                   	pop    %edi
41ed4a:	8b c6                	mov    %esi,%eax
41ed4c:	5e                   	pop    %esi
41ed4d:	5b                   	pop    %ebx
41ed4e:	5d                   	pop    %ebp
41ed4f:	c2 14 00             	ret    $0x14
41ed52:	8b ff                	mov    %edi,%edi
41ed54:	55                   	push   %ebp
41ed55:	8b ec                	mov    %esp,%ebp
41ed57:	83 ec 0c             	sub    $0xc,%esp
41ed5a:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
41ed5e:	8d 45 f8             	lea    -0x8(%ebp),%eax
41ed61:	53                   	push   %ebx
41ed62:	56                   	push   %esi
41ed63:	57                   	push   %edi
41ed64:	8b f9                	mov    %ecx,%edi
41ed66:	89 55 f4             	mov    %edx,-0xc(%ebp)
41ed69:	50                   	push   %eax
41ed6a:	57                   	push   %edi
41ed6b:	ff 15 5c 30 45 00    	call   *0x45305c
41ed71:	8b d8                	mov    %eax,%ebx
41ed73:	85 db                	test   %ebx,%ebx
41ed75:	78 42                	js     0x41edb9
41ed77:	85 ff                	test   %edi,%edi
41ed79:	74 0a                	je     0x41ed85
41ed7b:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41ed7f:	0f 85 a4 f3 00 00    	jne    0x42e129
41ed85:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41ed88:	85 c9                	test   %ecx,%ecx
41ed8a:	74 10                	je     0x41ed9c
41ed8c:	8b 01                	mov    (%ecx),%eax
41ed8e:	51                   	push   %ecx
41ed8f:	8b 70 08             	mov    0x8(%eax),%esi
41ed92:	8b ce                	mov    %esi,%ecx
41ed94:	ff 15 c4 12 45 00    	call   *0x4512c4
41ed9a:	ff d6                	call   *%esi
41ed9c:	85 ff                	test   %edi,%edi
41ed9e:	74 10                	je     0x41edb0
41eda0:	8b 07                	mov    (%edi),%eax
41eda2:	57                   	push   %edi
41eda3:	8b 70 08             	mov    0x8(%eax),%esi
41eda6:	8b ce                	mov    %esi,%ecx
41eda8:	ff 15 c4 12 45 00    	call   *0x4512c4
41edae:	ff d6                	call   *%esi
41edb0:	5f                   	pop    %edi
41edb1:	5e                   	pop    %esi
41edb2:	8b c3                	mov    %ebx,%eax
41edb4:	5b                   	pop    %ebx
41edb5:	c9                   	leave
41edb6:	c2 04 00             	ret    $0x4
41edb9:	bb 06 10 04 80       	mov    $0x80041006,%ebx
41edbe:	eb dc                	jmp    0x41ed9c
41edc0:	8b ff                	mov    %edi,%edi
41edc2:	57                   	push   %edi
41edc3:	8b 79 10             	mov    0x10(%ecx),%edi
41edc6:	85 ff                	test   %edi,%edi
41edc8:	74 13                	je     0x41eddd
41edca:	8b 07                	mov    (%edi),%eax
41edcc:	56                   	push   %esi
41edcd:	8b 70 0c             	mov    0xc(%eax),%esi
41edd0:	8b ce                	mov    %esi,%ecx
41edd2:	ff 15 c4 12 45 00    	call   *0x4512c4
41edd8:	8b cf                	mov    %edi,%ecx
41edda:	ff d6                	call   *%esi
41eddc:	5e                   	pop    %esi
41eddd:	5f                   	pop    %edi