4ad079:	8b 2d b4 31 4b 00    	mov    0x4b31b4,%ebp
4ad07f:	6a 04                	push   $0x4
4ad081:	68 00 20 00 00       	push   $0x2000
4ad086:	68 00 00 40 00       	push   $0x400000
4ad08b:	6a 00                	push   $0x0
4ad08d:	ff d5                	call   *%ebp
4ad08f:	8b f8                	mov    %eax,%edi
4ad091:	85 ff                	test   %edi,%edi
4ad093:	0f 84 d5 00 00 00    	je     0x4ad16e
4ad099:	6a 04                	push   $0x4
4ad09b:	bb 00 00 01 00       	mov    $0x10000,%ebx
4ad0a0:	68 00 10 00 00       	push   $0x1000
4ad0a5:	53                   	push   %ebx
4ad0a6:	57                   	push   %edi
4ad0a7:	ff d5                	call   *%ebp
4ad0a9:	85 c0                	test   %eax,%eax
4ad0ab:	0f 84 af 00 00 00    	je     0x4ad160
4ad0b1:	b8 90 a7 50 00       	mov    $0x50a790,%eax
4ad0b6:	3b f0                	cmp    %eax,%esi
4ad0b8:	75 1e                	jne    0x4ad0d8
4ad0ba:	83 3d 90 a7 50 00 00 	cmpl   $0x0,0x50a790
4ad0c1:	75 05                	jne    0x4ad0c8
4ad0c3:	a3 90 a7 50 00       	mov    %eax,0x50a790
4ad0c8:	83 3d 94 a7 50 00 00 	cmpl   $0x0,0x50a794
4ad0cf:	75 1c                	jne    0x4ad0ed
4ad0d1:	a3 94 a7 50 00       	mov    %eax,0x50a794
4ad0d6:	eb 15                	jmp    0x4ad0ed
4ad0d8:	89 06                	mov    %eax,(%esi)
4ad0da:	a1 94 a7 50 00       	mov    0x50a794,%eax
4ad0df:	89 46 04             	mov    %eax,0x4(%esi)
4ad0e2:	89 35 94 a7 50 00    	mov    %esi,0x50a794
4ad0e8:	8b 46 04             	mov    0x4(%esi),%eax
4ad0eb:	89 30                	mov    %esi,(%eax)
4ad0ed:	8d 87 00 00 40 00    	lea    0x400000(%edi),%eax
4ad0f3:	8d 8e 98 00 00 00    	lea    0x98(%esi),%ecx
4ad0f9:	89 46 14             	mov    %eax,0x14(%esi)
4ad0fc:	8d 46 18             	lea    0x18(%esi),%eax
4ad0ff:	89 4e 0c             	mov    %ecx,0xc(%esi)
4ad102:	89 7e 10             	mov    %edi,0x10(%esi)
4ad105:	89 46 08             	mov    %eax,0x8(%esi)
4ad108:	33 ed                	xor    %ebp,%ebp
4ad10a:	b9 f1 00 00 00       	mov    $0xf1,%ecx
4ad10f:	33 d2                	xor    %edx,%edx
4ad111:	83 fd 10             	cmp    $0x10,%ebp
4ad114:	0f 9d c2             	setge  %dl
4ad117:	4a                   	dec    %edx
4ad118:	23 d1                	and    %ecx,%edx
4ad11a:	4a                   	dec    %edx
4ad11b:	45                   	inc    %ebp
4ad11c:	89 10                	mov    %edx,(%eax)
4ad11e:	89 48 04             	mov    %ecx,0x4(%eax)
4ad121:	83 c0 08             	add    $0x8,%eax
4ad124:	81 fd 00 04 00 00    	cmp    $0x400,%ebp
4ad12a:	7c e3                	jl     0x4ad10f
4ad12c:	53                   	push   %ebx
4ad12d:	6a 00                	push   $0x0
4ad12f:	57                   	push   %edi
4ad130:	e8 eb 3d 00 00       	call   0x4b0f20
4ad135:	83 c4 0c             	add    $0xc,%esp
4ad138:	8b 46 10             	mov    0x10(%esi),%eax
4ad13b:	03 c3                	add    %ebx,%eax
4ad13d:	3b f8                	cmp    %eax,%edi
4ad13f:	73 1b                	jae    0x4ad15c
4ad141:	80 8f f8 00 00 00 ff 	orb    $0xff,0xf8(%edi)
4ad148:	8d 47 08             	lea    0x8(%edi),%eax
4ad14b:	89 07                	mov    %eax,(%edi)
4ad14d:	c7 47 04 f0 00 00 00 	movl   $0xf0,0x4(%edi)
4ad154:	81 c7 00 10 00 00    	add    $0x1000,%edi
4ad15a:	eb dc                	jmp    0x4ad138
4ad15c:	8b c6                	mov    %esi,%eax
4ad15e:	eb 27                	jmp    0x4ad187
4ad160:	68 00 80 00 00       	push   $0x8000
4ad165:	6a 00                	push   $0x0
4ad167:	57                   	push   %edi
4ad168:	ff 15 b0 31 4b 00    	call   *0x4b31b0
4ad16e:	81 fe 90 a7 50 00    	cmp    $0x50a790,%esi
4ad174:	74 0f                	je     0x4ad185
4ad176:	56                   	push   %esi
4ad177:	6a 00                	push   $0x0
4ad179:	ff 35 60 df 51 00    	push   0x51df60
4ad17f:	ff 15 90 31 4b 00    	call   *0x4b3190
4ad185:	33 c0                	xor    %eax,%eax
4ad187:	5f                   	pop    %edi
4ad188:	5e                   	pop    %esi
4ad189:	5d                   	pop    %ebp
4ad18a:	5b                   	pop    %ebx
4ad18b:	c3                   	ret
4ad18c:	56                   	push   %esi
4ad18d:	8b 74 24 08          	mov    0x8(%esp),%esi
4ad191:	68 00 80 00 00       	push   $0x8000
4ad196:	6a 00                	push   $0x0
4ad198:	ff 76 10             	push   0x10(%esi)
4ad19b:	ff 15 b0 31 4b 00    	call   *0x4b31b0
4ad1a1:	39 35 b0 c7 50 00    	cmp    %esi,0x50c7b0
4ad1a7:	75 08                	jne    0x4ad1b1
4ad1a9:	8b 46 04             	mov    0x4(%esi),%eax
4ad1ac:	a3 b0 c7 50 00       	mov    %eax,0x50c7b0
4ad1b1:	81 fe 90 a7 50 00    	cmp    $0x50a790,%esi
4ad1b7:	74 20                	je     0x4ad1d9
4ad1b9:	8b 46 04             	mov    0x4(%esi),%eax
4ad1bc:	8b 0e                	mov    (%esi),%ecx
4ad1be:	56                   	push   %esi
4ad1bf:	6a 00                	push   $0x0
4ad1c1:	89 08                	mov    %ecx,(%eax)
4ad1c3:	8b 06                	mov    (%esi),%eax
4ad1c5:	8b 4e 04             	mov    0x4(%esi),%ecx
4ad1c8:	89 48 04             	mov    %ecx,0x4(%eax)
4ad1cb:	ff 35 60 df 51 00    	push   0x51df60
4ad1d1:	ff 15 90 31 4b 00    	call   *0x4b3190
4ad1d7:	5e                   	pop    %esi
4ad1d8:	c3                   	ret
4ad1d9:	83 0d a0 a7 50 00 ff 	orl    $0xffffffff,0x50a7a0
4ad1e0:	5e                   	pop    %esi
4ad1e1:	c3                   	ret
4ad1e2:	55                   	push   %ebp
4ad1e3:	8b ec                	mov    %esp,%ebp
4ad1e5:	51                   	push   %ecx
4ad1e6:	53                   	push   %ebx
4ad1e7:	56                   	push   %esi
4ad1e8:	8b 35 94 a7 50 00    	mov    0x50a794,%esi
4ad1ee:	57                   	push   %edi
4ad1ef:	83 7e 10 ff          	cmpl   $0xffffffff,0x10(%esi)
4ad1f3:	0f 84 94 00 00 00    	je     0x4ad28d
4ad1f9:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4ad1fd:	8d be 10 20 00 00    	lea    0x2010(%esi),%edi
4ad203:	bb 00 f0 3f 00       	mov    $0x3ff000,%ebx
4ad208:	81 3f f0 00 00 00    	cmpl   $0xf0,(%edi)
4ad20e:	75 39                	jne    0x4ad249
4ad210:	8b c3                	mov    %ebx,%eax
4ad212:	68 00 40 00 00       	push   $0x4000
4ad217:	03 46 10             	add    0x10(%esi),%eax
4ad21a:	68 00 10 00 00       	push   $0x1000
4ad21f:	50                   	push   %eax
4ad220:	ff 15 b0 31 4b 00    	call   *0x4b31b0
4ad226:	85 c0                	test   %eax,%eax
4ad228:	74 1f                	je     0x4ad249
4ad22a:	83 0f ff             	orl    $0xffffffff,(%edi)
4ad22d:	ff 0d e4 ca 51 00    	decl   0x51cae4
4ad233:	8b 46 0c             	mov    0xc(%esi),%eax
4ad236:	85 c0                	test   %eax,%eax
4ad238:	74 04                	je     0x4ad23e
4ad23a:	3b c7                	cmp    %edi,%eax
4ad23c:	76 03                	jbe    0x4ad241
4ad23e:	89 7e 0c             	mov    %edi,0xc(%esi)
4ad241:	ff 45 fc             	incl   -0x4(%ebp)
4ad244:	ff 4d 08             	decl   0x8(%ebp)
4ad247:	74 0d                	je     0x4ad256
4ad249:	81 eb 00 10 00 00    	sub    $0x1000,%ebx
4ad24f:	83 ef 08             	sub    $0x8,%edi
4ad252:	85 db                	test   %ebx,%ebx
4ad254:	7d b2                	jge    0x4ad208
4ad256:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4ad25a:	8b ce                	mov    %esi,%ecx
4ad25c:	8b 76 04             	mov    0x4(%esi),%esi
4ad25f:	74 2c                	je     0x4ad28d
4ad261:	83 79 18 ff          	cmpl   $0xffffffff,0x18(%ecx)
4ad265:	75 26                	jne    0x4ad28d
4ad267:	6a 01                	push   $0x1
4ad269:	8d 41 20             	lea    0x20(%ecx),%eax
4ad26c:	5a                   	pop    %edx
4ad26d:	83 38 ff             	cmpl   $0xffffffff,(%eax)
4ad270:	75 0c                	jne    0x4ad27e
4ad272:	42                   	inc    %edx
4ad273:	83 c0 08             	add    $0x8,%eax
4ad276:	81 fa 00 04 00 00    	cmp    $0x400,%edx
4ad27c:	7c ef                	jl     0x4ad26d
4ad27e:	81 fa 00 04 00 00    	cmp    $0x400,%edx
4ad284:	75 07                	jne    0x4ad28d
4ad286:	51                   	push   %ecx
4ad287:	e8 00 ff ff ff       	call   0x4ad18c
4ad28c:	59                   	pop    %ecx
4ad28d:	3b 35 94 a7 50 00    	cmp    0x50a794,%esi
4ad293:	74 0a                	je     0x4ad29f
4ad295:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4ad299:	0f 8f 50 ff ff ff    	jg     0x4ad1ef
4ad29f:	5f                   	pop    %edi
4ad2a0:	5e                   	pop    %esi
4ad2a1:	5b                   	pop    %ebx
4ad2a2:	c9                   	leave
4ad2a3:	c3                   	ret
4ad2a4:	8b 44 24 04          	mov    0x4(%esp),%eax
4ad2a8:	ba 90 a7 50 00       	mov    $0x50a790,%edx
4ad2ad:	56                   	push   %esi
4ad2ae:	8b ca                	mov    %edx,%ecx
4ad2b0:	3b 41 10             	cmp    0x10(%ecx),%eax
4ad2b3:	76 05                	jbe    0x4ad2ba
4ad2b5:	3b 41 14             	cmp    0x14(%ecx),%eax
4ad2b8:	72 08                	jb     0x4ad2c2
4ad2ba:	8b 09                	mov    (%ecx),%ecx
4ad2bc:	3b ca                	cmp    %edx,%ecx
4ad2be:	74 37                	je     0x4ad2f7
4ad2c0:	eb ee                	jmp    0x4ad2b0
4ad2c2:	a8 0f                	test   $0xf,%al
4ad2c4:	75 31                	jne    0x4ad2f7
4ad2c6:	8b f0                	mov    %eax,%esi
4ad2c8:	ba 00 01 00 00       	mov    $0x100,%edx
4ad2cd:	81 e6 ff 0f 00 00    	and    $0xfff,%esi
4ad2d3:	3b f2                	cmp    %edx,%esi
4ad2d5:	72 20                	jb     0x4ad2f7
4ad2d7:	8b 74 24 0c          	mov    0xc(%esp),%esi
4ad2db:	89 0e                	mov    %ecx,(%esi)
4ad2dd:	8b 74 24 10          	mov    0x10(%esp),%esi
4ad2e1:	8b c8                	mov    %eax,%ecx
4ad2e3:	66 81 e1 00 f0       	and    $0xf000,%cx
4ad2e8:	2b c1                	sub    %ecx,%eax
4ad2ea:	89 0e                	mov    %ecx,(%esi)
4ad2ec:	2b c2                	sub    %edx,%eax
4ad2ee:	5e                   	pop    %esi
4ad2ef:	c1 f8 04             	sar    $0x4,%eax
4ad2f2:	8d 44 08 08          	lea    0x8(%eax,%ecx,1),%eax
4ad2f6:	c3                   	ret
4ad2f7:	33 c0                	xor    %eax,%eax
4ad2f9:	5e                   	pop    %esi
4ad2fa:	c3                   	ret
4ad2fb:	8b 44 24 04          	mov    0x4(%esp),%eax
4ad2ff:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4ad303:	2b 48 10             	sub    0x10(%eax),%ecx
4ad306:	c1 f9 0c             	sar    $0xc,%ecx
4ad309:	8d 44 c8 18          	lea    0x18(%eax,%ecx,8),%eax
4ad30d:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4ad311:	0f b6 11             	movzbl (%ecx),%edx
4ad314:	01 10                	add    %edx,(%eax)
4ad316:	80 21 00             	andb   $0x0,(%ecx)
4ad319:	81 38 f0 00 00 00    	cmpl   $0xf0,(%eax)
4ad31f:	c7 40 04 f1 00 00 00 	movl   $0xf1,0x4(%eax)
4ad326:	75 17                	jne    0x4ad33f
4ad328:	ff 05 e4 ca 51 00    	incl   0x51cae4
4ad32e:	83 3d e4 ca 51 00 20 	cmpl   $0x20,0x51cae4
4ad335:	75 08                	jne    0x4ad33f
4ad337:	6a 10                	push   $0x10
4ad339:	e8 a4 fe ff ff       	call   0x4ad1e2
4ad33e:	59                   	pop    %ecx
4ad33f:	c3                   	ret
4ad340:	55                   	push   %ebp
4ad341:	8b ec                	mov    %esp,%ebp
4ad343:	51                   	push   %ecx
4ad344:	51                   	push   %ecx
4ad345:	53                   	push   %ebx
4ad346:	56                   	push   %esi
4ad347:	8b 35 b0 c7 50 00    	mov    0x50c7b0,%esi
4ad34d:	57                   	push   %edi
4ad34e:	8b 56 10             	mov    0x10(%esi),%edx
4ad351:	83 fa ff             	cmp    $0xffffffff,%edx
4ad354:	0f 84 9f 00 00 00    	je     0x4ad3f9
4ad35a:	8b 7e 08             	mov    0x8(%esi),%edi
4ad35d:	8d 8e 18 20 00 00    	lea    0x2018(%esi),%ecx
4ad363:	8b c7                	mov    %edi,%eax
4ad365:	2b c6                	sub    %esi,%eax
4ad367:	83 e8 18             	sub    $0x18,%eax
4ad36a:	c1 f8 03             	sar    $0x3,%eax
4ad36d:	c1 e0 0c             	shl    $0xc,%eax
4ad370:	03 c2                	add    %edx,%eax
4ad372:	3b f9                	cmp    %ecx,%edi
4ad374:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ad377:	73 3a                	jae    0x4ad3b3
4ad379:	8b 0f                	mov    (%edi),%ecx
4ad37b:	8b 5d 08             	mov    0x8(%ebp),%ebx
4ad37e:	3b cb                	cmp    %ebx,%ecx
4ad380:	7c 1a                	jl     0x4ad39c
4ad382:	39 5f 04             	cmp    %ebx,0x4(%edi)
4ad385:	76 15                	jbe    0x4ad39c
4ad387:	53                   	push   %ebx
4ad388:	51                   	push   %ecx
4ad389:	50                   	push   %eax
4ad38a:	e8 b9 01 00 00       	call   0x4ad548
4ad38f:	83 c4 0c             	add    $0xc,%esp
4ad392:	85 c0                	test   %eax,%eax
4ad394:	75 75                	jne    0x4ad40b
4ad396:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ad399:	89 5f 04             	mov    %ebx,0x4(%edi)
4ad39c:	83 c7 08             	add    $0x8,%edi
4ad39f:	8d 8e 18 20 00 00    	lea    0x2018(%esi),%ecx
4ad3a5:	05 00 10 00 00       	add    $0x1000,%eax
4ad3aa:	3b f9                	cmp    %ecx,%edi
4ad3ac:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ad3af:	72 c8                	jb     0x4ad379
4ad3b1:	eb 03                	jmp    0x4ad3b6
4ad3b3:	8b 5d 08             	mov    0x8(%ebp),%ebx
4ad3b6:	8b 46 08             	mov    0x8(%esi),%eax
4ad3b9:	8b 4e 10             	mov    0x10(%esi),%ecx
4ad3bc:	8d 7e 18             	lea    0x18(%esi),%edi
4ad3bf:	89 45 f8             	mov    %eax,-0x8(%ebp)
4ad3c2:	3b f8                	cmp    %eax,%edi
4ad3c4:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4ad3c7:	73 33                	jae    0x4ad3fc
4ad3c9:	8b 07                	mov    (%edi),%eax
4ad3cb:	3b c3                	cmp    %ebx,%eax
4ad3cd:	7c 19                	jl     0x4ad3e8
4ad3cf:	39 5f 04             	cmp    %ebx,0x4(%edi)
4ad3d2:	76 14                	jbe    0x4ad3e8
4ad3d4:	53                   	push   %ebx
4ad3d5:	50                   	push   %eax
4ad3d6:	ff 75 fc             	push   -0x4(%ebp)
4ad3d9:	e8 6a 01 00 00       	call   0x4ad548
4ad3de:	83 c4 0c             	add    $0xc,%esp
4ad3e1:	85 c0                	test   %eax,%eax
4ad3e3:	75 26                	jne    0x4ad40b
4ad3e5:	89 5f 04             	mov    %ebx,0x4(%edi)
4ad3e8:	81 45 fc 00 10 00 00 	addl   $0x1000,-0x4(%ebp)
4ad3ef:	83 c7 08             	add    $0x8,%edi
4ad3f2:	3b 7d f8             	cmp    -0x8(%ebp),%edi
4ad3f5:	72 d2                	jb     0x4ad3c9
4ad3f7:	eb 03                	jmp    0x4ad3fc
4ad3f9:	8b 5d 08             	mov    0x8(%ebp),%ebx
4ad3fc:	8b 36                	mov    (%esi),%esi
4ad3fe:	3b 35 b0 c7 50 00    	cmp    0x50c7b0,%esi
4ad404:	74 15                	je     0x4ad41b
4ad406:	e9 43 ff ff ff       	jmp    0x4ad34e
4ad40b:	89 35 b0 c7 50 00    	mov    %esi,0x50c7b0
4ad411:	29 1f                	sub    %ebx,(%edi)
4ad413:	89 7e 08             	mov    %edi,0x8(%esi)
4ad416:	e9 28 01 00 00       	jmp    0x4ad543
4ad41b:	b8 90 a7 50 00       	mov    $0x50a790,%eax
4ad420:	8b f8                	mov    %eax,%edi
4ad422:	83 7f 10 ff          	cmpl   $0xffffffff,0x10(%edi)
4ad426:	74 06                	je     0x4ad42e
4ad428:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
4ad42c:	75 0c                	jne    0x4ad43a
4ad42e:	8b 3f                	mov    (%edi),%edi
4ad430:	3b f8                	cmp    %eax,%edi
4ad432:	0f 84 d7 00 00 00    	je     0x4ad50f
4ad438:	eb e8                	jmp    0x4ad422
4ad43a:	8b 5f 0c             	mov    0xc(%edi),%ebx
4ad43d:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4ad441:	8b f3                	mov    %ebx,%esi
4ad443:	8b c3                	mov    %ebx,%eax
4ad445:	2b f7                	sub    %edi,%esi
4ad447:	83 ee 18             	sub    $0x18,%esi
4ad44a:	c1 fe 03             	sar    $0x3,%esi
4ad44d:	c1 e6 0c             	shl    $0xc,%esi
4ad450:	03 77 10             	add    0x10(%edi),%esi
4ad453:	83 3b ff             	cmpl   $0xffffffff,(%ebx)
4ad456:	75 11                	jne    0x4ad469
4ad458:	83 7d fc 10          	cmpl   $0x10,-0x4(%ebp)
4ad45c:	7d 0b                	jge    0x4ad469
4ad45e:	83 c0 08             	add    $0x8,%eax
4ad461:	ff 45 fc             	incl   -0x4(%ebp)
4ad464:	83 38 ff             	cmpl   $0xffffffff,(%eax)
4ad467:	74 ef                	je     0x4ad458
4ad469:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ad46c:	6a 04                	push   $0x4
4ad46e:	c1 e0 0c             	shl    $0xc,%eax
4ad471:	68 00 10 00 00       	push   $0x1000
4ad476:	50                   	push   %eax
4ad477:	56                   	push   %esi
4ad478:	89 45 f8             	mov    %eax,-0x8(%ebp)
4ad47b:	ff 15 b4 31 4b 00    	call   *0x4b31b4
4ad481:	3b c6                	cmp    %esi,%eax
4ad483:	0f 85 b8 00 00 00    	jne    0x4ad541
4ad489:	6a 00                	push   $0x0