58d6b2:	85 c0                	test   %eax,%eax
58d6b4:	75 a0                	jne    0x58d656
58d6b6:	5f                   	pop    %edi
58d6b7:	5e                   	pop    %esi
58d6b8:	5d                   	pop    %ebp
58d6b9:	83 c8 ff             	or     $0xffffffff,%eax
58d6bc:	5b                   	pop    %ebx
58d6bd:	83 c4 08             	add    $0x8,%esp
58d6c0:	c3                   	ret
58d6c1:	51                   	push   %ecx
58d6c2:	55                   	push   %ebp
58d6c3:	57                   	push   %edi
58d6c4:	53                   	push   %ebx
58d6c5:	e8 96 f7 ff ff       	call   0x58ce60
58d6ca:	83 c4 10             	add    $0x10,%esp
58d6cd:	85 c0                	test   %eax,%eax
58d6cf:	78 8f                	js     0x58d660
58d6d1:	5f                   	pop    %edi
58d6d2:	03 c6                	add    %esi,%eax
58d6d4:	5e                   	pop    %esi
58d6d5:	5d                   	pop    %ebp
58d6d6:	5b                   	pop    %ebx
58d6d7:	83 c4 08             	add    $0x8,%esp
58d6da:	c3                   	ret
58d6db:	cc                   	int3
58d6dc:	cc                   	int3
58d6dd:	cc                   	int3
58d6de:	cc                   	int3
58d6df:	cc                   	int3
58d6e0:	8b 44 24 04          	mov    0x4(%esp),%eax
58d6e4:	85 c0                	test   %eax,%eax
58d6e6:	75 06                	jne    0x58d6ee
58d6e8:	b8 01 00 00 00       	mov    $0x1,%eax
58d6ed:	c3                   	ret
58d6ee:	ff 74 24 0c          	push   0xc(%esp)
58d6f2:	ff 74 24 0c          	push   0xc(%esp)
58d6f6:	50                   	push   %eax
58d6f7:	e8 54 54 f2 ff       	call   0x4b2b50
58d6fc:	33 c9                	xor    %ecx,%ecx
58d6fe:	83 c4 0c             	add    $0xc,%esp
58d701:	3b 44 24 0c          	cmp    0xc(%esp),%eax
58d705:	0f 94 c1             	sete   %cl
58d708:	8b c1                	mov    %ecx,%eax
58d70a:	c3                   	ret
58d70b:	cc                   	int3
58d70c:	cc                   	int3
58d70d:	cc                   	int3
58d70e:	cc                   	int3
58d70f:	cc                   	int3
58d710:	b8 2c 6b 6c 00       	mov    $0x6c6b2c,%eax
58d715:	c3                   	ret
58d716:	cc                   	int3
58d717:	cc                   	int3
58d718:	cc                   	int3
58d719:	cc                   	int3
58d71a:	cc                   	int3
58d71b:	cc                   	int3
58d71c:	cc                   	int3
58d71d:	cc                   	int3
58d71e:	cc                   	int3
58d71f:	cc                   	int3
58d720:	57                   	push   %edi
58d721:	8b 7c 24 08          	mov    0x8(%esp),%edi
58d725:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
58d729:	74 06                	je     0x58d731
58d72b:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
58d72f:	74 16                	je     0x58d747
58d731:	6a 00                	push   $0x0
58d733:	57                   	push   %edi
58d734:	e8 47 4b 00 00       	call   0x592280
58d739:	83 c4 08             	add    $0x8,%esp
58d73c:	85 c0                	test   %eax,%eax
58d73e:	79 07                	jns    0x58d747
58d740:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
58d745:	5f                   	pop    %edi
58d746:	c3                   	ret
58d747:	53                   	push   %ebx
58d748:	8b 5c 24 10          	mov    0x10(%esp),%ebx
58d74c:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
58d750:	74 06                	je     0x58d758
58d752:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
58d756:	74 17                	je     0x58d76f
58d758:	6a 00                	push   $0x0
58d75a:	53                   	push   %ebx
58d75b:	e8 20 4b 00 00       	call   0x592280
58d760:	83 c4 08             	add    $0x8,%esp
58d763:	85 c0                	test   %eax,%eax
58d765:	79 08                	jns    0x58d76f
58d767:	5b                   	pop    %ebx
58d768:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
58d76d:	5f                   	pop    %edi
58d76e:	c3                   	ret
58d76f:	56                   	push   %esi
58d770:	8b 77 10             	mov    0x10(%edi),%esi
58d773:	8b c6                	mov    %esi,%eax
58d775:	2b 43 10             	sub    0x10(%ebx),%eax
58d778:	75 59                	jne    0x58d7d3
58d77a:	8b 4f 0c             	mov    0xc(%edi),%ecx
58d77d:	8b 53 0c             	mov    0xc(%ebx),%edx
58d780:	83 ee 04             	sub    $0x4,%esi
58d783:	72 11                	jb     0x58d796
58d785:	8b 01                	mov    (%ecx),%eax
58d787:	3b 02                	cmp    (%edx),%eax
58d789:	75 10                	jne    0x58d79b
58d78b:	83 c1 04             	add    $0x4,%ecx
58d78e:	83 c2 04             	add    $0x4,%edx
58d791:	83 ee 04             	sub    $0x4,%esi
58d794:	73 ef                	jae    0x58d785
58d796:	83 fe fc             	cmp    $0xfffffffc,%esi
58d799:	74 36                	je     0x58d7d1
58d79b:	8a 01                	mov    (%ecx),%al
58d79d:	3a 02                	cmp    (%edx),%al
58d79f:	75 27                	jne    0x58d7c8
58d7a1:	83 fe fd             	cmp    $0xfffffffd,%esi
58d7a4:	74 2b                	je     0x58d7d1
58d7a6:	8a 41 01             	mov    0x1(%ecx),%al
58d7a9:	3a 42 01             	cmp    0x1(%edx),%al
58d7ac:	75 1a                	jne    0x58d7c8
58d7ae:	83 fe fe             	cmp    $0xfffffffe,%esi
58d7b1:	74 1e                	je     0x58d7d1
58d7b3:	8a 41 02             	mov    0x2(%ecx),%al
58d7b6:	3a 42 02             	cmp    0x2(%edx),%al
58d7b9:	75 0d                	jne    0x58d7c8
58d7bb:	83 fe ff             	cmp    $0xffffffff,%esi
58d7be:	74 11                	je     0x58d7d1
58d7c0:	8a 41 03             	mov    0x3(%ecx),%al
58d7c3:	3a 42 03             	cmp    0x3(%edx),%al
58d7c6:	74 09                	je     0x58d7d1
58d7c8:	5e                   	pop    %esi
58d7c9:	1b c0                	sbb    %eax,%eax
58d7cb:	5b                   	pop    %ebx
58d7cc:	83 c8 01             	or     $0x1,%eax
58d7cf:	5f                   	pop    %edi
58d7d0:	c3                   	ret
58d7d1:	33 c0                	xor    %eax,%eax
58d7d3:	5e                   	pop    %esi
58d7d4:	5b                   	pop    %ebx
58d7d5:	5f                   	pop    %edi
58d7d6:	c3                   	ret
58d7d7:	cc                   	int3
58d7d8:	cc                   	int3
58d7d9:	cc                   	int3
58d7da:	cc                   	int3
58d7db:	cc                   	int3
58d7dc:	cc                   	int3
58d7dd:	cc                   	int3
58d7de:	cc                   	int3
58d7df:	cc                   	int3
58d7e0:	8b 44 24 04          	mov    0x4(%esp),%eax
58d7e4:	85 c0                	test   %eax,%eax
58d7e6:	74 12                	je     0x58d7fa
58d7e8:	8b 00                	mov    (%eax),%eax
58d7ea:	85 c0                	test   %eax,%eax
58d7ec:	74 0c                	je     0x58d7fa
58d7ee:	ff 70 18             	push   0x18(%eax)
58d7f1:	e8 ba a8 ff ff       	call   0x5880b0
58d7f6:	83 c4 04             	add    $0x4,%esp
58d7f9:	c3                   	ret
58d7fa:	33 c0                	xor    %eax,%eax
58d7fc:	c3                   	ret
58d7fd:	cc                   	int3
58d7fe:	cc                   	int3
58d7ff:	cc                   	int3
58d800:	8b 44 24 04          	mov    0x4(%esp),%eax
58d804:	8b 00                	mov    (%eax),%eax
58d806:	8b 40 14             	mov    0x14(%eax),%eax
58d809:	c3                   	ret
58d80a:	cc                   	int3
58d80b:	cc                   	int3
58d80c:	cc                   	int3
58d80d:	cc                   	int3
58d80e:	cc                   	int3
58d80f:	cc                   	int3
58d810:	56                   	push   %esi
58d811:	57                   	push   %edi
58d812:	8b 7c 24 0c          	mov    0xc(%esp),%edi
58d816:	85 ff                	test   %edi,%edi
58d818:	74 06                	je     0x58d820
58d81a:	8b 37                	mov    (%edi),%esi
58d81c:	85 f6                	test   %esi,%esi
58d81e:	75 0b                	jne    0x58d82b
58d820:	e8 cb 48 00 00       	call   0x5920f0
58d825:	8b f0                	mov    %eax,%esi
58d827:	85 f6                	test   %esi,%esi
58d829:	74 79                	je     0x58d8a4
58d82b:	83 7c 24 10 00       	cmpl   $0x0,0x10(%esp)
58d830:	74 49                	je     0x58d87b
58d832:	ff 36                	push   (%esi)
58d834:	e8 c7 95 f1 ff       	call   0x4a6e00
58d839:	ff 74 24 14          	push   0x14(%esp)
58d83d:	e8 2e 4a f2 ff       	call   0x4b2270
58d842:	33 c9                	xor    %ecx,%ecx
58d844:	89 06                	mov    %eax,(%esi)
58d846:	83 c4 08             	add    $0x8,%esp
58d849:	85 c0                	test   %eax,%eax
58d84b:	0f 95 c1             	setne  %cl
58d84e:	85 c9                	test   %ecx,%ecx
58d850:	74 41                	je     0x58d893
58d852:	ff 74 24 1c          	push   0x1c(%esp)
58d856:	ff 74 24 1c          	push   0x1c(%esp)
58d85a:	ff 74 24 1c          	push   0x1c(%esp)
58d85e:	56                   	push   %esi
58d85f:	e8 cc 00 00 00       	call   0x58d930
58d864:	83 c4 10             	add    $0x10,%esp
58d867:	85 c0                	test   %eax,%eax
58d869:	74 28                	je     0x58d893
58d86b:	85 ff                	test   %edi,%edi
58d86d:	74 07                	je     0x58d876
58d86f:	83 3f 00             	cmpl   $0x0,(%edi)
58d872:	75 02                	jne    0x58d876
58d874:	89 37                	mov    %esi,(%edi)
58d876:	5f                   	pop    %edi
58d877:	8b c6                	mov    %esi,%eax
58d879:	5e                   	pop    %esi
58d87a:	c3                   	ret
58d87b:	68 60 01 00 00       	push   $0x160
58d880:	68 b8 6b 6c 00       	push   $0x6c6bb8
58d885:	6a 43                	push   $0x43
58d887:	6a 73                	push   $0x73
58d889:	6a 0b                	push   $0xb
58d88b:	e8 10 3c f1 ff       	call   0x4a14a0
58d890:	83 c4 14             	add    $0x14,%esp
58d893:	85 ff                	test   %edi,%edi
58d895:	74 04                	je     0x58d89b
58d897:	3b 37                	cmp    (%edi),%esi
58d899:	74 09                	je     0x58d8a4
58d89b:	56                   	push   %esi
58d89c:	e8 2f 48 00 00       	call   0x5920d0
58d8a1:	83 c4 04             	add    $0x4,%esp
58d8a4:	5f                   	pop    %edi
58d8a5:	33 c0                	xor    %eax,%eax
58d8a7:	5e                   	pop    %esi
58d8a8:	c3                   	ret
58d8a9:	cc                   	int3
58d8aa:	cc                   	int3
58d8ab:	cc                   	int3
58d8ac:	cc                   	int3
58d8ad:	cc                   	int3
58d8ae:	cc                   	int3
58d8af:	cc                   	int3
58d8b0:	56                   	push   %esi
58d8b1:	8b 74 24 0c          	mov    0xc(%esp),%esi
58d8b5:	57                   	push   %edi
58d8b6:	6a 00                	push   $0x0
58d8b8:	56                   	push   %esi
58d8b9:	e8 02 a6 f1 ff       	call   0x4a7ec0
58d8be:	8b f8                	mov    %eax,%edi
58d8c0:	83 c4 08             	add    $0x8,%esp
58d8c3:	85 ff                	test   %edi,%edi
58d8c5:	75 2d                	jne    0x58d8f4
58d8c7:	68 27 01 00 00       	push   $0x127
58d8cc:	68 b8 6b 6c 00       	push   $0x6c6bb8
58d8d1:	6a 77                	push   $0x77
58d8d3:	68 83 00 00 00       	push   $0x83
58d8d8:	6a 0b                	push   $0xb
58d8da:	e8 c1 3b f1 ff       	call   0x4a14a0
58d8df:	56                   	push   %esi
58d8e0:	68 bc 2e 6c 00       	push   $0x6c2ebc
58d8e5:	6a 02                	push   $0x2
58d8e7:	e8 d4 36 f1 ff       	call   0x4a0fc0
58d8ec:	83 c4 20             	add    $0x20,%esp
58d8ef:	33 c0                	xor    %eax,%eax
58d8f1:	5f                   	pop    %edi
58d8f2:	5e                   	pop    %esi
58d8f3:	c3                   	ret
58d8f4:	ff 74 24 1c          	push   0x1c(%esp)
58d8f8:	ff 74 24 1c          	push   0x1c(%esp)
58d8fc:	ff 74 24 1c          	push   0x1c(%esp)
58d900:	57                   	push   %edi
58d901:	ff 74 24 1c          	push   0x1c(%esp)
58d905:	e8 06 ff ff ff       	call   0x58d810
58d90a:	57                   	push   %edi
58d90b:	8b f0                	mov    %eax,%esi
58d90d:	e8 ee 94 f1 ff       	call   0x4a6e00
58d912:	83 c4 18             	add    $0x18,%esp
58d915:	8b c6                	mov    %esi,%eax
58d917:	5f                   	pop    %edi
58d918:	5e                   	pop    %esi
58d919:	c3                   	ret
58d91a:	cc                   	int3
58d91b:	cc                   	int3
58d91c:	cc                   	int3
58d91d:	cc                   	int3
58d91e:	cc                   	int3
58d91f:	cc                   	int3
58d920:	8b 44 24 04          	mov    0x4(%esp),%eax
58d924:	85 c0                	test   %eax,%eax
58d926:	75 01                	jne    0x58d929
58d928:	c3                   	ret
58d929:	8b 40 04             	mov    0x4(%eax),%eax
58d92c:	c3                   	ret
58d92d:	cc                   	int3
58d92e:	cc                   	int3
58d92f:	cc                   	int3
58d930:	53                   	push   %ebx
58d931:	8b 5c 24 08          	mov    0x8(%esp),%ebx
58d935:	55                   	push   %ebp
58d936:	56                   	push   %esi
58d937:	85 db                	test   %ebx,%ebx
58d939:	0f 84 a2 00 00 00    	je     0x58d9e1
58d93f:	8b 6c 24 18          	mov    0x18(%esp),%ebp
58d943:	8b 74 24 1c          	mov    0x1c(%esp),%esi
58d947:	85 ed                	test   %ebp,%ebp
58d949:	75 08                	jne    0x58d953
58d94b:	85 f6                	test   %esi,%esi
58d94d:	0f 85 8e 00 00 00    	jne    0x58d9e1
58d953:	57                   	push   %edi
58d954:	8b 7c 24 18          	mov    0x18(%esp),%edi
58d958:	85 ff                	test   %edi,%edi
58d95a:	7e 2a                	jle    0x58d986
58d95c:	f7 c7 00 10 00 00    	test   $0x1000,%edi
58d962:	74 22                	je     0x58d986
58d964:	ff 33                	push   (%ebx)
58d966:	e8 75 a0 f1 ff       	call   0x4a79e0
58d96b:	50                   	push   %eax
58d96c:	57                   	push   %edi
58d96d:	56                   	push   %esi
58d96e:	8d 43 04             	lea    0x4(%ebx),%eax
58d971:	55                   	push   %ebp
58d972:	50                   	push   %eax
58d973:	e8 e8 41 00 00       	call   0x591b60
58d978:	83 c4 18             	add    $0x18,%esp
58d97b:	f7 d8                	neg    %eax
58d97d:	1b c0                	sbb    %eax,%eax
58d97f:	f7 d8                	neg    %eax
58d981:	5f                   	pop    %edi
58d982:	5e                   	pop    %esi
58d983:	5d                   	pop    %ebp
58d984:	5b                   	pop    %ebx
58d985:	c3                   	ret
58d986:	85 f6                	test   %esi,%esi
58d988:	79 0f                	jns    0x58d999
58d98a:	8b f5                	mov    %ebp,%esi
58d98c:	8d 4e 01             	lea    0x1(%esi),%ecx
58d98f:	90                   	nop
58d990:	8a 06                	mov    (%esi),%al
58d992:	46                   	inc    %esi
58d993:	84 c0                	test   %al,%al
58d995:	75 f9                	jne    0x58d990
58d997:	2b f1                	sub    %ecx,%esi
58d999:	56                   	push   %esi
58d99a:	55                   	push   %ebp
58d99b:	ff 73 04             	push   0x4(%ebx)
58d99e:	e8 6d 40 f2 ff       	call   0x4b1a10
58d9a3:	83 c4 0c             	add    $0xc,%esp
58d9a6:	85 c0                	test   %eax,%eax
58d9a8:	75 05                	jne    0x58d9af
58d9aa:	5f                   	pop    %edi
58d9ab:	5e                   	pop    %esi
58d9ac:	5d                   	pop    %ebp