40cb34:	68 25 25 01 04       	push   $0x4012525
40cb39:	68 04 00 00 00       	push   $0x4
40cb3e:	e8 67 3a 09 00       	call   0x4a05aa
40cb43:	83 c4 0c             	add    $0xc,%esp
40cb46:	59                   	pop    %ecx
40cb47:	5b                   	pop    %ebx
40cb48:	3b c1                	cmp    %ecx,%eax
40cb4a:	7c 17                	jl     0x40cb63
40cb4c:	68 24 14 00 00       	push   $0x1424
40cb51:	68 25 25 01 04       	push   $0x4012525
40cb56:	68 01 00 00 00       	push   $0x1
40cb5b:	e8 4a 3a 09 00       	call   0x4a05aa
40cb60:	83 c4 0c             	add    $0xc,%esp
40cb63:	c1 e0 02             	shl    $0x2,%eax
40cb66:	03 d8                	add    %eax,%ebx
40cb68:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40cb6b:	6a 01                	push   $0x1
40cb6d:	68 b4 00 00 00       	push   $0xb4
40cb72:	68 1b 09 3f 00       	push   $0x3f091b
40cb77:	e8 32 0f 00 00       	call   0x40daae
40cb7c:	89 45 e8             	mov    %eax,-0x18(%ebp)
40cb7f:	6a 01                	push   $0x1
40cb81:	ff 75 e8             	push   -0x18(%ebp)
40cb84:	ff 75 ec             	push   -0x14(%ebp)
40cb87:	8b 04 24             	mov    (%esp),%eax
40cb8a:	8b 00                	mov    (%eax),%eax
40cb8c:	8b 00                	mov    (%eax),%eax
40cb8e:	ff 90 cc 01 00 00    	call   *0x1cc(%eax)
40cb94:	8b 1d 50 99 50 00    	mov    0x509950,%ebx
40cb9a:	e8 54 6b ff ff       	call   0x4036f3
40cb9f:	53                   	push   %ebx
40cba0:	51                   	push   %ecx
40cba1:	8b 45 f0             	mov    -0x10(%ebp),%eax
40cba4:	48                   	dec    %eax
40cba5:	79 17                	jns    0x40cbbe
40cba7:	68 68 14 00 00       	push   $0x1468
40cbac:	68 25 25 01 04       	push   $0x4012525
40cbb1:	68 04 00 00 00       	push   $0x4
40cbb6:	e8 ef 39 09 00       	call   0x4a05aa
40cbbb:	83 c4 0c             	add    $0xc,%esp
40cbbe:	59                   	pop    %ecx
40cbbf:	5b                   	pop    %ebx
40cbc0:	3b c1                	cmp    %ecx,%eax
40cbc2:	7c 17                	jl     0x40cbdb
40cbc4:	68 68 14 00 00       	push   $0x1468
40cbc9:	68 25 25 01 04       	push   $0x4012525
40cbce:	68 01 00 00 00       	push   $0x1
40cbd3:	e8 d2 39 09 00       	call   0x4a05aa
40cbd8:	83 c4 0c             	add    $0xc,%esp
40cbdb:	c1 e0 02             	shl    $0x2,%eax
40cbde:	03 d8                	add    %eax,%ebx
40cbe0:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40cbe3:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
40cbea:	6a 00                	push   $0x0
40cbec:	ff 75 e8             	push   -0x18(%ebp)
40cbef:	68 1b 09 3f 00       	push   $0x3f091b
40cbf4:	e8 b5 0e 00 00       	call   0x40daae
40cbf9:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40cbfc:	6a 01                	push   $0x1
40cbfe:	ff 75 e4             	push   -0x1c(%ebp)
40cc01:	ff 75 ec             	push   -0x14(%ebp)
40cc04:	8b 04 24             	mov    (%esp),%eax
40cc07:	8b 00                	mov    (%eax),%eax
40cc09:	8b 00                	mov    (%eax),%eax
40cc0b:	ff 90 d0 01 00 00    	call   *0x1d0(%eax)
40cc11:	8b 1d 50 99 50 00    	mov    0x509950,%ebx
40cc17:	e8 d7 6a ff ff       	call   0x4036f3
40cc1c:	53                   	push   %ebx
40cc1d:	51                   	push   %ecx
40cc1e:	8b 45 f0             	mov    -0x10(%ebp),%eax
40cc21:	48                   	dec    %eax
40cc22:	79 17                	jns    0x40cc3b
40cc24:	68 a3 14 00 00       	push   $0x14a3
40cc29:	68 25 25 01 04       	push   $0x4012525
40cc2e:	68 04 00 00 00       	push   $0x4
40cc33:	e8 72 39 09 00       	call   0x4a05aa
40cc38:	83 c4 0c             	add    $0xc,%esp
40cc3b:	59                   	pop    %ecx
40cc3c:	5b                   	pop    %ebx
40cc3d:	3b c1                	cmp    %ecx,%eax
40cc3f:	7c 17                	jl     0x40cc58
40cc41:	68 a3 14 00 00       	push   $0x14a3
40cc46:	68 25 25 01 04       	push   $0x4012525
40cc4b:	68 01 00 00 00       	push   $0x1
40cc50:	e8 55 39 09 00       	call   0x4a05aa
40cc55:	83 c4 0c             	add    $0xc,%esp
40cc58:	c1 e0 02             	shl    $0x2,%eax
40cc5b:	03 d8                	add    %eax,%ebx
40cc5d:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40cc60:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
40cc67:	6a 00                	push   $0x0
40cc69:	ff 75 e8             	push   -0x18(%ebp)
40cc6c:	68 e3 a3 41 00       	push   $0x41a3e3
40cc71:	ff 75 ec             	push   -0x14(%ebp)
40cc74:	8b 04 24             	mov    (%esp),%eax
40cc77:	8b 00                	mov    (%eax),%eax
40cc79:	8b 00                	mov    (%eax),%eax
40cc7b:	ff 90 64 01 00 00    	call   *0x164(%eax)
40cc81:	5b                   	pop    %ebx
40cc82:	59                   	pop    %ecx
40cc83:	e9 09 fe ff ff       	jmp    0x40ca91
40cc88:	83 c4 08             	add    $0x8,%esp
40cc8b:	8b 1d 44 99 50 00    	mov    0x509944,%ebx
40cc91:	e8 5d 6a ff ff       	call   0x4036f3
40cc96:	b8 00 00 00 00       	mov    $0x0,%eax
40cc9b:	3b c1                	cmp    %ecx,%eax
40cc9d:	7c 17                	jl     0x40ccb6
40cc9f:	68 01 15 00 00       	push   $0x1501
40cca4:	68 25 25 01 04       	push   $0x4012525
40cca9:	68 01 00 00 00       	push   $0x1
40ccae:	e8 f7 38 09 00       	call   0x4a05aa
40ccb3:	83 c4 0c             	add    $0xc,%esp
40ccb6:	c1 e0 02             	shl    $0x2,%eax
40ccb9:	03 d8                	add    %eax,%ebx
40ccbb:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40ccbe:	6a 01                	push   $0x1
40ccc0:	68 01 00 00 00       	push   $0x1
40ccc5:	ff 75 ec             	push   -0x14(%ebp)
40ccc8:	8b 04 24             	mov    (%esp),%eax
40cccb:	8b 00                	mov    (%eax),%eax
40cccd:	8b 00                	mov    (%eax),%eax
40cccf:	ff 90 ac 00 00 00    	call   *0xac(%eax)
40ccd5:	8b 1d 44 99 50 00    	mov    0x509944,%ebx
40ccdb:	e8 13 6a ff ff       	call   0x4036f3
40cce0:	b8 01 00 00 00       	mov    $0x1,%eax
40cce5:	3b c1                	cmp    %ecx,%eax
40cce7:	7c 17                	jl     0x40cd00
40cce9:	68 22 15 00 00       	push   $0x1522
40ccee:	68 25 25 01 04       	push   $0x4012525
40ccf3:	68 01 00 00 00       	push   $0x1
40ccf8:	e8 ad 38 09 00       	call   0x4a05aa
40ccfd:	83 c4 0c             	add    $0xc,%esp
40cd00:	c1 e0 02             	shl    $0x2,%eax
40cd03:	03 d8                	add    %eax,%ebx
40cd05:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40cd08:	6a 01                	push   $0x1
40cd0a:	68 00 00 00 00       	push   $0x0
40cd0f:	ff 75 ec             	push   -0x14(%ebp)
40cd12:	8b 04 24             	mov    (%esp),%eax
40cd15:	8b 00                	mov    (%eax),%eax
40cd17:	8b 00                	mov    (%eax),%eax
40cd19:	ff 90 ac 00 00 00    	call   *0xac(%eax)
40cd1f:	8b 1d 44 99 50 00    	mov    0x509944,%ebx
40cd25:	e8 c9 69 ff ff       	call   0x4036f3
40cd2a:	b8 02 00 00 00       	mov    $0x2,%eax
40cd2f:	3b c1                	cmp    %ecx,%eax
40cd31:	7c 17                	jl     0x40cd4a
40cd33:	68 43 15 00 00       	push   $0x1543
40cd38:	68 25 25 01 04       	push   $0x4012525
40cd3d:	68 01 00 00 00       	push   $0x1
40cd42:	e8 63 38 09 00       	call   0x4a05aa
40cd47:	83 c4 0c             	add    $0xc,%esp
40cd4a:	c1 e0 02             	shl    $0x2,%eax
40cd4d:	03 d8                	add    %eax,%ebx
40cd4f:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40cd52:	6a 01                	push   $0x1
40cd54:	68 00 00 00 00       	push   $0x0
40cd59:	ff 75 ec             	push   -0x14(%ebp)
40cd5c:	8b 04 24             	mov    (%esp),%eax
40cd5f:	8b 00                	mov    (%eax),%eax
40cd61:	8b 00                	mov    (%eax),%eax
40cd63:	ff 90 ac 00 00 00    	call   *0xac(%eax)
40cd69:	33 c9                	xor    %ecx,%ecx
40cd6b:	8d 45 f0             	lea    -0x10(%ebp),%eax
40cd6e:	8b d8                	mov    %eax,%ebx
40cd70:	41                   	inc    %ecx
40cd71:	51                   	push   %ecx
40cd72:	53                   	push   %ebx
40cd73:	89 0b                	mov    %ecx,(%ebx)
40cd75:	83 f9 03             	cmp    $0x3,%ecx
40cd78:	0f 8f 77 00 00 00    	jg     0x40cdf5
40cd7e:	8b 1d 4c 99 50 00    	mov    0x50994c,%ebx
40cd84:	e8 6a 69 ff ff       	call   0x4036f3
40cd89:	53                   	push   %ebx
40cd8a:	51                   	push   %ecx
40cd8b:	8b 45 f0             	mov    -0x10(%ebp),%eax
40cd8e:	48                   	dec    %eax
40cd8f:	79 17                	jns    0x40cda8
40cd91:	68 9a 15 00 00       	push   $0x159a
40cd96:	68 25 25 01 04       	push   $0x4012525
40cd9b:	68 04 00 00 00       	push   $0x4
40cda0:	e8 05 38 09 00       	call   0x4a05aa
40cda5:	83 c4 0c             	add    $0xc,%esp
40cda8:	59                   	pop    %ecx
40cda9:	5b                   	pop    %ebx
40cdaa:	3b c1                	cmp    %ecx,%eax
40cdac:	7c 17                	jl     0x40cdc5
40cdae:	68 9a 15 00 00       	push   $0x159a
40cdb3:	68 25 25 01 04       	push   $0x4012525
40cdb8:	68 01 00 00 00       	push   $0x1
40cdbd:	e8 e8 37 09 00       	call   0x4a05aa
40cdc2:	83 c4 0c             	add    $0xc,%esp
40cdc5:	c1 e0 02             	shl    $0x2,%eax
40cdc8:	03 d8                	add    %eax,%ebx
40cdca:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40cdcd:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
40cdd4:	6a 00                	push   $0x0
40cdd6:	ff 75 e8             	push   -0x18(%ebp)
40cdd9:	68 4a f5 41 00       	push   $0x41f54a
40cdde:	ff 75 ec             	push   -0x14(%ebp)
40cde1:	8b 04 24             	mov    (%esp),%eax
40cde4:	8b 00                	mov    (%eax),%eax
40cde6:	8b 00                	mov    (%eax),%eax
40cde8:	ff 90 64 01 00 00    	call   *0x164(%eax)
40cdee:	5b                   	pop    %ebx
40cdef:	59                   	pop    %ecx
40cdf0:	e9 7b ff ff ff       	jmp    0x40cd70
40cdf5:	83 c4 08             	add    $0x8,%esp
40cdf8:	e8 de 0e 00 00       	call   0x40dcdb
40cdfd:	e8 48 ca 00 00       	call   0x41984a
40ce02:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
40ce09:	6a 00                	push   $0x0
40ce0b:	ff 75 ec             	push   -0x14(%ebp)
40ce0e:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
40ce15:	6a 00                	push   $0x0
40ce17:	ff 75 e8             	push   -0x18(%ebp)
40ce1a:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
40ce21:	6a 00                	push   $0x0
40ce23:	ff 75 e4             	push   -0x1c(%ebp)
40ce26:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
40ce2d:	6a 00                	push   $0x0
40ce2f:	ff 75 e0             	push   -0x20(%ebp)
40ce32:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
40ce39:	6a 00                	push   $0x0
40ce3b:	ff 75 dc             	push   -0x24(%ebp)
40ce3e:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
40ce45:	6a 00                	push   $0x0
40ce47:	ff 75 d8             	push   -0x28(%ebp)
40ce4a:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
40ce51:	6a 00                	push   $0x0
40ce53:	ff 75 d4             	push   -0x2c(%ebp)
40ce56:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
40ce5d:	6a 00                	push   $0x0
40ce5f:	ff 75 d0             	push   -0x30(%ebp)
40ce62:	68 01 00 00 00       	push   $0x1
40ce67:	68 3c 99 50 00       	push   $0x50993c
40ce6c:	8b 04 24             	mov    (%esp),%eax
40ce6f:	8b 00                	mov    (%eax),%eax
40ce71:	8b 00                	mov    (%eax),%eax
40ce73:	ff 90 20 01 00 00    	call   *0x120(%eax)
40ce79:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
40ce80:	6a 00                	push   $0x0
40ce82:	ff 75 ec             	push   -0x14(%ebp)
40ce85:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
40ce8c:	6a 00                	push   $0x0
40ce8e:	ff 75 e8             	push   -0x18(%ebp)
40ce91:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
40ce98:	6a 00                	push   $0x0
40ce9a:	ff 75 e4             	push   -0x1c(%ebp)
40ce9d:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
40cea4:	6a 00                	push   $0x0
40cea6:	ff 75 e0             	push   -0x20(%ebp)
40cea9:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
40ceb0:	6a 00                	push   $0x0
40ceb2:	ff 75 dc             	push   -0x24(%ebp)
40ceb5:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
40cebc:	6a 00                	push   $0x0
40cebe:	ff 75 d8             	push   -0x28(%ebp)
40cec1:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
40cec8:	6a 00                	push   $0x0
40ceca:	ff 75 d4             	push   -0x2c(%ebp)
40cecd:	68 01 00 00 00       	push   $0x1
40ced2:	68 3c 99 50 00       	push   $0x50993c
40ced7:	8b 04 24             	mov    (%esp),%eax
40ceda:	8b 00                	mov    (%eax),%eax
40cedc:	8b 00                	mov    (%eax),%eax
40cede:	ff 90 24 01 00 00    	call   *0x124(%eax)
40cee4:	6a 01                	push   $0x1
40cee6:	ff 35 38 99 50 00    	push   0x509938
40ceec:	e8 6c cc 00 00       	call   0x419b5d
40cef1:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40cef4:	53                   	push   %ebx
40cef5:	8b 0b                	mov    (%ebx),%ecx
40cef7:	83 c3 04             	add    $0x4,%ebx
40cefa:	85 c9                	test   %ecx,%ecx
40cefc:	74 11                	je     0x40cf0f
40cefe:	8b 03                	mov    (%ebx),%eax
40cf00:	83 c3 04             	add    $0x4,%ebx
40cf03:	49                   	dec    %ecx
40cf04:	74 05                	je     0x40cf0b
40cf06:	0f af 03             	imul   (%ebx),%eax
40cf09:	eb f5                	jmp    0x40cf00
40cf0b:	8b c8                	mov    %eax,%ecx
40cf0d:	85 c9                	test   %ecx,%ecx
40cf0f:	0f 84 19 00 00 00    	je     0x40cf2e
40cf15:	51                   	push   %ecx
40cf16:	8b 03                	mov    (%ebx),%eax
40cf18:	85 c0                	test   %eax,%eax
40cf1a:	74 0b                	je     0x40cf27
40cf1c:	53                   	push   %ebx
40cf1d:	50                   	push   %eax
40cf1e:	e8 81 36 09 00       	call   0x4a05a4
40cf23:	83 c4 04             	add    $0x4,%esp
40cf26:	5b                   	pop    %ebx
40cf27:	83 c3 04             	add    $0x4,%ebx
40cf2a:	59                   	pop    %ecx
40cf2b:	49                   	dec    %ecx
40cf2c:	75 e7                	jne    0x40cf15
40cf2e:	e8 71 36 09 00       	call   0x4a05a4
40cf33:	83 c4 04             	add    $0x4,%esp
40cf36:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40cf39:	53                   	push   %ebx
40cf3a:	e8 65 36 09 00       	call   0x4a05a4
40cf3f:	83 c4 04             	add    $0x4,%esp
40cf42:	8b e5                	mov    %ebp,%esp
40cf44:	5d                   	pop    %ebp
40cf45:	c2 08 00             	ret    $0x8
40cf48:	8b 54 24 04          	mov    0x4(%esp),%edx
40cf4c:	8b 4c 24 08          	mov    0x8(%esp),%ecx
40cf50:	85 d2                	test   %edx,%edx
40cf52:	75 0d                	jne    0x40cf61
40cf54:	33 c0                	xor    %eax,%eax
40cf56:	85 c9                	test   %ecx,%ecx
40cf58:	74 06                	je     0x40cf60
40cf5a:	80 39 00             	cmpb   $0x0,(%ecx)
40cf5d:	74 01                	je     0x40cf60
40cf5f:	48                   	dec    %eax
40cf60:	c3                   	ret
40cf61:	85 c9                	test   %ecx,%ecx
40cf63:	75 09                	jne    0x40cf6e
40cf65:	33 c0                	xor    %eax,%eax
40cf67:	80 3a 00             	cmpb   $0x0,(%edx)
40cf6a:	74 01                	je     0x40cf6d
40cf6c:	40                   	inc    %eax
40cf6d:	c3                   	ret
40cf6e:	f7 c2 03 00 00 00    	test   $0x3,%edx
40cf74:	75 37                	jne    0x40cfad
40cf76:	8b 02                	mov    (%edx),%eax
40cf78:	3a 01                	cmp    (%ecx),%al
40cf7a:	75 2b                	jne    0x40cfa7
40cf7c:	0a c0                	or     %al,%al
40cf7e:	74 24                	je     0x40cfa4
40cf80:	3a 61 01             	cmp    0x1(%ecx),%ah
40cf83:	75 22                	jne    0x40cfa7
40cf85:	0a e4                	or     %ah,%ah
40cf87:	74 1b                	je     0x40cfa4
40cf89:	c1 e8 10             	shr    $0x10,%eax
40cf8c:	3a 41 02             	cmp    0x2(%ecx),%al
40cf8f:	75 16                	jne    0x40cfa7
40cf91:	0a c0                	or     %al,%al
40cf93:	74 0f                	je     0x40cfa4
40cf95:	3a 61 03             	cmp    0x3(%ecx),%ah
40cf98:	75 0d                	jne    0x40cfa7
40cf9a:	83 c1 04             	add    $0x4,%ecx
40cf9d:	83 c2 04             	add    $0x4,%edx
40cfa0:	0a e4                	or     %ah,%ah
40cfa2:	75 d2                	jne    0x40cf76
40cfa4:	33 c0                	xor    %eax,%eax
40cfa6:	c3                   	ret
40cfa7:	1b c0                	sbb    %eax,%eax