53c607:	ba 01 00 00 00       	mov    $0x1,%edx
53c60c:	0f 45 ca             	cmovne %edx,%ecx
53c60f:	89 4c 24 14          	mov    %ecx,0x14(%esp)
53c613:	57                   	push   %edi
53c614:	e8 b7 b4 fa ff       	call   0x4e7ad0
53c619:	ff 74 24 14          	push   0x14(%esp)
53c61d:	e8 1e b5 fa ff       	call   0x4e7b40
53c622:	8b 44 24 1c          	mov    0x1c(%esp),%eax
53c626:	83 c4 08             	add    $0x8,%esp
53c629:	5d                   	pop    %ebp
53c62a:	5b                   	pop    %ebx
53c62b:	5f                   	pop    %edi
53c62c:	5e                   	pop    %esi
53c62d:	83 c4 10             	add    $0x10,%esp
53c630:	c3                   	ret
53c631:	cc                   	int3
53c632:	cc                   	int3
53c633:	cc                   	int3
53c634:	cc                   	int3
53c635:	cc                   	int3
53c636:	cc                   	int3
53c637:	cc                   	int3
53c638:	cc                   	int3
53c639:	cc                   	int3
53c63a:	cc                   	int3
53c63b:	cc                   	int3
53c63c:	cc                   	int3
53c63d:	cc                   	int3
53c63e:	cc                   	int3
53c63f:	cc                   	int3
53c640:	b8 14 00 00 00       	mov    $0x14,%eax
53c645:	e8 66 51 09 00       	call   0x5d17b0
53c64a:	57                   	push   %edi
53c64b:	8b 7c 24 28          	mov    0x28(%esp),%edi
53c64f:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
53c656:	00
53c657:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
53c65e:	00
53c65f:	85 ff                	test   %edi,%edi
53c661:	75 22                	jne    0x53c685
53c663:	68 f7 00 00 00       	push   $0xf7
53c668:	68 78 a2 64 00       	push   $0x64a278
53c66d:	6a 64                	push   $0x64
53c66f:	68 a0 00 00 00       	push   $0xa0
53c674:	6a 10                	push   $0x10
53c676:	e8 05 c9 f9 ff       	call   0x4d8f80
53c67b:	83 c4 14             	add    $0x14,%esp
53c67e:	33 c0                	xor    %eax,%eax
53c680:	5f                   	pop    %edi
53c681:	83 c4 14             	add    $0x14,%esp
53c684:	c3                   	ret
53c685:	8b 4c 24 24          	mov    0x24(%esp),%ecx
53c689:	53                   	push   %ebx
53c68a:	56                   	push   %esi
53c68b:	0f b6 31             	movzbl (%ecx),%esi
53c68e:	8b de                	mov    %esi,%ebx
53c690:	83 e3 01             	and    $0x1,%ebx
53c693:	83 e6 fe             	and    $0xfffffffe,%esi
53c696:	74 16                	je     0x53c6ae
53c698:	83 fe 02             	cmp    $0x2,%esi
53c69b:	74 43                	je     0x53c6e0
53c69d:	83 fe 04             	cmp    $0x4,%esi
53c6a0:	74 0c                	je     0x53c6ae
53c6a2:	83 fe 06             	cmp    $0x6,%esi
53c6a5:	74 39                	je     0x53c6e0
53c6a7:	68 00 01 00 00       	push   $0x100
53c6ac:	eb 63                	jmp    0x53c711
53c6ae:	85 db                	test   %ebx,%ebx
53c6b0:	74 07                	je     0x53c6b9
53c6b2:	68 04 01 00 00       	push   $0x104
53c6b7:	eb 58                	jmp    0x53c711
53c6b9:	85 f6                	test   %esi,%esi
53c6bb:	75 23                	jne    0x53c6e0
53c6bd:	83 ff 01             	cmp    $0x1,%edi
53c6c0:	74 07                	je     0x53c6c9
53c6c2:	68 0a 01 00 00       	push   $0x10a
53c6c7:	eb 48                	jmp    0x53c711
53c6c9:	ff 74 24 28          	push   0x28(%esp)
53c6cd:	ff 74 24 28          	push   0x28(%esp)
53c6d1:	e8 7a 22 fd ff       	call   0x50e950
53c6d6:	83 c4 08             	add    $0x8,%esp
53c6d9:	5e                   	pop    %esi
53c6da:	5b                   	pop    %ebx
53c6db:	5f                   	pop    %edi
53c6dc:	83 c4 14             	add    $0x14,%esp
53c6df:	c3                   	ret
53c6e0:	ff 74 24 24          	push   0x24(%esp)
53c6e4:	e8 b7 14 fd ff       	call   0x50dba0
53c6e9:	89 44 24 14          	mov    %eax,0x14(%esp)
53c6ed:	83 c4 04             	add    $0x4,%esp
53c6f0:	83 c0 07             	add    $0x7,%eax
53c6f3:	99                   	cltd
53c6f4:	83 e2 07             	and    $0x7,%edx
53c6f7:	03 c2                	add    %edx,%eax
53c6f9:	c1 f8 03             	sar    $0x3,%eax
53c6fc:	89 44 24 0c          	mov    %eax,0xc(%esp)
53c700:	83 fe 02             	cmp    $0x2,%esi
53c703:	74 02                	je     0x53c707
53c705:	03 c0                	add    %eax,%eax
53c707:	40                   	inc    %eax
53c708:	3b f8                	cmp    %eax,%edi
53c70a:	74 24                	je     0x53c730
53c70c:	68 18 01 00 00       	push   $0x118
53c711:	68 78 a2 64 00       	push   $0x64a278
53c716:	6a 66                	push   $0x66
53c718:	68 a0 00 00 00       	push   $0xa0
53c71d:	6a 10                	push   $0x10
53c71f:	e8 5c c8 f9 ff       	call   0x4d8f80
53c724:	83 c4 14             	add    $0x14,%esp
53c727:	5e                   	pop    %esi
53c728:	5b                   	pop    %ebx
53c729:	33 c0                	xor    %eax,%eax
53c72b:	5f                   	pop    %edi
53c72c:	83 c4 14             	add    $0x14,%esp
53c72f:	c3                   	ret
53c730:	8b 7c 24 34          	mov    0x34(%esp),%edi
53c734:	85 ff                	test   %edi,%edi
53c736:	75 0f                	jne    0x53c747
53c738:	e8 e3 b5 fa ff       	call   0x4e7d20
53c73d:	89 44 24 14          	mov    %eax,0x14(%esp)
53c741:	8b f8                	mov    %eax,%edi
53c743:	85 c0                	test   %eax,%eax
53c745:	74 e0                	je     0x53c727
53c747:	55                   	push   %ebp
53c748:	57                   	push   %edi
53c749:	e8 c2 b6 fa ff       	call   0x4e7e10
53c74e:	57                   	push   %edi
53c74f:	e8 7c b4 fa ff       	call   0x4e7bd0
53c754:	57                   	push   %edi
53c755:	8b e8                	mov    %eax,%ebp
53c757:	e8 74 b4 fa ff       	call   0x4e7bd0
53c75c:	57                   	push   %edi
53c75d:	89 44 24 44          	mov    %eax,0x44(%esp)
53c761:	e8 6a b4 fa ff       	call   0x4e7bd0
53c766:	83 c4 10             	add    $0x10,%esp
53c769:	89 44 24 20          	mov    %eax,0x20(%esp)
53c76d:	85 c0                	test   %eax,%eax
53c76f:	0f 84 f9 00 00 00    	je     0x53c86e
53c775:	8b 4c 24 30          	mov    0x30(%esp),%ecx
53c779:	55                   	push   %ebp
53c77a:	ff 74 24 14          	push   0x14(%esp)
53c77e:	41                   	inc    %ecx
53c77f:	51                   	push   %ecx
53c780:	e8 eb ce f9 ff       	call   0x4d9670
53c785:	83 c4 0c             	add    $0xc,%esp
53c788:	85 c0                	test   %eax,%eax
53c78a:	0f 84 de 00 00 00    	je     0x53c86e
53c790:	55                   	push   %ebp
53c791:	e8 8a d6 f9 ff       	call   0x4d9e20
53c796:	83 c4 04             	add    $0x4,%esp
53c799:	3b 44 24 14          	cmp    0x14(%esp),%eax
53c79d:	7e 20                	jle    0x53c7bf
53c79f:	68 2c 01 00 00       	push   $0x12c
53c7a4:	68 78 a2 64 00       	push   $0x64a278
53c7a9:	6a 66                	push   $0x66
53c7ab:	68 a0 00 00 00       	push   $0xa0
53c7b0:	6a 10                	push   $0x10
53c7b2:	e8 c9 c7 f9 ff       	call   0x4d8f80
53c7b7:	83 c4 14             	add    $0x14,%esp
53c7ba:	e9 af 00 00 00       	jmp    0x53c86e
53c7bf:	83 fe 02             	cmp    $0x2,%esi
53c7c2:	75 15                	jne    0x53c7d9
53c7c4:	57                   	push   %edi
53c7c5:	53                   	push   %ebx
53c7c6:	55                   	push   %ebp
53c7c7:	ff 74 24 38          	push   0x38(%esp)
53c7cb:	ff 74 24 38          	push   0x38(%esp)
53c7cf:	e8 5c 2e fd ff       	call   0x50f630
53c7d4:	e9 86 00 00 00       	jmp    0x53c85f
53c7d9:	ff 74 24 34          	push   0x34(%esp)
53c7dd:	8b 4c 24 34          	mov    0x34(%esp),%ecx
53c7e1:	8b 44 24 14          	mov    0x14(%esp),%eax
53c7e5:	41                   	inc    %ecx
53c7e6:	50                   	push   %eax
53c7e7:	03 c1                	add    %ecx,%eax
53c7e9:	50                   	push   %eax
53c7ea:	e8 81 ce f9 ff       	call   0x4d9670
53c7ef:	83 c4 0c             	add    $0xc,%esp
53c7f2:	85 c0                	test   %eax,%eax
53c7f4:	74 78                	je     0x53c86e
53c7f6:	ff 74 24 34          	push   0x34(%esp)
53c7fa:	e8 21 d6 f9 ff       	call   0x4d9e20
53c7ff:	83 c4 04             	add    $0x4,%esp
53c802:	3b 44 24 14          	cmp    0x14(%esp),%eax
53c806:	7e 07                	jle    0x53c80f
53c808:	68 37 01 00 00       	push   $0x137
53c80d:	eb 95                	jmp    0x53c7a4
53c80f:	83 fe 06             	cmp    $0x6,%esi
53c812:	75 38                	jne    0x53c84c
53c814:	8b 4c 24 28          	mov    0x28(%esp),%ecx
53c818:	8b 74 24 20          	mov    0x20(%esp),%esi
53c81c:	57                   	push   %edi
53c81d:	55                   	push   %ebp
53c81e:	8b 01                	mov    (%ecx),%eax
53c820:	ff 74 24 3c          	push   0x3c(%esp)
53c824:	56                   	push   %esi
53c825:	8b 80 90 00 00 00    	mov    0x90(%eax),%eax
53c82b:	51                   	push   %ecx
53c82c:	ff d0                	call   *%eax
53c82e:	83 c4 14             	add    $0x14,%esp
53c831:	85 c0                	test   %eax,%eax
53c833:	74 39                	je     0x53c86e
53c835:	56                   	push   %esi
53c836:	e8 b5 d4 f9 ff       	call   0x4d9cf0
53c83b:	83 c4 04             	add    $0x4,%esp
53c83e:	3b d8                	cmp    %eax,%ebx
53c840:	74 0a                	je     0x53c84c
53c842:	68 3e 01 00 00       	push   $0x13e
53c847:	e9 58 ff ff ff       	jmp    0x53c7a4
53c84c:	57                   	push   %edi
53c84d:	ff 74 24 38          	push   0x38(%esp)
53c851:	55                   	push   %ebp
53c852:	ff 74 24 38          	push   0x38(%esp)
53c856:	ff 74 24 38          	push   0x38(%esp)
53c85a:	e8 e1 1f fd ff       	call   0x50e840
53c85f:	83 c4 14             	add    $0x14,%esp
53c862:	85 c0                	test   %eax,%eax
53c864:	74 08                	je     0x53c86e
53c866:	c7 44 24 1c 01 00 00 	movl   $0x1,0x1c(%esp)
53c86d:	00
53c86e:	57                   	push   %edi
53c86f:	e8 5c b2 fa ff       	call   0x4e7ad0
53c874:	ff 74 24 1c          	push   0x1c(%esp)
53c878:	e8 c3 b2 fa ff       	call   0x4e7b40
53c87d:	8b 44 24 24          	mov    0x24(%esp),%eax
53c881:	83 c4 08             	add    $0x8,%esp
53c884:	5d                   	pop    %ebp
53c885:	5e                   	pop    %esi
53c886:	5b                   	pop    %ebx
53c887:	5f                   	pop    %edi
53c888:	83 c4 14             	add    $0x14,%esp
53c88b:	c3                   	ret
53c88c:	cc                   	int3
53c88d:	cc                   	int3
53c88e:	cc                   	int3
53c88f:	cc                   	int3
53c890:	b8 14 00 00 00       	mov    $0x14,%eax
53c895:	e8 16 4f 09 00       	call   0x5d17b0
53c89a:	53                   	push   %ebx
53c89b:	8b 5c 24 24          	mov    0x24(%esp),%ebx
53c89f:	55                   	push   %ebp
53c8a0:	56                   	push   %esi
53c8a1:	33 f6                	xor    %esi,%esi
53c8a3:	89 74 24 14          	mov    %esi,0x14(%esp)
53c8a7:	57                   	push   %edi
53c8a8:	83 fb 02             	cmp    $0x2,%ebx
53c8ab:	74 35                	je     0x53c8e2
53c8ad:	83 fb 04             	cmp    $0x4,%ebx
53c8b0:	74 30                	je     0x53c8e2
53c8b2:	83 fb 06             	cmp    $0x6,%ebx
53c8b5:	74 2b                	je     0x53c8e2
53c8b7:	6a 7e                	push   $0x7e
53c8b9:	68 78 a2 64 00       	push   $0x64a278
53c8be:	6a 68                	push   $0x68
53c8c0:	68 a1 00 00 00       	push   $0xa1
53c8c5:	6a 10                	push   $0x10
53c8c7:	e8 b4 c6 f9 ff       	call   0x4d8f80
53c8cc:	83 c4 14             	add    $0x14,%esp
53c8cf:	56                   	push   %esi
53c8d0:	e8 6b b2 fa ff       	call   0x4e7b40
53c8d5:	83 c4 04             	add    $0x4,%esp
53c8d8:	33 c0                	xor    %eax,%eax
53c8da:	5f                   	pop    %edi
53c8db:	5e                   	pop    %esi
53c8dc:	5d                   	pop    %ebp
53c8dd:	5b                   	pop    %ebx
53c8de:	83 c4 14             	add    $0x14,%esp
53c8e1:	c3                   	ret
53c8e2:	ff 74 24 2c          	push   0x2c(%esp)
53c8e6:	8b 7c 24 2c          	mov    0x2c(%esp),%edi
53c8ea:	57                   	push   %edi
53c8eb:	e8 70 1c fd ff       	call   0x50e560
53c8f0:	83 c4 08             	add    $0x8,%esp
53c8f3:	85 c0                	test   %eax,%eax
53c8f5:	74 44                	je     0x53c93b
53c8f7:	8b 44 24 34          	mov    0x34(%esp),%eax
53c8fb:	85 c0                	test   %eax,%eax
53c8fd:	74 2f                	je     0x53c92e
53c8ff:	83 7c 24 38 01       	cmpl   $0x1,0x38(%esp)
53c904:	73 25                	jae    0x53c92b
53c906:	68 86 00 00 00       	push   $0x86
53c90b:	68 78 a2 64 00       	push   $0x64a278
53c910:	6a 64                	push   $0x64
53c912:	68 a1 00 00 00       	push   $0xa1
53c917:	6a 10                	push   $0x10
53c919:	e8 62 c6 f9 ff       	call   0x4d8f80
53c91e:	83 c4 14             	add    $0x14,%esp
53c921:	5f                   	pop    %edi
53c922:	5e                   	pop    %esi
53c923:	5d                   	pop    %ebp
53c924:	33 c0                	xor    %eax,%eax
53c926:	5b                   	pop    %ebx
53c927:	83 c4 14             	add    $0x14,%esp
53c92a:	c3                   	ret
53c92b:	c6 00 00             	movb   $0x0,(%eax)
53c92e:	5f                   	pop    %edi
53c92f:	5e                   	pop    %esi
53c930:	5d                   	pop    %ebp
53c931:	b8 01 00 00 00       	mov    $0x1,%eax
53c936:	5b                   	pop    %ebx
53c937:	83 c4 14             	add    $0x14,%esp
53c93a:	c3                   	ret
53c93b:	57                   	push   %edi
53c93c:	e8 5f 12 fd ff       	call   0x50dba0
53c941:	83 c0 07             	add    $0x7,%eax
53c944:	83 c4 04             	add    $0x4,%esp
53c947:	99                   	cltd
53c948:	83 e2 07             	and    $0x7,%edx
53c94b:	03 c2                	add    %edx,%eax
53c94d:	c1 f8 03             	sar    $0x3,%eax
53c950:	89 44 24 14          	mov    %eax,0x14(%esp)
53c954:	83 fb 02             	cmp    $0x2,%ebx
53c957:	74 02                	je     0x53c95b
53c959:	03 c0                	add    %eax,%eax
53c95b:	8b 6c 24 34          	mov    0x34(%esp),%ebp
53c95f:	40                   	inc    %eax
53c960:	89 44 24 20          	mov    %eax,0x20(%esp)
53c964:	85 ed                	test   %ebp,%ebp
53c966:	0f 84 1e 02 00 00    	je     0x53cb8a
53c96c:	39 44 24 38          	cmp    %eax,0x38(%esp)
53c970:	73 2e                	jae    0x53c9a0
53c972:	68 97 00 00 00       	push   $0x97
53c977:	68 78 a2 64 00       	push   $0x64a278
53c97c:	6a 64                	push   $0x64
53c97e:	68 a1 00 00 00       	push   $0xa1
53c983:	6a 10                	push   $0x10
53c985:	e8 f6 c5 f9 ff       	call   0x4d8f80
53c98a:	83 c4 14             	add    $0x14,%esp
53c98d:	56                   	push   %esi
53c98e:	e8 ad b1 fa ff       	call   0x4e7b40
53c993:	83 c4 04             	add    $0x4,%esp
53c996:	33 c0                	xor    %eax,%eax
53c998:	5f                   	pop    %edi
53c999:	5e                   	pop    %esi
53c99a:	5d                   	pop    %ebp
53c99b:	5b                   	pop    %ebx
53c99c:	83 c4 14             	add    $0x14,%esp
53c99f:	c3                   	ret
53c9a0:	8b 7c 24 3c          	mov    0x3c(%esp),%edi
53c9a4:	85 ff                	test   %edi,%edi
53c9a6:	75 15                	jne    0x53c9bd
53c9a8:	e8 73 b3 fa ff       	call   0x4e7d20
53c9ad:	8b f0                	mov    %eax,%esi
53c9af:	89 44 24 18          	mov    %eax,0x18(%esp)
53c9b3:	8b fe                	mov    %esi,%edi
53c9b5:	85 f6                	test   %esi,%esi
53c9b7:	0f 84 64 ff ff ff    	je     0x53c921
53c9bd:	57                   	push   %edi
53c9be:	e8 4d b4 fa ff       	call   0x4e7e10
53c9c3:	57                   	push   %edi