4ae08e:	51                   	push   %ecx
4ae08f:	8b ce                	mov    %esi,%ecx
4ae091:	e8 aa 71 f9 ff       	call   0x445240
4ae096:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4ae099:	33 c0                	xor    %eax,%eax
4ae09b:	5f                   	pop    %edi
4ae09c:	33 cd                	xor    %ebp,%ecx
4ae09e:	5e                   	pop    %esi
4ae09f:	e8 36 34 13 00       	call   0x5e14da
4ae0a4:	8b e5                	mov    %ebp,%esp
4ae0a6:	5d                   	pop    %ebp
4ae0a7:	c3                   	ret
4ae0a8:	cc                   	int3
4ae0a9:	cc                   	int3
4ae0aa:	cc                   	int3
4ae0ab:	cc                   	int3
4ae0ac:	cc                   	int3
4ae0ad:	cc                   	int3
4ae0ae:	cc                   	int3
4ae0af:	cc                   	int3
4ae0b0:	55                   	push   %ebp
4ae0b1:	8b ec                	mov    %esp,%ebp
4ae0b3:	6a ff                	push   $0xffffffff
4ae0b5:	68 30 a1 65 00       	push   $0x65a130
4ae0ba:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4ae0c0:	50                   	push   %eax
4ae0c1:	83 ec 08             	sub    $0x8,%esp
4ae0c4:	53                   	push   %ebx
4ae0c5:	56                   	push   %esi
4ae0c6:	a1 d4 89 72 00       	mov    0x7289d4,%eax
4ae0cb:	33 c5                	xor    %ebp,%eax
4ae0cd:	50                   	push   %eax
4ae0ce:	8d 45 f4             	lea    -0xc(%ebp),%eax
4ae0d1:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4ae0d7:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
4ae0db:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4ae0e2:	75 09                	jne    0x4ae0ed
4ae0e4:	8b 5d 30             	mov    0x30(%ebp),%ebx
4ae0e7:	f7 db                	neg    %ebx
4ae0e9:	1b db                	sbb    %ebx,%ebx
4ae0eb:	eb 11                	jmp    0x4ae0fe
4ae0ed:	83 7d 30 00          	cmpl   $0x0,0x30(%ebp)
4ae0f1:	bb fe ff ff ff       	mov    $0xfffffffe,%ebx
4ae0f6:	b8 01 00 00 00       	mov    $0x1,%eax
4ae0fb:	0f 44 d8             	cmove  %eax,%ebx
4ae0fe:	83 fb fe             	cmp    $0xfffffffe,%ebx
4ae101:	75 62                	jne    0x4ae165
4ae103:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
4ae10a:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
4ae111:	8d 45 f0             	lea    -0x10(%ebp),%eax
4ae114:	50                   	push   %eax
4ae115:	8d 45 08             	lea    0x8(%ebp),%eax
4ae118:	50                   	push   %eax
4ae119:	e8 e2 00 00 00       	call   0x4ae200
4ae11e:	8b f0                	mov    %eax,%esi
4ae120:	8d 45 ec             	lea    -0x14(%ebp),%eax
4ae123:	50                   	push   %eax
4ae124:	8d 45 20             	lea    0x20(%ebp),%eax
4ae127:	50                   	push   %eax
4ae128:	e8 d3 00 00 00       	call   0x4ae200
4ae12d:	83 c4 10             	add    $0x10,%esp
4ae130:	83 fe ff             	cmp    $0xffffffff,%esi
4ae133:	75 10                	jne    0x4ae145
4ae135:	3b c6                	cmp    %esi,%eax
4ae137:	0f 84 92 00 00 00    	je     0x4ae1cf
4ae13d:	85 c0                	test   %eax,%eax
4ae13f:	74 d0                	je     0x4ae111
4ae141:	0b de                	or     %esi,%ebx
4ae143:	eb 20                	jmp    0x4ae165
4ae145:	83 f8 ff             	cmp    $0xffffffff,%eax
4ae148:	75 09                	jne    0x4ae153
4ae14a:	85 f6                	test   %esi,%esi
4ae14c:	74 c3                	je     0x4ae111
4ae14e:	8d 58 02             	lea    0x2(%eax),%ebx
4ae151:	eb 12                	jmp    0x4ae165
4ae153:	3b f0                	cmp    %eax,%esi
4ae155:	74 ba                	je     0x4ae111
4ae157:	33 db                	xor    %ebx,%ebx
4ae159:	3b f0                	cmp    %eax,%esi
4ae15b:	0f 9d c3             	setge  %bl
4ae15e:	8d 1c 5d ff ff ff ff 	lea    -0x1(,%ebx,2),%ebx
4ae165:	8b 55 1c             	mov    0x1c(%ebp),%edx
4ae168:	83 fa 10             	cmp    $0x10,%edx
4ae16b:	72 28                	jb     0x4ae195
4ae16d:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ae170:	42                   	inc    %edx
4ae171:	8b c1                	mov    %ecx,%eax
4ae173:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4ae179:	72 10                	jb     0x4ae18b
4ae17b:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4ae17e:	83 c2 23             	add    $0x23,%edx
4ae181:	2b c1                	sub    %ecx,%eax
4ae183:	83 c0 fc             	add    $0xfffffffc,%eax
4ae186:	83 f8 1f             	cmp    $0x1f,%eax
4ae189:	77 65                	ja     0x4ae1f0
4ae18b:	52                   	push   %edx
4ae18c:	51                   	push   %ecx
4ae18d:	e8 e0 2e 13 00       	call   0x5e1072
4ae192:	83 c4 08             	add    $0x8,%esp
4ae195:	8b 55 34             	mov    0x34(%ebp),%edx
4ae198:	c7 45 18 00 00 00 00 	movl   $0x0,0x18(%ebp)
4ae19f:	c7 45 1c 0f 00 00 00 	movl   $0xf,0x1c(%ebp)
4ae1a6:	c6 45 08 00          	movb   $0x0,0x8(%ebp)
4ae1aa:	83 fa 10             	cmp    $0x10,%edx
4ae1ad:	72 2e                	jb     0x4ae1dd
4ae1af:	8b 4d 20             	mov    0x20(%ebp),%ecx
4ae1b2:	42                   	inc    %edx
4ae1b3:	8b c1                	mov    %ecx,%eax
4ae1b5:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4ae1bb:	72 16                	jb     0x4ae1d3
4ae1bd:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4ae1c0:	83 c2 23             	add    $0x23,%edx
4ae1c3:	2b c1                	sub    %ecx,%eax
4ae1c5:	83 c0 fc             	add    $0xfffffffc,%eax
4ae1c8:	83 f8 1f             	cmp    $0x1f,%eax
4ae1cb:	77 23                	ja     0x4ae1f0
4ae1cd:	eb 04                	jmp    0x4ae1d3
4ae1cf:	33 db                	xor    %ebx,%ebx
4ae1d1:	eb 92                	jmp    0x4ae165
4ae1d3:	52                   	push   %edx
4ae1d4:	51                   	push   %ecx
4ae1d5:	e8 98 2e 13 00       	call   0x5e1072
4ae1da:	83 c4 08             	add    $0x8,%esp
4ae1dd:	8b c3                	mov    %ebx,%eax
4ae1df:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4ae1e2:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4ae1e9:	59                   	pop    %ecx
4ae1ea:	5e                   	pop    %esi
4ae1eb:	5b                   	pop    %ebx
4ae1ec:	8b e5                	mov    %ebp,%esp
4ae1ee:	5d                   	pop    %ebp
4ae1ef:	c3                   	ret
4ae1f0:	e8 3a ed 13 00       	call   0x5ecf2f
4ae1f5:	cc                   	int3
4ae1f6:	cc                   	int3
4ae1f7:	cc                   	int3
4ae1f8:	cc                   	int3
4ae1f9:	cc                   	int3
4ae1fa:	cc                   	int3
4ae1fb:	cc                   	int3
4ae1fc:	cc                   	int3
4ae1fd:	cc                   	int3
4ae1fe:	cc                   	int3
4ae1ff:	cc                   	int3
4ae200:	55                   	push   %ebp
4ae201:	8b ec                	mov    %esp,%ebp
4ae203:	83 ec 24             	sub    $0x24,%esp
4ae206:	a1 d4 89 72 00       	mov    0x7289d4,%eax
4ae20b:	33 c5                	xor    %ebp,%eax
4ae20d:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ae210:	8b 45 0c             	mov    0xc(%ebp),%eax
4ae213:	56                   	push   %esi
4ae214:	8b 75 08             	mov    0x8(%ebp),%esi
4ae217:	57                   	push   %edi
4ae218:	8b 08                	mov    (%eax),%ecx
4ae21a:	89 45 dc             	mov    %eax,-0x24(%ebp)
4ae21d:	8b 7e 10             	mov    0x10(%esi),%edi
4ae220:	8b c7                	mov    %edi,%eax
4ae222:	2b c1                	sub    %ecx,%eax
4ae224:	85 c0                	test   %eax,%eax
4ae226:	7f 13                	jg     0x4ae23b
4ae228:	5f                   	pop    %edi
4ae229:	83 c8 ff             	or     $0xffffffff,%eax
4ae22c:	5e                   	pop    %esi
4ae22d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4ae230:	33 cd                	xor    %ebp,%ecx
4ae232:	e8 a3 32 13 00       	call   0x5e14da
4ae237:	8b e5                	mov    %ebp,%esp
4ae239:	5d                   	pop    %ebp
4ae23a:	c3                   	ret
4ae23b:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
4ae23f:	8b d6                	mov    %esi,%edx
4ae241:	89 75 e0             	mov    %esi,-0x20(%ebp)
4ae244:	72 05                	jb     0x4ae24b
4ae246:	8b 16                	mov    (%esi),%edx
4ae248:	89 55 e0             	mov    %edx,-0x20(%ebp)
4ae24b:	53                   	push   %ebx
4ae24c:	3b cf                	cmp    %edi,%ecx
4ae24e:	73 1e                	jae    0x4ae26e
4ae250:	8b c7                	mov    %edi,%eax
4ae252:	2b c1                	sub    %ecx,%eax
4ae254:	50                   	push   %eax
4ae255:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
4ae258:	6a 2e                	push   $0x2e
4ae25a:	50                   	push   %eax
4ae25b:	e8 f0 4b 13 00       	call   0x5e2e50
4ae260:	8b d8                	mov    %eax,%ebx
4ae262:	83 c4 0c             	add    $0xc,%esp
4ae265:	85 db                	test   %ebx,%ebx
4ae267:	74 05                	je     0x4ae26e
4ae269:	2b 5d e0             	sub    -0x20(%ebp),%ebx
4ae26c:	eb 03                	jmp    0x4ae271
4ae26e:	83 cb ff             	or     $0xffffffff,%ebx
4ae271:	8b 55 dc             	mov    -0x24(%ebp),%edx
4ae274:	83 fb ff             	cmp    $0xffffffff,%ebx
4ae277:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
4ae27e:	0f 44 df             	cmove  %edi,%ebx
4ae281:	c7 45 f8 0f 00 00 00 	movl   $0xf,-0x8(%ebp)
4ae288:	8b cb                	mov    %ebx,%ecx
4ae28a:	c6 45 e4 00          	movb   $0x0,-0x1c(%ebp)
4ae28e:	8b 02                	mov    (%edx),%eax
4ae290:	2b c8                	sub    %eax,%ecx
4ae292:	3b f8                	cmp    %eax,%edi
4ae294:	0f 82 80 00 00 00    	jb     0x4ae31a
4ae29a:	2b f8                	sub    %eax,%edi
4ae29c:	3b f9                	cmp    %ecx,%edi
4ae29e:	0f 42 cf             	cmovb  %edi,%ecx
4ae2a1:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
4ae2a5:	72 02                	jb     0x4ae2a9
4ae2a7:	8b 36                	mov    (%esi),%esi
4ae2a9:	51                   	push   %ecx
4ae2aa:	03 c6                	add    %esi,%eax
4ae2ac:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4ae2af:	50                   	push   %eax
4ae2b0:	e8 8b 6f f9 ff       	call   0x445240
4ae2b5:	83 7d f8 10          	cmpl   $0x10,-0x8(%ebp)
4ae2b9:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4ae2bc:	6a 0a                	push   $0xa
4ae2be:	0f 43 45 e4          	cmovae -0x1c(%ebp),%eax
4ae2c2:	6a 00                	push   $0x0
4ae2c4:	50                   	push   %eax
4ae2c5:	e8 3e fa 13 00       	call   0x5edd08
4ae2ca:	8b 55 f8             	mov    -0x8(%ebp),%edx
4ae2cd:	83 c4 0c             	add    $0xc,%esp
4ae2d0:	8b f0                	mov    %eax,%esi
4ae2d2:	83 fa 10             	cmp    $0x10,%edx
4ae2d5:	72 28                	jb     0x4ae2ff
4ae2d7:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4ae2da:	42                   	inc    %edx
4ae2db:	8b c1                	mov    %ecx,%eax
4ae2dd:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4ae2e3:	72 10                	jb     0x4ae2f5
4ae2e5:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4ae2e8:	83 c2 23             	add    $0x23,%edx
4ae2eb:	2b c1                	sub    %ecx,%eax
4ae2ed:	83 c0 fc             	add    $0xfffffffc,%eax
4ae2f0:	83 f8 1f             	cmp    $0x1f,%eax
4ae2f3:	77 2a                	ja     0x4ae31f
4ae2f5:	52                   	push   %edx
4ae2f6:	51                   	push   %ecx
4ae2f7:	e8 76 2d 13 00       	call   0x5e1072
4ae2fc:	83 c4 08             	add    $0x8,%esp
4ae2ff:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4ae302:	8d 43 01             	lea    0x1(%ebx),%eax
4ae305:	5b                   	pop    %ebx
4ae306:	5f                   	pop    %edi
4ae307:	89 01                	mov    %eax,(%ecx)
4ae309:	8b c6                	mov    %esi,%eax
4ae30b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4ae30e:	33 cd                	xor    %ebp,%ecx
4ae310:	5e                   	pop    %esi
4ae311:	e8 c4 31 13 00       	call   0x5e14da
4ae316:	8b e5                	mov    %ebp,%esp
4ae318:	5d                   	pop    %ebp
4ae319:	c3                   	ret
4ae31a:	e8 31 6d f9 ff       	call   0x445050
4ae31f:	e8 0b ec 13 00       	call   0x5ecf2f
4ae324:	cc                   	int3
4ae325:	cc                   	int3
4ae326:	cc                   	int3
4ae327:	cc                   	int3
4ae328:	cc                   	int3
4ae329:	cc                   	int3
4ae32a:	cc                   	int3
4ae32b:	cc                   	int3
4ae32c:	cc                   	int3
4ae32d:	cc                   	int3
4ae32e:	cc                   	int3
4ae32f:	cc                   	int3
4ae330:	56                   	push   %esi
4ae331:	8b 74 24 08          	mov    0x8(%esp),%esi
4ae335:	85 f6                	test   %esi,%esi
4ae337:	74 23                	je     0x4ae35c
4ae339:	8b 46 10             	mov    0x10(%esi),%eax
4ae33c:	85 c0                	test   %eax,%eax
4ae33e:	75 21                	jne    0x4ae361
4ae340:	8b 16                	mov    (%esi),%edx
4ae342:	85 d2                	test   %edx,%edx
4ae344:	7e 16                	jle    0x4ae35c
4ae346:	8b 4e 04             	mov    0x4(%esi),%ecx
4ae349:	8b 74 24 0c          	mov    0xc(%esp),%esi
4ae34d:	0f 1f 00             	nopl   (%eax)
4ae350:	39 31                	cmp    %esi,(%ecx)
4ae352:	74 56                	je     0x4ae3aa
4ae354:	40                   	inc    %eax
4ae355:	83 c1 04             	add    $0x4,%ecx
4ae358:	3b c2                	cmp    %edx,%eax
4ae35a:	7c f4                	jl     0x4ae350
4ae35c:	83 c8 ff             	or     $0xffffffff,%eax
4ae35f:	5e                   	pop    %esi
4ae360:	c3                   	ret
4ae361:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
4ae365:	75 17                	jne    0x4ae37e
4ae367:	50                   	push   %eax
4ae368:	6a 04                	push   $0x4
4ae36a:	ff 36                	push   (%esi)
4ae36c:	ff 76 04             	push   0x4(%esi)
4ae36f:	e8 6c 09 15 00       	call   0x5fece0
4ae374:	83 c4 10             	add    $0x10,%esp
4ae377:	c7 46 08 01 00 00 00 	movl   $0x1,0x8(%esi)
4ae37e:	83 7c 24 0c 00       	cmpl   $0x0,0xc(%esp)
4ae383:	74 d7                	je     0x4ae35c
4ae385:	ff 74 24 10          	push   0x10(%esp)
4ae389:	8d 44 24 10          	lea    0x10(%esp),%eax
4ae38d:	ff 76 10             	push   0x10(%esi)
4ae390:	6a 04                	push   $0x4
4ae392:	ff 36                	push   (%esi)
4ae394:	ff 76 04             	push   0x4(%esi)
4ae397:	50                   	push   %eax
4ae398:	e8 e3 92 ff ff       	call   0x4a7680
4ae39d:	83 c4 18             	add    $0x18,%esp
4ae3a0:	85 c0                	test   %eax,%eax
4ae3a2:	74 b8                	je     0x4ae35c
4ae3a4:	2b 46 04             	sub    0x4(%esi),%eax
4ae3a7:	c1 f8 02             	sar    $0x2,%eax
4ae3aa:	5e                   	pop    %esi
4ae3ab:	c3                   	ret
4ae3ac:	cc                   	int3
4ae3ad:	cc                   	int3
4ae3ae:	cc                   	int3
4ae3af:	cc                   	int3
4ae3b0:	56                   	push   %esi
4ae3b1:	8b 74 24 08          	mov    0x8(%esp),%esi
4ae3b5:	57                   	push   %edi
4ae3b6:	85 f6                	test   %esi,%esi
4ae3b8:	74 31                	je     0x4ae3eb
4ae3ba:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4ae3be:	85 c9                	test   %ecx,%ecx
4ae3c0:	78 29                	js     0x4ae3eb
4ae3c2:	8b 3e                	mov    (%esi),%edi
4ae3c4:	3b cf                	cmp    %edi,%ecx
4ae3c6:	7d 23                	jge    0x4ae3eb
4ae3c8:	8b 46 04             	mov    0x4(%esi),%eax
4ae3cb:	4f                   	dec    %edi
4ae3cc:	53                   	push   %ebx
4ae3cd:	8b 1c 88             	mov    (%eax,%ecx,4),%ebx
4ae3d0:	3b cf                	cmp    %edi,%ecx
4ae3d2:	7d 0f                	jge    0x4ae3e3
4ae3d4:	8b 46 04             	mov    0x4(%esi),%eax
4ae3d7:	8b 54 88 04          	mov    0x4(%eax,%ecx,4),%edx
4ae3db:	89 14 88             	mov    %edx,(%eax,%ecx,4)
4ae3de:	41                   	inc    %ecx
4ae3df:	3b cf                	cmp    %edi,%ecx
4ae3e1:	7c f1                	jl     0x4ae3d4
4ae3e3:	ff 0e                	decl   (%esi)
4ae3e5:	8b c3                	mov    %ebx,%eax
4ae3e7:	5b                   	pop    %ebx
4ae3e8:	5f                   	pop    %edi
4ae3e9:	5e                   	pop    %esi
4ae3ea:	c3                   	ret