421d87:	e8 9f fd ff ff       	call   0x421b2b
421d8c:	88 46 18             	mov    %al,0x18(%esi)
421d8f:	3c 08                	cmp    $0x8,%al
421d91:	0f 83 0b 02 00 00    	jae    0x421fa2
421d97:	0f b6 c0             	movzbl %al,%eax
421d9a:	83 f8 07             	cmp    $0x7,%eax
421d9d:	77 98                	ja     0x421d37
421d9f:	ff 24 85 b6 1f 42 00 	jmp    *0x421fb6(,%eax,4)
421da6:	8b 7e 08             	mov    0x8(%esi),%edi
421da9:	88 5e 38             	mov    %bl,0x38(%esi)
421dac:	38 5f 14             	cmp    %bl,0x14(%edi)
421daf:	75 07                	jne    0x421db8
421db1:	8b cf                	mov    %edi,%ecx
421db3:	e8 c8 d8 ff ff       	call   0x41f680
421db8:	8a 46 2d             	mov    0x2d(%esi),%al
421dbb:	88 45 ff             	mov    %al,-0x1(%ebp)
421dbe:	0f be c0             	movsbl %al,%eax
421dc1:	68 00 80 00 00       	push   $0x8000
421dc6:	50                   	push   %eax
421dc7:	8b 47 0c             	mov    0xc(%edi),%eax
421dca:	ff 30                	push   (%eax)
421dcc:	e8 25 d9 ff ff       	call   0x41f6f6
421dd1:	83 c4 0c             	add    $0xc,%esp
421dd4:	8d be 48 04 00 00    	lea    0x448(%esi),%edi
421dda:	85 c0                	test   %eax,%eax
421ddc:	74 76                	je     0x421e54
421dde:	8b 0f                	mov    (%edi),%ecx
421de0:	8b 41 08             	mov    0x8(%ecx),%eax
421de3:	3b 41 04             	cmp    0x4(%ecx),%eax
421de6:	75 10                	jne    0x421df8
421de8:	38 59 0c             	cmp    %bl,0xc(%ecx)
421deb:	74 05                	je     0x421df2
421ded:	ff 46 14             	incl   0x14(%esi)
421df0:	eb 19                	jmp    0x421e0b
421df2:	83 4e 14 ff          	orl    $0xffffffff,0x14(%esi)
421df6:	eb 13                	jmp    0x421e0b
421df8:	ff 46 14             	incl   0x14(%esi)
421dfb:	ff 41 08             	incl   0x8(%ecx)
421dfe:	8b 07                	mov    (%edi),%eax
421e00:	8a 4d ff             	mov    -0x1(%ebp),%cl
421e03:	8b 00                	mov    (%eax),%eax
421e05:	88 08                	mov    %cl,(%eax)
421e07:	8b 07                	mov    (%edi),%eax
421e09:	ff 00                	incl   (%eax)
421e0b:	8b 46 0c             	mov    0xc(%esi),%eax
421e0e:	8a 08                	mov    (%eax),%cl
421e10:	40                   	inc    %eax
421e11:	89 46 0c             	mov    %eax,0xc(%esi)
421e14:	88 4e 2d             	mov    %cl,0x2d(%esi)
421e17:	84 c9                	test   %cl,%cl
421e19:	75 3c                	jne    0x421e57
421e1b:	8b 46 08             	mov    0x8(%esi),%eax
421e1e:	6a 16                	push   $0x16
421e20:	5f                   	pop    %edi
421e21:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
421e25:	89 78 18             	mov    %edi,0x18(%eax)
421e28:	ff 76 08             	push   0x8(%esi)
421e2b:	53                   	push   %ebx
421e2c:	53                   	push   %ebx
421e2d:	53                   	push   %ebx
421e2e:	53                   	push   %ebx
421e2f:	53                   	push   %ebx
421e30:	e8 d1 da ff ff       	call   0x41f906
421e35:	8b 46 08             	mov    0x8(%esi),%eax
421e38:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
421e3c:	89 78 18             	mov    %edi,0x18(%eax)
421e3f:	ff 76 08             	push   0x8(%esi)
421e42:	53                   	push   %ebx
421e43:	53                   	push   %ebx
421e44:	53                   	push   %ebx
421e45:	53                   	push   %ebx
421e46:	53                   	push   %ebx
421e47:	e8 ba da ff ff       	call   0x41f906
421e4c:	83 c4 30             	add    $0x30,%esp
421e4f:	e9 e3 fe ff ff       	jmp    0x421d37
421e54:	8a 4d ff             	mov    -0x1(%ebp),%cl
421e57:	8b 17                	mov    (%edi),%edx
421e59:	8b 42 08             	mov    0x8(%edx),%eax
421e5c:	3b 42 04             	cmp    0x4(%edx),%eax
421e5f:	75 16                	jne    0x421e77
421e61:	38 5a 0c             	cmp    %bl,0xc(%edx)
421e64:	74 08                	je     0x421e6e
421e66:	ff 46 14             	incl   0x14(%esi)
421e69:	e9 ee 00 00 00       	jmp    0x421f5c
421e6e:	83 4e 14 ff          	orl    $0xffffffff,0x14(%esi)
421e72:	e9 e5 00 00 00       	jmp    0x421f5c
421e77:	ff 46 14             	incl   0x14(%esi)
421e7a:	ff 42 08             	incl   0x8(%edx)
421e7d:	8b 07                	mov    (%edi),%eax
421e7f:	8b 00                	mov    (%eax),%eax
421e81:	88 08                	mov    %cl,(%eax)
421e83:	8b 07                	mov    (%edi),%eax
421e85:	ff 00                	incl   (%eax)
421e87:	e9 d0 00 00 00       	jmp    0x421f5c
421e8c:	83 4e 24 ff          	orl    $0xffffffff,0x24(%esi)
421e90:	89 5e 20             	mov    %ebx,0x20(%esi)
421e93:	88 5e 2c             	mov    %bl,0x2c(%esi)
421e96:	89 5e 1c             	mov    %ebx,0x1c(%esi)
421e99:	89 5e 28             	mov    %ebx,0x28(%esi)
421e9c:	88 5e 38             	mov    %bl,0x38(%esi)
421e9f:	e9 b8 00 00 00       	jmp    0x421f5c
421ea4:	0f be 45 ff          	movsbl -0x1(%ebp),%eax
421ea8:	83 e8 20             	sub    $0x20,%eax
421eab:	74 37                	je     0x421ee4
421ead:	83 e8 03             	sub    $0x3,%eax
421eb0:	74 2c                	je     0x421ede
421eb2:	83 e8 08             	sub    $0x8,%eax
421eb5:	74 21                	je     0x421ed8
421eb7:	48                   	dec    %eax
421eb8:	83 e8 01             	sub    $0x1,%eax
421ebb:	74 12                	je     0x421ecf
421ebd:	83 e8 03             	sub    $0x3,%eax
421ec0:	0f 85 96 00 00 00    	jne    0x421f5c
421ec6:	83 4e 1c 08          	orl    $0x8,0x1c(%esi)
421eca:	e9 8d 00 00 00       	jmp    0x421f5c
421ecf:	83 4e 1c 04          	orl    $0x4,0x1c(%esi)
421ed3:	e9 84 00 00 00       	jmp    0x421f5c
421ed8:	83 4e 1c 01          	orl    $0x1,0x1c(%esi)
421edc:	eb 7e                	jmp    0x421f5c
421ede:	83 4e 1c 20          	orl    $0x20,0x1c(%esi)
421ee2:	eb 78                	jmp    0x421f5c
421ee4:	83 4e 1c 02          	orl    $0x2,0x1c(%esi)
421ee8:	eb 72                	jmp    0x421f5c
421eea:	80 7d ff 2a          	cmpb   $0x2a,-0x1(%ebp)
421eee:	74 0d                	je     0x421efd
421ef0:	8d 46 20             	lea    0x20(%esi),%eax
421ef3:	50                   	push   %eax
421ef4:	8b ce                	mov    %esi,%ecx
421ef6:	e8 05 fd ff ff       	call   0x421c00
421efb:	eb 57                	jmp    0x421f54
421efd:	8b 4e 10             	mov    0x10(%esi),%ecx
421f00:	8d 41 04             	lea    0x4(%ecx),%eax
421f03:	89 46 10             	mov    %eax,0x10(%esi)
421f06:	8b 01                	mov    (%ecx),%eax
421f08:	89 46 20             	mov    %eax,0x20(%esi)
421f0b:	85 c0                	test   %eax,%eax
421f0d:	79 09                	jns    0x421f18
421f0f:	83 4e 1c 04          	orl    $0x4,0x1c(%esi)
421f13:	f7 d8                	neg    %eax
421f15:	89 46 20             	mov    %eax,0x20(%esi)
421f18:	b0 01                	mov    $0x1,%al
421f1a:	eb 38                	jmp    0x421f54
421f1c:	89 5e 24             	mov    %ebx,0x24(%esi)
421f1f:	eb 3b                	jmp    0x421f5c
421f21:	80 7d ff 2a          	cmpb   $0x2a,-0x1(%ebp)
421f25:	74 05                	je     0x421f2c
421f27:	8d 46 24             	lea    0x24(%esi),%eax
421f2a:	eb c7                	jmp    0x421ef3
421f2c:	8b 4e 10             	mov    0x10(%esi),%ecx
421f2f:	8d 41 04             	lea    0x4(%ecx),%eax
421f32:	89 46 10             	mov    %eax,0x10(%esi)
421f35:	8b 01                	mov    (%ecx),%eax
421f37:	89 46 24             	mov    %eax,0x24(%esi)
421f3a:	85 c0                	test   %eax,%eax
421f3c:	79 da                	jns    0x421f18
421f3e:	83 4e 24 ff          	orl    $0xffffffff,0x24(%esi)
421f42:	eb d4                	jmp    0x421f18
421f44:	8b ce                	mov    %esi,%ecx
421f46:	e8 cb 02 00 00       	call   0x422216
421f4b:	eb 07                	jmp    0x421f54
421f4d:	8b ce                	mov    %esi,%ecx
421f4f:	e8 a5 05 00 00       	call   0x4224f9
421f54:	84 c0                	test   %al,%al
421f56:	0f 84 db fd ff ff    	je     0x421d37
421f5c:	8b 46 0c             	mov    0xc(%esi),%eax
421f5f:	8a 10                	mov    (%eax),%dl
421f61:	8d 48 01             	lea    0x1(%eax),%ecx
421f64:	89 4e 0c             	mov    %ecx,0xc(%esi)
421f67:	88 55 ff             	mov    %dl,-0x1(%ebp)
421f6a:	88 56 2d             	mov    %dl,0x2d(%esi)
421f6d:	88 55 fb             	mov    %dl,-0x5(%ebp)
421f70:	84 d2                	test   %dl,%dl
421f72:	0f 85 fc fd ff ff    	jne    0x421d74
421f78:	8a 46 18             	mov    0x18(%esi),%al
421f7b:	84 c0                	test   %al,%al
421f7d:	74 08                	je     0x421f87
421f7f:	3c 07                	cmp    $0x7,%al
421f81:	0f 85 92 fd ff ff    	jne    0x421d19
421f87:	ff 86 50 04 00 00    	incl   0x450(%esi)
421f8d:	83 be 50 04 00 00 02 	cmpl   $0x2,0x450(%esi)
421f94:	0f 85 bd fd ff ff    	jne    0x421d57
421f9a:	8b 46 14             	mov    0x14(%esi),%eax
421f9d:	e9 98 fd ff ff       	jmp    0x421d3a
421fa2:	8b 4e 08             	mov    0x8(%esi),%ecx
421fa5:	c6 41 1c 01          	movb   $0x1,0x1c(%ecx)
421fa9:	c7 41 18 16 00 00 00 	movl   $0x16,0x18(%ecx)
421fb0:	e9 72 fd ff ff       	jmp    0x421d27
421fb5:	90                   	nop
421fb6:	a6                   	cmpsb  %es:(%edi),%ds:(%esi)
421fb7:	1d 42 00 8c 1e       	sbb    $0x1e8c0042,%eax
421fbc:	42                   	inc    %edx
421fbd:	00 a4 1e 42 00 ea 1e 	add    %ah,0x1eea0042(%esi,%ebx,1)
421fc4:	42                   	inc    %edx
421fc5:	00 1c 1f             	add    %bl,(%edi,%ebx,1)
421fc8:	42                   	inc    %edx
421fc9:	00 21                	add    %ah,(%ecx)
421fcb:	1f                   	pop    %ds
421fcc:	42                   	inc    %edx
421fcd:	00 44 1f 42          	add    %al,0x42(%edi,%ebx,1)
421fd1:	00 4d 1f             	add    %cl,0x1f(%ebp)
421fd4:	42                   	inc    %edx
421fd5:	00 8b ff 53 56 8b    	add    %cl,-0x74a9ac01(%ebx)
421fdb:	f1                   	int1
421fdc:	57                   	push   %edi
421fdd:	ff 76 08             	push   0x8(%esi)
421fe0:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
421fe6:	e8 16 14 00 00       	call   0x423401
421feb:	84 c0                	test   %al,%al
421fed:	74 27                	je     0x422016
421fef:	8b 56 0c             	mov    0xc(%esi),%edx
421ff2:	85 d2                	test   %edx,%edx
421ff4:	75 27                	jne    0x42201d
421ff6:	33 db                	xor    %ebx,%ebx
421ff8:	8b 46 08             	mov    0x8(%esi),%eax
421ffb:	c7 40 18 16 00 00 00 	movl   $0x16,0x18(%eax)
422002:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
422006:	ff 76 08             	push   0x8(%esi)
422009:	53                   	push   %ebx
42200a:	53                   	push   %ebx
42200b:	53                   	push   %ebx
42200c:	53                   	push   %ebx
42200d:	53                   	push   %ebx
42200e:	e8 f3 d8 ff ff       	call   0x41f906
422013:	83 c4 18             	add    $0x18,%esp
422016:	83 c8 ff             	or     $0xffffffff,%eax
422019:	5f                   	pop    %edi
42201a:	5e                   	pop    %esi
42201b:	5b                   	pop    %ebx
42201c:	c3                   	ret
42201d:	8b 86 50 04 00 00    	mov    0x450(%esi),%eax
422023:	40                   	inc    %eax
422024:	89 86 50 04 00 00    	mov    %eax,0x450(%esi)
42202a:	83 f8 02             	cmp    $0x2,%eax
42202d:	0f 84 a6 01 00 00    	je     0x4221d9
422033:	33 db                	xor    %ebx,%ebx
422035:	89 5e 34             	mov    %ebx,0x34(%esi)
422038:	88 5e 18             	mov    %bl,0x18(%esi)
42203b:	0f b7 02             	movzwl (%edx),%eax
42203e:	83 c2 02             	add    $0x2,%edx
422041:	89 56 0c             	mov    %edx,0xc(%esi)
422044:	66 89 46 2e          	mov    %ax,0x2e(%esi)
422048:	66 85 c0             	test   %ax,%ax
42204b:	0f 84 66 01 00 00    	je     0x4221b7
422051:	8b f8                	mov    %eax,%edi
422053:	8b 46 14             	mov    0x14(%esi),%eax
422056:	85 c0                	test   %eax,%eax
422058:	0f 88 59 01 00 00    	js     0x4221b7
42205e:	0f b6 46 18          	movzbl 0x18(%esi),%eax
422062:	8b ce                	mov    %esi,%ecx
422064:	50                   	push   %eax
422065:	57                   	push   %edi
422066:	e8 fd fa ff ff       	call   0x421b68
42206b:	88 46 18             	mov    %al,0x18(%esi)
42206e:	3c 08                	cmp    $0x8,%al
422070:	0f 83 6b 01 00 00    	jae    0x4221e1
422076:	0f b6 c0             	movzbl %al,%eax
422079:	83 f8 07             	cmp    $0x7,%eax
42207c:	77 98                	ja     0x422016
42207e:	ff 24 85 f6 21 42 00 	jmp    *0x4221f6(,%eax,4)
422085:	c6 46 38 01          	movb   $0x1,0x38(%esi)
422089:	8d 96 48 04 00 00    	lea    0x448(%esi),%edx
42208f:	8b 0a                	mov    (%edx),%ecx
422091:	8b 41 08             	mov    0x8(%ecx),%eax
422094:	3b 41 04             	cmp    0x4(%ecx),%eax
422097:	75 16                	jne    0x4220af
422099:	38 59 0c             	cmp    %bl,0xc(%ecx)
42209c:	74 08                	je     0x4220a6
42209e:	ff 46 14             	incl   0x14(%esi)
4220a1:	e9 f6 00 00 00       	jmp    0x42219c
4220a6:	83 4e 14 ff          	orl    $0xffffffff,0x14(%esi)
4220aa:	e9 ed 00 00 00       	jmp    0x42219c
4220af:	ff 46 14             	incl   0x14(%esi)
4220b2:	ff 41 08             	incl   0x8(%ecx)
4220b5:	8b 02                	mov    (%edx),%eax
4220b7:	8b 00                	mov    (%eax),%eax
4220b9:	66 89 38             	mov    %di,(%eax)
4220bc:	8b 02                	mov    (%edx),%eax
4220be:	83 00 02             	addl   $0x2,(%eax)
4220c1:	e9 d6 00 00 00       	jmp    0x42219c
4220c6:	83 4e 24 ff          	orl    $0xffffffff,0x24(%esi)
4220ca:	89 5e 20             	mov    %ebx,0x20(%esi)
4220cd:	88 5e 2c             	mov    %bl,0x2c(%esi)
4220d0:	89 5e 1c             	mov    %ebx,0x1c(%esi)
4220d3:	89 5e 28             	mov    %ebx,0x28(%esi)
4220d6:	88 5e 38             	mov    %bl,0x38(%esi)
4220d9:	e9 be 00 00 00       	jmp    0x42219c
4220de:	0f b7 c7             	movzwl %di,%eax
4220e1:	83 e8 20             	sub    $0x20,%eax
4220e4:	74 3a                	je     0x422120
4220e6:	83 e8 03             	sub    $0x3,%eax
4220e9:	74 2f                	je     0x42211a
4220eb:	83 e8 08             	sub    $0x8,%eax
4220ee:	74 21                	je     0x422111
4220f0:	48                   	dec    %eax
4220f1:	83 e8 01             	sub    $0x1,%eax
4220f4:	74 12                	je     0x422108
4220f6:	83 e8 03             	sub    $0x3,%eax
4220f9:	0f 85 9d 00 00 00    	jne    0x42219c
4220ff:	83 4e 1c 08          	orl    $0x8,0x1c(%esi)
422103:	e9 94 00 00 00       	jmp    0x42219c
422108:	83 4e 1c 04          	orl    $0x4,0x1c(%esi)
42210c:	e9 8b 00 00 00       	jmp    0x42219c
422111:	83 4e 1c 01          	orl    $0x1,0x1c(%esi)
422115:	e9 82 00 00 00       	jmp    0x42219c
42211a:	83 4e 1c 20          	orl    $0x20,0x1c(%esi)
42211e:	eb 7c                	jmp    0x42219c
422120:	83 4e 1c 02          	orl    $0x2,0x1c(%esi)
422124:	eb 76                	jmp    0x42219c
422126:	6a 2a                	push   $0x2a
422128:	58                   	pop    %eax
422129:	66 3b f8             	cmp    %ax,%di
42212c:	74 0d                	je     0x42213b
42212e:	8d 46 20             	lea    0x20(%esi),%eax
422131:	50                   	push   %eax
422132:	8b ce                	mov    %esi,%ecx
422134:	e8 3f fb ff ff       	call   0x421c78
422139:	eb 59                	jmp    0x422194
42213b:	8b 4e 10             	mov    0x10(%esi),%ecx
42213e:	8d 41 04             	lea    0x4(%ecx),%eax
422141:	89 46 10             	mov    %eax,0x10(%esi)
422144:	8b 01                	mov    (%ecx),%eax
422146:	89 46 20             	mov    %eax,0x20(%esi)
422149:	85 c0                	test   %eax,%eax
42214b:	79 09                	jns    0x422156
42214d:	83 4e 1c 04          	orl    $0x4,0x1c(%esi)
422151:	f7 d8                	neg    %eax
422153:	89 46 20             	mov    %eax,0x20(%esi)
422156:	b0 01                	mov    $0x1,%al
422158:	eb 3a                	jmp    0x422194
42215a:	89 5e 24             	mov    %ebx,0x24(%esi)
42215d:	eb 3d                	jmp    0x42219c
42215f:	6a 2a                	push   $0x2a
422161:	58                   	pop    %eax
422162:	66 3b f8             	cmp    %ax,%di
422165:	74 05                	je     0x42216c
422167:	8d 46 24             	lea    0x24(%esi),%eax
42216a:	eb c5                	jmp    0x422131
42216c:	8b 4e 10             	mov    0x10(%esi),%ecx
42216f:	8d 41 04             	lea    0x4(%ecx),%eax
422172:	89 46 10             	mov    %eax,0x10(%esi)
422175:	8b 01                	mov    (%ecx),%eax
422177:	89 46 24             	mov    %eax,0x24(%esi)
42217a:	85 c0                	test   %eax,%eax
42217c:	79 d8                	jns    0x422156
42217e:	83 4e 24 ff          	orl    $0xffffffff,0x24(%esi)
422182:	eb d2                	jmp    0x422156
422184:	8b ce                	mov    %esi,%ecx
422186:	e8 e4 01 00 00       	call   0x42236f
42218b:	eb 07                	jmp    0x422194
42218d:	8b ce                	mov    %esi,%ecx