46b14d:	5f                   	pop    %edi
46b14e:	8b c6                	mov    %esi,%eax
46b150:	5e                   	pop    %esi
46b151:	5b                   	pop    %ebx
46b152:	8b e5                	mov    %ebp,%esp
46b154:	5d                   	pop    %ebp
46b155:	c3                   	ret
46b156:	5f                   	pop    %edi
46b157:	5e                   	pop    %esi
46b158:	33 c0                	xor    %eax,%eax
46b15a:	5b                   	pop    %ebx
46b15b:	8b e5                	mov    %ebp,%esp
46b15d:	5d                   	pop    %ebp
46b15e:	c3                   	ret
46b15f:	cc                   	int3
46b160:	55                   	push   %ebp
46b161:	8b ec                	mov    %esp,%ebp
46b163:	8b 55 0c             	mov    0xc(%ebp),%edx
46b166:	8b 45 08             	mov    0x8(%ebp),%eax
46b169:	56                   	push   %esi
46b16a:	57                   	push   %edi
46b16b:	8b 7d 10             	mov    0x10(%ebp),%edi
46b16e:	8d 77 01             	lea    0x1(%edi),%esi
46b171:	85 d2                	test   %edx,%edx
46b173:	77 11                	ja     0x46b186
46b175:	72 07                	jb     0x46b17e
46b177:	3d 80 00 00 00       	cmp    $0x80,%eax
46b17c:	73 08                	jae    0x46b186
46b17e:	88 07                	mov    %al,(%edi)
46b180:	8b c6                	mov    %esi,%eax
46b182:	5f                   	pop    %edi
46b183:	5e                   	pop    %esi
46b184:	5d                   	pop    %ebp
46b185:	c3                   	ret
46b186:	8a c8                	mov    %al,%cl
46b188:	0f ac d0 07          	shrd   $0x7,%edx,%eax
46b18c:	80 c9 80             	or     $0x80,%cl
46b18f:	c1 ea 07             	shr    $0x7,%edx
46b192:	88 0f                	mov    %cl,(%edi)
46b194:	85 d2                	test   %edx,%edx
46b196:	77 18                	ja     0x46b1b0
46b198:	72 07                	jb     0x46b1a1
46b19a:	3d 80 00 00 00       	cmp    $0x80,%eax
46b19f:	73 0f                	jae    0x46b1b0
46b1a1:	88 06                	mov    %al,(%esi)
46b1a3:	8d 47 02             	lea    0x2(%edi),%eax
46b1a6:	5f                   	pop    %edi
46b1a7:	5e                   	pop    %esi
46b1a8:	5d                   	pop    %ebp
46b1a9:	c3                   	ret
46b1aa:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
46b1b0:	8a c8                	mov    %al,%cl
46b1b2:	8d 76 01             	lea    0x1(%esi),%esi
46b1b5:	0f ac d0 07          	shrd   $0x7,%edx,%eax
46b1b9:	80 c9 80             	or     $0x80,%cl
46b1bc:	c1 ea 07             	shr    $0x7,%edx
46b1bf:	88 4e ff             	mov    %cl,-0x1(%esi)
46b1c2:	85 d2                	test   %edx,%edx
46b1c4:	77 ea                	ja     0x46b1b0
46b1c6:	72 07                	jb     0x46b1cf
46b1c8:	3d 80 00 00 00       	cmp    $0x80,%eax
46b1cd:	73 e1                	jae    0x46b1b0
46b1cf:	88 06                	mov    %al,(%esi)
46b1d1:	8d 46 01             	lea    0x1(%esi),%eax
46b1d4:	5f                   	pop    %edi
46b1d5:	5e                   	pop    %esi
46b1d6:	5d                   	pop    %ebp
46b1d7:	c3                   	ret
46b1d8:	cc                   	int3
46b1d9:	cc                   	int3
46b1da:	cc                   	int3
46b1db:	cc                   	int3
46b1dc:	cc                   	int3
46b1dd:	cc                   	int3
46b1de:	cc                   	int3
46b1df:	cc                   	int3
46b1e0:	55                   	push   %ebp
46b1e1:	8b ec                	mov    %esp,%ebp
46b1e3:	51                   	push   %ecx
46b1e4:	53                   	push   %ebx
46b1e5:	56                   	push   %esi
46b1e6:	8b 75 0c             	mov    0xc(%ebp),%esi
46b1e9:	8b c1                	mov    %ecx,%eax
46b1eb:	57                   	push   %edi
46b1ec:	8b 7d 10             	mov    0x10(%ebp),%edi
46b1ef:	89 45 fc             	mov    %eax,-0x4(%ebp)
46b1f2:	8b 5e 10             	mov    0x10(%esi),%ebx
46b1f5:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
46b1fb:	7d 7f                	jge    0x46b27c
46b1fd:	8b 55 08             	mov    0x8(%ebp),%edx
46b200:	c1 e2 03             	shl    $0x3,%edx
46b203:	81 fa 80 00 00 00    	cmp    $0x80,%edx
46b209:	73 07                	jae    0x46b212
46b20b:	b9 01 00 00 00       	mov    $0x1,%ecx
46b210:	eb 29                	jmp    0x46b23b
46b212:	81 fa 00 40 00 00    	cmp    $0x4000,%edx
46b218:	73 07                	jae    0x46b221
46b21a:	b9 02 00 00 00       	mov    $0x2,%ecx
46b21f:	eb 1a                	jmp    0x46b23b
46b221:	81 fa 00 00 20 00    	cmp    $0x200000,%edx
46b227:	73 07                	jae    0x46b230
46b229:	b9 03 00 00 00       	mov    $0x3,%ecx
46b22e:	eb 0b                	jmp    0x46b23b
46b230:	81 fa 00 00 00 10    	cmp    $0x10000000,%edx
46b236:	1b c9                	sbb    %ecx,%ecx
46b238:	83 c1 05             	add    $0x5,%ecx
46b23b:	8b 00                	mov    (%eax),%eax
46b23d:	2b c1                	sub    %ecx,%eax
46b23f:	2b c7                	sub    %edi,%eax
46b241:	83 c0 0f             	add    $0xf,%eax
46b244:	3b c3                	cmp    %ebx,%eax
46b246:	7c 31                	jl     0x46b279
46b248:	83 ca 02             	or     $0x2,%edx
46b24b:	57                   	push   %edi
46b24c:	52                   	push   %edx
46b24d:	e8 6e 58 fe ff       	call   0x450ac0
46b252:	8b f8                	mov    %eax,%edi
46b254:	83 c4 08             	add    $0x8,%esp
46b257:	88 1f                	mov    %bl,(%edi)
46b259:	47                   	inc    %edi
46b25a:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
46b25e:	72 02                	jb     0x46b262
46b260:	8b 36                	mov    (%esi),%esi
46b262:	53                   	push   %ebx
46b263:	56                   	push   %esi
46b264:	57                   	push   %edi
46b265:	e8 66 7b 16 00       	call   0x5d2dd0
46b26a:	83 c4 0c             	add    $0xc,%esp
46b26d:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
46b270:	5f                   	pop    %edi
46b271:	5e                   	pop    %esi
46b272:	5b                   	pop    %ebx
46b273:	8b e5                	mov    %ebp,%esp
46b275:	5d                   	pop    %ebp
46b276:	c2 0c 00             	ret    $0xc
46b279:	8b 45 fc             	mov    -0x4(%ebp),%eax
46b27c:	57                   	push   %edi
46b27d:	56                   	push   %esi
46b27e:	ff 75 08             	push   0x8(%ebp)
46b281:	8b c8                	mov    %eax,%ecx
46b283:	e8 b8 f9 fe ff       	call   0x45ac40
46b288:	5f                   	pop    %edi
46b289:	5e                   	pop    %esi
46b28a:	5b                   	pop    %ebx
46b28b:	8b e5                	mov    %ebp,%esp
46b28d:	5d                   	pop    %ebp
46b28e:	c2 0c 00             	ret    $0xc
46b291:	cc                   	int3
46b292:	cc                   	int3
46b293:	cc                   	int3
46b294:	cc                   	int3
46b295:	cc                   	int3
46b296:	cc                   	int3
46b297:	cc                   	int3
46b298:	cc                   	int3
46b299:	cc                   	int3
46b29a:	cc                   	int3
46b29b:	cc                   	int3
46b29c:	cc                   	int3
46b29d:	cc                   	int3
46b29e:	cc                   	int3
46b29f:	cc                   	int3
46b2a0:	55                   	push   %ebp
46b2a1:	8b ec                	mov    %esp,%ebp
46b2a3:	83 ec 0c             	sub    $0xc,%esp
46b2a6:	8b 45 14             	mov    0x14(%ebp),%eax
46b2a9:	53                   	push   %ebx
46b2aa:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46b2ad:	56                   	push   %esi
46b2ae:	8b f1                	mov    %ecx,%esi
46b2b0:	89 5d fc             	mov    %ebx,-0x4(%ebp)
46b2b3:	8b 4d 18             	mov    0x18(%ebp),%ecx
46b2b6:	57                   	push   %edi
46b2b7:	8b 7d 08             	mov    0x8(%ebp),%edi
46b2ba:	89 75 f4             	mov    %esi,-0xc(%ebp)
46b2bd:	89 4d f8             	mov    %ecx,-0x8(%ebp)
46b2c0:	3b 06                	cmp    (%esi),%eax
46b2c2:	72 08                	jb     0x46b2cc
46b2c4:	50                   	push   %eax
46b2c5:	8b ce                	mov    %esi,%ecx
46b2c7:	e8 a4 e2 fe ff       	call   0x459570
46b2cc:	50                   	push   %eax
46b2cd:	8d 04 fd 00 00 00 00 	lea    0x0(,%edi,8),%eax
46b2d4:	83 c8 02             	or     $0x2,%eax
46b2d7:	50                   	push   %eax
46b2d8:	e8 e3 57 fe ff       	call   0x450ac0
46b2dd:	8b 55 10             	mov    0x10(%ebp),%edx
46b2e0:	83 c4 08             	add    $0x8,%esp
46b2e3:	81 fa 80 00 00 00    	cmp    $0x80,%edx
46b2e9:	72 18                	jb     0x46b303
46b2eb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
46b2f0:	8a ca                	mov    %dl,%cl
46b2f2:	c1 ea 07             	shr    $0x7,%edx
46b2f5:	80 c9 80             	or     $0x80,%cl
46b2f8:	88 08                	mov    %cl,(%eax)
46b2fa:	40                   	inc    %eax
46b2fb:	81 fa 80 00 00 00    	cmp    $0x80,%edx
46b301:	73 ed                	jae    0x46b2f0
46b303:	8b cb                	mov    %ebx,%ecx
46b305:	88 10                	mov    %dl,(%eax)
46b307:	8d 78 01             	lea    0x1(%eax),%edi
46b30a:	e8 51 3e fe ff       	call   0x44f160
46b30f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46b312:	8b d8                	mov    %eax,%ebx
46b314:	e8 97 2c ff ff       	call   0x45dfb0
46b319:	8d 04 83             	lea    (%ebx,%eax,4),%eax
46b31c:	89 45 fc             	mov    %eax,-0x4(%ebp)
46b31f:	90                   	nop
46b320:	3b 3e                	cmp    (%esi),%edi
46b322:	72 0a                	jb     0x46b32e
46b324:	57                   	push   %edi
46b325:	8b ce                	mov    %esi,%ecx
46b327:	e8 44 e2 fe ff       	call   0x459570
46b32c:	8b f8                	mov    %eax,%edi
46b32e:	8b 03                	mov    (%ebx),%eax
46b330:	99                   	cltd
46b331:	52                   	push   %edx
46b332:	50                   	push   %eax
46b333:	ff 55 f8             	call   *-0x8(%ebp)
46b336:	83 c4 08             	add    $0x8,%esp
46b339:	8d 77 01             	lea    0x1(%edi),%esi
46b33c:	85 d2                	test   %edx,%edx
46b33e:	77 0f                	ja     0x46b34f
46b340:	72 07                	jb     0x46b349
46b342:	3d 80 00 00 00       	cmp    $0x80,%eax
46b347:	73 06                	jae    0x46b34f
46b349:	88 07                	mov    %al,(%edi)
46b34b:	8b fe                	mov    %esi,%edi
46b34d:	eb 45                	jmp    0x46b394
46b34f:	8a c8                	mov    %al,%cl
46b351:	0f ac d0 07          	shrd   $0x7,%edx,%eax
46b355:	80 c9 80             	or     $0x80,%cl
46b358:	c1 ea 07             	shr    $0x7,%edx
46b35b:	88 0f                	mov    %cl,(%edi)
46b35d:	85 d2                	test   %edx,%edx
46b35f:	77 0f                	ja     0x46b370
46b361:	72 07                	jb     0x46b36a
46b363:	3d 80 00 00 00       	cmp    $0x80,%eax
46b368:	73 06                	jae    0x46b370
46b36a:	83 c7 02             	add    $0x2,%edi
46b36d:	eb 23                	jmp    0x46b392
46b36f:	90                   	nop
46b370:	8a c8                	mov    %al,%cl
46b372:	8d 76 01             	lea    0x1(%esi),%esi
46b375:	0f ac d0 07          	shrd   $0x7,%edx,%eax
46b379:	80 c9 80             	or     $0x80,%cl
46b37c:	c1 ea 07             	shr    $0x7,%edx
46b37f:	88 4e ff             	mov    %cl,-0x1(%esi)
46b382:	85 d2                	test   %edx,%edx
46b384:	77 ea                	ja     0x46b370
46b386:	72 07                	jb     0x46b38f
46b388:	3d 80 00 00 00       	cmp    $0x80,%eax
46b38d:	73 e1                	jae    0x46b370
46b38f:	8d 7e 01             	lea    0x1(%esi),%edi
46b392:	88 06                	mov    %al,(%esi)
46b394:	8b 75 f4             	mov    -0xc(%ebp),%esi
46b397:	83 c3 04             	add    $0x4,%ebx
46b39a:	3b 5d fc             	cmp    -0x4(%ebp),%ebx
46b39d:	72 81                	jb     0x46b320
46b39f:	8b c7                	mov    %edi,%eax
46b3a1:	5f                   	pop    %edi
46b3a2:	5e                   	pop    %esi
46b3a3:	5b                   	pop    %ebx
46b3a4:	8b e5                	mov    %ebp,%esp
46b3a6:	5d                   	pop    %ebp
46b3a7:	c2 14 00             	ret    $0x14
46b3aa:	cc                   	int3
46b3ab:	cc                   	int3
46b3ac:	cc                   	int3
46b3ad:	cc                   	int3
46b3ae:	cc                   	int3
46b3af:	cc                   	int3
46b3b0:	55                   	push   %ebp
46b3b1:	8b ec                	mov    %esp,%ebp
46b3b3:	8b 45 14             	mov    0x14(%ebp),%eax
46b3b6:	2b 45 30             	sub    0x30(%ebp),%eax
46b3b9:	8b 4d 34             	mov    0x34(%ebp),%ecx
46b3bc:	8b 55 20             	mov    0x20(%ebp),%edx
46b3bf:	53                   	push   %ebx
46b3c0:	56                   	push   %esi
46b3c1:	8b 75 2c             	mov    0x2c(%ebp),%esi
46b3c4:	57                   	push   %edi
46b3c5:	89 45 14             	mov    %eax,0x14(%ebp)
46b3c8:	75 0a                	jne    0x46b3d4
46b3ca:	8b 5d 28             	mov    0x28(%ebp),%ebx
46b3cd:	8b fe                	mov    %esi,%edi
46b3cf:	e9 c1 00 00 00       	jmp    0x46b495
46b3d4:	85 c9                	test   %ecx,%ecx
46b3d6:	75 0a                	jne    0x46b3e2
46b3d8:	8b 5d 28             	mov    0x28(%ebp),%ebx
46b3db:	8b fb                	mov    %ebx,%edi
46b3dd:	e9 b3 00 00 00       	jmp    0x46b495
46b3e2:	3b c1                	cmp    %ecx,%eax
46b3e4:	7f 3c                	jg     0x46b422
46b3e6:	3b c2                	cmp    %edx,%eax
46b3e8:	7f 38                	jg     0x46b422
46b3ea:	8b 7d 0c             	mov    0xc(%ebp),%edi
46b3ed:	8b df                	mov    %edi,%ebx
46b3ef:	8b 45 28             	mov    0x28(%ebp),%eax
46b3f2:	2b d8                	sub    %eax,%ebx
46b3f4:	53                   	push   %ebx
46b3f5:	50                   	push   %eax
46b3f6:	ff 75 1c             	push   0x1c(%ebp)
46b3f9:	e8 d2 79 16 00       	call   0x5d2dd0
46b3fe:	2b f7                	sub    %edi,%esi
46b400:	56                   	push   %esi
46b401:	57                   	push   %edi
46b402:	8b 7d 28             	mov    0x28(%ebp),%edi
46b405:	57                   	push   %edi
46b406:	e8 c5 79 16 00       	call   0x5d2dd0
46b40b:	53                   	push   %ebx
46b40c:	ff 75 1c             	push   0x1c(%ebp)
46b40f:	03 fe                	add    %esi,%edi
46b411:	57                   	push   %edi
46b412:	e8 b9 79 16 00       	call   0x5d2dd0
46b417:	8b 5d 28             	mov    0x28(%ebp),%ebx
46b41a:	83 c4 24             	add    $0x24,%esp
46b41d:	8b 75 2c             	mov    0x2c(%ebp),%esi
46b420:	eb 73                	jmp    0x46b495
46b422:	3b ca                	cmp    %edx,%ecx
46b424:	7f 37                	jg     0x46b45d
46b426:	8b fe                	mov    %esi,%edi
46b428:	8b 75 0c             	mov    0xc(%ebp),%esi
46b42b:	2b fe                	sub    %esi,%edi
46b42d:	57                   	push   %edi
46b42e:	56                   	push   %esi
46b42f:	ff 75 1c             	push   0x1c(%ebp)
46b432:	e8 99 79 16 00       	call   0x5d2dd0
46b437:	8b 5d 28             	mov    0x28(%ebp),%ebx
46b43a:	2b f3                	sub    %ebx,%esi
46b43c:	8b 45 2c             	mov    0x2c(%ebp),%eax
46b43f:	56                   	push   %esi
46b440:	2b c6                	sub    %esi,%eax
46b442:	53                   	push   %ebx
46b443:	50                   	push   %eax
46b444:	e8 87 79 16 00       	call   0x5d2dd0
46b449:	57                   	push   %edi
46b44a:	ff 75 1c             	push   0x1c(%ebp)
46b44d:	53                   	push   %ebx
46b44e:	e8 7d 79 16 00       	call   0x5d2dd0
46b453:	8b 75 2c             	mov    0x2c(%ebp),%esi
46b456:	83 c4 24             	add    $0x24,%esp
46b459:	03 fb                	add    %ebx,%edi
46b45b:	eb 38                	jmp    0x46b495
46b45d:	8b 7d 0c             	mov    0xc(%ebp),%edi
46b460:	8b 5d 28             	mov    0x28(%ebp),%ebx
46b463:	3b df                	cmp    %edi,%ebx
46b465:	75 04                	jne    0x46b46b
46b467:	8b fe                	mov    %esi,%edi
46b469:	eb 2a                	jmp    0x46b495