40ed2b:	8b 5e 10             	mov    0x10(%esi),%ebx
40ed2e:	52                   	push   %edx
40ed2f:	57                   	push   %edi
40ed30:	ff 75 0c             	push   0xc(%ebp)
40ed33:	8b 03                	mov    (%ebx),%eax
40ed35:	8b 40 04             	mov    0x4(%eax),%eax
40ed38:	89 45 fc             	mov    %eax,-0x4(%ebp)
40ed3b:	3d 70 2d 41 00       	cmp    $0x412d70,%eax
40ed40:	0f 85 be 1d 01 00    	jne    0x420b04
40ed46:	8b cb                	mov    %ebx,%ecx
40ed48:	e8 23 40 00 00       	call   0x412d70
40ed4d:	8b d0                	mov    %eax,%edx
40ed4f:	5b                   	pop    %ebx
40ed50:	85 d2                	test   %edx,%edx
40ed52:	78 02                	js     0x40ed56
40ed54:	01 3e                	add    %edi,(%esi)
40ed56:	5f                   	pop    %edi
40ed57:	8b c2                	mov    %edx,%eax
40ed59:	5e                   	pop    %esi
40ed5a:	c9                   	leave
40ed5b:	c2 08 00             	ret    $0x8
40ed5e:	6a 08                	push   $0x8
40ed60:	b8 3d e5 41 00       	mov    $0x41e53d,%eax
40ed65:	e8 a4 c0 00 00       	call   0x41ae0e
40ed6a:	8b d9                	mov    %ecx,%ebx
40ed6c:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40ed6f:	8d 73 04             	lea    0x4(%ebx),%esi
40ed72:	33 d2                	xor    %edx,%edx
40ed74:	8d 46 10             	lea    0x10(%esi),%eax
40ed77:	c7 46 08 41 00 00 00 	movl   $0x41,0x8(%esi)
40ed7e:	33 c9                	xor    %ecx,%ecx
40ed80:	89 46 04             	mov    %eax,0x4(%esi)
40ed83:	89 56 0c             	mov    %edx,0xc(%esi)
40ed86:	66 89 08             	mov    %cx,(%eax)
40ed89:	c7 06 c4 11 40 00    	movl   $0x4011c4,(%esi)
40ed8f:	89 55 fc             	mov    %edx,-0x4(%ebp)
40ed92:	52                   	push   %edx
40ed93:	c7 03 3c 11 40 00    	movl   $0x40113c,(%ebx)
40ed99:	c7 83 98 00 00 00 01 	movl   $0x1,0x98(%ebx)
40eda0:	00 00 00
40eda3:	ff 15 ac a0 43 00    	call   *0x43a0ac
40eda9:	8b 06                	mov    (%esi),%eax
40edab:	6a ff                	push   $0xffffffff
40edad:	6a 00                	push   $0x0
40edaf:	8b 78 10             	mov    0x10(%eax),%edi
40edb2:	8b 45 08             	mov    0x8(%ebp),%eax
40edb5:	ff 70 08             	push   0x8(%eax)
40edb8:	81 ff a0 36 41 00    	cmp    $0x4136a0,%edi
40edbe:	75 09                	jne    0x40edc9
40edc0:	8b ce                	mov    %esi,%ecx
40edc2:	e8 d9 48 00 00       	call   0x4136a0
40edc7:	eb 0c                	jmp    0x40edd5
40edc9:	8b cf                	mov    %edi,%ecx
40edcb:	ff 15 20 a5 43 00    	call   *0x43a520
40edd1:	8b ce                	mov    %esi,%ecx
40edd3:	ff d7                	call   *%edi
40edd5:	8b ce                	mov    %esi,%ecx
40edd7:	e8 d0 f9 ff ff       	call   0x40e7ac
40eddc:	8b 06                	mov    (%esi),%eax
40edde:	8b 7d 0c             	mov    0xc(%ebp),%edi
40ede1:	6a ff                	push   $0xffffffff
40ede3:	ff 76 0c             	push   0xc(%esi)
40ede6:	8b 40 10             	mov    0x10(%eax),%eax
40ede9:	89 45 f0             	mov    %eax,-0x10(%ebp)
40edec:	57                   	push   %edi
40eded:	3d a0 36 41 00       	cmp    $0x4136a0,%eax
40edf2:	75 09                	jne    0x40edfd
40edf4:	8b ce                	mov    %esi,%ecx
40edf6:	e8 a5 48 00 00       	call   0x4136a0
40edfb:	eb 0d                	jmp    0x40ee0a
40edfd:	8b c8                	mov    %eax,%ecx
40edff:	ff 15 20 a5 43 00    	call   *0x43a520
40ee05:	8b ce                	mov    %esi,%ecx
40ee07:	ff 55 f0             	call   *-0x10(%ebp)
40ee0a:	8b 45 08             	mov    0x8(%ebp),%eax
40ee0d:	8d b3 9c 00 00 00    	lea    0x9c(%ebx),%esi
40ee13:	56                   	push   %esi
40ee14:	ff 75 10             	push   0x10(%ebp)
40ee17:	8b 90 9c 00 00 00    	mov    0x9c(%eax),%edx
40ee1d:	51                   	push   %ecx
40ee1e:	57                   	push   %edi
40ee1f:	e8 96 e4 00 00       	call   0x41d2ba
40ee24:	85 c0                	test   %eax,%eax
40ee26:	74 0a                	je     0x40ee32
40ee28:	83 26 00             	andl   $0x0,(%esi)
40ee2b:	50                   	push   %eax
40ee2c:	ff 15 ac a0 43 00    	call   *0x43a0ac
40ee32:	8b c3                	mov    %ebx,%eax
40ee34:	e8 a3 bf 00 00       	call   0x41addc
40ee39:	c2 0c 00             	ret    $0xc
40ee3c:	6a 5c                	push   $0x5c
40ee3e:	b8 18 e6 41 00       	mov    $0x41e618,%eax
40ee43:	e8 f9 bf 00 00       	call   0x41ae41
40ee48:	8b f9                	mov    %ecx,%edi
40ee4a:	8b 5d 08             	mov    0x8(%ebp),%ebx
40ee4d:	33 f6                	xor    %esi,%esi
40ee4f:	53                   	push   %ebx
40ee50:	56                   	push   %esi
40ee51:	68 1f 00 0f 00       	push   $0xf001f
40ee56:	ff 15 c0 a1 43 00    	call   *0x43a1c0
40ee5c:	8b 4f 24             	mov    0x24(%edi),%ecx
40ee5f:	89 45 98             	mov    %eax,-0x68(%ebp)
40ee62:	85 c9                	test   %ecx,%ecx
40ee64:	0f 85 ac 1c 01 00    	jne    0x420b16
40ee6a:	89 47 24             	mov    %eax,0x24(%edi)
40ee6d:	85 c0                	test   %eax,%eax
40ee6f:	0f 84 24 1e 01 00    	je     0x420c99
40ee75:	83 f8 ff             	cmp    $0xffffffff,%eax
40ee78:	0f 84 1b 1e 01 00    	je     0x420c99
40ee7e:	8d 4f 4c             	lea    0x4c(%edi),%ecx
40ee81:	8b 01                	mov    (%ecx),%eax
40ee83:	6a ff                	push   $0xffffffff
40ee85:	56                   	push   %esi
40ee86:	53                   	push   %ebx
40ee87:	8b 40 10             	mov    0x10(%eax),%eax
40ee8a:	89 45 98             	mov    %eax,-0x68(%ebp)
40ee8d:	3d a0 36 41 00       	cmp    $0x4136a0,%eax
40ee92:	0f 85 94 1c 01 00    	jne    0x420b2c
40ee98:	e8 03 48 00 00       	call   0x4136a0
40ee9d:	68 00 00 01 00       	push   $0x10000
40eea2:	56                   	push   %esi
40eea3:	56                   	push   %esi
40eea4:	68 1f 00 0f 00       	push   $0xf001f
40eea9:	ff 77 24             	push   0x24(%edi)
40eeac:	ff 15 c8 a1 43 00    	call   *0x43a1c8
40eeb2:	89 47 28             	mov    %eax,0x28(%edi)
40eeb5:	85 c0                	test   %eax,%eax
40eeb7:	0f 84 82 1c 01 00    	je     0x420b3f
40eebd:	53                   	push   %ebx
40eebe:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40eec1:	e8 e1 65 00 00       	call   0x4154a7
40eec6:	89 75 fc             	mov    %esi,-0x4(%ebp)
40eec9:	8b 45 9c             	mov    -0x64(%ebp),%eax
40eecc:	6a ff                	push   $0xffffffff
40eece:	ff 75 a8             	push   -0x58(%ebp)
40eed1:	8b 40 10             	mov    0x10(%eax),%eax
40eed4:	89 45 98             	mov    %eax,-0x68(%ebp)
40eed7:	68 80 3f 40 00       	push   $0x403f80
40eedc:	3d a0 36 41 00       	cmp    $0x4136a0,%eax
40eee1:	0f 85 6f 1c 01 00    	jne    0x420b56
40eee7:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40eeea:	e8 b1 47 00 00       	call   0x4136a0
40eeef:	ff 75 a0             	push   -0x60(%ebp)
40eef2:	56                   	push   %esi
40eef3:	68 03 00 1f 00       	push   $0x1f0003
40eef8:	ff 15 bc a2 43 00    	call   *0x43a2bc
40eefe:	8b 4f 2c             	mov    0x2c(%edi),%ecx
40ef01:	89 45 98             	mov    %eax,-0x68(%ebp)
40ef04:	85 c9                	test   %ecx,%ecx
40ef06:	0f 85 5d 1c 01 00    	jne    0x420b69
40ef0c:	89 47 2c             	mov    %eax,0x2c(%edi)
40ef0f:	85 c0                	test   %eax,%eax
40ef11:	0f 84 69 1d 01 00    	je     0x420c80
40ef17:	83 f8 ff             	cmp    $0xffffffff,%eax
40ef1a:	0f 84 60 1d 01 00    	je     0x420c80
40ef20:	8b 45 9c             	mov    -0x64(%ebp),%eax
40ef23:	6a ff                	push   $0xffffffff
40ef25:	56                   	push   %esi
40ef26:	53                   	push   %ebx
40ef27:	8b 40 10             	mov    0x10(%eax),%eax
40ef2a:	89 45 98             	mov    %eax,-0x68(%ebp)
40ef2d:	3d a0 36 41 00       	cmp    $0x4136a0,%eax
40ef32:	0f 85 47 1c 01 00    	jne    0x420b7f
40ef38:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40ef3b:	e8 60 47 00 00       	call   0x4136a0
40ef40:	8b 45 9c             	mov    -0x64(%ebp),%eax
40ef43:	6a ff                	push   $0xffffffff
40ef45:	ff 75 a8             	push   -0x58(%ebp)
40ef48:	8b 40 10             	mov    0x10(%eax),%eax
40ef4b:	89 45 98             	mov    %eax,-0x68(%ebp)
40ef4e:	68 88 3f 40 00       	push   $0x403f88
40ef53:	3d a0 36 41 00       	cmp    $0x4136a0,%eax
40ef58:	0f 85 34 1c 01 00    	jne    0x420b92
40ef5e:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40ef61:	e8 3a 47 00 00       	call   0x4136a0
40ef66:	ff 75 a0             	push   -0x60(%ebp)
40ef69:	56                   	push   %esi
40ef6a:	68 03 00 1f 00       	push   $0x1f0003
40ef6f:	ff 15 bc a2 43 00    	call   *0x43a2bc
40ef75:	8b 4f 30             	mov    0x30(%edi),%ecx
40ef78:	89 45 98             	mov    %eax,-0x68(%ebp)
40ef7b:	85 c9                	test   %ecx,%ecx
40ef7d:	0f 85 22 1c 01 00    	jne    0x420ba5
40ef83:	89 47 30             	mov    %eax,0x30(%edi)
40ef86:	85 c0                	test   %eax,%eax
40ef88:	0f 84 eb 1c 01 00    	je     0x420c79
40ef8e:	83 f8 ff             	cmp    $0xffffffff,%eax
40ef91:	0f 84 e2 1c 01 00    	je     0x420c79
40ef97:	8b 45 9c             	mov    -0x64(%ebp),%eax
40ef9a:	6a ff                	push   $0xffffffff
40ef9c:	56                   	push   %esi
40ef9d:	53                   	push   %ebx
40ef9e:	8b 40 10             	mov    0x10(%eax),%eax
40efa1:	89 45 98             	mov    %eax,-0x68(%ebp)
40efa4:	3d a0 36 41 00       	cmp    $0x4136a0,%eax
40efa9:	0f 85 0c 1c 01 00    	jne    0x420bbb
40efaf:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40efb2:	e8 e9 46 00 00       	call   0x4136a0
40efb7:	8b 45 9c             	mov    -0x64(%ebp),%eax
40efba:	6a ff                	push   $0xffffffff
40efbc:	ff 75 a8             	push   -0x58(%ebp)
40efbf:	8b 40 10             	mov    0x10(%eax),%eax
40efc2:	89 45 98             	mov    %eax,-0x68(%ebp)
40efc5:	68 90 3f 40 00       	push   $0x403f90
40efca:	3d a0 36 41 00       	cmp    $0x4136a0,%eax
40efcf:	0f 85 f9 1b 01 00    	jne    0x420bce
40efd5:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40efd8:	e8 c3 46 00 00       	call   0x4136a0
40efdd:	ff 75 a0             	push   -0x60(%ebp)
40efe0:	56                   	push   %esi
40efe1:	68 03 00 1f 00       	push   $0x1f0003
40efe6:	ff 15 bc a2 43 00    	call   *0x43a2bc
40efec:	8b 4f 34             	mov    0x34(%edi),%ecx
40efef:	89 45 98             	mov    %eax,-0x68(%ebp)
40eff2:	85 c9                	test   %ecx,%ecx
40eff4:	0f 85 e7 1b 01 00    	jne    0x420be1
40effa:	89 47 34             	mov    %eax,0x34(%edi)
40effd:	85 c0                	test   %eax,%eax
40efff:	0f 84 6d 1c 01 00    	je     0x420c72
40f005:	83 f8 ff             	cmp    $0xffffffff,%eax
40f008:	0f 84 64 1c 01 00    	je     0x420c72
40f00e:	8b 45 9c             	mov    -0x64(%ebp),%eax
40f011:	6a ff                	push   $0xffffffff
40f013:	56                   	push   %esi
40f014:	53                   	push   %ebx
40f015:	8b 40 10             	mov    0x10(%eax),%eax
40f018:	89 45 98             	mov    %eax,-0x68(%ebp)
40f01b:	3d a0 36 41 00       	cmp    $0x4136a0,%eax
40f020:	0f 85 d1 1b 01 00    	jne    0x420bf7
40f026:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40f029:	e8 72 46 00 00       	call   0x4136a0
40f02e:	8b 45 9c             	mov    -0x64(%ebp),%eax
40f031:	6a ff                	push   $0xffffffff
40f033:	ff 75 a8             	push   -0x58(%ebp)
40f036:	8b 40 10             	mov    0x10(%eax),%eax
40f039:	89 45 98             	mov    %eax,-0x68(%ebp)
40f03c:	68 98 3f 40 00       	push   $0x403f98
40f041:	3d a0 36 41 00       	cmp    $0x4136a0,%eax
40f046:	0f 85 be 1b 01 00    	jne    0x420c0a
40f04c:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40f04f:	e8 4c 46 00 00       	call   0x4136a0
40f054:	ff 75 a0             	push   -0x60(%ebp)
40f057:	56                   	push   %esi
40f058:	68 03 00 1f 00       	push   $0x1f0003
40f05d:	ff 15 84 a2 43 00    	call   *0x43a284
40f063:	8b 4f 38             	mov    0x38(%edi),%ecx
40f066:	89 45 98             	mov    %eax,-0x68(%ebp)
40f069:	85 c9                	test   %ecx,%ecx
40f06b:	0f 85 ac 1b 01 00    	jne    0x420c1d
40f071:	89 47 38             	mov    %eax,0x38(%edi)
40f074:	85 c0                	test   %eax,%eax
40f076:	0f 84 ef 1b 01 00    	je     0x420c6b
40f07c:	83 f8 ff             	cmp    $0xffffffff,%eax
40f07f:	0f 84 e6 1b 01 00    	je     0x420c6b
40f085:	8b 45 9c             	mov    -0x64(%ebp),%eax
40f088:	6a ff                	push   $0xffffffff
40f08a:	56                   	push   %esi
40f08b:	53                   	push   %ebx
40f08c:	8b 40 10             	mov    0x10(%eax),%eax
40f08f:	89 45 98             	mov    %eax,-0x68(%ebp)
40f092:	3d a0 36 41 00       	cmp    $0x4136a0,%eax
40f097:	0f 85 96 1b 01 00    	jne    0x420c33
40f09d:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40f0a0:	e8 fb 45 00 00       	call   0x4136a0
40f0a5:	8b 45 9c             	mov    -0x64(%ebp),%eax
40f0a8:	6a ff                	push   $0xffffffff
40f0aa:	ff 75 a8             	push   -0x58(%ebp)
40f0ad:	8b 58 10             	mov    0x10(%eax),%ebx
40f0b0:	68 a0 3f 40 00       	push   $0x403fa0
40f0b5:	81 fb a0 36 41 00    	cmp    $0x4136a0,%ebx
40f0bb:	0f 85 85 1b 01 00    	jne    0x420c46
40f0c1:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40f0c4:	e8 d7 45 00 00       	call   0x4136a0
40f0c9:	ff 75 a0             	push   -0x60(%ebp)
40f0cc:	56                   	push   %esi
40f0cd:	68 03 00 1f 00       	push   $0x1f0003
40f0d2:	ff 15 84 a2 43 00    	call   *0x43a284
40f0d8:	8b 4f 3c             	mov    0x3c(%edi),%ecx
40f0db:	8b d8                	mov    %eax,%ebx
40f0dd:	85 c9                	test   %ecx,%ecx
40f0df:	0f 85 73 1b 01 00    	jne    0x420c58
40f0e5:	89 5f 3c             	mov    %ebx,0x3c(%edi)
40f0e8:	85 db                	test   %ebx,%ebx
40f0ea:	74 2c                	je     0x40f118
40f0ec:	83 fb ff             	cmp    $0xffffffff,%ebx
40f0ef:	74 27                	je     0x40f118
40f0f1:	8b 45 a0             	mov    -0x60(%ebp),%eax
40f0f4:	c7 45 9c 64 11 40 00 	movl   $0x401164,-0x64(%ebp)
40f0fb:	85 c0                	test   %eax,%eax
40f0fd:	74 0f                	je     0x40f10e
40f0ff:	8d 4d ac             	lea    -0x54(%ebp),%ecx
40f102:	3b c1                	cmp    %ecx,%eax
40f104:	74 08                	je     0x40f10e
40f106:	50                   	push   %eax
40f107:	ff 15 14 a4 43 00    	call   *0x43a414
40f10d:	59                   	pop    %ecx
40f10e:	8b c6                	mov    %esi,%eax
40f110:	e8 db bc 00 00       	call   0x41adf0
40f115:	c2 04 00             	ret    $0x4
40f118:	ba b2 01 00 00       	mov    $0x1b2,%edx
40f11d:	e9 63 1b 01 00       	jmp    0x420c85
40f122:	8b ff                	mov    %edi,%edi
40f124:	55                   	push   %ebp
40f125:	8b ec                	mov    %esp,%ebp
40f127:	83 ec 18             	sub    $0x18,%esp
40f12a:	a1 08 85 43 00       	mov    0x438508,%eax
40f12f:	33 c5                	xor    %ebp,%eax
40f131:	89 45 fc             	mov    %eax,-0x4(%ebp)
40f134:	8b 45 0c             	mov    0xc(%ebp),%eax
40f137:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
40f13b:	ff 75 08             	push   0x8(%ebp)
40f13e:	89 45 ec             	mov    %eax,-0x14(%ebp)
40f141:	8b 45 10             	mov    0x10(%ebp),%eax
40f144:	89 45 f0             	mov    %eax,-0x10(%ebp)
40f147:	8b 81 90 09 00 00    	mov    0x990(%ecx),%eax
40f14d:	89 45 f4             	mov    %eax,-0xc(%ebp)
40f150:	40                   	inc    %eax
40f151:	89 81 90 09 00 00    	mov    %eax,0x990(%ecx)
40f157:	8d 45 e8             	lea    -0x18(%ebp),%eax
40f15a:	50                   	push   %eax
40f15b:	81 c1 b8 09 00 00    	add    $0x9b8,%ecx
40f161:	c7 45 e8 47 54 48 52 	movl   $0x52485447,-0x18(%ebp)
40f168:	e8 ac 05 00 00       	call   0x40f719
40f16d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40f170:	33 cd                	xor    %ebp,%ecx
40f172:	e8 49 b6 00 00       	call   0x41a7c0
40f177:	c9                   	leave
40f178:	c2 0c 00             	ret    $0xc
40f17b:	cc                   	int3
40f17c:	cc                   	int3
40f17d:	cc                   	int3
40f17e:	cc                   	int3
40f17f:	cc                   	int3
40f180:	8b ff                	mov    %edi,%edi
40f182:	55                   	push   %ebp
40f183:	8b ec                	mov    %esp,%ebp
40f185:	6a ff                	push   $0xffffffff
40f187:	68 50 e6 41 00       	push   $0x41e650
40f18c:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40f192:	50                   	push   %eax
40f193:	83 ec 1c             	sub    $0x1c,%esp
40f196:	53                   	push   %ebx
40f197:	56                   	push   %esi
40f198:	57                   	push   %edi
40f199:	a1 08 85 43 00       	mov    0x438508,%eax
40f19e:	33 c5                	xor    %ebp,%eax
40f1a0:	50                   	push   %eax
40f1a1:	8d 45 f4             	lea    -0xc(%ebp),%eax
40f1a4:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40f1aa:	8b d9                	mov    %ecx,%ebx