453d20:	b2 01                	mov    $0x1,%dl
453d22:	e8 39 fb ff ff       	call   0x453860
453d27:	33 c0                	xor    %eax,%eax
453d29:	5a                   	pop    %edx
453d2a:	59                   	pop    %ecx
453d2b:	59                   	pop    %ecx
453d2c:	64 89 10             	mov    %edx,%fs:(%eax)
453d2f:	68 46 3d 45 00       	push   $0x453d46
453d34:	8b 45 fc             	mov    -0x4(%ebp),%eax
453d37:	c6 80 18 02 00 00 00 	movb   $0x0,0x218(%eax)
453d3e:	c3                   	ret
453d3f:	e9 24 fe fa ff       	jmp    0x403b68
453d44:	eb ee                	jmp    0x453d34
453d46:	59                   	pop    %ecx
453d47:	5d                   	pop    %ebp
453d48:	c3                   	ret
453d49:	8d 40 00             	lea    0x0(%eax),%eax
453d4c:	85 d2                	test   %edx,%edx
453d4e:	74 11                	je     0x453d61
453d50:	f6 42 1c 01          	testb  $0x1,0x1c(%edx)
453d54:	75 0b                	jne    0x453d61
453d56:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
453d5a:	75 05                	jne    0x453d61
453d5c:	e8 03 00 00 00       	call   0x453d64
453d61:	c3                   	ret
453d62:	8b c0                	mov    %eax,%eax
453d64:	53                   	push   %ebx
453d65:	56                   	push   %esi
453d66:	57                   	push   %edi
453d67:	55                   	push   %ebp
453d68:	83 c4 e0             	add    $0xffffffe0,%esp
453d6b:	8b f2                	mov    %edx,%esi
453d6d:	8b d8                	mov    %eax,%ebx
453d6f:	8b fc                	mov    %esp,%edi
453d71:	85 f6                	test   %esi,%esi
453d73:	0f 84 34 01 00 00    	je     0x453ead
453d79:	8b d7                	mov    %edi,%edx
453d7b:	8b c6                	mov    %esi,%eax
453d7d:	8b 08                	mov    (%eax),%ecx
453d7f:	ff 51 44             	call   *0x44(%ecx)
453d82:	8b 83 08 02 00 00    	mov    0x208(%ebx),%eax
453d88:	0f b7 40 1a          	movzwl 0x1a(%eax),%eax
453d8c:	29 07                	sub    %eax,(%edi)
453d8e:	01 47 08             	add    %eax,0x8(%edi)
453d91:	8b 83 0c 02 00 00    	mov    0x20c(%ebx),%eax
453d97:	0f b7 40 1a          	movzwl 0x1a(%eax),%eax
453d9b:	29 47 04             	sub    %eax,0x4(%edi)
453d9e:	01 47 0c             	add    %eax,0xc(%edi)
453da1:	8d 4c 24 18          	lea    0x18(%esp),%ecx
453da5:	8b d7                	mov    %edi,%edx
453da7:	8b c6                	mov    %esi,%eax
453da9:	e8 72 7d fe ff       	call   0x43bb20
453dae:	8d 54 24 18          	lea    0x18(%esp),%edx
453db2:	8d 4c 24 10          	lea    0x10(%esp),%ecx
453db6:	8b c3                	mov    %ebx,%eax
453db8:	e8 8f 7d fe ff       	call   0x43bb4c
453dbd:	8b 44 24 10          	mov    0x10(%esp),%eax
453dc1:	89 07                	mov    %eax,(%edi)
453dc3:	8b 44 24 14          	mov    0x14(%esp),%eax
453dc7:	89 47 04             	mov    %eax,0x4(%edi)
453dca:	8d 4c 24 18          	lea    0x18(%esp),%ecx
453dce:	8d 57 08             	lea    0x8(%edi),%edx
453dd1:	8b c6                	mov    %esi,%eax
453dd3:	e8 48 7d fe ff       	call   0x43bb20
453dd8:	8d 54 24 18          	lea    0x18(%esp),%edx
453ddc:	8d 4c 24 10          	lea    0x10(%esp),%ecx
453de0:	8b c3                	mov    %ebx,%eax
453de2:	e8 65 7d fe ff       	call   0x43bb4c
453de7:	8b 44 24 10          	mov    0x10(%esp),%eax
453deb:	89 47 08             	mov    %eax,0x8(%edi)
453dee:	8b 44 24 14          	mov    0x14(%esp),%eax
453df2:	89 47 0c             	mov    %eax,0xc(%edi)
453df5:	8b 37                	mov    (%edi),%esi
453df7:	85 f6                	test   %esi,%esi
453df9:	7d 12                	jge    0x453e0d
453dfb:	8b 83 08 02 00 00    	mov    0x208(%ebx),%eax
453e01:	8b 50 0c             	mov    0xc(%eax),%edx
453e04:	03 d6                	add    %esi,%edx
453e06:	e8 d1 f7 ff ff       	call   0x4535dc
453e0b:	eb 43                	jmp    0x453e50
453e0d:	8b c3                	mov    %ebx,%eax
453e0f:	e8 f8 7b fe ff       	call   0x43ba0c
453e14:	8b 6f 08             	mov    0x8(%edi),%ebp
453e17:	3b c5                	cmp    %ebp,%eax
453e19:	7d 35                	jge    0x453e50
453e1b:	8b c3                	mov    %ebx,%eax
453e1d:	e8 ea 7b fe ff       	call   0x43ba0c
453e22:	2b ee                	sub    %esi,%ebp
453e24:	3b c5                	cmp    %ebp,%eax
453e26:	7d 0c                	jge    0x453e34
453e28:	8b c3                	mov    %ebx,%eax
453e2a:	e8 dd 7b fe ff       	call   0x43ba0c
453e2f:	03 07                	add    (%edi),%eax
453e31:	89 47 08             	mov    %eax,0x8(%edi)
453e34:	8b b3 08 02 00 00    	mov    0x208(%ebx),%esi
453e3a:	8b c3                	mov    %ebx,%eax
453e3c:	e8 cb 7b fe ff       	call   0x43ba0c
453e41:	8b 56 0c             	mov    0xc(%esi),%edx
453e44:	03 57 08             	add    0x8(%edi),%edx
453e47:	2b d0                	sub    %eax,%edx
453e49:	8b c6                	mov    %esi,%eax
453e4b:	e8 8c f7 ff ff       	call   0x4535dc
453e50:	8b 77 04             	mov    0x4(%edi),%esi
453e53:	85 f6                	test   %esi,%esi
453e55:	7d 12                	jge    0x453e69
453e57:	8b 83 0c 02 00 00    	mov    0x20c(%ebx),%eax
453e5d:	8b 50 0c             	mov    0xc(%eax),%edx
453e60:	03 d6                	add    %esi,%edx
453e62:	e8 75 f7 ff ff       	call   0x4535dc
453e67:	eb 44                	jmp    0x453ead
453e69:	8b c3                	mov    %ebx,%eax
453e6b:	e8 e0 7b fe ff       	call   0x43ba50
453e70:	8b 6f 0c             	mov    0xc(%edi),%ebp
453e73:	3b c5                	cmp    %ebp,%eax
453e75:	7d 36                	jge    0x453ead
453e77:	8b c3                	mov    %ebx,%eax
453e79:	e8 d2 7b fe ff       	call   0x43ba50
453e7e:	2b ee                	sub    %esi,%ebp
453e80:	3b c5                	cmp    %ebp,%eax
453e82:	7d 0d                	jge    0x453e91
453e84:	8b c3                	mov    %ebx,%eax
453e86:	e8 c5 7b fe ff       	call   0x43ba50
453e8b:	03 47 04             	add    0x4(%edi),%eax
453e8e:	89 47 0c             	mov    %eax,0xc(%edi)
453e91:	8b b3 0c 02 00 00    	mov    0x20c(%ebx),%esi
453e97:	8b c3                	mov    %ebx,%eax
453e99:	e8 b2 7b fe ff       	call   0x43ba50
453e9e:	8b 56 0c             	mov    0xc(%esi),%edx
453ea1:	03 57 0c             	add    0xc(%edi),%edx
453ea4:	2b d0                	sub    %eax,%edx
453ea6:	8b c6                	mov    %esi,%eax
453ea8:	e8 2f f7 ff ff       	call   0x4535dc
453ead:	83 c4 20             	add    $0x20,%esp
453eb0:	5d                   	pop    %ebp
453eb1:	5f                   	pop    %edi
453eb2:	5e                   	pop    %esi
453eb3:	5b                   	pop    %ebx
453eb4:	c3                   	ret
453eb5:	8d 40 00             	lea    0x0(%eax),%eax
453eb8:	53                   	push   %ebx
453eb9:	56                   	push   %esi
453eba:	57                   	push   %edi
453ebb:	55                   	push   %ebp
453ebc:	8b f9                	mov    %ecx,%edi
453ebe:	8b f2                	mov    %edx,%esi
453ec0:	8b d8                	mov    %eax,%ebx
453ec2:	3b fe                	cmp    %esi,%edi
453ec4:	74 7d                	je     0x453f43
453ec6:	f6 43 1c 01          	testb  $0x1,0x1c(%ebx)
453eca:	75 14                	jne    0x453ee0
453ecc:	8b 83 08 02 00 00    	mov    0x208(%ebx),%eax
453ed2:	c6 40 1e 01          	movb   $0x1,0x1e(%eax)
453ed6:	8b 83 0c 02 00 00    	mov    0x20c(%ebx),%eax
453edc:	c6 40 1e 01          	movb   $0x1,0x1e(%eax)
453ee0:	33 d2                	xor    %edx,%edx
453ee2:	8b 83 08 02 00 00    	mov    0x208(%ebx),%eax
453ee8:	e8 ef f6 ff ff       	call   0x4535dc
453eed:	33 d2                	xor    %edx,%edx
453eef:	8b 83 0c 02 00 00    	mov    0x20c(%ebx),%eax
453ef5:	e8 e2 f6 ff ff       	call   0x4535dc
453efa:	80 bb 10 02 00 00 00 	cmpb   $0x0,0x210(%ebx)
453f01:	75 40                	jne    0x453f43
453f03:	8b ab 08 02 00 00    	mov    0x208(%ebx),%ebp
453f09:	80 7d 1e 00          	cmpb   $0x0,0x1e(%ebp)
453f0d:	74 14                	je     0x453f23
453f0f:	57                   	push   %edi
453f10:	56                   	push   %esi
453f11:	8b 45 10             	mov    0x10(%ebp),%eax
453f14:	50                   	push   %eax
453f15:	e8 be 29 fb ff       	call   0x4068d8
453f1a:	8b d0                	mov    %eax,%edx
453f1c:	8b c5                	mov    %ebp,%eax
453f1e:	e8 09 f8 ff ff       	call   0x45372c
453f23:	8b ab 0c 02 00 00    	mov    0x20c(%ebx),%ebp
453f29:	80 7d 1e 00          	cmpb   $0x0,0x1e(%ebp)
453f2d:	74 14                	je     0x453f43
453f2f:	57                   	push   %edi
453f30:	56                   	push   %esi
453f31:	8b 45 10             	mov    0x10(%ebp),%eax
453f34:	50                   	push   %eax
453f35:	e8 9e 29 fb ff       	call   0x4068d8
453f3a:	8b d0                	mov    %eax,%edx
453f3c:	8b c5                	mov    %ebp,%eax
453f3e:	e8 e9 f7 ff ff       	call   0x45372c
453f43:	8b 83 08 02 00 00    	mov    0x208(%ebx),%eax
453f49:	c6 40 1e 00          	movb   $0x0,0x1e(%eax)
453f4d:	8b 83 0c 02 00 00    	mov    0x20c(%ebx),%eax
453f53:	c6 40 1e 00          	movb   $0x0,0x1e(%eax)
453f57:	5d                   	pop    %ebp
453f58:	5f                   	pop    %edi
453f59:	5e                   	pop    %esi
453f5a:	5b                   	pop    %ebx
453f5b:	c3                   	ret
453f5c:	53                   	push   %ebx
453f5d:	56                   	push   %esi
453f5e:	57                   	push   %edi
453f5f:	8b f9                	mov    %ecx,%edi
453f61:	8b f2                	mov    %edx,%esi
453f63:	8b d8                	mov    %eax,%ebx
453f65:	8b cf                	mov    %edi,%ecx
453f67:	8b d6                	mov    %esi,%edx
453f69:	8b c3                	mov    %ebx,%eax
453f6b:	e8 48 ff ff ff       	call   0x453eb8
453f70:	8b cf                	mov    %edi,%ecx
453f72:	8b d6                	mov    %esi,%edx
453f74:	8b c3                	mov    %ebx,%eax
453f76:	e8 f9 e2 fe ff       	call   0x442274
453f7b:	5f                   	pop    %edi
453f7c:	5e                   	pop    %esi
453f7d:	5b                   	pop    %ebx
453f7e:	c3                   	ret
453f7f:	90                   	nop
453f80:	c3                   	ret
453f81:	8d 40 00             	lea    0x0(%eax),%eax
453f84:	55                   	push   %ebp
453f85:	8b ec                	mov    %esp,%ebp
453f87:	51                   	push   %ecx
453f88:	53                   	push   %ebx
453f89:	8b da                	mov    %edx,%ebx
453f8b:	89 45 fc             	mov    %eax,-0x4(%ebp)
453f8e:	8b 45 fc             	mov    -0x4(%ebp),%eax
453f91:	ff 80 14 02 00 00    	incl   0x214(%eax)
453f97:	33 d2                	xor    %edx,%edx
453f99:	55                   	push   %ebp
453f9a:	68 ee 3f 45 00       	push   $0x453fee
453f9f:	64 ff 32             	push   %fs:(%edx)
453fa2:	64 89 22             	mov    %esp,%fs:(%edx)
453fa5:	8b d3                	mov    %ebx,%edx
453fa7:	8b 45 fc             	mov    -0x4(%ebp),%eax
453faa:	e8 a5 cd fe ff       	call   0x440d54
453faf:	33 c0                	xor    %eax,%eax
453fb1:	8b 53 04             	mov    0x4(%ebx),%edx
453fb4:	83 ea 01             	sub    $0x1,%edx
453fb7:	72 07                	jb     0x453fc0
453fb9:	74 09                	je     0x453fc4
453fbb:	4a                   	dec    %edx
453fbc:	74 0a                	je     0x453fc8
453fbe:	eb 0a                	jmp    0x453fca
453fc0:	33 c0                	xor    %eax,%eax
453fc2:	eb 06                	jmp    0x453fca
453fc4:	b0 01                	mov    $0x1,%al
453fc6:	eb 02                	jmp    0x453fca
453fc8:	b0 02                	mov    $0x2,%al
453fca:	8b d0                	mov    %eax,%edx
453fcc:	8b 45 fc             	mov    -0x4(%ebp),%eax
453fcf:	8b 08                	mov    (%eax),%ecx
453fd1:	ff 91 d0 00 00 00    	call   *0xd0(%ecx)
453fd7:	33 c0                	xor    %eax,%eax
453fd9:	5a                   	pop    %edx
453fda:	59                   	pop    %ecx
453fdb:	59                   	pop    %ecx
453fdc:	64 89 10             	mov    %edx,%fs:(%eax)
453fdf:	68 f5 3f 45 00       	push   $0x453ff5
453fe4:	8b 45 fc             	mov    -0x4(%ebp),%eax
453fe7:	ff 88 14 02 00 00    	decl   0x214(%eax)
453fed:	c3                   	ret
453fee:	e9 75 fb fa ff       	jmp    0x403b68
453ff3:	eb ef                	jmp    0x453fe4
453ff5:	8b 45 fc             	mov    -0x4(%ebp),%eax
453ff8:	c6 80 18 02 00 00 01 	movb   $0x1,0x218(%eax)
453fff:	33 c0                	xor    %eax,%eax
454001:	55                   	push   %ebp
454002:	68 2d 40 45 00       	push   $0x45402d
454007:	64 ff 30             	push   %fs:(%eax)
45400a:	64 89 20             	mov    %esp,%fs:(%eax)
45400d:	8b 45 fc             	mov    -0x4(%ebp),%eax
454010:	e8 bf fb ff ff       	call   0x453bd4
454015:	33 c0                	xor    %eax,%eax
454017:	5a                   	pop    %edx
454018:	59                   	pop    %ecx
454019:	59                   	pop    %ecx
45401a:	64 89 10             	mov    %edx,%fs:(%eax)
45401d:	68 34 40 45 00       	push   $0x454034
454022:	8b 45 fc             	mov    -0x4(%ebp),%eax
454025:	c6 80 18 02 00 00 00 	movb   $0x0,0x218(%eax)
45402c:	c3                   	ret
45402d:	e9 36 fb fa ff       	jmp    0x403b68
454032:	eb ee                	jmp    0x454022
454034:	8b 45 fc             	mov    -0x4(%ebp),%eax
454037:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
45403d:	80 78 1c 00          	cmpb   $0x0,0x1c(%eax)
454041:	75 0f                	jne    0x454052
454043:	8b 45 fc             	mov    -0x4(%ebp),%eax
454046:	8b 80 0c 02 00 00    	mov    0x20c(%eax),%eax
45404c:	80 78 1c 00          	cmpb   $0x0,0x1c(%eax)
454050:	74 08                	je     0x45405a
454052:	8b 45 fc             	mov    -0x4(%ebp),%eax
454055:	e8 fa fb ff ff       	call   0x453c54
45405a:	5b                   	pop    %ebx
45405b:	59                   	pop    %ecx
45405c:	5d                   	pop    %ebp
45405d:	c3                   	ret
45405e:	8b c0                	mov    %eax,%eax
454060:	83 7a 08 00          	cmpl   $0x0,0x8(%edx)
454064:	75 18                	jne    0x45407e
454066:	8b 88 08 02 00 00    	mov    0x208(%eax),%ecx
45406c:	80 79 1c 00          	cmpb   $0x0,0x1c(%ecx)
454070:	74 0c                	je     0x45407e
454072:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
454078:	e8 ef f1 ff ff       	call   0x45326c
45407d:	c3                   	ret
45407e:	e8 69 ca fe ff       	call   0x440aec
454083:	c3                   	ret
454084:	83 7a 08 00          	cmpl   $0x0,0x8(%edx)
454088:	75 18                	jne    0x4540a2
45408a:	8b 88 0c 02 00 00    	mov    0x20c(%eax),%ecx
454090:	80 79 1c 00          	cmpb   $0x0,0x1c(%ecx)
454094:	74 0c                	je     0x4540a2
454096:	8b 80 0c 02 00 00    	mov    0x20c(%eax),%eax
45409c:	e8 cb f1 ff ff       	call   0x45326c
4540a1:	c3                   	ret
4540a2:	e8 65 ca fe ff       	call   0x440b0c
4540a7:	c3                   	ret
4540a8:	53                   	push   %ebx
4540a9:	56                   	push   %esi
4540aa:	57                   	push   %edi
4540ab:	83 c4 f0             	add    $0xfffffff0,%esp
4540ae:	8b f2                	mov    %edx,%esi
4540b0:	8b d8                	mov    %eax,%ebx
4540b2:	8b c3                	mov    %ebx,%eax
4540b4:	e8 97 79 fe ff       	call   0x43ba50
4540b9:	8b 93 0c 02 00 00    	mov    0x20c(%ebx),%edx
4540bf:	8b 52 10             	mov    0x10(%edx),%edx
4540c2:	e8 19 8b fd ff       	call   0x42cbe0
4540c7:	50                   	push   %eax
4540c8:	8d 44 24 04          	lea    0x4(%esp),%eax
4540cc:	50                   	push   %eax
4540cd:	8b c3                	mov    %ebx,%eax
4540cf:	e8 38 79 fe ff       	call   0x43ba0c
4540d4:	8b d0                	mov    %eax,%edx
4540d6:	8b bb 08 02 00 00    	mov    0x208(%ebx),%edi
4540dc:	8b 47 10             	mov    0x10(%edi),%eax
4540df:	e8 fc 8a fd ff       	call   0x42cbe0
4540e4:	8b c8                	mov    %eax,%ecx
4540e6:	8b 83 0c 02 00 00    	mov    0x20c(%ebx),%eax
4540ec:	8b 50 0c             	mov    0xc(%eax),%edx
4540ef:	f7 da                	neg    %edx
4540f1:	8b 47 0c             	mov    0xc(%edi),%eax
4540f4:	f7 d8                	neg    %eax
4540f6:	e8 e1 66 fc ff       	call   0x41a7dc
4540fb:	56                   	push   %esi
4540fc:	8b fe                	mov    %esi,%edi
4540fe:	8d 74 24 04          	lea    0x4(%esp),%esi
454102:	a5                   	movsl  %ds:(%esi),%es:(%edi)
454103:	a5                   	movsl  %ds:(%esi),%es:(%edi)
454104:	a5                   	movsl  %ds:(%esi),%es:(%edi)
454105:	a5                   	movsl  %ds:(%esi),%es:(%edi)
454106:	5e                   	pop    %esi
454107:	8b d6                	mov    %esi,%edx
454109:	8b c3                	mov    %ebx,%eax