42855b:	83 c0 6c             	add    $0x6c,%eax
42855e:	e8 e9 57 fe ff       	call   0x40dd4c
428563:	5b                   	pop    %ebx
428564:	c3                   	ret
428565:	8d 40 00             	lea    0x0(%eax),%eax
428568:	c6 40 31 00          	movb   $0x0,0x31(%eax)
42856c:	e8 13 cf ff ff       	call   0x425484
428571:	c3                   	ret
428572:	8b c0                	mov    %eax,%eax
428574:	53                   	push   %ebx
428575:	56                   	push   %esi
428576:	57                   	push   %edi
428577:	83 c4 ac             	add    $0xffffffac,%esp
42857a:	8b d8                	mov    %eax,%ebx
42857c:	b2 01                	mov    $0x1,%dl
42857e:	a1 ec 5e 41 00       	mov    0x415eec,%eax
428583:	e8 3c b3 fd ff       	call   0x4038c4
428588:	8b f0                	mov    %eax,%esi
42858a:	8b d6                	mov    %esi,%edx
42858c:	8b c3                	mov    %ebx,%eax
42858e:	8b 08                	mov    (%eax),%ecx
428590:	ff 51 58             	call   *0x58(%ecx)
428593:	8b c6                	mov    %esi,%eax
428595:	8b 10                	mov    (%eax),%edx
428597:	ff 12                	call   *(%edx)
428599:	52                   	push   %edx
42859a:	50                   	push   %eax
42859b:	8b c6                	mov    %esi,%eax
42859d:	e8 ce 14 ff ff       	call   0x419a70
4285a2:	8b 43 28             	mov    0x28(%ebx),%eax
4285a5:	56                   	push   %esi
4285a6:	8d 70 18             	lea    0x18(%eax),%esi
4285a9:	8d 7c 24 04          	lea    0x4(%esp),%edi
4285ad:	b9 15 00 00 00       	mov    $0x15,%ecx
4285b2:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4285b4:	5e                   	pop    %esi
4285b5:	33 c0                	xor    %eax,%eax
4285b7:	89 44 24 14          	mov    %eax,0x14(%esp)
4285bb:	8b c3                	mov    %ebx,%eax
4285bd:	e8 a6 04 00 00       	call   0x428a68
4285c2:	8d 43 2c             	lea    0x2c(%ebx),%eax
4285c5:	e8 82 57 fe ff       	call   0x40dd4c
4285ca:	54                   	push   %esp
4285cb:	8b 43 28             	mov    0x28(%ebx),%eax
4285ce:	0f b6 40 70          	movzbl 0x70(%eax),%eax
4285d2:	50                   	push   %eax
4285d3:	56                   	push   %esi
4285d4:	33 c9                	xor    %ecx,%ecx
4285d6:	33 d2                	xor    %edx,%edx
4285d8:	8b c3                	mov    %ebx,%eax
4285da:	e8 f9 06 00 00       	call   0x428cd8
4285df:	83 c4 54             	add    $0x54,%esp
4285e2:	5f                   	pop    %edi
4285e3:	5e                   	pop    %esi
4285e4:	5b                   	pop    %ebx
4285e5:	c3                   	ret
4285e6:	8b c0                	mov    %eax,%eax
4285e8:	55                   	push   %ebp
4285e9:	8b ec                	mov    %esp,%ebp
4285eb:	83 c4 e4             	add    $0xffffffe4,%esp
4285ee:	53                   	push   %ebx
4285ef:	56                   	push   %esi
4285f0:	57                   	push   %edi
4285f1:	8b f9                	mov    %ecx,%edi
4285f3:	89 55 fc             	mov    %edx,-0x4(%ebp)
4285f6:	8b d8                	mov    %eax,%ebx
4285f8:	8b 73 28             	mov    0x28(%ebx),%esi
4285fb:	0f b6 15 34 88 42 00 	movzbl 0x428834,%edx
428602:	8b 45 fc             	mov    -0x4(%ebp),%eax
428605:	e8 7e b9 ff ff       	call   0x423f88
42860a:	8b c3                	mov    %ebx,%eax
42860c:	e8 67 05 00 00       	call   0x428b78
428611:	33 c0                	xor    %eax,%eax
428613:	89 45 f8             	mov    %eax,-0x8(%ebp)
428616:	c6 45 f7 00          	movb   $0x0,-0x9(%ebp)
42861a:	8b 46 10             	mov    0x10(%esi),%eax
42861d:	85 c0                	test   %eax,%eax
42861f:	74 22                	je     0x428643
428621:	6a ff                	push   $0xffffffff
428623:	50                   	push   %eax
428624:	8b 45 fc             	mov    -0x4(%ebp),%eax
428627:	8b 40 04             	mov    0x4(%eax),%eax
42862a:	50                   	push   %eax
42862b:	e8 80 e6 fd ff       	call   0x406cb0
428630:	89 45 f8             	mov    %eax,-0x8(%ebp)
428633:	8b 45 fc             	mov    -0x4(%ebp),%eax
428636:	8b 40 04             	mov    0x4(%eax),%eax
428639:	50                   	push   %eax
42863a:	e8 49 e6 fd ff       	call   0x406c88
42863f:	c6 45 f7 01          	movb   $0x1,-0x9(%ebp)
428643:	6a 0c                	push   $0xc
428645:	8b 45 fc             	mov    -0x4(%ebp),%eax
428648:	8b 40 04             	mov    0x4(%eax),%eax
42864b:	50                   	push   %eax
42864c:	e8 87 e5 fd ff       	call   0x406bd8
428651:	50                   	push   %eax
428652:	6a 0e                	push   $0xe
428654:	8b 45 fc             	mov    -0x4(%ebp),%eax
428657:	8b 40 04             	mov    0x4(%eax),%eax
42865a:	50                   	push   %eax
42865b:	e8 78 e5 fd ff       	call   0x406bd8
428660:	8b d0                	mov    %eax,%edx
428662:	58                   	pop    %eax
428663:	f7 ea                	imul   %edx
428665:	83 f8 08             	cmp    $0x8,%eax
428668:	7f 0f                	jg     0x428679
42866a:	0f b7 56 2a          	movzwl 0x2a(%esi),%edx
42866e:	0f b7 4e 28          	movzwl 0x28(%esi),%ecx
428672:	0f af d1             	imul   %ecx,%edx
428675:	3b c2                	cmp    %edx,%eax
428677:	7c 04                	jl     0x42867d
428679:	33 c0                	xor    %eax,%eax
42867b:	eb 02                	jmp    0x42867f
42867d:	b0 01                	mov    $0x1,%al
42867f:	84 c0                	test   %al,%al
428681:	74 38                	je     0x4286bb
428683:	8d 45 ef             	lea    -0x11(%ebp),%eax
428686:	50                   	push   %eax
428687:	8b 45 fc             	mov    -0x4(%ebp),%eax
42868a:	8b 40 04             	mov    0x4(%eax),%eax
42868d:	50                   	push   %eax
42868e:	e8 15 e5 fd ff       	call   0x406ba8
428693:	6a 04                	push   $0x4
428695:	8b 45 fc             	mov    -0x4(%ebp),%eax
428698:	8b 40 04             	mov    0x4(%eax),%eax
42869b:	50                   	push   %eax
42869c:	e8 57 e6 fd ff       	call   0x406cf8
4286a1:	8d 45 ef             	lea    -0x11(%ebp),%eax
4286a4:	50                   	push   %eax
4286a5:	8b 45 f3             	mov    -0xd(%ebp),%eax
4286a8:	50                   	push   %eax
4286a9:	8b 45 ef             	mov    -0x11(%ebp),%eax
4286ac:	50                   	push   %eax
4286ad:	8b 45 fc             	mov    -0x4(%ebp),%eax
4286b0:	8b 40 04             	mov    0x4(%eax),%eax
4286b3:	50                   	push   %eax
4286b4:	e8 0f e6 fd ff       	call   0x406cc8
4286b9:	eb 1b                	jmp    0x4286d6
4286bb:	8b c3                	mov    %ebx,%eax
4286bd:	e8 b2 02 00 00       	call   0x428974
4286c2:	84 c0                	test   %al,%al
4286c4:	75 10                	jne    0x4286d6
4286c6:	6a 03                	push   $0x3
4286c8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4286cb:	e8 dc b7 ff ff       	call   0x423eac
4286d0:	50                   	push   %eax
4286d1:	e8 22 e6 fd ff       	call   0x406cf8
4286d6:	33 c0                	xor    %eax,%eax
4286d8:	55                   	push   %ebp
4286d9:	68 26 88 42 00       	push   $0x428826
4286de:	64 ff 30             	push   %fs:(%eax)
4286e1:	64 89 20             	mov    %esp,%fs:(%eax)
4286e4:	8b c3                	mov    %ebx,%eax
4286e6:	8b 10                	mov    (%eax),%edx
4286e8:	ff 52 28             	call   *0x28(%edx)
4286eb:	84 c0                	test   %al,%al
4286ed:	74 07                	je     0x4286f6
4286ef:	8b c3                	mov    %ebx,%eax
4286f1:	e8 22 04 00 00       	call   0x428b18
4286f6:	8b c3                	mov    %ebx,%eax
4286f8:	e8 bb 01 00 00       	call   0x4288b8
4286fd:	0f b6 15 34 88 42 00 	movzbl 0x428834,%edx
428704:	e8 7f b8 ff ff       	call   0x423f88
428709:	8b c3                	mov    %ebx,%eax
42870b:	8b 10                	mov    (%eax),%edx
42870d:	ff 52 28             	call   *0x28(%edx)
428710:	84 c0                	test   %al,%al
428712:	0f 84 aa 00 00 00    	je     0x4287c2
428718:	33 c0                	xor    %eax,%eax
42871a:	89 45 e4             	mov    %eax,-0x1c(%ebp)
42871d:	33 c0                	xor    %eax,%eax
42871f:	89 45 e8             	mov    %eax,-0x18(%ebp)
428722:	33 c0                	xor    %eax,%eax
428724:	55                   	push   %ebp
428725:	68 bb 87 42 00       	push   $0x4287bb
42872a:	64 ff 30             	push   %fs:(%eax)
42872d:	64 89 20             	mov    %esp,%fs:(%eax)
428730:	6a 00                	push   $0x0
428732:	e8 01 e4 fd ff       	call   0x406b38
428737:	e8 74 bb ff ff       	call   0x4242b0
42873c:	89 45 e8             	mov    %eax,-0x18(%ebp)
42873f:	8b 46 0c             	mov    0xc(%esi),%eax
428742:	50                   	push   %eax
428743:	8b 45 e8             	mov    -0x18(%ebp),%eax
428746:	50                   	push   %eax
428747:	e8 5c e5 fd ff       	call   0x406ca8
42874c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
42874f:	8b 47 08             	mov    0x8(%edi),%eax
428752:	2b 07                	sub    (%edi),%eax
428754:	50                   	push   %eax
428755:	8b 47 0c             	mov    0xc(%edi),%eax
428758:	2b 47 04             	sub    0x4(%edi),%eax
42875b:	50                   	push   %eax
42875c:	8b c3                	mov    %ebx,%eax
42875e:	e8 55 01 00 00       	call   0x4288b8
428763:	8b 40 04             	mov    0x4(%eax),%eax
428766:	50                   	push   %eax
428767:	6a 00                	push   $0x0
428769:	6a 00                	push   $0x0
42876b:	8b 46 1c             	mov    0x1c(%esi),%eax
42876e:	50                   	push   %eax
42876f:	8b 46 20             	mov    0x20(%esi),%eax
428772:	50                   	push   %eax
428773:	8b 45 e8             	mov    -0x18(%ebp),%eax
428776:	50                   	push   %eax
428777:	6a 00                	push   $0x0
428779:	6a 00                	push   $0x0
42877b:	8b 4f 04             	mov    0x4(%edi),%ecx
42877e:	8b 17                	mov    (%edi),%edx
428780:	8b 45 fc             	mov    -0x4(%ebp),%eax
428783:	8b 40 04             	mov    0x4(%eax),%eax
428786:	e8 d5 bc ff ff       	call   0x424460
42878b:	33 c0                	xor    %eax,%eax
42878d:	5a                   	pop    %edx
42878e:	59                   	pop    %ecx
42878f:	59                   	pop    %ecx
428790:	64 89 10             	mov    %edx,%fs:(%eax)
428793:	68 00 88 42 00       	push   $0x428800
428798:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
42879c:	74 0d                	je     0x4287ab
42879e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4287a1:	50                   	push   %eax
4287a2:	8b 45 e8             	mov    -0x18(%ebp),%eax
4287a5:	50                   	push   %eax
4287a6:	e8 fd e4 fd ff       	call   0x406ca8
4287ab:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
4287af:	74 09                	je     0x4287ba
4287b1:	8b 45 e8             	mov    -0x18(%ebp),%eax
4287b4:	50                   	push   %eax
4287b5:	e8 c6 e3 fd ff       	call   0x406b80
4287ba:	c3                   	ret
4287bb:	e9 c8 b8 fd ff       	jmp    0x404088
4287c0:	eb d6                	jmp    0x428798
4287c2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4287c5:	8b 40 20             	mov    0x20(%eax),%eax
4287c8:	50                   	push   %eax
4287c9:	8b 46 20             	mov    0x20(%esi),%eax
4287cc:	50                   	push   %eax
4287cd:	8b 46 1c             	mov    0x1c(%esi),%eax
4287d0:	50                   	push   %eax
4287d1:	6a 00                	push   $0x0
4287d3:	6a 00                	push   $0x0
4287d5:	8b c3                	mov    %ebx,%eax
4287d7:	e8 dc 00 00 00       	call   0x4288b8
4287dc:	8b 40 04             	mov    0x4(%eax),%eax
4287df:	50                   	push   %eax
4287e0:	8b 47 0c             	mov    0xc(%edi),%eax
4287e3:	2b 47 04             	sub    0x4(%edi),%eax
4287e6:	50                   	push   %eax
4287e7:	8b 47 08             	mov    0x8(%edi),%eax
4287ea:	2b 07                	sub    (%edi),%eax
4287ec:	50                   	push   %eax
4287ed:	8b 47 04             	mov    0x4(%edi),%eax
4287f0:	50                   	push   %eax
4287f1:	8b 07                	mov    (%edi),%eax
4287f3:	50                   	push   %eax
4287f4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4287f7:	8b 40 04             	mov    0x4(%eax),%eax
4287fa:	50                   	push   %eax
4287fb:	e8 20 e5 fd ff       	call   0x406d20
428800:	33 c0                	xor    %eax,%eax
428802:	5a                   	pop    %edx
428803:	59                   	pop    %ecx
428804:	59                   	pop    %ecx
428805:	64 89 10             	mov    %edx,%fs:(%eax)
428808:	68 2d 88 42 00       	push   $0x42882d
42880d:	80 7d f7 00          	cmpb   $0x0,-0x9(%ebp)
428811:	74 12                	je     0x428825
428813:	6a ff                	push   $0xffffffff
428815:	8b 45 f8             	mov    -0x8(%ebp),%eax
428818:	50                   	push   %eax
428819:	8b 45 fc             	mov    -0x4(%ebp),%eax
42881c:	8b 40 04             	mov    0x4(%eax),%eax
42881f:	50                   	push   %eax
428820:	e8 8b e4 fd ff       	call   0x406cb0
428825:	c3                   	ret
428826:	e9 5d b8 fd ff       	jmp    0x404088
42882b:	eb e0                	jmp    0x42880d
42882d:	5f                   	pop    %edi
42882e:	5e                   	pop    %esi
42882f:	5b                   	pop    %ebx
428830:	8b e5                	mov    %ebp,%esp
428832:	5d                   	pop    %ebp
428833:	c3                   	ret
428834:	0f 00 00             	sldt   (%eax)
428837:	00 53 56             	add    %dl,0x56(%ebx)
42883a:	8b f0                	mov    %eax,%esi
42883c:	8b 5e 28             	mov    0x28(%esi),%ebx
42883f:	83 7b 04 01          	cmpl   $0x1,0x4(%ebx)
428843:	7e 27                	jle    0x42886c
428845:	8b c6                	mov    %esi,%eax
428847:	e8 2c 02 00 00       	call   0x428a78
42884c:	80 7b 71 00          	cmpb   $0x0,0x71(%ebx)
428850:	74 04                	je     0x428856
428852:	33 c0                	xor    %eax,%eax
428854:	eb 03                	jmp    0x428859
428856:	8b 43 10             	mov    0x10(%ebx),%eax
428859:	8d 53 18             	lea    0x18(%ebx),%edx
42885c:	52                   	push   %edx
42885d:	8b c8                	mov    %eax,%ecx
42885f:	8b 53 08             	mov    0x8(%ebx),%edx
428862:	8b c6                	mov    %esi,%eax
428864:	e8 1b fc ff ff       	call   0x428484
428869:	5e                   	pop    %esi
42886a:	5b                   	pop    %ebx
42886b:	c3                   	ret
42886c:	8b 43 08             	mov    0x8(%ebx),%eax
42886f:	85 c0                	test   %eax,%eax
428871:	74 25                	je     0x428898
428873:	3b 43 14             	cmp    0x14(%ebx),%eax
428876:	74 20                	je     0x428898
428878:	8b 73 14             	mov    0x14(%ebx),%esi
42887b:	85 f6                	test   %esi,%esi
42887d:	74 0f                	je     0x42888e
42887f:	56                   	push   %esi
428880:	e8 0b e3 fd ff       	call   0x406b90
428885:	85 c0                	test   %eax,%eax
428887:	75 05                	jne    0x42888e
428889:	e8 7a b9 ff ff       	call   0x424208
42888e:	33 c0                	xor    %eax,%eax
428890:	89 43 14             	mov    %eax,0x14(%ebx)
428893:	33 c0                	xor    %eax,%eax
428895:	89 43 2c             	mov    %eax,0x2c(%ebx)
428898:	5e                   	pop    %esi
428899:	5b                   	pop    %ebx
42889a:	c3                   	ret
42889b:	90                   	nop
42889c:	8b 40 28             	mov    0x28(%eax),%eax
42889f:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
4288a3:	75 0c                	jne    0x4288b1
4288a5:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
4288a9:	75 06                	jne    0x4288b1
4288ab:	83 78 6c 00          	cmpl   $0x0,0x6c(%eax)
4288af:	74 03                	je     0x4288b4
4288b1:	33 c0                	xor    %eax,%eax
4288b3:	c3                   	ret
4288b4:	b0 01                	mov    $0x1,%al
4288b6:	c3                   	ret
4288b7:	90                   	nop
4288b8:	53                   	push   %ebx
4288b9:	56                   	push   %esi
4288ba:	8b d8                	mov    %eax,%ebx
4288bc:	83 7b 2c 00          	cmpl   $0x0,0x2c(%ebx)
4288c0:	75 35                	jne    0x4288f7
4288c2:	8b c3                	mov    %ebx,%eax
4288c4:	e8 af 01 00 00       	call   0x428a78
4288c9:	83 7b 2c 00          	cmpl   $0x0,0x2c(%ebx)
4288cd:	75 28                	jne    0x4288f7
4288cf:	8b cb                	mov    %ebx,%ecx
4288d1:	b2 01                	mov    $0x1,%dl