42a58c:	8b 45 e8             	mov    -0x18(%ebp),%eax
42a58f:	50                   	push   %eax
42a590:	8b 45 f4             	mov    -0xc(%ebp),%eax
42a593:	50                   	push   %eax
42a594:	e8 27 c6 fd ff       	call   0x406bc0
42a599:	89 45 d8             	mov    %eax,-0x28(%ebp)
42a59c:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
42a5a0:	74 06                	je     0x42a5a8
42a5a2:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
42a5a6:	75 15                	jne    0x42a5bd
42a5a8:	e8 73 c4 fd ff       	call   0x406a20
42a5ad:	85 c0                	test   %eax,%eax
42a5af:	75 07                	jne    0x42a5b8
42a5b1:	e8 3a ae ff ff       	call   0x4253f0
42a5b6:	eb 05                	jmp    0x42a5bd
42a5b8:	e8 db 35 fe ff       	call   0x40db98
42a5bd:	33 c0                	xor    %eax,%eax
42a5bf:	55                   	push   %ebp
42a5c0:	68 e2 a5 42 00       	push   $0x42a5e2
42a5c5:	64 ff 30             	push   %fs:(%eax)
42a5c8:	64 89 20             	mov    %esp,%fs:(%eax)
42a5cb:	8b 55 ec             	mov    -0x14(%ebp),%edx
42a5ce:	8b ce                	mov    %esi,%ecx
42a5d0:	8b 45 f8             	mov    -0x8(%ebp),%eax
42a5d3:	e8 88 04 ff ff       	call   0x41aa60
42a5d8:	33 c0                	xor    %eax,%eax
42a5da:	5a                   	pop    %edx
42a5db:	59                   	pop    %ecx
42a5dc:	59                   	pop    %ecx
42a5dd:	64 89 10             	mov    %edx,%fs:(%eax)
42a5e0:	eb 18                	jmp    0x42a5fa
42a5e2:	e9 15 98 fd ff       	jmp    0x403dfc
42a5e7:	8b 45 d8             	mov    -0x28(%ebp),%eax
42a5ea:	50                   	push   %eax
42a5eb:	e8 20 c6 fd ff       	call   0x406c10
42a5f0:	e8 c3 9b fd ff       	call   0x4041b8
42a5f5:	e8 12 9c fd ff       	call   0x40420c
42a5fa:	33 c0                	xor    %eax,%eax
42a5fc:	5a                   	pop    %edx
42a5fd:	59                   	pop    %ecx
42a5fe:	59                   	pop    %ecx
42a5ff:	64 89 10             	mov    %edx,%fs:(%eax)
42a602:	68 1a a6 42 00       	push   $0x42a61a
42a607:	8b 45 f4             	mov    -0xc(%ebp),%eax
42a60a:	50                   	push   %eax
42a60b:	6a 00                	push   $0x0
42a60d:	e8 f6 cb fd ff       	call   0x407208
42a612:	c3                   	ret
42a613:	e9 98 9a fd ff       	jmp    0x4040b0
42a618:	eb ed                	jmp    0x42a607
42a61a:	8b 45 c4             	mov    -0x3c(%ebp),%eax
42a61d:	66 83 78 0e 08       	cmpw   $0x8,0xe(%eax)
42a622:	76 22                	jbe    0x42a646
42a624:	8b 45 c4             	mov    -0x3c(%ebp),%eax
42a627:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
42a62b:	76 19                	jbe    0x42a646
42a62d:	83 7d d0 00          	cmpl   $0x0,-0x30(%ebp)
42a631:	75 13                	jne    0x42a646
42a633:	8b 45 c4             	mov    -0x3c(%ebp),%eax
42a636:	8b 48 20             	mov    0x20(%eax),%ecx
42a639:	8b 55 e4             	mov    -0x1c(%ebp),%edx
42a63c:	33 c0                	xor    %eax,%eax
42a63e:	e8 c5 b5 ff ff       	call   0x425c08
42a643:	89 45 d0             	mov    %eax,-0x30(%ebp)
42a646:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
42a64c:	33 c9                	xor    %ecx,%ecx
42a64e:	ba 54 00 00 00       	mov    $0x54,%edx
42a653:	e8 00 8c fd ff       	call   0x403258
42a658:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
42a65e:	50                   	push   %eax
42a65f:	6a 54                	push   $0x54
42a661:	8b 45 d8             	mov    -0x28(%ebp),%eax
42a664:	50                   	push   %eax
42a665:	e8 1e c6 fd ff       	call   0x406c88
42a66a:	8b 45 c4             	mov    -0x3c(%ebp),%eax
42a66d:	8b 40 18             	mov    0x18(%eax),%eax
42a670:	89 45 94             	mov    %eax,-0x6c(%ebp)
42a673:	8b 45 c4             	mov    -0x3c(%ebp),%eax
42a676:	8b 40 1c             	mov    0x1c(%eax),%eax
42a679:	89 45 98             	mov    %eax,-0x68(%ebp)
42a67c:	8b 45 c4             	mov    -0x3c(%ebp),%eax
42a67f:	8b 40 20             	mov    0x20(%eax),%eax
42a682:	89 45 9c             	mov    %eax,-0x64(%ebp)
42a685:	8b 45 c4             	mov    -0x3c(%ebp),%eax
42a688:	8b 40 24             	mov    0x24(%eax),%eax
42a68b:	89 45 a0             	mov    %eax,-0x60(%ebp)
42a68e:	33 c0                	xor    %eax,%eax
42a690:	5a                   	pop    %edx
42a691:	59                   	pop    %ecx
42a692:	59                   	pop    %ecx
42a693:	64 89 10             	mov    %edx,%fs:(%eax)
42a696:	eb 17                	jmp    0x42a6af
42a698:	e9 5f 97 fd ff       	jmp    0x403dfc
42a69d:	8b 45 c8             	mov    -0x38(%ebp),%eax
42a6a0:	e8 77 92 fd ff       	call   0x40391c
42a6a5:	e8 0e 9b fd ff       	call   0x4041b8
42a6aa:	e8 5d 9b fd ff       	call   0x40420c
42a6af:	33 c0                	xor    %eax,%eax
42a6b1:	5a                   	pop    %edx
42a6b2:	59                   	pop    %ecx
42a6b3:	59                   	pop    %ecx
42a6b4:	64 89 10             	mov    %edx,%fs:(%eax)
42a6b7:	68 cc a6 42 00       	push   $0x42a6cc
42a6bc:	8b 45 e8             	mov    -0x18(%ebp),%eax
42a6bf:	e8 54 86 fd ff       	call   0x402d18
42a6c4:	c3                   	ret
42a6c5:	e9 e6 99 fd ff       	jmp    0x4040b0
42a6ca:	eb f0                	jmp    0x42a6bc
42a6cc:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
42a6d2:	50                   	push   %eax
42a6d3:	0f b6 45 df          	movzbl -0x21(%ebp),%eax
42a6d7:	50                   	push   %eax
42a6d8:	8b 45 c8             	mov    -0x38(%ebp),%eax
42a6db:	50                   	push   %eax
42a6dc:	8b 4d d0             	mov    -0x30(%ebp),%ecx
42a6df:	8b 55 d8             	mov    -0x28(%ebp),%edx
42a6e2:	8b 45 fc             	mov    -0x4(%ebp),%eax
42a6e5:	e8 92 f9 ff ff       	call   0x42a07c
42a6ea:	8b 45 fc             	mov    -0x4(%ebp),%eax
42a6ed:	8b 10                	mov    (%eax),%edx
42a6ef:	ff 52 24             	call   *0x24(%edx)
42a6f2:	85 c0                	test   %eax,%eax
42a6f4:	0f 95 c0             	setne  %al
42a6f7:	8b 55 fc             	mov    -0x4(%ebp),%edx
42a6fa:	88 42 22             	mov    %al,0x22(%edx)
42a6fd:	8b 55 fc             	mov    -0x4(%ebp),%edx
42a700:	8b 45 fc             	mov    -0x4(%ebp),%eax
42a703:	8b 08                	mov    (%eax),%ecx
42a705:	ff 51 10             	call   *0x10(%ecx)
42a708:	5f                   	pop    %edi
42a709:	5e                   	pop    %esi
42a70a:	5b                   	pop    %ebx
42a70b:	8b e5                	mov    %ebp,%esp
42a70d:	5d                   	pop    %ebp
42a70e:	c2 04 00             	ret    $0x4
42a711:	8d 40 00             	lea    0x0(%eax),%eax
42a714:	53                   	push   %ebx
42a715:	56                   	push   %esi
42a716:	57                   	push   %edi
42a717:	83 c4 9c             	add    $0xffffff9c,%esp
42a71a:	8b f1                	mov    %ecx,%esi
42a71c:	8b fa                	mov    %edx,%edi
42a71e:	8b d8                	mov    %eax,%ebx
42a720:	8b c3                	mov    %ebx,%eax
42a722:	e8 e5 f6 ff ff       	call   0x429e0c
42a727:	85 f6                	test   %esi,%esi
42a729:	75 26                	jne    0x42a751
42a72b:	8d 44 24 0e          	lea    0xe(%esp),%eax
42a72f:	33 c9                	xor    %ecx,%ecx
42a731:	ba 54 00 00 00       	mov    $0x54,%edx
42a736:	e8 1d 8b fd ff       	call   0x403258
42a73b:	8d 44 24 0e          	lea    0xe(%esp),%eax
42a73f:	50                   	push   %eax
42a740:	6a 00                	push   $0x0
42a742:	6a 00                	push   $0x0
42a744:	33 c9                	xor    %ecx,%ecx
42a746:	33 d2                	xor    %edx,%edx
42a748:	8b c3                	mov    %ebx,%eax
42a74a:	e8 2d f9 ff ff       	call   0x42a07c
42a74f:	eb 2a                	jmp    0x42a77b
42a751:	8b d4                	mov    %esp,%edx
42a753:	b9 0e 00 00 00       	mov    $0xe,%ecx
42a758:	8b c7                	mov    %edi,%eax
42a75a:	e8 01 03 ff ff       	call   0x41aa60
42a75f:	66 81 3c 24 42 4d    	cmpw   $0x4d42,(%esp)
42a765:	74 05                	je     0x42a76c
42a767:	e8 84 ac ff ff       	call   0x4253f0
42a76c:	54                   	push   %esp
42a76d:	8b ce                	mov    %esi,%ecx
42a76f:	83 e9 0e             	sub    $0xe,%ecx
42a772:	8b d7                	mov    %edi,%edx
42a774:	8b c3                	mov    %ebx,%eax
42a776:	e8 29 fa ff ff       	call   0x42a1a4
42a77b:	83 c4 64             	add    $0x64,%esp
42a77e:	5f                   	pop    %edi
42a77f:	5e                   	pop    %esi
42a780:	5b                   	pop    %ebx
42a781:	c3                   	ret
42a782:	8b c0                	mov    %eax,%eax
42a784:	55                   	push   %ebp
42a785:	8b ec                	mov    %esp,%ebp
42a787:	83 c4 a8             	add    $0xffffffa8,%esp
42a78a:	53                   	push   %ebx
42a78b:	56                   	push   %esi
42a78c:	57                   	push   %edi
42a78d:	8b fa                	mov    %edx,%edi
42a78f:	8b d8                	mov    %eax,%ebx
42a791:	8b 73 28             	mov    0x28(%ebx),%esi
42a794:	3b 7e 08             	cmp    0x8(%esi),%edi
42a797:	0f 84 a2 00 00 00    	je     0x42a83f
42a79d:	8b c3                	mov    %ebx,%eax
42a79f:	e8 68 f6 ff ff       	call   0x429e0c
42a7a4:	8d 45 a8             	lea    -0x58(%ebp),%eax
42a7a7:	33 c9                	xor    %ecx,%ecx
42a7a9:	ba 54 00 00 00       	mov    $0x54,%edx
42a7ae:	e8 a5 8a fd ff       	call   0x403258
42a7b3:	85 ff                	test   %edi,%edi
42a7b5:	74 0c                	je     0x42a7c3
42a7b7:	8d 45 a8             	lea    -0x58(%ebp),%eax
42a7ba:	50                   	push   %eax
42a7bb:	6a 54                	push   $0x54
42a7bd:	57                   	push   %edi
42a7be:	e8 c5 c4 fd ff       	call   0x406c88
42a7c3:	83 7e 04 01          	cmpl   $0x1,0x4(%esi)
42a7c7:	75 0d                	jne    0x42a7d6
42a7c9:	8b 46 10             	mov    0x10(%esi),%eax
42a7cc:	89 45 fc             	mov    %eax,-0x4(%ebp)
42a7cf:	33 c0                	xor    %eax,%eax
42a7d1:	89 46 10             	mov    %eax,0x10(%esi)
42a7d4:	eb 1d                	jmp    0x42a7f3
42a7d6:	8b 46 10             	mov    0x10(%esi),%eax
42a7d9:	3b 05 4c b3 4a 00    	cmp    0x4ab34c,%eax
42a7df:	75 0a                	jne    0x42a7eb
42a7e1:	a1 4c b3 4a 00       	mov    0x4ab34c,%eax
42a7e6:	89 45 fc             	mov    %eax,-0x4(%ebp)
42a7e9:	eb 08                	jmp    0x42a7f3
42a7eb:	e8 28 ec ff ff       	call   0x429418
42a7f0:	89 45 fc             	mov    %eax,-0x4(%ebp)
42a7f3:	33 c0                	xor    %eax,%eax
42a7f5:	55                   	push   %ebp
42a7f6:	68 1f a8 42 00       	push   $0x42a81f
42a7fb:	64 ff 30             	push   %fs:(%eax)
42a7fe:	64 89 20             	mov    %esp,%fs:(%eax)
42a801:	8d 45 a8             	lea    -0x58(%ebp),%eax
42a804:	50                   	push   %eax
42a805:	6a 00                	push   $0x0
42a807:	6a 00                	push   $0x0
42a809:	8b 4d fc             	mov    -0x4(%ebp),%ecx
42a80c:	8b d7                	mov    %edi,%edx
42a80e:	8b c3                	mov    %ebx,%eax
42a810:	e8 67 f8 ff ff       	call   0x42a07c
42a815:	33 c0                	xor    %eax,%eax
42a817:	5a                   	pop    %edx
42a818:	59                   	pop    %ecx
42a819:	59                   	pop    %ecx
42a81a:	64 89 10             	mov    %edx,%fs:(%eax)
42a81d:	eb 17                	jmp    0x42a836
42a81f:	e9 d8 95 fd ff       	jmp    0x403dfc
42a824:	8b 45 fc             	mov    -0x4(%ebp),%eax
42a827:	e8 cc 89 ff ff       	call   0x4231f8
42a82c:	e8 87 99 fd ff       	call   0x4041b8
42a831:	e8 d6 99 fd ff       	call   0x40420c
42a836:	8b d3                	mov    %ebx,%edx
42a838:	8b c3                	mov    %ebx,%eax
42a83a:	8b 08                	mov    (%eax),%ecx
42a83c:	ff 51 10             	call   *0x10(%ecx)
42a83f:	5f                   	pop    %edi
42a840:	5e                   	pop    %esi
42a841:	5b                   	pop    %ebx
42a842:	8b e5                	mov    %ebp,%esp
42a844:	5d                   	pop    %ebp
42a845:	c3                   	ret
42a846:	8b c0                	mov    %eax,%eax
42a848:	53                   	push   %ebx
42a849:	56                   	push   %esi
42a84a:	57                   	push   %edi
42a84b:	55                   	push   %ebp
42a84c:	83 c4 ac             	add    $0xffffffac,%esp
42a84f:	8b da                	mov    %edx,%ebx
42a851:	8b f0                	mov    %eax,%esi
42a853:	8b c6                	mov    %esi,%eax
42a855:	e8 6e f4 ff ff       	call   0x429cc8
42a85a:	3a d8                	cmp    %al,%bl
42a85c:	0f 84 18 01 00 00    	je     0x42a97a
42a862:	8b 7e 28             	mov    0x28(%esi),%edi
42a865:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
42a869:	75 21                	jne    0x42a88c
42a86b:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
42a86f:	75 1b                	jne    0x42a88c
42a871:	80 fb 01             	cmp    $0x1,%bl
42a874:	75 0a                	jne    0x42a880
42a876:	33 c0                	xor    %eax,%eax
42a878:	89 47 30             	mov    %eax,0x30(%edi)
42a87b:	e9 fa 00 00 00       	jmp    0x42a97a
42a880:	c7 47 30 28 00 00 00 	movl   $0x28,0x30(%edi)
42a887:	e9 ee 00 00 00       	jmp    0x42a97a
42a88c:	84 db                	test   %bl,%bl
42a88e:	75 69                	jne    0x42a8f9
42a890:	8b 47 14             	mov    0x14(%edi),%eax
42a893:	85 c0                	test   %eax,%eax
42a895:	74 09                	je     0x42a8a0
42a897:	3b 47 08             	cmp    0x8(%edi),%eax
42a89a:	0f 84 da 00 00 00    	je     0x42a97a
42a8a0:	8b c6                	mov    %esi,%eax
42a8a2:	e8 65 f5 ff ff       	call   0x429e0c
42a8a7:	8b c6                	mov    %esi,%eax
42a8a9:	e8 6e f6 ff ff       	call   0x429f1c
42a8ae:	8b c6                	mov    %esi,%eax
42a8b0:	e8 e3 f4 ff ff       	call   0x429d98
42a8b5:	83 7f 04 01          	cmpl   $0x1,0x4(%edi)
42a8b9:	75 2b                	jne    0x42a8e6
42a8bb:	8b 47 14             	mov    0x14(%edi),%eax
42a8be:	33 d2                	xor    %edx,%edx
42a8c0:	89 57 14             	mov    %edx,0x14(%edi)
42a8c3:	8b 6f 10             	mov    0x10(%edi),%ebp
42a8c6:	33 d2                	xor    %edx,%edx
42a8c8:	89 57 10             	mov    %edx,0x10(%edi)
42a8cb:	8d 57 18             	lea    0x18(%edi),%edx
42a8ce:	52                   	push   %edx
42a8cf:	0f b6 57 70          	movzbl 0x70(%edi),%edx
42a8d3:	52                   	push   %edx
42a8d4:	6a 00                	push   $0x0
42a8d6:	8b cd                	mov    %ebp,%ecx
42a8d8:	8b d0                	mov    %eax,%edx
42a8da:	8b c6                	mov    %esi,%eax
42a8dc:	e8 9b f7 ff ff       	call   0x42a07c
42a8e1:	e9 8b 00 00 00       	jmp    0x42a971
42a8e6:	8d 47 18             	lea    0x18(%edi),%eax
42a8e9:	50                   	push   %eax
42a8ea:	8b 4f 10             	mov    0x10(%edi),%ecx
42a8ed:	8b 57 14             	mov    0x14(%edi),%edx
42a8f0:	8b c6                	mov    %esi,%eax
42a8f2:	e8 31 ef ff ff       	call   0x429828
42a8f7:	eb 78                	jmp    0x42a971
42a8f9:	8b 47 08             	mov    0x8(%edi),%eax
42a8fc:	85 c0                	test   %eax,%eax
42a8fe:	74 05                	je     0x42a905
42a900:	3b 47 14             	cmp    0x14(%edi),%eax
42a903:	75 75                	jne    0x42a97a
42a905:	8b c6                	mov    %esi,%eax
42a907:	e8 00 f5 ff ff       	call   0x429e0c
42a90c:	8b c6                	mov    %esi,%eax
42a90e:	e8 09 f6 ff ff       	call   0x429f1c
42a913:	56                   	push   %esi
42a914:	57                   	push   %edi
42a915:	8d 77 18             	lea    0x18(%edi),%esi
42a918:	8d 7c 24 08          	lea    0x8(%esp),%edi
42a91c:	b9 15 00 00 00       	mov    $0x15,%ecx
42a921:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
42a923:	5f                   	pop    %edi
42a924:	5e                   	pop    %esi
42a925:	33 c0                	xor    %eax,%eax
42a927:	89 44 24 18          	mov    %eax,0x18(%esp)
42a92b:	83 7f 04 01          	cmpl   $0x1,0x4(%edi)
42a92f:	0f 94 c3             	sete   %bl
42a932:	84 db                	test   %bl,%bl
42a934:	74 05                	je     0x42a93b
42a936:	8b 6f 10             	mov    0x10(%edi),%ebp
42a939:	eb 0a                	jmp    0x42a945
42a93b:	8b 47 10             	mov    0x10(%edi),%eax
42a93e:	e8 d5 ea ff ff       	call   0x429418
42a943:	8b e8                	mov    %eax,%ebp
42a945:	54                   	push   %esp
42a946:	6a 00                	push   $0x0
42a948:	8b cd                	mov    %ebp,%ecx
42a94a:	8b 57 10             	mov    0x10(%edi),%edx
42a94d:	8b 47 14             	mov    0x14(%edi),%eax
42a950:	e8 5f e4 ff ff       	call   0x428db4
42a955:	84 db                	test   %bl,%bl
42a957:	74 05                	je     0x42a95e