403aef:	cc                   	int3
403af0:	55                   	push   %ebp
403af1:	8b ec                	mov    %esp,%ebp
403af3:	8b 01                	mov    (%ecx),%eax
403af5:	83 ec 08             	sub    $0x8,%esp
403af8:	56                   	push   %esi
403af9:	8b 70 04             	mov    0x4(%eax),%esi
403afc:	57                   	push   %edi
403afd:	8b 7d 08             	mov    0x8(%ebp),%edi
403b00:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
403b04:	89 37                	mov    %esi,(%edi)
403b06:	c7 47 04 00 00 00 00 	movl   $0x0,0x4(%edi)
403b0d:	89 47 08             	mov    %eax,0x8(%edi)
403b10:	75 58                	jne    0x403b6a
403b12:	53                   	push   %ebx
403b13:	8b 5d 0c             	mov    0xc(%ebp),%ebx
403b16:	8b 4b 14             	mov    0x14(%ebx),%ecx
403b19:	8b 43 10             	mov    0x10(%ebx),%eax
403b1c:	89 4d f8             	mov    %ecx,-0x8(%ebp)
403b1f:	89 45 fc             	mov    %eax,-0x4(%ebp)
403b22:	89 37                	mov    %esi,(%edi)
403b24:	8b c3                	mov    %ebx,%eax
403b26:	83 f9 08             	cmp    $0x8,%ecx
403b29:	72 02                	jb     0x403b2d
403b2b:	8b 03                	mov    (%ebx),%eax
403b2d:	83 7e 24 08          	cmpl   $0x8,0x24(%esi)
403b31:	8d 4e 10             	lea    0x10(%esi),%ecx
403b34:	72 03                	jb     0x403b39
403b36:	8b 4e 10             	mov    0x10(%esi),%ecx
403b39:	ff 75 fc             	push   -0x4(%ebp)
403b3c:	8b 56 20             	mov    0x20(%esi),%edx
403b3f:	50                   	push   %eax
403b40:	e8 db 00 00 00       	call   0x403c20
403b45:	83 c4 08             	add    $0x8,%esp
403b48:	85 c0                	test   %eax,%eax
403b4a:	79 07                	jns    0x403b53
403b4c:	8b 76 08             	mov    0x8(%esi),%esi
403b4f:	33 c0                	xor    %eax,%eax
403b51:	eb 0a                	jmp    0x403b5d
403b53:	89 77 08             	mov    %esi,0x8(%edi)
403b56:	b8 01 00 00 00       	mov    $0x1,%eax
403b5b:	8b 36                	mov    (%esi),%esi
403b5d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
403b60:	89 47 04             	mov    %eax,0x4(%edi)
403b63:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
403b67:	74 b9                	je     0x403b22
403b69:	5b                   	pop    %ebx
403b6a:	8b c7                	mov    %edi,%eax
403b6c:	5f                   	pop    %edi
403b6d:	5e                   	pop    %esi
403b6e:	8b e5                	mov    %ebp,%esp
403b70:	5d                   	pop    %ebp
403b71:	c2 08 00             	ret    $0x8
403b74:	cc                   	int3
403b75:	cc                   	int3
403b76:	cc                   	int3
403b77:	cc                   	int3
403b78:	cc                   	int3
403b79:	cc                   	int3
403b7a:	cc                   	int3
403b7b:	cc                   	int3
403b7c:	cc                   	int3
403b7d:	cc                   	int3
403b7e:	cc                   	int3
403b7f:	cc                   	int3
403b80:	56                   	push   %esi
403b81:	8b f1                	mov    %ecx,%esi
403b83:	8b 4e 2c             	mov    0x2c(%esi),%ecx
403b86:	83 f9 08             	cmp    $0x8,%ecx
403b89:	72 2e                	jb     0x403bb9
403b8b:	8b 46 18             	mov    0x18(%esi),%eax
403b8e:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
403b95:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
403b9b:	72 12                	jb     0x403baf
403b9d:	8b 50 fc             	mov    -0x4(%eax),%edx
403ba0:	83 c1 23             	add    $0x23,%ecx
403ba3:	2b c2                	sub    %edx,%eax
403ba5:	83 c0 fc             	add    $0xfffffffc,%eax
403ba8:	83 f8 1f             	cmp    $0x1f,%eax
403bab:	77 6a                	ja     0x403c17
403bad:	8b c2                	mov    %edx,%eax
403baf:	51                   	push   %ecx
403bb0:	50                   	push   %eax
403bb1:	e8 52 5e 06 00       	call   0x469a08
403bb6:	83 c4 08             	add    $0x8,%esp
403bb9:	33 c0                	xor    %eax,%eax
403bbb:	c7 46 28 00 00 00 00 	movl   $0x0,0x28(%esi)
403bc2:	c7 46 2c 07 00 00 00 	movl   $0x7,0x2c(%esi)
403bc9:	66 89 46 18          	mov    %ax,0x18(%esi)
403bcd:	8b 4e 14             	mov    0x14(%esi),%ecx
403bd0:	83 f9 08             	cmp    $0x8,%ecx
403bd3:	72 2d                	jb     0x403c02
403bd5:	8b 06                	mov    (%esi),%eax
403bd7:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
403bde:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
403be4:	72 12                	jb     0x403bf8
403be6:	8b 50 fc             	mov    -0x4(%eax),%edx
403be9:	83 c1 23             	add    $0x23,%ecx
403bec:	2b c2                	sub    %edx,%eax
403bee:	83 c0 fc             	add    $0xfffffffc,%eax
403bf1:	83 f8 1f             	cmp    $0x1f,%eax
403bf4:	77 21                	ja     0x403c17
403bf6:	8b c2                	mov    %edx,%eax
403bf8:	51                   	push   %ecx
403bf9:	50                   	push   %eax
403bfa:	e8 09 5e 06 00       	call   0x469a08
403bff:	83 c4 08             	add    $0x8,%esp
403c02:	33 c0                	xor    %eax,%eax
403c04:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
403c0b:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
403c12:	66 89 06             	mov    %ax,(%esi)
403c15:	5e                   	pop    %esi
403c16:	c3                   	ret
403c17:	e8 15 5a 07 00       	call   0x479631
403c1c:	cc                   	int3
403c1d:	cc                   	int3
403c1e:	cc                   	int3
403c1f:	cc                   	int3
403c20:	55                   	push   %ebp
403c21:	8b ec                	mov    %esp,%ebp
403c23:	51                   	push   %ecx
403c24:	8b c2                	mov    %edx,%eax
403c26:	8b d1                	mov    %ecx,%edx
403c28:	8b 4d 0c             	mov    0xc(%ebp),%ecx
403c2b:	3b c8                	cmp    %eax,%ecx
403c2d:	53                   	push   %ebx
403c2e:	56                   	push   %esi
403c2f:	8b 75 08             	mov    0x8(%ebp),%esi
403c32:	57                   	push   %edi
403c33:	8b f8                	mov    %eax,%edi
403c35:	89 45 fc             	mov    %eax,-0x4(%ebp)
403c38:	0f 42 f9             	cmovb  %ecx,%edi
403c3b:	85 ff                	test   %edi,%edi
403c3d:	74 1e                	je     0x403c5d
403c3f:	2b d6                	sub    %esi,%edx
403c41:	0f b7 04 32          	movzwl (%edx,%esi,1),%eax
403c45:	0f b7 0e             	movzwl (%esi),%ecx
403c48:	8b d8                	mov    %eax,%ebx
403c4a:	66 3b c1             	cmp    %cx,%ax
403c4d:	75 1c                	jne    0x403c6b
403c4f:	83 c6 02             	add    $0x2,%esi
403c52:	83 ef 01             	sub    $0x1,%edi
403c55:	75 ea                	jne    0x403c41
403c57:	8b 45 fc             	mov    -0x4(%ebp),%eax
403c5a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
403c5d:	3b c8                	cmp    %eax,%ecx
403c5f:	76 1a                	jbe    0x403c7b
403c61:	5f                   	pop    %edi
403c62:	5e                   	pop    %esi
403c63:	83 c8 ff             	or     $0xffffffff,%eax
403c66:	5b                   	pop    %ebx
403c67:	8b e5                	mov    %ebp,%esp
403c69:	5d                   	pop    %ebp
403c6a:	c3                   	ret
403c6b:	66 3b d9             	cmp    %cx,%bx
403c6e:	5f                   	pop    %edi
403c6f:	1b c0                	sbb    %eax,%eax
403c71:	83 e0 fe             	and    $0xfffffffe,%eax
403c74:	5e                   	pop    %esi
403c75:	40                   	inc    %eax
403c76:	5b                   	pop    %ebx
403c77:	8b e5                	mov    %ebp,%esp
403c79:	5d                   	pop    %ebp
403c7a:	c3                   	ret
403c7b:	5f                   	pop    %edi
403c7c:	1b c0                	sbb    %eax,%eax
403c7e:	5e                   	pop    %esi
403c7f:	f7 d8                	neg    %eax
403c81:	5b                   	pop    %ebx
403c82:	8b e5                	mov    %ebp,%esp
403c84:	5d                   	pop    %ebp
403c85:	c3                   	ret
403c86:	cc                   	int3
403c87:	cc                   	int3
403c88:	cc                   	int3
403c89:	cc                   	int3
403c8a:	cc                   	int3
403c8b:	cc                   	int3
403c8c:	cc                   	int3
403c8d:	cc                   	int3
403c8e:	cc                   	int3
403c8f:	cc                   	int3
403c90:	55                   	push   %ebp
403c91:	8b ec                	mov    %esp,%ebp
403c93:	83 ec 0c             	sub    $0xc,%esp
403c96:	53                   	push   %ebx
403c97:	8b d9                	mov    %ecx,%ebx
403c99:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
403ca0:	56                   	push   %esi
403ca1:	57                   	push   %edi
403ca2:	80 3b 00             	cmpb   $0x0,(%ebx)
403ca5:	0f 84 82 01 00 00    	je     0x403e2d
403cab:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
403cb0:	8b 7b 08             	mov    0x8(%ebx),%edi
403cb3:	8b 43 04             	mov    0x4(%ebx),%eax
403cb6:	89 45 f4             	mov    %eax,-0xc(%ebp)
403cb9:	89 7d f8             	mov    %edi,-0x8(%ebp)
403cbc:	8d 77 10             	lea    0x10(%edi),%esi
403cbf:	85 c0                	test   %eax,%eax
403cc1:	74 28                	je     0x403ceb
403cc3:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
403cc7:	8b d6                	mov    %esi,%edx
403cc9:	72 02                	jb     0x403ccd
403ccb:	8b 16                	mov    (%esi),%edx
403ccd:	8b 07                	mov    (%edi),%eax
403ccf:	52                   	push   %edx
403cd0:	68 70 fb 4a 00       	push   $0x4afb70
403cd5:	50                   	push   %eax
403cd6:	8b 08                	mov    (%eax),%ecx
403cd8:	8b 79 04             	mov    0x4(%ecx),%edi
403cdb:	8b cf                	mov    %edi,%ecx
403cdd:	ff 15 d4 e2 49 00    	call   *0x49e2d4
403ce3:	ff d7                	call   *%edi
403ce5:	8b 7d f8             	mov    -0x8(%ebp),%edi
403ce8:	83 c4 0c             	add    $0xc,%esp
403ceb:	8b 4f 0c             	mov    0xc(%edi),%ecx
403cee:	6a 00                	push   $0x0
403cf0:	57                   	push   %edi
403cf1:	68 30 49 40 00       	push   $0x404930
403cf6:	68 80 ee 36 00       	push   $0x36ee80
403cfb:	6a 01                	push   $0x1
403cfd:	56                   	push   %esi
403cfe:	6a 02                	push   $0x2
403d00:	e8 8b a4 01 00       	call   0x41e190
403d05:	85 c0                	test   %eax,%eax
403d07:	74 5f                	je     0x403d68
403d09:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
403d0d:	74 1f                	je     0x403d2e
403d0f:	8b 07                	mov    (%edi),%eax
403d11:	68 f0 fb 4a 00       	push   $0x4afbf0
403d16:	68 60 ea 4a 00       	push   $0x4aea60
403d1b:	50                   	push   %eax
403d1c:	8b 08                	mov    (%eax),%ecx
403d1e:	8b 71 24             	mov    0x24(%ecx),%esi
403d21:	8b ce                	mov    %esi,%ecx
403d23:	ff 15 d4 e2 49 00    	call   *0x49e2d4
403d29:	ff d6                	call   *%esi
403d2b:	83 c4 0c             	add    $0xc,%esp
403d2e:	8b 43 0c             	mov    0xc(%ebx),%eax
403d31:	83 c0 04             	add    $0x4,%eax
403d34:	68 08 f3 4a 00       	push   $0x4af308
403d39:	68 60 ea 4a 00       	push   $0x4aea60
403d3e:	50                   	push   %eax
403d3f:	8b 08                	mov    (%eax),%ecx
403d41:	8b 71 24             	mov    0x24(%ecx),%esi
403d44:	8b ce                	mov    %esi,%ecx
403d46:	ff 15 d4 e2 49 00    	call   *0x49e2d4
403d4c:	ff d6                	call   *%esi
403d4e:	83 c4 0c             	add    $0xc,%esp
403d51:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
403d58:	68 30 75 00 00       	push   $0x7530
403d5d:	ff 15 b0 e0 49 00    	call   *0x49e0b0
403d63:	e9 80 00 00 00       	jmp    0x403de8
403d68:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
403d6c:	72 02                	jb     0x403d70
403d6e:	8b 36                	mov    (%esi),%esi
403d70:	8b 07                	mov    (%edi),%eax
403d72:	56                   	push   %esi
403d73:	68 58 fc 4a 00       	push   $0x4afc58
403d78:	50                   	push   %eax
403d79:	8b 08                	mov    (%eax),%ecx
403d7b:	8b 71 04             	mov    0x4(%ecx),%esi
403d7e:	8b ce                	mov    %esi,%ecx
403d80:	ff 15 d4 e2 49 00    	call   *0x49e2d4
403d86:	ff d6                	call   *%esi
403d88:	83 c4 0c             	add    $0xc,%esp
403d8b:	e8 b0 0b 00 00       	call   0x404940
403d90:	8b c8                	mov    %eax,%ecx
403d92:	e8 19 19 00 00       	call   0x4056b0
403d97:	8b 4b 0c             	mov    0xc(%ebx),%ecx
403d9a:	83 c1 04             	add    $0x4,%ecx
403d9d:	84 c0                	test   %al,%al
403d9f:	74 28                	je     0x403dc9
403da1:	c7 43 04 01 00 00 00 	movl   $0x1,0x4(%ebx)
403da8:	8b 01                	mov    (%ecx),%eax
403daa:	68 58 f3 4a 00       	push   $0x4af358
403daf:	51                   	push   %ecx
403db0:	8b 70 14             	mov    0x14(%eax),%esi
403db3:	8b ce                	mov    %esi,%ecx
403db5:	ff 15 d4 e2 49 00    	call   *0x49e2d4
403dbb:	ff d6                	call   *%esi
403dbd:	83 c4 08             	add    $0x8,%esp
403dc0:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
403dc7:	eb 25                	jmp    0x403dee
403dc9:	8b 01                	mov    (%ecx),%eax
403dcb:	68 a8 f3 4a 00       	push   $0x4af3a8
403dd0:	51                   	push   %ecx
403dd1:	8b 70 14             	mov    0x14(%eax),%esi
403dd4:	8b ce                	mov    %esi,%ecx
403dd6:	ff 15 d4 e2 49 00    	call   *0x49e2d4
403ddc:	ff d6                	call   *%esi
403dde:	83 c4 08             	add    $0x8,%esp
403de1:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
403de8:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
403dec:	74 36                	je     0x403e24
403dee:	8b 43 0c             	mov    0xc(%ebx),%eax
403df1:	83 c0 04             	add    $0x4,%eax
403df4:	68 f0 f3 4a 00       	push   $0x4af3f0
403df9:	50                   	push   %eax
403dfa:	8b 08                	mov    (%eax),%ecx
403dfc:	8b 71 14             	mov    0x14(%ecx),%esi
403dff:	8b ce                	mov    %esi,%ecx
403e01:	ff 15 d4 e2 49 00    	call   *0x49e2d4
403e07:	ff d6                	call   *%esi
403e09:	83 c4 08             	add    $0x8,%esp
403e0c:	e8 2f 0b 00 00       	call   0x404940
403e11:	8b 48 0c             	mov    0xc(%eax),%ecx
403e14:	e8 17 bc 01 00       	call   0x41fa30
403e19:	68 e8 03 00 00       	push   $0x3e8
403e1e:	ff 15 b0 e0 49 00    	call   *0x49e0b0
403e24:	80 3b 00             	cmpb   $0x0,(%ebx)
403e27:	0f 85 83 fe ff ff    	jne    0x403cb0
403e2d:	5f                   	pop    %edi
403e2e:	5e                   	pop    %esi
403e2f:	b0 01                	mov    $0x1,%al
403e31:	5b                   	pop    %ebx
403e32:	8b e5                	mov    %ebp,%esp
403e34:	5d                   	pop    %ebp
403e35:	c3                   	ret
403e36:	cc                   	int3
403e37:	cc                   	int3
403e38:	cc                   	int3
403e39:	cc                   	int3
403e3a:	cc                   	int3
403e3b:	cc                   	int3
403e3c:	cc                   	int3
403e3d:	cc                   	int3
403e3e:	cc                   	int3
403e3f:	cc                   	int3
403e40:	55                   	push   %ebp
403e41:	8b ec                	mov    %esp,%ebp
403e43:	57                   	push   %edi
403e44:	8b 7d 08             	mov    0x8(%ebp),%edi
403e47:	85 ff                	test   %edi,%edi
403e49:	0f 84 93 00 00 00    	je     0x403ee2
403e4f:	8b 47 40             	mov    0x40(%edi),%eax
403e52:	56                   	push   %esi
403e53:	68 b8 f4 4a 00       	push   $0x4af4b8
403e58:	50                   	push   %eax
403e59:	8b 08                	mov    (%eax),%ecx
403e5b:	8b 71 04             	mov    0x4(%ecx),%esi
403e5e:	8b ce                	mov    %esi,%ecx
403e60:	ff 15 d4 e2 49 00    	call   *0x49e2d4
403e66:	ff d6                	call   *%esi
403e68:	8b 47 44             	mov    0x44(%edi),%eax
403e6b:	83 c4 08             	add    $0x8,%esp
403e6e:	85 c0                	test   %eax,%eax
403e70:	75 67                	jne    0x403ed9
403e72:	8b 35 94 8c 4c 00    	mov    0x4c8c94,%esi
403e78:	85 f6                	test   %esi,%esi