471149:	83 f8 1f             	cmp    $0x1f,%eax
47114c:	0f 87 b7 05 00 00    	ja     0x471709
471152:	52                   	push   %edx
471153:	51                   	push   %ecx
471154:	e8 19 ff 16 00       	call   0x5e1072
471159:	83 c4 08             	add    $0x8,%esp
47115c:	8b 55 bc             	mov    -0x44(%ebp),%edx
47115f:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
471166:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
47116d:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
471171:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
471175:	83 fa 10             	cmp    $0x10,%edx
471178:	72 2c                	jb     0x4711a6
47117a:	8b 4d a8             	mov    -0x58(%ebp),%ecx
47117d:	42                   	inc    %edx
47117e:	8b c1                	mov    %ecx,%eax
471180:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
471186:	72 14                	jb     0x47119c
471188:	8b 49 fc             	mov    -0x4(%ecx),%ecx
47118b:	83 c2 23             	add    $0x23,%edx
47118e:	2b c1                	sub    %ecx,%eax
471190:	83 c0 fc             	add    $0xfffffffc,%eax
471193:	83 f8 1f             	cmp    $0x1f,%eax
471196:	0f 87 6d 05 00 00    	ja     0x471709
47119c:	52                   	push   %edx
47119d:	51                   	push   %ecx
47119e:	e8 cf fe 16 00       	call   0x5e1072
4711a3:	83 c4 08             	add    $0x8,%esp
4711a6:	8b 8e e0 00 00 00    	mov    0xe0(%esi),%ecx
4711ac:	b8 31 0c c3 30       	mov    $0x30c30c31,%eax
4711b1:	2b 8e dc 00 00 00    	sub    0xdc(%esi),%ecx
4711b7:	f7 e9                	imul   %ecx
4711b9:	8b 45 90             	mov    -0x70(%ebp),%eax
4711bc:	c1 fa 05             	sar    $0x5,%edx
4711bf:	8b ca                	mov    %edx,%ecx
4711c1:	c1 e9 1f             	shr    $0x1f,%ecx
4711c4:	8b 80 50 03 00 00    	mov    0x350(%eax),%eax
4711ca:	03 ca                	add    %edx,%ecx
4711cc:	8b 55 8c             	mov    -0x74(%ebp),%edx
4711cf:	89 4d 80             	mov    %ecx,-0x80(%ebp)
4711d2:	8b 04 90             	mov    (%eax,%edx,4),%eax
4711d5:	8b 55 94             	mov    -0x6c(%ebp),%edx
4711d8:	8b 40 04             	mov    0x4(%eax),%eax
4711db:	8b 04 90             	mov    (%eax,%edx,4),%eax
4711de:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
4711e5:	0f 84 e2 03 00 00    	je     0x4715cd
4711eb:	8d 41 01             	lea    0x1(%ecx),%eax
4711ee:	c7 45 84 00 00 00 00 	movl   $0x0,-0x7c(%ebp)
4711f5:	33 c9                	xor    %ecx,%ecx
4711f7:	ba 04 00 00 00       	mov    $0x4,%edx
4711fc:	f7 e2                	mul    %edx
4711fe:	0f 90 c1             	seto   %cl
471201:	f7 d9                	neg    %ecx
471203:	0b c8                	or     %eax,%ecx
471205:	51                   	push   %ecx
471206:	e8 75 fe 16 00       	call   0x5e1080
47120b:	8b 4d 90             	mov    -0x70(%ebp),%ecx
47120e:	83 c4 04             	add    $0x4,%esp
471211:	8b 55 8c             	mov    -0x74(%ebp),%edx
471214:	33 ff                	xor    %edi,%edi
471216:	89 7d 88             	mov    %edi,-0x78(%ebp)
471219:	8b 89 50 03 00 00    	mov    0x350(%ecx),%ecx
47121f:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
471222:	8b 55 94             	mov    -0x6c(%ebp),%edx
471225:	8b 49 04             	mov    0x4(%ecx),%ecx
471228:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
47122b:	89 41 04             	mov    %eax,0x4(%ecx)
47122e:	66 90                	xchg   %ax,%ax
471230:	6a 1c                	push   $0x1c
471232:	e8 0b fe 16 00       	call   0x5e1042
471237:	8b 4d 90             	mov    -0x70(%ebp),%ecx
47123a:	83 c4 04             	add    $0x4,%esp
47123d:	8b 55 8c             	mov    -0x74(%ebp),%edx
471240:	8b 89 50 03 00 00    	mov    0x350(%ecx),%ecx
471246:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
471249:	8b 55 94             	mov    -0x6c(%ebp),%edx
47124c:	8b 49 04             	mov    0x4(%ecx),%ecx
47124f:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
471252:	8b 55 84             	mov    -0x7c(%ebp),%edx
471255:	8b 49 04             	mov    0x4(%ecx),%ecx
471258:	89 04 91             	mov    %eax,(%ecx,%edx,4)
47125b:	8b 86 dc 00 00 00    	mov    0xdc(%esi),%eax
471261:	83 7c 38 14 10       	cmpl   $0x10,0x14(%eax,%edi,1)
471266:	8d 0c 38             	lea    (%eax,%edi,1),%ecx
471269:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
47126c:	72 05                	jb     0x471273
47126e:	8b 11                	mov    (%ecx),%edx
471270:	89 55 a4             	mov    %edx,-0x5c(%ebp)
471273:	8b 49 10             	mov    0x10(%ecx),%ecx
471276:	8b 7d 94             	mov    -0x6c(%ebp),%edi
471279:	89 4d 98             	mov    %ecx,-0x68(%ebp)
47127c:	8b 4d 90             	mov    -0x70(%ebp),%ecx
47127f:	8b 91 50 03 00 00    	mov    0x350(%ecx),%edx
471285:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
471288:	8b 0c 8a             	mov    (%edx,%ecx,4),%ecx
47128b:	8b 49 04             	mov    0x4(%ecx),%ecx
47128e:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
471291:	8b 7d 84             	mov    -0x7c(%ebp),%edi
471294:	8b 49 04             	mov    0x4(%ecx),%ecx
471297:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
47129a:	8b 7d 88             	mov    -0x78(%ebp),%edi
47129d:	89 4d a0             	mov    %ecx,-0x60(%ebp)
4712a0:	85 c9                	test   %ecx,%ecx
4712a2:	74 38                	je     0x4712dc
4712a4:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
4712a8:	74 32                	je     0x4712dc
4712aa:	8b 45 98             	mov    -0x68(%ebp),%eax
4712ad:	40                   	inc    %eax
4712ae:	50                   	push   %eax
4712af:	e8 cc fd 16 00       	call   0x5e1080
4712b4:	8b 4d a0             	mov    -0x60(%ebp),%ecx
4712b7:	8b 55 98             	mov    -0x68(%ebp),%edx
4712ba:	52                   	push   %edx
4712bb:	ff 75 a4             	push   -0x5c(%ebp)
4712be:	89 01                	mov    %eax,(%ecx)
4712c0:	8d 4a 01             	lea    0x1(%edx),%ecx
4712c3:	51                   	push   %ecx
4712c4:	50                   	push   %eax
4712c5:	e8 b6 72 ff ff       	call   0x468580
4712ca:	8b 4d 90             	mov    -0x70(%ebp),%ecx
4712cd:	83 c4 14             	add    $0x14,%esp
4712d0:	8b 86 dc 00 00 00    	mov    0xdc(%esi),%eax
4712d6:	8b 91 50 03 00 00    	mov    0x350(%ecx),%edx
4712dc:	8d 4f 48             	lea    0x48(%edi),%ecx
4712df:	03 c8                	add    %eax,%ecx
4712e1:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
4712e4:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
4712e8:	72 05                	jb     0x4712ef
4712ea:	8b 09                	mov    (%ecx),%ecx
4712ec:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
4712ef:	8b 4c 38 58          	mov    0x58(%eax,%edi,1),%ecx
4712f3:	8b 7d 94             	mov    -0x6c(%ebp),%edi
4712f6:	89 4d 98             	mov    %ecx,-0x68(%ebp)
4712f9:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
4712fc:	8b 0c 8a             	mov    (%edx,%ecx,4),%ecx
4712ff:	8b 49 04             	mov    0x4(%ecx),%ecx
471302:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
471305:	8b 7d 84             	mov    -0x7c(%ebp),%edi
471308:	8b 49 04             	mov    0x4(%ecx),%ecx
47130b:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
47130e:	8b 7d 88             	mov    -0x78(%ebp),%edi
471311:	83 c1 04             	add    $0x4,%ecx
471314:	89 4d a0             	mov    %ecx,-0x60(%ebp)
471317:	74 38                	je     0x471351
471319:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
47131d:	74 32                	je     0x471351
47131f:	8b 45 98             	mov    -0x68(%ebp),%eax
471322:	40                   	inc    %eax
471323:	50                   	push   %eax
471324:	e8 57 fd 16 00       	call   0x5e1080
471329:	8b 4d a0             	mov    -0x60(%ebp),%ecx
47132c:	8b 55 98             	mov    -0x68(%ebp),%edx
47132f:	52                   	push   %edx
471330:	ff 75 a4             	push   -0x5c(%ebp)
471333:	89 01                	mov    %eax,(%ecx)
471335:	8d 4a 01             	lea    0x1(%edx),%ecx
471338:	51                   	push   %ecx
471339:	50                   	push   %eax
47133a:	e8 41 72 ff ff       	call   0x468580
47133f:	8b 4d 90             	mov    -0x70(%ebp),%ecx
471342:	83 c4 14             	add    $0x14,%esp
471345:	8b 86 dc 00 00 00    	mov    0xdc(%esi),%eax
47134b:	8b 91 50 03 00 00    	mov    0x350(%ecx),%edx
471351:	8d 4f 18             	lea    0x18(%edi),%ecx
471354:	03 c8                	add    %eax,%ecx
471356:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
471359:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
47135d:	72 05                	jb     0x471364
47135f:	8b 09                	mov    (%ecx),%ecx
471361:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
471364:	8b 4c 38 28          	mov    0x28(%eax,%edi,1),%ecx
471368:	8b 7d 94             	mov    -0x6c(%ebp),%edi
47136b:	89 4d 98             	mov    %ecx,-0x68(%ebp)
47136e:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
471371:	8b 0c 8a             	mov    (%edx,%ecx,4),%ecx
471374:	8b 49 04             	mov    0x4(%ecx),%ecx
471377:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
47137a:	8b 7d 84             	mov    -0x7c(%ebp),%edi
47137d:	8b 49 04             	mov    0x4(%ecx),%ecx
471380:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
471383:	8b 7d 88             	mov    -0x78(%ebp),%edi
471386:	83 c1 08             	add    $0x8,%ecx
471389:	89 4d a0             	mov    %ecx,-0x60(%ebp)
47138c:	74 38                	je     0x4713c6
47138e:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
471392:	74 32                	je     0x4713c6
471394:	8b 45 98             	mov    -0x68(%ebp),%eax
471397:	40                   	inc    %eax
471398:	50                   	push   %eax
471399:	e8 e2 fc 16 00       	call   0x5e1080
47139e:	8b 4d a0             	mov    -0x60(%ebp),%ecx
4713a1:	8b 55 98             	mov    -0x68(%ebp),%edx
4713a4:	52                   	push   %edx
4713a5:	ff 75 a4             	push   -0x5c(%ebp)
4713a8:	89 01                	mov    %eax,(%ecx)
4713aa:	8d 4a 01             	lea    0x1(%edx),%ecx
4713ad:	51                   	push   %ecx
4713ae:	50                   	push   %eax
4713af:	e8 cc 71 ff ff       	call   0x468580
4713b4:	8b 4d 90             	mov    -0x70(%ebp),%ecx
4713b7:	83 c4 14             	add    $0x14,%esp
4713ba:	8b 86 dc 00 00 00    	mov    0xdc(%esi),%eax
4713c0:	8b 91 50 03 00 00    	mov    0x350(%ecx),%edx
4713c6:	8d 4f 30             	lea    0x30(%edi),%ecx
4713c9:	03 c8                	add    %eax,%ecx
4713cb:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
4713ce:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
4713d2:	72 05                	jb     0x4713d9
4713d4:	8b 09                	mov    (%ecx),%ecx
4713d6:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
4713d9:	8b 4c 38 40          	mov    0x40(%eax,%edi,1),%ecx
4713dd:	8b 7d 94             	mov    -0x6c(%ebp),%edi
4713e0:	89 4d 98             	mov    %ecx,-0x68(%ebp)
4713e3:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
4713e6:	8b 0c 8a             	mov    (%edx,%ecx,4),%ecx
4713e9:	8b 49 04             	mov    0x4(%ecx),%ecx
4713ec:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
4713ef:	8b 7d 84             	mov    -0x7c(%ebp),%edi
4713f2:	8b 49 04             	mov    0x4(%ecx),%ecx
4713f5:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
4713f8:	8b 7d 88             	mov    -0x78(%ebp),%edi
4713fb:	83 c1 0c             	add    $0xc,%ecx
4713fe:	89 4d a0             	mov    %ecx,-0x60(%ebp)
471401:	74 38                	je     0x47143b
471403:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
471407:	74 32                	je     0x47143b
471409:	8b 45 98             	mov    -0x68(%ebp),%eax
47140c:	40                   	inc    %eax
47140d:	50                   	push   %eax
47140e:	e8 6d fc 16 00       	call   0x5e1080
471413:	8b 4d a0             	mov    -0x60(%ebp),%ecx
471416:	8b 55 98             	mov    -0x68(%ebp),%edx
471419:	52                   	push   %edx
47141a:	ff 75 a4             	push   -0x5c(%ebp)
47141d:	89 01                	mov    %eax,(%ecx)
47141f:	8d 4a 01             	lea    0x1(%edx),%ecx
471422:	51                   	push   %ecx
471423:	50                   	push   %eax
471424:	e8 57 71 ff ff       	call   0x468580
471429:	8b 4d 90             	mov    -0x70(%ebp),%ecx
47142c:	83 c4 14             	add    $0x14,%esp
47142f:	8b 86 dc 00 00 00    	mov    0xdc(%esi),%eax
471435:	8b 91 50 03 00 00    	mov    0x350(%ecx),%edx
47143b:	8d 4f 60             	lea    0x60(%edi),%ecx
47143e:	03 c8                	add    %eax,%ecx
471440:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
471443:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
471447:	72 05                	jb     0x47144e
471449:	8b 09                	mov    (%ecx),%ecx
47144b:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
47144e:	8b 4c 38 70          	mov    0x70(%eax,%edi,1),%ecx
471452:	8b 7d 94             	mov    -0x6c(%ebp),%edi
471455:	89 4d 98             	mov    %ecx,-0x68(%ebp)
471458:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
47145b:	8b 0c 8a             	mov    (%edx,%ecx,4),%ecx
47145e:	8b 49 04             	mov    0x4(%ecx),%ecx
471461:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
471464:	8b 7d 84             	mov    -0x7c(%ebp),%edi
471467:	8b 49 04             	mov    0x4(%ecx),%ecx
47146a:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
47146d:	8b 7d 88             	mov    -0x78(%ebp),%edi
471470:	83 c1 10             	add    $0x10,%ecx
471473:	89 4d a0             	mov    %ecx,-0x60(%ebp)
471476:	74 38                	je     0x4714b0
471478:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
47147c:	74 32                	je     0x4714b0
47147e:	8b 45 98             	mov    -0x68(%ebp),%eax
471481:	40                   	inc    %eax
471482:	50                   	push   %eax
471483:	e8 f8 fb 16 00       	call   0x5e1080
471488:	8b 4d a0             	mov    -0x60(%ebp),%ecx
47148b:	8b 55 98             	mov    -0x68(%ebp),%edx
47148e:	52                   	push   %edx
47148f:	ff 75 a4             	push   -0x5c(%ebp)
471492:	89 01                	mov    %eax,(%ecx)
471494:	8d 4a 01             	lea    0x1(%edx),%ecx
471497:	51                   	push   %ecx
471498:	50                   	push   %eax
471499:	e8 e2 70 ff ff       	call   0x468580
47149e:	8b 4d 90             	mov    -0x70(%ebp),%ecx
4714a1:	83 c4 14             	add    $0x14,%esp
4714a4:	8b 86 dc 00 00 00    	mov    0xdc(%esi),%eax
4714aa:	8b 91 50 03 00 00    	mov    0x350(%ecx),%edx
4714b0:	8d 4f 78             	lea    0x78(%edi),%ecx
4714b3:	03 c8                	add    %eax,%ecx
4714b5:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
4714b8:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
4714bc:	72 05                	jb     0x4714c3
4714be:	8b 09                	mov    (%ecx),%ecx
4714c0:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
4714c3:	8b 8c 38 88 00 00 00 	mov    0x88(%eax,%edi,1),%ecx
4714ca:	8b 7d 94             	mov    -0x6c(%ebp),%edi
4714cd:	89 4d 98             	mov    %ecx,-0x68(%ebp)
4714d0:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
4714d3:	8b 0c 8a             	mov    (%edx,%ecx,4),%ecx
4714d6:	8b 49 04             	mov    0x4(%ecx),%ecx
4714d9:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
4714dc:	8b 7d 84             	mov    -0x7c(%ebp),%edi
4714df:	8b 49 04             	mov    0x4(%ecx),%ecx
4714e2:	8b 0c b9             	mov    (%ecx,%edi,4),%ecx
4714e5:	8b 7d 88             	mov    -0x78(%ebp),%edi
4714e8:	83 c1 14             	add    $0x14,%ecx
4714eb:	89 4d a0             	mov    %ecx,-0x60(%ebp)
4714ee:	74 38                	je     0x471528
4714f0:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
4714f4:	74 32                	je     0x471528
4714f6:	8b 45 98             	mov    -0x68(%ebp),%eax
4714f9:	40                   	inc    %eax
4714fa:	50                   	push   %eax
4714fb:	e8 80 fb 16 00       	call   0x5e1080
471500:	8b 4d a0             	mov    -0x60(%ebp),%ecx
471503:	8b 55 98             	mov    -0x68(%ebp),%edx
471506:	52                   	push   %edx
471507:	ff 75 a4             	push   -0x5c(%ebp)
47150a:	89 01                	mov    %eax,(%ecx)
47150c:	8d 4a 01             	lea    0x1(%edx),%ecx
47150f:	51                   	push   %ecx
471510:	50                   	push   %eax
471511:	e8 6a 70 ff ff       	call   0x468580
471516:	8b 4d 90             	mov    -0x70(%ebp),%ecx
471519:	83 c4 14             	add    $0x14,%esp
47151c:	8b 86 dc 00 00 00    	mov    0xdc(%esi),%eax
471522:	8b 91 50 03 00 00    	mov    0x350(%ecx),%edx
471528:	8d 8f 90 00 00 00    	lea    0x90(%edi),%ecx
47152e:	03 c8                	add    %eax,%ecx
471530:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
471533:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
471537:	72 05                	jb     0x47153e
471539:	8b 09                	mov    (%ecx),%ecx
47153b:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
47153e:	8b 84 38 a0 00 00 00 	mov    0xa0(%eax,%edi,1),%eax
471545:	89 45 98             	mov    %eax,-0x68(%ebp)
471548:	8b 45 8c             	mov    -0x74(%ebp),%eax
47154b:	8b 04 82             	mov    (%edx,%eax,4),%eax
47154e:	8b 55 94             	mov    -0x6c(%ebp),%edx
471551:	8b 40 04             	mov    0x4(%eax),%eax
471554:	8b 04 90             	mov    (%eax,%edx,4),%eax
471557:	8b 55 84             	mov    -0x7c(%ebp),%edx
47155a:	8b 40 04             	mov    0x4(%eax),%eax
47155d:	8b 04 90             	mov    (%eax,%edx,4),%eax
471560:	83 c0 18             	add    $0x18,%eax
471563:	89 45 a0             	mov    %eax,-0x60(%ebp)
471566:	74 27                	je     0x47158f
471568:	85 c9                	test   %ecx,%ecx
47156a:	74 23                	je     0x47158f
47156c:	8b 45 98             	mov    -0x68(%ebp),%eax
47156f:	40                   	inc    %eax
471570:	50                   	push   %eax
471571:	e8 0a fb 16 00       	call   0x5e1080
471576:	8b 4d a0             	mov    -0x60(%ebp),%ecx