45819a:	8b 08                	mov    (%eax),%ecx
45819c:	ff 51 34             	call   *0x34(%ecx)
45819f:	8b 45 fc             	mov    -0x4(%ebp),%eax
4581a2:	8b 50 34             	mov    0x34(%eax),%edx
4581a5:	8b 45 f0             	mov    -0x10(%ebp),%eax
4581a8:	8b 08                	mov    (%eax),%ecx
4581aa:	ff 51 40             	call   *0x40(%ecx)
4581ad:	8b 45 f8             	mov    -0x8(%ebp),%eax
4581b0:	50                   	push   %eax
4581b1:	e8 26 95 fc ff       	call   0x4216dc
4581b6:	8b f0                	mov    %eax,%esi
4581b8:	4e                   	dec    %esi
4581b9:	85 f6                	test   %esi,%esi
4581bb:	7c 7c                	jl     0x458239
4581bd:	46                   	inc    %esi
4581be:	33 db                	xor    %ebx,%ebx
4581c0:	83 ff ff             	cmp    $0xffffffff,%edi
4581c3:	74 04                	je     0x4581c9
4581c5:	3b df                	cmp    %edi,%ebx
4581c7:	75 6c                	jne    0x458235
4581c9:	8b 45 f4             	mov    -0xc(%ebp),%eax
4581cc:	e8 8b 1a fd ff       	call   0x429c5c
4581d1:	89 45 ec             	mov    %eax,-0x14(%ebp)
4581d4:	8d 55 d8             	lea    -0x28(%ebp),%edx
4581d7:	8b 45 ec             	mov    -0x14(%ebp),%eax
4581da:	e8 b5 ca fc ff       	call   0x424c94
4581df:	6a 00                	push   $0x0
4581e1:	6a 00                	push   $0x0
4581e3:	6a 00                	push   $0x0
4581e5:	8b 45 ec             	mov    -0x14(%ebp),%eax
4581e8:	e8 1f cf fc ff       	call   0x42510c
4581ed:	50                   	push   %eax
4581ee:	53                   	push   %ebx
4581ef:	8b 45 f8             	mov    -0x8(%ebp),%eax
4581f2:	50                   	push   %eax
4581f3:	e8 04 95 fc ff       	call   0x4216fc
4581f8:	8b 45 f0             	mov    -0x10(%ebp),%eax
4581fb:	e8 5c 1a fd ff       	call   0x429c5c
458200:	89 45 e8             	mov    %eax,-0x18(%ebp)
458203:	8d 55 d8             	lea    -0x28(%ebp),%edx
458206:	8b 45 e8             	mov    -0x18(%ebp),%eax
458209:	e8 86 ca fc ff       	call   0x424c94
45820e:	6a 10                	push   $0x10
458210:	6a 00                	push   $0x0
458212:	6a 00                	push   $0x0
458214:	8b 45 e8             	mov    -0x18(%ebp),%eax
458217:	e8 f0 ce fc ff       	call   0x42510c
45821c:	50                   	push   %eax
45821d:	53                   	push   %ebx
45821e:	8b 45 f8             	mov    -0x8(%ebp),%eax
458221:	50                   	push   %eax
458222:	e8 d5 94 fc ff       	call   0x4216fc
458227:	8b 4d f0             	mov    -0x10(%ebp),%ecx
45822a:	8b 55 f4             	mov    -0xc(%ebp),%edx
45822d:	8b 45 fc             	mov    -0x4(%ebp),%eax
458230:	e8 8b fa ff ff       	call   0x457cc0
458235:	43                   	inc    %ebx
458236:	4e                   	dec    %esi
458237:	75 87                	jne    0x4581c0
458239:	33 c0                	xor    %eax,%eax
45823b:	5a                   	pop    %edx
45823c:	59                   	pop    %ecx
45823d:	59                   	pop    %ecx
45823e:	64 89 10             	mov    %edx,%fs:(%eax)
458241:	68 56 82 45 00       	push   $0x458256
458246:	8b 45 f0             	mov    -0x10(%ebp),%eax
458249:	e8 ce b6 fa ff       	call   0x40391c
45824e:	c3                   	ret
45824f:	e9 5c be fa ff       	jmp    0x4040b0
458254:	eb f0                	jmp    0x458246
458256:	33 c0                	xor    %eax,%eax
458258:	5a                   	pop    %edx
458259:	59                   	pop    %ecx
45825a:	59                   	pop    %ecx
45825b:	64 89 10             	mov    %edx,%fs:(%eax)
45825e:	68 73 82 45 00       	push   $0x458273
458263:	8b 45 f4             	mov    -0xc(%ebp),%eax
458266:	e8 b1 b6 fa ff       	call   0x40391c
45826b:	c3                   	ret
45826c:	e9 3f be fa ff       	jmp    0x4040b0
458271:	eb f0                	jmp    0x458263
458273:	33 c0                	xor    %eax,%eax
458275:	5a                   	pop    %edx
458276:	59                   	pop    %ecx
458277:	59                   	pop    %ecx
458278:	64 89 10             	mov    %edx,%fs:(%eax)
45827b:	68 90 82 45 00       	push   $0x458290
458280:	8b 45 fc             	mov    -0x4(%ebp),%eax
458283:	e8 08 0b 00 00       	call   0x458d90
458288:	c3                   	ret
458289:	e9 22 be fa ff       	jmp    0x4040b0
45828e:	eb f0                	jmp    0x458280
458290:	5f                   	pop    %edi
458291:	5e                   	pop    %esi
458292:	5b                   	pop    %ebx
458293:	8b e5                	mov    %ebp,%esp
458295:	5d                   	pop    %ebp
458296:	c3                   	ret
458297:	90                   	nop
458298:	53                   	push   %ebx
458299:	56                   	push   %esi
45829a:	8b f2                	mov    %edx,%esi
45829c:	8b d8                	mov    %eax,%ebx
45829e:	85 f6                	test   %esi,%esi
4582a0:	74 13                	je     0x4582b5
4582a2:	8b c6                	mov    %esi,%eax
4582a4:	e8 db f8 ff ff       	call   0x457b84
4582a9:	8b d0                	mov    %eax,%edx
4582ab:	83 c9 ff             	or     $0xffffffff,%ecx
4582ae:	8b c3                	mov    %ebx,%eax
4582b0:	e8 3b fe ff ff       	call   0x4580f0
4582b5:	5e                   	pop    %esi
4582b6:	5b                   	pop    %ebx
4582b7:	c3                   	ret
4582b8:	53                   	push   %ebx
4582b9:	56                   	push   %esi
4582ba:	8b f2                	mov    %edx,%esi
4582bc:	8b d8                	mov    %eax,%ebx
4582be:	85 f6                	test   %esi,%esi
4582c0:	75 0a                	jne    0x4582cc
4582c2:	8b c3                	mov    %ebx,%eax
4582c4:	e8 1f f9 ff ff       	call   0x457be8
4582c9:	5e                   	pop    %esi
4582ca:	5b                   	pop    %ebx
4582cb:	c3                   	ret
4582cc:	8b c6                	mov    %esi,%eax
4582ce:	8b 15 c0 77 45 00    	mov    0x4577c0,%edx
4582d4:	e8 cf b7 fa ff       	call   0x403aa8
4582d9:	84 c0                	test   %al,%al
4582db:	0f 84 8c 00 00 00    	je     0x45836d
4582e1:	8b c3                	mov    %ebx,%eax
4582e3:	e8 54 fb ff ff       	call   0x457e3c
4582e8:	0f b6 46 41          	movzbl 0x41(%esi),%eax
4582ec:	88 43 41             	mov    %al,0x41(%ebx)
4582ef:	0f b6 46 43          	movzbl 0x43(%esi),%eax
4582f3:	88 43 43             	mov    %al,0x43(%ebx)
4582f6:	0f b6 56 40          	movzbl 0x40(%esi),%edx
4582fa:	8b c3                	mov    %ebx,%eax
4582fc:	e8 a7 01 00 00       	call   0x4584a8
458301:	0f b6 46 42          	movzbl 0x42(%esi),%eax
458305:	88 43 42             	mov    %al,0x42(%ebx)
458308:	8b c6                	mov    %esi,%eax
45830a:	e8 75 f8 ff ff       	call   0x457b84
45830f:	8b d0                	mov    %eax,%edx
458311:	8b c3                	mov    %ebx,%eax
458313:	e8 08 f8 ff ff       	call   0x457b20
458318:	8b c3                	mov    %ebx,%eax
45831a:	e8 29 f7 ff ff       	call   0x457a48
45831f:	84 c0                	test   %al,%al
458321:	75 09                	jne    0x45832c
458323:	8b c3                	mov    %ebx,%eax
458325:	e8 26 f7 ff ff       	call   0x457a50
45832a:	eb 15                	jmp    0x458341
45832c:	8b 43 30             	mov    0x30(%ebx),%eax
45832f:	50                   	push   %eax
458330:	8b 43 34             	mov    0x34(%ebx),%eax
458333:	50                   	push   %eax
458334:	8b c3                	mov    %ebx,%eax
458336:	e8 49 f8 ff ff       	call   0x457b84
45833b:	50                   	push   %eax
45833c:	e8 1b 94 fc ff       	call   0x42175c
458341:	8b c6                	mov    %esi,%eax
458343:	e8 3c f8 ff ff       	call   0x457b84
458348:	50                   	push   %eax
458349:	e8 a6 93 fc ff       	call   0x4216f4
45834e:	e8 65 f5 ff ff       	call   0x4578b8
458353:	8b d0                	mov    %eax,%edx
458355:	8b c3                	mov    %ebx,%eax
458357:	e8 ec fa ff ff       	call   0x457e48
45835c:	8b 46 48             	mov    0x48(%esi),%eax
45835f:	89 43 48             	mov    %eax,0x48(%ebx)
458362:	8b d6                	mov    %esi,%edx
458364:	8b c3                	mov    %ebx,%eax
458366:	e8 2d ff ff ff       	call   0x458298
45836b:	eb 09                	jmp    0x458376
45836d:	8b d6                	mov    %esi,%edx
45836f:	8b c3                	mov    %ebx,%eax
458371:	e8 62 04 fc ff       	call   0x4187d8
458376:	5e                   	pop    %esi
458377:	5b                   	pop    %ebx
458378:	c3                   	ret
458379:	8d 40 00             	lea    0x0(%eax),%eax
45837c:	53                   	push   %ebx
45837d:	56                   	push   %esi
45837e:	8b da                	mov    %edx,%ebx
458380:	8b f0                	mov    %eax,%esi
458382:	8b c3                	mov    %ebx,%eax
458384:	8b 15 c0 77 45 00    	mov    0x4577c0,%edx
45838a:	e8 19 b7 fa ff       	call   0x403aa8
45838f:	84 c0                	test   %al,%al
458391:	0f 84 8d 00 00 00    	je     0x458424
458397:	0f b6 46 41          	movzbl 0x41(%esi),%eax
45839b:	88 43 41             	mov    %al,0x41(%ebx)
45839e:	0f b6 46 43          	movzbl 0x43(%esi),%eax
4583a2:	88 43 43             	mov    %al,0x43(%ebx)
4583a5:	0f b6 56 40          	movzbl 0x40(%esi),%edx
4583a9:	8b c3                	mov    %ebx,%eax
4583ab:	e8 f8 00 00 00       	call   0x4584a8
4583b0:	0f b6 46 42          	movzbl 0x42(%esi),%eax
4583b4:	88 43 42             	mov    %al,0x42(%ebx)
4583b7:	8b 46 48             	mov    0x48(%esi),%eax
4583ba:	89 43 48             	mov    %eax,0x48(%ebx)
4583bd:	8b c3                	mov    %ebx,%eax
4583bf:	e8 78 fa ff ff       	call   0x457e3c
4583c4:	8b c6                	mov    %esi,%eax
4583c6:	e8 b9 f7 ff ff       	call   0x457b84
4583cb:	8b d0                	mov    %eax,%edx
4583cd:	8b c3                	mov    %ebx,%eax
4583cf:	e8 4c f7 ff ff       	call   0x457b20
4583d4:	8b c3                	mov    %ebx,%eax
4583d6:	e8 6d f6 ff ff       	call   0x457a48
4583db:	84 c0                	test   %al,%al
4583dd:	75 09                	jne    0x4583e8
4583df:	8b c3                	mov    %ebx,%eax
4583e1:	e8 6a f6 ff ff       	call   0x457a50
4583e6:	eb 15                	jmp    0x4583fd
4583e8:	8b 43 30             	mov    0x30(%ebx),%eax
4583eb:	50                   	push   %eax
4583ec:	8b 43 34             	mov    0x34(%ebx),%eax
4583ef:	50                   	push   %eax
4583f0:	8b c3                	mov    %ebx,%eax
4583f2:	e8 8d f7 ff ff       	call   0x457b84
4583f7:	50                   	push   %eax
4583f8:	e8 5f 93 fc ff       	call   0x42175c
4583fd:	8b c6                	mov    %esi,%eax
4583ff:	e8 80 f7 ff ff       	call   0x457b84
458404:	50                   	push   %eax
458405:	e8 ea 92 fc ff       	call   0x4216f4
45840a:	e8 a9 f4 ff ff       	call   0x4578b8
45840f:	8b d0                	mov    %eax,%edx
458411:	8b c3                	mov    %ebx,%eax
458413:	e8 30 fa ff ff       	call   0x457e48
458418:	8b d6                	mov    %esi,%edx
45841a:	8b c3                	mov    %ebx,%eax
45841c:	e8 77 fe ff ff       	call   0x458298
458421:	5e                   	pop    %esi
458422:	5b                   	pop    %ebx
458423:	c3                   	ret
458424:	8b d3                	mov    %ebx,%edx
458426:	8b c6                	mov    %esi,%eax
458428:	e8 8f 04 fc ff       	call   0x4188bc
45842d:	5e                   	pop    %esi
45842e:	5b                   	pop    %ebx
45842f:	c3                   	ret
458430:	55                   	push   %ebp
458431:	8b ec                	mov    %esp,%ebp
458433:	6a 00                	push   $0x0
458435:	53                   	push   %ebx
458436:	56                   	push   %esi
458437:	8b f2                	mov    %edx,%esi
458439:	8b d8                	mov    %eax,%ebx
45843b:	33 c0                	xor    %eax,%eax
45843d:	55                   	push   %ebp
45843e:	68 9c 84 45 00       	push   $0x45849c
458443:	64 ff 30             	push   %fs:(%eax)
458446:	64 89 20             	mov    %esp,%fs:(%eax)
458449:	85 f6                	test   %esi,%esi
45844b:	74 39                	je     0x458486
45844d:	8b c6                	mov    %esi,%eax
45844f:	8b 10                	mov    (%eax),%edx
458451:	ff 52 20             	call   *0x20(%edx)
458454:	3b 43 30             	cmp    0x30(%ebx),%eax
458457:	7c 0c                	jl     0x458465
458459:	8b c6                	mov    %esi,%eax
45845b:	8b 10                	mov    (%eax),%edx
45845d:	ff 52 2c             	call   *0x2c(%edx)
458460:	3b 43 34             	cmp    0x34(%ebx),%eax
458463:	7d 21                	jge    0x458486
458465:	8d 55 fc             	lea    -0x4(%ebp),%edx
458468:	a1 d0 74 4a 00       	mov    0x4a74d0,%eax
45846d:	e8 02 e2 fa ff       	call   0x406674
458472:	8b 4d fc             	mov    -0x4(%ebp),%ecx
458475:	b2 01                	mov    $0x1,%dl
458477:	a1 40 5c 41 00       	mov    0x415c40,%eax
45847c:	e8 8f 3f fb ff       	call   0x40c410
458481:	e8 0a bd fa ff       	call   0x404190
458486:	33 c0                	xor    %eax,%eax
458488:	5a                   	pop    %edx
458489:	59                   	pop    %ecx
45848a:	59                   	pop    %ecx
45848b:	64 89 10             	mov    %edx,%fs:(%eax)
45848e:	68 a3 84 45 00       	push   $0x4584a3
458493:	8d 45 fc             	lea    -0x4(%ebp),%eax
458496:	e8 ad c2 fa ff       	call   0x404748
45849b:	c3                   	ret
45849c:	e9 0f bc fa ff       	jmp    0x4040b0
4584a1:	eb f0                	jmp    0x458493
4584a3:	5e                   	pop    %esi
4584a4:	5b                   	pop    %ebx
4584a5:	59                   	pop    %ecx
4584a6:	5d                   	pop    %ebp
4584a7:	c3                   	ret
4584a8:	56                   	push   %esi
4584a9:	8b f0                	mov    %eax,%esi
4584ab:	3a 56 40             	cmp    0x40(%esi),%dl
4584ae:	74 0e                	je     0x4584be
4584b0:	88 56 40             	mov    %dl,0x40(%esi)
4584b3:	8b c6                	mov    %esi,%eax
4584b5:	66 be ef ff          	mov    $0xffef,%si
4584b9:	e8 5a b6 fa ff       	call   0x403b18
4584be:	5e                   	pop    %esi
4584bf:	c3                   	ret
4584c0:	53                   	push   %ebx
4584c1:	8b da                	mov    %edx,%ebx
4584c3:	8b cb                	mov    %ebx,%ecx
4584c5:	33 d2                	xor    %edx,%edx
4584c7:	33 c0                	xor    %eax,%eax
4584c9:	e8 8a e8 fb ff       	call   0x416d58
4584ce:	5b                   	pop    %ebx
4584cf:	c3                   	ret
4584d0:	53                   	push   %ebx
4584d1:	56                   	push   %esi
4584d2:	57                   	push   %edi
4584d3:	55                   	push   %ebp
4584d4:	8b d8                	mov    %eax,%ebx
4584d6:	c6 43 58 01          	movb   $0x1,0x58(%ebx)
4584da:	83 7b 5c 00          	cmpl   $0x0,0x5c(%ebx)
4584de:	7f 38                	jg     0x458518
4584e0:	8b 43 4c             	mov    0x4c(%ebx),%eax
4584e3:	85 c0                	test   %eax,%eax
4584e5:	74 22                	je     0x458509
4584e7:	8b 78 08             	mov    0x8(%eax),%edi
4584ea:	4f                   	dec    %edi
4584eb:	85 ff                	test   %edi,%edi
4584ed:	7c 1a                	jl     0x458509
4584ef:	47                   	inc    %edi
4584f0:	33 ed                	xor    %ebp,%ebp
4584f2:	8b d5                	mov    %ebp,%edx
4584f4:	8b 43 4c             	mov    0x4c(%ebx),%eax
4584f7:	e8 dc fc fb ff       	call   0x4181d8
4584fc:	66 be ff ff          	mov    $0xffff,%si
458500:	e8 13 b6 fa ff       	call   0x403b18
458505:	45                   	inc    %ebp
458506:	4f                   	dec    %edi
458507:	75 e9                	jne    0x4584f2
458509:	66 83 7b 62 00       	cmpw   $0x0,0x62(%ebx)
45850e:	74 08                	je     0x458518
458510:	8b d3                	mov    %ebx,%edx
458512:	8b 43 64             	mov    0x64(%ebx),%eax
458515:	ff 53 60             	call   *0x60(%ebx)
458518:	5d                   	pop    %ebp
458519:	5f                   	pop    %edi
45851a:	5e                   	pop    %esi
45851b:	5b                   	pop    %ebx
45851c:	c3                   	ret
45851d:	8d 40 00             	lea    0x0(%eax),%eax
458520:	53                   	push   %ebx
458521:	56                   	push   %esi
458522:	57                   	push   %edi
458523:	55                   	push   %ebp