58f71c:	6a 44                	push   $0x44
58f71e:	68 61 01 00 00       	push   $0x161
58f723:	6a 14                	push   $0x14
58f725:	e8 56 98 f4 ff       	call   0x4d8f80
58f72a:	83 c4 14             	add    $0x14,%esp
58f72d:	83 7e 48 00          	cmpl   $0x0,0x48(%esi)
58f731:	74 0a                	je     0x58f73d
58f733:	83 7e 2c 01          	cmpl   $0x1,0x2c(%esi)
58f737:	0f 84 58 01 00 00    	je     0x58f895
58f73d:	c7 46 48 01 00 00 00 	movl   $0x1,0x48(%esi)
58f744:	c7 46 2c 01 00 00 00 	movl   $0x1,0x2c(%esi)
58f74b:	e9 45 01 00 00       	jmp    0x58f895
58f750:	8b 46 7c             	mov    0x7c(%esi),%eax
58f753:	c7 46 74 00 00 00 00 	movl   $0x0,0x74(%esi)
58f75a:	56                   	push   %esi
58f75b:	c7 80 dc 00 00 00 00 	movl   $0x0,0xdc(%eax)
58f762:	00 00 00
58f765:	e8 26 ac ff ff       	call   0x58a390
58f76a:	83 c4 04             	add    $0x4,%esp
58f76d:	85 c0                	test   %eax,%eax
58f76f:	75 07                	jne    0x58f778
58f771:	68 9d 01 00 00       	push   $0x19d
58f776:	eb 9f                	jmp    0x58f717
58f778:	83 7e 40 00          	cmpl   $0x0,0x40(%esi)
58f77c:	75 06                	jne    0x58f784
58f77e:	83 7e 2c 00          	cmpl   $0x0,0x2c(%esi)
58f782:	74 09                	je     0x58f78d
58f784:	83 be ec 05 00 00 00 	cmpl   $0x0,0x5ec(%esi)
58f78b:	74 2d                	je     0x58f7ba
58f78d:	56                   	push   %esi
58f78e:	33 ff                	xor    %edi,%edi
58f790:	e8 eb 68 00 00       	call   0x596080
58f795:	83 c4 04             	add    $0x4,%esp
58f798:	85 c0                	test   %eax,%eax
58f79a:	0f 84 f7 00 00 00    	je     0x58f897
58f7a0:	8b 46 7c             	mov    0x7c(%esi),%eax
58f7a3:	39 b8 80 01 00 00    	cmp    %edi,0x180(%eax)
58f7a9:	74 08                	je     0x58f7b3
58f7ab:	39 b8 04 02 00 00    	cmp    %edi,0x204(%eax)
58f7b1:	75 07                	jne    0x58f7ba
58f7b3:	c7 46 4c 01 00 00 00 	movl   $0x1,0x4c(%esi)
58f7ba:	c7 46 2c 03 00 00 00 	movl   $0x3,0x2c(%esi)
58f7c1:	b8 03 00 00 00       	mov    $0x3,%eax
58f7c6:	c7 46 30 00 00 00 00 	movl   $0x0,0x30(%esi)
58f7cd:	0f 1f 00             	nopl   (%eax)
58f7d0:	83 f8 02             	cmp    $0x2,%eax
58f7d3:	75 14                	jne    0x58f7e9
58f7d5:	56                   	push   %esi
58f7d6:	e8 25 fa ff ff       	call   0x58f200
58f7db:	83 c4 04             	add    $0x4,%esp
58f7de:	83 f8 01             	cmp    $0x1,%eax
58f7e1:	0f 85 ae 00 00 00    	jne    0x58f895
58f7e7:	eb d1                	jmp    0x58f7ba
58f7e9:	83 f8 03             	cmp    $0x3,%eax
58f7ec:	75 36                	jne    0x58f824
58f7ee:	56                   	push   %esi
58f7ef:	e8 2c 01 00 00       	call   0x58f920
58f7f4:	83 c4 04             	add    $0x4,%esp
58f7f7:	83 f8 01             	cmp    $0x1,%eax
58f7fa:	75 15                	jne    0x58f811
58f7fc:	c7 46 2c 02 00 00 00 	movl   $0x2,0x2c(%esi)
58f803:	b8 02 00 00 00       	mov    $0x2,%eax
58f808:	c7 46 38 00 00 00 00 	movl   $0x0,0x38(%esi)
58f80f:	eb bf                	jmp    0x58f7d0
58f811:	33 ff                	xor    %edi,%edi
58f813:	83 f8 02             	cmp    $0x2,%eax
58f816:	75 7f                	jne    0x58f897
58f818:	c7 46 2c 04 00 00 00 	movl   $0x4,0x2c(%esi)
58f81f:	8d 6f 01             	lea    0x1(%edi),%ebp
58f822:	eb 73                	jmp    0x58f897
58f824:	83 7e 48 00          	cmpl   $0x0,0x48(%esi)
58f828:	74 05                	je     0x58f82f
58f82a:	83 f8 01             	cmp    $0x1,%eax
58f82d:	74 4b                	je     0x58f87a
58f82f:	68 c7 01 00 00       	push   $0x1c7
58f834:	68 48 6f 66 00       	push   $0x666f48
58f839:	68 00 01 00 00       	push   $0x100
58f83e:	68 61 01 00 00       	push   $0x161
58f843:	6a 14                	push   $0x14
58f845:	e8 36 97 f4 ff       	call   0x4d8f80
58f84a:	83 c4 14             	add    $0x14,%esp
58f84d:	83 7e 48 00          	cmpl   $0x0,0x48(%esi)
58f851:	74 06                	je     0x58f859
58f853:	83 7e 2c 01          	cmpl   $0x1,0x2c(%esi)
58f857:	74 21                	je     0x58f87a
58f859:	83 7e 60 01          	cmpl   $0x1,0x60(%esi)
58f85d:	c7 46 48 01 00 00 00 	movl   $0x1,0x48(%esi)
58f864:	c7 46 2c 01 00 00 00 	movl   $0x1,0x2c(%esi)
58f86b:	74 0d                	je     0x58f87a
58f86d:	6a 50                	push   $0x50
58f86f:	6a 02                	push   $0x2
58f871:	56                   	push   %esi
58f872:	e8 39 4d 01 00       	call   0x5a45b0
58f877:	83 c4 0c             	add    $0xc,%esp
58f87a:	68 c8 01 00 00       	push   $0x1c8
58f87f:	68 48 6f 66 00       	push   $0x666f48
58f884:	6a 42                	push   $0x42
58f886:	68 61 01 00 00       	push   $0x161
58f88b:	6a 14                	push   $0x14
58f88d:	e8 ee 96 f4 ff       	call   0x4d8f80
58f892:	83 c4 14             	add    $0x14,%esp
58f895:	33 ff                	xor    %edi,%edi
58f897:	ff 4e 50             	decl   0x50(%esi)
58f89a:	57                   	push   %edi
58f89b:	e8 f0 bc f7 ff       	call   0x50b590
58f8a0:	83 c4 04             	add    $0x4,%esp
58f8a3:	85 db                	test   %ebx,%ebx
58f8a5:	74 25                	je     0x58f8cc
58f8a7:	83 7c 24 18 00       	cmpl   $0x0,0x18(%esp)
58f8ac:	55                   	push   %ebp
58f8ad:	74 12                	je     0x58f8c1
58f8af:	68 02 20 00 00       	push   $0x2002
58f8b4:	56                   	push   %esi
58f8b5:	ff d3                	call   *%ebx
58f8b7:	83 c4 0c             	add    $0xc,%esp
58f8ba:	8b c5                	mov    %ebp,%eax
58f8bc:	5f                   	pop    %edi
58f8bd:	5e                   	pop    %esi
58f8be:	5d                   	pop    %ebp
58f8bf:	5b                   	pop    %ebx
58f8c0:	c3                   	ret
58f8c1:	68 02 10 00 00       	push   $0x1002
58f8c6:	56                   	push   %esi
58f8c7:	ff d3                	call   *%ebx
58f8c9:	83 c4 0c             	add    $0xc,%esp
58f8cc:	5f                   	pop    %edi
58f8cd:	5e                   	pop    %esi
58f8ce:	8b c5                	mov    %ebp,%eax
58f8d0:	5d                   	pop    %ebp
58f8d1:	5b                   	pop    %ebx
58f8d2:	c3                   	ret
58f8d3:	5f                   	pop    %edi
58f8d4:	5e                   	pop    %esi
58f8d5:	5d                   	pop    %ebp
58f8d6:	83 c8 ff             	or     $0xffffffff,%eax
58f8d9:	5b                   	pop    %ebx
58f8da:	c3                   	ret
58f8db:	cc                   	int3
58f8dc:	cc                   	int3
58f8dd:	cc                   	int3
58f8de:	cc                   	int3
58f8df:	cc                   	int3
58f8e0:	56                   	push   %esi
58f8e1:	8b 74 24 08          	mov    0x8(%esp),%esi
58f8e5:	6a 00                	push   $0x0
58f8e7:	6a 00                	push   $0x0
58f8e9:	6a 0b                	push   $0xb
58f8eb:	ff 76 0c             	push   0xc(%esi)
58f8ee:	c7 46 14 02 00 00 00 	movl   $0x2,0x14(%esi)
58f8f5:	e8 36 92 f6 ff       	call   0x4f8b30
58f8fa:	83 c4 10             	add    $0x10,%esp
58f8fd:	85 c0                	test   %eax,%eax
58f8ff:	7f 04                	jg     0x58f905
58f901:	33 c0                	xor    %eax,%eax
58f903:	5e                   	pop    %esi
58f904:	c3                   	ret
58f905:	c7 46 14 01 00 00 00 	movl   $0x1,0x14(%esi)
58f90c:	b8 01 00 00 00       	mov    $0x1,%eax
58f911:	5e                   	pop    %esi
58f912:	c3                   	ret
58f913:	cc                   	int3
58f914:	cc                   	int3
58f915:	cc                   	int3
58f916:	cc                   	int3
58f917:	cc                   	int3
58f918:	cc                   	int3
58f919:	cc                   	int3
58f91a:	cc                   	int3
58f91b:	cc                   	int3
58f91c:	cc                   	int3
58f91d:	cc                   	int3
58f91e:	cc                   	int3
58f91f:	cc                   	int3
58f920:	b8 24 00 00 00       	mov    $0x24,%eax
58f925:	e8 86 1e 04 00       	call   0x5d17b0
58f92a:	53                   	push   %ebx
58f92b:	55                   	push   %ebp
58f92c:	56                   	push   %esi
58f92d:	8b 74 24 34          	mov    0x34(%esp),%esi
58f931:	57                   	push   %edi
58f932:	8b be b4 04 00 00    	mov    0x4b4(%esi),%edi
58f938:	85 ff                	test   %edi,%edi
58f93a:	75 0c                	jne    0x58f948
58f93c:	8b 86 d0 04 00 00    	mov    0x4d0(%esi),%eax
58f942:	8b b8 a0 00 00 00    	mov    0xa0(%eax),%edi
58f948:	8b 46 1c             	mov    0x1c(%esi),%eax
58f94b:	ba 30 89 5a 00       	mov    $0x5a8930,%edx
58f950:	85 c0                	test   %eax,%eax
58f952:	b9 f0 bc 59 00       	mov    $0x59bcf0,%ecx
58f957:	8b 46 30             	mov    0x30(%esi),%eax
58f95a:	bd 50 c0 59 00       	mov    $0x59c050,%ebp
58f95f:	0f 44 ca             	cmove  %edx,%ecx
58f962:	bb 80 cb 59 00       	mov    $0x59cb80,%ebx
58f967:	89 4c 24 10          	mov    %ecx,0x10(%esp)
58f96b:	ba c0 8e 5a 00       	mov    $0x5a8ec0,%edx
58f970:	b9 e0 8b 5a 00       	mov    $0x5a8be0,%ecx
58f975:	0f 44 e9             	cmove  %ecx,%ebp
58f978:	b9 70 c3 59 00       	mov    $0x59c370,%ecx
58f97d:	0f 44 ca             	cmove  %edx,%ecx
58f980:	ba 30 99 5a 00       	mov    $0x5a9930,%edx
58f985:	0f 44 da             	cmove  %edx,%ebx
58f988:	89 4c 24 18          	mov    %ecx,0x18(%esp)
58f98c:	83 f8 03             	cmp    $0x3,%eax
58f98f:	0f 87 bd 02 00 00    	ja     0x58fc52
58f995:	ff 24 85 a4 fc 58 00 	jmp    *0x58fca4(,%eax,4)
58f99c:	85 ff                	test   %edi,%edi
58f99e:	74 1a                	je     0x58f9ba
58f9a0:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
58f9a4:	6a 01                	push   $0x1
58f9a6:	74 07                	je     0x58f9af
58f9a8:	68 01 20 00 00       	push   $0x2001
58f9ad:	eb 05                	jmp    0x58f9b4
58f9af:	68 01 10 00 00       	push   $0x1001
58f9b4:	56                   	push   %esi
58f9b5:	ff d7                	call   *%edi
58f9b7:	83 c4 0c             	add    $0xc,%esp
58f9ba:	56                   	push   %esi
58f9bb:	ff d3                	call   *%ebx
58f9bd:	83 c4 04             	add    $0x4,%esp
58f9c0:	83 e8 00             	sub    $0x0,%eax
58f9c3:	0f 84 b1 01 00 00    	je     0x58fb7a
58f9c9:	83 e8 01             	sub    $0x1,%eax
58f9cc:	74 16                	je     0x58f9e4
58f9ce:	83 e8 01             	sub    $0x1,%eax
58f9d1:	0f 85 8c 01 00 00    	jne    0x58fb63
58f9d7:	5f                   	pop    %edi
58f9d8:	5e                   	pop    %esi
58f9d9:	5d                   	pop    %ebp
58f9da:	b8 01 00 00 00       	mov    $0x1,%eax
58f9df:	5b                   	pop    %ebx
58f9e0:	83 c4 24             	add    $0x24,%esp
58f9e3:	c3                   	ret
58f9e4:	c7 46 30 01 00 00 00 	movl   $0x1,0x30(%esi)
58f9eb:	c7 46 34 03 00 00 00 	movl   $0x3,0x34(%esi)
58f9f2:	e9 6c 01 00 00       	jmp    0x58fb63
58f9f7:	ff 76 34             	push   0x34(%esi)
58f9fa:	56                   	push   %esi
58f9fb:	ff d1                	call   *%ecx
58f9fd:	83 c4 08             	add    $0x8,%esp
58fa00:	89 46 34             	mov    %eax,0x34(%esi)
58fa03:	83 f8 05             	cmp    $0x5,%eax
58fa06:	77 0e                	ja     0x58fa16
58fa08:	ff 24 85 b4 fc 58 00 	jmp    *0x58fcb4(,%eax,4)
58fa0f:	c7 46 30 02 00 00 00 	movl   $0x2,0x30(%esi)
58fa16:	8d 44 24 38          	lea    0x38(%esp),%eax
58fa1a:	50                   	push   %eax
58fa1b:	8d 44 24 18          	lea    0x18(%esp),%eax
58fa1f:	50                   	push   %eax
58fa20:	8d 44 24 24          	lea    0x24(%esp),%eax
58fa24:	50                   	push   %eax
58fa25:	56                   	push   %esi
58fa26:	ff 54 24 20          	call   *0x20(%esp)
58fa2a:	83 c4 10             	add    $0x10,%esp
58fa2d:	85 c0                	test   %eax,%eax
58fa2f:	0f 84 65 02 00 00    	je     0x58fc9a
58fa35:	83 7c 24 38 ff       	cmpl   $0xffffffff,0x38(%esp)
58fa3a:	75 13                	jne    0x58fa4f
58fa3c:	c7 46 30 03 00 00 00 	movl   $0x3,0x30(%esi)
58fa43:	c7 46 34 03 00 00 00 	movl   $0x3,0x34(%esi)
58fa4a:	e9 14 01 00 00       	jmp    0x58fb63
58fa4f:	ff 76 6c             	push   0x6c(%esi)
58fa52:	8d 44 24 20          	lea    0x20(%esp),%eax
58fa56:	50                   	push   %eax
58fa57:	e8 d4 43 01 00       	call   0x5a3e30
58fa5c:	83 c4 08             	add    $0x8,%esp
58fa5f:	85 c0                	test   %eax,%eax
58fa61:	0f 84 b0 01 00 00    	je     0x58fc17
58fa67:	8b 46 04             	mov    0x4(%esi),%eax
58fa6a:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
58fa6e:	ff 74 24 38          	push   0x38(%esp)
58fa72:	51                   	push   %ecx
58fa73:	8b 40 64             	mov    0x64(%eax),%eax
58fa76:	56                   	push   %esi
58fa77:	8b 40 34             	mov    0x34(%eax),%eax
58fa7a:	ff d0                	call   *%eax
58fa7c:	83 c4 0c             	add    $0xc,%esp
58fa7f:	85 c0                	test   %eax,%eax
58fa81:	0f 84 90 01 00 00    	je     0x58fc17
58fa87:	8b 44 24 14          	mov    0x14(%esp),%eax
58fa8b:	85 c0                	test   %eax,%eax
58fa8d:	74 13                	je     0x58faa2
58fa8f:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
58fa93:	51                   	push   %ecx
58fa94:	56                   	push   %esi
58fa95:	ff d0                	call   *%eax
58fa97:	83 c4 08             	add    $0x8,%esp
58fa9a:	85 c0                	test   %eax,%eax
58fa9c:	0f 84 20 01 00 00    	je     0x58fbc2
58faa2:	8b 46 04             	mov    0x4(%esi),%eax
58faa5:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
58faa9:	ff 74 24 38          	push   0x38(%esp)
58faad:	51                   	push   %ecx
58faae:	8b 40 64             	mov    0x64(%eax),%eax
58fab1:	56                   	push   %esi
58fab2:	8b 40 38             	mov    0x38(%eax),%eax
58fab5:	ff d0                	call   *%eax
58fab7:	83 c4 0c             	add    $0xc,%esp
58faba:	85 c0                	test   %eax,%eax
58fabc:	0f 84 2e 01 00 00    	je     0x58fbf0
58fac2:	8d 44 24 1c          	lea    0x1c(%esp),%eax
58fac6:	50                   	push   %eax
58fac7:	e8 a4 42 01 00       	call   0x5a3d70
58facc:	83 c4 04             	add    $0x4,%esp
58facf:	85 c0                	test   %eax,%eax
58fad1:	0f 84 19 01 00 00    	je     0x58fbf0
58fad7:	8b 46 04             	mov    0x4(%esi),%eax
58fada:	8b 40 64             	mov    0x64(%eax),%eax
58fadd:	f6 40 30 08          	testb  $0x8,0x30(%eax)
58fae1:	74 0f                	je     0x58faf2
58fae3:	83 7e 5c 00          	cmpl   $0x0,0x5c(%esi)
58fae7:	74 09                	je     0x58faf2
58fae9:	56                   	push   %esi
58faea:	e8 21 8a 01 00       	call   0x5a8510
58faef:	83 c4 04             	add    $0x4,%esp
58faf2:	8b 46 40             	mov    0x40(%esi),%eax
58faf5:	83 f8 10             	cmp    $0x10,%eax
58faf8:	74 16                	je     0x58fb10
58fafa:	83 f8 23             	cmp    $0x23,%eax
58fafd:	74 11                	je     0x58fb10
58faff:	8b 46 04             	mov    0x4(%esi),%eax
58fb02:	56                   	push   %esi
58fb03:	8b 40 64             	mov    0x64(%eax),%eax
58fb06:	8b 40 3c             	mov    0x3c(%eax),%eax
58fb09:	ff d0                	call   *%eax
58fb0b:	83 c4 04             	add    $0x4,%esp
58fb0e:	eb 1e                	jmp    0x58fb2e
58fb10:	8b 46 04             	mov    0x4(%esi),%eax
58fb13:	6a 14                	push   $0x14
58fb15:	56                   	push   %esi
58fb16:	8b 40 64             	mov    0x64(%eax),%eax
58fb19:	f6 40 30 08          	testb  $0x8,0x30(%eax)
58fb1d:	74 07                	je     0x58fb26
58fb1f:	e8 3c 68 01 00       	call   0x5a6360
58fb24:	eb 05                	jmp    0x58fb2b
58fb26:	e8 a5 40 00 00       	call   0x593bd0
58fb2b:	83 c4 08             	add    $0x8,%esp
58fb2e:	85 c0                	test   %eax,%eax
58fb30:	0f 8e 64 01 00 00    	jle    0x58fc9a
58fb36:	c7 46 30 03 00 00 00 	movl   $0x3,0x30(%esi)
58fb3d:	c7 46 34 03 00 00 00 	movl   $0x3,0x34(%esi)
58fb44:	ff 76 34             	push   0x34(%esi)
58fb47:	56                   	push   %esi
58fb48:	ff d5                	call   *%ebp
58fb4a:	83 c4 08             	add    $0x8,%esp
58fb4d:	89 46 34             	mov    %eax,0x34(%esi)
58fb50:	83 f8 05             	cmp    $0x5,%eax
58fb53:	77 0e                	ja     0x58fb63
58fb55:	ff 24 85 cc fc 58 00 	jmp    *0x58fccc(,%eax,4)
58fb5c:	c7 46 30 00 00 00 00 	movl   $0x0,0x30(%esi)
58fb63:	8b 46 30             	mov    0x30(%esi),%eax