42b443:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
42b449:	8b 47 1c             	mov    0x1c(%edi),%eax
42b44c:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
42b452:	89 85 44 ff ff ff    	mov    %eax,-0xbc(%ebp)
42b458:	eb 0a                	jmp    0x42b464
42b45a:	8b fb                	mov    %ebx,%edi
42b45c:	eb 06                	jmp    0x42b464
42b45e:	8b b5 68 ff ff ff    	mov    -0x98(%ebp),%esi
42b464:	83 bd 24 ff ff ff 00 	cmpl   $0x0,-0xdc(%ebp)
42b46b:	0f 85 5d 01 00 00    	jne    0x42b5ce
42b471:	8d 85 e8 fe ff ff    	lea    -0x118(%ebp),%eax
42b477:	50                   	push   %eax
42b478:	6a 10                	push   $0x10
42b47a:	5a                   	pop    %edx
42b47b:	6a 02                	push   $0x2
42b47d:	59                   	pop    %ecx
42b47e:	e8 bf fd ff ff       	call   0x42b242
42b483:	85 c0                	test   %eax,%eax
42b485:	0f 84 8a 00 00 00    	je     0x42b515
42b48b:	50                   	push   %eax
42b48c:	ff 15 b8 76 4a 00    	call   *0x4a76b8
42b492:	8d 8d fc fe ff ff    	lea    -0x104(%ebp),%ecx
42b498:	89 85 4c ff ff ff    	mov    %eax,-0xb4(%ebp)
42b49e:	51                   	push   %ecx
42b49f:	6a 18                	push   $0x18
42b4a1:	ff 70 04             	push   0x4(%eax)
42b4a4:	ff 15 20 71 4a 00    	call   *0x4a7120
42b4aa:	85 c0                	test   %eax,%eax
42b4ac:	74 67                	je     0x42b515
42b4ae:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
42b4b4:	c7 85 40 ff ff ff 01 	movl   $0x1,-0xc0(%ebp)
42b4bb:	00 00 00
42b4be:	50                   	push   %eax
42b4bf:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
42b4c5:	6a 54                	push   $0x54
42b4c7:	ff 70 04             	push   0x4(%eax)
42b4ca:	ff 15 20 71 4a 00    	call   *0x4a7120
42b4d0:	85 c0                	test   %eax,%eax
42b4d2:	74 1e                	je     0x42b4f2
42b4d4:	8b 45 a4             	mov    -0x5c(%ebp),%eax
42b4d7:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
42b4dd:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
42b4e3:	8b 45 a8             	mov    -0x58(%ebp),%eax
42b4e6:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
42b4ec:	89 85 44 ff ff ff    	mov    %eax,-0xbc(%ebp)
42b4f2:	83 bd 50 ff ff ff 00 	cmpl   $0x0,-0xb0(%ebp)
42b4f9:	8b 8d 40 ff ff ff    	mov    -0xc0(%ebp),%ecx
42b4ff:	74 16                	je     0x42b517
42b501:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
42b507:	f7 d8                	neg    %eax
42b509:	1b c0                	sbb    %eax,%eax
42b50b:	23 c8                	and    %eax,%ecx
42b50d:	89 8d 40 ff ff ff    	mov    %ecx,-0xc0(%ebp)
42b513:	eb 02                	jmp    0x42b517
42b515:	8b cb                	mov    %ebx,%ecx
42b517:	85 c9                	test   %ecx,%ecx
42b519:	0f 85 af 00 00 00    	jne    0x42b5ce
42b51f:	8d 85 e8 fe ff ff    	lea    -0x118(%ebp),%eax
42b525:	50                   	push   %eax
42b526:	6a 20                	push   $0x20
42b528:	5a                   	pop    %edx
42b529:	6a 03                	push   $0x3
42b52b:	59                   	pop    %ecx
42b52c:	e8 11 fd ff ff       	call   0x42b242
42b531:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
42b537:	85 c0                	test   %eax,%eax
42b539:	0f 84 82 00 00 00    	je     0x42b5c1
42b53f:	8d 4d dc             	lea    -0x24(%ebp),%ecx
42b542:	ff 15 80 75 4a 00    	call   *0x4a7580
42b548:	53                   	push   %ebx
42b549:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
42b54d:	ff 15 74 71 4a 00    	call   *0x4a7174
42b553:	50                   	push   %eax
42b554:	8d 4d dc             	lea    -0x24(%ebp),%ecx
42b557:	ff 15 88 75 4a 00    	call   *0x4a7588
42b55d:	85 c0                	test   %eax,%eax
42b55f:	74 53                	je     0x42b5b4
42b561:	ff 76 48             	push   0x48(%esi)
42b564:	8b 55 e0             	mov    -0x20(%ebp),%edx
42b567:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
42b56d:	8b 8d 3c ff ff ff    	mov    -0xc4(%ebp),%ecx
42b573:	50                   	push   %eax
42b574:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
42b57a:	50                   	push   %eax
42b57b:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
42b581:	50                   	push   %eax
42b582:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
42b588:	50                   	push   %eax
42b589:	e8 3a 0a 00 00       	call   0x42bfc8
42b58e:	85 c0                	test   %eax,%eax
42b590:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
42b596:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
42b59c:	8b 85 44 ff ff ff    	mov    -0xbc(%ebp),%eax
42b5a2:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
42b5a8:	74 0a                	je     0x42b5b4
42b5aa:	c7 85 28 ff ff ff 01 	movl   $0x1,-0xd8(%ebp)
42b5b1:	00 00 00
42b5b4:	8d 4d dc             	lea    -0x24(%ebp),%ecx
42b5b7:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
42b5bb:	ff 15 84 75 4a 00    	call   *0x4a7584
42b5c1:	83 bd 28 ff ff ff 00 	cmpl   $0x0,-0xd8(%ebp)
42b5c8:	0f 84 1b 07 00 00    	je     0x42bce9
42b5ce:	ff 76 48             	push   0x48(%esi)
42b5d1:	8b 95 04 ff ff ff    	mov    -0xfc(%ebp),%edx
42b5d7:	8b 8d 00 ff ff ff    	mov    -0x100(%ebp),%ecx
42b5dd:	e8 04 fc ff ff       	call   0x42b1e6
42b5e2:	83 e8 06             	sub    $0x6,%eax
42b5e5:	74 0d                	je     0x42b5f4
42b5e7:	83 e8 01             	sub    $0x1,%eax
42b5ea:	74 12                	je     0x42b5fe
42b5ec:	33 db                	xor    %ebx,%ebx
42b5ee:	43                   	inc    %ebx
42b5ef:	e9 f5 06 00 00       	jmp    0x42bce9
42b5f4:	c7 85 f4 fe ff ff 01 	movl   $0x1,-0x10c(%ebp)
42b5fb:	00 00 00
42b5fe:	8d 8d 2c ff ff ff    	lea    -0xd4(%ebp),%ecx
42b604:	ff 15 80 75 4a 00    	call   *0x4a7580
42b60a:	83 bd 40 ff ff ff 00 	cmpl   $0x0,-0xc0(%ebp)
42b611:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
42b615:	89 9d 50 ff ff ff    	mov    %ebx,-0xb0(%ebp)
42b61b:	89 9d 70 ff ff ff    	mov    %ebx,-0x90(%ebp)
42b621:	0f 84 2b 03 00 00    	je     0x42b952
42b627:	bf 1c 14 40 00       	mov    $0x40141c,%edi
42b62c:	89 9d 5c ff ff ff    	mov    %ebx,-0xa4(%ebp)
42b632:	89 bd 58 ff ff ff    	mov    %edi,-0xa8(%ebp)
42b638:	53                   	push   %ebx
42b639:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
42b63d:	89 9d 64 ff ff ff    	mov    %ebx,-0x9c(%ebp)
42b643:	ff 15 74 71 4a 00    	call   *0x4a7174
42b649:	50                   	push   %eax
42b64a:	8d 8d 2c ff ff ff    	lea    -0xd4(%ebp),%ecx
42b650:	ff 15 88 75 4a 00    	call   *0x4a7588
42b656:	85 c0                	test   %eax,%eax
42b658:	75 22                	jne    0x42b67c
42b65a:	6a 01                	push   $0x1
42b65c:	b9 e0 55 4a 00       	mov    $0x4a55e0,%ecx
42b661:	e8 41 26 02 00       	call   0x44dca7
42b666:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
42b66c:	89 bd 58 ff ff ff    	mov    %edi,-0xa8(%ebp)
42b672:	e8 5c 47 ff ff       	call   0x41fdd3
42b677:	e9 5b 06 00 00       	jmp    0x42bcd7
42b67c:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
42b682:	85 c0                	test   %eax,%eax
42b684:	75 04                	jne    0x42b68a
42b686:	8b c3                	mov    %ebx,%eax
42b688:	eb 03                	jmp    0x42b68d
42b68a:	8b 40 04             	mov    0x4(%eax),%eax
42b68d:	50                   	push   %eax
42b68e:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
42b694:	ff 15 90 75 4a 00    	call   *0x4a7590
42b69a:	8b f0                	mov    %eax,%esi
42b69c:	89 b5 4c ff ff ff    	mov    %esi,-0xb4(%ebp)
42b6a2:	85 f6                	test   %esi,%esi
42b6a4:	74 b4                	je     0x42b65a
42b6a6:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
42b6ac:	85 c0                	test   %eax,%eax
42b6ae:	74 20                	je     0x42b6d0
42b6b0:	53                   	push   %ebx
42b6b1:	50                   	push   %eax
42b6b2:	8d 8d 2c ff ff ff    	lea    -0xd4(%ebp),%ecx
42b6b8:	ff 15 98 75 4a 00    	call   *0x4a7598
42b6be:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
42b6c4:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
42b6ca:	ff 15 70 71 4a 00    	call   *0x4a7170
42b6d0:	0f b7 8d 0e ff ff ff 	movzwl -0xf2(%ebp),%ecx
42b6d7:	0f b7 85 0c ff ff ff 	movzwl -0xf4(%ebp),%eax
42b6de:	53                   	push   %ebx
42b6df:	51                   	push   %ecx
42b6e0:	50                   	push   %eax
42b6e1:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
42b6e7:	ff b5 00 ff ff ff    	push   -0x100(%ebp)
42b6ed:	ff 15 5c 71 4a 00    	call   *0x4a715c
42b6f3:	50                   	push   %eax
42b6f4:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
42b6fa:	ff 15 8c 75 4a 00    	call   *0x4a758c
42b700:	85 c0                	test   %eax,%eax
42b702:	75 26                	jne    0x42b72a
42b704:	6a 01                	push   $0x1
42b706:	b9 e0 55 4a 00       	mov    $0x4a55e0,%ecx
42b70b:	e8 69 25 02 00       	call   0x44dc79
42b710:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
42b714:	89 bd 58 ff ff ff    	mov    %edi,-0xa8(%ebp)
42b71a:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
42b720:	e8 ae 46 ff ff       	call   0x41fdd3
42b725:	e9 82 05 00 00       	jmp    0x42bcac
42b72a:	6a 10                	push   $0x10
42b72c:	ff 15 14 74 4a 00    	call   *0x4a7414
42b732:	59                   	pop    %ecx
42b733:	89 85 48 ff ff ff    	mov    %eax,-0xb8(%ebp)
42b739:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
42b73d:	85 c0                	test   %eax,%eax
42b73f:	74 0c                	je     0x42b74d
42b741:	8b c8                	mov    %eax,%ecx
42b743:	ff 15 80 75 4a 00    	call   *0x4a7580
42b749:	8b f8                	mov    %eax,%edi
42b74b:	eb 02                	jmp    0x42b74f
42b74d:	8b fb                	mov    %ebx,%edi
42b74f:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
42b753:	85 ff                	test   %edi,%edi
42b755:	75 1c                	jne    0x42b773
42b757:	6a 01                	push   $0x1
42b759:	b9 e0 55 4a 00       	mov    $0x4a55e0,%ecx
42b75e:	e8 16 25 02 00       	call   0x44dc79
42b763:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
42b767:	c7 85 58 ff ff ff 1c 	movl   $0x40141c,-0xa8(%ebp)
42b76e:	14 40 00
42b771:	eb a7                	jmp    0x42b71a
42b773:	53                   	push   %ebx
42b774:	ff 15 74 71 4a 00    	call   *0x4a7174
42b77a:	50                   	push   %eax
42b77b:	8b cf                	mov    %edi,%ecx
42b77d:	ff 15 88 75 4a 00    	call   *0x4a7588
42b783:	85 c0                	test   %eax,%eax
42b785:	75 43                	jne    0x42b7ca
42b787:	8b 07                	mov    (%edi),%eax
42b789:	6a 01                	push   $0x1
42b78b:	8b 70 04             	mov    0x4(%eax),%esi
42b78e:	8b ce                	mov    %esi,%ecx
42b790:	ff 15 2c 81 4a 00    	call   *0x4a812c
42b796:	8b cf                	mov    %edi,%ecx
42b798:	ff d6                	call   *%esi
42b79a:	6a 01                	push   $0x1
42b79c:	b9 e0 55 4a 00       	mov    $0x4a55e0,%ecx
42b7a1:	e8 01 25 02 00       	call   0x44dca7
42b7a6:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
42b7aa:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
42b7b0:	c7 85 58 ff ff ff 1c 	movl   $0x40141c,-0xa8(%ebp)
42b7b7:	14 40 00
42b7ba:	e8 14 46 ff ff       	call   0x41fdd3
42b7bf:	8b b5 4c ff ff ff    	mov    -0xb4(%ebp),%esi
42b7c5:	e9 e2 04 00 00       	jmp    0x42bcac
42b7ca:	ff b5 5c ff ff ff    	push   -0xa4(%ebp)
42b7d0:	ff 77 04             	push   0x4(%edi)
42b7d3:	ff 15 90 75 4a 00    	call   *0x4a7590
42b7d9:	8b f0                	mov    %eax,%esi
42b7db:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
42b7e1:	85 c0                	test   %eax,%eax
42b7e3:	74 19                	je     0x42b7fe
42b7e5:	53                   	push   %ebx
42b7e6:	50                   	push   %eax
42b7e7:	8b cf                	mov    %edi,%ecx
42b7e9:	ff 15 98 75 4a 00    	call   *0x4a7598
42b7ef:	ff 77 04             	push   0x4(%edi)
42b7f2:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
42b7f8:	ff 15 70 71 4a 00    	call   *0x4a7170
42b7fe:	68 20 00 cc 00       	push   $0xcc0020
42b803:	53                   	push   %ebx
42b804:	53                   	push   %ebx
42b805:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
42b80b:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
42b811:	ff b5 00 ff ff ff    	push   -0x100(%ebp)
42b817:	53                   	push   %ebx
42b818:	53                   	push   %ebx
42b819:	ff 77 04             	push   0x4(%edi)
42b81c:	ff 15 7c 71 4a 00    	call   *0x4a717c
42b822:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
42b828:	85 c0                	test   %eax,%eax
42b82a:	74 0a                	je     0x42b836
42b82c:	53                   	push   %ebx
42b82d:	50                   	push   %eax
42b82e:	8b cf                	mov    %edi,%ecx
42b830:	ff 15 98 75 4a 00    	call   *0x4a7598
42b836:	8b c3                	mov    %ebx,%eax
42b838:	85 f6                	test   %esi,%esi
42b83a:	74 03                	je     0x42b83f
42b83c:	8b 46 04             	mov    0x4(%esi),%eax
42b83f:	50                   	push   %eax
42b840:	ff 77 04             	push   0x4(%edi)
42b843:	ff 15 90 75 4a 00    	call   *0x4a7590
42b849:	8b 07                	mov    (%edi),%eax
42b84b:	6a 01                	push   $0x1
42b84d:	8b 70 04             	mov    0x4(%eax),%esi
42b850:	8b ce                	mov    %esi,%ecx
42b852:	ff 15 2c 81 4a 00    	call   *0x4a812c
42b858:	8b cf                	mov    %edi,%ecx
42b85a:	ff d6                	call   *%esi
42b85c:	ff b5 5c ff ff ff    	push   -0xa4(%ebp)
42b862:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
42b868:	ff 15 90 75 4a 00    	call   *0x4a7590
42b86e:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
42b874:	ff 70 04             	push   0x4(%eax)
42b877:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
42b87d:	ff 15 90 75 4a 00    	call   *0x4a7590
42b883:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
42b889:	85 c0                	test   %eax,%eax
42b88b:	74 14                	je     0x42b8a1
42b88d:	53                   	push   %ebx
42b88e:	50                   	push   %eax
42b88f:	8d 8d 2c ff ff ff    	lea    -0xd4(%ebp),%ecx
42b895:	ff 15 98 75 4a 00    	call   *0x4a7598
42b89b:	89 9d 70 ff ff ff    	mov    %ebx,-0x90(%ebp)
42b8a1:	8b b5 60 ff ff ff    	mov    -0xa0(%ebp),%esi
42b8a7:	8b bd 6c ff ff ff    	mov    -0x94(%ebp),%edi
42b8ad:	85 f6                	test   %esi,%esi
42b8af:	75 50                	jne    0x42b901
42b8b1:	85 ff                	test   %edi,%edi
42b8b3:	75 4c                	jne    0x42b901
42b8b5:	bf fe 00 00 00       	mov    $0xfe,%edi
42b8ba:	be 10 27 00 00       	mov    $0x2710,%esi
42b8bf:	57                   	push   %edi
42b8c0:	56                   	push   %esi
42b8c1:	6a 58                	push   $0x58
42b8c3:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
42b8c9:	ff 15 64 71 4a 00    	call   *0x4a7164
42b8cf:	50                   	push   %eax
42b8d0:	ff 15 20 72 4a 00    	call   *0x4a7220
42b8d6:	57                   	push   %edi
42b8d7:	56                   	push   %esi
42b8d8:	6a 5a                	push   $0x5a
42b8da:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
42b8e0:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
42b8e6:	ff 15 64 71 4a 00    	call   *0x4a7164
42b8ec:	50                   	push   %eax
42b8ed:	ff 15 20 72 4a 00    	call   *0x4a7220
42b8f3:	8b b5 60 ff ff ff    	mov    -0xa0(%ebp),%esi
42b8f9:	8b f8                	mov    %eax,%edi
42b8fb:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
42b901:	8d 8d 2c ff ff ff    	lea    -0xd4(%ebp),%ecx
42b907:	ff 15 9c 75 4a 00    	call   *0x4a759c
42b90d:	57                   	push   %edi
42b90e:	56                   	push   %esi
42b90f:	8d 85 48 ff ff ff    	lea    -0xb8(%ebp),%eax
42b915:	33 d2                	xor    %edx,%edx
42b917:	50                   	push   %eax
42b918:	51                   	push   %ecx
42b919:	ff b5 54 ff ff ff    	push   -0xac(%ebp)
42b91f:	8b 8d 5c ff ff ff    	mov    -0xa4(%ebp),%ecx
42b925:	53                   	push   %ebx
42b926:	e8 54 1d 00 00       	call   0x42d67f
42b92b:	8b f8                	mov    %eax,%edi
42b92d:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
42b931:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
42b937:	89 bd 64 ff ff ff    	mov    %edi,-0x9c(%ebp)
42b93d:	c7 85 58 ff ff ff 1c 	movl   $0x40141c,-0xa8(%ebp)
42b944:	14 40 00
42b947:	e8 87 44 ff ff       	call   0x41fdd3
42b94c:	8b b5 68 ff ff ff    	mov    -0x98(%ebp),%esi
42b952:	83 bd 28 ff ff ff 00 	cmpl   $0x0,-0xd8(%ebp)
42b959:	0f 84 23 01 00 00    	je     0x42ba82
42b95f:	8d 4d cc             	lea    -0x34(%ebp),%ecx
42b962:	ff 15 80 75 4a 00    	call   *0x4a7580
42b968:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
42b96c:	8b 46 48             	mov    0x48(%esi),%eax
42b96f:	ff 70 0c             	push   0xc(%eax)
42b972:	ff 15 b0 76 4a 00    	call   *0x4a76b0
42b978:	50                   	push   %eax
42b979:	8d 4d cc             	lea    -0x34(%ebp),%ecx
42b97c:	e8 d7 42 ff ff       	call   0x41fc58
42b981:	85 c0                	test   %eax,%eax
42b983:	0f 84 ec 00 00 00    	je     0x42ba75