41d4bc:	85 c0                	test   %eax,%eax
41d4be:	0f 85 ca 01 01 00    	jne    0x42d68e
41d4c4:	85 ff                	test   %edi,%edi
41d4c6:	74 17                	je     0x41d4df
41d4c8:	83 c7 04             	add    $0x4,%edi
41d4cb:	e9 2f ff ff ff       	jmp    0x41d3ff
41d4d0:	8b ce                	mov    %esi,%ecx
41d4d2:	ff 15 c4 12 45 00    	call   *0x4512c4
41d4d8:	ff d6                	call   *%esi
41d4da:	e9 41 ff ff ff       	jmp    0x41d420
41d4df:	33 ff                	xor    %edi,%edi
41d4e1:	e9 19 ff ff ff       	jmp    0x41d3ff
41d4e6:	8b ff                	mov    %edi,%edi
41d4e8:	55                   	push   %ebp
41d4e9:	8b ec                	mov    %esp,%ebp
41d4eb:	56                   	push   %esi
41d4ec:	8b f1                	mov    %ecx,%esi
41d4ee:	ff 15 64 30 45 00    	call   *0x453064
41d4f4:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
41d4f8:	0f 85 9a 01 01 00    	jne    0x42d698
41d4fe:	8b 86 34 01 00 00    	mov    0x134(%esi),%eax
41d504:	5e                   	pop    %esi
41d505:	8b 80 80 06 00 00    	mov    0x680(%eax),%eax
41d50b:	83 f8 01             	cmp    $0x1,%eax
41d50e:	74 19                	je     0x41d529
41d510:	83 f8 05             	cmp    $0x5,%eax
41d513:	74 14                	je     0x41d529
41d515:	83 f8 06             	cmp    $0x6,%eax
41d518:	7e 15                	jle    0x41d52f
41d51a:	83 f8 08             	cmp    $0x8,%eax
41d51d:	7e 0a                	jle    0x41d529
41d51f:	83 f8 0a             	cmp    $0xa,%eax
41d522:	7e 0b                	jle    0x41d52f
41d524:	83 f8 0d             	cmp    $0xd,%eax
41d527:	7f 06                	jg     0x41d52f
41d529:	33 c0                	xor    %eax,%eax
41d52b:	5d                   	pop    %ebp
41d52c:	c2 1c 00             	ret    $0x1c
41d52f:	ff 75 08             	push   0x8(%ebp)
41d532:	8b 55 10             	mov    0x10(%ebp),%edx
41d535:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41d538:	e8 15 18 00 00       	call   0x41ed52
41d53d:	eb ea                	jmp    0x41d529
41d53f:	8b ff                	mov    %edi,%edi
41d541:	55                   	push   %ebp
41d542:	8b ec                	mov    %esp,%ebp
41d544:	8b 45 1c             	mov    0x1c(%ebp),%eax
41d547:	33 d2                	xor    %edx,%edx
41d549:	53                   	push   %ebx
41d54a:	8b 5d 20             	mov    0x20(%ebp),%ebx
41d54d:	56                   	push   %esi
41d54e:	89 10                	mov    %edx,(%eax)
41d550:	8b f2                	mov    %edx,%esi
41d552:	8b 45 0c             	mov    0xc(%ebp),%eax
41d555:	57                   	push   %edi
41d556:	8b f9                	mov    %ecx,%edi
41d558:	89 13                	mov    %edx,(%ebx)
41d55a:	8b 4d 08             	mov    0x8(%ebp),%ecx
41d55d:	89 11                	mov    %edx,(%ecx)
41d55f:	89 10                	mov    %edx,(%eax)
41d561:	8b 55 10             	mov    0x10(%ebp),%edx
41d564:	21 32                	and    %esi,(%edx)
41d566:	8b 87 34 01 00 00    	mov    0x134(%edi),%eax
41d56c:	8b 80 80 06 00 00    	mov    0x680(%eax),%eax
41d572:	83 f8 01             	cmp    $0x1,%eax
41d575:	74 25                	je     0x41d59c
41d577:	83 f8 05             	cmp    $0x5,%eax
41d57a:	74 20                	je     0x41d59c
41d57c:	83 f8 06             	cmp    $0x6,%eax
41d57f:	0f 8e 2b 01 01 00    	jle    0x42d6b0
41d585:	83 f8 08             	cmp    $0x8,%eax
41d588:	7e 12                	jle    0x41d59c
41d58a:	83 f8 0a             	cmp    $0xa,%eax
41d58d:	0f 8e 1d 01 01 00    	jle    0x42d6b0
41d593:	83 f8 0d             	cmp    $0xd,%eax
41d596:	0f 8f 14 01 01 00    	jg     0x42d6b0
41d59c:	8b 4d 18             	mov    0x18(%ebp),%ecx
41d59f:	8b 97 b8 00 00 00    	mov    0xb8(%edi),%edx
41d5a5:	89 11                	mov    %edx,(%ecx)
41d5a7:	8b 4d 14             	mov    0x14(%ebp),%ecx
41d5aa:	21 31                	and    %esi,(%ecx)
41d5ac:	81 fe 02 10 04 80    	cmp    $0x80041002,%esi
41d5b2:	74 27                	je     0x41d5db
41d5b4:	85 f6                	test   %esi,%esi
41d5b6:	0f 88 c4 01 01 00    	js     0x42d780
41d5bc:	a1 00 f0 44 00       	mov    0x44f000,%eax
41d5c1:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
41d5c6:	74 0a                	je     0x41d5d2
41d5c8:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
41d5cc:	0f 85 c2 01 01 00    	jne    0x42d794
41d5d2:	8b c6                	mov    %esi,%eax
41d5d4:	5f                   	pop    %edi
41d5d5:	5e                   	pop    %esi
41d5d6:	5b                   	pop    %ebx
41d5d7:	5d                   	pop    %ebp
41d5d8:	c2 1c 00             	ret    $0x1c
41d5db:	b8 02 10 04 80       	mov    $0x80041002,%eax
41d5e0:	eb f2                	jmp    0x41d5d4
41d5e2:	cc                   	int3
41d5e3:	cc                   	int3
41d5e4:	cc                   	int3
41d5e5:	cc                   	int3
41d5e6:	cc                   	int3
41d5e7:	cc                   	int3
41d5e8:	cc                   	int3
41d5e9:	cc                   	int3
41d5ea:	cc                   	int3
41d5eb:	cc                   	int3
41d5ec:	cc                   	int3
41d5ed:	cc                   	int3
41d5ee:	cc                   	int3
41d5ef:	cc                   	int3
41d5f0:	8b ff                	mov    %edi,%edi
41d5f2:	55                   	push   %ebp
41d5f3:	8b ec                	mov    %esp,%ebp
41d5f5:	8b 55 10             	mov    0x10(%ebp),%edx
41d5f8:	83 ec 08             	sub    $0x8,%esp
41d5fb:	53                   	push   %ebx
41d5fc:	8b d9                	mov    %ecx,%ebx
41d5fe:	33 c9                	xor    %ecx,%ecx
41d600:	38 0a                	cmp    %cl,(%edx)
41d602:	0f 84 d6 00 00 00    	je     0x41d6de
41d608:	56                   	push   %esi
41d609:	57                   	push   %edi
41d60a:	8b 7d 08             	mov    0x8(%ebp),%edi
41d60d:	8b 37                	mov    (%edi),%esi
41d60f:	8b 46 10             	mov    0x10(%esi),%eax
41d612:	2b c1                	sub    %ecx,%eax
41d614:	74 1c                	je     0x41d632
41d616:	83 e8 01             	sub    $0x1,%eax
41d619:	74 2b                	je     0x41d646
41d61b:	83 e8 01             	sub    $0x1,%eax
41d61e:	0f 85 8a 73 00 00    	jne    0x4249ae
41d624:	89 4e 10             	mov    %ecx,0x10(%esi)
41d627:	8b c1                	mov    %ecx,%eax
41d629:	5f                   	pop    %edi
41d62a:	5e                   	pop    %esi
41d62b:	5b                   	pop    %ebx
41d62c:	8b e5                	mov    %ebp,%esp
41d62e:	5d                   	pop    %ebp
41d62f:	c2 0c 00             	ret    $0xc
41d632:	5f                   	pop    %edi
41d633:	c7 46 10 01 00 00 00 	movl   $0x1,0x10(%esi)
41d63a:	8b c1                	mov    %ecx,%eax
41d63c:	5e                   	pop    %esi
41d63d:	88 0a                	mov    %cl,(%edx)
41d63f:	5b                   	pop    %ebx
41d640:	8b e5                	mov    %ebp,%esp
41d642:	5d                   	pop    %ebp
41d643:	c2 0c 00             	ret    $0xc
41d646:	8b 45 0c             	mov    0xc(%ebp),%eax
41d649:	8b 78 10             	mov    0x10(%eax),%edi
41d64c:	2b f9                	sub    %ecx,%edi
41d64e:	89 7d fc             	mov    %edi,-0x4(%ebp)
41d651:	8b 7d 08             	mov    0x8(%ebp),%edi
41d654:	74 42                	je     0x41d698
41d656:	8b 55 fc             	mov    -0x4(%ebp),%edx
41d659:	83 ea 01             	sub    $0x1,%edx
41d65c:	0f 85 92 00 00 00    	jne    0x41d6f4
41d662:	8b 56 0c             	mov    0xc(%esi),%edx
41d665:	89 55 f8             	mov    %edx,-0x8(%ebp)
41d668:	85 d2                	test   %edx,%edx
41d66a:	75 7b                	jne    0x41d6e7
41d66c:	89 03                	mov    %eax,(%ebx)
41d66e:	8b 50 08             	mov    0x8(%eax),%edx
41d671:	85 d2                	test   %edx,%edx
41d673:	0f 85 f5 00 00 00    	jne    0x41d76e
41d679:	8b 55 0c             	mov    0xc(%ebp),%edx
41d67c:	89 4e 10             	mov    %ecx,0x10(%esi)
41d67f:	8b 40 08             	mov    0x8(%eax),%eax
41d682:	89 46 04             	mov    %eax,0x4(%esi)
41d685:	8b 45 f8             	mov    -0x8(%ebp),%eax
41d688:	89 56 0c             	mov    %edx,0xc(%esi)
41d68b:	89 4a 10             	mov    %ecx,0x10(%edx)
41d68e:	89 72 08             	mov    %esi,0x8(%edx)
41d691:	89 42 0c             	mov    %eax,0xc(%edx)
41d694:	89 17                	mov    %edx,(%edi)
41d696:	eb 8f                	jmp    0x41d627
41d698:	88 0a                	mov    %cl,(%edx)
41d69a:	8b 56 0c             	mov    0xc(%esi),%edx
41d69d:	89 55 f8             	mov    %edx,-0x8(%ebp)
41d6a0:	85 d2                	test   %edx,%edx
41d6a2:	0f 85 59 73 00 00    	jne    0x424a01
41d6a8:	89 03                	mov    %eax,(%ebx)
41d6aa:	8b 50 08             	mov    0x8(%eax),%edx
41d6ad:	85 d2                	test   %edx,%edx
41d6af:	74 03                	je     0x41d6b4
41d6b1:	89 72 0c             	mov    %esi,0xc(%edx)
41d6b4:	8b 55 0c             	mov    0xc(%ebp),%edx
41d6b7:	c7 46 10 01 00 00 00 	movl   $0x1,0x10(%esi)
41d6be:	8b 40 08             	mov    0x8(%eax),%eax
41d6c1:	89 46 04             	mov    %eax,0x4(%esi)
41d6c4:	8b 45 f8             	mov    -0x8(%ebp),%eax
41d6c7:	89 56 0c             	mov    %edx,0xc(%esi)
41d6ca:	c7 42 10 02 00 00 00 	movl   $0x2,0x10(%edx)
41d6d1:	89 72 08             	mov    %esi,0x8(%edx)
41d6d4:	89 42 0c             	mov    %eax,0xc(%edx)
41d6d7:	89 17                	mov    %edx,(%edi)
41d6d9:	e9 49 ff ff ff       	jmp    0x41d627
41d6de:	8b c1                	mov    %ecx,%eax
41d6e0:	5b                   	pop    %ebx
41d6e1:	8b e5                	mov    %ebp,%esp
41d6e3:	5d                   	pop    %ebp
41d6e4:	c2 0c 00             	ret    $0xc
41d6e7:	39 72 04             	cmp    %esi,0x4(%edx)
41d6ea:	75 7a                	jne    0x41d766
41d6ec:	89 42 04             	mov    %eax,0x4(%edx)
41d6ef:	e9 7a ff ff ff       	jmp    0x41d66e
41d6f4:	83 ea 01             	sub    $0x1,%edx
41d6f7:	0f 85 b1 72 00 00    	jne    0x4249ae
41d6fd:	8b 46 04             	mov    0x4(%esi),%eax
41d700:	8b 56 0c             	mov    0xc(%esi),%edx
41d703:	89 55 f8             	mov    %edx,-0x8(%ebp)
41d706:	8b 40 08             	mov    0x8(%eax),%eax
41d709:	85 d2                	test   %edx,%edx
41d70b:	0f 85 a7 72 00 00    	jne    0x4249b8
41d711:	89 03                	mov    %eax,(%ebx)
41d713:	8b d8                	mov    %eax,%ebx
41d715:	8b 55 0c             	mov    0xc(%ebp),%edx
41d718:	89 5e 0c             	mov    %ebx,0xc(%esi)
41d71b:	89 5a 0c             	mov    %ebx,0xc(%edx)
41d71e:	8b 43 04             	mov    0x4(%ebx),%eax
41d721:	85 c0                	test   %eax,%eax
41d723:	75 51                	jne    0x41d776
41d725:	8b 43 08             	mov    0x8(%ebx),%eax
41d728:	85 c0                	test   %eax,%eax
41d72a:	75 4f                	jne    0x41d77b
41d72c:	89 46 04             	mov    %eax,0x4(%esi)
41d72f:	8b 43 04             	mov    0x4(%ebx),%eax
41d732:	89 42 08             	mov    %eax,0x8(%edx)
41d735:	8b 45 f8             	mov    -0x8(%ebp),%eax
41d738:	89 43 0c             	mov    %eax,0xc(%ebx)
41d73b:	8b 43 10             	mov    0x10(%ebx),%eax
41d73e:	89 53 04             	mov    %edx,0x4(%ebx)
41d741:	89 73 08             	mov    %esi,0x8(%ebx)
41d744:	85 c0                	test   %eax,%eax
41d746:	0f 85 83 72 00 00    	jne    0x4249cf
41d74c:	89 4a 10             	mov    %ecx,0x10(%edx)
41d74f:	89 4e 10             	mov    %ecx,0x10(%esi)
41d752:	89 1f                	mov    %ebx,(%edi)
41d754:	8b c1                	mov    %ecx,%eax
41d756:	5f                   	pop    %edi
41d757:	5e                   	pop    %esi
41d758:	c7 43 10 00 00 00 00 	movl   $0x0,0x10(%ebx)
41d75f:	5b                   	pop    %ebx
41d760:	8b e5                	mov    %ebp,%esp
41d762:	5d                   	pop    %ebp
41d763:	c2 0c 00             	ret    $0xc
41d766:	89 42 08             	mov    %eax,0x8(%edx)
41d769:	e9 00 ff ff ff       	jmp    0x41d66e
41d76e:	89 72 0c             	mov    %esi,0xc(%edx)
41d771:	e9 03 ff ff ff       	jmp    0x41d679
41d776:	89 50 0c             	mov    %edx,0xc(%eax)
41d779:	eb aa                	jmp    0x41d725
41d77b:	89 70 0c             	mov    %esi,0xc(%eax)
41d77e:	8b 43 08             	mov    0x8(%ebx),%eax
41d781:	eb a9                	jmp    0x41d72c
41d783:	cc                   	int3
41d784:	cc                   	int3
41d785:	cc                   	int3
41d786:	cc                   	int3
41d787:	cc                   	int3
41d788:	cc                   	int3
41d789:	cc                   	int3
41d78a:	cc                   	int3
41d78b:	cc                   	int3
41d78c:	cc                   	int3
41d78d:	cc                   	int3
41d78e:	cc                   	int3
41d78f:	cc                   	int3
41d790:	8b ff                	mov    %edi,%edi
41d792:	55                   	push   %ebp
41d793:	8b ec                	mov    %esp,%ebp
41d795:	8b 45 0c             	mov    0xc(%ebp),%eax
41d798:	8b c8                	mov    %eax,%ecx
41d79a:	83 e9 02             	sub    $0x2,%ecx
41d79d:	74 0a                	je     0x41d7a9
41d79f:	89 45 0c             	mov    %eax,0xc(%ebp)
41d7a2:	5d                   	pop    %ebp
41d7a3:	ff 25 c0 30 45 00    	jmp    *0x4530c0
41d7a9:	6a 00                	push   $0x0
41d7ab:	6a 00                	push   $0x0
41d7ad:	6a 12                	push   $0x12
41d7af:	ff 75 08             	push   0x8(%ebp)
41d7b2:	ff 15 a4 30 45 00    	call   *0x4530a4
41d7b8:	33 c0                	xor    %eax,%eax
41d7ba:	5d                   	pop    %ebp
41d7bb:	c2 10 00             	ret    $0x10
41d7be:	cc                   	int3
41d7bf:	cc                   	int3
41d7c0:	8b ff                	mov    %edi,%edi
41d7c2:	55                   	push   %ebp
41d7c3:	8b ec                	mov    %esp,%ebp
41d7c5:	6a ff                	push   $0xffffffff
41d7c7:	68 d8 39 42 00       	push   $0x4239d8
41d7cc:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41d7d2:	50                   	push   %eax
41d7d3:	51                   	push   %ecx
41d7d4:	56                   	push   %esi
41d7d5:	57                   	push   %edi
41d7d6:	a1 54 02 45 00       	mov    0x450254,%eax
41d7db:	33 c5                	xor    %ebp,%eax
41d7dd:	50                   	push   %eax
41d7de:	8d 45 f4             	lea    -0xc(%ebp),%eax
41d7e1:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
41d7e7:	8b 45 08             	mov    0x8(%ebp),%eax
41d7ea:	8d 70 28             	lea    0x28(%eax),%esi
41d7ed:	89 75 f0             	mov    %esi,-0x10(%ebp)
41d7f0:	f0 ff 06             	lock incl (%esi)
41d7f3:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
41d7fa:	83 78 58 00          	cmpl   $0x0,0x58(%eax)
41d7fe:	75 36                	jne    0x41d836
41d800:	8b 40 34             	mov    0x34(%eax),%eax
41d803:	ff 75 10             	push   0x10(%ebp)
41d806:	ff 75 0c             	push   0xc(%ebp)
41d809:	8b 38                	mov    (%eax),%edi
41d80b:	50                   	push   %eax
41d80c:	8b 7f 0c             	mov    0xc(%edi),%edi
41d80f:	8b cf                	mov    %edi,%ecx
41d811:	ff 15 c4 12 45 00    	call   *0x4512c4
41d817:	ff d7                	call   *%edi
41d819:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
41d820:	f0 ff 0e             	lock decl (%esi)
41d823:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41d826:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41d82d:	59                   	pop    %ecx
41d82e:	5f                   	pop    %edi
41d82f:	5e                   	pop    %esi
41d830:	8b e5                	mov    %ebp,%esp
41d832:	5d                   	pop    %ebp
41d833:	c2 0c 00             	ret    $0xc
41d836:	b8 33 10 04 80       	mov    $0x80041033,%eax
41d83b:	eb dc                	jmp    0x41d819
41d83d:	8b ff                	mov    %edi,%edi
41d83f:	56                   	push   %esi
41d840:	8b f1                	mov    %ecx,%esi
41d842:	33 c0                	xor    %eax,%eax
41d844:	50                   	push   %eax
41d845:	56                   	push   %esi
41d846:	66 89 46 18          	mov    %ax,0x18(%esi)
41d84a:	ff 15 50 11 45 00    	call   *0x451150
41d850:	85 c0                	test   %eax,%eax
41d852:	0f 95 c0             	setne  %al
41d855:	88 46 18             	mov    %al,0x18(%esi)
41d858:	3c 01                	cmp    $0x1,%al
41d85a:	0f 85 57 ff 00 00    	jne    0x42d7b7
41d860:	8b c6                	mov    %esi,%eax
41d862:	5e                   	pop    %esi
41d863:	c2 08 00             	ret    $0x8
41d866:	8b ff                	mov    %edi,%edi