411bf8:	56                   	push   %esi
411bf9:	ff 15 f4 04 4b 00    	call   *0x4b04f4
411bff:	eb 19                	jmp    0x411c1a
411c01:	8b 06                	mov    (%esi),%eax
411c03:	85 c0                	test   %eax,%eax
411c05:	74 13                	je     0x411c1a
411c07:	8b 08                	mov    (%eax),%ecx
411c09:	50                   	push   %eax
411c0a:	ff 51 08             	call   *0x8(%ecx)
411c0d:	eb 08                	jmp    0x411c17
411c0f:	ff 36                	push   (%esi)
411c11:	ff 15 08 05 4b 00    	call   *0x4b0508
411c17:	83 26 00             	andl   $0x0,(%esi)
411c1a:	f6 c7 10             	test   $0x10,%bh
411c1d:	74 15                	je     0x411c34
411c1f:	81 e3 00 40 00 00    	and    $0x4000,%ebx
411c25:	f7 d3                	not    %ebx
411c27:	85 db                	test   %ebx,%ebx
411c29:	74 09                	je     0x411c34
411c2b:	ff 76 04             	push   0x4(%esi)
411c2e:	ff 15 f0 0a 4b 00    	call   *0x4b0af0
411c34:	5b                   	pop    %ebx
411c35:	5e                   	pop    %esi
411c36:	5d                   	pop    %ebp
411c37:	c3                   	ret
411c38:	55                   	push   %ebp
411c39:	8b ec                	mov    %esp,%ebp
411c3b:	51                   	push   %ecx
411c3c:	56                   	push   %esi
411c3d:	57                   	push   %edi
411c3e:	33 ff                	xor    %edi,%edi
411c40:	8b f1                	mov    %ecx,%esi
411c42:	39 7e 0c             	cmp    %edi,0xc(%esi)
411c45:	89 7d fc             	mov    %edi,-0x4(%ebp)
411c48:	0f 86 ca 00 00 00    	jbe    0x411d18
411c4e:	53                   	push   %ebx
411c4f:	8b 46 10             	mov    0x10(%esi),%eax
411c52:	85 c0                	test   %eax,%eax
411c54:	74 4e                	je     0x411ca4
411c56:	8b 4d fc             	mov    -0x4(%ebp),%ecx
411c59:	80 3c 08 01          	cmpb   $0x1,(%eax,%ecx,1)
411c5d:	75 45                	jne    0x411ca4
411c5f:	8b 46 14             	mov    0x14(%esi),%eax
411c62:	8b 4e 08             	mov    0x8(%esi),%ecx
411c65:	03 c7                	add    %edi,%eax
411c67:	8b 50 10             	mov    0x10(%eax),%edx
411c6a:	8b 40 04             	mov    0x4(%eax),%eax
411c6d:	8d 44 02 03          	lea    0x3(%edx,%eax,1),%eax
411c71:	83 e0 fc             	and    $0xfffffffc,%eax
411c74:	83 c0 04             	add    $0x4,%eax
411c77:	83 e0 fc             	and    $0xfffffffc,%eax
411c7a:	83 3c 08 03          	cmpl   $0x3,(%eax,%ecx,1)
411c7e:	0f 84 81 00 00 00    	je     0x411d05
411c84:	8b 46 14             	mov    0x14(%esi),%eax
411c87:	8b 44 07 04          	mov    0x4(%edi,%eax,1),%eax
411c8b:	8d 1c 08             	lea    (%eax,%ecx,1),%ebx
411c8e:	85 db                	test   %ebx,%ebx
411c90:	74 73                	je     0x411d05
411c92:	83 3b 00             	cmpl   $0x0,(%ebx)
411c95:	74 6e                	je     0x411d05
411c97:	ff 33                	push   (%ebx)
411c99:	ff 15 f0 0a 4b 00    	call   *0x4b0af0
411c9f:	83 23 00             	andl   $0x0,(%ebx)
411ca2:	eb 61                	jmp    0x411d05
411ca4:	8b 46 14             	mov    0x14(%esi),%eax
411ca7:	66 8b 44 07 14       	mov    0x14(%edi,%eax,1),%ax
411cac:	66 3d 0d 00          	cmp    $0xd,%ax
411cb0:	74 17                	je     0x411cc9
411cb2:	66 3d 09 00          	cmp    $0x9,%ax
411cb6:	74 11                	je     0x411cc9
411cb8:	8b 46 14             	mov    0x14(%esi),%eax
411cbb:	ff 75 08             	push   0x8(%ebp)
411cbe:	03 c7                	add    %edi,%eax
411cc0:	8b 48 04             	mov    0x4(%eax),%ecx
411cc3:	03 4e 08             	add    0x8(%esi),%ecx
411cc6:	51                   	push   %ecx
411cc7:	eb 2f                	jmp    0x411cf8
411cc9:	8b 46 14             	mov    0x14(%esi),%eax
411ccc:	8b 4e 08             	mov    0x8(%esi),%ecx
411ccf:	03 c7                	add    %edi,%eax
411cd1:	8b 50 10             	mov    0x10(%eax),%edx
411cd4:	8b 40 04             	mov    0x4(%eax),%eax
411cd7:	8d 44 02 03          	lea    0x3(%edx,%eax,1),%eax
411cdb:	83 e0 fc             	and    $0xfffffffc,%eax
411cde:	83 c0 04             	add    $0x4,%eax
411ce1:	83 e0 fc             	and    $0xfffffffc,%eax
411ce4:	83 3c 08 00          	cmpl   $0x0,(%eax,%ecx,1)
411ce8:	75 1b                	jne    0x411d05
411cea:	8b 46 14             	mov    0x14(%esi),%eax
411ced:	ff 75 08             	push   0x8(%ebp)
411cf0:	03 c7                	add    %edi,%eax
411cf2:	8b 50 04             	mov    0x4(%eax),%edx
411cf5:	03 d1                	add    %ecx,%edx
411cf7:	52                   	push   %edx
411cf8:	0f b7 40 14          	movzwl 0x14(%eax),%eax
411cfc:	50                   	push   %eax
411cfd:	e8 91 fe ff ff       	call   0x411b93
411d02:	83 c4 0c             	add    $0xc,%esp
411d05:	ff 45 fc             	incl   -0x4(%ebp)
411d08:	8b 45 fc             	mov    -0x4(%ebp),%eax
411d0b:	83 c7 30             	add    $0x30,%edi
411d0e:	3b 46 0c             	cmp    0xc(%esi),%eax
411d11:	0f 82 38 ff ff ff    	jb     0x411c4f
411d17:	5b                   	pop    %ebx
411d18:	5f                   	pop    %edi
411d19:	5e                   	pop    %esi
411d1a:	c9                   	leave
411d1b:	c2 04 00             	ret    $0x4
411d1e:	e9 8d f6 ff ff       	jmp    0x4113b0
411d23:	8b c1                	mov    %ecx,%eax
411d25:	c3                   	ret
411d26:	55                   	push   %ebp
411d27:	8b ec                	mov    %esp,%ebp
411d29:	83 ec 10             	sub    $0x10,%esp
411d2c:	53                   	push   %ebx
411d2d:	56                   	push   %esi
411d2e:	8b f1                	mov    %ecx,%esi
411d30:	33 db                	xor    %ebx,%ebx
411d32:	39 5e 48             	cmp    %ebx,0x48(%esi)
411d35:	74 11                	je     0x411d48
411d37:	e8 bc f9 ff ff       	call   0x4116f8
411d3c:	8b 06                	mov    (%esi),%eax
411d3e:	8b ce                	mov    %esi,%ecx
411d40:	ff 50 10             	call   *0x10(%eax)
411d43:	e9 9b 01 00 00       	jmp    0x411ee3
411d48:	39 5e 40             	cmp    %ebx,0x40(%esi)
411d4b:	57                   	push   %edi
411d4c:	74 3b                	je     0x411d89
411d4e:	33 ff                	xor    %edi,%edi
411d50:	39 5e 38             	cmp    %ebx,0x38(%esi)
411d53:	7e 31                	jle    0x411d86
411d55:	89 5d f8             	mov    %ebx,-0x8(%ebp)
411d58:	8b 46 40             	mov    0x40(%esi),%eax
411d5b:	03 45 f8             	add    -0x8(%ebp),%eax
411d5e:	50                   	push   %eax
411d5f:	ff 15 f4 04 4b 00    	call   *0x4b04f4
411d65:	83 45 f8 10          	addl   $0x10,-0x8(%ebp)
411d69:	47                   	inc    %edi
411d6a:	3b 7e 38             	cmp    0x38(%esi),%edi
411d6d:	7c e9                	jl     0x411d58
411d6f:	39 5e 38             	cmp    %ebx,0x38(%esi)
411d72:	7e 12                	jle    0x411d86
411d74:	ff 76 40             	push   0x40(%esi)
411d77:	e8 04 e3 02 00       	call   0x440080
411d7c:	ff 76 3c             	push   0x3c(%esi)
411d7f:	e8 fc e2 02 00       	call   0x440080
411d84:	59                   	pop    %ecx
411d85:	59                   	pop    %ecx
411d86:	89 5e 40             	mov    %ebx,0x40(%esi)
411d89:	33 c9                	xor    %ecx,%ecx
411d8b:	39 5e 10             	cmp    %ebx,0x10(%esi)
411d8e:	89 5e 38             	mov    %ebx,0x38(%esi)
411d91:	7e 17                	jle    0x411daa
411d93:	8b 46 14             	mov    0x14(%esi),%eax
411d96:	83 c0 24             	add    $0x24,%eax
411d99:	8b 10                	mov    (%eax),%edx
411d9b:	8b 52 0c             	mov    0xc(%edx),%edx
411d9e:	01 56 38             	add    %edx,0x38(%esi)
411da1:	41                   	inc    %ecx
411da2:	83 c0 28             	add    $0x28,%eax
411da5:	3b 4e 10             	cmp    0x10(%esi),%ecx
411da8:	7c ef                	jl     0x411d99
411daa:	8b 46 38             	mov    0x38(%esi),%eax
411dad:	3b c3                	cmp    %ebx,%eax
411daf:	7e 10                	jle    0x411dc1
411db1:	8d 04 40             	lea    (%eax,%eax,2),%eax
411db4:	c1 e0 04             	shl    $0x4,%eax
411db7:	50                   	push   %eax
411db8:	e8 98 e2 02 00       	call   0x440055
411dbd:	59                   	pop    %ecx
411dbe:	89 46 3c             	mov    %eax,0x3c(%esi)
411dc1:	33 ff                	xor    %edi,%edi
411dc3:	39 5e 10             	cmp    %ebx,0x10(%esi)
411dc6:	89 7d f8             	mov    %edi,-0x8(%ebp)
411dc9:	89 5d f4             	mov    %ebx,-0xc(%ebp)
411dcc:	0f 8e a7 00 00 00    	jle    0x411e79
411dd2:	89 5d fc             	mov    %ebx,-0x4(%ebp)
411dd5:	8b 46 14             	mov    0x14(%esi),%eax
411dd8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
411ddb:	8b 44 08 24          	mov    0x24(%eax,%ecx,1),%eax
411ddf:	8b 40 04             	mov    0x4(%eax),%eax
411de2:	3b c3                	cmp    %ebx,%eax
411de4:	89 45 f0             	mov    %eax,-0x10(%ebp)
411de7:	74 7d                	je     0x411e66
411de9:	8d 3c 7f             	lea    (%edi,%edi,2),%edi
411dec:	c1 e7 04             	shl    $0x4,%edi
411def:	8b 4d fc             	mov    -0x4(%ebp),%ecx
411df2:	8d 45 f0             	lea    -0x10(%ebp),%eax
411df5:	50                   	push   %eax
411df6:	8b 46 14             	mov    0x14(%esi),%eax
411df9:	8b 4c 08 24          	mov    0x24(%eax,%ecx,1),%ecx
411dfd:	e8 60 56 ff ff       	call   0x407462
411e02:	8b 18                	mov    (%eax),%ebx
411e04:	8b 46 14             	mov    0x14(%esi),%eax
411e07:	03 45 fc             	add    -0x4(%ebp),%eax
411e0a:	8b ce                	mov    %esi,%ecx
411e0c:	50                   	push   %eax
411e0d:	8b 46 3c             	mov    0x3c(%esi),%eax
411e10:	03 c7                	add    %edi,%eax
411e12:	50                   	push   %eax
411e13:	e8 a6 d8 ff ff       	call   0x40f6be
411e18:	8b 4e 3c             	mov    0x3c(%esi),%ecx
411e1b:	8b 45 f8             	mov    -0x8(%ebp),%eax
411e1e:	c1 e0 04             	shl    $0x4,%eax
411e21:	89 44 0f 18          	mov    %eax,0x18(%edi,%ecx,1)
411e25:	8b 46 3c             	mov    0x3c(%esi),%eax
411e28:	83 64 07 1c 00       	andl   $0x0,0x1c(%edi,%eax,1)
411e2d:	8b 46 3c             	mov    0x3c(%esi),%eax
411e30:	83 4c 07 24 ff       	orl    $0xffffffff,0x24(%edi,%eax,1)
411e35:	8b 46 3c             	mov    0x3c(%esi),%eax
411e38:	83 4c 07 20 ff       	orl    $0xffffffff,0x20(%edi,%eax,1)
411e3d:	8b 46 3c             	mov    0x3c(%esi),%eax
411e40:	ff 45 f8             	incl   -0x8(%ebp)
411e43:	c7 44 07 28 01 00 00 	movl   $0x1,0x28(%edi,%eax,1)
411e4a:	00
411e4b:	8b 46 3c             	mov    0x3c(%esi),%eax
411e4e:	8b 8b 9c 00 00 00    	mov    0x9c(%ebx),%ecx
411e54:	89 4c 07 2c          	mov    %ecx,0x2c(%edi,%eax,1)
411e58:	83 c7 30             	add    $0x30,%edi
411e5b:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
411e5f:	75 8e                	jne    0x411def
411e61:	8b 7d f8             	mov    -0x8(%ebp),%edi
411e64:	33 db                	xor    %ebx,%ebx
411e66:	ff 45 f4             	incl   -0xc(%ebp)
411e69:	8b 45 f4             	mov    -0xc(%ebp),%eax
411e6c:	83 45 fc 28          	addl   $0x28,-0x4(%ebp)
411e70:	3b 46 10             	cmp    0x10(%esi),%eax
411e73:	0f 8c 5c ff ff ff    	jl     0x411dd5
411e79:	8b 4e 38             	mov    0x38(%esi),%ecx
411e7c:	8b 46 08             	mov    0x8(%esi),%eax
411e7f:	8b 10                	mov    (%eax),%edx
411e81:	53                   	push   %ebx
411e82:	8b f9                	mov    %ecx,%edi
411e84:	c1 e7 04             	shl    $0x4,%edi
411e87:	57                   	push   %edi
411e88:	ff 76 3c             	push   0x3c(%esi)
411e8b:	51                   	push   %ecx
411e8c:	50                   	push   %eax
411e8d:	ff 52 10             	call   *0x10(%edx)
411e90:	8b 46 38             	mov    0x38(%esi),%eax
411e93:	3b c3                	cmp    %ebx,%eax
411e95:	74 0d                	je     0x411ea4
411e97:	c1 e0 04             	shl    $0x4,%eax
411e9a:	50                   	push   %eax
411e9b:	e8 b5 e1 02 00       	call   0x440055
411ea0:	59                   	pop    %ecx
411ea1:	89 46 40             	mov    %eax,0x40(%esi)
411ea4:	39 5e 38             	cmp    %ebx,0x38(%esi)
411ea7:	89 5d f4             	mov    %ebx,-0xc(%ebp)
411eaa:	7e 28                	jle    0x411ed4
411eac:	33 ff                	xor    %edi,%edi
411eae:	8b 46 40             	mov    0x40(%esi),%eax
411eb1:	6a 10                	push   $0x10
411eb3:	03 c7                	add    %edi,%eax
411eb5:	53                   	push   %ebx
411eb6:	50                   	push   %eax
411eb7:	e8 84 63 00 00       	call   0x418240
411ebc:	8b 46 40             	mov    0x40(%esi),%eax
411ebf:	83 c4 0c             	add    $0xc,%esp
411ec2:	ff 45 f4             	incl   -0xc(%ebp)
411ec5:	66 89 1c 07          	mov    %bx,(%edi,%eax,1)
411ec9:	8b 45 f4             	mov    -0xc(%ebp),%eax
411ecc:	83 c7 10             	add    $0x10,%edi
411ecf:	3b 46 38             	cmp    0x38(%esi),%eax
411ed2:	7c da                	jl     0x411eae
411ed4:	8b ce                	mov    %esi,%ecx
411ed6:	e8 1d f8 ff ff       	call   0x4116f8
411edb:	8b 06                	mov    (%esi),%eax
411edd:	8b ce                	mov    %esi,%ecx
411edf:	ff 50 10             	call   *0x10(%eax)
411ee2:	5f                   	pop    %edi
411ee3:	5e                   	pop    %esi
411ee4:	5b                   	pop    %ebx
411ee5:	c9                   	leave
411ee6:	c3                   	ret
411ee7:	b8 e4 36 48 00       	mov    $0x4836e4,%eax
411eec:	e8 8b 5d 00 00       	call   0x417c7c
411ef1:	83 ec 68             	sub    $0x68,%esp
411ef4:	53                   	push   %ebx
411ef5:	56                   	push   %esi
411ef6:	33 db                	xor    %ebx,%ebx
411ef8:	57                   	push   %edi
411ef9:	8b f1                	mov    %ecx,%esi
411efb:	33 ff                	xor    %edi,%edi
411efd:	39 5e 48             	cmp    %ebx,0x48(%esi)
411f00:	89 7d e8             	mov    %edi,-0x18(%ebp)
411f03:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
411f06:	0f 84 fb 03 00 00    	je     0x412307
411f0c:	33 c0                	xor    %eax,%eax
411f0e:	39 5e 54             	cmp    %ebx,0x54(%esi)
411f11:	0f 84 e1 03 00 00    	je     0x4122f8
411f17:	40                   	inc    %eax
411f18:	39 46 10             	cmp    %eax,0x10(%esi)
411f1b:	89 45 e8             	mov    %eax,-0x18(%ebp)
411f1e:	0f 8c d2 03 00 00    	jl     0x4122f6
411f24:	c7 45 e0 30 00 00 00 	movl   $0x30,-0x20(%ebp)
411f2b:	c7 45 dc 28 00 00 00 	movl   $0x28,-0x24(%ebp)
411f32:	8b 46 14             	mov    0x14(%esi),%eax
411f35:	8b 4d dc             	mov    -0x24(%ebp),%ecx
411f38:	8b 44 08 fc          	mov    -0x4(%eax,%ecx,1),%eax
411f3c:	3b c3                	cmp    %ebx,%eax
411f3e:	0f 84 93 03 00 00    	je     0x4122d7
411f44:	8b 40 04             	mov    0x4(%eax),%eax
411f47:	3b c3                	cmp    %ebx,%eax
411f49:	89 45 d4             	mov    %eax,-0x2c(%ebp)
411f4c:	0f 84 85 03 00 00    	je     0x4122d7
411f52:	8b 4d dc             	mov    -0x24(%ebp),%ecx
411f55:	8d 45 d4             	lea    -0x2c(%ebp),%eax
411f58:	50                   	push   %eax
411f59:	8b 46 14             	mov    0x14(%esi),%eax
411f5c:	8b 4c 08 fc          	mov    -0x4(%eax,%ecx,1),%ecx
411f60:	e8 fd 54 ff ff       	call   0x407462
411f65:	8b 38                	mov    (%eax),%edi
411f67:	8d 87 a4 00 00 00    	lea    0xa4(%edi),%eax
411f6d:	39 18                	cmp    %ebx,(%eax)
411f6f:	0f 84 59 03 00 00    	je     0x4122ce
411f75:	ff 45 e4             	incl   -0x1c(%ebp)
411f78:	89 18                	mov    %ebx,(%eax)
411f7a:	33 c0                	xor    %eax,%eax
411f7c:	40                   	inc    %eax
411f7d:	39 45 e4             	cmp    %eax,-0x1c(%ebp)
411f80:	75 03                	jne    0x411f85
411f82:	89 46 44             	mov    %eax,0x44(%esi)
411f85:	8b 4e 54             	mov    0x54(%esi),%ecx
411f88:	8d 45 ee             	lea    -0x12(%ebp),%eax
411f8b:	50                   	push   %eax
411f8c:	ff 75 e8             	push   -0x18(%ebp)
411f8f:	e8 d2 de ff ff       	call   0x40fe66
411f94:	84 c0                	test   %al,%al
411f96:	0f 84 32 03 00 00    	je     0x4122ce
411f9c:	8d 87 a8 00 00 00    	lea    0xa8(%edi),%eax
411fa2:	50                   	push   %eax
411fa3:	8d 4d bc             	lea    -0x44(%ebp),%ecx
411fa6:	89 45 d0             	mov    %eax,-0x30(%ebp)
411fa9:	e8 e0 88 ff ff       	call   0x40a88e
411fae:	89 5d fc             	mov    %ebx,-0x4(%ebp)
411fb1:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
411fb4:	89 5d 90             	mov    %ebx,-0x70(%ebp)
411fb7:	89 5d 94             	mov    %ebx,-0x6c(%ebp)
411fba:	89 5d 98             	mov    %ebx,-0x68(%ebp)
411fbd:	89 5d a8             	mov    %ebx,-0x58(%ebp)
411fc0:	89 5d b0             	mov    %ebx,-0x50(%ebp)
411fc3:	89 5d 9c             	mov    %ebx,-0x64(%ebp)
411fc6:	89 5d b8             	mov    %ebx,-0x48(%ebp)
411fc9:	8b 4e 54             	mov    0x54(%esi),%ecx
411fcc:	8b 41 14             	mov    0x14(%ecx),%eax
411fcf:	8b 7d e0             	mov    -0x20(%ebp),%edi
411fd2:	ff 74 38 10          	push   0x10(%eax,%edi,1)
411fd6:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
411fda:	ff 75 e8             	push   -0x18(%ebp)