4386ef:	5f                   	pop    %edi
4386f0:	5e                   	pop    %esi
4386f1:	59                   	pop    %ecx
4386f2:	c3                   	ret
4386f3:	cc                   	int3
4386f4:	cc                   	int3
4386f5:	cc                   	int3
4386f6:	cc                   	int3
4386f7:	cc                   	int3
4386f8:	cc                   	int3
4386f9:	cc                   	int3
4386fa:	cc                   	int3
4386fb:	cc                   	int3
4386fc:	cc                   	int3
4386fd:	cc                   	int3
4386fe:	cc                   	int3
4386ff:	cc                   	int3
438700:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
438704:	75 05                	jne    0x43870b
438706:	33 c0                	xor    %eax,%eax
438708:	33 d2                	xor    %edx,%edx
43870a:	c3                   	ret
43870b:	8b 11                	mov    (%ecx),%edx
43870d:	8b 42 70             	mov    0x70(%edx),%eax
438710:	8b 52 74             	mov    0x74(%edx),%edx
438713:	c3                   	ret
438714:	cc                   	int3
438715:	cc                   	int3
438716:	cc                   	int3
438717:	cc                   	int3
438718:	cc                   	int3
438719:	cc                   	int3
43871a:	cc                   	int3
43871b:	cc                   	int3
43871c:	cc                   	int3
43871d:	cc                   	int3
43871e:	cc                   	int3
43871f:	cc                   	int3
438720:	8b ff                	mov    %edi,%edi
438722:	55                   	push   %ebp
438723:	8b ec                	mov    %esp,%ebp
438725:	51                   	push   %ecx
438726:	53                   	push   %ebx
438727:	56                   	push   %esi
438728:	57                   	push   %edi
438729:	e8 02 4e ff ff       	call   0x42d530
43872e:	8b 75 08             	mov    0x8(%ebp),%esi
438731:	8b f8                	mov    %eax,%edi
438733:	8b 45 0c             	mov    0xc(%ebp),%eax
438736:	8b da                	mov    %edx,%ebx
438738:	3d 37 89 41 00       	cmp    $0x418937,%eax
43873d:	77 2f                	ja     0x43876e
43873f:	72 08                	jb     0x438749
438741:	81 fe ef a7 c6 4b    	cmp    $0x4bc6a7ef,%esi
438747:	73 25                	jae    0x43876e
438749:	b9 e8 03 00 00       	mov    $0x3e8,%ecx
43874e:	f7 e1                	mul    %ecx
438750:	ba e8 03 00 00       	mov    $0x3e8,%edx
438755:	8b c8                	mov    %eax,%ecx
438757:	8b c6                	mov    %esi,%eax
438759:	f7 e2                	mul    %edx
43875b:	53                   	push   %ebx
43875c:	57                   	push   %edi
43875d:	03 ca                	add    %edx,%ecx
43875f:	51                   	push   %ecx
438760:	50                   	push   %eax
438761:	e8 ba 51 01 00       	call   0x44d920
438766:	5f                   	pop    %edi
438767:	5e                   	pop    %esi
438768:	5b                   	pop    %ebx
438769:	59                   	pop    %ecx
43876a:	5d                   	pop    %ebp
43876b:	c2 08 00             	ret    $0x8
43876e:	53                   	push   %ebx
43876f:	57                   	push   %edi
438770:	50                   	push   %eax
438771:	56                   	push   %esi
438772:	e8 a9 51 01 00       	call   0x44d920
438777:	8b c8                	mov    %eax,%ecx
438779:	bf e8 03 00 00       	mov    $0x3e8,%edi
43877e:	8b c2                	mov    %edx,%eax
438780:	f7 e7                	mul    %edi
438782:	8b f0                	mov    %eax,%esi
438784:	8b c1                	mov    %ecx,%eax
438786:	f7 e7                	mul    %edi
438788:	5f                   	pop    %edi
438789:	03 d6                	add    %esi,%edx
43878b:	5e                   	pop    %esi
43878c:	5b                   	pop    %ebx
43878d:	59                   	pop    %ecx
43878e:	5d                   	pop    %ebp
43878f:	c2 08 00             	ret    $0x8
438792:	cc                   	int3
438793:	cc                   	int3
438794:	cc                   	int3
438795:	cc                   	int3
438796:	cc                   	int3
438797:	cc                   	int3
438798:	cc                   	int3
438799:	cc                   	int3
43879a:	cc                   	int3
43879b:	cc                   	int3
43879c:	cc                   	int3
43879d:	cc                   	int3
43879e:	cc                   	int3
43879f:	cc                   	int3
4387a0:	8b ff                	mov    %edi,%edi
4387a2:	55                   	push   %ebp
4387a3:	8b ec                	mov    %esp,%ebp
4387a5:	83 ec 0c             	sub    $0xc,%esp
4387a8:	ba 01 00 00 00       	mov    $0x1,%edx
4387ad:	56                   	push   %esi
4387ae:	8b 31                	mov    (%ecx),%esi
4387b0:	81 e6 ff ff ff 7f    	and    $0x7fffffff,%esi
4387b6:	8b c6                	mov    %esi,%eax
4387b8:	f0 0f b1 11          	lock cmpxchg %edx,(%ecx)
4387bc:	3b c6                	cmp    %esi,%eax
4387be:	0f 84 cc 00 00 00    	je     0x438890
4387c4:	85 c0                	test   %eax,%eax
4387c6:	78 1e                	js     0x4387e6
4387c8:	f3 90                	pause
4387ca:	8b 31                	mov    (%ecx),%esi
4387cc:	ba 01 00 00 00       	mov    $0x1,%edx
4387d1:	81 e6 ff ff ff 7f    	and    $0x7fffffff,%esi
4387d7:	8b c6                	mov    %esi,%eax
4387d9:	f0 0f b1 11          	lock cmpxchg %edx,(%ecx)
4387dd:	3b c6                	cmp    %esi,%eax
4387df:	75 e3                	jne    0x4387c4
4387e1:	5e                   	pop    %esi
4387e2:	8b e5                	mov    %ebp,%esp
4387e4:	5d                   	pop    %ebp
4387e5:	c3                   	ret
4387e6:	8b 01                	mov    (%ecx),%eax
4387e8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4387eb:	0f b7 01             	movzwl (%ecx),%eax
4387ee:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
4387f2:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
4387f6:	66 89 45 fe          	mov    %ax,-0x2(%ebp)
4387fa:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4387fe:	7c 39                	jl     0x438839
438800:	8b 31                	mov    (%ecx),%esi
438802:	ba 01 00 00 00       	mov    $0x1,%edx
438807:	81 e6 ff ff ff 7f    	and    $0x7fffffff,%esi
43880d:	8b c6                	mov    %esi,%eax
43880f:	f0 0f b1 11          	lock cmpxchg %edx,(%ecx)
438813:	3b c6                	cmp    %esi,%eax
438815:	74 79                	je     0x438890
438817:	85 c0                	test   %eax,%eax
438819:	78 52                	js     0x43886d
43881b:	f3 90                	pause
43881d:	8b 31                	mov    (%ecx),%esi
43881f:	ba 01 00 00 00       	mov    $0x1,%edx
438824:	81 e6 ff ff ff 7f    	and    $0x7fffffff,%esi
43882a:	8b c6                	mov    %esi,%eax
43882c:	f0 0f b1 11          	lock cmpxchg %edx,(%ecx)
438830:	3b c6                	cmp    %esi,%eax
438832:	75 e3                	jne    0x438817
438834:	5e                   	pop    %esi
438835:	8b e5                	mov    %ebp,%esp
438837:	5d                   	pop    %ebp
438838:	c3                   	ret
438839:	66 83 7d fe ff       	cmpw   $0xffff,-0x2(%ebp)
43883e:	75 0c                	jne    0x43884c
438840:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
438847:	8b 55 f4             	mov    -0xc(%ebp),%edx
43884a:	eb 15                	jmp    0x438861
43884c:	0f b7 55 fc          	movzwl -0x4(%ebp),%edx
438850:	0f b7 45 fe          	movzwl -0x2(%ebp),%eax
438854:	66 40                	inc    %ax
438856:	66 89 45 fa          	mov    %ax,-0x6(%ebp)
43885a:	66 89 55 f8          	mov    %dx,-0x8(%ebp)
43885e:	8b 55 f8             	mov    -0x8(%ebp),%edx
438861:	8b 45 fc             	mov    -0x4(%ebp),%eax
438864:	f0 0f b1 11          	lock cmpxchg %edx,(%ecx)
438868:	3b 45 fc             	cmp    -0x4(%ebp),%eax
43886b:	74 07                	je     0x438874
43886d:	f3 90                	pause
43886f:	e9 72 ff ff ff       	jmp    0x4387e6
438874:	66 8b 45 fc          	mov    -0x4(%ebp),%ax
438878:	0f b7 c0             	movzwl %ax,%eax
43887b:	6a 00                	push   $0x0
43887d:	6a 01                	push   $0x1
43887f:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
438882:	a1 e8 12 45 00       	mov    0x4512e8,%eax
438887:	ff 34 88             	push   (%eax,%ecx,4)
43888a:	ff 15 18 22 45 00    	call   *0x452218
438890:	5e                   	pop    %esi
438891:	8b e5                	mov    %ebp,%esp
438893:	5d                   	pop    %ebp
438894:	c3                   	ret
438895:	cc                   	int3
438896:	cc                   	int3
438897:	cc                   	int3
438898:	cc                   	int3
438899:	cc                   	int3
43889a:	cc                   	int3
43889b:	cc                   	int3
43889c:	cc                   	int3
43889d:	cc                   	int3
43889e:	cc                   	int3
43889f:	cc                   	int3
4388a0:	8b ff                	mov    %edi,%edi
4388a2:	55                   	push   %ebp
4388a3:	8b ec                	mov    %esp,%ebp
4388a5:	53                   	push   %ebx
4388a6:	56                   	push   %esi
4388a7:	8b 31                	mov    (%ecx),%esi
4388a9:	8b da                	mov    %edx,%ebx
4388ab:	57                   	push   %edi
4388ac:	8b 7d 08             	mov    0x8(%ebp),%edi
4388af:	3b f7                	cmp    %edi,%esi
4388b1:	73 15                	jae    0x4388c8
4388b3:	8d 56 01             	lea    0x1(%esi),%edx
4388b6:	8b c6                	mov    %esi,%eax
4388b8:	f0 0f b1 11          	lock cmpxchg %edx,(%ecx)
4388bc:	3b f0                	cmp    %eax,%esi
4388be:	74 11                	je     0x4388d1
4388c0:	f3 90                	pause
4388c2:	8b 31                	mov    (%ecx),%esi
4388c4:	3b f7                	cmp    %edi,%esi
4388c6:	72 eb                	jb     0x4388b3
4388c8:	5f                   	pop    %edi
4388c9:	5e                   	pop    %esi
4388ca:	33 c0                	xor    %eax,%eax
4388cc:	5b                   	pop    %ebx
4388cd:	5d                   	pop    %ebp
4388ce:	c2 04 00             	ret    $0x4
4388d1:	5f                   	pop    %edi
4388d2:	89 33                	mov    %esi,(%ebx)
4388d4:	b8 01 00 00 00       	mov    $0x1,%eax
4388d9:	5e                   	pop    %esi
4388da:	5b                   	pop    %ebx
4388db:	5d                   	pop    %ebp
4388dc:	c2 04 00             	ret    $0x4
4388df:	cc                   	int3
4388e0:	8b ff                	mov    %edi,%edi
4388e2:	55                   	push   %ebp
4388e3:	8b ec                	mov    %esp,%ebp
4388e5:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
4388e9:	56                   	push   %esi
4388ea:	8b f1                	mov    %ecx,%esi
4388ec:	c7 06 34 11 40 00    	movl   $0x401134,(%esi)
4388f2:	74 19                	je     0x43890d
4388f4:	56                   	push   %esi
4388f5:	6a 00                	push   $0x0
4388f7:	ff 35 00 12 45 00    	push   0x451200
4388fd:	ff 15 18 21 45 00    	call   *0x452118
438903:	85 c0                	test   %eax,%eax
438905:	75 06                	jne    0x43890d
438907:	ff 15 6c 20 45 00    	call   *0x45206c
43890d:	8b c6                	mov    %esi,%eax
43890f:	5e                   	pop    %esi
438910:	5d                   	pop    %ebp
438911:	c2 04 00             	ret    $0x4
438914:	cc                   	int3
438915:	cc                   	int3
438916:	cc                   	int3
438917:	cc                   	int3
438918:	cc                   	int3
438919:	cc                   	int3
43891a:	cc                   	int3
43891b:	cc                   	int3
43891c:	cc                   	int3
43891d:	cc                   	int3
43891e:	cc                   	int3
43891f:	cc                   	int3
438920:	33 c0                	xor    %eax,%eax
438922:	c2 08 00             	ret    $0x8
438925:	cc                   	int3
438926:	cc                   	int3
438927:	cc                   	int3
438928:	cc                   	int3
438929:	cc                   	int3
43892a:	cc                   	int3
43892b:	cc                   	int3
43892c:	cc                   	int3
43892d:	cc                   	int3
43892e:	cc                   	int3
43892f:	cc                   	int3
438930:	c2 20 00             	ret    $0x20
438933:	cc                   	int3
438934:	cc                   	int3
438935:	cc                   	int3
438936:	cc                   	int3
438937:	cc                   	int3
438938:	cc                   	int3
438939:	cc                   	int3
43893a:	cc                   	int3
43893b:	cc                   	int3
43893c:	cc                   	int3
43893d:	cc                   	int3
43893e:	cc                   	int3
43893f:	cc                   	int3
438940:	c2 04 00             	ret    $0x4
438943:	cc                   	int3
438944:	cc                   	int3
438945:	cc                   	int3
438946:	cc                   	int3
438947:	cc                   	int3
438948:	cc                   	int3
438949:	cc                   	int3
43894a:	cc                   	int3
43894b:	cc                   	int3
43894c:	cc                   	int3
43894d:	cc                   	int3
43894e:	cc                   	int3
43894f:	cc                   	int3
438950:	c2 08 00             	ret    $0x8
438953:	cc                   	int3
438954:	cc                   	int3
438955:	cc                   	int3
438956:	cc                   	int3
438957:	cc                   	int3
438958:	cc                   	int3
438959:	cc                   	int3
43895a:	cc                   	int3
43895b:	cc                   	int3
43895c:	cc                   	int3
43895d:	cc                   	int3
43895e:	cc                   	int3
43895f:	cc                   	int3
438960:	c2 0c 00             	ret    $0xc
438963:	cc                   	int3
438964:	cc                   	int3
438965:	cc                   	int3
438966:	cc                   	int3
438967:	cc                   	int3
438968:	cc                   	int3
438969:	cc                   	int3
43896a:	cc                   	int3
43896b:	cc                   	int3
43896c:	cc                   	int3
43896d:	cc                   	int3
43896e:	cc                   	int3
43896f:	cc                   	int3
438970:	8b ff                	mov    %edi,%edi
438972:	55                   	push   %ebp
438973:	8b ec                	mov    %esp,%ebp
438975:	83 e4 f8             	and    $0xfffffff8,%esp
438978:	81 7d 08 f8 fb ff ff 	cmpl   $0xfffffbf8,0x8(%ebp)
43897f:	56                   	push   %esi
438980:	57                   	push   %edi
438981:	8b f9                	mov    %ecx,%edi
438983:	75 67                	jne    0x4389ec
438985:	83 3d 7c 12 45 00 00 	cmpl   $0x0,0x45127c
43898c:	74 5e                	je     0x4389ec
43898e:	83 3f 00             	cmpl   $0x0,(%edi)
438991:	75 14                	jne    0x4389a7
438993:	c7 07 01 00 00 00    	movl   $0x1,(%edi)
438999:	e8 62 4a ff ff       	call   0x42d400