5ca685:	8b 44 18 30          	mov    0x30(%eax,%ebx,1),%eax
5ca689:	8b 70 04             	mov    0x4(%eax),%esi
5ca68c:	8b ce                	mov    %esi,%ecx
5ca68e:	89 75 d4             	mov    %esi,-0x2c(%ebp)
5ca691:	8b 06                	mov    (%esi),%eax
5ca693:	ff 50 04             	call   *0x4(%eax)
5ca696:	8d 45 d0             	lea    -0x30(%ebp),%eax
5ca699:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
5ca69d:	50                   	push   %eax
5ca69e:	e8 9d 31 e8 ff       	call   0x44d840
5ca6a3:	83 c4 04             	add    $0x4,%esp
5ca6a6:	89 45 d8             	mov    %eax,-0x28(%ebp)
5ca6a9:	85 f6                	test   %esi,%esi
5ca6ab:	74 13                	je     0x5ca6c0
5ca6ad:	8b 06                	mov    (%esi),%eax
5ca6af:	8b ce                	mov    %esi,%ecx
5ca6b1:	ff 50 08             	call   *0x8(%eax)
5ca6b4:	8b c8                	mov    %eax,%ecx
5ca6b6:	85 c9                	test   %ecx,%ecx
5ca6b8:	74 06                	je     0x5ca6c0
5ca6ba:	8b 01                	mov    (%ecx),%eax
5ca6bc:	6a 01                	push   $0x1
5ca6be:	ff 10                	call   *(%eax)
5ca6c0:	8b 75 0c             	mov    0xc(%ebp),%esi
5ca6c3:	8b c6                	mov    %esi,%eax
5ca6c5:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
5ca6cc:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
5ca6d0:	72 02                	jb     0x5ca6d4
5ca6d2:	8b 06                	mov    (%esi),%eax
5ca6d4:	c6 00 00             	movb   $0x0,(%eax)
5ca6d7:	8b 03                	mov    (%ebx),%eax
5ca6d9:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
5ca6dd:	8b 40 04             	mov    0x4(%eax),%eax
5ca6e0:	83 7c 18 24 00       	cmpl   $0x0,0x24(%eax,%ebx,1)
5ca6e5:	8b 7c 18 20          	mov    0x20(%eax,%ebx,1),%edi
5ca6e9:	89 7d e8             	mov    %edi,-0x18(%ebp)
5ca6ec:	7c 0e                	jl     0x5ca6fc
5ca6ee:	7f 04                	jg     0x5ca6f4
5ca6f0:	85 ff                	test   %edi,%edi
5ca6f2:	74 08                	je     0x5ca6fc
5ca6f4:	81 ff ff ff ff 7f    	cmp    $0x7fffffff,%edi
5ca6fa:	72 08                	jb     0x5ca704
5ca6fc:	bf ff ff ff 7f       	mov    $0x7fffffff,%edi
5ca701:	89 7d e8             	mov    %edi,-0x18(%ebp)
5ca704:	8b 4c 18 38          	mov    0x38(%eax,%ebx,1),%ecx
5ca708:	8b 41 1c             	mov    0x1c(%ecx),%eax
5ca70b:	8b 10                	mov    (%eax),%edx
5ca70d:	85 d2                	test   %edx,%edx
5ca70f:	74 0d                	je     0x5ca71e
5ca711:	8b 41 2c             	mov    0x2c(%ecx),%eax
5ca714:	83 38 00             	cmpl   $0x0,(%eax)
5ca717:	7e 05                	jle    0x5ca71e
5ca719:	0f b6 12             	movzbl (%edx),%edx
5ca71c:	eb 07                	jmp    0x5ca725
5ca71e:	8b 01                	mov    (%ecx),%eax
5ca720:	ff 50 18             	call   *0x18(%eax)
5ca723:	8b d0                	mov    %eax,%edx
5ca725:	89 55 e4             	mov    %edx,-0x1c(%ebp)
5ca728:	85 ff                	test   %edi,%edi
5ca72a:	0f 84 2f 01 00 00    	je     0x5ca85f
5ca730:	83 fa ff             	cmp    $0xffffffff,%edx
5ca733:	75 08                	jne    0x5ca73d
5ca735:	8d 72 02             	lea    0x2(%edx),%esi
5ca738:	e9 45 01 00 00       	jmp    0x5ca882
5ca73d:	8b 45 d8             	mov    -0x28(%ebp),%eax
5ca740:	0f b6 ca             	movzbl %dl,%ecx
5ca743:	8b 40 0c             	mov    0xc(%eax),%eax
5ca746:	f6 04 48 48          	testb  $0x48,(%eax,%ecx,2)
5ca74a:	0f 85 0f 01 00 00    	jne    0x5ca85f
5ca750:	8b 4e 14             	mov    0x14(%esi),%ecx
5ca753:	8b 5e 10             	mov    0x10(%esi),%ebx
5ca756:	89 4d e0             	mov    %ecx,-0x20(%ebp)
5ca759:	3b d9                	cmp    %ecx,%ebx
5ca75b:	73 1c                	jae    0x5ca779
5ca75d:	8d 43 01             	lea    0x1(%ebx),%eax
5ca760:	89 46 10             	mov    %eax,0x10(%esi)
5ca763:	8b c6                	mov    %esi,%eax
5ca765:	83 f9 10             	cmp    $0x10,%ecx
5ca768:	72 02                	jb     0x5ca76c
5ca76a:	8b 06                	mov    (%esi),%eax
5ca76c:	88 14 18             	mov    %dl,(%eax,%ebx,1)
5ca76f:	c6 44 18 01 00       	movb   $0x0,0x1(%eax,%ebx,1)
5ca774:	e9 c8 00 00 00       	jmp    0x5ca841
5ca779:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
5ca77e:	2b c3                	sub    %ebx,%eax
5ca780:	83 f8 01             	cmp    $0x1,%eax
5ca783:	0f 82 77 01 00 00    	jb     0x5ca900
5ca789:	8d 7b 01             	lea    0x1(%ebx),%edi
5ca78c:	83 cf 0f             	or     $0xf,%edi
5ca78f:	81 ff ff ff ff 7f    	cmp    $0x7fffffff,%edi
5ca795:	76 07                	jbe    0x5ca79e
5ca797:	bf ff ff ff 7f       	mov    $0x7fffffff,%edi
5ca79c:	eb 1e                	jmp    0x5ca7bc
5ca79e:	8b d1                	mov    %ecx,%edx
5ca7a0:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
5ca7a5:	d1 ea                	shr    $1,%edx
5ca7a7:	2b c2                	sub    %edx,%eax
5ca7a9:	3b c8                	cmp    %eax,%ecx
5ca7ab:	76 07                	jbe    0x5ca7b4
5ca7ad:	bf ff ff ff 7f       	mov    $0x7fffffff,%edi
5ca7b2:	eb 08                	jmp    0x5ca7bc
5ca7b4:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
5ca7b7:	3b f8                	cmp    %eax,%edi
5ca7b9:	0f 42 f8             	cmovb  %eax,%edi
5ca7bc:	8d 47 01             	lea    0x1(%edi),%eax
5ca7bf:	8b ce                	mov    %esi,%ecx
5ca7c1:	50                   	push   %eax
5ca7c2:	e8 89 ec e6 ff       	call   0x439450
5ca7c7:	83 7d e0 10          	cmpl   $0x10,-0x20(%ebp)
5ca7cb:	8d 4b 01             	lea    0x1(%ebx),%ecx
5ca7ce:	89 7e 14             	mov    %edi,0x14(%esi)
5ca7d1:	89 45 dc             	mov    %eax,-0x24(%ebp)
5ca7d4:	8d 3c 18             	lea    (%eax,%ebx,1),%edi
5ca7d7:	89 4e 10             	mov    %ecx,0x10(%esi)
5ca7da:	89 7d d4             	mov    %edi,-0x2c(%ebp)
5ca7dd:	53                   	push   %ebx
5ca7de:	72 46                	jb     0x5ca826
5ca7e0:	8b 3e                	mov    (%esi),%edi
5ca7e2:	57                   	push   %edi
5ca7e3:	50                   	push   %eax
5ca7e4:	e8 17 87 01 00       	call   0x5e2f00
5ca7e9:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
5ca7ec:	83 c4 0c             	add    $0xc,%esp
5ca7ef:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5ca7f2:	88 01                	mov    %al,(%ecx)
5ca7f4:	c6 41 01 00          	movb   $0x0,0x1(%ecx)
5ca7f8:	8b 4d e0             	mov    -0x20(%ebp),%ecx
5ca7fb:	41                   	inc    %ecx
5ca7fc:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5ca802:	72 16                	jb     0x5ca81a
5ca804:	8b 57 fc             	mov    -0x4(%edi),%edx
5ca807:	83 c1 23             	add    $0x23,%ecx
5ca80a:	2b fa                	sub    %edx,%edi
5ca80c:	8d 47 fc             	lea    -0x4(%edi),%eax
5ca80f:	83 f8 1f             	cmp    $0x1f,%eax
5ca812:	0f 87 ed 00 00 00    	ja     0x5ca905
5ca818:	8b fa                	mov    %edx,%edi
5ca81a:	51                   	push   %ecx
5ca81b:	57                   	push   %edi
5ca81c:	e8 51 68 01 00       	call   0x5e1072
5ca821:	83 c4 08             	add    $0x8,%esp
5ca824:	eb 13                	jmp    0x5ca839
5ca826:	56                   	push   %esi
5ca827:	50                   	push   %eax
5ca828:	e8 d3 86 01 00       	call   0x5e2f00
5ca82d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5ca830:	83 c4 0c             	add    $0xc,%esp
5ca833:	88 07                	mov    %al,(%edi)
5ca835:	c6 47 01 00          	movb   $0x0,0x1(%edi)
5ca839:	8b 45 dc             	mov    -0x24(%ebp),%eax
5ca83c:	8b 7d e8             	mov    -0x18(%ebp),%edi
5ca83f:	89 06                	mov    %eax,(%esi)
5ca841:	8b 5d 08             	mov    0x8(%ebp),%ebx
5ca844:	4f                   	dec    %edi
5ca845:	c6 45 ef 01          	movb   $0x1,-0x11(%ebp)
5ca849:	89 7d e8             	mov    %edi,-0x18(%ebp)
5ca84c:	8b 03                	mov    (%ebx),%eax
5ca84e:	8b 48 04             	mov    0x4(%eax),%ecx
5ca851:	8b 4c 19 38          	mov    0x38(%ecx,%ebx,1),%ecx
5ca855:	e8 76 34 ed ff       	call   0x49dcd0
5ca85a:	e9 c4 fe ff ff       	jmp    0x5ca723
5ca85f:	33 f6                	xor    %esi,%esi
5ca861:	eb 1f                	jmp    0x5ca882
5ca863:	8b 55 08             	mov    0x8(%ebp),%edx
5ca866:	6a 01                	push   $0x1
5ca868:	6a 04                	push   $0x4
5ca86a:	8b 02                	mov    (%edx),%eax
5ca86c:	8b 48 04             	mov    0x4(%eax),%ecx
5ca86f:	03 ca                	add    %edx,%ecx
5ca871:	e8 1a 71 e8 ff       	call   0x451990
5ca876:	b8 7c a8 5c 00       	mov    $0x5ca87c,%eax
5ca87b:	c3                   	ret
5ca87c:	8b 75 cc             	mov    -0x34(%ebp),%esi
5ca87f:	8b 5d 08             	mov    0x8(%ebp),%ebx
5ca882:	8b 7d c0             	mov    -0x40(%ebp),%edi
5ca885:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
5ca88c:	80 7d ef 00          	cmpb   $0x0,-0x11(%ebp)
5ca890:	8b 03                	mov    (%ebx),%eax
5ca892:	8b 40 04             	mov    0x4(%eax),%eax
5ca895:	c7 44 18 20 00 00 00 	movl   $0x0,0x20(%eax,%ebx,1)
5ca89c:	00
5ca89d:	c7 44 18 24 00 00 00 	movl   $0x0,0x24(%eax,%ebx,1)
5ca8a4:	00
5ca8a5:	75 03                	jne    0x5ca8aa
5ca8a7:	83 ce 02             	or     $0x2,%esi
5ca8aa:	8b 03                	mov    (%ebx),%eax
5ca8ac:	b9 04 00 00 00       	mov    $0x4,%ecx
5ca8b1:	8b 50 04             	mov    0x4(%eax),%edx
5ca8b4:	8b 44 1a 0c          	mov    0xc(%edx,%ebx,1),%eax
5ca8b8:	03 d3                	add    %ebx,%edx
5ca8ba:	0b c6                	or     %esi,%eax
5ca8bc:	33 f6                	xor    %esi,%esi
5ca8be:	39 72 38             	cmp    %esi,0x38(%edx)
5ca8c1:	0f 45 ce             	cmovne %esi,%ecx
5ca8c4:	0b c8                	or     %eax,%ecx
5ca8c6:	8b 42 10             	mov    0x10(%edx),%eax
5ca8c9:	83 e1 17             	and    $0x17,%ecx
5ca8cc:	89 4a 0c             	mov    %ecx,0xc(%edx)
5ca8cf:	23 c1                	and    %ecx,%eax
5ca8d1:	75 37                	jne    0x5ca90a
5ca8d3:	8b 07                	mov    (%edi),%eax
5ca8d5:	c7 45 fc 05 00 00 00 	movl   $0x5,-0x4(%ebp)
5ca8dc:	8b 40 04             	mov    0x4(%eax),%eax
5ca8df:	8b 4c 38 38          	mov    0x38(%eax,%edi,1),%ecx
5ca8e3:	85 c9                	test   %ecx,%ecx
5ca8e5:	74 05                	je     0x5ca8ec
5ca8e7:	8b 11                	mov    (%ecx),%edx
5ca8e9:	ff 52 08             	call   *0x8(%edx)
5ca8ec:	8b c3                	mov    %ebx,%eax
5ca8ee:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5ca8f1:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5ca8f8:	59                   	pop    %ecx
5ca8f9:	5f                   	pop    %edi
5ca8fa:	5e                   	pop    %esi
5ca8fb:	5b                   	pop    %ebx
5ca8fc:	8b e5                	mov    %ebp,%esp
5ca8fe:	5d                   	pop    %ebp
5ca8ff:	c3                   	ret
5ca900:	e8 2b a7 e7 ff       	call   0x445030
5ca905:	e8 25 26 02 00       	call   0x5ecf2f
5ca90a:	a8 04                	test   $0x4,%al
5ca90c:	74 07                	je     0x5ca915
5ca90e:	be 34 c4 68 00       	mov    $0x68c434,%esi
5ca913:	eb 0f                	jmp    0x5ca924
5ca915:	a8 02                	test   $0x2,%al
5ca917:	be 4c c4 68 00       	mov    $0x68c44c,%esi
5ca91c:	b8 64 c4 68 00       	mov    $0x68c464,%eax
5ca921:	0f 44 f0             	cmove  %eax,%esi
5ca924:	8d 45 c8             	lea    -0x38(%ebp),%eax
5ca927:	6a 01                	push   $0x1
5ca929:	50                   	push   %eax
5ca92a:	e8 a1 f6 e6 ff       	call   0x439fd0
5ca92f:	83 c4 08             	add    $0x8,%esp
5ca932:	8d 4d ac             	lea    -0x54(%ebp),%ecx
5ca935:	50                   	push   %eax
5ca936:	56                   	push   %esi
5ca937:	e8 b4 fb e6 ff       	call   0x43a4f0
5ca93c:	68 0c 60 70 00       	push   $0x70600c
5ca941:	8d 45 ac             	lea    -0x54(%ebp),%eax
5ca944:	50                   	push   %eax
5ca945:	e8 e8 80 01 00       	call   0x5e2a32
5ca94a:	cc                   	int3
5ca94b:	cc                   	int3
5ca94c:	cc                   	int3
5ca94d:	cc                   	int3
5ca94e:	cc                   	int3
5ca94f:	cc                   	int3
5ca950:	55                   	push   %ebp
5ca951:	8b ec                	mov    %esp,%ebp
5ca953:	51                   	push   %ecx
5ca954:	57                   	push   %edi
5ca955:	8b 7d 0c             	mov    0xc(%ebp),%edi
5ca958:	8b c1                	mov    %ecx,%eax
5ca95a:	89 45 fc             	mov    %eax,-0x4(%ebp)
5ca95d:	80 7f 0d 00          	cmpb   $0x0,0xd(%edi)
5ca961:	75 6e                	jne    0x5ca9d1
5ca963:	53                   	push   %ebx
5ca964:	8b 5d 08             	mov    0x8(%ebp),%ebx
5ca967:	56                   	push   %esi
5ca968:	ff 77 08             	push   0x8(%edi)
5ca96b:	8b c8                	mov    %eax,%ecx
5ca96d:	53                   	push   %ebx
5ca96e:	e8 dd ff ff ff       	call   0x5ca950
5ca973:	8b f7                	mov    %edi,%esi
5ca975:	8b 3f                	mov    (%edi),%edi
5ca977:	8b 4e 28             	mov    0x28(%esi),%ecx
5ca97a:	83 f9 10             	cmp    $0x10,%ecx
5ca97d:	72 28                	jb     0x5ca9a7
5ca97f:	8b 46 14             	mov    0x14(%esi),%eax
5ca982:	41                   	inc    %ecx
5ca983:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
5ca989:	72 12                	jb     0x5ca99d
5ca98b:	8b 50 fc             	mov    -0x4(%eax),%edx
5ca98e:	83 c1 23             	add    $0x23,%ecx
5ca991:	2b c2                	sub    %edx,%eax
5ca993:	83 c0 fc             	add    $0xfffffffc,%eax
5ca996:	83 f8 1f             	cmp    $0x1f,%eax
5ca999:	77 3d                	ja     0x5ca9d8
5ca99b:	8b c2                	mov    %edx,%eax
5ca99d:	51                   	push   %ecx
5ca99e:	50                   	push   %eax
5ca99f:	e8 ce 66 01 00       	call   0x5e1072
5ca9a4:	83 c4 08             	add    $0x8,%esp
5ca9a7:	6a 2c                	push   $0x2c
5ca9a9:	56                   	push   %esi
5ca9aa:	c7 46 24 00 00 00 00 	movl   $0x0,0x24(%esi)
5ca9b1:	c7 46 28 0f 00 00 00 	movl   $0xf,0x28(%esi)
5ca9b8:	c6 46 14 00          	movb   $0x0,0x14(%esi)
5ca9bc:	e8 b1 66 01 00       	call   0x5e1072
5ca9c1:	83 c4 08             	add    $0x8,%esp
5ca9c4:	80 7f 0d 00          	cmpb   $0x0,0xd(%edi)
5ca9c8:	75 05                	jne    0x5ca9cf
5ca9ca:	8b 45 fc             	mov    -0x4(%ebp),%eax
5ca9cd:	eb 99                	jmp    0x5ca968
5ca9cf:	5e                   	pop    %esi
5ca9d0:	5b                   	pop    %ebx
5ca9d1:	5f                   	pop    %edi
5ca9d2:	8b e5                	mov    %ebp,%esp
5ca9d4:	5d                   	pop    %ebp
5ca9d5:	c2 08 00             	ret    $0x8
5ca9d8:	e8 52 25 02 00       	call   0x5ecf2f
5ca9dd:	cc                   	int3
5ca9de:	cc                   	int3
5ca9df:	cc                   	int3
5ca9e0:	55                   	push   %ebp
5ca9e1:	8b ec                	mov    %esp,%ebp
5ca9e3:	83 ec 14             	sub    $0x14,%esp
5ca9e6:	53                   	push   %ebx
5ca9e7:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5ca9ea:	8b c1                	mov    %ecx,%eax
5ca9ec:	56                   	push   %esi
5ca9ed:	57                   	push   %edi
5ca9ee:	89 45 fc             	mov    %eax,-0x4(%ebp)
5ca9f1:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
5ca9f5:	8b 08                	mov    (%eax),%ecx
5ca9f7:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5ca9fa:	74 62                	je     0x5caa5e
5ca9fc:	8b 41 04             	mov    0x4(%ecx),%eax
5ca9ff:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
5caa03:	75 3d                	jne    0x5caa42
5caa05:	8b 7d 10             	mov    0x10(%ebp),%edi
5caa08:	8b d7                	mov    %edi,%edx
5caa0a:	8b 41 08             	mov    0x8(%ecx),%eax
5caa0d:	8b 5f 14             	mov    0x14(%edi),%ebx
5caa10:	83 fb 10             	cmp    $0x10,%ebx
5caa13:	72 02                	jb     0x5caa17
5caa15:	8b 17                	mov    (%edi),%edx
5caa17:	83 78 24 10          	cmpl   $0x10,0x24(%eax)
5caa1b:	8d 48 10             	lea    0x10(%eax),%ecx
5caa1e:	72 03                	jb     0x5caa23
5caa20:	8b 48 10             	mov    0x10(%eax),%ecx
5caa23:	8b 77 10             	mov    0x10(%edi),%esi
5caa26:	56                   	push   %esi
5caa27:	52                   	push   %edx
5caa28:	ff 70 20             	push   0x20(%eax)
5caa2b:	89 75 0c             	mov    %esi,0xc(%ebp)
5caa2e:	51                   	push   %ecx
5caa2f:	e8 0c c7 e7 ff       	call   0x447140
5caa34:	83 c4 10             	add    $0x10,%esp
5caa37:	85 c0                	test   %eax,%eax
5caa39:	0f 89 ab 01 00 00    	jns    0x5cabea
5caa3f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
5caa42:	8b 45 08             	mov    0x8(%ebp),%eax
5caa45:	8b 49 08             	mov    0x8(%ecx),%ecx
5caa48:	5f                   	pop    %edi
5caa49:	5e                   	pop    %esi
5caa4a:	89 08                	mov    %ecx,(%eax)
5caa4c:	c6 40 08 00          	movb   $0x0,0x8(%eax)
5caa50:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
5caa57:	5b                   	pop    %ebx