5ca8ed:	69 fa 93 01 00 01    	imul   $0x1000193,%edx,%edi
5ca8f3:	0f b6 50 09          	movzbl 0x9(%eax),%edx
5ca8f7:	33 fa                	xor    %edx,%edi
5ca8f9:	0f b6 50 0a          	movzbl 0xa(%eax),%edx
5ca8fd:	69 ff 93 01 00 01    	imul   $0x1000193,%edi,%edi
5ca903:	33 fa                	xor    %edx,%edi
5ca905:	0f b6 50 0b          	movzbl 0xb(%eax),%edx
5ca909:	69 ff 93 01 00 01    	imul   $0x1000193,%edi,%edi
5ca90f:	33 fa                	xor    %edx,%edi
5ca911:	69 d7 93 01 00 01    	imul   $0x1000193,%edi,%edx
5ca917:	8b 7b 18             	mov    0x18(%ebx),%edi
5ca91a:	23 fa                	and    %edx,%edi
5ca91c:	8b 53 0c             	mov    0xc(%ebx),%edx
5ca91f:	8d 14 fa             	lea    (%edx,%edi,8),%edx
5ca922:	8b 3a                	mov    (%edx),%edi
5ca924:	89 55 ec             	mov    %edx,-0x14(%ebp)
5ca927:	3b fe                	cmp    %esi,%edi
5ca929:	75 07                	jne    0x5ca932
5ca92b:	89 02                	mov    %eax,(%edx)
5ca92d:	89 42 04             	mov    %eax,0x4(%edx)
5ca930:	eb 70                	jmp    0x5ca9a2
5ca932:	8b 52 04             	mov    0x4(%edx),%edx
5ca935:	8b 58 08             	mov    0x8(%eax),%ebx
5ca938:	3b 5a 08             	cmp    0x8(%edx),%ebx
5ca93b:	75 2f                	jne    0x5ca96c
5ca93d:	8b 12                	mov    (%edx),%edx
5ca93f:	89 55 e8             	mov    %edx,-0x18(%ebp)
5ca942:	3b d0                	cmp    %eax,%edx
5ca944:	74 1e                	je     0x5ca964
5ca946:	8b 58 04             	mov    0x4(%eax),%ebx
5ca949:	8b 75 e8             	mov    -0x18(%ebp),%esi
5ca94c:	89 0b                	mov    %ecx,(%ebx)
5ca94e:	8b 79 04             	mov    0x4(%ecx),%edi
5ca951:	89 17                	mov    %edx,(%edi)
5ca953:	8b 52 04             	mov    0x4(%edx),%edx
5ca956:	89 02                	mov    %eax,(%edx)
5ca958:	89 7e 04             	mov    %edi,0x4(%esi)
5ca95b:	8b 75 08             	mov    0x8(%ebp),%esi
5ca95e:	89 59 04             	mov    %ebx,0x4(%ecx)
5ca961:	89 50 04             	mov    %edx,0x4(%eax)
5ca964:	8b 55 ec             	mov    -0x14(%ebp),%edx
5ca967:	89 42 04             	mov    %eax,0x4(%edx)
5ca96a:	eb 33                	jmp    0x5ca99f
5ca96c:	3b fa                	cmp    %edx,%edi
5ca96e:	74 0c                	je     0x5ca97c
5ca970:	8b 52 04             	mov    0x4(%edx),%edx
5ca973:	3b 5a 08             	cmp    0x8(%edx),%ebx
5ca976:	74 55                	je     0x5ca9cd
5ca978:	3b fa                	cmp    %edx,%edi
5ca97a:	75 f4                	jne    0x5ca970
5ca97c:	8b 58 04             	mov    0x4(%eax),%ebx
5ca97f:	89 5d e8             	mov    %ebx,-0x18(%ebp)
5ca982:	89 0b                	mov    %ecx,(%ebx)
5ca984:	8b 59 04             	mov    0x4(%ecx),%ebx
5ca987:	89 13                	mov    %edx,(%ebx)
5ca989:	8b 7a 04             	mov    0x4(%edx),%edi
5ca98c:	89 07                	mov    %eax,(%edi)
5ca98e:	89 5a 04             	mov    %ebx,0x4(%edx)
5ca991:	8b 55 e8             	mov    -0x18(%ebp),%edx
5ca994:	89 51 04             	mov    %edx,0x4(%ecx)
5ca997:	8b 55 ec             	mov    -0x14(%ebp),%edx
5ca99a:	89 78 04             	mov    %edi,0x4(%eax)
5ca99d:	89 02                	mov    %eax,(%edx)
5ca99f:	8b 5d f0             	mov    -0x10(%ebp),%ebx
5ca9a2:	8b c1                	mov    %ecx,%eax
5ca9a4:	3b ce                	cmp    %esi,%ecx
5ca9a6:	0f 85 35 ff ff ff    	jne    0x5ca8e1
5ca9ac:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
5ca9b3:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5ca9ba:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca9bd:	5f                   	pop    %edi
5ca9be:	5e                   	pop    %esi
5ca9bf:	5b                   	pop    %ebx
5ca9c0:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca9c7:	8b e5                	mov    %ebp,%esp
5ca9c9:	5d                   	pop    %ebp
5ca9ca:	c2 04 00             	ret    $0x4
5ca9cd:	8b 58 04             	mov    0x4(%eax),%ebx
5ca9d0:	8b 12                	mov    (%edx),%edx
5ca9d2:	89 55 e8             	mov    %edx,-0x18(%ebp)
5ca9d5:	8b f2                	mov    %edx,%esi
5ca9d7:	89 0b                	mov    %ecx,(%ebx)
5ca9d9:	8b 79 04             	mov    0x4(%ecx),%edi
5ca9dc:	89 17                	mov    %edx,(%edi)
5ca9de:	8b 52 04             	mov    0x4(%edx),%edx
5ca9e1:	89 02                	mov    %eax,(%edx)
5ca9e3:	89 7e 04             	mov    %edi,0x4(%esi)
5ca9e6:	8b 75 08             	mov    0x8(%ebp),%esi
5ca9e9:	89 59 04             	mov    %ebx,0x4(%ecx)
5ca9ec:	89 50 04             	mov    %edx,0x4(%eax)
5ca9ef:	eb ae                	jmp    0x5ca99f
5ca9f1:	68 3c 64 60 00       	push   $0x60643c
5ca9f6:	e8 db 61 00 00       	call   0x5d0bd6
5ca9fb:	cc                   	int3
5ca9fc:	cc                   	int3
5ca9fd:	cc                   	int3
5ca9fe:	cc                   	int3
5ca9ff:	cc                   	int3
5caa00:	55                   	push   %ebp
5caa01:	8b ec                	mov    %esp,%ebp
5caa03:	6a ff                	push   $0xffffffff
5caa05:	68 bd 07 60 00       	push   $0x6007bd
5caa0a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
5caa10:	50                   	push   %eax
5caa11:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
5caa18:	83 ec 28             	sub    $0x28,%esp
5caa1b:	8b 55 08             	mov    0x8(%ebp),%edx
5caa1e:	53                   	push   %ebx
5caa1f:	56                   	push   %esi
5caa20:	8b 75 0c             	mov    0xc(%ebp),%esi
5caa23:	8b d9                	mov    %ecx,%ebx
5caa25:	89 5d f0             	mov    %ebx,-0x10(%ebp)
5caa28:	3b d6                	cmp    %esi,%edx
5caa2a:	0f 84 7d 01 00 00    	je     0x5cabad
5caa30:	8b 4b 04             	mov    0x4(%ebx),%ecx
5caa33:	8d 43 04             	lea    0x4(%ebx),%eax
5caa36:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
5caa39:	8b 4b 0c             	mov    0xc(%ebx),%ecx
5caa3c:	89 45 cc             	mov    %eax,-0x34(%ebp)
5caa3f:	8b 42 04             	mov    0x4(%edx),%eax
5caa42:	57                   	push   %edi
5caa43:	8b fa                	mov    %edx,%edi
5caa45:	89 45 d0             	mov    %eax,-0x30(%ebp)
5caa48:	89 4d e8             	mov    %ecx,-0x18(%ebp)
5caa4b:	89 45 d8             	mov    %eax,-0x28(%ebp)
5caa4e:	89 7d d4             	mov    %edi,-0x2c(%ebp)
5caa51:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
5caa58:	8b 42 04             	mov    0x4(%edx),%eax
5caa5b:	89 45 dc             	mov    %eax,-0x24(%ebp)
5caa5e:	0f b6 42 08          	movzbl 0x8(%edx),%eax
5caa62:	35 c5 9d 1c 81       	xor    $0x811c9dc5,%eax
5caa67:	69 c8 93 01 00 01    	imul   $0x1000193,%eax,%ecx
5caa6d:	0f b6 42 09          	movzbl 0x9(%edx),%eax
5caa71:	33 c8                	xor    %eax,%ecx
5caa73:	0f b6 42 0a          	movzbl 0xa(%edx),%eax
5caa77:	69 c9 93 01 00 01    	imul   $0x1000193,%ecx,%ecx
5caa7d:	33 c8                	xor    %eax,%ecx
5caa7f:	0f b6 42 0b          	movzbl 0xb(%edx),%eax
5caa83:	69 c9 93 01 00 01    	imul   $0x1000193,%ecx,%ecx
5caa89:	33 c8                	xor    %eax,%ecx
5caa8b:	8b 43 18             	mov    0x18(%ebx),%eax
5caa8e:	69 c9 93 01 00 01    	imul   $0x1000193,%ecx,%ecx
5caa94:	23 c1                	and    %ecx,%eax
5caa96:	8b 4d e8             	mov    -0x18(%ebp),%ecx
5caa99:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
5caa9c:	8b 08                	mov    (%eax),%ecx
5caa9e:	89 45 0c             	mov    %eax,0xc(%ebp)
5caaa1:	8b 40 04             	mov    0x4(%eax),%eax
5caaa4:	89 4d ec             	mov    %ecx,-0x14(%ebp)
5caaa7:	89 45 e0             	mov    %eax,-0x20(%ebp)
5caaaa:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
5caab0:	3b f8                	cmp    %eax,%edi
5caab2:	8b c7                	mov    %edi,%eax
5caab4:	8b 3f                	mov    (%edi),%edi
5caab6:	6a 10                	push   $0x10
5caab8:	50                   	push   %eax
5caab9:	0f 94 c3             	sete   %bl
5caabc:	89 7d d4             	mov    %edi,-0x2c(%ebp)
5caabf:	e8 91 67 00 00       	call   0x5d1255
5caac4:	8b 55 f0             	mov    -0x10(%ebp),%edx
5caac7:	83 c4 08             	add    $0x8,%esp
5caaca:	ff 4a 08             	decl   0x8(%edx)
5caacd:	84 db                	test   %bl,%bl
5caacf:	75 1d                	jne    0x5caaee
5caad1:	8b 45 e0             	mov    -0x20(%ebp),%eax
5caad4:	3b fe                	cmp    %esi,%edi
5caad6:	75 d8                	jne    0x5caab0
5caad8:	8b 45 ec             	mov    -0x14(%ebp),%eax
5caadb:	3b 45 08             	cmp    0x8(%ebp),%eax
5caade:	0f 85 b9 00 00 00    	jne    0x5cab9d
5caae4:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5caae7:	89 39                	mov    %edi,(%ecx)
5caae9:	e9 af 00 00 00       	jmp    0x5cab9d
5caaee:	8b 45 ec             	mov    -0x14(%ebp),%eax
5caaf1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5caaf4:	3b 45 08             	cmp    0x8(%ebp),%eax
5caaf7:	75 07                	jne    0x5cab00
5caaf9:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5caafc:	89 01                	mov    %eax,(%ecx)
5caafe:	eb 03                	jmp    0x5cab03
5cab00:	8b 45 dc             	mov    -0x24(%ebp),%eax
5cab03:	89 41 04             	mov    %eax,0x4(%ecx)
5cab06:	3b fe                	cmp    %esi,%edi
5cab08:	0f 84 8f 00 00 00    	je     0x5cab9d
5cab0e:	8b ff                	mov    %edi,%edi
5cab10:	0f b6 47 08          	movzbl 0x8(%edi),%eax
5cab14:	35 c5 9d 1c 81       	xor    $0x811c9dc5,%eax
5cab19:	69 c8 93 01 00 01    	imul   $0x1000193,%eax,%ecx
5cab1f:	0f b6 47 09          	movzbl 0x9(%edi),%eax
5cab23:	33 c8                	xor    %eax,%ecx
5cab25:	0f b6 47 0a          	movzbl 0xa(%edi),%eax
5cab29:	69 c9 93 01 00 01    	imul   $0x1000193,%ecx,%ecx
5cab2f:	33 c8                	xor    %eax,%ecx
5cab31:	0f b6 47 0b          	movzbl 0xb(%edi),%eax
5cab35:	69 c9 93 01 00 01    	imul   $0x1000193,%ecx,%ecx
5cab3b:	33 c8                	xor    %eax,%ecx
5cab3d:	69 c1 93 01 00 01    	imul   $0x1000193,%ecx,%eax
5cab43:	8b 4a 18             	mov    0x18(%edx),%ecx
5cab46:	23 c8                	and    %eax,%ecx
5cab48:	8b 45 e8             	mov    -0x18(%ebp),%eax
5cab4b:	8d 04 c8             	lea    (%eax,%ecx,8),%eax
5cab4e:	89 45 08             	mov    %eax,0x8(%ebp)
5cab51:	8b 40 04             	mov    0x4(%eax),%eax
5cab54:	89 45 0c             	mov    %eax,0xc(%ebp)
5cab57:	3b f8                	cmp    %eax,%edi
5cab59:	8b c7                	mov    %edi,%eax
5cab5b:	8b 3f                	mov    (%edi),%edi
5cab5d:	6a 10                	push   $0x10
5cab5f:	50                   	push   %eax
5cab60:	0f 94 c3             	sete   %bl
5cab63:	89 7d d4             	mov    %edi,-0x2c(%ebp)
5cab66:	e8 ea 66 00 00       	call   0x5d1255
5cab6b:	8b 45 f0             	mov    -0x10(%ebp),%eax
5cab6e:	83 c4 08             	add    $0x8,%esp
5cab71:	ff 48 08             	decl   0x8(%eax)
5cab74:	84 db                	test   %bl,%bl
5cab76:	75 09                	jne    0x5cab81
5cab78:	3b fe                	cmp    %esi,%edi
5cab7a:	74 1c                	je     0x5cab98
5cab7c:	8b 45 0c             	mov    0xc(%ebp),%eax
5cab7f:	eb d6                	jmp    0x5cab57
5cab81:	8b 45 08             	mov    0x8(%ebp),%eax
5cab84:	8b 55 e4             	mov    -0x1c(%ebp),%edx
5cab87:	89 10                	mov    %edx,(%eax)
5cab89:	89 50 04             	mov    %edx,0x4(%eax)
5cab8c:	3b fe                	cmp    %esi,%edi
5cab8e:	74 0d                	je     0x5cab9d
5cab90:	8b 55 f0             	mov    -0x10(%ebp),%edx
5cab93:	e9 78 ff ff ff       	jmp    0x5cab10
5cab98:	8b 45 08             	mov    0x8(%ebp),%eax
5cab9b:	89 38                	mov    %edi,(%eax)
5cab9d:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
5caba4:	8b 45 d8             	mov    -0x28(%ebp),%eax
5caba7:	89 38                	mov    %edi,(%eax)
5caba9:	89 47 04             	mov    %eax,0x4(%edi)
5cabac:	5f                   	pop    %edi
5cabad:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5cabb0:	8b c6                	mov    %esi,%eax
5cabb2:	5e                   	pop    %esi
5cabb3:	5b                   	pop    %ebx
5cabb4:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5cabbb:	8b e5                	mov    %ebp,%esp
5cabbd:	5d                   	pop    %ebp
5cabbe:	c2 08 00             	ret    $0x8
5cabc1:	cc                   	int3
5cabc2:	cc                   	int3
5cabc3:	cc                   	int3
5cabc4:	cc                   	int3
5cabc5:	cc                   	int3
5cabc6:	cc                   	int3
5cabc7:	cc                   	int3
5cabc8:	cc                   	int3
5cabc9:	cc                   	int3
5cabca:	cc                   	int3
5cabcb:	cc                   	int3
5cabcc:	cc                   	int3
5cabcd:	cc                   	int3
5cabce:	cc                   	int3
5cabcf:	cc                   	int3
5cabd0:	55                   	push   %ebp
5cabd1:	8b ec                	mov    %esp,%ebp
5cabd3:	53                   	push   %ebx
5cabd4:	8b 5d 08             	mov    0x8(%ebp),%ebx
5cabd7:	f6 c3 07             	test   $0x7,%bl
5cabda:	74 0e                	je     0x5cabea
5cabdc:	68 e0 ce 66 00       	push   $0x66cee0
5cabe1:	e8 2a 11 ff ff       	call   0x5bbd10
5cabe6:	83 c4 04             	add    $0x4,%esp
5cabe9:	cc                   	int3
5cabea:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
5cabf1:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
5cabf7:	5b                   	pop    %ebx
5cabf8:	5d                   	pop    %ebp
5cabf9:	c3                   	ret
5cabfa:	cc                   	int3
5cabfb:	cc                   	int3
5cabfc:	cc                   	int3
5cabfd:	cc                   	int3
5cabfe:	cc                   	int3
5cabff:	cc                   	int3
5cac00:	55                   	push   %ebp
5cac01:	8b ec                	mov    %esp,%ebp
5cac03:	51                   	push   %ecx
5cac04:	8b 55 08             	mov    0x8(%ebp),%edx
5cac07:	56                   	push   %esi
5cac08:	57                   	push   %edi
5cac09:	8b 32                	mov    (%edx),%esi
5cac0b:	8b 7a 04             	mov    0x4(%edx),%edi
5cac0e:	85 f6                	test   %esi,%esi
5cac10:	74 2f                	je     0x5cac41
5cac12:	8b ce                	mov    %esi,%ecx
5cac14:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5cac17:	57                   	push   %edi
5cac18:	56                   	push   %esi
5cac19:	8d 47 ff             	lea    -0x1(%edi),%eax
5cac1c:	50                   	push   %eax
5cac1d:	ff 31                	push   (%ecx)
5cac1f:	52                   	push   %edx
5cac20:	e8 8b d6 ff ff       	call   0x5c82b0
5cac25:	83 c4 14             	add    $0x14,%esp
5cac28:	3b c6                	cmp    %esi,%eax
5cac2a:	75 04                	jne    0x5cac30
5cac2c:	3b d7                	cmp    %edi,%edx
5cac2e:	74 19                	je     0x5cac49
5cac30:	8b 55 08             	mov    0x8(%ebp),%edx
5cac33:	8b 32                	mov    (%edx),%esi
5cac35:	8b ce                	mov    %esi,%ecx
5cac37:	8b 7a 04             	mov    0x4(%edx),%edi
5cac3a:	89 75 fc             	mov    %esi,-0x4(%ebp)
5cac3d:	85 c9                	test   %ecx,%ecx
5cac3f:	75 d6                	jne    0x5cac17
5cac41:	5f                   	pop    %edi
5cac42:	33 c0                	xor    %eax,%eax
5cac44:	5e                   	pop    %esi
5cac45:	8b e5                	mov    %ebp,%esp
5cac47:	5d                   	pop    %ebp
5cac48:	c3                   	ret
5cac49:	8b 45 fc             	mov    -0x4(%ebp),%eax
5cac4c:	5f                   	pop    %edi
5cac4d:	5e                   	pop    %esi
5cac4e:	8b e5                	mov    %ebp,%esp
5cac50:	5d                   	pop    %ebp
5cac51:	c3                   	ret
5cac52:	cc                   	int3
5cac53:	cc                   	int3
5cac54:	cc                   	int3
5cac55:	cc                   	int3
5cac56:	cc                   	int3
5cac57:	cc                   	int3
5cac58:	cc                   	int3
5cac59:	cc                   	int3
5cac5a:	cc                   	int3
5cac5b:	cc                   	int3
5cac5c:	cc                   	int3
5cac5d:	cc                   	int3
5cac5e:	cc                   	int3
5cac5f:	cc                   	int3
5cac60:	53                   	push   %ebx
5cac61:	8b dc                	mov    %esp,%ebx
5cac63:	83 ec 08             	sub    $0x8,%esp
5cac66:	83 e4 f8             	and    $0xfffffff8,%esp
5cac69:	83 c4 04             	add    $0x4,%esp
5cac6c:	55                   	push   %ebp
5cac6d:	8b 6b 04             	mov    0x4(%ebx),%ebp
5cac70:	89 6c 24 04          	mov    %ebp,0x4(%esp)
5cac74:	8b ec                	mov    %esp,%ebp
5cac76:	83 ec 08             	sub    $0x8,%esp
5cac79:	8b 43 0c             	mov    0xc(%ebx),%eax
5cac7c:	8b c8                	mov    %eax,%ecx
5cac7e:	56                   	push   %esi