410f2e:	33 c0                	xor    %eax,%eax
410f30:	53                   	push   %ebx
410f31:	56                   	push   %esi
410f32:	57                   	push   %edi
410f33:	38 41 04             	cmp    %al,0x4(%ecx)
410f36:	8b 7d 08             	mov    0x8(%ebp),%edi
410f39:	0f 94 c0             	sete   %al
410f3c:	89 bd b0 f6 ff ff    	mov    %edi,-0x950(%ebp)
410f42:	48                   	dec    %eax
410f43:	89 8d a8 f6 ff ff    	mov    %ecx,-0x958(%ebp)
410f49:	83 e0 1d             	and    $0x1d,%eax
410f4c:	8b 1f                	mov    (%edi),%ebx
410f4e:	83 c0 19             	add    $0x19,%eax
410f51:	89 85 ac f6 ff ff    	mov    %eax,-0x954(%ebp)
410f57:	85 db                	test   %ebx,%ebx
410f59:	79 02                	jns    0x410f5d
410f5b:	33 db                	xor    %ebx,%ebx
410f5d:	8b 47 04             	mov    0x4(%edi),%eax
410f60:	8b cb                	mov    %ebx,%ecx
410f62:	3b d8                	cmp    %eax,%ebx
410f64:	72 02                	jb     0x410f68
410f66:	8b c8                	mov    %eax,%ecx
410f68:	83 c0 08             	add    $0x8,%eax
410f6b:	8d 57 08             	lea    0x8(%edi),%edx
410f6e:	03 c7                	add    %edi,%eax
410f70:	03 d1                	add    %ecx,%edx
410f72:	89 85 c4 f6 ff ff    	mov    %eax,-0x93c(%ebp)
410f78:	2b d9                	sub    %ecx,%ebx
410f7a:	2b c2                	sub    %edx,%eax
410f7c:	89 9d cc f6 ff ff    	mov    %ebx,-0x934(%ebp)
410f82:	83 c7 08             	add    $0x8,%edi
410f85:	89 85 e0 f6 ff ff    	mov    %eax,-0x920(%ebp)
410f8b:	33 c0                	xor    %eax,%eax
410f8d:	89 95 d4 f6 ff ff    	mov    %edx,-0x92c(%ebp)
410f93:	33 f6                	xor    %esi,%esi
410f95:	89 85 e8 f6 ff ff    	mov    %eax,-0x918(%ebp)
410f9b:	33 c9                	xor    %ecx,%ecx
410f9d:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
410fa3:	89 b5 e4 f6 ff ff    	mov    %esi,-0x91c(%ebp)
410fa9:	89 bd dc f6 ff ff    	mov    %edi,-0x924(%ebp)
410faf:	3b fa                	cmp    %edx,%edi
410fb1:	75 0d                	jne    0x410fc0
410fb3:	8b d8                	mov    %eax,%ebx
410fb5:	e9 6b 06 00 00       	jmp    0x411625
410fba:	8b 85 e8 f6 ff ff    	mov    -0x918(%ebp),%eax
410fc0:	83 f9 09             	cmp    $0x9,%ecx
410fc3:	0f 85 37 01 00 00    	jne    0x411100
410fc9:	85 c0                	test   %eax,%eax
410fcb:	0f 84 93 00 00 00    	je     0x411064
410fd1:	8b 9d e8 f6 ff ff    	mov    -0x918(%ebp),%ebx
410fd7:	33 c9                	xor    %ecx,%ecx
410fd9:	33 f6                	xor    %esi,%esi
410fdb:	bf 00 ca 9a 3b       	mov    $0x3b9aca00,%edi
410fe0:	8b 84 b5 30 fe ff ff 	mov    -0x1d0(%ebp,%esi,4),%eax
410fe7:	f7 e7                	mul    %edi
410fe9:	03 c1                	add    %ecx,%eax
410feb:	89 84 b5 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%esi,4)
410ff2:	83 d2 00             	adc    $0x0,%edx
410ff5:	46                   	inc    %esi
410ff6:	8b ca                	mov    %edx,%ecx
410ff8:	3b f3                	cmp    %ebx,%esi
410ffa:	75 e4                	jne    0x410fe0
410ffc:	8b bd dc f6 ff ff    	mov    -0x924(%ebp),%edi
411002:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
411008:	85 c9                	test   %ecx,%ecx
41100a:	74 4c                	je     0x411058
41100c:	83 f8 73             	cmp    $0x73,%eax
41100f:	73 16                	jae    0x411027
411011:	89 8c 85 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%eax,4)
411018:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
41101e:	40                   	inc    %eax
41101f:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
411025:	eb 31                	jmp    0x411058
411027:	83 a5 bc f8 ff ff 00 	andl   $0x0,-0x744(%ebp)
41102e:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
411034:	83 a5 2c fe ff ff 00 	andl   $0x0,-0x1d4(%ebp)
41103b:	6a 00                	push   $0x0
41103d:	50                   	push   %eax
41103e:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
411044:	68 cc 01 00 00       	push   $0x1cc
411049:	50                   	push   %eax
41104a:	e8 c3 2d 00 00       	call   0x413e12
41104f:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
411055:	83 c4 10             	add    $0x10,%esp
411058:	8b b5 e4 f6 ff ff    	mov    -0x91c(%ebp),%esi
41105e:	89 85 e8 f6 ff ff    	mov    %eax,-0x918(%ebp)
411064:	85 f6                	test   %esi,%esi
411066:	0f 84 82 00 00 00    	je     0x4110ee
41106c:	33 d2                	xor    %edx,%edx
41106e:	85 c0                	test   %eax,%eax
411070:	74 1e                	je     0x411090
411072:	33 c0                	xor    %eax,%eax
411074:	01 b4 95 30 fe ff ff 	add    %esi,-0x1d0(%ebp,%edx,4)
41107b:	13 c0                	adc    %eax,%eax
41107d:	42                   	inc    %edx
41107e:	8b f0                	mov    %eax,%esi
411080:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
411086:	89 85 e8 f6 ff ff    	mov    %eax,-0x918(%ebp)
41108c:	3b d0                	cmp    %eax,%edx
41108e:	75 e2                	jne    0x411072
411090:	85 f6                	test   %esi,%esi
411092:	74 5a                	je     0x4110ee
411094:	83 f8 73             	cmp    $0x73,%eax
411097:	73 1c                	jae    0x4110b5
411099:	89 b4 85 30 fe ff ff 	mov    %esi,-0x1d0(%ebp,%eax,4)
4110a0:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
4110a6:	43                   	inc    %ebx
4110a7:	89 9d e8 f6 ff ff    	mov    %ebx,-0x918(%ebp)
4110ad:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
4110b3:	eb 3f                	jmp    0x4110f4
4110b5:	83 a5 bc f8 ff ff 00 	andl   $0x0,-0x744(%ebp)
4110bc:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
4110c2:	83 a5 2c fe ff ff 00 	andl   $0x0,-0x1d4(%ebp)
4110c9:	6a 00                	push   $0x0
4110cb:	50                   	push   %eax
4110cc:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
4110d2:	68 cc 01 00 00       	push   $0x1cc
4110d7:	50                   	push   %eax
4110d8:	e8 35 2d 00 00       	call   0x413e12
4110dd:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
4110e3:	83 c4 10             	add    $0x10,%esp
4110e6:	89 9d e8 f6 ff ff    	mov    %ebx,-0x918(%ebp)
4110ec:	eb 06                	jmp    0x4110f4
4110ee:	8b 9d e8 f6 ff ff    	mov    -0x918(%ebp),%ebx
4110f4:	8b 95 d4 f6 ff ff    	mov    -0x92c(%ebp),%edx
4110fa:	33 f6                	xor    %esi,%esi
4110fc:	33 c9                	xor    %ecx,%ecx
4110fe:	eb 06                	jmp    0x411106
411100:	8b 9d e8 f6 ff ff    	mov    -0x918(%ebp),%ebx
411106:	0f b6 07             	movzbl (%edi),%eax
411109:	6b f6 0a             	imul   $0xa,%esi,%esi
41110c:	03 f0                	add    %eax,%esi
41110e:	41                   	inc    %ecx
41110f:	47                   	inc    %edi
411110:	89 b5 e4 f6 ff ff    	mov    %esi,-0x91c(%ebp)
411116:	89 bd dc f6 ff ff    	mov    %edi,-0x924(%ebp)
41111c:	3b fa                	cmp    %edx,%edi
41111e:	0f 85 96 fe ff ff    	jne    0x410fba
411124:	85 c9                	test   %ecx,%ecx
411126:	0f 84 f3 04 00 00    	je     0x41161f
41112c:	8b c1                	mov    %ecx,%eax
41112e:	33 d2                	xor    %edx,%edx
411130:	6a 0a                	push   $0xa
411132:	59                   	pop    %ecx
411133:	f7 f1                	div    %ecx
411135:	89 85 c8 f6 ff ff    	mov    %eax,-0x938(%ebp)
41113b:	8b ca                	mov    %edx,%ecx
41113d:	89 8d b8 f6 ff ff    	mov    %ecx,-0x948(%ebp)
411143:	85 c0                	test   %eax,%eax
411145:	0f 84 7f 03 00 00    	je     0x4114ca
41114b:	83 f8 26             	cmp    $0x26,%eax
41114e:	76 03                	jbe    0x411153
411150:	6a 26                	push   $0x26
411152:	58                   	pop    %eax
411153:	0f b6 0c 85 36 b8 42 	movzbl 0x42b836(,%eax,4),%ecx
41115a:	00
41115b:	0f b6 34 85 37 b8 42 	movzbl 0x42b837(,%eax,4),%esi
411162:	00
411163:	8b f9                	mov    %ecx,%edi
411165:	89 85 d0 f6 ff ff    	mov    %eax,-0x930(%ebp)
41116b:	c1 e7 02             	shl    $0x2,%edi
41116e:	57                   	push   %edi
41116f:	8d 04 31             	lea    (%ecx,%esi,1),%eax
411172:	89 85 bc f8 ff ff    	mov    %eax,-0x744(%ebp)
411178:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
41117e:	6a 00                	push   $0x0
411180:	50                   	push   %eax
411181:	e8 5a 78 ff ff       	call   0x4089e0
411186:	8b c6                	mov    %esi,%eax
411188:	c1 e0 02             	shl    $0x2,%eax
41118b:	50                   	push   %eax
41118c:	8b 85 d0 f6 ff ff    	mov    -0x930(%ebp),%eax
411192:	0f b7 04 85 34 b8 42 	movzwl 0x42b834(,%eax,4),%eax
411199:	00
41119a:	8d 04 85 30 af 42 00 	lea    0x42af30(,%eax,4),%eax
4111a1:	50                   	push   %eax
4111a2:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
4111a8:	03 c7                	add    %edi,%eax
4111aa:	50                   	push   %eax
4111ab:	e8 b0 72 ff ff       	call   0x408460
4111b0:	8b 85 bc f8 ff ff    	mov    -0x744(%ebp),%eax
4111b6:	33 c9                	xor    %ecx,%ecx
4111b8:	41                   	inc    %ecx
4111b9:	83 c4 18             	add    $0x18,%esp
4111bc:	3b c1                	cmp    %ecx,%eax
4111be:	0f 87 b3 00 00 00    	ja     0x411277
4111c4:	8b b5 c0 f8 ff ff    	mov    -0x740(%ebp),%esi
4111ca:	85 f6                	test   %esi,%esi
4111cc:	75 1a                	jne    0x4111e8
4111ce:	33 c0                	xor    %eax,%eax
4111d0:	89 85 ec f6 ff ff    	mov    %eax,-0x914(%ebp)
4111d6:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
4111dc:	50                   	push   %eax
4111dd:	8d 85 f0 f6 ff ff    	lea    -0x910(%ebp),%eax
4111e3:	e9 9d 02 00 00       	jmp    0x411485
4111e8:	3b f1                	cmp    %ecx,%esi
4111ea:	75 07                	jne    0x4111f3
4111ec:	8a c1                	mov    %cl,%al
4111ee:	e9 b5 02 00 00       	jmp    0x4114a8
4111f3:	85 db                	test   %ebx,%ebx
4111f5:	74 f5                	je     0x4111ec
4111f7:	33 c9                	xor    %ecx,%ecx
4111f9:	33 ff                	xor    %edi,%edi
4111fb:	8b c6                	mov    %esi,%eax
4111fd:	f7 a4 bd 30 fe ff ff 	mull   -0x1d0(%ebp,%edi,4)
411204:	03 c1                	add    %ecx,%eax
411206:	89 84 bd 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%edi,4)
41120d:	83 d2 00             	adc    $0x0,%edx
411210:	47                   	inc    %edi
411211:	8b ca                	mov    %edx,%ecx
411213:	3b fb                	cmp    %ebx,%edi
411215:	75 e4                	jne    0x4111fb
411217:	85 c9                	test   %ecx,%ecx
411219:	74 4f                	je     0x41126a
41121b:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
411221:	83 f8 73             	cmp    $0x73,%eax
411224:	73 16                	jae    0x41123c
411226:	89 8c 85 30 fe ff ff 	mov    %ecx,-0x1d0(%ebp,%eax,4)
41122d:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
411233:	43                   	inc    %ebx
411234:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
41123a:	eb 34                	jmp    0x411270
41123c:	33 db                	xor    %ebx,%ebx
41123e:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
411244:	89 9d bc f8 ff ff    	mov    %ebx,-0x744(%ebp)
41124a:	53                   	push   %ebx
41124b:	50                   	push   %eax
41124c:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
411252:	89 9d 2c fe ff ff    	mov    %ebx,-0x1d4(%ebp)
411258:	68 cc 01 00 00       	push   $0x1cc
41125d:	50                   	push   %eax
41125e:	e8 af 2b 00 00       	call   0x413e12
411263:	8a c3                	mov    %bl,%al
411265:	e9 2f 02 00 00       	jmp    0x411499
41126a:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
411270:	b0 01                	mov    $0x1,%al
411272:	e9 2b 02 00 00       	jmp    0x4114a2
411277:	3b d9                	cmp    %ecx,%ebx
411279:	0f 87 8e 00 00 00    	ja     0x41130d
41127f:	8b bd 30 fe ff ff    	mov    -0x1d0(%ebp),%edi
411285:	bb cc 01 00 00       	mov    $0x1cc,%ebx
41128a:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
411290:	c1 e0 02             	shl    $0x2,%eax
411293:	50                   	push   %eax
411294:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
41129a:	50                   	push   %eax
41129b:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
4112a1:	53                   	push   %ebx
4112a2:	50                   	push   %eax
4112a3:	e8 6a 2b 00 00       	call   0x413e12
4112a8:	83 c4 10             	add    $0x10,%esp
4112ab:	33 c0                	xor    %eax,%eax
4112ad:	85 ff                	test   %edi,%edi
4112af:	75 1a                	jne    0x4112cb
4112b1:	50                   	push   %eax
4112b2:	89 85 bc f8 ff ff    	mov    %eax,-0x744(%ebp)
4112b8:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
4112be:	8d 85 c0 f8 ff ff    	lea    -0x740(%ebp),%eax
4112c4:	50                   	push   %eax
4112c5:	53                   	push   %ebx
4112c6:	e9 c0 01 00 00       	jmp    0x41148b
4112cb:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
4112d1:	40                   	inc    %eax
4112d2:	89 9d e8 f6 ff ff    	mov    %ebx,-0x918(%ebp)
4112d8:	3b f8                	cmp    %eax,%edi
4112da:	0f 84 c8 01 00 00    	je     0x4114a8
4112e0:	85 db                	test   %ebx,%ebx
4112e2:	0f 84 c0 01 00 00    	je     0x4114a8
4112e8:	33 c9                	xor    %ecx,%ecx
4112ea:	33 f6                	xor    %esi,%esi
4112ec:	8b c7                	mov    %edi,%eax
4112ee:	f7 a4 b5 30 fe ff ff 	mull   -0x1d0(%ebp,%esi,4)
4112f5:	03 c1                	add    %ecx,%eax
4112f7:	89 84 b5 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%esi,4)
4112fe:	83 d2 00             	adc    $0x0,%edx
411301:	46                   	inc    %esi
411302:	8b ca                	mov    %edx,%ecx
411304:	3b f3                	cmp    %ebx,%esi
411306:	75 e4                	jne    0x4112ec
411308:	e9 0a ff ff ff       	jmp    0x411217
41130d:	3b c3                	cmp    %ebx,%eax
41130f:	8d b5 c0 f8 ff ff    	lea    -0x740(%ebp),%esi
411315:	0f 92 c1             	setb   %cl
411318:	84 c9                	test   %cl,%cl
41131a:	75 20                	jne    0x41133c
41131c:	8d b5 30 fe ff ff    	lea    -0x1d0(%ebp),%esi
411322:	8d 95 c0 f8 ff ff    	lea    -0x740(%ebp),%edx
411328:	89 95 dc f6 ff ff    	mov    %edx,-0x924(%ebp)
41132e:	84 c9                	test   %cl,%cl
411330:	74 12                	je     0x411344
411332:	8b d0                	mov    %eax,%edx
411334:	89 95 e8 f6 ff ff    	mov    %edx,-0x918(%ebp)
41133a:	eb 10                	jmp    0x41134c
41133c:	8d 95 30 fe ff ff    	lea    -0x1d0(%ebp),%edx
411342:	eb e4                	jmp    0x411328
411344:	8b d3                	mov    %ebx,%edx
411346:	89 9d e8 f6 ff ff    	mov    %ebx,-0x918(%ebp)
41134c:	84 c9                	test   %cl,%cl
41134e:	75 02                	jne    0x411352
411350:	8b d8                	mov    %eax,%ebx
411352:	33 c9                	xor    %ecx,%ecx
411354:	33 ff                	xor    %edi,%edi
411356:	89 8d 5c fc ff ff    	mov    %ecx,-0x3a4(%ebp)
41135c:	85 d2                	test   %edx,%edx
41135e:	0f 84 0f 01 00 00    	je     0x411473
411364:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
41136a:	2b f0                	sub    %eax,%esi
41136c:	89 b5 b4 f6 ff ff    	mov    %esi,-0x94c(%ebp)
411372:	8d 04 be             	lea    (%esi,%edi,4),%eax
411375:	8b 84 05 60 fc ff ff 	mov    -0x3a0(%ebp,%eax,1),%eax
41137c:	89 85 a4 f6 ff ff    	mov    %eax,-0x95c(%ebp)
411382:	85 c0                	test   %eax,%eax
411384:	75 1d                	jne    0x4113a3
411386:	3b f9                	cmp    %ecx,%edi
411388:	0f 85 dc 00 00 00    	jne    0x41146a
41138e:	21 84 bd 60 fc ff ff 	and    %eax,-0x3a0(%ebp,%edi,4)
411395:	8d 4f 01             	lea    0x1(%edi),%ecx
411398:	89 8d 5c fc ff ff    	mov    %ecx,-0x3a4(%ebp)
41139e:	e9 c7 00 00 00       	jmp    0x41146a
4113a3:	33 d2                	xor    %edx,%edx
4113a5:	33 c0                	xor    %eax,%eax
4113a7:	89 95 d8 f6 ff ff    	mov    %edx,-0x928(%ebp)
4113ad:	8b f7                	mov    %edi,%esi
4113af:	89 85 bc f6 ff ff    	mov    %eax,-0x944(%ebp)
4113b5:	85 db                	test   %ebx,%ebx
4113b7:	0f 84 98 00 00 00    	je     0x411455
4113bd:	83 fe 73             	cmp    $0x73,%esi
4113c0:	74 5b                	je     0x41141d
4113c2:	3b f1                	cmp    %ecx,%esi
4113c4:	75 17                	jne    0x4113dd
4113c6:	83 a4 b5 60 fc ff ff 	andl   $0x0,-0x3a0(%ebp,%esi,4)
4113cd:	00
4113ce:	40                   	inc    %eax
4113cf:	03 c7                	add    %edi,%eax
4113d1:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
4113d7:	8b 85 bc f6 ff ff    	mov    -0x944(%ebp),%eax
4113dd:	8b 8d dc f6 ff ff    	mov    -0x924(%ebp),%ecx
4113e3:	8b 04 81             	mov    (%ecx,%eax,4),%eax
4113e6:	f7 a5 a4 f6 ff ff    	mull   -0x95c(%ebp)
4113ec:	03 85 d8 f6 ff ff    	add    -0x928(%ebp),%eax
4113f2:	83 d2 00             	adc    $0x0,%edx
4113f5:	01 84 b5 60 fc ff ff 	add    %eax,-0x3a0(%ebp,%esi,4)
4113fc:	8b 85 bc f6 ff ff    	mov    -0x944(%ebp),%eax
411402:	8b 8d 5c fc ff ff    	mov    -0x3a4(%ebp),%ecx
411408:	83 d2 00             	adc    $0x0,%edx
41140b:	40                   	inc    %eax
41140c:	89 95 d8 f6 ff ff    	mov    %edx,-0x928(%ebp)
411412:	46                   	inc    %esi
411413:	89 85 bc f6 ff ff    	mov    %eax,-0x944(%ebp)
411419:	3b c3                	cmp    %ebx,%eax