5daba8:	c9                   	leave
5daba9:	c3                   	ret
5dabaa:	8b ff                	mov    %edi,%edi
5dabac:	55                   	push   %ebp
5dabad:	8b ec                	mov    %esp,%ebp
5dabaf:	83 ec 28             	sub    $0x28,%esp
5dabb2:	8d 4d d8             	lea    -0x28(%ebp),%ecx
5dabb5:	56                   	push   %esi
5dabb6:	ff 75 1c             	push   0x1c(%ebp)
5dabb9:	e8 16 b3 ff ff       	call   0x5d5ed4
5dabbe:	ff 75 20             	push   0x20(%ebp)
5dabc1:	8d 45 d8             	lea    -0x28(%ebp),%eax
5dabc4:	50                   	push   %eax
5dabc5:	ff 75 18             	push   0x18(%ebp)
5dabc8:	ff 75 14             	push   0x14(%ebp)
5dabcb:	ff 75 10             	push   0x10(%ebp)
5dabce:	ff 75 0c             	push   0xc(%ebp)
5dabd1:	ff 75 08             	push   0x8(%ebp)
5dabd4:	e8 d3 bd ff ff       	call   0x5d69ac
5dabd9:	83 c4 1c             	add    $0x1c,%esp
5dabdc:	8d 4d d8             	lea    -0x28(%ebp),%ecx
5dabdf:	8b f0                	mov    %eax,%esi
5dabe1:	e8 36 b3 ff ff       	call   0x5d5f1c
5dabe6:	8b c6                	mov    %esi,%eax
5dabe8:	5e                   	pop    %esi
5dabe9:	c9                   	leave
5dabea:	c3                   	ret
5dabeb:	8b ff                	mov    %edi,%edi
5dabed:	55                   	push   %ebp
5dabee:	8b ec                	mov    %esp,%ebp
5dabf0:	8b 4d 08             	mov    0x8(%ebp),%ecx
5dabf3:	33 c0                	xor    %eax,%eax
5dabf5:	3b 0c c5 80 28 67 00 	cmp    0x672880(,%eax,8),%ecx
5dabfc:	74 27                	je     0x5dac25
5dabfe:	40                   	inc    %eax
5dabff:	83 f8 2d             	cmp    $0x2d,%eax
5dac02:	72 f1                	jb     0x5dabf5
5dac04:	8d 41 ed             	lea    -0x13(%ecx),%eax
5dac07:	83 f8 11             	cmp    $0x11,%eax
5dac0a:	77 05                	ja     0x5dac11
5dac0c:	6a 0d                	push   $0xd
5dac0e:	58                   	pop    %eax
5dac0f:	5d                   	pop    %ebp
5dac10:	c3                   	ret
5dac11:	8d 81 44 ff ff ff    	lea    -0xbc(%ecx),%eax
5dac17:	6a 0e                	push   $0xe
5dac19:	59                   	pop    %ecx
5dac1a:	3b c8                	cmp    %eax,%ecx
5dac1c:	1b c0                	sbb    %eax,%eax
5dac1e:	23 c1                	and    %ecx,%eax
5dac20:	83 c0 08             	add    $0x8,%eax
5dac23:	5d                   	pop    %ebp
5dac24:	c3                   	ret
5dac25:	8b 04 c5 84 28 67 00 	mov    0x672884(,%eax,8),%eax
5dac2c:	5d                   	pop    %ebp
5dac2d:	c3                   	ret
5dac2e:	8b ff                	mov    %edi,%edi
5dac30:	55                   	push   %ebp
5dac31:	8b ec                	mov    %esp,%ebp
5dac33:	56                   	push   %esi
5dac34:	e8 3c 00 00 00       	call   0x5dac75
5dac39:	8b 4d 08             	mov    0x8(%ebp),%ecx
5dac3c:	51                   	push   %ecx
5dac3d:	89 08                	mov    %ecx,(%eax)
5dac3f:	e8 a7 ff ff ff       	call   0x5dabeb
5dac44:	59                   	pop    %ecx
5dac45:	8b f0                	mov    %eax,%esi
5dac47:	e8 3c 00 00 00       	call   0x5dac88
5dac4c:	89 30                	mov    %esi,(%eax)
5dac4e:	5e                   	pop    %esi
5dac4f:	5d                   	pop    %ebp
5dac50:	c3                   	ret
5dac51:	8b ff                	mov    %edi,%edi
5dac53:	55                   	push   %ebp
5dac54:	8b ec                	mov    %esp,%ebp
5dac56:	8b 45 08             	mov    0x8(%ebp),%eax
5dac59:	56                   	push   %esi
5dac5a:	8b 75 0c             	mov    0xc(%ebp),%esi
5dac5d:	50                   	push   %eax
5dac5e:	c6 46 24 01          	movb   $0x1,0x24(%esi)
5dac62:	89 46 20             	mov    %eax,0x20(%esi)
5dac65:	e8 81 ff ff ff       	call   0x5dabeb
5dac6a:	59                   	pop    %ecx
5dac6b:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
5dac6f:	89 46 18             	mov    %eax,0x18(%esi)
5dac72:	5e                   	pop    %esi
5dac73:	5d                   	pop    %ebp
5dac74:	c3                   	ret
5dac75:	e8 3c fb 00 00       	call   0x5ea7b6
5dac7a:	85 c0                	test   %eax,%eax
5dac7c:	75 06                	jne    0x5dac84
5dac7e:	b8 64 15 69 00       	mov    $0x691564,%eax
5dac83:	c3                   	ret
5dac84:	83 c0 14             	add    $0x14,%eax
5dac87:	c3                   	ret
5dac88:	e8 29 fb 00 00       	call   0x5ea7b6
5dac8d:	85 c0                	test   %eax,%eax
5dac8f:	75 06                	jne    0x5dac97
5dac91:	b8 60 15 69 00       	mov    $0x691560,%eax
5dac96:	c3                   	ret
5dac97:	83 c0 10             	add    $0x10,%eax
5dac9a:	c3                   	ret
5dac9b:	8b ff                	mov    %edi,%edi
5dac9d:	55                   	push   %ebp
5dac9e:	8b ec                	mov    %esp,%ebp
5daca0:	8b 45 10             	mov    0x10(%ebp),%eax
5daca3:	85 c0                	test   %eax,%eax
5daca5:	75 02                	jne    0x5daca9
5daca7:	5d                   	pop    %ebp
5daca8:	c3                   	ret
5daca9:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5dacac:	8b 55 08             	mov    0x8(%ebp),%edx
5dacaf:	56                   	push   %esi
5dacb0:	83 e8 01             	sub    $0x1,%eax
5dacb3:	74 15                	je     0x5dacca
5dacb5:	0f b7 32             	movzwl (%edx),%esi
5dacb8:	66 85 f6             	test   %si,%si
5dacbb:	74 0d                	je     0x5dacca
5dacbd:	66 3b 31             	cmp    (%ecx),%si
5dacc0:	75 08                	jne    0x5dacca
5dacc2:	83 c2 02             	add    $0x2,%edx
5dacc5:	83 c1 02             	add    $0x2,%ecx
5dacc8:	eb e6                	jmp    0x5dacb0
5dacca:	0f b7 02             	movzwl (%edx),%eax
5daccd:	0f b7 09             	movzwl (%ecx),%ecx
5dacd0:	2b c1                	sub    %ecx,%eax
5dacd2:	5e                   	pop    %esi
5dacd3:	5d                   	pop    %ebp
5dacd4:	c3                   	ret
5dacd5:	8b ff                	mov    %edi,%edi
5dacd7:	55                   	push   %ebp
5dacd8:	8b ec                	mov    %esp,%ebp
5dacda:	53                   	push   %ebx
5dacdb:	57                   	push   %edi
5dacdc:	8b f9                	mov    %ecx,%edi
5dacde:	8b 4d 08             	mov    0x8(%ebp),%ecx
5dace1:	c6 47 0c 00          	movb   $0x0,0xc(%edi)
5dace5:	8d 5f 04             	lea    0x4(%edi),%ebx
5dace8:	85 c9                	test   %ecx,%ecx
5dacea:	74 07                	je     0x5dacf3
5dacec:	8b 01                	mov    (%ecx),%eax
5dacee:	8b 49 04             	mov    0x4(%ecx),%ecx
5dacf1:	eb 14                	jmp    0x5dad07
5dacf3:	83 3d 9c 6f 71 00 00 	cmpl   $0x0,0x716f9c
5dacfa:	75 12                	jne    0x5dad0e
5dacfc:	a1 d0 19 69 00       	mov    0x6919d0,%eax
5dad01:	8b 0d d4 19 69 00    	mov    0x6919d4,%ecx
5dad07:	89 03                	mov    %eax,(%ebx)
5dad09:	89 4b 04             	mov    %ecx,0x4(%ebx)
5dad0c:	eb 41                	jmp    0x5dad4f
5dad0e:	56                   	push   %esi
5dad0f:	e8 51 f9 00 00       	call   0x5ea665
5dad14:	89 07                	mov    %eax,(%edi)
5dad16:	8d 77 08             	lea    0x8(%edi),%esi
5dad19:	53                   	push   %ebx
5dad1a:	50                   	push   %eax
5dad1b:	8b 48 4c             	mov    0x4c(%eax),%ecx
5dad1e:	89 0b                	mov    %ecx,(%ebx)
5dad20:	8b 48 48             	mov    0x48(%eax),%ecx
5dad23:	89 0e                	mov    %ecx,(%esi)
5dad25:	e8 26 fc 00 00       	call   0x5ea950
5dad2a:	56                   	push   %esi
5dad2b:	ff 37                	push   (%edi)
5dad2d:	e8 7c fc 00 00       	call   0x5ea9ae
5dad32:	8b 0f                	mov    (%edi),%ecx
5dad34:	83 c4 10             	add    $0x10,%esp
5dad37:	8b 81 50 03 00 00    	mov    0x350(%ecx),%eax
5dad3d:	5e                   	pop    %esi
5dad3e:	a8 02                	test   $0x2,%al
5dad40:	75 0d                	jne    0x5dad4f
5dad42:	83 c8 02             	or     $0x2,%eax
5dad45:	89 81 50 03 00 00    	mov    %eax,0x350(%ecx)
5dad4b:	c6 47 0c 01          	movb   $0x1,0xc(%edi)
5dad4f:	8b c7                	mov    %edi,%eax
5dad51:	5f                   	pop    %edi
5dad52:	5b                   	pop    %ebx
5dad53:	5d                   	pop    %ebp
5dad54:	c2 04 00             	ret    $0x4
5dad57:	8b ff                	mov    %edi,%edi
5dad59:	55                   	push   %ebp
5dad5a:	8b ec                	mov    %esp,%ebp
5dad5c:	56                   	push   %esi
5dad5d:	8b 75 08             	mov    0x8(%ebp),%esi
5dad60:	57                   	push   %edi
5dad61:	8b 7d 0c             	mov    0xc(%ebp),%edi
5dad64:	0f b7 0e             	movzwl (%esi),%ecx
5dad67:	8d 76 02             	lea    0x2(%esi),%esi
5dad6a:	8d 41 bf             	lea    -0x41(%ecx),%eax
5dad6d:	83 f8 19             	cmp    $0x19,%eax
5dad70:	77 03                	ja     0x5dad75
5dad72:	83 c1 20             	add    $0x20,%ecx
5dad75:	0f b7 17             	movzwl (%edi),%edx
5dad78:	83 c7 02             	add    $0x2,%edi
5dad7b:	8d 42 bf             	lea    -0x41(%edx),%eax
5dad7e:	83 f8 19             	cmp    $0x19,%eax
5dad81:	77 03                	ja     0x5dad86
5dad83:	83 c2 20             	add    $0x20,%edx
5dad86:	8b c1                	mov    %ecx,%eax
5dad88:	2b c2                	sub    %edx,%eax
5dad8a:	75 04                	jne    0x5dad90
5dad8c:	85 c9                	test   %ecx,%ecx
5dad8e:	75 d4                	jne    0x5dad64
5dad90:	5f                   	pop    %edi
5dad91:	5e                   	pop    %esi
5dad92:	5d                   	pop    %ebp
5dad93:	c3                   	ret
5dad94:	8b ff                	mov    %edi,%edi
5dad96:	55                   	push   %ebp
5dad97:	8b ec                	mov    %esp,%ebp
5dad99:	8b 45 08             	mov    0x8(%ebp),%eax
5dad9c:	b9 00 01 00 00       	mov    $0x100,%ecx
5dada1:	66 3b c1             	cmp    %cx,%ax
5dada4:	73 20                	jae    0x5dadc6
5dada6:	0f b6 c8             	movzbl %al,%ecx
5dada9:	f6 04 4d 8a 3c 67 00 	testb  $0x1,0x673c8a(,%ecx,2)
5dadb0:	01
5dadb1:	74 0e                	je     0x5dadc1
5dadb3:	8b 45 0c             	mov    0xc(%ebp),%eax
5dadb6:	8b 00                	mov    (%eax),%eax
5dadb8:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
5dadbe:	8a 04 01             	mov    (%ecx,%eax,1),%al
5dadc1:	0f b6 c0             	movzbl %al,%eax
5dadc4:	5d                   	pop    %ebp
5dadc5:	c3                   	ret
5dadc6:	ff 75 0c             	push   0xc(%ebp)
5dadc9:	50                   	push   %eax
5dadca:	e8 37 16 01 00       	call   0x5ec406
5dadcf:	59                   	pop    %ecx
5dadd0:	59                   	pop    %ecx
5dadd1:	5d                   	pop    %ebp
5dadd2:	c3                   	ret
5dadd3:	8b ff                	mov    %edi,%edi
5dadd5:	55                   	push   %ebp
5dadd6:	8b ec                	mov    %esp,%ebp
5dadd8:	83 3d 9c 6f 71 00 00 	cmpl   $0x0,0x716f9c
5daddf:	75 29                	jne    0x5dae0a
5dade1:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5dade5:	75 17                	jne    0x5dadfe
5dade7:	e8 9c fe ff ff       	call   0x5dac88
5dadec:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5dadf2:	e8 e9 b3 ff ff       	call   0x5d61e0
5dadf7:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
5dadfc:	5d                   	pop    %ebp
5dadfd:	c3                   	ret
5dadfe:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
5dae02:	74 e3                	je     0x5dade7
5dae04:	5d                   	pop    %ebp
5dae05:	e9 4d ff ff ff       	jmp    0x5dad57
5dae0a:	6a 00                	push   $0x0
5dae0c:	ff 75 0c             	push   0xc(%ebp)
5dae0f:	ff 75 08             	push   0x8(%ebp)
5dae12:	e8 05 00 00 00       	call   0x5dae1c
5dae17:	83 c4 0c             	add    $0xc,%esp
5dae1a:	5d                   	pop    %ebp
5dae1b:	c3                   	ret
5dae1c:	8b ff                	mov    %edi,%edi
5dae1e:	55                   	push   %ebp
5dae1f:	8b ec                	mov    %esp,%ebp
5dae21:	83 ec 10             	sub    $0x10,%esp
5dae24:	56                   	push   %esi
5dae25:	8b 75 08             	mov    0x8(%ebp),%esi
5dae28:	85 f6                	test   %esi,%esi
5dae2a:	75 1a                	jne    0x5dae46
5dae2c:	e8 57 fe ff ff       	call   0x5dac88
5dae31:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5dae37:	e8 a4 b3 ff ff       	call   0x5d61e0
5dae3c:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
5dae41:	e9 8b 00 00 00       	jmp    0x5daed1
5dae46:	57                   	push   %edi
5dae47:	8b 7d 0c             	mov    0xc(%ebp),%edi
5dae4a:	85 ff                	test   %edi,%edi
5dae4c:	75 17                	jne    0x5dae65
5dae4e:	e8 35 fe ff ff       	call   0x5dac88
5dae53:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5dae59:	e8 82 b3 ff ff       	call   0x5d61e0
5dae5e:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
5dae63:	eb 6b                	jmp    0x5daed0
5dae65:	ff 75 10             	push   0x10(%ebp)
5dae68:	8d 4d f0             	lea    -0x10(%ebp),%ecx
5dae6b:	e8 65 fe ff ff       	call   0x5dacd5
5dae70:	8b 45 f4             	mov    -0xc(%ebp),%eax
5dae73:	83 b8 a8 00 00 00 00 	cmpl   $0x0,0xa8(%eax)
5dae7a:	75 0d                	jne    0x5dae89
5dae7c:	57                   	push   %edi
5dae7d:	56                   	push   %esi
5dae7e:	e8 d4 fe ff ff       	call   0x5dad57
5dae83:	59                   	pop    %ecx
5dae84:	59                   	pop    %ecx
5dae85:	8b c8                	mov    %eax,%ecx
5dae87:	eb 35                	jmp    0x5daebe
5dae89:	53                   	push   %ebx
5dae8a:	0f b7 06             	movzwl (%esi),%eax
5dae8d:	8d 4d f4             	lea    -0xc(%ebp),%ecx
5dae90:	51                   	push   %ecx
5dae91:	50                   	push   %eax
5dae92:	8d 76 02             	lea    0x2(%esi),%esi
5dae95:	e8 fa fe ff ff       	call   0x5dad94
5dae9a:	8d 4d f4             	lea    -0xc(%ebp),%ecx
5dae9d:	0f b7 d8             	movzwl %ax,%ebx
5daea0:	0f b7 07             	movzwl (%edi),%eax
5daea3:	8d 7f 02             	lea    0x2(%edi),%edi
5daea6:	51                   	push   %ecx
5daea7:	50                   	push   %eax
5daea8:	e8 e7 fe ff ff       	call   0x5dad94
5daead:	0f b7 c0             	movzwl %ax,%eax
5daeb0:	8b cb                	mov    %ebx,%ecx
5daeb2:	83 c4 10             	add    $0x10,%esp
5daeb5:	2b c8                	sub    %eax,%ecx
5daeb7:	75 04                	jne    0x5daebd
5daeb9:	85 db                	test   %ebx,%ebx
5daebb:	75 cd                	jne    0x5dae8a
5daebd:	5b                   	pop    %ebx
5daebe:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
5daec2:	74 0a                	je     0x5daece
5daec4:	8b 45 f0             	mov    -0x10(%ebp),%eax
5daec7:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
5daece:	8b c1                	mov    %ecx,%eax
5daed0:	5f                   	pop    %edi
5daed1:	5e                   	pop    %esi
5daed2:	c9                   	leave
5daed3:	c3                   	ret
5daed4:	8b ff                	mov    %edi,%edi
5daed6:	55                   	push   %ebp
5daed7:	8b ec                	mov    %esp,%ebp
5daed9:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
5daedd:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5daee0:	99                   	cltd
5daee1:	33 d2                	xor    %edx,%edx
5daee3:	c1 e0 1f             	shl    $0x1f,%eax
5daee6:	83 ca 01             	or     $0x1,%edx
5daee9:	0d 00 00 f0 7f       	or     $0x7ff00000,%eax
5daeee:	89 11                	mov    %edx,(%ecx)
5daef0:	89 41 04             	mov    %eax,0x4(%ecx)
5daef3:	5d                   	pop    %ebp
5daef4:	c3                   	ret
5daef5:	8b ff                	mov    %edi,%edi
5daef7:	55                   	push   %ebp
5daef8:	8b ec                	mov    %esp,%ebp
5daefa:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5daefd:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
5daf01:	c1 e0 1f             	shl    $0x1f,%eax
5daf04:	8d 49 7f             	lea    0x7f(%ecx),%ecx
5daf07:	c1 e1 17             	shl    $0x17,%ecx
5daf0a:	81 e1 00 00 80 7f    	and    $0x7f800000,%ecx
5daf10:	0b c8                	or     %eax,%ecx
5daf12:	8b 45 10             	mov    0x10(%ebp),%eax
5daf15:	25 ff ff 7f 00       	and    $0x7fffff,%eax
5daf1a:	0b c8                	or     %eax,%ecx
5daf1c:	8b 45 18             	mov    0x18(%ebp),%eax
5daf1f:	89 08                	mov    %ecx,(%eax)