424773:	0b c8                	or     %eax,%ecx
424775:	51                   	push   %ecx
424776:	e8 93 92 06 00       	call   0x48da0e
42477b:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
42477f:	8b d8                	mov    %eax,%ebx
424781:	89 45 f4             	mov    %eax,-0xc(%ebp)
424784:	59                   	pop    %ecx
424785:	85 f6                	test   %esi,%esi
424787:	74 2e                	je     0x4247b7
424789:	ff 75 08             	push   0x8(%ebp)
42478c:	8d 45 f0             	lea    -0x10(%ebp),%eax
42478f:	50                   	push   %eax
424790:	ff 75 ec             	push   -0x14(%ebp)
424793:	57                   	push   %edi
424794:	53                   	push   %ebx
424795:	e8 70 99 06 00       	call   0x48e10a
42479a:	83 c4 14             	add    $0x14,%esp
42479d:	85 c0                	test   %eax,%eax
42479f:	7e 0a                	jle    0x4247ab
4247a1:	03 f8                	add    %eax,%edi
4247a3:	83 c3 02             	add    $0x2,%ebx
4247a6:	83 ee 01             	sub    $0x1,%esi
4247a9:	75 de                	jne    0x424789
4247ab:	8b 45 f4             	mov    -0xc(%ebp),%eax
4247ae:	85 f6                	test   %esi,%esi
4247b0:	74 05                	je     0x4247b7
4247b2:	33 c9                	xor    %ecx,%ecx
4247b4:	66 89 0b             	mov    %cx,(%ebx)
4247b7:	5f                   	pop    %edi
4247b8:	5e                   	pop    %esi
4247b9:	5b                   	pop    %ebx
4247ba:	c9                   	leave
4247bb:	c3                   	ret
4247bc:	8b ff                	mov    %edi,%edi
4247be:	55                   	push   %ebp
4247bf:	8b ec                	mov    %esp,%ebp
4247c1:	57                   	push   %edi
4247c2:	8b f9                	mov    %ecx,%edi
4247c4:	33 c9                	xor    %ecx,%ecx
4247c6:	8b 47 24             	mov    0x24(%edi),%eax
4247c9:	39 08                	cmp    %ecx,(%eax)
4247cb:	74 05                	je     0x4247d2
4247cd:	8b 47 34             	mov    0x34(%edi),%eax
4247d0:	8b 08                	mov    (%eax),%ecx
4247d2:	85 c9                	test   %ecx,%ecx
4247d4:	7e 17                	jle    0x4247ed
4247d6:	8b 47 34             	mov    0x34(%edi),%eax
4247d9:	ff 08                	decl   (%eax)
4247db:	8b 4f 24             	mov    0x24(%edi),%ecx
4247de:	8b 11                	mov    (%ecx),%edx
4247e0:	8d 42 02             	lea    0x2(%edx),%eax
4247e3:	89 01                	mov    %eax,(%ecx)
4247e5:	8b 45 08             	mov    0x8(%ebp),%eax
4247e8:	66 89 02             	mov    %ax,(%edx)
4247eb:	eb 16                	jmp    0x424803
4247ed:	8b 07                	mov    (%edi),%eax
4247ef:	56                   	push   %esi
4247f0:	ff 75 08             	push   0x8(%ebp)
4247f3:	8b 70 04             	mov    0x4(%eax),%esi
4247f6:	8b ce                	mov    %esi,%ecx
4247f8:	ff 15 2c 81 4a 00    	call   *0x4a812c
4247fe:	8b cf                	mov    %edi,%ecx
424800:	ff d6                	call   *%esi
424802:	5e                   	pop    %esi
424803:	0f b7 c0             	movzwl %ax,%eax
424806:	5f                   	pop    %edi
424807:	5d                   	pop    %ebp
424808:	c2 04 00             	ret    $0x4
42480b:	8b ff                	mov    %edi,%edi
42480d:	55                   	push   %ebp
42480e:	8b ec                	mov    %esp,%ebp
424810:	83 ec 0c             	sub    $0xc,%esp
424813:	ff 75 08             	push   0x8(%ebp)
424816:	33 c0                	xor    %eax,%eax
424818:	88 4d fc             	mov    %cl,-0x4(%ebp)
42481b:	21 45 f4             	and    %eax,-0xc(%ebp)
42481e:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
424822:	8d 45 f4             	lea    -0xc(%ebp),%eax
424825:	50                   	push   %eax
424826:	6a 01                	push   $0x1
424828:	8d 45 fc             	lea    -0x4(%ebp),%eax
42482b:	50                   	push   %eax
42482c:	8d 45 f8             	lea    -0x8(%ebp),%eax
42482f:	50                   	push   %eax
424830:	e8 d5 98 06 00       	call   0x48e10a
424835:	66 8b 45 f8          	mov    -0x8(%ebp),%ax
424839:	83 c4 14             	add    $0x14,%esp
42483c:	c9                   	leave
42483d:	c3                   	ret
42483e:	8b ff                	mov    %edi,%edi
424840:	55                   	push   %ebp
424841:	8b ec                	mov    %esp,%ebp
424843:	6a ff                	push   $0xffffffff
424845:	68 76 14 49 00       	push   $0x491476
42484a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
424850:	50                   	push   %eax
424851:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
424856:	33 c5                	xor    %ebp,%eax
424858:	50                   	push   %eax
424859:	8d 45 f4             	lea    -0xc(%ebp),%eax
42485c:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
424862:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
424866:	8b 09                	mov    (%ecx),%ecx
424868:	8b 01                	mov    (%ecx),%eax
42486a:	8b 40 04             	mov    0x4(%eax),%eax
42486d:	8b 4c 08 28          	mov    0x28(%eax,%ecx,1),%ecx
424871:	85 c9                	test   %ecx,%ecx
424873:	74 08                	je     0x42487d
424875:	83 c1 04             	add    $0x4,%ecx
424878:	e8 ca 93 06 00       	call   0x48dc47
42487d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
424880:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
424887:	59                   	pop    %ecx
424888:	c9                   	leave
424889:	c3                   	ret
42488a:	8b ff                	mov    %edi,%edi
42488c:	55                   	push   %ebp
42488d:	8b ec                	mov    %esp,%ebp
42488f:	6a ff                	push   $0xffffffff
424891:	68 85 10 49 00       	push   $0x491085
424896:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
42489c:	50                   	push   %eax
42489d:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
4248a2:	33 c5                	xor    %ebp,%eax
4248a4:	50                   	push   %eax
4248a5:	8d 45 f4             	lea    -0xc(%ebp),%eax
4248a8:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4248ae:	8b 09                	mov    (%ecx),%ecx
4248b0:	8b 01                	mov    (%ecx),%eax
4248b2:	8b 40 04             	mov    0x4(%eax),%eax
4248b5:	8b 4c 08 28          	mov    0x28(%eax,%ecx,1),%ecx
4248b9:	85 c9                	test   %ecx,%ecx
4248bb:	74 08                	je     0x4248c5
4248bd:	83 c1 04             	add    $0x4,%ecx
4248c0:	e8 82 93 06 00       	call   0x48dc47
4248c5:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4248c8:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4248cf:	59                   	pop    %ecx
4248d0:	c9                   	leave
4248d1:	c3                   	ret
4248d2:	8b ff                	mov    %edi,%edi
4248d4:	57                   	push   %edi
4248d5:	8b f9                	mov    %ecx,%edi
4248d7:	33 c9                	xor    %ecx,%ecx
4248d9:	8b 47 20             	mov    0x20(%edi),%eax
4248dc:	39 08                	cmp    %ecx,(%eax)
4248de:	74 05                	je     0x4248e5
4248e0:	8b 47 30             	mov    0x30(%edi),%eax
4248e3:	8b 08                	mov    (%eax),%ecx
4248e5:	85 c9                	test   %ecx,%ecx
4248e7:	7e 14                	jle    0x4248fd
4248e9:	8b 47 30             	mov    0x30(%edi),%eax
4248ec:	ff 08                	decl   (%eax)
4248ee:	8b 4f 20             	mov    0x20(%edi),%ecx
4248f1:	5f                   	pop    %edi
4248f2:	8b 11                	mov    (%ecx),%edx
4248f4:	8d 42 02             	lea    0x2(%edx),%eax
4248f7:	89 01                	mov    %eax,(%ecx)
4248f9:	0f b7 02             	movzwl (%edx),%eax
4248fc:	c3                   	ret
4248fd:	8b 07                	mov    (%edi),%eax
4248ff:	56                   	push   %esi
424900:	8b 70 14             	mov    0x14(%eax),%esi
424903:	8b ce                	mov    %esi,%ecx
424905:	ff 15 2c 81 4a 00    	call   *0x4a812c
42490b:	8b cf                	mov    %edi,%ecx
42490d:	ff d6                	call   *%esi
42490f:	5e                   	pop    %esi
424910:	0f b7 c0             	movzwl %ax,%eax
424913:	5f                   	pop    %edi
424914:	c3                   	ret
424915:	8b ff                	mov    %edi,%edi
424917:	57                   	push   %edi
424918:	8b f9                	mov    %ecx,%edi
42491a:	8b 47 20             	mov    0x20(%edi),%eax
42491d:	8b 08                	mov    (%eax),%ecx
42491f:	85 c9                	test   %ecx,%ecx
424921:	74 07                	je     0x42492a
424923:	8b 47 30             	mov    0x30(%edi),%eax
424926:	8b 00                	mov    (%eax),%eax
424928:	eb 02                	jmp    0x42492c
42492a:	33 c0                	xor    %eax,%eax
42492c:	85 c0                	test   %eax,%eax
42492e:	7e 05                	jle    0x424935
424930:	0f b7 01             	movzwl (%ecx),%eax
424933:	5f                   	pop    %edi
424934:	c3                   	ret
424935:	8b 07                	mov    (%edi),%eax
424937:	56                   	push   %esi
424938:	8b 70 10             	mov    0x10(%eax),%esi
42493b:	8b ce                	mov    %esi,%ecx
42493d:	ff 15 2c 81 4a 00    	call   *0x4a812c
424943:	8b cf                	mov    %edi,%ecx
424945:	ff d6                	call   *%esi
424947:	5e                   	pop    %esi
424948:	0f b7 c0             	movzwl %ax,%eax
42494b:	5f                   	pop    %edi
42494c:	c3                   	ret
42494d:	8b ff                	mov    %edi,%edi
42494f:	56                   	push   %esi
424950:	8b f1                	mov    %ecx,%esi
424952:	33 c9                	xor    %ecx,%ecx
424954:	8b 46 20             	mov    0x20(%esi),%eax
424957:	39 08                	cmp    %ecx,(%eax)
424959:	74 05                	je     0x424960
42495b:	8b 46 30             	mov    0x30(%esi),%eax
42495e:	8b 08                	mov    (%eax),%ecx
424960:	83 f9 01             	cmp    $0x1,%ecx
424963:	7e 14                	jle    0x424979
424965:	8b 46 30             	mov    0x30(%esi),%eax
424968:	ff 08                	decl   (%eax)
42496a:	8b 46 20             	mov    0x20(%esi),%eax
42496d:	8b 08                	mov    (%eax),%ecx
42496f:	83 c1 02             	add    $0x2,%ecx
424972:	89 08                	mov    %ecx,(%eax)
424974:	0f b7 09             	movzwl (%ecx),%ecx
424977:	eb 1b                	jmp    0x424994
424979:	8b ce                	mov    %esi,%ecx
42497b:	e8 52 ff ff ff       	call   0x4248d2
424980:	b9 ff ff 00 00       	mov    $0xffff,%ecx
424985:	66 3b c8             	cmp    %ax,%cx
424988:	74 0a                	je     0x424994
42498a:	8b ce                	mov    %esi,%ecx
42498c:	e8 84 ff ff ff       	call   0x424915
424991:	0f b7 c8             	movzwl %ax,%ecx
424994:	66 8b c1             	mov    %cx,%ax
424997:	5e                   	pop    %esi
424998:	c3                   	ret
424999:	6a 0c                	push   $0xc
42499b:	b8 df 1d 49 00       	mov    $0x491ddf,%eax
4249a0:	e8 97 bb 06 00       	call   0x49053c
4249a5:	8b f9                	mov    %ecx,%edi
4249a7:	8b 07                	mov    (%edi),%eax
4249a9:	89 7d e8             	mov    %edi,-0x18(%ebp)
4249ac:	8b 48 04             	mov    0x4(%eax),%ecx
4249af:	83 7c 39 08 00       	cmpl   $0x0,0x8(%ecx,%edi,1)
4249b4:	0f 85 04 01 00 00    	jne    0x424abe
4249ba:	8b 4c 39 2c          	mov    0x2c(%ecx,%edi,1),%ecx
4249be:	85 c9                	test   %ecx,%ecx
4249c0:	74 07                	je     0x4249c9
4249c2:	e8 fc 01 00 00       	call   0x424bc3
4249c7:	8b 07                	mov    (%edi),%eax
4249c9:	8b 48 04             	mov    0x4(%eax),%ecx
4249cc:	f6 44 39 10 01       	testb  $0x1,0x10(%ecx,%edi,1)
4249d1:	0f 84 d7 00 00 00    	je     0x424aae
4249d7:	8b 4c 39 24          	mov    0x24(%ecx,%edi,1),%ecx
4249db:	8b 09                	mov    (%ecx),%ecx
4249dd:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4249e0:	e8 c1 6e ff ff       	call   0x41b8a6
4249e5:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4249e9:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4249ec:	e8 ba 6b ff ff       	call   0x41b5ab
4249f1:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4249f4:	8b d8                	mov    %eax,%ebx
4249f6:	e8 78 72 ff ff       	call   0x41bc73
4249fb:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
424a02:	8b 0f                	mov    (%edi),%ecx
424a04:	8b 49 04             	mov    0x4(%ecx),%ecx
424a07:	8b 4c 39 28          	mov    0x28(%ecx,%edi,1),%ecx
424a0b:	e8 05 ff ff ff       	call   0x424915
424a10:	0f b7 c0             	movzwl %ax,%eax
424a13:	8b c8                	mov    %eax,%ecx
424a15:	b8 ff ff 00 00       	mov    $0xffff,%eax
424a1a:	66 3b c1             	cmp    %cx,%ax
424a1d:	75 2d                	jne    0x424a4c
424a1f:	8b 07                	mov    (%edi),%eax
424a21:	8b 48 04             	mov    0x4(%eax),%ecx
424a24:	33 c0                	xor    %eax,%eax
424a26:	03 cf                	add    %edi,%ecx
424a28:	39 41 28             	cmp    %eax,0x28(%ecx)
424a2b:	0f 94 c0             	sete   %al
424a2e:	8d 04 85 01 00 00 00 	lea    0x1(,%eax,4),%eax
424a35:	0b 41 08             	or     0x8(%ecx),%eax
424a38:	83 e0 17             	and    $0x17,%eax
424a3b:	89 41 08             	mov    %eax,0x8(%ecx)
424a3e:	85 41 0c             	test   %eax,0xc(%ecx)
424a41:	74 67                	je     0x424aaa
424a43:	6a 00                	push   $0x0
424a45:	e8 c1 6d ff ff       	call   0x41b80b
424a4a:	eb 5e                	jmp    0x424aaa
424a4c:	8b 03                	mov    (%ebx),%eax
424a4e:	51                   	push   %ecx
424a4f:	6a 48                	push   $0x48
424a51:	8b 70 08             	mov    0x8(%eax),%esi
424a54:	8b ce                	mov    %esi,%ecx
424a56:	ff 15 2c 81 4a 00    	call   *0x4a812c
424a5c:	8b cb                	mov    %ebx,%ecx
424a5e:	ff d6                	call   *%esi
424a60:	84 c0                	test   %al,%al
424a62:	74 46                	je     0x424aaa
424a64:	8b 07                	mov    (%edi),%eax
424a66:	8b 40 04             	mov    0x4(%eax),%eax
424a69:	8b 4c 38 28          	mov    0x28(%eax,%edi,1),%ecx
424a6d:	e8 db fe ff ff       	call   0x42494d
424a72:	eb 9c                	jmp    0x424a10
424a74:	8b 4d e8             	mov    -0x18(%ebp),%ecx
424a77:	8b 01                	mov    (%ecx),%eax
424a79:	8b 50 04             	mov    0x4(%eax),%edx
424a7c:	03 d1                	add    %ecx,%edx
424a7e:	8b 42 08             	mov    0x8(%edx),%eax
424a81:	83 c8 04             	or     $0x4,%eax
424a84:	83 7a 28 00          	cmpl   $0x0,0x28(%edx)
424a88:	75 03                	jne    0x424a8d
424a8a:	83 c8 04             	or     $0x4,%eax
424a8d:	83 e0 17             	and    $0x17,%eax
424a90:	89 42 08             	mov    %eax,0x8(%edx)
424a93:	85 42 0c             	test   %eax,0xc(%edx)
424a96:	74 09                	je     0x424aa1
424a98:	6a 01                	push   $0x1
424a9a:	8b ca                	mov    %edx,%ecx
424a9c:	e8 6a 6d ff ff       	call   0x41b80b
424aa1:	b8 a7 4a 42 00       	mov    $0x424aa7,%eax
424aa6:	c3                   	ret
424aa7:	8b 7d e8             	mov    -0x18(%ebp),%edi
424aaa:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
424aae:	8b 07                	mov    (%edi),%eax
424ab0:	8b 48 04             	mov    0x4(%eax),%ecx
424ab3:	83 7c 39 08 00       	cmpl   $0x0,0x8(%ecx,%edi,1)
424ab8:	75 04                	jne    0x424abe
424aba:	b0 01                	mov    $0x1,%al
424abc:	eb 2b                	jmp    0x424ae9
424abe:	8b 48 04             	mov    0x4(%eax),%ecx
424ac1:	33 c0                	xor    %eax,%eax
424ac3:	03 cf                	add    %edi,%ecx
424ac5:	39 41 28             	cmp    %eax,0x28(%ecx)
424ac8:	0f 94 c0             	sete   %al
424acb:	8d 04 85 02 00 00 00 	lea    0x2(,%eax,4),%eax
424ad2:	0b 41 08             	or     0x8(%ecx),%eax
424ad5:	83 e0 17             	and    $0x17,%eax
424ad8:	89 41 08             	mov    %eax,0x8(%ecx)
424adb:	85 41 0c             	test   %eax,0xc(%ecx)
424ade:	74 07                	je     0x424ae7
424ae0:	6a 00                	push   $0x0
424ae2:	e8 24 6d ff ff       	call   0x41b80b
424ae7:	32 c0                	xor    %al,%al
424ae9:	e8 b3 b9 06 00       	call   0x4904a1
424aee:	c2 04 00             	ret    $0x4
424af1:	6a 04                	push   $0x4
424af3:	b8 02 1e 49 00       	mov    $0x491e02,%eax
424af8:	e8 d6 b9 06 00       	call   0x4904d3
424afd:	8b f1                	mov    %ecx,%esi
424aff:	89 75 f0             	mov    %esi,-0x10(%ebp)
424b02:	8b 55 08             	mov    0x8(%ebp),%edx
424b05:	89 16                	mov    %edx,(%esi)
424b07:	8b 02                	mov    (%edx),%eax
424b09:	8b 40 04             	mov    0x4(%eax),%eax
424b0c:	8b 4c 10 28          	mov    0x28(%eax,%edx,1),%ecx
424b10:	85 c9                	test   %ecx,%ecx
424b12:	74 08                	je     0x424b1c
424b14:	83 c1 04             	add    $0x4,%ecx