44c2a2:	cc                   	int3
44c2a3:	cc                   	int3
44c2a4:	cc                   	int3
44c2a5:	cc                   	int3
44c2a6:	cc                   	int3
44c2a7:	cc                   	int3
44c2a8:	cc                   	int3
44c2a9:	cc                   	int3
44c2aa:	cc                   	int3
44c2ab:	cc                   	int3
44c2ac:	cc                   	int3
44c2ad:	cc                   	int3
44c2ae:	cc                   	int3
44c2af:	cc                   	int3
44c2b0:	8b ff                	mov    %edi,%edi
44c2b2:	55                   	push   %ebp
44c2b3:	8b ec                	mov    %esp,%ebp
44c2b5:	8b 4d 08             	mov    0x8(%ebp),%ecx
44c2b8:	ff 71 08             	push   0x8(%ecx)
44c2bb:	8b 49 04             	mov    0x4(%ecx),%ecx
44c2be:	e8 0d 00 00 00       	call   0x44c2d0
44c2c3:	33 c0                	xor    %eax,%eax
44c2c5:	5d                   	pop    %ebp
44c2c6:	c2 04 00             	ret    $0x4
44c2c9:	cc                   	int3
44c2ca:	cc                   	int3
44c2cb:	cc                   	int3
44c2cc:	cc                   	int3
44c2cd:	cc                   	int3
44c2ce:	cc                   	int3
44c2cf:	cc                   	int3
44c2d0:	8b ff                	mov    %edi,%edi
44c2d2:	55                   	push   %ebp
44c2d3:	8b ec                	mov    %esp,%ebp
44c2d5:	83 e4 f8             	and    $0xfffffff8,%esp
44c2d8:	83 ec 3c             	sub    $0x3c,%esp
44c2db:	53                   	push   %ebx
44c2dc:	56                   	push   %esi
44c2dd:	57                   	push   %edi
44c2de:	8b f9                	mov    %ecx,%edi
44c2e0:	c7 44 24 40 00 00 00 	movl   $0x0,0x40(%esp)
44c2e7:	00
44c2e8:	c7 44 24 44 00 00 00 	movl   $0x0,0x44(%esp)
44c2ef:	00
44c2f0:	e8 fb 19 ff ff       	call   0x43dcf0
44c2f5:	83 48 10 01          	orl    $0x1,0x10(%eax)
44c2f9:	e8 f2 19 ff ff       	call   0x43dcf0
44c2fe:	f6 40 10 01          	testb  $0x1,0x10(%eax)
44c302:	0f 84 0a 02 00 00    	je     0x44c512
44c308:	8b 5d 08             	mov    0x8(%ebp),%ebx
44c30b:	eb 03                	jmp    0x44c310
44c30d:	8d 49 00             	lea    0x0(%ecx),%ecx
44c310:	c7 44 24 28 00 00 00 	movl   $0x0,0x28(%esp)
44c317:	00
44c318:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%esp)
44c31f:	00
44c320:	c7 44 24 34 00 00 00 	movl   $0x0,0x34(%esp)
44c327:	00
44c328:	c7 44 24 38 00 00 00 	movl   $0x0,0x38(%esp)
44c32f:	00
44c330:	c7 44 24 3c 00 00 00 	movl   $0x0,0x3c(%esp)
44c337:	00
44c338:	c7 44 24 2c 94 ff ff 	movl   $0xffffff94,0x2c(%esp)
44c33f:	ff
44c340:	e8 bb 10 fe ff       	call   0x42d400
44c345:	89 44 24 40          	mov    %eax,0x40(%esp)
44c349:	c7 44 24 44 ff ff ff 	movl   $0xffffffff,0x44(%esp)
44c350:	ff
44c351:	e8 9a 19 ff ff       	call   0x43dcf0
44c356:	83 78 60 00          	cmpl   $0x0,0x60(%eax)
44c35a:	74 0a                	je     0x44c366
44c35c:	e8 8f 19 ff ff       	call   0x43dcf0
44c361:	8b 40 60             	mov    0x60(%eax),%eax
44c364:	eb 03                	jmp    0x44c369
44c366:	83 c8 ff             	or     $0xffffffff,%eax
44c369:	50                   	push   %eax
44c36a:	8d 44 24 3c          	lea    0x3c(%esp),%eax
44c36e:	50                   	push   %eax
44c36f:	8d 44 24 38          	lea    0x38(%esp),%eax
44c373:	50                   	push   %eax
44c374:	8d 44 24 40          	lea    0x40(%esp),%eax
44c378:	50                   	push   %eax
44c379:	ff 77 30             	push   0x30(%edi)
44c37c:	ff 15 40 21 45 00    	call   *0x452140
44c382:	89 44 24 3c          	mov    %eax,0x3c(%esp)
44c386:	85 c0                	test   %eax,%eax
44c388:	74 08                	je     0x44c392
44c38a:	6a 00                	push   $0x0
44c38c:	ff 15 78 20 45 00    	call   *0x452078
44c392:	ff 15 6c 20 45 00    	call   *0x45206c
44c398:	89 44 24 2c          	mov    %eax,0x2c(%esp)
44c39c:	e8 5f 10 fe ff       	call   0x42d400
44c3a1:	81 7c 24 2c 02 01 00 	cmpl   $0x102,0x2c(%esp)
44c3a8:	00
44c3a9:	89 44 24 44          	mov    %eax,0x44(%esp)
44c3ad:	75 28                	jne    0x44c3d7
44c3af:	e8 3c 19 ff ff       	call   0x43dcf0
44c3b4:	b9 01 00 00 00       	mov    $0x1,%ecx
44c3b9:	8b 40 64             	mov    0x64(%eax),%eax
44c3bc:	89 44 24 30          	mov    %eax,0x30(%esp)
44c3c0:	8d 47 04             	lea    0x4(%edi),%eax
44c3c3:	c7 44 24 34 00 00 00 	movl   $0x0,0x34(%esp)
44c3ca:	00
44c3cb:	c7 44 24 38 00 00 00 	movl   $0x0,0x38(%esp)
44c3d2:	00
44c3d3:	f0 0f c1 08          	lock xadd %ecx,(%eax)
44c3d7:	83 7c 24 3c 00       	cmpl   $0x0,0x3c(%esp)
44c3dc:	8b 4c 24 30          	mov    0x30(%esp),%ecx
44c3e0:	74 15                	je     0x44c3f7
44c3e2:	33 c0                	xor    %eax,%eax
44c3e4:	85 c9                	test   %ecx,%ecx
44c3e6:	0f 95 c0             	setne  %al
44c3e9:	89 44 24 28          	mov    %eax,0x28(%esp)
44c3ed:	85 c0                	test   %eax,%eax
44c3ef:	0f 84 0e 01 00 00    	je     0x44c503
44c3f5:	eb 11                	jmp    0x44c408
44c3f7:	85 c9                	test   %ecx,%ecx
44c3f9:	0f 84 fc 00 00 00    	je     0x44c4fb
44c3ff:	b8 01 00 00 00       	mov    $0x1,%eax
44c404:	89 44 24 28          	mov    %eax,0x28(%esp)
44c408:	39 4f 38             	cmp    %ecx,0x38(%edi)
44c40b:	75 0d                	jne    0x44c41a
44c40d:	33 c0                	xor    %eax,%eax
44c40f:	39 44 24 38          	cmp    %eax,0x38(%esp)
44c413:	0f 95 c0             	setne  %al
44c416:	89 44 24 28          	mov    %eax,0x28(%esp)
44c41a:	85 c0                	test   %eax,%eax
44c41c:	0f 84 e1 00 00 00    	je     0x44c503
44c422:	85 c9                	test   %ecx,%ecx
44c424:	75 15                	jne    0x44c43b
44c426:	68 c7 02 00 00       	push   $0x2c7
44c42b:	68 94 40 41 00       	push   $0x414094
44c430:	68 d8 40 41 00       	push   $0x4140d8
44c435:	51                   	push   %ecx
44c436:	e8 d5 c1 fd ff       	call   0x428610
44c43b:	e8 b0 18 ff ff       	call   0x43dcf0
44c440:	8b 4c 24 30          	mov    0x30(%esp),%ecx
44c444:	3b 48 64             	cmp    0x64(%eax),%ecx
44c447:	75 18                	jne    0x44c461
44c449:	e8 a2 18 ff ff       	call   0x43dcf0
44c44e:	c7 40 60 00 00 00 00 	movl   $0x0,0x60(%eax)
44c455:	e8 96 18 ff ff       	call   0x43dcf0
44c45a:	c7 40 64 00 00 00 00 	movl   $0x0,0x64(%eax)
44c461:	ff 74 24 2c          	push   0x2c(%esp)
44c465:	ff 15 78 20 45 00    	call   *0x452078
44c46b:	8b 74 24 30          	mov    0x30(%esp),%esi
44c46f:	39 77 38             	cmp    %esi,0x38(%edi)
44c472:	74 64                	je     0x44c4d8
44c474:	83 3d 6c 1a 45 00 00 	cmpl   $0x0,0x451a6c
44c47b:	8b 44 24 2c          	mov    0x2c(%esp),%eax
44c47f:	89 44 24 14          	mov    %eax,0x14(%esp)
44c483:	8b 44 24 38          	mov    0x38(%esp),%eax
44c487:	89 44 24 18          	mov    %eax,0x18(%esp)
44c48b:	8b 44 24 34          	mov    0x34(%esp),%eax
44c48f:	89 5c 24 10          	mov    %ebx,0x10(%esp)
44c493:	89 44 24 1c          	mov    %eax,0x1c(%esp)
44c497:	89 74 24 20          	mov    %esi,0x20(%esp)
44c49b:	89 7c 24 24          	mov    %edi,0x24(%esp)
44c49f:	75 37                	jne    0x44c4d8
44c4a1:	83 3d 64 f0 44 00 01 	cmpl   $0x1,0x44f064
44c4a8:	75 2e                	jne    0x44c4d8
44c4aa:	8d 44 24 10          	lea    0x10(%esp),%eax
44c4ae:	50                   	push   %eax
44c4af:	8d 44 24 18          	lea    0x18(%esp),%eax
44c4b3:	50                   	push   %eax
44c4b4:	8d 44 24 20          	lea    0x20(%esp),%eax
44c4b8:	50                   	push   %eax
44c4b9:	8d 44 24 28          	lea    0x28(%esp),%eax
44c4bd:	50                   	push   %eax
44c4be:	8d 44 24 30          	lea    0x30(%esp),%eax
44c4c2:	50                   	push   %eax
44c4c3:	8d 44 24 38          	lea    0x38(%esp),%eax
44c4c7:	50                   	push   %eax
44c4c8:	6a 06                	push   $0x6
44c4ca:	6a 21                	push   $0x21
44c4cc:	e8 9f ae ff ff       	call   0x447370
44c4d1:	8b 74 24 50          	mov    0x50(%esp),%esi
44c4d5:	83 c4 20             	add    $0x20,%esp
44c4d8:	ff 74 24 38          	push   0x38(%esp)
44c4dc:	8b ce                	mov    %esi,%ecx
44c4de:	ff 74 24 38          	push   0x38(%esp)
44c4e2:	53                   	push   %ebx
44c4e3:	ff 74 24 38          	push   0x38(%esp)
44c4e7:	ff 15 84 23 45 00    	call   *0x452384
44c4ed:	ff d6                	call   *%esi
44c4ef:	83 c9 ff             	or     $0xffffffff,%ecx
44c4f2:	8d 47 04             	lea    0x4(%edi),%eax
44c4f5:	f0 0f c1 08          	lock xadd %ecx,(%eax)
44c4f9:	eb 08                	jmp    0x44c503
44c4fb:	c7 44 24 28 00 00 00 	movl   $0x0,0x28(%esp)
44c502:	00
44c503:	e8 e8 17 ff ff       	call   0x43dcf0
44c508:	f6 40 10 01          	testb  $0x1,0x10(%eax)
44c50c:	0f 85 fe fd ff ff    	jne    0x44c310
44c512:	5f                   	pop    %edi
44c513:	5e                   	pop    %esi
44c514:	5b                   	pop    %ebx
44c515:	8b e5                	mov    %ebp,%esp
44c517:	5d                   	pop    %ebp
44c518:	c2 04 00             	ret    $0x4
44c51b:	cc                   	int3
44c51c:	cc                   	int3
44c51d:	cc                   	int3
44c51e:	cc                   	int3
44c51f:	cc                   	int3
44c520:	e8 cb 17 ff ff       	call   0x43dcf0
44c525:	83 60 10 fe          	andl   $0xfffffffe,0x10(%eax)
44c529:	c2 10 00             	ret    $0x10
44c52c:	cc                   	int3
44c52d:	cc                   	int3
44c52e:	cc                   	int3
44c52f:	cc                   	int3
44c530:	8b ff                	mov    %edi,%edi
44c532:	56                   	push   %esi
44c533:	57                   	push   %edi
44c534:	8b f1                	mov    %ecx,%esi
44c536:	e8 c5 0e fe ff       	call   0x42d400
44c53b:	8b f8                	mov    %eax,%edi
44c53d:	33 d2                	xor    %edx,%edx
44c53f:	69 46 14 e8 03 00 00 	imul   $0x3e8,0x14(%esi),%eax
44c546:	f7 35 24 11 45 00    	divl   0x451124
44c54c:	8b 56 08             	mov    0x8(%esi),%edx
44c54f:	03 d0                	add    %eax,%edx
44c551:	83 7e 14 00          	cmpl   $0x0,0x14(%esi)
44c555:	74 1e                	je     0x44c575
44c557:	8b 06                	mov    (%esi),%eax
44c559:	39 46 14             	cmp    %eax,0x14(%esi)
44c55c:	73 12                	jae    0x44c570
44c55e:	83 7e 34 00          	cmpl   $0x0,0x34(%esi)
44c562:	75 0c                	jne    0x44c570
44c564:	8b 4e 10             	mov    0x10(%esi),%ecx
44c567:	39 4e 04             	cmp    %ecx,0x4(%esi)
44c56a:	76 04                	jbe    0x44c570
44c56c:	2b fa                	sub    %edx,%edi
44c56e:	79 05                	jns    0x44c575
44c570:	33 c0                	xor    %eax,%eax
44c572:	5f                   	pop    %edi
44c573:	5e                   	pop    %esi
44c574:	c3                   	ret
44c575:	5f                   	pop    %edi
44c576:	b8 01 00 00 00       	mov    $0x1,%eax
44c57b:	5e                   	pop    %esi
44c57c:	c3                   	ret
44c57d:	cc                   	int3
44c57e:	cc                   	int3
44c57f:	cc                   	int3
44c580:	8b ff                	mov    %edi,%edi
44c582:	55                   	push   %ebp
44c583:	8b ec                	mov    %esp,%ebp
44c585:	83 ec 08             	sub    $0x8,%esp
44c588:	53                   	push   %ebx
44c589:	56                   	push   %esi
44c58a:	57                   	push   %edi
44c58b:	8b f9                	mov    %ecx,%edi
44c58d:	33 f6                	xor    %esi,%esi
44c58f:	e8 6c 0e fe ff       	call   0x42d400
44c594:	8d 5f 14             	lea    0x14(%edi),%ebx
44c597:	89 45 fc             	mov    %eax,-0x4(%ebp)
44c59a:	69 03 e8 03 00 00    	imul   $0x3e8,(%ebx),%eax
44c5a0:	33 d2                	xor    %edx,%edx
44c5a2:	f7 35 24 11 45 00    	divl   0x451124
44c5a8:	8b 57 08             	mov    0x8(%edi),%edx
44c5ab:	03 d0                	add    %eax,%edx
44c5ad:	39 33                	cmp    %esi,(%ebx)
44c5af:	74 2a                	je     0x44c5db
44c5b1:	8b 07                	mov    (%edi),%eax
44c5b3:	39 03                	cmp    %eax,(%ebx)
44c5b5:	0f 83 a6 00 00 00    	jae    0x44c661
44c5bb:	39 77 34             	cmp    %esi,0x34(%edi)
44c5be:	0f 85 9d 00 00 00    	jne    0x44c661
44c5c4:	8b 4f 10             	mov    0x10(%edi),%ecx
44c5c7:	39 4f 04             	cmp    %ecx,0x4(%edi)
44c5ca:	0f 86 91 00 00 00    	jbe    0x44c661
44c5d0:	8b 45 fc             	mov    -0x4(%ebp),%eax
44c5d3:	2b c2                	sub    %edx,%eax
44c5d5:	0f 88 86 00 00 00    	js     0x44c661
44c5db:	8d 4f 0c             	lea    0xc(%edi),%ecx
44c5de:	e8 ad 81 fd ff       	call   0x424790
44c5e3:	85 c0                	test   %eax,%eax
44c5e5:	74 7a                	je     0x44c661
44c5e7:	8b cf                	mov    %edi,%ecx
44c5e9:	e8 42 ff ff ff       	call   0x44c530
44c5ee:	85 c0                	test   %eax,%eax
44c5f0:	74 65                	je     0x44c657
44c5f2:	8b 03                	mov    (%ebx),%eax
44c5f4:	8b 15 c8 19 45 00    	mov    0x4519c8,%edx
44c5fa:	68 b8 40 41 00       	push   $0x4140b8
44c5ff:	8d 34 40             	lea    (%eax,%eax,2),%esi
44c602:	8b 03                	mov    (%ebx),%eax
44c604:	c1 e6 02             	shl    $0x2,%esi
44c607:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
44c60a:	8b 47 18             	mov    0x18(%edi),%eax
44c60d:	03 c6                	add    %esi,%eax
44c60f:	c1 e1 02             	shl    $0x2,%ecx
44c612:	50                   	push   %eax
44c613:	8b 47 18             	mov    0x18(%edi),%eax
44c616:	03 c1                	add    %ecx,%eax
44c618:	b9 b0 c2 44 00       	mov    $0x44c2b0,%ecx
44c61d:	50                   	push   %eax
44c61e:	6a 03                	push   $0x3
44c620:	e8 ab 19 ff ff       	call   0x43dfd0
44c625:	8b f0                	mov    %eax,%esi
44c627:	85 f6                	test   %esi,%esi
44c629:	78 2c                	js     0x44c657
44c62b:	b8 01 00 00 00       	mov    $0x1,%eax
44c630:	f0 0f c1 03          	lock xadd %eax,(%ebx)
44c634:	8b 07                	mov    (%edi),%eax
44c636:	39 03                	cmp    %eax,(%ebx)
44c638:	75 09                	jne    0x44c643
44c63a:	c7 47 10 ff ff ff ff 	movl   $0xffffffff,0x10(%edi)
44c641:	eb 10                	jmp    0x44c653
44c643:	e8 b8 0d fe ff       	call   0x42d400
44c648:	89 47 08             	mov    %eax,0x8(%edi)
44c64b:	8b 03                	mov    (%ebx),%eax
44c64d:	c1 e0 03             	shl    $0x3,%eax
44c650:	89 47 10             	mov    %eax,0x10(%edi)
44c653:	8b 03                	mov    (%ebx),%eax
44c655:	8b 07                	mov    (%edi),%eax
44c657:	6a 01                	push   $0x1
44c659:	8d 4f 0c             	lea    0xc(%edi),%ecx
44c65c:	e8 df 87 fc ff       	call   0x414e40
44c661:	5f                   	pop    %edi
44c662:	8b c6                	mov    %esi,%eax
44c664:	5e                   	pop    %esi
44c665:	5b                   	pop    %ebx
44c666:	8b e5                	mov    %ebp,%esp
44c668:	5d                   	pop    %ebp
44c669:	c2 04 00             	ret    $0x4
44c66c:	cc                   	int3
44c66d:	cc                   	int3
44c66e:	cc                   	int3
44c66f:	cc                   	int3
44c670:	8b ff                	mov    %edi,%edi
44c672:	55                   	push   %ebp
44c673:	8b ec                	mov    %esp,%ebp
44c675:	51                   	push   %ecx
44c676:	b9 24 15 45 00       	mov    $0x451524,%ecx
44c67b:	e8 10 81 fd ff       	call   0x424790
44c680:	85 c0                	test   %eax,%eax
44c682:	75 0c                	jne    0x44c690
44c684:	6a ff                	push   $0xffffffff
44c686:	b9 24 15 45 00       	mov    $0x451524,%ecx
44c68b:	e8 50 84 fd ff       	call   0x424ae0
44c690:	6a 01                	push   $0x1
44c692:	b9 24 15 45 00       	mov    $0x451524,%ecx
44c697:	e8 a4 87 fc ff       	call   0x414e40
44c69c:	a1 e0 12 45 00       	mov    0x4512e0,%eax
44c6a1:	85 c0                	test   %eax,%eax
44c6a3:	74 09                	je     0x44c6ae
44c6a5:	6a ff                	push   $0xffffffff