450976:	8b c7                	mov    %edi,%eax
450978:	e8 9b 50 00 00       	call   0x455a18
45097d:	84 c0                	test   %al,%al
45097f:	74 39                	je     0x4509ba
450981:	3b 77 6c             	cmp    0x6c(%edi),%esi
450984:	74 34                	je     0x4509ba
450986:	8b c7                	mov    %edi,%eax
450988:	e8 3b 00 00 00       	call   0x4509c8
45098d:	8b de                	mov    %esi,%ebx
45098f:	89 5f 6c             	mov    %ebx,0x6c(%edi)
450992:	8d 45 f4             	lea    -0xc(%ebp),%eax
450995:	50                   	push   %eax
450996:	8b 4d 08             	mov    0x8(%ebp),%ecx
450999:	8b 55 fc             	mov    -0x4(%ebp),%edx
45099c:	8b c3                	mov    %ebx,%eax
45099e:	e8 b1 fd ff ff       	call   0x450754
4509a3:	8b 45 f8             	mov    -0x8(%ebp),%eax
4509a6:	50                   	push   %eax
4509a7:	8b 45 f4             	mov    -0xc(%ebp),%eax
4509aa:	50                   	push   %eax
4509ab:	8b 47 6c             	mov    0x6c(%edi),%eax
4509ae:	50                   	push   %eax
4509af:	e8 b4 f4 fd ff       	call   0x42fe68
4509b4:	83 f8 01             	cmp    $0x1,%eax
4509b7:	1b db                	sbb    %ebx,%ebx
4509b9:	43                   	inc    %ebx
4509ba:	8b c3                	mov    %ebx,%eax
4509bc:	5f                   	pop    %edi
4509bd:	5e                   	pop    %esi
4509be:	5b                   	pop    %ebx
4509bf:	8b e5                	mov    %ebp,%esp
4509c1:	5d                   	pop    %ebp
4509c2:	c2 04 00             	ret    $0x4
4509c5:	8d 40 00             	lea    0x0(%eax),%eax
4509c8:	53                   	push   %ebx
4509c9:	8b d8                	mov    %eax,%ebx
4509cb:	8b c3                	mov    %ebx,%eax
4509cd:	e8 46 50 00 00       	call   0x455a18
4509d2:	84 c0                	test   %al,%al
4509d4:	74 14                	je     0x4509ea
4509d6:	83 7b 6c 00          	cmpl   $0x0,0x6c(%ebx)
4509da:	74 0e                	je     0x4509ea
4509dc:	8b 43 6c             	mov    0x6c(%ebx),%eax
4509df:	50                   	push   %eax
4509e0:	e8 8b f4 fd ff       	call   0x42fe70
4509e5:	33 c0                	xor    %eax,%eax
4509e7:	89 43 6c             	mov    %eax,0x6c(%ebx)
4509ea:	5b                   	pop    %ebx
4509eb:	c3                   	ret
4509ec:	53                   	push   %ebx
4509ed:	56                   	push   %esi
4509ee:	57                   	push   %edi
4509ef:	83 c4 f8             	add    $0xfffffff8,%esp
4509f2:	8b f9                	mov    %ecx,%edi
4509f4:	8b f2                	mov    %edx,%esi
4509f6:	8b d8                	mov    %eax,%ebx
4509f8:	8b c3                	mov    %ebx,%eax
4509fa:	e8 19 50 00 00       	call   0x455a18
4509ff:	84 c0                	test   %al,%al
450a01:	74 24                	je     0x450a27
450a03:	54                   	push   %esp
450a04:	8b cf                	mov    %edi,%ecx
450a06:	8b d6                	mov    %esi,%edx
450a08:	8b 43 6c             	mov    0x6c(%ebx),%eax
450a0b:	e8 44 fd ff ff       	call   0x450754
450a10:	8b 44 24 04          	mov    0x4(%esp),%eax
450a14:	50                   	push   %eax
450a15:	8b 44 24 04          	mov    0x4(%esp),%eax
450a19:	50                   	push   %eax
450a1a:	e8 59 f4 fd ff       	call   0x42fe78
450a1f:	83 f8 01             	cmp    $0x1,%eax
450a22:	1b c0                	sbb    %eax,%eax
450a24:	40                   	inc    %eax
450a25:	eb 02                	jmp    0x450a29
450a27:	33 c0                	xor    %eax,%eax
450a29:	59                   	pop    %ecx
450a2a:	5a                   	pop    %edx
450a2b:	5f                   	pop    %edi
450a2c:	5e                   	pop    %esi
450a2d:	5b                   	pop    %ebx
450a2e:	c3                   	ret
450a2f:	90                   	nop
450a30:	53                   	push   %ebx
450a31:	8b d8                	mov    %eax,%ebx
450a33:	8b c3                	mov    %ebx,%eax
450a35:	e8 de 4f 00 00       	call   0x455a18
450a3a:	84 c0                	test   %al,%al
450a3c:	74 07                	je     0x450a45
450a3e:	6a ff                	push   $0xffffffff
450a40:	e8 43 f4 fd ff       	call   0x42fe88
450a45:	5b                   	pop    %ebx
450a46:	c3                   	ret
450a47:	90                   	nop
450a48:	53                   	push   %ebx
450a49:	8b d8                	mov    %eax,%ebx
450a4b:	8b c3                	mov    %ebx,%eax
450a4d:	e8 c6 4f 00 00       	call   0x455a18
450a52:	84 c0                	test   %al,%al
450a54:	74 07                	je     0x450a5d
450a56:	6a 00                	push   $0x0
450a58:	e8 2b f4 fd ff       	call   0x42fe88
450a5d:	5b                   	pop    %ebx
450a5e:	c3                   	ret
450a5f:	90                   	nop
450a60:	53                   	push   %ebx
450a61:	56                   	push   %esi
450a62:	8b f0                	mov    %eax,%esi
450a64:	8b c6                	mov    %esi,%eax
450a66:	e8 ad 4f 00 00       	call   0x455a18
450a6b:	84 c0                	test   %al,%al
450a6d:	74 2f                	je     0x450a9e
450a6f:	80 7e 6a 00          	cmpb   $0x0,0x6a(%esi)
450a73:	74 29                	je     0x450a9e
450a75:	8b c6                	mov    %esi,%eax
450a77:	e8 4c ff ff ff       	call   0x4509c8
450a7c:	e8 df f3 fd ff       	call   0x42fe60
450a81:	83 f8 01             	cmp    $0x1,%eax
450a84:	1b db                	sbb    %ebx,%ebx
450a86:	43                   	inc    %ebx
450a87:	c6 46 6a 00          	movb   $0x0,0x6a(%esi)
450a8b:	83 ca ff             	or     $0xffffffff,%edx
450a8e:	8b c6                	mov    %esi,%eax
450a90:	e8 2b fe ff ff       	call   0x4508c0
450a95:	6a ff                	push   $0xffffffff
450a97:	e8 6c 73 fb ff       	call   0x407e08
450a9c:	eb 02                	jmp    0x450aa0
450a9e:	33 db                	xor    %ebx,%ebx
450aa0:	8b c3                	mov    %ebx,%eax
450aa2:	5e                   	pop    %esi
450aa3:	5b                   	pop    %ebx
450aa4:	c3                   	ret
450aa5:	8d 40 00             	lea    0x0(%eax),%eax
450aa8:	55                   	push   %ebp
450aa9:	8b ec                	mov    %esp,%ebp
450aab:	51                   	push   %ecx
450aac:	53                   	push   %ebx
450aad:	56                   	push   %esi
450aae:	84 d2                	test   %dl,%dl
450ab0:	74 08                	je     0x450aba
450ab2:	83 c4 f0             	add    $0xfffffff0,%esp
450ab5:	e8 22 33 fb ff       	call   0x403ddc
450aba:	88 55 ff             	mov    %dl,-0x1(%ebp)
450abd:	8b d8                	mov    %eax,%ebx
450abf:	33 d2                	xor    %edx,%edx
450ac1:	8b c3                	mov    %ebx,%eax
450ac3:	e8 50 a2 ff ff       	call   0x44ad18
450ac8:	b2 01                	mov    $0x1,%dl
450aca:	a1 f8 34 44 00       	mov    0x4434f8,%eax
450acf:	e8 00 79 fd ff       	call   0x4283d4
450ad4:	8b f0                	mov    %eax,%esi
450ad6:	89 b3 08 02 00 00    	mov    %esi,0x208(%ebx)
450adc:	8b c6                	mov    %esi,%eax
450ade:	8b d3                	mov    %ebx,%edx
450ae0:	e8 9b 68 ff ff       	call   0x447380
450ae5:	8b c3                	mov    %ebx,%eax
450ae7:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
450aeb:	74 0f                	je     0x450afc
450aed:	e8 42 33 fb ff       	call   0x403e34
450af2:	64 8f 05 00 00 00 00 	pop    %fs:0x0
450af9:	83 c4 0c             	add    $0xc,%esp
450afc:	8b c3                	mov    %ebx,%eax
450afe:	5e                   	pop    %esi
450aff:	5b                   	pop    %ebx
450b00:	59                   	pop    %ecx
450b01:	5d                   	pop    %ebp
450b02:	c3                   	ret
450b03:	90                   	nop
450b04:	53                   	push   %ebx
450b05:	56                   	push   %esi
450b06:	e8 39 33 fb ff       	call   0x403e44
450b0b:	8b da                	mov    %edx,%ebx
450b0d:	8b f0                	mov    %eax,%esi
450b0f:	8b 86 08 02 00 00    	mov    0x208(%esi),%eax
450b15:	e8 5e 2f fb ff       	call   0x403a78
450b1a:	8b d3                	mov    %ebx,%edx
450b1c:	80 e2 fc             	and    $0xfc,%dl
450b1f:	8b c6                	mov    %esi,%eax
450b21:	e8 16 a3 ff ff       	call   0x44ae3c
450b26:	84 db                	test   %bl,%bl
450b28:	7e 07                	jle    0x450b31
450b2a:	8b c6                	mov    %esi,%eax
450b2c:	e8 fb 32 fb ff       	call   0x403e2c
450b31:	5e                   	pop    %esi
450b32:	5b                   	pop    %ebx
450b33:	c3                   	ret
450b34:	53                   	push   %ebx
450b35:	56                   	push   %esi
450b36:	8b f2                	mov    %edx,%esi
450b38:	8b d8                	mov    %eax,%ebx
450b3a:	66 81 4b 54 00 01    	orw    $0x100,0x54(%ebx)
450b40:	8b d6                	mov    %esi,%edx
450b42:	8b c3                	mov    %ebx,%eax
450b44:	e8 03 c6 ff ff       	call   0x44d14c
450b49:	66 81 63 54 ff fe    	andw   $0xfeff,0x54(%ebx)
450b4f:	5e                   	pop    %esi
450b50:	5b                   	pop    %ebx
450b51:	c3                   	ret
450b52:	8b c0                	mov    %eax,%eax
450b54:	55                   	push   %ebp
450b55:	8b ec                	mov    %esp,%ebp
450b57:	51                   	push   %ecx
450b58:	53                   	push   %ebx
450b59:	8b da                	mov    %edx,%ebx
450b5b:	89 45 fc             	mov    %eax,-0x4(%ebp)
450b5e:	8b 45 fc             	mov    -0x4(%ebp),%eax
450b61:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
450b67:	e8 40 7c fd ff       	call   0x4287ac
450b6c:	33 c0                	xor    %eax,%eax
450b6e:	55                   	push   %ebp
450b6f:	68 f2 0b 45 00       	push   $0x450bf2
450b74:	64 ff 30             	push   %fs:(%eax)
450b77:	64 89 20             	mov    %esp,%fs:(%eax)
450b7a:	8b 45 fc             	mov    -0x4(%ebp),%eax
450b7d:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
450b83:	8b d3                	mov    %ebx,%edx
450b85:	e8 b6 81 fd ff       	call   0x428d40
450b8a:	33 c0                	xor    %eax,%eax
450b8c:	55                   	push   %ebp
450b8d:	68 cf 0b 45 00       	push   $0x450bcf
450b92:	64 ff 30             	push   %fs:(%eax)
450b95:	64 89 20             	mov    %esp,%fs:(%eax)
450b98:	8b 45 fc             	mov    -0x4(%ebp),%eax
450b9b:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
450ba1:	e8 f2 67 ff ff       	call   0x447398
450ba6:	8b 45 fc             	mov    -0x4(%ebp),%eax
450ba9:	8b 10                	mov    (%eax),%edx
450bab:	ff 92 c4 00 00 00    	call   *0xc4(%edx)
450bb1:	33 c0                	xor    %eax,%eax
450bb3:	5a                   	pop    %edx
450bb4:	59                   	pop    %ecx
450bb5:	59                   	pop    %ecx
450bb6:	64 89 10             	mov    %edx,%fs:(%eax)
450bb9:	68 d6 0b 45 00       	push   $0x450bd6
450bbe:	8b 45 fc             	mov    -0x4(%ebp),%eax
450bc1:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
450bc7:	33 d2                	xor    %edx,%edx
450bc9:	e8 72 81 fd ff       	call   0x428d40
450bce:	c3                   	ret
450bcf:	e9 38 36 fb ff       	jmp    0x40420c
450bd4:	eb e8                	jmp    0x450bbe
450bd6:	33 c0                	xor    %eax,%eax
450bd8:	5a                   	pop    %edx
450bd9:	59                   	pop    %ecx
450bda:	59                   	pop    %ecx
450bdb:	64 89 10             	mov    %edx,%fs:(%eax)
450bde:	68 f9 0b 45 00       	push   $0x450bf9
450be3:	8b 45 fc             	mov    -0x4(%ebp),%eax
450be6:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
450bec:	e8 a3 7f fd ff       	call   0x428b94
450bf1:	c3                   	ret
450bf2:	e9 15 36 fb ff       	jmp    0x40420c
450bf7:	eb ea                	jmp    0x450be3
450bf9:	5b                   	pop    %ebx
450bfa:	59                   	pop    %ecx
450bfb:	5d                   	pop    %ebp
450bfc:	c3                   	ret
450bfd:	8d 40 00             	lea    0x0(%eax),%eax
450c00:	c3                   	ret
450c01:	8d 40 00             	lea    0x0(%eax),%eax
450c04:	53                   	push   %ebx
450c05:	8b d8                	mov    %eax,%ebx
450c07:	eb 03                	jmp    0x450c0c
450c09:	8b 5b 0c             	mov    0xc(%ebx),%ebx
450c0c:	85 db                	test   %ebx,%ebx
450c0e:	74 0b                	je     0x450c1b
450c10:	8b c3                	mov    %ebx,%eax
450c12:	e8 81 00 00 00       	call   0x450c98
450c17:	84 c0                	test   %al,%al
450c19:	74 ee                	je     0x450c09
450c1b:	8b c3                	mov    %ebx,%eax
450c1d:	5b                   	pop    %ebx
450c1e:	c3                   	ret
450c1f:	90                   	nop
450c20:	8b 50 14             	mov    0x14(%eax),%edx
450c23:	85 d2                	test   %edx,%edx
450c25:	74 06                	je     0x450c2d
450c27:	80 7a 10 00          	cmpb   $0x0,0x10(%edx)
450c2b:	75 11                	jne    0x450c3e
450c2d:	8b 50 1c             	mov    0x1c(%eax),%edx
450c30:	3b 42 64             	cmp    0x64(%edx),%eax
450c33:	75 06                	jne    0x450c3b
450c35:	80 78 10 00          	cmpb   $0x0,0x10(%eax)
450c39:	75 03                	jne    0x450c3e
450c3b:	33 c0                	xor    %eax,%eax
450c3d:	c3                   	ret
450c3e:	b0 01                	mov    $0x1,%al
450c40:	c3                   	ret
450c41:	8d 40 00             	lea    0x0(%eax),%eax
450c44:	84 d2                	test   %dl,%dl
450c46:	74 08                	je     0x450c50
450c48:	83 c4 f0             	add    $0xfffffff0,%esp
450c4b:	e8 8c 31 fb ff       	call   0x403ddc
450c50:	89 48 1c             	mov    %ecx,0x1c(%eax)
450c53:	84 d2                	test   %dl,%dl
450c55:	74 0f                	je     0x450c66
450c57:	e8 d8 31 fb ff       	call   0x403e34
450c5c:	64 8f 05 00 00 00 00 	pop    %fs:0x0
450c63:	83 c4 0c             	add    $0xc,%esp
450c66:	c3                   	ret
450c67:	90                   	nop
450c68:	33 d2                	xor    %edx,%edx
450c6a:	8b 40 08             	mov    0x8(%eax),%eax
450c6d:	85 c0                	test   %eax,%eax
450c6f:	74 08                	je     0x450c79
450c71:	8b 40 0c             	mov    0xc(%eax),%eax
450c74:	42                   	inc    %edx
450c75:	85 c0                	test   %eax,%eax
450c77:	75 f8                	jne    0x450c71
450c79:	8b c2                	mov    %edx,%eax
450c7b:	c3                   	ret
450c7c:	53                   	push   %ebx
450c7d:	33 db                	xor    %ebx,%ebx
450c7f:	e8 0c 06 00 00       	call   0x451290
450c84:	85 c0                	test   %eax,%eax
450c86:	74 0a                	je     0x450c92
450c88:	e8 db 05 00 00       	call   0x451268
450c8d:	43                   	inc    %ebx
450c8e:	85 c0                	test   %eax,%eax
450c90:	75 f6                	jne    0x450c88
450c92:	8b c3                	mov    %ebx,%eax
450c94:	5b                   	pop    %ebx
450c95:	c3                   	ret
450c96:	8b c0                	mov    %eax,%eax
450c98:	53                   	push   %ebx
450c99:	56                   	push   %esi
450c9a:	8b 50 04             	mov    0x4(%eax),%edx
450c9d:	85 d2                	test   %edx,%edx
450c9f:	74 05                	je     0x450ca6
450ca1:	8a 5a 57             	mov    0x57(%edx),%bl
450ca4:	eb 21                	jmp    0x450cc7
450ca6:	b3 01                	mov    $0x1,%bl
450ca8:	e8 e3 05 00 00       	call   0x451290
450cad:	8b f0                	mov    %eax,%esi
450caf:	85 f6                	test   %esi,%esi
450cb1:	74 12                	je     0x450cc5
450cb3:	8b c6                	mov    %esi,%eax
450cb5:	e8 de ff ff ff       	call   0x450c98
450cba:	84 c0                	test   %al,%al
450cbc:	75 09                	jne    0x450cc7
450cbe:	8b 76 0c             	mov    0xc(%esi),%esi
450cc1:	85 f6                	test   %esi,%esi
450cc3:	75 ee                	jne    0x450cb3
450cc5:	33 db                	xor    %ebx,%ebx
450cc7:	8b c3                	mov    %ebx,%eax
450cc9:	5e                   	pop    %esi
450cca:	5b                   	pop    %ebx
450ccb:	c3                   	ret
450ccc:	8b 50 1c             	mov    0x1c(%eax),%edx
450ccf:	3b 42 64             	cmp    0x64(%edx),%eax
450cd2:	75 04                	jne    0x450cd8