45692b:	5b                   	pop    %ebx
45692c:	5d                   	pop    %ebp
45692d:	c3                   	ret
45692e:	8b c0                	mov    %eax,%eax
456930:	55                   	push   %ebp
456931:	8b ec                	mov    %esp,%ebp
456933:	83 c4 dc             	add    $0xffffffdc,%esp
456936:	53                   	push   %ebx
456937:	56                   	push   %esi
456938:	8b da                	mov    %edx,%ebx
45693a:	89 45 fc             	mov    %eax,-0x4(%ebp)
45693d:	8b 55 fc             	mov    -0x4(%ebp),%edx
456940:	80 ba e2 02 00 00 00 	cmpb   $0x0,0x2e2(%edx)
456947:	0f 84 88 00 00 00    	je     0x4569d5
45694d:	8b 43 08             	mov    0x8(%ebx),%eax
456950:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
456954:	75 06                	jne    0x45695c
456956:	83 78 0c 00          	cmpl   $0x0,0xc(%eax)
45695a:	74 79                	je     0x4569d5
45695c:	8b 73 08             	mov    0x8(%ebx),%esi
45695f:	8b 45 fc             	mov    -0x4(%ebp),%eax
456962:	e8 d9 df ff ff       	call   0x454940
456967:	8d 55 ec             	lea    -0x14(%ebp),%edx
45696a:	e8 99 17 00 00       	call   0x458108
45696f:	55                   	push   %ebp
456970:	8b 45 fc             	mov    -0x4(%ebp),%eax
456973:	e8 c8 df ff ff       	call   0x454940
456978:	8d 55 dc             	lea    -0x24(%ebp),%edx
45697b:	e8 88 17 00 00       	call   0x458108
456980:	8b 4d dc             	mov    -0x24(%ebp),%ecx
456983:	8d 46 08             	lea    0x8(%esi),%eax
456986:	8b 55 ec             	mov    -0x14(%ebp),%edx
456989:	e8 76 ff ff ff       	call   0x456904
45698e:	59                   	pop    %ecx
45698f:	55                   	push   %ebp
456990:	8b 45 fc             	mov    -0x4(%ebp),%eax
456993:	e8 a8 df ff ff       	call   0x454940
456998:	8d 55 dc             	lea    -0x24(%ebp),%edx
45699b:	e8 68 17 00 00       	call   0x458108
4569a0:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4569a3:	8d 46 0c             	lea    0xc(%esi),%eax
4569a6:	8b 55 f0             	mov    -0x10(%ebp),%edx
4569a9:	e8 56 ff ff ff       	call   0x456904
4569ae:	59                   	pop    %ecx
4569af:	55                   	push   %ebp
4569b0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4569b3:	8b 48 48             	mov    0x48(%eax),%ecx
4569b6:	8d 46 08             	lea    0x8(%esi),%eax
4569b9:	8b 55 f4             	mov    -0xc(%ebp),%edx
4569bc:	e8 43 ff ff ff       	call   0x456904
4569c1:	59                   	pop    %ecx
4569c2:	55                   	push   %ebp
4569c3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4569c6:	8b 48 4c             	mov    0x4c(%eax),%ecx
4569c9:	8d 46 0c             	lea    0xc(%esi),%eax
4569cc:	8b 55 f8             	mov    -0x8(%ebp),%edx
4569cf:	e8 30 ff ff ff       	call   0x456904
4569d4:	59                   	pop    %ecx
4569d5:	8b d3                	mov    %ebx,%edx
4569d7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4569da:	e8 19 90 fe ff       	call   0x43f9f8
4569df:	5e                   	pop    %esi
4569e0:	5b                   	pop    %ebx
4569e1:	8b e5                	mov    %ebp,%esp
4569e3:	5d                   	pop    %ebp
4569e4:	c3                   	ret
4569e5:	8d 40 00             	lea    0x0(%eax),%eax
4569e8:	53                   	push   %ebx
4569e9:	56                   	push   %esi
4569ea:	8b d8                	mov    %eax,%ebx
4569ec:	f6 43 1c 02          	testb  $0x2,0x1c(%ebx)
4569f0:	75 0e                	jne    0x456a00
4569f2:	8b c3                	mov    %ebx,%eax
4569f4:	66 be b3 ff          	mov    $0xffb3,%si
4569f8:	e8 6b ca fa ff       	call   0x403468
4569fd:	5e                   	pop    %esi
4569fe:	5b                   	pop    %ebx
4569ff:	c3                   	ret
456a00:	80 8b f4 02 00 00 20 	orb    $0x20,0x2f4(%ebx)
456a07:	5e                   	pop    %esi
456a08:	5b                   	pop    %ebx
456a09:	c3                   	ret
456a0a:	8b c0                	mov    %eax,%eax
456a0c:	53                   	push   %ebx
456a0d:	56                   	push   %esi
456a0e:	8b d8                	mov    %eax,%ebx
456a10:	f6 43 1c 02          	testb  $0x2,0x1c(%ebx)
456a14:	75 0e                	jne    0x456a24
456a16:	8b c3                	mov    %ebx,%eax
456a18:	66 be b1 ff          	mov    $0xffb1,%si
456a1c:	e8 47 ca fa ff       	call   0x403468
456a21:	5e                   	pop    %esi
456a22:	5b                   	pop    %ebx
456a23:	c3                   	ret
456a24:	80 a3 f4 02 00 00 df 	andb   $0xdf,0x2f4(%ebx)
456a2b:	5e                   	pop    %esi
456a2c:	5b                   	pop    %ebx
456a2d:	c3                   	ret
456a2e:	8b c0                	mov    %eax,%eax
456a30:	53                   	push   %ebx
456a31:	56                   	push   %esi
456a32:	8b f2                	mov    %edx,%esi
456a34:	8b d8                	mov    %eax,%ebx
456a36:	6a 12                	push   $0x12
456a38:	e8 ab fb fa ff       	call   0x4065e8
456a3d:	66 85 c0             	test   %ax,%ax
456a40:	7c 7c                	jl     0x456abe
456a42:	66 8b 46 04          	mov    0x4(%esi),%ax
456a46:	66 83 e8 09          	sub    $0x9,%ax
456a4a:	74 0b                	je     0x456a57
456a4c:	83 c0 e4             	add    $0xffffffe4,%eax
456a4f:	66 83 e8 04          	sub    $0x4,%ax
456a53:	72 34                	jb     0x456a89
456a55:	eb 67                	jmp    0x456abe
456a57:	6a 11                	push   $0x11
456a59:	e8 8a fb fa ff       	call   0x4065e8
456a5e:	66 85 c0             	test   %ax,%ax
456a61:	7c 5b                	jl     0x456abe
456a63:	6a 01                	push   $0x1
456a65:	6a 10                	push   $0x10
456a67:	e8 7c fb fa ff       	call   0x4065e8
456a6c:	66 85 c0             	test   %ax,%ax
456a6f:	0f 9d c1             	setge  %cl
456a72:	8b 93 20 02 00 00    	mov    0x220(%ebx),%edx
456a78:	8b c3                	mov    %ebx,%eax
456a7a:	e8 11 af fe ff       	call   0x441990
456a7f:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
456a86:	5e                   	pop    %esi
456a87:	5b                   	pop    %ebx
456a88:	c3                   	ret
456a89:	8b 83 20 02 00 00    	mov    0x220(%ebx),%eax
456a8f:	85 c0                	test   %eax,%eax
456a91:	74 34                	je     0x456ac7
456a93:	6a 00                	push   $0x0
456a95:	66 8b 56 04          	mov    0x4(%esi),%dx
456a99:	66 83 fa 27          	cmp    $0x27,%dx
456a9d:	74 0a                	je     0x456aa9
456a9f:	66 83 fa 28          	cmp    $0x28,%dx
456aa3:	74 04                	je     0x456aa9
456aa5:	33 c9                	xor    %ecx,%ecx
456aa7:	eb 02                	jmp    0x456aab
456aa9:	b1 01                	mov    $0x1,%cl
456aab:	8b 50 30             	mov    0x30(%eax),%edx
456aae:	92                   	xchg   %eax,%edx
456aaf:	e8 dc ae fe ff       	call   0x441990
456ab4:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
456abb:	5e                   	pop    %esi
456abc:	5b                   	pop    %ebx
456abd:	c3                   	ret
456abe:	8b d6                	mov    %esi,%edx
456ac0:	8b c3                	mov    %ebx,%eax
456ac2:	e8 11 9e fe ff       	call   0x4408d8
456ac7:	5e                   	pop    %esi
456ac8:	5b                   	pop    %ebx
456ac9:	c3                   	ret
456aca:	8b c0                	mov    %eax,%eax
456acc:	55                   	push   %ebp
456acd:	8b ec                	mov    %esp,%ebp
456acf:	83 c4 f8             	add    $0xfffffff8,%esp
456ad2:	53                   	push   %ebx
456ad3:	56                   	push   %esi
456ad4:	57                   	push   %edi
456ad5:	33 c9                	xor    %ecx,%ecx
456ad7:	89 4d f8             	mov    %ecx,-0x8(%ebp)
456ada:	89 45 fc             	mov    %eax,-0x4(%ebp)
456add:	33 c0                	xor    %eax,%eax
456adf:	55                   	push   %ebp
456ae0:	68 36 70 45 00       	push   $0x457036
456ae5:	64 ff 30             	push   %fs:(%eax)
456ae8:	64 89 20             	mov    %esp,%fs:(%eax)
456aeb:	8b 45 fc             	mov    -0x4(%ebp),%eax
456aee:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
456af2:	75 2d                	jne    0x456b21
456af4:	8b 45 fc             	mov    -0x4(%ebp),%eax
456af7:	f6 80 f4 02 00 00 04 	testb  $0x4,0x2f4(%eax)
456afe:	74 21                	je     0x456b21
456b00:	8d 55 f8             	lea    -0x8(%ebp),%edx
456b03:	a1 80 80 46 00       	mov    0x468080,%eax
456b08:	e8 13 f0 fa ff       	call   0x405b20
456b0d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
456b10:	b2 01                	mov    $0x1,%dl
456b12:	a1 c4 19 41 00       	mov    0x4119c4,%eax
456b17:	e8 44 4c fb ff       	call   0x40b760
456b1c:	e8 d7 ce fa ff       	call   0x4039f8
456b21:	a1 b8 9b 46 00       	mov    0x469bb8,%eax
456b26:	e8 b5 46 00 00       	call   0x45b1e0
456b2b:	8b 45 fc             	mov    -0x4(%ebp),%eax
456b2e:	80 88 f4 02 00 00 04 	orb    $0x4,0x2f4(%eax)
456b35:	33 d2                	xor    %edx,%edx
456b37:	55                   	push   %ebp
456b38:	68 19 70 45 00       	push   $0x457019
456b3d:	64 ff 32             	push   %fs:(%edx)
456b40:	64 89 22             	mov    %esp,%fs:(%edx)
456b43:	8b 45 fc             	mov    -0x4(%ebp),%eax
456b46:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
456b4a:	0f 85 b1 04 00 00    	jne    0x457001
456b50:	8b 45 fc             	mov    -0x4(%ebp),%eax
456b53:	80 b8 a6 01 00 00 00 	cmpb   $0x0,0x1a6(%eax)
456b5a:	0f 84 9c 03 00 00    	je     0x456efc
456b60:	33 c0                	xor    %eax,%eax
456b62:	55                   	push   %ebp
456b63:	68 84 6b 45 00       	push   $0x456b84
456b68:	64 ff 30             	push   %fs:(%eax)
456b6b:	64 89 20             	mov    %esp,%fs:(%eax)
456b6e:	8b 45 fc             	mov    -0x4(%ebp),%eax
456b71:	66 be ae ff          	mov    $0xffae,%si
456b75:	e8 ee c8 fa ff       	call   0x403468
456b7a:	33 c0                	xor    %eax,%eax
456b7c:	5a                   	pop    %edx
456b7d:	59                   	pop    %ecx
456b7e:	59                   	pop    %ecx
456b7f:	64 89 10             	mov    %edx,%fs:(%eax)
456b82:	eb 17                	jmp    0x456b9b
456b84:	e9 83 cb fa ff       	jmp    0x40370c
456b89:	8b 55 fc             	mov    -0x4(%ebp),%edx
456b8c:	a1 b8 9b 46 00       	mov    0x469bb8,%eax
456b91:	e8 5e 3d 00 00       	call   0x45a8f4
456b96:	e8 d9 ce fa ff       	call   0x403a74
456b9b:	8b 45 fc             	mov    -0x4(%ebp),%eax
456b9e:	80 b8 30 02 00 00 04 	cmpb   $0x4,0x230(%eax)
456ba5:	74 20                	je     0x456bc7
456ba7:	8b 45 fc             	mov    -0x4(%ebp),%eax
456baa:	80 b8 30 02 00 00 06 	cmpb   $0x6,0x230(%eax)
456bb1:	0f 85 c7 00 00 00    	jne    0x456c7e
456bb7:	8b 45 fc             	mov    -0x4(%ebp),%eax
456bba:	80 b8 2f 02 00 00 01 	cmpb   $0x1,0x22f(%eax)
456bc1:	0f 85 b7 00 00 00    	jne    0x456c7e
456bc7:	8b 45 fc             	mov    -0x4(%ebp),%eax
456bca:	80 b8 2f 02 00 00 01 	cmpb   $0x1,0x22f(%eax)
456bd1:	75 38                	jne    0x456c0b
456bd3:	a1 b8 9b 46 00       	mov    0x469bb8,%eax
456bd8:	8b 40 44             	mov    0x44(%eax),%eax
456bdb:	e8 a4 3a fe ff       	call   0x43a684
456be0:	8b d8                	mov    %eax,%ebx
456be2:	8b 45 fc             	mov    -0x4(%ebp),%eax
456be5:	2b 58 48             	sub    0x48(%eax),%ebx
456be8:	d1 fb                	sar    $1,%ebx
456bea:	79 03                	jns    0x456bef
456bec:	83 d3 00             	adc    $0x0,%ebx
456bef:	a1 b8 9b 46 00       	mov    0x469bb8,%eax
456bf4:	8b 40 44             	mov    0x44(%eax),%eax
456bf7:	e8 cc 3a fe ff       	call   0x43a6c8
456bfc:	8b 55 fc             	mov    -0x4(%ebp),%edx
456bff:	2b 42 4c             	sub    0x4c(%edx),%eax
456c02:	d1 f8                	sar    $1,%eax
456c04:	79 35                	jns    0x456c3b
456c06:	83 d0 00             	adc    $0x0,%eax
456c09:	eb 30                	jmp    0x456c3b
456c0b:	a1 bc 9b 46 00       	mov    0x469bbc,%eax
456c10:	e8 4f 17 00 00       	call   0x458364
456c15:	8b d8                	mov    %eax,%ebx
456c17:	8b 45 fc             	mov    -0x4(%ebp),%eax
456c1a:	2b 58 48             	sub    0x48(%eax),%ebx
456c1d:	d1 fb                	sar    $1,%ebx
456c1f:	79 03                	jns    0x456c24
456c21:	83 d3 00             	adc    $0x0,%ebx
456c24:	a1 bc 9b 46 00       	mov    0x469bbc,%eax
456c29:	e8 2a 17 00 00       	call   0x458358
456c2e:	8b 55 fc             	mov    -0x4(%ebp),%edx
456c31:	2b 42 4c             	sub    0x4c(%edx),%eax
456c34:	d1 f8                	sar    $1,%eax
456c36:	79 03                	jns    0x456c3b
456c38:	83 d0 00             	adc    $0x0,%eax
456c3b:	85 db                	test   %ebx,%ebx
456c3d:	7d 02                	jge    0x456c41
456c3f:	33 db                	xor    %ebx,%ebx
456c41:	85 c0                	test   %eax,%eax
456c43:	7d 02                	jge    0x456c47
456c45:	33 c0                	xor    %eax,%eax
456c47:	8b 55 fc             	mov    -0x4(%ebp),%edx
456c4a:	8b 52 48             	mov    0x48(%edx),%edx
456c4d:	52                   	push   %edx
456c4e:	8b 55 fc             	mov    -0x4(%ebp),%edx
456c51:	8b 52 4c             	mov    0x4c(%edx),%edx
456c54:	52                   	push   %edx
456c55:	8b c8                	mov    %eax,%ecx
456c57:	8b d3                	mov    %ebx,%edx
456c59:	8b 45 fc             	mov    -0x4(%ebp),%eax
456c5c:	8b 18                	mov    (%eax),%ebx
456c5e:	ff 93 84 00 00 00    	call   *0x84(%ebx)
456c64:	8b 45 fc             	mov    -0x4(%ebp),%eax
456c67:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
456c6b:	0f 84 97 01 00 00    	je     0x456e08
456c71:	8b 45 fc             	mov    -0x4(%ebp),%eax
456c74:	e8 af e2 ff ff       	call   0x454f28
456c79:	e9 8a 01 00 00       	jmp    0x456e08
456c7e:	8b 45 fc             	mov    -0x4(%ebp),%eax
456c81:	8a 80 30 02 00 00    	mov    0x230(%eax),%al
456c87:	8b d0                	mov    %eax,%edx
456c89:	80 c2 fa             	add    $0xfa,%dl
456c8c:	80 ea 02             	sub    $0x2,%dl
456c8f:	0f 83 ce 00 00 00    	jae    0x456d63
456c95:	a1 b8 9b 46 00       	mov    0x469bb8,%eax
456c9a:	8b 70 44             	mov    0x44(%eax),%esi
456c9d:	8b 45 fc             	mov    -0x4(%ebp),%eax
456ca0:	80 b8 30 02 00 00 07 	cmpb   $0x7,0x230(%eax)
456ca7:	75 1b                	jne    0x456cc4
456ca9:	8b 45 fc             	mov    -0x4(%ebp),%eax
456cac:	8b 40 04             	mov    0x4(%eax),%eax
456caf:	8b 15 14 02 45 00    	mov    0x450214,%edx
456cb5:	e8 3e c7 fa ff       	call   0x4033f8
456cba:	84 c0                	test   %al,%al
456cbc:	74 06                	je     0x456cc4
456cbe:	8b 45 fc             	mov    -0x4(%ebp),%eax
456cc1:	8b 70 04             	mov    0x4(%eax),%esi
456cc4:	85 f6                	test   %esi,%esi
456cc6:	74 28                	je     0x456cf0
456cc8:	8b 5e 48             	mov    0x48(%esi),%ebx
456ccb:	8b 45 fc             	mov    -0x4(%ebp),%eax
456cce:	2b 58 48             	sub    0x48(%eax),%ebx
456cd1:	d1 fb                	sar    $1,%ebx
456cd3:	79 03                	jns    0x456cd8
456cd5:	83 d3 00             	adc    $0x0,%ebx
456cd8:	03 5e 40             	add    0x40(%esi),%ebx
456cdb:	8b 46 4c             	mov    0x4c(%esi),%eax
456cde:	8b 55 fc             	mov    -0x4(%ebp),%edx
456ce1:	2b 42 4c             	sub    0x4c(%edx),%eax
456ce4:	d1 f8                	sar    $1,%eax
456ce6:	79 03                	jns    0x456ceb
456ce8:	83 d0 00             	adc    $0x0,%eax
456ceb:	03 46 44             	add    0x44(%esi),%eax
456cee:	eb 30                	jmp    0x456d20
456cf0:	a1 bc 9b 46 00       	mov    0x469bbc,%eax
456cf5:	e8 6a 16 00 00       	call   0x458364
456cfa:	8b d8                	mov    %eax,%ebx
456cfc:	8b 45 fc             	mov    -0x4(%ebp),%eax
456cff:	2b 58 48             	sub    0x48(%eax),%ebx
456d02:	d1 fb                	sar    $1,%ebx
456d04:	79 03                	jns    0x456d09
456d06:	83 d3 00             	adc    $0x0,%ebx
456d09:	a1 bc 9b 46 00       	mov    0x469bbc,%eax
456d0e:	e8 45 16 00 00       	call   0x458358
456d13:	8b 55 fc             	mov    -0x4(%ebp),%edx
456d16:	2b 42 4c             	sub    0x4c(%edx),%eax
456d19:	d1 f8                	sar    $1,%eax
456d1b:	79 03                	jns    0x456d20
456d1d:	83 d0 00             	adc    $0x0,%eax
456d20:	85 db                	test   %ebx,%ebx
456d22:	7d 02                	jge    0x456d26
456d24:	33 db                	xor    %ebx,%ebx
456d26:	85 c0                	test   %eax,%eax
456d28:	7d 02                	jge    0x456d2c
456d2a:	33 c0                	xor    %eax,%eax
456d2c:	8b 55 fc             	mov    -0x4(%ebp),%edx
456d2f:	8b 52 48             	mov    0x48(%edx),%edx
456d32:	52                   	push   %edx
456d33:	8b 55 fc             	mov    -0x4(%ebp),%edx
456d36:	8b 52 4c             	mov    0x4c(%edx),%edx
456d39:	52                   	push   %edx
456d3a:	8b c8                	mov    %eax,%ecx