404cd0:	50                   	push   %eax
404cd1:	56                   	push   %esi
404cd2:	a1 14 40 45 00       	mov    0x454014,%eax
404cd7:	33 c5                	xor    %ebp,%eax
404cd9:	50                   	push   %eax
404cda:	8d 45 f4             	lea    -0xc(%ebp),%eax
404cdd:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
404ce3:	8b f1                	mov    %ecx,%esi
404ce5:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
404cec:	56                   	push   %esi
404ced:	c7 06 f0 dc 44 00    	movl   $0x44dcf0,(%esi)
404cf3:	e8 8a 67 01 00       	call   0x41b482
404cf8:	83 c4 04             	add    $0x4,%esp
404cfb:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
404cff:	74 0b                	je     0x404d0c
404d01:	6a 38                	push   $0x38
404d03:	56                   	push   %esi
404d04:	e8 05 6c 01 00       	call   0x41b90e
404d09:	83 c4 08             	add    $0x8,%esp
404d0c:	8b c6                	mov    %esi,%eax
404d0e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
404d11:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
404d18:	59                   	pop    %ecx
404d19:	5e                   	pop    %esi
404d1a:	8b e5                	mov    %ebp,%esp
404d1c:	5d                   	pop    %ebp
404d1d:	c2 04 00             	ret    $0x4
404d20:	cc                   	int3
404d21:	cc                   	int3
404d22:	cc                   	int3
404d23:	cc                   	int3
404d24:	cc                   	int3
404d25:	cc                   	int3
404d26:	cc                   	int3
404d27:	cc                   	int3
404d28:	cc                   	int3
404d29:	cc                   	int3
404d2a:	cc                   	int3
404d2b:	cc                   	int3
404d2c:	cc                   	int3
404d2d:	cc                   	int3
404d2e:	cc                   	int3
404d2f:	cc                   	int3
404d30:	55                   	push   %ebp
404d31:	8b ec                	mov    %esp,%ebp
404d33:	6a ff                	push   $0xffffffff
404d35:	68 7d d5 43 00       	push   $0x43d57d
404d3a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
404d40:	50                   	push   %eax
404d41:	83 ec 08             	sub    $0x8,%esp
404d44:	56                   	push   %esi
404d45:	57                   	push   %edi
404d46:	a1 14 40 45 00       	mov    0x454014,%eax
404d4b:	33 c5                	xor    %ebp,%eax
404d4d:	50                   	push   %eax
404d4e:	8d 45 f4             	lea    -0xc(%ebp),%eax
404d51:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
404d57:	8b f9                	mov    %ecx,%edi
404d59:	89 7d f0             	mov    %edi,-0x10(%ebp)
404d5c:	33 c0                	xor    %eax,%eax
404d5e:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
404d64:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
404d6b:	c7 47 14 00 00 00 00 	movl   $0x0,0x14(%edi)
404d72:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
404d79:	c7 47 14 07 00 00 00 	movl   $0x7,0x14(%edi)
404d80:	66 89 07             	mov    %ax,(%edi)
404d83:	8d 77 18             	lea    0x18(%edi),%esi
404d86:	89 45 fc             	mov    %eax,-0x4(%ebp)
404d89:	6a 40                	push   $0x40
404d8b:	89 75 ec             	mov    %esi,-0x14(%ebp)
404d8e:	89 06                	mov    %eax,(%esi)
404d90:	89 46 04             	mov    %eax,0x4(%esi)
404d93:	e8 46 6b 01 00       	call   0x41b8de
404d98:	83 c4 04             	add    $0x4,%esp
404d9b:	89 00                	mov    %eax,(%eax)
404d9d:	89 40 04             	mov    %eax,0x4(%eax)
404da0:	89 40 08             	mov    %eax,0x8(%eax)
404da3:	66 c7 40 0c 01 01    	movw   $0x101,0xc(%eax)
404da9:	89 06                	mov    %eax,(%esi)
404dab:	33 c0                	xor    %eax,%eax
404dad:	c7 47 20 00 00 00 00 	movl   $0x0,0x20(%edi)
404db4:	66 89 47 20          	mov    %ax,0x20(%edi)
404db8:	8b c7                	mov    %edi,%eax
404dba:	c7 47 30 00 00 00 00 	movl   $0x0,0x30(%edi)
404dc1:	c7 47 34 07 00 00 00 	movl   $0x7,0x34(%edi)
404dc8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
404dcb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
404dd2:	59                   	pop    %ecx
404dd3:	5f                   	pop    %edi
404dd4:	5e                   	pop    %esi
404dd5:	8b e5                	mov    %ebp,%esp
404dd7:	5d                   	pop    %ebp
404dd8:	c3                   	ret
404dd9:	cc                   	int3
404dda:	cc                   	int3
404ddb:	cc                   	int3
404ddc:	cc                   	int3
404ddd:	cc                   	int3
404dde:	cc                   	int3
404ddf:	cc                   	int3
404de0:	55                   	push   %ebp
404de1:	8b ec                	mov    %esp,%ebp
404de3:	56                   	push   %esi
404de4:	8b f1                	mov    %ecx,%esi
404de6:	e8 d5 00 00 00       	call   0x404ec0
404deb:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
404def:	74 0e                	je     0x404dff
404df1:	68 10 01 00 00       	push   $0x110
404df6:	56                   	push   %esi
404df7:	e8 12 6b 01 00       	call   0x41b90e
404dfc:	83 c4 08             	add    $0x8,%esp
404dff:	8b c6                	mov    %esi,%eax
404e01:	5e                   	pop    %esi
404e02:	5d                   	pop    %ebp
404e03:	c2 04 00             	ret    $0x4
404e06:	cc                   	int3
404e07:	cc                   	int3
404e08:	cc                   	int3
404e09:	cc                   	int3
404e0a:	cc                   	int3
404e0b:	cc                   	int3
404e0c:	cc                   	int3
404e0d:	cc                   	int3
404e0e:	cc                   	int3
404e0f:	cc                   	int3
404e10:	56                   	push   %esi
404e11:	8b f1                	mov    %ecx,%esi
404e13:	8b 4e 34             	mov    0x34(%esi),%ecx
404e16:	83 f9 08             	cmp    $0x8,%ecx
404e19:	72 2e                	jb     0x404e49
404e1b:	8b 46 20             	mov    0x20(%esi),%eax
404e1e:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
404e25:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
404e2b:	72 12                	jb     0x404e3f
404e2d:	8b 50 fc             	mov    -0x4(%eax),%edx
404e30:	83 c1 23             	add    $0x23,%ecx
404e33:	2b c2                	sub    %edx,%eax
404e35:	83 c0 fc             	add    $0xfffffffc,%eax
404e38:	83 f8 1f             	cmp    $0x1f,%eax
404e3b:	77 73                	ja     0x404eb0
404e3d:	8b c2                	mov    %edx,%eax
404e3f:	51                   	push   %ecx
404e40:	50                   	push   %eax
404e41:	e8 c8 6a 01 00       	call   0x41b90e
404e46:	83 c4 08             	add    $0x8,%esp
404e49:	8d 4e 18             	lea    0x18(%esi),%ecx
404e4c:	c7 46 30 00 00 00 00 	movl   $0x0,0x30(%esi)
404e53:	33 c0                	xor    %eax,%eax
404e55:	c7 46 34 07 00 00 00 	movl   $0x7,0x34(%esi)
404e5c:	51                   	push   %ecx
404e5d:	66 89 46 20          	mov    %ax,0x20(%esi)
404e61:	e8 aa 6e 00 00       	call   0x40bd10
404e66:	8b 4e 14             	mov    0x14(%esi),%ecx
404e69:	83 f9 08             	cmp    $0x8,%ecx
404e6c:	72 2d                	jb     0x404e9b
404e6e:	8b 06                	mov    (%esi),%eax
404e70:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
404e77:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
404e7d:	72 12                	jb     0x404e91
404e7f:	8b 50 fc             	mov    -0x4(%eax),%edx
404e82:	83 c1 23             	add    $0x23,%ecx
404e85:	2b c2                	sub    %edx,%eax
404e87:	83 c0 fc             	add    $0xfffffffc,%eax
404e8a:	83 f8 1f             	cmp    $0x1f,%eax
404e8d:	77 21                	ja     0x404eb0
404e8f:	8b c2                	mov    %edx,%eax
404e91:	51                   	push   %ecx
404e92:	50                   	push   %eax
404e93:	e8 76 6a 01 00       	call   0x41b90e
404e98:	83 c4 08             	add    $0x8,%esp
404e9b:	33 c0                	xor    %eax,%eax
404e9d:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
404ea4:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
404eab:	66 89 06             	mov    %ax,(%esi)
404eae:	5e                   	pop    %esi
404eaf:	c3                   	ret
404eb0:	e8 ca bb 01 00       	call   0x420a7f
404eb5:	cc                   	int3
404eb6:	cc                   	int3
404eb7:	cc                   	int3
404eb8:	cc                   	int3
404eb9:	cc                   	int3
404eba:	cc                   	int3
404ebb:	cc                   	int3
404ebc:	cc                   	int3
404ebd:	cc                   	int3
404ebe:	cc                   	int3
404ebf:	cc                   	int3
404ec0:	56                   	push   %esi
404ec1:	8b f1                	mov    %ecx,%esi
404ec3:	8b 46 68             	mov    0x68(%esi),%eax
404ec6:	c7 06 90 dd 44 00    	movl   $0x44dd90,(%esi)
404ecc:	85 c0                	test   %eax,%eax
404ece:	74 0e                	je     0x404ede
404ed0:	50                   	push   %eax
404ed1:	ff 15 68 f0 43 00    	call   *0x43f068
404ed7:	c7 46 68 00 00 00 00 	movl   $0x0,0x68(%esi)
404ede:	8b 86 90 00 00 00    	mov    0x90(%esi),%eax
404ee4:	85 c0                	test   %eax,%eax
404ee6:	74 37                	je     0x404f1f
404ee8:	8b 00                	mov    (%eax),%eax
404eea:	85 c0                	test   %eax,%eax
404eec:	74 0c                	je     0x404efa
404eee:	83 f8 ff             	cmp    $0xffffffff,%eax
404ef1:	74 07                	je     0x404efa
404ef3:	50                   	push   %eax
404ef4:	ff 15 68 f0 43 00    	call   *0x43f068
404efa:	8b 86 90 00 00 00    	mov    0x90(%esi),%eax
404f00:	85 c0                	test   %eax,%eax
404f02:	74 11                	je     0x404f15
404f04:	6a 04                	push   $0x4
404f06:	50                   	push   %eax
404f07:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
404f0d:	e8 fc 69 01 00       	call   0x41b90e
404f12:	83 c4 08             	add    $0x8,%esp
404f15:	c7 86 90 00 00 00 00 	movl   $0x0,0x90(%esi)
404f1c:	00 00 00
404f1f:	8d 8e 00 01 00 00    	lea    0x100(%esi),%ecx
404f25:	e8 46 45 00 00       	call   0x409470
404f2a:	8b 8e e8 00 00 00    	mov    0xe8(%esi),%ecx
404f30:	83 f9 08             	cmp    $0x8,%ecx
404f33:	72 31                	jb     0x404f66
404f35:	8b 86 d4 00 00 00    	mov    0xd4(%esi),%eax
404f3b:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
404f42:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
404f48:	72 12                	jb     0x404f5c
404f4a:	8b 50 fc             	mov    -0x4(%eax),%edx
404f4d:	83 c1 23             	add    $0x23,%ecx
404f50:	2b c2                	sub    %edx,%eax
404f52:	83 c0 fc             	add    $0xfffffffc,%eax
404f55:	83 f8 1f             	cmp    $0x1f,%eax
404f58:	77 3c                	ja     0x404f96
404f5a:	8b c2                	mov    %edx,%eax
404f5c:	51                   	push   %ecx
404f5d:	50                   	push   %eax
404f5e:	e8 ab 69 01 00       	call   0x41b90e
404f63:	83 c4 08             	add    $0x8,%esp
404f66:	33 c0                	xor    %eax,%eax
404f68:	c7 86 e4 00 00 00 00 	movl   $0x0,0xe4(%esi)
404f6f:	00 00 00
404f72:	8d 8e 94 00 00 00    	lea    0x94(%esi),%ecx
404f78:	c7 86 e8 00 00 00 07 	movl   $0x7,0xe8(%esi)
404f7f:	00 00 00
404f82:	66 89 86 d4 00 00 00 	mov    %ax,0xd4(%esi)
404f89:	e8 82 fe ff ff       	call   0x404e10
404f8e:	8b ce                	mov    %esi,%ecx
404f90:	5e                   	pop    %esi
404f91:	e9 6a 95 00 00       	jmp    0x40e500
404f96:	e8 e4 ba 01 00       	call   0x420a7f
404f9b:	cc                   	int3
404f9c:	cc                   	int3
404f9d:	cc                   	int3
404f9e:	cc                   	int3
404f9f:	cc                   	int3
404fa0:	55                   	push   %ebp
404fa1:	8b ec                	mov    %esp,%ebp
404fa3:	83 e4 f8             	and    $0xfffffff8,%esp
404fa6:	83 ec 0c             	sub    $0xc,%esp
404fa9:	a1 14 40 45 00       	mov    0x454014,%eax
404fae:	33 c4                	xor    %esp,%eax
404fb0:	89 44 24 08          	mov    %eax,0x8(%esp)
404fb4:	53                   	push   %ebx
404fb5:	8b d9                	mov    %ecx,%ebx
404fb7:	56                   	push   %esi
404fb8:	57                   	push   %edi
404fb9:	8b 7d 08             	mov    0x8(%ebp),%edi
404fbc:	83 bb 8c 00 00 00 01 	cmpl   $0x1,0x8c(%ebx)
404fc3:	75 7d                	jne    0x405042
404fc5:	33 c0                	xor    %eax,%eax
404fc7:	83 7b 60 08          	cmpl   $0x8,0x60(%ebx)
404fcb:	66 89 44 24 0c       	mov    %ax,0xc(%esp)
404fd0:	89 44 24 10          	mov    %eax,0x10(%esp)
404fd4:	8d 43 4c             	lea    0x4c(%ebx),%eax
404fd7:	72 02                	jb     0x404fdb
404fd9:	8b 00                	mov    (%eax),%eax
404fdb:	68 58 db 44 00       	push   $0x44db58
404fe0:	50                   	push   %eax
404fe1:	8d 44 24 18          	lea    0x18(%esp),%eax
404fe5:	50                   	push   %eax
404fe6:	e8 b2 fb 01 00       	call   0x424b9d
404feb:	8b 44 24 1c          	mov    0x1c(%esp),%eax
404fef:	83 c4 0c             	add    $0xc,%esp
404ff2:	85 c0                	test   %eax,%eax
404ff4:	74 4c                	je     0x405042
404ff6:	50                   	push   %eax
404ff7:	6a 02                	push   $0x2
404ff9:	8d 44 24 14          	lea    0x14(%esp),%eax
404ffd:	6a 01                	push   $0x1
404fff:	50                   	push   %eax
405000:	e8 36 13 02 00       	call   0x42633b
405005:	ff 74 24 20          	push   0x20(%esp)
405009:	e8 fb fc 01 00       	call   0x424d09
40500e:	66 8b 44 24 20       	mov    0x20(%esp),%ax
405013:	83 c4 14             	add    $0x14,%esp
405016:	3c ff                	cmp    $0xff,%al
405018:	75 05                	jne    0x40501f
40501a:	80 fc fe             	cmp    $0xfe,%ah
40501d:	74 23                	je     0x405042
40501f:	80 fc ff             	cmp    $0xff,%ah
405022:	75 04                	jne    0x405028
405024:	3c fe                	cmp    $0xfe,%al
405026:	74 1a                	je     0x405042
405028:	8b 07                	mov    (%edi),%eax
40502a:	85 c0                	test   %eax,%eax
40502c:	74 0d                	je     0x40503b
40502e:	50                   	push   %eax
40502f:	ff 15 68 f0 43 00    	call   *0x43f068
405035:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
40503b:	8b cb                	mov    %ebx,%ecx
40503d:	e8 be 2c 00 00       	call   0x407d00
405042:	8d 73 4c             	lea    0x4c(%ebx),%esi
405045:	6a 01                	push   $0x1
405047:	8b ce                	mov    %esi,%ecx
405049:	e8 42 f0 00 00       	call   0x414090
40504e:	83 c4 04             	add    $0x4,%esp
405051:	85 c0                	test   %eax,%eax
405053:	74 1b                	je     0x405070
405055:	83 f8 01             	cmp    $0x1,%eax
405058:	75 68                	jne    0x4050c2
40505a:	6a 00                	push   $0x0
40505c:	8b ce                	mov    %esi,%ecx
40505e:	e8 8d e2 00 00       	call   0x4132f0
405063:	83 c4 04             	add    $0x4,%esp
405066:	84 c0                	test   %al,%al
405068:	74 58                	je     0x4050c2
40506a:	c7 07 ff ff ff ff    	movl   $0xffffffff,(%edi)
405070:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
405074:	8b c6                	mov    %esi,%eax
405076:	72 02                	jb     0x40507a
405078:	8b 06                	mov    (%esi),%eax
40507a:	6a 00                	push   $0x0
40507c:	68 80 00 20 00       	push   $0x200080
405081:	6a 03                	push   $0x3
405083:	6a 00                	push   $0x0
405085:	6a 03                	push   $0x3
405087:	68 00 00 00 40       	push   $0x40000000
40508c:	50                   	push   %eax
40508d:	ff 15 58 f0 43 00    	call   *0x43f058
405093:	89 07                	mov    %eax,(%edi)
405095:	83 f8 ff             	cmp    $0xffffffff,%eax
405098:	75 7f                	jne    0x405119
40509a:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
40509e:	72 02                	jb     0x4050a2
4050a0:	8b 36                	mov    (%esi),%esi
4050a2:	6a 00                	push   $0x0
4050a4:	68 80 00 20 00       	push   $0x200080
4050a9:	6a 01                	push   $0x1
4050ab:	6a 00                	push   $0x0
4050ad:	6a 03                	push   $0x3
4050af:	68 00 00 00 40       	push   $0x40000000