4872c8:	74 50                	je     0x48731a
4872ca:	83 f8 09             	cmp    $0x9,%eax
4872cd:	74 4b                	je     0x48731a
4872cf:	83 f8 20             	cmp    $0x20,%eax
4872d2:	0f 85 9c 32 f8 ff    	jne    0x40a574
4872d8:	eb 40                	jmp    0x48731a
4872da:	3d 80 16 00 00       	cmp    $0x1680,%eax
4872df:	0f 85 8f 32 f8 ff    	jne    0x40a574
4872e5:	eb 33                	jmp    0x48731a
4872e7:	3d 5f 20 00 00       	cmp    $0x205f,%eax
4872ec:	77 21                	ja     0x48730f
4872ee:	74 2a                	je     0x48731a
4872f0:	3d 00 20 00 00       	cmp    $0x2000,%eax
4872f5:	0f 82 79 32 f8 ff    	jb     0x40a574
4872fb:	3d 0a 20 00 00       	cmp    $0x200a,%eax
487300:	76 18                	jbe    0x48731a
487302:	3d 2f 20 00 00       	cmp    $0x202f,%eax
487307:	0f 85 67 32 f8 ff    	jne    0x40a574
48730d:	eb 0b                	jmp    0x48731a
48730f:	3d 00 30 00 00       	cmp    $0x3000,%eax
487314:	0f 85 5a 32 f8 ff    	jne    0x40a574
48731a:	8b 45 f4             	mov    -0xc(%ebp),%eax
48731d:	40                   	inc    %eax
48731e:	89 45 f4             	mov    %eax,-0xc(%ebp)
487321:	3b 45 f0             	cmp    -0x10(%ebp),%eax
487324:	0f 8e 47 ff ff ff    	jle    0x487271
48732a:	e9 63 37 f8 ff       	jmp    0x40aa92
48732f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
487332:	83 f9 01             	cmp    $0x1,%ecx
487335:	8b 4d f8             	mov    -0x8(%ebp),%ecx
487338:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
48733f:	0f 8c 50 37 f8 ff    	jl     0x40aa95
487345:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
487348:	0f 83 09 2a 00 00    	jae    0x489d57
48734e:	0f b7 01             	movzwl (%ecx),%eax
487351:	89 45 e0             	mov    %eax,-0x20(%ebp)
487354:	83 c1 02             	add    $0x2,%ecx
487357:	25 00 fc 00 00       	and    $0xfc00,%eax
48735c:	89 4d f8             	mov    %ecx,-0x8(%ebp)
48735f:	3d 00 d8 00 00       	cmp    $0xd800,%eax
487364:	75 23                	jne    0x487389
487366:	0f b7 01             	movzwl (%ecx),%eax
487369:	81 65 e0 ff 03 00 00 	andl   $0x3ff,-0x20(%ebp)
487370:	c1 65 e0 0a          	shll   $0xa,-0x20(%ebp)
487374:	25 ff 03 00 00       	and    $0x3ff,%eax
487379:	0b 45 e0             	or     -0x20(%ebp),%eax
48737c:	05 00 00 01 00       	add    $0x10000,%eax
487381:	83 c1 02             	add    $0x2,%ecx
487384:	89 4d f8             	mov    %ecx,-0x8(%ebp)
487387:	eb 03                	jmp    0x48738c
487389:	8b 45 e0             	mov    -0x20(%ebp),%eax
48738c:	3d 85 00 00 00       	cmp    $0x85,%eax
487391:	77 16                	ja     0x4873a9
487393:	0f 84 db 31 f8 ff    	je     0x40a574
487399:	83 f8 0a             	cmp    $0xa,%eax
48739c:	72 1d                	jb     0x4873bb
48739e:	83 f8 0d             	cmp    $0xd,%eax
4873a1:	0f 86 cd 31 f8 ff    	jbe    0x40a574
4873a7:	eb 12                	jmp    0x4873bb
4873a9:	3d 28 20 00 00       	cmp    $0x2028,%eax
4873ae:	72 0b                	jb     0x4873bb
4873b0:	3d 29 20 00 00       	cmp    $0x2029,%eax
4873b5:	0f 86 b9 31 f8 ff    	jbe    0x40a574
4873bb:	8b 45 f4             	mov    -0xc(%ebp),%eax
4873be:	40                   	inc    %eax
4873bf:	89 45 f4             	mov    %eax,-0xc(%ebp)
4873c2:	3b 45 f0             	cmp    -0x10(%ebp),%eax
4873c5:	0f 8e 7a ff ff ff    	jle    0x487345
4873cb:	e9 c2 36 f8 ff       	jmp    0x40aa92
4873d0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4873d3:	83 f9 01             	cmp    $0x1,%ecx
4873d6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4873d9:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
4873e0:	0f 8c af 36 f8 ff    	jl     0x40aa95
4873e6:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
4873e9:	0f 83 68 29 00 00    	jae    0x489d57
4873ef:	0f b7 01             	movzwl (%ecx),%eax
4873f2:	89 45 e0             	mov    %eax,-0x20(%ebp)
4873f5:	83 c1 02             	add    $0x2,%ecx
4873f8:	25 00 fc 00 00       	and    $0xfc00,%eax
4873fd:	89 4d f8             	mov    %ecx,-0x8(%ebp)
487400:	3d 00 d8 00 00       	cmp    $0xd800,%eax
487405:	75 23                	jne    0x48742a
487407:	0f b7 01             	movzwl (%ecx),%eax
48740a:	81 65 e0 ff 03 00 00 	andl   $0x3ff,-0x20(%ebp)
487411:	c1 65 e0 0a          	shll   $0xa,-0x20(%ebp)
487415:	25 ff 03 00 00       	and    $0x3ff,%eax
48741a:	0b 45 e0             	or     -0x20(%ebp),%eax
48741d:	05 00 00 01 00       	add    $0x10000,%eax
487422:	83 c1 02             	add    $0x2,%ecx
487425:	89 4d f8             	mov    %ecx,-0x8(%ebp)
487428:	eb 03                	jmp    0x48742d
48742a:	8b 45 e0             	mov    -0x20(%ebp),%eax
48742d:	3d 85 00 00 00       	cmp    $0x85,%eax
487432:	77 10                	ja     0x487444
487434:	74 1c                	je     0x487452
487436:	83 c0 f6             	add    $0xfffffff6,%eax
487439:	83 f8 03             	cmp    $0x3,%eax
48743c:	0f 87 32 31 f8 ff    	ja     0x40a574
487442:	eb 0e                	jmp    0x487452
487444:	05 d8 df ff ff       	add    $0xffffdfd8,%eax
487449:	83 f8 01             	cmp    $0x1,%eax
48744c:	0f 87 22 31 f8 ff    	ja     0x40a574
487452:	8b 45 f4             	mov    -0xc(%ebp),%eax
487455:	40                   	inc    %eax
487456:	89 45 f4             	mov    %eax,-0xc(%ebp)
487459:	3b 45 f0             	cmp    -0x10(%ebp),%eax
48745c:	7e 88                	jle    0x4873e6
48745e:	e9 2f 36 f8 ff       	jmp    0x40aa92
487463:	8b 45 e4             	mov    -0x1c(%ebp),%eax
487466:	83 f9 01             	cmp    $0x1,%ecx
487469:	8b 4d f8             	mov    -0x8(%ebp),%ecx
48746c:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
487473:	0f 8c 1c 36 f8 ff    	jl     0x40aa95
487479:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
48747c:	0f 83 d5 28 00 00    	jae    0x489d57
487482:	0f b7 01             	movzwl (%ecx),%eax
487485:	89 45 ec             	mov    %eax,-0x14(%ebp)
487488:	83 c1 02             	add    $0x2,%ecx
48748b:	25 00 fc 00 00       	and    $0xfc00,%eax
487490:	89 4d f8             	mov    %ecx,-0x8(%ebp)
487493:	3d 00 d8 00 00       	cmp    $0xd800,%eax
487498:	75 29                	jne    0x4874c3
48749a:	0f b7 01             	movzwl (%ecx),%eax
48749d:	8b 5d ec             	mov    -0x14(%ebp),%ebx
4874a0:	81 e3 ff 03 00 00    	and    $0x3ff,%ebx
4874a6:	25 ff 03 00 00       	and    $0x3ff,%eax
4874ab:	c1 e3 0a             	shl    $0xa,%ebx
4874ae:	0b c3                	or     %ebx,%eax
4874b0:	8b 5d 10             	mov    0x10(%ebp),%ebx
4874b3:	05 00 00 01 00       	add    $0x10000,%eax
4874b8:	83 c1 02             	add    $0x2,%ecx
4874bb:	89 45 ec             	mov    %eax,-0x14(%ebp)
4874be:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4874c1:	eb 03                	jmp    0x4874c6
4874c3:	8b 45 ec             	mov    -0x14(%ebp),%eax
4874c6:	3d 80 00 00 00       	cmp    $0x80,%eax
4874cb:	73 13                	jae    0x4874e0
4874cd:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4874d0:	8b 43 44             	mov    0x44(%ebx),%eax
4874d3:	f6 04 01 04          	testb  $0x4,(%ecx,%eax,1)
4874d7:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4874da:	0f 85 94 30 f8 ff    	jne    0x40a574
4874e0:	8b 45 f4             	mov    -0xc(%ebp),%eax
4874e3:	40                   	inc    %eax
4874e4:	89 45 f4             	mov    %eax,-0xc(%ebp)
4874e7:	3b 45 f0             	cmp    -0x10(%ebp),%eax
4874ea:	7e 8d                	jle    0x487479
4874ec:	e9 a1 35 f8 ff       	jmp    0x40aa92
4874f1:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4874f4:	83 f9 01             	cmp    $0x1,%ecx
4874f7:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4874fa:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
487501:	0f 8c 8e 35 f8 ff    	jl     0x40aa95
487507:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
48750a:	0f 83 47 28 00 00    	jae    0x489d57
487510:	66 81 39 80 00       	cmpw   $0x80,(%ecx)
487515:	0f 83 59 30 f8 ff    	jae    0x40a574
48751b:	8b 43 44             	mov    0x44(%ebx),%eax
48751e:	0f b7 19             	movzwl (%ecx),%ebx
487521:	f6 04 03 04          	testb  $0x4,(%ebx,%eax,1)
487525:	8b 5d 10             	mov    0x10(%ebp),%ebx
487528:	0f 84 46 30 f8 ff    	je     0x40a574
48752e:	8b 45 f4             	mov    -0xc(%ebp),%eax
487531:	40                   	inc    %eax
487532:	83 c1 02             	add    $0x2,%ecx
487535:	89 4d f8             	mov    %ecx,-0x8(%ebp)
487538:	89 45 f4             	mov    %eax,-0xc(%ebp)
48753b:	3b 45 f0             	cmp    -0x10(%ebp),%eax
48753e:	7e c7                	jle    0x487507
487540:	e9 4d 35 f8 ff       	jmp    0x40aa92
487545:	8b 45 e4             	mov    -0x1c(%ebp),%eax
487548:	83 f9 01             	cmp    $0x1,%ecx
48754b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
48754e:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
487555:	0f 8c 3a 35 f8 ff    	jl     0x40aa95
48755b:	8b 45 f0             	mov    -0x10(%ebp),%eax
48755e:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
487561:	0f 83 f0 27 00 00    	jae    0x489d57
487567:	66 81 39 80 00       	cmpw   $0x80,(%ecx)
48756c:	8b 5d 10             	mov    0x10(%ebp),%ebx
48756f:	73 16                	jae    0x487587
487571:	8b 43 44             	mov    0x44(%ebx),%eax
487574:	0f b7 19             	movzwl (%ecx),%ebx
487577:	f6 04 03 01          	testb  $0x1,(%ebx,%eax,1)
48757b:	8b 5d 10             	mov    0x10(%ebp),%ebx
48757e:	0f 85 f0 2f f8 ff    	jne    0x40a574
487584:	8b 45 f0             	mov    -0x10(%ebp),%eax
487587:	83 c1 02             	add    $0x2,%ecx
48758a:	89 4d f8             	mov    %ecx,-0x8(%ebp)
48758d:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
487590:	73 24                	jae    0x4875b6
487592:	66 8b 01             	mov    (%ecx),%ax
487595:	c7 45 f4 00 fc 00 00 	movl   $0xfc00,-0xc(%ebp)
48759c:	66 23 45 f4          	and    -0xc(%ebp),%ax
4875a0:	c7 45 f4 00 dc 00 00 	movl   $0xdc00,-0xc(%ebp)
4875a7:	66 3b 45 f4          	cmp    -0xc(%ebp),%ax
4875ab:	8b 45 f0             	mov    -0x10(%ebp),%eax
4875ae:	75 06                	jne    0x4875b6
4875b0:	83 c1 02             	add    $0x2,%ecx
4875b3:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4875b6:	ff 45 ec             	incl   -0x14(%ebp)
4875b9:	39 45 ec             	cmp    %eax,-0x14(%ebp)
4875bc:	7e a0                	jle    0x48755e
4875be:	e9 cf 34 f8 ff       	jmp    0x40aa92
4875c3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4875c6:	83 f9 01             	cmp    $0x1,%ecx
4875c9:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4875cc:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
4875d3:	0f 8c bc 34 f8 ff    	jl     0x40aa95
4875d9:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
4875dc:	0f 83 75 27 00 00    	jae    0x489d57
4875e2:	66 81 39 80 00       	cmpw   $0x80,(%ecx)
4875e7:	0f 83 87 2f f8 ff    	jae    0x40a574
4875ed:	8b 43 44             	mov    0x44(%ebx),%eax
4875f0:	0f b7 19             	movzwl (%ecx),%ebx
4875f3:	f6 04 03 01          	testb  $0x1,(%ebx,%eax,1)
4875f7:	8b 5d 10             	mov    0x10(%ebp),%ebx
4875fa:	0f 84 74 2f f8 ff    	je     0x40a574
487600:	8b 45 f4             	mov    -0xc(%ebp),%eax
487603:	40                   	inc    %eax
487604:	83 c1 02             	add    $0x2,%ecx
487607:	89 4d f8             	mov    %ecx,-0x8(%ebp)
48760a:	89 45 f4             	mov    %eax,-0xc(%ebp)
48760d:	3b 45 f0             	cmp    -0x10(%ebp),%eax
487610:	7e c7                	jle    0x4875d9
487612:	e9 7b 34 f8 ff       	jmp    0x40aa92
487617:	8b 45 e4             	mov    -0x1c(%ebp),%eax
48761a:	83 f9 01             	cmp    $0x1,%ecx
48761d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
487620:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
487627:	0f 8c 68 34 f8 ff    	jl     0x40aa95
48762d:	8b 45 f0             	mov    -0x10(%ebp),%eax
487630:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
487633:	0f 83 1e 27 00 00    	jae    0x489d57
487639:	66 81 39 80 00       	cmpw   $0x80,(%ecx)
48763e:	8b 5d 10             	mov    0x10(%ebp),%ebx
487641:	73 16                	jae    0x487659
487643:	8b 43 44             	mov    0x44(%ebx),%eax
487646:	0f b7 19             	movzwl (%ecx),%ebx
487649:	f6 04 03 10          	testb  $0x10,(%ebx,%eax,1)
48764d:	8b 5d 10             	mov    0x10(%ebp),%ebx
487650:	0f 85 1e 2f f8 ff    	jne    0x40a574
487656:	8b 45 f0             	mov    -0x10(%ebp),%eax
487659:	83 c1 02             	add    $0x2,%ecx
48765c:	89 4d f8             	mov    %ecx,-0x8(%ebp)
48765f:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
487662:	73 24                	jae    0x487688
487664:	66 8b 01             	mov    (%ecx),%ax
487667:	c7 45 f4 00 fc 00 00 	movl   $0xfc00,-0xc(%ebp)
48766e:	66 23 45 f4          	and    -0xc(%ebp),%ax
487672:	c7 45 f4 00 dc 00 00 	movl   $0xdc00,-0xc(%ebp)
487679:	66 3b 45 f4          	cmp    -0xc(%ebp),%ax
48767d:	8b 45 f0             	mov    -0x10(%ebp),%eax
487680:	75 06                	jne    0x487688
487682:	83 c1 02             	add    $0x2,%ecx
487685:	89 4d f8             	mov    %ecx,-0x8(%ebp)
487688:	ff 45 ec             	incl   -0x14(%ebp)
48768b:	39 45 ec             	cmp    %eax,-0x14(%ebp)
48768e:	7e a0                	jle    0x487630
487690:	e9 fd 33 f8 ff       	jmp    0x40aa92
487695:	8b 45 e4             	mov    -0x1c(%ebp),%eax
487698:	83 f9 01             	cmp    $0x1,%ecx
48769b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
48769e:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
4876a5:	0f 8c ea 33 f8 ff    	jl     0x40aa95
4876ab:	3b 4b 7c             	cmp    0x7c(%ebx),%ecx
4876ae:	0f 83 a3 26 00 00    	jae    0x489d57
4876b4:	66 81 39 80 00       	cmpw   $0x80,(%ecx)
4876b9:	0f 83 b5 2e f8 ff    	jae    0x40a574
4876bf:	8b 43 44             	mov    0x44(%ebx),%eax
4876c2:	0f b7 19             	movzwl (%ecx),%ebx
4876c5:	f6 04 03 10          	testb  $0x10,(%ebx,%eax,1)
4876c9:	8b 5d 10             	mov    0x10(%ebp),%ebx
4876cc:	0f 84 a2 2e f8 ff    	je     0x40a574
4876d2:	8b 45 f4             	mov    -0xc(%ebp),%eax
4876d5:	40                   	inc    %eax
4876d6:	83 c1 02             	add    $0x2,%ecx
4876d9:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4876dc:	89 45 f4             	mov    %eax,-0xc(%ebp)
4876df:	3b 45 f0             	cmp    -0x10(%ebp),%eax
4876e2:	7e c7                	jle    0x4876ab
4876e4:	e9 a9 33 f8 ff       	jmp    0x40aa92
4876e9:	8b 5d d8             	mov    -0x28(%ebp),%ebx
4876ec:	83 c3 fa             	add    $0xfffffffa,%ebx
4876ef:	83 fb 0f             	cmp    $0xf,%ebx
4876f2:	0f 87 1f 24 00 00    	ja     0x489b17
4876f8:	8b 5d d8             	mov    -0x28(%ebp),%ebx
4876fb:	83 c3 fa             	add    $0xfffffffa,%ebx
4876fe:	ff 24 9d be b9 48 00 	jmp    *0x48b9be(,%ebx,4)
487705:	8b 5d 10             	mov    0x10(%ebp),%ebx
487708:	83 f9 01             	cmp    $0x1,%ecx
48770b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
48770e:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
487715:	0f 8c 7a 33 f8 ff    	jl     0x40aa95
48771b:	8b 53 7c             	mov    0x7c(%ebx),%edx
48771e:	3b ca                	cmp    %edx,%ecx
487720:	0f 83 31 26 00 00    	jae    0x489d57
487726:	83 7b 18 00          	cmpl   $0x0,0x18(%ebx)
48772a:	74 1f                	je     0x48774b
48772c:	8d 43 1c             	lea    0x1c(%ebx),%eax
48772f:	6a 00                	push   $0x0
487731:	50                   	push   %eax
487732:	52                   	push   %edx
487733:	8b 53 18             	mov    0x18(%ebx),%edx
487736:	e8 c3 18 f8 ff       	call   0x408ffe
48773b:	83 c4 0c             	add    $0xc,%esp
48773e:	85 c0                	test   %eax,%eax
487740:	0f 85 2e 2e f8 ff    	jne    0x40a574
487746:	8b 4d f8             	mov    -0x8(%ebp),%ecx
487749:	eb 2c                	jmp    0x487777
48774b:	8b 43 1c             	mov    0x1c(%ebx),%eax
48774e:	03 c0                	add    %eax,%eax
487750:	2b d0                	sub    %eax,%edx
487752:	3b ca                	cmp    %edx,%ecx
487754:	77 21                	ja     0x487777
487756:	66 8b 01             	mov    (%ecx),%ax
487759:	66 3b 43 34          	cmp    0x34(%ebx),%ax
48775d:	75 18                	jne    0x487777
48775f:	83 7b 1c 01          	cmpl   $0x1,0x1c(%ebx)
487763:	0f 84 0b 2e f8 ff    	je     0x40a574
487769:	66 8b 41 02          	mov    0x2(%ecx),%ax
48776d:	66 3b 43 36          	cmp    0x36(%ebx),%ax
487771:	0f 84 fd 2d f8 ff    	je     0x40a574
487777:	83 bb 8c 00 00 00 00 	cmpl   $0x0,0x8c(%ebx)
48777e:	74 31                	je     0x4877b1
487780:	8d 41 02             	lea    0x2(%ecx),%eax
487783:	3b 43 7c             	cmp    0x7c(%ebx),%eax
487786:	72 29                	jb     0x4877b1
487788:	83 7b 18 00          	cmpl   $0x0,0x18(%ebx)
48778c:	75 23                	jne    0x4877b1
48778e:	83 7b 1c 02          	cmpl   $0x2,0x1c(%ebx)
487792:	75 1d                	jne    0x4877b1
487794:	66 8b 01             	mov    (%ecx),%ax
487797:	66 3b 43 34          	cmp    0x34(%ebx),%ax
48779b:	75 14                	jne    0x4877b1
48779d:	c7 43 68 01 00 00 00 	movl   $0x1,0x68(%ebx)
4877a4:	83 bb 8c 00 00 00 01 	cmpl   $0x1,0x8c(%ebx)
4877ab:	0f 8f 7c c9 ff ff    	jg     0x48412d
4877b1:	8b 45 f4             	mov    -0xc(%ebp),%eax
4877b4:	40                   	inc    %eax
4877b5:	83 c1 02             	add    $0x2,%ecx
4877b8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4877bb:	89 45 f4             	mov    %eax,-0xc(%ebp)
4877be:	3b 45 f0             	cmp    -0x10(%ebp),%eax
4877c1:	0f 8e 54 ff ff ff    	jle    0x48771b
4877c7:	8b 55 c8             	mov    -0x38(%ebp),%edx
4877ca:	e9 c3 32 f8 ff       	jmp    0x40aa92
4877cf:	8b 5d 10             	mov    0x10(%ebp),%ebx
4877d2:	03 c9                	add    %ecx,%ecx