5bf3ef:	cc                   	int3
5bf3f0:	56                   	push   %esi
5bf3f1:	8b f1                	mov    %ecx,%esi
5bf3f3:	ff 36                	push   (%esi)
5bf3f5:	e8 95 23 e4 ff       	call   0x40178f
5bf3fa:	6a 08                	push   $0x8
5bf3fc:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
5bf402:	e8 76 b5 e6 ff       	call   0x42a97d
5bf407:	83 c4 08             	add    $0x8,%esp
5bf40a:	85 c0                	test   %eax,%eax
5bf40c:	74 17                	je     0x5bf425
5bf40e:	89 06                	mov    %eax,(%esi)
5bf410:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
5bf416:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
5bf41d:	8b 06                	mov    (%esi),%eax
5bf41f:	89 30                	mov    %esi,(%eax)
5bf421:	5e                   	pop    %esi
5bf422:	c2 04 00             	ret    $0x4
5bf425:	e8 63 e5 e7 ff       	call   0x43d98d
5bf42a:	cc                   	int3
5bf42b:	cc                   	int3
5bf42c:	cc                   	int3
5bf42d:	cc                   	int3
5bf42e:	cc                   	int3
5bf42f:	cc                   	int3
5bf430:	cc                   	int3
5bf431:	cc                   	int3
5bf432:	cc                   	int3
5bf433:	cc                   	int3
5bf434:	cc                   	int3
5bf435:	cc                   	int3
5bf436:	cc                   	int3
5bf437:	cc                   	int3
5bf438:	cc                   	int3
5bf439:	cc                   	int3
5bf43a:	cc                   	int3
5bf43b:	cc                   	int3
5bf43c:	cc                   	int3
5bf43d:	cc                   	int3
5bf43e:	cc                   	int3
5bf43f:	cc                   	int3
5bf440:	c3                   	ret
5bf441:	cc                   	int3
5bf442:	cc                   	int3
5bf443:	cc                   	int3
5bf444:	cc                   	int3
5bf445:	cc                   	int3
5bf446:	cc                   	int3
5bf447:	cc                   	int3
5bf448:	cc                   	int3
5bf449:	cc                   	int3
5bf44a:	cc                   	int3
5bf44b:	cc                   	int3
5bf44c:	cc                   	int3
5bf44d:	cc                   	int3
5bf44e:	cc                   	int3
5bf44f:	cc                   	int3
5bf450:	c3                   	ret
5bf451:	cc                   	int3
5bf452:	cc                   	int3
5bf453:	cc                   	int3
5bf454:	cc                   	int3
5bf455:	cc                   	int3
5bf456:	cc                   	int3
5bf457:	cc                   	int3
5bf458:	cc                   	int3
5bf459:	cc                   	int3
5bf45a:	cc                   	int3
5bf45b:	cc                   	int3
5bf45c:	cc                   	int3
5bf45d:	cc                   	int3
5bf45e:	cc                   	int3
5bf45f:	cc                   	int3
5bf460:	c3                   	ret
5bf461:	cc                   	int3
5bf462:	cc                   	int3
5bf463:	cc                   	int3
5bf464:	cc                   	int3
5bf465:	cc                   	int3
5bf466:	cc                   	int3
5bf467:	cc                   	int3
5bf468:	cc                   	int3
5bf469:	cc                   	int3
5bf46a:	cc                   	int3
5bf46b:	cc                   	int3
5bf46c:	cc                   	int3
5bf46d:	cc                   	int3
5bf46e:	cc                   	int3
5bf46f:	cc                   	int3
5bf470:	c2 04 00             	ret    $0x4
5bf473:	cc                   	int3
5bf474:	cc                   	int3
5bf475:	cc                   	int3
5bf476:	cc                   	int3
5bf477:	cc                   	int3
5bf478:	cc                   	int3
5bf479:	cc                   	int3
5bf47a:	cc                   	int3
5bf47b:	cc                   	int3
5bf47c:	cc                   	int3
5bf47d:	cc                   	int3
5bf47e:	cc                   	int3
5bf47f:	cc                   	int3
5bf480:	56                   	push   %esi
5bf481:	8b f1                	mov    %ecx,%esi
5bf483:	ff 36                	push   (%esi)
5bf485:	e8 05 23 e4 ff       	call   0x40178f
5bf48a:	83 c4 04             	add    $0x4,%esp
5bf48d:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
5bf493:	5e                   	pop    %esi
5bf494:	c3                   	ret
5bf495:	cc                   	int3
5bf496:	cc                   	int3
5bf497:	cc                   	int3
5bf498:	cc                   	int3
5bf499:	cc                   	int3
5bf49a:	cc                   	int3
5bf49b:	cc                   	int3
5bf49c:	cc                   	int3
5bf49d:	cc                   	int3
5bf49e:	cc                   	int3
5bf49f:	cc                   	int3
5bf4a0:	8b c1                	mov    %ecx,%eax
5bf4a2:	c3                   	ret
5bf4a3:	cc                   	int3
5bf4a4:	cc                   	int3
5bf4a5:	cc                   	int3
5bf4a6:	cc                   	int3
5bf4a7:	cc                   	int3
5bf4a8:	cc                   	int3
5bf4a9:	cc                   	int3
5bf4aa:	cc                   	int3
5bf4ab:	cc                   	int3
5bf4ac:	cc                   	int3
5bf4ad:	cc                   	int3
5bf4ae:	cc                   	int3
5bf4af:	cc                   	int3
5bf4b0:	8b c1                	mov    %ecx,%eax
5bf4b2:	c3                   	ret
5bf4b3:	cc                   	int3
5bf4b4:	cc                   	int3
5bf4b5:	cc                   	int3
5bf4b6:	cc                   	int3
5bf4b7:	cc                   	int3
5bf4b8:	cc                   	int3
5bf4b9:	cc                   	int3
5bf4ba:	cc                   	int3
5bf4bb:	cc                   	int3
5bf4bc:	cc                   	int3
5bf4bd:	cc                   	int3
5bf4be:	cc                   	int3
5bf4bf:	cc                   	int3
5bf4c0:	8b c1                	mov    %ecx,%eax
5bf4c2:	c3                   	ret
5bf4c3:	cc                   	int3
5bf4c4:	cc                   	int3
5bf4c5:	cc                   	int3
5bf4c6:	cc                   	int3
5bf4c7:	cc                   	int3
5bf4c8:	cc                   	int3
5bf4c9:	cc                   	int3
5bf4ca:	cc                   	int3
5bf4cb:	cc                   	int3
5bf4cc:	cc                   	int3
5bf4cd:	cc                   	int3
5bf4ce:	cc                   	int3
5bf4cf:	cc                   	int3
5bf4d0:	8b c1                	mov    %ecx,%eax
5bf4d2:	c3                   	ret
5bf4d3:	cc                   	int3
5bf4d4:	cc                   	int3
5bf4d5:	cc                   	int3
5bf4d6:	cc                   	int3
5bf4d7:	cc                   	int3
5bf4d8:	cc                   	int3
5bf4d9:	cc                   	int3
5bf4da:	cc                   	int3
5bf4db:	cc                   	int3
5bf4dc:	cc                   	int3
5bf4dd:	cc                   	int3
5bf4de:	cc                   	int3
5bf4df:	cc                   	int3
5bf4e0:	8b c1                	mov    %ecx,%eax
5bf4e2:	c3                   	ret
5bf4e3:	cc                   	int3
5bf4e4:	cc                   	int3
5bf4e5:	cc                   	int3
5bf4e6:	cc                   	int3
5bf4e7:	cc                   	int3
5bf4e8:	cc                   	int3
5bf4e9:	cc                   	int3
5bf4ea:	cc                   	int3
5bf4eb:	cc                   	int3
5bf4ec:	cc                   	int3
5bf4ed:	cc                   	int3
5bf4ee:	cc                   	int3
5bf4ef:	cc                   	int3
5bf4f0:	8b c1                	mov    %ecx,%eax
5bf4f2:	c3                   	ret
5bf4f3:	cc                   	int3
5bf4f4:	cc                   	int3
5bf4f5:	cc                   	int3
5bf4f6:	cc                   	int3
5bf4f7:	cc                   	int3
5bf4f8:	cc                   	int3
5bf4f9:	cc                   	int3
5bf4fa:	cc                   	int3
5bf4fb:	cc                   	int3
5bf4fc:	cc                   	int3
5bf4fd:	cc                   	int3
5bf4fe:	cc                   	int3
5bf4ff:	cc                   	int3
5bf500:	8b c1                	mov    %ecx,%eax
5bf502:	c3                   	ret
5bf503:	cc                   	int3
5bf504:	cc                   	int3
5bf505:	cc                   	int3
5bf506:	cc                   	int3
5bf507:	cc                   	int3
5bf508:	cc                   	int3
5bf509:	cc                   	int3
5bf50a:	cc                   	int3
5bf50b:	cc                   	int3
5bf50c:	cc                   	int3
5bf50d:	cc                   	int3
5bf50e:	cc                   	int3
5bf50f:	cc                   	int3
5bf510:	8b c1                	mov    %ecx,%eax
5bf512:	c3                   	ret
5bf513:	cc                   	int3
5bf514:	cc                   	int3
5bf515:	cc                   	int3
5bf516:	cc                   	int3
5bf517:	cc                   	int3
5bf518:	cc                   	int3
5bf519:	cc                   	int3
5bf51a:	cc                   	int3
5bf51b:	cc                   	int3
5bf51c:	cc                   	int3
5bf51d:	cc                   	int3
5bf51e:	cc                   	int3
5bf51f:	cc                   	int3
5bf520:	8b 41 08             	mov    0x8(%ecx),%eax
5bf523:	48                   	dec    %eax
5bf524:	23 44 24 04          	and    0x4(%esp),%eax
5bf528:	c2 04 00             	ret    $0x4
5bf52b:	cc                   	int3
5bf52c:	cc                   	int3
5bf52d:	cc                   	int3
5bf52e:	cc                   	int3
5bf52f:	cc                   	int3
5bf530:	8b 41 08             	mov    0x8(%ecx),%eax
5bf533:	48                   	dec    %eax
5bf534:	23 44 24 04          	and    0x4(%esp),%eax
5bf538:	c2 04 00             	ret    $0x4
5bf53b:	cc                   	int3
5bf53c:	cc                   	int3
5bf53d:	cc                   	int3
5bf53e:	cc                   	int3
5bf53f:	cc                   	int3
5bf540:	8b 54 24 04          	mov    0x4(%esp),%edx
5bf544:	83 ec 08             	sub    $0x8,%esp
5bf547:	55                   	push   %ebp
5bf548:	8b e9                	mov    %ecx,%ebp
5bf54a:	56                   	push   %esi
5bf54b:	be 01 00 00 00       	mov    $0x1,%esi
5bf550:	8b 4d 08             	mov    0x8(%ebp),%ecx
5bf553:	85 c9                	test   %ecx,%ecx
5bf555:	0f 45 f1             	cmovne %ecx,%esi
5bf558:	8b c6                	mov    %esi,%eax
5bf55a:	2b c1                	sub    %ecx,%eax
5bf55c:	3b c2                	cmp    %edx,%eax
5bf55e:	72 05                	jb     0x5bf565
5bf560:	83 fe 08             	cmp    $0x8,%esi
5bf563:	73 13                	jae    0x5bf578
5bf565:	b8 55 55 55 05       	mov    $0x5555555,%eax
5bf56a:	2b c6                	sub    %esi,%eax
5bf56c:	3b c6                	cmp    %esi,%eax
5bf56e:	0f 82 f2 00 00 00    	jb     0x5bf666
5bf574:	03 f6                	add    %esi,%esi
5bf576:	eb e0                	jmp    0x5bf558
5bf578:	2b f1                	sub    %ecx,%esi
5bf57a:	53                   	push   %ebx
5bf57b:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5bf57e:	57                   	push   %edi
5bf57f:	8d 04 31             	lea    (%ecx,%esi,1),%eax
5bf582:	89 5c 24 10          	mov    %ebx,0x10(%esp)
5bf586:	50                   	push   %eax
5bf587:	8d 4c 24 20          	lea    0x20(%esp),%ecx
5bf58b:	e8 8b 38 e7 ff       	call   0x432e1b
5bf590:	8b 4d 04             	mov    0x4(%ebp),%ecx
5bf593:	8b 7d 08             	mov    0x8(%ebp),%edi
5bf596:	c1 e3 02             	shl    $0x2,%ebx
5bf599:	c1 e7 02             	shl    $0x2,%edi
5bf59c:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5bf5a0:	8d 14 19             	lea    (%ecx,%ebx,1),%edx
5bf5a3:	03 d8                	add    %eax,%ebx
5bf5a5:	2b fa                	sub    %edx,%edi
5bf5a7:	03 f9                	add    %ecx,%edi
5bf5a9:	57                   	push   %edi
5bf5aa:	52                   	push   %edx
5bf5ab:	53                   	push   %ebx
5bf5ac:	e8 d1 f5 e5 ff       	call   0x41eb82
5bf5b1:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
5bf5b5:	8d 14 1f             	lea    (%edi,%ebx,1),%edx
5bf5b8:	83 c4 0c             	add    $0xc,%esp
5bf5bb:	89 54 24 14          	mov    %edx,0x14(%esp)
5bf5bf:	3b ce                	cmp    %esi,%ecx
5bf5c1:	77 3a                	ja     0x5bf5fd
5bf5c3:	8b 45 04             	mov    0x4(%ebp),%eax
5bf5c6:	8d 1c 8d 00 00 00 00 	lea    0x0(,%ecx,4),%ebx
5bf5cd:	8b f8                	mov    %eax,%edi
5bf5cf:	2b f8                	sub    %eax,%edi
5bf5d1:	03 fb                	add    %ebx,%edi
5bf5d3:	57                   	push   %edi
5bf5d4:	50                   	push   %eax
5bf5d5:	52                   	push   %edx
5bf5d6:	e8 a7 f5 e5 ff       	call   0x41eb82
5bf5db:	8b c6                	mov    %esi,%eax
5bf5dd:	2b 44 24 1c          	sub    0x1c(%esp),%eax
5bf5e1:	c1 e0 02             	shl    $0x2,%eax
5bf5e4:	50                   	push   %eax
5bf5e5:	8b 44 24 24          	mov    0x24(%esp),%eax
5bf5e9:	03 c7                	add    %edi,%eax
5bf5eb:	6a 00                	push   $0x0
5bf5ed:	50                   	push   %eax
5bf5ee:	e8 c5 51 e5 ff       	call   0x4147b8
5bf5f3:	53                   	push   %ebx
5bf5f4:	8b 5c 24 38          	mov    0x38(%esp),%ebx
5bf5f8:	6a 00                	push   $0x0
5bf5fa:	53                   	push   %ebx
5bf5fb:	eb 3d                	jmp    0x5bf63a
5bf5fd:	8b 4d 04             	mov    0x4(%ebp),%ecx
5bf600:	8d 1c b5 00 00 00 00 	lea    0x0(,%esi,4),%ebx
5bf607:	53                   	push   %ebx
5bf608:	51                   	push   %ecx
5bf609:	52                   	push   %edx
5bf60a:	e8 73 f5 e5 ff       	call   0x41eb82
5bf60f:	8b 7d 04             	mov    0x4(%ebp),%edi
5bf612:	8b 54 24 1c          	mov    0x1c(%esp),%edx
5bf616:	8d 04 3b             	lea    (%ebx,%edi,1),%eax
5bf619:	2b f8                	sub    %eax,%edi
5bf61b:	8d 0c 95 00 00 00 00 	lea    0x0(,%edx,4),%ecx
5bf622:	03 f9                	add    %ecx,%edi
5bf624:	57                   	push   %edi
5bf625:	50                   	push   %eax
5bf626:	ff 74 24 30          	push   0x30(%esp)
5bf62a:	e8 53 f5 e5 ff       	call   0x41eb82
5bf62f:	53                   	push   %ebx
5bf630:	8b 5c 24 38          	mov    0x38(%esp),%ebx