46a06c:	33 cd                	xor    %ebp,%ecx
46a06e:	5e                   	pop    %esi
46a06f:	e8 8c 5e 02 00       	call   0x48ff00
46a074:	c9                   	leave
46a075:	c3                   	ret
46a076:	8b ff                	mov    %edi,%edi
46a078:	55                   	push   %ebp
46a079:	8b ec                	mov    %esp,%ebp
46a07b:	81 ec b0 00 00 00    	sub    $0xb0,%esp
46a081:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
46a086:	33 c5                	xor    %ebp,%eax
46a088:	89 45 fc             	mov    %eax,-0x4(%ebp)
46a08b:	56                   	push   %esi
46a08c:	8b 75 08             	mov    0x8(%ebp),%esi
46a08f:	8b c2                	mov    %edx,%eax
46a091:	57                   	push   %edi
46a092:	89 8d 50 ff ff ff    	mov    %ecx,-0xb0(%ebp)
46a098:	89 85 54 ff ff ff    	mov    %eax,-0xac(%ebp)
46a09e:	8b 48 04             	mov    0x4(%eax),%ecx
46a0a1:	8b 7e 04             	mov    0x4(%esi),%edi
46a0a4:	89 8d 60 ff ff ff    	mov    %ecx,-0xa0(%ebp)
46a0aa:	3b cf                	cmp    %edi,%ecx
46a0ac:	7d 08                	jge    0x46a0b6
46a0ae:	8b cf                	mov    %edi,%ecx
46a0b0:	89 bd 60 ff ff ff    	mov    %edi,-0xa0(%ebp)
46a0b6:	3b 48 0c             	cmp    0xc(%eax),%ecx
46a0b9:	7d 19                	jge    0x46a0d4
46a0bb:	8b 56 0c             	mov    0xc(%esi),%edx
46a0be:	89 95 6c ff ff ff    	mov    %edx,-0x94(%ebp)
46a0c4:	39 50 0c             	cmp    %edx,0xc(%eax)
46a0c7:	7f 13                	jg     0x46a0dc
46a0c9:	8b 50 0c             	mov    0xc(%eax),%edx
46a0cc:	89 95 6c ff ff ff    	mov    %edx,-0x94(%ebp)
46a0d2:	eb 08                	jmp    0x46a0dc
46a0d4:	8b d1                	mov    %ecx,%edx
46a0d6:	89 8d 6c ff ff ff    	mov    %ecx,-0x94(%ebp)
46a0dc:	3b ca                	cmp    %edx,%ecx
46a0de:	0f 8d d0 05 00 00    	jge    0x46a6b4
46a0e4:	8b 46 0c             	mov    0xc(%esi),%eax
46a0e7:	2b d7                	sub    %edi,%edx
46a0e9:	2b c7                	sub    %edi,%eax
46a0eb:	89 95 7c ff ff ff    	mov    %edx,-0x84(%ebp)
46a0f1:	89 45 98             	mov    %eax,-0x68(%ebp)
46a0f4:	8b f1                	mov    %ecx,%esi
46a0f6:	8b 15 58 0e 41 00    	mov    0x410e58,%edx
46a0fc:	2b f7                	sub    %edi,%esi
46a0fe:	0f b6 3d 56 0e 41 00 	movzbl 0x410e56,%edi
46a105:	c1 ea 08             	shr    $0x8,%edx
46a108:	53                   	push   %ebx
46a109:	8a 1d 5a 0e 41 00    	mov    0x410e5a,%bl
46a10f:	0f b6 c3             	movzbl %bl,%eax
46a112:	2b f8                	sub    %eax,%edi
46a114:	89 55 88             	mov    %edx,-0x78(%ebp)
46a117:	a1 54 0e 41 00       	mov    0x410e54,%eax
46a11c:	c1 e8 08             	shr    $0x8,%eax
46a11f:	0f b6 c8             	movzbl %al,%ecx
46a122:	0f b6 c2             	movzbl %dl,%eax
46a125:	2b c8                	sub    %eax,%ecx
46a127:	8b c7                	mov    %edi,%eax
46a129:	0f af c6             	imul   %esi,%eax
46a12c:	99                   	cltd
46a12d:	f7 7d 98             	idivl  -0x68(%ebp)
46a130:	02 c3                	add    %bl,%al
46a132:	88 45 a1             	mov    %al,-0x5f(%ebp)
46a135:	8b c1                	mov    %ecx,%eax
46a137:	0f af c6             	imul   %esi,%eax
46a13a:	99                   	cltd
46a13b:	f7 7d 98             	idivl  -0x68(%ebp)
46a13e:	02 45 88             	add    -0x78(%ebp),%al
46a141:	88 45 a2             	mov    %al,-0x5e(%ebp)
46a144:	6b c6 14             	imul   $0x14,%esi,%eax
46a147:	8b b5 7c ff ff ff    	mov    -0x84(%ebp),%esi
46a14d:	0f af fe             	imul   %esi,%edi
46a150:	0f af ce             	imul   %esi,%ecx
46a153:	99                   	cltd
46a154:	f7 7d 98             	idivl  -0x68(%ebp)
46a157:	2c 21                	sub    $0x21,%al
46a159:	88 45 a3             	mov    %al,-0x5d(%ebp)
46a15c:	8b c7                	mov    %edi,%eax
46a15e:	8b 7d 98             	mov    -0x68(%ebp),%edi
46a161:	99                   	cltd
46a162:	f7 ff                	idiv   %edi
46a164:	02 c3                	add    %bl,%al
46a166:	88 45 91             	mov    %al,-0x6f(%ebp)
46a169:	8b c1                	mov    %ecx,%eax
46a16b:	99                   	cltd
46a16c:	f7 ff                	idiv   %edi
46a16e:	8a 2d 63 0e 41 00    	mov    0x410e63,%ch
46a174:	02 45 88             	add    -0x78(%ebp),%al
46a177:	88 45 90             	mov    %al,-0x70(%ebp)
46a17a:	6b c6 14             	imul   $0x14,%esi,%eax
46a17d:	99                   	cltd
46a17e:	f7 ff                	idiv   %edi
46a180:	8a 35 5f 0e 41 00    	mov    0x410e5f,%dh
46a186:	8a d5                	mov    %ch,%dl
46a188:	2c 21                	sub    $0x21,%al
46a18a:	f6 d2                	not    %dl
46a18c:	88 45 8f             	mov    %al,-0x71(%ebp)
46a18f:	f6 d6                	not    %dh
46a191:	33 c0                	xor    %eax,%eax
46a193:	88 55 83             	mov    %dl,-0x7d(%ebp)
46a196:	8a c8                	mov    %al,%cl
46a198:	88 45 a0             	mov    %al,-0x60(%ebp)
46a19b:	88 45 9f             	mov    %al,-0x61(%ebp)
46a19e:	8a d8                	mov    %al,%bl
46a1a0:	88 45 97             	mov    %al,-0x69(%ebp)
46a1a3:	8a f8                	mov    %al,%bh
46a1a5:	88 45 96             	mov    %al,-0x6a(%ebp)
46a1a8:	88 45 95             	mov    %al,-0x6b(%ebp)
46a1ab:	88 45 9e             	mov    %al,-0x62(%ebp)
46a1ae:	88 45 94             	mov    %al,-0x6c(%ebp)
46a1b1:	88 45 93             	mov    %al,-0x6d(%ebp)
46a1b4:	88 45 92             	mov    %al,-0x6e(%ebp)
46a1b7:	8b 45 0c             	mov    0xc(%ebp),%eax
46a1ba:	88 75 8e             	mov    %dh,-0x72(%ebp)
46a1bd:	83 e8 00             	sub    $0x0,%eax
46a1c0:	0f 84 33 02 00 00    	je     0x46a3f9
46a1c6:	83 e8 01             	sub    $0x1,%eax
46a1c9:	0f 84 4e 01 00 00    	je     0x46a31d
46a1cf:	83 e8 01             	sub    $0x1,%eax
46a1d2:	0f 85 cd 03 00 00    	jne    0x46a5a5
46a1d8:	0f b6 45 a1          	movzbl -0x5f(%ebp),%eax
46a1dc:	89 45 88             	mov    %eax,-0x78(%ebp)
46a1df:	0f b6 45 a2          	movzbl -0x5e(%ebp),%eax
46a1e3:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
46a1e9:	0f b6 45 a3          	movzbl -0x5d(%ebp),%eax
46a1ed:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
46a1f3:	66 a1 5e 0e 41 00    	mov    0x410e5e,%ax
46a1f9:	0f b6 d8             	movzbl %al,%ebx
46a1fc:	a1 5c 0e 41 00       	mov    0x410e5c,%eax
46a201:	c1 e8 08             	shr    $0x8,%eax
46a204:	0f b6 c0             	movzbl %al,%eax
46a207:	0f b6 fd             	movzbl %ch,%edi
46a20a:	0f b6 0d 5f 0e 41 00 	movzbl 0x410e5f,%ecx
46a211:	0f af c1             	imul   %ecx,%eax
46a214:	0f b6 f2             	movzbl %dl,%esi
46a217:	0f b6 d6             	movzbl %dh,%edx
46a21a:	89 55 84             	mov    %edx,-0x7c(%ebp)
46a21d:	0f af d9             	imul   %ecx,%ebx
46a220:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
46a226:	0f b6 45 91          	movzbl -0x6f(%ebp),%eax
46a22a:	0f af c2             	imul   %edx,%eax
46a22d:	33 d2                	xor    %edx,%edx
46a22f:	c7 45 98 ff 00 00 00 	movl   $0xff,-0x68(%ebp)
46a236:	69 c9 de 00 00 00    	imul   $0xde,%ecx,%ecx
46a23c:	03 c3                	add    %ebx,%eax
46a23e:	f7 75 98             	divl   -0x68(%ebp)
46a241:	33 d2                	xor    %edx,%edx
46a243:	89 8d 7c ff ff ff    	mov    %ecx,-0x84(%ebp)
46a249:	88 45 a3             	mov    %al,-0x5d(%ebp)
46a24c:	0f b6 45 90          	movzbl -0x70(%ebp),%eax
46a250:	0f af 45 84          	imul   -0x7c(%ebp),%eax
46a254:	03 85 74 ff ff ff    	add    -0x8c(%ebp),%eax
46a25a:	f7 75 98             	divl   -0x68(%ebp)
46a25d:	33 d2                	xor    %edx,%edx
46a25f:	88 45 a2             	mov    %al,-0x5e(%ebp)
46a262:	0f b6 45 8f          	movzbl -0x71(%ebp),%eax
46a266:	0f af 45 84          	imul   -0x7c(%ebp),%eax
46a26a:	03 c1                	add    %ecx,%eax
46a26c:	8b ce                	mov    %esi,%ecx
46a26e:	f7 75 98             	divl   -0x68(%ebp)
46a271:	0f af 4d 88          	imul   -0x78(%ebp),%ecx
46a275:	33 d2                	xor    %edx,%edx
46a277:	88 45 9e             	mov    %al,-0x62(%ebp)
46a27a:	66 a1 62 0e 41 00    	mov    0x410e62,%ax
46a280:	0f b6 c0             	movzbl %al,%eax
46a283:	0f af c7             	imul   %edi,%eax
46a286:	03 c1                	add    %ecx,%eax
46a288:	8b 0d 60 0e 41 00    	mov    0x410e60,%ecx
46a28e:	f7 75 98             	divl   -0x68(%ebp)
46a291:	c1 e9 08             	shr    $0x8,%ecx
46a294:	33 d2                	xor    %edx,%edx
46a296:	88 45 a1             	mov    %al,-0x5f(%ebp)
46a299:	0f b6 c1             	movzbl %cl,%eax
46a29c:	8b ce                	mov    %esi,%ecx
46a29e:	0f af 8d 78 ff ff ff 	imul   -0x88(%ebp),%ecx
46a2a5:	0f af c7             	imul   %edi,%eax
46a2a8:	03 c1                	add    %ecx,%eax
46a2aa:	69 cf ca 00 00 00    	imul   $0xca,%edi,%ecx
46a2b0:	f7 75 98             	divl   -0x68(%ebp)
46a2b3:	33 d2                	xor    %edx,%edx
46a2b5:	88 45 a0             	mov    %al,-0x60(%ebp)
46a2b8:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
46a2be:	0f af c6             	imul   %esi,%eax
46a2c1:	8b 75 98             	mov    -0x68(%ebp),%esi
46a2c4:	03 c1                	add    %ecx,%eax
46a2c6:	8b 4d 84             	mov    -0x7c(%ebp),%ecx
46a2c9:	f7 f6                	div    %esi
46a2cb:	33 d2                	xor    %edx,%edx
46a2cd:	88 45 9f             	mov    %al,-0x61(%ebp)
46a2d0:	8b c1                	mov    %ecx,%eax
46a2d2:	0f af 45 88          	imul   -0x78(%ebp),%eax
46a2d6:	03 c3                	add    %ebx,%eax
46a2d8:	f7 f6                	div    %esi
46a2da:	33 d2                	xor    %edx,%edx
46a2dc:	88 45 97             	mov    %al,-0x69(%ebp)
46a2df:	8b c1                	mov    %ecx,%eax
46a2e1:	0f af 85 78 ff ff ff 	imul   -0x88(%ebp),%eax
46a2e8:	03 85 74 ff ff ff    	add    -0x8c(%ebp),%eax
46a2ee:	f7 f6                	div    %esi
46a2f0:	88 45 96             	mov    %al,-0x6a(%ebp)
46a2f3:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
46a2f9:	0f af c1             	imul   %ecx,%eax
46a2fc:	33 d2                	xor    %edx,%edx
46a2fe:	8a 5d a3             	mov    -0x5d(%ebp),%bl
46a301:	8a 7d a2             	mov    -0x5e(%ebp),%bh
46a304:	88 5d 94             	mov    %bl,-0x6c(%ebp)
46a307:	88 7d 93             	mov    %bh,-0x6d(%ebp)
46a30a:	03 85 7c ff ff ff    	add    -0x84(%ebp),%eax
46a310:	f7 f6                	div    %esi
46a312:	88 45 95             	mov    %al,-0x6b(%ebp)
46a315:	8a 45 9e             	mov    -0x62(%ebp),%al
46a318:	e9 82 02 00 00       	jmp    0x46a59f
46a31d:	66 a1 62 0e 41 00    	mov    0x410e62,%ax
46a323:	bb ff 00 00 00       	mov    $0xff,%ebx
46a328:	0f b6 c0             	movzbl %al,%eax
46a32b:	0f b6 f2             	movzbl %dl,%esi
46a32e:	33 d2                	xor    %edx,%edx
46a330:	0f b6 fd             	movzbl %ch,%edi
46a333:	0f b6 4d a1          	movzbl -0x5f(%ebp),%ecx
46a337:	0f af c7             	imul   %edi,%eax
46a33a:	0f af ce             	imul   %esi,%ecx
46a33d:	03 c1                	add    %ecx,%eax
46a33f:	0f b6 4d a2          	movzbl -0x5e(%ebp),%ecx
46a343:	f7 f3                	div    %ebx
46a345:	0f af ce             	imul   %esi,%ecx
46a348:	33 d2                	xor    %edx,%edx
46a34a:	88 45 a1             	mov    %al,-0x5f(%ebp)
46a34d:	a1 60 0e 41 00       	mov    0x410e60,%eax
46a352:	c1 e8 08             	shr    $0x8,%eax
46a355:	0f b6 c0             	movzbl %al,%eax
46a358:	0f af c7             	imul   %edi,%eax
46a35b:	03 c1                	add    %ecx,%eax
46a35d:	69 cf ca 00 00 00    	imul   $0xca,%edi,%ecx
46a363:	f7 f3                	div    %ebx
46a365:	33 d2                	xor    %edx,%edx
46a367:	0f b6 3d 5f 0e 41 00 	movzbl 0x410e5f,%edi
46a36e:	88 45 a0             	mov    %al,-0x60(%ebp)
46a371:	0f b6 45 a3          	movzbl -0x5d(%ebp),%eax
46a375:	0f af c6             	imul   %esi,%eax
46a378:	0f b6 75 8e          	movzbl -0x72(%ebp),%esi
46a37c:	03 c1                	add    %ecx,%eax
46a37e:	0f b6 4d 91          	movzbl -0x6f(%ebp),%ecx
46a382:	f7 f3                	div    %ebx
46a384:	0f af ce             	imul   %esi,%ecx
46a387:	33 d2                	xor    %edx,%edx
46a389:	88 45 9f             	mov    %al,-0x61(%ebp)
46a38c:	66 a1 5e 0e 41 00    	mov    0x410e5e,%ax
46a392:	0f b6 c0             	movzbl %al,%eax
46a395:	0f af c7             	imul   %edi,%eax
46a398:	03 c1                	add    %ecx,%eax
46a39a:	0f b6 4d 90          	movzbl -0x70(%ebp),%ecx
46a39e:	f7 f3                	div    %ebx
46a3a0:	0f af ce             	imul   %esi,%ecx
46a3a3:	33 d2                	xor    %edx,%edx
46a3a5:	88 45 a3             	mov    %al,-0x5d(%ebp)
46a3a8:	a1 5c 0e 41 00       	mov    0x410e5c,%eax
46a3ad:	c1 e8 08             	shr    $0x8,%eax
46a3b0:	0f b6 c0             	movzbl %al,%eax
46a3b3:	0f af c7             	imul   %edi,%eax
46a3b6:	03 c1                	add    %ecx,%eax
46a3b8:	69 cf de 00 00 00    	imul   $0xde,%edi,%ecx
46a3be:	f7 f3                	div    %ebx
46a3c0:	33 d2                	xor    %edx,%edx
46a3c2:	88 45 a2             	mov    %al,-0x5e(%ebp)
46a3c5:	0f b6 45 8f          	movzbl -0x71(%ebp),%eax
46a3c9:	0f af c6             	imul   %esi,%eax
46a3cc:	03 c1                	add    %ecx,%eax
46a3ce:	8a 4d a1             	mov    -0x5f(%ebp),%cl
46a3d1:	f7 f3                	div    %ebx
46a3d3:	8a 65 a0             	mov    -0x60(%ebp),%ah
46a3d6:	8a 55 9f             	mov    -0x61(%ebp),%dl
46a3d9:	8a 5d a3             	mov    -0x5d(%ebp),%bl
46a3dc:	8a 7d a2             	mov    -0x5e(%ebp),%bh
46a3df:	88 45 9e             	mov    %al,-0x62(%ebp)
46a3e2:	88 4d 97             	mov    %cl,-0x69(%ebp)
46a3e5:	88 65 96             	mov    %ah,-0x6a(%ebp)
46a3e8:	88 55 95             	mov    %dl,-0x6b(%ebp)
46a3eb:	88 5d 94             	mov    %bl,-0x6c(%ebp)
46a3ee:	88 7d 93             	mov    %bh,-0x6d(%ebp)
46a3f1:	88 45 92             	mov    %al,-0x6e(%ebp)
46a3f4:	e9 af 01 00 00       	jmp    0x46a5a8
46a3f9:	66 a1 62 0e 41 00    	mov    0x410e62,%ax
46a3ff:	0f b6 d0             	movzbl %al,%edx
46a402:	0f b6 45 83          	movzbl -0x7d(%ebp),%eax
46a406:	89 45 84             	mov    %eax,-0x7c(%ebp)
46a409:	a1 60 0e 41 00       	mov    0x410e60,%eax
46a40e:	c1 e8 08             	shr    $0x8,%eax
46a411:	0f b6 c0             	movzbl %al,%eax
46a414:	0f b6 cd             	movzbl %ch,%ecx
46a417:	0f af c1             	imul   %ecx,%eax
46a41a:	0f af d1             	imul   %ecx,%edx
46a41d:	0f b6 75 a1          	movzbl -0x5f(%ebp),%esi
46a421:	c7 45 98 ff 00 00 00 	movl   $0xff,-0x68(%ebp)
46a428:	0f b6 7d a2          	movzbl -0x5e(%ebp),%edi
46a42c:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
46a432:	69 c1 ca 00 00 00    	imul   $0xca,%ecx,%eax
46a438:	0f b6 0d 5f 0e 41 00 	movzbl 0x410e5f,%ecx
46a43f:	89 95 70 ff ff ff    	mov    %edx,-0x90(%ebp)
46a445:	0f b6 5d a3          	movzbl -0x5d(%ebp),%ebx
46a449:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
46a44f:	66 a1 5e 0e 41 00    	mov    0x410e5e,%ax
46a455:	0f b6 c0             	movzbl %al,%eax
46a458:	0f af c1             	imul   %ecx,%eax
46a45b:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
46a461:	0f b6 45 8e          	movzbl -0x72(%ebp),%eax
46a465:	89 45 88             	mov    %eax,-0x78(%ebp)
46a468:	a1 5c 0e 41 00       	mov    0x410e5c,%eax
46a46d:	c1 e8 08             	shr    $0x8,%eax
46a470:	0f b6 c0             	movzbl %al,%eax
46a473:	0f af c1             	imul   %ecx,%eax
46a476:	89 85 5c ff ff ff    	mov    %eax,-0xa4(%ebp)
46a47c:	69 c1 de 00 00 00    	imul   $0xde,%ecx,%eax
46a482:	0f b6 4d 91          	movzbl -0x6f(%ebp),%ecx
46a486:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
46a48c:	0f b6 45 90          	movzbl -0x70(%ebp),%eax
46a490:	89 85 58 ff ff ff    	mov    %eax,-0xa8(%ebp)
46a496:	0f b6 45 8f          	movzbl -0x71(%ebp),%eax
46a49a:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
46a4a0:	8b 45 84             	mov    -0x7c(%ebp),%eax
46a4a3:	0f af c6             	imul   %esi,%eax
46a4a6:	03 c2                	add    %edx,%eax
46a4a8:	33 d2                	xor    %edx,%edx
46a4aa:	f7 75 98             	divl   -0x68(%ebp)
46a4ad:	33 d2                	xor    %edx,%edx
46a4af:	88 45 a1             	mov    %al,-0x5f(%ebp)
46a4b2:	8b 45 84             	mov    -0x7c(%ebp),%eax
46a4b5:	0f af c7             	imul   %edi,%eax
46a4b8:	03 85 74 ff ff ff    	add    -0x8c(%ebp),%eax
46a4be:	f7 75 98             	divl   -0x68(%ebp)
46a4c1:	33 d2                	xor    %edx,%edx
46a4c3:	88 45 a0             	mov    %al,-0x60(%ebp)
46a4c6:	8b c3                	mov    %ebx,%eax
46a4c8:	0f af 45 84          	imul   -0x7c(%ebp),%eax
46a4cc:	0f af 5d 88          	imul   -0x78(%ebp),%ebx
46a4d0:	03 85 78 ff ff ff    	add    -0x88(%ebp),%eax
46a4d6:	f7 75 98             	divl   -0x68(%ebp)
46a4d9:	33 d2                	xor    %edx,%edx
46a4db:	03 9d 7c ff ff ff    	add    -0x84(%ebp),%ebx
46a4e1:	88 45 9f             	mov    %al,-0x61(%ebp)
46a4e4:	8b 45 88             	mov    -0x78(%ebp),%eax
46a4e7:	0f af c6             	imul   %esi,%eax
46a4ea:	03 85 68 ff ff ff    	add    -0x98(%ebp),%eax
46a4f0:	f7 75 98             	divl   -0x68(%ebp)
46a4f3:	33 d2                	xor    %edx,%edx
46a4f5:	88 45 97             	mov    %al,-0x69(%ebp)
46a4f8:	8b 45 88             	mov    -0x78(%ebp),%eax
46a4fb:	0f af c7             	imul   %edi,%eax
46a4fe:	03 85 5c ff ff ff    	add    -0xa4(%ebp),%eax
46a504:	f7 75 98             	divl   -0x68(%ebp)