4ce811:	8b 45 98             	mov    -0x68(%ebp),%eax
4ce814:	89 45 c0             	mov    %eax,-0x40(%ebp)
4ce817:	8d 55 ac             	lea    -0x54(%ebp),%edx
4ce81a:	b9 02 00 00 00       	mov    $0x2,%ecx
4ce81f:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce822:	e8 d9 9f f5 ff       	call   0x428800
4ce827:	56                   	push   %esi
4ce828:	8d 75 d6             	lea    -0x2a(%ebp),%esi
4ce82b:	8d 7d c6             	lea    -0x3a(%ebp),%edi
4ce82e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4ce82f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4ce830:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4ce831:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4ce832:	5e                   	pop    %esi
4ce833:	8b 45 da             	mov    -0x26(%ebp),%eax
4ce836:	03 45 e2             	add    -0x1e(%ebp),%eax
4ce839:	d1 f8                	sar    $1,%eax
4ce83b:	79 03                	jns    0x4ce840
4ce83d:	83 d0 00             	adc    $0x0,%eax
4ce840:	89 45 ca             	mov    %eax,-0x36(%ebp)
4ce843:	f6 45 ec 08          	testb  $0x8,-0x14(%ebp)
4ce847:	0f 95 c3             	setne  %bl
4ce84a:	8b 45 0c             	mov    0xc(%ebp),%eax
4ce84d:	88 58 09             	mov    %bl,0x9(%eax)
4ce850:	80 7d e7 00          	cmpb   $0x0,-0x19(%ebp)
4ce854:	0f 85 f4 00 00 00    	jne    0x4ce94e
4ce85a:	8a 45 f7             	mov    -0x9(%ebp),%al
4ce85d:	0a c3                	or     %bl,%al
4ce85f:	75 0a                	jne    0x4ce86b
4ce861:	80 7d f6 00          	cmpb   $0x0,-0xa(%ebp)
4ce865:	0f 84 90 00 00 00    	je     0x4ce8fb
4ce86b:	84 db                	test   %bl,%bl
4ce86d:	74 1c                	je     0x4ce88b
4ce86f:	68 c0 c0 c0 00       	push   $0xc0c0c0
4ce874:	6a 01                	push   $0x1
4ce876:	8d 55 c6             	lea    -0x3a(%ebp),%edx
4ce879:	b9 ff ff ff 00       	mov    $0xffffff,%ecx
4ce87e:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce881:	e8 62 f8 fe ff       	call   0x4be0e8
4ce886:	e9 b2 00 00 00       	jmp    0x4ce93d
4ce88b:	80 7d f7 00          	cmpb   $0x0,-0x9(%ebp)
4ce88f:	0f 84 a8 00 00 00    	je     0x4ce93d
4ce895:	8b 45 0c             	mov    0xc(%ebp),%eax
4ce898:	f6 40 01 20          	testb  $0x20,0x1(%eax)
4ce89c:	74 4c                	je     0x4ce8ea
4ce89e:	6a 01                	push   $0x1
4ce8a0:	8d 55 c6             	lea    -0x3a(%ebp),%edx
4ce8a3:	33 c9                	xor    %ecx,%ecx
4ce8a5:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce8a8:	e8 03 f5 fe ff       	call   0x4bddb0
4ce8ad:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce8b0:	8b 40 10             	mov    0x10(%eax),%eax
4ce8b3:	8b 56 70             	mov    0x70(%esi),%edx
4ce8b6:	e8 c9 96 f5 ff       	call   0x427f84
4ce8bb:	8b 4d d2             	mov    -0x2e(%ebp),%ecx
4ce8be:	49                   	dec    %ecx
4ce8bf:	8b 5d c6             	mov    -0x3a(%ebp),%ebx
4ce8c2:	8b d3                	mov    %ebx,%edx
4ce8c4:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce8c7:	e8 08 9f f5 ff       	call   0x4287d4
4ce8cc:	8b 7d ca             	mov    -0x36(%ebp),%edi
4ce8cf:	8b cf                	mov    %edi,%ecx
4ce8d1:	8b d3                	mov    %ebx,%edx
4ce8d3:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce8d6:	e8 99 9e f5 ff       	call   0x428774
4ce8db:	8b cf                	mov    %edi,%ecx
4ce8dd:	8b 55 ce             	mov    -0x32(%ebp),%edx
4ce8e0:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce8e3:	e8 8c 9e f5 ff       	call   0x428774
4ce8e8:	eb 53                	jmp    0x4ce93d
4ce8ea:	6a 01                	push   $0x1
4ce8ec:	8d 55 c6             	lea    -0x3a(%ebp),%edx
4ce8ef:	b1 01                	mov    $0x1,%cl
4ce8f1:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce8f4:	e8 b7 f4 fe ff       	call   0x4bddb0
4ce8f9:	eb 42                	jmp    0x4ce93d
4ce8fb:	8b 45 0c             	mov    0xc(%ebp),%eax
4ce8fe:	8b 00                	mov    (%eax),%eax
4ce900:	25 00 10 00 00       	and    $0x1000,%eax
4ce905:	3d 00 10 00 00       	cmp    $0x1000,%eax
4ce90a:	75 31                	jne    0x4ce93d
4ce90c:	80 7d f6 00          	cmpb   $0x0,-0xa(%ebp)
4ce910:	75 12                	jne    0x4ce924
4ce912:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce915:	8b 40 10             	mov    0x10(%eax),%eax
4ce918:	ba 05 00 00 80       	mov    $0x80000005,%edx
4ce91d:	e8 62 96 f5 ff       	call   0x427f84
4ce922:	eb 19                	jmp    0x4ce93d
4ce924:	8b 55 0c             	mov    0xc(%ebp),%edx
4ce927:	b1 02                	mov    $0x2,%cl
4ce929:	8b c6                	mov    %esi,%eax
4ce92b:	e8 a0 f1 ff ff       	call   0x4cdad0
4ce930:	8b d0                	mov    %eax,%edx
4ce932:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce935:	8b 40 10             	mov    0x10(%eax),%eax
4ce938:	e8 47 96 f5 ff       	call   0x427f84
4ce93d:	55                   	push   %ebp
4ce93e:	f6 45 ec 04          	testb  $0x4,-0x14(%ebp)
4ce942:	0f 95 c2             	setne  %dl
4ce945:	8d 45 c6             	lea    -0x3a(%ebp),%eax
4ce948:	e8 cf fa ff ff       	call   0x4ce41c
4ce94d:	59                   	pop    %ecx
4ce94e:	8b 5d c6             	mov    -0x3a(%ebp),%ebx
4ce951:	03 5d ce             	add    -0x32(%ebp),%ebx
4ce954:	d1 fb                	sar    $1,%ebx
4ce956:	79 03                	jns    0x4ce95b
4ce958:	83 d3 00             	adc    $0x0,%ebx
4ce95b:	8b 7d ca             	mov    -0x36(%ebp),%edi
4ce95e:	03 7d d2             	add    -0x2e(%ebp),%edi
4ce961:	d1 ff                	sar    $1,%edi
4ce963:	79 03                	jns    0x4ce968
4ce965:	83 d7 00             	adc    $0x0,%edi
4ce968:	8b 55 0c             	mov    0xc(%ebp),%edx
4ce96b:	b1 01                	mov    $0x1,%cl
4ce96d:	8b c6                	mov    %esi,%eax
4ce96f:	e8 2c f2 ff ff       	call   0x4cdba0
4ce974:	8b d0                	mov    %eax,%edx
4ce976:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce979:	8b 40 10             	mov    0x10(%eax),%eax
4ce97c:	e8 03 96 f5 ff       	call   0x427f84
4ce981:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce984:	8b 40 10             	mov    0x10(%eax),%eax
4ce987:	e8 f0 95 f5 ff       	call   0x427f7c
4ce98c:	8b d0                	mov    %eax,%edx
4ce98e:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce991:	8b 40 14             	mov    0x14(%eax),%eax
4ce994:	e8 eb 98 f5 ff       	call   0x428284
4ce999:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
4ce99c:	8b f7                	mov    %edi,%esi
4ce99e:	4e                   	dec    %esi
4ce99f:	8b d6                	mov    %esi,%edx
4ce9a1:	8b c3                	mov    %ebx,%eax
4ce9a3:	83 e8 02             	sub    $0x2,%eax
4ce9a6:	e8 a1 bc f4 ff       	call   0x41a64c
4ce9ab:	8b 45 a4             	mov    -0x5c(%ebp),%eax
4ce9ae:	89 45 ac             	mov    %eax,-0x54(%ebp)
4ce9b1:	8b 45 a8             	mov    -0x58(%ebp),%eax
4ce9b4:	89 45 b0             	mov    %eax,-0x50(%ebp)
4ce9b7:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
4ce9ba:	8b d6                	mov    %esi,%edx
4ce9bc:	8d 43 02             	lea    0x2(%ebx),%eax
4ce9bf:	e8 88 bc f4 ff       	call   0x41a64c
4ce9c4:	8b 45 9c             	mov    -0x64(%ebp),%eax
4ce9c7:	89 45 b4             	mov    %eax,-0x4c(%ebp)
4ce9ca:	8b 45 a0             	mov    -0x60(%ebp),%eax
4ce9cd:	89 45 b8             	mov    %eax,-0x48(%ebp)
4ce9d0:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
4ce9d3:	8d 57 01             	lea    0x1(%edi),%edx
4ce9d6:	8b c3                	mov    %ebx,%eax
4ce9d8:	e8 6f bc f4 ff       	call   0x41a64c
4ce9dd:	8b 45 94             	mov    -0x6c(%ebp),%eax
4ce9e0:	89 45 bc             	mov    %eax,-0x44(%ebp)
4ce9e3:	8b 45 98             	mov    -0x68(%ebp),%eax
4ce9e6:	89 45 c0             	mov    %eax,-0x40(%ebp)
4ce9e9:	8d 55 ac             	lea    -0x54(%ebp),%edx
4ce9ec:	b9 02 00 00 00       	mov    $0x2,%ecx
4ce9f1:	8b 45 f0             	mov    -0x10(%ebp),%eax
4ce9f4:	e8 07 9e f5 ff       	call   0x428800
4ce9f9:	8b 45 0c             	mov    0xc(%ebp),%eax
4ce9fc:	8a 55 e6             	mov    -0x1a(%ebp),%dl
4ce9ff:	88 50 09             	mov    %dl,0x9(%eax)
4cea02:	5f                   	pop    %edi
4cea03:	5e                   	pop    %esi
4cea04:	5b                   	pop    %ebx
4cea05:	8b e5                	mov    %ebp,%esp
4cea07:	5d                   	pop    %ebp
4cea08:	c2 08 00             	ret    $0x8
4cea0b:	90                   	nop
4cea0c:	55                   	push   %ebp
4cea0d:	8b ec                	mov    %esp,%ebp
4cea0f:	83 c4 e8             	add    $0xffffffe8,%esp
4cea12:	53                   	push   %ebx
4cea13:	56                   	push   %esi
4cea14:	57                   	push   %edi
4cea15:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4cea18:	8b f2                	mov    %edx,%esi
4cea1a:	89 45 fc             	mov    %eax,-0x4(%ebp)
4cea1d:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4cea20:	8b 45 f8             	mov    -0x8(%ebp),%eax
4cea23:	56                   	push   %esi
4cea24:	8b f0                	mov    %eax,%esi
4cea26:	8d 7d e8             	lea    -0x18(%ebp),%edi
4cea29:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cea2a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cea2b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cea2c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4cea2d:	5e                   	pop    %esi
4cea2e:	53                   	push   %ebx
4cea2f:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4cea32:	8b d6                	mov    %esi,%edx
4cea34:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cea37:	8b 38                	mov    (%eax),%edi
4cea39:	ff 57 54             	call   *0x54(%edi)
4cea3c:	ba 3c 00 00 00       	mov    $0x3c,%edx
4cea41:	8b 45 fc             	mov    -0x4(%ebp),%eax
4cea44:	8b 08                	mov    (%eax),%ecx
4cea46:	ff 91 80 00 00 00    	call   *0x80(%ecx)
4cea4c:	8b f8                	mov    %eax,%edi
4cea4e:	8b c7                	mov    %edi,%eax
4cea50:	f7 d8                	neg    %eax
4cea52:	50                   	push   %eax
4cea53:	8b c7                	mov    %edi,%eax
4cea55:	f7 d8                	neg    %eax
4cea57:	50                   	push   %eax
4cea58:	8d 45 e8             	lea    -0x18(%ebp),%eax
4cea5b:	50                   	push   %eax
4cea5c:	e8 27 91 f3 ff       	call   0x407b88
4cea61:	8b 45 08             	mov    0x8(%ebp),%eax
4cea64:	8b 40 04             	mov    0x4(%eax),%eax
4cea67:	85 c0                	test   %eax,%eax
4cea69:	7e 09                	jle    0x4cea74
4cea6b:	8b 55 08             	mov    0x8(%ebp),%edx
4cea6e:	83 e8 02             	sub    $0x2,%eax
4cea71:	29 45 f0             	sub    %eax,-0x10(%ebp)
4cea74:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4cea78:	74 39                	je     0x4ceab3
4cea7a:	80 7b 0a 00          	cmpb   $0x0,0xa(%ebx)
4cea7e:	75 0f                	jne    0x4cea8f
4cea80:	ba d0 d0 d0 00       	mov    $0xd0d0d0,%edx
4cea85:	8b 46 14             	mov    0x14(%esi),%eax
4cea88:	e8 f7 97 f5 ff       	call   0x428284
4cea8d:	eb 0d                	jmp    0x4cea9c
4cea8f:	ba ff ff ff 00       	mov    $0xffffff,%edx
4cea94:	8b 46 14             	mov    0x14(%esi),%eax
4cea97:	e8 e8 97 f5 ff       	call   0x428284
4cea9c:	8d 55 e8             	lea    -0x18(%ebp),%edx
4cea9f:	8b c6                	mov    %esi,%eax
4ceaa1:	e8 92 9c f5 ff       	call   0x428738
4ceaa6:	ba ff ff ff 00       	mov    $0xffffff,%edx
4ceaab:	8b 46 14             	mov    0x14(%esi),%eax
4ceaae:	e8 d1 97 f5 ff       	call   0x428284
4ceab3:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4ceab7:	75 3d                	jne    0x4ceaf6
4ceab9:	80 7b 0a 00          	cmpb   $0x0,0xa(%ebx)
4ceabd:	75 13                	jne    0x4cead2
4ceabf:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ceac2:	8b 90 94 00 00 00    	mov    0x94(%eax),%edx
4ceac8:	8b 46 14             	mov    0x14(%esi),%eax
4ceacb:	e8 b4 97 f5 ff       	call   0x428284
4cead0:	eb 0d                	jmp    0x4ceadf
4cead2:	ba ff ff ff 00       	mov    $0xffffff,%edx
4cead7:	8b 46 14             	mov    0x14(%esi),%eax
4ceada:	e8 a5 97 f5 ff       	call   0x428284
4ceadf:	8d 55 e8             	lea    -0x18(%ebp),%edx
4ceae2:	8b c6                	mov    %esi,%eax
4ceae4:	e8 4f 9c f5 ff       	call   0x428738
4ceae9:	ba ff ff ff 00       	mov    $0xffffff,%edx
4ceaee:	8b 46 14             	mov    0x14(%esi),%eax
4ceaf1:	e8 8e 97 f5 ff       	call   0x428284
4ceaf6:	6a ff                	push   $0xffffffff
4ceaf8:	6a ff                	push   $0xffffffff
4ceafa:	8d 45 e8             	lea    -0x18(%ebp),%eax
4ceafd:	50                   	push   %eax
4ceafe:	e8 85 90 f3 ff       	call   0x407b88
4ceb03:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4ceb07:	74 0a                	je     0x4ceb13
4ceb09:	8d 55 e8             	lea    -0x18(%ebp),%edx
4ceb0c:	8b c6                	mov    %esi,%eax
4ceb0e:	e8 e9 9b f5 ff       	call   0x4286fc
4ceb13:	8b 45 08             	mov    0x8(%ebp),%eax
4ceb16:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
4ceb1a:	7e 42                	jle    0x4ceb5e
4ceb1c:	8b 45 f8             	mov    -0x8(%ebp),%eax
4ceb1f:	56                   	push   %esi
4ceb20:	57                   	push   %edi
4ceb21:	8b f0                	mov    %eax,%esi
4ceb23:	8d 7d e8             	lea    -0x18(%ebp),%edi
4ceb26:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4ceb27:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4ceb28:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4ceb29:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4ceb2a:	5f                   	pop    %edi
4ceb2b:	5e                   	pop    %esi
4ceb2c:	8b c7                	mov    %edi,%eax
4ceb2e:	f7 d8                	neg    %eax
4ceb30:	50                   	push   %eax
4ceb31:	f7 df                	neg    %edi
4ceb33:	57                   	push   %edi
4ceb34:	8d 45 e8             	lea    -0x18(%ebp),%eax
4ceb37:	50                   	push   %eax
4ceb38:	e8 4b 90 f3 ff       	call   0x407b88
4ceb3d:	8b 45 08             	mov    0x8(%ebp),%eax
4ceb40:	8b 55 f0             	mov    -0x10(%ebp),%edx
4ceb43:	2b 50 04             	sub    0x4(%eax),%edx
4ceb46:	89 55 e8             	mov    %edx,-0x18(%ebp)
4ceb49:	53                   	push   %ebx
4ceb4a:	8b 45 08             	mov    0x8(%ebp),%eax
4ceb4d:	83 c0 10             	add    $0x10,%eax
4ceb50:	50                   	push   %eax
4ceb51:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4ceb54:	8b d6                	mov    %esi,%edx
4ceb56:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ceb59:	8b 18                	mov    (%eax),%ebx
4ceb5b:	ff 53 40             	call   *0x40(%ebx)
4ceb5e:	5f                   	pop    %edi
4ceb5f:	5e                   	pop    %esi
4ceb60:	5b                   	pop    %ebx
4ceb61:	8b e5                	mov    %ebp,%esp
4ceb63:	5d                   	pop    %ebp
4ceb64:	c2 08 00             	ret    $0x8
4ceb67:	90                   	nop
4ceb68:	55                   	push   %ebp
4ceb69:	8b ec                	mov    %esp,%ebp
4ceb6b:	83 c4 c8             	add    $0xffffffc8,%esp
4ceb6e:	53                   	push   %ebx
4ceb6f:	56                   	push   %esi
4ceb70:	57                   	push   %edi
4ceb71:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4ceb74:	8b fa                	mov    %edx,%edi
4ceb76:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ceb79:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4ceb7c:	8b 1b                	mov    (%ebx),%ebx
4ceb7e:	8b 45 f8             	mov    -0x8(%ebp),%eax
4ceb81:	03 58 08             	add    0x8(%eax),%ebx
4ceb84:	d1 fb                	sar    $1,%ebx
4ceb86:	79 03                	jns    0x4ceb8b
4ceb88:	83 d3 00             	adc    $0x0,%ebx
4ceb8b:	8b 75 f8             	mov    -0x8(%ebp),%esi
4ceb8e:	8b 76 04             	mov    0x4(%esi),%esi
4ceb91:	8b 45 f8             	mov    -0x8(%ebp),%eax
4ceb94:	03 70 0c             	add    0xc(%eax),%esi
4ceb97:	d1 fe                	sar    $1,%esi
4ceb99:	79 03                	jns    0x4ceb9e
4ceb9b:	83 d6 00             	adc    $0x0,%esi
4ceb9e:	4e                   	dec    %esi
4ceb9f:	8b 55 08             	mov    0x8(%ebp),%edx
4ceba2:	b1 01                	mov    $0x1,%cl
4ceba4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ceba7:	e8 f4 ef ff ff       	call   0x4cdba0
4cebac:	8b d0                	mov    %eax,%edx
4cebae:	8b 47 10             	mov    0x10(%edi),%eax
4cebb1:	e8 ce 93 f5 ff       	call   0x427f84
4cebb6:	8b 47 10             	mov    0x10(%edi),%eax
4cebb9:	e8 be 93 f5 ff       	call   0x427f7c
4cebbe:	8b d0                	mov    %eax,%edx
4cebc0:	8b 47 14             	mov    0x14(%edi),%eax
4cebc3:	e8 bc 96 f5 ff       	call   0x428284
4cebc8:	8b 45 08             	mov    0x8(%ebp),%eax
4cebcb:	80 78 18 00          	cmpb   $0x0,0x18(%eax)
4cebcf:	74 60                	je     0x4cec31
4cebd1:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4cebd4:	8d 56 02             	lea    0x2(%esi),%edx
4cebd7:	8b c3                	mov    %ebx,%eax
4cebd9:	e8 6e ba f4 ff       	call   0x41a64c
4cebde:	8b 45 d8             	mov    -0x28(%ebp),%eax
4cebe1:	89 45 e0             	mov    %eax,-0x20(%ebp)
4cebe4:	8b 45 dc             	mov    -0x24(%ebp),%eax
4cebe7:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4cebea:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4cebed:	8b d6                	mov    %esi,%edx