40bd2c:	cc                   	int3
40bd2d:	cc                   	int3
40bd2e:	cc                   	int3
40bd2f:	cc                   	int3
40bd30:	56                   	push   %esi
40bd31:	8b f1                	mov    %ecx,%esi
40bd33:	8b 46 18             	mov    0x18(%esi),%eax
40bd36:	85 c0                	test   %eax,%eax
40bd38:	74 41                	je     0x40bd7b
40bd3a:	8b 4e 20             	mov    0x20(%esi),%ecx
40bd3d:	2b c8                	sub    %eax,%ecx
40bd3f:	83 e1 fc             	and    $0xfffffffc,%ecx
40bd42:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40bd48:	72 12                	jb     0x40bd5c
40bd4a:	8b 50 fc             	mov    -0x4(%eax),%edx
40bd4d:	83 c1 23             	add    $0x23,%ecx
40bd50:	2b c2                	sub    %edx,%eax
40bd52:	83 c0 fc             	add    $0xfffffffc,%eax
40bd55:	83 f8 1f             	cmp    $0x1f,%eax
40bd58:	77 6b                	ja     0x40bdc5
40bd5a:	8b c2                	mov    %edx,%eax
40bd5c:	51                   	push   %ecx
40bd5d:	50                   	push   %eax
40bd5e:	e8 55 de 00 00       	call   0x419bb8
40bd63:	c7 46 18 00 00 00 00 	movl   $0x0,0x18(%esi)
40bd6a:	83 c4 08             	add    $0x8,%esp
40bd6d:	c7 46 1c 00 00 00 00 	movl   $0x0,0x1c(%esi)
40bd74:	c7 46 20 00 00 00 00 	movl   $0x0,0x20(%esi)
40bd7b:	8b 4e 14             	mov    0x14(%esi),%ecx
40bd7e:	83 f9 08             	cmp    $0x8,%ecx
40bd81:	72 2d                	jb     0x40bdb0
40bd83:	8b 06                	mov    (%esi),%eax
40bd85:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
40bd8c:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40bd92:	72 12                	jb     0x40bda6
40bd94:	8b 50 fc             	mov    -0x4(%eax),%edx
40bd97:	83 c1 23             	add    $0x23,%ecx
40bd9a:	2b c2                	sub    %edx,%eax
40bd9c:	83 c0 fc             	add    $0xfffffffc,%eax
40bd9f:	83 f8 1f             	cmp    $0x1f,%eax
40bda2:	77 21                	ja     0x40bdc5
40bda4:	8b c2                	mov    %edx,%eax
40bda6:	51                   	push   %ecx
40bda7:	50                   	push   %eax
40bda8:	e8 0b de 00 00       	call   0x419bb8
40bdad:	83 c4 08             	add    $0x8,%esp
40bdb0:	33 c0                	xor    %eax,%eax
40bdb2:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
40bdb9:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
40bdc0:	66 89 06             	mov    %ax,(%esi)
40bdc3:	5e                   	pop    %esi
40bdc4:	c3                   	ret
40bdc5:	e8 c9 3b 01 00       	call   0x41f993
40bdca:	cc                   	int3
40bdcb:	cc                   	int3
40bdcc:	cc                   	int3
40bdcd:	cc                   	int3
40bdce:	cc                   	int3
40bdcf:	cc                   	int3
40bdd0:	55                   	push   %ebp
40bdd1:	8b ec                	mov    %esp,%ebp
40bdd3:	8b 45 08             	mov    0x8(%ebp),%eax
40bdd6:	3d ff ff ff 3f       	cmp    $0x3fffffff,%eax
40bddb:	77 44                	ja     0x40be21
40bddd:	c1 e0 02             	shl    $0x2,%eax
40bde0:	3d 00 10 00 00       	cmp    $0x1000,%eax
40bde5:	72 23                	jb     0x40be0a
40bde7:	8d 48 23             	lea    0x23(%eax),%ecx
40bdea:	3b c8                	cmp    %eax,%ecx
40bdec:	76 33                	jbe    0x40be21
40bdee:	51                   	push   %ecx
40bdef:	e8 d2 dd 00 00       	call   0x419bc6
40bdf4:	8b c8                	mov    %eax,%ecx
40bdf6:	83 c4 04             	add    $0x4,%esp
40bdf9:	85 c9                	test   %ecx,%ecx
40bdfb:	74 29                	je     0x40be26
40bdfd:	8d 41 23             	lea    0x23(%ecx),%eax
40be00:	83 e0 e0             	and    $0xffffffe0,%eax
40be03:	89 48 fc             	mov    %ecx,-0x4(%eax)
40be06:	5d                   	pop    %ebp
40be07:	c2 04 00             	ret    $0x4
40be0a:	85 c0                	test   %eax,%eax
40be0c:	74 0d                	je     0x40be1b
40be0e:	50                   	push   %eax
40be0f:	e8 b2 dd 00 00       	call   0x419bc6
40be14:	83 c4 04             	add    $0x4,%esp
40be17:	5d                   	pop    %ebp
40be18:	c2 04 00             	ret    $0x4
40be1b:	33 c0                	xor    %eax,%eax
40be1d:	5d                   	pop    %ebp
40be1e:	c2 04 00             	ret    $0x4
40be21:	e8 9a 54 ff ff       	call   0x4012c0
40be26:	e8 68 3b 01 00       	call   0x41f993
40be2b:	cc                   	int3
40be2c:	cc                   	int3
40be2d:	cc                   	int3
40be2e:	cc                   	int3
40be2f:	cc                   	int3
40be30:	55                   	push   %ebp
40be31:	8b ec                	mov    %esp,%ebp
40be33:	6a ff                	push   $0xffffffff
40be35:	68 4d c3 43 00       	push   $0x43c34d
40be3a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40be40:	50                   	push   %eax
40be41:	83 ec 08             	sub    $0x8,%esp
40be44:	56                   	push   %esi
40be45:	57                   	push   %edi
40be46:	a1 14 50 45 00       	mov    0x455014,%eax
40be4b:	33 c5                	xor    %ebp,%eax
40be4d:	50                   	push   %eax
40be4e:	8d 45 f4             	lea    -0xc(%ebp),%eax
40be51:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40be57:	8b f9                	mov    %ecx,%edi
40be59:	89 7d f0             	mov    %edi,-0x10(%ebp)
40be5c:	33 c0                	xor    %eax,%eax
40be5e:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
40be64:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
40be6b:	c7 47 14 00 00 00 00 	movl   $0x0,0x14(%edi)
40be72:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
40be79:	c7 47 14 07 00 00 00 	movl   $0x7,0x14(%edi)
40be80:	66 89 07             	mov    %ax,(%edi)
40be83:	8d 77 18             	lea    0x18(%edi),%esi
40be86:	89 45 fc             	mov    %eax,-0x4(%ebp)
40be89:	6a 40                	push   $0x40
40be8b:	89 75 ec             	mov    %esi,-0x14(%ebp)
40be8e:	89 06                	mov    %eax,(%esi)
40be90:	89 46 04             	mov    %eax,0x4(%esi)
40be93:	e8 2e dd 00 00       	call   0x419bc6
40be98:	83 c4 04             	add    $0x4,%esp
40be9b:	89 00                	mov    %eax,(%eax)
40be9d:	89 40 04             	mov    %eax,0x4(%eax)
40bea0:	89 40 08             	mov    %eax,0x8(%eax)
40bea3:	66 c7 40 0c 01 01    	movw   $0x101,0xc(%eax)
40bea9:	89 06                	mov    %eax,(%esi)
40beab:	33 c0                	xor    %eax,%eax
40bead:	c7 47 20 00 00 00 00 	movl   $0x0,0x20(%edi)
40beb4:	66 89 47 20          	mov    %ax,0x20(%edi)
40beb8:	8b c7                	mov    %edi,%eax
40beba:	c7 47 30 00 00 00 00 	movl   $0x0,0x30(%edi)
40bec1:	c7 47 34 07 00 00 00 	movl   $0x7,0x34(%edi)
40bec8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40becb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40bed2:	59                   	pop    %ecx
40bed3:	5f                   	pop    %edi
40bed4:	5e                   	pop    %esi
40bed5:	8b e5                	mov    %ebp,%esp
40bed7:	5d                   	pop    %ebp
40bed8:	c3                   	ret
40bed9:	cc                   	int3
40beda:	cc                   	int3
40bedb:	cc                   	int3
40bedc:	cc                   	int3
40bedd:	cc                   	int3
40bede:	cc                   	int3
40bedf:	cc                   	int3
40bee0:	55                   	push   %ebp
40bee1:	8b ec                	mov    %esp,%ebp
40bee3:	56                   	push   %esi
40bee4:	8b f1                	mov    %ecx,%esi
40bee6:	8b 46 68             	mov    0x68(%esi),%eax
40bee9:	c7 06 a8 f0 44 00    	movl   $0x44f0a8,(%esi)
40beef:	85 c0                	test   %eax,%eax
40bef1:	74 0e                	je     0x40bf01
40bef3:	50                   	push   %eax
40bef4:	ff 15 68 e0 43 00    	call   *0x43e068
40befa:	c7 46 68 00 00 00 00 	movl   $0x0,0x68(%esi)
40bf01:	8b 86 90 00 00 00    	mov    0x90(%esi),%eax
40bf07:	85 c0                	test   %eax,%eax
40bf09:	74 37                	je     0x40bf42
40bf0b:	8b 00                	mov    (%eax),%eax
40bf0d:	85 c0                	test   %eax,%eax
40bf0f:	74 0c                	je     0x40bf1d
40bf11:	83 f8 ff             	cmp    $0xffffffff,%eax
40bf14:	74 07                	je     0x40bf1d
40bf16:	50                   	push   %eax
40bf17:	ff 15 68 e0 43 00    	call   *0x43e068
40bf1d:	8b 86 90 00 00 00    	mov    0x90(%esi),%eax
40bf23:	85 c0                	test   %eax,%eax
40bf25:	74 11                	je     0x40bf38
40bf27:	6a 04                	push   $0x4
40bf29:	50                   	push   %eax
40bf2a:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
40bf30:	e8 83 dc 00 00       	call   0x419bb8
40bf35:	83 c4 08             	add    $0x8,%esp
40bf38:	c7 86 90 00 00 00 00 	movl   $0x0,0x90(%esi)
40bf3f:	00 00 00
40bf42:	8d 8e 00 01 00 00    	lea    0x100(%esi),%ecx
40bf48:	e8 43 8c ff ff       	call   0x404b90
40bf4d:	8b 8e e8 00 00 00    	mov    0xe8(%esi),%ecx
40bf53:	83 f9 08             	cmp    $0x8,%ecx
40bf56:	72 31                	jb     0x40bf89
40bf58:	8b 86 d4 00 00 00    	mov    0xd4(%esi),%eax
40bf5e:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
40bf65:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40bf6b:	72 12                	jb     0x40bf7f
40bf6d:	8b 50 fc             	mov    -0x4(%eax),%edx
40bf70:	83 c1 23             	add    $0x23,%ecx
40bf73:	2b c2                	sub    %edx,%eax
40bf75:	83 c0 fc             	add    $0xfffffffc,%eax
40bf78:	83 f8 1f             	cmp    $0x1f,%eax
40bf7b:	77 56                	ja     0x40bfd3
40bf7d:	8b c2                	mov    %edx,%eax
40bf7f:	51                   	push   %ecx
40bf80:	50                   	push   %eax
40bf81:	e8 32 dc 00 00       	call   0x419bb8
40bf86:	83 c4 08             	add    $0x8,%esp
40bf89:	33 c0                	xor    %eax,%eax
40bf8b:	c7 86 e4 00 00 00 00 	movl   $0x0,0xe4(%esi)
40bf92:	00 00 00
40bf95:	8d 8e 94 00 00 00    	lea    0x94(%esi),%ecx
40bf9b:	c7 86 e8 00 00 00 07 	movl   $0x7,0xe8(%esi)
40bfa2:	00 00 00
40bfa5:	66 89 86 d4 00 00 00 	mov    %ax,0xd4(%esi)
40bfac:	e8 2f 00 00 00       	call   0x40bfe0
40bfb1:	8b ce                	mov    %esi,%ecx
40bfb3:	e8 d8 51 00 00       	call   0x411190
40bfb8:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
40bfbc:	74 0e                	je     0x40bfcc
40bfbe:	68 10 01 00 00       	push   $0x110
40bfc3:	56                   	push   %esi
40bfc4:	e8 ef db 00 00       	call   0x419bb8
40bfc9:	83 c4 08             	add    $0x8,%esp
40bfcc:	8b c6                	mov    %esi,%eax
40bfce:	5e                   	pop    %esi
40bfcf:	5d                   	pop    %ebp
40bfd0:	c2 04 00             	ret    $0x4
40bfd3:	e8 bb 39 01 00       	call   0x41f993
40bfd8:	cc                   	int3
40bfd9:	cc                   	int3
40bfda:	cc                   	int3
40bfdb:	cc                   	int3
40bfdc:	cc                   	int3
40bfdd:	cc                   	int3
40bfde:	cc                   	int3
40bfdf:	cc                   	int3
40bfe0:	56                   	push   %esi
40bfe1:	8b f1                	mov    %ecx,%esi
40bfe3:	8b 4e 34             	mov    0x34(%esi),%ecx
40bfe6:	83 f9 08             	cmp    $0x8,%ecx
40bfe9:	72 2e                	jb     0x40c019
40bfeb:	8b 46 20             	mov    0x20(%esi),%eax
40bfee:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
40bff5:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40bffb:	72 12                	jb     0x40c00f
40bffd:	8b 50 fc             	mov    -0x4(%eax),%edx
40c000:	83 c1 23             	add    $0x23,%ecx
40c003:	2b c2                	sub    %edx,%eax
40c005:	83 c0 fc             	add    $0xfffffffc,%eax
40c008:	83 f8 1f             	cmp    $0x1f,%eax
40c00b:	77 73                	ja     0x40c080
40c00d:	8b c2                	mov    %edx,%eax
40c00f:	51                   	push   %ecx
40c010:	50                   	push   %eax
40c011:	e8 a2 db 00 00       	call   0x419bb8
40c016:	83 c4 08             	add    $0x8,%esp
40c019:	8d 4e 18             	lea    0x18(%esi),%ecx
40c01c:	c7 46 30 00 00 00 00 	movl   $0x0,0x30(%esi)
40c023:	33 c0                	xor    %eax,%eax
40c025:	c7 46 34 07 00 00 00 	movl   $0x7,0x34(%esi)
40c02c:	51                   	push   %ecx
40c02d:	66 89 46 20          	mov    %ax,0x20(%esi)
40c031:	e8 fa 3c 00 00       	call   0x40fd30
40c036:	8b 4e 14             	mov    0x14(%esi),%ecx
40c039:	83 f9 08             	cmp    $0x8,%ecx
40c03c:	72 2d                	jb     0x40c06b
40c03e:	8b 06                	mov    (%esi),%eax
40c040:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
40c047:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40c04d:	72 12                	jb     0x40c061
40c04f:	8b 50 fc             	mov    -0x4(%eax),%edx
40c052:	83 c1 23             	add    $0x23,%ecx
40c055:	2b c2                	sub    %edx,%eax
40c057:	83 c0 fc             	add    $0xfffffffc,%eax
40c05a:	83 f8 1f             	cmp    $0x1f,%eax
40c05d:	77 21                	ja     0x40c080
40c05f:	8b c2                	mov    %edx,%eax
40c061:	51                   	push   %ecx
40c062:	50                   	push   %eax
40c063:	e8 50 db 00 00       	call   0x419bb8
40c068:	83 c4 08             	add    $0x8,%esp
40c06b:	33 c0                	xor    %eax,%eax
40c06d:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
40c074:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
40c07b:	66 89 06             	mov    %ax,(%esi)
40c07e:	5e                   	pop    %esi
40c07f:	c3                   	ret
40c080:	e8 0e 39 01 00       	call   0x41f993
40c085:	cc                   	int3
40c086:	cc                   	int3
40c087:	cc                   	int3
40c088:	cc                   	int3
40c089:	cc                   	int3
40c08a:	cc                   	int3
40c08b:	cc                   	int3
40c08c:	cc                   	int3
40c08d:	cc                   	int3
40c08e:	cc                   	int3
40c08f:	cc                   	int3
40c090:	55                   	push   %ebp
40c091:	8b ec                	mov    %esp,%ebp
40c093:	83 e4 f8             	and    $0xfffffff8,%esp
40c096:	83 ec 0c             	sub    $0xc,%esp
40c099:	a1 14 50 45 00       	mov    0x455014,%eax
40c09e:	33 c4                	xor    %esp,%eax
40c0a0:	89 44 24 08          	mov    %eax,0x8(%esp)
40c0a4:	53                   	push   %ebx
40c0a5:	8b d9                	mov    %ecx,%ebx
40c0a7:	56                   	push   %esi
40c0a8:	57                   	push   %edi
40c0a9:	8b 7d 08             	mov    0x8(%ebp),%edi
40c0ac:	83 bb 8c 00 00 00 01 	cmpl   $0x1,0x8c(%ebx)
40c0b3:	75 7d                	jne    0x40c132
40c0b5:	33 c0                	xor    %eax,%eax
40c0b7:	83 7b 60 08          	cmpl   $0x8,0x60(%ebx)
40c0bb:	66 89 44 24 0c       	mov    %ax,0xc(%esp)
40c0c0:	89 44 24 10          	mov    %eax,0x10(%esp)
40c0c4:	8d 43 4c             	lea    0x4c(%ebx),%eax
40c0c7:	72 02                	jb     0x40c0cb
40c0c9:	8b 00                	mov    (%eax),%eax
40c0cb:	68 78 ef 44 00       	push   $0x44ef78
40c0d0:	50                   	push   %eax
40c0d1:	8d 44 24 18          	lea    0x18(%esp),%eax
40c0d5:	50                   	push   %eax
40c0d6:	e8 ef 75 01 00       	call   0x4236ca
40c0db:	8b 44 24 1c          	mov    0x1c(%esp),%eax
40c0df:	83 c4 0c             	add    $0xc,%esp
40c0e2:	85 c0                	test   %eax,%eax
40c0e4:	74 4c                	je     0x40c132
40c0e6:	50                   	push   %eax
40c0e7:	6a 02                	push   $0x2
40c0e9:	8d 44 24 14          	lea    0x14(%esp),%eax
40c0ed:	6a 01                	push   $0x1
40c0ef:	50                   	push   %eax
40c0f0:	e8 7c 81 01 00       	call   0x424271
40c0f5:	ff 74 24 20          	push   0x20(%esp)
40c0f9:	e8 38 77 01 00       	call   0x423836
40c0fe:	66 8b 44 24 20       	mov    0x20(%esp),%ax
40c103:	83 c4 14             	add    $0x14,%esp
40c106:	3c ff                	cmp    $0xff,%al
40c108:	75 05                	jne    0x40c10f
40c10a:	80 fc fe             	cmp    $0xfe,%ah
40c10d:	74 23                	je     0x40c132
40c10f:	80 fc ff             	cmp    $0xff,%ah
40c112:	75 04                	jne    0x40c118
40c114:	3c fe                	cmp    $0xfe,%al
40c116:	74 1a                	je     0x40c132
40c118:	8b 07                	mov    (%edi),%eax
40c11a:	85 c0                	test   %eax,%eax
40c11c:	74 0d                	je     0x40c12b
40c11e:	50                   	push   %eax