4158a9:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
4158af:	c7 85 90 fa ff ff 02 	movl   $0x2,-0x570(%ebp)
4158b6:	00 00 00
4158b9:	6a 04                	push   $0x4
4158bb:	e9 39 fe ff ff       	jmp    0x4156f9
4158c0:	83 fa 35             	cmp    $0x35,%edx
4158c3:	0f 84 14 01 00 00    	je     0x4159dd
4158c9:	83 a5 90 fa ff ff 00 	andl   $0x0,-0x570(%ebp)
4158d0:	c7 85 94 fa ff ff 00 	movl   $0x100000,-0x56c(%ebp)
4158d7:	00 10 00
4158da:	c7 85 8c fa ff ff 02 	movl   $0x2,-0x574(%ebp)
4158e1:	00 00 00
4158e4:	85 f6                	test   %esi,%esi
4158e6:	0f 84 f1 00 00 00    	je     0x4159dd
4158ec:	33 d2                	xor    %edx,%edx
4158ee:	8b 84 15 90 fa ff ff 	mov    -0x570(%ebp,%edx,1),%eax
4158f5:	3b 84 15 30 fe ff ff 	cmp    -0x1d0(%ebp,%edx,1),%eax
4158fc:	0f 85 db 00 00 00    	jne    0x4159dd
415902:	83 c2 04             	add    $0x4,%edx
415905:	83 fa 08             	cmp    $0x8,%edx
415908:	75 e4                	jne    0x4158ee
41590a:	33 db                	xor    %ebx,%ebx
41590c:	0f bd c6             	bsr    %esi,%eax
41590f:	89 9d a8 f8 ff ff    	mov    %ebx,-0x758(%ebp)
415915:	74 03                	je     0x41591a
415917:	40                   	inc    %eax
415918:	eb 02                	jmp    0x41591c
41591a:	8b c3                	mov    %ebx,%eax
41591c:	2b f8                	sub    %eax,%edi
41591e:	83 ff 02             	cmp    $0x2,%edi
415921:	1b f6                	sbb    %esi,%esi
415923:	f7 de                	neg    %esi
415925:	03 f1                	add    %ecx,%esi
415927:	83 fe 73             	cmp    $0x73,%esi
41592a:	76 2a                	jbe    0x415956
41592c:	53                   	push   %ebx
41592d:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415933:	89 9d 8c fa ff ff    	mov    %ebx,-0x574(%ebp)
415939:	50                   	push   %eax
41593a:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
415940:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
415946:	68 cc 01 00 00       	push   $0x1cc
41594b:	50                   	push   %eax
41594c:	e8 6d a5 ff ff       	call   0x40febe
415951:	83 c4 10             	add    $0x10,%esp
415954:	eb 4d                	jmp    0x4159a3
415956:	8d 56 ff             	lea    -0x1(%esi),%edx
415959:	83 fa ff             	cmp    $0xffffffff,%edx
41595c:	74 3f                	je     0x41599d
41595e:	8d 7a ff             	lea    -0x1(%edx),%edi
415961:	3b d1                	cmp    %ecx,%edx
415963:	73 09                	jae    0x41596e
415965:	8b 84 95 30 fe ff ff 	mov    -0x1d0(%ebp,%edx,4),%eax
41596c:	eb 02                	jmp    0x415970
41596e:	8b c3                	mov    %ebx,%eax
415970:	3b f9                	cmp    %ecx,%edi
415972:	73 09                	jae    0x41597d
415974:	8b 8c 95 2c fe ff ff 	mov    -0x1d4(%ebp,%edx,4),%ecx
41597b:	eb 02                	jmp    0x41597f
41597d:	8b cb                	mov    %ebx,%ecx
41597f:	c1 e9 1e             	shr    $0x1e,%ecx
415982:	c1 e0 02             	shl    $0x2,%eax
415985:	0b c8                	or     %eax,%ecx
415987:	89 8c 95 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%edx,4)
41598e:	4a                   	dec    %edx
41598f:	4f                   	dec    %edi
415990:	83 fa ff             	cmp    $0xffffffff,%edx
415993:	74 08                	je     0x41599d
415995:	8b 8d 2c fe ff ff    	mov    -0x1d4(%ebp),%ecx
41599b:	eb c4                	jmp    0x415961
41599d:	89 b5 2c fe ff ff    	mov    %esi,-0x1d4(%ebp)
4159a3:	bb 35 04 00 00       	mov    $0x435,%ebx
4159a8:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
4159ae:	2b 9d b8 f8 ff ff    	sub    -0x748(%ebp),%ebx
4159b4:	8b fb                	mov    %ebx,%edi
4159b6:	c1 ef 05             	shr    $0x5,%edi
4159b9:	8b f7                	mov    %edi,%esi
4159bb:	c1 e6 02             	shl    $0x2,%esi
4159be:	56                   	push   %esi
4159bf:	6a 00                	push   $0x0
4159c1:	50                   	push   %eax
4159c2:	e8 49 37 ff ff       	call   0x409110
4159c7:	83 e3 1f             	and    $0x1f,%ebx
4159ca:	33 c0                	xor    %eax,%eax
4159cc:	40                   	inc    %eax
4159cd:	8b cb                	mov    %ebx,%ecx
4159cf:	d3 e0                	shl    %cl,%eax
4159d1:	89 84 35 90 fa ff ff 	mov    %eax,-0x570(%ebp,%esi,1)
4159d8:	e9 e3 00 00 00       	jmp    0x415ac0
4159dd:	33 c0                	xor    %eax,%eax
4159df:	85 f6                	test   %esi,%esi
4159e1:	0f 95 c0             	setne  %al
4159e4:	83 a5 a8 f8 ff ff 00 	andl   $0x0,-0x758(%ebp)
4159eb:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
4159f2:	8b 84 05 2c fe ff ff 	mov    -0x1d4(%ebp,%eax,1),%eax
4159f9:	0f bd c0             	bsr    %eax,%eax
4159fc:	74 03                	je     0x415a01
4159fe:	40                   	inc    %eax
4159ff:	eb 02                	jmp    0x415a03
415a01:	33 c0                	xor    %eax,%eax
415a03:	2b f8                	sub    %eax,%edi
415a05:	3b fb                	cmp    %ebx,%edi
415a07:	1b f6                	sbb    %esi,%esi
415a09:	f7 de                	neg    %esi
415a0b:	03 f1                	add    %ecx,%esi
415a0d:	83 fe 73             	cmp    $0x73,%esi
415a10:	76 2d                	jbe    0x415a3f
415a12:	83 a5 8c fa ff ff 00 	andl   $0x0,-0x574(%ebp)
415a19:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415a1f:	83 a5 2c fe ff ff 00 	andl   $0x0,-0x1d4(%ebp)
415a26:	6a 00                	push   $0x0
415a28:	50                   	push   %eax
415a29:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
415a2f:	68 cc 01 00 00       	push   $0x1cc
415a34:	50                   	push   %eax
415a35:	e8 84 a4 ff ff       	call   0x40febe
415a3a:	83 c4 10             	add    $0x10,%esp
415a3d:	eb 4c                	jmp    0x415a8b
415a3f:	8d 56 ff             	lea    -0x1(%esi),%edx
415a42:	83 fa ff             	cmp    $0xffffffff,%edx
415a45:	74 3e                	je     0x415a85
415a47:	8d 7a ff             	lea    -0x1(%edx),%edi
415a4a:	3b d1                	cmp    %ecx,%edx
415a4c:	73 09                	jae    0x415a57
415a4e:	8b 84 95 30 fe ff ff 	mov    -0x1d0(%ebp,%edx,4),%eax
415a55:	eb 02                	jmp    0x415a59
415a57:	33 c0                	xor    %eax,%eax
415a59:	3b f9                	cmp    %ecx,%edi
415a5b:	73 09                	jae    0x415a66
415a5d:	8b 8c 95 2c fe ff ff 	mov    -0x1d4(%ebp,%edx,4),%ecx
415a64:	eb 02                	jmp    0x415a68
415a66:	33 c9                	xor    %ecx,%ecx
415a68:	c1 e9 1f             	shr    $0x1f,%ecx
415a6b:	03 c0                	add    %eax,%eax
415a6d:	0b c8                	or     %eax,%ecx
415a6f:	89 8c 95 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%edx,4)
415a76:	4a                   	dec    %edx
415a77:	4f                   	dec    %edi
415a78:	83 fa ff             	cmp    $0xffffffff,%edx
415a7b:	74 08                	je     0x415a85
415a7d:	8b 8d 2c fe ff ff    	mov    -0x1d4(%ebp),%ecx
415a83:	eb c5                	jmp    0x415a4a
415a85:	89 b5 2c fe ff ff    	mov    %esi,-0x1d4(%ebp)
415a8b:	bb 34 04 00 00       	mov    $0x434,%ebx
415a90:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415a96:	2b 9d b8 f8 ff ff    	sub    -0x748(%ebp),%ebx
415a9c:	8b fb                	mov    %ebx,%edi
415a9e:	c1 ef 05             	shr    $0x5,%edi
415aa1:	8b f7                	mov    %edi,%esi
415aa3:	c1 e6 02             	shl    $0x2,%esi
415aa6:	56                   	push   %esi
415aa7:	6a 00                	push   $0x0
415aa9:	50                   	push   %eax
415aaa:	e8 61 36 ff ff       	call   0x409110
415aaf:	83 e3 1f             	and    $0x1f,%ebx
415ab2:	33 c0                	xor    %eax,%eax
415ab4:	40                   	inc    %eax
415ab5:	8b cb                	mov    %ebx,%ecx
415ab7:	d3 e0                	shl    %cl,%eax
415ab9:	89 84 35 90 fa ff ff 	mov    %eax,-0x570(%ebp,%esi,1)
415ac0:	8d 47 01             	lea    0x1(%edi),%eax
415ac3:	be cc 01 00 00       	mov    $0x1cc,%esi
415ac8:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
415ace:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
415ad4:	c1 e0 02             	shl    $0x2,%eax
415ad7:	50                   	push   %eax
415ad8:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415ade:	50                   	push   %eax
415adf:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
415ae5:	56                   	push   %esi
415ae6:	50                   	push   %eax
415ae7:	e8 d2 a3 ff ff       	call   0x40febe
415aec:	33 db                	xor    %ebx,%ebx
415aee:	83 c4 1c             	add    $0x1c,%esp
415af1:	43                   	inc    %ebx
415af2:	8b 85 94 f8 ff ff    	mov    -0x76c(%ebp),%eax
415af8:	33 d2                	xor    %edx,%edx
415afa:	6a 0a                	push   $0xa
415afc:	59                   	pop    %ecx
415afd:	89 8d 8c f8 ff ff    	mov    %ecx,-0x774(%ebp)
415b03:	85 c0                	test   %eax,%eax
415b05:	0f 88 dd 04 00 00    	js     0x415fe8
415b0b:	f7 f1                	div    %ecx
415b0d:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
415b13:	8b ca                	mov    %edx,%ecx
415b15:	89 8d 84 f8 ff ff    	mov    %ecx,-0x77c(%ebp)
415b1b:	85 c0                	test   %eax,%eax
415b1d:	0f 84 da 03 00 00    	je     0x415efd
415b23:	83 f8 26             	cmp    $0x26,%eax
415b26:	76 03                	jbe    0x415b2b
415b28:	6a 26                	push   $0x26
415b2a:	58                   	pop    %eax
415b2b:	0f b6 0c 85 7e 04 42 	movzbl 0x42047e(,%eax,4),%ecx
415b32:	00
415b33:	0f b6 34 85 7f 04 42 	movzbl 0x42047f(,%eax,4),%esi
415b3a:	00
415b3b:	8b f9                	mov    %ecx,%edi
415b3d:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
415b43:	c1 e7 02             	shl    $0x2,%edi
415b46:	57                   	push   %edi
415b47:	8d 04 31             	lea    (%ecx,%esi,1),%eax
415b4a:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
415b50:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415b56:	6a 00                	push   $0x0
415b58:	50                   	push   %eax
415b59:	e8 b2 35 ff ff       	call   0x409110
415b5e:	8b c6                	mov    %esi,%eax
415b60:	c1 e0 02             	shl    $0x2,%eax
415b63:	50                   	push   %eax
415b64:	8b 85 b0 f8 ff ff    	mov    -0x750(%ebp),%eax
415b6a:	0f b7 04 85 7c 04 42 	movzwl 0x42047c(,%eax,4),%eax
415b71:	00
415b72:	8d 04 85 78 fb 41 00 	lea    0x41fb78(,%eax,4),%eax
415b79:	50                   	push   %eax
415b7a:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415b80:	03 c7                	add    %edi,%eax
415b82:	50                   	push   %eax
415b83:	e8 48 40 ff ff       	call   0x409bd0
415b88:	8b bd 8c fa ff ff    	mov    -0x574(%ebp),%edi
415b8e:	83 c4 18             	add    $0x18,%esp
415b91:	3b fb                	cmp    %ebx,%edi
415b93:	0f 87 cc 00 00 00    	ja     0x415c65
415b99:	8b bd 90 fa ff ff    	mov    -0x570(%ebp),%edi
415b9f:	85 ff                	test   %edi,%edi
415ba1:	75 36                	jne    0x415bd9
415ba3:	33 c0                	xor    %eax,%eax
415ba5:	50                   	push   %eax
415ba6:	89 85 bc f8 ff ff    	mov    %eax,-0x744(%ebp)
415bac:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
415bb2:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
415bb8:	50                   	push   %eax
415bb9:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
415bbf:	68 cc 01 00 00       	push   $0x1cc
415bc4:	50                   	push   %eax
415bc5:	e8 f4 a2 ff ff       	call   0x40febe
415bca:	83 c4 10             	add    $0x10,%esp
415bcd:	8a c3                	mov    %bl,%al
415bcf:	be cc 01 00 00       	mov    $0x1cc,%esi
415bd4:	e9 02 03 00 00       	jmp    0x415edb
415bd9:	3b fb                	cmp    %ebx,%edi
415bdb:	74 f0                	je     0x415bcd
415bdd:	83 bd 5c fc ff ff 00 	cmpl   $0x0,-0x3a4(%ebp)
415be4:	74 e7                	je     0x415bcd
415be6:	8b 85 5c fc ff ff    	mov    -0x3a4(%ebp),%eax
415bec:	33 c9                	xor    %ecx,%ecx
415bee:	89 85 a8 f8 ff ff    	mov    %eax,-0x758(%ebp)
415bf4:	33 f6                	xor    %esi,%esi
415bf6:	8b c7                	mov    %edi,%eax
415bf8:	f7 a4 b5 60 fc ff ff 	mull   -0x3a0(%ebp,%esi,4)
415bff:	03 c1                	add    %ecx,%eax
415c01:	89 84 b5 60 fc ff ff 	mov    %eax,-0x3a0(%ebp,%esi,4)
415c08:	83 d2 00             	adc    $0x0,%edx
415c0b:	46                   	inc    %esi
415c0c:	8b ca                	mov    %edx,%ecx
415c0e:	3b b5 a8 f8 ff ff    	cmp    -0x758(%ebp),%esi
415c14:	75 e0                	jne    0x415bf6
415c16:	85 c9                	test   %ecx,%ecx
415c18:	74 b3                	je     0x415bcd
415c1a:	8b 85 5c fc ff ff    	mov    -0x3a4(%ebp),%eax
415c20:	83 f8 73             	cmp    $0x73,%eax
415c23:	73 0f                	jae    0x415c34
415c25:	89 8c 85 60 fc ff ff 	mov    %ecx,-0x3a0(%ebp,%eax,4)
415c2c:	ff 85 5c fc ff ff    	incl   -0x3a4(%ebp)
415c32:	eb 99                	jmp    0x415bcd
415c34:	33 c0                	xor    %eax,%eax
415c36:	50                   	push   %eax
415c37:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
415c3d:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
415c43:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415c49:	50                   	push   %eax
415c4a:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
415c50:	68 cc 01 00 00       	push   $0x1cc
415c55:	50                   	push   %eax
415c56:	e8 63 a2 ff ff       	call   0x40febe
415c5b:	83 c4 10             	add    $0x10,%esp
415c5e:	32 c0                	xor    %al,%al
415c60:	e9 6a ff ff ff       	jmp    0x415bcf
415c65:	39 9d 5c fc ff ff    	cmp    %ebx,-0x3a4(%ebp)
415c6b:	0f 87 de 00 00 00    	ja     0x415d4f
415c71:	8b 85 60 fc ff ff    	mov    -0x3a0(%ebp),%eax
415c77:	be cc 01 00 00       	mov    $0x1cc,%esi
415c7c:	89 85 ac f8 ff ff    	mov    %eax,-0x754(%ebp)
415c82:	8b c7                	mov    %edi,%eax
415c84:	c1 e0 02             	shl    $0x2,%eax
415c87:	50                   	push   %eax
415c88:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415c8e:	89 bd 5c fc ff ff    	mov    %edi,-0x3a4(%ebp)
415c94:	50                   	push   %eax
415c95:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
415c9b:	56                   	push   %esi
415c9c:	50                   	push   %eax
415c9d:	e8 1c a2 ff ff       	call   0x40febe
415ca2:	8b 85 ac f8 ff ff    	mov    -0x754(%ebp),%eax
415ca8:	83 c4 10             	add    $0x10,%esp
415cab:	85 c0                	test   %eax,%eax
415cad:	75 18                	jne    0x415cc7
415caf:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
415cb5:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
415cbb:	50                   	push   %eax
415cbc:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415cc2:	e9 01 02 00 00       	jmp    0x415ec8
415cc7:	3b c3                	cmp    %ebx,%eax
415cc9:	0f 84 0a 02 00 00    	je     0x415ed9
415ccf:	83 bd 5c fc ff ff 00 	cmpl   $0x0,-0x3a4(%ebp)
415cd6:	0f 84 fd 01 00 00    	je     0x415ed9
415cdc:	8b 8d 5c fc ff ff    	mov    -0x3a4(%ebp),%ecx
415ce2:	89 8d a8 f8 ff ff    	mov    %ecx,-0x758(%ebp)
415ce8:	33 c9                	xor    %ecx,%ecx
415cea:	33 ff                	xor    %edi,%edi
415cec:	f7 a4 bd 60 fc ff ff 	mull   -0x3a0(%ebp,%edi,4)
415cf3:	03 c1                	add    %ecx,%eax
415cf5:	89 84 bd 60 fc ff ff 	mov    %eax,-0x3a0(%ebp,%edi,4)
415cfc:	8b 85 ac f8 ff ff    	mov    -0x754(%ebp),%eax
415d02:	83 d2 00             	adc    $0x0,%edx
415d05:	47                   	inc    %edi
415d06:	8b ca                	mov    %edx,%ecx
415d08:	3b bd a8 f8 ff ff    	cmp    -0x758(%ebp),%edi
415d0e:	75 dc                	jne    0x415cec
415d10:	85 c9                	test   %ecx,%ecx
415d12:	0f 84 c1 01 00 00    	je     0x415ed9
415d18:	8b 85 5c fc ff ff    	mov    -0x3a4(%ebp),%eax
415d1e:	83 f8 73             	cmp    $0x73,%eax
415d21:	73 12                	jae    0x415d35
415d23:	89 8c 85 60 fc ff ff 	mov    %ecx,-0x3a0(%ebp,%eax,4)
415d2a:	ff 85 5c fc ff ff    	incl   -0x3a4(%ebp)
415d30:	e9 a4 01 00 00       	jmp    0x415ed9
415d35:	33 c0                	xor    %eax,%eax
415d37:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
415d3d:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
415d43:	50                   	push   %eax
415d44:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
415d4a:	e9 f2 01 00 00       	jmp    0x415f41
415d4f:	3b bd 5c fc ff ff    	cmp    -0x3a4(%ebp),%edi
415d55:	8d 95 90 fa ff ff    	lea    -0x570(%ebp),%edx
415d5b:	0f 92 c0             	setb   %al
415d5e:	72 06                	jb     0x415d66
415d60:	8d 95 60 fc ff ff    	lea    -0x3a0(%ebp),%edx
415d66:	89 95 98 f8 ff ff    	mov    %edx,-0x768(%ebp)
415d6c:	8d 8d 60 fc ff ff    	lea    -0x3a0(%ebp),%ecx
415d72:	84 c0                	test   %al,%al
415d74:	75 06                	jne    0x415d7c
415d76:	8d 8d 90 fa ff ff    	lea    -0x570(%ebp),%ecx
415d7c:	89 8d ac f8 ff ff    	mov    %ecx,-0x754(%ebp)
415d82:	84 c0                	test   %al,%al
415d84:	74 0a                	je     0x415d90
415d86:	8b cf                	mov    %edi,%ecx
415d88:	89 bd 90 f8 ff ff    	mov    %edi,-0x770(%ebp)
415d8e:	eb 0c                	jmp    0x415d9c
415d90:	8b 8d 5c fc ff ff    	mov    -0x3a4(%ebp),%ecx
415d96:	89 8d 90 f8 ff ff    	mov    %ecx,-0x770(%ebp)