46e32f:	8b ec                	mov    %esp,%ebp
46e331:	53                   	push   %ebx
46e332:	56                   	push   %esi
46e333:	6a 44                	push   $0x44
46e335:	6a 00                	push   $0x0
46e337:	bb 00 3d 4c 00       	mov    $0x4c3d00,%ebx
46e33c:	53                   	push   %ebx
46e33d:	e8 0e 2a fb ff       	call   0x420d50
46e342:	6a 10                	push   $0x10
46e344:	6a 00                	push   $0x0
46e346:	be 44 3d 4c 00       	mov    $0x4c3d44,%esi
46e34b:	56                   	push   %esi
46e34c:	e8 ff 29 fb ff       	call   0x420d50
46e351:	83 c4 18             	add    $0x18,%esp
46e354:	33 c0                	xor    %eax,%eax
46e356:	56                   	push   %esi
46e357:	53                   	push   %ebx
46e358:	40                   	inc    %eax
46e359:	a3 2c 3d 4c 00       	mov    %eax,0x4c3d2c
46e35e:	66 a3 30 3d 4c 00    	mov    %ax,0x4c3d30
46e364:	33 c0                	xor    %eax,%eax
46e366:	50                   	push   %eax
46e367:	50                   	push   %eax
46e368:	6a 20                	push   $0x20
46e36a:	50                   	push   %eax
46e36b:	50                   	push   %eax
46e36c:	50                   	push   %eax
46e36d:	ff 75 08             	push   0x8(%ebp)
46e370:	c7 05 00 3d 4c 00 44 	movl   $0x44,0x4c3d00
46e377:	00 00 00
46e37a:	50                   	push   %eax
46e37b:	ff 15 fc d2 48 00    	call   *0x48d2fc
46e381:	5e                   	pop    %esi
46e382:	5b                   	pop    %ebx
46e383:	85 c0                	test   %eax,%eax
46e385:	74 0c                	je     0x46e393
46e387:	ff 35 44 3d 4c 00    	push   0x4c3d44
46e38d:	ff 15 0c d3 48 00    	call   *0x48d30c
46e393:	5d                   	pop    %ebp
46e394:	c2 04 00             	ret    $0x4
46e397:	55                   	push   %ebp
46e398:	8b ec                	mov    %esp,%ebp
46e39a:	51                   	push   %ecx
46e39b:	8b 45 0c             	mov    0xc(%ebp),%eax
46e39e:	53                   	push   %ebx
46e39f:	8b 5d 08             	mov    0x8(%ebp),%ebx
46e3a2:	56                   	push   %esi
46e3a3:	8b 53 04             	mov    0x4(%ebx),%edx
46e3a6:	57                   	push   %edi
46e3a7:	6a 03                	push   $0x3
46e3a9:	8b f9                	mov    %ecx,%edi
46e3ab:	89 55 08             	mov    %edx,0x8(%ebp)
46e3ae:	5e                   	pop    %esi
46e3af:	39 83 90 01 00 00    	cmp    %eax,0x190(%ebx)
46e3b5:	0f 84 92 00 00 00    	je     0x46e44d
46e3bb:	39 b7 84 00 00 00    	cmp    %esi,0x84(%edi)
46e3c1:	0f 8c 80 00 00 00    	jl     0x46e447
46e3c7:	8b 47 74             	mov    0x74(%edi),%eax
46e3ca:	8b 04 b0             	mov    (%eax,%esi,4),%eax
46e3cd:	8b 08                	mov    (%eax),%ecx
46e3cf:	85 c9                	test   %ecx,%ecx
46e3d1:	74 65                	je     0x46e438
46e3d3:	39 51 04             	cmp    %edx,0x4(%ecx)
46e3d6:	75 60                	jne    0x46e438
46e3d8:	8a 91 90 00 00 00    	mov    0x90(%ecx),%dl
46e3de:	80 fa 0b             	cmp    $0xb,%dl
46e3e1:	74 52                	je     0x46e435
46e3e3:	8a b1 93 00 00 00    	mov    0x93(%ecx),%dh
46e3e9:	0f b6 c6             	movzbl %dh,%eax
46e3ec:	3b 83 90 01 00 00    	cmp    0x190(%ebx),%eax
46e3f2:	74 13                	je     0x46e407
46e3f4:	80 bb 98 01 00 00 00 	cmpb   $0x0,0x198(%ebx)
46e3fb:	74 38                	je     0x46e435
46e3fd:	80 fe ff             	cmp    $0xff,%dh
46e400:	74 33                	je     0x46e435
46e402:	80 fa 0a             	cmp    $0xa,%dl
46e405:	74 2e                	je     0x46e435
46e407:	6a 00                	push   $0x0
46e409:	ff 31                	push   (%ecx)
46e40b:	ff 15 04 d7 48 00    	call   *0x48d704
46e411:	8b 47 74             	mov    0x74(%edi),%eax
46e414:	8b 04 b0             	mov    (%eax,%esi,4),%eax
46e417:	8b 00                	mov    (%eax),%eax
46e419:	f6 80 92 00 00 00 40 	testb  $0x40,0x92(%eax)
46e420:	74 13                	je     0x46e435
46e422:	80 b8 90 00 00 00 1a 	cmpb   $0x1a,0x90(%eax)
46e429:	75 0a                	jne    0x46e435
46e42b:	6a 00                	push   $0x0
46e42d:	ff 30                	push   (%eax)
46e42f:	ff 15 3c d6 48 00    	call   *0x48d63c
46e435:	8b 55 08             	mov    0x8(%ebp),%edx
46e438:	46                   	inc    %esi
46e439:	3b b7 84 00 00 00    	cmp    0x84(%edi),%esi
46e43f:	7e 86                	jle    0x46e3c7
46e441:	8b 45 0c             	mov    0xc(%ebp),%eax
46e444:	6a 03                	push   $0x3
46e446:	5e                   	pop    %esi
46e447:	89 83 90 01 00 00    	mov    %eax,0x190(%ebx)
46e44d:	39 b7 84 00 00 00    	cmp    %esi,0x84(%edi)
46e453:	0f 8c 81 00 00 00    	jl     0x46e4da
46e459:	8b 47 74             	mov    0x74(%edi),%eax
46e45c:	8b 04 b0             	mov    (%eax,%esi,4),%eax
46e45f:	8b 08                	mov    (%eax),%ecx
46e461:	85 c9                	test   %ecx,%ecx
46e463:	74 66                	je     0x46e4cb
46e465:	39 51 04             	cmp    %edx,0x4(%ecx)
46e468:	75 61                	jne    0x46e4cb
46e46a:	80 b9 90 00 00 00 0b 	cmpb   $0xb,0x90(%ecx)
46e471:	74 58                	je     0x46e4cb
46e473:	0f b6 81 93 00 00 00 	movzbl 0x93(%ecx),%eax
46e47a:	3b 83 90 01 00 00    	cmp    0x190(%ebx),%eax
46e480:	75 49                	jne    0x46e4cb
46e482:	f6 81 92 00 00 00 20 	testb  $0x20,0x92(%ecx)
46e489:	75 40                	jne    0x46e4cb
46e48b:	6a 00                	push   $0x0
46e48d:	ff 31                	push   (%ecx)
46e48f:	ff 15 04 d7 48 00    	call   *0x48d704
46e495:	8b 47 74             	mov    0x74(%edi),%eax
46e498:	6a 04                	push   $0x4
46e49a:	8b 04 b0             	mov    (%eax,%esi,4),%eax
46e49d:	8b 00                	mov    (%eax),%eax
46e49f:	ff 30                	push   (%eax)
46e4a1:	ff 15 04 d7 48 00    	call   *0x48d704
46e4a7:	8b 47 74             	mov    0x74(%edi),%eax
46e4aa:	8b 04 b0             	mov    (%eax,%esi,4),%eax
46e4ad:	8b 00                	mov    (%eax),%eax
46e4af:	f6 80 92 00 00 00 40 	testb  $0x40,0x92(%eax)
46e4b6:	74 13                	je     0x46e4cb
46e4b8:	80 b8 90 00 00 00 1a 	cmpb   $0x1a,0x90(%eax)
46e4bf:	75 0a                	jne    0x46e4cb
46e4c1:	6a 01                	push   $0x1
46e4c3:	ff 30                	push   (%eax)
46e4c5:	ff 15 3c d6 48 00    	call   *0x48d63c
46e4cb:	8b 55 08             	mov    0x8(%ebp),%edx
46e4ce:	46                   	inc    %esi
46e4cf:	3b b7 84 00 00 00    	cmp    0x84(%edi),%esi
46e4d5:	7e 82                	jle    0x46e459
46e4d7:	8b 45 0c             	mov    0xc(%ebp),%eax
46e4da:	6a 00                	push   $0x0
46e4dc:	50                   	push   %eax
46e4dd:	68 0c 13 00 00       	push   $0x130c
46e4e2:	ff b3 88 01 00 00    	push   0x188(%ebx)
46e4e8:	ff 15 70 d6 48 00    	call   *0x48d670
46e4ee:	5f                   	pop    %edi
46e4ef:	5e                   	pop    %esi
46e4f0:	5b                   	pop    %ebx
46e4f1:	c9                   	leave
46e4f2:	c2 08 00             	ret    $0x8
46e4f5:	55                   	push   %ebp
46e4f6:	8b ec                	mov    %esp,%ebp
46e4f8:	51                   	push   %ecx
46e4f9:	51                   	push   %ecx
46e4fa:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
46e4fe:	53                   	push   %ebx
46e4ff:	56                   	push   %esi
46e500:	57                   	push   %edi
46e501:	8d 4d 10             	lea    0x10(%ebp),%ecx
46e504:	e8 7d ed f9 ff       	call   0x40d286
46e509:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46e50c:	53                   	push   %ebx
46e50d:	8b f0                	mov    %eax,%esi
46e50f:	c6 45 f8 00          	movb   $0x0,-0x8(%ebp)
46e513:	e8 c3 27 fb ff       	call   0x420cdb
46e518:	8b 7d 08             	mov    0x8(%ebp),%edi
46e51b:	59                   	pop    %ecx
46e51c:	83 f8 04             	cmp    $0x4,%eax
46e51f:	76 70                	jbe    0x46e591
46e521:	68 48 4b 4b 00       	push   $0x4b4b48
46e526:	53                   	push   %ebx
46e527:	e8 af 27 fb ff       	call   0x420cdb
46e52c:	83 c0 fc             	add    $0xfffffffc,%eax
46e52f:	59                   	pop    %ecx
46e530:	8d 04 43             	lea    (%ebx,%eax,2),%eax
46e533:	50                   	push   %eax
46e534:	e8 6e 2a fb ff       	call   0x420fa7
46e539:	f7 d8                	neg    %eax
46e53b:	1a c0                	sbb    %al,%al
46e53d:	59                   	pop    %ecx
46e53e:	fe c0                	inc    %al
46e540:	59                   	pop    %ecx
46e541:	68 54 4b 4b 00       	push   $0x4b4b54
46e546:	53                   	push   %ebx
46e547:	89 45 f8             	mov    %eax,-0x8(%ebp)
46e54a:	e8 8c 27 fb ff       	call   0x420cdb
46e54f:	83 c0 fc             	add    $0xfffffffc,%eax
46e552:	59                   	pop    %ecx
46e553:	8d 0c 43             	lea    (%ebx,%eax,2),%ecx
46e556:	51                   	push   %ecx
46e557:	e8 4b 2a fb ff       	call   0x420fa7
46e55c:	f7 d8                	neg    %eax
46e55e:	1a c0                	sbb    %al,%al
46e560:	59                   	pop    %ecx
46e561:	fe c0                	inc    %al
46e563:	59                   	pop    %ecx
46e564:	68 60 4b 4b 00       	push   $0x4b4b60
46e569:	53                   	push   %ebx
46e56a:	89 45 0c             	mov    %eax,0xc(%ebp)
46e56d:	e8 69 27 fb ff       	call   0x420cdb
46e572:	83 c0 fc             	add    $0xfffffffc,%eax
46e575:	59                   	pop    %ecx
46e576:	8d 0c 43             	lea    (%ebx,%eax,2),%ecx
46e579:	51                   	push   %ecx
46e57a:	e8 28 2a fb ff       	call   0x420fa7
46e57f:	59                   	pop    %ecx
46e580:	59                   	pop    %ecx
46e581:	85 c0                	test   %eax,%eax
46e583:	74 7d                	je     0x46e602
46e585:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
46e589:	75 77                	jne    0x46e602
46e58b:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
46e58f:	75 23                	jne    0x46e5b4
46e591:	0f bf 87 8e 00 00 00 	movswl 0x8e(%edi),%eax
46e598:	68 10 20 00 00       	push   $0x2010
46e59d:	50                   	push   %eax
46e59e:	0f bf 87 8c 00 00 00 	movswl 0x8c(%edi),%eax
46e5a5:	50                   	push   %eax
46e5a6:	6a 01                	push   $0x1
46e5a8:	53                   	push   %ebx
46e5a9:	6a 00                	push   $0x0
46e5ab:	ff 15 78 d5 48 00    	call   *0x48d578
46e5b1:	89 45 fc             	mov    %eax,-0x4(%ebp)
46e5b4:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
46e5b8:	0f 85 27 01 00 00    	jne    0x46e6e5
46e5be:	8d 4d 10             	lea    0x10(%ebp),%ecx
46e5c1:	e8 c8 ee f9 ff       	call   0x40d48e
46e5c6:	84 c0                	test   %al,%al
46e5c8:	0f 84 17 01 00 00    	je     0x46e6e5
46e5ce:	85 f6                	test   %esi,%esi
46e5d0:	7e 0c                	jle    0x46e5de
46e5d2:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
46e5d6:	0f 84 09 01 00 00    	je     0x46e6e5
46e5dc:	85 f6                	test   %esi,%esi
46e5de:	79 07                	jns    0x46e5e7
46e5e0:	83 c8 ff             	or     $0xffffffff,%eax
46e5e3:	2b c6                	sub    %esi,%eax
46e5e5:	8b f0                	mov    %eax,%esi
46e5e7:	66 83 bf 8c 00 00 00 	cmpw   $0x10,0x8c(%edi)
46e5ee:	10
46e5ef:	6a 01                	push   $0x1
46e5f1:	8d 45 fc             	lea    -0x4(%ebp),%eax
46e5f4:	0f 8e e0 00 00 00    	jle    0x46e6da
46e5fa:	6a 00                	push   $0x0
46e5fc:	50                   	push   %eax
46e5fd:	e9 db 00 00 00       	jmp    0x46e6dd
46e602:	6a 32                	push   $0x32
46e604:	6a 00                	push   $0x0
46e606:	53                   	push   %ebx
46e607:	ff 15 64 d2 48 00    	call   *0x48d264
46e60d:	89 45 0c             	mov    %eax,0xc(%ebp)
46e610:	85 c0                	test   %eax,%eax
46e612:	74 a0                	je     0x46e5b4
46e614:	6a 04                	push   $0x4
46e616:	8d 4d 10             	lea    0x10(%ebp),%ecx
46e619:	e8 c6 ef f9 ff       	call   0x40d5e4
46e61e:	84 c0                	test   %al,%al
46e620:	74 4b                	je     0x46e66d
46e622:	8d 4d 10             	lea    0x10(%ebp),%ecx
46e625:	e8 42 ad f9 ff       	call   0x40936c
46e62a:	8b 45 18             	mov    0x18(%ebp),%eax
46e62d:	6a 00                	push   $0x0
46e62f:	8b 08                	mov    (%eax),%ecx
46e631:	0f bf 87 8e 00 00 00 	movswl 0x8e(%edi),%eax
46e638:	50                   	push   %eax
46e639:	0f bf 87 8c 00 00 00 	movswl 0x8c(%edi),%eax
46e640:	50                   	push   %eax
46e641:	6a 01                	push   $0x1
46e643:	51                   	push   %ecx
46e644:	ff 75 0c             	push   0xc(%ebp)
46e647:	ff 15 78 d5 48 00    	call   *0x48d578
46e64d:	89 45 fc             	mov    %eax,-0x4(%ebp)
46e650:	85 c0                	test   %eax,%eax
46e652:	75 78                	jne    0x46e6cc
46e654:	50                   	push   %eax
46e655:	0f bf 87 8e 00 00 00 	movswl 0x8e(%edi),%eax
46e65c:	50                   	push   %eax
46e65d:	0f bf 87 8c 00 00 00 	movswl 0x8c(%edi),%eax
46e664:	50                   	push   %eax
46e665:	0f b7 c6             	movzwl %si,%eax
46e668:	6a 01                	push   $0x1
46e66a:	50                   	push   %eax
46e66b:	eb 53                	jmp    0x46e6c0
46e66d:	85 f6                	test   %esi,%esi
46e66f:	7e 26                	jle    0x46e697
46e671:	0f bf 87 8e 00 00 00 	movswl 0x8e(%edi),%eax
46e678:	6a 00                	push   $0x0
46e67a:	50                   	push   %eax
46e67b:	0f bf 87 8c 00 00 00 	movswl 0x8c(%edi),%eax
46e682:	50                   	push   %eax
46e683:	0f b7 c6             	movzwl %si,%eax
46e686:	6a 01                	push   $0x1
46e688:	50                   	push   %eax
46e689:	ff 75 0c             	push   0xc(%ebp)
46e68c:	ff 15 78 d5 48 00    	call   *0x48d578
46e692:	89 45 fc             	mov    %eax,-0x4(%ebp)
46e695:	eb 03                	jmp    0x46e69a
46e697:	8b 45 fc             	mov    -0x4(%ebp),%eax
46e69a:	85 c0                	test   %eax,%eax
46e69c:	75 2e                	jne    0x46e6cc
46e69e:	8d 4d 10             	lea    0x10(%ebp),%ecx
46e6a1:	e8 c6 ac f9 ff       	call   0x40936c
46e6a6:	8b 45 18             	mov    0x18(%ebp),%eax
46e6a9:	6a 00                	push   $0x0
46e6ab:	8b 08                	mov    (%eax),%ecx
46e6ad:	0f bf 87 8e 00 00 00 	movswl 0x8e(%edi),%eax
46e6b4:	50                   	push   %eax
46e6b5:	0f bf 87 8c 00 00 00 	movswl 0x8c(%edi),%eax
46e6bc:	50                   	push   %eax
46e6bd:	6a 01                	push   $0x1
46e6bf:	51                   	push   %ecx
46e6c0:	ff 75 0c             	push   0xc(%ebp)
46e6c3:	ff 15 78 d5 48 00    	call   *0x48d578
46e6c9:	89 45 fc             	mov    %eax,-0x4(%ebp)
46e6cc:	ff 75 0c             	push   0xc(%ebp)
46e6cf:	ff 15 88 d1 48 00    	call   *0x48d188
46e6d5:	e9 da fe ff ff       	jmp    0x46e5b4
46e6da:	50                   	push   %eax
46e6db:	6a 00                	push   $0x0
46e6dd:	56                   	push   %esi
46e6de:	53                   	push   %ebx
46e6df:	ff 15 a0 d4 48 00    	call   *0x48d4a0
46e6e5:	83 7f 68 00          	cmpl   $0x0,0x68(%edi)
46e6e9:	74 09                	je     0x46e6f4
46e6eb:	ff 77 68             	push   0x68(%edi)
46e6ee:	ff 15 24 d7 48 00    	call   *0x48d724
46e6f4:	8b 45 fc             	mov    -0x4(%ebp),%eax
46e6f7:	8b 35 70 d6 48 00    	mov    0x48d670,%esi
46e6fd:	6a 00                	push   $0x0
46e6ff:	50                   	push   %eax
46e700:	89 47 68             	mov    %eax,0x68(%edi)
46e703:	8b 3f                	mov    (%edi),%edi
46e705:	68 70 01 00 00       	push   $0x170
46e70a:	57                   	push   %edi
46e70b:	ff d6                	call   *%esi
46e70d:	6a 01                	push   $0x1
46e70f:	68 72 01 00 00       	push   $0x172
46e714:	6a 64                	push   $0x64
46e716:	57                   	push   %edi
46e717:	ff d6                	call   *%esi
46e719:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
46e71d:	8d 4d 10             	lea    0x10(%ebp),%ecx
46e720:	0f 95 c3             	setne  %bl
46e723:	e8 f8 44 fa ff       	call   0x412c20
46e728:	5f                   	pop    %edi
46e729:	5e                   	pop    %esi
46e72a:	8a c3                	mov    %bl,%al
46e72c:	5b                   	pop    %ebx
46e72d:	c9                   	leave
46e72e:	c2 18 00             	ret    $0x18
46e731:	55                   	push   %ebp
46e732:	8b ec                	mov    %esp,%ebp