51f6a9:	cc                   	int3
51f6aa:	cc                   	int3
51f6ab:	cc                   	int3
51f6ac:	cc                   	int3
51f6ad:	cc                   	int3
51f6ae:	cc                   	int3
51f6af:	cc                   	int3
51f6b0:	b8 08 00 00 00       	mov    $0x8,%eax
51f6b5:	e8 f6 20 0b 00       	call   0x5d17b0
51f6ba:	55                   	push   %ebp
51f6bb:	56                   	push   %esi
51f6bc:	8b 74 24 1c          	mov    0x1c(%esp),%esi
51f6c0:	83 cd ff             	or     $0xffffffff,%ebp
51f6c3:	57                   	push   %edi
51f6c4:	33 ff                	xor    %edi,%edi
51f6c6:	89 74 24 10          	mov    %esi,0x10(%esp)
51f6ca:	89 7c 24 0c          	mov    %edi,0xc(%esp)
51f6ce:	e8 cd dc ff ff       	call   0x51d3a0
51f6d3:	89 44 24 20          	mov    %eax,0x20(%esp)
51f6d7:	85 c0                	test   %eax,%eax
51f6d9:	75 11                	jne    0x51f6ec
51f6db:	68 c4 01 00 00       	push   $0x1c4
51f6e0:	68 e4 0f 64 00       	push   $0x640fe4
51f6e5:	6a 41                	push   $0x41
51f6e7:	e9 d4 00 00 00       	jmp    0x51f7c0
51f6ec:	ff 74 24 24          	push   0x24(%esp)
51f6f0:	8d 44 24 14          	lea    0x14(%esp),%eax
51f6f4:	50                   	push   %eax
51f6f5:	8d 44 24 28          	lea    0x28(%esp),%eax
51f6f9:	50                   	push   %eax
51f6fa:	e8 41 e8 ff ff       	call   0x51df40
51f6ff:	83 c4 0c             	add    $0xc,%esp
51f702:	85 c0                	test   %eax,%eax
51f704:	75 0a                	jne    0x51f710
51f706:	68 c8 01 00 00       	push   $0x1c8
51f70b:	e9 a9 00 00 00       	jmp    0x51f7b9
51f710:	8d 44 24 0c          	lea    0xc(%esp),%eax
51f714:	50                   	push   %eax
51f715:	ff 74 24 24          	push   0x24(%esp)
51f719:	e8 f2 f0 ff ff       	call   0x51e810
51f71e:	8b c8                	mov    %eax,%ecx
51f720:	83 c4 08             	add    $0x8,%esp
51f723:	3b 4c 24 24          	cmp    0x24(%esp),%ecx
51f727:	0f 85 87 00 00 00    	jne    0x51f7b4
51f72d:	8b 54 24 0c          	mov    0xc(%esp),%edx
51f731:	83 e9 04             	sub    $0x4,%ecx
51f734:	72 11                	jb     0x51f747
51f736:	8b 06                	mov    (%esi),%eax
51f738:	3b 02                	cmp    (%edx),%eax
51f73a:	75 10                	jne    0x51f74c
51f73c:	83 c6 04             	add    $0x4,%esi
51f73f:	83 c2 04             	add    $0x4,%edx
51f742:	83 e9 04             	sub    $0x4,%ecx
51f745:	73 ef                	jae    0x51f736
51f747:	83 f9 fc             	cmp    $0xfffffffc,%ecx
51f74a:	74 2d                	je     0x51f779
51f74c:	8a 06                	mov    (%esi),%al
51f74e:	3a 02                	cmp    (%edx),%al
51f750:	75 62                	jne    0x51f7b4
51f752:	83 f9 fd             	cmp    $0xfffffffd,%ecx
51f755:	74 22                	je     0x51f779
51f757:	8a 46 01             	mov    0x1(%esi),%al
51f75a:	3a 42 01             	cmp    0x1(%edx),%al
51f75d:	75 55                	jne    0x51f7b4
51f75f:	83 f9 fe             	cmp    $0xfffffffe,%ecx
51f762:	74 15                	je     0x51f779
51f764:	8a 46 02             	mov    0x2(%esi),%al
51f767:	3a 42 02             	cmp    0x2(%edx),%al
51f76a:	75 48                	jne    0x51f7b4
51f76c:	83 f9 ff             	cmp    $0xffffffff,%ecx
51f76f:	74 08                	je     0x51f779
51f771:	8a 46 03             	mov    0x3(%esi),%al
51f774:	3a 42 03             	cmp    0x3(%edx),%al
51f777:	75 3b                	jne    0x51f7b4
51f779:	6a 00                	push   $0x0
51f77b:	ff 74 24 20          	push   0x20(%esp)
51f77f:	ff 74 24 20          	push   0x20(%esp)
51f783:	e8 e8 9e fb ff       	call   0x4d9670
51f788:	8b f8                	mov    %eax,%edi
51f78a:	83 c4 0c             	add    $0xc,%esp
51f78d:	85 ff                	test   %edi,%edi
51f78f:	75 0e                	jne    0x51f79f
51f791:	68 d4 01 00 00       	push   $0x1d4
51f796:	68 e4 0f 64 00       	push   $0x640fe4
51f79b:	6a 03                	push   $0x3
51f79d:	eb 21                	jmp    0x51f7c0
51f79f:	57                   	push   %edi
51f7a0:	ff 74 24 24          	push   0x24(%esp)
51f7a4:	ff 74 24 30          	push   0x30(%esp)
51f7a8:	e8 53 fc ff ff       	call   0x51f400
51f7ad:	83 c4 0c             	add    $0xc,%esp
51f7b0:	8b e8                	mov    %eax,%ebp
51f7b2:	eb 18                	jmp    0x51f7cc
51f7b4:	68 ce 01 00 00       	push   $0x1ce
51f7b9:	68 e4 0f 64 00       	push   $0x640fe4
51f7be:	6a 68                	push   $0x68
51f7c0:	6a 6c                	push   $0x6c
51f7c2:	6a 35                	push   $0x35
51f7c4:	e8 b7 97 fb ff       	call   0x4d8f80
51f7c9:	83 c4 14             	add    $0x14,%esp
51f7cc:	68 db 01 00 00       	push   $0x1db
51f7d1:	68 e4 0f 64 00       	push   $0x640fe4
51f7d6:	ff 74 24 14          	push   0x14(%esp)
51f7da:	e8 a1 0f fc ff       	call   0x4e0780
51f7df:	57                   	push   %edi
51f7e0:	e8 3b a4 fb ff       	call   0x4d9c20
51f7e5:	ff 74 24 30          	push   0x30(%esp)
51f7e9:	e8 82 db ff ff       	call   0x51d370
51f7ee:	83 c4 14             	add    $0x14,%esp
51f7f1:	8b c5                	mov    %ebp,%eax
51f7f3:	5f                   	pop    %edi
51f7f4:	5e                   	pop    %esi
51f7f5:	5d                   	pop    %ebp
51f7f6:	83 c4 08             	add    $0x8,%esp
51f7f9:	c3                   	ret
51f7fa:	cc                   	int3
51f7fb:	cc                   	int3
51f7fc:	cc                   	int3
51f7fd:	cc                   	int3
51f7fe:	cc                   	int3
51f7ff:	cc                   	int3
51f800:	53                   	push   %ebx
51f801:	55                   	push   %ebp
51f802:	56                   	push   %esi
51f803:	57                   	push   %edi
51f804:	e8 d7 a5 fb ff       	call   0x4d9de0
51f809:	8b f0                	mov    %eax,%esi
51f80b:	e8 d0 a5 fb ff       	call   0x4d9de0
51f810:	8b f8                	mov    %eax,%edi
51f812:	e8 c9 a5 fb ff       	call   0x4d9de0
51f817:	33 ed                	xor    %ebp,%ebp
51f819:	8b d8                	mov    %eax,%ebx
51f81b:	85 f6                	test   %esi,%esi
51f81d:	74 32                	je     0x51f851
51f81f:	85 ff                	test   %edi,%edi
51f821:	74 2e                	je     0x51f851
51f823:	85 db                	test   %ebx,%ebx
51f825:	74 2a                	je     0x51f851
51f827:	55                   	push   %ebp
51f828:	53                   	push   %ebx
51f829:	57                   	push   %edi
51f82a:	56                   	push   %esi
51f82b:	ff 74 24 24          	push   0x24(%esp)
51f82f:	e8 2c e3 fe ff       	call   0x50db60
51f834:	83 c4 14             	add    $0x14,%esp
51f837:	85 c0                	test   %eax,%eax
51f839:	74 16                	je     0x51f851
51f83b:	56                   	push   %esi
51f83c:	e8 df a5 fb ff       	call   0x4d9e20
51f841:	83 c0 07             	add    $0x7,%eax
51f844:	83 c4 04             	add    $0x4,%esp
51f847:	99                   	cltd
51f848:	83 e2 07             	and    $0x7,%edx
51f84b:	8d 2c 02             	lea    (%edx,%eax,1),%ebp
51f84e:	c1 fd 03             	sar    $0x3,%ebp
51f851:	56                   	push   %esi
51f852:	e8 c9 a3 fb ff       	call   0x4d9c20
51f857:	57                   	push   %edi
51f858:	e8 c3 a3 fb ff       	call   0x4d9c20
51f85d:	53                   	push   %ebx
51f85e:	e8 bd a3 fb ff       	call   0x4d9c20
51f863:	83 c4 0c             	add    $0xc,%esp
51f866:	8b c5                	mov    %ebp,%eax
51f868:	5f                   	pop    %edi
51f869:	5e                   	pop    %esi
51f86a:	5d                   	pop    %ebp
51f86b:	5b                   	pop    %ebx
51f86c:	c3                   	ret
51f86d:	cc                   	int3
51f86e:	cc                   	int3
51f86f:	cc                   	int3
51f870:	56                   	push   %esi
51f871:	57                   	push   %edi
51f872:	ff 74 24 0c          	push   0xc(%esp)
51f876:	e8 c5 79 fc ff       	call   0x4e7240
51f87b:	50                   	push   %eax
51f87c:	e8 7f ff ff ff       	call   0x51f800
51f881:	ff 74 24 18          	push   0x18(%esp)
51f885:	8b f0                	mov    %eax,%esi
51f887:	e8 34 10 fd ff       	call   0x4f08c0
51f88c:	83 c4 0c             	add    $0xc,%esp
51f88f:	8b f8                	mov    %eax,%edi
51f891:	85 f6                	test   %esi,%esi
51f893:	74 4b                	je     0x51f8e0
51f895:	85 ff                	test   %edi,%edi
51f897:	78 47                	js     0x51f8e0
51f899:	6a 02                	push   $0x2
51f89b:	8d 4e 01             	lea    0x1(%esi),%ecx
51f89e:	51                   	push   %ecx
51f89f:	6a 00                	push   $0x0
51f8a1:	e8 4a ac fe ff       	call   0x50a4f0
51f8a6:	6a 04                	push   $0x4
51f8a8:	8b f0                	mov    %eax,%esi
51f8aa:	57                   	push   %edi
51f8ab:	6a 00                	push   $0x0
51f8ad:	03 f6                	add    %esi,%esi
51f8af:	e8 3c ac fe ff       	call   0x50a4f0
51f8b4:	6a 04                	push   $0x4
51f8b6:	ff 74 24 30          	push   0x30(%esp)
51f8ba:	03 f0                	add    %eax,%esi
51f8bc:	6a 00                	push   $0x0
51f8be:	e8 2d ac fe ff       	call   0x50a4f0
51f8c3:	03 c6                	add    %esi,%eax
51f8c5:	6a 10                	push   $0x10
51f8c7:	50                   	push   %eax
51f8c8:	6a 01                	push   $0x1
51f8ca:	e8 21 ac fe ff       	call   0x50a4f0
51f8cf:	8b 4c 24 48          	mov    0x48(%esp),%ecx
51f8d3:	83 c4 30             	add    $0x30,%esp
51f8d6:	5f                   	pop    %edi
51f8d7:	89 01                	mov    %eax,(%ecx)
51f8d9:	b8 01 00 00 00       	mov    $0x1,%eax
51f8de:	5e                   	pop    %esi
51f8df:	c3                   	ret
51f8e0:	5f                   	pop    %edi
51f8e1:	33 c0                	xor    %eax,%eax
51f8e3:	5e                   	pop    %esi
51f8e4:	c3                   	ret
51f8e5:	cc                   	int3
51f8e6:	cc                   	int3
51f8e7:	cc                   	int3
51f8e8:	cc                   	int3
51f8e9:	cc                   	int3
51f8ea:	cc                   	int3
51f8eb:	cc                   	int3
51f8ec:	cc                   	int3
51f8ed:	cc                   	int3
51f8ee:	cc                   	int3
51f8ef:	cc                   	int3
51f8f0:	b8 40 00 00 00       	mov    $0x40,%eax
51f8f5:	e8 b6 1e 0b 00       	call   0x5d17b0
51f8fa:	53                   	push   %ebx
51f8fb:	55                   	push   %ebp
51f8fc:	56                   	push   %esi
51f8fd:	57                   	push   %edi
51f8fe:	ff 74 24 54          	push   0x54(%esp)
51f902:	c7 44 24 40 00 00 00 	movl   $0x0,0x40(%esp)
51f909:	00
51f90a:	c7 44 24 1c 00 00 00 	movl   $0x0,0x1c(%esp)
51f911:	00
51f912:	e8 29 79 fc ff       	call   0x4e7240
51f917:	33 ff                	xor    %edi,%edi
51f919:	89 44 24 20          	mov    %eax,0x20(%esp)
51f91d:	50                   	push   %eax
51f91e:	c7 44 24 2c 00 00 00 	movl   $0x0,0x2c(%esp)
51f925:	00
51f926:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
51f92a:	89 7c 24 38          	mov    %edi,0x38(%esp)
51f92e:	e8 cd fe ff ff       	call   0x51f800
51f933:	ff 74 24 60          	push   0x60(%esp)
51f937:	8b d8                	mov    %eax,%ebx
51f939:	89 5c 24 2c          	mov    %ebx,0x2c(%esp)
51f93d:	e8 7e 0f fd ff       	call   0x4f08c0
51f942:	83 c4 0c             	add    $0xc,%esp
51f945:	89 44 24 2c          	mov    %eax,0x2c(%esp)
51f949:	33 ed                	xor    %ebp,%ebp
51f94b:	33 f6                	xor    %esi,%esi
51f94d:	85 db                	test   %ebx,%ebx
51f94f:	0f 84 46 04 00 00    	je     0x51fd9b
51f955:	85 c0                	test   %eax,%eax
51f957:	0f 8e 3e 04 00 00    	jle    0x51fd9b
51f95d:	8b 44 24 68          	mov    0x68(%esp),%eax
51f961:	ff 30                	push   (%eax)
51f963:	68 ff 00 00 00       	push   $0xff
51f968:	ff 74 24 6c          	push   0x6c(%esp)
51f96c:	e8 ff 32 0b 00       	call   0x5d2c70
51f971:	68 50 10 64 00       	push   $0x641050
51f976:	ff 74 24 70          	push   0x70(%esp)
51f97a:	8d 44 24 70          	lea    0x70(%esp),%eax
51f97e:	50                   	push   %eax
51f97f:	56                   	push   %esi
51f980:	e8 cb cc fc ff       	call   0x4ec650
51f985:	8b f8                	mov    %eax,%edi
51f987:	83 c4 1c             	add    $0x1c,%esp
51f98a:	89 7c 24 10          	mov    %edi,0x10(%esp)
51f98e:	85 ff                	test   %edi,%edi
51f990:	75 1a                	jne    0x51f9ac
51f992:	68 26 01 00 00       	push   $0x126
51f997:	68 8c 10 64 00       	push   $0x64108c
51f99c:	6a 64                	push   $0x64
51f99e:	6a 66                	push   $0x66
51f9a0:	6a 35                	push   $0x35
51f9a2:	e8 d9 95 fb ff       	call   0x4d8f80
51f9a7:	e9 ec 03 00 00       	jmp    0x51fd98
51f9ac:	8b 4f 08             	mov    0x8(%edi),%ecx
51f9af:	8b 44 24 2c          	mov    0x2c(%esp),%eax
51f9b3:	39 01                	cmp    %eax,(%ecx)
51f9b5:	74 1a                	je     0x51f9d1
51f9b7:	68 2b 01 00 00       	push   $0x12b
51f9bc:	68 8c 10 64 00       	push   $0x64108c
51f9c1:	6a 68                	push   $0x68
51f9c3:	6a 66                	push   $0x66
51f9c5:	6a 35                	push   $0x35
51f9c7:	e8 b4 95 fb ff       	call   0x4d8f80
51f9cc:	e9 c7 03 00 00       	jmp    0x51fd98
51f9d1:	8b 47 0c             	mov    0xc(%edi),%eax
51f9d4:	8b 49 08             	mov    0x8(%ecx),%ecx
51f9d7:	89 4c 24 4c          	mov    %ecx,0x4c(%esp)
51f9db:	8b 18                	mov    (%eax),%ebx
51f9dd:	8b 78 08             	mov    0x8(%eax),%edi
51f9e0:	89 5c 24 44          	mov    %ebx,0x44(%esp)
51f9e4:	e8 37 83 fc ff       	call   0x4e7d20
51f9e9:	89 44 24 18          	mov    %eax,0x18(%esp)
51f9ed:	85 c0                	test   %eax,%eax
51f9ef:	75 0a                	jne    0x51f9fb
51f9f1:	68 35 01 00 00       	push   $0x135
51f9f6:	e9 89 03 00 00       	jmp    0x51fd84
51f9fb:	50                   	push   %eax
51f9fc:	e8 0f 84 fc ff       	call   0x4e7e10
51fa01:	ff 74 24 1c          	push   0x1c(%esp)
51fa05:	e8 c6 81 fc ff       	call   0x4e7bd0
51fa0a:	ff 74 24 20          	push   0x20(%esp)
51fa0e:	89 44 24 40          	mov    %eax,0x40(%esp)
51fa12:	e8 b9 81 fc ff       	call   0x4e7bd0
51fa17:	83 c4 0c             	add    $0xc,%esp
51fa1a:	89 44 24 38          	mov    %eax,0x38(%esp)
51fa1e:	85 c0                	test   %eax,%eax
51fa20:	75 11                	jne    0x51fa33
51fa22:	68 3e 01 00 00       	push   $0x13e
51fa27:	68 8c 10 64 00       	push   $0x64108c
51fa2c:	6a 03                	push   $0x3
51fa2e:	e9 58 03 00 00       	jmp    0x51fd8b
51fa33:	68 42 01 00 00       	push   $0x142
51fa38:	68 8c 10 64 00       	push   $0x64108c
51fa3d:	53                   	push   %ebx
51fa3e:	e8 fd 0f fc ff       	call   0x4e0a40
51fa43:	8b e8                	mov    %eax,%ebp
51fa45:	8b 44 24 2c          	mov    0x2c(%esp),%eax
51fa49:	68 43 01 00 00       	push   $0x143
51fa4e:	03 c0                	add    %eax,%eax
51fa50:	89 6c 24 38          	mov    %ebp,0x38(%esp)
51fa54:	68 8c 10 64 00       	push   $0x64108c
51fa59:	50                   	push   %eax
51fa5a:	89 44 24 58          	mov    %eax,0x58(%esp)
51fa5e:	e8 dd 0f fc ff       	call   0x4e0a40
51fa63:	68 44 01 00 00       	push   $0x144
51fa68:	68 8c 10 64 00       	push   $0x64108c
51fa6d:	ff 74 24 4c          	push   0x4c(%esp)
51fa71:	89 44 24 38          	mov    %eax,0x38(%esp)
51fa75:	e8 c6 0f fc ff       	call   0x4e0a40
51fa7a:	83 c4 24             	add    $0x24,%esp
51fa7d:	89 44 24 30          	mov    %eax,0x30(%esp)
51fa81:	85 ed                	test   %ebp,%ebp
51fa83:	0f 84 f6 02 00 00    	je     0x51fd7f
51fa89:	39 74 24 14          	cmp    %esi,0x14(%esp)
51fa8d:	0f 84 ec 02 00 00    	je     0x51fd7f
51fa93:	85 c0                	test   %eax,%eax
51fa95:	0f 84 e4 02 00 00    	je     0x51fd7f
51fa9b:	ff 74 24 1c          	push   0x1c(%esp)
51fa9f:	e8 5c ec fe ff       	call   0x50e700