695313:	5f                   	pop    %edi
695314:	5e                   	pop    %esi
695315:	c3                   	ret
695316:	cc                   	int3
695317:	cc                   	int3
695318:	cc                   	int3
695319:	cc                   	int3
69531a:	cc                   	int3
69531b:	cc                   	int3
69531c:	cc                   	int3
69531d:	cc                   	int3
69531e:	cc                   	int3
69531f:	cc                   	int3
695320:	cc                   	int3
695321:	cc                   	int3
695322:	cc                   	int3
695323:	cc                   	int3
695324:	cc                   	int3
695325:	cc                   	int3
695326:	cc                   	int3
695327:	cc                   	int3
695328:	cc                   	int3
695329:	cc                   	int3
69532a:	cc                   	int3
69532b:	cc                   	int3
69532c:	cc                   	int3
69532d:	cc                   	int3
69532e:	cc                   	int3
69532f:	cc                   	int3
695330:	56                   	push   %esi
695331:	8b 74 24 08          	mov    0x8(%esp),%esi
695335:	ff 76 10             	push   0x10(%esi)
695338:	e8 ab 1d d9 ff       	call   0x4270e8
69533d:	83 c4 04             	add    $0x4,%esp
695340:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
695347:	33 c0                	xor    %eax,%eax
695349:	5e                   	pop    %esi
69534a:	c3                   	ret
69534b:	cc                   	int3
69534c:	cc                   	int3
69534d:	cc                   	int3
69534e:	cc                   	int3
69534f:	cc                   	int3
695350:	cc                   	int3
695351:	cc                   	int3
695352:	cc                   	int3
695353:	cc                   	int3
695354:	cc                   	int3
695355:	cc                   	int3
695356:	cc                   	int3
695357:	cc                   	int3
695358:	cc                   	int3
695359:	cc                   	int3
69535a:	cc                   	int3
69535b:	cc                   	int3
69535c:	cc                   	int3
69535d:	cc                   	int3
69535e:	cc                   	int3
69535f:	cc                   	int3
695360:	56                   	push   %esi
695361:	8b 74 24 08          	mov    0x8(%esp),%esi
695365:	8b 46 10             	mov    0x10(%esi),%eax
695368:	85 c0                	test   %eax,%eax
69536a:	75 15                	jne    0x695381
69536c:	c7 46 0c 02 00 00 00 	movl   $0x2,0xc(%esi)
695373:	8b 46 0c             	mov    0xc(%esi),%eax
695376:	f7 d8                	neg    %eax
695378:	5e                   	pop    %esi
695379:	1b c0                	sbb    %eax,%eax
69537b:	25 2e 4e 00 00       	and    $0x4e2e,%eax
695380:	c3                   	ret
695381:	ff 74 24 14          	push   0x14(%esp)
695385:	ff 74 24 14          	push   0x14(%esp)
695389:	ff 74 24 14          	push   0x14(%esp)
69538d:	50                   	push   %eax
69538e:	e8 b3 43 d7 ff       	call   0x409746
695393:	83 c4 10             	add    $0x10,%esp
695396:	85 c0                	test   %eax,%eax
695398:	75 15                	jne    0x6953af
69539a:	ff 76 10             	push   0x10(%esi)
69539d:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
6953a4:	e8 2d f0 d6 ff       	call   0x4043d6
6953a9:	83 c4 04             	add    $0x4,%esp
6953ac:	89 46 14             	mov    %eax,0x14(%esi)
6953af:	8b 46 0c             	mov    0xc(%esi),%eax
6953b2:	f7 d8                	neg    %eax
6953b4:	5e                   	pop    %esi
6953b5:	1b c0                	sbb    %eax,%eax
6953b7:	25 2e 4e 00 00       	and    $0x4e2e,%eax
6953bc:	c3                   	ret
6953bd:	cc                   	int3
6953be:	cc                   	int3
6953bf:	cc                   	int3
6953c0:	cc                   	int3
6953c1:	cc                   	int3
6953c2:	cc                   	int3
6953c3:	cc                   	int3
6953c4:	cc                   	int3
6953c5:	cc                   	int3
6953c6:	cc                   	int3
6953c7:	cc                   	int3
6953c8:	cc                   	int3
6953c9:	cc                   	int3
6953ca:	cc                   	int3
6953cb:	cc                   	int3
6953cc:	cc                   	int3
6953cd:	cc                   	int3
6953ce:	cc                   	int3
6953cf:	cc                   	int3
6953d0:	cc                   	int3
6953d1:	cc                   	int3
6953d2:	cc                   	int3
6953d3:	cc                   	int3
6953d4:	cc                   	int3
6953d5:	cc                   	int3
6953d6:	cc                   	int3
6953d7:	cc                   	int3
6953d8:	cc                   	int3
6953d9:	cc                   	int3
6953da:	cc                   	int3
6953db:	cc                   	int3
6953dc:	cc                   	int3
6953dd:	cc                   	int3
6953de:	cc                   	int3
6953df:	cc                   	int3
6953e0:	8b 44 24 08          	mov    0x8(%esp),%eax
6953e4:	53                   	push   %ebx
6953e5:	55                   	push   %ebp
6953e6:	56                   	push   %esi
6953e7:	57                   	push   %edi
6953e8:	85 c0                	test   %eax,%eax
6953ea:	74 3a                	je     0x695426
6953ec:	83 f8 03             	cmp    $0x3,%eax
6953ef:	74 35                	je     0x695426
6953f1:	8b 7c 24 14          	mov    0x14(%esp),%edi
6953f5:	83 f8 02             	cmp    $0x2,%eax
6953f8:	75 25                	jne    0x69541f
6953fa:	8b 4f 08             	mov    0x8(%edi),%ecx
6953fd:	85 c9                	test   %ecx,%ecx
6953ff:	74 14                	je     0x695415
695401:	8d 51 01             	lea    0x1(%ecx),%edx
695404:	8a 01                	mov    (%ecx),%al
695406:	41                   	inc    %ecx
695407:	84 c0                	test   %al,%al
695409:	75 f9                	jne    0x695404
69540b:	2b ca                	sub    %edx,%ecx
69540d:	8d 59 01             	lea    0x1(%ecx),%ebx
695410:	e9 e1 02 00 00       	jmp    0x6956f6
695415:	bb 01 00 00 00       	mov    $0x1,%ebx
69541a:	e9 d7 02 00 00       	jmp    0x6956f6
69541f:	33 db                	xor    %ebx,%ebx
695421:	e9 d0 02 00 00       	jmp    0x6956f6
695426:	33 ed                	xor    %ebp,%ebp
695428:	83 f8 03             	cmp    $0x3,%eax
69542b:	0f 85 d6 00 00 00    	jne    0x695507
695431:	8b 44 24 1c          	mov    0x1c(%esp),%eax
695435:	8b 50 08             	mov    0x8(%eax),%edx
695438:	85 d2                	test   %edx,%edx
69543a:	0f 84 a9 00 00 00    	je     0x6954e9
695440:	8b 40 10             	mov    0x10(%eax),%eax
695443:	8d 3c 90             	lea    (%eax,%edx,4),%edi
695446:	4a                   	dec    %edx
695447:	8d 7f fc             	lea    -0x4(%edi),%edi
69544a:	83 fa 0a             	cmp    $0xa,%edx
69544d:	7d 07                	jge    0x695456
69544f:	b9 01 00 00 00       	mov    $0x1,%ecx
695454:	eb 74                	jmp    0x6954ca
695456:	83 fa 64             	cmp    $0x64,%edx
695459:	7d 07                	jge    0x695462
69545b:	b9 02 00 00 00       	mov    $0x2,%ecx
695460:	eb 68                	jmp    0x6954ca
695462:	81 fa e8 03 00 00    	cmp    $0x3e8,%edx
695468:	7d 07                	jge    0x695471
69546a:	b9 03 00 00 00       	mov    $0x3,%ecx
69546f:	eb 59                	jmp    0x6954ca
695471:	81 fa 10 27 00 00    	cmp    $0x2710,%edx
695477:	7d 07                	jge    0x695480
695479:	b9 04 00 00 00       	mov    $0x4,%ecx
69547e:	eb 4a                	jmp    0x6954ca
695480:	81 fa a0 86 01 00    	cmp    $0x186a0,%edx
695486:	7d 07                	jge    0x69548f
695488:	b9 05 00 00 00       	mov    $0x5,%ecx
69548d:	eb 3b                	jmp    0x6954ca
69548f:	81 fa 40 42 0f 00    	cmp    $0xf4240,%edx
695495:	7d 07                	jge    0x69549e
695497:	b9 06 00 00 00       	mov    $0x6,%ecx
69549c:	eb 2c                	jmp    0x6954ca
69549e:	81 fa 80 96 98 00    	cmp    $0x989680,%edx
6954a4:	7d 07                	jge    0x6954ad
6954a6:	b9 07 00 00 00       	mov    $0x7,%ecx
6954ab:	eb 1d                	jmp    0x6954ca
6954ad:	81 fa 00 e1 f5 05    	cmp    $0x5f5e100,%edx
6954b3:	7d 07                	jge    0x6954bc
6954b5:	b9 08 00 00 00       	mov    $0x8,%ecx
6954ba:	eb 0e                	jmp    0x6954ca
6954bc:	33 c9                	xor    %ecx,%ecx
6954be:	81 fa 00 ca 9a 3b    	cmp    $0x3b9aca00,%edx
6954c4:	0f 9d c1             	setge  %cl
6954c7:	83 c1 09             	add    $0x9,%ecx
6954ca:	8b 37                	mov    (%edi),%esi
6954cc:	8d 5e 01             	lea    0x1(%esi),%ebx
6954cf:	90                   	nop
6954d0:	8a 06                	mov    (%esi),%al
6954d2:	46                   	inc    %esi
6954d3:	84 c0                	test   %al,%al
6954d5:	75 f9                	jne    0x6954d0
6954d7:	2b f3                	sub    %ebx,%esi
6954d9:	83 c5 0c             	add    $0xc,%ebp
6954dc:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
6954df:	03 e8                	add    %eax,%ebp
6954e1:	85 d2                	test   %edx,%edx
6954e3:	0f 85 5d ff ff ff    	jne    0x695446
6954e9:	8b 5c 24 14          	mov    0x14(%esp),%ebx
6954ed:	8b 4b 08             	mov    0x8(%ebx),%ecx
6954f0:	85 c9                	test   %ecx,%ecx
6954f2:	74 17                	je     0x69550b
6954f4:	8d 51 01             	lea    0x1(%ecx),%edx
6954f7:	8a 01                	mov    (%ecx),%al
6954f9:	41                   	inc    %ecx
6954fa:	84 c0                	test   %al,%al
6954fc:	75 f9                	jne    0x6954f7
6954fe:	2b ca                	sub    %edx,%ecx
695500:	83 c5 0c             	add    $0xc,%ebp
695503:	03 e9                	add    %ecx,%ebp
695505:	eb 04                	jmp    0x69550b
695507:	8b 5c 24 14          	mov    0x14(%esp),%ebx
69550b:	8b 43 04             	mov    0x4(%ebx),%eax
69550e:	83 f8 f6             	cmp    $0xfffffff6,%eax
695511:	75 18                	jne    0x69552b
695513:	8b 0b                	mov    (%ebx),%ecx
695515:	8d 51 01             	lea    0x1(%ecx),%edx
695518:	8a 01                	mov    (%ecx),%al
69551a:	41                   	inc    %ecx
69551b:	84 c0                	test   %al,%al
69551d:	75 f9                	jne    0x695518
69551f:	2b ca                	sub    %edx,%ecx
695521:	8d 45 02             	lea    0x2(%ebp),%eax
695524:	03 c1                	add    %ecx,%eax
695526:	e9 99 00 00 00       	jmp    0x6955c4
69552b:	8b 4c 24 20          	mov    0x20(%esp),%ecx
69552f:	85 c9                	test   %ecx,%ecx
695531:	74 03                	je     0x695536
695533:	8b 04 81             	mov    (%ecx,%eax,4),%eax
695536:	83 f8 0a             	cmp    $0xa,%eax
695539:	7d 07                	jge    0x695542
69553b:	b9 01 00 00 00       	mov    $0x1,%ecx
695540:	eb 6d                	jmp    0x6955af
695542:	83 f8 64             	cmp    $0x64,%eax
695545:	7d 07                	jge    0x69554e
695547:	b9 02 00 00 00       	mov    $0x2,%ecx
69554c:	eb 61                	jmp    0x6955af
69554e:	3d e8 03 00 00       	cmp    $0x3e8,%eax
695553:	7d 07                	jge    0x69555c
695555:	b9 03 00 00 00       	mov    $0x3,%ecx
69555a:	eb 53                	jmp    0x6955af
69555c:	3d 10 27 00 00       	cmp    $0x2710,%eax
695561:	7d 07                	jge    0x69556a
695563:	b9 04 00 00 00       	mov    $0x4,%ecx
695568:	eb 45                	jmp    0x6955af
69556a:	3d a0 86 01 00       	cmp    $0x186a0,%eax
69556f:	7d 07                	jge    0x695578
695571:	b9 05 00 00 00       	mov    $0x5,%ecx
695576:	eb 37                	jmp    0x6955af
695578:	3d 40 42 0f 00       	cmp    $0xf4240,%eax
69557d:	7d 07                	jge    0x695586
69557f:	b9 06 00 00 00       	mov    $0x6,%ecx
695584:	eb 29                	jmp    0x6955af
695586:	3d 80 96 98 00       	cmp    $0x989680,%eax
69558b:	7d 07                	jge    0x695594
69558d:	b9 07 00 00 00       	mov    $0x7,%ecx
695592:	eb 1b                	jmp    0x6955af
695594:	3d 00 e1 f5 05       	cmp    $0x5f5e100,%eax
695599:	7d 07                	jge    0x6955a2
69559b:	b9 08 00 00 00       	mov    $0x8,%ecx
6955a0:	eb 0d                	jmp    0x6955af
6955a2:	33 c9                	xor    %ecx,%ecx
6955a4:	3d 00 ca 9a 3b       	cmp    $0x3b9aca00,%eax
6955a9:	0f 9d c1             	setge  %cl
6955ac:	83 c1 09             	add    $0x9,%ecx
6955af:	8b 13                	mov    (%ebx),%edx
6955b1:	8d 72 01             	lea    0x1(%edx),%esi
6955b4:	8a 02                	mov    (%edx),%al
6955b6:	42                   	inc    %edx
6955b7:	84 c0                	test   %al,%al
6955b9:	75 f9                	jne    0x6955b4
6955bb:	2b d6                	sub    %esi,%edx
6955bd:	8d 41 05             	lea    0x5(%ecx),%eax
6955c0:	03 c2                	add    %edx,%eax
6955c2:	03 c5                	add    %ebp,%eax
6955c4:	83 7b 24 00          	cmpl   $0x0,0x24(%ebx)
6955c8:	75 06                	jne    0x6955d0
6955ca:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
6955ce:	74 02                	je     0x6955d2
6955d0:	03 c0                	add    %eax,%eax
6955d2:	8b 7b 28             	mov    0x28(%ebx),%edi
6955d5:	8d 58 01             	lea    0x1(%eax),%ebx
6955d8:	85 ff                	test   %edi,%edi
6955da:	0f 84 ee 00 00 00    	je     0x6956ce
6955e0:	8b 47 04             	mov    0x4(%edi),%eax
6955e3:	83 f8 f6             	cmp    $0xfffffff6,%eax
6955e6:	75 2c                	jne    0x695614
6955e8:	8b 0f                	mov    (%edi),%ecx
6955ea:	8d 51 01             	lea    0x1(%ecx),%edx
6955ed:	0f 1f 00             	nopl   (%eax)
6955f0:	8a 01                	mov    (%ecx),%al
6955f2:	41                   	inc    %ecx
6955f3:	84 c0                	test   %al,%al
6955f5:	75 f9                	jne    0x6955f0
6955f7:	2b ca                	sub    %edx,%ecx
6955f9:	8b 57 08             	mov    0x8(%edi),%edx
6955fc:	8d 72 01             	lea    0x1(%edx),%esi
6955ff:	90                   	nop
695600:	8a 02                	mov    (%edx),%al
695602:	42                   	inc    %edx
695603:	84 c0                	test   %al,%al
695605:	75 f9                	jne    0x695600
695607:	2b d6                	sub    %esi,%edx
695609:	83 c3 04             	add    $0x4,%ebx
69560c:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
69560f:	e9 ad 00 00 00       	jmp    0x6956c1
695614:	8b 4c 24 20          	mov    0x20(%esp),%ecx
695618:	85 c9                	test   %ecx,%ecx
69561a:	74 03                	je     0x69561f
69561c:	8b 04 81             	mov    (%ecx,%eax,4),%eax
69561f:	83 f8 0a             	cmp    $0xa,%eax
695622:	7d 07                	jge    0x69562b
695624:	b9 01 00 00 00       	mov    $0x1,%ecx
695629:	eb 6d                	jmp    0x695698
69562b:	83 f8 64             	cmp    $0x64,%eax
69562e:	7d 07                	jge    0x695637
695630:	b9 02 00 00 00       	mov    $0x2,%ecx
695635:	eb 61                	jmp    0x695698
695637:	3d e8 03 00 00       	cmp    $0x3e8,%eax
69563c:	7d 07                	jge    0x695645
69563e:	b9 03 00 00 00       	mov    $0x3,%ecx
695643:	eb 53                	jmp    0x695698
695645:	3d 10 27 00 00       	cmp    $0x2710,%eax
69564a:	7d 07                	jge    0x695653
69564c:	b9 04 00 00 00       	mov    $0x4,%ecx
695651:	eb 45                	jmp    0x695698
695653:	3d a0 86 01 00       	cmp    $0x186a0,%eax
695658:	7d 07                	jge    0x695661
69565a:	b9 05 00 00 00       	mov    $0x5,%ecx
69565f:	eb 37                	jmp    0x695698
695661:	3d 40 42 0f 00       	cmp    $0xf4240,%eax
695666:	7d 07                	jge    0x69566f
695668:	b9 06 00 00 00       	mov    $0x6,%ecx
69566d:	eb 29                	jmp    0x695698
69566f:	3d 80 96 98 00       	cmp    $0x989680,%eax
695674:	7d 07                	jge    0x69567d