45b229:	23 c8                	and    %eax,%ecx
45b22b:	8b 42 04             	mov    0x4(%edx),%eax
45b22e:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45b231:	8d 4d 08             	lea    0x8(%ebp),%ecx
45b234:	3b c8                	cmp    %eax,%ecx
45b236:	74 16                	je     0x45b24e
45b238:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
45b23c:	8b c8                	mov    %eax,%ecx
45b23e:	72 02                	jb     0x45b242
45b240:	8b 08                	mov    (%eax),%ecx
45b242:	ff 70 10             	push   0x10(%eax)
45b245:	51                   	push   %ecx
45b246:	8d 4d 08             	lea    0x8(%ebp),%ecx
45b249:	e8 f2 9f fe ff       	call   0x445240
45b24e:	8b 45 18             	mov    0x18(%ebp),%eax
45b251:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
45b257:	40                   	inc    %eax
45b258:	c6 45 fc 07          	movb   $0x7,-0x4(%ebp)
45b25c:	83 ce 01             	or     $0x1,%esi
45b25f:	c7 85 00 fd ff ff 00 	movl   $0x0,-0x300(%ebp)
45b266:	00 00 00
45b269:	50                   	push   %eax
45b26a:	c7 85 04 fd ff ff 0f 	movl   $0xf,-0x2fc(%ebp)
45b271:	00 00 00
45b274:	c6 85 f0 fc ff ff 00 	movb   $0x0,-0x310(%ebp)
45b27b:	89 b5 10 fd ff ff    	mov    %esi,-0x2f0(%ebp)
45b281:	e8 ea 86 ff ff       	call   0x453970
45b286:	83 7d 1c 10          	cmpl   $0x10,0x1c(%ebp)
45b28a:	8d 45 08             	lea    0x8(%ebp),%eax
45b28d:	ff 75 18             	push   0x18(%ebp)
45b290:	0f 43 45 08          	cmovae 0x8(%ebp),%eax
45b294:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
45b29a:	50                   	push   %eax
45b29b:	e8 20 9e fe ff       	call   0x4450c0
45b2a0:	6a 01                	push   $0x1
45b2a2:	68 b4 b0 68 00       	push   $0x68b0b4
45b2a7:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
45b2ad:	e8 0e 9e fe ff       	call   0x4450c0
45b2b2:	8b 8d dc fc ff ff    	mov    -0x324(%ebp),%ecx
45b2b8:	8b c1                	mov    %ecx,%eax
45b2ba:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
45b2be:	72 02                	jb     0x45b2c2
45b2c0:	8b 01                	mov    (%ecx),%eax
45b2c2:	ff 71 10             	push   0x10(%ecx)
45b2c5:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
45b2cb:	50                   	push   %eax
45b2cc:	e8 ef 9d fe ff       	call   0x4450c0
45b2d1:	83 ce 02             	or     $0x2,%esi
45b2d4:	0f 10 00             	movups (%eax),%xmm0
45b2d7:	f3 0f 7e 48 10       	movq   0x10(%eax),%xmm1
45b2dc:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
45b2e3:	c7 40 14 0f 00 00 00 	movl   $0xf,0x14(%eax)
45b2ea:	c6 00 00             	movb   $0x0,(%eax)
45b2ed:	8b 55 a8             	mov    -0x58(%ebp),%edx
45b2f0:	66 0f d6 8d e4 fc ff 	movq   %xmm1,-0x31c(%ebp)
45b2f7:	ff
45b2f8:	0f 11 85 1c fd ff ff 	movups %xmm0,-0x2e4(%ebp)
45b2ff:	83 fa 10             	cmp    $0x10,%edx
45b302:	72 3b                	jb     0x45b33f
45b304:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
45b307:	42                   	inc    %edx
45b308:	8b c1                	mov    %ecx,%eax
45b30a:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
45b310:	72 14                	jb     0x45b326
45b312:	8b 49 fc             	mov    -0x4(%ecx),%ecx
45b315:	83 c2 23             	add    $0x23,%edx
45b318:	2b c1                	sub    %ecx,%eax
45b31a:	83 c0 fc             	add    $0xfffffffc,%eax
45b31d:	83 f8 1f             	cmp    $0x1f,%eax
45b320:	0f 87 2f 0a 00 00    	ja     0x45bd55
45b326:	52                   	push   %edx
45b327:	51                   	push   %ecx
45b328:	e8 45 5d 18 00       	call   0x5e1072
45b32d:	0f 10 85 1c fd ff ff 	movups -0x2e4(%ebp),%xmm0
45b334:	83 c4 08             	add    $0x8,%esp
45b337:	f3 0f 7e 8d e4 fc ff 	movq   -0x31c(%ebp),%xmm1
45b33e:	ff
45b33f:	8b 95 04 fd ff ff    	mov    -0x2fc(%ebp),%edx
45b345:	83 e6 fe             	and    $0xfffffffe,%esi
45b348:	66 0f d6 4d a4       	movq   %xmm1,-0x5c(%ebp)
45b34d:	89 b5 10 fd ff ff    	mov    %esi,-0x2f0(%ebp)
45b353:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
45b357:	0f 11 45 94          	movups %xmm0,-0x6c(%ebp)
45b35b:	83 fa 10             	cmp    $0x10,%edx
45b35e:	72 2f                	jb     0x45b38f
45b360:	8b 8d f0 fc ff ff    	mov    -0x310(%ebp),%ecx
45b366:	42                   	inc    %edx
45b367:	8b c1                	mov    %ecx,%eax
45b369:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
45b36f:	72 14                	jb     0x45b385
45b371:	8b 49 fc             	mov    -0x4(%ecx),%ecx
45b374:	83 c2 23             	add    $0x23,%edx
45b377:	2b c1                	sub    %ecx,%eax
45b379:	83 c0 fc             	add    $0xfffffffc,%eax
45b37c:	83 f8 1f             	cmp    $0x1f,%eax
45b37f:	0f 87 d0 09 00 00    	ja     0x45bd55
45b385:	52                   	push   %edx
45b386:	51                   	push   %ecx
45b387:	e8 e6 5c 18 00       	call   0x5e1072
45b38c:	83 c4 08             	add    $0x8,%esp
45b38f:	8d 4d dc             	lea    -0x24(%ebp),%ecx
45b392:	e8 d9 0c 00 00       	call   0x45c070
45b397:	83 7d a8 10          	cmpl   $0x10,-0x58(%ebp)
45b39b:	8d 55 94             	lea    -0x6c(%ebp),%edx
45b39e:	8b 45 a4             	mov    -0x5c(%ebp),%eax
45b3a1:	8d 7d 94             	lea    -0x6c(%ebp),%edi
45b3a4:	0f 43 55 94          	cmovae -0x6c(%ebp),%edx
45b3a8:	03 c2                	add    %edx,%eax
45b3aa:	c7 85 24 fd ff ff 00 	movl   $0x0,-0x2dc(%ebp)
45b3b1:	00 00 00
45b3b4:	83 7d a8 10          	cmpl   $0x10,-0x58(%ebp)
45b3b8:	89 85 08 fd ff ff    	mov    %eax,-0x2f8(%ebp)
45b3be:	0f 43 7d 94          	cmovae -0x6c(%ebp),%edi
45b3c2:	33 c9                	xor    %ecx,%ecx
45b3c4:	2b c7                	sub    %edi,%eax
45b3c6:	66 89 8d 14 fd ff ff 	mov    %cx,-0x2ec(%ebp)
45b3cd:	50                   	push   %eax
45b3ce:	8d 8d 14 fd ff ff    	lea    -0x2ec(%ebp),%ecx
45b3d4:	c7 85 28 fd ff ff 07 	movl   $0x7,-0x2d8(%ebp)
45b3db:	00 00 00
45b3de:	e8 8d 62 fe ff       	call   0x441670
45b3e3:	ff b5 ec fc ff ff    	push   -0x314(%ebp)
45b3e9:	8d 8d 14 fd ff ff    	lea    -0x2ec(%ebp),%ecx
45b3ef:	ff b5 08 fd ff ff    	push   -0x2f8(%ebp)
45b3f5:	57                   	push   %edi
45b3f6:	e8 f5 89 fe ff       	call   0x443df0
45b3fb:	8b 8d 28 fd ff ff    	mov    -0x2d8(%ebp),%ecx
45b401:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
45b405:	39 4d c0             	cmp    %ecx,-0x40(%ebp)
45b408:	73 56                	jae    0x45b460
45b40a:	0f 10 85 14 fd ff ff 	movups -0x2ec(%ebp),%xmm0
45b411:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
45b415:	f3 0f 7e 4d bc       	movq   -0x44(%ebp),%xmm1
45b41a:	0f 10 55 ac          	movups -0x54(%ebp),%xmm2
45b41e:	66 0f d6 8d a4 fc ff 	movq   %xmm1,-0x35c(%ebp)
45b425:	ff
45b426:	8b 95 a8 fc ff ff    	mov    -0x358(%ebp),%edx
45b42c:	0f 11 45 ac          	movups %xmm0,-0x54(%ebp)
45b430:	f3 0f 7e 85 24 fd ff 	movq   -0x2dc(%ebp),%xmm0
45b437:	ff
45b438:	66 0f d6 45 bc       	movq   %xmm0,-0x44(%ebp)
45b43d:	66 0f d6 8d 24 fd ff 	movq   %xmm1,-0x2dc(%ebp)
45b444:	ff
45b445:	0f 11 95 94 fc ff ff 	movups %xmm2,-0x36c(%ebp)
45b44c:	0f 11 95 14 fd ff ff 	movups %xmm2,-0x2ec(%ebp)
45b453:	83 fa 08             	cmp    $0x8,%edx
45b456:	72 6b                	jb     0x45b4c3
45b458:	8b 8d 94 fc ff ff    	mov    -0x36c(%ebp),%ecx
45b45e:	eb 34                	jmp    0x45b494
45b460:	ff b5 24 fd ff ff    	push   -0x2dc(%ebp)
45b466:	83 f9 08             	cmp    $0x8,%ecx
45b469:	8d 85 14 fd ff ff    	lea    -0x2ec(%ebp),%eax
45b46f:	8d 4d ac             	lea    -0x54(%ebp),%ecx
45b472:	0f 43 85 14 fd ff ff 	cmovae -0x2ec(%ebp),%eax
45b479:	50                   	push   %eax
45b47a:	e8 c1 9e fe ff       	call   0x445340
45b47f:	8b 95 28 fd ff ff    	mov    -0x2d8(%ebp),%edx
45b485:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
45b489:	83 fa 08             	cmp    $0x8,%edx
45b48c:	72 35                	jb     0x45b4c3
45b48e:	8b 8d 14 fd ff ff    	mov    -0x2ec(%ebp),%ecx
45b494:	8d 14 55 02 00 00 00 	lea    0x2(,%edx,2),%edx
45b49b:	8b c1                	mov    %ecx,%eax
45b49d:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
45b4a3:	72 14                	jb     0x45b4b9
45b4a5:	8b 49 fc             	mov    -0x4(%ecx),%ecx
45b4a8:	83 c2 23             	add    $0x23,%edx
45b4ab:	2b c1                	sub    %ecx,%eax
45b4ad:	83 c0 fc             	add    $0xfffffffc,%eax
45b4b0:	83 f8 1f             	cmp    $0x1f,%eax
45b4b3:	0f 87 9c 08 00 00    	ja     0x45bd55
45b4b9:	52                   	push   %edx
45b4ba:	51                   	push   %ecx
45b4bb:	e8 b2 5b 18 00       	call   0x5e1072
45b4c0:	83 c4 08             	add    $0x8,%esp
45b4c3:	83 7d c0 08          	cmpl   $0x8,-0x40(%ebp)
45b4c7:	8d 8d 2c fd ff ff    	lea    -0x2d4(%ebp),%ecx
45b4cd:	8d 45 ac             	lea    -0x54(%ebp),%eax
45b4d0:	0f 43 45 ac          	cmovae -0x54(%ebp),%eax
45b4d4:	51                   	push   %ecx
45b4d5:	50                   	push   %eax
45b4d6:	ff 15 10 21 68 00    	call   *0x682110
45b4dc:	89 85 08 fd ff ff    	mov    %eax,-0x2f8(%ebp)
45b4e2:	8b f0                	mov    %eax,%esi
45b4e4:	83 f8 ff             	cmp    $0xffffffff,%eax
45b4e7:	0f 84 a9 06 00 00    	je     0x45bb96
45b4ed:	0f 1f 00             	nopl   (%eax)
45b4f0:	ba 54 ef 68 00       	mov    $0x68ef54,%edx
45b4f5:	8d 8d 58 fd ff ff    	lea    -0x2a8(%ebp),%ecx
45b4fb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
45b500:	66 8b 01             	mov    (%ecx),%ax
45b503:	66 3b 02             	cmp    (%edx),%ax
45b506:	75 1e                	jne    0x45b526
45b508:	66 85 c0             	test   %ax,%ax
45b50b:	74 15                	je     0x45b522
45b50d:	66 8b 41 02          	mov    0x2(%ecx),%ax
45b511:	66 3b 42 02          	cmp    0x2(%edx),%ax
45b515:	75 0f                	jne    0x45b526
45b517:	83 c1 04             	add    $0x4,%ecx
45b51a:	83 c2 04             	add    $0x4,%edx
45b51d:	66 85 c0             	test   %ax,%ax
45b520:	75 de                	jne    0x45b500
45b522:	33 c0                	xor    %eax,%eax
45b524:	eb 05                	jmp    0x45b52b
45b526:	1b c0                	sbb    %eax,%eax
45b528:	83 c8 01             	or     $0x1,%eax
45b52b:	85 c0                	test   %eax,%eax
45b52d:	0f 84 4d 06 00 00    	je     0x45bb80
45b533:	b9 58 ef 68 00       	mov    $0x68ef58,%ecx
45b538:	8d 85 58 fd ff ff    	lea    -0x2a8(%ebp),%eax
45b53e:	66 90                	xchg   %ax,%ax
45b540:	66 8b 10             	mov    (%eax),%dx
45b543:	66 3b 11             	cmp    (%ecx),%dx
45b546:	75 1e                	jne    0x45b566
45b548:	66 85 d2             	test   %dx,%dx
45b54b:	74 15                	je     0x45b562
45b54d:	66 8b 50 02          	mov    0x2(%eax),%dx
45b551:	66 3b 51 02          	cmp    0x2(%ecx),%dx
45b555:	75 0f                	jne    0x45b566
45b557:	83 c0 04             	add    $0x4,%eax
45b55a:	83 c1 04             	add    $0x4,%ecx
45b55d:	66 85 d2             	test   %dx,%dx
45b560:	75 de                	jne    0x45b540
45b562:	33 c0                	xor    %eax,%eax
45b564:	eb 05                	jmp    0x45b56b
45b566:	1b c0                	sbb    %eax,%eax
45b568:	83 c8 01             	or     $0x1,%eax
45b56b:	85 c0                	test   %eax,%eax
45b56d:	0f 84 0d 06 00 00    	je     0x45bb80
45b573:	8d 8d 58 fd ff ff    	lea    -0x2a8(%ebp),%ecx
45b579:	8d 51 02             	lea    0x2(%ecx),%edx
45b57c:	0f 1f 40 00          	nopl   0x0(%eax)
45b580:	66 8b 01             	mov    (%ecx),%ax
45b583:	83 c1 02             	add    $0x2,%ecx
45b586:	66 85 c0             	test   %ax,%ax
45b589:	75 f5                	jne    0x45b580
45b58b:	2b ca                	sub    %edx,%ecx
45b58d:	8d 85 58 fd ff ff    	lea    -0x2a8(%ebp),%eax
45b593:	d1 f9                	sar    $1,%ecx
45b595:	51                   	push   %ecx
45b596:	50                   	push   %eax
45b597:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
45b59d:	e8 9e 9d fe ff       	call   0x445340
45b5a2:	83 7d 90 08          	cmpl   $0x8,-0x70(%ebp)
45b5a6:	8d 95 7c ff ff ff    	lea    -0x84(%ebp),%edx
45b5ac:	8b 45 8c             	mov    -0x74(%ebp),%eax
45b5af:	8d bd 7c ff ff ff    	lea    -0x84(%ebp),%edi
45b5b5:	0f 43 95 7c ff ff ff 	cmovae -0x84(%ebp),%edx
45b5bc:	8d 8d 14 fd ff ff    	lea    -0x2ec(%ebp),%ecx
45b5c2:	0f 43 bd 7c ff ff ff 	cmovae -0x84(%ebp),%edi
45b5c9:	c7 85 24 fd ff ff 00 	movl   $0x0,-0x2dc(%ebp)
45b5d0:	00 00 00
45b5d3:	c7 85 28 fd ff ff 0f 	movl   $0xf,-0x2d8(%ebp)
45b5da:	00 00 00
45b5dd:	8d 04 42             	lea    (%edx,%eax,2),%eax
45b5e0:	c6 85 14 fd ff ff 00 	movb   $0x0,-0x2ec(%ebp)
45b5e7:	89 85 e8 fc ff ff    	mov    %eax,-0x318(%ebp)
45b5ed:	2b c7                	sub    %edi,%eax
45b5ef:	d1 f8                	sar    $1,%eax
45b5f1:	50                   	push   %eax
45b5f2:	e8 79 83 ff ff       	call   0x453970
45b5f7:	ff b5 ec fc ff ff    	push   -0x314(%ebp)
45b5fd:	8d 8d 14 fd ff ff    	lea    -0x2ec(%ebp),%ecx
45b603:	ff b5 e8 fc ff ff    	push   -0x318(%ebp)
45b609:	57                   	push   %edi
45b60a:	e8 61 89 fe ff       	call   0x443f70
45b60f:	8b 8d 28 fd ff ff    	mov    -0x2d8(%ebp),%ecx
45b615:	c6 45 fc 09          	movb   $0x9,-0x4(%ebp)
45b619:	39 4d d8             	cmp    %ecx,-0x28(%ebp)
45b61c:	73 56                	jae    0x45b674
45b61e:	0f 10 85 14 fd ff ff 	movups -0x2ec(%ebp),%xmm0
45b625:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
45b629:	f3 0f 7e 4d d4       	movq   -0x2c(%ebp),%xmm1
45b62e:	0f 10 55 c4          	movups -0x3c(%ebp),%xmm2
45b632:	66 0f d6 8d 8c fc ff 	movq   %xmm1,-0x374(%ebp)
45b639:	ff
45b63a:	8b 95 90 fc ff ff    	mov    -0x370(%ebp),%edx
45b640:	0f 11 45 c4          	movups %xmm0,-0x3c(%ebp)
45b644:	f3 0f 7e 85 24 fd ff 	movq   -0x2dc(%ebp),%xmm0
45b64b:	ff
45b64c:	66 0f d6 45 d4       	movq   %xmm0,-0x2c(%ebp)
45b651:	66 0f d6 8d 24 fd ff 	movq   %xmm1,-0x2dc(%ebp)
45b658:	ff
45b659:	0f 11 95 7c fc ff ff 	movups %xmm2,-0x384(%ebp)
45b660:	0f 11 95 14 fd ff ff 	movups %xmm2,-0x2ec(%ebp)
45b667:	83 fa 10             	cmp    $0x10,%edx
45b66a:	72 65                	jb     0x45b6d1
45b66c:	8b 8d 7c fc ff ff    	mov    -0x384(%ebp),%ecx
45b672:	eb 34                	jmp    0x45b6a8
45b674:	ff b5 24 fd ff ff    	push   -0x2dc(%ebp)
45b67a:	83 f9 10             	cmp    $0x10,%ecx
45b67d:	8d 85 14 fd ff ff    	lea    -0x2ec(%ebp),%eax
45b683:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45b686:	0f 43 85 14 fd ff ff 	cmovae -0x2ec(%ebp),%eax
45b68d:	50                   	push   %eax
45b68e:	e8 ad 9b fe ff       	call   0x445240
45b693:	8b 95 28 fd ff ff    	mov    -0x2d8(%ebp),%edx
45b699:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
45b69d:	83 fa 10             	cmp    $0x10,%edx
45b6a0:	72 2f                	jb     0x45b6d1
45b6a2:	8b 8d 14 fd ff ff    	mov    -0x2ec(%ebp),%ecx
45b6a8:	42                   	inc    %edx
45b6a9:	8b c1                	mov    %ecx,%eax
45b6ab:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
45b6b1:	72 14                	jb     0x45b6c7
45b6b3:	8b 49 fc             	mov    -0x4(%ecx),%ecx
45b6b6:	83 c2 23             	add    $0x23,%edx
45b6b9:	2b c1                	sub    %ecx,%eax
45b6bb:	83 c0 fc             	add    $0xfffffffc,%eax
45b6be:	83 f8 1f             	cmp    $0x1f,%eax
45b6c1:	0f 87 8e 06 00 00    	ja     0x45bd55
45b6c7:	52                   	push   %edx
45b6c8:	51                   	push   %ecx
45b6c9:	e8 a4 59 18 00       	call   0x5e1072
45b6ce:	83 c4 08             	add    $0x8,%esp
45b6d1:	f6 85 2c fd ff ff 10 	testb  $0x10,-0x2d4(%ebp)
45b6d8:	0f 84 26 03 00 00    	je     0x45ba04
45b6de:	b9 f8 ee 68 00       	mov    $0x68eef8,%ecx
45b6e3:	8d 85 58 fd ff ff    	lea    -0x2a8(%ebp),%eax
45b6e9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
45b6f0:	66 8b 10             	mov    (%eax),%dx
45b6f3:	66 3b 11             	cmp    (%ecx),%dx
45b6f6:	75 1e                	jne    0x45b716
45b6f8:	66 85 d2             	test   %dx,%dx
45b6fb:	74 15                	je     0x45b712
45b6fd:	66 8b 50 02          	mov    0x2(%eax),%dx
45b701:	66 3b 51 02          	cmp    0x2(%ecx),%dx
45b705:	75 0f                	jne    0x45b716
45b707:	83 c0 04             	add    $0x4,%eax
45b70a:	83 c1 04             	add    $0x4,%ecx
45b70d:	66 85 d2             	test   %dx,%dx
45b710:	75 de                	jne    0x45b6f0
45b712:	33 c0                	xor    %eax,%eax
45b714:	eb 05                	jmp    0x45b71b
45b716:	1b c0                	sbb    %eax,%eax
45b718:	83 c8 01             	or     $0x1,%eax
45b71b:	85 c0                	test   %eax,%eax
45b71d:	0f 84 57 04 00 00    	je     0x45bb7a
45b723:	b8 60 ef 68 00       	mov    $0x68ef60,%eax
45b728:	8d 8d 58 fd ff ff    	lea    -0x2a8(%ebp),%ecx
45b72e:	66 90                	xchg   %ax,%ax
45b730:	66 8b 11             	mov    (%ecx),%dx
45b733:	66 3b 10             	cmp    (%eax),%dx
45b736:	75 1e                	jne    0x45b756
45b738:	66 85 d2             	test   %dx,%dx
45b73b:	74 15                	je     0x45b752
45b73d:	66 8b 51 02          	mov    0x2(%ecx),%dx
45b741:	66 3b 50 02          	cmp    0x2(%eax),%dx
45b745:	75 0f                	jne    0x45b756
45b747:	83 c1 04             	add    $0x4,%ecx