4635ed:	33 c0                	xor    %eax,%eax
4635ef:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
4635f2:	8b fa                	mov    %edx,%edi
4635f4:	f3 ab                	rep stos %eax,%es:(%edi)
4635f6:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4635f9:	83 e3 fd             	and    $0xfffffffd,%ebx
4635fc:	c1 e0 02             	shl    $0x2,%eax
4635ff:	52                   	push   %edx
463600:	83 f8 10             	cmp    $0x10,%eax
463603:	72 07                	jb     0x46360c
463605:	e8 56 29 03 00       	call   0x495f60
46360a:	eb 05                	jmp    0x463611
46360c:	e8 71 60 01 00       	call   0x479682
463611:	83 c4 04             	add    $0x4,%esp
463614:	f6 c3 01             	test   $0x1,%bl
463617:	74 27                	je     0x463640
463619:	8b 55 c0             	mov    -0x40(%ebp),%edx
46361c:	33 c0                	xor    %eax,%eax
46361e:	8b fe                	mov    %esi,%edi
463620:	8b ca                	mov    %edx,%ecx
463622:	f3 ab                	rep stos %eax,%es:(%edi)
463624:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
46362b:	56                   	push   %esi
46362c:	83 f8 10             	cmp    $0x10,%eax
46362f:	72 07                	jb     0x463638
463631:	e8 2a 29 03 00       	call   0x495f60
463636:	eb 05                	jmp    0x46363d
463638:	e8 45 60 01 00       	call   0x479682
46363d:	83 c4 04             	add    $0x4,%esp
463640:	8b 4d e8             	mov    -0x18(%ebp),%ecx
463643:	0f b7 7d f0          	movzwl -0x10(%ebp),%edi
463647:	80 7d f3 00          	cmpb   $0x0,-0xd(%ebp)
46364b:	8d 34 0f             	lea    (%edi,%ecx,1),%esi
46364e:	0f 44 f1             	cmove  %ecx,%esi
463651:	3b 75 e4             	cmp    -0x1c(%ebp),%esi
463654:	73 27                	jae    0x46367d
463656:	8b 5d e0             	mov    -0x20(%ebp),%ebx
463659:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
463660:	8b 03                	mov    (%ebx),%eax
463662:	8b ce                	mov    %esi,%ecx
463664:	c1 e9 05             	shr    $0x5,%ecx
463667:	8d 14 88             	lea    (%eax,%ecx,4),%edx
46366a:	8b ce                	mov    %esi,%ecx
46366c:	8b 02                	mov    (%edx),%eax
46366e:	83 e1 1f             	and    $0x1f,%ecx
463671:	0f ab c8             	bts    %ecx,%eax
463674:	03 f7                	add    %edi,%esi
463676:	89 02                	mov    %eax,(%edx)
463678:	3b 75 e4             	cmp    -0x1c(%ebp),%esi
46367b:	72 e3                	jb     0x463660
46367d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
463680:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
463687:	59                   	pop    %ecx
463688:	5f                   	pop    %edi
463689:	5e                   	pop    %esi
46368a:	5b                   	pop    %ebx
46368b:	8b e5                	mov    %ebp,%esp
46368d:	5d                   	pop    %ebp
46368e:	c3                   	ret
46368f:	cc                   	int3
463690:	55                   	push   %ebp
463691:	8b ec                	mov    %esp,%ebp
463693:	6a ff                	push   $0xffffffff
463695:	68 7b cb 49 00       	push   $0x49cb7b
46369a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4636a0:	50                   	push   %eax
4636a1:	83 ec 7c             	sub    $0x7c,%esp
4636a4:	53                   	push   %ebx
4636a5:	56                   	push   %esi
4636a6:	57                   	push   %edi
4636a7:	a1 14 40 4c 00       	mov    0x4c4014,%eax
4636ac:	33 c5                	xor    %ebp,%eax
4636ae:	50                   	push   %eax
4636af:	8d 45 f4             	lea    -0xc(%ebp),%eax
4636b2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4636b8:	8b d9                	mov    %ecx,%ebx
4636ba:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4636bd:	e8 3e 21 00 00       	call   0x465800
4636c2:	8b 08                	mov    (%eax),%ecx
4636c4:	8b 40 04             	mov    0x4(%eax),%eax
4636c7:	2b c1                	sub    %ecx,%eax
4636c9:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4636cc:	d1 f8                	sar    $1,%eax
4636ce:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
4636d1:	89 45 ec             	mov    %eax,-0x14(%ebp)
4636d4:	e8 b7 aa fe ff       	call   0x44e190
4636d9:	51                   	push   %ecx
4636da:	6a 02                	push   $0x2
4636dc:	c7 45 a0 dc 6b 4b 00 	movl   $0x4b6bdc,-0x60(%ebp)
4636e3:	c7 45 a8 02 00 00 00 	movl   $0x2,-0x58(%ebp)
4636ea:	e8 91 00 ff ff       	call   0x453780
4636ef:	89 45 ac             	mov    %eax,-0x54(%ebp)
4636f2:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
4636f9:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
4636ff:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
463706:	53                   	push   %ebx
463707:	8d 53 14             	lea    0x14(%ebx),%edx
46370a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
463711:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
463717:	e8 54 da fd ff       	call   0x441170
46371c:	83 c4 04             	add    $0x4,%esp
46371f:	8d 73 28             	lea    0x28(%ebx),%esi
463722:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
463726:	56                   	push   %esi
463727:	8b d0                	mov    %eax,%edx
463729:	89 75 e0             	mov    %esi,-0x20(%ebp)
46372c:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
46372f:	e8 3c db fd ff       	call   0x441270
463734:	83 c4 04             	add    $0x4,%esp
463737:	8d 4d a0             	lea    -0x60(%ebp),%ecx
46373a:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
46373e:	51                   	push   %ecx
46373f:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
463742:	51                   	push   %ecx
463743:	8b c8                	mov    %eax,%ecx
463745:	e8 d6 cf fe ff       	call   0x450720
46374a:	8d 4d cc             	lea    -0x34(%ebp),%ecx
46374d:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
463751:	e8 3a aa fe ff       	call   0x44e190
463756:	51                   	push   %ecx
463757:	6a 02                	push   $0x2
463759:	c7 45 c8 dc 6b 4b 00 	movl   $0x4b6bdc,-0x38(%ebp)
463760:	c7 45 d0 02 00 00 00 	movl   $0x2,-0x30(%ebp)
463767:	e8 14 00 ff ff       	call   0x453780
46376c:	8b f8                	mov    %eax,%edi
46376e:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
463775:	89 7d d4             	mov    %edi,-0x2c(%ebp)
463778:	c7 07 00 80 00 00    	movl   $0x8000,(%edi)
46377e:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
463785:	83 7d c4 01          	cmpl   $0x1,-0x3c(%ebp)
463789:	74 10                	je     0x46379b
46378b:	8d 45 c8             	lea    -0x38(%ebp),%eax
46378e:	50                   	push   %eax
46378f:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
463792:	e8 89 dc fe ff       	call   0x451420
463797:	8b d0                	mov    %eax,%edx
463799:	eb 03                	jmp    0x46379e
46379b:	83 ca ff             	or     $0xffffffff,%edx
46379e:	ff 75 d4             	push   -0x2c(%ebp)
4637a1:	85 d2                	test   %edx,%edx
4637a3:	8b c7                	mov    %edi,%eax
4637a5:	0f 48 45 c0          	cmovs  -0x40(%ebp),%eax
4637a9:	33 c9                	xor    %ecx,%ecx
4637ab:	85 d2                	test   %edx,%edx
4637ad:	0f 48 4d c4          	cmovs  -0x3c(%ebp),%ecx
4637b1:	8b 00                	mov    (%eax),%eax
4637b3:	89 45 e8             	mov    %eax,-0x18(%ebp)
4637b6:	f7 d8                	neg    %eax
4637b8:	85 c9                	test   %ecx,%ecx
4637ba:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4637bd:	0f 45 c8             	cmovne %eax,%ecx
4637c0:	33 c0                	xor    %eax,%eax
4637c2:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4637c5:	b9 02 00 00 00       	mov    $0x2,%ecx
4637ca:	f3 ab                	rep stos %eax,%es:(%edi)
4637cc:	e8 b1 5e 01 00       	call   0x479682
4637d1:	8b 45 c0             	mov    -0x40(%ebp),%eax
4637d4:	83 c4 04             	add    $0x4,%esp
4637d7:	8b 55 bc             	mov    -0x44(%ebp),%edx
4637da:	8b f8                	mov    %eax,%edi
4637dc:	89 45 dc             	mov    %eax,-0x24(%ebp)
4637df:	8b ca                	mov    %edx,%ecx
4637e1:	33 c0                	xor    %eax,%eax
4637e3:	ff 75 dc             	push   -0x24(%ebp)
4637e6:	f3 ab                	rep stos %eax,%es:(%edi)
4637e8:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
4637ef:	83 f8 10             	cmp    $0x10,%eax
4637f2:	72 07                	jb     0x4637fb
4637f4:	e8 67 27 03 00       	call   0x495f60
4637f9:	eb 05                	jmp    0x463800
4637fb:	e8 82 5e 01 00       	call   0x479682
463800:	8b 45 98             	mov    -0x68(%ebp),%eax
463803:	83 c4 04             	add    $0x4,%esp
463806:	8b 55 94             	mov    -0x6c(%ebp),%edx
463809:	8b f8                	mov    %eax,%edi
46380b:	89 45 dc             	mov    %eax,-0x24(%ebp)
46380e:	8b ca                	mov    %edx,%ecx
463810:	33 c0                	xor    %eax,%eax
463812:	ff 75 dc             	push   -0x24(%ebp)
463815:	f3 ab                	rep stos %eax,%es:(%edi)
463817:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
46381e:	83 f8 10             	cmp    $0x10,%eax
463821:	72 07                	jb     0x46382a
463823:	e8 38 27 03 00       	call   0x495f60
463828:	eb 05                	jmp    0x46382f
46382a:	e8 53 5e 01 00       	call   0x479682
46382f:	8b 45 84             	mov    -0x7c(%ebp),%eax
463832:	83 c4 04             	add    $0x4,%esp
463835:	8b 55 80             	mov    -0x80(%ebp),%edx
463838:	8b f8                	mov    %eax,%edi
46383a:	89 45 dc             	mov    %eax,-0x24(%ebp)
46383d:	8b ca                	mov    %edx,%ecx
46383f:	33 c0                	xor    %eax,%eax
463841:	ff 75 dc             	push   -0x24(%ebp)
463844:	f3 ab                	rep stos %eax,%es:(%edi)
463846:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
46384d:	83 f8 10             	cmp    $0x10,%eax
463850:	72 07                	jb     0x463859
463852:	e8 09 27 03 00       	call   0x495f60
463857:	eb 05                	jmp    0x46385e
463859:	e8 24 5e 01 00       	call   0x479682
46385e:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
463865:	83 c4 04             	add    $0x4,%esp
463868:	8b 55 ac             	mov    -0x54(%ebp),%edx
46386b:	33 c0                	xor    %eax,%eax
46386d:	8b fa                	mov    %edx,%edi
46386f:	b9 02 00 00 00       	mov    $0x2,%ecx
463874:	f3 ab                	rep stos %eax,%es:(%edi)
463876:	52                   	push   %edx
463877:	e8 06 5e 01 00       	call   0x479682
46387c:	8b 43 44             	mov    0x44(%ebx),%eax
46387f:	83 c4 04             	add    $0x4,%esp
463882:	3b 43 48             	cmp    0x48(%ebx),%eax
463885:	74 03                	je     0x46388a
463887:	89 43 48             	mov    %eax,0x48(%ebx)
46388a:	51                   	push   %ecx
46388b:	ff 75 e8             	push   -0x18(%ebp)
46388e:	8d 4b 44             	lea    0x44(%ebx),%ecx
463891:	c7 43 50 00 00 00 00 	movl   $0x0,0x50(%ebx)
463898:	e8 a3 17 00 00       	call   0x465040
46389d:	8b 7d f0             	mov    -0x10(%ebp),%edi
4638a0:	8b 47 3c             	mov    0x3c(%edi),%eax
4638a3:	89 45 dc             	mov    %eax,-0x24(%ebp)
4638a6:	85 c0                	test   %eax,%eax
4638a8:	75 54                	jne    0x4638fe
4638aa:	33 f6                	xor    %esi,%esi
4638ac:	39 75 ec             	cmp    %esi,-0x14(%ebp)
4638af:	0f 86 4b 02 00 00    	jbe    0x463b00
4638b5:	8b 7d e0             	mov    -0x20(%ebp),%edi
4638b8:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
4638bf:	00
4638c0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4638c3:	8b cf                	mov    %edi,%ecx
4638c5:	0f b7 04 70          	movzwl (%eax,%esi,2),%eax
4638c9:	50                   	push   %eax
4638ca:	e8 91 e6 fe ff       	call   0x451f60
4638cf:	50                   	push   %eax
4638d0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4638d3:	8d 4b 44             	lea    0x44(%ebx),%ecx
4638d6:	57                   	push   %edi
4638d7:	ff 75 f0             	push   -0x10(%ebp)
4638da:	66 8b 14 70          	mov    (%eax,%esi,2),%dx
4638de:	e8 1d fb ff ff       	call   0x463400
4638e3:	46                   	inc    %esi
4638e4:	83 c4 0c             	add    $0xc,%esp
4638e7:	3b 75 ec             	cmp    -0x14(%ebp),%esi
4638ea:	72 d4                	jb     0x4638c0
4638ec:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4638ef:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4638f6:	59                   	pop    %ecx
4638f7:	5f                   	pop    %edi
4638f8:	5e                   	pop    %esi
4638f9:	5b                   	pop    %ebx
4638fa:	8b e5                	mov    %ebp,%esp
4638fc:	5d                   	pop    %ebp
4638fd:	c3                   	ret
4638fe:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
463901:	e8 8a a8 fe ff       	call   0x44e190
463906:	51                   	push   %ecx
463907:	6a 02                	push   $0x2
463909:	c7 45 a0 dc 6b 4b 00 	movl   $0x4b6bdc,-0x60(%ebp)
463910:	c7 45 a8 02 00 00 00 	movl   $0x2,-0x58(%ebp)
463917:	e8 64 fe fe ff       	call   0x453780
46391c:	8b d0                	mov    %eax,%edx
46391e:	33 c9                	xor    %ecx,%ecx
463920:	8b 45 dc             	mov    -0x24(%ebp),%eax
463923:	85 c0                	test   %eax,%eax
463925:	89 55 ac             	mov    %edx,-0x54(%ebp)
463928:	0f 98 c1             	sets   %cl
46392b:	89 4d b0             	mov    %ecx,-0x50(%ebp)
46392e:	8b c8                	mov    %eax,%ecx
463930:	f7 d9                	neg    %ecx
463932:	85 c0                	test   %eax,%eax
463934:	0f 48 c1             	cmovs  %ecx,%eax
463937:	89 02                	mov    %eax,(%edx)
463939:	c7 42 04 00 00 00 00 	movl   $0x0,0x4(%edx)
463940:	8d 45 a0             	lea    -0x60(%ebp),%eax
463943:	c7 45 fc 04 00 00 00 	movl   $0x4,-0x4(%ebp)
46394a:	50                   	push   %eax
46394b:	8b d7                	mov    %edi,%edx
46394d:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
463950:	e8 1b d8 fd ff       	call   0x441170
463955:	83 c4 04             	add    $0x4,%esp
463958:	50                   	push   %eax
463959:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
46395f:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
463963:	e8 d8 aa fe ff       	call   0x44e440
463968:	6a 01                	push   $0x1
46396a:	8b c8                	mov    %eax,%ecx
46396c:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
463970:	e8 db d0 fe ff       	call   0x450a50
463975:	50                   	push   %eax
463976:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
463979:	e8 c2 aa fe ff       	call   0x44e440
46397e:	8b 55 80             	mov    -0x80(%ebp),%edx
463981:	33 c0                	xor    %eax,%eax
463983:	8b 5d 84             	mov    -0x7c(%ebp),%ebx
463986:	8b ca                	mov    %edx,%ecx
463988:	8b fb                	mov    %ebx,%edi
46398a:	f3 ab                	rep stos %eax,%es:(%edi)
46398c:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
463993:	53                   	push   %ebx
463994:	83 f8 10             	cmp    $0x10,%eax
463997:	72 07                	jb     0x4639a0
463999:	e8 c2 25 03 00       	call   0x495f60
46399e:	eb 05                	jmp    0x4639a5
4639a0:	e8 dd 5c 01 00       	call   0x479682
4639a5:	83 c4 04             	add    $0x4,%esp
4639a8:	8b 55 94             	mov    -0x6c(%ebp),%edx
4639ab:	33 c0                	xor    %eax,%eax
4639ad:	8b 5d 98             	mov    -0x68(%ebp),%ebx
4639b0:	8b ca                	mov    %edx,%ecx
4639b2:	8b fb                	mov    %ebx,%edi
4639b4:	f3 ab                	rep stos %eax,%es:(%edi)
4639b6:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
4639bd:	53                   	push   %ebx
4639be:	83 f8 10             	cmp    $0x10,%eax
4639c1:	72 07                	jb     0x4639ca
4639c3:	e8 98 25 03 00       	call   0x495f60
4639c8:	eb 05                	jmp    0x4639cf
4639ca:	e8 b3 5c 01 00       	call   0x479682
4639cf:	83 c4 04             	add    $0x4,%esp
4639d2:	c6 45 fc 09          	movb   $0x9,-0x4(%ebp)
4639d6:	33 c0                	xor    %eax,%eax
4639d8:	8b 55 ac             	mov    -0x54(%ebp),%edx
4639db:	b9 02 00 00 00       	mov    $0x2,%ecx
4639e0:	8b fa                	mov    %edx,%edi
4639e2:	f3 ab                	rep stos %eax,%es:(%edi)
4639e4:	52                   	push   %edx
4639e5:	e8 98 5c 01 00       	call   0x479682
4639ea:	83 c4 04             	add    $0x4,%esp
4639ed:	8d 4d c8             	lea    -0x38(%ebp),%ecx
4639f0:	56                   	push   %esi
4639f1:	e8 4a aa fe ff       	call   0x44e440
4639f6:	6a 01                	push   $0x1
4639f8:	8b c8                	mov    %eax,%ecx
4639fa:	c6 45 fc 0a          	movb   $0xa,-0x4(%ebp)
4639fe:	e8 4d d0 fe ff       	call   0x450a50
463a03:	50                   	push   %eax
463a04:	8d 4d a0             	lea    -0x60(%ebp),%ecx
463a07:	e8 34 aa fe ff       	call   0x44e440
463a0c:	8b 55 d0             	mov    -0x30(%ebp),%edx
463a0f:	33 c0                	xor    %eax,%eax
463a11:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
463a14:	8b ca                	mov    %edx,%ecx
463a16:	8b fb                	mov    %ebx,%edi
463a18:	f3 ab                	rep stos %eax,%es:(%edi)
463a1a:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
463a21:	53                   	push   %ebx
463a22:	83 f8 10             	cmp    $0x10,%eax