43e4b0:	2b c6                	sub    %esi,%eax
43e4b2:	d1 f8                	sar    $1,%eax
43e4b4:	79 03                	jns    0x43e4b9
43e4b6:	83 d0 00             	adc    $0x0,%eax
43e4b9:	50                   	push   %eax
43e4ba:	55                   	push   %ebp
43e4bb:	e8 b8 97 fc ff       	call   0x407c78
43e4c0:	83 c4 18             	add    $0x18,%esp
43e4c3:	5d                   	pop    %ebp
43e4c4:	5f                   	pop    %edi
43e4c5:	5e                   	pop    %esi
43e4c6:	5b                   	pop    %ebx
43e4c7:	c3                   	ret
43e4c8:	55                   	push   %ebp
43e4c9:	8b ec                	mov    %esp,%ebp
43e4cb:	83 c4 e8             	add    $0xffffffe8,%esp
43e4ce:	53                   	push   %ebx
43e4cf:	89 45 fc             	mov    %eax,-0x4(%ebp)
43e4d2:	8b 45 fc             	mov    -0x4(%ebp),%eax
43e4d5:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
43e4d9:	74 36                	je     0x43e511
43e4db:	8b 45 fc             	mov    -0x4(%ebp),%eax
43e4de:	8b 98 60 01 00 00    	mov    0x160(%eax),%ebx
43e4e4:	8b 43 10             	mov    0x10(%ebx),%eax
43e4e7:	b2 01                	mov    $0x1,%dl
43e4e9:	e8 92 9b fe ff       	call   0x428080
43e4ee:	8b 43 14             	mov    0x14(%ebx),%eax
43e4f1:	b2 01                	mov    $0x1,%dl
43e4f3:	e8 a8 9e fe ff       	call   0x4283a0
43e4f8:	8b 45 fc             	mov    -0x4(%ebp),%eax
43e4fb:	8b 40 48             	mov    0x48(%eax),%eax
43e4fe:	50                   	push   %eax
43e4ff:	8b 45 fc             	mov    -0x4(%ebp),%eax
43e502:	8b 40 4c             	mov    0x4c(%eax),%eax
43e505:	50                   	push   %eax
43e506:	33 c9                	xor    %ecx,%ecx
43e508:	33 d2                	xor    %edx,%edx
43e50a:	8b c3                	mov    %ebx,%eax
43e50c:	e8 5f a3 fe ff       	call   0x428870
43e511:	8b 45 fc             	mov    -0x4(%ebp),%eax
43e514:	8a 80 7c 01 00 00    	mov    0x17c(%eax),%al
43e51a:	88 45 fb             	mov    %al,-0x5(%ebp)
43e51d:	8b 45 fc             	mov    -0x4(%ebp),%eax
43e520:	c6 80 7c 01 00 00 01 	movb   $0x1,0x17c(%eax)
43e527:	33 c0                	xor    %eax,%eax
43e529:	55                   	push   %ebp
43e52a:	68 79 e5 43 00       	push   $0x43e579
43e52f:	64 ff 30             	push   %fs:(%eax)
43e532:	64 89 20             	mov    %esp,%fs:(%eax)
43e535:	8b 45 fc             	mov    -0x4(%ebp),%eax
43e538:	8b 98 60 01 00 00    	mov    0x160(%eax),%ebx
43e53e:	8d 55 e8             	lea    -0x18(%ebp),%edx
43e541:	8b 45 fc             	mov    -0x4(%ebp),%eax
43e544:	e8 53 fe ff ff       	call   0x43e39c
43e549:	8d 55 e8             	lea    -0x18(%ebp),%edx
43e54c:	8b 45 fc             	mov    -0x4(%ebp),%eax
43e54f:	8b 80 68 01 00 00    	mov    0x168(%eax),%eax
43e555:	8b 48 0c             	mov    0xc(%eax),%ecx
43e558:	8b c3                	mov    %ebx,%eax
43e55a:	e8 c5 a3 fe ff       	call   0x428924
43e55f:	33 c0                	xor    %eax,%eax
43e561:	5a                   	pop    %edx
43e562:	59                   	pop    %ecx
43e563:	59                   	pop    %ecx
43e564:	64 89 10             	mov    %edx,%fs:(%eax)
43e567:	68 80 e5 43 00       	push   $0x43e580
43e56c:	8b 45 fc             	mov    -0x4(%ebp),%eax
43e56f:	8a 55 fb             	mov    -0x5(%ebp),%dl
43e572:	88 90 7c 01 00 00    	mov    %dl,0x17c(%eax)
43e578:	c3                   	ret
43e579:	e9 8e 5c fc ff       	jmp    0x40420c
43e57e:	eb ec                	jmp    0x43e56c
43e580:	5b                   	pop    %ebx
43e581:	8b e5                	mov    %ebp,%esp
43e583:	5d                   	pop    %ebp
43e584:	c3                   	ret
43e585:	8d 40 00             	lea    0x0(%eax),%eax
43e588:	53                   	push   %ebx
43e589:	56                   	push   %esi
43e58a:	57                   	push   %edi
43e58b:	55                   	push   %ebp
43e58c:	8b e8                	mov    %eax,%ebp
43e58e:	33 db                	xor    %ebx,%ebx
43e590:	8b 85 68 01 00 00    	mov    0x168(%ebp),%eax
43e596:	8b 70 0c             	mov    0xc(%eax),%esi
43e599:	80 7d 57 00          	cmpb   $0x0,0x57(%ebp)
43e59d:	74 79                	je     0x43e618
43e59f:	f6 45 1c 01          	testb  $0x1,0x1c(%ebp)
43e5a3:	75 73                	jne    0x43e618
43e5a5:	85 f6                	test   %esi,%esi
43e5a7:	74 6f                	je     0x43e618
43e5a9:	80 7e 22 00          	cmpb   $0x0,0x22(%esi)
43e5ad:	74 69                	je     0x43e618
43e5af:	8b c6                	mov    %esi,%eax
43e5b1:	8b 10                	mov    (%eax),%edx
43e5b3:	ff 52 24             	call   *0x24(%edx)
43e5b6:	85 c0                	test   %eax,%eax
43e5b8:	75 06                	jne    0x43e5c0
43e5ba:	c6 46 22 00          	movb   $0x0,0x22(%esi)
43e5be:	eb 58                	jmp    0x43e618
43e5c0:	8b c5                	mov    %ebp,%eax
43e5c2:	e8 05 26 02 00       	call   0x460bcc
43e5c7:	8b f8                	mov    %eax,%edi
43e5c9:	85 ff                	test   %edi,%edi
43e5cb:	74 4b                	je     0x43e618
43e5cd:	80 bf 2e 02 00 00 00 	cmpb   $0x0,0x22e(%edi)
43e5d4:	74 42                	je     0x43e618
43e5d6:	8b c7                	mov    %edi,%eax
43e5d8:	e8 7b 0c 01 00       	call   0x44f258
43e5dd:	84 c0                	test   %al,%al
43e5df:	74 37                	je     0x43e618
43e5e1:	80 bd 7c 01 00 00 00 	cmpb   $0x0,0x17c(%ebp)
43e5e8:	74 12                	je     0x43e5fc
43e5ea:	6a 00                	push   $0x0
43e5ec:	33 c9                	xor    %ecx,%ecx
43e5ee:	ba 0f 03 00 00       	mov    $0x30f,%edx
43e5f3:	8b c7                	mov    %edi,%eax
43e5f5:	e8 be b3 00 00       	call   0x4499b8
43e5fa:	eb 16                	jmp    0x43e612
43e5fc:	6a 00                	push   $0x0
43e5fe:	6a 00                	push   $0x0
43e600:	68 0f 03 00 00       	push   $0x30f
43e605:	8b c7                	mov    %edi,%eax
43e607:	e8 48 09 01 00       	call   0x44ef54
43e60c:	50                   	push   %eax
43e60d:	e8 7e 96 fc ff       	call   0x407c90
43e612:	b3 01                	mov    $0x1,%bl
43e614:	c6 46 22 00          	movb   $0x0,0x22(%esi)
43e618:	8b c3                	mov    %ebx,%eax
43e61a:	5d                   	pop    %ebp
43e61b:	5f                   	pop    %edi
43e61c:	5e                   	pop    %esi
43e61d:	5b                   	pop    %ebx
43e61e:	c3                   	ret
43e61f:	90                   	nop
43e620:	55                   	push   %ebp
43e621:	8b ec                	mov    %esp,%ebp
43e623:	51                   	push   %ecx
43e624:	53                   	push   %ebx
43e625:	56                   	push   %esi
43e626:	57                   	push   %edi
43e627:	88 4d ff             	mov    %cl,-0x1(%ebp)
43e62a:	8b fa                	mov    %edx,%edi
43e62c:	8b f0                	mov    %eax,%esi
43e62e:	8b 5d 10             	mov    0x10(%ebp),%ebx
43e631:	84 9e 7a 01 00 00    	test   %bl,0x17a(%esi)
43e637:	74 21                	je     0x43e65a
43e639:	8b c6                	mov    %esi,%eax
43e63b:	e8 48 ff ff ff       	call   0x43e588
43e640:	84 c0                	test   %al,%al
43e642:	74 0c                	je     0x43e650
43e644:	8b c6                	mov    %esi,%eax
43e646:	8b 10                	mov    (%eax),%edx
43e648:	ff 92 88 00 00 00    	call   *0x88(%edx)
43e64e:	eb 0a                	jmp    0x43e65a
43e650:	8b c6                	mov    %esi,%eax
43e652:	8b 10                	mov    (%eax),%edx
43e654:	ff 92 8c 00 00 00    	call   *0x8c(%edx)
43e65a:	66 83 be 72 01 00 00 	cmpw   $0x0,0x172(%esi)
43e661:	00
43e662:	74 1e                	je     0x43e682
43e664:	8a 45 14             	mov    0x14(%ebp),%al
43e667:	50                   	push   %eax
43e668:	53                   	push   %ebx
43e669:	8b 45 0c             	mov    0xc(%ebp),%eax
43e66c:	50                   	push   %eax
43e66d:	8b 45 08             	mov    0x8(%ebp),%eax
43e670:	50                   	push   %eax
43e671:	8a 4d ff             	mov    -0x1(%ebp),%cl
43e674:	8b d7                	mov    %edi,%edx
43e676:	8b 86 74 01 00 00    	mov    0x174(%esi),%eax
43e67c:	ff 96 70 01 00 00    	call   *0x170(%esi)
43e682:	5f                   	pop    %edi
43e683:	5e                   	pop    %esi
43e684:	5b                   	pop    %ebx
43e685:	59                   	pop    %ecx
43e686:	5d                   	pop    %ebp
43e687:	c2 10 00             	ret    $0x10
43e68a:	8b c0                	mov    %eax,%eax
43e68c:	3a 90 79 01 00 00    	cmp    0x179(%eax),%dl
43e692:	74 0d                	je     0x43e6a1
43e694:	88 90 79 01 00 00    	mov    %dl,0x179(%eax)
43e69a:	8b d0                	mov    %eax,%edx
43e69c:	e8 5b 00 00 00       	call   0x43e6fc
43e6a1:	c3                   	ret
43e6a2:	8b c0                	mov    %eax,%eax
43e6a4:	56                   	push   %esi
43e6a5:	8b f0                	mov    %eax,%esi
43e6a7:	8b 86 68 01 00 00    	mov    0x168(%esi),%eax
43e6ad:	8b 08                	mov    (%eax),%ecx
43e6af:	ff 51 08             	call   *0x8(%ecx)
43e6b2:	5e                   	pop    %esi
43e6b3:	c3                   	ret
43e6b4:	3a 90 78 01 00 00    	cmp    0x178(%eax),%dl
43e6ba:	74 0d                	je     0x43e6c9
43e6bc:	88 90 78 01 00 00    	mov    %dl,0x178(%eax)
43e6c2:	8b d0                	mov    %eax,%edx
43e6c4:	e8 33 00 00 00       	call   0x43e6fc
43e6c9:	c3                   	ret
43e6ca:	8b c0                	mov    %eax,%eax
43e6cc:	3a 90 7b 01 00 00    	cmp    0x17b(%eax),%dl
43e6d2:	74 0d                	je     0x43e6e1
43e6d4:	88 90 7b 01 00 00    	mov    %dl,0x17b(%eax)
43e6da:	8b d0                	mov    %eax,%edx
43e6dc:	e8 1b 00 00 00       	call   0x43e6fc
43e6e1:	c3                   	ret
43e6e2:	8b c0                	mov    %eax,%eax
43e6e4:	3a 90 7d 01 00 00    	cmp    0x17d(%eax),%dl
43e6ea:	74 0d                	je     0x43e6f9
43e6ec:	88 90 7d 01 00 00    	mov    %dl,0x17d(%eax)
43e6f2:	8b d0                	mov    %eax,%edx
43e6f4:	e8 03 00 00 00       	call   0x43e6fc
43e6f9:	c3                   	ret
43e6fa:	8b c0                	mov    %eax,%eax
43e6fc:	53                   	push   %ebx
43e6fd:	56                   	push   %esi
43e6fe:	8b d8                	mov    %eax,%ebx
43e700:	80 7b 5c 00          	cmpb   $0x0,0x5c(%ebx)
43e704:	74 46                	je     0x43e74c
43e706:	8b 83 68 01 00 00    	mov    0x168(%ebx),%eax
43e70c:	e8 b7 ca fe ff       	call   0x42b1c8
43e711:	85 c0                	test   %eax,%eax
43e713:	7e 37                	jle    0x43e74c
43e715:	8b 83 68 01 00 00    	mov    0x168(%ebx),%eax
43e71b:	e8 c0 ca fe ff       	call   0x42b1e0
43e720:	85 c0                	test   %eax,%eax
43e722:	7e 28                	jle    0x43e74c
43e724:	8b 83 68 01 00 00    	mov    0x168(%ebx),%eax
43e72a:	e8 99 ca fe ff       	call   0x42b1c8
43e72f:	50                   	push   %eax
43e730:	8b 83 68 01 00 00    	mov    0x168(%ebx),%eax
43e736:	e8 a5 ca fe ff       	call   0x42b1e0
43e73b:	50                   	push   %eax
43e73c:	8b 4b 44             	mov    0x44(%ebx),%ecx
43e73f:	8b 53 40             	mov    0x40(%ebx),%edx
43e742:	8b c3                	mov    %ebx,%eax
43e744:	8b 30                	mov    (%eax),%esi
43e746:	ff 96 84 00 00 00    	call   *0x84(%esi)
43e74c:	8b 83 68 01 00 00    	mov    0x168(%ebx),%eax
43e752:	8b 70 0c             	mov    0xc(%eax),%esi
43e755:	85 f6                	test   %esi,%esi
43e757:	0f 84 86 00 00 00    	je     0x43e7e3
43e75d:	8b c6                	mov    %esi,%eax
43e75f:	8b 15 ac 69 42 00    	mov    0x4269ac,%edx
43e765:	e8 9a 54 fc ff       	call   0x403c04
43e76a:	84 c0                	test   %al,%al
43e76c:	75 1e                	jne    0x43e78c
43e76e:	8b c6                	mov    %esi,%eax
43e770:	8b 15 30 6c 42 00    	mov    0x426c30,%edx
43e776:	e8 89 54 fc ff       	call   0x403c04
43e77b:	84 c0                	test   %al,%al
43e77d:	75 0d                	jne    0x43e78c
43e77f:	8a 93 7b 01 00 00    	mov    0x17b(%ebx),%dl
43e785:	8b c6                	mov    %esi,%eax
43e787:	8b 08                	mov    (%eax),%ecx
43e789:	ff 51 3c             	call   *0x3c(%ecx)
43e78c:	8b c6                	mov    %esi,%eax
43e78e:	8b 10                	mov    (%eax),%edx
43e790:	ff 52 28             	call   *0x28(%edx)
43e793:	84 c0                	test   %al,%al
43e795:	75 1f                	jne    0x43e7b6
43e797:	80 bb 78 01 00 00 00 	cmpb   $0x0,0x178(%ebx)
43e79e:	74 16                	je     0x43e7b6
43e7a0:	80 bb 7d 01 00 00 00 	cmpb   $0x0,0x17d(%ebx)
43e7a7:	75 0d                	jne    0x43e7b6
43e7a9:	a1 04 e8 43 00       	mov    0x43e804,%eax
43e7ae:	0b 43 50             	or     0x50(%ebx),%eax
43e7b1:	89 43 50             	mov    %eax,0x50(%ebx)
43e7b4:	eb 0d                	jmp    0x43e7c3
43e7b6:	a1 04 e8 43 00       	mov    0x43e804,%eax
43e7bb:	f7 d0                	not    %eax
43e7bd:	23 43 50             	and    0x50(%ebx),%eax
43e7c0:	89 43 50             	mov    %eax,0x50(%ebx)
43e7c3:	8b c3                	mov    %ebx,%eax
43e7c5:	e8 be fd ff ff       	call   0x43e588
43e7ca:	84 c0                	test   %al,%al
43e7cc:	74 22                	je     0x43e7f0
43e7ce:	80 bb 7c 01 00 00 00 	cmpb   $0x0,0x17c(%ebx)
43e7d5:	74 19                	je     0x43e7f0
43e7d7:	8b c3                	mov    %ebx,%eax
43e7d9:	8b 10                	mov    (%eax),%edx
43e7db:	ff 92 88 00 00 00    	call   *0x88(%edx)
43e7e1:	eb 0d                	jmp    0x43e7f0
43e7e3:	a1 04 e8 43 00       	mov    0x43e804,%eax
43e7e8:	f7 d0                	not    %eax
43e7ea:	23 43 50             	and    0x50(%ebx),%eax
43e7ed:	89 43 50             	mov    %eax,0x50(%ebx)
43e7f0:	80 bb 7c 01 00 00 00 	cmpb   $0x0,0x17c(%ebx)
43e7f7:	75 07                	jne    0x43e800
43e7f9:	8b c3                	mov    %ebx,%eax
43e7fb:	8b 10                	mov    (%eax),%edx
43e7fd:	ff 52 7c             	call   *0x7c(%edx)
43e800:	5e                   	pop    %esi
43e801:	5b                   	pop    %ebx
43e802:	c3                   	ret
43e803:	00 40 00             	add    %al,0x0(%eax)
43e806:	00 00                	add    %al,(%eax)
43e808:	53                   	push   %ebx
43e809:	56                   	push   %esi
43e80a:	57                   	push   %edi
43e80b:	55                   	push   %ebp
43e80c:	8b e9                	mov    %ecx,%ebp
43e80e:	8b fa                	mov    %edx,%edi
43e810:	8b f0                	mov    %eax,%esi
43e812:	b3 01                	mov    $0x1,%bl
43e814:	f6 46 1c 10          	testb  $0x10,0x1c(%esi)
43e818:	74 1e                	je     0x43e838
43e81a:	8b 86 68 01 00 00    	mov    0x168(%esi),%eax
43e820:	e8 a3 c9 fe ff       	call   0x42b1c8
43e825:	85 c0                	test   %eax,%eax
43e827:	7e 3e                	jle    0x43e867
43e829:	8b 86 68 01 00 00    	mov    0x168(%esi),%eax
43e82f:	e8 ac c9 fe ff       	call   0x42b1e0
43e834:	85 c0                	test   %eax,%eax
43e836:	7e 2f                	jle    0x43e867
43e838:	8a 46 5b             	mov    0x5b(%esi),%al
43e83b:	84 c0                	test   %al,%al
43e83d:	74 06                	je     0x43e845
43e83f:	04 fd                	add    $0xfd,%al
43e841:	2c 02                	sub    $0x2,%al
43e843:	73 0d                	jae    0x43e852
43e845:	8b 86 68 01 00 00    	mov    0x168(%esi),%eax
43e84b:	e8 78 c9 fe ff       	call   0x42b1c8
43e850:	89 07                	mov    %eax,(%edi)
43e852:	8a 46 5b             	mov    0x5b(%esi),%al
43e855:	2c 03                	sub    $0x3,%al
43e857:	73 0e                	jae    0x43e867
43e859:	8b 86 68 01 00 00    	mov    0x168(%esi),%eax
43e85f:	e8 7c c9 fe ff       	call   0x42b1e0
43e864:	89 45 00             	mov    %eax,0x0(%ebp)
43e867:	8b c3                	mov    %ebx,%eax
43e869:	5d                   	pop    %ebp
43e86a:	5f                   	pop    %edi
43e86b:	5e                   	pop    %esi
43e86c:	5b                   	pop    %ebx
43e86d:	c3                   	ret
43e86e:	8b c0                	mov    %eax,%eax
43e870:	53                   	push   %ebx
43e871:	56                   	push   %esi
43e872:	84 d2                	test   %dl,%dl
43e874:	74 08                	je     0x43e87e
43e876:	83 c4 f0             	add    $0xfffffff0,%esp
43e879:	e8 5e 55 fc ff       	call   0x403ddc
43e87e:	8b da                	mov    %edx,%ebx
43e880:	8b f0                	mov    %eax,%esi
43e882:	33 d2                	xor    %edx,%edx
43e884:	8b c6                	mov    %esi,%eax
43e886:	e8 cd 5d fe ff       	call   0x424658
43e88b:	c6 46 40 01          	movb   $0x1,0x40(%esi)
43e88f:	c7 46 30 e8 03 00 00 	movl   $0x3e8,0x30(%esi)