412278:	84 c0                	test   %al,%al
41227a:	74 04                	je     0x412280
41227c:	b0 01                	mov    $0x1,%al
41227e:	eb 02                	jmp    0x412282
412280:	32 c0                	xor    %al,%al
412282:	84 c9                	test   %cl,%cl
412284:	0f 85 ef 00 00 00    	jne    0x412379
41228a:	84 c0                	test   %al,%al
41228c:	0f 85 e7 00 00 00    	jne    0x412379
412292:	6a 72                	push   $0x72
412294:	59                   	pop    %ecx
412295:	3b d1                	cmp    %ecx,%edx
412297:	72 08                	jb     0x4122a1
412299:	8b d1                	mov    %ecx,%edx
41229b:	89 8d ac f8 ff ff    	mov    %ecx,-0x754(%ebp)
4122a1:	8b ca                	mov    %edx,%ecx
4122a3:	89 8d a0 f8 ff ff    	mov    %ecx,-0x760(%ebp)
4122a9:	83 fa ff             	cmp    $0xffffffff,%edx
4122ac:	0f 84 96 00 00 00    	je     0x412348
4122b2:	8b f2                	mov    %edx,%esi
4122b4:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
4122ba:	8b 95 b0 f8 ff ff    	mov    -0x750(%ebp),%edx
4122c0:	2b f2                	sub    %edx,%esi
4122c2:	8d 04 b0             	lea    (%eax,%esi,4),%eax
4122c5:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
4122cb:	3b ca                	cmp    %edx,%ecx
4122cd:	72 6d                	jb     0x41233c
4122cf:	3b f3                	cmp    %ebx,%esi
4122d1:	73 04                	jae    0x4122d7
4122d3:	8b 38                	mov    (%eax),%edi
4122d5:	eb 02                	jmp    0x4122d9
4122d7:	33 ff                	xor    %edi,%edi
4122d9:	8d 46 ff             	lea    -0x1(%esi),%eax
4122dc:	3b c3                	cmp    %ebx,%eax
4122de:	73 0b                	jae    0x4122eb
4122e0:	8b 85 b4 f8 ff ff    	mov    -0x74c(%ebp),%eax
4122e6:	8b 40 fc             	mov    -0x4(%eax),%eax
4122e9:	eb 02                	jmp    0x4122ed
4122eb:	33 c0                	xor    %eax,%eax
4122ed:	23 85 8c f8 ff ff    	and    -0x774(%ebp),%eax
4122f3:	23 bd a8 f8 ff ff    	and    -0x758(%ebp),%edi
4122f9:	8b 8d 90 f8 ff ff    	mov    -0x770(%ebp),%ecx
4122ff:	d3 e8                	shr    %cl,%eax
412301:	8b 8d a4 f8 ff ff    	mov    -0x75c(%ebp),%ecx
412307:	d3 e7                	shl    %cl,%edi
412309:	8b 8d a0 f8 ff ff    	mov    -0x760(%ebp),%ecx
41230f:	0b c7                	or     %edi,%eax
412311:	89 84 8d 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%ecx,4)
412318:	49                   	dec    %ecx
412319:	8b 85 b4 f8 ff ff    	mov    -0x74c(%ebp),%eax
41231f:	4e                   	dec    %esi
412320:	83 e8 04             	sub    $0x4,%eax
412323:	89 8d a0 f8 ff ff    	mov    %ecx,-0x760(%ebp)
412329:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
41232f:	83 f9 ff             	cmp    $0xffffffff,%ecx
412332:	74 08                	je     0x41233c
412334:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
41233a:	eb 8f                	jmp    0x4122cb
41233c:	8b 95 ac f8 ff ff    	mov    -0x754(%ebp),%edx
412342:	8b b5 b0 f8 ff ff    	mov    -0x750(%ebp),%esi
412348:	85 f6                	test   %esi,%esi
41234a:	74 0c                	je     0x412358
41234c:	8b ce                	mov    %esi,%ecx
41234e:	8d bd 30 fe ff ff    	lea    -0x1d0(%ebp),%edi
412354:	33 c0                	xor    %eax,%eax
412356:	f3 ab                	rep stos %eax,%es:(%edi)
412358:	80 bd bb f8 ff ff 00 	cmpb   $0x0,-0x745(%ebp)
41235f:	bb cc 01 00 00       	mov    $0x1cc,%ebx
412364:	74 0b                	je     0x412371
412366:	8d 42 01             	lea    0x1(%edx),%eax
412369:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
41236f:	eb 33                	jmp    0x4123a4
412371:	89 95 2c fe ff ff    	mov    %edx,-0x1d4(%ebp)
412377:	eb 2b                	jmp    0x4123a4
412379:	33 c0                	xor    %eax,%eax
41237b:	bb cc 01 00 00       	mov    $0x1cc,%ebx
412380:	50                   	push   %eax
412381:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
412387:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
41238d:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
412393:	50                   	push   %eax
412394:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
41239a:	53                   	push   %ebx
41239b:	50                   	push   %eax
41239c:	e8 13 d8 ff ff       	call   0x40fbb4
4123a1:	83 c4 10             	add    $0x10,%esp
4123a4:	83 a5 94 fa ff ff 00 	andl   $0x0,-0x56c(%ebp)
4123ab:	33 c9                	xor    %ecx,%ecx
4123ad:	6a 04                	push   $0x4
4123af:	58                   	pop    %eax
4123b0:	41                   	inc    %ecx
4123b1:	89 85 90 fa ff ff    	mov    %eax,-0x570(%ebp)
4123b7:	89 8d 8c fa ff ff    	mov    %ecx,-0x574(%ebp)
4123bd:	89 8d 5c fc ff ff    	mov    %ecx,-0x3a4(%ebp)
4123c3:	50                   	push   %eax
4123c4:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
4123ca:	50                   	push   %eax
4123cb:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
4123d1:	53                   	push   %ebx
4123d2:	50                   	push   %eax
4123d3:	e8 dc d7 ff ff       	call   0x40fbb4
4123d8:	83 c4 10             	add    $0x10,%esp
4123db:	e9 5c 04 00 00       	jmp    0x41283c
4123e0:	8b 85 b4 f8 ff ff    	mov    -0x74c(%ebp),%eax
4123e6:	33 d2                	xor    %edx,%edx
4123e8:	40                   	inc    %eax
4123e9:	8b f8                	mov    %eax,%edi
4123eb:	83 e0 1f             	and    $0x1f,%eax
4123ee:	6a 20                	push   $0x20
4123f0:	59                   	pop    %ecx
4123f1:	2b c8                	sub    %eax,%ecx
4123f3:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
4123f9:	33 c0                	xor    %eax,%eax
4123fb:	c1 ef 05             	shr    $0x5,%edi
4123fe:	40                   	inc    %eax
4123ff:	89 bd b4 f8 ff ff    	mov    %edi,-0x74c(%ebp)
412405:	89 8d 90 f8 ff ff    	mov    %ecx,-0x770(%ebp)
41240b:	e8 f0 5f 00 00       	call   0x418400
412410:	8b 8c 9d 2c fe ff ff 	mov    -0x1d4(%ebp,%ebx,4),%ecx
412417:	48                   	dec    %eax
412418:	83 a5 9c f8 ff ff 00 	andl   $0x0,-0x764(%ebp)
41241f:	0f bd c9             	bsr    %ecx,%ecx
412422:	89 85 a8 f8 ff ff    	mov    %eax,-0x758(%ebp)
412428:	f7 d0                	not    %eax
41242a:	89 85 8c f8 ff ff    	mov    %eax,-0x774(%ebp)
412430:	74 03                	je     0x412435
412432:	41                   	inc    %ecx
412433:	eb 02                	jmp    0x412437
412435:	33 c9                	xor    %ecx,%ecx
412437:	6a 20                	push   $0x20
412439:	58                   	pop    %eax
41243a:	2b c1                	sub    %ecx,%eax
41243c:	8d 14 3b             	lea    (%ebx,%edi,1),%edx
41243f:	39 85 b0 f8 ff ff    	cmp    %eax,-0x750(%ebp)
412445:	89 95 a0 f8 ff ff    	mov    %edx,-0x760(%ebp)
41244b:	0f 97 c0             	seta   %al
41244e:	83 fa 73             	cmp    $0x73,%edx
412451:	88 85 bb f8 ff ff    	mov    %al,-0x745(%ebp)
412457:	0f 97 c1             	seta   %cl
41245a:	83 fa 73             	cmp    $0x73,%edx
41245d:	75 08                	jne    0x412467
41245f:	84 c0                	test   %al,%al
412461:	74 04                	je     0x412467
412463:	b0 01                	mov    $0x1,%al
412465:	eb 02                	jmp    0x412469
412467:	32 c0                	xor    %al,%al
412469:	84 c9                	test   %cl,%cl
41246b:	0f 85 ec 00 00 00    	jne    0x41255d
412471:	84 c0                	test   %al,%al
412473:	0f 85 e4 00 00 00    	jne    0x41255d
412479:	6a 72                	push   $0x72
41247b:	59                   	pop    %ecx
41247c:	3b d1                	cmp    %ecx,%edx
41247e:	72 08                	jb     0x412488
412480:	8b d1                	mov    %ecx,%edx
412482:	89 8d a0 f8 ff ff    	mov    %ecx,-0x760(%ebp)
412488:	8b c2                	mov    %edx,%eax
41248a:	89 85 ac f8 ff ff    	mov    %eax,-0x754(%ebp)
412490:	83 fa ff             	cmp    $0xffffffff,%edx
412493:	0f 84 93 00 00 00    	je     0x41252c
412499:	8b f2                	mov    %edx,%esi
41249b:	8d 8d 30 fe ff ff    	lea    -0x1d0(%ebp),%ecx
4124a1:	8b 95 b4 f8 ff ff    	mov    -0x74c(%ebp),%edx
4124a7:	2b f2                	sub    %edx,%esi
4124a9:	8d 0c b1             	lea    (%ecx,%esi,4),%ecx
4124ac:	89 8d a4 f8 ff ff    	mov    %ecx,-0x75c(%ebp)
4124b2:	3b c2                	cmp    %edx,%eax
4124b4:	72 67                	jb     0x41251d
4124b6:	3b f3                	cmp    %ebx,%esi
4124b8:	73 04                	jae    0x4124be
4124ba:	8b 39                	mov    (%ecx),%edi
4124bc:	eb 02                	jmp    0x4124c0
4124be:	33 ff                	xor    %edi,%edi
4124c0:	8d 46 ff             	lea    -0x1(%esi),%eax
4124c3:	3b c3                	cmp    %ebx,%eax
4124c5:	73 05                	jae    0x4124cc
4124c7:	8b 41 fc             	mov    -0x4(%ecx),%eax
4124ca:	eb 02                	jmp    0x4124ce
4124cc:	33 c0                	xor    %eax,%eax
4124ce:	23 bd a8 f8 ff ff    	and    -0x758(%ebp),%edi
4124d4:	23 85 8c f8 ff ff    	and    -0x774(%ebp),%eax
4124da:	8b 8d b0 f8 ff ff    	mov    -0x750(%ebp),%ecx
4124e0:	d3 e7                	shl    %cl,%edi
4124e2:	8b 8d 90 f8 ff ff    	mov    -0x770(%ebp),%ecx
4124e8:	d3 e8                	shr    %cl,%eax
4124ea:	8b 8d a4 f8 ff ff    	mov    -0x75c(%ebp),%ecx
4124f0:	0b f8                	or     %eax,%edi
4124f2:	8b 85 ac f8 ff ff    	mov    -0x754(%ebp),%eax
4124f8:	83 e9 04             	sub    $0x4,%ecx
4124fb:	89 8d a4 f8 ff ff    	mov    %ecx,-0x75c(%ebp)
412501:	89 bc 85 30 fe ff ff 	mov    %edi,-0x1d0(%ebp,%eax,4)
412508:	48                   	dec    %eax
412509:	4e                   	dec    %esi
41250a:	89 85 ac f8 ff ff    	mov    %eax,-0x754(%ebp)
412510:	83 f8 ff             	cmp    $0xffffffff,%eax
412513:	74 08                	je     0x41251d
412515:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
41251b:	eb 95                	jmp    0x4124b2
41251d:	8b 95 a0 f8 ff ff    	mov    -0x760(%ebp),%edx
412523:	8b bd b4 f8 ff ff    	mov    -0x74c(%ebp),%edi
412529:	6a 02                	push   $0x2
41252b:	5e                   	pop    %esi
41252c:	85 ff                	test   %edi,%edi
41252e:	74 0c                	je     0x41253c
412530:	8b cf                	mov    %edi,%ecx
412532:	33 c0                	xor    %eax,%eax
412534:	8d bd 30 fe ff ff    	lea    -0x1d0(%ebp),%edi
41253a:	f3 ab                	rep stos %eax,%es:(%edi)
41253c:	80 bd bb f8 ff ff 00 	cmpb   $0x0,-0x745(%ebp)
412543:	bb cc 01 00 00       	mov    $0x1cc,%ebx
412548:	74 0b                	je     0x412555
41254a:	8d 42 01             	lea    0x1(%edx),%eax
41254d:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
412553:	eb 33                	jmp    0x412588
412555:	89 95 2c fe ff ff    	mov    %edx,-0x1d4(%ebp)
41255b:	eb 2b                	jmp    0x412588
41255d:	33 c0                	xor    %eax,%eax
41255f:	bb cc 01 00 00       	mov    $0x1cc,%ebx
412564:	50                   	push   %eax
412565:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
41256b:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
412571:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
412577:	50                   	push   %eax
412578:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
41257e:	53                   	push   %ebx
41257f:	50                   	push   %eax
412580:	e8 2f d6 ff ff       	call   0x40fbb4
412585:	83 c4 10             	add    $0x10,%esp
412588:	83 a5 94 fa ff ff 00 	andl   $0x0,-0x56c(%ebp)
41258f:	33 c0                	xor    %eax,%eax
412591:	40                   	inc    %eax
412592:	89 b5 90 fa ff ff    	mov    %esi,-0x570(%ebp)
412598:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
41259e:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
4125a4:	6a 04                	push   $0x4
4125a6:	e9 19 fe ff ff       	jmp    0x4123c4
4125ab:	81 fe 02 fc ff ff    	cmp    $0xfffffc02,%esi
4125b1:	0f 84 19 01 00 00    	je     0x4126d0
4125b7:	83 a5 90 fa ff ff 00 	andl   $0x0,-0x570(%ebp)
4125be:	6a 02                	push   $0x2
4125c0:	59                   	pop    %ecx
4125c1:	c7 85 94 fa ff ff 00 	movl   $0x100000,-0x56c(%ebp)
4125c8:	00 10 00
4125cb:	89 8d 8c fa ff ff    	mov    %ecx,-0x574(%ebp)
4125d1:	3b d9                	cmp    %ecx,%ebx
4125d3:	0f 85 f7 00 00 00    	jne    0x4126d0
4125d9:	33 d2                	xor    %edx,%edx
4125db:	8b 84 15 90 fa ff ff 	mov    -0x570(%ebp,%edx,1),%eax
4125e2:	3b 84 15 30 fe ff ff 	cmp    -0x1d0(%ebp,%edx,1),%eax
4125e9:	0f 85 e1 00 00 00    	jne    0x4126d0
4125ef:	83 c2 04             	add    $0x4,%edx
4125f2:	83 fa 08             	cmp    $0x8,%edx
4125f5:	75 e4                	jne    0x4125db
4125f7:	83 a5 9c f8 ff ff 00 	andl   $0x0,-0x764(%ebp)
4125fe:	0f bd c7             	bsr    %edi,%eax
412601:	74 05                	je     0x412608
412603:	8d 50 01             	lea    0x1(%eax),%edx
412606:	eb 02                	jmp    0x41260a
412608:	33 d2                	xor    %edx,%edx
41260a:	6a 20                	push   $0x20
41260c:	58                   	pop    %eax
41260d:	2b c2                	sub    %edx,%eax
41260f:	8b f1                	mov    %ecx,%esi
412611:	3b c1                	cmp    %ecx,%eax
412613:	8d 85 38 fe ff ff    	lea    -0x1c8(%ebp),%eax
412619:	89 85 ac f8 ff ff    	mov    %eax,-0x754(%ebp)
41261f:	8b f8                	mov    %eax,%edi
412621:	0f 92 85 bb f8 ff ff 	setb   -0x745(%ebp)
412628:	3b f3                	cmp    %ebx,%esi
41262a:	73 0a                	jae    0x412636
41262c:	8b 17                	mov    (%edi),%edx
41262e:	89 95 b0 f8 ff ff    	mov    %edx,-0x750(%ebp)
412634:	eb 07                	jmp    0x41263d
412636:	83 a5 b0 f8 ff ff 00 	andl   $0x0,-0x750(%ebp)
41263d:	8d 46 ff             	lea    -0x1(%esi),%eax
412640:	3b c3                	cmp    %ebx,%eax
412642:	73 05                	jae    0x412649
412644:	8b 57 fc             	mov    -0x4(%edi),%edx
412647:	eb 02                	jmp    0x41264b
412649:	33 d2                	xor    %edx,%edx
41264b:	8b 85 b0 f8 ff ff    	mov    -0x750(%ebp),%eax
412651:	83 ef 04             	sub    $0x4,%edi
412654:	c1 e0 02             	shl    $0x2,%eax
412657:	c1 ea 1e             	shr    $0x1e,%edx
41265a:	33 d0                	xor    %eax,%edx
41265c:	8b 85 ac f8 ff ff    	mov    -0x754(%ebp),%eax
412662:	4e                   	dec    %esi
412663:	89 10                	mov    %edx,(%eax)
412665:	83 e8 04             	sub    $0x4,%eax
412668:	89 85 ac f8 ff ff    	mov    %eax,-0x754(%ebp)
41266e:	83 fe ff             	cmp    $0xffffffff,%esi
412671:	74 08                	je     0x41267b
412673:	8b 9d 2c fe ff ff    	mov    -0x1d4(%ebp),%ebx
412679:	eb ad                	jmp    0x412628
41267b:	33 c0                	xor    %eax,%eax
41267d:	38 85 bb f8 ff ff    	cmp    %al,-0x745(%ebp)
412683:	0f 95 c0             	setne  %al
412686:	03 c1                	add    %ecx,%eax
412688:	2b 8d b4 f8 ff ff    	sub    -0x74c(%ebp),%ecx
41268e:	8b f9                	mov    %ecx,%edi
412690:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
412696:	c1 ef 05             	shr    $0x5,%edi
412699:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
41269f:	8b f7                	mov    %edi,%esi
4126a1:	89 8d a8 f8 ff ff    	mov    %ecx,-0x758(%ebp)
4126a7:	c1 e6 02             	shl    $0x2,%esi
4126aa:	56                   	push   %esi
4126ab:	6a 00                	push   $0x0
4126ad:	50                   	push   %eax
4126ae:	e8 ad 23 ff ff       	call   0x404a60
4126b3:	8b 8d a8 f8 ff ff    	mov    -0x758(%ebp),%ecx
4126b9:	33 c0                	xor    %eax,%eax
4126bb:	40                   	inc    %eax
4126bc:	83 e1 1f             	and    $0x1f,%ecx
4126bf:	d3 e0                	shl    %cl,%eax
4126c1:	89 84 35 90 fa ff ff 	mov    %eax,-0x570(%ebp,%esi,1)
4126c8:	8d 47 01             	lea    0x1(%edi),%eax
4126cb:	e9 40 01 00 00       	jmp    0x412810
4126d0:	8b 84 9d 2c fe ff ff 	mov    -0x1d4(%ebp,%ebx,4),%eax
4126d7:	83 a5 9c f8 ff ff 00 	andl   $0x0,-0x764(%ebp)
4126de:	0f bd c0             	bsr    %eax,%eax
4126e1:	74 05                	je     0x4126e8
4126e3:	8d 48 01             	lea    0x1(%eax),%ecx
4126e6:	eb 02                	jmp    0x4126ea
4126e8:	33 c9                	xor    %ecx,%ecx
4126ea:	6a 20                	push   $0x20
4126ec:	58                   	pop    %eax
4126ed:	2b c1                	sub    %ecx,%eax
4126ef:	83 f8 01             	cmp    $0x1,%eax
4126f2:	0f 92 c0             	setb   %al
4126f5:	83 fb 73             	cmp    $0x73,%ebx
4126f8:	88 85 bb f8 ff ff    	mov    %al,-0x745(%ebp)
4126fe:	0f 97 c1             	seta   %cl
412701:	83 fb 73             	cmp    $0x73,%ebx
412704:	75 08                	jne    0x41270e
412706:	84 c0                	test   %al,%al
412708:	74 04                	je     0x41270e
41270a:	b0 01                	mov    $0x1,%al
41270c:	eb 02                	jmp    0x412710
41270e:	32 c0                	xor    %al,%al
412710:	84 c9                	test   %cl,%cl
412712:	0f 85 9b 00 00 00    	jne    0x4127b3
412718:	84 c0                	test   %al,%al
41271a:	0f 85 93 00 00 00    	jne    0x4127b3
412720:	6a 72                	push   $0x72
412722:	59                   	pop    %ecx
412723:	3b d9                	cmp    %ecx,%ebx
412725:	73 02                	jae    0x412729
412727:	8b cb                	mov    %ebx,%ecx
412729:	83 f9 ff             	cmp    $0xffffffff,%ecx