407a12:	5b                   	pop    %ebx
407a13:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
407a1a:	8b e5                	mov    %ebp,%esp
407a1c:	5d                   	pop    %ebp
407a1d:	c2 04 00             	ret    $0x4
407a20:	55                   	push   %ebp
407a21:	8b ec                	mov    %esp,%ebp
407a23:	56                   	push   %esi
407a24:	8b f1                	mov    %ecx,%esi
407a26:	33 c9                	xor    %ecx,%ecx
407a28:	8d 46 04             	lea    0x4(%esi),%eax
407a2b:	50                   	push   %eax
407a2c:	c7 06 44 13 43 00    	movl   $0x431344,(%esi)
407a32:	89 08                	mov    %ecx,(%eax)
407a34:	89 48 04             	mov    %ecx,0x4(%eax)
407a37:	8b 45 08             	mov    0x8(%ebp),%eax
407a3a:	83 c0 04             	add    $0x4,%eax
407a3d:	50                   	push   %eax
407a3e:	e8 48 3d 00 00       	call   0x40b78b
407a43:	83 c4 08             	add    $0x8,%esp
407a46:	c7 06 64 13 43 00    	movl   $0x431364,(%esi)
407a4c:	8b c6                	mov    %esi,%eax
407a4e:	5e                   	pop    %esi
407a4f:	5d                   	pop    %ebp
407a50:	c2 04 00             	ret    $0x4
407a53:	cc                   	int3
407a54:	cc                   	int3
407a55:	cc                   	int3
407a56:	cc                   	int3
407a57:	cc                   	int3
407a58:	cc                   	int3
407a59:	cc                   	int3
407a5a:	cc                   	int3
407a5b:	cc                   	int3
407a5c:	cc                   	int3
407a5d:	cc                   	int3
407a5e:	cc                   	int3
407a5f:	cc                   	int3
407a60:	55                   	push   %ebp
407a61:	8b ec                	mov    %esp,%ebp
407a63:	56                   	push   %esi
407a64:	8b f1                	mov    %ecx,%esi
407a66:	33 c9                	xor    %ecx,%ecx
407a68:	8d 46 04             	lea    0x4(%esi),%eax
407a6b:	50                   	push   %eax
407a6c:	c7 06 44 13 43 00    	movl   $0x431344,(%esi)
407a72:	89 08                	mov    %ecx,(%eax)
407a74:	89 48 04             	mov    %ecx,0x4(%eax)
407a77:	8b 45 08             	mov    0x8(%ebp),%eax
407a7a:	83 c0 04             	add    $0x4,%eax
407a7d:	50                   	push   %eax
407a7e:	e8 08 3d 00 00       	call   0x40b78b
407a83:	83 c4 08             	add    $0x8,%esp
407a86:	c7 06 70 13 43 00    	movl   $0x431370,(%esi)
407a8c:	8b c6                	mov    %esi,%eax
407a8e:	5e                   	pop    %esi
407a8f:	5d                   	pop    %ebp
407a90:	c2 04 00             	ret    $0x4
407a93:	cc                   	int3
407a94:	cc                   	int3
407a95:	cc                   	int3
407a96:	cc                   	int3
407a97:	cc                   	int3
407a98:	cc                   	int3
407a99:	cc                   	int3
407a9a:	cc                   	int3
407a9b:	cc                   	int3
407a9c:	cc                   	int3
407a9d:	cc                   	int3
407a9e:	cc                   	int3
407a9f:	cc                   	int3
407aa0:	33 c0                	xor    %eax,%eax
407aa2:	89 41 08             	mov    %eax,0x8(%ecx)
407aa5:	8b c1                	mov    %ecx,%eax
407aa7:	c7 41 04 78 13 43 00 	movl   $0x431378,0x4(%ecx)
407aae:	c7 01 70 13 43 00    	movl   $0x431370,(%ecx)
407ab4:	c3                   	ret
407ab5:	cc                   	int3
407ab6:	cc                   	int3
407ab7:	cc                   	int3
407ab8:	cc                   	int3
407ab9:	cc                   	int3
407aba:	cc                   	int3
407abb:	cc                   	int3
407abc:	cc                   	int3
407abd:	cc                   	int3
407abe:	cc                   	int3
407abf:	cc                   	int3
407ac0:	55                   	push   %ebp
407ac1:	8b ec                	mov    %esp,%ebp
407ac3:	56                   	push   %esi
407ac4:	8b f1                	mov    %ecx,%esi
407ac6:	33 c9                	xor    %ecx,%ecx
407ac8:	8d 46 04             	lea    0x4(%esi),%eax
407acb:	50                   	push   %eax
407acc:	c7 06 44 13 43 00    	movl   $0x431344,(%esi)
407ad2:	89 08                	mov    %ecx,(%eax)
407ad4:	89 48 04             	mov    %ecx,0x4(%eax)
407ad7:	8b 45 08             	mov    0x8(%ebp),%eax
407ada:	83 c0 04             	add    $0x4,%eax
407add:	50                   	push   %eax
407ade:	e8 a8 3c 00 00       	call   0x40b78b
407ae3:	83 c4 08             	add    $0x8,%esp
407ae6:	8b c6                	mov    %esi,%eax
407ae8:	5e                   	pop    %esi
407ae9:	5d                   	pop    %ebp
407aea:	c2 04 00             	ret    $0x4
407aed:	cc                   	int3
407aee:	cc                   	int3
407aef:	cc                   	int3
407af0:	ff 31                	push   (%ecx)
407af2:	ff 15 18 10 43 00    	call   *0x431018
407af8:	c3                   	ret
407af9:	cc                   	int3
407afa:	cc                   	int3
407afb:	cc                   	int3
407afc:	cc                   	int3
407afd:	cc                   	int3
407afe:	cc                   	int3
407aff:	cc                   	int3
407b00:	8b 41 04             	mov    0x4(%ecx),%eax
407b03:	85 c0                	test   %eax,%eax
407b05:	74 0b                	je     0x407b12
407b07:	6a 40                	push   $0x40
407b09:	50                   	push   %eax
407b0a:	e8 e1 ee ff ff       	call   0x4069f0
407b0f:	83 c4 08             	add    $0x8,%esp
407b12:	c3                   	ret
407b13:	cc                   	int3
407b14:	cc                   	int3
407b15:	cc                   	int3
407b16:	cc                   	int3
407b17:	cc                   	int3
407b18:	cc                   	int3
407b19:	cc                   	int3
407b1a:	cc                   	int3
407b1b:	cc                   	int3
407b1c:	cc                   	int3
407b1d:	cc                   	int3
407b1e:	cc                   	int3
407b1f:	cc                   	int3
407b20:	8b 01                	mov    (%ecx),%eax
407b22:	85 c0                	test   %eax,%eax
407b24:	74 0d                	je     0x407b33
407b26:	ff 71 08             	push   0x8(%ecx)
407b29:	ff 71 04             	push   0x4(%ecx)
407b2c:	8b c8                	mov    %eax,%ecx
407b2e:	e8 6d f7 ff ff       	call   0x4072a0
407b33:	c3                   	ret
407b34:	cc                   	int3
407b35:	cc                   	int3
407b36:	cc                   	int3
407b37:	cc                   	int3
407b38:	cc                   	int3
407b39:	cc                   	int3
407b3a:	cc                   	int3
407b3b:	cc                   	int3
407b3c:	cc                   	int3
407b3d:	cc                   	int3
407b3e:	cc                   	int3
407b3f:	cc                   	int3
407b40:	56                   	push   %esi
407b41:	8b 71 04             	mov    0x4(%ecx),%esi
407b44:	85 f6                	test   %esi,%esi
407b46:	74 1a                	je     0x407b62
407b48:	8b 06                	mov    (%esi),%eax
407b4a:	ff 70 04             	push   0x4(%eax)
407b4d:	ff 31                	push   (%ecx)
407b4f:	8b ce                	mov    %esi,%ecx
407b51:	e8 4a f7 ff ff       	call   0x4072a0
407b56:	6a 40                	push   $0x40
407b58:	ff 36                	push   (%esi)
407b5a:	e8 91 ee ff ff       	call   0x4069f0
407b5f:	83 c4 08             	add    $0x8,%esp
407b62:	5e                   	pop    %esi
407b63:	c3                   	ret
407b64:	cc                   	int3
407b65:	cc                   	int3
407b66:	cc                   	int3
407b67:	cc                   	int3
407b68:	cc                   	int3
407b69:	cc                   	int3
407b6a:	cc                   	int3
407b6b:	cc                   	int3
407b6c:	cc                   	int3
407b6d:	cc                   	int3
407b6e:	cc                   	int3
407b6f:	cc                   	int3
407b70:	56                   	push   %esi
407b71:	8b 31                	mov    (%ecx),%esi
407b73:	57                   	push   %edi
407b74:	8b 79 04             	mov    0x4(%ecx),%edi
407b77:	3b f7                	cmp    %edi,%esi
407b79:	74 13                	je     0x407b8e
407b7b:	eb 03                	jmp    0x407b80
407b7d:	8d 49 00             	lea    0x0(%ecx),%ecx
407b80:	8b ce                	mov    %esi,%ecx
407b82:	e8 49 01 00 00       	call   0x407cd0
407b87:	83 c6 20             	add    $0x20,%esi
407b8a:	3b f7                	cmp    %edi,%esi
407b8c:	75 f2                	jne    0x407b80
407b8e:	5f                   	pop    %edi
407b8f:	5e                   	pop    %esi
407b90:	c3                   	ret
407b91:	cc                   	int3
407b92:	cc                   	int3
407b93:	cc                   	int3
407b94:	cc                   	int3
407b95:	cc                   	int3
407b96:	cc                   	int3
407b97:	cc                   	int3
407b98:	cc                   	int3
407b99:	cc                   	int3
407b9a:	cc                   	int3
407b9b:	cc                   	int3
407b9c:	cc                   	int3
407b9d:	cc                   	int3
407b9e:	cc                   	int3
407b9f:	cc                   	int3
407ba0:	56                   	push   %esi
407ba1:	8b f1                	mov    %ecx,%esi
407ba3:	8b 06                	mov    (%esi),%eax
407ba5:	ff 70 04             	push   0x4(%eax)
407ba8:	56                   	push   %esi
407ba9:	e8 f2 f6 ff ff       	call   0x4072a0
407bae:	6a 40                	push   $0x40
407bb0:	ff 36                	push   (%esi)
407bb2:	e8 39 ee ff ff       	call   0x4069f0
407bb7:	83 c4 08             	add    $0x8,%esp
407bba:	5e                   	pop    %esi
407bbb:	c3                   	ret
407bbc:	cc                   	int3
407bbd:	cc                   	int3
407bbe:	cc                   	int3
407bbf:	cc                   	int3
407bc0:	56                   	push   %esi
407bc1:	8b f1                	mov    %ecx,%esi
407bc3:	8b 4e 2c             	mov    0x2c(%esi),%ecx
407bc6:	83 f9 07             	cmp    $0x7,%ecx
407bc9:	76 2e                	jbe    0x407bf9
407bcb:	8b 46 18             	mov    0x18(%esi),%eax
407bce:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
407bd5:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
407bdb:	72 12                	jb     0x407bef
407bdd:	8b 50 fc             	mov    -0x4(%eax),%edx
407be0:	83 c1 23             	add    $0x23,%ecx
407be3:	2b c2                	sub    %edx,%eax
407be5:	83 c0 fc             	add    $0xfffffffc,%eax
407be8:	83 f8 1f             	cmp    $0x1f,%eax
407beb:	77 6a                	ja     0x407c57
407bed:	8b c2                	mov    %edx,%eax
407bef:	51                   	push   %ecx
407bf0:	50                   	push   %eax
407bf1:	e8 fa ed ff ff       	call   0x4069f0
407bf6:	83 c4 08             	add    $0x8,%esp
407bf9:	33 c0                	xor    %eax,%eax
407bfb:	c7 46 28 00 00 00 00 	movl   $0x0,0x28(%esi)
407c02:	c7 46 2c 07 00 00 00 	movl   $0x7,0x2c(%esi)
407c09:	66 89 46 18          	mov    %ax,0x18(%esi)
407c0d:	8b 4e 14             	mov    0x14(%esi),%ecx
407c10:	83 f9 07             	cmp    $0x7,%ecx
407c13:	76 2d                	jbe    0x407c42
407c15:	8b 06                	mov    (%esi),%eax
407c17:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
407c1e:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
407c24:	72 12                	jb     0x407c38
407c26:	8b 50 fc             	mov    -0x4(%eax),%edx
407c29:	83 c1 23             	add    $0x23,%ecx
407c2c:	2b c2                	sub    %edx,%eax
407c2e:	83 c0 fc             	add    $0xfffffffc,%eax
407c31:	83 f8 1f             	cmp    $0x1f,%eax
407c34:	77 21                	ja     0x407c57
407c36:	8b c2                	mov    %edx,%eax
407c38:	51                   	push   %ecx
407c39:	50                   	push   %eax
407c3a:	e8 b1 ed ff ff       	call   0x4069f0
407c3f:	83 c4 08             	add    $0x8,%esp
407c42:	33 c0                	xor    %eax,%eax
407c44:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
407c4b:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
407c52:	66 89 06             	mov    %ax,(%esi)
407c55:	5e                   	pop    %esi
407c56:	c3                   	ret
407c57:	e8 a2 57 00 00       	call   0x40d3fe
407c5c:	cc                   	int3
407c5d:	cc                   	int3
407c5e:	cc                   	int3
407c5f:	cc                   	int3
407c60:	56                   	push   %esi
407c61:	57                   	push   %edi
407c62:	8b f9                	mov    %ecx,%edi
407c64:	8b 37                	mov    (%edi),%esi
407c66:	85 f6                	test   %esi,%esi
407c68:	74 59                	je     0x407cc3
407c6a:	53                   	push   %ebx
407c6b:	8b 5f 04             	mov    0x4(%edi),%ebx
407c6e:	3b f3                	cmp    %ebx,%esi
407c70:	74 0e                	je     0x407c80
407c72:	8b ce                	mov    %esi,%ecx
407c74:	e8 57 00 00 00       	call   0x407cd0
407c79:	83 c6 20             	add    $0x20,%esi
407c7c:	3b f3                	cmp    %ebx,%esi
407c7e:	75 f2                	jne    0x407c72
407c80:	8b 4f 08             	mov    0x8(%edi),%ecx
407c83:	8b 07                	mov    (%edi),%eax
407c85:	2b c8                	sub    %eax,%ecx
407c87:	83 e1 e0             	and    $0xffffffe0,%ecx
407c8a:	5b                   	pop    %ebx
407c8b:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
407c91:	72 12                	jb     0x407ca5
407c93:	8b 50 fc             	mov    -0x4(%eax),%edx
407c96:	83 c1 23             	add    $0x23,%ecx
407c99:	2b c2                	sub    %edx,%eax
407c9b:	83 c0 fc             	add    $0xfffffffc,%eax
407c9e:	83 f8 1f             	cmp    $0x1f,%eax
407ca1:	77 23                	ja     0x407cc6
407ca3:	8b c2                	mov    %edx,%eax
407ca5:	51                   	push   %ecx
407ca6:	50                   	push   %eax
407ca7:	e8 44 ed ff ff       	call   0x4069f0
407cac:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
407cb2:	83 c4 08             	add    $0x8,%esp
407cb5:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
407cbc:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
407cc3:	5f                   	pop    %edi
407cc4:	5e                   	pop    %esi
407cc5:	c3                   	ret
407cc6:	e8 33 57 00 00       	call   0x40d3fe
407ccb:	cc                   	int3
407ccc:	cc                   	int3
407ccd:	cc                   	int3
407cce:	cc                   	int3
407ccf:	cc                   	int3
407cd0:	56                   	push   %esi
407cd1:	8b f1                	mov    %ecx,%esi
407cd3:	8b 4e 1c             	mov    0x1c(%esi),%ecx
407cd6:	83 f9 07             	cmp    $0x7,%ecx
407cd9:	76 2e                	jbe    0x407d09
407cdb:	8b 46 08             	mov    0x8(%esi),%eax
407cde:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
407ce5:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
407ceb:	72 12                	jb     0x407cff
407ced:	8b 50 fc             	mov    -0x4(%eax),%edx
407cf0:	83 c1 23             	add    $0x23,%ecx
407cf3:	2b c2                	sub    %edx,%eax
407cf5:	83 c0 fc             	add    $0xfffffffc,%eax
407cf8:	83 f8 1f             	cmp    $0x1f,%eax
407cfb:	77 3b                	ja     0x407d38
407cfd:	8b c2                	mov    %edx,%eax
407cff:	51                   	push   %ecx