639271:	c2 0c 00             	ret    $0xc
639274:	53                   	push   %ebx
639275:	8b 5e 10             	mov    0x10(%esi),%ebx
639278:	57                   	push   %edi
639279:	3b d3                	cmp    %ebx,%edx
63927b:	0f 83 a7 00 00 00    	jae    0x639328
639281:	2b da                	sub    %edx,%ebx
639283:	3b cb                	cmp    %ebx,%ecx
639285:	0f 87 9d 00 00 00    	ja     0x639328
63928b:	b8 01 00 00 00       	mov    $0x1,%eax
639290:	2b c1                	sub    %ecx,%eax
639292:	03 d8                	add    %eax,%ebx
639294:	8b 46 14             	mov    0x14(%esi),%eax
639297:	89 45 f8             	mov    %eax,-0x8(%ebp)
63929a:	83 f8 08             	cmp    $0x8,%eax
63929d:	72 04                	jb     0x6392a3
63929f:	8b 06                	mov    (%esi),%eax
6392a1:	eb 02                	jmp    0x6392a5
6392a3:	8b c6                	mov    %esi,%eax
6392a5:	8d 04 50             	lea    (%eax,%edx,2),%eax
6392a8:	89 45 0c             	mov    %eax,0xc(%ebp)
6392ab:	85 db                	test   %ebx,%ebx
6392ad:	74 18                	je     0x6392c7
6392af:	8b 55 08             	mov    0x8(%ebp),%edx
6392b2:	8b cb                	mov    %ebx,%ecx
6392b4:	0f b7 12             	movzwl (%edx),%edx
6392b7:	66 39 10             	cmp    %dx,(%eax)
6392ba:	74 47                	je     0x639303
6392bc:	83 c0 02             	add    $0x2,%eax
6392bf:	83 e9 01             	sub    $0x1,%ecx
6392c2:	75 f3                	jne    0x6392b7
6392c4:	8b 4d 10             	mov    0x10(%ebp),%ecx
6392c7:	33 c0                	xor    %eax,%eax
6392c9:	85 c0                	test   %eax,%eax
6392cb:	74 5b                	je     0x639328
6392cd:	85 c9                	test   %ecx,%ecx
6392cf:	74 1a                	je     0x6392eb
6392d1:	8b 55 08             	mov    0x8(%ebp),%edx
6392d4:	8b f9                	mov    %ecx,%edi
6392d6:	8b f0                	mov    %eax,%esi
6392d8:	66 8b 0e             	mov    (%esi),%cx
6392db:	66 3b 0a             	cmp    (%edx),%cx
6392de:	75 28                	jne    0x639308
6392e0:	83 c6 02             	add    $0x2,%esi
6392e3:	83 c2 02             	add    $0x2,%edx
6392e6:	83 ef 01             	sub    $0x1,%edi
6392e9:	75 ed                	jne    0x6392d8
6392eb:	83 7d f8 08          	cmpl   $0x8,-0x8(%ebp)
6392ef:	8b 75 fc             	mov    -0x4(%ebp),%esi
6392f2:	72 02                	jb     0x6392f6
6392f4:	8b 36                	mov    (%esi),%esi
6392f6:	5f                   	pop    %edi
6392f7:	2b c6                	sub    %esi,%eax
6392f9:	5b                   	pop    %ebx
6392fa:	d1 f8                	sar    $1,%eax
6392fc:	5e                   	pop    %esi
6392fd:	8b e5                	mov    %ebp,%esp
6392ff:	5d                   	pop    %ebp
639300:	c2 0c 00             	ret    $0xc
639303:	8b 4d 10             	mov    0x10(%ebp),%ecx
639306:	eb c1                	jmp    0x6392c9
639308:	1b c9                	sbb    %ecx,%ecx
63930a:	83 e1 fe             	and    $0xfffffffe,%ecx
63930d:	83 c1 01             	add    $0x1,%ecx
639310:	74 d9                	je     0x6392eb
639312:	8b d0                	mov    %eax,%edx
639314:	83 c9 ff             	or     $0xffffffff,%ecx
639317:	2b 55 0c             	sub    0xc(%ebp),%edx
63931a:	d1 fa                	sar    $1,%edx
63931c:	2b ca                	sub    %edx,%ecx
63931e:	03 d9                	add    %ecx,%ebx
639320:	8b 4d 10             	mov    0x10(%ebp),%ecx
639323:	83 c0 02             	add    $0x2,%eax
639326:	eb 80                	jmp    0x6392a8
639328:	5f                   	pop    %edi
639329:	5b                   	pop    %ebx
63932a:	83 c8 ff             	or     $0xffffffff,%eax
63932d:	5e                   	pop    %esi
63932e:	8b e5                	mov    %ebp,%esp
639330:	5d                   	pop    %ebp
639331:	c2 0c 00             	ret    $0xc
639334:	cc                   	int3
639335:	cc                   	int3
639336:	cc                   	int3
639337:	cc                   	int3
639338:	cc                   	int3
639339:	cc                   	int3
63933a:	cc                   	int3
63933b:	cc                   	int3
63933c:	cc                   	int3
63933d:	cc                   	int3
63933e:	cc                   	int3
63933f:	cc                   	int3
639340:	55                   	push   %ebp
639341:	8b ec                	mov    %esp,%ebp
639343:	80 79 05 00          	cmpb   $0x0,0x5(%ecx)
639347:	75 09                	jne    0x639352
639349:	b8 0a 00 00 00       	mov    $0xa,%eax
63934e:	5d                   	pop    %ebp
63934f:	c2 04 00             	ret    $0x4
639352:	8b 45 08             	mov    0x8(%ebp),%eax
639355:	0f 10 81 68 03 00 00 	movups 0x368(%ecx),%xmm0
63935c:	0f 11 00             	movups %xmm0,(%eax)
63935f:	33 c0                	xor    %eax,%eax
639361:	5d                   	pop    %ebp
639362:	c2 04 00             	ret    $0x4
639365:	cc                   	int3
639366:	cc                   	int3
639367:	cc                   	int3
639368:	cc                   	int3
639369:	cc                   	int3
63936a:	cc                   	int3
63936b:	cc                   	int3
63936c:	cc                   	int3
63936d:	cc                   	int3
63936e:	cc                   	int3
63936f:	cc                   	int3
639370:	55                   	push   %ebp
639371:	8b ec                	mov    %esp,%ebp
639373:	56                   	push   %esi
639374:	8b f1                	mov    %ecx,%esi
639376:	57                   	push   %edi
639377:	8b 7d 08             	mov    0x8(%ebp),%edi
63937a:	8b 86 78 03 00 00    	mov    0x378(%esi),%eax
639380:	89 07                	mov    %eax,(%edi)
639382:	8d 4f 08             	lea    0x8(%edi),%ecx
639385:	8b 86 7c 03 00 00    	mov    0x37c(%esi),%eax
63938b:	89 47 04             	mov    %eax,0x4(%edi)
63938e:	8d 86 80 03 00 00    	lea    0x380(%esi),%eax
639394:	3b c8                	cmp    %eax,%ecx
639396:	74 0a                	je     0x6393a2
639398:	6a ff                	push   $0xffffffff
63939a:	6a 00                	push   $0x0
63939c:	50                   	push   %eax
63939d:	e8 4e f5 df ff       	call   0x4388f0
6393a2:	8b 86 98 03 00 00    	mov    0x398(%esi),%eax
6393a8:	89 47 20             	mov    %eax,0x20(%edi)
6393ab:	8a 86 9c 03 00 00    	mov    0x39c(%esi),%al
6393b1:	88 47 24             	mov    %al,0x24(%edi)
6393b4:	8b 86 a0 03 00 00    	mov    0x3a0(%esi),%eax
6393ba:	89 47 28             	mov    %eax,0x28(%edi)
6393bd:	33 c0                	xor    %eax,%eax
6393bf:	5f                   	pop    %edi
6393c0:	5e                   	pop    %esi
6393c1:	5d                   	pop    %ebp
6393c2:	c2 04 00             	ret    $0x4
6393c5:	cc                   	int3
6393c6:	cc                   	int3
6393c7:	cc                   	int3
6393c8:	cc                   	int3
6393c9:	cc                   	int3
6393ca:	cc                   	int3
6393cb:	cc                   	int3
6393cc:	cc                   	int3
6393cd:	cc                   	int3
6393ce:	cc                   	int3
6393cf:	cc                   	int3
6393d0:	55                   	push   %ebp
6393d1:	8b ec                	mov    %esp,%ebp
6393d3:	53                   	push   %ebx
6393d4:	56                   	push   %esi
6393d5:	8b f1                	mov    %ecx,%esi
6393d7:	8d 4e 08             	lea    0x8(%esi),%ecx
6393da:	e8 a1 23 00 00       	call   0x63b780
6393df:	83 be 60 05 00 00 03 	cmpl   $0x3,0x560(%esi)
6393e6:	0f 85 a8 00 00 00    	jne    0x639494
6393ec:	80 7e 05 00          	cmpb   $0x0,0x5(%esi)
6393f0:	0f 85 9e 00 00 00    	jne    0x639494
6393f6:	57                   	push   %edi
6393f7:	8b 7d 08             	mov    0x8(%ebp),%edi
6393fa:	8d 4e 70             	lea    0x70(%esi),%ecx
6393fd:	57                   	push   %edi
6393fe:	80 bf 41 01 00 00 00 	cmpb   $0x0,0x141(%edi)
639405:	0f 94 c0             	sete   %al
639408:	88 46 04             	mov    %al,0x4(%esi)
63940b:	e8 80 92 00 00       	call   0x642690
639410:	84 c0                	test   %al,%al
639412:	75 12                	jne    0x639426
639414:	8d 4e 08             	lea    0x8(%esi),%ecx
639417:	e8 84 23 00 00       	call   0x63b7a0
63941c:	5f                   	pop    %edi
63941d:	5e                   	pop    %esi
63941e:	83 c8 ff             	or     $0xffffffff,%eax
639421:	5b                   	pop    %ebx
639422:	5d                   	pop    %ebp
639423:	c2 04 00             	ret    $0x4
639426:	c6 46 05 01          	movb   $0x1,0x5(%esi)
63942a:	c7 86 60 05 00 00 03 	movl   $0x3,0x560(%esi)
639431:	00 00 00
639434:	e8 a7 cf ff ff       	call   0x6363e0
639439:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
63943d:	8b d0                	mov    %eax,%edx
63943f:	72 04                	jb     0x639445
639441:	8b 0f                	mov    (%edi),%ecx
639443:	eb 02                	jmp    0x639447
639445:	8b cf                	mov    %edi,%ecx
639447:	8b 02                	mov    (%edx),%eax
639449:	51                   	push   %ecx
63944a:	68 30 e4 6d 00       	push   $0x6de430
63944f:	52                   	push   %edx
639450:	ff 50 14             	call   *0x14(%eax)
639453:	83 c4 0c             	add    $0xc,%esp
639456:	e8 85 cf ff ff       	call   0x6363e0
63945b:	83 7f 44 08          	cmpl   $0x8,0x44(%edi)
63945f:	8d 4f 30             	lea    0x30(%edi),%ecx
639462:	8b d0                	mov    %eax,%edx
639464:	72 02                	jb     0x639468
639466:	8b 09                	mov    (%ecx),%ecx
639468:	83 c7 18             	add    $0x18,%edi
63946b:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
63946f:	72 02                	jb     0x639473
639471:	8b 3f                	mov    (%edi),%edi
639473:	8b 02                	mov    (%edx),%eax
639475:	51                   	push   %ecx
639476:	57                   	push   %edi
639477:	68 70 e4 6d 00       	push   $0x6de470
63947c:	52                   	push   %edx
63947d:	ff 50 14             	call   *0x14(%eax)
639480:	83 c4 10             	add    $0x10,%esp
639483:	8d 4e 08             	lea    0x8(%esi),%ecx
639486:	e8 15 23 00 00       	call   0x63b7a0
63948b:	5f                   	pop    %edi
63948c:	5e                   	pop    %esi
63948d:	33 c0                	xor    %eax,%eax
63948f:	5b                   	pop    %ebx
639490:	5d                   	pop    %ebp
639491:	c2 04 00             	ret    $0x4
639494:	e8 47 cf ff ff       	call   0x6363e0
639499:	68 d0 e3 6d 00       	push   $0x6de3d0
63949e:	50                   	push   %eax
63949f:	8b 08                	mov    (%eax),%ecx
6394a1:	ff 51 04             	call   *0x4(%ecx)
6394a4:	83 c4 08             	add    $0x8,%esp
6394a7:	8d 4e 08             	lea    0x8(%esi),%ecx
6394aa:	e8 f1 22 00 00       	call   0x63b7a0
6394af:	5e                   	pop    %esi
6394b0:	b8 1e 00 00 00       	mov    $0x1e,%eax
6394b5:	5b                   	pop    %ebx
6394b6:	5d                   	pop    %ebp
6394b7:	c2 04 00             	ret    $0x4
6394ba:	cc                   	int3
6394bb:	cc                   	int3
6394bc:	cc                   	int3
6394bd:	cc                   	int3
6394be:	cc                   	int3
6394bf:	cc                   	int3
6394c0:	56                   	push   %esi
6394c1:	8b f1                	mov    %ecx,%esi
6394c3:	57                   	push   %edi
6394c4:	8d 4e 08             	lea    0x8(%esi),%ecx
6394c7:	e8 b4 22 00 00       	call   0x63b780
6394cc:	80 7e 05 00          	cmpb   $0x0,0x5(%esi)
6394d0:	75 10                	jne    0x6394e2
6394d2:	8d 4e 08             	lea    0x8(%esi),%ecx
6394d5:	e8 c6 22 00 00       	call   0x63b7a0
6394da:	5f                   	pop    %edi
6394db:	b8 fc ff ff ff       	mov    $0xfffffffc,%eax
6394e0:	5e                   	pop    %esi
6394e1:	c3                   	ret
6394e2:	83 be 60 05 00 00 04 	cmpl   $0x4,0x560(%esi)
6394e9:	74 23                	je     0x63950e
6394eb:	e8 f0 ce ff ff       	call   0x6363e0
6394f0:	68 c0 ed 6d 00       	push   $0x6dedc0
6394f5:	50                   	push   %eax
6394f6:	8b 08                	mov    (%eax),%ecx
6394f8:	ff 51 04             	call   *0x4(%ecx)
6394fb:	83 c4 08             	add    $0x8,%esp
6394fe:	8d 4e 08             	lea    0x8(%esi),%ecx
639501:	e8 9a 22 00 00       	call   0x63b7a0
639506:	5f                   	pop    %edi
639507:	b8 0a 00 00 00       	mov    $0xa,%eax
63950c:	5e                   	pop    %esi
63950d:	c3                   	ret
63950e:	8d 4e 38             	lea    0x38(%esi),%ecx
639511:	c7 86 60 05 00 00 00 	movl   $0x0,0x560(%esi)
639518:	00 00 00
63951b:	e8 80 b7 00 00       	call   0x644ca0
639520:	8b 4e 6c             	mov    0x6c(%esi),%ecx
639523:	8b 01                	mov    (%ecx),%eax
639525:	ff 50 04             	call   *0x4(%eax)
639528:	8d 4e 70             	lea    0x70(%esi),%ecx
63952b:	c7 86 60 05 00 00 01 	movl   $0x1,0x560(%esi)
639532:	00 00 00
639535:	c7 86 74 03 00 00 01 	movl   $0x1,0x374(%esi)
63953c:	00 00 00
63953f:	e8 ac 9b 00 00       	call   0x6430f0
639544:	8d 4e 08             	lea    0x8(%esi),%ecx
639547:	e8 54 22 00 00       	call   0x63b7a0
63954c:	5f                   	pop    %edi
63954d:	33 c0                	xor    %eax,%eax
63954f:	5e                   	pop    %esi
639550:	c3                   	ret
639551:	cc                   	int3
639552:	cc                   	int3
639553:	cc                   	int3
639554:	cc                   	int3
639555:	cc                   	int3
639556:	cc                   	int3
639557:	cc                   	int3
639558:	cc                   	int3
639559:	cc                   	int3
63955a:	cc                   	int3
63955b:	cc                   	int3
63955c:	cc                   	int3
63955d:	cc                   	int3
63955e:	cc                   	int3
63955f:	cc                   	int3
639560:	55                   	push   %ebp
639561:	8b ec                	mov    %esp,%ebp
639563:	51                   	push   %ecx
639564:	56                   	push   %esi
639565:	8d 45 fc             	lea    -0x4(%ebp),%eax
639568:	8b f1                	mov    %ecx,%esi
63956a:	50                   	push   %eax
63956b:	6a 00                	push   $0x0
63956d:	56                   	push   %esi
63956e:	68 00 7c 63 00       	push   $0x637c00
639573:	6a 00                	push   $0x0
639575:	6a 00                	push   $0x0
639577:	ff 15 b0 22 68 00    	call   *0x6822b0
63957d:	89 06                	mov    %eax,(%esi)
63957f:	5e                   	pop    %esi
639580:	85 c0                	test   %eax,%eax
639582:	75 1e                	jne    0x6395a2
639584:	e8 57 ce ff ff       	call   0x6363e0
639589:	68 20 ed 6d 00       	push   $0x6ded20
63958e:	68 fc 56 6e 00       	push   $0x6e56fc
639593:	50                   	push   %eax
639594:	8b 08                	mov    (%eax),%ecx
639596:	ff 51 24             	call   *0x24(%ecx)
639599:	83 c4 0c             	add    $0xc,%esp
63959c:	32 c0                	xor    %al,%al
63959e:	8b e5                	mov    %ebp,%esp
6395a0:	5d                   	pop    %ebp
6395a1:	c3                   	ret
6395a2:	b0 01                	mov    $0x1,%al
6395a4:	8b e5                	mov    %ebp,%esp
6395a6:	5d                   	pop    %ebp
6395a7:	c3                   	ret
6395a8:	cc                   	int3
6395a9:	cc                   	int3
6395aa:	cc                   	int3
6395ab:	cc                   	int3
6395ac:	cc                   	int3
6395ad:	cc                   	int3
6395ae:	cc                   	int3
6395af:	cc                   	int3
6395b0:	55                   	push   %ebp
6395b1:	8b ec                	mov    %esp,%ebp
6395b3:	83 ec 54             	sub    $0x54,%esp