af663d:	8b 41 1c             	mov    0x1c(%ecx),%eax
af6640:	c3                   	ret
af6641:	8b 81 74 01 00 00    	mov    0x174(%ecx),%eax
af6647:	c3                   	ret
af6648:	8b 81 b8 00 00 00    	mov    0xb8(%ecx),%eax
af664e:	c3                   	ret
af664f:	8b 81 94 01 00 00    	mov    0x194(%ecx),%eax
af6655:	b9 00 00 00 c0       	mov    $0xc0000000,%ecx
af665a:	23 c1                	and    %ecx,%eax
af665c:	3b c1                	cmp    %ecx,%eax
af665e:	0f 94 c0             	sete   %al
af6661:	c3                   	ret
af6662:	cc                   	int3
af6663:	cc                   	int3
af6664:	cc                   	int3
af6665:	cc                   	int3
af6666:	c3                   	ret
af6667:	f0 ff 81 88 01 00 00 	lock incl 0x188(%ecx)
af666e:	c3                   	ret
af666f:	cc                   	int3
af6670:	cc                   	int3
af6671:	55                   	push   %ebp
af6672:	8b ec                	mov    %esp,%ebp
af6674:	8b 45 08             	mov    0x8(%ebp),%eax
af6677:	83 61 0c 00          	andl   $0x0,0xc(%ecx)
af667b:	89 41 04             	mov    %eax,0x4(%ecx)
af667e:	8b 45 0c             	mov    0xc(%ebp),%eax
af6681:	89 41 08             	mov    %eax,0x8(%ecx)
af6684:	5d                   	pop    %ebp
af6685:	c2 08 00             	ret    $0x8
af6688:	cc                   	int3
af6689:	cc                   	int3
af668a:	cc                   	int3
af668b:	cc                   	int3
af668c:	cc                   	int3
af668d:	6a 58                	push   $0x58
af668f:	b8 3a ea bb 00       	mov    $0xbbea3a,%eax
af6694:	e8 f2 3b 91 ff       	call   0x40a28b
af6699:	8b d9                	mov    %ecx,%ebx
af669b:	89 5d bc             	mov    %ebx,-0x44(%ebp)
af669e:	33 ff                	xor    %edi,%edi
af66a0:	89 bb b4 01 00 00    	mov    %edi,0x1b4(%ebx)
af66a6:	89 7b 14             	mov    %edi,0x14(%ebx)
af66a9:	89 7b 2c             	mov    %edi,0x2c(%ebx)
af66ac:	e8 16 1c 93 ff       	call   0x4282c7
af66b1:	89 83 a8 01 00 00    	mov    %eax,0x1a8(%ebx)
af66b7:	e8 0a 33 91 ff       	call   0x4099c6
af66bc:	89 83 74 01 00 00    	mov    %eax,0x174(%ebx)
af66c2:	e8 0d 3e 91 ff       	call   0x40a4d4
af66c7:	89 43 2c             	mov    %eax,0x2c(%ebx)
af66ca:	e8 51 fe 93 ff       	call   0x436520
af66cf:	6a 10                	push   $0x10
af66d1:	33 c9                	xor    %ecx,%ecx
af66d3:	5a                   	pop    %edx
af66d4:	8d 70 01             	lea    0x1(%eax),%esi
af66d7:	8b c6                	mov    %esi,%eax
af66d9:	89 73 28             	mov    %esi,0x28(%ebx)
af66dc:	f7 e2                	mul    %edx
af66de:	6a 04                	push   $0x4
af66e0:	5a                   	pop    %edx
af66e1:	0f 90 c1             	seto   %cl
af66e4:	89 75 c8             	mov    %esi,-0x38(%ebp)
af66e7:	f7 d9                	neg    %ecx
af66e9:	0b c8                	or     %eax,%ecx
af66eb:	33 c0                	xor    %eax,%eax
af66ed:	03 ca                	add    %edx,%ecx
af66ef:	0f 92 c0             	setb   %al
af66f2:	f7 d8                	neg    %eax
af66f4:	0b c1                	or     %ecx,%eax
af66f6:	50                   	push   %eax
af66f7:	e8 9b f0 93 ff       	call   0x435797
af66fc:	59                   	pop    %ecx
af66fd:	89 45 cc             	mov    %eax,-0x34(%ebp)
af6700:	89 7d fc             	mov    %edi,-0x4(%ebp)
af6703:	85 c0                	test   %eax,%eax
af6705:	74 18                	je     0xaf671f
af6707:	68 da 94 40 00       	push   $0x4094da
af670c:	68 9a 52 40 00       	push   $0x40529a
af6711:	56                   	push   %esi
af6712:	8d 78 04             	lea    0x4(%eax),%edi
af6715:	89 30                	mov    %esi,(%eax)
af6717:	6a 10                	push   $0x10
af6719:	57                   	push   %edi
af671a:	e8 e9 d2 90 ff       	call   0x403a08
af671f:	8b 43 2c             	mov    0x2c(%ebx),%eax
af6722:	33 c9                	xor    %ecx,%ecx
af6724:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
af6728:	6a 04                	push   $0x4
af672a:	5e                   	pop    %esi
af672b:	f7 e6                	mul    %esi
af672d:	89 7b 1c             	mov    %edi,0x1c(%ebx)
af6730:	0f 90 c1             	seto   %cl
af6733:	f7 d9                	neg    %ecx
af6735:	0b c8                	or     %eax,%ecx
af6737:	51                   	push   %ecx
af6738:	e8 5a f0 93 ff       	call   0x435797
af673d:	89 43 24             	mov    %eax,0x24(%ebx)
af6740:	33 c9                	xor    %ecx,%ecx
af6742:	8b 43 2c             	mov    0x2c(%ebx),%eax
af6745:	f7 e6                	mul    %esi
af6747:	0f 90 c1             	seto   %cl
af674a:	f7 d9                	neg    %ecx
af674c:	0b c8                	or     %eax,%ecx
af674e:	51                   	push   %ecx
af674f:	e8 43 f0 93 ff       	call   0x435797
af6754:	89 43 20             	mov    %eax,0x20(%ebx)
af6757:	8b 43 2c             	mov    0x2c(%ebx),%eax
af675a:	c1 e0 02             	shl    $0x2,%eax
af675d:	50                   	push   %eax
af675e:	6a 00                	push   $0x0
af6760:	ff 73 24             	push   0x24(%ebx)
af6763:	e8 50 e0 91 ff       	call   0x4147b8
af6768:	8b 43 2c             	mov    0x2c(%ebx),%eax
af676b:	c1 e0 02             	shl    $0x2,%eax
af676e:	50                   	push   %eax
af676f:	6a 00                	push   $0x0
af6771:	ff 73 20             	push   0x20(%ebx)
af6774:	e8 3f e0 91 ff       	call   0x4147b8
af6779:	8b 03                	mov    (%ebx),%eax
af677b:	83 c4 20             	add    $0x20,%esp
af677e:	8b 70 24             	mov    0x24(%eax),%esi
af6781:	8b ce                	mov    %esi,%ecx
af6783:	e8 dd 5e 93 ff       	call   0x42c665
af6788:	8b cb                	mov    %ebx,%ecx
af678a:	ff d6                	call   *%esi
af678c:	33 f6                	xor    %esi,%esi
af678e:	89 83 b0 00 00 00    	mov    %eax,0xb0(%ebx)
af6794:	89 75 ec             	mov    %esi,-0x14(%ebp)
af6797:	89 75 d4             	mov    %esi,-0x2c(%ebp)
af679a:	80 48 30 04          	orb    $0x4,0x30(%eax)
af679e:	e8 f7 ad 91 ff       	call   0x41159a
af67a3:	33 ff                	xor    %edi,%edi
af67a5:	89 45 dc             	mov    %eax,-0x24(%ebp)
af67a8:	39 73 28             	cmp    %esi,0x28(%ebx)
af67ab:	7e 26                	jle    0xaf67d3
af67ad:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
af67b0:	ff 73 2c             	push   0x2c(%ebx)
af67b3:	03 ce                	add    %esi,%ecx
af67b5:	e8 9d 91 91 ff       	call   0x40f957
af67ba:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
af67bd:	ff 75 dc             	push   -0x24(%ebp)
af67c0:	83 c1 08             	add    $0x8,%ecx
af67c3:	03 ce                	add    %esi,%ecx
af67c5:	e8 8d 91 91 ff       	call   0x40f957
af67ca:	47                   	inc    %edi
af67cb:	83 c6 10             	add    $0x10,%esi
af67ce:	3b 7b 28             	cmp    0x28(%ebx),%edi
af67d1:	7c da                	jl     0xaf67ad
af67d3:	8b bb a8 01 00 00    	mov    0x1a8(%ebx),%edi
af67d9:	8b 07                	mov    (%edi),%eax
af67db:	8b 70 10             	mov    0x10(%eax),%esi
af67de:	8b ce                	mov    %esi,%ecx
af67e0:	e8 80 5e 93 ff       	call   0x42c665
af67e5:	8b cf                	mov    %edi,%ecx
af67e7:	ff d6                	call   *%esi
af67e9:	8b f0                	mov    %eax,%esi
af67eb:	89 75 f0             	mov    %esi,-0x10(%ebp)
af67ee:	85 f6                	test   %esi,%esi
af67f0:	0f 84 17 02 00 00    	je     0xaf6a0d
af67f6:	8b 7d ec             	mov    -0x14(%ebp),%edi
af67f9:	ff 75 dc             	push   -0x24(%ebp)
af67fc:	8d 4d ac             	lea    -0x54(%ebp),%ecx
af67ff:	e8 ff 38 93 ff       	call   0x42a103
af6804:	8b 06                	mov    (%esi),%eax
af6806:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
af680d:	8b 70 04             	mov    0x4(%eax),%esi
af6810:	8b ce                	mov    %esi,%ecx
af6812:	e8 4e 5e 93 ff       	call   0x42c665
af6817:	8b 4d f0             	mov    -0x10(%ebp),%ecx
af681a:	ff d6                	call   *%esi
af681c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
af681f:	8b 45 f0             	mov    -0x10(%ebp),%eax
af6822:	8b 08                	mov    (%eax),%ecx
af6824:	8b 71 08             	mov    0x8(%ecx),%esi
af6827:	8b ce                	mov    %esi,%ecx
af6829:	e8 37 5e 93 ff       	call   0x42c665
af682e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
af6831:	ff d6                	call   *%esi
af6833:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
af6836:	8b 75 e4             	mov    -0x1c(%ebp),%esi
af6839:	89 45 c8             	mov    %eax,-0x38(%ebp)
af683c:	c1 e0 04             	shl    $0x4,%eax
af683f:	c1 ee 05             	shr    $0x5,%esi
af6842:	89 45 cc             	mov    %eax,-0x34(%ebp)
af6845:	89 7d e0             	mov    %edi,-0x20(%ebp)
af6848:	8b 54 01 04          	mov    0x4(%ecx,%eax,1),%edx
af684c:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
af684f:	83 e1 1f             	and    $0x1f,%ecx
af6852:	8b 04 b2             	mov    (%edx,%esi,4),%eax
af6855:	0f ab c8             	bts    %ecx,%eax
af6858:	89 04 b2             	mov    %eax,(%edx,%esi,4)
af685b:	8b 45 f0             	mov    -0x10(%ebp),%eax
af685e:	8b 00                	mov    (%eax),%eax
af6860:	8b 70 10             	mov    0x10(%eax),%esi
af6863:	8b ce                	mov    %esi,%ecx
af6865:	e8 fb 5d 93 ff       	call   0x42c665
af686a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
af686d:	ff d6                	call   *%esi
af686f:	8b f0                	mov    %eax,%esi
af6871:	89 75 d0             	mov    %esi,-0x30(%ebp)
af6874:	8b ce                	mov    %esi,%ecx
af6876:	89 4d e8             	mov    %ecx,-0x18(%ebp)
af6879:	85 f6                	test   %esi,%esi
af687b:	0f 84 8f 00 00 00    	je     0xaf6910
af6881:	8b 01                	mov    (%ecx),%eax
af6883:	8b 70 04             	mov    0x4(%eax),%esi
af6886:	8b ce                	mov    %esi,%ecx
af6888:	e8 d8 5d 93 ff       	call   0x42c665
af688d:	8b 4d e8             	mov    -0x18(%ebp),%ecx
af6890:	ff d6                	call   *%esi
af6892:	89 45 d8             	mov    %eax,-0x28(%ebp)
af6895:	8d 8b 5c 01 00 00    	lea    0x15c(%ebx),%ecx
af689b:	8d 45 e4             	lea    -0x1c(%ebp),%eax
af689e:	50                   	push   %eax
af689f:	8d 45 d8             	lea    -0x28(%ebp),%eax
af68a2:	50                   	push   %eax
af68a3:	e8 74 a7 92 ff       	call   0x42101c
af68a8:	8d 45 d4             	lea    -0x2c(%ebp),%eax
af68ab:	50                   	push   %eax
af68ac:	8d 45 d8             	lea    -0x28(%ebp),%eax
af68af:	50                   	push   %eax
af68b0:	8d 8b 68 01 00 00    	lea    0x168(%ebx),%ecx
af68b6:	e8 61 a7 92 ff       	call   0x42101c
af68bb:	8b 4d b0             	mov    -0x50(%ebp),%ecx
af68be:	8b 75 ec             	mov    -0x14(%ebp),%esi
af68c1:	c1 ef 05             	shr    $0x5,%edi
af68c4:	83 e6 1f             	and    $0x1f,%esi
af68c7:	8b 04 b9             	mov    (%ecx,%edi,4),%eax
af68ca:	0f ab f0             	bts    %esi,%eax
af68cd:	89 04 b9             	mov    %eax,(%ecx,%edi,4)
af68d0:	8b 43 1c             	mov    0x1c(%ebx),%eax
af68d3:	8b 4d cc             	mov    -0x34(%ebp),%ecx
af68d6:	8b 54 01 0c          	mov    0xc(%ecx,%eax,1),%edx
af68da:	8b 04 ba             	mov    (%edx,%edi,4),%eax
af68dd:	0f ab f0             	bts    %esi,%eax
af68e0:	89 04 ba             	mov    %eax,(%edx,%edi,4)
af68e3:	8b 45 e8             	mov    -0x18(%ebp),%eax
af68e6:	8b 7d ec             	mov    -0x14(%ebp),%edi
af68e9:	47                   	inc    %edi
af68ea:	89 7d ec             	mov    %edi,-0x14(%ebp)
af68ed:	8b 00                	mov    (%eax),%eax
af68ef:	89 7d d4             	mov    %edi,-0x2c(%ebp)
af68f2:	8b 30                	mov    (%eax),%esi
af68f4:	8b ce                	mov    %esi,%ecx
af68f6:	e8 6a 5d 93 ff       	call   0x42c665
af68fb:	8b 4d e8             	mov    -0x18(%ebp),%ecx
af68fe:	ff d6                	call   *%esi
af6900:	8b c8                	mov    %eax,%ecx
af6902:	89 45 e8             	mov    %eax,-0x18(%ebp)
af6905:	85 c9                	test   %ecx,%ecx
af6907:	0f 85 74 ff ff ff    	jne    0xaf6881
af690d:	8b 75 d0             	mov    -0x30(%ebp),%esi
af6910:	68 c0 00 00 00       	push   $0xc0
af6915:	e8 63 40 93 ff       	call   0x42a97d
af691a:	59                   	pop    %ecx
af691b:	89 45 b8             	mov    %eax,-0x48(%ebp)
af691e:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
af6922:	85 c0                	test   %eax,%eax
af6924:	74 10                	je     0xaf6936
af6926:	ff 75 e4             	push   -0x1c(%ebp)
af6929:	8b c8                	mov    %eax,%ecx
af692b:	53                   	push   %ebx
af692c:	e8 5f fb 92 ff       	call   0x426490
af6931:	89 45 e8             	mov    %eax,-0x18(%ebp)
af6934:	eb 04                	jmp    0xaf693a
af6936:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
af693a:	68 88 00 00 00       	push   $0x88
af693f:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
af6943:	e8 35 40 93 ff       	call   0x42a97d
af6948:	59                   	pop    %ecx
af6949:	89 45 b4             	mov    %eax,-0x4c(%ebp)
af694c:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
af6950:	85 c0                	test   %eax,%eax
af6952:	74 13                	je     0xaf6967
af6954:	ff 75 e8             	push   -0x18(%ebp)
af6957:	8d 4d ac             	lea    -0x54(%ebp),%ecx
af695a:	ff 75 c8             	push   -0x38(%ebp)
af695d:	51                   	push   %ecx
af695e:	8b c8                	mov    %eax,%ecx
af6960:	e8 4f 44 94 ff       	call   0x43adb4
af6965:	eb 02                	jmp    0xaf6969
af6967:	33 c0                	xor    %eax,%eax
af6969:	8b 4d e8             	mov    -0x18(%ebp),%ecx
af696c:	89 45 cc             	mov    %eax,-0x34(%ebp)
af696f:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
af6973:	89 41 04             	mov    %eax,0x4(%ecx)
af6976:	85 f6                	test   %esi,%esi
af6978:	74 54                	je     0xaf69ce
af697a:	8b 7d d0             	mov    -0x30(%ebp),%edi
af697d:	83 c0 10             	add    $0x10,%eax
af6980:	89 45 c8             	mov    %eax,-0x38(%ebp)
af6983:	8b d8                	mov    %eax,%ebx
af6985:	8b 45 e0             	mov    -0x20(%ebp),%eax
af6988:	89 45 c4             	mov    %eax,-0x3c(%ebp)
af698b:	8b 07                	mov    (%edi),%eax
af698d:	8b 70 04             	mov    0x4(%eax),%esi
af6990:	8b ce                	mov    %esi,%ecx
af6992:	e8 ce 5c 93 ff       	call   0x42c665
af6997:	8b cf                	mov    %edi,%ecx
af6999:	ff d6                	call   *%esi
af699b:	89 45 c0             	mov    %eax,-0x40(%ebp)
af699e:	8b cb                	mov    %ebx,%ecx
af69a0:	8d 45 c4             	lea    -0x3c(%ebp),%eax
af69a3:	50                   	push   %eax
af69a4:	8d 45 c0             	lea    -0x40(%ebp),%eax
af69a7:	50                   	push   %eax
af69a8:	e8 6f a6 92 ff       	call   0x42101c
af69ad:	8b 07                	mov    (%edi),%eax
af69af:	ff 45 e0             	incl   -0x20(%ebp)
af69b2:	8b 30                	mov    (%eax),%esi
af69b4:	8b ce                	mov    %esi,%ecx
af69b6:	e8 aa 5c 93 ff       	call   0x42c665
af69bb:	8b cf                	mov    %edi,%ecx
af69bd:	ff d6                	call   *%esi
af69bf:	8b f8                	mov    %eax,%edi
af69c1:	85 ff                	test   %edi,%edi
af69c3:	75 c0                	jne    0xaf6985
af69c5:	8b 5d bc             	mov    -0x44(%ebp),%ebx
af69c8:	8b 7d ec             	mov    -0x14(%ebp),%edi
af69cb:	8b 4d e8             	mov    -0x18(%ebp),%ecx
af69ce:	8b 43 24             	mov    0x24(%ebx),%eax
af69d1:	8b 55 e4             	mov    -0x1c(%ebp),%edx
af69d4:	89 0c 90             	mov    %ecx,(%eax,%edx,4)
af69d7:	8b 43 20             	mov    0x20(%ebx),%eax
af69da:	8b 4d cc             	mov    -0x34(%ebp),%ecx
af69dd:	89 0c 90             	mov    %ecx,(%eax,%edx,4)
af69e0:	8b 45 f0             	mov    -0x10(%ebp),%eax
af69e3:	8b 00                	mov    (%eax),%eax
af69e5:	8b 30                	mov    (%eax),%esi
af69e7:	8b ce                	mov    %esi,%ecx
af69e9:	e8 77 5c 93 ff       	call   0x42c665
af69ee:	8b 4d f0             	mov    -0x10(%ebp),%ecx
af69f1:	ff d6                	call   *%esi
af69f3:	ff 75 b0             	push   -0x50(%ebp)
af69f6:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
af69fa:	8b f0                	mov    %eax,%esi
af69fc:	89 75 f0             	mov    %esi,-0x10(%ebp)
af69ff:	e8 0e 7c 94 ff       	call   0x43e612
af6a04:	59                   	pop    %ecx
af6a05:	85 f6                	test   %esi,%esi
af6a07:	0f 85 ec fd ff ff    	jne    0xaf67f9
af6a0d:	8b 75 ec             	mov    -0x14(%ebp),%esi
af6a10:	8d 4b 3c             	lea    0x3c(%ebx),%ecx
af6a13:	56                   	push   %esi
af6a14:	e8 a9 55 92 ff       	call   0x41bfc2
af6a19:	56                   	push   %esi
af6a1a:	8d 4b 48             	lea    0x48(%ebx),%ecx
af6a1d:	e8 a0 55 92 ff       	call   0x41bfc2
af6a22:	56                   	push   %esi
af6a23:	8d 4b 54             	lea    0x54(%ebx),%ecx