46edc4:	41                   	inc    %ecx
46edc5:	83 f9 04             	cmp    $0x4,%ecx
46edc8:	75 f2                	jne    0x46edbc
46edca:	8d 8d 8c fd ff ff    	lea    -0x274(%ebp),%ecx
46edd0:	e8 21 0b 00 00       	call   0x46f8f6
46edd5:	8b b5 80 fd ff ff    	mov    -0x280(%ebp),%esi
46eddb:	8d 8d 8c fd ff ff    	lea    -0x274(%ebp),%ecx
46ede1:	8b 45 0c             	mov    0xc(%ebp),%eax
46ede4:	c7 45 fc 09 00 00 00 	movl   $0x9,-0x4(%ebp)
46edeb:	53                   	push   %ebx
46edec:	8b 36                	mov    (%esi),%esi
46edee:	51                   	push   %ecx
46edef:	6a ff                	push   $0xffffffff
46edf1:	50                   	push   %eax
46edf2:	8b 4e 14             	mov    0x14(%esi),%ecx
46edf5:	89 85 90 fd ff ff    	mov    %eax,-0x270(%ebp)
46edfb:	ff 15 2c 81 4a 00    	call   *0x4a812c
46ee01:	8b 8d 80 fd ff ff    	mov    -0x280(%ebp),%ecx
46ee07:	ff 56 14             	call   *0x14(%esi)
46ee0a:	85 c0                	test   %eax,%eax
46ee0c:	74 1f                	je     0x46ee2d
46ee0e:	83 bd b4 fd ff ff 00 	cmpl   $0x0,-0x24c(%ebp)
46ee15:	8b cb                	mov    %ebx,%ecx
46ee17:	74 03                	je     0x46ee1c
46ee19:	6a 02                	push   $0x2
46ee1b:	59                   	pop    %ecx
46ee1c:	8b 85 7c fd ff ff    	mov    -0x284(%ebp),%eax
46ee22:	8b fb                	mov    %ebx,%edi
46ee24:	6a 13                	push   $0x13
46ee26:	5a                   	pop    %edx
46ee27:	66 89 10             	mov    %dx,(%eax)
46ee2a:	89 48 08             	mov    %ecx,0x8(%eax)
46ee2d:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
46ee31:	8d 8d c0 fd ff ff    	lea    -0x240(%ebp),%ecx
46ee37:	ff 15 1c 74 4a 00    	call   *0x4a741c
46ee3d:	8b 75 10             	mov    0x10(%ebp),%esi
46ee40:	85 ff                	test   %edi,%edi
46ee42:	0f 89 43 03 00 00    	jns    0x46f18b
46ee48:	b8 0d 20 00 00       	mov    $0x200d,%eax
46ee4d:	39 46 10             	cmp    %eax,0x10(%esi)
46ee50:	0f 85 35 03 00 00    	jne    0x46f18b
46ee56:	ba 48 f7 40 00       	mov    $0x40f748,%edx
46ee5b:	8b cb                	mov    %ebx,%ecx
46ee5d:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
46ee60:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
46ee63:	0f 85 22 03 00 00    	jne    0x46f18b
46ee69:	41                   	inc    %ecx
46ee6a:	83 f9 04             	cmp    $0x4,%ecx
46ee6d:	75 ee                	jne    0x46ee5d
46ee6f:	89 9d 64 fd ff ff    	mov    %ebx,-0x29c(%ebp)
46ee75:	89 9d 68 fd ff ff    	mov    %ebx,-0x298(%ebp)
46ee7b:	89 9d 6c fd ff ff    	mov    %ebx,-0x294(%ebp)
46ee81:	8b 85 78 fd ff ff    	mov    -0x288(%ebp),%eax
46ee87:	8d 8d 60 fd ff ff    	lea    -0x2a0(%ebp),%ecx
46ee8d:	c7 45 fc 0a 00 00 00 	movl   $0xa,-0x4(%ebp)
46ee94:	51                   	push   %ecx
46ee95:	8b 78 30             	mov    0x30(%eax),%edi
46ee98:	8b 07                	mov    (%edi),%eax
46ee9a:	8b 70 0c             	mov    0xc(%eax),%esi
46ee9d:	8b ce                	mov    %esi,%ecx
46ee9f:	ff 15 2c 81 4a 00    	call   *0x4a812c
46eea5:	8b cf                	mov    %edi,%ecx
46eea7:	ff d6                	call   *%esi
46eea9:	8b f8                	mov    %eax,%edi
46eeab:	85 ff                	test   %edi,%edi
46eead:	0f 88 c6 02 00 00    	js     0x46f179
46eeb3:	83 bd 64 fd ff ff 00 	cmpl   $0x0,-0x29c(%ebp)
46eeba:	75 04                	jne    0x46eec0
46eebc:	8b c3                	mov    %ebx,%eax
46eebe:	eb 0f                	jmp    0x46eecf
46eec0:	8b 85 68 fd ff ff    	mov    -0x298(%ebp),%eax
46eec6:	2b 85 64 fd ff ff    	sub    -0x29c(%ebp),%eax
46eecc:	c1 f8 02             	sar    $0x2,%eax
46eecf:	50                   	push   %eax
46eed0:	53                   	push   %ebx
46eed1:	6a 0d                	push   $0xd
46eed3:	ff 15 48 7c 4a 00    	call   *0x4a7c48
46eed9:	8b f0                	mov    %eax,%esi
46eedb:	89 b5 80 fd ff ff    	mov    %esi,-0x280(%ebp)
46eee1:	85 f6                	test   %esi,%esi
46eee3:	0f 84 8b 02 00 00    	je     0x46f174
46eee9:	89 9d 74 fd ff ff    	mov    %ebx,-0x28c(%ebp)
46eeef:	8b cb                	mov    %ebx,%ecx
46eef1:	89 9d 84 fd ff ff    	mov    %ebx,-0x27c(%ebp)
46eef7:	83 bd 64 fd ff ff 00 	cmpl   $0x0,-0x29c(%ebp)
46eefe:	75 04                	jne    0x46ef04
46ef00:	8b c3                	mov    %ebx,%eax
46ef02:	eb 0f                	jmp    0x46ef13
46ef04:	8b 85 68 fd ff ff    	mov    -0x298(%ebp),%eax
46ef0a:	2b 85 64 fd ff ff    	sub    -0x29c(%ebp),%eax
46ef10:	c1 f8 02             	sar    $0x2,%eax
46ef13:	3b c8                	cmp    %eax,%ecx
46ef15:	0f 83 1b 02 00 00    	jae    0x46f136
46ef1b:	6a 30                	push   $0x30
46ef1d:	ff 15 14 74 4a 00    	call   *0x4a7414
46ef23:	59                   	pop    %ecx
46ef24:	89 85 70 fd ff ff    	mov    %eax,-0x290(%ebp)
46ef2a:	c6 45 fc 0b          	movb   $0xb,-0x4(%ebp)
46ef2e:	85 c0                	test   %eax,%eax
46ef30:	74 11                	je     0x46ef43
46ef32:	8b c8                	mov    %eax,%ecx
46ef34:	e8 44 05 00 00       	call   0x46f47d
46ef39:	8b f0                	mov    %eax,%esi
46ef3b:	89 b5 78 fd ff ff    	mov    %esi,-0x288(%ebp)
46ef41:	eb 08                	jmp    0x46ef4b
46ef43:	8b f3                	mov    %ebx,%esi
46ef45:	89 9d 78 fd ff ff    	mov    %ebx,-0x288(%ebp)
46ef4b:	c6 45 fc 0a          	movb   $0xa,-0x4(%ebp)
46ef4f:	8d bd 38 fd ff ff    	lea    -0x2c8(%ebp),%edi
46ef55:	33 c0                	xor    %eax,%eax
46ef57:	8d 8d e4 fd ff ff    	lea    -0x21c(%ebp),%ecx
46ef5d:	ab                   	stos   %eax,%es:(%edi)
46ef5e:	68 04 01 00 00       	push   $0x104
46ef63:	51                   	push   %ecx
46ef64:	8b 8d 84 fd ff ff    	mov    -0x27c(%ebp),%ecx
46ef6a:	ab                   	stos   %eax,%es:(%edi)
46ef6b:	ab                   	stos   %eax,%es:(%edi)
46ef6c:	ab                   	stos   %eax,%es:(%edi)
46ef6d:	8b 85 64 fd ff ff    	mov    -0x29c(%ebp),%eax
46ef73:	ff 34 88             	push   (%eax,%ecx,4)
46ef76:	ff 15 58 70 4a 00    	call   *0x4a7058
46ef7c:	8d 95 38 fd ff ff    	lea    -0x2c8(%ebp),%edx
46ef82:	8d 8d e4 fd ff ff    	lea    -0x21c(%ebp),%ecx
46ef88:	e8 c4 70 fb ff       	call   0x426051
46ef8d:	8d 85 38 fd ff ff    	lea    -0x2c8(%ebp),%eax
46ef93:	8b ce                	mov    %esi,%ecx
46ef95:	50                   	push   %eax
46ef96:	68 d0 f5 40 00       	push   $0x40f5d0
46ef9b:	e8 aa 05 00 00       	call   0x46f54a
46efa0:	8d 85 38 fd ff ff    	lea    -0x2c8(%ebp),%eax
46efa6:	50                   	push   %eax
46efa7:	ff 15 64 7e 4a 00    	call   *0x4a7e64
46efad:	8b 8d 84 fd ff ff    	mov    -0x27c(%ebp),%ecx
46efb3:	8d bd 28 fd ff ff    	lea    -0x2d8(%ebp),%edi
46efb9:	33 c0                	xor    %eax,%eax
46efbb:	8d 95 28 fd ff ff    	lea    -0x2d8(%ebp),%edx
46efc1:	ab                   	stos   %eax,%es:(%edi)
46efc2:	ab                   	stos   %eax,%es:(%edi)
46efc3:	ab                   	stos   %eax,%es:(%edi)
46efc4:	ab                   	stos   %eax,%es:(%edi)
46efc5:	8b 85 64 fd ff ff    	mov    -0x29c(%ebp),%eax
46efcb:	8b 0c 88             	mov    (%eax,%ecx,4),%ecx
46efce:	e8 7e 70 fb ff       	call   0x426051
46efd3:	8d 85 28 fd ff ff    	lea    -0x2d8(%ebp),%eax
46efd9:	8b ce                	mov    %esi,%ecx
46efdb:	50                   	push   %eax
46efdc:	68 a4 f6 40 00       	push   $0x40f6a4
46efe1:	e8 64 05 00 00       	call   0x46f54a
46efe6:	8d 85 28 fd ff ff    	lea    -0x2d8(%ebp),%eax
46efec:	50                   	push   %eax
46efed:	ff 15 64 7e 4a 00    	call   *0x4a7e64
46eff3:	33 c0                	xor    %eax,%eax
46eff5:	8d bd 48 fd ff ff    	lea    -0x2b8(%ebp),%edi
46effb:	ab                   	stos   %eax,%es:(%edi)
46effc:	8b ce                	mov    %esi,%ecx
46effe:	6a 0b                	push   $0xb
46f000:	ab                   	stos   %eax,%es:(%edi)
46f001:	ab                   	stos   %eax,%es:(%edi)
46f002:	ab                   	stos   %eax,%es:(%edi)
46f003:	58                   	pop    %eax
46f004:	66 89 85 48 fd ff ff 	mov    %ax,-0x2b8(%ebp)
46f00b:	33 c0                	xor    %eax,%eax
46f00d:	66 89 85 50 fd ff ff 	mov    %ax,-0x2b0(%ebp)
46f014:	8d 85 48 fd ff ff    	lea    -0x2b8(%ebp),%eax
46f01a:	50                   	push   %eax
46f01b:	68 38 f9 40 00       	push   $0x40f938
46f020:	e8 25 05 00 00       	call   0x46f54a
46f025:	8d 85 48 fd ff ff    	lea    -0x2b8(%ebp),%eax
46f02b:	50                   	push   %eax
46f02c:	ff 15 64 7e 4a 00    	call   *0x4a7e64
46f032:	89 9d 88 fd ff ff    	mov    %ebx,-0x278(%ebp)
46f038:	8d 46 2c             	lea    0x2c(%esi),%eax
46f03b:	c6 45 fc 0c          	movb   $0xc,-0x4(%ebp)
46f03f:	8b 30                	mov    (%eax),%esi
46f041:	8d 8d 88 fd ff ff    	lea    -0x278(%ebp),%ecx
46f047:	51                   	push   %ecx
46f048:	68 bc 33 41 00       	push   $0x4133bc
46f04d:	50                   	push   %eax
46f04e:	8b 0e                	mov    (%esi),%ecx
46f050:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f056:	ff 16                	call   *(%esi)
46f058:	8b f8                	mov    %eax,%edi
46f05a:	85 ff                	test   %edi,%edi
46f05c:	0f 88 93 00 00 00    	js     0x46f0f5
46f062:	ff b5 88 fd ff ff    	push   -0x278(%ebp)
46f068:	8b b5 80 fd ff ff    	mov    -0x280(%ebp),%esi
46f06e:	8d 85 74 fd ff ff    	lea    -0x28c(%ebp),%eax
46f074:	50                   	push   %eax
46f075:	56                   	push   %esi
46f076:	ff 15 24 7c 4a 00    	call   *0x4a7c24
46f07c:	8b f8                	mov    %eax,%edi
46f07e:	85 ff                	test   %edi,%edi
46f080:	78 40                	js     0x46f0c2
46f082:	c6 45 fc 0f          	movb   $0xf,-0x4(%ebp)
46f086:	8b 85 88 fd ff ff    	mov    -0x278(%ebp),%eax
46f08c:	85 c0                	test   %eax,%eax
46f08e:	74 16                	je     0x46f0a6
46f090:	8b 08                	mov    (%eax),%ecx
46f092:	50                   	push   %eax
46f093:	8b 71 08             	mov    0x8(%ecx),%esi
46f096:	8b ce                	mov    %esi,%ecx
46f098:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f09e:	ff d6                	call   *%esi
46f0a0:	8b b5 80 fd ff ff    	mov    -0x280(%ebp),%esi
46f0a6:	c6 45 fc 0a          	movb   $0xa,-0x4(%ebp)
46f0aa:	8b 8d 84 fd ff ff    	mov    -0x27c(%ebp),%ecx
46f0b0:	41                   	inc    %ecx
46f0b1:	ff 85 74 fd ff ff    	incl   -0x28c(%ebp)
46f0b7:	89 8d 84 fd ff ff    	mov    %ecx,-0x27c(%ebp)
46f0bd:	e9 35 fe ff ff       	jmp    0x46eef7
46f0c2:	8b 9d 78 fd ff ff    	mov    -0x288(%ebp),%ebx
46f0c8:	85 db                	test   %ebx,%ebx
46f0ca:	74 19                	je     0x46f0e5
46f0cc:	8b 03                	mov    (%ebx),%eax
46f0ce:	6a 01                	push   $0x1
46f0d0:	8b 70 04             	mov    0x4(%eax),%esi
46f0d3:	8b ce                	mov    %esi,%ecx
46f0d5:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f0db:	8b cb                	mov    %ebx,%ecx
46f0dd:	ff d6                	call   *%esi
46f0df:	8b b5 80 fd ff ff    	mov    -0x280(%ebp),%esi
46f0e5:	c6 45 fc 0e          	movb   $0xe,-0x4(%ebp)
46f0e9:	8b 85 88 fd ff ff    	mov    -0x278(%ebp),%eax
46f0ef:	85 c0                	test   %eax,%eax
46f0f1:	74 43                	je     0x46f136
46f0f3:	eb 2b                	jmp    0x46f120
46f0f5:	8b 9d 78 fd ff ff    	mov    -0x288(%ebp),%ebx
46f0fb:	85 db                	test   %ebx,%ebx
46f0fd:	74 13                	je     0x46f112
46f0ff:	8b 03                	mov    (%ebx),%eax
46f101:	6a 01                	push   $0x1
46f103:	8b 70 04             	mov    0x4(%eax),%esi
46f106:	8b ce                	mov    %esi,%ecx
46f108:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f10e:	8b cb                	mov    %ebx,%ecx
46f110:	ff d6                	call   *%esi
46f112:	c6 45 fc 0d          	movb   $0xd,-0x4(%ebp)
46f116:	8b 85 88 fd ff ff    	mov    -0x278(%ebp),%eax
46f11c:	85 c0                	test   %eax,%eax
46f11e:	74 10                	je     0x46f130
46f120:	8b 08                	mov    (%eax),%ecx
46f122:	50                   	push   %eax
46f123:	8b 71 08             	mov    0x8(%ecx),%esi
46f126:	8b ce                	mov    %esi,%ecx
46f128:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f12e:	ff d6                	call   *%esi
46f130:	8b b5 80 fd ff ff    	mov    -0x280(%ebp),%esi
46f136:	85 ff                	test   %edi,%edi
46f138:	78 31                	js     0x46f16b
46f13a:	b8 00 02 00 00       	mov    $0x200,%eax
46f13f:	66 85 46 02          	test   %ax,0x2(%esi)
46f143:	74 21                	je     0x46f166
46f145:	8b 9d 7c fd ff ff    	mov    -0x284(%ebp),%ebx
46f14b:	8d 43 08             	lea    0x8(%ebx),%eax
46f14e:	50                   	push   %eax
46f14f:	56                   	push   %esi
46f150:	ff 15 2c 7c 4a 00    	call   *0x4a7c2c
46f156:	8b f8                	mov    %eax,%edi
46f158:	85 ff                	test   %edi,%edi
46f15a:	78 0f                	js     0x46f16b
46f15c:	b8 0d 20 00 00       	mov    $0x200d,%eax
46f161:	66 89 03             	mov    %ax,(%ebx)
46f164:	eb 05                	jmp    0x46f16b
46f166:	bf 57 00 07 80       	mov    $0x80070057,%edi
46f16b:	56                   	push   %esi
46f16c:	ff 15 28 7c 4a 00    	call   *0x4a7c28
46f172:	eb 05                	jmp    0x46f179
46f174:	bf 05 40 00 80       	mov    $0x80004005,%edi
46f179:	8d 8d 60 fd ff ff    	lea    -0x2a0(%ebp),%ecx
46f17f:	e8 45 3e fe ff       	call   0x452fc9
46f184:	eb 05                	jmp    0x46f18b
46f186:	bf 05 40 00 80       	mov    $0x80004005,%edi
46f18b:	8b c7                	mov    %edi,%eax
46f18d:	e8 32 13 02 00       	call   0x4904c4
46f192:	c2 14 00             	ret    $0x14
46f195:	83 c1 34             	add    $0x34,%ecx
46f198:	ff 25 1c 74 4a 00    	jmp    *0x4a741c
46f19e:	cc                   	int3
46f19f:	cc                   	int3
46f1a0:	6a 14                	push   $0x14
46f1a2:	b8 08 59 49 00       	mov    $0x495908,%eax
46f1a7:	e8 90 13 02 00       	call   0x49053c
46f1ac:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
46f1b0:	8b 5d 08             	mov    0x8(%ebp),%ebx
46f1b3:	0f 85 b7 00 00 00    	jne    0x46f270
46f1b9:	8b 7b 14             	mov    0x14(%ebx),%edi
46f1bc:	8b 07                	mov    (%edi),%eax
46f1be:	8b 70 10             	mov    0x10(%eax),%esi
46f1c1:	8b ce                	mov    %esi,%ecx
46f1c3:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f1c9:	8b cf                	mov    %edi,%ecx
46f1cb:	ff d6                	call   *%esi
46f1cd:	89 45 ec             	mov    %eax,-0x14(%ebp)
46f1d0:	85 c0                	test   %eax,%eax
46f1d2:	0f 84 98 00 00 00    	je     0x46f270
46f1d8:	8b 7b 10             	mov    0x10(%ebx),%edi
46f1db:	8b 0f                	mov    (%edi),%ecx
46f1dd:	8b 71 10             	mov    0x10(%ecx),%esi
46f1e0:	8b ce                	mov    %esi,%ecx
46f1e2:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f1e8:	8b cf                	mov    %edi,%ecx
46f1ea:	ff d6                	call   *%esi
46f1ec:	39 45 0c             	cmp    %eax,0xc(%ebp)
46f1ef:	75 36                	jne    0x46f227
46f1f1:	8b 55 14             	mov    0x14(%ebp),%edx
46f1f4:	85 d2                	test   %edx,%edx
46f1f6:	74 78                	je     0x46f270
46f1f8:	83 7a 10 13          	cmpl   $0x13,0x10(%edx)
46f1fc:	75 72                	jne    0x46f270
46f1fe:	33 f6                	xor    %esi,%esi
46f200:	bf 90 f6 40 00       	mov    $0x40f690,%edi
46f205:	8b ce                	mov    %esi,%ecx
46f207:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
46f20a:	3b 04 8f             	cmp    (%edi,%ecx,4),%eax
46f20d:	75 61                	jne    0x46f270
46f20f:	41                   	inc    %ecx
46f210:	83 f9 04             	cmp    $0x4,%ecx
46f213:	75 f2                	jne    0x46f207
46f215:	56                   	push   %esi
46f216:	ff 75 18             	push   0x18(%ebp)
46f219:	ff 15 58 7c 4a 00    	call   *0x4a7c58
46f21f:	8d b8 10 e1 00 00    	lea    0xe110(%eax),%edi
46f225:	eb 10                	jmp    0x46f237
46f227:	ff 75 0c             	push   0xc(%ebp)
46f22a:	8d 4b e0             	lea    -0x20(%ebx),%ecx
46f22d:	e8 c7 f6 ff ff       	call   0x46e8f9
46f232:	0f b7 f8             	movzwl %ax,%edi
46f235:	33 f6                	xor    %esi,%esi
46f237:	85 ff                	test   %edi,%edi
46f239:	74 35                	je     0x46f270
46f23b:	8d 4d e0             	lea    -0x20(%ebp),%ecx
46f23e:	ff 15 38 74 4a 00    	call   *0x4a7438
46f244:	8b 5d ec             	mov    -0x14(%ebp),%ebx
46f247:	89 75 fc             	mov    %esi,-0x4(%ebp)
46f24a:	56                   	push   %esi
46f24b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
46f24f:	8b 03                	mov    (%ebx),%eax
46f251:	56                   	push   %esi
46f252:	56                   	push   %esi
46f253:	57                   	push   %edi
46f254:	8b 70 14             	mov    0x14(%eax),%esi
46f257:	8b ce                	mov    %esi,%ecx
46f259:	ff 15 2c 81 4a 00    	call   *0x4a812c
46f25f:	8b cb                	mov    %ebx,%ecx
46f261:	ff d6                	call   *%esi
46f263:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
46f26a:	ff 15 3c 74 4a 00    	call   *0x4a743c
46f270:	33 c0                	xor    %eax,%eax
46f272:	e8 2a 12 02 00       	call   0x4904a1
46f277:	c2 18 00             	ret    $0x18