4042d9:	c3                   	ret
4042da:	55                   	push   %ebp
4042db:	8b ec                	mov    %esp,%ebp
4042dd:	8b 4d 10             	mov    0x10(%ebp),%ecx
4042e0:	53                   	push   %ebx
4042e1:	56                   	push   %esi
4042e2:	57                   	push   %edi
4042e3:	eb 38                	jmp    0x40431d
4042e5:	33 d2                	xor    %edx,%edx
4042e7:	39 51 08             	cmp    %edx,0x8(%ecx)
4042ea:	76 2e                	jbe    0x40431a
4042ec:	8b 75 08             	mov    0x8(%ebp),%esi
4042ef:	33 ff                	xor    %edi,%edi
4042f1:	39 39                	cmp    %edi,(%ecx)
4042f3:	76 19                	jbe    0x40430e
4042f5:	8b 41 0c             	mov    0xc(%ecx),%eax
4042f8:	8d 1c 50             	lea    (%eax,%edx,2),%ebx
4042fb:	0f b7 06             	movzwl (%esi),%eax
4042fe:	83 c6 02             	add    $0x2,%esi
404301:	66 3b 03             	cmp    (%ebx),%ax
404304:	75 08                	jne    0x40430e
404306:	47                   	inc    %edi
404307:	83 c3 02             	add    $0x2,%ebx
40430a:	3b 39                	cmp    (%ecx),%edi
40430c:	72 ed                	jb     0x4042fb
40430e:	3b 75 0c             	cmp    0xc(%ebp),%esi
404311:	74 16                	je     0x404329
404313:	03 11                	add    (%ecx),%edx
404315:	3b 51 08             	cmp    0x8(%ecx),%edx
404318:	72 d2                	jb     0x4042ec
40431a:	8b 49 10             	mov    0x10(%ecx),%ecx
40431d:	85 c9                	test   %ecx,%ecx
40431f:	75 c4                	jne    0x4042e5
404321:	8b 45 08             	mov    0x8(%ebp),%eax
404324:	5f                   	pop    %edi
404325:	5e                   	pop    %esi
404326:	5b                   	pop    %ebx
404327:	5d                   	pop    %ebp
404328:	c3                   	ret
404329:	8b 45 0c             	mov    0xc(%ebp),%eax
40432c:	eb f6                	jmp    0x404324
40432e:	55                   	push   %ebp
40432f:	8b ec                	mov    %esp,%ebp
404331:	51                   	push   %ecx
404332:	8b 4d 0c             	mov    0xc(%ebp),%ecx
404335:	53                   	push   %ebx
404336:	56                   	push   %esi
404337:	57                   	push   %edi
404338:	8b 7d 14             	mov    0x14(%ebp),%edi
40433b:	85 ff                	test   %edi,%edi
40433d:	74 47                	je     0x404386
40433f:	8b 55 10             	mov    0x10(%ebp),%edx
404342:	33 db                	xor    %ebx,%ebx
404344:	39 5f 08             	cmp    %ebx,0x8(%edi)
404347:	76 36                	jbe    0x40437f
404349:	83 65 14 00          	andl   $0x0,0x14(%ebp)
40434d:	8b f1                	mov    %ecx,%esi
40434f:	83 3f 00             	cmpl   $0x0,(%edi)
404352:	76 20                	jbe    0x404374
404354:	8b 47 0c             	mov    0xc(%edi),%eax
404357:	8b 55 14             	mov    0x14(%ebp),%edx
40435a:	03 c3                	add    %ebx,%eax
40435c:	89 45 fc             	mov    %eax,-0x4(%ebp)
40435f:	8b c8                	mov    %eax,%ecx
404361:	8a 06                	mov    (%esi),%al
404363:	46                   	inc    %esi
404364:	3a 04 11             	cmp    (%ecx,%edx,1),%al
404367:	75 05                	jne    0x40436e
404369:	42                   	inc    %edx
40436a:	3b 17                	cmp    (%edi),%edx
40436c:	72 f3                	jb     0x404361
40436e:	8b 4d 0c             	mov    0xc(%ebp),%ecx
404371:	8b 55 10             	mov    0x10(%ebp),%edx
404374:	3b f2                	cmp    %edx,%esi
404376:	74 18                	je     0x404390
404378:	03 1f                	add    (%edi),%ebx
40437a:	3b 5f 08             	cmp    0x8(%edi),%ebx
40437d:	72 ca                	jb     0x404349
40437f:	8b 7f 10             	mov    0x10(%edi),%edi
404382:	85 ff                	test   %edi,%edi
404384:	75 bc                	jne    0x404342
404386:	8b 45 08             	mov    0x8(%ebp),%eax
404389:	89 08                	mov    %ecx,(%eax)
40438b:	5f                   	pop    %edi
40438c:	5e                   	pop    %esi
40438d:	5b                   	pop    %ebx
40438e:	c9                   	leave
40438f:	c3                   	ret
404390:	8b 45 08             	mov    0x8(%ebp),%eax
404393:	89 10                	mov    %edx,(%eax)
404395:	eb f4                	jmp    0x40438b
404397:	55                   	push   %ebp
404398:	8b ec                	mov    %esp,%ebp
40439a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40439d:	53                   	push   %ebx
40439e:	56                   	push   %esi
40439f:	57                   	push   %edi
4043a0:	8b 7d 14             	mov    0x14(%ebp),%edi
4043a3:	85 ff                	test   %edi,%edi
4043a5:	74 49                	je     0x4043f0
4043a7:	8b 55 10             	mov    0x10(%ebp),%edx
4043aa:	33 db                	xor    %ebx,%ebx
4043ac:	39 5f 08             	cmp    %ebx,0x8(%edi)
4043af:	76 38                	jbe    0x4043e9
4043b1:	83 65 14 00          	andl   $0x0,0x14(%ebp)
4043b5:	8b f1                	mov    %ecx,%esi
4043b7:	83 3f 00             	cmpl   $0x0,(%edi)
4043ba:	76 22                	jbe    0x4043de
4043bc:	8b 47 0c             	mov    0xc(%edi),%eax
4043bf:	8b 55 14             	mov    0x14(%ebp),%edx
4043c2:	8d 0c 58             	lea    (%eax,%ebx,2),%ecx
4043c5:	66 8b 06             	mov    (%esi),%ax
4043c8:	83 c6 02             	add    $0x2,%esi
4043cb:	66 3b 01             	cmp    (%ecx),%ax
4043ce:	75 08                	jne    0x4043d8
4043d0:	42                   	inc    %edx
4043d1:	83 c1 02             	add    $0x2,%ecx
4043d4:	3b 17                	cmp    (%edi),%edx
4043d6:	72 ed                	jb     0x4043c5
4043d8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4043db:	8b 55 10             	mov    0x10(%ebp),%edx
4043de:	3b f2                	cmp    %edx,%esi
4043e0:	74 18                	je     0x4043fa
4043e2:	03 1f                	add    (%edi),%ebx
4043e4:	3b 5f 08             	cmp    0x8(%edi),%ebx
4043e7:	72 c8                	jb     0x4043b1
4043e9:	8b 7f 10             	mov    0x10(%edi),%edi
4043ec:	85 ff                	test   %edi,%edi
4043ee:	75 ba                	jne    0x4043aa
4043f0:	8b 45 08             	mov    0x8(%ebp),%eax
4043f3:	89 08                	mov    %ecx,(%eax)
4043f5:	5f                   	pop    %edi
4043f6:	5e                   	pop    %esi
4043f7:	5b                   	pop    %ebx
4043f8:	5d                   	pop    %ebp
4043f9:	c3                   	ret
4043fa:	8b 45 08             	mov    0x8(%ebp),%eax
4043fd:	89 10                	mov    %edx,(%eax)
4043ff:	eb f4                	jmp    0x4043f5
404401:	6a 50                	push   $0x50
404403:	b8 f3 a1 48 00       	mov    $0x48a1f3,%eax
404408:	e8 71 b6 03 00       	call   0x43fa7e
40440d:	8b 7d 10             	mov    0x10(%ebp),%edi
404410:	33 d2                	xor    %edx,%edx
404412:	8b 75 0c             	mov    0xc(%ebp),%esi
404415:	33 c0                	xor    %eax,%eax
404417:	6a 07                	push   $0x7
404419:	59                   	pop    %ecx
40441a:	89 55 d0             	mov    %edx,-0x30(%ebp)
40441d:	89 55 d4             	mov    %edx,-0x2c(%ebp)
404420:	89 7d a4             	mov    %edi,-0x5c(%ebp)
404423:	89 55 d0             	mov    %edx,-0x30(%ebp)
404426:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
404429:	66 89 45 c0          	mov    %ax,-0x40(%ebp)
40442d:	89 55 fc             	mov    %edx,-0x4(%ebp)
404430:	89 55 e8             	mov    %edx,-0x18(%ebp)
404433:	89 55 ec             	mov    %edx,-0x14(%ebp)
404436:	89 55 e8             	mov    %edx,-0x18(%ebp)
404439:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40443c:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
404440:	33 db                	xor    %ebx,%ebx
404442:	43                   	inc    %ebx
404443:	88 5d fc             	mov    %bl,-0x4(%ebp)
404446:	8d 4d d8             	lea    -0x28(%ebp),%ecx
404449:	ff 75 08             	push   0x8(%ebp)
40444c:	e8 7d e2 01 00       	call   0x4226ce
404451:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
404455:	8d 4d d8             	lea    -0x28(%ebp),%ecx
404458:	8b 45 e8             	mov    -0x18(%ebp),%eax
40445b:	0f 43 4d d8          	cmovae -0x28(%ebp),%ecx
40445f:	8d 04 41             	lea    (%ecx,%eax,2),%eax
404462:	50                   	push   %eax
404463:	8d 4d d8             	lea    -0x28(%ebp),%ecx
404466:	0f 43 4d d8          	cmovae -0x28(%ebp),%ecx
40446a:	8d 45 a8             	lea    -0x58(%ebp),%eax
40446d:	51                   	push   %ecx
40446e:	50                   	push   %eax
40446f:	8b cf                	mov    %edi,%ecx
404471:	e8 cc 45 00 00       	call   0x408a42
404476:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
40447a:	8d 4d d8             	lea    -0x28(%ebp),%ecx
40447d:	50                   	push   %eax
40447e:	e8 c5 b2 00 00       	call   0x40f748
404483:	88 5d fc             	mov    %bl,-0x4(%ebp)
404486:	8d 4d a8             	lea    -0x58(%ebp),%ecx
404489:	e8 6c 8e 01 00       	call   0x41d2fa
40448e:	eb 73                	jmp    0x404503
404490:	33 ff                	xor    %edi,%edi
404492:	39 7e 08             	cmp    %edi,0x8(%esi)
404495:	76 69                	jbe    0x404500
404497:	8b 0e                	mov    (%esi),%ecx
404499:	8b 46 0c             	mov    0xc(%esi),%eax
40449c:	51                   	push   %ecx
40449d:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4044a0:	8d 04 78             	lea    (%eax,%edi,2),%eax
4044a3:	50                   	push   %eax
4044a4:	e8 fa b3 01 00       	call   0x41f8a3
4044a9:	83 7d d4 08          	cmpl   $0x8,-0x2c(%ebp)
4044ad:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4044b0:	8b 45 d0             	mov    -0x30(%ebp),%eax
4044b3:	0f 43 4d c0          	cmovae -0x40(%ebp),%ecx
4044b7:	8d 04 41             	lea    (%ecx,%eax,2),%eax
4044ba:	50                   	push   %eax
4044bb:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4044be:	0f 43 4d c0          	cmovae -0x40(%ebp),%ecx
4044c2:	8d 45 a8             	lea    -0x58(%ebp),%eax
4044c5:	51                   	push   %ecx
4044c6:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
4044c9:	50                   	push   %eax
4044ca:	e8 73 45 00 00       	call   0x408a42
4044cf:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
4044d3:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4044d6:	50                   	push   %eax
4044d7:	e8 6c b2 00 00       	call   0x40f748
4044dc:	88 5d fc             	mov    %bl,-0x4(%ebp)
4044df:	8d 4d a8             	lea    -0x58(%ebp),%ecx
4044e2:	e8 13 8e 01 00       	call   0x41d2fa
4044e7:	8d 45 d8             	lea    -0x28(%ebp),%eax
4044ea:	50                   	push   %eax
4044eb:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4044ee:	e8 e4 50 01 00       	call   0x4195d7
4044f3:	84 c0                	test   %al,%al
4044f5:	75 12                	jne    0x404509
4044f7:	8b 0e                	mov    (%esi),%ecx
4044f9:	03 f9                	add    %ecx,%edi
4044fb:	3b 7e 08             	cmp    0x8(%esi),%edi
4044fe:	72 99                	jb     0x404499
404500:	8b 76 10             	mov    0x10(%esi),%esi
404503:	85 f6                	test   %esi,%esi
404505:	75 89                	jne    0x404490
404507:	32 db                	xor    %bl,%bl
404509:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
40450d:	8d 4d d8             	lea    -0x28(%ebp),%ecx
404510:	e8 e5 8d 01 00       	call   0x41d2fa
404515:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
404519:	8d 4d c0             	lea    -0x40(%ebp),%ecx
40451c:	e8 d9 8d 01 00       	call   0x41d2fa
404521:	8a c3                	mov    %bl,%al
404523:	e8 00 b5 03 00       	call   0x43fa28
404528:	c3                   	ret
404529:	55                   	push   %ebp
40452a:	8b ec                	mov    %esp,%ebp
40452c:	8b 45 0c             	mov    0xc(%ebp),%eax
40452f:	33 c9                	xor    %ecx,%ecx
404531:	56                   	push   %esi
404532:	8b 50 04             	mov    0x4(%eax),%edx
404535:	85 d2                	test   %edx,%edx
404537:	74 1d                	je     0x404556
404539:	8b 70 08             	mov    0x8(%eax),%esi
40453c:	0f b6 04 0e          	movzbl (%esi,%ecx,1),%eax
404540:	3b 45 08             	cmp    0x8(%ebp),%eax
404543:	77 0a                	ja     0x40454f
404545:	0f b6 44 0e 01       	movzbl 0x1(%esi,%ecx,1),%eax
40454a:	39 45 08             	cmp    %eax,0x8(%ebp)
40454d:	76 0c                	jbe    0x40455b
40454f:	83 c1 02             	add    $0x2,%ecx
404552:	3b ca                	cmp    %edx,%ecx
404554:	72 e6                	jb     0x40453c
404556:	32 c0                	xor    %al,%al
404558:	5e                   	pop    %esi
404559:	5d                   	pop    %ebp
40455a:	c3                   	ret
40455b:	b0 01                	mov    $0x1,%al
40455d:	eb f9                	jmp    0x404558
40455f:	55                   	push   %ebp
404560:	8b ec                	mov    %esp,%ebp
404562:	8b 45 0c             	mov    0xc(%ebp),%eax
404565:	33 c9                	xor    %ecx,%ecx
404567:	56                   	push   %esi
404568:	8b 50 04             	mov    0x4(%eax),%edx
40456b:	85 d2                	test   %edx,%edx
40456d:	74 1d                	je     0x40458c
40456f:	8b 70 08             	mov    0x8(%eax),%esi
404572:	0f b7 04 4e          	movzwl (%esi,%ecx,2),%eax
404576:	3b 45 08             	cmp    0x8(%ebp),%eax
404579:	77 0a                	ja     0x404585
40457b:	0f b7 44 4e 02       	movzwl 0x2(%esi,%ecx,2),%eax
404580:	39 45 08             	cmp    %eax,0x8(%ebp)
404583:	76 0c                	jbe    0x404591
404585:	83 c1 02             	add    $0x2,%ecx
404588:	3b ca                	cmp    %edx,%ecx
40458a:	72 e6                	jb     0x404572
40458c:	32 c0                	xor    %al,%al
40458e:	5e                   	pop    %esi
40458f:	5d                   	pop    %ebp
404590:	c3                   	ret
404591:	b0 01                	mov    $0x1,%al
404593:	eb f9                	jmp    0x40458e
404595:	55                   	push   %ebp
404596:	8b ec                	mov    %esp,%ebp
404598:	83 ec 0c             	sub    $0xc,%esp
40459b:	ff 75 10             	push   0x10(%ebp)
40459e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4045a2:	8d 45 f4             	lea    -0xc(%ebp),%eax
4045a5:	50                   	push   %eax
4045a6:	6a 01                	push   $0x1
4045a8:	8d 45 08             	lea    0x8(%ebp),%eax
4045ab:	0f 57 c0             	xorps  %xmm0,%xmm0
4045ae:	50                   	push   %eax
4045af:	8d 45 fc             	lea    -0x4(%ebp),%eax
4045b2:	66 0f 13 45 f4       	movlpd %xmm0,-0xc(%ebp)
4045b7:	50                   	push   %eax
4045b8:	e8 e4 1a 02 00       	call   0x4260a1
4045bd:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
4045c1:	83 c4 14             	add    $0x14,%esp
4045c4:	c9                   	leave
4045c5:	c3                   	ret
4045c6:	55                   	push   %ebp
4045c7:	8b ec                	mov    %esp,%ebp
4045c9:	56                   	push   %esi
4045ca:	57                   	push   %edi
4045cb:	8b 7d 08             	mov    0x8(%ebp),%edi
4045ce:	57                   	push   %edi
4045cf:	e8 7c 30 06 00       	call   0x467650
4045d4:	6a 01                	push   $0x1
4045d6:	8d 70 01             	lea    0x1(%eax),%esi
4045d9:	56                   	push   %esi
4045da:	e8 a4 87 04 00       	call   0x44cd83
4045df:	8b d0                	mov    %eax,%edx
4045e1:	83 c4 0c             	add    $0xc,%esp
4045e4:	85 d2                	test   %edx,%edx
4045e6:	74 19                	je     0x404601
4045e8:	85 f6                	test   %esi,%esi
4045ea:	74 0f                	je     0x4045fb
4045ec:	8b ca                	mov    %edx,%ecx
4045ee:	2b cf                	sub    %edi,%ecx
4045f0:	8a 07                	mov    (%edi),%al
4045f2:	88 04 39             	mov    %al,(%ecx,%edi,1)
4045f5:	47                   	inc    %edi
4045f6:	83 ee 01             	sub    $0x1,%esi
4045f9:	75 f5                	jne    0x4045f0
4045fb:	5f                   	pop    %edi
4045fc:	8b c2                	mov    %edx,%eax
4045fe:	5e                   	pop    %esi
4045ff:	5d                   	pop    %ebp
404600:	c3                   	ret
404601:	e8 80 16 02 00       	call   0x425c86
404606:	cc                   	int3
404607:	55                   	push   %ebp
404608:	8b ec                	mov    %esp,%ebp
40460a:	83 ec 1c             	sub    $0x1c,%esp
40460d:	53                   	push   %ebx
40460e:	8b 5d 08             	mov    0x8(%ebp),%ebx
404611:	0f 57 c0             	xorps  %xmm0,%xmm0
404614:	56                   	push   %esi
404615:	57                   	push   %edi
404616:	53                   	push   %ebx
404617:	66 0f 13 45 ec       	movlpd %xmm0,-0x14(%ebp)
40461c:	e8 2f 30 06 00       	call   0x467650
404621:	59                   	pop    %ecx