aacdcd:	85 ff                	test   %edi,%edi
aacdcf:	0f 84 07 01 00 00    	je     0xaacedc
aacdd5:	8b 85 e4 f6 ff ff    	mov    -0x91c(%ebp),%eax
aacddb:	8d 8d 60 fc ff ff    	lea    -0x3a0(%ebp),%ecx
aacde1:	2b c1                	sub    %ecx,%eax
aacde3:	89 85 e4 f6 ff ff    	mov    %eax,-0x91c(%ebp)
aacde9:	8d 04 b0             	lea    (%eax,%esi,4),%eax
aacdec:	8b 84 05 60 fc ff ff 	mov    -0x3a0(%ebp,%eax,1),%eax
aacdf3:	89 85 cc f6 ff ff    	mov    %eax,-0x934(%ebp)
aacdf9:	85 c0                	test   %eax,%eax
aacdfb:	75 1d                	jne    0xaace1a
aacdfd:	3b f2                	cmp    %edx,%esi
aacdff:	0f 85 c8 00 00 00    	jne    0xaacecd
aace05:	21 84 b5 60 fc ff ff 	and    %eax,-0x3a0(%ebp,%esi,4)
aace0c:	8d 56 01             	lea    0x1(%esi),%edx
aace0f:	89 95 5c fc ff ff    	mov    %edx,-0x3a4(%ebp)
aace15:	e9 b3 00 00 00       	jmp    0xaacecd
aace1a:	33 c0                	xor    %eax,%eax
aace1c:	33 ff                	xor    %edi,%edi
aace1e:	89 85 d0 f6 ff ff    	mov    %eax,-0x930(%ebp)
aace24:	8b ce                	mov    %esi,%ecx
aace26:	85 db                	test   %ebx,%ebx
aace28:	0f 84 90 00 00 00    	je     0xaacebe
aace2e:	83 f9 73             	cmp    $0x73,%ecx
aace31:	74 53                	je     0xaace86
aace33:	3b ca                	cmp    %edx,%ecx
aace35:	75 17                	jne    0xaace4e
aace37:	83 a4 8d 60 fc ff ff 	andl   $0x0,-0x3a0(%ebp,%ecx,4)
aace3e:	00
aace3f:	40                   	inc    %eax
aace40:	03 c6                	add    %esi,%eax
aace42:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
aace48:	8b 85 d0 f6 ff ff    	mov    -0x930(%ebp),%eax
aace4e:	8b 95 c8 f6 ff ff    	mov    -0x938(%ebp),%edx
aace54:	8b 04 82             	mov    (%edx,%eax,4),%eax
aace57:	f7 a5 cc f6 ff ff    	mull   -0x934(%ebp)
aace5d:	03 c7                	add    %edi,%eax
aace5f:	83 d2 00             	adc    $0x0,%edx
aace62:	01 84 8d 60 fc ff ff 	add    %eax,-0x3a0(%ebp,%ecx,4)
aace69:	8b 85 d0 f6 ff ff    	mov    -0x930(%ebp),%eax
aace6f:	83 d2 00             	adc    $0x0,%edx
aace72:	40                   	inc    %eax
aace73:	41                   	inc    %ecx
aace74:	89 85 d0 f6 ff ff    	mov    %eax,-0x930(%ebp)
aace7a:	8b fa                	mov    %edx,%edi
aace7c:	8b 95 5c fc ff ff    	mov    -0x3a4(%ebp),%edx
aace82:	3b c3                	cmp    %ebx,%eax
aace84:	75 a8                	jne    0xaace2e
aace86:	85 ff                	test   %edi,%edi
aace88:	74 34                	je     0xaacebe
aace8a:	83 f9 73             	cmp    $0x73,%ecx
aace8d:	0f 84 fc 00 00 00    	je     0xaacf8f
aace93:	3b ca                	cmp    %edx,%ecx
aace95:	75 11                	jne    0xaacea8
aace97:	83 a4 8d 60 fc ff ff 	andl   $0x0,-0x3a0(%ebp,%ecx,4)
aace9e:	00
aace9f:	8d 41 01             	lea    0x1(%ecx),%eax
aacea2:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
aacea8:	8b c7                	mov    %edi,%eax
aaceaa:	33 ff                	xor    %edi,%edi
aaceac:	01 84 8d 60 fc ff ff 	add    %eax,-0x3a0(%ebp,%ecx,4)
aaceb3:	8b 95 5c fc ff ff    	mov    -0x3a4(%ebp),%edx
aaceb9:	13 ff                	adc    %edi,%edi
aacebb:	41                   	inc    %ecx
aacebc:	eb c8                	jmp    0xaace86
aacebe:	83 f9 73             	cmp    $0x73,%ecx
aacec1:	0f 84 c8 00 00 00    	je     0xaacf8f
aacec7:	8b bd dc f6 ff ff    	mov    -0x924(%ebp),%edi
aacecd:	8b 85 e4 f6 ff ff    	mov    -0x91c(%ebp),%eax
aaced3:	46                   	inc    %esi
aaced4:	3b f7                	cmp    %edi,%esi
aaced6:	0f 85 0d ff ff ff    	jne    0xaacde9
aacedc:	8b c2                	mov    %edx,%eax
aacede:	89 95 2c fe ff ff    	mov    %edx,-0x1d4(%ebp)
aacee4:	c1 e0 02             	shl    $0x2,%eax
aacee7:	50                   	push   %eax
aacee8:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
aaceee:	50                   	push   %eax
aaceef:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
aacef5:	68 cc 01 00 00       	push   $0x1cc
aacefa:	50                   	push   %eax
aacefb:	e8 f0 60 00 00       	call   0xab2ff0
aacf00:	83 c4 10             	add    $0x10,%esp
aacf03:	b0 01                	mov    $0x1,%al
aacf05:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
aacf0b:	89 9d e8 f6 ff ff    	mov    %ebx,-0x918(%ebp)
aacf11:	84 c0                	test   %al,%al
aacf13:	0f 84 a7 00 00 00    	je     0xaacfc0
aacf19:	8b 85 d8 f6 ff ff    	mov    -0x928(%ebp),%eax
aacf1f:	2b 85 bc f6 ff ff    	sub    -0x944(%ebp),%eax
aacf25:	89 85 d8 f6 ff ff    	mov    %eax,-0x928(%ebp)
aacf2b:	0f 85 59 fc ff ff    	jne    0xaacb8a
aacf31:	8b 8d b8 f6 ff ff    	mov    -0x948(%ebp),%ecx
aacf37:	85 c9                	test   %ecx,%ecx
aacf39:	74 45                	je     0xaacf80
aacf3b:	8b 3c 8d ec f4 c7 00 	mov    0xc7f4ec(,%ecx,4),%edi
aacf42:	85 ff                	test   %edi,%edi
aacf44:	0f 85 88 00 00 00    	jne    0xaacfd2
aacf4a:	33 c0                	xor    %eax,%eax
aacf4c:	50                   	push   %eax
aacf4d:	89 85 bc f8 ff ff    	mov    %eax,-0x744(%ebp)
aacf53:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
aacf59:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
aacf5f:	50                   	push   %eax
aacf60:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
aacf66:	68 cc 01 00 00       	push   $0x1cc
aacf6b:	50                   	push   %eax
aacf6c:	e8 7f 60 00 00       	call   0xab2ff0
aacf71:	83 c4 10             	add    $0x10,%esp
aacf74:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
aacf7a:	89 9d e8 f6 ff ff    	mov    %ebx,-0x918(%ebp)
aacf80:	85 db                	test   %ebx,%ebx
aacf82:	0f 85 ec 00 00 00    	jne    0xaad074
aacf88:	33 c9                	xor    %ecx,%ecx
aacf8a:	e9 05 01 00 00       	jmp    0xaad094
aacf8f:	33 c0                	xor    %eax,%eax
aacf91:	50                   	push   %eax
aacf92:	89 85 ec f6 ff ff    	mov    %eax,-0x914(%ebp)
aacf98:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
aacf9e:	8d 85 f0 f6 ff ff    	lea    -0x910(%ebp),%eax
aacfa4:	50                   	push   %eax
aacfa5:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
aacfab:	68 cc 01 00 00       	push   $0x1cc
aacfb0:	50                   	push   %eax
aacfb1:	e8 3a 60 00 00       	call   0xab2ff0
aacfb6:	83 c4 10             	add    $0x10,%esp
aacfb9:	32 c0                	xor    %al,%al
aacfbb:	e9 45 ff ff ff       	jmp    0xaacf05
aacfc0:	83 a5 bc f8 ff ff 00 	andl   $0x0,-0x744(%ebp)
aacfc7:	83 a5 2c fe ff ff 00 	andl   $0x0,-0x1d4(%ebp)
aacfce:	6a 00                	push   $0x0
aacfd0:	eb 64                	jmp    0xaad036
aacfd2:	83 ff 01             	cmp    $0x1,%edi
aacfd5:	74 a9                	je     0xaacf80
aacfd7:	85 db                	test   %ebx,%ebx
aacfd9:	74 ad                	je     0xaacf88
aacfdb:	33 c9                	xor    %ecx,%ecx
aacfdd:	33 f6                	xor    %esi,%esi
aacfdf:	8b c7                	mov    %edi,%eax
aacfe1:	f7 a4 b5 30 fe ff ff 	mull   -0x1d0(%ebp,%esi,4)
aacfe8:	03 c1                	add    %ecx,%eax
aacfea:	89 84 b5 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%esi,4)
aacff1:	83 d2 00             	adc    $0x0,%edx
aacff4:	46                   	inc    %esi
aacff5:	8b ca                	mov    %edx,%ecx
aacff7:	3b f3                	cmp    %ebx,%esi
aacff9:	75 e4                	jne    0xaacfdf
aacffb:	85 c9                	test   %ecx,%ecx
aacffd:	0f 84 71 ff ff ff    	je     0xaacf74
aad003:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
aad009:	83 f8 73             	cmp    $0x73,%eax
aad00c:	73 19                	jae    0xaad027
aad00e:	89 8c 85 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%eax,4)
aad015:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
aad01b:	43                   	inc    %ebx
aad01c:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
aad022:	e9 53 ff ff ff       	jmp    0xaacf7a
aad027:	33 c0                	xor    %eax,%eax
aad029:	89 85 bc f8 ff ff    	mov    %eax,-0x744(%ebp)
aad02f:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
aad035:	50                   	push   %eax
aad036:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
aad03c:	50                   	push   %eax
aad03d:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
aad043:	68 cc 01 00 00       	push   $0x1cc
aad048:	50                   	push   %eax
aad049:	e8 a2 5f 00 00       	call   0xab2ff0
aad04e:	8b 85 b0 f6 ff ff    	mov    -0x950(%ebp),%eax
aad054:	83 c4 10             	add    $0x10,%esp
aad057:	ff b5 a8 f6 ff ff    	push   -0x958(%ebp)
aad05d:	0f b6 80 08 03 00 00 	movzbl 0x308(%eax),%eax
aad064:	50                   	push   %eax
aad065:	e8 11 ef 97 ff       	call   0x42bf7b
aad06a:	59                   	pop    %ecx
aad06b:	59                   	pop    %ecx
aad06c:	6a 03                	push   $0x3
aad06e:	58                   	pop    %eax
aad06f:	e9 8e 11 00 00       	jmp    0xaae202
aad074:	8b 84 9d 2c fe ff ff 	mov    -0x1d4(%ebp,%ebx,4),%eax
aad07b:	83 a5 cc f6 ff ff 00 	andl   $0x0,-0x934(%ebp)
aad082:	0f bd c0             	bsr    %eax,%eax
aad085:	74 03                	je     0xaad08a
aad087:	40                   	inc    %eax
aad088:	eb 02                	jmp    0xaad08c
aad08a:	33 c0                	xor    %eax,%eax
aad08c:	8d 4b ff             	lea    -0x1(%ebx),%ecx
aad08f:	c1 e1 05             	shl    $0x5,%ecx
aad092:	03 c8                	add    %eax,%ecx
aad094:	8b 85 e0 f6 ff ff    	mov    -0x920(%ebp),%eax
aad09a:	89 8d bc f6 ff ff    	mov    %ecx,-0x944(%ebp)
aad0a0:	3b 8d ac f6 ff ff    	cmp    -0x954(%ebp),%ecx
aad0a6:	0f 83 29 11 00 00    	jae    0xaae1d5
aad0ac:	85 c0                	test   %eax,%eax
aad0ae:	0f 84 21 11 00 00    	je     0xaae1d5
aad0b4:	8b bd d4 f6 ff ff    	mov    -0x92c(%ebp),%edi
aad0ba:	33 db                	xor    %ebx,%ebx
aad0bc:	33 f6                	xor    %esi,%esi
aad0be:	89 9d e4 f6 ff ff    	mov    %ebx,-0x91c(%ebp)
aad0c4:	33 c9                	xor    %ecx,%ecx
aad0c6:	89 9d 8c fa ff ff    	mov    %ebx,-0x574(%ebp)
aad0cc:	89 b5 dc f6 ff ff    	mov    %esi,-0x924(%ebp)
aad0d2:	3b bd c4 f6 ff ff    	cmp    -0x93c(%ebp),%edi
aad0d8:	0f 84 3d 06 00 00    	je     0xaad71b
aad0de:	83 f9 09             	cmp    $0x9,%ecx
aad0e1:	0f 85 04 01 00 00    	jne    0xaad1eb
aad0e7:	85 db                	test   %ebx,%ebx
aad0e9:	0f 84 86 00 00 00    	je     0xaad175
aad0ef:	33 c9                	xor    %ecx,%ecx
aad0f1:	be 00 ca 9a 3b       	mov    $0x3b9aca00,%esi
aad0f6:	33 ff                	xor    %edi,%edi
aad0f8:	8b 84 bd 90 fa ff ff 	mov    -0x570(%ebp,%edi,4),%eax
aad0ff:	f7 e6                	mul    %esi
aad101:	03 c1                	add    %ecx,%eax
aad103:	89 84 bd 90 fa ff ff 	mov    %eax,-0x570(%ebp,%edi,4)
aad10a:	83 d2 00             	adc    $0x0,%edx
aad10d:	47                   	inc    %edi
aad10e:	8b ca                	mov    %edx,%ecx
aad110:	3b fb                	cmp    %ebx,%edi
aad112:	75 e4                	jne    0xaad0f8
aad114:	8b b5 dc f6 ff ff    	mov    -0x924(%ebp),%esi
aad11a:	85 c9                	test   %ecx,%ecx
aad11c:	74 4b                	je     0xaad169
aad11e:	8b 85 8c fa ff ff    	mov    -0x574(%ebp),%eax
aad124:	83 f8 73             	cmp    $0x73,%eax
aad127:	73 16                	jae    0xaad13f
aad129:	89 8c 85 90 fa ff ff 	mov    %ecx,-0x570(%ebp,%eax,4)
aad130:	8b 9d 8c fa ff ff    	mov    -0x574(%ebp),%ebx
aad136:	43                   	inc    %ebx
aad137:	89 9d 8c fa ff ff    	mov    %ebx,-0x574(%ebp)
aad13d:	eb 30                	jmp    0xaad16f
aad13f:	33 c0                	xor    %eax,%eax
aad141:	50                   	push   %eax
aad142:	89 85 bc f8 ff ff    	mov    %eax,-0x744(%ebp)
aad148:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
aad14e:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
aad154:	50                   	push   %eax
aad155:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
aad15b:	68 cc 01 00 00       	push   $0x1cc
aad160:	50                   	push   %eax
aad161:	e8 8a 5e 00 00       	call   0xab2ff0
aad166:	83 c4 10             	add    $0x10,%esp
aad169:	8b 9d 8c fa ff ff    	mov    -0x574(%ebp),%ebx
aad16f:	8b bd d4 f6 ff ff    	mov    -0x92c(%ebp),%edi
aad175:	85 f6                	test   %esi,%esi
aad177:	74 6e                	je     0xaad1e7
aad179:	33 c9                	xor    %ecx,%ecx
aad17b:	85 db                	test   %ebx,%ebx
aad17d:	74 18                	je     0xaad197
aad17f:	8b c6                	mov    %esi,%eax
aad181:	33 f6                	xor    %esi,%esi
aad183:	01 84 8d 90 fa ff ff 	add    %eax,-0x570(%ebp,%ecx,4)
aad18a:	8b 9d 8c fa ff ff    	mov    -0x574(%ebp),%ebx
aad190:	13 f6                	adc    %esi,%esi
aad192:	41                   	inc    %ecx
aad193:	3b cb                	cmp    %ebx,%ecx
aad195:	75 e8                	jne    0xaad17f
aad197:	85 f6                	test   %esi,%esi
aad199:	74 4c                	je     0xaad1e7
aad19b:	83 fb 73             	cmp    $0x73,%ebx
aad19e:	73 16                	jae    0xaad1b6
aad1a0:	89 b4 9d 90 fa ff ff 	mov    %esi,-0x570(%ebp,%ebx,4)
aad1a7:	8b 9d 8c fa ff ff    	mov    -0x574(%ebp),%ebx
aad1ad:	43                   	inc    %ebx
aad1ae:	89 9d 8c fa ff ff    	mov    %ebx,-0x574(%ebp)
aad1b4:	eb 31                	jmp    0xaad1e7
aad1b6:	83 a5 bc f8 ff ff 00 	andl   $0x0,-0x744(%ebp)
aad1bd:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
aad1c3:	83 a5 8c fa ff ff 00 	andl   $0x0,-0x574(%ebp)
aad1ca:	6a 00                	push   $0x0
aad1cc:	50                   	push   %eax
aad1cd:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
aad1d3:	68 cc 01 00 00       	push   $0x1cc
aad1d8:	50                   	push   %eax
aad1d9:	e8 12 5e 00 00       	call   0xab2ff0
aad1de:	8b 9d 8c fa ff ff    	mov    -0x574(%ebp),%ebx
aad1e4:	83 c4 10             	add    $0x10,%esp
aad1e7:	33 f6                	xor    %esi,%esi
aad1e9:	33 c9                	xor    %ecx,%ecx
aad1eb:	0f b6 07             	movzbl (%edi),%eax
aad1ee:	6b f6 0a             	imul   $0xa,%esi,%esi
aad1f1:	03 f0                	add    %eax,%esi
aad1f3:	41                   	inc    %ecx
aad1f4:	47                   	inc    %edi
aad1f5:	89 b5 dc f6 ff ff    	mov    %esi,-0x924(%ebp)
aad1fb:	89 bd d4 f6 ff ff    	mov    %edi,-0x92c(%ebp)
aad201:	3b bd c4 f6 ff ff    	cmp    -0x93c(%ebp),%edi
aad207:	0f 85 d1 fe ff ff    	jne    0xaad0de
aad20d:	89 9d e4 f6 ff ff    	mov    %ebx,-0x91c(%ebp)
aad213:	85 c9                	test   %ecx,%ecx
aad215:	0f 84 fa 04 00 00    	je     0xaad715
aad21b:	8b c1                	mov    %ecx,%eax
aad21d:	33 d2                	xor    %edx,%edx
aad21f:	6a 0a                	push   $0xa
aad221:	59                   	pop    %ecx
aad222:	f7 f1                	div    %ecx
aad224:	89 85 c8 f6 ff ff    	mov    %eax,-0x938(%ebp)
aad22a:	8b ca                	mov    %edx,%ecx
aad22c:	89 8d b4 f6 ff ff    	mov    %ecx,-0x94c(%ebp)
aad232:	85 c0                	test   %eax,%eax
aad234:	0f 84 6d 03 00 00    	je     0xaad5a7
aad23a:	83 f8 26             	cmp    $0x26,%eax
aad23d:	76 03                	jbe    0xaad242
aad23f:	6a 26                	push   $0x26
aad241:	58                   	pop    %eax
aad242:	0f b6 0c 85 36 f4 c7 	movzbl 0xc7f436(,%eax,4),%ecx
aad249:	00
aad24a:	0f b6 34 85 37 f4 c7 	movzbl 0xc7f437(,%eax,4),%esi
aad251:	00
aad252:	8b f9                	mov    %ecx,%edi
aad254:	89 85 d8 f6 ff ff    	mov    %eax,-0x928(%ebp)
aad25a:	c1 e7 02             	shl    $0x2,%edi
aad25d:	57                   	push   %edi
aad25e:	8d 04 31             	lea    (%ecx,%esi,1),%eax
aad261:	89 85 bc f8 ff ff    	mov    %eax,-0x744(%ebp)
aad267:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
aad26d:	6a 00                	push   $0x0
aad26f:	50                   	push   %eax
aad270:	e8 43 75 96 ff       	call   0x4147b8
aad275:	8b c6                	mov    %esi,%eax
aad277:	c1 e0 02             	shl    $0x2,%eax
aad27a:	50                   	push   %eax
aad27b:	8b 85 d8 f6 ff ff    	mov    -0x928(%ebp),%eax
aad281:	0f b7 04 85 34 f4 c7 	movzwl 0xc7f434(,%eax,4),%eax
aad288:	00
aad289:	8d 04 85 60 e9 c7 00 	lea    0xc7e960(,%eax,4),%eax
aad290:	50                   	push   %eax
aad291:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
aad297:	03 c7                	add    %edi,%eax
aad299:	50                   	push   %eax
aad29a:	e8 e3 73 96 ff       	call   0x414682
aad29f:	8b 85 bc f8 ff ff    	mov    -0x744(%ebp),%eax
aad2a5:	33 c9                	xor    %ecx,%ecx
aad2a7:	41                   	inc    %ecx
aad2a8:	83 c4 18             	add    $0x18,%esp
aad2ab:	3b c1                	cmp    %ecx,%eax
aad2ad:	0f 87 b3 00 00 00    	ja     0xaad366
aad2b3:	8b bd c0 f8 ff ff    	mov    -0x740(%ebp),%edi
aad2b9:	85 ff                	test   %edi,%edi
aad2bb:	75 1a                	jne    0xaad2d7
aad2bd:	33 c0                	xor    %eax,%eax
aad2bf:	89 85 ec f6 ff ff    	mov    %eax,-0x914(%ebp)
aad2c5:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
aad2cb:	50                   	push   %eax
aad2cc:	8d 85 f0 f6 ff ff    	lea    -0x910(%ebp),%eax
aad2d2:	e9 87 02 00 00       	jmp    0xaad55e
aad2d7:	3b f9                	cmp    %ecx,%edi
aad2d9:	75 07                	jne    0xaad2e2
aad2db:	8a c1                	mov    %cl,%al
aad2dd:	e9 9f 02 00 00       	jmp    0xaad581
aad2e2:	85 db                	test   %ebx,%ebx