403c87:	8d 4d 14             	lea    0x14(%ebp),%ecx
403c8a:	51                   	push   %ecx
403c8b:	6a 00                	push   $0x0
403c8d:	ff 75 10             	push   0x10(%ebp)
403c90:	ff 75 0c             	push   0xc(%ebp)
403c93:	50                   	push   %eax
403c94:	e8 a7 ff ff ff       	call   0x403c40
403c99:	83 c4 14             	add    $0x14,%esp
403c9c:	59                   	pop    %ecx
403c9d:	5d                   	pop    %ebp
403c9e:	c3                   	ret
403c9f:	cc                   	int3
403ca0:	55                   	push   %ebp
403ca1:	8b ec                	mov    %esp,%ebp
403ca3:	83 ec 0c             	sub    $0xc,%esp
403ca6:	a1 14 40 45 00       	mov    0x454014,%eax
403cab:	33 c5                	xor    %ebp,%eax
403cad:	89 45 fc             	mov    %eax,-0x4(%ebp)
403cb0:	8b 55 08             	mov    0x8(%ebp),%edx
403cb3:	8d 45 f4             	lea    -0xc(%ebp),%eax
403cb6:	56                   	push   %esi
403cb7:	8b f1                	mov    %ecx,%esi
403cb9:	89 55 f4             	mov    %edx,-0xc(%ebp)
403cbc:	8d 4e 04             	lea    0x4(%esi),%ecx
403cbf:	c6 45 f8 01          	movb   $0x1,-0x8(%ebp)
403cc3:	51                   	push   %ecx
403cc4:	0f 57 c0             	xorps  %xmm0,%xmm0
403cc7:	c7 06 44 f8 43 00    	movl   $0x43f844,(%esi)
403ccd:	50                   	push   %eax
403cce:	66 0f d6 01          	movq   %xmm0,(%ecx)
403cd2:	e8 34 92 01 00       	call   0x41cf0b
403cd7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
403cda:	83 c4 08             	add    $0x8,%esp
403cdd:	8b c6                	mov    %esi,%eax
403cdf:	33 cd                	xor    %ebp,%ecx
403ce1:	5e                   	pop    %esi
403ce2:	e8 e9 7b 01 00       	call   0x41b8d0
403ce7:	8b e5                	mov    %ebp,%esp
403ce9:	5d                   	pop    %ebp
403cea:	c2 04 00             	ret    $0x4
403ced:	cc                   	int3
403cee:	cc                   	int3
403cef:	cc                   	int3
403cf0:	55                   	push   %ebp
403cf1:	8b ec                	mov    %esp,%ebp
403cf3:	56                   	push   %esi
403cf4:	8b f1                	mov    %ecx,%esi
403cf6:	0f 57 c0             	xorps  %xmm0,%xmm0
403cf9:	8d 46 04             	lea    0x4(%esi),%eax
403cfc:	50                   	push   %eax
403cfd:	c7 06 44 f8 43 00    	movl   $0x43f844,(%esi)
403d03:	66 0f d6 00          	movq   %xmm0,(%eax)
403d07:	8b 45 08             	mov    0x8(%ebp),%eax
403d0a:	83 c0 04             	add    $0x4,%eax
403d0d:	50                   	push   %eax
403d0e:	e8 f8 91 01 00       	call   0x41cf0b
403d13:	83 c4 08             	add    $0x8,%esp
403d16:	c7 06 90 f8 43 00    	movl   $0x43f890,(%esi)
403d1c:	8b c6                	mov    %esi,%eax
403d1e:	5e                   	pop    %esi
403d1f:	5d                   	pop    %ebp
403d20:	c2 04 00             	ret    $0x4
403d23:	cc                   	int3
403d24:	cc                   	int3
403d25:	cc                   	int3
403d26:	cc                   	int3
403d27:	cc                   	int3
403d28:	cc                   	int3
403d29:	cc                   	int3
403d2a:	cc                   	int3
403d2b:	cc                   	int3
403d2c:	cc                   	int3
403d2d:	cc                   	int3
403d2e:	cc                   	int3
403d2f:	cc                   	int3
403d30:	55                   	push   %ebp
403d31:	8b ec                	mov    %esp,%ebp
403d33:	8b 45 08             	mov    0x8(%ebp),%eax
403d36:	8b 55 0c             	mov    0xc(%ebp),%edx
403d39:	89 10                	mov    %edx,(%eax)
403d3b:	89 48 04             	mov    %ecx,0x4(%eax)
403d3e:	5d                   	pop    %ebp
403d3f:	c2 08 00             	ret    $0x8
403d42:	cc                   	int3
403d43:	cc                   	int3
403d44:	cc                   	int3
403d45:	cc                   	int3
403d46:	cc                   	int3
403d47:	cc                   	int3
403d48:	cc                   	int3
403d49:	cc                   	int3
403d4a:	cc                   	int3
403d4b:	cc                   	int3
403d4c:	cc                   	int3
403d4d:	cc                   	int3
403d4e:	cc                   	int3
403d4f:	cc                   	int3
403d50:	55                   	push   %ebp
403d51:	8b ec                	mov    %esp,%ebp
403d53:	83 ec 08             	sub    $0x8,%esp
403d56:	56                   	push   %esi
403d57:	57                   	push   %edi
403d58:	ff 75 08             	push   0x8(%ebp)
403d5b:	8b f9                	mov    %ecx,%edi
403d5d:	8d 4d f8             	lea    -0x8(%ebp),%ecx
403d60:	51                   	push   %ecx
403d61:	8b 07                	mov    (%edi),%eax
403d63:	8b 70 0c             	mov    0xc(%eax),%esi
403d66:	8b ce                	mov    %esi,%ecx
403d68:	ff 15 3c f2 43 00    	call   *0x43f23c
403d6e:	8b cf                	mov    %edi,%ecx
403d70:	ff d6                	call   *%esi
403d72:	8b 75 0c             	mov    0xc(%ebp),%esi
403d75:	8b 48 04             	mov    0x4(%eax),%ecx
403d78:	8b 56 04             	mov    0x4(%esi),%edx
403d7b:	8b 49 04             	mov    0x4(%ecx),%ecx
403d7e:	3b 4a 04             	cmp    0x4(%edx),%ecx
403d81:	75 10                	jne    0x403d93
403d83:	8b 00                	mov    (%eax),%eax
403d85:	3b 06                	cmp    (%esi),%eax
403d87:	75 0a                	jne    0x403d93
403d89:	5f                   	pop    %edi
403d8a:	b0 01                	mov    $0x1,%al
403d8c:	5e                   	pop    %esi
403d8d:	8b e5                	mov    %ebp,%esp
403d8f:	5d                   	pop    %ebp
403d90:	c2 08 00             	ret    $0x8
403d93:	5f                   	pop    %edi
403d94:	32 c0                	xor    %al,%al
403d96:	5e                   	pop    %esi
403d97:	8b e5                	mov    %ebp,%esp
403d99:	5d                   	pop    %ebp
403d9a:	c2 08 00             	ret    $0x8
403d9d:	cc                   	int3
403d9e:	cc                   	int3
403d9f:	cc                   	int3
403da0:	55                   	push   %ebp
403da1:	8b ec                	mov    %esp,%ebp
403da3:	8b 41 04             	mov    0x4(%ecx),%eax
403da6:	56                   	push   %esi
403da7:	8b 75 08             	mov    0x8(%ebp),%esi
403daa:	8b 56 04             	mov    0x4(%esi),%edx
403dad:	3b 42 04             	cmp    0x4(%edx),%eax
403db0:	75 0e                	jne    0x403dc0
403db2:	8b 06                	mov    (%esi),%eax
403db4:	3b 45 0c             	cmp    0xc(%ebp),%eax
403db7:	75 07                	jne    0x403dc0
403db9:	b0 01                	mov    $0x1,%al
403dbb:	5e                   	pop    %esi
403dbc:	5d                   	pop    %ebp
403dbd:	c2 08 00             	ret    $0x8
403dc0:	32 c0                	xor    %al,%al
403dc2:	5e                   	pop    %esi
403dc3:	5d                   	pop    %ebp
403dc4:	c2 08 00             	ret    $0x8
403dc7:	cc                   	int3
403dc8:	cc                   	int3
403dc9:	cc                   	int3
403dca:	cc                   	int3
403dcb:	cc                   	int3
403dcc:	cc                   	int3
403dcd:	cc                   	int3
403dce:	cc                   	int3
403dcf:	cc                   	int3
403dd0:	55                   	push   %ebp
403dd1:	8b ec                	mov    %esp,%ebp
403dd3:	8b 45 08             	mov    0x8(%ebp),%eax
403dd6:	8b 4d 0c             	mov    0xc(%ebp),%ecx
403dd9:	89 08                	mov    %ecx,(%eax)
403ddb:	c7 40 04 00 4d 45 00 	movl   $0x454d00,0x4(%eax)
403de2:	5d                   	pop    %ebp
403de3:	c3                   	ret
403de4:	cc                   	int3
403de5:	cc                   	int3
403de6:	cc                   	int3
403de7:	cc                   	int3
403de8:	cc                   	int3
403de9:	cc                   	int3
403dea:	cc                   	int3
403deb:	cc                   	int3
403dec:	cc                   	int3
403ded:	cc                   	int3
403dee:	cc                   	int3
403def:	cc                   	int3
403df0:	53                   	push   %ebx
403df1:	8b dc                	mov    %esp,%ebx
403df3:	83 ec 08             	sub    $0x8,%esp
403df6:	83 e4 f8             	and    $0xfffffff8,%esp
403df9:	83 c4 04             	add    $0x4,%esp
403dfc:	55                   	push   %ebp
403dfd:	8b 6b 04             	mov    0x4(%ebx),%ebp
403e00:	89 6c 24 04          	mov    %ebp,0x4(%esp)
403e04:	8b ec                	mov    %esp,%ebp
403e06:	6a ff                	push   $0xffffffff
403e08:	68 35 d4 43 00       	push   $0x43d435
403e0d:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
403e13:	50                   	push   %eax
403e14:	53                   	push   %ebx
403e15:	83 ec 68             	sub    $0x68,%esp
403e18:	a1 14 40 45 00       	mov    0x454014,%eax
403e1d:	33 c5                	xor    %ebp,%eax
403e1f:	89 45 ec             	mov    %eax,-0x14(%ebp)
403e22:	56                   	push   %esi
403e23:	57                   	push   %edi
403e24:	50                   	push   %eax
403e25:	8d 45 f4             	lea    -0xc(%ebp),%eax
403e28:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
403e2e:	8b f9                	mov    %ecx,%edi
403e30:	89 7d d4             	mov    %edi,-0x2c(%ebp)
403e33:	8b 43 10             	mov    0x10(%ebx),%eax
403e36:	8d 4d b8             	lea    -0x48(%ebp),%ecx
403e39:	50                   	push   %eax
403e3a:	89 7d d4             	mov    %edi,-0x2c(%ebp)
403e3d:	e8 8e 57 00 00       	call   0x4095d0
403e42:	8b 73 0c             	mov    0xc(%ebx),%esi
403e45:	8b 43 08             	mov    0x8(%ebx),%eax
403e48:	89 45 dc             	mov    %eax,-0x24(%ebp)
403e4b:	89 75 d4             	mov    %esi,-0x2c(%ebp)
403e4e:	89 75 e4             	mov    %esi,-0x1c(%ebp)
403e51:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
403e58:	8b 4d c8             	mov    -0x38(%ebp),%ecx
403e5b:	85 c9                	test   %ecx,%ecx
403e5d:	74 44                	je     0x403ea3
403e5f:	8b 55 cc             	mov    -0x34(%ebp),%edx
403e62:	8b c2                	mov    %edx,%eax
403e64:	2b c1                	sub    %ecx,%eax
403e66:	83 f8 02             	cmp    $0x2,%eax
403e69:	72 20                	jb     0x403e8b
403e6b:	8d 41 02             	lea    0x2(%ecx),%eax
403e6e:	83 fa 10             	cmp    $0x10,%edx
403e71:	89 45 c8             	mov    %eax,-0x38(%ebp)
403e74:	ba 3a 20 00 00       	mov    $0x203a,%edx
403e79:	8d 45 b8             	lea    -0x48(%ebp),%eax
403e7c:	0f 43 45 b8          	cmovae -0x48(%ebp),%eax
403e80:	66 89 14 08          	mov    %dx,(%eax,%ecx,1)
403e84:	c6 44 08 02 00       	movb   $0x0,0x2(%eax,%ecx,1)
403e89:	eb 18                	jmp    0x403ea3
403e8b:	6a 02                	push   $0x2
403e8d:	68 d4 da 44 00       	push   $0x44dad4
403e92:	c6 45 e4 00          	movb   $0x0,-0x1c(%ebp)
403e96:	8d 4d b8             	lea    -0x48(%ebp),%ecx
403e99:	ff 75 e4             	push   -0x1c(%ebp)
403e9c:	6a 02                	push   $0x2
403e9e:	e8 8d 84 00 00       	call   0x40c330
403ea3:	8b 06                	mov    (%esi),%eax
403ea5:	8d 4d a0             	lea    -0x60(%ebp),%ecx
403ea8:	ff 75 dc             	push   -0x24(%ebp)
403eab:	51                   	push   %ecx
403eac:	8b 70 08             	mov    0x8(%eax),%esi
403eaf:	8b ce                	mov    %esi,%ecx
403eb1:	ff 15 3c f2 43 00    	call   *0x43f23c
403eb7:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
403eba:	ff d6                	call   *%esi
403ebc:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
403ec0:	8d 55 a0             	lea    -0x60(%ebp),%edx
403ec3:	83 7d b4 10          	cmpl   $0x10,-0x4c(%ebp)
403ec7:	8b 4d b0             	mov    -0x50(%ebp),%ecx
403eca:	0f 43 55 a0          	cmovae -0x60(%ebp),%edx
403ece:	8b 45 cc             	mov    -0x34(%ebp),%eax
403ed1:	8b 75 c8             	mov    -0x38(%ebp),%esi
403ed4:	2b c6                	sub    %esi,%eax
403ed6:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
403ed9:	51                   	push   %ecx
403eda:	52                   	push   %edx
403edb:	3b c8                	cmp    %eax,%ecx
403edd:	77 25                	ja     0x403f04
403edf:	83 7d cc 10          	cmpl   $0x10,-0x34(%ebp)
403ee3:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
403ee6:	89 45 c8             	mov    %eax,-0x38(%ebp)
403ee9:	8d 45 b8             	lea    -0x48(%ebp),%eax
403eec:	0f 43 45 b8          	cmovae -0x48(%ebp),%eax
403ef0:	03 f0                	add    %eax,%esi
403ef2:	56                   	push   %esi
403ef3:	e8 58 95 01 00       	call   0x41d450
403ef8:	8b 45 d4             	mov    -0x2c(%ebp),%eax
403efb:	83 c4 0c             	add    $0xc,%esp
403efe:	c6 04 06 00          	movb   $0x0,(%esi,%eax,1)
403f02:	eb 10                	jmp    0x403f14
403f04:	c6 45 d4 00          	movb   $0x0,-0x2c(%ebp)
403f08:	ff 75 d4             	push   -0x2c(%ebp)
403f0b:	51                   	push   %ecx
403f0c:	8d 4d b8             	lea    -0x48(%ebp),%ecx
403f0f:	e8 1c 84 00 00       	call   0x40c330
403f14:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
403f17:	83 f9 10             	cmp    $0x10,%ecx
403f1a:	72 2c                	jb     0x403f48
403f1c:	8b 55 a0             	mov    -0x60(%ebp),%edx
403f1f:	41                   	inc    %ecx
403f20:	8b c2                	mov    %edx,%eax
403f22:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
403f28:	72 14                	jb     0x403f3e
403f2a:	8b 50 fc             	mov    -0x4(%eax),%edx
403f2d:	83 c1 23             	add    $0x23,%ecx
403f30:	2b c2                	sub    %edx,%eax
403f32:	83 c0 fc             	add    $0xfffffffc,%eax
403f35:	83 f8 1f             	cmp    $0x1f,%eax
403f38:	0f 87 cb 00 00 00    	ja     0x404009
403f3e:	51                   	push   %ecx
403f3f:	52                   	push   %edx
403f40:	e8 c9 79 01 00       	call   0x41b90e
403f45:	83 c4 08             	add    $0x8,%esp
403f48:	0f 10 4d b8          	movups -0x48(%ebp),%xmm1
403f4c:	8d 4d 88             	lea    -0x78(%ebp),%ecx
403f4f:	c7 07 44 f8 43 00    	movl   $0x43f844,(%edi)
403f55:	f3 0f 7e 45 c8       	movq   -0x38(%ebp),%xmm0
403f5a:	66 0f d6 45 98       	movq   %xmm0,-0x68(%ebp)
403f5f:	0f 57 c0             	xorps  %xmm0,%xmm0
403f62:	83 7d 9c 10          	cmpl   $0x10,-0x64(%ebp)
403f66:	66 0f 7e c8          	movd   %xmm1,%eax
403f6a:	66 0f d6 47 04       	movq   %xmm0,0x4(%edi)
403f6f:	0f 11 4d 88          	movups %xmm1,-0x78(%ebp)
403f73:	0f 43 c8             	cmovae %eax,%ecx
403f76:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
403f7d:	8d 47 04             	lea    0x4(%edi),%eax
403f80:	c7 45 cc 0f 00 00 00 	movl   $0xf,-0x34(%ebp)
403f87:	50                   	push   %eax
403f88:	8d 45 d8             	lea    -0x28(%ebp),%eax
403f8b:	c6 45 b8 00          	movb   $0x0,-0x48(%ebp)
403f8f:	50                   	push   %eax
403f90:	89 4d d8             	mov    %ecx,-0x28(%ebp)
403f93:	c6 45 dc 01          	movb   $0x1,-0x24(%ebp)
403f97:	e8 6f 8f 01 00       	call   0x41cf0b
403f9c:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
403f9f:	83 c4 08             	add    $0x8,%esp
403fa2:	c7 07 90 f8 43 00    	movl   $0x43f890,(%edi)
403fa8:	83 f9 10             	cmp    $0x10,%ecx
403fab:	72 28                	jb     0x403fd5
403fad:	8b 55 88             	mov    -0x78(%ebp),%edx
403fb0:	41                   	inc    %ecx
403fb1:	8b c2                	mov    %edx,%eax
403fb3:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
403fb9:	72 10                	jb     0x403fcb
403fbb:	8b 50 fc             	mov    -0x4(%eax),%edx
403fbe:	83 c1 23             	add    $0x23,%ecx
403fc1:	2b c2                	sub    %edx,%eax
403fc3:	83 c0 fc             	add    $0xfffffffc,%eax
403fc6:	83 f8 1f             	cmp    $0x1f,%eax
403fc9:	77 43                	ja     0x40400e
403fcb:	51                   	push   %ecx
403fcc:	52                   	push   %edx
403fcd:	e8 3c 79 01 00       	call   0x41b90e
403fd2:	83 c4 08             	add    $0x8,%esp
403fd5:	8b 4b 08             	mov    0x8(%ebx),%ecx
403fd8:	8b c7                	mov    %edi,%eax
403fda:	8b 53 0c             	mov    0xc(%ebx),%edx
403fdd:	c7 07 a4 05 44 00    	movl   $0x4405a4,(%edi)
403fe3:	89 4f 0c             	mov    %ecx,0xc(%edi)
403fe6:	89 57 10             	mov    %edx,0x10(%edi)
403fe9:	8b 4d f4             	mov    -0xc(%ebp),%ecx
403fec:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0