487f94:	3b 4d c4             	cmp    -0x3c(%ebp),%ecx
487f97:	8b 4d f8             	mov    -0x8(%ebp),%ecx
487f9a:	0f 84 85 06 00 00    	je     0x488625
487fa0:	8b 45 d4             	mov    -0x2c(%ebp),%eax
487fa3:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
487fa6:	8b 45 f0             	mov    -0x10(%ebp),%eax
487fa9:	40                   	inc    %eax
487faa:	3b 45 dc             	cmp    -0x24(%ebp),%eax
487fad:	89 45 f0             	mov    %eax,-0x10(%ebp)
487fb0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
487fb3:	89 4d f8             	mov    %ecx,-0x8(%ebp)
487fb6:	0f 8c 46 ff ff ff    	jl     0x487f02
487fbc:	e9 64 06 00 00       	jmp    0x488625
487fc1:	8b 55 dc             	mov    -0x24(%ebp),%edx
487fc4:	39 55 f0             	cmp    %edx,-0x10(%ebp)
487fc7:	0f 8d 58 06 00 00    	jge    0x488625
487fcd:	c7 45 d4 01 00 00 00 	movl   $0x1,-0x2c(%ebp)
487fd4:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
487fd7:	0f 83 15 fe ff ff    	jae    0x487df2
487fdd:	0f b7 11             	movzwl (%ecx),%edx
487fe0:	89 55 f4             	mov    %edx,-0xc(%ebp)
487fe3:	85 c0                	test   %eax,%eax
487fe5:	74 32                	je     0x488019
487fe7:	8b c2                	mov    %edx,%eax
487fe9:	25 00 fc 00 00       	and    $0xfc00,%eax
487fee:	3d 00 d8 00 00       	cmp    $0xd800,%eax
487ff3:	75 24                	jne    0x488019
487ff5:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
487ff9:	81 e2 ff 03 00 00    	and    $0x3ff,%edx
487fff:	25 ff 03 00 00       	and    $0x3ff,%eax
488004:	c1 e2 0a             	shl    $0xa,%edx
488007:	0b d0                	or     %eax,%edx
488009:	81 c2 00 00 01 00    	add    $0x10000,%edx
48800f:	89 55 f4             	mov    %edx,-0xc(%ebp)
488012:	c7 45 d4 02 00 00 00 	movl   $0x2,-0x2c(%ebp)
488019:	8b 4d f4             	mov    -0xc(%ebp),%ecx
48801c:	8b c2                	mov    %edx,%eax
48801e:	99                   	cltd
48801f:	83 e2 7f             	and    $0x7f,%edx
488022:	03 c2                	add    %edx,%eax
488024:	c1 f8 07             	sar    $0x7,%eax
488027:	0f b6 80 a0 c4 4a 00 	movzbl 0x4ac4a0(%eax),%eax
48802e:	c1 e0 07             	shl    $0x7,%eax
488031:	81 e1 7f 00 00 80    	and    $0x8000007f,%ecx
488037:	79 05                	jns    0x48803e
488039:	49                   	dec    %ecx
48803a:	83 c9 80             	or     $0xffffff80,%ecx
48803d:	41                   	inc    %ecx
48803e:	03 c1                	add    %ecx,%eax
488040:	33 c9                	xor    %ecx,%ecx
488042:	0f b7 04 45 08 e6 49 	movzwl 0x49e608(,%eax,2),%eax
488049:	00
48804a:	0f b6 04 c5 09 b1 4a 	movzbl 0x4ab109(,%eax,8),%eax
488051:	00
488052:	3b 45 bc             	cmp    -0x44(%ebp),%eax
488055:	0f 94 c1             	sete   %cl
488058:	3b 4d c4             	cmp    -0x3c(%ebp),%ecx
48805b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
48805e:	0f 84 c1 05 00 00    	je     0x488625
488064:	8b 45 d4             	mov    -0x2c(%ebp),%eax
488067:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
48806a:	8b 45 f0             	mov    -0x10(%ebp),%eax
48806d:	40                   	inc    %eax
48806e:	3b 45 dc             	cmp    -0x24(%ebp),%eax
488071:	89 45 f0             	mov    %eax,-0x10(%ebp)
488074:	8b 45 e4             	mov    -0x1c(%ebp),%eax
488077:	89 4d f8             	mov    %ecx,-0x8(%ebp)
48807a:	0f 8c 4d ff ff ff    	jl     0x487fcd
488080:	e9 a0 05 00 00       	jmp    0x488625
488085:	8b 55 dc             	mov    -0x24(%ebp),%edx
488088:	39 55 f0             	cmp    %edx,-0x10(%ebp)
48808b:	0f 8d 94 05 00 00    	jge    0x488625
488091:	c7 45 d4 01 00 00 00 	movl   $0x1,-0x2c(%ebp)
488098:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
48809b:	0f 83 51 fd ff ff    	jae    0x487df2
4880a1:	0f b7 11             	movzwl (%ecx),%edx
4880a4:	89 55 f4             	mov    %edx,-0xc(%ebp)
4880a7:	85 c0                	test   %eax,%eax
4880a9:	74 32                	je     0x4880dd
4880ab:	8b c2                	mov    %edx,%eax
4880ad:	25 00 fc 00 00       	and    $0xfc00,%eax
4880b2:	3d 00 d8 00 00       	cmp    $0xd800,%eax
4880b7:	75 24                	jne    0x4880dd
4880b9:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
4880bd:	81 e2 ff 03 00 00    	and    $0x3ff,%edx
4880c3:	25 ff 03 00 00       	and    $0x3ff,%eax
4880c8:	c1 e2 0a             	shl    $0xa,%edx
4880cb:	0b d0                	or     %eax,%edx
4880cd:	81 c2 00 00 01 00    	add    $0x10000,%edx
4880d3:	89 55 f4             	mov    %edx,-0xc(%ebp)
4880d6:	c7 45 d4 02 00 00 00 	movl   $0x2,-0x2c(%ebp)
4880dd:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4880e0:	8b c2                	mov    %edx,%eax
4880e2:	99                   	cltd
4880e3:	83 e2 7f             	and    $0x7f,%edx
4880e6:	03 c2                	add    %edx,%eax
4880e8:	c1 f8 07             	sar    $0x7,%eax
4880eb:	0f b6 80 a0 c4 4a 00 	movzbl 0x4ac4a0(%eax),%eax
4880f2:	c1 e0 07             	shl    $0x7,%eax
4880f5:	81 e1 7f 00 00 80    	and    $0x8000007f,%ecx
4880fb:	79 05                	jns    0x488102
4880fd:	49                   	dec    %ecx
4880fe:	83 c9 80             	or     $0xffffff80,%ecx
488101:	41                   	inc    %ecx
488102:	03 c1                	add    %ecx,%eax
488104:	33 c9                	xor    %ecx,%ecx
488106:	0f b7 04 45 08 e6 49 	movzwl 0x49e608(,%eax,2),%eax
48810d:	00
48810e:	0f b6 04 c5 08 b1 4a 	movzbl 0x4ab108(,%eax,8),%eax
488115:	00
488116:	3b 45 bc             	cmp    -0x44(%ebp),%eax
488119:	0f 94 c1             	sete   %cl
48811c:	3b 4d c4             	cmp    -0x3c(%ebp),%ecx
48811f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
488122:	0f 84 fd 04 00 00    	je     0x488625
488128:	8b 45 d4             	mov    -0x2c(%ebp),%eax
48812b:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
48812e:	8b 45 f0             	mov    -0x10(%ebp),%eax
488131:	40                   	inc    %eax
488132:	3b 45 dc             	cmp    -0x24(%ebp),%eax
488135:	89 45 f0             	mov    %eax,-0x10(%ebp)
488138:	8b 45 e4             	mov    -0x1c(%ebp),%eax
48813b:	89 4d f8             	mov    %ecx,-0x8(%ebp)
48813e:	0f 8c 4d ff ff ff    	jl     0x488091
488144:	e9 dc 04 00 00       	jmp    0x488625
488149:	8b 55 dc             	mov    -0x24(%ebp),%edx
48814c:	39 55 f0             	cmp    %edx,-0x10(%ebp)
48814f:	0f 8d d0 04 00 00    	jge    0x488625
488155:	c7 45 d4 01 00 00 00 	movl   $0x1,-0x2c(%ebp)
48815c:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
48815f:	0f 83 8d fc ff ff    	jae    0x487df2
488165:	0f b7 11             	movzwl (%ecx),%edx
488168:	89 55 f4             	mov    %edx,-0xc(%ebp)
48816b:	85 c0                	test   %eax,%eax
48816d:	74 32                	je     0x4881a1
48816f:	8b c2                	mov    %edx,%eax
488171:	25 00 fc 00 00       	and    $0xfc00,%eax
488176:	3d 00 d8 00 00       	cmp    $0xd800,%eax
48817b:	75 24                	jne    0x4881a1
48817d:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
488181:	81 e2 ff 03 00 00    	and    $0x3ff,%edx
488187:	25 ff 03 00 00       	and    $0x3ff,%eax
48818c:	c1 e2 0a             	shl    $0xa,%edx
48818f:	0b d0                	or     %eax,%edx
488191:	81 c2 00 00 01 00    	add    $0x10000,%edx
488197:	89 55 f4             	mov    %edx,-0xc(%ebp)
48819a:	c7 45 d4 02 00 00 00 	movl   $0x2,-0x2c(%ebp)
4881a1:	8b c2                	mov    %edx,%eax
4881a3:	99                   	cltd
4881a4:	83 e2 7f             	and    $0x7f,%edx
4881a7:	03 c2                	add    %edx,%eax
4881a9:	8b 55 f4             	mov    -0xc(%ebp),%edx
4881ac:	c1 f8 07             	sar    $0x7,%eax
4881af:	0f b6 80 a0 c4 4a 00 	movzbl 0x4ac4a0(%eax),%eax
4881b6:	c1 e0 07             	shl    $0x7,%eax
4881b9:	81 e2 7f 00 00 80    	and    $0x8000007f,%edx
4881bf:	79 05                	jns    0x4881c6
4881c1:	4a                   	dec    %edx
4881c2:	83 ca 80             	or     $0xffffff80,%edx
4881c5:	42                   	inc    %edx
4881c6:	03 c2                	add    %edx,%eax
4881c8:	0f b7 04 45 08 e6 49 	movzwl 0x49e608(,%eax,2),%eax
4881cf:	00
4881d0:	0f b6 04 c5 09 b1 4a 	movzbl 0x4ab109(,%eax,8),%eax
4881d7:	00
4881d8:	8b 04 85 80 61 4b 00 	mov    0x4b6180(,%eax,4),%eax
4881df:	83 f8 01             	cmp    $0x1,%eax
4881e2:	74 09                	je     0x4881ed
4881e4:	83 f8 03             	cmp    $0x3,%eax
4881e7:	74 04                	je     0x4881ed
4881e9:	33 c0                	xor    %eax,%eax
4881eb:	eb 05                	jmp    0x4881f2
4881ed:	b8 01 00 00 00       	mov    $0x1,%eax
4881f2:	3b 45 c4             	cmp    -0x3c(%ebp),%eax
4881f5:	0f 84 2a 04 00 00    	je     0x488625
4881fb:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4881fe:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
488201:	8b 45 f0             	mov    -0x10(%ebp),%eax
488204:	40                   	inc    %eax
488205:	3b 45 dc             	cmp    -0x24(%ebp),%eax
488208:	89 45 f0             	mov    %eax,-0x10(%ebp)
48820b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
48820e:	89 4d f8             	mov    %ecx,-0x8(%ebp)
488211:	0f 8c 3e ff ff ff    	jl     0x488155
488217:	e9 09 04 00 00       	jmp    0x488625
48821c:	8b 55 f0             	mov    -0x10(%ebp),%edx
48821f:	3b 55 dc             	cmp    -0x24(%ebp),%edx
488222:	0f 8d fd 03 00 00    	jge    0x488625
488228:	8b 75 d0             	mov    -0x30(%ebp),%esi
48822b:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
488232:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
488235:	0f 83 b7 fb ff ff    	jae    0x487df2
48823b:	0f b7 19             	movzwl (%ecx),%ebx
48823e:	89 5d e8             	mov    %ebx,-0x18(%ebp)
488241:	8b 5d 10             	mov    0x10(%ebp),%ebx
488244:	85 c0                	test   %eax,%eax
488246:	74 38                	je     0x488280
488248:	8b 45 e8             	mov    -0x18(%ebp),%eax
48824b:	25 00 fc 00 00       	and    $0xfc00,%eax
488250:	3d 00 d8 00 00       	cmp    $0xd800,%eax
488255:	75 26                	jne    0x48827d
488257:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
48825b:	81 65 e8 ff 03 00 00 	andl   $0x3ff,-0x18(%ebp)
488262:	c1 65 e8 0a          	shll   $0xa,-0x18(%ebp)
488266:	25 ff 03 00 00       	and    $0x3ff,%eax
48826b:	0b 45 e8             	or     -0x18(%ebp),%eax
48826e:	c7 45 f4 02 00 00 00 	movl   $0x2,-0xc(%ebp)
488275:	05 00 00 01 00       	add    $0x10000,%eax
48827a:	89 45 e8             	mov    %eax,-0x18(%ebp)
48827d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
488280:	81 7d e8 0e 18 00 00 	cmpl   $0x180e,-0x18(%ebp)
488287:	77 4b                	ja     0x4882d4
488289:	0f 84 dc 00 00 00    	je     0x48836b
48828f:	81 7d e8 85 00 00 00 	cmpl   $0x85,-0x18(%ebp)
488296:	77 21                	ja     0x4882b9
488298:	0f 84 cd 00 00 00    	je     0x48836b
48829e:	83 7d e8 09          	cmpl   $0x9,-0x18(%ebp)
4882a2:	72 6c                	jb     0x488310
4882a4:	83 7d e8 0d          	cmpl   $0xd,-0x18(%ebp)
4882a8:	0f 86 bd 00 00 00    	jbe    0x48836b
4882ae:	83 7d e8 20          	cmpl   $0x20,-0x18(%ebp)
4882b2:	75 5c                	jne    0x488310
4882b4:	e9 b2 00 00 00       	jmp    0x48836b
4882b9:	81 7d e8 a0 00 00 00 	cmpl   $0xa0,-0x18(%ebp)
4882c0:	0f 84 a5 00 00 00    	je     0x48836b
4882c6:	81 7d e8 80 16 00 00 	cmpl   $0x1680,-0x18(%ebp)
4882cd:	75 41                	jne    0x488310
4882cf:	e9 97 00 00 00       	jmp    0x48836b
4882d4:	81 7d e8 2f 20 00 00 	cmpl   $0x202f,-0x18(%ebp)
4882db:	77 21                	ja     0x4882fe
4882dd:	0f 84 88 00 00 00    	je     0x48836b
4882e3:	8b 45 e8             	mov    -0x18(%ebp),%eax
4882e6:	05 00 e0 ff ff       	add    $0xffffe000,%eax
4882eb:	83 f8 29             	cmp    $0x29,%eax
4882ee:	77 20                	ja     0x488310
4882f0:	0f b6 80 32 ba 48 00 	movzbl 0x48ba32(%eax),%eax
4882f7:	ff 24 85 2a ba 48 00 	jmp    *0x48ba2a(,%eax,4)
4882fe:	81 7d e8 5f 20 00 00 	cmpl   $0x205f,-0x18(%ebp)
488305:	74 64                	je     0x48836b
488307:	81 7d e8 00 30 00 00 	cmpl   $0x3000,-0x18(%ebp)
48830e:	74 5b                	je     0x48836b
488310:	8b 4d e8             	mov    -0x18(%ebp),%ecx
488313:	8b c1                	mov    %ecx,%eax
488315:	99                   	cltd
488316:	83 e2 7f             	and    $0x7f,%edx
488319:	03 c2                	add    %edx,%eax
48831b:	c1 f8 07             	sar    $0x7,%eax
48831e:	0f b6 80 a0 c4 4a 00 	movzbl 0x4ac4a0(%eax),%eax
488325:	c1 e0 07             	shl    $0x7,%eax
488328:	81 e1 7f 00 00 80    	and    $0x8000007f,%ecx
48832e:	79 05                	jns    0x488335
488330:	49                   	dec    %ecx
488331:	83 c9 80             	or     $0xffffff80,%ecx
488334:	41                   	inc    %ecx
488335:	03 c1                	add    %ecx,%eax
488337:	33 c9                	xor    %ecx,%ecx
488339:	0f b7 04 45 08 e6 49 	movzwl 0x49e608(,%eax,2),%eax
488340:	00
488341:	0f b6 04 c5 09 b1 4a 	movzbl 0x4ab109(,%eax,8),%eax
488348:	00
488349:	83 3c 85 80 61 4b 00 	cmpl   $0x6,0x4b6180(,%eax,4)
488350:	06
488351:	0f 94 c1             	sete   %cl
488354:	3b 4d c4             	cmp    -0x3c(%ebp),%ecx
488357:	8b 4d f8             	mov    -0x8(%ebp),%ecx
48835a:	0f 84 c5 02 00 00    	je     0x488625
488360:	8b 45 e4             	mov    -0x1c(%ebp),%eax
488363:	8b 55 f0             	mov    -0x10(%ebp),%edx
488366:	eb 0d                	jmp    0x488375
488368:	8b 45 e4             	mov    -0x1c(%ebp),%eax
48836b:	83 7d c4 00          	cmpl   $0x0,-0x3c(%ebp)
48836f:	0f 85 b0 02 00 00    	jne    0x488625
488375:	8b 75 f4             	mov    -0xc(%ebp),%esi
488378:	42                   	inc    %edx
488379:	8d 0c 71             	lea    (%ecx,%esi,2),%ecx
48837c:	8b 75 d0             	mov    -0x30(%ebp),%esi
48837f:	89 4d f8             	mov    %ecx,-0x8(%ebp)
488382:	89 55 f0             	mov    %edx,-0x10(%ebp)
488385:	3b 55 dc             	cmp    -0x24(%ebp),%edx
488388:	0f 8c 9a fe ff ff    	jl     0x488228
48838e:	e9 92 02 00 00       	jmp    0x488625
488393:	8b 55 dc             	mov    -0x24(%ebp),%edx
488396:	39 55 f0             	cmp    %edx,-0x10(%ebp)
488399:	0f 8d 86 02 00 00    	jge    0x488625
48839f:	c7 45 d4 01 00 00 00 	movl   $0x1,-0x2c(%ebp)
4883a6:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
4883a9:	0f 83 43 fa ff ff    	jae    0x487df2
4883af:	0f b7 11             	movzwl (%ecx),%edx
4883b2:	89 55 f4             	mov    %edx,-0xc(%ebp)
4883b5:	85 c0                	test   %eax,%eax
4883b7:	74 32                	je     0x4883eb
4883b9:	8b c2                	mov    %edx,%eax
4883bb:	25 00 fc 00 00       	and    $0xfc00,%eax
4883c0:	3d 00 d8 00 00       	cmp    $0xd800,%eax
4883c5:	75 24                	jne    0x4883eb
4883c7:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
4883cb:	81 e2 ff 03 00 00    	and    $0x3ff,%edx
4883d1:	25 ff 03 00 00       	and    $0x3ff,%eax
4883d6:	c1 e2 0a             	shl    $0xa,%edx
4883d9:	0b d0                	or     %eax,%edx
4883db:	81 c2 00 00 01 00    	add    $0x10000,%edx
4883e1:	89 55 f4             	mov    %edx,-0xc(%ebp)
4883e4:	c7 45 d4 02 00 00 00 	movl   $0x2,-0x2c(%ebp)
4883eb:	8b c2                	mov    %edx,%eax
4883ed:	99                   	cltd
4883ee:	83 e2 7f             	and    $0x7f,%edx
4883f1:	03 c2                	add    %edx,%eax
4883f3:	8b 55 f4             	mov    -0xc(%ebp),%edx
4883f6:	c1 f8 07             	sar    $0x7,%eax
4883f9:	0f b6 88 a0 c4 4a 00 	movzbl 0x4ac4a0(%eax),%ecx
488400:	8b c2                	mov    %edx,%eax
488402:	c1 e1 07             	shl    $0x7,%ecx
488405:	25 7f 00 00 80       	and    $0x8000007f,%eax
48840a:	79 05                	jns    0x488411
48840c:	48                   	dec    %eax
48840d:	83 c8 80             	or     $0xffffff80,%eax
488410:	40                   	inc    %eax
488411:	03 c8                	add    %eax,%ecx
488413:	0f b7 04 4d 08 e6 49 	movzwl 0x49e608(,%ecx,2),%eax
48841a:	00
48841b:	0f b6 04 c5 09 b1 4a 	movzbl 0x4ab109(,%eax,8),%eax
488422:	00
488423:	8b 04 85 80 61 4b 00 	mov    0x4b6180(,%eax,4),%eax
48842a:	83 f8 01             	cmp    $0x1,%eax
48842d:	74 0e                	je     0x48843d
48842f:	83 f8 03             	cmp    $0x3,%eax
488432:	74 09                	je     0x48843d
488434:	83 fa 5f             	cmp    $0x5f,%edx
488437:	74 04                	je     0x48843d
488439:	33 c0                	xor    %eax,%eax
48843b:	eb 05                	jmp    0x488442
48843d:	b8 01 00 00 00       	mov    $0x1,%eax
488442:	8b 4d f8             	mov    -0x8(%ebp),%ecx
488445:	3b 45 c4             	cmp    -0x3c(%ebp),%eax
488448:	0f 84 d7 01 00 00    	je     0x488625
48844e:	8b 45 d4             	mov    -0x2c(%ebp),%eax
488451:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
488454:	8b 45 f0             	mov    -0x10(%ebp),%eax
488457:	40                   	inc    %eax
488458:	3b 45 dc             	cmp    -0x24(%ebp),%eax
48845b:	89 45 f0             	mov    %eax,-0x10(%ebp)
48845e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
488461:	89 4d f8             	mov    %ecx,-0x8(%ebp)
488464:	0f 8c 35 ff ff ff    	jl     0x48839f
48846a:	e9 b6 01 00 00       	jmp    0x488625
48846f:	8b 55 f0             	mov    -0x10(%ebp),%edx
488472:	3b 55 dc             	cmp    -0x24(%ebp),%edx
488475:	0f 8d aa 01 00 00    	jge    0x488625
48847b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
48847e:	c7 45 d4 01 00 00 00 	movl   $0x1,-0x2c(%ebp)