43223d:	66 0f d6 45 c8       	movq   %xmm0,-0x38(%ebp)
432242:	e8 c9 b2 ff ff       	call   0x42d510
432247:	8b 4d c8             	mov    -0x38(%ebp),%ecx
43224a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
43224d:	0f 1f 00             	nopl   (%eax)
432250:	66 8b 10             	mov    (%eax),%dx
432253:	66 3b 11             	cmp    (%ecx),%dx
432256:	75 1e                	jne    0x432276
432258:	66 85 d2             	test   %dx,%dx
43225b:	74 15                	je     0x432272
43225d:	66 8b 50 02          	mov    0x2(%eax),%dx
432261:	66 3b 51 02          	cmp    0x2(%ecx),%dx
432265:	75 0f                	jne    0x432276
432267:	83 c0 04             	add    $0x4,%eax
43226a:	83 c1 04             	add    $0x4,%ecx
43226d:	66 85 d2             	test   %dx,%dx
432270:	75 de                	jne    0x432250
432272:	33 c0                	xor    %eax,%eax
432274:	eb 05                	jmp    0x43227b
432276:	1b c0                	sbb    %eax,%eax
432278:	83 c8 01             	or     $0x1,%eax
43227b:	8b 7d 9c             	mov    -0x64(%ebp),%edi
43227e:	85 c0                	test   %eax,%eax
432280:	8b 45 98             	mov    -0x68(%ebp),%eax
432283:	0f 94 45 b7          	sete   -0x49(%ebp)
432287:	8b 00                	mov    (%eax),%eax
432289:	3b c7                	cmp    %edi,%eax
43228b:	74 14                	je     0x4322a1
43228d:	0f 1f 00             	nopl   (%eax)
432290:	8b 30                	mov    (%eax),%esi
432292:	50                   	push   %eax
432293:	e8 ea 73 04 00       	call   0x479682
432298:	83 c4 04             	add    $0x4,%esp
43229b:	8b c6                	mov    %esi,%eax
43229d:	3b f7                	cmp    %edi,%esi
43229f:	75 ef                	jne    0x432290
4322a1:	8b 45 98             	mov    -0x68(%ebp),%eax
4322a4:	8b 4d a0             	mov    -0x60(%ebp),%ecx
4322a7:	89 38                	mov    %edi,(%eax)
4322a9:	89 48 04             	mov    %ecx,0x4(%eax)
4322ac:	8a 45 b7             	mov    -0x49(%ebp),%al
4322af:	e9 d0 04 00 00       	jmp    0x432784
4322b4:	ff 75 b0             	push   -0x50(%ebp)
4322b7:	8b cf                	mov    %edi,%ecx
4322b9:	56                   	push   %esi
4322ba:	e8 91 a7 ff ff       	call   0x42ca50
4322bf:	ff 75 b0             	push   -0x50(%ebp)
4322c2:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4322c5:	56                   	push   %esi
4322c6:	f2 0f 11 45 cc       	movsd  %xmm0,-0x34(%ebp)
4322cb:	e8 80 a7 ff ff       	call   0x42ca50
4322d0:	66 0f 2e 45 cc       	ucomisd -0x34(%ebp),%xmm0
4322d5:	9f                   	lahf
4322d6:	f6 c4 44             	test   $0x44,%ah
4322d9:	0f 8a a3 04 00 00    	jp     0x432782
4322df:	b0 01                	mov    $0x1,%al
4322e1:	e9 9e 04 00 00       	jmp    0x432784
4322e6:	ff 75 b0             	push   -0x50(%ebp)
4322e9:	8b cf                	mov    %edi,%ecx
4322eb:	56                   	push   %esi
4322ec:	e8 ff a0 ff ff       	call   0x42c3f0
4322f1:	ff 75 b0             	push   -0x50(%ebp)
4322f4:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4322f7:	56                   	push   %esi
4322f8:	88 45 b7             	mov    %al,-0x49(%ebp)
4322fb:	e8 f0 a0 ff ff       	call   0x42c3f0
432300:	3a 45 b7             	cmp    -0x49(%ebp),%al
432303:	0f 94 c0             	sete   %al
432306:	e9 79 04 00 00       	jmp    0x432784
43230b:	80 f9 01             	cmp    $0x1,%cl
43230e:	0f 85 81 01 00 00    	jne    0x432495
432314:	8b 4d b0             	mov    -0x50(%ebp),%ecx
432317:	8b 01                	mov    (%ecx),%eax
432319:	89 45 88             	mov    %eax,-0x78(%ebp)
43231c:	f3 0f 7e 00          	movq   (%eax),%xmm0
432320:	8b 40 08             	mov    0x8(%eax),%eax
432323:	66 0f d6 45 8c       	movq   %xmm0,-0x74(%ebp)
432328:	89 45 94             	mov    %eax,-0x6c(%ebp)
43232b:	6a 00                	push   $0x0
43232d:	51                   	push   %ecx
43232e:	56                   	push   %esi
43232f:	8d 45 d4             	lea    -0x2c(%ebp),%eax
432332:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
432339:	0f 57 c0             	xorps  %xmm0,%xmm0
43233c:	8b ca                	mov    %edx,%ecx
43233e:	50                   	push   %eax
43233f:	0f 11 45 d4          	movups %xmm0,-0x2c(%ebp)
432343:	e8 d8 c1 ff ff       	call   0x42e520
432348:	6a 00                	push   $0x0
43234a:	ff 75 b0             	push   -0x50(%ebp)
43234d:	8d 45 b8             	lea    -0x48(%ebp),%eax
432350:	0f 57 c0             	xorps  %xmm0,%xmm0
432353:	56                   	push   %esi
432354:	50                   	push   %eax
432355:	8b cf                	mov    %edi,%ecx
432357:	0f 11 45 b8          	movups %xmm0,-0x48(%ebp)
43235b:	e8 c0 c1 ff ff       	call   0x42e520
432360:	8b 55 d8             	mov    -0x28(%ebp),%edx
432363:	89 55 ec             	mov    %edx,-0x14(%ebp)
432366:	3b 55 dc             	cmp    -0x24(%ebp),%edx
432369:	0f 84 c3 00 00 00    	je     0x432432
43236f:	8b 45 c0             	mov    -0x40(%ebp),%eax
432372:	8b 4d bc             	mov    -0x44(%ebp),%ecx
432375:	89 4d a8             	mov    %ecx,-0x58(%ebp)
432378:	3b c8                	cmp    %eax,%ecx
43237a:	0f 84 a3 00 00 00    	je     0x432423
432380:	8b 45 b0             	mov    -0x50(%ebp),%eax
432383:	8b d1                	mov    %ecx,%edx
432385:	8d 4d c8             	lea    -0x38(%ebp),%ecx
432388:	8b 38                	mov    (%eax),%edi
43238a:	57                   	push   %edi
43238b:	89 7d ac             	mov    %edi,-0x54(%ebp)
43238e:	f3 0f 7e 07          	movq   (%edi),%xmm0
432392:	66 0f d6 45 9c       	movq   %xmm0,-0x64(%ebp)
432397:	e8 64 87 ff ff       	call   0x42ab00
43239c:	8b 55 ec             	mov    -0x14(%ebp),%edx
43239f:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
4323a5:	8b f0                	mov    %eax,%esi
4323a7:	8b 45 b0             	mov    -0x50(%ebp),%eax
4323aa:	ff 30                	push   (%eax)
4323ac:	e8 4f 87 ff ff       	call   0x42ab00
4323b1:	8b 0e                	mov    (%esi),%ecx
4323b3:	83 c4 08             	add    $0x8,%esp
4323b6:	8b 00                	mov    (%eax),%eax
4323b8:	66 8b 10             	mov    (%eax),%dx
4323bb:	66 3b 11             	cmp    (%ecx),%dx
4323be:	75 1e                	jne    0x4323de
4323c0:	66 85 d2             	test   %dx,%dx
4323c3:	74 15                	je     0x4323da
4323c5:	66 8b 50 02          	mov    0x2(%eax),%dx
4323c9:	66 3b 51 02          	cmp    0x2(%ecx),%dx
4323cd:	75 0f                	jne    0x4323de
4323cf:	83 c0 04             	add    $0x4,%eax
4323d2:	83 c1 04             	add    $0x4,%ecx
4323d5:	66 85 d2             	test   %dx,%dx
4323d8:	75 de                	jne    0x4323b8
4323da:	33 c9                	xor    %ecx,%ecx
4323dc:	eb 05                	jmp    0x4323e3
4323de:	1b c9                	sbb    %ecx,%ecx
4323e0:	83 c9 01             	or     $0x1,%ecx
4323e3:	8b 07                	mov    (%edi),%eax
4323e5:	85 c9                	test   %ecx,%ecx
4323e7:	74 7d                	je     0x432466
4323e9:	8b 7d 9c             	mov    -0x64(%ebp),%edi
4323ec:	3b c7                	cmp    %edi,%eax
4323ee:	74 11                	je     0x432401
4323f0:	8b 30                	mov    (%eax),%esi
4323f2:	50                   	push   %eax
4323f3:	e8 8a 72 04 00       	call   0x479682
4323f8:	83 c4 04             	add    $0x4,%esp
4323fb:	8b c6                	mov    %esi,%eax
4323fd:	3b f7                	cmp    %edi,%esi
4323ff:	75 ef                	jne    0x4323f0
432401:	8b 4d ac             	mov    -0x54(%ebp),%ecx
432404:	8b 45 a0             	mov    -0x60(%ebp),%eax
432407:	89 41 04             	mov    %eax,0x4(%ecx)
43240a:	8b 45 c0             	mov    -0x40(%ebp),%eax
43240d:	89 39                	mov    %edi,(%ecx)
43240f:	8b 4d a8             	mov    -0x58(%ebp),%ecx
432412:	83 c1 08             	add    $0x8,%ecx
432415:	89 4d a8             	mov    %ecx,-0x58(%ebp)
432418:	3b c8                	cmp    %eax,%ecx
43241a:	0f 85 60 ff ff ff    	jne    0x432380
432420:	8b 55 ec             	mov    -0x14(%ebp),%edx
432423:	83 c2 08             	add    $0x8,%edx
432426:	89 55 ec             	mov    %edx,-0x14(%ebp)
432429:	3b 55 dc             	cmp    -0x24(%ebp),%edx
43242c:	0f 85 40 ff ff ff    	jne    0x432372
432432:	c6 45 b7 00          	movb   $0x0,-0x49(%ebp)
432436:	8b 45 88             	mov    -0x78(%ebp),%eax
432439:	8b 7d 8c             	mov    -0x74(%ebp),%edi
43243c:	8b 00                	mov    (%eax),%eax
43243e:	3b c7                	cmp    %edi,%eax
432440:	74 11                	je     0x432453
432442:	8b 30                	mov    (%eax),%esi
432444:	50                   	push   %eax
432445:	e8 38 72 04 00       	call   0x479682
43244a:	83 c4 04             	add    $0x4,%esp
43244d:	8b c6                	mov    %esi,%eax
43244f:	3b f7                	cmp    %edi,%esi
432451:	75 ef                	jne    0x432442
432453:	8b 45 88             	mov    -0x78(%ebp),%eax
432456:	8b 4d 90             	mov    -0x70(%ebp),%ecx
432459:	89 38                	mov    %edi,(%eax)
43245b:	89 48 04             	mov    %ecx,0x4(%eax)
43245e:	8a 45 b7             	mov    -0x49(%ebp),%al
432461:	e9 1e 03 00 00       	jmp    0x432784
432466:	3b 45 9c             	cmp    -0x64(%ebp),%eax
432469:	74 19                	je     0x432484
43246b:	8b 7d 9c             	mov    -0x64(%ebp),%edi
43246e:	66 90                	xchg   %ax,%ax
432470:	8b 30                	mov    (%eax),%esi
432472:	50                   	push   %eax
432473:	e8 0a 72 04 00       	call   0x479682
432478:	83 c4 04             	add    $0x4,%esp
43247b:	8b c6                	mov    %esi,%eax
43247d:	3b f7                	cmp    %edi,%esi
43247f:	75 ef                	jne    0x432470
432481:	8b 7d ac             	mov    -0x54(%ebp),%edi
432484:	8b 45 9c             	mov    -0x64(%ebp),%eax
432487:	89 07                	mov    %eax,(%edi)
432489:	8b 45 a0             	mov    -0x60(%ebp),%eax
43248c:	89 47 04             	mov    %eax,0x4(%edi)
43248f:	c6 45 b7 01          	movb   $0x1,-0x49(%ebp)
432493:	eb a1                	jmp    0x432436
432495:	3c 01                	cmp    $0x1,%al
432497:	8b ca                	mov    %edx,%ecx
432499:	8b 45 a8             	mov    -0x58(%ebp),%eax
43249c:	0f 45 45 d0          	cmovne -0x30(%ebp),%eax
4324a0:	0f 45 cf             	cmovne %edi,%ecx
4324a3:	0f 45 fa             	cmovne %edx,%edi
4324a6:	89 4d ac             	mov    %ecx,-0x54(%ebp)
4324a9:	83 f8 04             	cmp    $0x4,%eax
4324ac:	75 22                	jne    0x4324d0
4324ae:	ff 75 b0             	push   -0x50(%ebp)
4324b1:	56                   	push   %esi
4324b2:	e8 39 9f ff ff       	call   0x42c3f0
4324b7:	ff 75 b0             	push   -0x50(%ebp)
4324ba:	8b cf                	mov    %edi,%ecx
4324bc:	88 45 b7             	mov    %al,-0x49(%ebp)
4324bf:	56                   	push   %esi
4324c0:	e8 2b 9f ff ff       	call   0x42c3f0
4324c5:	3a 45 b7             	cmp    -0x49(%ebp),%al
4324c8:	0f 94 c0             	sete   %al
4324cb:	e9 b4 02 00 00       	jmp    0x432784
4324d0:	83 f8 02             	cmp    $0x2,%eax
4324d3:	0f 85 4b 01 00 00    	jne    0x432624
4324d9:	8b 4d b0             	mov    -0x50(%ebp),%ecx
4324dc:	8b 01                	mov    (%ecx),%eax
4324de:	89 45 88             	mov    %eax,-0x78(%ebp)
4324e1:	f3 0f 7e 00          	movq   (%eax),%xmm0
4324e5:	8b 40 08             	mov    0x8(%eax),%eax
4324e8:	66 0f d6 45 8c       	movq   %xmm0,-0x74(%ebp)
4324ed:	89 45 94             	mov    %eax,-0x6c(%ebp)
4324f0:	51                   	push   %ecx
4324f1:	56                   	push   %esi
4324f2:	8b cf                	mov    %edi,%ecx
4324f4:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
4324fb:	e8 50 a5 ff ff       	call   0x42ca50
432500:	8b 7d b0             	mov    -0x50(%ebp),%edi
432503:	8d 45 d4             	lea    -0x2c(%ebp),%eax
432506:	8b 4d ac             	mov    -0x54(%ebp),%ecx
432509:	0f 57 c9             	xorps  %xmm1,%xmm1
43250c:	6a 00                	push   $0x0
43250e:	57                   	push   %edi
43250f:	56                   	push   %esi
432510:	50                   	push   %eax
432511:	f2 0f 11 45 e8       	movsd  %xmm0,-0x18(%ebp)
432516:	0f 11 4d d4          	movups %xmm1,-0x2c(%ebp)
43251a:	e8 01 c0 ff ff       	call   0x42e520
43251f:	8b 4d d8             	mov    -0x28(%ebp),%ecx
432522:	89 4d ac             	mov    %ecx,-0x54(%ebp)
432525:	3b 4d dc             	cmp    -0x24(%ebp),%ecx
432528:	0f 84 bb 00 00 00    	je     0x4325e9
43252e:	66 90                	xchg   %ax,%ax
432530:	8b 37                	mov    (%edi),%esi
432532:	8b d1                	mov    %ecx,%edx
432534:	56                   	push   %esi
432535:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
43253b:	89 75 a8             	mov    %esi,-0x58(%ebp)
43253e:	f3 0f 7e 06          	movq   (%esi),%xmm0
432542:	66 0f d6 45 9c       	movq   %xmm0,-0x64(%ebp)
432547:	e8 b4 85 ff ff       	call   0x42ab00
43254c:	83 c4 04             	add    $0x4,%esp
43254f:	8b 38                	mov    (%eax),%edi
432551:	8b cf                	mov    %edi,%ecx
432553:	e8 f8 8b ff ff       	call   0x42b150
432558:	84 c0                	test   %al,%al
43255a:	75 0a                	jne    0x432566
43255c:	f2 0f 10 05 88 73 4b 	movsd  0x4b7388,%xmm0
432563:	00
432564:	eb 13                	jmp    0x432579
432566:	6a 00                	push   $0x0
432568:	57                   	push   %edi
432569:	e8 39 c5 04 00       	call   0x47eaa7
43256e:	dd 5d cc             	fstpl  -0x34(%ebp)
432571:	f2 0f 10 45 cc       	movsd  -0x34(%ebp),%xmm0
432576:	83 c4 08             	add    $0x8,%esp
432579:	f2 0f 10 4d e8       	movsd  -0x18(%ebp),%xmm1
43257e:	8b 7d 9c             	mov    -0x64(%ebp),%edi
432581:	66 0f 2e c8          	ucomisd %xmm0,%xmm1
432585:	9f                   	lahf
432586:	f6 c4 44             	test   $0x44,%ah
432589:	8b 06                	mov    (%esi),%eax
43258b:	7b 36                	jnp    0x4325c3
43258d:	3b c7                	cmp    %edi,%eax
43258f:	74 14                	je     0x4325a5
432591:	8b 30                	mov    (%eax),%esi
432593:	50                   	push   %eax
432594:	e8 e9 70 04 00       	call   0x479682
432599:	83 c4 04             	add    $0x4,%esp
43259c:	8b c6                	mov    %esi,%eax
43259e:	3b f7                	cmp    %edi,%esi
4325a0:	75 ef                	jne    0x432591
4325a2:	8b 75 a8             	mov    -0x58(%ebp),%esi
4325a5:	8b 4d ac             	mov    -0x54(%ebp),%ecx
4325a8:	8b 45 a0             	mov    -0x60(%ebp),%eax
4325ab:	83 c1 08             	add    $0x8,%ecx
4325ae:	89 3e                	mov    %edi,(%esi)
4325b0:	89 46 04             	mov    %eax,0x4(%esi)
4325b3:	89 4d ac             	mov    %ecx,-0x54(%ebp)
4325b6:	3b 4d dc             	cmp    -0x24(%ebp),%ecx
4325b9:	74 2e                	je     0x4325e9
4325bb:	8b 7d b0             	mov    -0x50(%ebp),%edi
4325be:	e9 6d ff ff ff       	jmp    0x432530
4325c3:	3b c7                	cmp    %edi,%eax
4325c5:	74 14                	je     0x4325db
4325c7:	8b 30                	mov    (%eax),%esi
4325c9:	50                   	push   %eax
4325ca:	e8 b3 70 04 00       	call   0x479682
4325cf:	83 c4 04             	add    $0x4,%esp
4325d2:	8b c6                	mov    %esi,%eax
4325d4:	3b f7                	cmp    %edi,%esi
4325d6:	75 ef                	jne    0x4325c7
4325d8:	8b 75 a8             	mov    -0x58(%ebp),%esi
4325db:	8b 45 a0             	mov    -0x60(%ebp),%eax
4325de:	89 3e                	mov    %edi,(%esi)
4325e0:	89 46 04             	mov    %eax,0x4(%esi)
4325e3:	c6 45 b7 01          	movb   $0x1,-0x49(%ebp)
4325e7:	eb 04                	jmp    0x4325ed
4325e9:	c6 45 b7 00          	movb   $0x0,-0x49(%ebp)
4325ed:	8b 45 88             	mov    -0x78(%ebp),%eax
4325f0:	8b 7d 8c             	mov    -0x74(%ebp),%edi
4325f3:	8b 00                	mov    (%eax),%eax
4325f5:	3b c7                	cmp    %edi,%eax
4325f7:	0f 84 56 fe ff ff    	je     0x432453
4325fd:	0f 1f 00             	nopl   (%eax)
432600:	8b 30                	mov    (%eax),%esi
432602:	50                   	push   %eax
432603:	e8 7a 70 04 00       	call   0x479682
432608:	83 c4 04             	add    $0x4,%esp
43260b:	8b c6                	mov    %esi,%eax
43260d:	3b f7                	cmp    %edi,%esi
43260f:	75 ef                	jne    0x432600
432611:	8b 45 88             	mov    -0x78(%ebp),%eax
432614:	8b 4d 90             	mov    -0x70(%ebp),%ecx
432617:	89 38                	mov    %edi,(%eax)
432619:	89 48 04             	mov    %ecx,0x4(%eax)
43261c:	8a 45 b7             	mov    -0x49(%ebp),%al
43261f:	e9 60 01 00 00       	jmp    0x432784
432624:	83 f8 03             	cmp    $0x3,%eax
432627:	0f 85 55 01 00 00    	jne    0x432782
43262d:	8b 4d b0             	mov    -0x50(%ebp),%ecx
432630:	8b 01                	mov    (%ecx),%eax
432632:	89 45 88             	mov    %eax,-0x78(%ebp)
432635:	f3 0f 7e 00          	movq   (%eax),%xmm0
432639:	8b 40 08             	mov    0x8(%eax),%eax
43263c:	66 0f d6 45 8c       	movq   %xmm0,-0x74(%ebp)
432641:	89 45 94             	mov    %eax,-0x6c(%ebp)
432644:	51                   	push   %ecx