4502f8:	83 c4 18             	add    $0x18,%esp
4502fb:	89 75 d8             	mov    %esi,-0x28(%ebp)
4502fe:	8b 7d a4             	mov    -0x5c(%ebp),%edi
450301:	80 7f 01 00          	cmpb   $0x0,0x1(%edi)
450305:	8d 47 01             	lea    0x1(%edi),%eax
450308:	0f 4f f8             	cmovg  %eax,%edi
45030b:	89 7d a4             	mov    %edi,-0x5c(%ebp)
45030e:	8a 07                	mov    (%edi),%al
450310:	3c 7f                	cmp    $0x7f,%al
450312:	0f 85 58 fe ff ff    	jne    0x450170
450318:	eb 03                	jmp    0x45031d
45031a:	8b 75 d8             	mov    -0x28(%ebp),%esi
45031d:	8b 55 b4             	mov    -0x4c(%ebp),%edx
450320:	8b 4d a0             	mov    -0x60(%ebp),%ecx
450323:	8b 45 e8             	mov    -0x18(%ebp),%eax
450326:	89 45 bc             	mov    %eax,-0x44(%ebp)
450329:	83 79 24 00          	cmpl   $0x0,0x24(%ecx)
45032d:	8b 79 20             	mov    0x20(%ecx),%edi
450330:	7c 0e                	jl     0x450340
450332:	7f 04                	jg     0x450338
450334:	85 ff                	test   %edi,%edi
450336:	74 08                	je     0x450340
450338:	3b f8                	cmp    %eax,%edi
45033a:	76 04                	jbe    0x450340
45033c:	2b f8                	sub    %eax,%edi
45033e:	eb 02                	jmp    0x450342
450340:	33 ff                	xor    %edi,%edi
450342:	8b 41 14             	mov    0x14(%ecx),%eax
450345:	8b 5d 08             	mov    0x8(%ebp),%ebx
450348:	25 c0 01 00 00       	and    $0x1c0,%eax
45034d:	83 f8 40             	cmp    $0x40,%eax
450350:	0f 84 87 00 00 00    	je     0x4503dd
450356:	3d 00 01 00 00       	cmp    $0x100,%eax
45035b:	74 42                	je     0x45039f
45035d:	57                   	push   %edi
45035e:	ff 75 1c             	push   0x1c(%ebp)
450361:	8d 45 ac             	lea    -0x54(%ebp),%eax
450364:	ff 75 14             	push   0x14(%ebp)
450367:	ff 75 10             	push   0x10(%ebp)
45036a:	50                   	push   %eax
45036b:	53                   	push   %ebx
45036c:	e8 0f 03 00 00       	call   0x450680
450371:	8b 75 b4             	mov    -0x4c(%ebp),%esi
450374:	33 ff                	xor    %edi,%edi
450376:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
45037a:	56                   	push   %esi
45037b:	8b 10                	mov    (%eax),%edx
45037d:	89 55 10             	mov    %edx,0x10(%ebp)
450380:	8b 48 04             	mov    0x4(%eax),%ecx
450383:	8d 45 d8             	lea    -0x28(%ebp),%eax
450386:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
45038a:	50                   	push   %eax
45038b:	51                   	push   %ecx
45038c:	52                   	push   %edx
45038d:	8d 45 ac             	lea    -0x54(%ebp),%eax
450390:	89 4d 14             	mov    %ecx,0x14(%ebp)
450393:	50                   	push   %eax
450394:	53                   	push   %ebx
450395:	e8 46 02 00 00       	call   0x4505e0
45039a:	83 c4 30             	add    $0x30,%esp
45039d:	eb 60                	jmp    0x4503ff
45039f:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
4503a3:	8d 45 d8             	lea    -0x28(%ebp),%eax
4503a6:	52                   	push   %edx
4503a7:	0f 43 c6             	cmovae %esi,%eax
4503aa:	50                   	push   %eax
4503ab:	ff 75 14             	push   0x14(%ebp)
4503ae:	8d 45 ac             	lea    -0x54(%ebp),%eax
4503b1:	ff 75 10             	push   0x10(%ebp)
4503b4:	50                   	push   %eax
4503b5:	53                   	push   %ebx
4503b6:	e8 25 02 00 00       	call   0x4505e0
4503bb:	57                   	push   %edi
4503bc:	ff 75 1c             	push   0x1c(%ebp)
4503bf:	8b 08                	mov    (%eax),%ecx
4503c1:	89 4d 10             	mov    %ecx,0x10(%ebp)
4503c4:	8b 40 04             	mov    0x4(%eax),%eax
4503c7:	50                   	push   %eax
4503c8:	89 45 14             	mov    %eax,0x14(%ebp)
4503cb:	8d 45 ac             	lea    -0x54(%ebp),%eax
4503ce:	51                   	push   %ecx
4503cf:	50                   	push   %eax
4503d0:	53                   	push   %ebx
4503d1:	e8 aa 02 00 00       	call   0x450680
4503d6:	83 c4 30             	add    $0x30,%esp
4503d9:	33 ff                	xor    %edi,%edi
4503db:	eb 1f                	jmp    0x4503fc
4503dd:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
4503e1:	8d 45 d8             	lea    -0x28(%ebp),%eax
4503e4:	52                   	push   %edx
4503e5:	0f 43 c6             	cmovae %esi,%eax
4503e8:	50                   	push   %eax
4503e9:	ff 75 14             	push   0x14(%ebp)
4503ec:	8d 45 ac             	lea    -0x54(%ebp),%eax
4503ef:	ff 75 10             	push   0x10(%ebp)
4503f2:	50                   	push   %eax
4503f3:	53                   	push   %ebx
4503f4:	e8 e7 01 00 00       	call   0x4505e0
4503f9:	83 c4 18             	add    $0x18,%esp
4503fc:	8b 75 b4             	mov    -0x4c(%ebp),%esi
4503ff:	8b 10                	mov    (%eax),%edx
450401:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
450405:	89 55 10             	mov    %edx,0x10(%ebp)
450408:	8b 48 04             	mov    0x4(%eax),%ecx
45040b:	8d 45 d8             	lea    -0x28(%ebp),%eax
45040e:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
450412:	29 75 bc             	sub    %esi,-0x44(%ebp)
450415:	03 c6                	add    %esi,%eax
450417:	ff 75 bc             	push   -0x44(%ebp)
45041a:	89 4d 14             	mov    %ecx,0x14(%ebp)
45041d:	50                   	push   %eax
45041e:	51                   	push   %ecx
45041f:	52                   	push   %edx
450420:	8d 45 ac             	lea    -0x54(%ebp),%eax
450423:	50                   	push   %eax
450424:	53                   	push   %ebx
450425:	e8 b6 01 00 00       	call   0x4505e0
45042a:	8b 55 a0             	mov    -0x60(%ebp),%edx
45042d:	8b 75 90             	mov    -0x70(%ebp),%esi
450430:	57                   	push   %edi
450431:	8b 08                	mov    (%eax),%ecx
450433:	ff 75 1c             	push   0x1c(%ebp)
450436:	89 4d 10             	mov    %ecx,0x10(%ebp)
450439:	8b 40 04             	mov    0x4(%eax),%eax
45043c:	50                   	push   %eax
45043d:	51                   	push   %ecx
45043e:	56                   	push   %esi
45043f:	53                   	push   %ebx
450440:	89 45 14             	mov    %eax,0x14(%ebp)
450443:	c7 42 20 00 00 00 00 	movl   $0x0,0x20(%edx)
45044a:	c7 42 24 00 00 00 00 	movl   $0x0,0x24(%edx)
450451:	e8 2a 02 00 00       	call   0x450680
450456:	8b 55 d4             	mov    -0x2c(%ebp),%edx
450459:	83 c4 30             	add    $0x30,%esp
45045c:	83 fa 10             	cmp    $0x10,%edx
45045f:	72 28                	jb     0x450489
450461:	8b 4d c0             	mov    -0x40(%ebp),%ecx
450464:	42                   	inc    %edx
450465:	8b c1                	mov    %ecx,%eax
450467:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
45046d:	72 10                	jb     0x45047f
45046f:	8b 49 fc             	mov    -0x4(%ecx),%ecx
450472:	83 c2 23             	add    $0x23,%edx
450475:	2b c1                	sub    %ecx,%eax
450477:	83 c0 fc             	add    $0xfffffffc,%eax
45047a:	83 f8 1f             	cmp    $0x1f,%eax
45047d:	77 74                	ja     0x4504f3
45047f:	52                   	push   %edx
450480:	51                   	push   %ecx
450481:	e8 ec 0b 19 00       	call   0x5e1072
450486:	83 c4 08             	add    $0x8,%esp
450489:	8b 55 ec             	mov    -0x14(%ebp),%edx
45048c:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
450493:	c7 45 d4 0f 00 00 00 	movl   $0xf,-0x2c(%ebp)
45049a:	c6 45 c0 00          	movb   $0x0,-0x40(%ebp)
45049e:	83 fa 10             	cmp    $0x10,%edx
4504a1:	72 28                	jb     0x4504cb
4504a3:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4504a6:	42                   	inc    %edx
4504a7:	8b c1                	mov    %ecx,%eax
4504a9:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4504af:	72 10                	jb     0x4504c1
4504b1:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4504b4:	83 c2 23             	add    $0x23,%edx
4504b7:	2b c1                	sub    %ecx,%eax
4504b9:	83 c0 fc             	add    $0xfffffffc,%eax
4504bc:	83 f8 1f             	cmp    $0x1f,%eax
4504bf:	77 32                	ja     0x4504f3
4504c1:	52                   	push   %edx
4504c2:	51                   	push   %ecx
4504c3:	e8 aa 0b 19 00       	call   0x5e1072
4504c8:	83 c4 08             	add    $0x8,%esp
4504cb:	8b c6                	mov    %esi,%eax
4504cd:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4504d0:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4504d7:	59                   	pop    %ecx
4504d8:	5f                   	pop    %edi
4504d9:	5e                   	pop    %esi
4504da:	5b                   	pop    %ebx
4504db:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4504de:	33 cd                	xor    %ebp,%ecx
4504e0:	e8 f5 0f 19 00       	call   0x5e14da
4504e5:	8b e5                	mov    %ebp,%esp
4504e7:	5d                   	pop    %ebp
4504e8:	c3                   	ret
4504e9:	e8 42 4b ff ff       	call   0x445030
4504ee:	e8 5d 4b ff ff       	call   0x445050
4504f3:	e8 37 ca 19 00       	call   0x5ecf2f
4504f8:	cc                   	int3
4504f9:	cc                   	int3
4504fa:	cc                   	int3
4504fb:	cc                   	int3
4504fc:	cc                   	int3
4504fd:	cc                   	int3
4504fe:	cc                   	int3
4504ff:	cc                   	int3
450500:	55                   	push   %ebp
450501:	8b ec                	mov    %esp,%ebp
450503:	6a ff                	push   $0xffffffff
450505:	68 60 e0 64 00       	push   $0x64e060
45050a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
450510:	50                   	push   %eax
450511:	83 ec 20             	sub    $0x20,%esp
450514:	53                   	push   %ebx
450515:	56                   	push   %esi
450516:	57                   	push   %edi
450517:	a1 d4 89 72 00       	mov    0x7289d4,%eax
45051c:	33 c5                	xor    %ebp,%eax
45051e:	50                   	push   %eax
45051f:	8d 45 f4             	lea    -0xc(%ebp),%eax
450522:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
450528:	89 65 f0             	mov    %esp,-0x10(%ebp)
45052b:	8b d9                	mov    %ecx,%ebx
45052d:	8b 03                	mov    (%ebx),%eax
45052f:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
450536:	8b 40 04             	mov    0x4(%eax),%eax
450539:	83 7c 18 0c 00       	cmpl   $0x0,0xc(%eax,%ebx,1)
45053e:	75 44                	jne    0x450584
450540:	f6 44 18 14 02       	testb  $0x2,0x14(%eax,%ebx,1)
450545:	74 3d                	je     0x450584
450547:	8b 7c 18 38          	mov    0x38(%eax,%ebx,1),%edi
45054b:	8b 07                	mov    (%edi),%eax
45054d:	8b 70 34             	mov    0x34(%eax),%esi
450550:	8b ce                	mov    %esi,%ecx
450552:	ff 15 e0 24 68 00    	call   *0x6824e0
450558:	8b cf                	mov    %edi,%ecx
45055a:	ff d6                	call   *%esi
45055c:	83 f8 ff             	cmp    $0xffffffff,%eax
45055f:	75 23                	jne    0x450584
450561:	8b 03                	mov    (%ebx),%eax
450563:	8b 48 04             	mov    0x4(%eax),%ecx
450566:	8b 44 19 0c          	mov    0xc(%ecx,%ebx,1),%eax
45056a:	83 e0 13             	and    $0x13,%eax
45056d:	83 c8 04             	or     $0x4,%eax
450570:	89 44 19 0c          	mov    %eax,0xc(%ecx,%ebx,1)
450574:	8b 4c 19 10          	mov    0x10(%ecx,%ebx,1),%ecx
450578:	23 c8                	and    %eax,%ecx
45057a:	75 1a                	jne    0x450596
45057c:	eb 06                	jmp    0x450584
45057e:	b8 84 05 45 00       	mov    $0x450584,%eax
450583:	c3                   	ret
450584:	8b 4d f4             	mov    -0xc(%ebp),%ecx
450587:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45058e:	59                   	pop    %ecx
45058f:	5f                   	pop    %edi
450590:	5e                   	pop    %esi
450591:	5b                   	pop    %ebx
450592:	8b e5                	mov    %ebp,%esp
450594:	5d                   	pop    %ebp
450595:	c3                   	ret
450596:	f6 c1 04             	test   $0x4,%cl
450599:	74 07                	je     0x4505a2
45059b:	be 34 c4 68 00       	mov    $0x68c434,%esi
4505a0:	eb 10                	jmp    0x4505b2
4505a2:	f6 c1 02             	test   $0x2,%cl
4505a5:	be 4c c4 68 00       	mov    $0x68c44c,%esi
4505aa:	b8 64 c4 68 00       	mov    $0x68c464,%eax
4505af:	0f 44 f0             	cmove  %eax,%esi
4505b2:	8d 45 e8             	lea    -0x18(%ebp),%eax
4505b5:	6a 01                	push   $0x1
4505b7:	50                   	push   %eax
4505b8:	e8 13 9a fe ff       	call   0x439fd0
4505bd:	83 c4 08             	add    $0x8,%esp
4505c0:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4505c3:	50                   	push   %eax
4505c4:	56                   	push   %esi
4505c5:	e8 26 9f fe ff       	call   0x43a4f0
4505ca:	68 0c 60 70 00       	push   $0x70600c
4505cf:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4505d2:	50                   	push   %eax
4505d3:	e8 5a 24 19 00       	call   0x5e2a32
4505d8:	cc                   	int3
4505d9:	cc                   	int3
4505da:	cc                   	int3
4505db:	cc                   	int3
4505dc:	cc                   	int3
4505dd:	cc                   	int3
4505de:	cc                   	int3
4505df:	cc                   	int3
4505e0:	55                   	push   %ebp
4505e1:	8b ec                	mov    %esp,%ebp
4505e3:	83 ec 0c             	sub    $0xc,%esp
4505e6:	8b 45 0c             	mov    0xc(%ebp),%eax
4505e9:	53                   	push   %ebx
4505ea:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
4505ed:	89 45 f4             	mov    %eax,-0xc(%ebp)
4505f0:	56                   	push   %esi
4505f1:	8b 75 18             	mov    0x18(%ebp),%esi
4505f4:	89 75 f8             	mov    %esi,-0x8(%ebp)
4505f7:	57                   	push   %edi
4505f8:	8b 7d 14             	mov    0x14(%ebp),%edi
4505fb:	85 db                	test   %ebx,%ebx
4505fd:	74 63                	je     0x450662
4505ff:	90                   	nop
450600:	85 ff                	test   %edi,%edi
450602:	74 4e                	je     0x450652
450604:	8a 06                	mov    (%esi),%al
450606:	88 45 ff             	mov    %al,-0x1(%ebp)
450609:	8b 47 20             	mov    0x20(%edi),%eax
45060c:	83 38 00             	cmpl   $0x0,(%eax)
45060f:	74 20                	je     0x450631
450611:	8b 4f 30             	mov    0x30(%edi),%ecx
450614:	8b 01                	mov    (%ecx),%eax
450616:	85 c0                	test   %eax,%eax
450618:	7e 17                	jle    0x450631
45061a:	48                   	dec    %eax
45061b:	89 01                	mov    %eax,(%ecx)
45061d:	8b 4f 20             	mov    0x20(%edi),%ecx
450620:	8b 11                	mov    (%ecx),%edx
450622:	8d 42 01             	lea    0x1(%edx),%eax
450625:	89 01                	mov    %eax,(%ecx)
450627:	8a 45 ff             	mov    -0x1(%ebp),%al
45062a:	88 02                	mov    %al,(%edx)
45062c:	0f b6 c0             	movzbl %al,%eax
45062f:	eb 19                	jmp    0x45064a
450631:	8b 17                	mov    (%edi),%edx
450633:	0f b6 45 ff          	movzbl -0x1(%ebp),%eax
450637:	50                   	push   %eax
450638:	8b 72 0c             	mov    0xc(%edx),%esi
45063b:	8b ce                	mov    %esi,%ecx
45063d:	ff 15 e0 24 68 00    	call   *0x6824e0
450643:	8b cf                	mov    %edi,%ecx
450645:	ff d6                	call   *%esi
450647:	8b 75 f8             	mov    -0x8(%ebp),%esi
45064a:	8b 7d 14             	mov    0x14(%ebp),%edi
45064d:	83 f8 ff             	cmp    $0xffffffff,%eax
450650:	75 04                	jne    0x450656
450652:	c6 45 10 01          	movb   $0x1,0x10(%ebp)
450656:	46                   	inc    %esi
450657:	89 75 f8             	mov    %esi,-0x8(%ebp)
45065a:	83 eb 01             	sub    $0x1,%ebx
45065d:	75 a1                	jne    0x450600
45065f:	8b 45 f4             	mov    -0xc(%ebp),%eax
450662:	8b 4d 10             	mov    0x10(%ebp),%ecx
450665:	89 78 04             	mov    %edi,0x4(%eax)
450668:	5f                   	pop    %edi
450669:	5e                   	pop    %esi
45066a:	89 08                	mov    %ecx,(%eax)
45066c:	5b                   	pop    %ebx
45066d:	8b e5                	mov    %ebp,%esp
45066f:	5d                   	pop    %ebp
450670:	c3                   	ret
450671:	cc                   	int3
450672:	cc                   	int3
450673:	cc                   	int3
450674:	cc                   	int3
450675:	cc                   	int3
450676:	cc                   	int3
450677:	cc                   	int3
450678:	cc                   	int3