421e3a:	79 2e                	jns    0x421e6a
421e3c:	8b 0d 00 b0 42 00    	mov    0x42b000,%ecx
421e42:	81 f9 00 b0 42 00    	cmp    $0x42b000,%ecx
421e48:	74 19                	je     0x421e63
421e4a:	f6 41 1c 01          	testb  $0x1,0x1c(%ecx)
421e4e:	74 13                	je     0x421e63
421e50:	ff 71 14             	push   0x14(%ecx)
421e53:	ba 1c 50 40 00       	mov    $0x40501c,%edx
421e58:	ff 71 10             	push   0x10(%ecx)
421e5b:	6a 12                	push   $0x12
421e5d:	59                   	pop    %ecx
421e5e:	e8 4d 55 fe ff       	call   0x4073b0
421e63:	8b c6                	mov    %esi,%eax
421e65:	e9 ee 01 00 00       	jmp    0x422058
421e6a:	33 db                	xor    %ebx,%ebx
421e6c:	89 9d c0 fd ff ff    	mov    %ebx,-0x240(%ebp)
421e72:	89 9d c8 fd ff ff    	mov    %ebx,-0x238(%ebp)
421e78:	89 9d c4 fd ff ff    	mov    %ebx,-0x23c(%ebp)
421e7e:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
421e84:	89 5d fc             	mov    %ebx,-0x4(%ebp)
421e87:	50                   	push   %eax
421e88:	8d 8d c0 fd ff ff    	lea    -0x240(%ebp),%ecx
421e8e:	e8 25 a2 fe ff       	call   0x40c0b8
421e93:	8b f0                	mov    %eax,%esi
421e95:	85 f6                	test   %esi,%esi
421e97:	79 33                	jns    0x421ecc
421e99:	a1 00 b0 42 00       	mov    0x42b000,%eax
421e9e:	43                   	inc    %ebx
421e9f:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
421ea4:	0f 84 73 01 00 00    	je     0x42201d
421eaa:	84 58 1c             	test   %bl,0x1c(%eax)
421ead:	0f 84 6a 01 00 00    	je     0x42201d
421eb3:	56                   	push   %esi
421eb4:	ff 70 14             	push   0x14(%eax)
421eb7:	ba 1c 50 40 00       	mov    $0x40501c,%edx
421ebc:	ff 70 10             	push   0x10(%eax)
421ebf:	6a 13                	push   $0x13
421ec1:	59                   	pop    %ecx
421ec2:	e8 07 55 fe ff       	call   0x4073ce
421ec7:	e9 51 01 00 00       	jmp    0x42201d
421ecc:	8b 85 c8 fd ff ff    	mov    -0x238(%ebp),%eax
421ed2:	8b bd c0 fd ff ff    	mov    -0x240(%ebp),%edi
421ed8:	8d 48 fc             	lea    -0x4(%eax),%ecx
421edb:	3b c1                	cmp    %ecx,%eax
421edd:	76 0c                	jbe    0x421eeb
421edf:	33 c0                	xor    %eax,%eax
421ee1:	89 8d c8 fd ff ff    	mov    %ecx,-0x238(%ebp)
421ee7:	66 89 04 4f          	mov    %ax,(%edi,%ecx,2)
421eeb:	89 9d cc fd ff ff    	mov    %ebx,-0x234(%ebp)
421ef1:	89 9d d4 fd ff ff    	mov    %ebx,-0x22c(%ebp)
421ef7:	89 9d d0 fd ff ff    	mov    %ebx,-0x230(%ebp)
421efd:	33 db                	xor    %ebx,%ebx
421eff:	8d 8d cc fd ff ff    	lea    -0x234(%ebp),%ecx
421f05:	43                   	inc    %ebx
421f06:	57                   	push   %edi
421f07:	88 5d fc             	mov    %bl,-0x4(%ebp)
421f0a:	e8 a9 a1 fe ff       	call   0x40c0b8
421f0f:	8b f0                	mov    %eax,%esi
421f11:	85 f6                	test   %esi,%esi
421f13:	79 32                	jns    0x421f47
421f15:	a1 00 b0 42 00       	mov    0x42b000,%eax
421f1a:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
421f1f:	0f 84 ec 00 00 00    	je     0x422011
421f25:	84 58 1c             	test   %bl,0x1c(%eax)
421f28:	0f 84 e3 00 00 00    	je     0x422011
421f2e:	56                   	push   %esi
421f2f:	ff 70 14             	push   0x14(%eax)
421f32:	ba 1c 50 40 00       	mov    $0x40501c,%edx
421f37:	ff 70 10             	push   0x10(%eax)
421f3a:	6a 15                	push   $0x15
421f3c:	59                   	pop    %ecx
421f3d:	e8 8c 54 fe ff       	call   0x4073ce
421f42:	e9 ca 00 00 00       	jmp    0x422011
421f47:	8b 85 d4 fd ff ff    	mov    -0x22c(%ebp),%eax
421f4d:	8d 48 fe             	lea    -0x2(%eax),%ecx
421f50:	3b c1                	cmp    %ecx,%eax
421f52:	76 12                	jbe    0x421f66
421f54:	8b 85 cc fd ff ff    	mov    -0x234(%ebp),%eax
421f5a:	33 d2                	xor    %edx,%edx
421f5c:	89 8d d4 fd ff ff    	mov    %ecx,-0x22c(%ebp)
421f62:	66 89 14 48          	mov    %dx,(%eax,%ecx,2)
421f66:	ff b5 dc fd ff ff    	push   -0x224(%ebp)
421f6c:	53                   	push   %ebx
421f6d:	68 5c 4f 40 00       	push   $0x404f5c
421f72:	57                   	push   %edi
421f73:	e8 e8 00 00 00       	call   0x422060
421f78:	85 c0                	test   %eax,%eax
421f7a:	78 1f                	js     0x421f9b
421f7c:	8b 8d d8 fd ff ff    	mov    -0x228(%ebp),%ecx
421f82:	33 c0                	xor    %eax,%eax
421f84:	38 41 17             	cmp    %al,0x17(%ecx)
421f87:	0f 94 c0             	sete   %al
421f8a:	8d 04 45 01 00 00 00 	lea    0x1(,%eax,2),%eax
421f91:	89 85 d8 fd ff ff    	mov    %eax,-0x228(%ebp)
421f97:	8b f0                	mov    %eax,%esi
421f99:	eb 03                	jmp    0x421f9e
421f9b:	6a 02                	push   $0x2
421f9d:	5e                   	pop    %esi
421f9e:	ff b5 dc fd ff ff    	push   -0x224(%ebp)
421fa4:	53                   	push   %ebx
421fa5:	68 68 4f 40 00       	push   $0x404f68
421faa:	57                   	push   %edi
421fab:	e8 b0 00 00 00       	call   0x422060
421fb0:	ff b5 dc fd ff ff    	push   -0x224(%ebp)
421fb6:	53                   	push   %ebx
421fb7:	68 74 4f 40 00       	push   $0x404f74
421fbc:	57                   	push   %edi
421fbd:	e8 9e 00 00 00       	call   0x422060
421fc2:	8b bd dc fd ff ff    	mov    -0x224(%ebp),%edi
421fc8:	57                   	push   %edi
421fc9:	6a 00                	push   $0x0
421fcb:	68 80 4f 40 00       	push   $0x404f80
421fd0:	ff b5 cc fd ff ff    	push   -0x234(%ebp)
421fd6:	e8 85 00 00 00       	call   0x422060
421fdb:	56                   	push   %esi
421fdc:	ff 37                	push   (%edi)
421fde:	ff 15 cc c4 42 00    	call   *0x42c4cc
421fe4:	85 c0                	test   %eax,%eax
421fe6:	79 27                	jns    0x42200f
421fe8:	8b 0d 00 b0 42 00    	mov    0x42b000,%ecx
421fee:	81 f9 00 b0 42 00    	cmp    $0x42b000,%ecx
421ff4:	74 19                	je     0x42200f
421ff6:	84 59 1c             	test   %bl,0x1c(%ecx)
421ff9:	74 14                	je     0x42200f
421ffb:	50                   	push   %eax
421ffc:	ff 71 14             	push   0x14(%ecx)
421fff:	ba 1c 50 40 00       	mov    $0x40501c,%edx
422004:	ff 71 10             	push   0x10(%ecx)
422007:	6a 17                	push   $0x17
422009:	59                   	pop    %ecx
42200a:	e8 bf 53 fe ff       	call   0x4073ce
42200f:	33 f6                	xor    %esi,%esi
422011:	53                   	push   %ebx
422012:	8d 8d cc fd ff ff    	lea    -0x234(%ebp),%ecx
422018:	e8 08 ac fe ff       	call   0x40cc25
42201d:	53                   	push   %ebx
42201e:	8d 8d c0 fd ff ff    	lea    -0x240(%ebp),%ecx
422024:	e8 fc ab fe ff       	call   0x40cc25
422029:	e9 35 fe ff ff       	jmp    0x421e63
42202e:	a1 00 b0 42 00       	mov    0x42b000,%eax
422033:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
422038:	74 19                	je     0x422053
42203a:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
42203e:	74 13                	je     0x422053
422040:	ff 70 14             	push   0x14(%eax)
422043:	ba 1c 50 40 00       	mov    $0x40501c,%edx
422048:	ff 70 10             	push   0x10(%eax)
42204b:	6a 11                	push   $0x11
42204d:	59                   	pop    %ecx
42204e:	e8 5d 53 fe ff       	call   0x4073b0
422053:	b8 ff ff 00 80       	mov    $0x8000ffff,%eax
422058:	e8 ed 5f 00 00       	call   0x42804a
42205d:	c2 04 00             	ret    $0x4
422060:	6a 0c                	push   $0xc
422062:	b8 7e 88 42 00       	mov    $0x42887e,%eax
422067:	e8 fc 5f 00 00       	call   0x428068
42206c:	33 c0                	xor    %eax,%eax
42206e:	89 45 e8             	mov    %eax,-0x18(%ebp)
422071:	89 45 f0             	mov    %eax,-0x10(%ebp)
422074:	89 45 ec             	mov    %eax,-0x14(%ebp)
422077:	ff 75 0c             	push   0xc(%ebp)
42207a:	89 45 fc             	mov    %eax,-0x4(%ebp)
42207d:	8d 45 e8             	lea    -0x18(%ebp),%eax
422080:	ff 75 08             	push   0x8(%ebp)
422083:	68 0c 50 40 00       	push   $0x40500c
422088:	50                   	push   %eax
422089:	e8 34 a4 fe ff       	call   0x40c4c2
42208e:	8b f0                	mov    %eax,%esi
422090:	83 c4 10             	add    $0x10,%esp
422093:	85 f6                	test   %esi,%esi
422095:	79 28                	jns    0x4220bf
422097:	a1 00 b0 42 00       	mov    0x42b000,%eax
42209c:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
4220a1:	74 5e                	je     0x422101
4220a3:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
4220a7:	74 58                	je     0x422101
4220a9:	56                   	push   %esi
4220aa:	ff 70 14             	push   0x14(%eax)
4220ad:	ba 1c 50 40 00       	mov    $0x40501c,%edx
4220b2:	ff 70 10             	push   0x10(%eax)
4220b5:	6a 18                	push   $0x18
4220b7:	59                   	pop    %ecx
4220b8:	e8 11 53 fe ff       	call   0x4073ce
4220bd:	eb 42                	jmp    0x422101
4220bf:	ff 75 10             	push   0x10(%ebp)
4220c2:	8b 45 14             	mov    0x14(%ebp),%eax
4220c5:	6a 05                	push   $0x5
4220c7:	ff 75 e8             	push   -0x18(%ebp)
4220ca:	ff 30                	push   (%eax)
4220cc:	ff 15 c8 c4 42 00    	call   *0x42c4c8
4220d2:	8b f0                	mov    %eax,%esi
4220d4:	85 f6                	test   %esi,%esi
4220d6:	79 29                	jns    0x422101
4220d8:	a1 00 b0 42 00       	mov    0x42b000,%eax
4220dd:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
4220e2:	74 1d                	je     0x422101
4220e4:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
4220e8:	74 17                	je     0x422101
4220ea:	56                   	push   %esi
4220eb:	ff 75 e8             	push   -0x18(%ebp)
4220ee:	ba 1c 50 40 00       	mov    $0x40501c,%edx
4220f3:	ff 70 14             	push   0x14(%eax)
4220f6:	ff 70 10             	push   0x10(%eax)
4220f9:	6a 19                	push   $0x19
4220fb:	59                   	pop    %ecx
4220fc:	e8 b5 58 fe ff       	call   0x4079b6
422101:	6a 01                	push   $0x1
422103:	8d 4d e8             	lea    -0x18(%ebp),%ecx
422106:	e8 1a ab fe ff       	call   0x40cc25
42210b:	8b c6                	mov    %esi,%eax
42210d:	e8 24 5f 00 00       	call   0x428036
422112:	c2 10 00             	ret    $0x10
422115:	8b ff                	mov    %edi,%edi
422117:	55                   	push   %ebp
422118:	8b ec                	mov    %esp,%ebp
42211a:	81 ec cc 00 00 00    	sub    $0xcc,%esp
422120:	53                   	push   %ebx
422121:	56                   	push   %esi
422122:	57                   	push   %edi
422123:	ff 75 0c             	push   0xc(%ebp)
422126:	8d 85 38 ff ff ff    	lea    -0xc8(%ebp),%eax
42212c:	8b d9                	mov    %ecx,%ebx
42212e:	ff 75 08             	push   0x8(%ebp)
422131:	50                   	push   %eax
422132:	e8 f0 01 00 00       	call   0x422327
422137:	6a 17                	push   $0x17
422139:	59                   	pop    %ecx
42213a:	8b f0                	mov    %eax,%esi
42213c:	8d 7d 98             	lea    -0x68(%ebp),%edi
42213f:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
422141:	80 7d 98 00          	cmpb   $0x0,-0x68(%ebp)
422145:	74 6c                	je     0x4221b3
422147:	8b 75 ec             	mov    -0x14(%ebp),%esi
42214a:	8d 45 f8             	lea    -0x8(%ebp),%eax
42214d:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
422151:	6a 00                	push   $0x0
422153:	6a 04                	push   $0x4
422155:	50                   	push   %eax
422156:	8b 45 b4             	mov    -0x4c(%ebp),%eax
422159:	03 c6                	add    %esi,%eax
42215b:	50                   	push   %eax
42215c:	8b 03                	mov    (%ebx),%eax
42215e:	ff 30                	push   (%eax)
422160:	ff 15 38 c1 42 00    	call   *0x42c138
422166:	85 c0                	test   %eax,%eax
422168:	74 49                	je     0x4221b3
42216a:	8b 4d f8             	mov    -0x8(%ebp),%ecx
42216d:	85 c9                	test   %ecx,%ecx
42216f:	74 0d                	je     0x42217e
422171:	83 f9 04             	cmp    $0x4,%ecx
422174:	76 33                	jbe    0x4221a9
422176:	8d 41 f9             	lea    -0x7(%ecx),%eax
422179:	83 f8 01             	cmp    $0x1,%eax
42217c:	76 2b                	jbe    0x4221a9
42217e:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
422182:	83 f9 05             	cmp    $0x5,%ecx
422185:	75 27                	jne    0x4221ae
422187:	6a 00                	push   $0x0
422189:	6a 01                	push   $0x1
42218b:	8d 45 ff             	lea    -0x1(%ebp),%eax
42218e:	50                   	push   %eax
42218f:	8b 45 c0             	mov    -0x40(%ebp),%eax
422192:	03 c6                	add    %esi,%eax
422194:	50                   	push   %eax
422195:	8b 03                	mov    (%ebx),%eax
422197:	ff 30                	push   (%eax)
422199:	ff 15 38 c1 42 00    	call   *0x42c138
42219f:	85 c0                	test   %eax,%eax
4221a1:	74 0b                	je     0x4221ae
4221a3:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
4221a7:	74 05                	je     0x4221ae
4221a9:	6a 02                	push   $0x2
4221ab:	58                   	pop    %eax
4221ac:	eb 07                	jmp    0x4221b5
4221ae:	33 c0                	xor    %eax,%eax
4221b0:	40                   	inc    %eax
4221b1:	eb 02                	jmp    0x4221b5
4221b3:	33 c0                	xor    %eax,%eax
4221b5:	5f                   	pop    %edi
4221b6:	5e                   	pop    %esi
4221b7:	5b                   	pop    %ebx
4221b8:	c9                   	leave
4221b9:	c2 08 00             	ret    $0x8
4221bc:	8b ff                	mov    %edi,%edi
4221be:	55                   	push   %ebp
4221bf:	8b ec                	mov    %esp,%ebp
4221c1:	81 ec e0 00 00 00    	sub    $0xe0,%esp
4221c7:	53                   	push   %ebx
4221c8:	8b 5d 10             	mov    0x10(%ebp),%ebx
4221cb:	8d 85 24 ff ff ff    	lea    -0xdc(%ebp),%eax
4221d1:	56                   	push   %esi
4221d2:	57                   	push   %edi
4221d3:	ff 75 0c             	push   0xc(%ebp)
4221d6:	8b cb                	mov    %ebx,%ecx
4221d8:	89 55 ec             	mov    %edx,-0x14(%ebp)
4221db:	ff 75 08             	push   0x8(%ebp)
4221de:	50                   	push   %eax
4221df:	e8 43 01 00 00       	call   0x422327
4221e4:	6a 17                	push   $0x17
4221e6:	59                   	pop    %ecx
4221e7:	8b f0                	mov    %eax,%esi
4221e9:	8d 7d 84             	lea    -0x7c(%ebp),%edi
4221ec:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4221ee:	80 7d 84 00          	cmpb   $0x0,-0x7c(%ebp)
4221f2:	0f 84 8a 00 00 00    	je     0x422282
4221f8:	8b 75 90             	mov    -0x70(%ebp),%esi
4221fb:	8d 45 f8             	lea    -0x8(%ebp),%eax
4221fe:	33 ff                	xor    %edi,%edi
422200:	57                   	push   %edi
422201:	6a 04                	push   $0x4
422203:	50                   	push   %eax
422204:	8b 45 c8             	mov    -0x38(%ebp),%eax
422207:	03 c6                	add    %esi,%eax
422209:	89 7d f8             	mov    %edi,-0x8(%ebp)
42220c:	50                   	push   %eax
42220d:	8b 03                	mov    (%ebx),%eax
42220f:	ff 30                	push   (%eax)
422211:	ff 15 38 c1 42 00    	call   *0x42c138
422217:	85 c0                	test   %eax,%eax
422219:	74 67                	je     0x422282
42221b:	39 7d f8             	cmp    %edi,-0x8(%ebp)
42221e:	74 62                	je     0x422282
422220:	57                   	push   %edi
422221:	6a 08                	push   $0x8
422223:	8d 45 f0             	lea    -0x10(%ebp),%eax
422226:	89 7d f0             	mov    %edi,-0x10(%ebp)
422229:	50                   	push   %eax
42222a:	8b 45 bc             	mov    -0x44(%ebp),%eax
42222d:	03 c6                	add    %esi,%eax
42222f:	89 7d f4             	mov    %edi,-0xc(%ebp)
422232:	50                   	push   %eax
422233:	8b 03                	mov    (%ebx),%eax
422235:	ff 30                	push   (%eax)
422237:	ff 15 38 c1 42 00    	call   *0x42c138
42223d:	85 c0                	test   %eax,%eax
42223f:	74 41                	je     0x422282
422241:	8b 45 f4             	mov    -0xc(%ebp),%eax
422244:	33 c9                	xor    %ecx,%ecx
422246:	03 4d f0             	add    -0x10(%ebp),%ecx
422249:	13 c7                	adc    %edi,%eax
42224b:	0b c8                	or     %eax,%ecx
42224d:	74 33                	je     0x422282
42224f:	8b 45 f8             	mov    -0x8(%ebp),%eax
422252:	b9 04 01 00 00       	mov    $0x104,%ecx
422257:	3b c1                	cmp    %ecx,%eax
422259:	72 02                	jb     0x42225d
42225b:	8b c1                	mov    %ecx,%eax
42225d:	57                   	push   %edi
42225e:	8b 7d ec             	mov    -0x14(%ebp),%edi
422261:	8d 34 00             	lea    (%eax,%eax,1),%esi