a97fc6:	6a 07                	push   $0x7
a97fc8:	59                   	pop    %ecx
a97fc9:	8d 46 06             	lea    0x6(%esi),%eax
a97fcc:	99                   	cltd
a97fcd:	f7 f9                	idiv   %ecx
a97fcf:	8b 45 10             	mov    0x10(%ebp),%eax
a97fd2:	2b c2                	sub    %edx,%eax
a97fd4:	03 c1                	add    %ecx,%eax
a97fd6:	99                   	cltd
a97fd7:	f7 f9                	idiv   %ecx
a97fd9:	ff 75 08             	push   0x8(%ebp)
a97fdc:	8b d8                	mov    %eax,%ebx
a97fde:	e8 b9 68 9a ff       	call   0x43e89c
a97fe3:	2b 75 10             	sub    0x10(%ebp),%esi
a97fe6:	59                   	pop    %ecx
a97fe7:	0f b6 c8             	movzbl %al,%ecx
a97fea:	6a 07                	push   $0x7
a97fec:	8d 86 73 01 00 00    	lea    0x173(%esi),%eax
a97ff2:	8b 7d 10             	mov    0x10(%ebp),%edi
a97ff5:	99                   	cltd
a97ff6:	2b f9                	sub    %ecx,%edi
a97ff8:	5e                   	pop    %esi
a97ff9:	f7 fe                	idiv   %esi
a97ffb:	8d 81 6d 01 00 00    	lea    0x16d(%ecx),%eax
a98001:	8b f2                	mov    %edx,%esi
a98003:	03 c6                	add    %esi,%eax
a98005:	6a 07                	push   $0x7
a98007:	99                   	cltd
a98008:	59                   	pop    %ecx
a98009:	f7 f9                	idiv   %ecx
a9800b:	81 ff 6c 01 00 00    	cmp    $0x16c,%edi
a98011:	7c 05                	jl     0xa98018
a98013:	83 fa 02             	cmp    $0x2,%edx
a98016:	74 1a                	je     0xa98032
a98018:	81 ff 6b 01 00 00    	cmp    $0x16b,%edi
a9801e:	7c 05                	jl     0xa98025
a98020:	83 fa 03             	cmp    $0x3,%edx
a98023:	74 0d                	je     0xa98032
a98025:	81 ff 6a 01 00 00    	cmp    $0x16a,%edi
a9802b:	7c 0a                	jl     0xa98037
a9802d:	83 fa 04             	cmp    $0x4,%edx
a98030:	75 05                	jne    0xa98037
a98032:	83 c8 ff             	or     $0xffffffff,%eax
a98035:	eb 14                	jmp    0xa9804b
a98037:	83 fe 02             	cmp    $0x2,%esi
a9803a:	74 0c                	je     0xa98048
a9803c:	83 fe 03             	cmp    $0x3,%esi
a9803f:	74 07                	je     0xa98048
a98041:	8b c3                	mov    %ebx,%eax
a98043:	83 fe 04             	cmp    $0x4,%esi
a98046:	75 03                	jne    0xa9804b
a98048:	8d 43 01             	lea    0x1(%ebx),%eax
a9804b:	5f                   	pop    %edi
a9804c:	5e                   	pop    %esi
a9804d:	5b                   	pop    %ebx
a9804e:	5d                   	pop    %ebp
a9804f:	c3                   	ret
a98050:	cc                   	int3
a98051:	cc                   	int3
a98052:	cc                   	int3
a98053:	cc                   	int3
a98054:	cc                   	int3
a98055:	cc                   	int3
a98056:	cc                   	int3
a98057:	cc                   	int3
a98058:	cc                   	int3
a98059:	cc                   	int3
a9805a:	cc                   	int3
a9805b:	cc                   	int3
a9805c:	cc                   	int3
a9805d:	cc                   	int3
a9805e:	cc                   	int3
a9805f:	cc                   	int3
a98060:	cc                   	int3
a98061:	cc                   	int3
a98062:	cc                   	int3
a98063:	cc                   	int3
a98064:	cc                   	int3
a98065:	cc                   	int3
a98066:	cc                   	int3
a98067:	cc                   	int3
a98068:	cc                   	int3
a98069:	cc                   	int3
a9806a:	cc                   	int3
a9806b:	cc                   	int3
a9806c:	cc                   	int3
a9806d:	cc                   	int3
a9806e:	cc                   	int3
a9806f:	cc                   	int3
a98070:	cc                   	int3
a98071:	cc                   	int3
a98072:	cc                   	int3
a98073:	cc                   	int3
a98074:	cc                   	int3
a98075:	8b ff                	mov    %edi,%edi
a98077:	55                   	push   %ebp
a98078:	8b ec                	mov    %esp,%ebp
a9807a:	56                   	push   %esi
a9807b:	ff 75 10             	push   0x10(%ebp)
a9807e:	8b 75 08             	mov    0x8(%ebp),%esi
a98081:	ff 75 0c             	push   0xc(%ebp)
a98084:	56                   	push   %esi
a98085:	e8 31 ff ff ff       	call   0xa97fbb
a9808a:	83 c4 0c             	add    $0xc,%esp
a9808d:	85 c0                	test   %eax,%eax
a9808f:	75 05                	jne    0xa98096
a98091:	8d 46 ff             	lea    -0x1(%esi),%eax
a98094:	eb 07                	jmp    0xa9809d
a98096:	8b c6                	mov    %esi,%eax
a98098:	7f 03                	jg     0xa9809d
a9809a:	8d 46 01             	lea    0x1(%esi),%eax
a9809d:	5e                   	pop    %esi
a9809e:	5d                   	pop    %ebp
a9809f:	c3                   	ret
a980a0:	cc                   	int3
a980a1:	cc                   	int3
a980a2:	cc                   	int3
a980a3:	cc                   	int3
a980a4:	cc                   	int3
a980a5:	cc                   	int3
a980a6:	cc                   	int3
a980a7:	cc                   	int3
a980a8:	cc                   	int3
a980a9:	cc                   	int3
a980aa:	8b ff                	mov    %edi,%edi
a980ac:	55                   	push   %ebp
a980ad:	8b ec                	mov    %esp,%ebp
a980af:	8b 45 0c             	mov    0xc(%ebp),%eax
a980b2:	2b 45 08             	sub    0x8(%ebp),%eax
a980b5:	6a 07                	push   $0x7
a980b7:	59                   	pop    %ecx
a980b8:	03 c1                	add    %ecx,%eax
a980ba:	99                   	cltd
a980bb:	f7 f9                	idiv   %ecx
a980bd:	8b 45 10             	mov    0x10(%ebp),%eax
a980c0:	2b c2                	sub    %edx,%eax
a980c2:	03 c1                	add    %ecx,%eax
a980c4:	99                   	cltd
a980c5:	f7 f9                	idiv   %ecx
a980c7:	5d                   	pop    %ebp
a980c8:	c3                   	ret
a980c9:	cc                   	int3
a980ca:	cc                   	int3
a980cb:	cc                   	int3
a980cc:	cc                   	int3
a980cd:	cc                   	int3
a980ce:	cc                   	int3
a980cf:	cc                   	int3
a980d0:	8b 01                	mov    (%ecx),%eax
a980d2:	83 21 00             	andl   $0x0,(%ecx)
a980d5:	c3                   	ret
a980d6:	8b ff                	mov    %edi,%edi
a980d8:	55                   	push   %ebp
a980d9:	8b ec                	mov    %esp,%ebp
a980db:	51                   	push   %ecx
a980dc:	51                   	push   %ecx
a980dd:	8b 55 0c             	mov    0xc(%ebp),%edx
a980e0:	53                   	push   %ebx
a980e1:	0f b7 c2             	movzwl %dx,%eax
a980e4:	56                   	push   %esi
a980e5:	57                   	push   %edi
a980e6:	83 f8 5a             	cmp    $0x5a,%eax
a980e9:	0f 8e c6 05 00 00    	jle    0xa986b5
a980ef:	83 f8 6e             	cmp    $0x6e,%eax
a980f2:	0f 8f 33 03 00 00    	jg     0xa9842b
a980f8:	0f 84 1d 03 00 00    	je     0xa9841b
a980fe:	83 f8 65             	cmp    $0x65,%eax
a98101:	0f 8e e3 00 00 00    	jle    0xa981ea
a98107:	83 e8 67             	sub    $0x67,%eax
a9810a:	0f 84 91 00 00 00    	je     0xa981a1
a98110:	83 e8 01             	sub    $0x1,%eax
a98113:	75 07                	jne    0xa9811c
a98115:	6a 62                	push   $0x62
a98117:	5a                   	pop    %edx
a98118:	52                   	push   %edx
a98119:	58                   	pop    %eax
a9811a:	eb d3                	jmp    0xa980ef
a9811c:	48                   	dec    %eax
a9811d:	83 e8 01             	sub    $0x1,%eax
a98120:	74 4a                	je     0xa9816c
a98122:	83 e8 03             	sub    $0x3,%eax
a98125:	0f 85 ba 02 00 00    	jne    0xa983e5
a9812b:	8b 45 10             	mov    0x10(%ebp),%eax
a9812e:	8b 48 10             	mov    0x10(%eax),%ecx
a98131:	85 c9                	test   %ecx,%ecx
a98133:	0f 88 9c 02 00 00    	js     0xa983d5
a98139:	83 f9 0b             	cmp    $0xb,%ecx
a9813c:	0f 8f 93 02 00 00    	jg     0xa983d5
a98142:	80 7d 20 00          	cmpb   $0x0,0x20(%ebp)
a98146:	0f 95 c0             	setne  %al
a98149:	fe c8                	dec    %al
a9814b:	24 30                	and    $0x30,%al
a9814d:	66 98                	cbtw
a9814f:	0f b7 c0             	movzwl %ax,%eax
a98152:	50                   	push   %eax
a98153:	ff 75 18             	push   0x18(%ebp)
a98156:	ff 75 14             	push   0x14(%ebp)
a98159:	6a 02                	push   $0x2
a9815b:	8d 41 01             	lea    0x1(%ecx),%eax
a9815e:	50                   	push   %eax
a9815f:	e8 46 0d 00 00       	call   0xa98eaa
a98164:	83 c4 14             	add    $0x14,%esp
a98167:	e9 33 0a 00 00       	jmp    0xa98b9f
a9816c:	8b 45 10             	mov    0x10(%ebp),%eax
a9816f:	8b 48 1c             	mov    0x1c(%eax),%ecx
a98172:	85 c9                	test   %ecx,%ecx
a98174:	0f 88 5b 02 00 00    	js     0xa983d5
a9817a:	81 f9 6d 01 00 00    	cmp    $0x16d,%ecx
a98180:	0f 8f 4f 02 00 00    	jg     0xa983d5
a98186:	80 7d 20 00          	cmpb   $0x0,0x20(%ebp)
a9818a:	0f 95 c0             	setne  %al
a9818d:	fe c8                	dec    %al
a9818f:	24 30                	and    $0x30,%al
a98191:	66 98                	cbtw
a98193:	0f b7 c0             	movzwl %ax,%eax
a98196:	50                   	push   %eax
a98197:	ff 75 18             	push   0x18(%ebp)
a9819a:	ff 75 14             	push   0x14(%ebp)
a9819d:	6a 03                	push   $0x3
a9819f:	eb ba                	jmp    0xa9815b
a981a1:	8b 45 10             	mov    0x10(%ebp),%eax
a981a4:	81 78 14 94 f8 ff ff 	cmpl   $0xfffff894,0x14(%eax)
a981ab:	0f 8c 24 02 00 00    	jl     0xa983d5
a981b1:	81 78 14 a3 1f 00 00 	cmpl   $0x1fa3,0x14(%eax)
a981b8:	0f 8f 17 02 00 00    	jg     0xa983d5
a981be:	6a 30                	push   $0x30
a981c0:	ff 75 18             	push   0x18(%ebp)
a981c3:	ff 75 14             	push   0x14(%ebp)
a981c6:	6a 02                	push   $0x2
a981c8:	ff 70 1c             	push   0x1c(%eax)
a981cb:	ff 70 18             	push   0x18(%eax)
a981ce:	ff 70 14             	push   0x14(%eax)
a981d1:	e8 9f fe ff ff       	call   0xa98075
a981d6:	83 c4 0c             	add    $0xc,%esp
a981d9:	05 6c 07 00 00       	add    $0x76c,%eax
a981de:	6a 64                	push   $0x64
a981e0:	99                   	cltd
a981e1:	59                   	pop    %ecx
a981e2:	f7 f9                	idiv   %ecx
a981e4:	52                   	push   %edx
a981e5:	e9 75 ff ff ff       	jmp    0xa9815f
a981ea:	0f 84 fc 01 00 00    	je     0xa983ec
a981f0:	83 e8 61             	sub    $0x61,%eax
a981f3:	0f 84 bb 01 00 00    	je     0xa983b4
a981f9:	83 e8 01             	sub    $0x1,%eax
a981fc:	0f 84 86 01 00 00    	je     0xa98388
a98202:	83 e8 01             	sub    $0x1,%eax
a98205:	74 44                	je     0xa9824b
a98207:	83 e8 01             	sub    $0x1,%eax
a9820a:	0f 85 d5 01 00 00    	jne    0xa983e5
a98210:	8b 45 10             	mov    0x10(%ebp),%eax
a98213:	83 78 0c 01          	cmpl   $0x1,0xc(%eax)
a98217:	0f 8c b8 01 00 00    	jl     0xa983d5
a9821d:	83 78 0c 1f          	cmpl   $0x1f,0xc(%eax)
a98221:	0f 8f ae 01 00 00    	jg     0xa983d5
a98227:	80 7d 20 00          	cmpb   $0x0,0x20(%ebp)
a9822b:	0f 95 c1             	setne  %cl
a9822e:	fe c9                	dec    %cl
a98230:	80 e1 30             	and    $0x30,%cl
a98233:	66 0f be c9          	movsbw %cl,%cx
a98237:	0f b7 c9             	movzwl %cx,%ecx
a9823a:	51                   	push   %ecx
a9823b:	ff 75 18             	push   0x18(%ebp)
a9823e:	ff 75 14             	push   0x14(%ebp)
a98241:	6a 02                	push   $0x2
a98243:	ff 70 0c             	push   0xc(%eax)
a98246:	e9 14 ff ff ff       	jmp    0xa9815f
a9824b:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
a9824e:	8b 4d 20             	mov    0x20(%ebp),%ecx
a98251:	81 fb 10 15 c8 00    	cmp    $0xc81510,%ebx
a98257:	0f 85 dd 00 00 00    	jne    0xa9833a
a9825d:	84 c9                	test   %cl,%cl
a9825f:	0f 85 d5 00 00 00    	jne    0xa9833a
a98265:	8b 7d 18             	mov    0x18(%ebp),%edi
a98268:	33 f6                	xor    %esi,%esi
a9826a:	56                   	push   %esi
a9826b:	53                   	push   %ebx
a9826c:	8b 5d 14             	mov    0x14(%ebp),%ebx
a9826f:	57                   	push   %edi
a98270:	53                   	push   %ebx
a98271:	ff 75 10             	push   0x10(%ebp)
a98274:	6a 61                	push   $0x61
a98276:	ff 75 08             	push   0x8(%ebp)
a98279:	e8 58 fe ff ff       	call   0xa980d6
a9827e:	83 c4 1c             	add    $0x1c,%esp
a98281:	84 c0                	test   %al,%al
a98283:	75 10                	jne    0xa98295
a98285:	e8 e5 65 9a ff       	call   0x43e86f
a9828a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
a98290:	e9 50 01 00 00       	jmp    0xa983e5
a98295:	57                   	push   %edi
a98296:	53                   	push   %ebx
a98297:	68 30 8e c4 00       	push   $0xc48e30
a9829c:	e8 53 0d 00 00       	call   0xa98ff4
a982a1:	56                   	push   %esi
a982a2:	ff 75 1c             	push   0x1c(%ebp)
a982a5:	57                   	push   %edi
a982a6:	53                   	push   %ebx
a982a7:	ff 75 10             	push   0x10(%ebp)
a982aa:	6a 62                	push   $0x62
a982ac:	ff 75 08             	push   0x8(%ebp)
a982af:	e8 22 fe ff ff       	call   0xa980d6
a982b4:	83 c4 28             	add    $0x28,%esp
a982b7:	84 c0                	test   %al,%al
a982b9:	74 ca                	je     0xa98285
a982bb:	57                   	push   %edi
a982bc:	53                   	push   %ebx
a982bd:	68 30 8e c4 00       	push   $0xc48e30
a982c2:	e8 2d 0d 00 00       	call   0xa98ff4
a982c7:	56                   	push   %esi
a982c8:	ff 75 1c             	push   0x1c(%ebp)
a982cb:	57                   	push   %edi
a982cc:	53                   	push   %ebx
a982cd:	ff 75 10             	push   0x10(%ebp)
a982d0:	6a 65                	push   $0x65
a982d2:	ff 75 08             	push   0x8(%ebp)
a982d5:	e8 fc fd ff ff       	call   0xa980d6
a982da:	83 c4 28             	add    $0x28,%esp
a982dd:	84 c0                	test   %al,%al
a982df:	74 a4                	je     0xa98285
a982e1:	57                   	push   %edi
a982e2:	53                   	push   %ebx
a982e3:	68 30 8e c4 00       	push   $0xc48e30
a982e8:	e8 07 0d 00 00       	call   0xa98ff4
a982ed:	56                   	push   %esi
a982ee:	ff 75 1c             	push   0x1c(%ebp)
a982f1:	57                   	push   %edi
a982f2:	53                   	push   %ebx
a982f3:	ff 75 10             	push   0x10(%ebp)
a982f6:	6a 54                	push   $0x54
a982f8:	ff 75 08             	push   0x8(%ebp)
a982fb:	e8 d6 fd ff ff       	call   0xa980d6
a98300:	83 c4 28             	add    $0x28,%esp
a98303:	84 c0                	test   %al,%al
a98305:	0f 84 7a ff ff ff    	je     0xa98285
a9830b:	57                   	push   %edi
a9830c:	53                   	push   %ebx
a9830d:	68 30 8e c4 00       	push   $0xc48e30
a98312:	e8 dd 0c 00 00       	call   0xa98ff4
a98317:	56                   	push   %esi
a98318:	ff 75 1c             	push   0x1c(%ebp)
a9831b:	57                   	push   %edi
a9831c:	53                   	push   %ebx
a9831d:	ff 75 10             	push   0x10(%ebp)
a98320:	6a 59                	push   $0x59
a98322:	ff 75 08             	push   0x8(%ebp)
a98325:	e8 ac fd ff ff       	call   0xa980d6
a9832a:	83 c4 28             	add    $0x28,%esp
a9832d:	84 c0                	test   %al,%al
a9832f:	0f 85 6a 08 00 00    	jne    0xa98b9f