4456fd:	c2 0c 00             	ret    $0xc
445700:	8b ff                	mov    %edi,%edi
445702:	55                   	push   %ebp
445703:	8b ec                	mov    %esp,%ebp
445705:	51                   	push   %ecx
445706:	51                   	push   %ecx
445707:	53                   	push   %ebx
445708:	56                   	push   %esi
445709:	57                   	push   %edi
44570a:	8b f9                	mov    %ecx,%edi
44570c:	8b 5f 20             	mov    0x20(%edi),%ebx
44570f:	85 db                	test   %ebx,%ebx
445711:	74 11                	je     0x445724
445713:	8b 03                	mov    (%ebx),%eax
445715:	8b 70 18             	mov    0x18(%eax),%esi
445718:	8b ce                	mov    %esi,%ecx
44571a:	ff 15 c4 12 45 00    	call   *0x4512c4
445720:	8b cb                	mov    %ebx,%ecx
445722:	ff d6                	call   *%esi
445724:	83 cb ff             	or     $0xffffffff,%ebx
445727:	f0 0f c1 5f 08       	lock xadd %ebx,0x8(%edi)
44572c:	4b                   	dec    %ebx
44572d:	89 5d f8             	mov    %ebx,-0x8(%ebp)
445730:	8b 5f 20             	mov    0x20(%edi),%ebx
445733:	75 66                	jne    0x44579b
445735:	8b 47 1c             	mov    0x1c(%edi),%eax
445738:	89 45 fc             	mov    %eax,-0x4(%ebp)
44573b:	c7 47 1c ac b1 ba ba 	movl   $0xbabab1ac,0x1c(%edi)
445742:	85 db                	test   %ebx,%ebx
445744:	74 36                	je     0x44577c
445746:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
44574a:	74 1c                	je     0x445768
44574c:	8b 0b                	mov    (%ebx),%ecx
44574e:	8d 47 24             	lea    0x24(%edi),%eax
445751:	50                   	push   %eax
445752:	8b 71 38             	mov    0x38(%ecx),%esi
445755:	8b ce                	mov    %esi,%ecx
445757:	ff 15 c4 12 45 00    	call   *0x4512c4
44575d:	8b cb                	mov    %ebx,%ecx
44575f:	ff d6                	call   *%esi
445761:	83 67 14 00          	andl   $0x0,0x14(%edi)
445765:	8b 5f 20             	mov    0x20(%edi),%ebx
445768:	8b 03                	mov    (%ebx),%eax
44576a:	8b 70 1c             	mov    0x1c(%eax),%esi
44576d:	8b ce                	mov    %esi,%ecx
44576f:	ff 15 c4 12 45 00    	call   *0x4512c4
445775:	8b cb                	mov    %ebx,%ecx
445777:	ff d6                	call   *%esi
445779:	8b 45 fc             	mov    -0x4(%ebp),%eax
44577c:	83 f8 01             	cmp    $0x1,%eax
44577f:	75 11                	jne    0x445792
445781:	8b 07                	mov    (%edi),%eax
445783:	8b 70 14             	mov    0x14(%eax),%esi
445786:	8b ce                	mov    %esi,%ecx
445788:	ff 15 c4 12 45 00    	call   *0x4512c4
44578e:	8b cf                	mov    %edi,%ecx
445790:	ff d6                	call   *%esi
445792:	8b cf                	mov    %edi,%ecx
445794:	e8 bd d5 fe ff       	call   0x432d56
445799:	eb 15                	jmp    0x4457b0
44579b:	85 db                	test   %ebx,%ebx
44579d:	74 11                	je     0x4457b0
44579f:	8b 0b                	mov    (%ebx),%ecx
4457a1:	8b 71 1c             	mov    0x1c(%ecx),%esi
4457a4:	8b ce                	mov    %esi,%ecx
4457a6:	ff 15 c4 12 45 00    	call   *0x4512c4
4457ac:	8b cb                	mov    %ebx,%ecx
4457ae:	ff d6                	call   *%esi
4457b0:	8b 45 f8             	mov    -0x8(%ebp),%eax
4457b3:	5f                   	pop    %edi
4457b4:	5e                   	pop    %esi
4457b5:	5b                   	pop    %ebx
4457b6:	c9                   	leave
4457b7:	c3                   	ret
4457b8:	6a 00                	push   $0x0
4457ba:	b8 18 2d 42 00       	mov    $0x422d18,%eax
4457bf:	e8 a9 9e fd ff       	call   0x41f66d
4457c4:	8b d9                	mov    %ecx,%ebx
4457c6:	8b 45 08             	mov    0x8(%ebp),%eax
4457c9:	33 ff                	xor    %edi,%edi
4457cb:	8b 70 14             	mov    0x14(%eax),%esi
4457ce:	85 f6                	test   %esi,%esi
4457d0:	74 1b                	je     0x4457ed
4457d2:	56                   	push   %esi
4457d3:	e8 e0 ff ff ff       	call   0x4457b8
4457d8:	8b ce                	mov    %esi,%ecx
4457da:	8b f8                	mov    %eax,%edi
4457dc:	e8 de d2 fe ff       	call   0x432abf
4457e1:	8b 4b 08             	mov    0x8(%ebx),%ecx
4457e4:	56                   	push   %esi
4457e5:	e8 40 40 fd ff       	call   0x41982a
4457ea:	8b 45 08             	mov    0x8(%ebp),%eax
4457ed:	8b 70 18             	mov    0x18(%eax),%esi
4457f0:	85 f6                	test   %esi,%esi
4457f2:	74 1a                	je     0x44580e
4457f4:	56                   	push   %esi
4457f5:	8b cb                	mov    %ebx,%ecx
4457f7:	e8 bc ff ff ff       	call   0x4457b8
4457fc:	8b ce                	mov    %esi,%ecx
4457fe:	8b f8                	mov    %eax,%edi
445800:	e8 ba d2 fe ff       	call   0x432abf
445805:	8b 4b 08             	mov    0x8(%ebx),%ecx
445808:	56                   	push   %esi
445809:	e8 1c 40 fd ff       	call   0x41982a
44580e:	8b c7                	mov    %edi,%eax
445810:	e8 26 9e fd ff       	call   0x41f63b
445815:	c2 04 00             	ret    $0x4
445818:	8b ff                	mov    %edi,%edi
44581a:	55                   	push   %ebp
44581b:	8b ec                	mov    %esp,%ebp
44581d:	8b 45 08             	mov    0x8(%ebp),%eax
445820:	53                   	push   %ebx
445821:	56                   	push   %esi
445822:	33 db                	xor    %ebx,%ebx
445824:	8b 70 0c             	mov    0xc(%eax),%esi
445827:	57                   	push   %edi
445828:	8b f9                	mov    %ecx,%edi
44582a:	85 f6                	test   %esi,%esi
44582c:	74 14                	je     0x445842
44582e:	56                   	push   %esi
44582f:	e8 e4 ff ff ff       	call   0x445818
445834:	8b 4f 08             	mov    0x8(%edi),%ecx
445837:	8b d8                	mov    %eax,%ebx
445839:	56                   	push   %esi
44583a:	e8 eb 3f fd ff       	call   0x41982a
44583f:	8b 45 08             	mov    0x8(%ebp),%eax
445842:	8b 70 10             	mov    0x10(%eax),%esi
445845:	85 f6                	test   %esi,%esi
445847:	74 13                	je     0x44585c
445849:	56                   	push   %esi
44584a:	8b cf                	mov    %edi,%ecx
44584c:	e8 c7 ff ff ff       	call   0x445818
445851:	8b 4f 08             	mov    0x8(%edi),%ecx
445854:	8b d8                	mov    %eax,%ebx
445856:	56                   	push   %esi
445857:	e8 ce 3f fd ff       	call   0x41982a
44585c:	5f                   	pop    %edi
44585d:	5e                   	pop    %esi
44585e:	8b c3                	mov    %ebx,%eax
445860:	5b                   	pop    %ebx
445861:	5d                   	pop    %ebp
445862:	c2 04 00             	ret    $0x4
445865:	cc                   	int3
445866:	cc                   	int3
445867:	cc                   	int3
445868:	cc                   	int3
445869:	cc                   	int3
44586a:	cc                   	int3
44586b:	cc                   	int3
44586c:	cc                   	int3
44586d:	cc                   	int3
44586e:	cc                   	int3
44586f:	cc                   	int3
445870:	8b ff                	mov    %edi,%edi
445872:	55                   	push   %ebp
445873:	8b ec                	mov    %esp,%ebp
445875:	51                   	push   %ecx
445876:	51                   	push   %ecx
445877:	53                   	push   %ebx
445878:	56                   	push   %esi
445879:	57                   	push   %edi
44587a:	8b f9                	mov    %ecx,%edi
44587c:	8b 07                	mov    (%edi),%eax
44587e:	8b 70 18             	mov    0x18(%eax),%esi
445881:	8b ce                	mov    %esi,%ecx
445883:	ff 15 c4 12 45 00    	call   *0x4512c4
445889:	8b cf                	mov    %edi,%ecx
44588b:	ff d6                	call   *%esi
44588d:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
445891:	8d 4d f8             	lea    -0x8(%ebp),%ecx
445894:	51                   	push   %ecx
445895:	ff 75 08             	push   0x8(%ebp)
445898:	8d 4f 28             	lea    0x28(%edi),%ecx
44589b:	e8 32 c4 fe ff       	call   0x431cd2
4458a0:	8b c8                	mov    %eax,%ecx
4458a2:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4458a5:	85 c9                	test   %ecx,%ecx
4458a7:	0f 85 9d 00 00 00    	jne    0x44594a
4458ad:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4458b0:	8b 73 14             	mov    0x14(%ebx),%esi
4458b3:	39 46 18             	cmp    %eax,0x18(%esi)
4458b6:	0f 85 83 00 00 00    	jne    0x44593f
4458bc:	8b 47 34             	mov    0x34(%edi),%eax
4458bf:	85 c0                	test   %eax,%eax
4458c1:	74 0b                	je     0x4458ce
4458c3:	eb 02                	jmp    0x4458c7
4458c5:	8b c1                	mov    %ecx,%eax
4458c7:	8b 48 0c             	mov    0xc(%eax),%ecx
4458ca:	85 c9                	test   %ecx,%ecx
4458cc:	75 f7                	jne    0x4458c5
4458ce:	89 45 f8             	mov    %eax,-0x8(%ebp)
4458d1:	85 c0                	test   %eax,%eax
4458d3:	74 24                	je     0x4458f9
4458d5:	39 30                	cmp    %esi,(%eax)
4458d7:	74 0d                	je     0x4458e6
4458d9:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4458dc:	e8 1e f5 ff ff       	call   0x444dff
4458e1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4458e4:	eb eb                	jmp    0x4458d1
4458e6:	83 c0 04             	add    $0x4,%eax
4458e9:	8d 4f 34             	lea    0x34(%edi),%ecx
4458ec:	50                   	push   %eax
4458ed:	e8 84 ed ff ff       	call   0x444676
4458f2:	8b c8                	mov    %eax,%ecx
4458f4:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4458f7:	eb 03                	jmp    0x4458fc
4458f9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4458fc:	8b 5b 14             	mov    0x14(%ebx),%ebx
4458ff:	85 c9                	test   %ecx,%ecx
445901:	75 0a                	jne    0x44590d
445903:	21 4b 10             	and    %ecx,0x10(%ebx)
445906:	c7 43 18 01 00 00 00 	movl   $0x1,0x18(%ebx)
44590d:	ff 75 08             	push   0x8(%ebp)
445910:	8d 4f 28             	lea    0x28(%edi),%ecx
445913:	e8 48 bd fe ff       	call   0x431660
445918:	85 c0                	test   %eax,%eax
44591a:	75 03                	jne    0x44591f
44591c:	21 43 14             	and    %eax,0x14(%ebx)
44591f:	8b 07                	mov    (%edi),%eax
445921:	8b 70 1c             	mov    0x1c(%eax),%esi
445924:	8b ce                	mov    %esi,%ecx
445926:	ff 15 c4 12 45 00    	call   *0x4512c4
44592c:	8b cf                	mov    %edi,%ecx
44592e:	ff d6                	call   *%esi
445930:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
445934:	75 25                	jne    0x44595b
445936:	8b cb                	mov    %ebx,%ecx
445938:	e8 c3 fd ff ff       	call   0x445700
44593d:	eb 1c                	jmp    0x44595b
44593f:	ff 75 08             	push   0x8(%ebp)
445942:	8d 4f 28             	lea    0x28(%edi),%ecx
445945:	e8 16 bd fe ff       	call   0x431660
44594a:	8b 07                	mov    (%edi),%eax
44594c:	8b 70 1c             	mov    0x1c(%eax),%esi
44594f:	8b ce                	mov    %esi,%ecx
445951:	ff 15 c4 12 45 00    	call   *0x4512c4
445957:	8b cf                	mov    %edi,%ecx
445959:	ff d6                	call   *%esi
44595b:	5f                   	pop    %edi
44595c:	5e                   	pop    %esi
44595d:	33 c0                	xor    %eax,%eax
44595f:	5b                   	pop    %ebx
445960:	c9                   	leave
445961:	c2 04 00             	ret    $0x4
445964:	cc                   	int3
445965:	cc                   	int3
445966:	cc                   	int3
445967:	cc                   	int3
445968:	cc                   	int3
445969:	cc                   	int3
44596a:	cc                   	int3
44596b:	cc                   	int3
44596c:	cc                   	int3
44596d:	cc                   	int3
44596e:	cc                   	int3
44596f:	cc                   	int3
445970:	8b ff                	mov    %edi,%edi
445972:	55                   	push   %ebp
445973:	8b ec                	mov    %esp,%ebp
445975:	51                   	push   %ecx
445976:	51                   	push   %ecx
445977:	53                   	push   %ebx
445978:	56                   	push   %esi
445979:	57                   	push   %edi
44597a:	8b f9                	mov    %ecx,%edi
44597c:	8b 07                	mov    (%edi),%eax
44597e:	8b 70 18             	mov    0x18(%eax),%esi
445981:	8b ce                	mov    %esi,%ecx
445983:	ff 15 c4 12 45 00    	call   *0x4512c4
445989:	8b cf                	mov    %edi,%ecx
44598b:	ff d6                	call   *%esi
44598d:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
445991:	8d 4d f8             	lea    -0x8(%ebp),%ecx
445994:	51                   	push   %ecx
445995:	ff 75 08             	push   0x8(%ebp)
445998:	8d 4f 28             	lea    0x28(%edi),%ecx
44599b:	e8 5c f3 ff ff       	call   0x444cfc
4459a0:	8b c8                	mov    %eax,%ecx
4459a2:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4459a5:	85 c9                	test   %ecx,%ecx
4459a7:	0f 85 9d 00 00 00    	jne    0x445a4a
4459ad:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4459b0:	8b 73 24             	mov    0x24(%ebx),%esi
4459b3:	39 46 18             	cmp    %eax,0x18(%esi)
4459b6:	0f 85 83 00 00 00    	jne    0x445a3f
4459bc:	8b 47 34             	mov    0x34(%edi),%eax
4459bf:	85 c0                	test   %eax,%eax
4459c1:	74 0b                	je     0x4459ce
4459c3:	eb 02                	jmp    0x4459c7
4459c5:	8b c1                	mov    %ecx,%eax
4459c7:	8b 48 0c             	mov    0xc(%eax),%ecx
4459ca:	85 c9                	test   %ecx,%ecx
4459cc:	75 f7                	jne    0x4459c5
4459ce:	89 45 f8             	mov    %eax,-0x8(%ebp)
4459d1:	85 c0                	test   %eax,%eax
4459d3:	74 24                	je     0x4459f9
4459d5:	39 30                	cmp    %esi,(%eax)
4459d7:	74 0d                	je     0x4459e6
4459d9:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4459dc:	e8 1e f4 ff ff       	call   0x444dff
4459e1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4459e4:	eb eb                	jmp    0x4459d1
4459e6:	83 c0 04             	add    $0x4,%eax
4459e9:	8d 4f 34             	lea    0x34(%edi),%ecx
4459ec:	50                   	push   %eax
4459ed:	e8 84 ec ff ff       	call   0x444676
4459f2:	8b c8                	mov    %eax,%ecx
4459f4:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4459f7:	eb 03                	jmp    0x4459fc
4459f9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4459fc:	8b 5b 24             	mov    0x24(%ebx),%ebx
4459ff:	85 c9                	test   %ecx,%ecx
445a01:	75 0a                	jne    0x445a0d
445a03:	21 4b 10             	and    %ecx,0x10(%ebx)
445a06:	c7 43 18 01 00 00 00 	movl   $0x1,0x18(%ebx)
445a0d:	ff 75 08             	push   0x8(%ebp)
445a10:	8d 4f 28             	lea    0x28(%edi),%ecx
445a13:	e8 97 eb ff ff       	call   0x4445af
445a18:	85 c0                	test   %eax,%eax
445a1a:	75 03                	jne    0x445a1f
445a1c:	21 43 14             	and    %eax,0x14(%ebx)
445a1f:	8b 07                	mov    (%edi),%eax
445a21:	8b 70 1c             	mov    0x1c(%eax),%esi
445a24:	8b ce                	mov    %esi,%ecx
445a26:	ff 15 c4 12 45 00    	call   *0x4512c4
445a2c:	8b cf                	mov    %edi,%ecx
445a2e:	ff d6                	call   *%esi
445a30:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
445a34:	75 25                	jne    0x445a5b
445a36:	8b cb                	mov    %ebx,%ecx
445a38:	e8 c3 fc ff ff       	call   0x445700
445a3d:	eb 1c                	jmp    0x445a5b
445a3f:	ff 75 08             	push   0x8(%ebp)
445a42:	8d 4f 28             	lea    0x28(%edi),%ecx
445a45:	e8 65 eb ff ff       	call   0x4445af
445a4a:	8b 07                	mov    (%edi),%eax
445a4c:	8b 70 1c             	mov    0x1c(%eax),%esi
445a4f:	8b ce                	mov    %esi,%ecx
445a51:	ff 15 c4 12 45 00    	call   *0x4512c4
445a57:	8b cf                	mov    %edi,%ecx
445a59:	ff d6                	call   *%esi
445a5b:	5f                   	pop    %edi
445a5c:	5e                   	pop    %esi
445a5d:	33 c0                	xor    %eax,%eax
445a5f:	5b                   	pop    %ebx
445a60:	c9                   	leave
445a61:	c2 04 00             	ret    $0x4
445a64:	cc                   	int3
445a65:	cc                   	int3
445a66:	cc                   	int3