4384f2:	68 44 18 41 00       	push   $0x411844
4384f7:	68 18 18 41 00       	push   $0x411818
4384fc:	e8 8f fd fe ff       	call   0x428290
438501:	83 c4 0c             	add    $0xc,%esp
438504:	8b 06                	mov    (%esi),%eax
438506:	25 00 00 ff ff       	and    $0xffff0000,%eax
43850b:	3d 00 00 ff ff       	cmp    $0xffff0000,%eax
438510:	75 17                	jne    0x438529
438512:	68 50 1d 00 00       	push   $0x1d50
438517:	68 44 18 41 00       	push   $0x411844
43851c:	68 6c 18 41 00       	push   $0x41186c
438521:	e8 6a fd fe ff       	call   0x428290
438526:	83 c4 0c             	add    $0xc,%esp
438529:	6a 01                	push   $0x1
43852b:	8d 4e 0c             	lea    0xc(%esi),%ecx
43852e:	e8 0d c9 fd ff       	call   0x414e40
438533:	5e                   	pop    %esi
438534:	c3                   	ret
438535:	cc                   	int3
438536:	cc                   	int3
438537:	cc                   	int3
438538:	cc                   	int3
438539:	cc                   	int3
43853a:	cc                   	int3
43853b:	cc                   	int3
43853c:	cc                   	int3
43853d:	cc                   	int3
43853e:	cc                   	int3
43853f:	cc                   	int3
438540:	8b ff                	mov    %edi,%edi
438542:	55                   	push   %ebp
438543:	8b ec                	mov    %esp,%ebp
438545:	8b 45 0c             	mov    0xc(%ebp),%eax
438548:	56                   	push   %esi
438549:	8b 75 08             	mov    0x8(%ebp),%esi
43854c:	57                   	push   %edi
43854d:	3d c6 10 00 00       	cmp    $0x10c6,%eax
438552:	77 2c                	ja     0x438580
438554:	72 08                	jb     0x43855e
438556:	81 fe ed b5 a0 f7    	cmp    $0xf7a0b5ed,%esi
43855c:	73 22                	jae    0x438580
43855e:	ff 75 14             	push   0x14(%ebp)
438561:	bf 40 42 0f 00       	mov    $0xf4240,%edi
438566:	ff 75 10             	push   0x10(%ebp)
438569:	f7 e7                	mul    %edi
43856b:	8b c8                	mov    %eax,%ecx
43856d:	8b c6                	mov    %esi,%eax
43856f:	f7 e7                	mul    %edi
438571:	03 ca                	add    %edx,%ecx
438573:	51                   	push   %ecx
438574:	50                   	push   %eax
438575:	e8 a6 53 01 00       	call   0x44d920
43857a:	5f                   	pop    %edi
43857b:	5e                   	pop    %esi
43857c:	5d                   	pop    %ebp
43857d:	c2 10 00             	ret    $0x10
438580:	3d 37 89 41 00       	cmp    $0x418937,%eax
438585:	77 3a                	ja     0x4385c1
438587:	72 08                	jb     0x438591
438589:	81 fe ef a7 c6 4b    	cmp    $0x4bc6a7ef,%esi
43858f:	73 30                	jae    0x4385c1
438591:	ff 75 14             	push   0x14(%ebp)
438594:	bf e8 03 00 00       	mov    $0x3e8,%edi
438599:	ff 75 10             	push   0x10(%ebp)
43859c:	f7 e7                	mul    %edi
43859e:	8b c8                	mov    %eax,%ecx
4385a0:	8b c6                	mov    %esi,%eax
4385a2:	f7 e7                	mul    %edi
4385a4:	03 ca                	add    %edx,%ecx
4385a6:	51                   	push   %ecx
4385a7:	50                   	push   %eax
4385a8:	e8 73 53 01 00       	call   0x44d920
4385ad:	8b c8                	mov    %eax,%ecx
4385af:	8b c2                	mov    %edx,%eax
4385b1:	f7 e7                	mul    %edi
4385b3:	8b f0                	mov    %eax,%esi
4385b5:	8b c1                	mov    %ecx,%eax
4385b7:	f7 e7                	mul    %edi
4385b9:	5f                   	pop    %edi
4385ba:	03 d6                	add    %esi,%edx
4385bc:	5e                   	pop    %esi
4385bd:	5d                   	pop    %ebp
4385be:	c2 10 00             	ret    $0x10
4385c1:	ff 75 14             	push   0x14(%ebp)
4385c4:	ff 75 10             	push   0x10(%ebp)
4385c7:	50                   	push   %eax
4385c8:	56                   	push   %esi
4385c9:	e8 52 53 01 00       	call   0x44d920
4385ce:	8b c8                	mov    %eax,%ecx
4385d0:	bf 40 42 0f 00       	mov    $0xf4240,%edi
4385d5:	8b c2                	mov    %edx,%eax
4385d7:	f7 e7                	mul    %edi
4385d9:	8b f0                	mov    %eax,%esi
4385db:	8b c1                	mov    %ecx,%eax
4385dd:	f7 e7                	mul    %edi
4385df:	5f                   	pop    %edi
4385e0:	03 d6                	add    %esi,%edx
4385e2:	5e                   	pop    %esi
4385e3:	5d                   	pop    %ebp
4385e4:	c2 10 00             	ret    $0x10
4385e7:	cc                   	int3
4385e8:	cc                   	int3
4385e9:	cc                   	int3
4385ea:	cc                   	int3
4385eb:	cc                   	int3
4385ec:	cc                   	int3
4385ed:	cc                   	int3
4385ee:	cc                   	int3
4385ef:	cc                   	int3
4385f0:	8b ff                	mov    %edi,%edi
4385f2:	51                   	push   %ecx
4385f3:	56                   	push   %esi
4385f4:	8b f1                	mov    %ecx,%esi
4385f6:	57                   	push   %edi
4385f7:	8b 06                	mov    (%esi),%eax
4385f9:	25 ff 7f 00 00       	and    $0x7fff,%eax
4385fe:	3d ff 7f 00 00       	cmp    $0x7fff,%eax
438603:	75 17                	jne    0x43861c
438605:	68 4f 1d 00 00       	push   $0x1d4f
43860a:	68 44 18 41 00       	push   $0x411844
43860f:	68 18 18 41 00       	push   $0x411818
438614:	e8 77 fc fe ff       	call   0x428290
438619:	83 c4 0c             	add    $0xc,%esp
43861c:	8b 06                	mov    (%esi),%eax
43861e:	25 00 00 ff ff       	and    $0xffff0000,%eax
438623:	3d 00 00 ff ff       	cmp    $0xffff0000,%eax
438628:	75 17                	jne    0x438641
43862a:	68 50 1d 00 00       	push   $0x1d50
43862f:	68 44 18 41 00       	push   $0x411844
438634:	68 6c 18 41 00       	push   $0x41186c
438639:	e8 52 fc fe ff       	call   0x428290
43863e:	83 c4 0c             	add    $0xc,%esp
438641:	bf 00 80 ff ff       	mov    $0xffff8000,%edi
438646:	f0 0f c1 3e          	lock xadd %edi,(%esi)
43864a:	81 e7 ff 7f 00 00    	and    $0x7fff,%edi
438650:	74 53                	je     0x4386a5
438652:	8b 06                	mov    (%esi),%eax
438654:	25 ff 7f 00 00       	and    $0x7fff,%eax
438659:	3d ff 7f 00 00       	cmp    $0x7fff,%eax
43865e:	75 17                	jne    0x438677
438660:	68 4f 1d 00 00       	push   $0x1d4f
438665:	68 44 18 41 00       	push   $0x411844
43866a:	68 18 18 41 00       	push   $0x411818
43866f:	e8 1c fc fe ff       	call   0x428290
438674:	83 c4 0c             	add    $0xc,%esp
438677:	8b 06                	mov    (%esi),%eax
438679:	25 00 00 ff ff       	and    $0xffff0000,%eax
43867e:	3d 00 00 ff ff       	cmp    $0xffff0000,%eax
438683:	75 17                	jne    0x43869c
438685:	68 50 1d 00 00       	push   $0x1d50
43868a:	68 44 18 41 00       	push   $0x411844
43868f:	68 6c 18 41 00       	push   $0x41186c
438694:	e8 f7 fb fe ff       	call   0x428290
438699:	83 c4 0c             	add    $0xc,%esp
43869c:	57                   	push   %edi
43869d:	8d 4e 08             	lea    0x8(%esi),%ecx
4386a0:	e8 9b c7 fd ff       	call   0x414e40
4386a5:	8b 06                	mov    (%esi),%eax
4386a7:	25 ff 7f 00 00       	and    $0x7fff,%eax
4386ac:	3d ff 7f 00 00       	cmp    $0x7fff,%eax
4386b1:	75 17                	jne    0x4386ca
4386b3:	68 4f 1d 00 00       	push   $0x1d4f
4386b8:	68 44 18 41 00       	push   $0x411844
4386bd:	68 18 18 41 00       	push   $0x411818
4386c2:	e8 c9 fb fe ff       	call   0x428290
4386c7:	83 c4 0c             	add    $0xc,%esp
4386ca:	8b 06                	mov    (%esi),%eax
4386cc:	25 00 00 ff ff       	and    $0xffff0000,%eax
4386d1:	3d 00 00 ff ff       	cmp    $0xffff0000,%eax
4386d6:	75 17                	jne    0x4386ef
4386d8:	68 50 1d 00 00       	push   $0x1d50
4386dd:	68 44 18 41 00       	push   $0x411844
4386e2:	68 6c 18 41 00       	push   $0x41186c
4386e7:	e8 a4 fb fe ff       	call   0x428290
4386ec:	83 c4 0c             	add    $0xc,%esp
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