5948b2:	eb 07                	jmp    0x5948bb
5948b4:	c7 46 20 ff ff ff ff 	movl   $0xffffffff,0x20(%esi)
5948bb:	57                   	push   %edi
5948bc:	e8 8f 31 00 00       	call   0x597a50
5948c1:	83 c4 04             	add    $0x4,%esp
5948c4:	83 4e 28 01          	orl    $0x1,0x28(%esi)
5948c8:	6a 00                	push   $0x0
5948ca:	6a 00                	push   $0x0
5948cc:	68 97 02 00 00       	push   $0x297
5948d1:	56                   	push   %esi
5948d2:	e8 99 94 ff ff       	call   0x58dd70
5948d7:	8b f8                	mov    %eax,%edi
5948d9:	83 c4 10             	add    $0x10,%esp
5948dc:	85 ff                	test   %edi,%edi
5948de:	74 5a                	je     0x59493a
5948e0:	f6 46 28 10          	testb  $0x10,0x28(%esi)
5948e4:	75 22                	jne    0x594908
5948e6:	6a ff                	push   $0xffffffff
5948e8:	6a 55                	push   $0x55
5948ea:	56                   	push   %esi
5948eb:	e8 40 94 ff ff       	call   0x58dd30
5948f0:	83 c4 0c             	add    $0xc,%esp
5948f3:	85 c0                	test   %eax,%eax
5948f5:	79 11                	jns    0x594908
5948f7:	6a ff                	push   $0xffffffff
5948f9:	6a 56                	push   $0x56
5948fb:	56                   	push   %esi
5948fc:	e8 2f 94 ff ff       	call   0x58dd30
594901:	83 c4 0c             	add    $0xc,%esp
594904:	85 c0                	test   %eax,%eax
594906:	78 07                	js     0x59490f
594908:	81 4e 28 80 00 00 00 	orl    $0x80,0x28(%esi)
59490f:	8b 07                	mov    (%edi),%eax
594911:	85 c0                	test   %eax,%eax
594913:	74 0e                	je     0x594923
594915:	50                   	push   %eax
594916:	e8 65 f5 f1 ff       	call   0x4b3e80
59491b:	83 c4 04             	add    $0x4,%esp
59491e:	89 46 24             	mov    %eax,0x24(%esi)
594921:	eb 07                	jmp    0x59492a
594923:	c7 46 24 ff ff ff ff 	movl   $0xffffffff,0x24(%esi)
59492a:	57                   	push   %edi
59492b:	e8 40 c4 00 00       	call   0x5a0d70
594930:	83 c4 04             	add    $0x4,%esp
594933:	81 4e 28 00 04 00 00 	orl    $0x400,0x28(%esi)
59493a:	6a 00                	push   $0x0
59493c:	6a 00                	push   $0x0
59493e:	6a 53                	push   $0x53
594940:	56                   	push   %esi
594941:	e8 2a 94 ff ff       	call   0x58dd70
594946:	8b d0                	mov    %eax,%edx
594948:	83 c4 10             	add    $0x10,%esp
59494b:	85 d2                	test   %edx,%edx
59494d:	74 38                	je     0x594987
59494f:	83 3a 00             	cmpl   $0x0,(%edx)
594952:	7e 1f                	jle    0x594973
594954:	8b 4a 08             	mov    0x8(%edx),%ecx
594957:	0f b6 09             	movzbl (%ecx),%ecx
59495a:	89 4e 2c             	mov    %ecx,0x2c(%esi)
59495d:	83 3a 01             	cmpl   $0x1,(%edx)
594960:	7e 18                	jle    0x59497a
594962:	8b 42 08             	mov    0x8(%edx),%eax
594965:	0f b6 40 01          	movzbl 0x1(%eax),%eax
594969:	c1 e0 08             	shl    $0x8,%eax
59496c:	0b c1                	or     %ecx,%eax
59496e:	89 46 2c             	mov    %eax,0x2c(%esi)
594971:	eb 07                	jmp    0x59497a
594973:	c7 46 2c 00 00 00 00 	movl   $0x0,0x2c(%esi)
59497a:	83 4e 28 02          	orl    $0x2,0x28(%esi)
59497e:	52                   	push   %edx
59497f:	e8 7c f1 f1 ff       	call   0x4b3b00
594984:	83 c4 04             	add    $0x4,%esp
594987:	6a 00                	push   $0x0
594989:	6a 00                	push   $0x0
59498b:	6a 7e                	push   $0x7e
59498d:	56                   	push   %esi
59498e:	c7 46 30 00 00 00 00 	movl   $0x0,0x30(%esi)
594995:	e8 d6 93 ff ff       	call   0x58dd70
59499a:	8b f8                	mov    %eax,%edi
59499c:	83 c4 10             	add    $0x10,%esp
59499f:	85 ff                	test   %edi,%edi
5949a1:	0f 84 ba 00 00 00    	je     0x594a61
5949a7:	83 4e 28 04          	orl    $0x4,0x28(%esi)
5949ab:	57                   	push   %edi
5949ac:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
5949b3:	00
5949b4:	e8 57 9c f1 ff       	call   0x4ae610
5949b9:	8b 4c 24 14          	mov    0x14(%esp),%ecx
5949bd:	83 c4 04             	add    $0x4,%esp
5949c0:	3b c8                	cmp    %eax,%ecx
5949c2:	0f 8d 8b 00 00 00    	jge    0x594a53
5949c8:	51                   	push   %ecx
5949c9:	57                   	push   %edi
5949ca:	e8 61 9d f1 ff       	call   0x4ae730
5949cf:	50                   	push   %eax
5949d0:	e8 0b 30 f1 ff       	call   0x4a79e0
5949d5:	83 c4 0c             	add    $0xc,%esp
5949d8:	3d b4 00 00 00       	cmp    $0xb4,%eax
5949dd:	7f 3d                	jg     0x594a1c
5949df:	74 35                	je     0x594a16
5949e1:	2d 81 00 00 00       	sub    $0x81,%eax
5949e6:	83 f8 0a             	cmp    $0xa,%eax
5949e9:	77 4f                	ja     0x594a3a
5949eb:	ff 24 85 fc 4b 59 00 	jmp    *0x594bfc(,%eax,4)
5949f2:	83 4e 30 01          	orl    $0x1,0x30(%esi)
5949f6:	eb 42                	jmp    0x594a3a
5949f8:	83 4e 30 02          	orl    $0x2,0x30(%esi)
5949fc:	eb 3c                	jmp    0x594a3a
5949fe:	83 4e 30 04          	orl    $0x4,0x30(%esi)
594a02:	eb 36                	jmp    0x594a3a
594a04:	83 4e 30 08          	orl    $0x8,0x30(%esi)
594a08:	eb 30                	jmp    0x594a3a
594a0a:	83 4e 30 10          	orl    $0x10,0x30(%esi)
594a0e:	eb 2a                	jmp    0x594a3a
594a10:	83 4e 30 40          	orl    $0x40,0x30(%esi)
594a14:	eb 24                	jmp    0x594a3a
594a16:	83 4e 30 20          	orl    $0x20,0x30(%esi)
594a1a:	eb 1e                	jmp    0x594a3a
594a1c:	3d 29 01 00 00       	cmp    $0x129,%eax
594a21:	74 10                	je     0x594a33
594a23:	3d 8e 03 00 00       	cmp    $0x38e,%eax
594a28:	75 10                	jne    0x594a3a
594a2a:	81 4e 30 00 01 00 00 	orl    $0x100,0x30(%esi)
594a31:	eb 07                	jmp    0x594a3a
594a33:	81 4e 30 80 00 00 00 	orl    $0x80,0x30(%esi)
594a3a:	ff 44 24 10          	incl   0x10(%esp)
594a3e:	57                   	push   %edi
594a3f:	e8 cc 9b f1 ff       	call   0x4ae610
594a44:	8b 4c 24 14          	mov    0x14(%esp),%ecx
594a48:	83 c4 04             	add    $0x4,%esp
594a4b:	3b c8                	cmp    %eax,%ecx
594a4d:	0f 8c 75 ff ff ff    	jl     0x5949c8
594a53:	68 00 6e 4a 00       	push   $0x4a6e00
594a58:	57                   	push   %edi
594a59:	e8 e2 9b f1 ff       	call   0x4ae640
594a5e:	83 c4 08             	add    $0x8,%esp
594a61:	6a 00                	push   $0x0
594a63:	6a 00                	push   $0x0
594a65:	6a 47                	push   $0x47
594a67:	56                   	push   %esi
594a68:	e8 03 93 ff ff       	call   0x58dd70
594a6d:	83 c4 10             	add    $0x10,%esp
594a70:	85 c0                	test   %eax,%eax
594a72:	74 24                	je     0x594a98
594a74:	83 38 00             	cmpl   $0x0,(%eax)
594a77:	7e 0b                	jle    0x594a84
594a79:	8b 48 08             	mov    0x8(%eax),%ecx
594a7c:	0f b6 09             	movzbl (%ecx),%ecx
594a7f:	89 4e 34             	mov    %ecx,0x34(%esi)
594a82:	eb 07                	jmp    0x594a8b
594a84:	c7 46 34 00 00 00 00 	movl   $0x0,0x34(%esi)
594a8b:	83 4e 28 08          	orl    $0x8,0x28(%esi)
594a8f:	50                   	push   %eax
594a90:	e8 6b f0 f1 ff       	call   0x4b3b00
594a95:	83 c4 04             	add    $0x4,%esp
594a98:	6a 00                	push   $0x0
594a9a:	6a 00                	push   $0x0
594a9c:	6a 52                	push   $0x52
594a9e:	56                   	push   %esi
594a9f:	e8 cc 92 ff ff       	call   0x58dd70
594aa4:	6a 00                	push   $0x0
594aa6:	6a 00                	push   $0x0
594aa8:	6a 5a                	push   $0x5a
594aaa:	56                   	push   %esi
594aab:	89 46 38             	mov    %eax,0x38(%esi)
594aae:	e8 bd 92 ff ff       	call   0x58dd70
594ab3:	56                   	push   %esi
594ab4:	89 46 3c             	mov    %eax,0x3c(%esi)
594ab7:	e8 84 c5 ef ff       	call   0x491040
594abc:	83 c4 24             	add    $0x24,%esp
594abf:	50                   	push   %eax
594ac0:	56                   	push   %esi
594ac1:	e8 3a 8d ff ff       	call   0x58d800
594ac6:	83 c4 04             	add    $0x4,%esp
594ac9:	50                   	push   %eax
594aca:	e8 51 8c ff ff       	call   0x58d720
594acf:	83 c4 08             	add    $0x8,%esp
594ad2:	85 c0                	test   %eax,%eax
594ad4:	75 29                	jne    0x594aff
594ad6:	ff 76 3c             	push   0x3c(%esi)
594ad9:	83 4e 28 20          	orl    $0x20,0x28(%esi)
594add:	56                   	push   %esi
594ade:	e8 2d fa ff ff       	call   0x594510
594ae3:	83 c4 08             	add    $0x8,%esp
594ae6:	85 c0                	test   %eax,%eax
594ae8:	75 15                	jne    0x594aff
594aea:	8b 46 28             	mov    0x28(%esi),%eax
594aed:	a8 02                	test   $0x2,%al
594aef:	74 06                	je     0x594af7
594af1:	f6 46 2c 04          	testb  $0x4,0x2c(%esi)
594af5:	74 08                	je     0x594aff
594af7:	0d 00 20 00 00       	or     $0x2000,%eax
594afc:	89 46 28             	mov    %eax,0x28(%esi)
594aff:	6a 00                	push   $0x0
594b01:	6a 00                	push   $0x0
594b03:	6a 55                	push   $0x55
594b05:	56                   	push   %esi
594b06:	e8 65 92 ff ff       	call   0x58dd70
594b0b:	89 46 48             	mov    %eax,0x48(%esi)
594b0e:	8d 44 24 20          	lea    0x20(%esp),%eax
594b12:	6a 00                	push   $0x0
594b14:	50                   	push   %eax
594b15:	68 9a 02 00 00       	push   $0x29a
594b1a:	56                   	push   %esi
594b1b:	e8 50 92 ff ff       	call   0x58dd70
594b20:	83 c4 20             	add    $0x20,%esp
594b23:	89 46 4c             	mov    %eax,0x4c(%esi)
594b26:	85 c0                	test   %eax,%eax
594b28:	75 0e                	jne    0x594b38
594b2a:	83 7c 24 10 ff       	cmpl   $0xffffffff,0x10(%esp)
594b2f:	74 07                	je     0x594b38
594b31:	81 4e 28 80 00 00 00 	orl    $0x80,0x28(%esi)
594b38:	56                   	push   %esi
594b39:	e8 f2 fb ff ff       	call   0x594730
594b3e:	56                   	push   %esi
594b3f:	c7 44 24 18 00 00 00 	movl   $0x0,0x18(%esp)
594b46:	00
594b47:	e8 04 92 ff ff       	call   0x58dd50
594b4c:	8b 4c 24 18          	mov    0x18(%esp),%ecx
594b50:	83 c4 08             	add    $0x8,%esp
594b53:	3b c8                	cmp    %eax,%ecx
594b55:	0f 8d 95 00 00 00    	jge    0x594bf0
594b5b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
594b60:	51                   	push   %ecx
594b61:	56                   	push   %esi
594b62:	e8 a9 91 ff ff       	call   0x58dd10
594b67:	8b f8                	mov    %eax,%edi
594b69:	57                   	push   %edi
594b6a:	e8 31 c9 ef ff       	call   0x4914a0
594b6f:	50                   	push   %eax
594b70:	e8 6b 2e f1 ff       	call   0x4a79e0
594b75:	83 c4 10             	add    $0x10,%esp
594b78:	3d 59 03 00 00       	cmp    $0x359,%eax
594b7d:	75 07                	jne    0x594b86
594b7f:	81 4e 28 00 10 00 00 	orl    $0x1000,0x28(%esi)
594b86:	57                   	push   %edi
594b87:	e8 a4 1b 00 00       	call   0x596730
594b8c:	83 c4 04             	add    $0x4,%esp
594b8f:	85 c0                	test   %eax,%eax
594b91:	74 36                	je     0x594bc9
594b93:	57                   	push   %edi
594b94:	e8 07 c9 ef ff       	call   0x4914a0
594b99:	50                   	push   %eax
594b9a:	e8 41 2e f1 ff       	call   0x4a79e0
594b9f:	83 c4 08             	add    $0x8,%esp
594ba2:	89 44 24 08          	mov    %eax,0x8(%esp)
594ba6:	85 c0                	test   %eax,%eax
594ba8:	74 3f                	je     0x594be9
594baa:	68 d0 15 4a 00       	push   $0x4a15d0
594baf:	6a 04                	push   $0x4
594bb1:	6a 0c                	push   $0xc
594bb3:	8d 44 24 14          	lea    0x14(%esp),%eax
594bb7:	68 70 82 6c 00       	push   $0x6c8270
594bbc:	50                   	push   %eax
594bbd:	e8 9e 2a f1 ff       	call   0x4a7660
594bc2:	83 c4 14             	add    $0x14,%esp
594bc5:	85 c0                	test   %eax,%eax
594bc7:	74 20                	je     0x594be9
594bc9:	ff 44 24 10          	incl   0x10(%esp)
594bcd:	56                   	push   %esi
594bce:	e8 7d 91 ff ff       	call   0x58dd50
594bd3:	8b 4c 24 14          	mov    0x14(%esp),%ecx
594bd7:	83 c4 04             	add    $0x4,%esp
594bda:	3b c8                	cmp    %eax,%ecx
594bdc:	7c 82                	jl     0x594b60
594bde:	81 4e 28 00 01 00 00 	orl    $0x100,0x28(%esi)
594be5:	5f                   	pop    %edi
594be6:	5e                   	pop    %esi
594be7:	59                   	pop    %ecx
594be8:	c3                   	ret
594be9:	81 4e 28 00 02 00 00 	orl    $0x200,0x28(%esi)
594bf0:	81 4e 28 00 01 00 00 	orl    $0x100,0x28(%esi)
594bf7:	5f                   	pop    %edi
594bf8:	5e                   	pop    %esi
594bf9:	59                   	pop    %ecx
594bfa:	c3                   	ret
594bfb:	90                   	nop
594bfc:	f2 49                	repnz dec %ecx
594bfe:	59                   	pop    %ecx
594bff:	00 f8                	add    %bh,%al
594c01:	49                   	dec    %ecx
594c02:	59                   	pop    %ecx
594c03:	00 04 4a             	add    %al,(%edx,%ecx,2)
594c06:	59                   	pop    %ecx
594c07:	00 fe                	add    %bh,%dh
594c09:	49                   	dec    %ecx
594c0a:	59                   	pop    %ecx
594c0b:	00 10                	add    %dl,(%eax)
594c0d:	4a                   	dec    %edx
594c0e:	59                   	pop    %ecx
594c0f:	00 3a                	add    %bh,(%edx)
594c11:	4a                   	dec    %edx
594c12:	59                   	pop    %ecx
594c13:	00 3a                	add    %bh,(%edx)
594c15:	4a                   	dec    %edx
594c16:	59                   	pop    %ecx
594c17:	00 3a                	add    %bh,(%edx)
594c19:	4a                   	dec    %edx
594c1a:	59                   	pop    %ecx
594c1b:	00 0a                	add    %cl,(%edx)
594c1d:	4a                   	dec    %edx
594c1e:	59                   	pop    %ecx
594c1f:	00 3a                	add    %bh,(%edx)
594c21:	4a                   	dec    %edx
594c22:	59                   	pop    %ecx
594c23:	00 0a                	add    %cl,(%edx)
594c25:	4a                   	dec    %edx
594c26:	59                   	pop    %ecx
594c27:	00 cc                	add    %cl,%ah
594c29:	cc                   	int3
594c2a:	cc                   	int3
594c2b:	cc                   	int3
594c2c:	cc                   	int3
594c2d:	cc                   	int3
594c2e:	cc                   	int3
594c2f:	cc                   	int3
594c30:	ff 74 24 14          	push   0x14(%esp)
594c34:	8b 44 24 08          	mov    0x8(%esp),%eax
594c38:	ff 74 24 14          	push   0x14(%esp)
594c3c:	83 c0 0c             	add    $0xc,%eax
594c3f:	ff 74 24 14          	push   0x14(%esp)
594c43:	ff 74 24 14          	push   0x14(%esp)
594c47:	50                   	push   %eax
594c48:	e8 93 9f fe ff       	call   0x57ebe0
594c4d:	83 c4 14             	add    $0x14,%esp
594c50:	f7 d8                	neg    %eax
594c52:	1b c0                	sbb    %eax,%eax
594c54:	f7 d8                	neg    %eax
594c56:	c3                   	ret
594c57:	cc                   	int3
594c58:	cc                   	int3
594c59:	cc                   	int3
594c5a:	cc                   	int3
594c5b:	cc                   	int3
594c5c:	cc                   	int3
594c5d:	cc                   	int3
594c5e:	cc                   	int3
594c5f:	cc                   	int3
594c60:	ff 74 24 0c          	push   0xc(%esp)
594c64:	8b 44 24 08          	mov    0x8(%esp),%eax
594c68:	ff 74 24 0c          	push   0xc(%esp)
594c6c:	ff 70 0c             	push   0xc(%eax)
594c6f:	e8 2c a0 fe ff       	call   0x57eca0
594c74:	83 c4 0c             	add    $0xc,%esp
594c77:	c3                   	ret
594c78:	cc                   	int3
594c79:	cc                   	int3
594c7a:	cc                   	int3
594c7b:	cc                   	int3
594c7c:	cc                   	int3