4795b0:	0f 84 cd 00 00 00    	je     0x479683
4795b6:	83 fa ff             	cmp    $0xffffffff,%edx
4795b9:	0f 84 c4 00 00 00    	je     0x479683
4795bf:	8b 40 0c             	mov    0xc(%eax),%eax
4795c2:	a8 06                	test   $0x6,%al
4795c4:	75 5f                	jne    0x479625
4795c6:	ff 75 08             	push   0x8(%ebp)
4795c9:	e8 a8 eb ff ff       	call   0x478176
4795ce:	59                   	pop    %ecx
4795cf:	83 f8 ff             	cmp    $0xffffffff,%eax
4795d2:	74 37                	je     0x47960b
4795d4:	ff 75 08             	push   0x8(%ebp)
4795d7:	e8 9a eb ff ff       	call   0x478176
4795dc:	59                   	pop    %ecx
4795dd:	83 f8 fe             	cmp    $0xfffffffe,%eax
4795e0:	74 29                	je     0x47960b
4795e2:	8b 75 08             	mov    0x8(%ebp),%esi
4795e5:	57                   	push   %edi
4795e6:	56                   	push   %esi
4795e7:	e8 8a eb ff ff       	call   0x478176
4795ec:	8b f8                	mov    %eax,%edi
4795ee:	56                   	push   %esi
4795ef:	c1 ff 06             	sar    $0x6,%edi
4795f2:	e8 7f eb ff ff       	call   0x478176
4795f7:	59                   	pop    %ecx
4795f8:	83 e0 3f             	and    $0x3f,%eax
4795fb:	59                   	pop    %ecx
4795fc:	6b c8 30             	imul   $0x30,%eax,%ecx
4795ff:	8b 04 bd 00 c0 4b 00 	mov    0x4bc000(,%edi,4),%eax
479606:	5f                   	pop    %edi
479607:	03 c1                	add    %ecx,%eax
479609:	eb 05                	jmp    0x479610
47960b:	b8 08 83 4b 00       	mov    $0x4b8308,%eax
479610:	8a 40 28             	mov    0x28(%eax),%al
479613:	24 82                	and    $0x82,%al
479615:	3c 82                	cmp    $0x82,%al
479617:	75 0c                	jne    0x479625
479619:	8b 45 08             	mov    0x8(%ebp),%eax
47961c:	6a 20                	push   $0x20
47961e:	59                   	pop    %ecx
47961f:	83 c0 0c             	add    $0xc,%eax
479622:	f0 09 08             	lock or %ecx,(%eax)
479625:	8b 45 08             	mov    0x8(%ebp),%eax
479628:	81 78 18 00 02 00 00 	cmpl   $0x200,0x18(%eax)
47962f:	75 24                	jne    0x479655
479631:	8b 40 0c             	mov    0xc(%eax),%eax
479634:	c1 e8 06             	shr    $0x6,%eax
479637:	a8 01                	test   $0x1,%al
479639:	74 17                	je     0x479652
47963b:	8b 45 08             	mov    0x8(%ebp),%eax
47963e:	8b 40 0c             	mov    0xc(%eax),%eax
479641:	c1 e8 08             	shr    $0x8,%eax
479644:	a8 01                	test   $0x1,%al
479646:	75 0a                	jne    0x479652
479648:	8b 45 08             	mov    0x8(%ebp),%eax
47964b:	c7 40 18 00 10 00 00 	movl   $0x1000,0x18(%eax)
479652:	8b 45 08             	mov    0x8(%ebp),%eax
479655:	8b 08                	mov    (%eax),%ecx
479657:	84 db                	test   %bl,%bl
479659:	74 17                	je     0x479672
47965b:	0f b6 11             	movzbl (%ecx),%edx
47965e:	66 c1 e2 08          	shl    $0x8,%dx
479662:	0f b6 cf             	movzbl %bh,%ecx
479665:	66 0b d1             	or     %cx,%dx
479668:	ff 48 08             	decl   0x8(%eax)
47966b:	ff 00                	incl   (%eax)
47966d:	0f b7 ca             	movzwl %dx,%ecx
479670:	eb 0a                	jmp    0x47967c
479672:	0f b7 09             	movzwl (%ecx),%ecx
479675:	83 40 08 fe          	addl   $0xfffffffe,0x8(%eax)
479679:	83 00 02             	addl   $0x2,(%eax)
47967c:	8b c1                	mov    %ecx,%eax
47967e:	0f b7 c0             	movzwl %ax,%eax
479681:	eb 20                	jmp    0x4796a3
479683:	33 c9                	xor    %ecx,%ecx
479685:	85 d2                	test   %edx,%edx
479687:	0f 95 c1             	setne  %cl
47968a:	83 c0 0c             	add    $0xc,%eax
47968d:	8d 0c cd 08 00 00 00 	lea    0x8(,%ecx,8),%ecx
479694:	f0 09 08             	lock or %ecx,(%eax)
479697:	8b 45 08             	mov    0x8(%ebp),%eax
47969a:	83 60 08 00          	andl   $0x0,0x8(%eax)
47969e:	b8 ff ff 00 00       	mov    $0xffff,%eax
4796a3:	5b                   	pop    %ebx
4796a4:	5e                   	pop    %esi
4796a5:	5d                   	pop    %ebp
4796a6:	c3                   	ret
4796a7:	8b ff                	mov    %edi,%edi
4796a9:	55                   	push   %ebp
4796aa:	8b ec                	mov    %esp,%ebp
4796ac:	51                   	push   %ecx
4796ad:	8b 45 08             	mov    0x8(%ebp),%eax
4796b0:	83 78 08 01          	cmpl   $0x1,0x8(%eax)
4796b4:	75 0d                	jne    0x4796c3
4796b6:	8b 00                	mov    (%eax),%eax
4796b8:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4796bc:	8a 00                	mov    (%eax),%al
4796be:	88 45 fd             	mov    %al,-0x3(%ebp)
4796c1:	eb 06                	jmp    0x4796c9
4796c3:	66 c7 45 fc 00 00    	movw   $0x0,-0x4(%ebp)
4796c9:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
4796cd:	8b e5                	mov    %ebp,%esp
4796cf:	5d                   	pop    %ebp
4796d0:	c3                   	ret
4796d1:	33 c0                	xor    %eax,%eax
4796d3:	c3                   	ret
4796d4:	8b ff                	mov    %edi,%edi
4796d6:	55                   	push   %ebp
4796d7:	8b ec                	mov    %esp,%ebp
4796d9:	8b 45 08             	mov    0x8(%ebp),%eax
4796dc:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
4796e0:	74 0b                	je     0x4796ed
4796e2:	83 78 08 ff          	cmpl   $0xffffffff,0x8(%eax)
4796e6:	74 05                	je     0x4796ed
4796e8:	33 c0                	xor    %eax,%eax
4796ea:	40                   	inc    %eax
4796eb:	5d                   	pop    %ebp
4796ec:	c3                   	ret
4796ed:	33 c0                	xor    %eax,%eax
4796ef:	5d                   	pop    %ebp
4796f0:	c3                   	ret
4796f1:	8b ff                	mov    %edi,%edi
4796f3:	55                   	push   %ebp
4796f4:	8b ec                	mov    %esp,%ebp
4796f6:	8b 45 08             	mov    0x8(%ebp),%eax
4796f9:	8b 48 08             	mov    0x8(%eax),%ecx
4796fc:	85 c9                	test   %ecx,%ecx
4796fe:	74 0c                	je     0x47970c
479700:	33 c0                	xor    %eax,%eax
479702:	40                   	inc    %eax
479703:	3b c8                	cmp    %eax,%ecx
479705:	74 05                	je     0x47970c
479707:	83 f9 ff             	cmp    $0xffffffff,%ecx
47970a:	75 02                	jne    0x47970e
47970c:	33 c0                	xor    %eax,%eax
47970e:	5d                   	pop    %ebp
47970f:	c3                   	ret
479710:	8b ff                	mov    %edi,%edi
479712:	55                   	push   %ebp
479713:	8b ec                	mov    %esp,%ebp
479715:	8b 45 08             	mov    0x8(%ebp),%eax
479718:	ff 48 08             	decl   0x8(%eax)
47971b:	8b 4d 08             	mov    0x8(%ebp),%ecx
47971e:	8b 11                	mov    (%ecx),%edx
479720:	8a 02                	mov    (%edx),%al
479722:	42                   	inc    %edx
479723:	89 11                	mov    %edx,(%ecx)
479725:	5d                   	pop    %ebp
479726:	c3                   	ret
479727:	8b ff                	mov    %edi,%edi
479729:	55                   	push   %ebp
47972a:	8b ec                	mov    %esp,%ebp
47972c:	66 8b 45 0c          	mov    0xc(%ebp),%ax
479730:	8b 4d 08             	mov    0x8(%ebp),%ecx
479733:	84 c0                	test   %al,%al
479735:	74 1d                	je     0x479754
479737:	8b 11                	mov    (%ecx),%edx
479739:	66 c1 e8 08          	shr    $0x8,%ax
47973d:	0f b6 12             	movzbl (%edx),%edx
479740:	66 c1 e2 08          	shl    $0x8,%dx
479744:	66 0b d0             	or     %ax,%dx
479747:	ff 49 08             	decl   0x8(%ecx)
47974a:	8b 4d 08             	mov    0x8(%ebp),%ecx
47974d:	0f b7 c2             	movzwl %dx,%eax
479750:	ff 01                	incl   (%ecx)
479752:	5d                   	pop    %ebp
479753:	c3                   	ret
479754:	8b 01                	mov    (%ecx),%eax
479756:	0f b7 00             	movzwl (%eax),%eax
479759:	83 41 08 fe          	addl   $0xfffffffe,0x8(%ecx)
47975d:	8b 4d 08             	mov    0x8(%ebp),%ecx
479760:	83 01 02             	addl   $0x2,(%ecx)
479763:	5d                   	pop    %ebp
479764:	c3                   	ret
479765:	8b ff                	mov    %edi,%edi
479767:	55                   	push   %ebp
479768:	8b ec                	mov    %esp,%ebp
47976a:	5d                   	pop    %ebp
47976b:	e9 f6 fb ff ff       	jmp    0x479366
479770:	8b ff                	mov    %edi,%edi
479772:	55                   	push   %ebp
479773:	8b ec                	mov    %esp,%ebp
479775:	5d                   	pop    %ebp
479776:	e9 6e fd ff ff       	jmp    0x4794e9
47977b:	6a 14                	push   $0x14
47977d:	68 e0 4e 4b 00       	push   $0x4b4ee0
479782:	e8 d9 71 fc ff       	call   0x440960
479787:	8b 75 08             	mov    0x8(%ebp),%esi
47978a:	83 fe fe             	cmp    $0xfffffffe,%esi
47978d:	75 18                	jne    0x4797a7
47978f:	e8 88 36 fd ff       	call   0x44ce1c
479794:	83 20 00             	andl   $0x0,(%eax)
479797:	e8 93 36 fd ff       	call   0x44ce2f
47979c:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4797a2:	e9 b6 00 00 00       	jmp    0x47985d
4797a7:	85 f6                	test   %esi,%esi
4797a9:	0f 88 96 00 00 00    	js     0x479845
4797af:	3b 35 00 c2 4b 00    	cmp    0x4bc200,%esi
4797b5:	0f 83 8a 00 00 00    	jae    0x479845
4797bb:	8b de                	mov    %esi,%ebx
4797bd:	c1 fb 06             	sar    $0x6,%ebx
4797c0:	8b c6                	mov    %esi,%eax
4797c2:	83 e0 3f             	and    $0x3f,%eax
4797c5:	6b c8 30             	imul   $0x30,%eax,%ecx
4797c8:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4797cb:	8b 04 9d 00 c0 4b 00 	mov    0x4bc000(,%ebx,4),%eax
4797d2:	0f b6 44 08 28       	movzbl 0x28(%eax,%ecx,1),%eax
4797d7:	83 e0 01             	and    $0x1,%eax
4797da:	74 69                	je     0x479845
4797dc:	56                   	push   %esi
4797dd:	e8 63 5b 00 00       	call   0x47f345
4797e2:	59                   	pop    %ecx
4797e3:	83 cf ff             	or     $0xffffffff,%edi
4797e6:	89 7d e4             	mov    %edi,-0x1c(%ebp)
4797e9:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4797ed:	8b 04 9d 00 c0 4b 00 	mov    0x4bc000(,%ebx,4),%eax
4797f4:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4797f7:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
4797fc:	75 15                	jne    0x479813
4797fe:	e8 2c 36 fd ff       	call   0x44ce2f
479803:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
479809:	e8 0e 36 fd ff       	call   0x44ce1c
47980e:	83 20 00             	andl   $0x0,(%eax)
479811:	eb 14                	jmp    0x479827
479813:	ff 75 10             	push   0x10(%ebp)
479816:	ff 75 0c             	push   0xc(%ebp)
479819:	56                   	push   %esi
47981a:	e8 4c 01 00 00       	call   0x47996b
47981f:	83 c4 0c             	add    $0xc,%esp
479822:	8b f8                	mov    %eax,%edi
479824:	89 7d e4             	mov    %edi,-0x1c(%ebp)
479827:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
47982e:	e8 0a 00 00 00       	call   0x47983d
479833:	8b c7                	mov    %edi,%eax
479835:	eb 29                	jmp    0x479860
479837:	8b 75 08             	mov    0x8(%ebp),%esi
47983a:	8b 7d e4             	mov    -0x1c(%ebp),%edi
47983d:	56                   	push   %esi
47983e:	e8 b9 5b 00 00       	call   0x47f3fc
479843:	59                   	pop    %ecx
479844:	c3                   	ret
479845:	e8 d2 35 fd ff       	call   0x44ce1c
47984a:	83 20 00             	andl   $0x0,(%eax)
47984d:	e8 dd 35 fd ff       	call   0x44ce2f
479852:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
479858:	e8 79 34 fd ff       	call   0x44ccd6
47985d:	83 c8 ff             	or     $0xffffffff,%eax
479860:	e8 41 71 fc ff       	call   0x4409a6
479865:	c3                   	ret
479866:	6a 1c                	push   $0x1c
479868:	68 00 4f 4b 00       	push   $0x4b4f00
47986d:	e8 ee 70 fc ff       	call   0x440960
479872:	8b 7d 08             	mov    0x8(%ebp),%edi
479875:	83 ff fe             	cmp    $0xfffffffe,%edi
479878:	75 18                	jne    0x479892
47987a:	e8 9d 35 fd ff       	call   0x44ce1c
47987f:	83 20 00             	andl   $0x0,(%eax)
479882:	e8 a8 35 fd ff       	call   0x44ce2f
479887:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
47988d:	e9 cc 00 00 00       	jmp    0x47995e
479892:	85 ff                	test   %edi,%edi
479894:	0f 88 ac 00 00 00    	js     0x479946
47989a:	3b 3d 00 c2 4b 00    	cmp    0x4bc200,%edi
4798a0:	0f 83 a0 00 00 00    	jae    0x479946
4798a6:	8b cf                	mov    %edi,%ecx
4798a8:	c1 f9 06             	sar    $0x6,%ecx
4798ab:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4798ae:	8b c7                	mov    %edi,%eax
4798b0:	83 e0 3f             	and    $0x3f,%eax
4798b3:	6b d0 30             	imul   $0x30,%eax,%edx
4798b6:	89 55 e0             	mov    %edx,-0x20(%ebp)
4798b9:	8b 04 8d 00 c0 4b 00 	mov    0x4bc000(,%ecx,4),%eax
4798c0:	0f b6 44 10 28       	movzbl 0x28(%eax,%edx,1),%eax
4798c5:	83 e0 01             	and    $0x1,%eax
4798c8:	74 7c                	je     0x479946
4798ca:	57                   	push   %edi
4798cb:	e8 75 5a 00 00       	call   0x47f345
4798d0:	59                   	pop    %ecx
4798d1:	83 ce ff             	or     $0xffffffff,%esi
4798d4:	89 75 d4             	mov    %esi,-0x2c(%ebp)
4798d7:	8b de                	mov    %esi,%ebx
4798d9:	89 5d d8             	mov    %ebx,-0x28(%ebp)
4798dc:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4798e0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4798e3:	8b 04 85 00 c0 4b 00 	mov    0x4bc000(,%eax,4),%eax
4798ea:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4798ed:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
4798f2:	75 15                	jne    0x479909
4798f4:	e8 36 35 fd ff       	call   0x44ce2f
4798f9:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4798ff:	e8 18 35 fd ff       	call   0x44ce1c
479904:	83 20 00             	andl   $0x0,(%eax)
479907:	eb 1c                	jmp    0x479925
479909:	ff 75 14             	push   0x14(%ebp)
47990c:	ff 75 10             	push   0x10(%ebp)
47990f:	ff 75 0c             	push   0xc(%ebp)
479912:	57                   	push   %edi
479913:	e8 aa 00 00 00       	call   0x4799c2
479918:	83 c4 10             	add    $0x10,%esp
47991b:	8b f0                	mov    %eax,%esi
47991d:	89 75 d4             	mov    %esi,-0x2c(%ebp)
479920:	8b da                	mov    %edx,%ebx
479922:	89 5d d8             	mov    %ebx,-0x28(%ebp)
479925:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
47992c:	e8 0d 00 00 00       	call   0x47993e
479931:	8b d3                	mov    %ebx,%edx
479933:	eb 2e                	jmp    0x479963
479935:	8b 7d 08             	mov    0x8(%ebp),%edi
479938:	8b 5d d8             	mov    -0x28(%ebp),%ebx
47993b:	8b 75 d4             	mov    -0x2c(%ebp),%esi
47993e:	57                   	push   %edi
47993f:	e8 b8 5a 00 00       	call   0x47f3fc
479944:	59                   	pop    %ecx
479945:	c3                   	ret
479946:	e8 d1 34 fd ff       	call   0x44ce1c
47994b:	83 20 00             	andl   $0x0,(%eax)
47994e:	e8 dc 34 fd ff       	call   0x44ce2f
479953:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
479959:	e8 78 33 fd ff       	call   0x44ccd6
47995e:	83 ce ff             	or     $0xffffffff,%esi
479961:	8b d6                	mov    %esi,%edx
479963:	8b c6                	mov    %esi,%eax
479965:	e8 3c 70 fc ff       	call   0x4409a6
47996a:	c3                   	ret
47996b:	8b ff                	mov    %edi,%edi
47996d:	55                   	push   %ebp
47996e:	8b ec                	mov    %esp,%ebp
479970:	56                   	push   %esi
479971:	8b 75 08             	mov    0x8(%ebp),%esi
479974:	56                   	push   %esi
479975:	e8 48 5c 00 00       	call   0x47f5c2
47997a:	59                   	pop    %ecx
47997b:	83 f8 ff             	cmp    $0xffffffff,%eax
47997e:	75 10                	jne    0x479990
479980:	e8 aa 34 fd ff       	call   0x44ce2f
479985:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
47998b:	83 c8 ff             	or     $0xffffffff,%eax
47998e:	eb 2f                	jmp    0x4799bf
479990:	ff 75 10             	push   0x10(%ebp)
479993:	ff 75 0c             	push   0xc(%ebp)
479996:	50                   	push   %eax
479997:	e8 a4 00 00 00       	call   0x479a40
47999c:	8b d0                	mov    %eax,%edx
47999e:	83 c4 0c             	add    $0xc,%esp
4799a1:	83 fa ff             	cmp    $0xffffffff,%edx
4799a4:	74 e5                	je     0x47998b
4799a6:	8b c6                	mov    %esi,%eax
4799a8:	83 e6 3f             	and    $0x3f,%esi
4799ab:	c1 f8 06             	sar    $0x6,%eax
4799ae:	6b ce 30             	imul   $0x30,%esi,%ecx