598dad:	cc                   	int3
598dae:	cc                   	int3
598daf:	cc                   	int3
598db0:	cc                   	int3
598db1:	cc                   	int3
598db2:	cc                   	int3
598db3:	cc                   	int3
598db4:	cc                   	int3
598db5:	cc                   	int3
598db6:	cc                   	int3
598db7:	cc                   	int3
598db8:	cc                   	int3
598db9:	cc                   	int3
598dba:	cc                   	int3
598dbb:	cc                   	int3
598dbc:	cc                   	int3
598dbd:	cc                   	int3
598dbe:	cc                   	int3
598dbf:	cc                   	int3
598dc0:	2b 49 fc             	sub    -0x4(%ecx),%ecx
598dc3:	8b 41 98             	mov    -0x68(%ecx),%eax
598dc6:	03 48 18             	add    0x18(%eax),%ecx
598dc9:	83 c1 08             	add    $0x8,%ecx
598dcc:	e9 6a e6 e7 ff       	jmp    0x41743b
598dd1:	cc                   	int3
598dd2:	cc                   	int3
598dd3:	cc                   	int3
598dd4:	cc                   	int3
598dd5:	2b 49 fc             	sub    -0x4(%ecx),%ecx
598dd8:	e9 de 92 e8 ff       	jmp    0x4220bb
598ddd:	cc                   	int3
598dde:	cc                   	int3
598ddf:	cc                   	int3
598de0:	8b 41 b8             	mov    -0x48(%ecx),%eax
598de3:	83 c1 c4             	add    $0xffffffc4,%ecx
598de6:	8b 40 14             	mov    0x14(%eax),%eax
598de9:	03 c8                	add    %eax,%ecx
598deb:	e9 51 3e e9 ff       	jmp    0x42cc41
598df0:	cc                   	int3
598df1:	cc                   	int3
598df2:	cc                   	int3
598df3:	cc                   	int3
598df4:	cc                   	int3
598df5:	cc                   	int3
598df6:	cc                   	int3
598df7:	cc                   	int3
598df8:	cc                   	int3
598df9:	cc                   	int3
598dfa:	cc                   	int3
598dfb:	cc                   	int3
598dfc:	cc                   	int3
598dfd:	cc                   	int3
598dfe:	cc                   	int3
598dff:	cc                   	int3
598e00:	e9 02 b0 e8 ff       	jmp    0x423e07
598e05:	cc                   	int3
598e06:	cc                   	int3
598e07:	cc                   	int3
598e08:	cc                   	int3
598e09:	cc                   	int3
598e0a:	cc                   	int3
598e0b:	cc                   	int3
598e0c:	cc                   	int3
598e0d:	cc                   	int3
598e0e:	cc                   	int3
598e0f:	cc                   	int3
598e10:	e9 d8 0a e9 ff       	jmp    0x4298ed
598e15:	cc                   	int3
598e16:	cc                   	int3
598e17:	cc                   	int3
598e18:	cc                   	int3
598e19:	cc                   	int3
598e1a:	cc                   	int3
598e1b:	cc                   	int3
598e1c:	cc                   	int3
598e1d:	cc                   	int3
598e1e:	cc                   	int3
598e1f:	cc                   	int3
598e20:	8b 44 24 04          	mov    0x4(%esp),%eax
598e24:	85 c0                	test   %eax,%eax
598e26:	75 03                	jne    0x598e2b
598e28:	c2 04 00             	ret    $0x4
598e2b:	3d c4 4e ec 04       	cmp    $0x4ec4ec4,%eax
598e30:	77 3b                	ja     0x598e6d
598e32:	6b c0 34             	imul   $0x34,%eax,%eax
598e35:	3d 00 10 00 00       	cmp    $0x1000,%eax
598e3a:	72 22                	jb     0x598e5e
598e3c:	8d 48 23             	lea    0x23(%eax),%ecx
598e3f:	3b c8                	cmp    %eax,%ecx
598e41:	76 2f                	jbe    0x598e72
598e43:	51                   	push   %ecx
598e44:	e8 34 1b e9 ff       	call   0x42a97d
598e49:	8b c8                	mov    %eax,%ecx
598e4b:	83 c4 04             	add    $0x4,%esp
598e4e:	85 c9                	test   %ecx,%ecx
598e50:	74 25                	je     0x598e77
598e52:	8d 41 23             	lea    0x23(%ecx),%eax
598e55:	83 e0 e0             	and    $0xffffffe0,%eax
598e58:	89 48 fc             	mov    %ecx,-0x4(%eax)
598e5b:	c2 04 00             	ret    $0x4
598e5e:	50                   	push   %eax
598e5f:	e8 19 1b e9 ff       	call   0x42a97d
598e64:	83 c4 04             	add    $0x4,%esp
598e67:	85 c0                	test   %eax,%eax
598e69:	75 bd                	jne    0x598e28
598e6b:	eb 0f                	jmp    0x598e7c
598e6d:	e8 ac 90 e6 ff       	call   0x401f1e
598e72:	e8 a7 90 e6 ff       	call   0x401f1e
598e77:	e8 11 4b ea ff       	call   0x43d98d
598e7c:	e8 0c 4b ea ff       	call   0x43d98d
598e81:	cc                   	int3
598e82:	cc                   	int3
598e83:	cc                   	int3
598e84:	cc                   	int3
598e85:	cc                   	int3
598e86:	cc                   	int3
598e87:	cc                   	int3
598e88:	cc                   	int3
598e89:	cc                   	int3
598e8a:	cc                   	int3
598e8b:	cc                   	int3
598e8c:	cc                   	int3
598e8d:	cc                   	int3
598e8e:	cc                   	int3
598e8f:	cc                   	int3
598e90:	cc                   	int3
598e91:	cc                   	int3
598e92:	cc                   	int3
598e93:	cc                   	int3
598e94:	cc                   	int3
598e95:	cc                   	int3
598e96:	cc                   	int3
598e97:	cc                   	int3
598e98:	cc                   	int3
598e99:	cc                   	int3
598e9a:	cc                   	int3
598e9b:	cc                   	int3
598e9c:	cc                   	int3
598e9d:	cc                   	int3
598e9e:	cc                   	int3
598e9f:	cc                   	int3
598ea0:	8b 44 24 04          	mov    0x4(%esp),%eax
598ea4:	85 c0                	test   %eax,%eax
598ea6:	75 03                	jne    0x598eab
598ea8:	c2 04 00             	ret    $0x4
598eab:	3d ff ff ff 1f       	cmp    $0x1fffffff,%eax
598eb0:	77 3b                	ja     0x598eed
598eb2:	c1 e0 03             	shl    $0x3,%eax
598eb5:	3d 00 10 00 00       	cmp    $0x1000,%eax
598eba:	72 22                	jb     0x598ede
598ebc:	8d 48 23             	lea    0x23(%eax),%ecx
598ebf:	3b c8                	cmp    %eax,%ecx
598ec1:	76 2f                	jbe    0x598ef2
598ec3:	51                   	push   %ecx
598ec4:	e8 b4 1a e9 ff       	call   0x42a97d
598ec9:	8b c8                	mov    %eax,%ecx
598ecb:	83 c4 04             	add    $0x4,%esp
598ece:	85 c9                	test   %ecx,%ecx
598ed0:	74 25                	je     0x598ef7
598ed2:	8d 41 23             	lea    0x23(%ecx),%eax
598ed5:	83 e0 e0             	and    $0xffffffe0,%eax
598ed8:	89 48 fc             	mov    %ecx,-0x4(%eax)
598edb:	c2 04 00             	ret    $0x4
598ede:	50                   	push   %eax
598edf:	e8 99 1a e9 ff       	call   0x42a97d
598ee4:	83 c4 04             	add    $0x4,%esp
598ee7:	85 c0                	test   %eax,%eax
598ee9:	75 bd                	jne    0x598ea8
598eeb:	eb 0f                	jmp    0x598efc
598eed:	e8 2c 90 e6 ff       	call   0x401f1e
598ef2:	e8 27 90 e6 ff       	call   0x401f1e
598ef7:	e8 91 4a ea ff       	call   0x43d98d
598efc:	e8 8c 4a ea ff       	call   0x43d98d
598f01:	cc                   	int3
598f02:	cc                   	int3
598f03:	cc                   	int3
598f04:	cc                   	int3
598f05:	cc                   	int3
598f06:	cc                   	int3
598f07:	cc                   	int3
598f08:	cc                   	int3
598f09:	cc                   	int3
598f0a:	cc                   	int3
598f0b:	cc                   	int3
598f0c:	cc                   	int3
598f0d:	cc                   	int3
598f0e:	cc                   	int3
598f0f:	cc                   	int3
598f10:	cc                   	int3
598f11:	cc                   	int3
598f12:	cc                   	int3
598f13:	cc                   	int3
598f14:	cc                   	int3
598f15:	cc                   	int3
598f16:	cc                   	int3
598f17:	cc                   	int3
598f18:	cc                   	int3
598f19:	cc                   	int3
598f1a:	2b 49 fc             	sub    -0x4(%ecx),%ecx
598f1d:	e9 7e 3e e8 ff       	jmp    0x41cda0
598f22:	cc                   	int3
598f23:	cc                   	int3
598f24:	cc                   	int3
598f25:	cc                   	int3
598f26:	cc                   	int3
598f27:	cc                   	int3
598f28:	cc                   	int3
598f29:	cc                   	int3
598f2a:	cc                   	int3
598f2b:	cc                   	int3
598f2c:	cc                   	int3
598f2d:	cc                   	int3
598f2e:	cc                   	int3
598f2f:	cc                   	int3
598f30:	55                   	push   %ebp
598f31:	8b ec                	mov    %esp,%ebp
598f33:	6a ff                	push   $0xffffffff
598f35:	68 c3 e6 b5 00       	push   $0xb5e6c3
598f3a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
598f40:	50                   	push   %eax
598f41:	81 ec 80 00 00 00    	sub    $0x80,%esp
598f47:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
598f4c:	33 c5                	xor    %ebp,%eax
598f4e:	89 45 ec             	mov    %eax,-0x14(%ebp)
598f51:	53                   	push   %ebx
598f52:	56                   	push   %esi
598f53:	57                   	push   %edi
598f54:	50                   	push   %eax
598f55:	8d 45 f4             	lea    -0xc(%ebp),%eax
598f58:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
598f5e:	89 65 f0             	mov    %esp,-0x10(%ebp)
598f61:	8b f1                	mov    %ecx,%esi
598f63:	8b 5d 08             	mov    0x8(%ebp),%ebx
598f66:	8d 4e b0             	lea    -0x50(%esi),%ecx
598f69:	8b 7d 0c             	mov    0xc(%ebp),%edi
598f6c:	89 75 8c             	mov    %esi,-0x74(%ebp)
598f6f:	89 5d 94             	mov    %ebx,-0x6c(%ebp)
598f72:	e8 11 52 e7 ff       	call   0x40e188
598f77:	84 c0                	test   %al,%al
598f79:	0f 84 98 01 00 00    	je     0x599117
598f7f:	83 7e a4 00          	cmpl   $0x0,-0x5c(%esi)
598f83:	0f 8e 8e 01 00 00    	jle    0x599117
598f89:	33 c0                	xor    %eax,%eax
598f8b:	c7 45 d0 07 00 00 00 	movl   $0x7,-0x30(%ebp)
598f92:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
598f99:	66 89 45 bc          	mov    %ax,-0x44(%ebp)
598f9d:	8b 4b 04             	mov    0x4(%ebx),%ecx
598fa0:	8d 45 bc             	lea    -0x44(%ebp),%eax
598fa3:	50                   	push   %eax
598fa4:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
598fab:	e8 3d ef e9 ff       	call   0x437eed
598fb0:	8b 4b 04             	mov    0x4(%ebx),%ecx
598fb3:	e8 93 48 e7 ff       	call   0x40d84b
598fb8:	8d 46 94             	lea    -0x6c(%esi),%eax
598fbb:	50                   	push   %eax
598fbc:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
598fbf:	e8 98 5f e7 ff       	call   0x40ef5c
598fc4:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
598fc8:	eb 09                	jmp    0x598fd3
598fca:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
598fd0:	8b 5d 94             	mov    -0x6c(%ebp),%ebx
598fd3:	8b 7e 8c             	mov    -0x74(%esi),%edi
598fd6:	8d 4e 88             	lea    -0x78(%esi),%ecx
598fd9:	2b 39                	sub    (%ecx),%edi
598fdb:	c1 ff 03             	sar    $0x3,%edi
598fde:	3b 7e a4             	cmp    -0x5c(%esi),%edi
598fe1:	7d 1b                	jge    0x598ffe
598fe3:	53                   	push   %ebx
598fe4:	e8 92 c7 e7 ff       	call   0x41577b
598fe9:	85 ff                	test   %edi,%edi
598feb:	0f 85 07 01 00 00    	jne    0x5990f8
598ff1:	8d 4e 9c             	lea    -0x64(%esi),%ecx
598ff4:	e8 a7 38 e8 ff       	call   0x41c8a0
598ff9:	e9 fa 00 00 00       	jmp    0x5990f8
598ffe:	80 7e c5 00          	cmpb   $0x0,-0x3b(%esi)
599002:	b3 01                	mov    $0x1,%bl
599004:	88 5d 93             	mov    %bl,-0x6d(%ebp)
599007:	74 41                	je     0x59904a
599009:	e8 6c 61 ea ff       	call   0x43f17a
59900e:	84 c0                	test   %al,%al
599010:	75 38                	jne    0x59904a
599012:	8d 4e b0             	lea    -0x50(%esi),%ecx
599015:	e8 88 43 ea ff       	call   0x43d3a2
59901a:	84 c0                	test   %al,%al
59901c:	75 2c                	jne    0x59904a
59901e:	8d 46 94             	lea    -0x6c(%esi),%eax
599021:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
599025:	50                   	push   %eax
599026:	8d 4e 98             	lea    -0x68(%esi),%ecx
599029:	e8 e2 c1 e9 ff       	call   0x435210
59902e:	32 db                	xor    %bl,%bl
599030:	eb 11                	jmp    0x599043
599032:	e8 65 0f e8 ff       	call   0x419f9c
599037:	b8 3d 90 59 00       	mov    $0x59903d,%eax
59903c:	c3                   	ret
59903d:	8a 5d 93             	mov    -0x6d(%ebp),%bl
599040:	8b 75 8c             	mov    -0x74(%ebp),%esi
599043:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
59904a:	8b 45 94             	mov    -0x6c(%ebp),%eax
59904d:	84 db                	test   %bl,%bl
59904f:	0f 84 7b ff ff ff    	je     0x598fd0
599055:	8b 40 04             	mov    0x4(%eax),%eax
599058:	33 c9                	xor    %ecx,%ecx
59905a:	6a ff                	push   $0xffffffff
59905c:	51                   	push   %ecx
59905d:	83 c0 08             	add    $0x8,%eax
599060:	66 89 4d d4          	mov    %cx,-0x2c(%ebp)
599064:	50                   	push   %eax
599065:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
599068:	c7 45 e8 07 00 00 00 	movl   $0x7,-0x18(%ebp)
59906f:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
599076:	e8 a9 8b e8 ff       	call   0x421c24
59907b:	8b 7e a0             	mov    -0x60(%esi),%edi
59907e:	8d 45 d4             	lea    -0x2c(%ebp),%eax
599081:	50                   	push   %eax
599082:	8d 45 8c             	lea    -0x74(%ebp),%eax
599085:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
599089:	50                   	push   %eax
59908a:	8b cf                	mov    %edi,%ecx
59908c:	e8 04 3c ea ff       	call   0x43cc95
599091:	8b 45 8c             	mov    -0x74(%ebp),%eax
599094:	ff 75 94             	push   -0x6c(%ebp)
599097:	3b 07                	cmp    (%edi),%eax
599099:	75 4d                	jne    0x5990e8
59909b:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
5990a1:	e8 d1 45 ea ff       	call   0x43d677
5990a6:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
5990ac:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
5990b0:	50                   	push   %eax
5990b1:	8d 45 d4             	lea    -0x2c(%ebp),%eax
5990b4:	50                   	push   %eax
5990b5:	8d 4d 98             	lea    -0x68(%ebp),%ecx
5990b8:	e8 a1 ac e7 ff       	call   0x413d5e
5990bd:	ff 75 84             	push   -0x7c(%ebp)
5990c0:	8b 4e a0             	mov    -0x60(%esi),%ecx
5990c3:	50                   	push   %eax
5990c4:	6a 00                	push   $0x0
5990c6:	8d 45 88             	lea    -0x78(%ebp),%eax
5990c9:	c6 45 fc 07          	movb   $0x7,-0x4(%ebp)
5990cd:	50                   	push   %eax
5990ce:	e8 c6 b2 e7 ff       	call   0x414399
5990d3:	8d 4d 98             	lea    -0x68(%ebp),%ecx
5990d6:	e8 57 0e e9 ff       	call   0x429f32
5990db:	8d 8d 78 ff ff ff    	lea    -0x88(%ebp),%ecx
5990e1:	e8 5e a7 e8 ff       	call   0x423844
5990e6:	eb 08                	jmp    0x5990f0
5990e8:	8d 48 28             	lea    0x28(%eax),%ecx
5990eb:	e8 82 ab e8 ff       	call   0x423c72
5990f0:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
5990f3:	e8 b9 c2 e7 ff       	call   0x4153b1