4164ff:	8b 09                	mov    (%ecx),%ecx
416501:	89 41 08             	mov    %eax,0x8(%ecx)
416504:	33 c0                	xor    %eax,%eax
416506:	5f                   	pop    %edi
416507:	5b                   	pop    %ebx
416508:	5e                   	pop    %esi
416509:	8b e5                	mov    %ebp,%esp
41650b:	5d                   	pop    %ebp
41650c:	c3                   	ret
41650d:	8b ff                	mov    %edi,%edi
41650f:	55                   	push   %ebp
416510:	8b ec                	mov    %esp,%ebp
416512:	ff 75 08             	push   0x8(%ebp)
416515:	68 b8 9c 83 02       	push   $0x2839cb8
41651a:	e8 5e 00 00 00       	call   0x41657d
41651f:	59                   	pop    %ecx
416520:	59                   	pop    %ecx
416521:	5d                   	pop    %ebp
416522:	c3                   	ret
416523:	8b ff                	mov    %edi,%edi
416525:	55                   	push   %ebp
416526:	8b ec                	mov    %esp,%ebp
416528:	51                   	push   %ecx
416529:	8d 45 08             	lea    0x8(%ebp),%eax
41652c:	89 45 fc             	mov    %eax,-0x4(%ebp)
41652f:	8d 45 fc             	lea    -0x4(%ebp),%eax
416532:	50                   	push   %eax
416533:	6a 02                	push   $0x2
416535:	e8 03 fd ff ff       	call   0x41623d
41653a:	59                   	pop    %ecx
41653b:	59                   	pop    %ecx
41653c:	8b e5                	mov    %ebp,%esp
41653e:	5d                   	pop    %ebp
41653f:	c3                   	ret
416540:	8b ff                	mov    %edi,%edi
416542:	55                   	push   %ebp
416543:	8b ec                	mov    %esp,%ebp
416545:	56                   	push   %esi
416546:	8b 75 08             	mov    0x8(%ebp),%esi
416549:	85 f6                	test   %esi,%esi
41654b:	75 05                	jne    0x416552
41654d:	83 c8 ff             	or     $0xffffffff,%eax
416550:	eb 28                	jmp    0x41657a
416552:	8b 06                	mov    (%esi),%eax
416554:	3b 46 08             	cmp    0x8(%esi),%eax
416557:	75 1f                	jne    0x416578
416559:	a1 28 ba 43 00       	mov    0x43ba28,%eax
41655e:	83 e0 1f             	and    $0x1f,%eax
416561:	6a 20                	push   $0x20
416563:	59                   	pop    %ecx
416564:	2b c8                	sub    %eax,%ecx
416566:	33 c0                	xor    %eax,%eax
416568:	d3 c8                	ror    %cl,%eax
41656a:	33 05 28 ba 43 00    	xor    0x43ba28,%eax
416570:	89 06                	mov    %eax,(%esi)
416572:	89 46 04             	mov    %eax,0x4(%esi)
416575:	89 46 08             	mov    %eax,0x8(%esi)
416578:	33 c0                	xor    %eax,%eax
41657a:	5e                   	pop    %esi
41657b:	5d                   	pop    %ebp
41657c:	c3                   	ret
41657d:	8b ff                	mov    %edi,%edi
41657f:	55                   	push   %ebp
416580:	8b ec                	mov    %esp,%ebp
416582:	51                   	push   %ecx
416583:	51                   	push   %ecx
416584:	8d 45 08             	lea    0x8(%ebp),%eax
416587:	89 45 f8             	mov    %eax,-0x8(%ebp)
41658a:	8d 45 0c             	lea    0xc(%ebp),%eax
41658d:	89 45 fc             	mov    %eax,-0x4(%ebp)
416590:	8d 45 f8             	lea    -0x8(%ebp),%eax
416593:	50                   	push   %eax
416594:	6a 02                	push   $0x2
416596:	e8 ca fc ff ff       	call   0x416265
41659b:	59                   	pop    %ecx
41659c:	59                   	pop    %ecx
41659d:	8b e5                	mov    %ebp,%esp
41659f:	5d                   	pop    %ebp
4165a0:	c3                   	ret
4165a1:	68 e0 bb 43 00       	push   $0x43bbe0
4165a6:	b9 d0 9f 83 02       	mov    $0x2839fd0,%ecx
4165ab:	e8 f1 00 00 00       	call   0x4166a1
4165b0:	b0 01                	mov    $0x1,%al
4165b2:	c3                   	ret
4165b3:	68 b8 9c 83 02       	push   $0x2839cb8
4165b8:	e8 83 ff ff ff       	call   0x416540
4165bd:	c7 04 24 c4 9c 83 02 	movl   $0x2839cc4,(%esp)
4165c4:	e8 77 ff ff ff       	call   0x416540
4165c9:	59                   	pop    %ecx
4165ca:	b0 01                	mov    $0x1,%al
4165cc:	c3                   	ret
4165cd:	b0 01                	mov    $0x1,%al
4165cf:	c3                   	ret
4165d0:	b0 01                	mov    $0x1,%al
4165d2:	c3                   	ret
4165d3:	e8 87 fb ff ff       	call   0x41615f
4165d8:	b0 01                	mov    $0x1,%al
4165da:	c3                   	ret
4165db:	b0 01                	mov    $0x1,%al
4165dd:	c3                   	ret
4165de:	b0 01                	mov    $0x1,%al
4165e0:	c3                   	ret
4165e1:	a1 28 ba 43 00       	mov    0x43ba28,%eax
4165e6:	56                   	push   %esi
4165e7:	6a 20                	push   $0x20
4165e9:	83 e0 1f             	and    $0x1f,%eax
4165ec:	33 f6                	xor    %esi,%esi
4165ee:	59                   	pop    %ecx
4165ef:	2b c8                	sub    %eax,%ecx
4165f1:	d3 ce                	ror    %cl,%esi
4165f3:	33 35 28 ba 43 00    	xor    0x43ba28,%esi
4165f9:	56                   	push   %esi
4165fa:	e8 54 56 ff ff       	call   0x40bc53
4165ff:	56                   	push   %esi
416600:	e8 0a f1 ff ff       	call   0x41570f
416605:	56                   	push   %esi
416606:	e8 c9 65 00 00       	call   0x41cbd4
41660b:	56                   	push   %esi
41660c:	e8 63 01 00 00       	call   0x416774
416611:	56                   	push   %esi
416612:	e8 4f f5 ff ff       	call   0x415b66
416617:	83 c4 14             	add    $0x14,%esp
41661a:	b0 01                	mov    $0x1,%al
41661c:	5e                   	pop    %esi
41661d:	c3                   	ret
41661e:	6a 00                	push   $0x0
416620:	e8 31 4b ff ff       	call   0x40b156
416625:	59                   	pop    %ecx
416626:	c3                   	ret
416627:	a1 68 c2 43 00       	mov    0x43c268,%eax
41662c:	83 c9 ff             	or     $0xffffffff,%ecx
41662f:	56                   	push   %esi
416630:	f0 0f c1 08          	lock xadd %ecx,(%eax)
416634:	75 1b                	jne    0x416651
416636:	a1 68 c2 43 00       	mov    0x43c268,%eax
41663b:	be 48 c0 43 00       	mov    $0x43c048,%esi
416640:	3b c6                	cmp    %esi,%eax
416642:	74 0d                	je     0x416651
416644:	50                   	push   %eax
416645:	e8 c6 e6 ff ff       	call   0x414d10
41664a:	59                   	pop    %ecx
41664b:	89 35 68 c2 43 00    	mov    %esi,0x43c268
416651:	ff 35 c8 9f 83 02    	push   0x2839fc8
416657:	e8 b4 e6 ff ff       	call   0x414d10
41665c:	ff 35 cc 9f 83 02    	push   0x2839fcc
416662:	33 f6                	xor    %esi,%esi
416664:	89 35 c8 9f 83 02    	mov    %esi,0x2839fc8
41666a:	e8 a1 e6 ff ff       	call   0x414d10
41666f:	ff 35 d8 a0 83 02    	push   0x283a0d8
416675:	89 35 cc 9f 83 02    	mov    %esi,0x2839fcc
41667b:	e8 90 e6 ff ff       	call   0x414d10
416680:	ff 35 dc a0 83 02    	push   0x283a0dc
416686:	89 35 d8 a0 83 02    	mov    %esi,0x283a0d8
41668c:	e8 7f e6 ff ff       	call   0x414d10
416691:	83 c4 10             	add    $0x10,%esp
416694:	89 35 dc a0 83 02    	mov    %esi,0x283a0dc
41669a:	b0 01                	mov    $0x1,%al
41669c:	5e                   	pop    %esi
41669d:	c3                   	ret
41669e:	b0 01                	mov    $0x1,%al
4166a0:	c3                   	ret
4166a1:	8b ff                	mov    %edi,%edi
4166a3:	55                   	push   %ebp
4166a4:	8b ec                	mov    %esp,%ebp
4166a6:	8d 41 04             	lea    0x4(%ecx),%eax
4166a9:	8b d0                	mov    %eax,%edx
4166ab:	2b d1                	sub    %ecx,%edx
4166ad:	83 c2 03             	add    $0x3,%edx
4166b0:	56                   	push   %esi
4166b1:	33 f6                	xor    %esi,%esi
4166b3:	c1 ea 02             	shr    $0x2,%edx
4166b6:	3b c1                	cmp    %ecx,%eax
4166b8:	1b c0                	sbb    %eax,%eax
4166ba:	f7 d0                	not    %eax
4166bc:	23 c2                	and    %edx,%eax
4166be:	74 0d                	je     0x4166cd
4166c0:	8b 55 08             	mov    0x8(%ebp),%edx
4166c3:	46                   	inc    %esi
4166c4:	89 11                	mov    %edx,(%ecx)
4166c6:	8d 49 04             	lea    0x4(%ecx),%ecx
4166c9:	3b f0                	cmp    %eax,%esi
4166cb:	75 f6                	jne    0x4166c3
4166cd:	5e                   	pop    %esi
4166ce:	5d                   	pop    %ebp
4166cf:	c2 04 00             	ret    $0x4
4166d2:	68 40 c6 42 00       	push   $0x42c640
4166d7:	68 c8 c5 42 00       	push   $0x42c5c8
4166dc:	e8 2a 90 00 00       	call   0x41f70b
4166e1:	59                   	pop    %ecx
4166e2:	59                   	pop    %ecx
4166e3:	c3                   	ret
4166e4:	68 40 c6 42 00       	push   $0x42c640
4166e9:	68 c8 c5 42 00       	push   $0x42c5c8
4166ee:	e8 9b 90 00 00       	call   0x41f78e
4166f3:	59                   	pop    %ecx
4166f4:	59                   	pop    %ecx
4166f5:	c3                   	ret
4166f6:	a1 d0 9c 83 02       	mov    0x2839cd0,%eax
4166fb:	c3                   	ret
4166fc:	8b ff                	mov    %edi,%edi
4166fe:	55                   	push   %ebp
4166ff:	8b ec                	mov    %esp,%ebp
416701:	8b 45 08             	mov    0x8(%ebp),%eax
416704:	a3 d0 9c 83 02       	mov    %eax,0x2839cd0
416709:	5d                   	pop    %ebp
41670a:	c3                   	ret
41670b:	8b ff                	mov    %edi,%edi
41670d:	55                   	push   %ebp
41670e:	8b ec                	mov    %esp,%ebp
416710:	a1 28 ba 43 00       	mov    0x43ba28,%eax
416715:	83 e0 1f             	and    $0x1f,%eax
416718:	6a 20                	push   $0x20
41671a:	59                   	pop    %ecx
41671b:	2b c8                	sub    %eax,%ecx
41671d:	8b 45 08             	mov    0x8(%ebp),%eax
416720:	d3 c8                	ror    %cl,%eax
416722:	33 05 28 ba 43 00    	xor    0x43ba28,%eax
416728:	5d                   	pop    %ebp
416729:	c3                   	ret
41672a:	8b ff                	mov    %edi,%edi
41672c:	55                   	push   %ebp
41672d:	8b ec                	mov    %esp,%ebp
41672f:	8d 41 04             	lea    0x4(%ecx),%eax
416732:	8b d0                	mov    %eax,%edx
416734:	2b d1                	sub    %ecx,%edx
416736:	83 c2 03             	add    $0x3,%edx
416739:	56                   	push   %esi
41673a:	33 f6                	xor    %esi,%esi
41673c:	c1 ea 02             	shr    $0x2,%edx
41673f:	3b c1                	cmp    %ecx,%eax
416741:	1b c0                	sbb    %eax,%eax
416743:	f7 d0                	not    %eax
416745:	23 c2                	and    %edx,%eax
416747:	74 0d                	je     0x416756
416749:	8b 55 08             	mov    0x8(%ebp),%edx
41674c:	46                   	inc    %esi
41674d:	89 11                	mov    %edx,(%ecx)
41674f:	8d 49 04             	lea    0x4(%ecx),%ecx
416752:	3b f0                	cmp    %eax,%esi
416754:	75 f6                	jne    0x41674c
416756:	5e                   	pop    %esi
416757:	5d                   	pop    %ebp
416758:	c2 04 00             	ret    $0x4
41675b:	a1 28 ba 43 00       	mov    0x43ba28,%eax
416760:	8b c8                	mov    %eax,%ecx
416762:	33 05 d4 9c 83 02    	xor    0x2839cd4,%eax
416768:	83 e1 1f             	and    $0x1f,%ecx
41676b:	d3 c8                	ror    %cl,%eax
41676d:	f7 d8                	neg    %eax
41676f:	1b c0                	sbb    %eax,%eax
416771:	f7 d8                	neg    %eax
416773:	c3                   	ret
416774:	8b ff                	mov    %edi,%edi
416776:	55                   	push   %ebp
416777:	8b ec                	mov    %esp,%ebp
416779:	ff 75 08             	push   0x8(%ebp)
41677c:	b9 d4 9c 83 02       	mov    $0x2839cd4,%ecx
416781:	e8 a4 ff ff ff       	call   0x41672a
416786:	5d                   	pop    %ebp
416787:	c3                   	ret
416788:	8b ff                	mov    %edi,%edi
41678a:	55                   	push   %ebp
41678b:	8b ec                	mov    %esp,%ebp
41678d:	51                   	push   %ecx
41678e:	a1 28 ba 43 00       	mov    0x43ba28,%eax
416793:	33 c5                	xor    %ebp,%eax
416795:	89 45 fc             	mov    %eax,-0x4(%ebp)
416798:	56                   	push   %esi
416799:	8b 35 28 ba 43 00    	mov    0x43ba28,%esi
41679f:	8b ce                	mov    %esi,%ecx
4167a1:	33 35 d4 9c 83 02    	xor    0x2839cd4,%esi
4167a7:	83 e1 1f             	and    $0x1f,%ecx
4167aa:	d3 ce                	ror    %cl,%esi
4167ac:	85 f6                	test   %esi,%esi
4167ae:	75 04                	jne    0x4167b4
4167b0:	33 c0                	xor    %eax,%eax
4167b2:	eb 0e                	jmp    0x4167c2
4167b4:	ff 75 08             	push   0x8(%ebp)
4167b7:	8b ce                	mov    %esi,%ecx
4167b9:	ff 15 50 72 42 00    	call   *0x427250
4167bf:	ff d6                	call   *%esi
4167c1:	59                   	pop    %ecx
4167c2:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4167c5:	33 cd                	xor    %ebp,%ecx
4167c7:	5e                   	pop    %esi
4167c8:	e8 93 08 ff ff       	call   0x407060
4167cd:	8b e5                	mov    %ebp,%esp
4167cf:	5d                   	pop    %ebp
4167d0:	c3                   	ret
4167d1:	8b ff                	mov    %edi,%edi
4167d3:	55                   	push   %ebp
4167d4:	8b ec                	mov    %esp,%ebp
4167d6:	ff 75 08             	push   0x8(%ebp)
4167d9:	e8 2d ff ff ff       	call   0x41670b
4167de:	59                   	pop    %ecx
4167df:	a3 d4 9c 83 02       	mov    %eax,0x2839cd4
4167e4:	5d                   	pop    %ebp
4167e5:	c3                   	ret
4167e6:	8b ff                	mov    %edi,%edi
4167e8:	53                   	push   %ebx
4167e9:	56                   	push   %esi
4167ea:	e8 9c 8a 00 00       	call   0x41f28b
4167ef:	8b 35 e0 a0 83 02    	mov    0x283a0e0,%esi
4167f5:	85 f6                	test   %esi,%esi
4167f7:	75 05                	jne    0x4167fe
4167f9:	be d8 9c 83 02       	mov    $0x2839cd8,%esi
4167fe:	32 db                	xor    %bl,%bl
416800:	8a 06                	mov    (%esi),%al
416802:	3c 20                	cmp    $0x20,%al
416804:	7f 08                	jg     0x41680e
416806:	84 c0                	test   %al,%al
416808:	74 2a                	je     0x416834
41680a:	84 db                	test   %bl,%bl
41680c:	74 20                	je     0x41682e
41680e:	3c 22                	cmp    $0x22,%al
416810:	75 05                	jne    0x416817
416812:	84 db                	test   %bl,%bl
416814:	0f 94 c3             	sete   %bl
416817:	0f be c0             	movsbl %al,%eax
41681a:	50                   	push   %eax
41681b:	e8 b7 e2 ff ff       	call   0x414ad7
416820:	59                   	pop    %ecx
416821:	85 c0                	test   %eax,%eax
416823:	74 01                	je     0x416826
416825:	46                   	inc    %esi
416826:	46                   	inc    %esi
416827:	eb d7                	jmp    0x416800
416829:	3c 20                	cmp    $0x20,%al
41682b:	7f 07                	jg     0x416834
41682d:	46                   	inc    %esi
41682e:	8a 06                	mov    (%esi),%al
416830:	84 c0                	test   %al,%al
416832:	75 f5                	jne    0x416829
416834:	8b c6                	mov    %esi,%eax
416836:	5e                   	pop    %esi
416837:	5b                   	pop    %ebx
416838:	c3                   	ret
416839:	8b ff                	mov    %edi,%edi
41683b:	55                   	push   %ebp
41683c:	8b ec                	mov    %esp,%ebp
41683e:	51                   	push   %ecx
41683f:	51                   	push   %ecx
416840:	a1 28 ba 43 00       	mov    0x43ba28,%eax
416845:	33 c5                	xor    %ebp,%eax
416847:	89 45 fc             	mov    %eax,-0x4(%ebp)
41684a:	8b 45 0c             	mov    0xc(%ebp),%eax
41684d:	53                   	push   %ebx
41684e:	56                   	push   %esi
41684f:	8b 75 08             	mov    0x8(%ebp),%esi
416852:	2b c6                	sub    %esi,%eax