47eecd:	8d 3c f8             	lea    (%eax,%edi,8),%edi
47eed0:	8b 45 fc             	mov    -0x4(%ebp),%eax
47eed3:	f7 d8                	neg    %eax
47eed5:	1b c0                	sbb    %eax,%eax
47eed7:	25 00 00 10 00       	and    $0x100000,%eax
47eedc:	05 ff ff 00 00       	add    $0xffff,%eax
47eee1:	3b f8                	cmp    %eax,%edi
47eee3:	77 2f                	ja     0x47ef14
47eee5:	0f b7 06             	movzwl (%esi),%eax
47eee8:	66 3b c1             	cmp    %cx,%ax
47eeeb:	73 ca                	jae    0x47eeb7
47eeed:	8b 55 fc             	mov    -0x4(%ebp),%edx
47eef0:	66 83 3e 7d          	cmpw   $0x7d,(%esi)
47eef4:	0f 84 41 fe ff ff    	je     0x47ed3b
47eefa:	8b 45 08             	mov    0x8(%ebp),%eax
47eefd:	c7 00 50 00 00 00    	movl   $0x50,(%eax)
47ef03:	e9 e7 9f f8 ff       	jmp    0x408eef
47ef08:	66 3b c2             	cmp    %dx,%ax
47ef0b:	0f 87 1c fe ff ff    	ja     0x47ed2d
47ef11:	83 c6 02             	add    $0x2,%esi
47ef14:	0f b7 06             	movzwl (%esi),%eax
47ef17:	66 3b c1             	cmp    %cx,%ax
47ef1a:	73 ec                	jae    0x47ef08
47ef1c:	e9 0c fe ff ff       	jmp    0x47ed2d
47ef21:	8b 45 08             	mov    0x8(%ebp),%eax
47ef24:	c7 00 25 00 00 00    	movl   $0x25,(%eax)
47ef2a:	e9 b7 9f f8 ff       	jmp    0x408ee6
47ef2f:	8b 45 e8             	mov    -0x18(%ebp),%eax
47ef32:	66 39 46 02          	cmp    %ax,0x2(%esi)
47ef36:	0f 85 b3 9f f8 ff    	jne    0x408eef
47ef3c:	8d 4e 04             	lea    0x4(%esi),%ecx
47ef3f:	e8 56 20 ff ff       	call   0x470f9a
47ef44:	85 c0                	test   %eax,%eax
47ef46:	0f 85 a3 9f f8 ff    	jne    0x408eef
47ef4c:	8b 45 08             	mov    0x8(%ebp),%eax
47ef4f:	c7 00 25 00 00 00    	movl   $0x25,(%eax)
47ef55:	e9 95 9f f8 ff       	jmp    0x408eef
47ef5a:	8d 4b fa             	lea    -0x6(%ebx),%ecx
47ef5d:	83 f9 05             	cmp    $0x5,%ecx
47ef60:	0f 87 96 9f f8 ff    	ja     0x408efc
47ef66:	83 c3 17             	add    $0x17,%ebx
47ef69:	e9 8e 9f f8 ff       	jmp    0x408efc
47ef6e:	66 3b 45 ec          	cmp    -0x14(%ebp),%ax
47ef72:	0f 84 4b e6 f9 ff    	je     0x41d5c3
47ef78:	66 3b 45 e4          	cmp    -0x1c(%ebp),%ax
47ef7c:	0f 84 41 e6 f9 ff    	je     0x41d5c3
47ef82:	66 3b 45 e0          	cmp    -0x20(%ebp),%ax
47ef86:	0f 85 44 e5 f9 ff    	jne    0x41d4d0
47ef8c:	e9 32 e6 f9 ff       	jmp    0x41d5c3
47ef91:	8d 5f 08             	lea    0x8(%edi),%ebx
47ef94:	8d 7d c0             	lea    -0x40(%ebp),%edi
47ef97:	e9 6b e6 f9 ff       	jmp    0x41d607
47ef9c:	83 e8 06             	sub    $0x6,%eax
47ef9f:	83 f8 19             	cmp    $0x19,%eax
47efa2:	0f 87 28 e5 f9 ff    	ja     0x41d4d0
47efa8:	0f b6 80 3a f5 47 00 	movzbl 0x47f53a(%eax),%eax
47efaf:	ff 24 85 fe f4 47 00 	jmp    *0x47f4fe(,%eax,4)
47efb6:	8d 47 08             	lea    0x8(%edi),%eax
47efb9:	8b 10                	mov    (%eax),%edx
47efbb:	3b ca                	cmp    %edx,%ecx
47efbd:	0f 84 0d e5 f9 ff    	je     0x41d4d0
47efc3:	83 c0 04             	add    $0x4,%eax
47efc6:	8b 10                	mov    (%eax),%edx
47efc8:	83 fa ff             	cmp    $0xffffffff,%edx
47efcb:	75 ee                	jne    0x47efbb
47efcd:	e9 7d e6 f9 ff       	jmp    0x41d64f
47efd2:	8d 47 08             	lea    0x8(%edi),%eax
47efd5:	8b 10                	mov    (%eax),%edx
47efd7:	3b ca                	cmp    %edx,%ecx
47efd9:	74 0a                	je     0x47efe5
47efdb:	83 c0 04             	add    $0x4,%eax
47efde:	8b 10                	mov    (%eax),%edx
47efe0:	83 fa ff             	cmp    $0xffffffff,%edx
47efe3:	75 f2                	jne    0x47efd7
47efe5:	83 38 ff             	cmpl   $0xffffffff,(%eax)
47efe8:	eb 18                	jmp    0x47f002
47efea:	8b 57 08             	mov    0x8(%edi),%edx
47efed:	33 c0                	xor    %eax,%eax
47efef:	83 3f 0f             	cmpl   $0xf,(%edi)
47eff2:	0f 94 c0             	sete   %al
47eff5:	50                   	push   %eax
47eff6:	ff 77 0c             	push   0xc(%edi)
47eff9:	e8 db 17 ff ff       	call   0x4707d9
47effe:	59                   	pop    %ecx
47efff:	59                   	pop    %ecx
47f000:	85 c0                	test   %eax,%eax
47f002:	0f 84 c8 e4 f9 ff    	je     0x41d4d0
47f008:	e9 42 e6 f9 ff       	jmp    0x41d64f
47f00d:	81 f9 00 01 00 00    	cmp    $0x100,%ecx
47f013:	0f 83 36 e6 f9 ff    	jae    0x41d64f
47f019:	8b 46 0c             	mov    0xc(%esi),%eax
47f01c:	f6 04 01 04          	testb  $0x4,(%ecx,%eax,1)
47f020:	eb 18                	jmp    0x47f03a
47f022:	8b 55 10             	mov    0x10(%ebp),%edx
47f025:	8b 47 08             	mov    0x8(%edi),%eax
47f028:	ff 75 f4             	push   -0xc(%ebp)
47f02b:	03 c0                	add    %eax,%eax
47f02d:	2b d0                	sub    %eax,%edx
47f02f:	83 c2 02             	add    $0x2,%edx
47f032:	e8 de 23 ff ff       	call   0x471415
47f037:	59                   	pop    %ecx
47f038:	85 c0                	test   %eax,%eax
47f03a:	0f 85 90 e4 f9 ff    	jne    0x41d4d0
47f040:	e9 0a e6 f9 ff       	jmp    0x41d64f
47f045:	81 f9 ff 00 00 00    	cmp    $0xff,%ecx
47f04b:	0f 87 7f e4 f9 ff    	ja     0x41d4d0
47f051:	8b 46 0c             	mov    0xc(%esi),%eax
47f054:	f6 04 01 04          	testb  $0x4,(%ecx,%eax,1)
47f058:	eb a8                	jmp    0x47f002
47f05a:	81 f9 00 01 00 00    	cmp    $0x100,%ecx
47f060:	0f 83 e9 e5 f9 ff    	jae    0x41d64f
47f066:	8b 46 0c             	mov    0xc(%esi),%eax
47f069:	f6 04 01 01          	testb  $0x1,(%ecx,%eax,1)
47f06d:	eb cb                	jmp    0x47f03a
47f06f:	81 f9 ff 00 00 00    	cmp    $0xff,%ecx
47f075:	0f 87 55 e4 f9 ff    	ja     0x41d4d0
47f07b:	8b 46 0c             	mov    0xc(%esi),%eax
47f07e:	f6 04 01 01          	testb  $0x1,(%ecx,%eax,1)
47f082:	e9 7b ff ff ff       	jmp    0x47f002
47f087:	81 f9 ff 00 00 00    	cmp    $0xff,%ecx
47f08d:	0f 83 bc e5 f9 ff    	jae    0x41d64f
47f093:	8b 46 0c             	mov    0xc(%esi),%eax
47f096:	f6 04 01 10          	testb  $0x10,(%ecx,%eax,1)
47f09a:	eb 9e                	jmp    0x47f03a
47f09c:	81 f9 ff 00 00 00    	cmp    $0xff,%ecx
47f0a2:	0f 87 28 e4 f9 ff    	ja     0x41d4d0
47f0a8:	8b 46 0c             	mov    0xc(%esi),%eax
47f0ab:	f6 04 01 10          	testb  $0x10,(%ecx,%eax,1)
47f0af:	e9 4e ff ff ff       	jmp    0x47f002
47f0b4:	b8 0e 18 00 00       	mov    $0x180e,%eax
47f0b9:	3b c8                	cmp    %eax,%ecx
47f0bb:	77 2f                	ja     0x47f0ec
47f0bd:	0f 84 0d e4 f9 ff    	je     0x41d4d0
47f0c3:	83 f9 09             	cmp    $0x9,%ecx
47f0c6:	0f 84 04 e4 f9 ff    	je     0x41d4d0
47f0cc:	83 f9 20             	cmp    $0x20,%ecx
47f0cf:	0f 84 fb e3 f9 ff    	je     0x41d4d0
47f0d5:	81 f9 a0 00 00 00    	cmp    $0xa0,%ecx
47f0db:	0f 84 ef e3 f9 ff    	je     0x41d4d0
47f0e1:	81 f9 80 16 00 00    	cmp    $0x1680,%ecx
47f0e7:	e9 16 ff ff ff       	jmp    0x47f002
47f0ec:	81 f9 00 20 00 00    	cmp    $0x2000,%ecx
47f0f2:	0f 82 57 e5 f9 ff    	jb     0x41d64f
47f0f8:	81 f9 0a 20 00 00    	cmp    $0x200a,%ecx
47f0fe:	0f 86 cc e3 f9 ff    	jbe    0x41d4d0
47f104:	81 f9 2f 20 00 00    	cmp    $0x202f,%ecx
47f10a:	0f 84 c0 e3 f9 ff    	je     0x41d4d0
47f110:	81 f9 5f 20 00 00    	cmp    $0x205f,%ecx
47f116:	0f 84 b4 e3 f9 ff    	je     0x41d4d0
47f11c:	81 f9 00 30 00 00    	cmp    $0x3000,%ecx
47f122:	e9 db fe ff ff       	jmp    0x47f002
47f127:	b8 0e 18 00 00       	mov    $0x180e,%eax
47f12c:	3b c8                	cmp    %eax,%ecx
47f12e:	77 2f                	ja     0x47f15f
47f130:	0f 84 19 e5 f9 ff    	je     0x41d64f
47f136:	83 f9 09             	cmp    $0x9,%ecx
47f139:	0f 84 10 e5 f9 ff    	je     0x41d64f
47f13f:	83 f9 20             	cmp    $0x20,%ecx
47f142:	0f 84 07 e5 f9 ff    	je     0x41d64f
47f148:	81 f9 a0 00 00 00    	cmp    $0xa0,%ecx
47f14e:	0f 84 fb e4 f9 ff    	je     0x41d64f
47f154:	81 f9 80 16 00 00    	cmp    $0x1680,%ecx
47f15a:	e9 db fe ff ff       	jmp    0x47f03a
47f15f:	81 f9 00 20 00 00    	cmp    $0x2000,%ecx
47f165:	0f 82 65 e3 f9 ff    	jb     0x41d4d0
47f16b:	81 f9 0a 20 00 00    	cmp    $0x200a,%ecx
47f171:	0f 86 d8 e4 f9 ff    	jbe    0x41d64f
47f177:	81 f9 2f 20 00 00    	cmp    $0x202f,%ecx
47f17d:	0f 84 cc e4 f9 ff    	je     0x41d64f
47f183:	81 f9 5f 20 00 00    	cmp    $0x205f,%ecx
47f189:	0f 84 c0 e4 f9 ff    	je     0x41d64f
47f18f:	81 f9 00 30 00 00    	cmp    $0x3000,%ecx
47f195:	e9 a0 fe ff ff       	jmp    0x47f03a
47f19a:	83 f9 0a             	cmp    $0xa,%ecx
47f19d:	0f 82 ac e4 f9 ff    	jb     0x41d64f
47f1a3:	83 f9 0d             	cmp    $0xd,%ecx
47f1a6:	0f 86 24 e3 f9 ff    	jbe    0x41d4d0
47f1ac:	b8 85 00 00 00       	mov    $0x85,%eax
47f1b1:	3b c8                	cmp    %eax,%ecx
47f1b3:	0f 84 17 e3 f9 ff    	je     0x41d4d0
47f1b9:	81 f9 27 20 00 00    	cmp    $0x2027,%ecx
47f1bf:	0f 86 8a e4 f9 ff    	jbe    0x41d64f
47f1c5:	81 f9 29 20 00 00    	cmp    $0x2029,%ecx
47f1cb:	0f 86 ff e2 f9 ff    	jbe    0x41d4d0
47f1d1:	e9 79 e4 f9 ff       	jmp    0x41d64f
47f1d6:	83 f9 0a             	cmp    $0xa,%ecx
47f1d9:	0f 82 f1 e2 f9 ff    	jb     0x41d4d0
47f1df:	83 f9 0d             	cmp    $0xd,%ecx
47f1e2:	0f 86 67 e4 f9 ff    	jbe    0x41d64f
47f1e8:	b8 85 00 00 00       	mov    $0x85,%eax
47f1ed:	3b c8                	cmp    %eax,%ecx
47f1ef:	0f 84 5a e4 f9 ff    	je     0x41d64f
47f1f5:	8d 81 d8 df ff ff    	lea    -0x2028(%ecx),%eax
47f1fb:	83 f8 01             	cmp    $0x1,%eax
47f1fe:	0f 87 cc e2 f9 ff    	ja     0x41d4d0
47f204:	e9 46 e4 f9 ff       	jmp    0x41d64f
47f209:	83 e8 6f             	sub    $0x6f,%eax
47f20c:	74 1a                	je     0x47f228
47f20e:	48                   	dec    %eax
47f20f:	0f 85 bb e2 f9 ff    	jne    0x41d4d0
47f215:	8b 55 fc             	mov    -0x4(%ebp),%edx
47f218:	8d 45 c0             	lea    -0x40(%ebp),%eax
47f21b:	3b f8                	cmp    %eax,%edi
47f21d:	0f 84 02 fe ff ff    	je     0x47f025
47f223:	e9 fa fd ff ff       	jmp    0x47f022
47f228:	81 f9 ff 00 00 00    	cmp    $0xff,%ecx
47f22e:	0f 87 9c e2 f9 ff    	ja     0x41d4d0
47f234:	e9 e1 e3 f9 ff       	jmp    0x41d61a
47f239:	83 fa 6e             	cmp    $0x6e,%edx
47f23c:	0f 84 47 02 00 00    	je     0x47f489
47f242:	6a 10                	push   $0x10
47f244:	5e                   	pop    %esi
47f245:	3b ce                	cmp    %esi,%ecx
47f247:	74 32                	je     0x47f27b
47f249:	83 f9 0f             	cmp    $0xf,%ecx
47f24c:	74 2d                	je     0x47f27b
47f24e:	8d 41 fa             	lea    -0x6(%ecx),%eax
47f251:	3b c6                	cmp    %esi,%eax
47f253:	0f 87 77 e2 f9 ff    	ja     0x41d4d0
47f259:	8d 42 fa             	lea    -0x6(%edx),%eax
47f25c:	83 f8 14             	cmp    $0x14,%eax
47f25f:	0f 87 6b e2 f9 ff    	ja     0x41d4d0
47f265:	6b c9 15             	imul   $0x15,%ecx,%ecx
47f268:	80 bc 11 04 4e 4b 00 	cmpb   $0x0,0x4b4e04(%ecx,%edx,1)
47f26f:	00
47f270:	0f 84 5a e2 f9 ff    	je     0x41d4d0
47f276:	e9 ff 01 00 00       	jmp    0x47f47a
47f27b:	83 fa 18             	cmp    $0x18,%edx
47f27e:	0f 84 f6 01 00 00    	je     0x47f47a
47f284:	3b d6                	cmp    %esi,%edx
47f286:	74 09                	je     0x47f291
47f288:	83 fa 0f             	cmp    $0xf,%edx
47f28b:	0f 85 3f e2 f9 ff    	jne    0x41d4d0
47f291:	33 c0                	xor    %eax,%eax
47f293:	3b ca                	cmp    %edx,%ecx
47f295:	0f 94 c0             	sete   %al
47f298:	89 45 f0             	mov    %eax,-0x10(%ebp)
47f29b:	33 c0                	xor    %eax,%eax
47f29d:	3b ce                	cmp    %esi,%ecx
47f29f:	0f 94 c0             	sete   %al
47f2a2:	33 db                	xor    %ebx,%ebx
47f2a4:	3b d6                	cmp    %esi,%edx
47f2a6:	0f 94 c3             	sete   %bl
47f2a9:	89 45 f8             	mov    %eax,-0x8(%ebp)
47f2ac:	85 c0                	test   %eax,%eax
47f2ae:	74 09                	je     0x47f2b9
47f2b0:	85 db                	test   %ebx,%ebx
47f2b2:	74 05                	je     0x47f2b9
47f2b4:	33 d2                	xor    %edx,%edx
47f2b6:	42                   	inc    %edx
47f2b7:	eb 02                	jmp    0x47f2bb
47f2b9:	33 d2                	xor    %edx,%edx
47f2bb:	8b 4f 08             	mov    0x8(%edi),%ecx
47f2be:	8b 45 c8             	mov    -0x38(%ebp),%eax
47f2c1:	6b c9 0b             	imul   $0xb,%ecx,%ecx
47f2c4:	0f b6 8c 01 b8 51 4b 	movzbl 0x4b51b8(%ecx,%eax,1),%ecx
47f2cb:	00
47f2cc:	8d 41 ff             	lea    -0x1(%ecx),%eax
47f2cf:	3b c6                	cmp    %esi,%eax
47f2d1:	0f 87 f9 e1 f9 ff    	ja     0x41d4d0
47f2d7:	0f b6 80 7a f5 47 00 	movzbl 0x47f57a(%eax),%eax
47f2de:	ff 24 85 56 f5 47 00 	jmp    *0x47f556(,%eax,4)
47f2e5:	8b 47 0c             	mov    0xc(%edi),%eax
47f2e8:	33 c9                	xor    %ecx,%ecx
47f2ea:	3b 45 cc             	cmp    -0x34(%ebp),%eax
47f2ed:	0f 94 c1             	sete   %cl
47f2f0:	3b 4d f0             	cmp    -0x10(%ebp),%ecx
47f2f3:	e9 79 01 00 00       	jmp    0x47f471
47f2f8:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
47f2fc:	eb 04                	jmp    0x47f302
47f2fe:	33 c0                	xor    %eax,%eax
47f300:	3b d8                	cmp    %eax,%ebx
47f302:	0f 85 c8 e1 f9 ff    	jne    0x41d4d0
47f308:	e9 6a 01 00 00       	jmp    0x47f477
47f30d:	85 db                	test   %ebx,%ebx
47f30f:	0f 84 bb e1 f9 ff    	je     0x41d4d0
47f315:	8b 4f 0c             	mov    0xc(%edi),%ecx
47f318:	8b 45 cc             	mov    -0x34(%ebp),%eax
47f31b:	eb 06                	jmp    0x47f323
47f31d:	8b 4d cc             	mov    -0x34(%ebp),%ecx
47f320:	8b 47 0c             	mov    0xc(%edi),%eax
47f323:	6b c9 1e             	imul   $0x1e,%ecx,%ecx
47f326:	0f b6 84 01 f0 4f 4b 	movzbl 0x4b4ff0(%ecx,%eax,1),%eax
47f32d:	00
47f32e:	3b 45 f0             	cmp    -0x10(%ebp),%eax
47f331:	eb cf                	jmp    0x47f302
47f333:	8b 55 f8             	mov    -0x8(%ebp),%edx
47f336:	85 d2                	test   %edx,%edx
47f338:	0f 84 92 e1 f9 ff    	je     0x41d4d0
47f33e:	eb dd                	jmp    0x47f31d
47f340:	85 db                	test   %ebx,%ebx
47f342:	0f 84 88 e1 f9 ff    	je     0x41d4d0
47f348:	0f b6 04 8d bc 4d 4b 	movzbl 0x4b4dbc(,%ecx,4),%eax
47f34f:	00
47f350:	39 45 cc             	cmp    %eax,-0x34(%ebp)
47f353:	74 35                	je     0x47f38a
47f355:	0f b6 04 8d bd 4d 4b 	movzbl 0x4b4dbd(,%ecx,4),%eax
47f35c:	00
47f35d:	8b 55 f8             	mov    -0x8(%ebp),%edx
47f360:	39 45 cc             	cmp    %eax,-0x34(%ebp)
47f363:	74 28                	je     0x47f38d
47f365:	0f b6 04 8d be 4d 4b 	movzbl 0x4b4dbe(,%ecx,4),%eax
47f36c:	00
47f36d:	39 45 cc             	cmp    %eax,-0x34(%ebp)
47f370:	eb 0d                	jmp    0x47f37f
47f372:	0f b6 04 8d a7 4d 4b 	movzbl 0x4b4da7(,%ecx,4),%eax
47f379:	00
47f37a:	3b d0                	cmp    %eax,%edx
47f37c:	8b 55 f8             	mov    -0x8(%ebp),%edx
47f37f:	75 04                	jne    0x47f385
47f381:	85 d2                	test   %edx,%edx
47f383:	75 08                	jne    0x47f38d
47f385:	33 c0                	xor    %eax,%eax
47f387:	40                   	inc    %eax
47f388:	eb 05                	jmp    0x47f38f
47f38a:	8b 55 f8             	mov    -0x8(%ebp),%edx
47f38d:	33 c0                	xor    %eax,%eax
47f38f:	3b d0                	cmp    %eax,%edx
47f391:	e9 6c ff ff ff       	jmp    0x47f302
47f396:	8b 55 f8             	mov    -0x8(%ebp),%edx
47f399:	85 d2                	test   %edx,%edx
47f39b:	0f 84 2f e1 f9 ff    	je     0x41d4d0
47f3a1:	0f b6 04 8d b0 4d 4b 	movzbl 0x4b4db0(,%ecx,4),%eax
47f3a8:	00
47f3a9:	39 47 0c             	cmp    %eax,0xc(%edi)
47f3ac:	0f 84 4c ff ff ff    	je     0x47f2fe
47f3b2:	0f b6 04 8d b1 4d 4b 	movzbl 0x4b4db1(,%ecx,4),%eax
47f3b9:	00
47f3ba:	39 47 0c             	cmp    %eax,0xc(%edi)
47f3bd:	0f 84 3b ff ff ff    	je     0x47f2fe
47f3c3:	0f b6 04 8d b2 4d 4b 	movzbl 0x4b4db2(,%ecx,4),%eax
47f3ca:	00
47f3cb:	39 47 0c             	cmp    %eax,0xc(%edi)
47f3ce:	75 08                	jne    0x47f3d8
47f3d0:	85 db                	test   %ebx,%ebx
47f3d2:	0f 85 26 ff ff ff    	jne    0x47f2fe
47f3d8:	33 c0                	xor    %eax,%eax
47f3da:	40                   	inc    %eax
47f3db:	e9 20 ff ff ff       	jmp    0x47f300
47f3e0:	85 db                	test   %ebx,%ebx
47f3e2:	0f 84 e8 e0 f9 ff    	je     0x41d4d0
47f3e8:	0f b6 04 8d a4 4d 4b 	movzbl 0x4b4da4(,%ecx,4),%eax
47f3ef:	00
47f3f0:	8b 55 cc             	mov    -0x34(%ebp),%edx
47f3f3:	6b c0 1e             	imul   $0x1e,%eax,%eax
47f3f6:	80 bc 10 f0 4f 4b 00 	cmpb   $0x0,0x4b4ff0(%eax,%edx,1)
47f3fd:	00
47f3fe:	74 8a                	je     0x47f38a
47f400:	0f b6 04 8d a5 4d 4b 	movzbl 0x4b4da5(,%ecx,4),%eax
47f407:	00