4b0192:	50                   	push   %eax
4b0193:	8d 85 ec fe ff ff    	lea    -0x114(%ebp),%eax
4b0199:	56                   	push   %esi
4b019a:	50                   	push   %eax
4b019b:	6a 01                	push   $0x1
4b019d:	e8 f3 0f 00 00       	call   0x4b1195
4b01a2:	6a 00                	push   $0x0
4b01a4:	8d 85 ec fd ff ff    	lea    -0x214(%ebp),%eax
4b01aa:	ff 35 fc cc 51 00    	push   0x51ccfc
4b01b0:	56                   	push   %esi
4b01b1:	50                   	push   %eax
4b01b2:	8d 85 ec fe ff ff    	lea    -0x114(%ebp),%eax
4b01b8:	56                   	push   %esi
4b01b9:	50                   	push   %eax
4b01ba:	56                   	push   %esi
4b01bb:	ff 35 24 cf 51 00    	push   0x51cf24
4b01c1:	e8 59 fa ff ff       	call   0x4afc1f
4b01c6:	6a 00                	push   $0x0
4b01c8:	8d 85 ec fc ff ff    	lea    -0x314(%ebp),%eax
4b01ce:	ff 35 fc cc 51 00    	push   0x51ccfc
4b01d4:	56                   	push   %esi
4b01d5:	50                   	push   %eax
4b01d6:	8d 85 ec fe ff ff    	lea    -0x114(%ebp),%eax
4b01dc:	56                   	push   %esi
4b01dd:	50                   	push   %eax
4b01de:	68 00 02 00 00       	push   $0x200
4b01e3:	ff 35 24 cf 51 00    	push   0x51cf24
4b01e9:	e8 31 fa ff ff       	call   0x4afc1f
4b01ee:	83 c4 5c             	add    $0x5c,%esp
4b01f1:	33 c0                	xor    %eax,%eax
4b01f3:	8d 8d ec fa ff ff    	lea    -0x514(%ebp),%ecx
4b01f9:	66 8b 11             	mov    (%ecx),%dx
4b01fc:	f6 c2 01             	test   $0x1,%dl
4b01ff:	74 16                	je     0x4b0217
4b0201:	80 88 21 ce 51 00 10 	orb    $0x10,0x51ce21(%eax)
4b0208:	8a 94 05 ec fd ff ff 	mov    -0x214(%ebp,%eax,1),%dl
4b020f:	88 90 20 cd 51 00    	mov    %dl,0x51cd20(%eax)
4b0215:	eb 1c                	jmp    0x4b0233
4b0217:	f6 c2 02             	test   $0x2,%dl
4b021a:	74 10                	je     0x4b022c
4b021c:	80 88 21 ce 51 00 20 	orb    $0x20,0x51ce21(%eax)
4b0223:	8a 94 05 ec fc ff ff 	mov    -0x314(%ebp,%eax,1),%dl
4b022a:	eb e3                	jmp    0x4b020f
4b022c:	80 a0 20 cd 51 00 00 	andb   $0x0,0x51cd20(%eax)
4b0233:	40                   	inc    %eax
4b0234:	41                   	inc    %ecx
4b0235:	41                   	inc    %ecx
4b0236:	3b c6                	cmp    %esi,%eax
4b0238:	72 bf                	jb     0x4b01f9
4b023a:	eb 49                	jmp    0x4b0285
4b023c:	33 c0                	xor    %eax,%eax
4b023e:	be 00 01 00 00       	mov    $0x100,%esi
4b0243:	83 f8 41             	cmp    $0x41,%eax
4b0246:	72 19                	jb     0x4b0261
4b0248:	83 f8 5a             	cmp    $0x5a,%eax
4b024b:	77 14                	ja     0x4b0261
4b024d:	80 88 21 ce 51 00 10 	orb    $0x10,0x51ce21(%eax)
4b0254:	8a c8                	mov    %al,%cl
4b0256:	80 c1 20             	add    $0x20,%cl
4b0259:	88 88 20 cd 51 00    	mov    %cl,0x51cd20(%eax)
4b025f:	eb 1f                	jmp    0x4b0280
4b0261:	83 f8 61             	cmp    $0x61,%eax
4b0264:	72 13                	jb     0x4b0279
4b0266:	83 f8 7a             	cmp    $0x7a,%eax
4b0269:	77 0e                	ja     0x4b0279
4b026b:	80 88 21 ce 51 00 20 	orb    $0x20,0x51ce21(%eax)
4b0272:	8a c8                	mov    %al,%cl
4b0274:	80 e9 20             	sub    $0x20,%cl
4b0277:	eb e0                	jmp    0x4b0259
4b0279:	80 a0 20 cd 51 00 00 	andb   $0x0,0x51cd20(%eax)
4b0280:	40                   	inc    %eax
4b0281:	3b c6                	cmp    %esi,%eax
4b0283:	72 be                	jb     0x4b0243
4b0285:	5e                   	pop    %esi
4b0286:	c9                   	leave
4b0287:	c3                   	ret
4b0288:	83 3d 88 e0 51 00 00 	cmpl   $0x0,0x51e088
4b028f:	75 12                	jne    0x4b02a3
4b0291:	6a fd                	push   $0xfffffffd
4b0293:	e8 18 fc ff ff       	call   0x4afeb0
4b0298:	59                   	pop    %ecx
4b0299:	c7 05 88 e0 51 00 01 	movl   $0x1,0x51e088
4b02a0:	00 00 00
4b02a3:	c3                   	ret
4b02a4:	cc                   	int3
4b02a5:	cc                   	int3
4b02a6:	cc                   	int3
4b02a7:	cc                   	int3
4b02a8:	cc                   	int3
4b02a9:	cc                   	int3
4b02aa:	cc                   	int3
4b02ab:	cc                   	int3
4b02ac:	cc                   	int3
4b02ad:	cc                   	int3
4b02ae:	cc                   	int3
4b02af:	cc                   	int3
4b02b0:	57                   	push   %edi
4b02b1:	8b 7c 24 08          	mov    0x8(%esp),%edi
4b02b5:	eb 6a                	jmp    0x4b0321
4b02b7:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
4b02be:	8b ff                	mov    %edi,%edi
4b02c0:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4b02c4:	57                   	push   %edi
4b02c5:	f7 c1 03 00 00 00    	test   $0x3,%ecx
4b02cb:	74 0f                	je     0x4b02dc
4b02cd:	8a 01                	mov    (%ecx),%al
4b02cf:	41                   	inc    %ecx
4b02d0:	84 c0                	test   %al,%al
4b02d2:	74 3b                	je     0x4b030f
4b02d4:	f7 c1 03 00 00 00    	test   $0x3,%ecx
4b02da:	75 f1                	jne    0x4b02cd
4b02dc:	8b 01                	mov    (%ecx),%eax
4b02de:	ba ff fe fe 7e       	mov    $0x7efefeff,%edx
4b02e3:	03 d0                	add    %eax,%edx
4b02e5:	83 f0 ff             	xor    $0xffffffff,%eax
4b02e8:	33 c2                	xor    %edx,%eax
4b02ea:	83 c1 04             	add    $0x4,%ecx
4b02ed:	a9 00 01 01 81       	test   $0x81010100,%eax
4b02f2:	74 e8                	je     0x4b02dc
4b02f4:	8b 41 fc             	mov    -0x4(%ecx),%eax
4b02f7:	84 c0                	test   %al,%al
4b02f9:	74 23                	je     0x4b031e
4b02fb:	84 e4                	test   %ah,%ah
4b02fd:	74 1a                	je     0x4b0319
4b02ff:	a9 00 00 ff 00       	test   $0xff0000,%eax
4b0304:	74 0e                	je     0x4b0314
4b0306:	a9 00 00 00 ff       	test   $0xff000000,%eax
4b030b:	74 02                	je     0x4b030f
4b030d:	eb cd                	jmp    0x4b02dc
4b030f:	8d 79 ff             	lea    -0x1(%ecx),%edi
4b0312:	eb 0d                	jmp    0x4b0321
4b0314:	8d 79 fe             	lea    -0x2(%ecx),%edi
4b0317:	eb 08                	jmp    0x4b0321
4b0319:	8d 79 fd             	lea    -0x3(%ecx),%edi
4b031c:	eb 03                	jmp    0x4b0321
4b031e:	8d 79 fc             	lea    -0x4(%ecx),%edi
4b0321:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4b0325:	f7 c1 03 00 00 00    	test   $0x3,%ecx
4b032b:	74 19                	je     0x4b0346
4b032d:	8a 11                	mov    (%ecx),%dl
4b032f:	41                   	inc    %ecx
4b0330:	84 d2                	test   %dl,%dl
4b0332:	74 64                	je     0x4b0398
4b0334:	88 17                	mov    %dl,(%edi)
4b0336:	47                   	inc    %edi
4b0337:	f7 c1 03 00 00 00    	test   $0x3,%ecx
4b033d:	75 ee                	jne    0x4b032d
4b033f:	eb 05                	jmp    0x4b0346
4b0341:	89 17                	mov    %edx,(%edi)
4b0343:	83 c7 04             	add    $0x4,%edi
4b0346:	ba ff fe fe 7e       	mov    $0x7efefeff,%edx
4b034b:	8b 01                	mov    (%ecx),%eax
4b034d:	03 d0                	add    %eax,%edx
4b034f:	83 f0 ff             	xor    $0xffffffff,%eax
4b0352:	33 c2                	xor    %edx,%eax
4b0354:	8b 11                	mov    (%ecx),%edx
4b0356:	83 c1 04             	add    $0x4,%ecx
4b0359:	a9 00 01 01 81       	test   $0x81010100,%eax
4b035e:	74 e1                	je     0x4b0341
4b0360:	84 d2                	test   %dl,%dl
4b0362:	74 34                	je     0x4b0398
4b0364:	84 f6                	test   %dh,%dh
4b0366:	74 27                	je     0x4b038f
4b0368:	f7 c2 00 00 ff 00    	test   $0xff0000,%edx
4b036e:	74 12                	je     0x4b0382
4b0370:	f7 c2 00 00 00 ff    	test   $0xff000000,%edx
4b0376:	74 02                	je     0x4b037a
4b0378:	eb c7                	jmp    0x4b0341
4b037a:	89 17                	mov    %edx,(%edi)
4b037c:	8b 44 24 08          	mov    0x8(%esp),%eax
4b0380:	5f                   	pop    %edi
4b0381:	c3                   	ret
4b0382:	66 89 17             	mov    %dx,(%edi)
4b0385:	8b 44 24 08          	mov    0x8(%esp),%eax
4b0389:	c6 47 02 00          	movb   $0x0,0x2(%edi)
4b038d:	5f                   	pop    %edi
4b038e:	c3                   	ret
4b038f:	66 89 17             	mov    %dx,(%edi)
4b0392:	8b 44 24 08          	mov    0x8(%esp),%eax
4b0396:	5f                   	pop    %edi
4b0397:	c3                   	ret
4b0398:	88 17                	mov    %dl,(%edi)
4b039a:	8b 44 24 08          	mov    0x8(%esp),%eax
4b039e:	5f                   	pop    %edi
4b039f:	c3                   	ret
4b03a0:	55                   	push   %ebp
4b03a1:	8b ec                	mov    %esp,%ebp
4b03a3:	6a ff                	push   $0xffffffff
4b03a5:	68 d0 3b 4b 00       	push   $0x4b3bd0
4b03aa:	68 80 97 4a 00       	push   $0x4a9780
4b03af:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4b03b5:	50                   	push   %eax
4b03b6:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
4b03bd:	83 ec 18             	sub    $0x18,%esp
4b03c0:	53                   	push   %ebx
4b03c1:	56                   	push   %esi
4b03c2:	57                   	push   %edi
4b03c3:	8b 75 08             	mov    0x8(%ebp),%esi
4b03c6:	0f af 75 0c          	imul   0xc(%ebp),%esi
4b03ca:	89 75 0c             	mov    %esi,0xc(%ebp)
4b03cd:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4b03d0:	83 fe e0             	cmp    $0xffffffe0,%esi
4b03d3:	77 14                	ja     0x4b03e9
4b03d5:	33 db                	xor    %ebx,%ebx
4b03d7:	3b f3                	cmp    %ebx,%esi
4b03d9:	75 03                	jne    0x4b03de
4b03db:	6a 01                	push   $0x1
4b03dd:	5e                   	pop    %esi
4b03de:	83 c6 0f             	add    $0xf,%esi
4b03e1:	83 e6 f0             	and    $0xfffffff0,%esi
4b03e4:	89 75 0c             	mov    %esi,0xc(%ebp)
4b03e7:	eb 02                	jmp    0x4b03eb
4b03e9:	33 db                	xor    %ebx,%ebx
4b03eb:	89 5d e0             	mov    %ebx,-0x20(%ebp)
4b03ee:	83 fe e0             	cmp    $0xffffffe0,%esi
4b03f1:	0f 87 a8 00 00 00    	ja     0x4b049f
4b03f7:	a1 64 df 51 00       	mov    0x51df64,%eax
4b03fc:	83 f8 03             	cmp    $0x3,%eax
4b03ff:	75 41                	jne    0x4b0442
4b0401:	8b 7d e4             	mov    -0x1c(%ebp),%edi
4b0404:	3b 3d 5c df 51 00    	cmp    0x51df5c,%edi
4b040a:	77 7c                	ja     0x4b0488
4b040c:	6a 09                	push   $0x9
4b040e:	e8 2b d3 ff ff       	call   0x4ad73e
4b0413:	59                   	pop    %ecx
4b0414:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4b0417:	57                   	push   %edi
4b0418:	e8 80 c4 ff ff       	call   0x4ac89d
4b041d:	59                   	pop    %ecx
4b041e:	89 45 e0             	mov    %eax,-0x20(%ebp)
4b0421:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4b0425:	e8 0f 00 00 00       	call   0x4b0439
4b042a:	39 5d e0             	cmp    %ebx,-0x20(%ebp)
4b042d:	74 5e                	je     0x4b048d
4b042f:	ff 75 e4             	push   -0x1c(%ebp)
4b0432:	eb 48                	jmp    0x4b047c
4b0434:	33 db                	xor    %ebx,%ebx
4b0436:	8b 75 0c             	mov    0xc(%ebp),%esi
4b0439:	6a 09                	push   $0x9
4b043b:	e8 5f d3 ff ff       	call   0x4ad79f
4b0440:	59                   	pop    %ecx
4b0441:	c3                   	ret
4b0442:	83 f8 02             	cmp    $0x2,%eax
4b0445:	75 41                	jne    0x4b0488
4b0447:	3b 35 b4 c7 50 00    	cmp    0x50c7b4,%esi
4b044d:	77 39                	ja     0x4b0488
4b044f:	6a 09                	push   $0x9
4b0451:	e8 e8 d2 ff ff       	call   0x4ad73e
4b0456:	59                   	pop    %ecx
4b0457:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4b045e:	8b c6                	mov    %esi,%eax
4b0460:	c1 e8 04             	shr    $0x4,%eax
4b0463:	50                   	push   %eax
4b0464:	e8 d7 ce ff ff       	call   0x4ad340
4b0469:	59                   	pop    %ecx
4b046a:	89 45 e0             	mov    %eax,-0x20(%ebp)
4b046d:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
4b0471:	e8 4c 00 00 00       	call   0x4b04c2
4b0476:	39 5d e0             	cmp    %ebx,-0x20(%ebp)
4b0479:	74 12                	je     0x4b048d
4b047b:	56                   	push   %esi
4b047c:	53                   	push   %ebx
4b047d:	ff 75 e0             	push   -0x20(%ebp)
4b0480:	e8 9b 0a 00 00       	call   0x4b0f20
4b0485:	83 c4 0c             	add    $0xc,%esp
4b0488:	39 5d e0             	cmp    %ebx,-0x20(%ebp)
4b048b:	75 3e                	jne    0x4b04cb
4b048d:	56                   	push   %esi
4b048e:	6a 08                	push   $0x8
4b0490:	ff 35 60 df 51 00    	push   0x51df60
4b0496:	ff 15 88 30 4b 00    	call   *0x4b3088
4b049c:	89 45 e0             	mov    %eax,-0x20(%ebp)
4b049f:	39 5d e0             	cmp    %ebx,-0x20(%ebp)
4b04a2:	75 27                	jne    0x4b04cb
4b04a4:	39 1d 48 cb 51 00    	cmp    %ebx,0x51cb48
4b04aa:	74 1f                	je     0x4b04cb
4b04ac:	56                   	push   %esi
4b04ad:	e8 02 d3 ff ff       	call   0x4ad7b4
4b04b2:	59                   	pop    %ecx
4b04b3:	85 c0                	test   %eax,%eax
4b04b5:	0f 85 30 ff ff ff    	jne    0x4b03eb
4b04bb:	eb 11                	jmp    0x4b04ce
4b04bd:	33 db                	xor    %ebx,%ebx
4b04bf:	8b 75 0c             	mov    0xc(%ebp),%esi
4b04c2:	6a 09                	push   $0x9
4b04c4:	e8 d6 d2 ff ff       	call   0x4ad79f
4b04c9:	59                   	pop    %ecx
4b04ca:	c3                   	ret
4b04cb:	8b 45 e0             	mov    -0x20(%ebp),%eax
4b04ce:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4b04d1:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4b04d8:	5f                   	pop    %edi
4b04d9:	5e                   	pop    %esi
4b04da:	5b                   	pop    %ebx
4b04db:	c9                   	leave
4b04dc:	c3                   	ret
4b04dd:	6a 00                	push   $0x0
4b04df:	ff 74 24 10          	push   0x10(%esp)
4b04e3:	ff 74 24 10          	push   0x10(%esp)
4b04e7:	ff 74 24 10          	push   0x10(%esp)
4b04eb:	e8 04 00 00 00       	call   0x4b04f4
4b04f0:	83 c4 10             	add    $0x10,%esp
4b04f3:	c3                   	ret
4b04f4:	55                   	push   %ebp
4b04f5:	8b ec                	mov    %esp,%ebp
4b04f7:	83 ec 0c             	sub    $0xc,%esp
4b04fa:	53                   	push   %ebx
4b04fb:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
4b04ff:	56                   	push   %esi
4b0500:	57                   	push   %edi
4b0501:	8b 7d 08             	mov    0x8(%ebp),%edi
4b0504:	8a 1f                	mov    (%edi),%bl
4b0506:	8d 77 01             	lea    0x1(%edi),%esi
4b0509:	89 75 fc             	mov    %esi,-0x4(%ebp)
4b050c:	83 3d ec a6 50 00 01 	cmpl   $0x1,0x50a6ec
4b0513:	7e 0f                	jle    0x4b0524
4b0515:	0f b6 c3             	movzbl %bl,%eax
4b0518:	6a 08                	push   $0x8
4b051a:	50                   	push   %eax
4b051b:	e8 bd b7 ff ff       	call   0x4abcdd
4b0520:	59                   	pop    %ecx
4b0521:	59                   	pop    %ecx
4b0522:	eb 0f                	jmp    0x4b0533
4b0524:	8b 0d e0 a4 50 00    	mov    0x50a4e0,%ecx
4b052a:	0f b6 c3             	movzbl %bl,%eax
4b052d:	8a 04 41             	mov    (%ecx,%eax,2),%al
4b0530:	83 e0 08             	and    $0x8,%eax
4b0533:	85 c0                	test   %eax,%eax
4b0535:	74 05                	je     0x4b053c
4b0537:	8a 1e                	mov    (%esi),%bl
4b0539:	46                   	inc    %esi
4b053a:	eb d0                	jmp    0x4b050c
4b053c:	80 fb 2d             	cmp    $0x2d,%bl
4b053f:	89 75 fc             	mov    %esi,-0x4(%ebp)
4b0542:	75 06                	jne    0x4b054a
4b0544:	83 4d 14 02          	orl    $0x2,0x14(%ebp)
4b0548:	eb 05                	jmp    0x4b054f
4b054a:	80 fb 2b             	cmp    $0x2b,%bl
4b054d:	75 06                	jne    0x4b0555
4b054f:	8a 1e                	mov    (%esi),%bl
4b0551:	46                   	inc    %esi
4b0552:	89 75 fc             	mov    %esi,-0x4(%ebp)
4b0555:	8b 45 10             	mov    0x10(%ebp),%eax
4b0558:	85 c0                	test   %eax,%eax
4b055a:	0f 8c 89 01 00 00    	jl     0x4b06e9
4b0560:	83 f8 01             	cmp    $0x1,%eax
4b0563:	0f 84 80 01 00 00    	je     0x4b06e9
4b0569:	83 f8 24             	cmp    $0x24,%eax
4b056c:	0f 8f 77 01 00 00    	jg     0x4b06e9
4b0572:	6a 10                	push   $0x10