491f22:	25 02 f0 ff ff       	and    $0xfffff002,%eax
491f27:	05 01 10 00 00       	add    $0x1001,%eax
491f2c:	50                   	push   %eax
491f2d:	56                   	push   %esi
491f2e:	ff 15 f4 e0 49 00    	call   *0x49e0f4
491f34:	85 c0                	test   %eax,%eax
491f36:	0f 84 91 01 00 00    	je     0x4920cd
491f3c:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
491f42:	50                   	push   %eax
491f43:	ff 73 50             	push   0x50(%ebx)
491f46:	e8 8d 83 fe ff       	call   0x47a2d8
491f4b:	59                   	pop    %ecx
491f4c:	59                   	pop    %ecx
491f4d:	8b 0f                	mov    (%edi),%ecx
491f4f:	85 c0                	test   %eax,%eax
491f51:	75 0d                	jne    0x491f60
491f53:	81 c9 04 03 00 00    	or     $0x304,%ecx
491f59:	89 77 04             	mov    %esi,0x4(%edi)
491f5c:	89 0f                	mov    %ecx,(%edi)
491f5e:	eb 64                	jmp    0x491fc4
491f60:	f6 c1 02             	test   $0x2,%cl
491f63:	75 62                	jne    0x491fc7
491f65:	83 7b 5c 00          	cmpl   $0x0,0x5c(%ebx)
491f69:	74 42                	je     0x491fad
491f6b:	ff 73 5c             	push   0x5c(%ebx)
491f6e:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
491f74:	50                   	push   %eax
491f75:	ff 73 50             	push   0x50(%ebx)
491f78:	e8 ab 84 fe ff       	call   0x47a428
491f7d:	83 c4 0c             	add    $0xc,%esp
491f80:	85 c0                	test   %eax,%eax
491f82:	75 29                	jne    0x491fad
491f84:	83 0f 02             	orl    $0x2,(%edi)
491f87:	89 77 08             	mov    %esi,0x8(%edi)
491f8a:	8b 4b 50             	mov    0x50(%ebx),%ecx
491f8d:	8d 51 02             	lea    0x2(%ecx),%edx
491f90:	66 8b 01             	mov    (%ecx),%ax
491f93:	83 c1 02             	add    $0x2,%ecx
491f96:	66 3b 85 08 ff ff ff 	cmp    -0xf8(%ebp),%ax
491f9d:	75 f1                	jne    0x491f90
491f9f:	2b ca                	sub    %edx,%ecx
491fa1:	d1 f9                	sar    $1,%ecx
491fa3:	3b 4b 5c             	cmp    0x5c(%ebx),%ecx
491fa6:	75 1f                	jne    0x491fc7
491fa8:	89 77 04             	mov    %esi,0x4(%edi)
491fab:	eb 1a                	jmp    0x491fc7
491fad:	8b 17                	mov    (%edi),%edx
491faf:	f6 c2 01             	test   $0x1,%dl
491fb2:	75 13                	jne    0x491fc7
491fb4:	56                   	push   %esi
491fb5:	e8 40 03 00 00       	call   0x4922fa
491fba:	59                   	pop    %ecx
491fbb:	85 c0                	test   %eax,%eax
491fbd:	74 08                	je     0x491fc7
491fbf:	83 ca 01             	or     $0x1,%edx
491fc2:	89 17                	mov    %edx,(%edi)
491fc4:	89 77 08             	mov    %esi,0x8(%edi)
491fc7:	8b 07                	mov    (%edi),%eax
491fc9:	b9 00 03 00 00       	mov    $0x300,%ecx
491fce:	23 c1                	and    %ecx,%eax
491fd0:	3b c1                	cmp    %ecx,%eax
491fd2:	0f 84 e9 00 00 00    	je     0x4920c1
491fd8:	6a 78                	push   $0x78
491fda:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
491fe0:	50                   	push   %eax
491fe1:	8b 43 60             	mov    0x60(%ebx),%eax
491fe4:	f7 d8                	neg    %eax
491fe6:	1b c0                	sbb    %eax,%eax
491fe8:	25 02 f0 ff ff       	and    $0xfffff002,%eax
491fed:	05 01 10 00 00       	add    $0x1001,%eax
491ff2:	50                   	push   %eax
491ff3:	56                   	push   %esi
491ff4:	ff 15 f4 e0 49 00    	call   *0x49e0f4
491ffa:	85 c0                	test   %eax,%eax
491ffc:	0f 84 cb 00 00 00    	je     0x4920cd
492002:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
492008:	50                   	push   %eax
492009:	ff 73 50             	push   0x50(%ebx)
49200c:	e8 c7 82 fe ff       	call   0x47a2d8
492011:	59                   	pop    %ecx
492012:	59                   	pop    %ecx
492013:	85 c0                	test   %eax,%eax
492015:	75 6a                	jne    0x492081
492017:	8b 0f                	mov    (%edi),%ecx
492019:	81 c9 00 02 00 00    	or     $0x200,%ecx
49201f:	89 0f                	mov    %ecx,(%edi)
492021:	39 43 60             	cmp    %eax,0x60(%ebx)
492024:	74 10                	je     0x492036
492026:	81 c9 00 01 00 00    	or     $0x100,%ecx
49202c:	89 0f                	mov    %ecx,(%edi)
49202e:	39 47 04             	cmp    %eax,0x4(%edi)
492031:	e9 86 00 00 00       	jmp    0x4920bc
492036:	39 43 5c             	cmp    %eax,0x5c(%ebx)
492039:	74 eb                	je     0x492026
49203b:	8b 53 50             	mov    0x50(%ebx),%edx
49203e:	8d 42 02             	lea    0x2(%edx),%eax
492041:	89 85 04 ff ff ff    	mov    %eax,-0xfc(%ebp)
492047:	66 8b 02             	mov    (%edx),%ax
49204a:	83 c2 02             	add    $0x2,%edx
49204d:	66 3b 85 08 ff ff ff 	cmp    -0xf8(%ebp),%ax
492054:	75 f1                	jne    0x492047
492056:	2b 95 04 ff ff ff    	sub    -0xfc(%ebp),%edx
49205c:	d1 fa                	sar    $1,%edx
49205e:	3b 53 5c             	cmp    0x5c(%ebx),%edx
492061:	75 1a                	jne    0x49207d
492063:	57                   	push   %edi
492064:	6a 01                	push   $0x1
492066:	56                   	push   %esi
492067:	e8 b3 02 00 00       	call   0x49231f
49206c:	83 c4 0c             	add    $0xc,%esp
49206f:	85 c0                	test   %eax,%eax
492071:	74 4e                	je     0x4920c1
492073:	81 0f 00 01 00 00    	orl    $0x100,(%edi)
492079:	33 c0                	xor    %eax,%eax
49207b:	eb b1                	jmp    0x49202e
49207d:	33 c0                	xor    %eax,%eax
49207f:	eb a5                	jmp    0x492026
492081:	33 c0                	xor    %eax,%eax
492083:	39 43 60             	cmp    %eax,0x60(%ebx)
492086:	75 39                	jne    0x4920c1
492088:	39 43 5c             	cmp    %eax,0x5c(%ebx)
49208b:	74 34                	je     0x4920c1
49208d:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
492093:	50                   	push   %eax
492094:	ff 73 50             	push   0x50(%ebx)
492097:	e8 3c 82 fe ff       	call   0x47a2d8
49209c:	59                   	pop    %ecx
49209d:	59                   	pop    %ecx
49209e:	85 c0                	test   %eax,%eax
4920a0:	75 1f                	jne    0x4920c1
4920a2:	57                   	push   %edi
4920a3:	33 db                	xor    %ebx,%ebx
4920a5:	53                   	push   %ebx
4920a6:	56                   	push   %esi
4920a7:	e8 73 02 00 00       	call   0x49231f
4920ac:	83 c4 0c             	add    $0xc,%esp
4920af:	85 c0                	test   %eax,%eax
4920b1:	74 0e                	je     0x4920c1
4920b3:	81 0f 00 01 00 00    	orl    $0x100,(%edi)
4920b9:	39 5f 04             	cmp    %ebx,0x4(%edi)
4920bc:	75 03                	jne    0x4920c1
4920be:	89 77 04             	mov    %esi,0x4(%edi)
4920c1:	8b 07                	mov    (%edi),%eax
4920c3:	c1 e8 02             	shr    $0x2,%eax
4920c6:	f7 d0                	not    %eax
4920c8:	83 e0 01             	and    $0x1,%eax
4920cb:	eb 05                	jmp    0x4920d2
4920cd:	33 c0                	xor    %eax,%eax
4920cf:	89 07                	mov    %eax,(%edi)
4920d1:	40                   	inc    %eax
4920d2:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4920d5:	5f                   	pop    %edi
4920d6:	5e                   	pop    %esi
4920d7:	33 cd                	xor    %ebp,%ecx
4920d9:	5b                   	pop    %ebx
4920da:	e8 eb 78 fd ff       	call   0x4699ca
4920df:	c9                   	leave
4920e0:	c2 04 00             	ret    $0x4
4920e3:	cc                   	int3
4920e4:	cc                   	int3
4920e5:	cc                   	int3
4920e6:	cc                   	int3
4920e7:	cc                   	int3
4920e8:	cc                   	int3
4920e9:	cc                   	int3
4920ea:	cc                   	int3
4920eb:	cc                   	int3
4920ec:	cc                   	int3
4920ed:	cc                   	int3
4920ee:	cc                   	int3
4920ef:	cc                   	int3
4920f0:	8b ff                	mov    %edi,%edi
4920f2:	55                   	push   %ebp
4920f3:	8b ec                	mov    %esp,%ebp
4920f5:	81 ec f4 00 00 00    	sub    $0xf4,%esp
4920fb:	a1 14 40 4c 00       	mov    0x4c4014,%eax
492100:	33 c5                	xor    %ebp,%eax
492102:	89 45 fc             	mov    %eax,-0x4(%ebp)
492105:	53                   	push   %ebx
492106:	56                   	push   %esi
492107:	8b 75 08             	mov    0x8(%ebp),%esi
49210a:	57                   	push   %edi
49210b:	e8 a9 49 ff ff       	call   0x486ab9
492110:	8b d8                	mov    %eax,%ebx
492112:	e8 a2 49 ff ff       	call   0x486ab9
492117:	56                   	push   %esi
492118:	8b b8 4c 03 00 00    	mov    0x34c(%eax),%edi
49211e:	e8 a2 00 00 00       	call   0x4921c5
492123:	59                   	pop    %ecx
492124:	8b 4b 60             	mov    0x60(%ebx),%ecx
492127:	8b f0                	mov    %eax,%esi
492129:	f7 d9                	neg    %ecx
49212b:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
492131:	6a 78                	push   $0x78
492133:	1b c9                	sbb    %ecx,%ecx
492135:	81 e1 02 f0 ff ff    	and    $0xfffff002,%ecx
49213b:	50                   	push   %eax
49213c:	81 c1 01 10 00 00    	add    $0x1001,%ecx
492142:	51                   	push   %ecx
492143:	56                   	push   %esi
492144:	ff 15 f4 e0 49 00    	call   *0x49e0f4
49214a:	85 c0                	test   %eax,%eax
49214c:	75 05                	jne    0x492153
49214e:	21 07                	and    %eax,(%edi)
492150:	40                   	inc    %eax
492151:	eb 61                	jmp    0x4921b4
492153:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
492159:	50                   	push   %eax
49215a:	ff 73 50             	push   0x50(%ebx)
49215d:	e8 76 81 fe ff       	call   0x47a2d8
492162:	59                   	pop    %ecx
492163:	59                   	pop    %ecx
492164:	8b 4b 60             	mov    0x60(%ebx),%ecx
492167:	85 c0                	test   %eax,%eax
492169:	75 09                	jne    0x492174
49216b:	85 c9                	test   %ecx,%ecx
49216d:	75 32                	jne    0x4921a1
49216f:	57                   	push   %edi
492170:	6a 01                	push   $0x1
492172:	eb 20                	jmp    0x492194
492174:	85 c9                	test   %ecx,%ecx
492176:	75 32                	jne    0x4921aa
492178:	39 4b 5c             	cmp    %ecx,0x5c(%ebx)
49217b:	74 2d                	je     0x4921aa
49217d:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
492183:	50                   	push   %eax
492184:	ff 73 50             	push   0x50(%ebx)
492187:	e8 4c 81 fe ff       	call   0x47a2d8
49218c:	59                   	pop    %ecx
49218d:	59                   	pop    %ecx
49218e:	85 c0                	test   %eax,%eax
492190:	75 18                	jne    0x4921aa
492192:	57                   	push   %edi
492193:	50                   	push   %eax
492194:	56                   	push   %esi
492195:	e8 85 01 00 00       	call   0x49231f
49219a:	83 c4 0c             	add    $0xc,%esp
49219d:	85 c0                	test   %eax,%eax
49219f:	74 09                	je     0x4921aa
4921a1:	83 0f 04             	orl    $0x4,(%edi)
4921a4:	89 77 04             	mov    %esi,0x4(%edi)
4921a7:	89 77 08             	mov    %esi,0x8(%edi)
4921aa:	8b 07                	mov    (%edi),%eax
4921ac:	c1 e8 02             	shr    $0x2,%eax
4921af:	f7 d0                	not    %eax
4921b1:	83 e0 01             	and    $0x1,%eax
4921b4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4921b7:	5f                   	pop    %edi
4921b8:	5e                   	pop    %esi
4921b9:	33 cd                	xor    %ebp,%ecx
4921bb:	5b                   	pop    %ebx
4921bc:	e8 09 78 fd ff       	call   0x4699ca
4921c1:	c9                   	leave
4921c2:	c2 04 00             	ret    $0x4
4921c5:	8b ff                	mov    %edi,%edi
4921c7:	55                   	push   %ebp
4921c8:	8b ec                	mov    %esp,%ebp
4921ca:	8b 55 08             	mov    0x8(%ebp),%edx
4921cd:	56                   	push   %esi
4921ce:	33 f6                	xor    %esi,%esi
4921d0:	0f b7 0a             	movzwl (%edx),%ecx
4921d3:	83 c2 02             	add    $0x2,%edx
4921d6:	66 85 c9             	test   %cx,%cx
4921d9:	74 39                	je     0x492214
4921db:	57                   	push   %edi
4921dc:	6a 05                	push   $0x5
4921de:	5f                   	pop    %edi
4921df:	8d 41 9f             	lea    -0x61(%ecx),%eax
4921e2:	66 3b c7             	cmp    %di,%ax
4921e5:	77 08                	ja     0x4921ef
4921e7:	81 c1 d9 ff 00 00    	add    $0xffd9,%ecx
4921ed:	eb 0e                	jmp    0x4921fd
4921ef:	8d 41 bf             	lea    -0x41(%ecx),%eax
4921f2:	66 3b c7             	cmp    %di,%ax
4921f5:	77 06                	ja     0x4921fd
4921f7:	81 c1 f9 ff 00 00    	add    $0xfff9,%ecx
4921fd:	c1 e6 04             	shl    $0x4,%esi
492200:	0f b7 c1             	movzwl %cx,%eax
492203:	83 c6 d0             	add    $0xffffffd0,%esi
492206:	0f b7 0a             	movzwl (%edx),%ecx
492209:	03 f0                	add    %eax,%esi
49220b:	83 c2 02             	add    $0x2,%edx
49220e:	66 85 c9             	test   %cx,%cx
492211:	75 cc                	jne    0x4921df
492213:	5f                   	pop    %edi
492214:	8b c6                	mov    %esi,%eax
492216:	5e                   	pop    %esi
492217:	5d                   	pop    %ebp
492218:	c3                   	ret
492219:	8b ff                	mov    %edi,%edi
49221b:	55                   	push   %ebp
49221c:	8b ec                	mov    %esp,%ebp
49221e:	51                   	push   %ecx
49221f:	8b 4d 08             	mov    0x8(%ebp),%ecx
492222:	56                   	push   %esi
492223:	57                   	push   %edi
492224:	85 c9                	test   %ecx,%ecx
492226:	0f 84 9e 00 00 00    	je     0x4922ca
49222c:	33 c0                	xor    %eax,%eax
49222e:	66 39 01             	cmp    %ax,(%ecx)
492231:	0f 84 93 00 00 00    	je     0x4922ca
492237:	be 48 51 4a 00       	mov    $0x4a5148,%esi
49223c:	8b d1                	mov    %ecx,%edx
49223e:	66 8b 3a             	mov    (%edx),%di
492241:	66 3b 3e             	cmp    (%esi),%di
492244:	75 1e                	jne    0x492264
492246:	66 85 ff             	test   %di,%di
492249:	74 15                	je     0x492260
49224b:	66 8b 7a 02          	mov    0x2(%edx),%di
49224f:	66 3b 7e 02          	cmp    0x2(%esi),%di
492253:	75 0f                	jne    0x492264
492255:	83 c2 04             	add    $0x4,%edx
492258:	83 c6 04             	add    $0x4,%esi
49225b:	66 85 ff             	test   %di,%di
49225e:	75 de                	jne    0x49223e
492260:	8b d0                	mov    %eax,%edx
492262:	eb 05                	jmp    0x492269
492264:	1b d2                	sbb    %edx,%edx
492266:	83 ca 01             	or     $0x1,%edx
492269:	85 d2                	test   %edx,%edx
49226b:	74 5d                	je     0x4922ca
49226d:	be 5c 51 4a 00       	mov    $0x4a515c,%esi
492272:	8b d1                	mov    %ecx,%edx
492274:	66 8b 3a             	mov    (%edx),%di
492277:	66 3b 3e             	cmp    (%esi),%di
49227a:	75 1c                	jne    0x492298
49227c:	66 85 ff             	test   %di,%di
49227f:	74 1c                	je     0x49229d
492281:	66 8b 7a 02          	mov    0x2(%edx),%di
492285:	66 3b 7e 02          	cmp    0x2(%esi),%di
492289:	75 0d                	jne    0x492298
49228b:	83 c2 04             	add    $0x4,%edx
49228e:	83 c6 04             	add    $0x4,%esi
492291:	66 85 ff             	test   %di,%di
492294:	75 de                	jne    0x492274
492296:	eb 05                	jmp    0x49229d
492298:	1b c0                	sbb    %eax,%eax
49229a:	83 c8 01             	or     $0x1,%eax
49229d:	85 c0                	test   %eax,%eax
49229f:	75 20                	jne    0x4922c1
4922a1:	6a 02                	push   $0x2
4922a3:	8d 45 fc             	lea    -0x4(%ebp),%eax
4922a6:	50                   	push   %eax
4922a7:	8b 45 0c             	mov    0xc(%ebp),%eax
4922aa:	68 0b 00 00 20       	push   $0x2000000b
4922af:	ff 70 08             	push   0x8(%eax)
4922b2:	ff 15 f4 e0 49 00    	call   *0x49e0f4
4922b8:	85 c0                	test   %eax,%eax
4922ba:	74 29                	je     0x4922e5
4922bc:	8b 45 fc             	mov    -0x4(%ebp),%eax