45815f:	8b c1                	mov    %ecx,%eax
458161:	0f af c3             	imul   %ebx,%eax
458164:	6a 64                	push   $0x64
458166:	5f                   	pop    %edi
458167:	8b 35 d0 48 4a 00    	mov    0x4a48d0,%esi
45816d:	99                   	cltd
45816e:	f7 ff                	idiv   %edi
458170:	8b 7d d4             	mov    -0x2c(%ebp),%edi
458173:	03 c8                	add    %eax,%ecx
458175:	8b c6                	mov    %esi,%eax
458177:	0f af c7             	imul   %edi,%eax
45817a:	99                   	cltd
45817b:	f7 7d d0             	idivl  -0x30(%ebp)
45817e:	03 f0                	add    %eax,%esi
458180:	eb 07                	jmp    0x458189
458182:	8b 7d d4             	mov    -0x2c(%ebp),%edi
458185:	8b cb                	mov    %ebx,%ecx
458187:	8b f7                	mov    %edi,%esi
458189:	8b 45 e0             	mov    -0x20(%ebp),%eax
45818c:	03 c1                	add    %ecx,%eax
45818e:	89 75 d0             	mov    %esi,-0x30(%ebp)
458191:	89 45 e8             	mov    %eax,-0x18(%ebp)
458194:	8b 45 e4             	mov    -0x1c(%ebp),%eax
458197:	03 c6                	add    %esi,%eax
458199:	89 4d c0             	mov    %ecx,-0x40(%ebp)
45819c:	8b 75 d8             	mov    -0x28(%ebp),%esi
45819f:	6a 01                	push   $0x1
4581a1:	6a 01                	push   $0x1
4581a3:	89 45 ec             	mov    %eax,-0x14(%ebp)
4581a6:	8b 4e 48             	mov    0x48(%esi),%ecx
4581a9:	e8 4d bc fd ff       	call   0x433dfb
4581ae:	e8 f8 50 fd ff       	call   0x42d2ab
4581b3:	ff 75 d0             	push   -0x30(%ebp)
4581b6:	ff 75 c0             	push   -0x40(%ebp)
4581b9:	51                   	push   %ecx
4581ba:	b9 a0 48 4a 00       	mov    $0x4a48a0,%ecx
4581bf:	e8 92 19 fd ff       	call   0x429b56
4581c4:	8b 0d 30 49 4a 00    	mov    0x4a4930,%ecx
4581ca:	33 d2                	xor    %edx,%edx
4581cc:	83 25 64 47 4a 00 00 	andl   $0x0,0x4a4764
4581d3:	e8 04 4c fd ff       	call   0x42cddc
4581d8:	8b 4e 48             	mov    0x48(%esi),%ecx
4581db:	8d 45 e0             	lea    -0x20(%ebp),%eax
4581de:	50                   	push   %eax
4581df:	e8 43 e5 fd ff       	call   0x436727
4581e4:	8b 75 dc             	mov    -0x24(%ebp),%esi
4581e7:	83 7d c4 00          	cmpl   $0x0,-0x3c(%ebp)
4581eb:	74 17                	je     0x458204
4581ed:	33 c9                	xor    %ecx,%ecx
4581ef:	e8 a9 f3 01 00       	call   0x47759d
4581f4:	8b 45 d8             	mov    -0x28(%ebp),%eax
4581f7:	6a 01                	push   $0x1
4581f9:	ff 75 c4             	push   -0x3c(%ebp)
4581fc:	8b 48 48             	mov    0x48(%eax),%ecx
4581ff:	e8 a0 94 00 00       	call   0x4616a4
458204:	8b 45 c8             	mov    -0x38(%ebp),%eax
458207:	85 c0                	test   %eax,%eax
458209:	74 1b                	je     0x458226
45820b:	33 c9                	xor    %ecx,%ecx
45820d:	41                   	inc    %ecx
45820e:	e8 8a f3 01 00       	call   0x47759d
458213:	8b 45 d8             	mov    -0x28(%ebp),%eax
458216:	6a 00                	push   $0x0
458218:	ff 75 c8             	push   -0x38(%ebp)
45821b:	8b 48 48             	mov    0x48(%eax),%ecx
45821e:	e8 81 94 00 00       	call   0x4616a4
458223:	8b 45 c8             	mov    -0x38(%ebp),%eax
458226:	85 ff                	test   %edi,%edi
458228:	75 0f                	jne    0x458239
45822a:	85 db                	test   %ebx,%ebx
45822c:	75 0b                	jne    0x458239
45822e:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
458231:	85 c9                	test   %ecx,%ecx
458233:	75 04                	jne    0x458239
458235:	85 c0                	test   %eax,%eax
458237:	74 10                	je     0x458249
458239:	b9 84 e8 00 00       	mov    $0xe884,%ecx
45823e:	e8 3b 2e fe ff       	call   0x43b07e
458243:	8b 45 c8             	mov    -0x38(%ebp),%eax
458246:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
458249:	f6 05 c0 46 4a 00 02 	testb  $0x2,0x4a46c0
458250:	74 0f                	je     0x458261
458252:	50                   	push   %eax
458253:	51                   	push   %ecx
458254:	57                   	push   %edi
458255:	53                   	push   %ebx
458256:	ff 75 cc             	push   -0x34(%ebp)
458259:	56                   	push   %esi
45825a:	6a 01                	push   $0x1
45825c:	e8 e5 0e 00 00       	call   0x459146
458261:	8d 8d 20 ff ff ff    	lea    -0xe0(%ebp),%ecx
458267:	e8 c6 ef fc ff       	call   0x427232
45826c:	e8 44 82 03 00       	call   0x4904b5
458271:	c3                   	ret
458272:	cc                   	int3
458273:	cc                   	int3
458274:	cc                   	int3
458275:	cc                   	int3
458276:	cc                   	int3
458277:	cc                   	int3
458278:	cc                   	int3
458279:	cc                   	int3
45827a:	cc                   	int3
45827b:	cc                   	int3
45827c:	cc                   	int3
45827d:	cc                   	int3
45827e:	cc                   	int3
45827f:	cc                   	int3
458280:	8b ff                	mov    %edi,%edi
458282:	55                   	push   %ebp
458283:	8b ec                	mov    %esp,%ebp
458285:	33 c0                	xor    %eax,%eax
458287:	39 41 48             	cmp    %eax,0x48(%ecx)
45828a:	74 0a                	je     0x458296
45828c:	e8 32 2f fd ff       	call   0x42b1c3
458291:	f7 d8                	neg    %eax
458293:	1b c0                	sbb    %eax,%eax
458295:	40                   	inc    %eax
458296:	56                   	push   %esi
458297:	57                   	push   %edi
458298:	8b 7d 08             	mov    0x8(%ebp),%edi
45829b:	50                   	push   %eax
45829c:	8b 17                	mov    (%edi),%edx
45829e:	8b 32                	mov    (%edx),%esi
4582a0:	8b ce                	mov    %esi,%ecx
4582a2:	ff 15 2c 81 4a 00    	call   *0x4a812c
4582a8:	8b cf                	mov    %edi,%ecx
4582aa:	ff d6                	call   *%esi
4582ac:	5f                   	pop    %edi
4582ad:	5e                   	pop    %esi
4582ae:	5d                   	pop    %ebp
4582af:	c2 04 00             	ret    $0x4
4582b2:	cc                   	int3
4582b3:	cc                   	int3
4582b4:	cc                   	int3
4582b5:	cc                   	int3
4582b6:	cc                   	int3
4582b7:	cc                   	int3
4582b8:	cc                   	int3
4582b9:	cc                   	int3
4582ba:	cc                   	int3
4582bb:	cc                   	int3
4582bc:	cc                   	int3
4582bd:	cc                   	int3
4582be:	cc                   	int3
4582bf:	cc                   	int3
4582c0:	83 79 54 00          	cmpl   $0x0,0x54(%ecx)
4582c4:	0f 85 01 00 00 00    	jne    0x4582cb
4582ca:	c3                   	ret
4582cb:	8b ff                	mov    %edi,%edi
4582cd:	53                   	push   %ebx
4582ce:	56                   	push   %esi
4582cf:	57                   	push   %edi
4582d0:	6a 01                	push   $0x1
4582d2:	8b d9                	mov    %ecx,%ebx
4582d4:	e8 5c 80 fc ff       	call   0x420335
4582d9:	8b c8                	mov    %eax,%ecx
4582db:	ff 15 40 7b 4a 00    	call   *0x4a7b40
4582e1:	8b 7b 54             	mov    0x54(%ebx),%edi
4582e4:	8b 07                	mov    (%edi),%eax
4582e6:	8b 70 60             	mov    0x60(%eax),%esi
4582e9:	8b ce                	mov    %esi,%ecx
4582eb:	ff 15 2c 81 4a 00    	call   *0x4a812c
4582f1:	8b cf                	mov    %edi,%ecx
4582f3:	ff d6                	call   *%esi
4582f5:	83 63 54 00          	andl   $0x0,0x54(%ebx)
4582f9:	5f                   	pop    %edi
4582fa:	5e                   	pop    %esi
4582fb:	5b                   	pop    %ebx
4582fc:	c3                   	ret
4582fd:	cc                   	int3
4582fe:	cc                   	int3
4582ff:	cc                   	int3
458300:	6a 08                	push   $0x8
458302:	b8 00 42 49 00       	mov    $0x494200,%eax
458307:	e8 c7 81 03 00       	call   0x4904d3
45830c:	8b f9                	mov    %ecx,%edi
45830e:	e8 3d f8 01 00       	call   0x477b50
458313:	8d 4d f0             	lea    -0x10(%ebp),%ecx
458316:	ff 15 20 74 4a 00    	call   *0x4a7420
45831c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
458320:	83 7f 54 00          	cmpl   $0x0,0x54(%edi)
458324:	8b 77 40             	mov    0x40(%edi),%esi
458327:	74 0c                	je     0x458335
458329:	8b cf                	mov    %edi,%ecx
45832b:	e8 9b ff ff ff       	call   0x4582cb
458330:	e9 87 00 00 00       	jmp    0x4583bc
458335:	68 cc 00 00 00       	push   $0xcc
45833a:	ff 15 14 74 4a 00    	call   *0x4a7414
458340:	59                   	pop    %ecx
458341:	89 45 ec             	mov    %eax,-0x14(%ebp)
458344:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
458348:	85 c0                	test   %eax,%eax
45834a:	74 0e                	je     0x45835a
45834c:	ff 77 48             	push   0x48(%edi)
45834f:	8b c8                	mov    %eax,%ecx
458351:	e8 30 fd 00 00       	call   0x468086
458356:	8b d8                	mov    %eax,%ebx
458358:	eb 02                	jmp    0x45835c
45835a:	33 db                	xor    %ebx,%ebx
45835c:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
458360:	89 5f 54             	mov    %ebx,0x54(%edi)
458363:	85 db                	test   %ebx,%ebx
458365:	74 49                	je     0x4583b0
458367:	8b 03                	mov    (%ebx),%eax
458369:	ff 76 24             	push   0x24(%esi)
45836c:	8b b0 fc 00 00 00    	mov    0xfc(%eax),%esi
458372:	8b ce                	mov    %esi,%ecx
458374:	ff 15 2c 81 4a 00    	call   *0x4a812c
45837a:	8b cb                	mov    %ebx,%ecx
45837c:	ff d6                	call   *%esi
45837e:	85 c0                	test   %eax,%eax
458380:	74 2e                	je     0x4583b0
458382:	ff 77 20             	push   0x20(%edi)
458385:	ff 15 54 7d 4a 00    	call   *0x4a7d54
45838b:	50                   	push   %eax
45838c:	ff 15 b0 76 4a 00    	call   *0x4a76b0
458392:	8b 0d 74 65 4a 00    	mov    0x4a6574,%ecx
458398:	8b f0                	mov    %eax,%esi
45839a:	6a 00                	push   $0x0
45839c:	56                   	push   %esi
45839d:	e8 e1 a0 fd ff       	call   0x432483
4583a2:	ff 76 04             	push   0x4(%esi)
4583a5:	ff 77 20             	push   0x20(%edi)
4583a8:	ff 15 94 7d 4a 00    	call   *0x4a7d94
4583ae:	eb 0c                	jmp    0x4583bc
4583b0:	6a 01                	push   $0x1
4583b2:	b9 e0 55 4a 00       	mov    $0x4a55e0,%ecx
4583b7:	e8 bd 58 ff ff       	call   0x44dc79
4583bc:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4583bf:	ff 15 1c 74 4a 00    	call   *0x4a741c
4583c5:	e8 d7 80 03 00       	call   0x4904a1
4583ca:	c3                   	ret
4583cb:	cc                   	int3
4583cc:	cc                   	int3
4583cd:	cc                   	int3
4583ce:	cc                   	int3
4583cf:	cc                   	int3
4583d0:	8b ff                	mov    %edi,%edi
4583d2:	55                   	push   %ebp
4583d3:	8b ec                	mov    %esp,%ebp
4583d5:	53                   	push   %ebx
4583d6:	8b 5d 08             	mov    0x8(%ebp),%ebx
4583d9:	33 c0                	xor    %eax,%eax
4583db:	56                   	push   %esi
4583dc:	57                   	push   %edi
4583dd:	8b f9                	mov    %ecx,%edi
4583df:	8b 33                	mov    (%ebx),%esi
4583e1:	39 47 48             	cmp    %eax,0x48(%edi)
4583e4:	8b 0e                	mov    (%esi),%ecx
4583e6:	0f 95 c0             	setne  %al
4583e9:	50                   	push   %eax
4583ea:	ff 15 2c 81 4a 00    	call   *0x4a812c
4583f0:	8b cb                	mov    %ebx,%ecx
4583f2:	ff 16                	call   *(%esi)
4583f4:	83 7f 54 00          	cmpl   $0x0,0x54(%edi)
4583f8:	8b 03                	mov    (%ebx),%eax
4583fa:	8b 70 04             	mov    0x4(%eax),%esi
4583fd:	8b ce                	mov    %esi,%ecx
4583ff:	74 04                	je     0x458405
458401:	6a 01                	push   $0x1
458403:	eb 02                	jmp    0x458407
458405:	6a 00                	push   $0x0
458407:	ff 15 2c 81 4a 00    	call   *0x4a812c
45840d:	8b cb                	mov    %ebx,%ecx
45840f:	ff d6                	call   *%esi
458411:	5f                   	pop    %edi
458412:	5e                   	pop    %esi
458413:	5b                   	pop    %ebx
458414:	5d                   	pop    %ebp
458415:	c2 04 00             	ret    $0x4
458418:	cc                   	int3
458419:	cc                   	int3
45841a:	cc                   	int3
45841b:	cc                   	int3
45841c:	cc                   	int3
45841d:	cc                   	int3
45841e:	cc                   	int3
45841f:	cc                   	int3
458420:	8b ff                	mov    %edi,%edi
458422:	55                   	push   %ebp
458423:	8b ec                	mov    %esp,%ebp
458425:	83 e4 f8             	and    $0xfffffff8,%esp
458428:	51                   	push   %ecx
458429:	56                   	push   %esi
45842a:	8b f1                	mov    %ecx,%esi
45842c:	33 c9                	xor    %ecx,%ecx
45842e:	39 0d 58 58 4a 00    	cmp    %ecx,0x4a5858
458434:	0f 94 c1             	sete   %cl
458437:	89 0d 58 58 4a 00    	mov    %ecx,0x4a5858
45843d:	e8 75 f7 01 00       	call   0x477bb7
458442:	8b ce                	mov    %esi,%ecx
458444:	e8 1f e0 ff ff       	call   0x456468
458449:	5e                   	pop    %esi
45844a:	8b e5                	mov    %ebp,%esp
45844c:	5d                   	pop    %ebp
45844d:	c3                   	ret
45844e:	cc                   	int3
45844f:	cc                   	int3
458450:	8b ff                	mov    %edi,%edi
458452:	55                   	push   %ebp
458453:	8b ec                	mov    %esp,%ebp
458455:	56                   	push   %esi
458456:	57                   	push   %edi
458457:	8b 7d 08             	mov    0x8(%ebp),%edi
45845a:	ff 35 58 58 4a 00    	push   0x4a5858
458460:	8b 07                	mov    (%edi),%eax
458462:	8b 70 04             	mov    0x4(%eax),%esi
458465:	8b ce                	mov    %esi,%ecx
458467:	ff 15 2c 81 4a 00    	call   *0x4a812c
45846d:	8b cf                	mov    %edi,%ecx
45846f:	ff d6                	call   *%esi
458471:	5f                   	pop    %edi
458472:	5e                   	pop    %esi
458473:	5d                   	pop    %ebp
458474:	c2 04 00             	ret    $0x4
458477:	cc                   	int3
458478:	cc                   	int3
458479:	cc                   	int3
45847a:	cc                   	int3
45847b:	cc                   	int3
45847c:	cc                   	int3
45847d:	cc                   	int3
45847e:	cc                   	int3
45847f:	cc                   	int3
458480:	6a 01                	push   $0x1
458482:	e8 a1 00 00 00       	call   0x458528
458487:	c3                   	ret
458488:	cc                   	int3
458489:	cc                   	int3
45848a:	cc                   	int3
45848b:	cc                   	int3
45848c:	cc                   	int3
45848d:	cc                   	int3
45848e:	cc                   	int3
45848f:	cc                   	int3
458490:	8b ff                	mov    %edi,%edi
458492:	55                   	push   %ebp
458493:	8b ec                	mov    %esp,%ebp
458495:	56                   	push   %esi
458496:	57                   	push   %edi
458497:	8b 7d 08             	mov    0x8(%ebp),%edi
45849a:	8b 37                	mov    (%edi),%esi
45849c:	e8 37 00 00 00       	call   0x4584d8
4584a1:	8b 0e                	mov    (%esi),%ecx
4584a3:	50                   	push   %eax
4584a4:	ff 15 2c 81 4a 00    	call   *0x4a812c
4584aa:	8b cf                	mov    %edi,%ecx
4584ac:	ff 16                	call   *(%esi)
4584ae:	5f                   	pop    %edi