4937d8:	8b 06                	mov    (%esi),%eax
4937da:	83 e0 3f             	and    $0x3f,%eax
4937dd:	6b c8 38             	imul   $0x38,%eax,%ecx
4937e0:	8b 04 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%eax
4937e7:	88 5c 08 28          	mov    %bl,0x28(%eax,%ecx,1)
4937eb:	ff 36                	push   (%esi)
4937ed:	e8 e8 c8 ff ff       	call   0x4900da
4937f2:	59                   	pop    %ecx
4937f3:	c3                   	ret
4937f4:	8b ff                	mov    %edi,%edi
4937f6:	55                   	push   %ebp
4937f7:	8b ec                	mov    %esp,%ebp
4937f9:	51                   	push   %ecx
4937fa:	51                   	push   %ecx
4937fb:	8b 45 08             	mov    0x8(%ebp),%eax
4937fe:	8b 55 08             	mov    0x8(%ebp),%edx
493801:	83 e0 3f             	and    $0x3f,%eax
493804:	53                   	push   %ebx
493805:	56                   	push   %esi
493806:	57                   	push   %edi
493807:	8b 7d 28             	mov    0x28(%ebp),%edi
49380a:	33 db                	xor    %ebx,%ebx
49380c:	c1 fa 06             	sar    $0x6,%edx
49380f:	6b c8 38             	imul   $0x38,%eax,%ecx
493812:	88 1f                	mov    %bl,(%edi)
493814:	8b 04 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%eax
49381b:	38 5c 08 28          	cmp    %bl,0x28(%eax,%ecx,1)
49381f:	0f 8d 13 02 00 00    	jge    0x493a38
493825:	8b 75 24             	mov    0x24(%ebp),%esi
493828:	f7 c6 00 40 07 00    	test   $0x74000,%esi
49382e:	75 25                	jne    0x493855
493830:	8d 45 fc             	lea    -0x4(%ebp),%eax
493833:	89 5d fc             	mov    %ebx,-0x4(%ebp)
493836:	50                   	push   %eax
493837:	e8 3f 00 ff ff       	call   0x48387b
49383c:	59                   	pop    %ecx
49383d:	85 c0                	test   %eax,%eax
49383f:	0f 85 fa 01 00 00    	jne    0x493a3f
493845:	8b 45 fc             	mov    -0x4(%ebp),%eax
493848:	25 00 40 07 00       	and    $0x74000,%eax
49384d:	75 49                	jne    0x493898
49384f:	81 ce 00 40 00 00    	or     $0x4000,%esi
493855:	8b c6                	mov    %esi,%eax
493857:	6a 02                	push   $0x2
493859:	25 00 40 07 00       	and    $0x74000,%eax
49385e:	59                   	pop    %ecx
49385f:	89 4d f8             	mov    %ecx,-0x8(%ebp)
493862:	3d 00 40 00 00       	cmp    $0x4000,%eax
493867:	74 44                	je     0x4938ad
493869:	3d 00 00 01 00       	cmp    $0x10000,%eax
49386e:	74 2c                	je     0x49389c
493870:	3d 00 40 01 00       	cmp    $0x14000,%eax
493875:	74 25                	je     0x49389c
493877:	3d 00 00 02 00       	cmp    $0x20000,%eax
49387c:	74 2b                	je     0x4938a9
49387e:	3d 00 40 02 00       	cmp    $0x24000,%eax
493883:	74 24                	je     0x4938a9
493885:	3d 00 00 04 00       	cmp    $0x40000,%eax
49388a:	74 07                	je     0x493893
49388c:	3d 00 40 04 00       	cmp    $0x44000,%eax
493891:	75 1c                	jne    0x4938af
493893:	c6 07 01             	movb   $0x1,(%edi)
493896:	eb 17                	jmp    0x4938af
493898:	0b f0                	or     %eax,%esi
49389a:	eb b9                	jmp    0x493855
49389c:	ba 01 03 00 00       	mov    $0x301,%edx
4938a1:	8b c6                	mov    %esi,%eax
4938a3:	23 c2                	and    %edx,%eax
4938a5:	3b c2                	cmp    %edx,%eax
4938a7:	75 06                	jne    0x4938af
4938a9:	88 0f                	mov    %cl,(%edi)
4938ab:	eb 02                	jmp    0x4938af
4938ad:	88 1f                	mov    %bl,(%edi)
4938af:	f7 c6 00 00 07 00    	test   $0x70000,%esi
4938b5:	0f 84 7d 01 00 00    	je     0x493a38
4938bb:	f6 45 0c 40          	testb  $0x40,0xc(%ebp)
4938bf:	0f 85 73 01 00 00    	jne    0x493a38
4938c5:	8b 45 10             	mov    0x10(%ebp),%eax
4938c8:	ba 00 00 00 c0       	mov    $0xc0000000,%edx
4938cd:	23 c2                	and    %edx,%eax
4938cf:	be 00 00 00 80       	mov    $0x80000000,%esi
4938d4:	3d 00 00 00 40       	cmp    $0x40000000,%eax
4938d9:	74 0c                	je     0x4938e7
4938db:	3b c6                	cmp    %esi,%eax
4938dd:	74 75                	je     0x493954
4938df:	3b c2                	cmp    %edx,%eax
4938e1:	0f 85 51 01 00 00    	jne    0x493a38
4938e7:	8b 45 14             	mov    0x14(%ebp),%eax
4938ea:	83 e8 01             	sub    $0x1,%eax
4938ed:	0f 84 fa 00 00 00    	je     0x4939ed
4938f3:	83 e8 01             	sub    $0x1,%eax
4938f6:	0f 84 f1 00 00 00    	je     0x4939ed
4938fc:	83 e8 01             	sub    $0x1,%eax
4938ff:	74 13                	je     0x493914
493901:	83 e8 01             	sub    $0x1,%eax
493904:	74 0e                	je     0x493914
493906:	83 e8 01             	sub    $0x1,%eax
493909:	0f 84 de 00 00 00    	je     0x4939ed
49390f:	e9 24 01 00 00       	jmp    0x493a38
493914:	51                   	push   %ecx
493915:	53                   	push   %ebx
493916:	53                   	push   %ebx
493917:	ff 75 08             	push   0x8(%ebp)
49391a:	e8 11 5e ff ff       	call   0x489730
49391f:	83 c4 10             	add    $0x10,%esp
493922:	0b c2                	or     %edx,%eax
493924:	0f 84 c0 00 00 00    	je     0x4939ea
49392a:	53                   	push   %ebx
49392b:	53                   	push   %ebx
49392c:	53                   	push   %ebx
49392d:	ff 75 08             	push   0x8(%ebp)
493930:	e8 fb 5d ff ff       	call   0x489730
493935:	23 c2                	and    %edx,%eax
493937:	83 c4 10             	add    $0x10,%esp
49393a:	83 f8 ff             	cmp    $0xffffffff,%eax
49393d:	75 0c                	jne    0x49394b
49393f:	e8 f1 65 fe ff       	call   0x479f35
493944:	8b 00                	mov    (%eax),%eax
493946:	e9 ef 00 00 00       	jmp    0x493a3a
49394b:	85 75 10             	test   %esi,0x10(%ebp)
49394e:	0f 84 e4 00 00 00    	je     0x493a38
493954:	6a 03                	push   $0x3
493956:	8d 45 fc             	lea    -0x4(%ebp),%eax
493959:	89 5d fc             	mov    %ebx,-0x4(%ebp)
49395c:	50                   	push   %eax
49395d:	ff 75 08             	push   0x8(%ebp)
493960:	e8 bd 59 ff ff       	call   0x489322
493965:	8b c8                	mov    %eax,%ecx
493967:	83 c4 0c             	add    $0xc,%esp
49396a:	85 c9                	test   %ecx,%ecx
49396c:	7f 05                	jg     0x493973
49396e:	83 f9 ff             	cmp    $0xffffffff,%ecx
493971:	74 cc                	je     0x49393f
493973:	8b 55 fc             	mov    -0x4(%ebp),%edx
493976:	6a 02                	push   $0x2
493978:	58                   	pop    %eax
493979:	3b c8                	cmp    %eax,%ecx
49397b:	74 15                	je     0x493992
49397d:	83 f9 03             	cmp    $0x3,%ecx
493980:	75 4e                	jne    0x4939d0
493982:	81 fa ef bb bf 00    	cmp    $0xbfbbef,%edx
493988:	75 08                	jne    0x493992
49398a:	c6 07 01             	movb   $0x1,(%edi)
49398d:	e9 a6 00 00 00       	jmp    0x493a38
493992:	0f b7 ca             	movzwl %dx,%ecx
493995:	81 f9 fe ff 00 00    	cmp    $0xfffe,%ecx
49399b:	75 0d                	jne    0x4939aa
49399d:	e8 93 65 fe ff       	call   0x479f35
4939a2:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4939a8:	eb 95                	jmp    0x49393f
4939aa:	81 f9 ff fe 00 00    	cmp    $0xfeff,%ecx
4939b0:	75 1e                	jne    0x4939d0
4939b2:	53                   	push   %ebx
4939b3:	53                   	push   %ebx
4939b4:	50                   	push   %eax
4939b5:	ff 75 08             	push   0x8(%ebp)
4939b8:	e8 73 5d ff ff       	call   0x489730
4939bd:	23 c2                	and    %edx,%eax
4939bf:	83 c4 10             	add    $0x10,%esp
4939c2:	83 f8 ff             	cmp    $0xffffffff,%eax
4939c5:	0f 84 74 ff ff ff    	je     0x49393f
4939cb:	c6 07 02             	movb   $0x2,(%edi)
4939ce:	eb 68                	jmp    0x493a38
4939d0:	53                   	push   %ebx
4939d1:	53                   	push   %ebx
4939d2:	53                   	push   %ebx
4939d3:	ff 75 08             	push   0x8(%ebp)
4939d6:	e8 55 5d ff ff       	call   0x489730
4939db:	23 c2                	and    %edx,%eax
4939dd:	83 c4 10             	add    $0x10,%esp
4939e0:	83 f8 ff             	cmp    $0xffffffff,%eax
4939e3:	75 53                	jne    0x493a38
4939e5:	e9 55 ff ff ff       	jmp    0x49393f
4939ea:	6a 02                	push   $0x2
4939ec:	59                   	pop    %ecx
4939ed:	0f be 07             	movsbl (%edi),%eax
4939f0:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4939f3:	83 e8 01             	sub    $0x1,%eax
4939f6:	74 0c                	je     0x493a04
4939f8:	83 e8 01             	sub    $0x1,%eax
4939fb:	75 3b                	jne    0x493a38
4939fd:	b8 ff fe 00 00       	mov    $0xfeff,%eax
493a02:	eb 0b                	jmp    0x493a0f
493a04:	6a 03                	push   $0x3
493a06:	59                   	pop    %ecx
493a07:	89 4d f8             	mov    %ecx,-0x8(%ebp)
493a0a:	b8 ef bb bf 00       	mov    $0xbfbbef,%eax
493a0f:	89 45 fc             	mov    %eax,-0x4(%ebp)
493a12:	2b cb                	sub    %ebx,%ecx
493a14:	8d 45 fc             	lea    -0x4(%ebp),%eax
493a17:	51                   	push   %ecx
493a18:	03 c3                	add    %ebx,%eax
493a1a:	50                   	push   %eax
493a1b:	ff 75 08             	push   0x8(%ebp)
493a1e:	e8 3a 3e ff ff       	call   0x48785d
493a23:	83 c4 0c             	add    $0xc,%esp
493a26:	83 f8 ff             	cmp    $0xffffffff,%eax
493a29:	0f 84 10 ff ff ff    	je     0x49393f
493a2f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
493a32:	03 d8                	add    %eax,%ebx
493a34:	3b cb                	cmp    %ebx,%ecx
493a36:	7f da                	jg     0x493a12
493a38:	33 c0                	xor    %eax,%eax
493a3a:	5f                   	pop    %edi
493a3b:	5e                   	pop    %esi
493a3c:	5b                   	pop    %ebx
493a3d:	c9                   	leave
493a3e:	c3                   	ret
493a3f:	53                   	push   %ebx
493a40:	53                   	push   %ebx
493a41:	53                   	push   %ebx
493a42:	53                   	push   %ebx
493a43:	53                   	push   %ebx
493a44:	e8 05 5c fe ff       	call   0x47964e
493a49:	cc                   	int3
493a4a:	8b ff                	mov    %edi,%edi
493a4c:	55                   	push   %ebp
493a4d:	8b ec                	mov    %esp,%ebp
493a4f:	8b 45 20             	mov    0x20(%ebp),%eax
493a52:	0b 45 24             	or     0x24(%ebp),%eax
493a55:	6a 00                	push   $0x0
493a57:	50                   	push   %eax
493a58:	ff 75 18             	push   0x18(%ebp)
493a5b:	ff 75 0c             	push   0xc(%ebp)
493a5e:	ff 75 1c             	push   0x1c(%ebp)
493a61:	ff 75 14             	push   0x14(%ebp)
493a64:	ff 75 08             	push   0x8(%ebp)
493a67:	ff 15 48 e1 49 00    	call   *0x49e148
493a6d:	5d                   	pop    %ebp
493a6e:	c3                   	ret
493a6f:	8b ff                	mov    %edi,%edi
493a71:	55                   	push   %ebp
493a72:	8b ec                	mov    %esp,%ebp
493a74:	8b 45 08             	mov    0x8(%ebp),%eax
493a77:	ba 00 07 00 00       	mov    $0x700,%edx
493a7c:	23 c2                	and    %edx,%eax
493a7e:	b9 00 04 00 00       	mov    $0x400,%ecx
493a83:	3b c1                	cmp    %ecx,%eax
493a85:	77 28                	ja     0x493aaf
493a87:	74 21                	je     0x493aaa
493a89:	85 c0                	test   %eax,%eax
493a8b:	74 1d                	je     0x493aaa
493a8d:	3d 00 01 00 00       	cmp    $0x100,%eax
493a92:	74 12                	je     0x493aa6
493a94:	3d 00 02 00 00       	cmp    $0x200,%eax
493a99:	74 3b                	je     0x493ad6
493a9b:	3d 00 03 00 00       	cmp    $0x300,%eax
493aa0:	75 1f                	jne    0x493ac1
493aa2:	6a 02                	push   $0x2
493aa4:	eb 06                	jmp    0x493aac
493aa6:	6a 04                	push   $0x4
493aa8:	eb 02                	jmp    0x493aac
493aaa:	6a 03                	push   $0x3
493aac:	58                   	pop    %eax
493aad:	5d                   	pop    %ebp
493aae:	c3                   	ret
493aaf:	3d 00 05 00 00       	cmp    $0x500,%eax
493ab4:	74 24                	je     0x493ada
493ab6:	3d 00 06 00 00       	cmp    $0x600,%eax
493abb:	74 19                	je     0x493ad6
493abd:	3b c2                	cmp    %edx,%eax
493abf:	74 19                	je     0x493ada
493ac1:	e8 6f 64 fe ff       	call   0x479f35
493ac6:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
493acc:	e8 50 5b fe ff       	call   0x479621
493ad1:	83 c8 ff             	or     $0xffffffff,%eax
493ad4:	5d                   	pop    %ebp
493ad5:	c3                   	ret
493ad6:	6a 05                	push   $0x5
493ad8:	eb d2                	jmp    0x493aac
493ada:	33 c0                	xor    %eax,%eax
493adc:	40                   	inc    %eax
493add:	5d                   	pop    %ebp
493ade:	c3                   	ret
493adf:	8b ff                	mov    %edi,%edi
493ae1:	55                   	push   %ebp
493ae2:	8b ec                	mov    %esp,%ebp
493ae4:	51                   	push   %ecx
493ae5:	53                   	push   %ebx
493ae6:	8b 5d 0c             	mov    0xc(%ebp),%ebx
493ae9:	8b c3                	mov    %ebx,%eax
493aeb:	56                   	push   %esi
493aec:	8b 75 08             	mov    0x8(%ebp),%esi
493aef:	83 e0 03             	and    $0x3,%eax
493af2:	57                   	push   %edi
493af3:	bf 00 00 00 80       	mov    $0x80000000,%edi
493af8:	c6 06 00             	movb   $0x0,(%esi)
493afb:	83 e8 00             	sub    $0x0,%eax
493afe:	74 47                	je     0x493b47
493b00:	83 e8 01             	sub    $0x1,%eax
493b03:	74 21                	je     0x493b26
493b05:	83 e8 01             	sub    $0x1,%eax
493b08:	74 15                	je     0x493b1f
493b0a:	e8 26 64 fe ff       	call   0x479f35
493b0f:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
493b15:	e8 07 5b fe ff       	call   0x479621
493b1a:	83 c8 ff             	or     $0xffffffff,%eax
493b1d:	eb 2a                	jmp    0x493b49
493b1f:	b8 00 00 00 c0       	mov    $0xc0000000,%eax
493b24:	eb 23                	jmp    0x493b49
493b26:	f7 c3 00 00 07 00    	test   $0x70000,%ebx
493b2c:	0f 95 c1             	setne  %cl
493b2f:	f6 c3 08             	test   $0x8,%bl
493b32:	0f 95 c0             	setne  %al
493b35:	22 c8                	and    %al,%cl
493b37:	0f b6 c1             	movzbl %cl,%eax
493b3a:	f7 d8                	neg    %eax
493b3c:	1b c0                	sbb    %eax,%eax
493b3e:	23 c7                	and    %edi,%eax
493b40:	05 00 00 00 40       	add    $0x40000000,%eax
493b45:	eb 02                	jmp    0x493b49
493b47:	8b c7                	mov    %edi,%eax
493b49:	53                   	push   %ebx
493b4a:	89 46 04             	mov    %eax,0x4(%esi)
493b4d:	e8 1d ff ff ff       	call   0x493a6f
493b52:	59                   	pop    %ecx
493b53:	89 46 08             	mov    %eax,0x8(%esi)
493b56:	8b 45 10             	mov    0x10(%ebp),%eax
493b59:	6a 10                	push   $0x10
493b5b:	59                   	pop    %ecx
493b5c:	2b c1                	sub    %ecx,%eax
493b5e:	74 3e                	je     0x493b9e
493b60:	2b c1                	sub    %ecx,%eax
493b62:	74 35                	je     0x493b99
493b64:	2b c1                	sub    %ecx,%eax
493b66:	74 2c                	je     0x493b94
493b68:	2b c1                	sub    %ecx,%eax
493b6a:	74 24                	je     0x493b90
493b6c:	83 e8 40             	sub    $0x40,%eax
493b6f:	74 15                	je     0x493b86
493b71:	e8 bf 63 fe ff       	call   0x479f35
493b76:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
493b7c:	e8 a0 5a fe ff       	call   0x479621
493b81:	83 c8 ff             	or     $0xffffffff,%eax
493b84:	eb 1a                	jmp    0x493ba0
493b86:	33 c0                	xor    %eax,%eax
493b88:	39 7e 04             	cmp    %edi,0x4(%esi)
493b8b:	0f 94 c0             	sete   %al
493b8e:	eb 10                	jmp    0x493ba0
493b90:	6a 03                	push   $0x3
493b92:	eb 02                	jmp    0x493b96
493b94:	6a 02                	push   $0x2
493b96:	58                   	pop    %eax
493b97:	eb 07                	jmp    0x493ba0
493b99:	33 c0                	xor    %eax,%eax
493b9b:	40                   	inc    %eax
493b9c:	eb 02                	jmp    0x493ba0
493b9e:	33 c0                	xor    %eax,%eax
493ba0:	83 66 14 00          	andl   $0x0,0x14(%esi)
493ba4:	89 46 0c             	mov    %eax,0xc(%esi)