4225a6:	5e                   	pop    %esi
4225a7:	5b                   	pop    %ebx
4225a8:	8b e5                	mov    %ebp,%esp
4225aa:	5d                   	pop    %ebp
4225ab:	c2 04 00             	ret    $0x4
4225ae:	8b c0                	mov    %eax,%eax
4225b0:	53                   	push   %ebx
4225b1:	8b d8                	mov    %eax,%ebx
4225b3:	8b c3                	mov    %ebx,%eax
4225b5:	e8 ea 02 00 00       	call   0x4228a4
4225ba:	8b 43 28             	mov    0x28(%ebx),%eax
4225bd:	33 d2                	xor    %edx,%edx
4225bf:	89 50 50             	mov    %edx,0x50(%eax)
4225c2:	33 d2                	xor    %edx,%edx
4225c4:	89 50 54             	mov    %edx,0x54(%eax)
4225c7:	83 c0 6c             	add    $0x6c,%eax
4225ca:	e8 7d a9 fe ff       	call   0x40cf4c
4225cf:	5b                   	pop    %ebx
4225d0:	c3                   	ret
4225d1:	8d 40 00             	lea    0x0(%eax),%eax
4225d4:	c6 40 31 00          	movb   $0x0,0x31(%eax)
4225d8:	e8 af d1 ff ff       	call   0x41f78c
4225dd:	c3                   	ret
4225de:	8b c0                	mov    %eax,%eax
4225e0:	53                   	push   %ebx
4225e1:	56                   	push   %esi
4225e2:	57                   	push   %edi
4225e3:	83 c4 ac             	add    $0xffffffac,%esp
4225e6:	8b d8                	mov    %eax,%ebx
4225e8:	b2 01                	mov    $0x1,%dl
4225ea:	a1 20 21 41 00       	mov    0x412120,%eax
4225ef:	e8 24 0c fe ff       	call   0x403218
4225f4:	8b f0                	mov    %eax,%esi
4225f6:	8b d6                	mov    %esi,%edx
4225f8:	8b c3                	mov    %ebx,%eax
4225fa:	8b 08                	mov    (%eax),%ecx
4225fc:	ff 51 58             	call   *0x58(%ecx)
4225ff:	8b c6                	mov    %esi,%eax
422601:	8b 10                	mov    (%eax),%edx
422603:	ff 12                	call   *(%edx)
422605:	52                   	push   %edx
422606:	50                   	push   %eax
422607:	8b c6                	mov    %esi,%eax
422609:	e8 f2 3b ff ff       	call   0x416200
42260e:	8b 43 28             	mov    0x28(%ebx),%eax
422611:	56                   	push   %esi
422612:	8d 70 18             	lea    0x18(%eax),%esi
422615:	8d 7c 24 04          	lea    0x4(%esp),%edi
422619:	b9 15 00 00 00       	mov    $0x15,%ecx
42261e:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
422620:	5e                   	pop    %esi
422621:	33 c0                	xor    %eax,%eax
422623:	89 44 24 14          	mov    %eax,0x14(%esp)
422627:	8b c3                	mov    %ebx,%eax
422629:	e8 a6 04 00 00       	call   0x422ad4
42262e:	8d 43 2c             	lea    0x2c(%ebx),%eax
422631:	e8 16 a9 fe ff       	call   0x40cf4c
422636:	54                   	push   %esp
422637:	8b 43 28             	mov    0x28(%ebx),%eax
42263a:	8a 40 70             	mov    0x70(%eax),%al
42263d:	50                   	push   %eax
42263e:	56                   	push   %esi
42263f:	33 c9                	xor    %ecx,%ecx
422641:	33 d2                	xor    %edx,%edx
422643:	8b c3                	mov    %ebx,%eax
422645:	e8 5a 07 00 00       	call   0x422da4
42264a:	83 c4 54             	add    $0x54,%esp
42264d:	5f                   	pop    %edi
42264e:	5e                   	pop    %esi
42264f:	5b                   	pop    %ebx
422650:	c3                   	ret
422651:	8d 40 00             	lea    0x0(%eax),%eax
422654:	55                   	push   %ebp
422655:	8b ec                	mov    %esp,%ebp
422657:	83 c4 e4             	add    $0xffffffe4,%esp
42265a:	53                   	push   %ebx
42265b:	56                   	push   %esi
42265c:	57                   	push   %edi
42265d:	8b f9                	mov    %ecx,%edi
42265f:	89 55 fc             	mov    %edx,-0x4(%ebp)
422662:	8b d8                	mov    %eax,%ebx
422664:	8b 73 28             	mov    0x28(%ebx),%esi
422667:	8a 15 a0 28 42 00    	mov    0x4228a0,%dl
42266d:	8b 45 fc             	mov    -0x4(%ebp),%eax
422670:	e8 3b bc ff ff       	call   0x41e2b0
422675:	8b c3                	mov    %ebx,%eax
422677:	e8 68 05 00 00       	call   0x422be4
42267c:	33 c0                	xor    %eax,%eax
42267e:	89 45 f8             	mov    %eax,-0x8(%ebp)
422681:	c6 45 f7 00          	movb   $0x0,-0x9(%ebp)
422685:	8b 46 10             	mov    0x10(%esi),%eax
422688:	85 c0                	test   %eax,%eax
42268a:	74 22                	je     0x4226ae
42268c:	6a ff                	push   $0xffffffff
42268e:	50                   	push   %eax
42268f:	8b 45 fc             	mov    -0x4(%ebp),%eax
422692:	8b 40 04             	mov    0x4(%eax),%eax
422695:	50                   	push   %eax
422696:	e8 f1 3c fe ff       	call   0x40638c
42269b:	89 45 f8             	mov    %eax,-0x8(%ebp)
42269e:	8b 45 fc             	mov    -0x4(%ebp),%eax
4226a1:	8b 40 04             	mov    0x4(%eax),%eax
4226a4:	50                   	push   %eax
4226a5:	e8 aa 3c fe ff       	call   0x406354
4226aa:	c6 45 f7 01          	movb   $0x1,-0x9(%ebp)
4226ae:	6a 0c                	push   $0xc
4226b0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4226b3:	8b 40 04             	mov    0x4(%eax),%eax
4226b6:	50                   	push   %eax
4226b7:	e8 f0 3b fe ff       	call   0x4062ac
4226bc:	50                   	push   %eax
4226bd:	6a 0e                	push   $0xe
4226bf:	8b 45 fc             	mov    -0x4(%ebp),%eax
4226c2:	8b 40 04             	mov    0x4(%eax),%eax
4226c5:	50                   	push   %eax
4226c6:	e8 e1 3b fe ff       	call   0x4062ac
4226cb:	8b d0                	mov    %eax,%edx
4226cd:	58                   	pop    %eax
4226ce:	f7 ea                	imul   %edx
4226d0:	83 f8 08             	cmp    $0x8,%eax
4226d3:	7f 0f                	jg     0x4226e4
4226d5:	0f b7 56 2a          	movzwl 0x2a(%esi),%edx
4226d9:	0f b7 4e 28          	movzwl 0x28(%esi),%ecx
4226dd:	0f af d1             	imul   %ecx,%edx
4226e0:	3b c2                	cmp    %edx,%eax
4226e2:	7c 04                	jl     0x4226e8
4226e4:	33 c0                	xor    %eax,%eax
4226e6:	eb 02                	jmp    0x4226ea
4226e8:	b0 01                	mov    $0x1,%al
4226ea:	84 c0                	test   %al,%al
4226ec:	74 38                	je     0x422726
4226ee:	8d 45 ef             	lea    -0x11(%ebp),%eax
4226f1:	50                   	push   %eax
4226f2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4226f5:	8b 40 04             	mov    0x4(%eax),%eax
4226f8:	50                   	push   %eax
4226f9:	e8 76 3b fe ff       	call   0x406274
4226fe:	6a 04                	push   $0x4
422700:	8b 45 fc             	mov    -0x4(%ebp),%eax
422703:	8b 40 04             	mov    0x4(%eax),%eax
422706:	50                   	push   %eax
422707:	e8 c0 3c fe ff       	call   0x4063cc
42270c:	8d 45 ef             	lea    -0x11(%ebp),%eax
42270f:	50                   	push   %eax
422710:	8b 45 f3             	mov    -0xd(%ebp),%eax
422713:	50                   	push   %eax
422714:	8b 45 ef             	mov    -0x11(%ebp),%eax
422717:	50                   	push   %eax
422718:	8b 45 fc             	mov    -0x4(%ebp),%eax
42271b:	8b 40 04             	mov    0x4(%eax),%eax
42271e:	50                   	push   %eax
42271f:	e8 80 3c fe ff       	call   0x4063a4
422724:	eb 1b                	jmp    0x422741
422726:	8b c3                	mov    %ebx,%eax
422728:	e8 b3 02 00 00       	call   0x4229e0
42272d:	84 c0                	test   %al,%al
42272f:	75 10                	jne    0x422741
422731:	6a 03                	push   $0x3
422733:	8b 45 fc             	mov    -0x4(%ebp),%eax
422736:	e8 a1 ba ff ff       	call   0x41e1dc
42273b:	50                   	push   %eax
42273c:	e8 8b 3c fe ff       	call   0x4063cc
422741:	33 c0                	xor    %eax,%eax
422743:	55                   	push   %ebp
422744:	68 90 28 42 00       	push   $0x422890
422749:	64 ff 30             	push   %fs:(%eax)
42274c:	64 89 20             	mov    %esp,%fs:(%eax)
42274f:	8b c3                	mov    %ebx,%eax
422751:	8b 10                	mov    (%eax),%edx
422753:	ff 52 28             	call   *0x28(%edx)
422756:	84 c0                	test   %al,%al
422758:	74 07                	je     0x422761
42275a:	8b c3                	mov    %ebx,%eax
42275c:	e8 23 04 00 00       	call   0x422b84
422761:	8b c3                	mov    %ebx,%eax
422763:	e8 bc 01 00 00       	call   0x422924
422768:	8a 15 a0 28 42 00    	mov    0x4228a0,%dl
42276e:	e8 3d bb ff ff       	call   0x41e2b0
422773:	8b c3                	mov    %ebx,%eax
422775:	8b 10                	mov    (%eax),%edx
422777:	ff 52 28             	call   *0x28(%edx)
42277a:	84 c0                	test   %al,%al
42277c:	0f 84 aa 00 00 00    	je     0x42282c
422782:	33 c0                	xor    %eax,%eax
422784:	89 45 e4             	mov    %eax,-0x1c(%ebp)
422787:	33 c0                	xor    %eax,%eax
422789:	89 45 e8             	mov    %eax,-0x18(%ebp)
42278c:	33 c0                	xor    %eax,%eax
42278e:	55                   	push   %ebp
42278f:	68 25 28 42 00       	push   $0x422825
422794:	64 ff 30             	push   %fs:(%eax)
422797:	64 89 20             	mov    %esp,%fs:(%eax)
42279a:	6a 00                	push   $0x0
42279c:	e8 63 3a fe ff       	call   0x406204
4227a1:	e8 2e be ff ff       	call   0x41e5d4
4227a6:	89 45 e8             	mov    %eax,-0x18(%ebp)
4227a9:	8b 46 0c             	mov    0xc(%esi),%eax
4227ac:	50                   	push   %eax
4227ad:	8b 45 e8             	mov    -0x18(%ebp),%eax
4227b0:	50                   	push   %eax
4227b1:	e8 ce 3b fe ff       	call   0x406384
4227b6:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4227b9:	8b 47 08             	mov    0x8(%edi),%eax
4227bc:	2b 07                	sub    (%edi),%eax
4227be:	50                   	push   %eax
4227bf:	8b 47 0c             	mov    0xc(%edi),%eax
4227c2:	2b 47 04             	sub    0x4(%edi),%eax
4227c5:	50                   	push   %eax
4227c6:	8b c3                	mov    %ebx,%eax
4227c8:	e8 57 01 00 00       	call   0x422924
4227cd:	8b 40 04             	mov    0x4(%eax),%eax
4227d0:	50                   	push   %eax
4227d1:	6a 00                	push   $0x0
4227d3:	6a 00                	push   $0x0
4227d5:	8b 46 1c             	mov    0x1c(%esi),%eax
4227d8:	50                   	push   %eax
4227d9:	8b 46 20             	mov    0x20(%esi),%eax
4227dc:	50                   	push   %eax
4227dd:	8b 45 e8             	mov    -0x18(%ebp),%eax
4227e0:	50                   	push   %eax
4227e1:	6a 00                	push   $0x0
4227e3:	6a 00                	push   $0x0
4227e5:	8b 4f 04             	mov    0x4(%edi),%ecx
4227e8:	8b 17                	mov    (%edi),%edx
4227ea:	8b 45 fc             	mov    -0x4(%ebp),%eax
4227ed:	8b 40 04             	mov    0x4(%eax),%eax
4227f0:	e8 83 bf ff ff       	call   0x41e778
4227f5:	33 c0                	xor    %eax,%eax
4227f7:	5a                   	pop    %edx
4227f8:	59                   	pop    %ecx
4227f9:	59                   	pop    %ecx
4227fa:	64 89 10             	mov    %edx,%fs:(%eax)
4227fd:	68 6a 28 42 00       	push   $0x42286a
422802:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
422806:	74 0d                	je     0x422815
422808:	8b 45 e4             	mov    -0x1c(%ebp),%eax
42280b:	50                   	push   %eax
42280c:	8b 45 e8             	mov    -0x18(%ebp),%eax
42280f:	50                   	push   %eax
422810:	e8 6f 3b fe ff       	call   0x406384
422815:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
422819:	74 09                	je     0x422824
42281b:	8b 45 e8             	mov    -0x18(%ebp),%eax
42281e:	50                   	push   %eax
42281f:	e8 28 3a fe ff       	call   0x40624c
422824:	c3                   	ret
422825:	e9 72 11 fe ff       	jmp    0x40399c
42282a:	eb d6                	jmp    0x422802
42282c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42282f:	8b 40 20             	mov    0x20(%eax),%eax
422832:	50                   	push   %eax
422833:	8b 46 20             	mov    0x20(%esi),%eax
422836:	50                   	push   %eax
422837:	8b 46 1c             	mov    0x1c(%esi),%eax
42283a:	50                   	push   %eax
42283b:	6a 00                	push   $0x0
42283d:	6a 00                	push   $0x0
42283f:	8b c3                	mov    %ebx,%eax
422841:	e8 de 00 00 00       	call   0x422924
422846:	8b 40 04             	mov    0x4(%eax),%eax
422849:	50                   	push   %eax
42284a:	8b 47 0c             	mov    0xc(%edi),%eax
42284d:	2b 47 04             	sub    0x4(%edi),%eax
422850:	50                   	push   %eax
422851:	8b 47 08             	mov    0x8(%edi),%eax
422854:	2b 07                	sub    (%edi),%eax
422856:	50                   	push   %eax
422857:	8b 47 04             	mov    0x4(%edi),%eax
42285a:	50                   	push   %eax
42285b:	8b 07                	mov    (%edi),%eax
42285d:	50                   	push   %eax
42285e:	8b 45 fc             	mov    -0x4(%ebp),%eax
422861:	8b 40 04             	mov    0x4(%eax),%eax
422864:	50                   	push   %eax
422865:	e8 8a 3b fe ff       	call   0x4063f4
42286a:	33 c0                	xor    %eax,%eax
42286c:	5a                   	pop    %edx
42286d:	59                   	pop    %ecx
42286e:	59                   	pop    %ecx
42286f:	64 89 10             	mov    %edx,%fs:(%eax)
422872:	68 97 28 42 00       	push   $0x422897
422877:	80 7d f7 00          	cmpb   $0x0,-0x9(%ebp)
42287b:	74 12                	je     0x42288f
42287d:	6a ff                	push   $0xffffffff
42287f:	8b 45 f8             	mov    -0x8(%ebp),%eax
422882:	50                   	push   %eax
422883:	8b 45 fc             	mov    -0x4(%ebp),%eax
422886:	8b 40 04             	mov    0x4(%eax),%eax
422889:	50                   	push   %eax
42288a:	e8 fd 3a fe ff       	call   0x40638c
42288f:	c3                   	ret
422890:	e9 07 11 fe ff       	jmp    0x40399c
422895:	eb e0                	jmp    0x422877
422897:	5f                   	pop    %edi
422898:	5e                   	pop    %esi
422899:	5b                   	pop    %ebx
42289a:	8b e5                	mov    %ebp,%esp
42289c:	5d                   	pop    %ebp
42289d:	c3                   	ret
42289e:	00 00                	add    %al,(%eax)
4228a0:	0f 00 00             	sldt   (%eax)
4228a3:	00 53 56             	add    %dl,0x56(%ebx)
4228a6:	8b f0                	mov    %eax,%esi
4228a8:	8b 5e 28             	mov    0x28(%esi),%ebx
4228ab:	83 7b 04 01          	cmpl   $0x1,0x4(%ebx)
4228af:	7e 27                	jle    0x4228d8
4228b1:	8b c6                	mov    %esi,%eax
4228b3:	e8 2c 02 00 00       	call   0x422ae4
4228b8:	80 7b 71 00          	cmpb   $0x0,0x71(%ebx)
4228bc:	74 04                	je     0x4228c2
4228be:	33 c0                	xor    %eax,%eax
4228c0:	eb 03                	jmp    0x4228c5
4228c2:	8b 43 10             	mov    0x10(%ebx),%eax
4228c5:	8d 53 18             	lea    0x18(%ebx),%edx
4228c8:	52                   	push   %edx
4228c9:	8b c8                	mov    %eax,%ecx
4228cb:	8b 53 08             	mov    0x8(%ebx),%edx
4228ce:	8b c6                	mov    %esi,%eax
4228d0:	e8 1b fc ff ff       	call   0x4224f0
4228d5:	5e                   	pop    %esi
4228d6:	5b                   	pop    %ebx
4228d7:	c3                   	ret
4228d8:	8b 43 08             	mov    0x8(%ebx),%eax
4228db:	85 c0                	test   %eax,%eax
4228dd:	74 25                	je     0x422904
4228df:	3b 43 14             	cmp    0x14(%ebx),%eax
4228e2:	74 20                	je     0x422904
4228e4:	8b 73 14             	mov    0x14(%ebx),%esi
4228e7:	85 f6                	test   %esi,%esi
4228e9:	74 0f                	je     0x4228fa
4228eb:	56                   	push   %esi
4228ec:	e8 6b 39 fe ff       	call   0x40625c
4228f1:	85 c0                	test   %eax,%eax
4228f3:	75 05                	jne    0x4228fa
4228f5:	e8 32 bc ff ff       	call   0x41e52c
4228fa:	33 c0                	xor    %eax,%eax
4228fc:	89 43 14             	mov    %eax,0x14(%ebx)
4228ff:	33 c0                	xor    %eax,%eax
422901:	89 43 2c             	mov    %eax,0x2c(%ebx)
422904:	5e                   	pop    %esi
422905:	5b                   	pop    %ebx
422906:	c3                   	ret
422907:	90                   	nop
422908:	8b 40 28             	mov    0x28(%eax),%eax
42290b:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
42290f:	75 0c                	jne    0x42291d
422911:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
422915:	75 06                	jne    0x42291d
422917:	83 78 6c 00          	cmpl   $0x0,0x6c(%eax)
42291b:	74 03                	je     0x422920