5c256d:	68 e8 ba 66 00       	push   $0x66bae8
5c2572:	6a 59                	push   $0x59
5c2574:	68 20 bb 66 00       	push   $0x66bb20
5c2579:	e8 e2 8e ff ff       	call   0x5bb460
5c257e:	83 c4 0c             	add    $0xc,%esp
5c2581:	84 c0                	test   %al,%al
5c2583:	75 01                	jne    0x5c2586
5c2585:	cc                   	int3
5c2586:	8b 8e a0 00 00 00    	mov    0xa0(%esi),%ecx
5c258c:	c1 e1 03             	shl    $0x3,%ecx
5c258f:	83 e9 04             	sub    $0x4,%ecx
5c2592:	72 11                	jb     0x5c25a5
5c2594:	8b 06                	mov    (%esi),%eax
5c2596:	3b 07                	cmp    (%edi),%eax
5c2598:	75 10                	jne    0x5c25aa
5c259a:	83 c6 04             	add    $0x4,%esi
5c259d:	83 c7 04             	add    $0x4,%edi
5c25a0:	83 e9 04             	sub    $0x4,%ecx
5c25a3:	73 ef                	jae    0x5c2594
5c25a5:	83 f9 fc             	cmp    $0xfffffffc,%ecx
5c25a8:	74 3d                	je     0x5c25e7
5c25aa:	8a 06                	mov    (%esi),%al
5c25ac:	3a 07                	cmp    (%edi),%al
5c25ae:	75 27                	jne    0x5c25d7
5c25b0:	83 f9 fd             	cmp    $0xfffffffd,%ecx
5c25b3:	74 32                	je     0x5c25e7
5c25b5:	8a 46 01             	mov    0x1(%esi),%al
5c25b8:	3a 47 01             	cmp    0x1(%edi),%al
5c25bb:	75 1a                	jne    0x5c25d7
5c25bd:	83 f9 fe             	cmp    $0xfffffffe,%ecx
5c25c0:	74 25                	je     0x5c25e7
5c25c2:	8a 46 02             	mov    0x2(%esi),%al
5c25c5:	3a 47 02             	cmp    0x2(%edi),%al
5c25c8:	75 0d                	jne    0x5c25d7
5c25ca:	83 f9 ff             	cmp    $0xffffffff,%ecx
5c25cd:	74 18                	je     0x5c25e7
5c25cf:	8a 46 03             	mov    0x3(%esi),%al
5c25d2:	3a 47 03             	cmp    0x3(%edi),%al
5c25d5:	74 10                	je     0x5c25e7
5c25d7:	1b c0                	sbb    %eax,%eax
5c25d9:	83 c8 01             	or     $0x1,%eax
5c25dc:	85 c0                	test   %eax,%eax
5c25de:	5f                   	pop    %edi
5c25df:	0f 98 c0             	sets   %al
5c25e2:	5e                   	pop    %esi
5c25e3:	5d                   	pop    %ebp
5c25e4:	c2 08 00             	ret    $0x8
5c25e7:	33 c0                	xor    %eax,%eax
5c25e9:	85 c0                	test   %eax,%eax
5c25eb:	5f                   	pop    %edi
5c25ec:	0f 98 c0             	sets   %al
5c25ef:	5e                   	pop    %esi
5c25f0:	5d                   	pop    %ebp
5c25f1:	c2 08 00             	ret    $0x8
5c25f4:	3b c8                	cmp    %eax,%ecx
5c25f6:	77 12                	ja     0x5c260a
5c25f8:	72 08                	jb     0x5c2602
5c25fa:	39 96 a8 00 00 00    	cmp    %edx,0xa8(%esi)
5c2600:	73 08                	jae    0x5c260a
5c2602:	5f                   	pop    %edi
5c2603:	b0 01                	mov    $0x1,%al
5c2605:	5e                   	pop    %esi
5c2606:	5d                   	pop    %ebp
5c2607:	c2 08 00             	ret    $0x8
5c260a:	5f                   	pop    %edi
5c260b:	32 c0                	xor    %al,%al
5c260d:	5e                   	pop    %esi
5c260e:	5d                   	pop    %ebp
5c260f:	c2 08 00             	ret    $0x8
5c2612:	cc                   	int3
5c2613:	cc                   	int3
5c2614:	cc                   	int3
5c2615:	cc                   	int3
5c2616:	cc                   	int3
5c2617:	cc                   	int3
5c2618:	cc                   	int3
5c2619:	cc                   	int3
5c261a:	cc                   	int3
5c261b:	cc                   	int3
5c261c:	cc                   	int3
5c261d:	cc                   	int3
5c261e:	cc                   	int3
5c261f:	cc                   	int3
5c2620:	55                   	push   %ebp
5c2621:	8b ec                	mov    %esp,%ebp
5c2623:	8b 45 08             	mov    0x8(%ebp),%eax
5c2626:	85 c0                	test   %eax,%eax
5c2628:	56                   	push   %esi
5c2629:	be 01 00 00 00       	mov    $0x1,%esi
5c262e:	0f 45 f0             	cmovne %eax,%esi
5c2631:	57                   	push   %edi
5c2632:	8b f9                	mov    %ecx,%edi
5c2634:	81 fe 00 04 00 00    	cmp    $0x400,%esi
5c263a:	76 1c                	jbe    0x5c2658
5c263c:	68 98 c1 66 00       	push   $0x66c198
5c2641:	68 70 04 00 00       	push   $0x470
5c2646:	68 78 bb 66 00       	push   $0x66bb78
5c264b:	e8 10 8e ff ff       	call   0x5bb460
5c2650:	83 c4 0c             	add    $0xc,%esp
5c2653:	84 c0                	test   %al,%al
5c2655:	75 01                	jne    0x5c2658
5c2657:	cc                   	int3
5c2658:	8d 46 ff             	lea    -0x1(%esi),%eax
5c265b:	c1 e8 02             	shr    $0x2,%eax
5c265e:	8b 3c 87             	mov    (%edi,%eax,4),%edi
5c2661:	8b cf                	mov    %edi,%ecx
5c2663:	e8 98 00 00 00       	call   0x5c2700
5c2668:	8b f0                	mov    %eax,%esi
5c266a:	85 f6                	test   %esi,%esi
5c266c:	74 18                	je     0x5c2686
5c266e:	e8 fd 44 00 00       	call   0x5c6b70
5c2673:	6a 00                	push   $0x0
5c2675:	ff 77 10             	push   0x10(%edi)
5c2678:	ff b0 24 59 00 00    	push   0x5924(%eax)
5c267e:	e8 9d 5c 00 00       	call   0x5c8320
5c2683:	83 c4 0c             	add    $0xc,%esp
5c2686:	5f                   	pop    %edi
5c2687:	8b c6                	mov    %esi,%eax
5c2689:	5e                   	pop    %esi
5c268a:	5d                   	pop    %ebp
5c268b:	c2 04 00             	ret    $0x4
5c268e:	cc                   	int3
5c268f:	cc                   	int3
5c2690:	55                   	push   %ebp
5c2691:	8b ec                	mov    %esp,%ebp
5c2693:	8b 45 08             	mov    0x8(%ebp),%eax
5c2696:	85 c0                	test   %eax,%eax
5c2698:	56                   	push   %esi
5c2699:	be 01 00 00 00       	mov    $0x1,%esi
5c269e:	0f 45 f0             	cmovne %eax,%esi
5c26a1:	57                   	push   %edi
5c26a2:	8b f9                	mov    %ecx,%edi
5c26a4:	81 fe 00 40 00 00    	cmp    $0x4000,%esi
5c26aa:	76 1c                	jbe    0x5c26c8
5c26ac:	68 98 c1 66 00       	push   $0x66c198
5c26b1:	68 70 04 00 00       	push   $0x470
5c26b6:	68 78 bb 66 00       	push   $0x66bb78
5c26bb:	e8 a0 8d ff ff       	call   0x5bb460
5c26c0:	83 c4 0c             	add    $0xc,%esp
5c26c3:	84 c0                	test   %al,%al
5c26c5:	75 01                	jne    0x5c26c8
5c26c7:	cc                   	int3
5c26c8:	8d 46 ff             	lea    -0x1(%esi),%eax
5c26cb:	c1 e8 02             	shr    $0x2,%eax
5c26ce:	8b 3c 87             	mov    (%edi,%eax,4),%edi
5c26d1:	8b cf                	mov    %edi,%ecx
5c26d3:	e8 d8 01 00 00       	call   0x5c28b0
5c26d8:	8b f0                	mov    %eax,%esi
5c26da:	85 f6                	test   %esi,%esi
5c26dc:	74 18                	je     0x5c26f6
5c26de:	e8 8d 44 00 00       	call   0x5c6b70
5c26e3:	6a 00                	push   $0x0
5c26e5:	ff 77 10             	push   0x10(%edi)
5c26e8:	ff b0 24 59 00 00    	push   0x5924(%eax)
5c26ee:	e8 2d 5c 00 00       	call   0x5c8320
5c26f3:	83 c4 0c             	add    $0xc,%esp
5c26f6:	5f                   	pop    %edi
5c26f7:	8b c6                	mov    %esi,%eax
5c26f9:	5e                   	pop    %esi
5c26fa:	5d                   	pop    %ebp
5c26fb:	c2 04 00             	ret    $0x4
5c26fe:	cc                   	int3
5c26ff:	cc                   	int3
5c2700:	55                   	push   %ebp
5c2701:	8b ec                	mov    %esp,%ebp
5c2703:	83 ec 0c             	sub    $0xc,%esp
5c2706:	53                   	push   %ebx
5c2707:	56                   	push   %esi
5c2708:	8b d9                	mov    %ecx,%ebx
5c270a:	57                   	push   %edi
5c270b:	53                   	push   %ebx
5c270c:	e8 ef 84 00 00       	call   0x5cac00
5c2711:	8b f0                	mov    %eax,%esi
5c2713:	83 c4 04             	add    $0x4,%esp
5c2716:	85 f6                	test   %esi,%esi
5c2718:	0f 85 27 01 00 00    	jne    0x5c2845
5c271e:	8b 4b 10             	mov    0x10(%ebx),%ecx
5c2721:	8d 7b 08             	lea    0x8(%ebx),%edi
5c2724:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5c2727:	89 7d f4             	mov    %edi,-0xc(%ebp)
5c272a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
5c2730:	8b 37                	mov    (%edi),%esi
5c2732:	85 f6                	test   %esi,%esi
5c2734:	74 45                	je     0x5c277b
5c2736:	8d 3c 31             	lea    (%ecx,%esi,1),%edi
5c2739:	33 c9                	xor    %ecx,%ecx
5c273b:	8b c7                	mov    %edi,%eax
5c273d:	99                   	cltd
5c273e:	48                   	dec    %eax
5c273f:	0f b7 c0             	movzwl %ax,%eax
5c2742:	89 45 fc             	mov    %eax,-0x4(%ebp)
5c2745:	8b 45 f8             	mov    -0x8(%ebp),%eax
5c2748:	99                   	cltd
5c2749:	01 45 fc             	add    %eax,-0x4(%ebp)
5c274c:	13 ca                	adc    %edx,%ecx
5c274e:	85 c9                	test   %ecx,%ecx
5c2750:	75 09                	jne    0x5c275b
5c2752:	81 7d fc 00 00 01 00 	cmpl   $0x10000,-0x4(%ebp)
5c2759:	76 02                	jbe    0x5c275d
5c275b:	33 ff                	xor    %edi,%edi
5c275d:	8b c6                	mov    %esi,%eax
5c275f:	8d 4b 08             	lea    0x8(%ebx),%ecx
5c2762:	f0 0f b1 39          	lock cmpxchg %edi,(%ecx)
5c2766:	3b c6                	cmp    %esi,%eax
5c2768:	0f 94 c0             	sete   %al
5c276b:	84 c0                	test   %al,%al
5c276d:	0f 85 d0 00 00 00    	jne    0x5c2843
5c2773:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5c2776:	8d 7b 08             	lea    0x8(%ebx),%edi
5c2779:	eb b5                	jmp    0x5c2730
5c277b:	8d 43 18             	lea    0x18(%ebx),%eax
5c277e:	50                   	push   %eax
5c277f:	89 45 fc             	mov    %eax,-0x4(%ebp)
5c2782:	ff 15 ac 21 60 00    	call   *0x6021ac
5c2788:	83 3f 00             	cmpl   $0x0,(%edi)
5c278b:	0f 85 a0 00 00 00    	jne    0x5c2831
5c2791:	8b 35 f0 eb 6d 00    	mov    0x6debf0,%esi
5c2797:	3b 35 f8 eb 6d 00    	cmp    0x6debf8,%esi
5c279d:	0f 83 eb 00 00 00    	jae    0x5c288e
5c27a3:	ba f0 eb 6d 00       	mov    $0x6debf0,%edx
5c27a8:	eb 06                	jmp    0x5c27b0
5c27aa:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
5c27b0:	8d 8e 00 00 01 00    	lea    0x10000(%esi),%ecx
5c27b6:	8b c6                	mov    %esi,%eax
5c27b8:	f0 0f b1 0a          	lock cmpxchg %ecx,(%edx)
5c27bc:	3b c6                	cmp    %esi,%eax
5c27be:	0f 94 c0             	sete   %al
5c27c1:	84 c0                	test   %al,%al
5c27c3:	75 13                	jne    0x5c27d8
5c27c5:	8b 35 f0 eb 6d 00    	mov    0x6debf0,%esi
5c27cb:	3b 35 f8 eb 6d 00    	cmp    0x6debf8,%esi
5c27d1:	72 dd                	jb     0x5c27b0
5c27d3:	e9 b6 00 00 00       	jmp    0x5c288e
5c27d8:	a1 f4 eb 6d 00       	mov    0x6debf4,%eax
5c27dd:	2b f0                	sub    %eax,%esi
5c27df:	c1 ee 10             	shr    $0x10,%esi
5c27e2:	8d 3c f5 fc eb 6d 00 	lea    0x6debfc(,%esi,8),%edi
5c27e9:	85 ff                	test   %edi,%edi
5c27eb:	0f 84 9a 00 00 00    	je     0x5c288b
5c27f1:	6a 04                	push   $0x4
5c27f3:	68 00 10 00 00       	push   $0x1000
5c27f8:	c1 e6 10             	shl    $0x10,%esi
5c27fb:	03 f0                	add    %eax,%esi
5c27fd:	68 00 00 01 00       	push   $0x10000
5c2802:	56                   	push   %esi
5c2803:	ff 15 1c 22 60 00    	call   *0x60221c
5c2809:	85 c0                	test   %eax,%eax
5c280b:	74 7e                	je     0x5c288b
5c280d:	89 1f                	mov    %ebx,(%edi)
5c280f:	8d 4b 30             	lea    0x30(%ebx),%ecx
5c2812:	8b 43 0c             	mov    0xc(%ebx),%eax
5c2815:	33 d2                	xor    %edx,%edx
5c2817:	89 47 04             	mov    %eax,0x4(%edi)
5c281a:	b8 00 00 01 00       	mov    $0x10000,%eax
5c281f:	f7 73 10             	divl   0x10(%ebx)
5c2822:	89 7b 0c             	mov    %edi,0xc(%ebx)
5c2825:	f0 0f c1 01          	lock xadd %eax,(%ecx)
5c2829:	ff 43 14             	incl   0x14(%ebx)
5c282c:	8d 7b 08             	lea    0x8(%ebx),%edi
5c282f:	87 37                	xchg   %esi,(%edi)
5c2831:	8d 43 18             	lea    0x18(%ebx),%eax
5c2834:	50                   	push   %eax
5c2835:	ff 15 60 21 60 00    	call   *0x602160
5c283b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5c283e:	e9 ed fe ff ff       	jmp    0x5c2730
5c2843:	8b c6                	mov    %esi,%eax
5c2845:	2b 05 f4 eb 6d 00    	sub    0x6debf4,%eax
5c284b:	c1 e8 10             	shr    $0x10,%eax
5c284e:	f0 ff 4b 30          	lock decl 0x30(%ebx)
5c2852:	3d 00 02 00 00       	cmp    $0x200,%eax
5c2857:	72 29                	jb     0x5c2882
5c2859:	ff 35 f4 eb 6d 00    	push   0x6debf4
5c285f:	56                   	push   %esi
5c2860:	50                   	push   %eax
5c2861:	68 00 02 00 00       	push   $0x200
5c2866:	68 b0 c2 66 00       	push   $0x66c2b0
5c286b:	68 e9 02 00 00       	push   $0x2e9
5c2870:	68 78 bb 66 00       	push   $0x66bb78
5c2875:	e8 f6 8b ff ff       	call   0x5bb470
5c287a:	83 c4 1c             	add    $0x1c,%esp
5c287d:	84 c0                	test   %al,%al
5c287f:	75 01                	jne    0x5c2882
5c2881:	cc                   	int3
5c2882:	5f                   	pop    %edi
5c2883:	8b c6                	mov    %esi,%eax
5c2885:	5e                   	pop    %esi
5c2886:	5b                   	pop    %ebx
5c2887:	8b e5                	mov    %ebp,%esp
5c2889:	5d                   	pop    %ebp
5c288a:	c3                   	ret
5c288b:	8b 7d f4             	mov    -0xc(%ebp),%edi
5c288e:	33 c0                	xor    %eax,%eax
5c2890:	87 07                	xchg   %eax,(%edi)
5c2892:	8b 45 fc             	mov    -0x4(%ebp),%eax
5c2895:	50                   	push   %eax
5c2896:	ff 15 60 21 60 00    	call   *0x602160
5c289c:	5f                   	pop    %edi
5c289d:	5e                   	pop    %esi
5c289e:	33 c0                	xor    %eax,%eax
5c28a0:	5b                   	pop    %ebx
5c28a1:	8b e5                	mov    %ebp,%esp
5c28a3:	5d                   	pop    %ebp
5c28a4:	c3                   	ret
5c28a5:	cc                   	int3
5c28a6:	cc                   	int3
5c28a7:	cc                   	int3
5c28a8:	cc                   	int3
5c28a9:	cc                   	int3
5c28aa:	cc                   	int3
5c28ab:	cc                   	int3
5c28ac:	cc                   	int3
5c28ad:	cc                   	int3
5c28ae:	cc                   	int3
5c28af:	cc                   	int3
5c28b0:	55                   	push   %ebp
5c28b1:	8b ec                	mov    %esp,%ebp
5c28b3:	83 ec 0c             	sub    $0xc,%esp
5c28b6:	53                   	push   %ebx
5c28b7:	56                   	push   %esi
5c28b8:	8b d9                	mov    %ecx,%ebx
5c28ba:	57                   	push   %edi
5c28bb:	53                   	push   %ebx
5c28bc:	e8 3f 83 00 00       	call   0x5cac00
5c28c1:	8b f0                	mov    %eax,%esi
5c28c3:	83 c4 04             	add    $0x4,%esp
5c28c6:	85 f6                	test   %esi,%esi
5c28c8:	0f 85 27 01 00 00    	jne    0x5c29f5
5c28ce:	8b 4b 10             	mov    0x10(%ebx),%ecx
5c28d1:	8d 7b 08             	lea    0x8(%ebx),%edi
5c28d4:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5c28d7:	89 7d f4             	mov    %edi,-0xc(%ebp)
5c28da:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
5c28e0:	8b 37                	mov    (%edi),%esi
5c28e2:	85 f6                	test   %esi,%esi
5c28e4:	74 45                	je     0x5c292b
5c28e6:	8d 3c 31             	lea    (%ecx,%esi,1),%edi
5c28e9:	33 c9                	xor    %ecx,%ecx
5c28eb:	8b c7                	mov    %edi,%eax
5c28ed:	99                   	cltd
5c28ee:	48                   	dec    %eax
5c28ef:	0f b7 c0             	movzwl %ax,%eax
5c28f2:	89 45 fc             	mov    %eax,-0x4(%ebp)
5c28f5:	8b 45 f8             	mov    -0x8(%ebp),%eax
5c28f8:	99                   	cltd
5c28f9:	01 45 fc             	add    %eax,-0x4(%ebp)
5c28fc:	13 ca                	adc    %edx,%ecx
5c28fe:	85 c9                	test   %ecx,%ecx
5c2900:	75 09                	jne    0x5c290b
5c2902:	81 7d fc 00 00 01 00 	cmpl   $0x10000,-0x4(%ebp)
5c2909:	76 02                	jbe    0x5c290d