51d19d:	03 d6                	add    %esi,%edx
51d19f:	c1 fa 08             	sar    $0x8,%edx
51d1a2:	8b c2                	mov    %edx,%eax
51d1a4:	c1 e8 1f             	shr    $0x1f,%eax
51d1a7:	03 c2                	add    %edx,%eax
51d1a9:	5e                   	pop    %esi
51d1aa:	c3                   	ret
51d1ab:	cc                   	int3
51d1ac:	cc                   	int3
51d1ad:	cc                   	int3
51d1ae:	cc                   	int3
51d1af:	cc                   	int3
51d1b0:	cc                   	int3
51d1b1:	cc                   	int3
51d1b2:	cc                   	int3
51d1b3:	cc                   	int3
51d1b4:	cc                   	int3
51d1b5:	cc                   	int3
51d1b6:	cc                   	int3
51d1b7:	cc                   	int3
51d1b8:	cc                   	int3
51d1b9:	cc                   	int3
51d1ba:	cc                   	int3
51d1bb:	cc                   	int3
51d1bc:	cc                   	int3
51d1bd:	cc                   	int3
51d1be:	cc                   	int3
51d1bf:	cc                   	int3
51d1c0:	e9 6d 72 f1 ff       	jmp    0x434432
51d1c5:	cc                   	int3
51d1c6:	cc                   	int3
51d1c7:	cc                   	int3
51d1c8:	cc                   	int3
51d1c9:	cc                   	int3
51d1ca:	cc                   	int3
51d1cb:	cc                   	int3
51d1cc:	cc                   	int3
51d1cd:	cc                   	int3
51d1ce:	cc                   	int3
51d1cf:	cc                   	int3
51d1d0:	8b 44 24 08          	mov    0x8(%esp),%eax
51d1d4:	8b 4c 24 04          	mov    0x4(%esp),%ecx
51d1d8:	3d 0a 5e 4e 01       	cmp    $0x14e5e0a,%eax
51d1dd:	77 31                	ja     0x51d210
51d1df:	69 c0 c4 00 00 00    	imul   $0xc4,%eax,%eax
51d1e5:	3d 00 10 00 00       	cmp    $0x1000,%eax
51d1ea:	72 1a                	jb     0x51d206
51d1ec:	f6 c1 1f             	test   $0x1f,%cl
51d1ef:	75 24                	jne    0x51d215
51d1f1:	8b 41 fc             	mov    -0x4(%ecx),%eax
51d1f4:	3b c1                	cmp    %ecx,%eax
51d1f6:	73 22                	jae    0x51d21a
51d1f8:	2b c8                	sub    %eax,%ecx
51d1fa:	83 f9 04             	cmp    $0x4,%ecx
51d1fd:	72 20                	jb     0x51d21f
51d1ff:	83 f9 23             	cmp    $0x23,%ecx
51d202:	77 20                	ja     0x51d224
51d204:	8b c8                	mov    %eax,%ecx
51d206:	51                   	push   %ecx
51d207:	e8 83 45 ee ff       	call   0x40178f
51d20c:	59                   	pop    %ecx
51d20d:	c2 08 00             	ret    $0x8
51d210:	e8 78 07 f2 ff       	call   0x43d98d
51d215:	e8 73 07 f2 ff       	call   0x43d98d
51d21a:	e8 6e 07 f2 ff       	call   0x43d98d
51d21f:	e8 69 07 f2 ff       	call   0x43d98d
51d224:	e8 64 07 f2 ff       	call   0x43d98d
51d229:	cc                   	int3
51d22a:	cc                   	int3
51d22b:	cc                   	int3
51d22c:	cc                   	int3
51d22d:	cc                   	int3
51d22e:	cc                   	int3
51d22f:	cc                   	int3
51d230:	cc                   	int3
51d231:	cc                   	int3
51d232:	cc                   	int3
51d233:	cc                   	int3
51d234:	cc                   	int3
51d235:	cc                   	int3
51d236:	cc                   	int3
51d237:	cc                   	int3
51d238:	cc                   	int3
51d239:	cc                   	int3
51d23a:	cc                   	int3
51d23b:	cc                   	int3
51d23c:	cc                   	int3
51d23d:	cc                   	int3
51d23e:	cc                   	int3
51d23f:	cc                   	int3
51d240:	8b 01                	mov    (%ecx),%eax
51d242:	3b 41 04             	cmp    0x4(%ecx),%eax
51d245:	0f 94 c0             	sete   %al
51d248:	c3                   	ret
51d249:	cc                   	int3
51d24a:	cc                   	int3
51d24b:	cc                   	int3
51d24c:	cc                   	int3
51d24d:	cc                   	int3
51d24e:	cc                   	int3
51d24f:	cc                   	int3
51d250:	8b 44 24 04          	mov    0x4(%esp),%eax
51d254:	8b 49 04             	mov    0x4(%ecx),%ecx
51d257:	89 08                	mov    %ecx,(%eax)
51d259:	c2 04 00             	ret    $0x4
51d25c:	cc                   	int3
51d25d:	cc                   	int3
51d25e:	cc                   	int3
51d25f:	cc                   	int3
51d260:	8b 44 24 04          	mov    0x4(%esp),%eax
51d264:	8b 49 04             	mov    0x4(%ecx),%ecx
51d267:	89 08                	mov    %ecx,(%eax)
51d269:	c2 04 00             	ret    $0x4
51d26c:	cc                   	int3
51d26d:	cc                   	int3
51d26e:	cc                   	int3
51d26f:	cc                   	int3
51d270:	51                   	push   %ecx
51d271:	8b 44 24 0c          	mov    0xc(%esp),%eax
51d275:	53                   	push   %ebx
51d276:	56                   	push   %esi
51d277:	57                   	push   %edi
51d278:	8b d9                	mov    %ecx,%ebx
51d27a:	c6 44 24 0c 00       	movb   $0x0,0xc(%esp)
51d27f:	ff 74 24 0c          	push   0xc(%esp)
51d283:	50                   	push   %eax
51d284:	ff 73 04             	push   0x4(%ebx)
51d287:	05 d4 01 00 00       	add    $0x1d4,%eax
51d28c:	50                   	push   %eax
51d28d:	e8 eb c6 f1 ff       	call   0x43997d
51d292:	8b 7b 04             	mov    0x4(%ebx),%edi
51d295:	83 c4 10             	add    $0x10,%esp
51d298:	8d b7 2c fe ff ff    	lea    -0x1d4(%edi),%esi
51d29e:	3b f7                	cmp    %edi,%esi
51d2a0:	74 1c                	je     0x51d2be
51d2a2:	8d 8e c4 00 00 00    	lea    0xc4(%esi),%ecx
51d2a8:	e8 4b 12 ef ff       	call   0x40e4f8
51d2ad:	8b ce                	mov    %esi,%ecx
51d2af:	e8 3f 92 f1 ff       	call   0x4364f3
51d2b4:	81 c6 d4 01 00 00    	add    $0x1d4,%esi
51d2ba:	3b f7                	cmp    %edi,%esi
51d2bc:	75 e4                	jne    0x51d2a2
51d2be:	8b 44 24 14          	mov    0x14(%esp),%eax
51d2c2:	81 43 04 2c fe ff ff 	addl   $0xfffffe2c,0x4(%ebx)
51d2c9:	8b 4c 24 18          	mov    0x18(%esp),%ecx
51d2cd:	5f                   	pop    %edi
51d2ce:	5e                   	pop    %esi
51d2cf:	89 08                	mov    %ecx,(%eax)
51d2d1:	5b                   	pop    %ebx
51d2d2:	59                   	pop    %ecx
51d2d3:	c2 08 00             	ret    $0x8
51d2d6:	cc                   	int3
51d2d7:	cc                   	int3
51d2d8:	cc                   	int3
51d2d9:	cc                   	int3
51d2da:	cc                   	int3
51d2db:	cc                   	int3
51d2dc:	cc                   	int3
51d2dd:	cc                   	int3
51d2de:	cc                   	int3
51d2df:	cc                   	int3
51d2e0:	cc                   	int3
51d2e1:	cc                   	int3
51d2e2:	cc                   	int3
51d2e3:	cc                   	int3
51d2e4:	cc                   	int3
51d2e5:	cc                   	int3
51d2e6:	cc                   	int3
51d2e7:	cc                   	int3
51d2e8:	cc                   	int3
51d2e9:	cc                   	int3
51d2ea:	cc                   	int3
51d2eb:	cc                   	int3
51d2ec:	cc                   	int3
51d2ed:	cc                   	int3
51d2ee:	cc                   	int3
51d2ef:	cc                   	int3
51d2f0:	b8 0a 5e 4e 01       	mov    $0x14e5e0a,%eax
51d2f5:	c2 04 00             	ret    $0x4
51d2f8:	cc                   	int3
51d2f9:	cc                   	int3
51d2fa:	cc                   	int3
51d2fb:	cc                   	int3
51d2fc:	cc                   	int3
51d2fd:	cc                   	int3
51d2fe:	cc                   	int3
51d2ff:	cc                   	int3
51d300:	b8 c0 08 8c 00       	mov    $0x8c08c0,%eax
51d305:	c2 04 00             	ret    $0x4
51d308:	cc                   	int3
51d309:	cc                   	int3
51d30a:	cc                   	int3
51d30b:	cc                   	int3
51d30c:	cc                   	int3
51d30d:	cc                   	int3
51d30e:	cc                   	int3
51d30f:	cc                   	int3
51d310:	b8 0a 5e 4e 01       	mov    $0x14e5e0a,%eax
51d315:	c3                   	ret
51d316:	cc                   	int3
51d317:	cc                   	int3
51d318:	cc                   	int3
51d319:	cc                   	int3
51d31a:	cc                   	int3
51d31b:	cc                   	int3
51d31c:	cc                   	int3
51d31d:	cc                   	int3
51d31e:	cc                   	int3
51d31f:	cc                   	int3
51d320:	b8 c0 08 8c 00       	mov    $0x8c08c0,%eax
51d325:	c3                   	ret
51d326:	cc                   	int3
51d327:	cc                   	int3
51d328:	cc                   	int3
51d329:	cc                   	int3
51d32a:	cc                   	int3
51d32b:	cc                   	int3
51d32c:	cc                   	int3
51d32d:	cc                   	int3
51d32e:	cc                   	int3
51d32f:	cc                   	int3
51d330:	b8 0a 5e 4e 01       	mov    $0x14e5e0a,%eax
51d335:	c3                   	ret
51d336:	cc                   	int3
51d337:	cc                   	int3
51d338:	cc                   	int3
51d339:	cc                   	int3
51d33a:	cc                   	int3
51d33b:	cc                   	int3
51d33c:	cc                   	int3
51d33d:	cc                   	int3
51d33e:	cc                   	int3
51d33f:	cc                   	int3
51d340:	b8 c0 08 8c 00       	mov    $0x8c08c0,%eax
51d345:	c3                   	ret
51d346:	cc                   	int3
51d347:	cc                   	int3
51d348:	cc                   	int3
51d349:	cc                   	int3
51d34a:	cc                   	int3
51d34b:	cc                   	int3
51d34c:	cc                   	int3
51d34d:	cc                   	int3
51d34e:	cc                   	int3
51d34f:	cc                   	int3
51d350:	b8 0a 5e 4e 01       	mov    $0x14e5e0a,%eax
51d355:	c3                   	ret
51d356:	cc                   	int3
51d357:	cc                   	int3
51d358:	cc                   	int3
51d359:	cc                   	int3
51d35a:	cc                   	int3
51d35b:	cc                   	int3
51d35c:	cc                   	int3
51d35d:	cc                   	int3
51d35e:	cc                   	int3
51d35f:	cc                   	int3
51d360:	b8 c0 08 8c 00       	mov    $0x8c08c0,%eax
51d365:	c3                   	ret
51d366:	cc                   	int3
51d367:	cc                   	int3
51d368:	cc                   	int3
51d369:	cc                   	int3
51d36a:	cc                   	int3
51d36b:	cc                   	int3
51d36c:	cc                   	int3
51d36d:	cc                   	int3
51d36e:	cc                   	int3
51d36f:	cc                   	int3
51d370:	8b 44 24 04          	mov    0x4(%esp),%eax
51d374:	c3                   	ret
51d375:	cc                   	int3
51d376:	cc                   	int3
51d377:	cc                   	int3
51d378:	cc                   	int3
51d379:	cc                   	int3
51d37a:	cc                   	int3
51d37b:	cc                   	int3
51d37c:	cc                   	int3
51d37d:	cc                   	int3
51d37e:	cc                   	int3
51d37f:	cc                   	int3
51d380:	55                   	push   %ebp
51d381:	8b ec                	mov    %esp,%ebp
51d383:	6a ff                	push   $0xffffffff
51d385:	68 a2 b9 b4 00       	push   $0xb4b9a2
51d38a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
51d390:	50                   	push   %eax
51d391:	51                   	push   %ecx
51d392:	56                   	push   %esi
51d393:	57                   	push   %edi
51d394:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
51d399:	33 c5                	xor    %ebp,%eax
51d39b:	50                   	push   %eax
51d39c:	8d 45 f4             	lea    -0xc(%ebp),%eax
51d39f:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
51d3a5:	8b f1                	mov    %ecx,%esi
51d3a7:	8b 4e 04             	mov    0x4(%esi),%ecx
51d3aa:	8b 7d 08             	mov    0x8(%ebp),%edi
51d3ad:	3b f9                	cmp    %ecx,%edi
51d3af:	73 46                	jae    0x51d3f7
51d3b1:	8b 06                	mov    (%esi),%eax
51d3b3:	3b c7                	cmp    %edi,%eax
51d3b5:	77 40                	ja     0x51d3f7
51d3b7:	2b f8                	sub    %eax,%edi
51d3b9:	b8 9d 82 97 53       	mov    $0x5397829d,%eax
51d3be:	f7 ef                	imul   %edi
51d3c0:	c1 fa 06             	sar    $0x6,%edx
51d3c3:	8b fa                	mov    %edx,%edi
51d3c5:	c1 ef 1f             	shr    $0x1f,%edi
51d3c8:	03 fa                	add    %edx,%edi
51d3ca:	3b 4e 08             	cmp    0x8(%esi),%ecx
51d3cd:	75 09                	jne    0x51d3d8
51d3cf:	6a 01                	push   $0x1
51d3d1:	8b ce                	mov    %esi,%ecx
51d3d3:	e8 11 2f ef ff       	call   0x4102e9
51d3d8:	8b 4e 04             	mov    0x4(%esi),%ecx
51d3db:	69 c7 c4 00 00 00    	imul   $0xc4,%edi,%eax
51d3e1:	89 4d 08             	mov    %ecx,0x8(%ebp)
51d3e4:	89 4d f0             	mov    %ecx,-0x10(%ebp)
51d3e7:	03 06                	add    (%esi),%eax
51d3e9:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
51d3f0:	85 c9                	test   %ecx,%ecx
51d3f2:	74 2b                	je     0x51d41f
51d3f4:	50                   	push   %eax
51d3f5:	eb 23                	jmp    0x51d41a
51d3f7:	3b 4e 08             	cmp    0x8(%esi),%ecx
51d3fa:	75 09                	jne    0x51d405
51d3fc:	6a 01                	push   $0x1
51d3fe:	8b ce                	mov    %esi,%ecx
51d400:	e8 e4 2e ef ff       	call   0x4102e9
51d405:	8b 4e 04             	mov    0x4(%esi),%ecx
51d408:	89 4d 08             	mov    %ecx,0x8(%ebp)
51d40b:	89 4d f0             	mov    %ecx,-0x10(%ebp)
51d40e:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
51d415:	85 c9                	test   %ecx,%ecx
51d417:	74 06                	je     0x51d41f
51d419:	57                   	push   %edi
51d41a:	e8 00 a7 f0 ff       	call   0x427b1f
51d41f:	81 46 04 c4 00 00 00 	addl   $0xc4,0x4(%esi)
51d426:	8b 4d f4             	mov    -0xc(%ebp),%ecx
51d429:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
51d430:	59                   	pop    %ecx
51d431:	5f                   	pop    %edi
51d432:	5e                   	pop    %esi
51d433:	8b e5                	mov    %ebp,%esp
51d435:	5d                   	pop    %ebp
51d436:	c2 04 00             	ret    $0x4
51d439:	cc                   	int3
51d43a:	cc                   	int3