41f3d9:	53                   	push   %ebx
41f3da:	ff 15 80 71 4a 00    	call   *0x4a7180
41f3e0:	8d 4d d8             	lea    -0x28(%ebp),%ecx
41f3e3:	ff 15 20 74 4a 00    	call   *0x4a7420
41f3e9:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41f3ed:	8d 4d d8             	lea    -0x28(%ebp),%ecx
41f3f0:	68 76 c3 00 00       	push   $0xc376
41f3f5:	ff 15 40 74 4a 00    	call   *0x4a7440
41f3fb:	6a 01                	push   $0x1
41f3fd:	ff 75 d8             	push   -0x28(%ebp)
41f400:	e8 50 a3 04 00       	call   0x469755
41f405:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
41f409:	8d 4d d8             	lea    -0x28(%ebp),%ecx
41f40c:	ff 15 1c 74 4a 00    	call   *0x4a741c
41f412:	6a 04                	push   $0x4
41f414:	5e                   	pop    %esi
41f415:	56                   	push   %esi
41f416:	8d 45 cc             	lea    -0x34(%ebp),%eax
41f419:	50                   	push   %eax
41f41a:	e8 73 a8 04 00       	call   0x469c92
41f41f:	6a 10                	push   $0x10
41f421:	8d 45 e0             	lea    -0x20(%ebp),%eax
41f424:	50                   	push   %eax
41f425:	e8 68 a8 04 00       	call   0x469c92
41f42a:	56                   	push   %esi
41f42b:	8d 45 d4             	lea    -0x2c(%ebp),%eax
41f42e:	c7 45 d4 14 00 00 00 	movl   $0x14,-0x2c(%ebp)
41f435:	50                   	push   %eax
41f436:	e8 57 a8 04 00       	call   0x469c92
41f43b:	56                   	push   %esi
41f43c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
41f43f:	c7 45 d4 e8 03 00 00 	movl   $0x3e8,-0x2c(%ebp)
41f446:	50                   	push   %eax
41f447:	e8 46 a8 04 00       	call   0x469c92
41f44c:	8b 4d d0             	mov    -0x30(%ebp),%ecx
41f44f:	89 4d d0             	mov    %ecx,-0x30(%ebp)
41f452:	85 c9                	test   %ecx,%ecx
41f454:	74 06                	je     0x41f45c
41f456:	51                   	push   %ecx
41f457:	e8 13 ee ff ff       	call   0x41e26f
41f45c:	56                   	push   %esi
41f45d:	8d 4d d0             	lea    -0x30(%ebp),%ecx
41f460:	51                   	push   %ecx
41f461:	e8 2c a8 04 00       	call   0x469c92
41f466:	6a 01                	push   $0x1
41f468:	8d 4d dc             	lea    -0x24(%ebp),%ecx
41f46b:	c6 45 dc 02          	movb   $0x2,-0x24(%ebp)
41f46f:	51                   	push   %ecx
41f470:	e8 1d a8 04 00       	call   0x469c92
41f475:	e8 b8 a3 04 00       	call   0x469832
41f47a:	33 c0                	xor    %eax,%eax
41f47c:	40                   	inc    %eax
41f47d:	e8 33 10 07 00       	call   0x4904b5
41f482:	c2 04 00             	ret    $0x4
41f485:	ff 75 cc             	push   -0x34(%ebp)
41f488:	ff 15 60 71 4a 00    	call   *0x4a7160
41f48e:	85 f6                	test   %esi,%esi
41f490:	74 07                	je     0x41f499
41f492:	56                   	push   %esi
41f493:	ff 15 80 71 4a 00    	call   *0x4a7180
41f499:	85 db                	test   %ebx,%ebx
41f49b:	74 07                	je     0x41f4a4
41f49d:	53                   	push   %ebx
41f49e:	ff 15 80 71 4a 00    	call   *0x4a7180
41f4a4:	e8 4b eb 00 00       	call   0x42dff4
41f4a9:	6a 00                	push   $0x0
41f4ab:	ff 15 d4 7d 4a 00    	call   *0x4a7dd4
41f4b1:	33 c0                	xor    %eax,%eax
41f4b3:	eb c8                	jmp    0x41f47d
41f4b5:	6a 38                	push   $0x38
41f4b7:	b8 a2 17 49 00       	mov    $0x4917a2,%eax
41f4bc:	e8 12 10 07 00       	call   0x4904d3
41f4c1:	8b d9                	mov    %ecx,%ebx
41f4c3:	ff 15 58 75 4a 00    	call   *0x4a7558
41f4c9:	8b 48 04             	mov    0x4(%eax),%ecx
41f4cc:	ff 15 a0 75 4a 00    	call   *0x4a75a0
41f4d2:	8b 45 08             	mov    0x8(%ebp),%eax
41f4d5:	33 ff                	xor    %edi,%edi
41f4d7:	89 7d fc             	mov    %edi,-0x4(%ebp)
41f4da:	2d 5a 01 00 00       	sub    $0x15a,%eax
41f4df:	0f 84 f7 03 00 00    	je     0x41f8dc
41f4e5:	83 e8 01             	sub    $0x1,%eax
41f4e8:	0f 84 e3 03 00 00    	je     0x41f8d1
41f4ee:	6a 01                	push   $0x1
41f4f0:	5e                   	pop    %esi
41f4f1:	83 e8 01             	sub    $0x1,%eax
41f4f4:	0f 85 82 03 00 00    	jne    0x41f87c
41f4fa:	a1 08 01 4a 00       	mov    0x4a0108,%eax
41f4ff:	81 78 40 59 02 00 00 	cmpl   $0x259,0x40(%eax)
41f506:	74 09                	je     0x41f511
41f508:	81 78 40 5a 02 00 00 	cmpl   $0x25a,0x40(%eax)
41f50f:	75 0d                	jne    0x41f51e
41f511:	8b ce                	mov    %esi,%ecx
41f513:	e8 f0 f2 00 00       	call   0x42e808
41f518:	89 3d 30 49 4a 00    	mov    %edi,0x4a4930
41f51e:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f521:	e8 fa ea 00 00       	call   0x42e020
41f526:	57                   	push   %edi
41f527:	8b cb                	mov    %ebx,%ecx
41f529:	e8 49 fd ff ff       	call   0x41f277
41f52e:	8b 43 04             	mov    0x4(%ebx),%eax
41f531:	ff 70 18             	push   0x18(%eax)
41f534:	ff 70 0c             	push   0xc(%eax)
41f537:	ff 15 68 71 4a 00    	call   *0x4a7168
41f53d:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f540:	8d 45 d4             	lea    -0x2c(%ebp),%eax
41f543:	ff 71 40             	push   0x40(%ecx)
41f546:	0f b7 51 38          	movzwl 0x38(%ecx),%edx
41f54a:	ff 71 3c             	push   0x3c(%ecx)
41f54d:	50                   	push   %eax
41f54e:	0f b7 41 34          	movzwl 0x34(%ecx),%eax
41f552:	0f af d0             	imul   %eax,%edx
41f555:	51                   	push   %ecx
41f556:	ff 71 24             	push   0x24(%ecx)
41f559:	8b 49 14             	mov    0x14(%ecx),%ecx
41f55c:	0f b7 c2             	movzwl %dx,%eax
41f55f:	33 d2                	xor    %edx,%edx
41f561:	50                   	push   %eax
41f562:	e8 18 e1 00 00       	call   0x42d67f
41f567:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f56a:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41f56d:	ff 71 14             	push   0x14(%ecx)
41f570:	ff 71 0c             	push   0xc(%ecx)
41f573:	ff 15 68 71 4a 00    	call   *0x4a7168
41f579:	39 7d e4             	cmp    %edi,-0x1c(%ebp)
41f57c:	75 10                	jne    0x41f58e
41f57e:	56                   	push   %esi
41f57f:	b9 e0 55 4a 00       	mov    $0x4a55e0,%ecx
41f584:	e8 1e e7 02 00       	call   0x44dca7
41f589:	e9 68 03 00 00       	jmp    0x41f8f6
41f58e:	89 7d ec             	mov    %edi,-0x14(%ebp)
41f591:	39 7d 0c             	cmp    %edi,0xc(%ebp)
41f594:	74 05                	je     0x41f59b
41f596:	89 75 e8             	mov    %esi,-0x18(%ebp)
41f599:	eb 11                	jmp    0x41f5ac
41f59b:	8b 43 04             	mov    0x4(%ebx),%eax
41f59e:	6a 0e                	push   $0xe
41f5a0:	ff 70 0c             	push   0xc(%eax)
41f5a3:	ff 15 64 71 4a 00    	call   *0x4a7164
41f5a9:	89 45 e8             	mov    %eax,-0x18(%ebp)
41f5ac:	39 7d 0c             	cmp    %edi,0xc(%ebp)
41f5af:	74 07                	je     0x41f5b8
41f5b1:	8b c6                	mov    %esi,%eax
41f5b3:	89 75 e0             	mov    %esi,-0x20(%ebp)
41f5b6:	eb 11                	jmp    0x41f5c9
41f5b8:	8b 43 04             	mov    0x4(%ebx),%eax
41f5bb:	6a 0c                	push   $0xc
41f5bd:	ff 70 0c             	push   0xc(%eax)
41f5c0:	ff 15 64 71 4a 00    	call   *0x4a7164
41f5c6:	89 45 e0             	mov    %eax,-0x20(%ebp)
41f5c9:	39 3d 34 58 4a 00    	cmp    %edi,0x4a5834
41f5cf:	74 37                	je     0x41f608
41f5d1:	8b c8                	mov    %eax,%ecx
41f5d3:	0f af 4d e8          	imul   -0x18(%ebp),%ecx
41f5d7:	83 e9 01             	sub    $0x1,%ecx
41f5da:	74 1c                	je     0x41f5f8
41f5dc:	83 e9 03             	sub    $0x3,%ecx
41f5df:	74 0e                	je     0x41f5ef
41f5e1:	83 e9 04             	sub    $0x4,%ecx
41f5e4:	75 22                	jne    0x41f608
41f5e6:	6a 1c                	push   $0x1c
41f5e8:	b9 90 39 4a 00       	mov    $0x4a3990,%ecx
41f5ed:	eb 10                	jmp    0x41f5ff
41f5ef:	6a 10                	push   $0x10
41f5f1:	b9 80 3a 4a 00       	mov    $0x4a3a80,%ecx
41f5f6:	eb 07                	jmp    0x41f5ff
41f5f8:	6a 02                	push   $0x2
41f5fa:	b9 c0 3a 4a 00       	mov    $0x4a3ac0,%ecx
41f5ff:	5a                   	pop    %edx
41f600:	e8 93 de 00 00       	call   0x42d498
41f605:	89 45 ec             	mov    %eax,-0x14(%ebp)
41f608:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41f60b:	57                   	push   %edi
41f60c:	51                   	push   %ecx
41f60d:	ff 75 e8             	push   -0x18(%ebp)
41f610:	56                   	push   %esi
41f611:	56                   	push   %esi
41f612:	ff 15 5c 71 4a 00    	call   *0x4a715c
41f618:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f61b:	57                   	push   %edi
41f61c:	ff 75 e0             	push   -0x20(%ebp)
41f61f:	89 45 dc             	mov    %eax,-0x24(%ebp)
41f622:	ff 75 e8             	push   -0x18(%ebp)
41f625:	ff 71 30             	push   0x30(%ecx)
41f628:	ff 71 2c             	push   0x2c(%ecx)
41f62b:	ff 15 5c 71 4a 00    	call   *0x4a715c
41f631:	8b 4d dc             	mov    -0x24(%ebp),%ecx
41f634:	89 45 d8             	mov    %eax,-0x28(%ebp)
41f637:	85 c9                	test   %ecx,%ecx
41f639:	0f 84 48 02 00 00    	je     0x41f887
41f63f:	85 c0                	test   %eax,%eax
41f641:	0f 84 40 02 00 00    	je     0x41f887
41f647:	51                   	push   %ecx
41f648:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f64b:	89 7d d4             	mov    %edi,-0x2c(%ebp)
41f64e:	ff 71 0c             	push   0xc(%ecx)
41f651:	ff 15 68 71 4a 00    	call   *0x4a7168
41f657:	8b 45 ec             	mov    -0x14(%ebp),%eax
41f65a:	85 c0                	test   %eax,%eax
41f65c:	74 1f                	je     0x41f67d
41f65e:	57                   	push   %edi
41f65f:	ff 70 04             	push   0x4(%eax)
41f662:	8b 43 04             	mov    0x4(%ebx),%eax
41f665:	ff 70 0c             	push   0xc(%eax)
41f668:	ff 15 6c 71 4a 00    	call   *0x4a716c
41f66e:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f671:	89 45 d4             	mov    %eax,-0x2c(%ebp)
41f674:	ff 71 0c             	push   0xc(%ecx)
41f677:	ff 15 70 71 4a 00    	call   *0x4a7170
41f67d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41f680:	8b c8                	mov    %eax,%ecx
41f682:	8b 73 04             	mov    0x4(%ebx),%esi
41f685:	57                   	push   %edi
41f686:	50                   	push   %eax
41f687:	e8 e6 e2 00 00       	call   0x42d972
41f68c:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
41f68f:	0f b7 c0             	movzwl %ax,%eax
41f692:	03 01                	add    (%ecx),%eax
41f694:	03 c1                	add    %ecx,%eax
41f696:	50                   	push   %eax
41f697:	ff 76 30             	push   0x30(%esi)
41f69a:	57                   	push   %edi
41f69b:	ff 75 d8             	push   -0x28(%ebp)
41f69e:	ff 76 0c             	push   0xc(%esi)
41f6a1:	ff 15 58 71 4a 00    	call   *0x4a7158
41f6a7:	ff 75 e4             	push   -0x1c(%ebp)
41f6aa:	8b f0                	mov    %eax,%esi
41f6ac:	ff 15 5c 72 4a 00    	call   *0x4a725c
41f6b2:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f6b5:	3b 71 30             	cmp    0x30(%ecx),%esi
41f6b8:	74 60                	je     0x41f71a
41f6ba:	ff 71 14             	push   0x14(%ecx)
41f6bd:	ff 71 0c             	push   0xc(%ecx)
41f6c0:	ff 15 68 71 4a 00    	call   *0x4a7168
41f6c6:	8b 45 d4             	mov    -0x2c(%ebp),%eax
41f6c9:	85 c0                	test   %eax,%eax
41f6cb:	74 34                	je     0x41f701
41f6cd:	57                   	push   %edi
41f6ce:	50                   	push   %eax
41f6cf:	8b 43 04             	mov    0x4(%ebx),%eax
41f6d2:	ff 70 0c             	push   0xc(%eax)
41f6d5:	ff 15 6c 71 4a 00    	call   *0x4a716c
41f6db:	8b 43 04             	mov    0x4(%ebx),%eax
41f6de:	ff 70 0c             	push   0xc(%eax)
41f6e1:	ff 15 70 71 4a 00    	call   *0x4a7170
41f6e7:	8b 5d ec             	mov    -0x14(%ebp),%ebx
41f6ea:	85 db                	test   %ebx,%ebx
41f6ec:	74 13                	je     0x41f701
41f6ee:	8b 03                	mov    (%ebx),%eax
41f6f0:	6a 01                	push   $0x1
41f6f2:	8b 70 04             	mov    0x4(%eax),%esi
41f6f5:	8b ce                	mov    %esi,%ecx
41f6f7:	ff 15 2c 81 4a 00    	call   *0x4a812c
41f6fd:	8b cb                	mov    %ebx,%ecx
41f6ff:	ff d6                	call   *%esi
41f701:	ff 75 dc             	push   -0x24(%ebp)
41f704:	ff 15 60 71 4a 00    	call   *0x4a7160
41f70a:	ff 75 d8             	push   -0x28(%ebp)
41f70d:	ff 15 60 71 4a 00    	call   *0x4a7160
41f713:	6a 01                	push   $0x1
41f715:	e9 65 fe ff ff       	jmp    0x41f57f
41f71a:	8b 45 e8             	mov    -0x18(%ebp),%eax
41f71d:	8b 75 d8             	mov    -0x28(%ebp),%esi
41f720:	89 41 34             	mov    %eax,0x34(%ecx)
41f723:	8b 43 04             	mov    0x4(%ebx),%eax
41f726:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41f729:	56                   	push   %esi
41f72a:	89 48 38             	mov    %ecx,0x38(%eax)
41f72d:	8b 43 04             	mov    0x4(%ebx),%eax
41f730:	ff 70 0c             	push   0xc(%eax)
41f733:	ff 15 68 71 4a 00    	call   *0x4a7168
41f739:	8b 43 04             	mov    0x4(%ebx),%eax
41f73c:	ff 70 14             	push   0x14(%eax)
41f73f:	ff 15 60 71 4a 00    	call   *0x4a7160
41f745:	8b 43 04             	mov    0x4(%ebx),%eax
41f748:	89 70 14             	mov    %esi,0x14(%eax)
41f74b:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f74e:	39 79 24             	cmp    %edi,0x24(%ecx)
41f751:	74 3c                	je     0x41f78f
41f753:	39 7d ec             	cmp    %edi,-0x14(%ebp)
41f756:	75 16                	jne    0x41f76e
41f758:	57                   	push   %edi
41f759:	ff 71 28             	push   0x28(%ecx)
41f75c:	ff 71 0c             	push   0xc(%ecx)
41f75f:	ff 15 6c 71 4a 00    	call   *0x4a716c
41f765:	8b 43 04             	mov    0x4(%ebx),%eax
41f768:	89 78 28             	mov    %edi,0x28(%eax)
41f76b:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f76e:	8b 41 24             	mov    0x24(%ecx),%eax
41f771:	89 45 d4             	mov    %eax,-0x2c(%ebp)
41f774:	85 c0                	test   %eax,%eax
41f776:	74 17                	je     0x41f78f
41f778:	8b 00                	mov    (%eax),%eax
41f77a:	6a 01                	push   $0x1
41f77c:	8b 70 04             	mov    0x4(%eax),%esi
41f77f:	8b ce                	mov    %esi,%ecx
41f781:	ff 15 2c 81 4a 00    	call   *0x4a812c
41f787:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
41f78a:	ff d6                	call   *%esi
41f78c:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f78f:	8b 45 ec             	mov    -0x14(%ebp),%eax
41f792:	ff 75 dc             	push   -0x24(%ebp)
41f795:	89 41 24             	mov    %eax,0x24(%ecx)
41f798:	a3 60 58 4a 00       	mov    %eax,0x4a5860
41f79d:	ff 15 60 71 4a 00    	call   *0x4a7160
41f7a3:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
41f7a7:	75 08                	jne    0x41f7b1
41f7a9:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f7ac:	e8 c6 d5 00 00       	call   0x42cd77
41f7b1:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f7b4:	33 d2                	xor    %edx,%edx
41f7b6:	e8 21 d6 00 00       	call   0x42cddc
41f7bb:	8b 4b 04             	mov    0x4(%ebx),%ecx
41f7be:	3b 0d 44 47 4a 00    	cmp    0x4a4744,%ecx
41f7c4:	75 0b                	jne    0x41f7d1
41f7c6:	89 3d 44 47 4a 00    	mov    %edi,0x4a4744
41f7cc:	e8 a9 db 00 00       	call   0x42d37a
41f7d1:	8b 15 40 47 4a 00    	mov    0x4a4740,%edx
41f7d7:	85 d2                	test   %edx,%edx
41f7d9:	74 15                	je     0x41f7f0
41f7db:	8b cb                	mov    %ebx,%ecx
41f7dd:	e8 3a eb ff ff       	call   0x41e31c
41f7e2:	48                   	dec    %eax
41f7e3:	8b ca                	mov    %edx,%ecx
41f7e5:	f7 d8                	neg    %eax
41f7e7:	1b c0                	sbb    %eax,%eax
41f7e9:	40                   	inc    %eax
41f7ea:	50                   	push   %eax
41f7eb:	e8 ff 58 00 00       	call   0x4250ef
41f7f0:	68 59 01 00 00       	push   $0x159
41f7f5:	8b cb                	mov    %ebx,%ecx
41f7f7:	e8 9f ea ff ff       	call   0x41e29b
41f7fc:	8b cb                	mov    %ebx,%ecx
41f7fe:	e8 19 eb ff ff       	call   0x41e31c
41f803:	8d 7d bc             	lea    -0x44(%ebp),%edi
41f806:	6a 13                	push   $0x13
41f808:	8d 48 ff             	lea    -0x1(%eax),%ecx
41f80b:	f7 d9                	neg    %ecx
41f80d:	1b c9                	sbb    %ecx,%ecx
41f80f:	33 c0                	xor    %eax,%eax
41f811:	ab                   	stos   %eax,%es:(%edi)
41f812:	41                   	inc    %ecx
41f813:	ab                   	stos   %eax,%es:(%edi)
41f814:	ab                   	stos   %eax,%es:(%edi)
41f815:	ab                   	stos   %eax,%es:(%edi)
41f816:	58                   	pop    %eax
41f817:	66 89 45 bc          	mov    %ax,-0x44(%ebp)
41f81b:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
41f81e:	ff 15 58 75 4a 00    	call   *0x4a7558
41f824:	8d 4d bc             	lea    -0x44(%ebp),%ecx