5d688f:	8b 55 08             	mov    0x8(%ebp),%edx
5d6892:	33 c0                	xor    %eax,%eax
5d6894:	57                   	push   %edi
5d6895:	8d bd 90 fb ff ff    	lea    -0x470(%ebp),%edi
5d689b:	33 db                	xor    %ebx,%ebx
5d689d:	ab                   	stos   %eax,%es:(%edi)
5d689e:	ab                   	stos   %eax,%es:(%edi)
5d689f:	ab                   	stos   %eax,%es:(%edi)
5d68a0:	ab                   	stos   %eax,%es:(%edi)
5d68a1:	8b c2                	mov    %edx,%eax
5d68a3:	8b bd a0 fb ff ff    	mov    -0x460(%ebp),%edi
5d68a9:	83 e0 02             	and    $0x2,%eax
5d68ac:	89 85 8c fb ff ff    	mov    %eax,-0x474(%ebp)
5d68b2:	0b c3                	or     %ebx,%eax
5d68b4:	89 bd 90 fb ff ff    	mov    %edi,-0x470(%ebp)
5d68ba:	89 b5 94 fb ff ff    	mov    %esi,-0x46c(%ebp)
5d68c0:	89 9d 98 fb ff ff    	mov    %ebx,-0x468(%ebp)
5d68c6:	75 0a                	jne    0x5d68d2
5d68c8:	88 9d 9c fb ff ff    	mov    %bl,-0x464(%ebp)
5d68ce:	85 ff                	test   %edi,%edi
5d68d0:	75 07                	jne    0x5d68d9
5d68d2:	c6 85 9c fb ff ff 01 	movb   $0x1,-0x464(%ebp)
5d68d9:	ff 75 20             	push   0x20(%ebp)
5d68dc:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
5d68e2:	51                   	push   %ecx
5d68e3:	ff 75 18             	push   0x18(%ebp)
5d68e6:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
5d68ec:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
5d68f2:	ff 75 0c             	push   0xc(%ebp)
5d68f5:	8d 85 a0 fb ff ff    	lea    -0x460(%ebp),%eax
5d68fb:	52                   	push   %edx
5d68fc:	50                   	push   %eax
5d68fd:	e8 0f 1c 00 00       	call   0x5d8511
5d6902:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
5d6908:	89 5d f4             	mov    %ebx,-0xc(%ebp)
5d690b:	e8 81 22 00 00       	call   0x5d8b91
5d6910:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
5d6916:	85 ff                	test   %edi,%edi
5d6918:	74 70                	je     0x5d698a
5d691a:	8b 4d 08             	mov    0x8(%ebp),%ecx
5d691d:	83 e1 01             	and    $0x1,%ecx
5d6920:	0b cb                	or     %ebx,%ecx
5d6922:	74 21                	je     0x5d6945
5d6924:	85 f6                	test   %esi,%esi
5d6926:	75 04                	jne    0x5d692c
5d6928:	85 c0                	test   %eax,%eax
5d692a:	75 43                	jne    0x5d696f
5d692c:	8b 8d 98 fb ff ff    	mov    -0x468(%ebp),%ecx
5d6932:	3b ce                	cmp    %esi,%ecx
5d6934:	74 05                	je     0x5d693b
5d6936:	88 1c 0f             	mov    %bl,(%edi,%ecx,1)
5d6939:	eb 4f                	jmp    0x5d698a
5d693b:	85 c0                	test   %eax,%eax
5d693d:	78 4b                	js     0x5d698a
5d693f:	3b c6                	cmp    %esi,%eax
5d6941:	77 2c                	ja     0x5d696f
5d6943:	eb 45                	jmp    0x5d698a
5d6945:	8b 8d 8c fb ff ff    	mov    -0x474(%ebp),%ecx
5d694b:	0b cb                	or     %ebx,%ecx
5d694d:	74 1c                	je     0x5d696b
5d694f:	85 f6                	test   %esi,%esi
5d6951:	74 37                	je     0x5d698a
5d6953:	85 c0                	test   %eax,%eax
5d6955:	79 04                	jns    0x5d695b
5d6957:	88 1f                	mov    %bl,(%edi)
5d6959:	eb 2f                	jmp    0x5d698a
5d695b:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
5d6961:	3b c6                	cmp    %esi,%eax
5d6963:	75 22                	jne    0x5d6987
5d6965:	88 5c 3e ff          	mov    %bl,-0x1(%esi,%edi,1)
5d6969:	eb 1f                	jmp    0x5d698a
5d696b:	85 f6                	test   %esi,%esi
5d696d:	75 05                	jne    0x5d6974
5d696f:	83 ce ff             	or     $0xffffffff,%esi
5d6972:	eb 1c                	jmp    0x5d6990
5d6974:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
5d697a:	3b c6                	cmp    %esi,%eax
5d697c:	75 09                	jne    0x5d6987
5d697e:	6a fe                	push   $0xfffffffe
5d6980:	88 5c 3e ff          	mov    %bl,-0x1(%esi,%edi,1)
5d6984:	5e                   	pop    %esi
5d6985:	eb 09                	jmp    0x5d6990
5d6987:	88 1c 07             	mov    %bl,(%edi,%eax,1)
5d698a:	8b b5 a0 fb ff ff    	mov    -0x460(%ebp),%esi
5d6990:	8d 8d e0 fb ff ff    	lea    -0x420(%ebp),%ecx
5d6996:	e8 49 1c 00 00       	call   0x5d85e4
5d699b:	8b c6                	mov    %esi,%eax
5d699d:	5f                   	pop    %edi
5d699e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5d69a1:	5e                   	pop    %esi
5d69a2:	33 cd                	xor    %ebp,%ecx
5d69a4:	5b                   	pop    %ebx
5d69a5:	e8 7c b0 ff ff       	call   0x5d1a26
5d69aa:	c9                   	leave
5d69ab:	c3                   	ret
5d69ac:	8b ff                	mov    %edi,%edi
5d69ae:	55                   	push   %ebp
5d69af:	8b ec                	mov    %esp,%ebp
5d69b1:	81 ec 74 04 00 00    	sub    $0x474,%esp
5d69b7:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5d69bc:	33 c5                	xor    %ebp,%eax
5d69be:	89 45 fc             	mov    %eax,-0x4(%ebp)
5d69c1:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
5d69c5:	8b 45 10             	mov    0x10(%ebp),%eax
5d69c8:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
5d69cb:	53                   	push   %ebx
5d69cc:	56                   	push   %esi
5d69cd:	8b 75 14             	mov    0x14(%ebp),%esi
5d69d0:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
5d69d6:	75 23                	jne    0x5d69fb
5d69d8:	51                   	push   %ecx
5d69d9:	33 db                	xor    %ebx,%ebx
5d69db:	c6 41 1c 01          	movb   $0x1,0x1c(%ecx)
5d69df:	53                   	push   %ebx
5d69e0:	53                   	push   %ebx
5d69e1:	53                   	push   %ebx
5d69e2:	53                   	push   %ebx
5d69e3:	53                   	push   %ebx
5d69e4:	c7 41 18 16 00 00 00 	movl   $0x16,0x18(%ecx)
5d69eb:	e8 73 f7 ff ff       	call   0x5d6163
5d69f0:	83 c4 18             	add    $0x18,%esp
5d69f3:	83 c8 ff             	or     $0xffffffff,%eax
5d69f6:	e9 26 01 00 00       	jmp    0x5d6b21
5d69fb:	85 f6                	test   %esi,%esi
5d69fd:	74 04                	je     0x5d6a03
5d69ff:	85 c0                	test   %eax,%eax
5d6a01:	74 d5                	je     0x5d69d8
5d6a03:	8b 55 08             	mov    0x8(%ebp),%edx
5d6a06:	33 c0                	xor    %eax,%eax
5d6a08:	57                   	push   %edi
5d6a09:	8d bd 90 fb ff ff    	lea    -0x470(%ebp),%edi
5d6a0f:	33 db                	xor    %ebx,%ebx
5d6a11:	ab                   	stos   %eax,%es:(%edi)
5d6a12:	ab                   	stos   %eax,%es:(%edi)
5d6a13:	ab                   	stos   %eax,%es:(%edi)
5d6a14:	ab                   	stos   %eax,%es:(%edi)
5d6a15:	8b c2                	mov    %edx,%eax
5d6a17:	8b bd a0 fb ff ff    	mov    -0x460(%ebp),%edi
5d6a1d:	83 e0 02             	and    $0x2,%eax
5d6a20:	89 85 8c fb ff ff    	mov    %eax,-0x474(%ebp)
5d6a26:	0b c3                	or     %ebx,%eax
5d6a28:	89 bd 90 fb ff ff    	mov    %edi,-0x470(%ebp)
5d6a2e:	89 b5 94 fb ff ff    	mov    %esi,-0x46c(%ebp)
5d6a34:	89 9d 98 fb ff ff    	mov    %ebx,-0x468(%ebp)
5d6a3a:	75 0a                	jne    0x5d6a46
5d6a3c:	88 9d 9c fb ff ff    	mov    %bl,-0x464(%ebp)
5d6a42:	85 ff                	test   %edi,%edi
5d6a44:	75 07                	jne    0x5d6a4d
5d6a46:	c6 85 9c fb ff ff 01 	movb   $0x1,-0x464(%ebp)
5d6a4d:	ff 75 20             	push   0x20(%ebp)
5d6a50:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
5d6a56:	51                   	push   %ecx
5d6a57:	ff 75 18             	push   0x18(%ebp)
5d6a5a:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
5d6a60:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
5d6a66:	ff 75 0c             	push   0xc(%ebp)
5d6a69:	8d 85 a0 fb ff ff    	lea    -0x460(%ebp),%eax
5d6a6f:	52                   	push   %edx
5d6a70:	50                   	push   %eax
5d6a71:	e8 02 1b 00 00       	call   0x5d8578
5d6a76:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
5d6a7c:	89 5d f4             	mov    %ebx,-0xc(%ebp)
5d6a7f:	e8 e1 23 00 00       	call   0x5d8e65
5d6a84:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
5d6a8a:	85 ff                	test   %edi,%edi
5d6a8c:	74 7f                	je     0x5d6b0d
5d6a8e:	8b 4d 08             	mov    0x8(%ebp),%ecx
5d6a91:	83 e1 01             	and    $0x1,%ecx
5d6a94:	0b cb                	or     %ebx,%ecx
5d6a96:	74 24                	je     0x5d6abc
5d6a98:	85 f6                	test   %esi,%esi
5d6a9a:	75 04                	jne    0x5d6aa0
5d6a9c:	85 c0                	test   %eax,%eax
5d6a9e:	75 4c                	jne    0x5d6aec
5d6aa0:	8b 8d 98 fb ff ff    	mov    -0x468(%ebp),%ecx
5d6aa6:	3b ce                	cmp    %esi,%ecx
5d6aa8:	74 08                	je     0x5d6ab2
5d6aaa:	33 c0                	xor    %eax,%eax
5d6aac:	66 89 04 4f          	mov    %ax,(%edi,%ecx,2)
5d6ab0:	eb 5b                	jmp    0x5d6b0d
5d6ab2:	85 c0                	test   %eax,%eax
5d6ab4:	78 57                	js     0x5d6b0d
5d6ab6:	3b c6                	cmp    %esi,%eax
5d6ab8:	77 32                	ja     0x5d6aec
5d6aba:	eb 51                	jmp    0x5d6b0d
5d6abc:	8b 8d 8c fb ff ff    	mov    -0x474(%ebp),%ecx
5d6ac2:	0b cb                	or     %ebx,%ecx
5d6ac4:	74 22                	je     0x5d6ae8
5d6ac6:	85 f6                	test   %esi,%esi
5d6ac8:	74 43                	je     0x5d6b0d
5d6aca:	85 c0                	test   %eax,%eax
5d6acc:	79 07                	jns    0x5d6ad5
5d6ace:	33 c0                	xor    %eax,%eax
5d6ad0:	66 89 07             	mov    %ax,(%edi)
5d6ad3:	eb 38                	jmp    0x5d6b0d
5d6ad5:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
5d6adb:	3b c6                	cmp    %esi,%eax
5d6add:	75 28                	jne    0x5d6b07
5d6adf:	33 c0                	xor    %eax,%eax
5d6ae1:	66 89 44 77 fe       	mov    %ax,-0x2(%edi,%esi,2)
5d6ae6:	eb 25                	jmp    0x5d6b0d
5d6ae8:	85 f6                	test   %esi,%esi
5d6aea:	75 05                	jne    0x5d6af1
5d6aec:	83 ce ff             	or     $0xffffffff,%esi
5d6aef:	eb 22                	jmp    0x5d6b13
5d6af1:	8b 85 98 fb ff ff    	mov    -0x468(%ebp),%eax
5d6af7:	3b c6                	cmp    %esi,%eax
5d6af9:	75 0c                	jne    0x5d6b07
5d6afb:	33 c0                	xor    %eax,%eax
5d6afd:	6a fe                	push   $0xfffffffe
5d6aff:	66 89 44 77 fe       	mov    %ax,-0x2(%edi,%esi,2)
5d6b04:	5e                   	pop    %esi
5d6b05:	eb 0c                	jmp    0x5d6b13
5d6b07:	33 c9                	xor    %ecx,%ecx
5d6b09:	66 89 0c 47          	mov    %cx,(%edi,%eax,2)
5d6b0d:	8b b5 a0 fb ff ff    	mov    -0x460(%ebp),%esi
5d6b13:	8d 8d e0 fb ff ff    	lea    -0x420(%ebp),%ecx
5d6b19:	e8 c6 1a 00 00       	call   0x5d85e4
5d6b1e:	8b c6                	mov    %esi,%eax
5d6b20:	5f                   	pop    %edi
5d6b21:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5d6b24:	5e                   	pop    %esi
5d6b25:	33 cd                	xor    %ebp,%ecx
5d6b27:	5b                   	pop    %ebx
5d6b28:	e8 f9 ae ff ff       	call   0x5d1a26
5d6b2d:	c9                   	leave
5d6b2e:	c3                   	ret
5d6b2f:	83 b9 04 04 00 00 00 	cmpl   $0x0,0x404(%ecx)
5d6b36:	75 06                	jne    0x5d6b3e
5d6b38:	b8 00 02 00 00       	mov    $0x200,%eax
5d6b3d:	c3                   	ret
5d6b3e:	8b 81 00 04 00 00    	mov    0x400(%ecx),%eax
5d6b44:	d1 e8                	shr    $1,%eax
5d6b46:	c3                   	ret
5d6b47:	83 b9 04 04 00 00 00 	cmpl   $0x0,0x404(%ecx)
5d6b4e:	75 06                	jne    0x5d6b56
5d6b50:	b8 00 01 00 00       	mov    $0x100,%eax
5d6b55:	c3                   	ret
5d6b56:	8b 81 00 04 00 00    	mov    0x400(%ecx),%eax
5d6b5c:	c1 e8 02             	shr    $0x2,%eax
5d6b5f:	c3                   	ret
5d6b60:	8b ff                	mov    %edi,%edi
5d6b62:	55                   	push   %ebp
5d6b63:	8b ec                	mov    %esp,%ebp
5d6b65:	51                   	push   %ecx
5d6b66:	56                   	push   %esi
5d6b67:	8b 75 08             	mov    0x8(%ebp),%esi
5d6b6a:	57                   	push   %edi
5d6b6b:	8b f9                	mov    %ecx,%edi
5d6b6d:	81 fe ff ff ff 7f    	cmp    $0x7fffffff,%esi
5d6b73:	76 12                	jbe    0x5d6b87
5d6b75:	8b 45 0c             	mov    0xc(%ebp),%eax
5d6b78:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d6b7c:	c7 40 18 0c 00 00 00 	movl   $0xc,0x18(%eax)
5d6b83:	32 c0                	xor    %al,%al
5d6b85:	eb 54                	jmp    0x5d6bdb
5d6b87:	53                   	push   %ebx
5d6b88:	8d 9f 04 04 00 00    	lea    0x404(%edi),%ebx
5d6b8e:	03 f6                	add    %esi,%esi
5d6b90:	83 3b 00             	cmpl   $0x0,(%ebx)
5d6b93:	75 08                	jne    0x5d6b9d
5d6b95:	81 fe 00 04 00 00    	cmp    $0x400,%esi
5d6b9b:	76 3b                	jbe    0x5d6bd8
5d6b9d:	3b b7 00 04 00 00    	cmp    0x400(%edi),%esi
5d6ba3:	76 33                	jbe    0x5d6bd8
5d6ba5:	56                   	push   %esi
5d6ba6:	e8 b1 46 01 00       	call   0x5eb25c
5d6bab:	89 45 fc             	mov    %eax,-0x4(%ebp)
5d6bae:	59                   	pop    %ecx
5d6baf:	85 c0                	test   %eax,%eax
5d6bb1:	75 0b                	jne    0x5d6bbe
5d6bb3:	50                   	push   %eax
5d6bb4:	e8 69 46 01 00       	call   0x5eb222
5d6bb9:	59                   	pop    %ecx
5d6bba:	32 c0                	xor    %al,%al
5d6bbc:	eb 1c                	jmp    0x5d6bda
5d6bbe:	8d 45 fc             	lea    -0x4(%ebp),%eax
5d6bc1:	8b cb                	mov    %ebx,%ecx
5d6bc3:	50                   	push   %eax
5d6bc4:	e8 35 1a 00 00       	call   0x5d85fe
5d6bc9:	ff 75 fc             	push   -0x4(%ebp)
5d6bcc:	89 b7 00 04 00 00    	mov    %esi,0x400(%edi)
5d6bd2:	e8 4b 46 01 00       	call   0x5eb222
5d6bd7:	59                   	pop    %ecx
5d6bd8:	b0 01                	mov    $0x1,%al
5d6bda:	5b                   	pop    %ebx
5d6bdb:	5f                   	pop    %edi
5d6bdc:	5e                   	pop    %esi
5d6bdd:	c9                   	leave
5d6bde:	c2 08 00             	ret    $0x8
5d6be1:	8b ff                	mov    %edi,%edi
5d6be3:	55                   	push   %ebp
5d6be4:	8b ec                	mov    %esp,%ebp
5d6be6:	51                   	push   %ecx
5d6be7:	56                   	push   %esi
5d6be8:	8b 75 08             	mov    0x8(%ebp),%esi
5d6beb:	57                   	push   %edi
5d6bec:	8b f9                	mov    %ecx,%edi
5d6bee:	81 fe ff ff ff 3f    	cmp    $0x3fffffff,%esi
5d6bf4:	76 12                	jbe    0x5d6c08
5d6bf6:	8b 45 0c             	mov    0xc(%ebp),%eax
5d6bf9:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
5d6bfd:	c7 40 18 0c 00 00 00 	movl   $0xc,0x18(%eax)
5d6c04:	32 c0                	xor    %al,%al
5d6c06:	eb 55                	jmp    0x5d6c5d
5d6c08:	53                   	push   %ebx
5d6c09:	8d 9f 04 04 00 00    	lea    0x404(%edi),%ebx
5d6c0f:	c1 e6 02             	shl    $0x2,%esi
5d6c12:	83 3b 00             	cmpl   $0x0,(%ebx)
5d6c15:	75 08                	jne    0x5d6c1f
5d6c17:	81 fe 00 04 00 00    	cmp    $0x400,%esi
5d6c1d:	76 3b                	jbe    0x5d6c5a
5d6c1f:	3b b7 00 04 00 00    	cmp    0x400(%edi),%esi
5d6c25:	76 33                	jbe    0x5d6c5a
5d6c27:	56                   	push   %esi
5d6c28:	e8 2f 46 01 00       	call   0x5eb25c
5d6c2d:	89 45 fc             	mov    %eax,-0x4(%ebp)
5d6c30:	59                   	pop    %ecx
5d6c31:	85 c0                	test   %eax,%eax
5d6c33:	75 0b                	jne    0x5d6c40
5d6c35:	50                   	push   %eax
5d6c36:	e8 e7 45 01 00       	call   0x5eb222
5d6c3b:	59                   	pop    %ecx
5d6c3c:	32 c0                	xor    %al,%al
5d6c3e:	eb 1c                	jmp    0x5d6c5c
5d6c40:	8d 45 fc             	lea    -0x4(%ebp),%eax
5d6c43:	8b cb                	mov    %ebx,%ecx
5d6c45:	50                   	push   %eax
5d6c46:	e8 b3 19 00 00       	call   0x5d85fe
5d6c4b:	ff 75 fc             	push   -0x4(%ebp)
5d6c4e:	89 b7 00 04 00 00    	mov    %esi,0x400(%edi)
5d6c54:	e8 c9 45 01 00       	call   0x5eb222
5d6c59:	59                   	pop    %ecx
5d6c5a:	b0 01                	mov    $0x1,%al
5d6c5c:	5b                   	pop    %ebx
5d6c5d:	5f                   	pop    %edi
5d6c5e:	5e                   	pop    %esi
5d6c5f:	c9                   	leave
5d6c60:	c2 08 00             	ret    $0x8
5d6c63:	8b ff                	mov    %edi,%edi
5d6c65:	55                   	push   %ebp
5d6c66:	8b ec                	mov    %esp,%ebp
5d6c68:	f6 45 08 04          	testb  $0x4,0x8(%ebp)
5d6c6c:	75 25                	jne    0x5d6c93
5d6c6e:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
5d6c72:	74 0f                	je     0x5d6c83
5d6c74:	f6 45 08 02          	testb  $0x2,0x8(%ebp)
5d6c78:	74 0d                	je     0x5d6c87
5d6c7a:	81 7d 0c 00 00 00 80 	cmpl   $0x80000000,0xc(%ebp)
5d6c81:	77 10                	ja     0x5d6c93