58d71e:	cc                   	int3
58d71f:	cc                   	int3
58d720:	56                   	push   %esi
58d721:	8b 74 24 08          	mov    0x8(%esp),%esi
58d725:	57                   	push   %edi
58d726:	68 1c 11 00 00       	push   $0x111c
58d72b:	68 08 6f 66 00       	push   $0x666f08
58d730:	ff b6 c8 00 00 00    	push   0xc8(%esi)
58d736:	e8 45 30 f5 ff       	call   0x4e0780
58d73b:	8b 44 24 1c          	mov    0x1c(%esp),%eax
58d73f:	83 c4 0c             	add    $0xc,%esp
58d742:	c7 86 c8 00 00 00 00 	movl   $0x0,0xc8(%esi)
58d749:	00 00 00
58d74c:	c7 86 cc 00 00 00 00 	movl   $0x0,0xcc(%esi)
58d753:	00 00 00
58d756:	85 c0                	test   %eax,%eax
58d758:	74 34                	je     0x58d78e
58d75a:	8b 7c 24 14          	mov    0x14(%esp),%edi
58d75e:	85 ff                	test   %edi,%edi
58d760:	74 2c                	je     0x58d78e
58d762:	81 ff ff 00 00 00    	cmp    $0xff,%edi
58d768:	77 2c                	ja     0x58d796
58d76a:	68 23 11 00 00       	push   $0x1123
58d76f:	68 08 6f 66 00       	push   $0x666f08
58d774:	57                   	push   %edi
58d775:	50                   	push   %eax
58d776:	e8 f5 48 f5 ff       	call   0x4e2070
58d77b:	83 c4 10             	add    $0x10,%esp
58d77e:	89 86 c8 00 00 00    	mov    %eax,0xc8(%esi)
58d784:	85 c0                	test   %eax,%eax
58d786:	74 0e                	je     0x58d796
58d788:	89 be cc 00 00 00    	mov    %edi,0xcc(%esi)
58d78e:	5f                   	pop    %edi
58d78f:	b8 01 00 00 00       	mov    $0x1,%eax
58d794:	5e                   	pop    %esi
58d795:	c3                   	ret
58d796:	5f                   	pop    %edi
58d797:	33 c0                	xor    %eax,%eax
58d799:	5e                   	pop    %esi
58d79a:	c3                   	ret
58d79b:	cc                   	int3
58d79c:	cc                   	int3
58d79d:	cc                   	int3
58d79e:	cc                   	int3
58d79f:	cc                   	int3
58d7a0:	56                   	push   %esi
58d7a1:	8b 74 24 08          	mov    0x8(%esp),%esi
58d7a5:	83 7e 24 00          	cmpl   $0x0,0x24(%esi)
58d7a9:	0f 85 95 00 00 00    	jne    0x58d844
58d7af:	56                   	push   %esi
58d7b0:	e8 5b 18 00 00       	call   0x58f010
58d7b5:	83 c4 04             	add    $0x4,%esp
58d7b8:	85 c0                	test   %eax,%eax
58d7ba:	0f 85 84 00 00 00    	jne    0x58d844
58d7c0:	8b 4e 28             	mov    0x28(%esi),%ecx
58d7c3:	f6 c1 01             	test   $0x1,%cl
58d7c6:	75 34                	jne    0x58d7fc
58d7c8:	50                   	push   %eax
58d7c9:	83 c9 01             	or     $0x1,%ecx
58d7cc:	6a 01                	push   $0x1
58d7ce:	56                   	push   %esi
58d7cf:	89 4e 28             	mov    %ecx,0x28(%esi)
58d7d2:	e8 d9 6d 01 00       	call   0x5a45b0
58d7d7:	8b 46 7c             	mov    0x7c(%esi),%eax
58d7da:	83 c4 0c             	add    $0xc,%esp
58d7dd:	83 b8 e8 00 00 00 00 	cmpl   $0x0,0xe8(%eax)
58d7e4:	75 59                	jne    0x58d83f
58d7e6:	83 7e 28 03          	cmpl   $0x3,0x28(%esi)
58d7ea:	75 0c                	jne    0x58d7f8
58d7ec:	8b 46 7c             	mov    0x7c(%esi),%eax
58d7ef:	83 b8 e8 00 00 00 00 	cmpl   $0x0,0xe8(%eax)
58d7f6:	74 53                	je     0x58d84b
58d7f8:	33 c0                	xor    %eax,%eax
58d7fa:	5e                   	pop    %esi
58d7fb:	c3                   	ret
58d7fc:	8b 46 7c             	mov    0x7c(%esi),%eax
58d7ff:	83 b8 e8 00 00 00 00 	cmpl   $0x0,0xe8(%eax)
58d806:	74 11                	je     0x58d819
58d808:	8b 46 04             	mov    0x4(%esi),%eax
58d80b:	56                   	push   %esi
58d80c:	8b 40 40             	mov    0x40(%eax),%eax
58d80f:	ff d0                	call   *%eax
58d811:	83 c4 04             	add    $0x4,%esp
58d814:	83 f8 ff             	cmp    $0xffffffff,%eax
58d817:	eb 24                	jmp    0x58d83d
58d819:	f6 c1 02             	test   $0x2,%cl
58d81c:	75 c8                	jne    0x58d7e6
58d81e:	8b 46 04             	mov    0x4(%esi),%eax
58d821:	8d 4c 24 08          	lea    0x8(%esp),%ecx
58d825:	51                   	push   %ecx
58d826:	6a 00                	push   $0x0
58d828:	6a 00                	push   $0x0
58d82a:	8b 40 38             	mov    0x38(%eax),%eax
58d82d:	6a 00                	push   $0x0
58d82f:	6a 00                	push   $0x0
58d831:	6a 00                	push   $0x0
58d833:	56                   	push   %esi
58d834:	ff d0                	call   *%eax
58d836:	83 c4 1c             	add    $0x1c,%esp
58d839:	f6 46 28 02          	testb  $0x2,0x28(%esi)
58d83d:	75 a7                	jne    0x58d7e6
58d83f:	83 c8 ff             	or     $0xffffffff,%eax
58d842:	5e                   	pop    %esi
58d843:	c3                   	ret
58d844:	c7 46 28 03 00 00 00 	movl   $0x3,0x28(%esi)
58d84b:	b8 01 00 00 00       	mov    $0x1,%eax
58d850:	5e                   	pop    %esi
58d851:	c3                   	ret
58d852:	cc                   	int3
58d853:	cc                   	int3
58d854:	cc                   	int3
58d855:	cc                   	int3
58d856:	cc                   	int3
58d857:	cc                   	int3
58d858:	cc                   	int3
58d859:	cc                   	int3
58d85a:	cc                   	int3
58d85b:	cc                   	int3
58d85c:	cc                   	int3
58d85d:	cc                   	int3
58d85e:	cc                   	int3
58d85f:	cc                   	int3
58d860:	56                   	push   %esi
58d861:	6a 00                	push   $0x0
58d863:	ff 15 04 21 60 00    	call   *0x602104
58d869:	8b 74 24 08          	mov    0x8(%esp),%esi
58d86d:	8b 46 7c             	mov    0x7c(%esi),%eax
58d870:	83 b8 f0 00 00 00 00 	cmpl   $0x0,0xf0(%eax)
58d877:	74 0b                	je     0x58d884
58d879:	6a 00                	push   $0x0
58d87b:	56                   	push   %esi
58d87c:	e8 1f fe ff ff       	call   0x58d6a0
58d881:	83 c4 08             	add    $0x8,%esp
58d884:	ff 74 24 14          	push   0x14(%esp)
58d888:	8b 46 04             	mov    0x4(%esi),%eax
58d88b:	ff 74 24 14          	push   0x14(%esp)
58d88f:	ff 74 24 14          	push   0x14(%esp)
58d893:	8b 40 3c             	mov    0x3c(%eax),%eax
58d896:	6a 17                	push   $0x17
58d898:	56                   	push   %esi
58d899:	ff d0                	call   *%eax
58d89b:	83 c4 14             	add    $0x14,%esp
58d89e:	5e                   	pop    %esi
58d89f:	c3                   	ret
58d8a0:	b8 04 00 00 00       	mov    $0x4,%eax
58d8a5:	e8 06 3f 04 00       	call   0x5d17b0
58d8aa:	8b 44 24 0c          	mov    0xc(%esp),%eax
58d8ae:	56                   	push   %esi
58d8af:	57                   	push   %edi
58d8b0:	33 f6                	xor    %esi,%esi
58d8b2:	33 ff                	xor    %edi,%edi
58d8b4:	89 74 24 08          	mov    %esi,0x8(%esp)
58d8b8:	85 c0                	test   %eax,%eax
58d8ba:	0f 84 7e 01 00 00    	je     0x58da3e
58d8c0:	39 74 24 18          	cmp    %esi,0x18(%esp)
58d8c4:	0f 84 74 01 00 00    	je     0x58da3e
58d8ca:	53                   	push   %ebx
58d8cb:	57                   	push   %edi
58d8cc:	50                   	push   %eax
58d8cd:	e8 4e 9a f5 ff       	call   0x4e7320
58d8d2:	8b d8                	mov    %eax,%ebx
58d8d4:	53                   	push   %ebx
58d8d5:	e8 96 ce fc ff       	call   0x55a770
58d8da:	83 c4 0c             	add    $0xc,%esp
58d8dd:	85 c0                	test   %eax,%eax
58d8df:	0f 8e 16 01 00 00    	jle    0x58d9fb
58d8e5:	ff 74 24 1c          	push   0x1c(%esp)
58d8e9:	53                   	push   %ebx
58d8ea:	e8 f1 ce fc ff       	call   0x55a7e0
58d8ef:	83 c4 08             	add    $0x8,%esp
58d8f2:	85 c0                	test   %eax,%eax
58d8f4:	0f 8e 01 01 00 00    	jle    0x58d9fb
58d8fa:	8d 44 24 0c          	lea    0xc(%esp),%eax
58d8fe:	50                   	push   %eax
58d8ff:	57                   	push   %edi
58d900:	53                   	push   %ebx
58d901:	e8 7a cd fc ff       	call   0x55a680
58d906:	83 c4 0c             	add    $0xc,%esp
58d909:	85 c0                	test   %eax,%eax
58d90b:	0f 8e ea 00 00 00    	jle    0x58d9fb
58d911:	68 bd 12 00 00       	push   $0x12bd
58d916:	68 08 6f 66 00       	push   $0x666f08
58d91b:	ff 74 24 14          	push   0x14(%esp)
58d91f:	e8 2c 2e f5 ff       	call   0x4e0750
58d924:	8b f8                	mov    %eax,%edi
58d926:	83 c4 0c             	add    $0xc,%esp
58d929:	85 ff                	test   %edi,%edi
58d92b:	75 11                	jne    0x58d93e
58d92d:	68 c0 12 00 00       	push   $0x12c0
58d932:	68 08 6f 66 00       	push   $0x666f08
58d937:	6a 41                	push   $0x41
58d939:	e9 c9 00 00 00       	jmp    0x58da07
58d93e:	8d 44 24 0c          	lea    0xc(%esp),%eax
58d942:	50                   	push   %eax
58d943:	57                   	push   %edi
58d944:	53                   	push   %ebx
58d945:	e8 36 cd fc ff       	call   0x55a680
58d94a:	83 c4 0c             	add    $0xc,%esp
58d94d:	85 c0                	test   %eax,%eax
58d94f:	7f 0a                	jg     0x58d95b
58d951:	68 c6 12 00 00       	push   $0x12c6
58d956:	e9 a5 00 00 00       	jmp    0x58da00
58d95b:	39 74 24 20          	cmp    %esi,0x20(%esp)
58d95f:	74 77                	je     0x58d9d8
58d961:	8b 74 24 14          	mov    0x14(%esp),%esi
58d965:	8b 4e 04             	mov    0x4(%esi),%ecx
58d968:	8b 41 64             	mov    0x64(%ecx),%eax
58d96b:	f6 40 30 08          	testb  $0x8,0x30(%eax)
58d96f:	75 53                	jne    0x58d9c4
58d971:	8b 01                	mov    (%ecx),%eax
58d973:	3d 04 03 00 00       	cmp    $0x304,%eax
58d978:	7c 4a                	jl     0x58d9c4
58d97a:	3d 00 00 01 00       	cmp    $0x10000,%eax
58d97f:	74 43                	je     0x58d9c4
58d981:	83 be 8c 00 00 00 00 	cmpl   $0x0,0x8c(%esi)
58d988:	75 24                	jne    0x58d9ae
58d98a:	8d 86 cc 00 00 00    	lea    0xcc(%esi),%eax
58d990:	50                   	push   %eax
58d991:	6a 00                	push   $0x0
58d993:	6a 00                	push   $0x0
58d995:	6a 00                	push   $0x0
58d997:	56                   	push   %esi
58d998:	e8 63 a9 ff ff       	call   0x588300
58d99d:	83 c4 04             	add    $0x4,%esp
58d9a0:	50                   	push   %eax
58d9a1:	56                   	push   %esi
58d9a2:	e8 e9 95 00 00       	call   0x596f90
58d9a7:	83 c4 18             	add    $0x18,%esp
58d9aa:	85 c0                	test   %eax,%eax
58d9ac:	74 12                	je     0x58d9c0
58d9ae:	ff 74 24 0c          	push   0xc(%esp)
58d9b2:	57                   	push   %edi
58d9b3:	56                   	push   %esi
58d9b4:	e8 67 95 00 00       	call   0x596f20
58d9b9:	83 c4 0c             	add    $0xc,%esp
58d9bc:	85 c0                	test   %eax,%eax
58d9be:	75 34                	jne    0x58d9f4
58d9c0:	33 f6                	xor    %esi,%esi
58d9c2:	eb 56                	jmp    0x58da1a
58d9c4:	6a 00                	push   $0x0
58d9c6:	ff 74 24 10          	push   0x10(%esp)
58d9ca:	57                   	push   %edi
58d9cb:	56                   	push   %esi
58d9cc:	e8 af 01 00 00       	call   0x58db80
58d9d1:	83 c4 10             	add    $0x10,%esp
58d9d4:	8b f0                	mov    %eax,%esi
58d9d6:	eb 42                	jmp    0x58da1a
58d9d8:	8b 4c 24 14          	mov    0x14(%esp),%ecx
58d9dc:	8b 41 7c             	mov    0x7c(%ecx),%eax
58d9df:	89 b8 50 02 00 00    	mov    %edi,0x250(%eax)
58d9e5:	33 ff                	xor    %edi,%edi
58d9e7:	8b 49 7c             	mov    0x7c(%ecx),%ecx
58d9ea:	8b 44 24 0c          	mov    0xc(%esp),%eax
58d9ee:	89 81 54 02 00 00    	mov    %eax,0x254(%ecx)
58d9f4:	be 01 00 00 00       	mov    $0x1,%esi
58d9f9:	eb 1f                	jmp    0x58da1a
58d9fb:	68 b9 12 00 00       	push   $0x12b9
58da00:	68 08 6f 66 00       	push   $0x666f08
58da05:	6a 44                	push   $0x44
58da07:	68 4e 02 00 00       	push   $0x24e
58da0c:	6a 50                	push   $0x50
58da0e:	ff 74 24 28          	push   0x28(%esp)
58da12:	e8 f9 16 00 00       	call   0x58f110
58da17:	83 c4 18             	add    $0x18,%esp
58da1a:	68 e5 12 00 00       	push   $0x12e5
58da1f:	68 08 6f 66 00       	push   $0x666f08
58da24:	ff 74 24 14          	push   0x14(%esp)
58da28:	57                   	push   %edi
58da29:	e8 12 2e f5 ff       	call   0x4e0840
58da2e:	53                   	push   %ebx
58da2f:	e8 bc 97 f5 ff       	call   0x4e71f0
58da34:	83 c4 14             	add    $0x14,%esp
58da37:	8b c6                	mov    %esi,%eax
58da39:	5b                   	pop    %ebx
58da3a:	5f                   	pop    %edi
58da3b:	5e                   	pop    %esi
58da3c:	59                   	pop    %ecx
58da3d:	c3                   	ret
58da3e:	68 af 12 00 00       	push   $0x12af
58da43:	68 08 6f 66 00       	push   $0x666f08
58da48:	6a 44                	push   $0x44
58da4a:	68 4e 02 00 00       	push   $0x24e
58da4f:	6a 50                	push   $0x50
58da51:	ff 74 24 24          	push   0x24(%esp)
58da55:	e8 b6 16 00 00       	call   0x58f110
58da5a:	83 c4 18             	add    $0x18,%esp
58da5d:	33 c0                	xor    %eax,%eax
58da5f:	5f                   	pop    %edi
58da60:	5e                   	pop    %esi
58da61:	59                   	pop    %ecx
58da62:	c3                   	ret
58da63:	cc                   	int3
58da64:	cc                   	int3
58da65:	cc                   	int3
58da66:	cc                   	int3
58da67:	cc                   	int3
58da68:	cc                   	int3
58da69:	cc                   	int3
58da6a:	cc                   	int3
58da6b:	cc                   	int3
58da6c:	cc                   	int3
58da6d:	cc                   	int3
58da6e:	cc                   	int3
58da6f:	cc                   	int3
58da70:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
58da75:	75 03                	jne    0x58da7a
58da77:	33 c0                	xor    %eax,%eax
58da79:	c3                   	ret
58da7a:	56                   	push   %esi
58da7b:	e8 d0 34 f6 ff       	call   0x4f0f50
58da80:	ff 74 24 08          	push   0x8(%esp)
58da84:	8b f0                	mov    %eax,%esi
58da86:	56                   	push   %esi
58da87:	e8 c4 36 f6 ff       	call   0x4f1150
58da8c:	83 c4 08             	add    $0x8,%esp
58da8f:	85 c0                	test   %eax,%eax
58da91:	7f 0d                	jg     0x58daa0
58da93:	56                   	push   %esi
58da94:	e8 47 32 f6 ff       	call   0x4f0ce0
58da99:	83 c4 04             	add    $0x4,%esp
58da9c:	33 c0                	xor    %eax,%eax
58da9e:	5e                   	pop    %esi
58da9f:	c3                   	ret
58daa0:	8b c6                	mov    %esi,%eax
58daa2:	5e                   	pop    %esi
58daa3:	c3                   	ret
58daa4:	cc                   	int3
58daa5:	cc                   	int3
58daa6:	cc                   	int3
58daa7:	cc                   	int3
58daa8:	cc                   	int3
58daa9:	cc                   	int3
58daaa:	cc                   	int3
58daab:	cc                   	int3
58daac:	cc                   	int3
58daad:	cc                   	int3
58daae:	cc                   	int3
58daaf:	cc                   	int3
58dab0:	56                   	push   %esi
58dab1:	8b 74 24 14          	mov    0x14(%esp),%esi
58dab5:	57                   	push   %edi
58dab6:	83 fe 04             	cmp    $0x4,%esi
58dab9:	0f 82 ad 00 00 00    	jb     0x58db6c
58dabf:	83 7c 24 10 00       	cmpl   $0x0,0x10(%esp)
58dac4:	8b 44 24 0c          	mov    0xc(%esp),%eax
58dac8:	8b 80 f0 04 00 00    	mov    0x4f0(%eax),%eax
58dace:	74 05                	je     0x58dad5
58dad0:	c1 e8 06             	shr    $0x6,%eax
58dad3:	eb 03                	jmp    0x58dad8
58dad5:	c1 e8 05             	shr    $0x5,%eax