589d13:	51                   	push   %ecx
589d14:	e8 76 7a e7 ff       	call   0x40178f
589d19:	59                   	pop    %ecx
589d1a:	c2 08 00             	ret    $0x8
589d1d:	e8 6b 3c eb ff       	call   0x43d98d
589d22:	e8 66 3c eb ff       	call   0x43d98d
589d27:	e8 61 3c eb ff       	call   0x43d98d
589d2c:	e8 5c 3c eb ff       	call   0x43d98d
589d31:	e8 57 3c eb ff       	call   0x43d98d
589d36:	cc                   	int3
589d37:	cc                   	int3
589d38:	cc                   	int3
589d39:	cc                   	int3
589d3a:	cc                   	int3
589d3b:	cc                   	int3
589d3c:	cc                   	int3
589d3d:	cc                   	int3
589d3e:	cc                   	int3
589d3f:	cc                   	int3
589d40:	cc                   	int3
589d41:	cc                   	int3
589d42:	cc                   	int3
589d43:	cc                   	int3
589d44:	cc                   	int3
589d45:	cc                   	int3
589d46:	cc                   	int3
589d47:	cc                   	int3
589d48:	cc                   	int3
589d49:	cc                   	int3
589d4a:	cc                   	int3
589d4b:	cc                   	int3
589d4c:	cc                   	int3
589d4d:	cc                   	int3
589d4e:	cc                   	int3
589d4f:	cc                   	int3
589d50:	8b 44 24 08          	mov    0x8(%esp),%eax
589d54:	8b 4c 24 04          	mov    0x4(%esp),%ecx
589d58:	3d ff ff ff 1f       	cmp    $0x1fffffff,%eax
589d5d:	77 2e                	ja     0x589d8d
589d5f:	c1 e0 03             	shl    $0x3,%eax
589d62:	3d 00 10 00 00       	cmp    $0x1000,%eax
589d67:	72 1a                	jb     0x589d83
589d69:	f6 c1 1f             	test   $0x1f,%cl
589d6c:	75 24                	jne    0x589d92
589d6e:	8b 41 fc             	mov    -0x4(%ecx),%eax
589d71:	3b c1                	cmp    %ecx,%eax
589d73:	73 22                	jae    0x589d97
589d75:	2b c8                	sub    %eax,%ecx
589d77:	83 f9 04             	cmp    $0x4,%ecx
589d7a:	72 20                	jb     0x589d9c
589d7c:	83 f9 23             	cmp    $0x23,%ecx
589d7f:	77 20                	ja     0x589da1
589d81:	8b c8                	mov    %eax,%ecx
589d83:	51                   	push   %ecx
589d84:	e8 06 7a e7 ff       	call   0x40178f
589d89:	59                   	pop    %ecx
589d8a:	c2 08 00             	ret    $0x8
589d8d:	e8 fb 3b eb ff       	call   0x43d98d
589d92:	e8 f6 3b eb ff       	call   0x43d98d
589d97:	e8 f1 3b eb ff       	call   0x43d98d
589d9c:	e8 ec 3b eb ff       	call   0x43d98d
589da1:	e8 e7 3b eb ff       	call   0x43d98d
589da6:	cc                   	int3
589da7:	cc                   	int3
589da8:	cc                   	int3
589da9:	cc                   	int3
589daa:	cc                   	int3
589dab:	cc                   	int3
589dac:	cc                   	int3
589dad:	cc                   	int3
589dae:	cc                   	int3
589daf:	cc                   	int3
589db0:	cc                   	int3
589db1:	cc                   	int3
589db2:	cc                   	int3
589db3:	cc                   	int3
589db4:	cc                   	int3
589db5:	cc                   	int3
589db6:	cc                   	int3
589db7:	cc                   	int3
589db8:	cc                   	int3
589db9:	cc                   	int3
589dba:	cc                   	int3
589dbb:	cc                   	int3
589dbc:	cc                   	int3
589dbd:	cc                   	int3
589dbe:	cc                   	int3
589dbf:	cc                   	int3
589dc0:	8b 44 24 04          	mov    0x4(%esp),%eax
589dc4:	8b 49 04             	mov    0x4(%ecx),%ecx
589dc7:	89 08                	mov    %ecx,(%eax)
589dc9:	c2 04 00             	ret    $0x4
589dcc:	cc                   	int3
589dcd:	cc                   	int3
589dce:	cc                   	int3
589dcf:	cc                   	int3
589dd0:	56                   	push   %esi
589dd1:	8b f1                	mov    %ecx,%esi
589dd3:	57                   	push   %edi
589dd4:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
589dd8:	72 02                	jb     0x589ddc
589dda:	8b 0e                	mov    (%esi),%ecx
589ddc:	8b 7c 24 10          	mov    0x10(%esp),%edi
589de0:	2b f9                	sub    %ecx,%edi
589de2:	8b 4c 24 14          	mov    0x14(%esp),%ecx
589de6:	2b 4c 24 10          	sub    0x10(%esp),%ecx
589dea:	d1 f9                	sar    $1,%ecx
589dec:	51                   	push   %ecx
589ded:	d1 ff                	sar    $1,%edi
589def:	8b ce                	mov    %esi,%ecx
589df1:	57                   	push   %edi
589df2:	e8 64 e7 e9 ff       	call   0x42855b
589df7:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
589dfb:	72 02                	jb     0x589dff
589dfd:	8b 36                	mov    (%esi),%esi
589dff:	8b 44 24 0c          	mov    0xc(%esp),%eax
589e03:	8d 0c 7e             	lea    (%esi,%edi,2),%ecx
589e06:	5f                   	pop    %edi
589e07:	5e                   	pop    %esi
589e08:	89 08                	mov    %ecx,(%eax)
589e0a:	c2 0c 00             	ret    $0xc
589e0d:	cc                   	int3
589e0e:	cc                   	int3
589e0f:	cc                   	int3
589e10:	cc                   	int3
589e11:	cc                   	int3
589e12:	cc                   	int3
589e13:	cc                   	int3
589e14:	cc                   	int3
589e15:	cc                   	int3
589e16:	cc                   	int3
589e17:	cc                   	int3
589e18:	cc                   	int3
589e19:	cc                   	int3
589e1a:	cc                   	int3
589e1b:	cc                   	int3
589e1c:	cc                   	int3
589e1d:	cc                   	int3
589e1e:	cc                   	int3
589e1f:	cc                   	int3
589e20:	ff 74 24 04          	push   0x4(%esp)
589e24:	8d 41 04             	lea    0x4(%ecx),%eax
589e27:	50                   	push   %eax
589e28:	e8 56 8e e8 ff       	call   0x412c83
589e2d:	83 c4 08             	add    $0x8,%esp
589e30:	c2 04 00             	ret    $0x4
589e33:	cc                   	int3
589e34:	cc                   	int3
589e35:	cc                   	int3
589e36:	cc                   	int3
589e37:	cc                   	int3
589e38:	cc                   	int3
589e39:	cc                   	int3
589e3a:	cc                   	int3
589e3b:	cc                   	int3
589e3c:	cc                   	int3
589e3d:	cc                   	int3
589e3e:	cc                   	int3
589e3f:	cc                   	int3
589e40:	ff 74 24 04          	push   0x4(%esp)
589e44:	8d 41 04             	lea    0x4(%ecx),%eax
589e47:	50                   	push   %eax
589e48:	e8 36 8e e8 ff       	call   0x412c83
589e4d:	83 c4 08             	add    $0x8,%esp
589e50:	c2 04 00             	ret    $0x4
589e53:	cc                   	int3
589e54:	cc                   	int3
589e55:	cc                   	int3
589e56:	cc                   	int3
589e57:	cc                   	int3
589e58:	cc                   	int3
589e59:	cc                   	int3
589e5a:	cc                   	int3
589e5b:	cc                   	int3
589e5c:	cc                   	int3
589e5d:	cc                   	int3
589e5e:	cc                   	int3
589e5f:	cc                   	int3
589e60:	ff 74 24 04          	push   0x4(%esp)
589e64:	8d 41 04             	lea    0x4(%ecx),%eax
589e67:	50                   	push   %eax
589e68:	e8 16 8e e8 ff       	call   0x412c83
589e6d:	83 c4 08             	add    $0x8,%esp
589e70:	c2 04 00             	ret    $0x4
589e73:	cc                   	int3
589e74:	cc                   	int3
589e75:	cc                   	int3
589e76:	cc                   	int3
589e77:	2b 49 fc             	sub    -0x4(%ecx),%ecx
589e7a:	e9 7c ec e9 ff       	jmp    0x428afb
589e7f:	cc                   	int3
589e80:	cc                   	int3
589e81:	cc                   	int3
589e82:	cc                   	int3
589e83:	cc                   	int3
589e84:	cc                   	int3
589e85:	cc                   	int3
589e86:	cc                   	int3
589e87:	cc                   	int3
589e88:	cc                   	int3
589e89:	cc                   	int3
589e8a:	cc                   	int3
589e8b:	cc                   	int3
589e8c:	cc                   	int3
589e8d:	cc                   	int3
589e8e:	cc                   	int3
589e8f:	cc                   	int3
589e90:	e9 18 c6 ea ff       	jmp    0x4364ad
589e95:	2b 49 fc             	sub    -0x4(%ecx),%ecx
589e98:	e9 da 2b e8 ff       	jmp    0x40ca77
589e9d:	cc                   	int3
589e9e:	cc                   	int3
589e9f:	cc                   	int3
589ea0:	55                   	push   %ebp
589ea1:	8b ec                	mov    %esp,%ebp
589ea3:	6a ff                	push   $0xffffffff
589ea5:	68 69 ba b5 00       	push   $0xb5ba69
589eaa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
589eb0:	50                   	push   %eax
589eb1:	83 ec 48             	sub    $0x48,%esp
589eb4:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
589eb9:	33 c5                	xor    %ebp,%eax
589ebb:	89 45 f0             	mov    %eax,-0x10(%ebp)
589ebe:	56                   	push   %esi
589ebf:	50                   	push   %eax
589ec0:	8d 45 f4             	lea    -0xc(%ebp),%eax
589ec3:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
589ec9:	8b 75 08             	mov    0x8(%ebp),%esi
589ecc:	8b ce                	mov    %esi,%ecx
589ece:	c7 45 b4 00 00 00 00 	movl   $0x0,-0x4c(%ebp)
589ed5:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
589edc:	89 75 b8             	mov    %esi,-0x48(%ebp)
589edf:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
589ee5:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
589eec:	e8 a1 87 e9 ff       	call   0x422692
589ef1:	89 06                	mov    %eax,(%esi)
589ef3:	6a 01                	push   $0x1
589ef5:	33 c0                	xor    %eax,%eax
589ef7:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
589efe:	68 68 22 be 00       	push   $0xbe2268
589f03:	8d 4d bc             	lea    -0x44(%ebp),%ecx
589f06:	c7 45 b4 01 00 00 00 	movl   $0x1,-0x4c(%ebp)
589f0d:	c7 45 d0 07 00 00 00 	movl   $0x7,-0x30(%ebp)
589f14:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
589f1b:	66 89 45 bc          	mov    %ax,-0x44(%ebp)
589f1f:	e8 93 12 e9 ff       	call   0x41b1b7
589f24:	33 c0                	xor    %eax,%eax
589f26:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
589f2d:	66 89 45 d4          	mov    %ax,-0x2c(%ebp)
589f31:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
589f34:	8d 45 bc             	lea    -0x44(%ebp),%eax
589f37:	c7 45 e8 07 00 00 00 	movl   $0x7,-0x18(%ebp)
589f3e:	50                   	push   %eax
589f3f:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
589f46:	e8 7c 8e e9 ff       	call   0x422dc7
589f4b:	c7 45 ec ca 60 43 00 	movl   $0x4360ca,-0x14(%ebp)
589f52:	ff 75 b8             	push   -0x48(%ebp)
589f55:	8d 45 d4             	lea    -0x2c(%ebp),%eax
589f58:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
589f5c:	50                   	push   %eax
589f5d:	6a 00                	push   $0x0
589f5f:	8d 45 ac             	lea    -0x54(%ebp),%eax
589f62:	8b ce                	mov    %esi,%ecx
589f64:	50                   	push   %eax
589f65:	e8 ec 77 e9 ff       	call   0x421756
589f6a:	8b 45 e8             	mov    -0x18(%ebp),%eax
589f6d:	83 f8 08             	cmp    $0x8,%eax
589f70:	72 0d                	jb     0x589f7f
589f72:	40                   	inc    %eax
589f73:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
589f76:	50                   	push   %eax
589f77:	ff 75 d4             	push   -0x2c(%ebp)
589f7a:	e8 c8 7c e9 ff       	call   0x421c47
589f7f:	33 c0                	xor    %eax,%eax
589f81:	c7 45 e8 07 00 00 00 	movl   $0x7,-0x18(%ebp)
589f88:	66 89 45 d4          	mov    %ax,-0x2c(%ebp)
589f8c:	88 45 fc             	mov    %al,-0x4(%ebp)
589f8f:	8b 45 d0             	mov    -0x30(%ebp),%eax
589f92:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
589f99:	83 f8 08             	cmp    $0x8,%eax
589f9c:	72 0d                	jb     0x589fab
589f9e:	40                   	inc    %eax
589f9f:	8d 4d bc             	lea    -0x44(%ebp),%ecx
589fa2:	50                   	push   %eax
589fa3:	ff 75 bc             	push   -0x44(%ebp)
589fa6:	e8 9c 7c e9 ff       	call   0x421c47
589fab:	6a 05                	push   $0x5
589fad:	33 c0                	xor    %eax,%eax
589faf:	c7 45 d0 07 00 00 00 	movl   $0x7,-0x30(%ebp)
589fb6:	68 6c 22 be 00       	push   $0xbe226c
589fbb:	8d 4d bc             	lea    -0x44(%ebp),%ecx
589fbe:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
589fc5:	66 89 45 bc          	mov    %ax,-0x44(%ebp)
589fc9:	e8 e9 11 e9 ff       	call   0x41b1b7
589fce:	33 c0                	xor    %eax,%eax
589fd0:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
589fd7:	66 89 45 d4          	mov    %ax,-0x2c(%ebp)
589fdb:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
589fde:	8d 45 bc             	lea    -0x44(%ebp),%eax
589fe1:	c7 45 e8 07 00 00 00 	movl   $0x7,-0x18(%ebp)
589fe8:	50                   	push   %eax
589fe9:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
589ff0:	e8 d2 8d e9 ff       	call   0x422dc7
589ff5:	c7 45 ec ca 60 43 00 	movl   $0x4360ca,-0x14(%ebp)
589ffc:	ff 75 b8             	push   -0x48(%ebp)
589fff:	8d 45 d4             	lea    -0x2c(%ebp),%eax
58a002:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
58a006:	50                   	push   %eax
58a007:	6a 00                	push   $0x0
58a009:	8d 45 ac             	lea    -0x54(%ebp),%eax
58a00c:	8b ce                	mov    %esi,%ecx
58a00e:	50                   	push   %eax
58a00f:	e8 42 77 e9 ff       	call   0x421756
58a014:	8b 45 e8             	mov    -0x18(%ebp),%eax
58a017:	83 f8 08             	cmp    $0x8,%eax
58a01a:	72 0d                	jb     0x58a029
58a01c:	40                   	inc    %eax
58a01d:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
58a020:	50                   	push   %eax
58a021:	ff 75 d4             	push   -0x2c(%ebp)
58a024:	e8 1e 7c e9 ff       	call   0x421c47
58a029:	8b 4d d0             	mov    -0x30(%ebp),%ecx
58a02c:	33 c0                	xor    %eax,%eax
58a02e:	c7 45 e8 07 00 00 00 	movl   $0x7,-0x18(%ebp)
58a035:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
58a03c:	66 89 45 d4          	mov    %ax,-0x2c(%ebp)
58a040:	83 f9 08             	cmp    $0x8,%ecx
58a043:	72 0d                	jb     0x58a052
58a045:	41                   	inc    %ecx
58a046:	51                   	push   %ecx
58a047:	ff 75 bc             	push   -0x44(%ebp)
58a04a:	8d 4d bc             	lea    -0x44(%ebp),%ecx
58a04d:	e8 f5 7b e9 ff       	call   0x421c47
58a052:	8b c6                	mov    %esi,%eax
58a054:	8b 4d f4             	mov    -0xc(%ebp),%ecx
58a057:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
58a05e:	59                   	pop    %ecx
58a05f:	5e                   	pop    %esi
58a060:	8b 4d f0             	mov    -0x10(%ebp),%ecx
58a063:	33 cd                	xor    %ebp,%ecx
58a065:	e8 4c 17 e9 ff       	call   0x41b7b6
58a06a:	8b e5                	mov    %ebp,%esp
58a06c:	5d                   	pop    %ebp
58a06d:	c2 04 00             	ret    $0x4
58a070:	cc                   	int3
58a071:	cc                   	int3
58a072:	cc                   	int3
58a073:	cc                   	int3
58a074:	cc                   	int3
58a075:	cc                   	int3