4d441c:	85 c0                	test   %eax,%eax
4d441e:	75 11                	jne    0x4d4431
4d4420:	3b f7                	cmp    %edi,%esi
4d4422:	76 09                	jbe    0x4d442d
4d4424:	83 c8 ff             	or     $0xffffffff,%eax
4d4427:	5f                   	pop    %edi
4d4428:	c1 e8 1f             	shr    $0x1f,%eax
4d442b:	5e                   	pop    %esi
4d442c:	c3                   	ret
4d442d:	1b c0                	sbb    %eax,%eax
4d442f:	f7 d8                	neg    %eax
4d4431:	5f                   	pop    %edi
4d4432:	c1 e8 1f             	shr    $0x1f,%eax
4d4435:	5e                   	pop    %esi
4d4436:	c3                   	ret
4d4437:	cc                   	int3
4d4438:	cc                   	int3
4d4439:	cc                   	int3
4d443a:	cc                   	int3
4d443b:	cc                   	int3
4d443c:	cc                   	int3
4d443d:	cc                   	int3
4d443e:	cc                   	int3
4d443f:	cc                   	int3
4d4440:	cc                   	int3
4d4441:	cc                   	int3
4d4442:	cc                   	int3
4d4443:	cc                   	int3
4d4444:	cc                   	int3
4d4445:	cc                   	int3
4d4446:	cc                   	int3
4d4447:	cc                   	int3
4d4448:	cc                   	int3
4d4449:	cc                   	int3
4d444a:	cc                   	int3
4d444b:	cc                   	int3
4d444c:	cc                   	int3
4d444d:	cc                   	int3
4d444e:	cc                   	int3
4d444f:	cc                   	int3
4d4450:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4d4454:	85 c9                	test   %ecx,%ecx
4d4456:	74 0c                	je     0x4d4464
4d4458:	8b 01                	mov    (%ecx),%eax
4d445a:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
4d4461:	00
4d4462:	ff 20                	jmp    *(%eax)
4d4464:	c2 04 00             	ret    $0x4
4d4467:	cc                   	int3
4d4468:	cc                   	int3
4d4469:	cc                   	int3
4d446a:	cc                   	int3
4d446b:	cc                   	int3
4d446c:	cc                   	int3
4d446d:	cc                   	int3
4d446e:	cc                   	int3
4d446f:	cc                   	int3
4d4470:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4d4474:	85 c9                	test   %ecx,%ecx
4d4476:	74 0d                	je     0x4d4485
4d4478:	8b 01                	mov    (%ecx),%eax
4d447a:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
4d4481:	00
4d4482:	ff 60 10             	jmp    *0x10(%eax)
4d4485:	c2 04 00             	ret    $0x4
4d4488:	cc                   	int3
4d4489:	cc                   	int3
4d448a:	cc                   	int3
4d448b:	cc                   	int3
4d448c:	cc                   	int3
4d448d:	cc                   	int3
4d448e:	cc                   	int3
4d448f:	cc                   	int3
4d4490:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4d4494:	85 c9                	test   %ecx,%ecx
4d4496:	74 18                	je     0x4d44b0
4d4498:	8b 41 04             	mov    0x4(%ecx),%eax
4d449b:	83 c1 04             	add    $0x4,%ecx
4d449e:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
4d44a5:	00
4d44a6:	8b 40 04             	mov    0x4(%eax),%eax
4d44a9:	03 c8                	add    %eax,%ecx
4d44ab:	8b 01                	mov    (%ecx),%eax
4d44ad:	ff 60 20             	jmp    *0x20(%eax)
4d44b0:	c2 04 00             	ret    $0x4
4d44b3:	cc                   	int3
4d44b4:	cc                   	int3
4d44b5:	cc                   	int3
4d44b6:	cc                   	int3
4d44b7:	cc                   	int3
4d44b8:	cc                   	int3
4d44b9:	cc                   	int3
4d44ba:	cc                   	int3
4d44bb:	cc                   	int3
4d44bc:	cc                   	int3
4d44bd:	cc                   	int3
4d44be:	cc                   	int3
4d44bf:	cc                   	int3
4d44c0:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4d44c4:	85 c9                	test   %ecx,%ecx
4d44c6:	74 0d                	je     0x4d44d5
4d44c8:	8b 01                	mov    (%ecx),%eax
4d44ca:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
4d44d1:	00
4d44d2:	ff 60 20             	jmp    *0x20(%eax)
4d44d5:	c2 04 00             	ret    $0x4
4d44d8:	cc                   	int3
4d44d9:	cc                   	int3
4d44da:	cc                   	int3
4d44db:	cc                   	int3
4d44dc:	cc                   	int3
4d44dd:	cc                   	int3
4d44de:	cc                   	int3
4d44df:	cc                   	int3
4d44e0:	8b 44 24 04          	mov    0x4(%esp),%eax
4d44e4:	c1 e0 02             	shl    $0x2,%eax
4d44e7:	01 01                	add    %eax,(%ecx)
4d44e9:	8b c1                	mov    %ecx,%eax
4d44eb:	c2 04 00             	ret    $0x4
4d44ee:	cc                   	int3
4d44ef:	cc                   	int3
4d44f0:	cc                   	int3
4d44f1:	cc                   	int3
4d44f2:	cc                   	int3
4d44f3:	cc                   	int3
4d44f4:	cc                   	int3
4d44f5:	cc                   	int3
4d44f6:	cc                   	int3
4d44f7:	cc                   	int3
4d44f8:	cc                   	int3
4d44f9:	cc                   	int3
4d44fa:	cc                   	int3
4d44fb:	cc                   	int3
4d44fc:	cc                   	int3
4d44fd:	cc                   	int3
4d44fe:	cc                   	int3
4d44ff:	cc                   	int3
4d4500:	8b 44 24 04          	mov    0x4(%esp),%eax
4d4504:	c1 e0 02             	shl    $0x2,%eax
4d4507:	01 01                	add    %eax,(%ecx)
4d4509:	8b c1                	mov    %ecx,%eax
4d450b:	c2 04 00             	ret    $0x4
4d450e:	cc                   	int3
4d450f:	cc                   	int3
4d4510:	cc                   	int3
4d4511:	cc                   	int3
4d4512:	cc                   	int3
4d4513:	cc                   	int3
4d4514:	cc                   	int3
4d4515:	cc                   	int3
4d4516:	cc                   	int3
4d4517:	cc                   	int3
4d4518:	cc                   	int3
4d4519:	cc                   	int3
4d451a:	cc                   	int3
4d451b:	cc                   	int3
4d451c:	cc                   	int3
4d451d:	cc                   	int3
4d451e:	cc                   	int3
4d451f:	cc                   	int3
4d4520:	8b 44 24 04          	mov    0x4(%esp),%eax
4d4524:	c1 e0 02             	shl    $0x2,%eax
4d4527:	01 01                	add    %eax,(%ecx)
4d4529:	8b c1                	mov    %ecx,%eax
4d452b:	c2 04 00             	ret    $0x4
4d452e:	cc                   	int3
4d452f:	cc                   	int3
4d4530:	cc                   	int3
4d4531:	cc                   	int3
4d4532:	cc                   	int3
4d4533:	cc                   	int3
4d4534:	cc                   	int3
4d4535:	cc                   	int3
4d4536:	cc                   	int3
4d4537:	cc                   	int3
4d4538:	cc                   	int3
4d4539:	cc                   	int3
4d453a:	cc                   	int3
4d453b:	cc                   	int3
4d453c:	cc                   	int3
4d453d:	cc                   	int3
4d453e:	cc                   	int3
4d453f:	cc                   	int3
4d4540:	8b 44 24 04          	mov    0x4(%esp),%eax
4d4544:	c1 e0 02             	shl    $0x2,%eax
4d4547:	01 01                	add    %eax,(%ecx)
4d4549:	8b c1                	mov    %ecx,%eax
4d454b:	c2 04 00             	ret    $0x4
4d454e:	cc                   	int3
4d454f:	cc                   	int3
4d4550:	cc                   	int3
4d4551:	cc                   	int3
4d4552:	cc                   	int3
4d4553:	cc                   	int3
4d4554:	cc                   	int3
4d4555:	cc                   	int3
4d4556:	cc                   	int3
4d4557:	cc                   	int3
4d4558:	cc                   	int3
4d4559:	cc                   	int3
4d455a:	cc                   	int3
4d455b:	cc                   	int3
4d455c:	cc                   	int3
4d455d:	cc                   	int3
4d455e:	cc                   	int3
4d455f:	cc                   	int3
4d4560:	f6 44 24 04 01       	testb  $0x1,0x4(%esp)
4d4565:	56                   	push   %esi
4d4566:	8b f1                	mov    %ecx,%esi
4d4568:	c7 06 c0 25 bd 00    	movl   $0xbd25c0,(%esi)
4d456e:	74 0b                	je     0x4d457b
4d4570:	6a 64                	push   $0x64
4d4572:	56                   	push   %esi
4d4573:	e8 24 d9 f2 ff       	call   0x401e9c
4d4578:	83 c4 08             	add    $0x8,%esp
4d457b:	8b c6                	mov    %esi,%eax
4d457d:	5e                   	pop    %esi
4d457e:	c2 04 00             	ret    $0x4
4d4581:	cc                   	int3
4d4582:	cc                   	int3
4d4583:	cc                   	int3
4d4584:	cc                   	int3
4d4585:	cc                   	int3
4d4586:	cc                   	int3
4d4587:	cc                   	int3
4d4588:	cc                   	int3
4d4589:	cc                   	int3
4d458a:	cc                   	int3
4d458b:	cc                   	int3
4d458c:	cc                   	int3
4d458d:	cc                   	int3
4d458e:	cc                   	int3
4d458f:	cc                   	int3
4d4590:	f6 44 24 04 01       	testb  $0x1,0x4(%esp)
4d4595:	56                   	push   %esi
4d4596:	8b f1                	mov    %ecx,%esi
4d4598:	c7 06 c0 25 bd 00    	movl   $0xbd25c0,(%esi)
4d459e:	74 0b                	je     0x4d45ab
4d45a0:	6a 68                	push   $0x68
4d45a2:	56                   	push   %esi
4d45a3:	e8 f4 d8 f2 ff       	call   0x401e9c
4d45a8:	83 c4 08             	add    $0x8,%esp
4d45ab:	8b c6                	mov    %esi,%eax
4d45ad:	5e                   	pop    %esi
4d45ae:	c2 04 00             	ret    $0x4
4d45b1:	cc                   	int3
4d45b2:	cc                   	int3
4d45b3:	cc                   	int3
4d45b4:	cc                   	int3
4d45b5:	cc                   	int3
4d45b6:	cc                   	int3
4d45b7:	cc                   	int3
4d45b8:	cc                   	int3
4d45b9:	cc                   	int3
4d45ba:	cc                   	int3
4d45bb:	cc                   	int3
4d45bc:	cc                   	int3
4d45bd:	cc                   	int3
4d45be:	cc                   	int3
4d45bf:	cc                   	int3
4d45c0:	56                   	push   %esi
4d45c1:	8b f1                	mov    %ecx,%esi
4d45c3:	e8 de d1 f4 ff       	call   0x4217a6
4d45c8:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
4d45cd:	74 0b                	je     0x4d45da
4d45cf:	6a 20                	push   $0x20
4d45d1:	56                   	push   %esi
4d45d2:	e8 c5 d8 f2 ff       	call   0x401e9c
4d45d7:	83 c4 08             	add    $0x8,%esp
4d45da:	8b c6                	mov    %esi,%eax
4d45dc:	5e                   	pop    %esi
4d45dd:	c2 04 00             	ret    $0x4
4d45e0:	cc                   	int3
4d45e1:	cc                   	int3
4d45e2:	cc                   	int3
4d45e3:	cc                   	int3
4d45e4:	cc                   	int3
4d45e5:	cc                   	int3
4d45e6:	cc                   	int3
4d45e7:	cc                   	int3
4d45e8:	cc                   	int3
4d45e9:	cc                   	int3
4d45ea:	cc                   	int3
4d45eb:	cc                   	int3
4d45ec:	cc                   	int3
4d45ed:	cc                   	int3
4d45ee:	cc                   	int3
4d45ef:	cc                   	int3
4d45f0:	56                   	push   %esi
4d45f1:	8b f1                	mov    %ecx,%esi
4d45f3:	e8 ad 6a f3 ff       	call   0x40b0a5
4d45f8:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
4d45fd:	74 0b                	je     0x4d460a
4d45ff:	6a 20                	push   $0x20
4d4601:	56                   	push   %esi
4d4602:	e8 95 d8 f2 ff       	call   0x401e9c
4d4607:	83 c4 08             	add    $0x8,%esp
4d460a:	8b c6                	mov    %esi,%eax
4d460c:	5e                   	pop    %esi
4d460d:	c2 04 00             	ret    $0x4
4d4610:	cc                   	int3
4d4611:	cc                   	int3
4d4612:	cc                   	int3
4d4613:	cc                   	int3
4d4614:	cc                   	int3
4d4615:	cc                   	int3
4d4616:	cc                   	int3
4d4617:	cc                   	int3
4d4618:	cc                   	int3
4d4619:	cc                   	int3
4d461a:	cc                   	int3
4d461b:	cc                   	int3
4d461c:	cc                   	int3
4d461d:	cc                   	int3
4d461e:	cc                   	int3
4d461f:	cc                   	int3
4d4620:	56                   	push   %esi
4d4621:	57                   	push   %edi
4d4622:	8b f9                	mov    %ecx,%edi
4d4624:	8b 77 04             	mov    0x4(%edi),%esi
4d4627:	85 f6                	test   %esi,%esi
4d4629:	74 23                	je     0x4d464e
4d462b:	53                   	push   %ebx
4d462c:	83 cb ff             	or     $0xffffffff,%ebx
4d462f:	8b c3                	mov    %ebx,%eax
4d4631:	f0 0f c1 46 04       	lock xadd %eax,0x4(%esi)
4d4636:	75 15                	jne    0x4d464d
4d4638:	8b 06                	mov    (%esi),%eax
4d463a:	8b ce                	mov    %esi,%ecx
4d463c:	ff 10                	call   *(%eax)
4d463e:	f0 0f c1 5e 08       	lock xadd %ebx,0x8(%esi)
4d4643:	4b                   	dec    %ebx
4d4644:	75 07                	jne    0x4d464d
4d4646:	8b 06                	mov    (%esi),%eax
4d4648:	8b ce                	mov    %esi,%ecx
4d464a:	ff 50 04             	call   *0x4(%eax)
4d464d:	5b                   	pop    %ebx
4d464e:	f6 44 24 0c 01       	testb  $0x1,0xc(%esp)
4d4653:	74 0b                	je     0x4d4660
4d4655:	6a 08                	push   $0x8
4d4657:	57                   	push   %edi
4d4658:	e8 3f d8 f2 ff       	call   0x401e9c
4d465d:	83 c4 08             	add    $0x8,%esp
4d4660:	8b c7                	mov    %edi,%eax
4d4662:	5f                   	pop    %edi
4d4663:	5e                   	pop    %esi
4d4664:	c2 04 00             	ret    $0x4
4d4667:	cc                   	int3
4d4668:	cc                   	int3
4d4669:	cc                   	int3