419428:	39 08                	cmp    %ecx,(%eax)
41942a:	74 11                	je     0x41943d
41942c:	83 c0 08             	add    $0x8,%eax
41942f:	3d 50 ee 43 00       	cmp    $0x43ee50,%eax
419434:	75 f2                	jne    0x419428
419436:	b8 74 f4 43 00       	mov    $0x43f474,%eax
41943b:	5d                   	pop    %ebp
41943c:	c3                   	ret
41943d:	8b 40 04             	mov    0x4(%eax),%eax
419440:	5d                   	pop    %ebp
419441:	c3                   	ret
419442:	55                   	push   %ebp
419443:	8b ec                	mov    %esp,%ebp
419445:	53                   	push   %ebx
419446:	e8 85 d7 00 00       	call   0x426bd0
41944b:	8b 5d 08             	mov    0x8(%ebp),%ebx
41944e:	6a 02                	push   $0x2
419450:	68 00 01 00 00       	push   $0x100
419455:	89 03                	mov    %eax,(%ebx)
419457:	e8 50 af 00 00       	call   0x4243ac
41945c:	89 43 04             	mov    %eax,0x4(%ebx)
41945f:	59                   	pop    %ecx
419460:	59                   	pop    %ecx
419461:	85 c0                	test   %eax,%eax
419463:	74 1e                	je     0x419483
419465:	56                   	push   %esi
419466:	57                   	push   %edi
419467:	e8 40 d7 00 00       	call   0x426bac
41946c:	8b 7b 04             	mov    0x4(%ebx),%edi
41946f:	b9 80 00 00 00       	mov    $0x80,%ecx
419474:	8b f0                	mov    %eax,%esi
419476:	c7 43 08 01 00 00 00 	movl   $0x1,0x8(%ebx)
41947d:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41947f:	5f                   	pop    %edi
419480:	5e                   	pop    %esi
419481:	eb 0c                	jmp    0x41948f
419483:	e8 24 d7 00 00       	call   0x426bac
419488:	83 63 08 00          	andl   $0x0,0x8(%ebx)
41948c:	89 43 04             	mov    %eax,0x4(%ebx)
41948f:	e8 61 d7 00 00       	call   0x426bf5
419494:	8b 40 04             	mov    0x4(%eax),%eax
419497:	89 43 0c             	mov    %eax,0xc(%ebx)
41949a:	85 c0                	test   %eax,%eax
41949c:	74 0a                	je     0x4194a8
41949e:	50                   	push   %eax
41949f:	e8 09 dc 00 00       	call   0x4270ad
4194a4:	59                   	pop    %ecx
4194a5:	89 43 0c             	mov    %eax,0xc(%ebx)
4194a8:	8b c3                	mov    %ebx,%eax
4194aa:	5b                   	pop    %ebx
4194ab:	5d                   	pop    %ebp
4194ac:	c3                   	ret
4194ad:	55                   	push   %ebp
4194ae:	8b ec                	mov    %esp,%ebp
4194b0:	51                   	push   %ecx
4194b1:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
4194b5:	75 04                	jne    0x4194bb
4194b7:	33 c0                	xor    %eax,%eax
4194b9:	c9                   	leave
4194ba:	c3                   	ret
4194bb:	53                   	push   %ebx
4194bc:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4194bf:	8a 13                	mov    (%ebx),%dl
4194c1:	84 d2                	test   %dl,%dl
4194c3:	75 0f                	jne    0x4194d4
4194c5:	8b 45 08             	mov    0x8(%ebp),%eax
4194c8:	33 c9                	xor    %ecx,%ecx
4194ca:	66 89 08             	mov    %cx,(%eax)
4194cd:	33 c0                	xor    %eax,%eax
4194cf:	e9 08 01 00 00       	jmp    0x4195dc
4194d4:	56                   	push   %esi
4194d5:	57                   	push   %edi
4194d6:	8b 7d 18             	mov    0x18(%ebp),%edi
4194d9:	88 55 fc             	mov    %dl,-0x4(%ebp)
4194dc:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
4194e0:	0f 85 e8 00 00 00    	jne    0x4195ce
4194e6:	8b 47 04             	mov    0x4(%edi),%eax
4194e9:	83 e8 01             	sub    $0x1,%eax
4194ec:	0f 84 b5 00 00 00    	je     0x4195a7
4194f2:	83 e8 01             	sub    $0x1,%eax
4194f5:	74 6d                	je     0x419564
4194f7:	48                   	dec    %eax
4194f8:	83 e8 01             	sub    $0x1,%eax
4194fb:	0f 85 a6 00 00 00    	jne    0x4195a7
419501:	ff 75 fc             	push   -0x4(%ebp)
419504:	8d 45 fc             	lea    -0x4(%ebp),%eax
419507:	50                   	push   %eax
419508:	e8 d2 00 00 00       	call   0x4195df
41950d:	59                   	pop    %ecx
41950e:	59                   	pop    %ecx
41950f:	8b c8                	mov    %eax,%ecx
419511:	85 c9                	test   %ecx,%ecx
419513:	0f 84 b5 00 00 00    	je     0x4195ce
419519:	83 f9 02             	cmp    $0x2,%ecx
41951c:	0f 8f 9c 00 00 00    	jg     0x4195be
419522:	8b 55 fc             	mov    -0x4(%ebp),%edx
419525:	33 f6                	xor    %esi,%esi
419527:	46                   	inc    %esi
419528:	3b 75 10             	cmp    0x10(%ebp),%esi
41952b:	73 54                	jae    0x419581
41952d:	8a 24 1e             	mov    (%esi,%ebx,1),%ah
419530:	8a c4                	mov    %ah,%al
419532:	24 c0                	and    $0xc0,%al
419534:	3c 80                	cmp    $0x80,%al
419536:	0f 85 82 00 00 00    	jne    0x4195be
41953c:	0f b6 c4             	movzbl %ah,%eax
41953f:	83 e0 3f             	and    $0x3f,%eax
419542:	c1 e2 06             	shl    $0x6,%edx
419545:	0b d0                	or     %eax,%edx
419547:	46                   	inc    %esi
419548:	83 e9 01             	sub    $0x1,%ecx
41954b:	75 db                	jne    0x419528
41954d:	8d 82 00 28 ff ff    	lea    -0xd800(%edx),%eax
419553:	3d ff 07 00 00       	cmp    $0x7ff,%eax
419558:	76 64                	jbe    0x4195be
41955a:	8b 4d 08             	mov    0x8(%ebp),%ecx
41955d:	66 89 11             	mov    %dx,(%ecx)
419560:	8b c6                	mov    %esi,%eax
419562:	eb 76                	jmp    0x4195da
419564:	0f b6 d2             	movzbl %dl,%edx
419567:	33 f6                	xor    %esi,%esi
419569:	8b ca                	mov    %edx,%ecx
41956b:	46                   	inc    %esi
41956c:	83 e1 07             	and    $0x7,%ecx
41956f:	c1 ea 03             	shr    $0x3,%edx
419572:	8b c6                	mov    %esi,%eax
419574:	d3 e0                	shl    %cl,%eax
419576:	84 44 3a 0c          	test   %al,0xc(%edx,%edi,1)
41957a:	74 0f                	je     0x41958b
41957c:	39 75 10             	cmp    %esi,0x10(%ebp)
41957f:	75 05                	jne    0x419586
419581:	6a fe                	push   $0xfffffffe
419583:	58                   	pop    %eax
419584:	eb 54                	jmp    0x4195da
419586:	6a 02                	push   $0x2
419588:	5b                   	pop    %ebx
419589:	eb 02                	jmp    0x41958d
41958b:	8b de                	mov    %esi,%ebx
41958d:	56                   	push   %esi
41958e:	ff 75 08             	push   0x8(%ebp)
419591:	53                   	push   %ebx
419592:	ff 75 0c             	push   0xc(%ebp)
419595:	6a 09                	push   $0x9
419597:	ff 37                	push   (%edi)
419599:	ff 15 e0 e0 43 00    	call   *0x43e0e0
41959f:	85 c0                	test   %eax,%eax
4195a1:	74 1b                	je     0x4195be
4195a3:	8b c3                	mov    %ebx,%eax
4195a5:	eb 33                	jmp    0x4195da
4195a7:	33 f6                	xor    %esi,%esi
4195a9:	46                   	inc    %esi
4195aa:	56                   	push   %esi
4195ab:	ff 75 08             	push   0x8(%ebp)
4195ae:	56                   	push   %esi
4195af:	53                   	push   %ebx
4195b0:	6a 09                	push   $0x9
4195b2:	ff 37                	push   (%edi)
4195b4:	ff 15 e0 e0 43 00    	call   *0x43e0e0
4195ba:	85 c0                	test   %eax,%eax
4195bc:	75 a2                	jne    0x419560
4195be:	e8 6d a4 00 00       	call   0x423a30
4195c3:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
4195c9:	83 c8 ff             	or     $0xffffffff,%eax
4195cc:	eb 0c                	jmp    0x4195da
4195ce:	8b 45 08             	mov    0x8(%ebp),%eax
4195d1:	0f b6 ca             	movzbl %dl,%ecx
4195d4:	66 89 08             	mov    %cx,(%eax)
4195d7:	33 c0                	xor    %eax,%eax
4195d9:	40                   	inc    %eax
4195da:	5f                   	pop    %edi
4195db:	5e                   	pop    %esi
4195dc:	5b                   	pop    %ebx
4195dd:	c9                   	leave
4195de:	c3                   	ret
4195df:	55                   	push   %ebp
4195e0:	8b ec                	mov    %esp,%ebp
4195e2:	8a 4d 0c             	mov    0xc(%ebp),%cl
4195e5:	84 c9                	test   %cl,%cl
4195e7:	78 04                	js     0x4195ed
4195e9:	33 c0                	xor    %eax,%eax
4195eb:	5d                   	pop    %ebp
4195ec:	c3                   	ret
4195ed:	8a c1                	mov    %cl,%al
4195ef:	24 e0                	and    $0xe0,%al
4195f1:	3c c0                	cmp    $0xc0,%al
4195f3:	75 10                	jne    0x419605
4195f5:	8b 45 08             	mov    0x8(%ebp),%eax
4195f8:	0f b6 c9             	movzbl %cl,%ecx
4195fb:	83 e1 1f             	and    $0x1f,%ecx
4195fe:	89 08                	mov    %ecx,(%eax)
419600:	33 c0                	xor    %eax,%eax
419602:	40                   	inc    %eax
419603:	5d                   	pop    %ebp
419604:	c3                   	ret
419605:	8a c1                	mov    %cl,%al
419607:	24 f0                	and    $0xf0,%al
419609:	3c e0                	cmp    $0xe0,%al
41960b:	75 10                	jne    0x41961d
41960d:	0f b6 c9             	movzbl %cl,%ecx
419610:	83 e1 0f             	and    $0xf,%ecx
419613:	6a 02                	push   $0x2
419615:	8b 45 08             	mov    0x8(%ebp),%eax
419618:	89 08                	mov    %ecx,(%eax)
41961a:	58                   	pop    %eax
41961b:	5d                   	pop    %ebp
41961c:	c3                   	ret
41961d:	8a c1                	mov    %cl,%al
41961f:	24 f8                	and    $0xf8,%al
419621:	3c f0                	cmp    $0xf0,%al
419623:	75 0a                	jne    0x41962f
419625:	0f b6 c9             	movzbl %cl,%ecx
419628:	83 e1 07             	and    $0x7,%ecx
41962b:	6a 03                	push   $0x3
41962d:	eb e6                	jmp    0x419615
41962f:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
419634:	5d                   	pop    %ebp
419635:	c3                   	ret
419636:	55                   	push   %ebp
419637:	8b ec                	mov    %esp,%ebp
419639:	51                   	push   %ecx
41963a:	8d 45 fc             	lea    -0x4(%ebp),%eax
41963d:	50                   	push   %eax
41963e:	6a 01                	push   $0x1
419640:	8d 45 08             	lea    0x8(%ebp),%eax
419643:	50                   	push   %eax
419644:	6a 01                	push   $0x1
419646:	ff 15 58 e1 43 00    	call   *0x43e158
41964c:	f7 d8                	neg    %eax
41964e:	1b c0                	sbb    %eax,%eax
419650:	66 23 45 fc          	and    -0x4(%ebp),%ax
419654:	c9                   	leave
419655:	c3                   	ret
419656:	55                   	push   %ebp
419657:	8b ec                	mov    %esp,%ebp
419659:	ff 75 10             	push   0x10(%ebp)
41965c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41965f:	2b 4d 08             	sub    0x8(%ebp),%ecx
419662:	d1 f9                	sar    $1,%ecx
419664:	51                   	push   %ecx
419665:	ff 75 08             	push   0x8(%ebp)
419668:	6a 01                	push   $0x1
41966a:	ff 15 58 e1 43 00    	call   *0x43e158
419670:	8b 45 0c             	mov    0xc(%ebp),%eax
419673:	5d                   	pop    %ebp
419674:	c3                   	ret
419675:	55                   	push   %ebp
419676:	8b ec                	mov    %esp,%ebp
419678:	51                   	push   %ecx
419679:	66 8b 4d 08          	mov    0x8(%ebp),%cx
41967d:	b8 ff ff 00 00       	mov    $0xffff,%eax
419682:	66 89 4d fc          	mov    %cx,-0x4(%ebp)
419686:	66 3b c8             	cmp    %ax,%cx
419689:	74 45                	je     0x4196d0
41968b:	8b 45 0c             	mov    0xc(%ebp),%eax
41968e:	ba 00 01 00 00       	mov    $0x100,%edx
419693:	8b 40 0c             	mov    0xc(%eax),%eax
419696:	85 c0                	test   %eax,%eax
419698:	75 14                	jne    0x4196ae
41969a:	66 3b ca             	cmp    %dx,%cx
41969d:	73 0f                	jae    0x4196ae
41969f:	8d 41 bf             	lea    -0x41(%ecx),%eax
4196a2:	66 83 f8 19          	cmp    $0x19,%ax
4196a6:	77 28                	ja     0x4196d0
4196a8:	66 83 c1 20          	add    $0x20,%cx
4196ac:	eb 22                	jmp    0x4196d0
4196ae:	6a 01                	push   $0x1
4196b0:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4196b3:	51                   	push   %ecx
4196b4:	6a 01                	push   $0x1
4196b6:	8d 4d 08             	lea    0x8(%ebp),%ecx
4196b9:	51                   	push   %ecx
4196ba:	52                   	push   %edx
4196bb:	50                   	push   %eax
4196bc:	e8 3b 02 00 00       	call   0x4198fc
4196c1:	66 8b 4d 08          	mov    0x8(%ebp),%cx
4196c5:	83 c4 18             	add    $0x18,%esp
4196c8:	85 c0                	test   %eax,%eax
4196ca:	74 04                	je     0x4196d0
4196cc:	66 8b 4d fc          	mov    -0x4(%ebp),%cx
4196d0:	66 8b c1             	mov    %cx,%ax
4196d3:	c9                   	leave
4196d4:	c3                   	ret
4196d5:	55                   	push   %ebp
4196d6:	8b ec                	mov    %esp,%ebp
4196d8:	56                   	push   %esi
4196d9:	57                   	push   %edi
4196da:	8b 7d 08             	mov    0x8(%ebp),%edi
4196dd:	33 f6                	xor    %esi,%esi
4196df:	6a 2c                	push   $0x2c
4196e1:	56                   	push   %esi
4196e2:	57                   	push   %edi
4196e3:	e8 28 25 00 00       	call   0x41bc10
4196e8:	83 c4 0c             	add    $0xc,%esp
4196eb:	e8 e0 d4 00 00       	call   0x426bd0
4196f0:	89 07                	mov    %eax,(%edi)
4196f2:	e8 25 d5 00 00       	call   0x426c1c
4196f7:	89 47 04             	mov    %eax,0x4(%edi)
4196fa:	e8 f6 d4 00 00       	call   0x426bf5
4196ff:	8b 48 08             	mov    0x8(%eax),%ecx
419702:	33 c0                	xor    %eax,%eax
419704:	85 c9                	test   %ecx,%ecx
419706:	0f 94 c0             	sete   %al
419709:	89 47 08             	mov    %eax,0x8(%edi)
41970c:	85 c9                	test   %ecx,%ecx
41970e:	74 32                	je     0x419742
419710:	53                   	push   %ebx
419711:	e8 96 d4 00 00       	call   0x426bac
419716:	8b d8                	mov    %eax,%ebx
419718:	33 c0                	xor    %eax,%eax
41971a:	66 39 04 73          	cmp    %ax,(%ebx,%esi,2)
41971e:	7d 18                	jge    0x419738
419720:	8b d6                	mov    %esi,%edx
419722:	8b c6                	mov    %esi,%eax
419724:	c1 ea 03             	shr    $0x3,%edx
419727:	83 e0 07             	and    $0x7,%eax
41972a:	0f b6 4c 3a 0c       	movzbl 0xc(%edx,%edi,1),%ecx
41972f:	0f ab c1             	bts    %eax,%ecx
419732:	33 c0                	xor    %eax,%eax
419734:	88 4c 3a 0c          	mov    %cl,0xc(%edx,%edi,1)
419738:	46                   	inc    %esi
419739:	81 fe 00 01 00 00    	cmp    $0x100,%esi
41973f:	7c d9                	jl     0x41971a
419741:	5b                   	pop    %ebx
419742:	8b c7                	mov    %edi,%eax
419744:	5f                   	pop    %edi
419745:	5e                   	pop    %esi
419746:	5d                   	pop    %ebp
419747:	c3                   	ret
419748:	55                   	push   %ebp
419749:	8b ec                	mov    %esp,%ebp
41974b:	51                   	push   %ecx
41974c:	8b 45 14             	mov    0x14(%ebp),%eax
41974f:	8b 4d 08             	mov    0x8(%ebp),%ecx
419752:	56                   	push   %esi
419753:	33 f6                	xor    %esi,%esi
419755:	39 70 08             	cmp    %esi,0x8(%eax)
419758:	74 15                	je     0x41976f
41975a:	66 8b 45 0c          	mov    0xc(%ebp),%ax
41975e:	ba ff 00 00 00       	mov    $0xff,%edx
419763:	66 3b c2             	cmp    %dx,%ax
419766:	77 2b                	ja     0x419793
419768:	88 01                	mov    %al,(%ecx)
41976a:	33 c0                	xor    %eax,%eax
41976c:	40                   	inc    %eax
41976d:	eb 32                	jmp    0x4197a1
41976f:	8d 55 fc             	lea    -0x4(%ebp),%edx
419772:	89 75 fc             	mov    %esi,-0x4(%ebp)
419775:	52                   	push   %edx
419776:	56                   	push   %esi
419777:	ff 70 04             	push   0x4(%eax)