472181:	8b c7                	mov    %edi,%eax
472183:	5f                   	pop    %edi
472184:	5e                   	pop    %esi
472185:	5b                   	pop    %ebx
472186:	c3                   	ret
472187:	a1 20 82 4b 00       	mov    0x4b8220,%eax
47218c:	6a ff                	push   $0xffffffff
47218e:	50                   	push   %eax
47218f:	e8 a8 2e 00 00       	call   0x47503c
472194:	85 c0                	test   %eax,%eax
472196:	74 e0                	je     0x472178
472198:	68 64 03 00 00       	push   $0x364
47219d:	6a 01                	push   $0x1
47219f:	e8 af 00 00 00       	call   0x472253
4721a4:	59                   	pop    %ecx
4721a5:	59                   	pop    %ecx
4721a6:	8b f8                	mov    %eax,%edi
4721a8:	85 ff                	test   %edi,%edi
4721aa:	75 15                	jne    0x4721c1
4721ac:	53                   	push   %ebx
4721ad:	ff 35 20 82 4b 00    	push   0x4b8220
4721b3:	e8 84 2e 00 00       	call   0x47503c
4721b8:	53                   	push   %ebx
4721b9:	e8 7b 01 00 00       	call   0x472339
4721be:	59                   	pop    %ecx
4721bf:	eb b7                	jmp    0x472178
4721c1:	57                   	push   %edi
4721c2:	ff 35 20 82 4b 00    	push   0x4b8220
4721c8:	e8 6f 2e 00 00       	call   0x47503c
4721cd:	85 c0                	test   %eax,%eax
4721cf:	75 0f                	jne    0x4721e0
4721d1:	53                   	push   %ebx
4721d2:	ff 35 20 82 4b 00    	push   0x4b8220
4721d8:	e8 5f 2e 00 00       	call   0x47503c
4721dd:	57                   	push   %edi
4721de:	eb d9                	jmp    0x4721b9
4721e0:	68 14 bf 4b 00       	push   $0x4bbf14
4721e5:	57                   	push   %edi
4721e6:	e8 d5 fa ff ff       	call   0x471cc0
4721eb:	53                   	push   %ebx
4721ec:	e8 48 01 00 00       	call   0x472339
4721f1:	83 c4 0c             	add    $0xc,%esp
4721f4:	85 ff                	test   %edi,%edi
4721f6:	74 80                	je     0x472178
4721f8:	56                   	push   %esi
4721f9:	ff 15 28 41 49 00    	call   *0x494128
4721ff:	eb 80                	jmp    0x472181
472201:	68 52 1d 47 00       	push   $0x471d52
472206:	e8 2f 2d 00 00       	call   0x474f3a
47220b:	a3 20 82 4b 00       	mov    %eax,0x4b8220
472210:	83 f8 ff             	cmp    $0xffffffff,%eax
472213:	75 03                	jne    0x472218
472215:	32 c0                	xor    %al,%al
472217:	c3                   	ret
472218:	e8 31 ff ff ff       	call   0x47214e
47221d:	85 c0                	test   %eax,%eax
47221f:	75 09                	jne    0x47222a
472221:	50                   	push   %eax
472222:	e8 06 00 00 00       	call   0x47222d
472227:	59                   	pop    %ecx
472228:	eb eb                	jmp    0x472215
47222a:	b0 01                	mov    $0x1,%al
47222c:	c3                   	ret
47222d:	a1 20 82 4b 00       	mov    0x4b8220,%eax
472232:	83 f8 ff             	cmp    $0xffffffff,%eax
472235:	74 0d                	je     0x472244
472237:	50                   	push   %eax
472238:	e8 53 2d 00 00       	call   0x474f90
47223d:	83 0d 20 82 4b 00 ff 	orl    $0xffffffff,0x4b8220
472244:	b0 01                	mov    $0x1,%al
472246:	c3                   	ret
472247:	ff 25 84 40 49 00    	jmp    *0x494084
47224d:	ff 25 bc 40 49 00    	jmp    *0x4940bc
472253:	8b ff                	mov    %edi,%edi
472255:	55                   	push   %ebp
472256:	8b ec                	mov    %esp,%ebp
472258:	56                   	push   %esi
472259:	8b 75 08             	mov    0x8(%ebp),%esi
47225c:	85 f6                	test   %esi,%esi
47225e:	74 0c                	je     0x47226c
472260:	6a e0                	push   $0xffffffe0
472262:	33 d2                	xor    %edx,%edx
472264:	58                   	pop    %eax
472265:	f7 f6                	div    %esi
472267:	3b 45 0c             	cmp    0xc(%ebp),%eax
47226a:	72 34                	jb     0x4722a0
47226c:	0f af 75 0c          	imul   0xc(%ebp),%esi
472270:	85 f6                	test   %esi,%esi
472272:	75 17                	jne    0x47228b
472274:	46                   	inc    %esi
472275:	eb 14                	jmp    0x47228b
472277:	e8 4e de ff ff       	call   0x4700ca
47227c:	85 c0                	test   %eax,%eax
47227e:	74 20                	je     0x4722a0
472280:	56                   	push   %esi
472281:	e8 e3 99 ff ff       	call   0x46bc69
472286:	59                   	pop    %ecx
472287:	85 c0                	test   %eax,%eax
472289:	74 15                	je     0x4722a0
47228b:	56                   	push   %esi
47228c:	6a 08                	push   $0x8
47228e:	ff 35 10 c3 4b 00    	push   0x4bc310
472294:	ff 15 80 40 49 00    	call   *0x494080
47229a:	85 c0                	test   %eax,%eax
47229c:	74 d9                	je     0x472277
47229e:	eb 0d                	jmp    0x4722ad
4722a0:	e8 8a ab fd ff       	call   0x44ce2f
4722a5:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
4722ab:	33 c0                	xor    %eax,%eax
4722ad:	5e                   	pop    %esi
4722ae:	5d                   	pop    %ebp
4722af:	c3                   	ret
4722b0:	8b ff                	mov    %edi,%edi
4722b2:	55                   	push   %ebp
4722b3:	8b ec                	mov    %esp,%ebp
4722b5:	8b 45 0c             	mov    0xc(%ebp),%eax
4722b8:	8b 4d 08             	mov    0x8(%ebp),%ecx
4722bb:	87 01                	xchg   %eax,(%ecx)
4722bd:	5d                   	pop    %ebp
4722be:	c3                   	ret
4722bf:	a1 10 c3 4b 00       	mov    0x4bc310,%eax
4722c4:	c3                   	ret
4722c5:	8b ff                	mov    %edi,%edi
4722c7:	55                   	push   %ebp
4722c8:	8b ec                	mov    %esp,%ebp
4722ca:	51                   	push   %ecx
4722cb:	a1 94 80 4b 00       	mov    0x4b8094,%eax
4722d0:	33 c5                	xor    %ebp,%eax
4722d2:	89 45 fc             	mov    %eax,-0x4(%ebp)
4722d5:	a1 24 82 4b 00       	mov    0x4b8224,%eax
4722da:	83 f8 01             	cmp    $0x1,%eax
4722dd:	75 4c                	jne    0x47232b
4722df:	68 84 d9 49 00       	push   $0x49d984
4722e4:	ff 15 58 41 49 00    	call   *0x494158
4722ea:	85 c0                	test   %eax,%eax
4722ec:	75 0b                	jne    0x4722f9
4722ee:	b9 24 82 4b 00       	mov    $0x4b8224,%ecx
4722f3:	87 01                	xchg   %eax,(%ecx)
4722f5:	33 c0                	xor    %eax,%eax
4722f7:	eb 32                	jmp    0x47232b
4722f9:	56                   	push   %esi
4722fa:	68 bf 01 00 00       	push   $0x1bf
4722ff:	50                   	push   %eax
472300:	ff 15 60 41 49 00    	call   *0x494160
472306:	8b f0                	mov    %eax,%esi
472308:	85 f6                	test   %esi,%esi
47230a:	75 0b                	jne    0x472317
47230c:	b9 24 82 4b 00       	mov    $0x4b8224,%ecx
472311:	87 01                	xchg   %eax,(%ecx)
472313:	33 c0                	xor    %eax,%eax
472315:	eb 13                	jmp    0x47232a
472317:	8b ce                	mov    %esi,%ecx
472319:	ff 15 54 43 49 00    	call   *0x494354
47231f:	ff d6                	call   *%esi
472321:	8b c8                	mov    %eax,%ecx
472323:	ba 24 82 4b 00       	mov    $0x4b8224,%edx
472328:	87 0a                	xchg   %ecx,(%edx)
47232a:	5e                   	pop    %esi
47232b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47232e:	33 cd                	xor    %ebp,%ecx
472330:	e8 cd d6 fc ff       	call   0x43fa02
472335:	8b e5                	mov    %ebp,%esp
472337:	5d                   	pop    %ebp
472338:	c3                   	ret
472339:	8b ff                	mov    %edi,%edi
47233b:	55                   	push   %ebp
47233c:	8b ec                	mov    %esp,%ebp
47233e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
472342:	74 2d                	je     0x472371
472344:	ff 75 08             	push   0x8(%ebp)
472347:	6a 00                	push   $0x0
472349:	ff 35 10 c3 4b 00    	push   0x4bc310
47234f:	ff 15 7c 40 49 00    	call   *0x49407c
472355:	85 c0                	test   %eax,%eax
472357:	75 18                	jne    0x472371
472359:	56                   	push   %esi
47235a:	e8 d0 aa fd ff       	call   0x44ce2f
47235f:	8b f0                	mov    %eax,%esi
472361:	ff 15 24 41 49 00    	call   *0x494124
472367:	50                   	push   %eax
472368:	e8 49 aa fd ff       	call   0x44cdb6
47236d:	59                   	pop    %ecx
47236e:	89 06                	mov    %eax,(%esi)
472370:	5e                   	pop    %esi
472371:	5d                   	pop    %ebp
472372:	c3                   	ret
472373:	8b ff                	mov    %edi,%edi
472375:	55                   	push   %ebp
472376:	8b ec                	mov    %esp,%ebp
472378:	57                   	push   %edi
472379:	8b 7d 08             	mov    0x8(%ebp),%edi
47237c:	85 ff                	test   %edi,%edi
47237e:	75 0b                	jne    0x47238b
472380:	ff 75 0c             	push   0xc(%ebp)
472383:	e8 a2 49 00 00       	call   0x476d2a
472388:	59                   	pop    %ecx
472389:	eb 24                	jmp    0x4723af
47238b:	56                   	push   %esi
47238c:	8b 75 0c             	mov    0xc(%ebp),%esi
47238f:	85 f6                	test   %esi,%esi
472391:	75 09                	jne    0x47239c
472393:	57                   	push   %edi
472394:	e8 a0 ff ff ff       	call   0x472339
472399:	59                   	pop    %ecx
47239a:	eb 10                	jmp    0x4723ac
47239c:	83 fe e0             	cmp    $0xffffffe0,%esi
47239f:	76 25                	jbe    0x4723c6
4723a1:	e8 89 aa fd ff       	call   0x44ce2f
4723a6:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
4723ac:	33 c0                	xor    %eax,%eax
4723ae:	5e                   	pop    %esi
4723af:	5f                   	pop    %edi
4723b0:	5d                   	pop    %ebp
4723b1:	c3                   	ret
4723b2:	e8 13 dd ff ff       	call   0x4700ca
4723b7:	85 c0                	test   %eax,%eax
4723b9:	74 e6                	je     0x4723a1
4723bb:	56                   	push   %esi
4723bc:	e8 a8 98 ff ff       	call   0x46bc69
4723c1:	59                   	pop    %ecx
4723c2:	85 c0                	test   %eax,%eax
4723c4:	74 db                	je     0x4723a1
4723c6:	56                   	push   %esi
4723c7:	57                   	push   %edi
4723c8:	6a 00                	push   $0x0
4723ca:	ff 35 10 c3 4b 00    	push   0x4bc310
4723d0:	ff 15 78 40 49 00    	call   *0x494078
4723d6:	85 c0                	test   %eax,%eax
4723d8:	74 d8                	je     0x4723b2
4723da:	eb d2                	jmp    0x4723ae
4723dc:	8b ff                	mov    %edi,%edi
4723de:	55                   	push   %ebp
4723df:	8b ec                	mov    %esp,%ebp
4723e1:	ff 75 0c             	push   0xc(%ebp)
4723e4:	ff 75 08             	push   0x8(%ebp)
4723e7:	e8 04 00 00 00       	call   0x4723f0
4723ec:	59                   	pop    %ecx
4723ed:	59                   	pop    %ecx
4723ee:	5d                   	pop    %ebp
4723ef:	c3                   	ret
4723f0:	8b ff                	mov    %edi,%edi
4723f2:	55                   	push   %ebp
4723f3:	8b ec                	mov    %esp,%ebp
4723f5:	51                   	push   %ecx
4723f6:	51                   	push   %ecx
4723f7:	66 8b 45 08          	mov    0x8(%ebp),%ax
4723fb:	b9 ff ff 00 00       	mov    $0xffff,%ecx
472400:	66 3b c1             	cmp    %cx,%ax
472403:	75 04                	jne    0x472409
472405:	33 c0                	xor    %eax,%eax
472407:	eb 42                	jmp    0x47244b
472409:	b9 00 01 00 00       	mov    $0x100,%ecx
47240e:	66 3b c1             	cmp    %cx,%ax
472411:	73 0e                	jae    0x472421
472413:	0f b7 c8             	movzwl %ax,%ecx
472416:	a1 00 82 4b 00       	mov    0x4b8200,%eax
47241b:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
47241f:	eb 24                	jmp    0x472445
472421:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
472425:	33 c0                	xor    %eax,%eax
472427:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
47242b:	8d 45 fc             	lea    -0x4(%ebp),%eax
47242e:	50                   	push   %eax
47242f:	6a 01                	push   $0x1
472431:	8d 45 f8             	lea    -0x8(%ebp),%eax
472434:	50                   	push   %eax
472435:	6a 01                	push   $0x1
472437:	ff 15 bc 41 49 00    	call   *0x4941bc
47243d:	85 c0                	test   %eax,%eax
47243f:	74 c4                	je     0x472405
472441:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
472445:	0f b7 4d 0c          	movzwl 0xc(%ebp),%ecx
472449:	23 c1                	and    %ecx,%eax
47244b:	8b e5                	mov    %ebp,%esp
47244d:	5d                   	pop    %ebp
47244e:	c3                   	ret
47244f:	8b ff                	mov    %edi,%edi
472451:	55                   	push   %ebp
472452:	8b ec                	mov    %esp,%ebp
472454:	83 3d 08 bf 4b 00 00 	cmpl   $0x0,0x4bbf08
47245b:	75 11                	jne    0x47246e
47245d:	8b 4d 08             	mov    0x8(%ebp),%ecx
472460:	a1 30 82 4b 00       	mov    0x4b8230,%eax
472465:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
472469:	23 45 0c             	and    0xc(%ebp),%eax
47246c:	5d                   	pop    %ebp
47246d:	c3                   	ret
47246e:	6a 00                	push   $0x0
472470:	ff 75 0c             	push   0xc(%ebp)
472473:	ff 75 08             	push   0x8(%ebp)
472476:	e8 05 00 00 00       	call   0x472480
47247b:	83 c4 0c             	add    $0xc,%esp
47247e:	5d                   	pop    %ebp
47247f:	c3                   	ret
472480:	8b ff                	mov    %edi,%edi
472482:	55                   	push   %ebp
472483:	8b ec                	mov    %esp,%ebp
472485:	83 ec 24             	sub    $0x24,%esp
472488:	a1 94 80 4b 00       	mov    0x4b8094,%eax
47248d:	33 c5                	xor    %ebp,%eax
47248f:	89 45 fc             	mov    %eax,-0x4(%ebp)
472492:	53                   	push   %ebx
472493:	ff 75 10             	push   0x10(%ebp)
472496:	8b 5d 08             	mov    0x8(%ebp),%ebx
472499:	8d 4d e0             	lea    -0x20(%ebp),%ecx
47249c:	e8 67 cb fd ff       	call   0x44f008
4724a1:	8d 43 01             	lea    0x1(%ebx),%eax
4724a4:	3d 00 01 00 00       	cmp    $0x100,%eax
4724a9:	77 0b                	ja     0x4724b6
4724ab:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4724ae:	8b 00                	mov    (%eax),%eax
4724b0:	0f b7 04 58          	movzwl (%eax,%ebx,2),%eax
4724b4:	eb 7a                	jmp    0x472530
4724b6:	8b c3                	mov    %ebx,%eax
4724b8:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4724bb:	c1 f8 08             	sar    $0x8,%eax
4724be:	89 45 dc             	mov    %eax,-0x24(%ebp)
4724c1:	51                   	push   %ecx
4724c2:	0f b6 c0             	movzbl %al,%eax
4724c5:	50                   	push   %eax
4724c6:	e8 15 8e 00 00       	call   0x47b2e0
4724cb:	59                   	pop    %ecx
4724cc:	59                   	pop    %ecx
4724cd:	85 c0                	test   %eax,%eax
4724cf:	74 13                	je     0x4724e4
4724d1:	8b 45 dc             	mov    -0x24(%ebp),%eax
4724d4:	88 45 f0             	mov    %al,-0x10(%ebp)
4724d7:	33 c0                	xor    %eax,%eax
4724d9:	6a 02                	push   $0x2
4724db:	88 5d f1             	mov    %bl,-0xf(%ebp)
4724de:	88 45 f2             	mov    %al,-0xe(%ebp)
4724e1:	59                   	pop    %ecx
4724e2:	eb 0b                	jmp    0x4724ef
4724e4:	33 c0                	xor    %eax,%eax
4724e6:	88 5d f0             	mov    %bl,-0x10(%ebp)
4724e9:	33 c9                	xor    %ecx,%ecx
4724eb:	88 45 f1             	mov    %al,-0xf(%ebp)
4724ee:	41                   	inc    %ecx
4724ef:	89 45 f4             	mov    %eax,-0xc(%ebp)
4724f2:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
4724f6:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4724f9:	6a 01                	push   $0x1
4724fb:	ff 70 08             	push   0x8(%eax)
4724fe:	8d 45 f4             	lea    -0xc(%ebp),%eax
472501:	50                   	push   %eax
472502:	51                   	push   %ecx
472503:	8d 45 f0             	lea    -0x10(%ebp),%eax
472506:	50                   	push   %eax
472507:	8d 45 e4             	lea    -0x1c(%ebp),%eax
47250a:	6a 01                	push   $0x1