566eb7:	74 1c                	je     0x566ed5
566eb9:	81 0a 40 04 00 00    	orl    $0x440,(%edx)
566ebf:	81 08 10 01 00 00    	orl    $0x110,(%eax)
566ec5:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
566ecc:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
566ed3:	eb 11                	jmp    0x566ee6
566ed5:	83 0a 40             	orl    $0x40,(%edx)
566ed8:	83 08 10             	orl    $0x10,(%eax)
566edb:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
566edf:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
566ee6:	81 0e 00 10 00 00    	orl    $0x1000,(%esi)
566eec:	81 0e 00 40 00 00    	orl    $0x4000,(%esi)
566ef2:	ff 4d ec             	decl   -0x14(%ebp)
566ef5:	8b 45 ec             	mov    -0x14(%ebp),%eax
566ef8:	85 c0                	test   %eax,%eax
566efa:	0f 8e 80 0a 00 00    	jle    0x567980
566f00:	8b 55 d8             	mov    -0x28(%ebp),%edx
566f03:	8b 45 d4             	mov    -0x2c(%ebp),%eax
566f06:	c1 e2 02             	shl    $0x2,%edx
566f09:	c1 e0 02             	shl    $0x2,%eax
566f0c:	03 f2                	add    %edx,%esi
566f0e:	03 f8                	add    %eax,%edi
566f10:	8b 06                	mov    (%esi),%eax
566f12:	a8 ff                	test   $0xff,%al
566f14:	0f 84 5a 03 00 00    	je     0x567274
566f1a:	f6 c4 50             	test   $0x50,%ah
566f1d:	0f 85 51 03 00 00    	jne    0x567274
566f23:	8b 07                	mov    (%edi),%eax
566f25:	99                   	cltd
566f26:	33 c2                	xor    %edx,%eax
566f28:	2b c2                	sub    %edx,%eax
566f2a:	8b 4d e8             	mov    -0x18(%ebp),%ecx
566f2d:	23 c1                	and    %ecx,%eax
566f2f:	74 07                	je     0x566f38
566f31:	b8 01 00 00 00       	mov    $0x1,%eax
566f36:	eb 02                	jmp    0x566f3a
566f38:	33 c0                	xor    %eax,%eax
566f3a:	89 45 b4             	mov    %eax,-0x4c(%ebp)
566f3d:	f6 43 10 02          	testb  $0x2,0x10(%ebx)
566f41:	75 17                	jne    0x566f5a
566f43:	68 75 02 00 00       	push   $0x275
566f48:	68 07 f7 69 00       	push   $0x69f707
566f4d:	68 de f6 69 00       	push   $0x69f6de
566f52:	e8 e9 3b ff ff       	call   0x55ab40
566f57:	83 c4 0c             	add    $0xc,%esp
566f5a:	ff 4b 08             	decl   0x8(%ebx)
566f5d:	0f 89 c3 00 00 00    	jns    0x567026
566f63:	66 8b 53 04          	mov    0x4(%ebx),%dx
566f67:	c1 e2 08             	shl    $0x8,%edx
566f6a:	66 81 e2 ff ff       	and    $0xffff,%dx
566f6f:	66 89 53 04          	mov    %dx,0x4(%ebx)
566f73:	66 81 7b 04 00 ff    	cmpw   $0xff00,0x4(%ebx)
566f79:	75 07                	jne    0x566f82
566f7b:	b9 06 00 00 00       	mov    $0x6,%ecx
566f80:	eb 05                	jmp    0x566f87
566f82:	b9 07 00 00 00       	mov    $0x7,%ecx
566f87:	89 4b 08             	mov    %ecx,0x8(%ebx)
566f8a:	66 8b 45 b4          	mov    -0x4c(%ebp),%ax
566f8e:	8b 4b 08             	mov    0x8(%ebx),%ecx
566f91:	66 83 e0 01          	and    $0x1,%ax
566f95:	66 d3 e0             	shl    %cl,%ax
566f98:	66 09 43 04          	or     %ax,0x4(%ebx)
566f9c:	8b 53 0c             	mov    0xc(%ebx),%edx
566f9f:	f6 42 08 07          	testb  $0x7,0x8(%edx)
566fa3:	75 6e                	jne    0x567013
566fa5:	8b 43 0c             	mov    0xc(%ebx),%eax
566fa8:	8b 50 40             	mov    0x40(%eax),%edx
566fab:	85 d2                	test   %edx,%edx
566fad:	7c 1c                	jl     0x566fcb
566faf:	8b 4b 0c             	mov    0xc(%ebx),%ecx
566fb2:	8b 53 0c             	mov    0xc(%ebx),%edx
566fb5:	8b 41 40             	mov    0x40(%ecx),%eax
566fb8:	8b 4a 3c             	mov    0x3c(%edx),%ecx
566fbb:	3b c1                	cmp    %ecx,%eax
566fbd:	7f 0c                	jg     0x566fcb
566fbf:	8b 43 0c             	mov    0xc(%ebx),%eax
566fc2:	83 48 08 04          	orl    $0x4,0x8(%eax)
566fc6:	83 ca ff             	or     $0xffffffff,%edx
566fc9:	eb 4b                	jmp    0x567016
566fcb:	8b 4b 0c             	mov    0xc(%ebx),%ecx
566fce:	83 49 04 20          	orl    $0x20,0x4(%ecx)
566fd2:	8b 43 0c             	mov    0xc(%ebx),%eax
566fd5:	ff 48 1c             	decl   0x1c(%eax)
566fd8:	79 19                	jns    0x566ff3
566fda:	0f b7 53 04          	movzwl 0x4(%ebx),%edx
566fde:	c1 fa 08             	sar    $0x8,%edx
566fe1:	8b 43 0c             	mov    0xc(%ebx),%eax
566fe4:	81 e2 ff 00 00 00    	and    $0xff,%edx
566fea:	e8 29 1e 01 00       	call   0x578e18
566fef:	8b d0                	mov    %eax,%edx
566ff1:	eb 23                	jmp    0x567016
566ff3:	8b 43 0c             	mov    0xc(%ebx),%eax
566ff6:	ff 40 3c             	incl   0x3c(%eax)
566ff9:	8b 4b 0c             	mov    0xc(%ebx),%ecx
566ffc:	8b 41 18             	mov    0x18(%ecx),%eax
566fff:	ff 41 18             	incl   0x18(%ecx)
567002:	0f b7 53 04          	movzwl 0x4(%ebx),%edx
567006:	c1 fa 08             	sar    $0x8,%edx
567009:	88 10                	mov    %dl,(%eax)
56700b:	81 e2 ff 00 00 00    	and    $0xff,%edx
567011:	eb 03                	jmp    0x567016
567013:	83 ca ff             	or     $0xffffffff,%edx
567016:	42                   	inc    %edx
567017:	75 05                	jne    0x56701e
567019:	83 c8 ff             	or     $0xffffffff,%eax
56701c:	eb 20                	jmp    0x56703e
56701e:	8b 45 b4             	mov    -0x4c(%ebp),%eax
567021:	83 e0 01             	and    $0x1,%eax
567024:	eb 18                	jmp    0x56703e
567026:	66 8b 55 b4          	mov    -0x4c(%ebp),%dx
56702a:	8b 4b 08             	mov    0x8(%ebx),%ecx
56702d:	66 83 e2 01          	and    $0x1,%dx
567031:	66 d3 e2             	shl    %cl,%dx
567034:	66 09 53 04          	or     %dx,0x4(%ebx)
567038:	8b 45 b4             	mov    -0x4c(%ebp),%eax
56703b:	83 e0 01             	and    $0x1,%eax
56703e:	40                   	inc    %eax
56703f:	75 08                	jne    0x567049
567041:	83 c8 ff             	or     $0xffffffff,%eax
567044:	e9 83 09 00 00       	jmp    0x5679cc
567049:	8b 55 b4             	mov    -0x4c(%ebp),%edx
56704c:	85 d2                	test   %edx,%edx
56704e:	0f 84 1a 02 00 00    	je     0x56726e
567054:	8b 4d fc             	mov    -0x4(%ebp),%ecx
567057:	83 c1 06             	add    $0x6,%ecx
56705a:	83 f9 06             	cmp    $0x6,%ecx
56705d:	7e 2f                	jle    0x56708e
56705f:	8b 45 fc             	mov    -0x4(%ebp),%eax
567062:	85 c0                	test   %eax,%eax
567064:	7c 0e                	jl     0x567074
567066:	8b 4d fc             	mov    -0x4(%ebp),%ecx
567069:	8b 07                	mov    (%edi),%eax
56706b:	99                   	cltd
56706c:	33 c2                	xor    %edx,%eax
56706e:	2b c2                	sub    %edx,%eax
567070:	d3 f8                	sar    %cl,%eax
567072:	eb 0e                	jmp    0x567082
567074:	8b 07                	mov    (%edi),%eax
567076:	8b 4d fc             	mov    -0x4(%ebp),%ecx
567079:	99                   	cltd
56707a:	33 c2                	xor    %edx,%eax
56707c:	f7 d9                	neg    %ecx
56707e:	2b c2                	sub    %edx,%eax
567080:	d3 e0                	shl    %cl,%eax
567082:	83 e0 7f             	and    $0x7f,%eax
567085:	8b 0c 85 20 0c 6b 00 	mov    0x6b0c20(,%eax,4),%ecx
56708c:	eb 2d                	jmp    0x5670bb
56708e:	8b 45 fc             	mov    -0x4(%ebp),%eax
567091:	85 c0                	test   %eax,%eax
567093:	7c 0e                	jl     0x5670a3
567095:	8b 4d fc             	mov    -0x4(%ebp),%ecx
567098:	8b 07                	mov    (%edi),%eax
56709a:	99                   	cltd
56709b:	33 c2                	xor    %edx,%eax
56709d:	2b c2                	sub    %edx,%eax
56709f:	d3 f8                	sar    %cl,%eax
5670a1:	eb 0e                	jmp    0x5670b1
5670a3:	8b 07                	mov    (%edi),%eax
5670a5:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5670a8:	99                   	cltd
5670a9:	33 c2                	xor    %edx,%eax
5670ab:	f7 d9                	neg    %ecx
5670ad:	2b c2                	sub    %edx,%eax
5670af:	d3 e0                	shl    %cl,%eax
5670b1:	83 e0 7f             	and    $0x7f,%eax
5670b4:	8b 0c 85 28 10 6b 00 	mov    0x6b1028(,%eax,4),%ecx
5670bb:	8b 45 08             	mov    0x8(%ebp),%eax
5670be:	01 08                	add    %ecx,(%eax)
5670c0:	8b 17                	mov    (%edi),%edx
5670c2:	85 d2                	test   %edx,%edx
5670c4:	7d 07                	jge    0x5670cd
5670c6:	b9 01 00 00 00       	mov    $0x1,%ecx
5670cb:	eb 02                	jmp    0x5670cf
5670cd:	33 c9                	xor    %ecx,%ecx
5670cf:	89 4d b4             	mov    %ecx,-0x4c(%ebp)
5670d2:	f6 43 10 02          	testb  $0x2,0x10(%ebx)
5670d6:	75 17                	jne    0x5670ef
5670d8:	68 75 02 00 00       	push   $0x275
5670dd:	68 3a f7 69 00       	push   $0x69f73a
5670e2:	68 13 f7 69 00       	push   $0x69f713
5670e7:	e8 54 3a ff ff       	call   0x55ab40
5670ec:	83 c4 0c             	add    $0xc,%esp
5670ef:	ff 4b 08             	decl   0x8(%ebx)
5670f2:	0f 89 c0 00 00 00    	jns    0x5671b8
5670f8:	66 8b 43 04          	mov    0x4(%ebx),%ax
5670fc:	c1 e0 08             	shl    $0x8,%eax
5670ff:	66 25 ff ff          	and    $0xffff,%ax
567103:	66 89 43 04          	mov    %ax,0x4(%ebx)
567107:	66 81 7b 04 00 ff    	cmpw   $0xff00,0x4(%ebx)
56710d:	75 07                	jne    0x567116
56710f:	ba 06 00 00 00       	mov    $0x6,%edx
567114:	eb 05                	jmp    0x56711b
567116:	ba 07 00 00 00       	mov    $0x7,%edx
56711b:	89 53 08             	mov    %edx,0x8(%ebx)
56711e:	66 8b 45 b4          	mov    -0x4c(%ebp),%ax
567122:	8b 4b 08             	mov    0x8(%ebx),%ecx
567125:	66 83 e0 01          	and    $0x1,%ax
567129:	66 d3 e0             	shl    %cl,%ax
56712c:	66 09 43 04          	or     %ax,0x4(%ebx)
567130:	8b 43 0c             	mov    0xc(%ebx),%eax
567133:	f6 40 08 07          	testb  $0x7,0x8(%eax)
567137:	75 6c                	jne    0x5671a5
567139:	8b 53 0c             	mov    0xc(%ebx),%edx
56713c:	8b 4a 40             	mov    0x40(%edx),%ecx
56713f:	85 c9                	test   %ecx,%ecx
567141:	7c 1c                	jl     0x56715f
567143:	8b 43 0c             	mov    0xc(%ebx),%eax
567146:	8b 4b 0c             	mov    0xc(%ebx),%ecx
567149:	8b 50 40             	mov    0x40(%eax),%edx
56714c:	8b 41 3c             	mov    0x3c(%ecx),%eax
56714f:	3b d0                	cmp    %eax,%edx
567151:	7f 0c                	jg     0x56715f
567153:	8b 53 0c             	mov    0xc(%ebx),%edx
567156:	83 4a 08 04          	orl    $0x4,0x8(%edx)
56715a:	83 c9 ff             	or     $0xffffffff,%ecx
56715d:	eb 49                	jmp    0x5671a8
56715f:	8b 43 0c             	mov    0xc(%ebx),%eax
567162:	83 48 04 20          	orl    $0x20,0x4(%eax)
567166:	8b 53 0c             	mov    0xc(%ebx),%edx
567169:	ff 4a 1c             	decl   0x1c(%edx)
56716c:	79 19                	jns    0x567187
56716e:	0f b7 53 04          	movzwl 0x4(%ebx),%edx
567172:	c1 fa 08             	sar    $0x8,%edx
567175:	8b 43 0c             	mov    0xc(%ebx),%eax
567178:	81 e2 ff 00 00 00    	and    $0xff,%edx
56717e:	e8 95 1c 01 00       	call   0x578e18
567183:	8b c8                	mov    %eax,%ecx
567185:	eb 21                	jmp    0x5671a8
567187:	8b 43 0c             	mov    0xc(%ebx),%eax
56718a:	ff 40 3c             	incl   0x3c(%eax)
56718d:	8b 53 0c             	mov    0xc(%ebx),%edx
567190:	8b 4a 18             	mov    0x18(%edx),%ecx
567193:	ff 42 18             	incl   0x18(%edx)
567196:	0f b7 43 04          	movzwl 0x4(%ebx),%eax
56719a:	c1 f8 08             	sar    $0x8,%eax
56719d:	88 01                	mov    %al,(%ecx)
56719f:	33 c9                	xor    %ecx,%ecx
5671a1:	8a c8                	mov    %al,%cl
5671a3:	eb 03                	jmp    0x5671a8
5671a5:	83 c9 ff             	or     $0xffffffff,%ecx
5671a8:	41                   	inc    %ecx
5671a9:	75 05                	jne    0x5671b0
5671ab:	83 c8 ff             	or     $0xffffffff,%eax
5671ae:	eb 20                	jmp    0x5671d0
5671b0:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5671b3:	83 e0 01             	and    $0x1,%eax
5671b6:	eb 18                	jmp    0x5671d0
5671b8:	66 8b 55 b4          	mov    -0x4c(%ebp),%dx
5671bc:	8b 4b 08             	mov    0x8(%ebx),%ecx
5671bf:	66 83 e2 01          	and    $0x1,%dx
5671c3:	66 d3 e2             	shl    %cl,%dx
5671c6:	66 09 53 04          	or     %dx,0x4(%ebx)
5671ca:	8b 45 b4             	mov    -0x4c(%ebp),%eax
5671cd:	83 e0 01             	and    $0x1,%eax
5671d0:	40                   	inc    %eax
5671d1:	75 08                	jne    0x5671db
5671d3:	83 c8 ff             	or     $0xffffffff,%eax
5671d6:	e9 f1 07 00 00       	jmp    0x5679cc
5671db:	8b 55 d8             	mov    -0x28(%ebp),%edx
5671de:	c1 e2 02             	shl    $0x2,%edx
5671e1:	52                   	push   %edx
5671e2:	8b d6                	mov    %esi,%edx
5671e4:	58                   	pop    %eax
5671e5:	2b d0                	sub    %eax,%edx
5671e7:	8b 45 d8             	mov    -0x28(%ebp),%eax
5671ea:	c1 e0 02             	shl    $0x2,%eax
5671ed:	03 c6                	add    %esi,%eax
5671ef:	eb 33                	jmp    0x567224
5671f1:	83 48 fc 01          	orl    $0x1,-0x4(%eax)
5671f5:	83 48 04 08          	orl    $0x8,0x4(%eax)
5671f9:	8b 55 b4             	mov    -0x4c(%ebp),%edx
5671fc:	85 d2                	test   %edx,%edx
5671fe:	74 14                	je     0x567214
567200:	81 08 10 01 00 00    	orl    $0x110,(%eax)
567206:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
56720d:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
567214:	83 08 10             	orl    $0x10,(%eax)
567217:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
56721b:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
567222:	eb 44                	jmp    0x567268
567224:	83 4a fc 02          	orl    $0x2,-0x4(%edx)
567228:	83 4a 04 04          	orl    $0x4,0x4(%edx)
56722c:	83 48 fc 01          	orl    $0x1,-0x4(%eax)
567230:	83 48 04 08          	orl    $0x8,0x4(%eax)
567234:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
567237:	85 c9                	test   %ecx,%ecx
567239:	74 1c                	je     0x567257
56723b:	81 0a 40 04 00 00    	orl    $0x440,(%edx)
567241:	81 08 10 01 00 00    	orl    $0x110,(%eax)
567247:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
56724e:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
567255:	eb 11                	jmp    0x567268
567257:	83 0a 40             	orl    $0x40,(%edx)
56725a:	83 08 10             	orl    $0x10,(%eax)
56725d:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
567261:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
567268:	81 0e 00 10 00 00    	orl    $0x1000,(%esi)
56726e:	81 0e 00 40 00 00    	orl    $0x4000,(%esi)
567274:	ff 4d ec             	decl   -0x14(%ebp)
567277:	8b 45 ec             	mov    -0x14(%ebp),%eax
56727a:	85 c0                	test   %eax,%eax
56727c:	0f 8e fe 06 00 00    	jle    0x567980
567282:	8b 55 d8             	mov    -0x28(%ebp),%edx
567285:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
567288:	c1 e2 02             	shl    $0x2,%edx
56728b:	c1 e1 02             	shl    $0x2,%ecx
56728e:	03 f2                	add    %edx,%esi
567290:	03 f9                	add    %ecx,%edi
567292:	8b 06                	mov    (%esi),%eax
567294:	a8 ff                	test   $0xff,%al
567296:	0f 84 5a 03 00 00    	je     0x5675f6
56729c:	f6 c4 50             	test   $0x50,%ah
56729f:	0f 85 51 03 00 00    	jne    0x5675f6
5672a5:	8b 07                	mov    (%edi),%eax
5672a7:	99                   	cltd
5672a8:	33 c2                	xor    %edx,%eax
5672aa:	2b c2                	sub    %edx,%eax
5672ac:	8b 4d e8             	mov    -0x18(%ebp),%ecx
5672af:	23 c1                	and    %ecx,%eax
5672b1:	74 07                	je     0x5672ba
5672b3:	b8 01 00 00 00       	mov    $0x1,%eax
5672b8:	eb 02                	jmp    0x5672bc
5672ba:	33 c0                	xor    %eax,%eax
5672bc:	89 45 b0             	mov    %eax,-0x50(%ebp)
5672bf:	f6 43 10 02          	testb  $0x2,0x10(%ebx)
5672c3:	75 17                	jne    0x5672dc
5672c5:	68 7d 02 00 00       	push   $0x27d
5672ca:	68 6f f7 69 00       	push   $0x69f76f
5672cf:	68 46 f7 69 00       	push   $0x69f746
5672d4:	e8 67 38 ff ff       	call   0x55ab40
5672d9:	83 c4 0c             	add    $0xc,%esp
5672dc:	ff 4b 08             	decl   0x8(%ebx)
5672df:	0f 89 c3 00 00 00    	jns    0x5673a8
5672e5:	66 8b 53 04          	mov    0x4(%ebx),%dx
5672e9:	c1 e2 08             	shl    $0x8,%edx
5672ec:	66 81 e2 ff ff       	and    $0xffff,%dx
5672f1:	66 89 53 04          	mov    %dx,0x4(%ebx)
5672f5:	66 81 7b 04 00 ff    	cmpw   $0xff00,0x4(%ebx)
5672fb:	75 07                	jne    0x567304
5672fd:	b9 06 00 00 00       	mov    $0x6,%ecx
567302:	eb 05                	jmp    0x567309
567304:	b9 07 00 00 00       	mov    $0x7,%ecx
567309:	89 4b 08             	mov    %ecx,0x8(%ebx)
56730c:	66 8b 45 b0          	mov    -0x50(%ebp),%ax
567310:	8b 4b 08             	mov    0x8(%ebx),%ecx
567313:	66 83 e0 01          	and    $0x1,%ax
567317:	66 d3 e0             	shl    %cl,%ax
56731a:	66 09 43 04          	or     %ax,0x4(%ebx)
56731e:	8b 53 0c             	mov    0xc(%ebx),%edx
567321:	f6 42 08 07          	testb  $0x7,0x8(%edx)