46938a:	46                   	inc    %esi
46938b:	8a 06                	mov    (%esi),%al
46938d:	3c 30                	cmp    $0x30,%al
46938f:	74 f9                	je     0x46938a
469391:	33 c9                	xor    %ecx,%ecx
469393:	89 75 ec             	mov    %esi,-0x14(%ebp)
469396:	8b d9                	mov    %ecx,%ebx
469398:	89 4d f0             	mov    %ecx,-0x10(%ebp)
46939b:	0f be c0             	movsbl %al,%eax
46939e:	eb 24                	jmp    0x4693c4
4693a0:	6a 10                	push   $0x10
4693a2:	5f                   	pop    %edi
4693a3:	83 c6 02             	add    $0x2,%esi
4693a6:	89 75 f8             	mov    %esi,-0x8(%ebp)
4693a9:	eb e0                	jmp    0x46938b
4693ab:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4693ae:	b9 3c 04 4a 00       	mov    $0x4a043c,%ecx
4693b3:	2a c1                	sub    %cl,%al
4693b5:	0f af df             	imul   %edi,%ebx
4693b8:	89 45 f4             	mov    %eax,-0xc(%ebp)
4693bb:	0f be c0             	movsbl %al,%eax
4693be:	03 d8                	add    %eax,%ebx
4693c0:	46                   	inc    %esi
4693c1:	0f be 06             	movsbl (%esi),%eax
4693c4:	57                   	push   %edi
4693c5:	50                   	push   %eax
4693c6:	e8 c6 08 01 00       	call   0x479c91
4693cb:	59                   	pop    %ecx
4693cc:	50                   	push   %eax
4693cd:	b8 3c 04 4a 00       	mov    $0x4a043c,%eax
4693d2:	50                   	push   %eax
4693d3:	e8 38 29 00 00       	call   0x46bd10
4693d8:	83 c4 0c             	add    $0xc,%esp
4693db:	85 c0                	test   %eax,%eax
4693dd:	75 cc                	jne    0x4693ab
4693df:	39 75 f8             	cmp    %esi,-0x8(%ebp)
4693e2:	75 0e                	jne    0x4693f2
4693e4:	8b 45 0c             	mov    0xc(%ebp),%eax
4693e7:	85 c0                	test   %eax,%eax
4693e9:	74 6f                	je     0x46945a
4693eb:	8b 4d 08             	mov    0x8(%ebp),%ecx
4693ee:	89 08                	mov    %ecx,(%eax)
4693f0:	eb 68                	jmp    0x46945a
4693f2:	0f be 87 64 04 4a 00 	movsbl 0x4a0464(%edi),%eax
4693f9:	8b ce                	mov    %esi,%ecx
4693fb:	2b c8                	sub    %eax,%ecx
4693fd:	2b 4d ec             	sub    -0x14(%ebp),%ecx
469400:	78 3a                	js     0x46943c
469402:	85 c9                	test   %ecx,%ecx
469404:	7f 19                	jg     0x46941f
469406:	8b 45 f4             	mov    -0xc(%ebp),%eax
469409:	8b cb                	mov    %ebx,%ecx
46940b:	0f be c0             	movsbl %al,%eax
46940e:	2b c8                	sub    %eax,%ecx
469410:	3b d9                	cmp    %ecx,%ebx
469412:	72 0b                	jb     0x46941f
469414:	33 d2                	xor    %edx,%edx
469416:	8b c1                	mov    %ecx,%eax
469418:	f7 f7                	div    %edi
46941a:	3b 45 f0             	cmp    -0x10(%ebp),%eax
46941d:	74 1d                	je     0x46943c
46941f:	e8 11 0b 01 00       	call   0x479f35
469424:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
46942a:	8b 45 14             	mov    0x14(%ebp),%eax
46942d:	85 c0                	test   %eax,%eax
46942f:	74 06                	je     0x469437
469431:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
469437:	83 cb ff             	or     $0xffffffff,%ebx
46943a:	eb 08                	jmp    0x469444
46943c:	80 7d ff 2d          	cmpb   $0x2d,-0x1(%ebp)
469440:	75 02                	jne    0x469444
469442:	f7 db                	neg    %ebx
469444:	8b 4d 0c             	mov    0xc(%ebp),%ecx
469447:	85 c9                	test   %ecx,%ecx
469449:	74 02                	je     0x46944d
46944b:	89 31                	mov    %esi,(%ecx)
46944d:	8b c3                	mov    %ebx,%eax
46944f:	eb 0b                	jmp    0x46945c
469451:	8b 45 0c             	mov    0xc(%ebp),%eax
469454:	85 c0                	test   %eax,%eax
469456:	74 02                	je     0x46945a
469458:	89 18                	mov    %ebx,(%eax)
46945a:	33 c0                	xor    %eax,%eax
46945c:	5f                   	pop    %edi
46945d:	5e                   	pop    %esi
46945e:	5b                   	pop    %ebx
46945f:	c9                   	leave
469460:	c3                   	ret
469461:	55                   	push   %ebp
469462:	8b ec                	mov    %esp,%ebp
469464:	8b 45 14             	mov    0x14(%ebp),%eax
469467:	83 ec 1c             	sub    $0x1c,%esp
46946a:	85 c0                	test   %eax,%eax
46946c:	74 03                	je     0x469471
46946e:	83 20 00             	andl   $0x0,(%eax)
469471:	53                   	push   %ebx
469472:	8b 5d 08             	mov    0x8(%ebp),%ebx
469475:	56                   	push   %esi
469476:	57                   	push   %edi
469477:	8b f3                	mov    %ebx,%esi
469479:	0f b6 03             	movzbl (%ebx),%eax
46947c:	eb 04                	jmp    0x469482
46947e:	46                   	inc    %esi
46947f:	0f b6 06             	movzbl (%esi),%eax
469482:	50                   	push   %eax
469483:	e8 08 8d 01 00       	call   0x482190
469488:	59                   	pop    %ecx
469489:	85 c0                	test   %eax,%eax
46948b:	75 f1                	jne    0x46947e
46948d:	8a 06                	mov    (%esi),%al
46948f:	88 45 fe             	mov    %al,-0x2(%ebp)
469492:	3c 2d                	cmp    $0x2d,%al
469494:	74 0a                	je     0x4694a0
469496:	3c 2b                	cmp    $0x2b,%al
469498:	74 06                	je     0x4694a0
46949a:	c6 45 fe 2b          	movb   $0x2b,-0x2(%ebp)
46949e:	eb 01                	jmp    0x4694a1
4694a0:	46                   	inc    %esi
4694a1:	8b 7d 10             	mov    0x10(%ebp),%edi
4694a4:	85 ff                	test   %edi,%edi
4694a6:	0f 88 66 01 00 00    	js     0x469612
4694ac:	83 ff 01             	cmp    $0x1,%edi
4694af:	0f 84 5d 01 00 00    	je     0x469612
4694b5:	83 ff 24             	cmp    $0x24,%edi
4694b8:	0f 8f 54 01 00 00    	jg     0x469612
4694be:	85 ff                	test   %edi,%edi
4694c0:	7e 17                	jle    0x4694d9
4694c2:	83 ff 10             	cmp    $0x10,%edi
4694c5:	75 59                	jne    0x469520
4694c7:	80 3e 30             	cmpb   $0x30,(%esi)
4694ca:	75 54                	jne    0x469520
4694cc:	8a 46 01             	mov    0x1(%esi),%al
4694cf:	3c 78                	cmp    $0x78,%al
4694d1:	74 4a                	je     0x46951d
4694d3:	3c 58                	cmp    $0x58,%al
4694d5:	75 49                	jne    0x469520
4694d7:	eb 44                	jmp    0x46951d
4694d9:	8a 06                	mov    (%esi),%al
4694db:	3c 30                	cmp    $0x30,%al
4694dd:	74 0b                	je     0x4694ea
4694df:	6a 0a                	push   $0xa
4694e1:	5f                   	pop    %edi
4694e2:	89 7d f0             	mov    %edi,-0x10(%ebp)
4694e5:	89 75 f4             	mov    %esi,-0xc(%ebp)
4694e8:	eb 1b                	jmp    0x469505
4694ea:	8a 46 01             	mov    0x1(%esi),%al
4694ed:	3c 78                	cmp    $0x78,%al
4694ef:	74 29                	je     0x46951a
4694f1:	3c 58                	cmp    $0x58,%al
4694f3:	74 25                	je     0x46951a
4694f5:	6a 08                	push   $0x8
4694f7:	5f                   	pop    %edi
4694f8:	89 7d f0             	mov    %edi,-0x10(%ebp)
4694fb:	89 75 f4             	mov    %esi,-0xc(%ebp)
4694fe:	46                   	inc    %esi
4694ff:	8a 06                	mov    (%esi),%al
469501:	3c 30                	cmp    $0x30,%al
469503:	74 f9                	je     0x4694fe
469505:	33 c9                	xor    %ecx,%ecx
469507:	89 75 e4             	mov    %esi,-0x1c(%ebp)
46950a:	8b d9                	mov    %ecx,%ebx
46950c:	89 4d ec             	mov    %ecx,-0x14(%ebp)
46950f:	89 4d e8             	mov    %ecx,-0x18(%ebp)
469512:	88 4d ff             	mov    %cl,-0x1(%ebp)
469515:	0f be c0             	movsbl %al,%eax
469518:	eb 3c                	jmp    0x469556
46951a:	6a 10                	push   $0x10
46951c:	5f                   	pop    %edi
46951d:	83 c6 02             	add    $0x2,%esi
469520:	89 7d f0             	mov    %edi,-0x10(%ebp)
469523:	89 75 f4             	mov    %esi,-0xc(%ebp)
469526:	eb d7                	jmp    0x4694ff
469528:	8b 45 f8             	mov    -0x8(%ebp),%eax
46952b:	ba 8c 04 4a 00       	mov    $0x4a048c,%edx
469530:	53                   	push   %ebx
469531:	50                   	push   %eax
469532:	6a 00                	push   $0x0
469534:	2a ca                	sub    %dl,%cl
469536:	89 45 ec             	mov    %eax,-0x14(%ebp)
469539:	57                   	push   %edi
46953a:	89 5d e8             	mov    %ebx,-0x18(%ebp)
46953d:	88 4d ff             	mov    %cl,-0x1(%ebp)
469540:	e8 db 0d 00 00       	call   0x46a320
469545:	8b c8                	mov    %eax,%ecx
469547:	8b da                	mov    %edx,%ebx
469549:	0f be 45 ff          	movsbl -0x1(%ebp),%eax
46954d:	99                   	cltd
46954e:	03 c8                	add    %eax,%ecx
469550:	13 da                	adc    %edx,%ebx
469552:	46                   	inc    %esi
469553:	0f be 06             	movsbl (%esi),%eax
469556:	57                   	push   %edi
469557:	50                   	push   %eax
469558:	89 4d f8             	mov    %ecx,-0x8(%ebp)
46955b:	e8 31 07 01 00       	call   0x479c91
469560:	59                   	pop    %ecx
469561:	50                   	push   %eax
469562:	b8 8c 04 4a 00       	mov    $0x4a048c,%eax
469567:	50                   	push   %eax
469568:	e8 a3 27 00 00       	call   0x46bd10
46956d:	8b c8                	mov    %eax,%ecx
46956f:	83 c4 0c             	add    $0xc,%esp
469572:	85 c9                	test   %ecx,%ecx
469574:	75 b2                	jne    0x469528
469576:	39 75 f4             	cmp    %esi,-0xc(%ebp)
469579:	75 15                	jne    0x469590
46957b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
46957e:	85 c9                	test   %ecx,%ecx
469580:	0f 84 95 00 00 00    	je     0x46961b
469586:	8b 45 08             	mov    0x8(%ebp),%eax
469589:	89 01                	mov    %eax,(%ecx)
46958b:	e9 8b 00 00 00       	jmp    0x46961b
469590:	0f be 87 b4 04 4a 00 	movsbl 0x4a04b4(%edi),%eax
469597:	8b ce                	mov    %esi,%ecx
469599:	2b c8                	sub    %eax,%ecx
46959b:	2b 4d e4             	sub    -0x1c(%ebp),%ecx
46959e:	78 53                	js     0x4695f3
4695a0:	85 c9                	test   %ecx,%ecx
4695a2:	7f 30                	jg     0x4695d4
4695a4:	0f be 45 ff          	movsbl -0x1(%ebp),%eax
4695a8:	8b 7d f8             	mov    -0x8(%ebp),%edi
4695ab:	8b cf                	mov    %edi,%ecx
4695ad:	99                   	cltd
4695ae:	2b c8                	sub    %eax,%ecx
4695b0:	8b c3                	mov    %ebx,%eax
4695b2:	1b c2                	sbb    %edx,%eax
4695b4:	3b d8                	cmp    %eax,%ebx
4695b6:	72 1c                	jb     0x4695d4
4695b8:	77 04                	ja     0x4695be
4695ba:	3b f9                	cmp    %ecx,%edi
4695bc:	72 16                	jb     0x4695d4
4695be:	6a 00                	push   $0x0
4695c0:	ff 75 f0             	push   -0x10(%ebp)
4695c3:	50                   	push   %eax
4695c4:	51                   	push   %ecx
4695c5:	e8 96 0d 00 00       	call   0x46a360
4695ca:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4695cd:	75 05                	jne    0x4695d4
4695cf:	3b 55 e8             	cmp    -0x18(%ebp),%edx
4695d2:	74 22                	je     0x4695f6
4695d4:	e8 5c 09 01 00       	call   0x479f35
4695d9:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
4695df:	8b 45 14             	mov    0x14(%ebp),%eax
4695e2:	85 c0                	test   %eax,%eax
4695e4:	74 06                	je     0x4695ec
4695e6:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
4695ec:	83 cf ff             	or     $0xffffffff,%edi
4695ef:	8b df                	mov    %edi,%ebx
4695f1:	eb 10                	jmp    0x469603
4695f3:	8b 7d f8             	mov    -0x8(%ebp),%edi
4695f6:	80 7d fe 2d          	cmpb   $0x2d,-0x2(%ebp)
4695fa:	75 07                	jne    0x469603
4695fc:	f7 df                	neg    %edi
4695fe:	83 d3 00             	adc    $0x0,%ebx
469601:	f7 db                	neg    %ebx
469603:	8b 4d 0c             	mov    0xc(%ebp),%ecx
469606:	85 c9                	test   %ecx,%ecx
469608:	74 02                	je     0x46960c
46960a:	89 31                	mov    %esi,(%ecx)
46960c:	8b c7                	mov    %edi,%eax
46960e:	8b d3                	mov    %ebx,%edx
469610:	eb 0d                	jmp    0x46961f
469612:	8b 45 0c             	mov    0xc(%ebp),%eax
469615:	85 c0                	test   %eax,%eax
469617:	74 02                	je     0x46961b
469619:	89 18                	mov    %ebx,(%eax)
46961b:	33 c0                	xor    %eax,%eax
46961d:	33 d2                	xor    %edx,%edx
46961f:	5f                   	pop    %edi
469620:	5e                   	pop    %esi
469621:	5b                   	pop    %ebx
469622:	c9                   	leave
469623:	c3                   	ret
469624:	55                   	push   %ebp
469625:	8b ec                	mov    %esp,%ebp
469627:	ff 75 08             	push   0x8(%ebp)
46962a:	ff 15 94 e0 49 00    	call   *0x49e094
469630:	5d                   	pop    %ebp
469631:	c3                   	ret
469632:	55                   	push   %ebp
469633:	8b ec                	mov    %esp,%ebp
469635:	6a 00                	push   $0x0
469637:	68 a0 0f 00 00       	push   $0xfa0
46963c:	ff 75 08             	push   0x8(%ebp)
46963f:	ff 15 9c e0 49 00    	call   *0x49e09c
469645:	5d                   	pop    %ebp
469646:	c3                   	ret
469647:	55                   	push   %ebp
469648:	8b ec                	mov    %esp,%ebp
46964a:	ff 75 08             	push   0x8(%ebp)
46964d:	ff 15 98 e1 49 00    	call   *0x49e198
469653:	5d                   	pop    %ebp
469654:	c3                   	ret
469655:	55                   	push   %ebp
469656:	8b ec                	mov    %esp,%ebp
469658:	ff 75 08             	push   0x8(%ebp)
46965b:	ff 15 a4 e1 49 00    	call   *0x49e1a4
469661:	5d                   	pop    %ebp
469662:	c3                   	ret
469663:	55                   	push   %ebp
469664:	8b ec                	mov    %esp,%ebp
469666:	6a ff                	push   $0xffffffff
469668:	68 e0 7f 49 00       	push   $0x497fe0
46966d:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
469673:	50                   	push   %eax
469674:	56                   	push   %esi
469675:	a1 14 40 4c 00       	mov    0x4c4014,%eax
46967a:	33 c5                	xor    %ebp,%eax
46967c:	50                   	push   %eax
46967d:	8d 45 f4             	lea    -0xc(%ebp),%eax
469680:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
469686:	eb 25                	jmp    0x4696ad
469688:	8b 04 8d fc 7e 4c 00 	mov    0x4c7efc(,%ecx,4),%eax
46968f:	41                   	inc    %ecx
469690:	50                   	push   %eax
469691:	89 0d 08 40 4c 00    	mov    %ecx,0x4c4008
469697:	ff 15 98 e0 49 00    	call   *0x49e098
46969d:	8b f0                	mov    %eax,%esi
46969f:	85 f6                	test   %esi,%esi
4696a1:	74 0a                	je     0x4696ad
4696a3:	8b ce                	mov    %esi,%ecx
4696a5:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4696ab:	ff d6                	call   *%esi
4696ad:	8b 0d 08 40 4c 00    	mov    0x4c4008,%ecx
4696b3:	83 f9 0a             	cmp    $0xa,%ecx
4696b6:	72 d0                	jb     0x469688
4696b8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4696bb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4696c2:	59                   	pop    %ecx
4696c3:	5e                   	pop    %esi
4696c4:	c9                   	leave
4696c5:	c3                   	ret
4696c6:	cc                   	int3
4696c7:	cc                   	int3
4696c8:	cc                   	int3
4696c9:	cc                   	int3
4696ca:	cc                   	int3
4696cb:	55                   	push   %ebp
4696cc:	8b ec                	mov    %esp,%ebp
4696ce:	83 3d 08 40 4c 00 00 	cmpl   $0x0,0x4c4008
4696d5:	0f 84 be 92 01 00    	je     0x482999
4696db:	ff 75 08             	push   0x8(%ebp)
4696de:	ff 15 fc e1 49 00    	call   *0x49e1fc
4696e4:	8b 0d 08 40 4c 00    	mov    0x4c4008,%ecx
4696ea:	49                   	dec    %ecx
4696eb:	89 0d 08 40 4c 00    	mov    %ecx,0x4c4008
4696f1:	89 04 8d fc 7e 4c 00 	mov    %eax,0x4c7efc(,%ecx,4)
4696f8:	5d                   	pop    %ebp
4696f9:	c3                   	ret
4696fa:	55                   	push   %ebp